@deephaven/dashboard-core-plugins 1.0.1-beta.0 → 1.1.1-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.
Files changed (55) hide show
  1. package/dist/GridWidgetPlugin.d.ts.map +1 -1
  2. package/dist/GridWidgetPlugin.js +7 -6
  3. package/dist/GridWidgetPlugin.js.map +1 -1
  4. package/dist/index.d.ts +1 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +1 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/linker/ColumnSelectionValidator.d.ts +2 -2
  9. package/dist/linker/ColumnSelectionValidator.d.ts.map +1 -1
  10. package/dist/linker/ColumnSelectionValidator.js.map +1 -1
  11. package/dist/linker/Linker.d.ts +14 -8
  12. package/dist/linker/Linker.d.ts.map +1 -1
  13. package/dist/linker/Linker.js +132 -75
  14. package/dist/linker/Linker.js.map +1 -1
  15. package/dist/linker/LinkerEvent.d.ts +52 -0
  16. package/dist/linker/LinkerEvent.d.ts.map +1 -0
  17. package/dist/linker/LinkerEvent.js +28 -0
  18. package/dist/linker/LinkerEvent.js.map +1 -0
  19. package/dist/linker/LinkerOverlayContent.d.ts +2 -0
  20. package/dist/linker/LinkerOverlayContent.d.ts.map +1 -1
  21. package/dist/linker/LinkerOverlayContent.js +13 -3
  22. package/dist/linker/LinkerOverlayContent.js.map +1 -1
  23. package/dist/linker/LinkerUtils.d.ts +9 -4
  24. package/dist/linker/LinkerUtils.d.ts.map +1 -1
  25. package/dist/linker/LinkerUtils.js +8 -31
  26. package/dist/linker/LinkerUtils.js.map +1 -1
  27. package/dist/panels/ChartPanel.d.ts +10 -2
  28. package/dist/panels/ChartPanel.d.ts.map +1 -1
  29. package/dist/panels/ChartPanel.js +20 -5
  30. package/dist/panels/ChartPanel.js.map +1 -1
  31. package/dist/panels/DropdownFilterPanel.d.ts +1 -1
  32. package/dist/panels/DropdownFilterPanel.d.ts.map +1 -1
  33. package/dist/panels/DropdownFilterPanel.js +12 -4
  34. package/dist/panels/DropdownFilterPanel.js.map +1 -1
  35. package/dist/panels/FileExplorerPanel.d.ts +1 -1
  36. package/dist/panels/FilterSetManagerPanel.d.ts +2 -2
  37. package/dist/panels/IrisGridPanel.d.ts +6 -6
  38. package/dist/panels/IrisGridPanel.d.ts.map +1 -1
  39. package/dist/panels/IrisGridPanel.js +17 -5
  40. package/dist/panels/IrisGridPanel.js.map +1 -1
  41. package/dist/panels/LogPanel.d.ts +1 -1
  42. package/dist/panels/NotebookPanel.d.ts +1 -1
  43. package/dist/useChartLinker.d.ts +1 -0
  44. package/dist/useChartLinker.d.ts.map +1 -0
  45. package/dist/useChartLinker.js +2 -0
  46. package/dist/useChartLinker.js.map +1 -0
  47. package/dist/useDashboardColumnFilters.d.ts +4 -2
  48. package/dist/useDashboardColumnFilters.d.ts.map +1 -1
  49. package/dist/useDashboardColumnFilters.js +5 -3
  50. package/dist/useDashboardColumnFilters.js.map +1 -1
  51. package/dist/useGridLinker.d.ts +4 -0
  52. package/dist/useGridLinker.d.ts.map +1 -0
  53. package/dist/useGridLinker.js +107 -0
  54. package/dist/useGridLinker.js.map +1 -0
  55. package/package.json +25 -25
@@ -1 +1 @@
1
- {"version":3,"file":"GridWidgetPlugin.d.ts","sourceRoot":"","sources":["../src/GridWidgetPlugin.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAsB3D,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,GACN,EAAE,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CA6GzD;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"GridWidgetPlugin.d.ts","sourceRoot":"","sources":["../src/GridWidgetPlugin.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAuB3D,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,GACN,EAAE,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAqHzD;AAED,eAAe,gBAAgB,CAAC"}
@@ -10,11 +10,12 @@ import { useSelector } from 'react-redux';
10
10
  import { getSettings } from '@deephaven/redux';
11
11
  import { LoadingOverlay } from '@deephaven/components';
12
12
  import { useLayoutManager, useListener } from '@deephaven/dashboard';
13
- import { EMPTY_ARRAY, getErrorMessage } from '@deephaven/utils';
13
+ import { getErrorMessage } from '@deephaven/utils';
14
14
  import { useApi } from '@deephaven/jsapi-bootstrap';
15
15
  import { useIrisGridModel } from "./useIrisGridModel.js";
16
16
  import useDashboardColumnFilters from "./useDashboardColumnFilters.js";
17
17
  import { InputFilterEvent } from "./events/index.js";
18
+ import useGridLinker from "./useGridLinker.js";
18
19
  import { jsx as _jsx } from "react/jsx-runtime";
19
20
  export function GridWidgetPlugin(_ref) {
20
21
  var {
@@ -46,8 +47,9 @@ export function GridWidgetPlugin(_ref) {
46
47
  var newState = dehydrateIrisGridState(fetchResult.model, irisGridState, gridState);
47
48
  setState(newState);
48
49
  }, [fetchResult, setState, dehydrateIrisGridState]);
49
- var inputFilters = useDashboardColumnFilters(fetchResult.status === 'success' ? fetchResult.model.columns : EMPTY_ARRAY, fetchResult.status === 'success' && isIrisGridTableModelTemplate(fetchResult.model) ? fetchResult.model.table : undefined);
50
+ var inputFilters = useDashboardColumnFilters(fetchResult.status === 'success' ? fetchResult.model.columns : null, fetchResult.status === 'success' && isIrisGridTableModelTemplate(fetchResult.model) ? fetchResult.model.table : undefined);
50
51
  var irisGridRef = useRef(null);
52
+ var linkerProps = useGridLinker(fetchResult.status === 'success' ? fetchResult.model : null, irisGridRef.current);
51
53
  var handleClearAllFilters = useCallback(() => {
52
54
  if (irisGridRef.current == null) {
53
55
  return;
@@ -73,11 +75,10 @@ export function GridWidgetPlugin(_ref) {
73
75
  ref: irisGridRef,
74
76
  model: model,
75
77
  settings: settings,
76
- onStateChange: handleIrisGridChange
77
- // eslint-disable-next-line react/jsx-props-no-spreading
78
- }, hydratedState), {}, {
78
+ onStateChange: handleIrisGridChange,
79
79
  inputFilters: inputFilters
80
- }));
80
+ // eslint-disable-next-line react/jsx-props-no-spreading
81
+ }, linkerProps), hydratedState));
81
82
  }
82
83
  export default GridWidgetPlugin;
83
84
  //# sourceMappingURL=GridWidgetPlugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GridWidgetPlugin.js","names":["useCallback","useMemo","useRef","usePersistentState","IrisGrid","IrisGridCacheUtils","IrisGridUtils","isIrisGridTableModelTemplate","useSelector","getSettings","LoadingOverlay","useLayoutManager","useListener","EMPTY_ARRAY","getErrorMessage","useApi","useIrisGridModel","useDashboardColumnFilters","InputFilterEvent","jsx","_jsx","GridWidgetPlugin","_ref","fetch","settings","eventHub","fetchResult","dh","irisGridUtils","state","setState","undefined","version","type","initialState","hydratedState","status","current","_objectSpread","hydrateIrisGridState","model","hydrateGridState","dehydrateIrisGridState","makeMemoizedCombinedGridStateDehydrator","handleIrisGridChange","irisGridState","gridState","newState","inputFilters","columns","table","irisGridRef","handleClearAllFilters","clearAllFilters","CLEAR_ALL_FILTERS","isLoading","errorMessage","error","ref","onStateChange"],"sources":["../src/GridWidgetPlugin.tsx"],"sourcesContent":["import { useCallback, useMemo, useRef } from 'react';\nimport {\n type WidgetComponentProps,\n usePersistentState,\n} from '@deephaven/plugin';\nimport { type dh as DhType } from '@deephaven/jsapi-types';\nimport {\n type DehydratedGridState,\n type DehydratedIrisGridState,\n IrisGrid,\n IrisGridCacheUtils,\n type IrisGridState,\n type IrisGridType,\n IrisGridUtils,\n isIrisGridTableModelTemplate,\n} from '@deephaven/iris-grid';\nimport { useSelector } from 'react-redux';\nimport { getSettings, type RootState } from '@deephaven/redux';\nimport { LoadingOverlay } from '@deephaven/components';\nimport { useLayoutManager, useListener } from '@deephaven/dashboard';\nimport { EMPTY_ARRAY, getErrorMessage } from '@deephaven/utils';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport { type GridState } from '@deephaven/grid';\nimport { useIrisGridModel } from './useIrisGridModel';\nimport useDashboardColumnFilters from './useDashboardColumnFilters';\nimport { InputFilterEvent } from './events';\n\nexport function GridWidgetPlugin({\n fetch,\n}: WidgetComponentProps<DhType.Table>): JSX.Element | null {\n const settings = useSelector(getSettings<RootState>);\n const { eventHub } = useLayoutManager();\n\n const fetchResult = useIrisGridModel(fetch);\n\n const dh = useApi();\n const irisGridUtils = useMemo(() => new IrisGridUtils(dh), [dh]);\n\n const [state, setState] = usePersistentState<\n (DehydratedIrisGridState & DehydratedGridState) | undefined\n >(undefined, {\n version: 1,\n type: 'GridWidgetPlugin',\n });\n const initialState = useRef(state);\n const hydratedState = useMemo(() => {\n if (\n fetchResult.status !== 'success' ||\n initialState.current === undefined\n ) {\n return;\n }\n return {\n ...irisGridUtils.hydrateIrisGridState(\n fetchResult.model,\n initialState.current\n ),\n ...IrisGridUtils.hydrateGridState(\n fetchResult.model,\n initialState.current\n ),\n };\n }, [fetchResult, irisGridUtils]);\n\n const dehydrateIrisGridState = useMemo(\n () => IrisGridCacheUtils.makeMemoizedCombinedGridStateDehydrator(),\n []\n );\n\n const handleIrisGridChange = useCallback(\n (irisGridState: IrisGridState, gridState: GridState) => {\n if (\n fetchResult.status !== 'success' ||\n irisGridState == null ||\n gridState == null\n ) {\n return;\n }\n\n const newState = dehydrateIrisGridState(\n fetchResult.model,\n irisGridState,\n gridState\n );\n\n setState(newState);\n },\n [fetchResult, setState, dehydrateIrisGridState]\n );\n\n const inputFilters = useDashboardColumnFilters(\n fetchResult.status === 'success' ? fetchResult.model.columns : EMPTY_ARRAY,\n fetchResult.status === 'success' &&\n isIrisGridTableModelTemplate(fetchResult.model)\n ? fetchResult.model.table\n : undefined\n );\n\n const irisGridRef = useRef<IrisGridType | null>(null);\n\n const handleClearAllFilters = useCallback(() => {\n if (irisGridRef.current == null) {\n return;\n }\n irisGridRef.current.clearAllFilters();\n }, []);\n\n useListener(\n eventHub,\n InputFilterEvent.CLEAR_ALL_FILTERS,\n handleClearAllFilters\n );\n\n if (fetchResult.status === 'loading') {\n return <LoadingOverlay isLoading />;\n }\n\n if (fetchResult.status === 'error') {\n return (\n <LoadingOverlay\n errorMessage={getErrorMessage(fetchResult.error)}\n isLoading={false}\n />\n );\n }\n\n const { model } = fetchResult;\n return (\n <IrisGrid\n ref={irisGridRef}\n model={model}\n settings={settings}\n onStateChange={handleIrisGridChange}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...hydratedState}\n inputFilters={inputFilters}\n />\n );\n}\n\nexport default GridWidgetPlugin;\n"],"mappings":"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"}
1
+ {"version":3,"file":"GridWidgetPlugin.js","names":["useCallback","useMemo","useRef","usePersistentState","IrisGrid","IrisGridCacheUtils","IrisGridUtils","isIrisGridTableModelTemplate","useSelector","getSettings","LoadingOverlay","useLayoutManager","useListener","getErrorMessage","useApi","useIrisGridModel","useDashboardColumnFilters","InputFilterEvent","useGridLinker","jsx","_jsx","GridWidgetPlugin","_ref","fetch","settings","eventHub","fetchResult","dh","irisGridUtils","state","setState","undefined","version","type","initialState","hydratedState","status","current","_objectSpread","hydrateIrisGridState","model","hydrateGridState","dehydrateIrisGridState","makeMemoizedCombinedGridStateDehydrator","handleIrisGridChange","irisGridState","gridState","newState","inputFilters","columns","table","irisGridRef","linkerProps","handleClearAllFilters","clearAllFilters","CLEAR_ALL_FILTERS","isLoading","errorMessage","error","ref","onStateChange"],"sources":["../src/GridWidgetPlugin.tsx"],"sourcesContent":["import { useCallback, useMemo, useRef } from 'react';\nimport {\n type WidgetComponentProps,\n usePersistentState,\n} from '@deephaven/plugin';\nimport { type dh as DhType } from '@deephaven/jsapi-types';\nimport {\n type DehydratedGridState,\n type DehydratedIrisGridState,\n IrisGrid,\n IrisGridCacheUtils,\n type IrisGridState,\n type IrisGridType,\n IrisGridUtils,\n isIrisGridTableModelTemplate,\n} from '@deephaven/iris-grid';\nimport { useSelector } from 'react-redux';\nimport { getSettings, type RootState } from '@deephaven/redux';\nimport { LoadingOverlay } from '@deephaven/components';\nimport { useLayoutManager, useListener } from '@deephaven/dashboard';\nimport { getErrorMessage } from '@deephaven/utils';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport { type GridState } from '@deephaven/grid';\nimport { useIrisGridModel } from './useIrisGridModel';\nimport useDashboardColumnFilters from './useDashboardColumnFilters';\nimport { InputFilterEvent } from './events';\nimport useGridLinker from './useGridLinker';\n\nexport function GridWidgetPlugin({\n fetch,\n}: WidgetComponentProps<DhType.Table>): JSX.Element | null {\n const settings = useSelector(getSettings<RootState>);\n const { eventHub } = useLayoutManager();\n\n const fetchResult = useIrisGridModel(fetch);\n\n const dh = useApi();\n const irisGridUtils = useMemo(() => new IrisGridUtils(dh), [dh]);\n\n const [state, setState] = usePersistentState<\n (DehydratedIrisGridState & DehydratedGridState) | undefined\n >(undefined, {\n version: 1,\n type: 'GridWidgetPlugin',\n });\n const initialState = useRef(state);\n const hydratedState = useMemo(() => {\n if (\n fetchResult.status !== 'success' ||\n initialState.current === undefined\n ) {\n return;\n }\n return {\n ...irisGridUtils.hydrateIrisGridState(\n fetchResult.model,\n initialState.current\n ),\n ...IrisGridUtils.hydrateGridState(\n fetchResult.model,\n initialState.current\n ),\n };\n }, [fetchResult, irisGridUtils]);\n\n const dehydrateIrisGridState = useMemo(\n () => IrisGridCacheUtils.makeMemoizedCombinedGridStateDehydrator(),\n []\n );\n\n const handleIrisGridChange = useCallback(\n (irisGridState: IrisGridState, gridState: GridState) => {\n if (\n fetchResult.status !== 'success' ||\n irisGridState == null ||\n gridState == null\n ) {\n return;\n }\n\n const newState = dehydrateIrisGridState(\n fetchResult.model,\n irisGridState,\n gridState\n );\n\n setState(newState);\n },\n [fetchResult, setState, dehydrateIrisGridState]\n );\n\n const inputFilters = useDashboardColumnFilters(\n fetchResult.status === 'success' ? fetchResult.model.columns : null,\n fetchResult.status === 'success' &&\n isIrisGridTableModelTemplate(fetchResult.model)\n ? fetchResult.model.table\n : undefined\n );\n\n const irisGridRef = useRef<IrisGridType | null>(null);\n\n const linkerProps = useGridLinker(\n fetchResult.status === 'success' ? fetchResult.model : null,\n irisGridRef.current\n );\n\n const handleClearAllFilters = useCallback(() => {\n if (irisGridRef.current == null) {\n return;\n }\n irisGridRef.current.clearAllFilters();\n }, []);\n\n useListener(\n eventHub,\n InputFilterEvent.CLEAR_ALL_FILTERS,\n handleClearAllFilters\n );\n\n if (fetchResult.status === 'loading') {\n return <LoadingOverlay isLoading />;\n }\n\n if (fetchResult.status === 'error') {\n return (\n <LoadingOverlay\n errorMessage={getErrorMessage(fetchResult.error)}\n isLoading={false}\n />\n );\n }\n\n const { model } = fetchResult;\n\n return (\n <IrisGrid\n ref={irisGridRef}\n model={model}\n settings={settings}\n onStateChange={handleIrisGridChange}\n inputFilters={inputFilters}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...linkerProps}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...hydratedState}\n />\n );\n}\n\nexport default GridWidgetPlugin;\n"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -24,6 +24,7 @@ export type { Link } from './linker/LinkerUtils';
24
24
  export { default as ToolType } from './linker/ToolType';
25
25
  export * from './useConfigureRuff';
26
26
  export * from './useDashboardColumnFilters';
27
+ export * from './useGridLinker';
27
28
  export * from './useLoadTablePlugin';
28
29
  export * from './events';
29
30
  export * from './panels';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,YAAY,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AAErC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC9D,YAAY,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AAErC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ export { default as LinkerUtils } from "./linker/LinkerUtils.js";
23
23
  export { default as ToolType } from "./linker/ToolType.js";
24
24
  export * from "./useConfigureRuff.js";
25
25
  export * from "./useDashboardColumnFilters.js";
26
+ export * from "./useGridLinker.js";
26
27
  export * from "./useLoadTablePlugin.js";
27
28
  export * from "./events/index.js";
28
29
  export * from "./panels/index.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default","ChartPanelPlugin","ChartWidgetPlugin","ChartPluginConfig","ChartBuilderPlugin","ChartBuilderPluginConfig","ConsolePlugin","FilterPlugin","FilterPluginConfig","GridPanelPlugin","GridWidgetPlugin","GridPluginConfig","LinkerPlugin","LinkerPluginConfig","MarkdownPlugin","MarkdownPluginConfig","PandasPanelPlugin","PandasWidgetPlugin","PandasPluginConfig","WidgetLoaderPlugin","WidgetLoaderPluginConfig","ControlType","LinkerUtils","ToolType"],"sources":["../src/index.ts"],"sourcesContent":["export { default as ChartPanelPlugin } from './ChartPanelPlugin';\nexport { default as ChartWidgetPlugin } from './ChartWidgetPlugin';\nexport { default as ChartPluginConfig } from './ChartPluginConfig';\nexport { default as ChartBuilderPlugin } from './ChartBuilderPlugin';\nexport { default as ChartBuilderPluginConfig } from './ChartBuilderPluginConfig';\nexport { default as ConsolePlugin } from './ConsolePlugin';\nexport { default as FilterPlugin } from './FilterPlugin';\nexport { default as FilterPluginConfig } from './FilterPluginConfig';\nexport { default as GridPanelPlugin } from './GridPanelPlugin';\nexport { default as GridWidgetPlugin } from './GridWidgetPlugin';\nexport { default as GridPluginConfig } from './GridPluginConfig';\nexport { default as LinkerPlugin } from './LinkerPlugin';\nexport { default as LinkerPluginConfig } from './LinkerPluginConfig';\nexport { default as MarkdownPlugin } from './MarkdownPlugin';\nexport { default as MarkdownPluginConfig } from './MarkdownPluginConfig';\nexport { default as PandasPanelPlugin } from './PandasPanelPlugin';\nexport { default as PandasWidgetPlugin } from './PandasWidgetPlugin';\nexport { default as PandasPluginConfig } from './PandasPluginConfig';\nexport { default as WidgetLoaderPlugin } from './WidgetLoaderPlugin';\nexport { default as WidgetLoaderPluginConfig } from './WidgetLoaderPluginConfig';\nexport { default as ControlType } from './controls/ControlType';\nexport { default as LinkerUtils } from './linker/LinkerUtils';\nexport type { Link } from './linker/LinkerUtils';\nexport { default as ToolType } from './linker/ToolType';\nexport * from './useConfigureRuff';\nexport * from './useDashboardColumnFilters';\nexport * from './useLoadTablePlugin';\n\nexport * from './events';\nexport * from './panels';\nexport * from './redux';\nexport * from './prop-types';\nexport * from './linker';\n"],"mappings":"SAASA,OAAO,IAAIC,gBAAgB;AAAA,SAC3BD,OAAO,IAAIE,iBAAiB;AAAA,SAC5BF,OAAO,IAAIG,iBAAiB;AAAA,SAC5BH,OAAO,IAAII,kBAAkB;AAAA,SAC7BJ,OAAO,IAAIK,wBAAwB;AAAA,SACnCL,OAAO,IAAIM,aAAa;AAAA,SACxBN,OAAO,IAAIO,YAAY;AAAA,SACvBP,OAAO,IAAIQ,kBAAkB;AAAA,SAC7BR,OAAO,IAAIS,eAAe;AAAA,SAC1BT,OAAO,IAAIU,gBAAgB;AAAA,SAC3BV,OAAO,IAAIW,gBAAgB;AAAA,SAC3BX,OAAO,IAAIY,YAAY;AAAA,SACvBZ,OAAO,IAAIa,kBAAkB;AAAA,SAC7Bb,OAAO,IAAIc,cAAc;AAAA,SACzBd,OAAO,IAAIe,oBAAoB;AAAA,SAC/Bf,OAAO,IAAIgB,iBAAiB;AAAA,SAC5BhB,OAAO,IAAIiB,kBAAkB;AAAA,SAC7BjB,OAAO,IAAIkB,kBAAkB;AAAA,SAC7BlB,OAAO,IAAImB,kBAAkB;AAAA,SAC7BnB,OAAO,IAAIoB,wBAAwB;AAAA,SACnCpB,OAAO,IAAIqB,WAAW;AAAA,SACtBrB,OAAO,IAAIsB,WAAW;AAAA,SAEtBtB,OAAO,IAAIuB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":["default","ChartPanelPlugin","ChartWidgetPlugin","ChartPluginConfig","ChartBuilderPlugin","ChartBuilderPluginConfig","ConsolePlugin","FilterPlugin","FilterPluginConfig","GridPanelPlugin","GridWidgetPlugin","GridPluginConfig","LinkerPlugin","LinkerPluginConfig","MarkdownPlugin","MarkdownPluginConfig","PandasPanelPlugin","PandasWidgetPlugin","PandasPluginConfig","WidgetLoaderPlugin","WidgetLoaderPluginConfig","ControlType","LinkerUtils","ToolType"],"sources":["../src/index.ts"],"sourcesContent":["export { default as ChartPanelPlugin } from './ChartPanelPlugin';\nexport { default as ChartWidgetPlugin } from './ChartWidgetPlugin';\nexport { default as ChartPluginConfig } from './ChartPluginConfig';\nexport { default as ChartBuilderPlugin } from './ChartBuilderPlugin';\nexport { default as ChartBuilderPluginConfig } from './ChartBuilderPluginConfig';\nexport { default as ConsolePlugin } from './ConsolePlugin';\nexport { default as FilterPlugin } from './FilterPlugin';\nexport { default as FilterPluginConfig } from './FilterPluginConfig';\nexport { default as GridPanelPlugin } from './GridPanelPlugin';\nexport { default as GridWidgetPlugin } from './GridWidgetPlugin';\nexport { default as GridPluginConfig } from './GridPluginConfig';\nexport { default as LinkerPlugin } from './LinkerPlugin';\nexport { default as LinkerPluginConfig } from './LinkerPluginConfig';\nexport { default as MarkdownPlugin } from './MarkdownPlugin';\nexport { default as MarkdownPluginConfig } from './MarkdownPluginConfig';\nexport { default as PandasPanelPlugin } from './PandasPanelPlugin';\nexport { default as PandasWidgetPlugin } from './PandasWidgetPlugin';\nexport { default as PandasPluginConfig } from './PandasPluginConfig';\nexport { default as WidgetLoaderPlugin } from './WidgetLoaderPlugin';\nexport { default as WidgetLoaderPluginConfig } from './WidgetLoaderPluginConfig';\nexport { default as ControlType } from './controls/ControlType';\nexport { default as LinkerUtils } from './linker/LinkerUtils';\nexport type { Link } from './linker/LinkerUtils';\nexport { default as ToolType } from './linker/ToolType';\nexport * from './useConfigureRuff';\nexport * from './useDashboardColumnFilters';\nexport * from './useGridLinker';\nexport * from './useLoadTablePlugin';\n\nexport * from './events';\nexport * from './panels';\nexport * from './redux';\nexport * from './prop-types';\nexport * from './linker';\n"],"mappings":"SAASA,OAAO,IAAIC,gBAAgB;AAAA,SAC3BD,OAAO,IAAIE,iBAAiB;AAAA,SAC5BF,OAAO,IAAIG,iBAAiB;AAAA,SAC5BH,OAAO,IAAII,kBAAkB;AAAA,SAC7BJ,OAAO,IAAIK,wBAAwB;AAAA,SACnCL,OAAO,IAAIM,aAAa;AAAA,SACxBN,OAAO,IAAIO,YAAY;AAAA,SACvBP,OAAO,IAAIQ,kBAAkB;AAAA,SAC7BR,OAAO,IAAIS,eAAe;AAAA,SAC1BT,OAAO,IAAIU,gBAAgB;AAAA,SAC3BV,OAAO,IAAIW,gBAAgB;AAAA,SAC3BX,OAAO,IAAIY,YAAY;AAAA,SACvBZ,OAAO,IAAIa,kBAAkB;AAAA,SAC7Bb,OAAO,IAAIc,cAAc;AAAA,SACzBd,OAAO,IAAIe,oBAAoB;AAAA,SAC/Bf,OAAO,IAAIgB,iBAAiB;AAAA,SAC5BhB,OAAO,IAAIiB,kBAAkB;AAAA,SAC7BjB,OAAO,IAAIkB,kBAAkB;AAAA,SAC7BlB,OAAO,IAAImB,kBAAkB;AAAA,SAC7BnB,OAAO,IAAIoB,wBAAwB;AAAA,SACnCpB,OAAO,IAAIqB,WAAW;AAAA,SACtBrB,OAAO,IAAIsB,WAAW;AAAA,SAEtBtB,OAAO,IAAIuB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA"}
@@ -1,4 +1,4 @@
1
1
  import { type PanelComponent } from '@deephaven/dashboard';
2
- import { type LinkColumn } from './LinkerUtils';
3
- export type ColumnSelectionValidator = (panel: PanelComponent, tableColumn?: LinkColumn) => boolean;
2
+ import { type LinkPointOptions, type LinkColumn } from './LinkerUtils';
3
+ export type ColumnSelectionValidator = (panelOrId: PanelComponent | string, tableColumn: LinkColumn | undefined, options: LinkPointOptions) => boolean;
4
4
  //# sourceMappingURL=ColumnSelectionValidator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSelectionValidator.d.ts","sourceRoot":"","sources":["../../src/linker/ColumnSelectionValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,MAAM,MAAM,wBAAwB,GAAG,CACrC,KAAK,EAAE,cAAc,EACrB,WAAW,CAAC,EAAE,UAAU,KACrB,OAAO,CAAC"}
1
+ {"version":3,"file":"ColumnSelectionValidator.d.ts","sourceRoot":"","sources":["../../src/linker/ColumnSelectionValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAEvE,MAAM,MAAM,wBAAwB,GAAG,CACrC,SAAS,EAAE,cAAc,GAAG,MAAM,EAClC,WAAW,EAAE,UAAU,GAAG,SAAS,EACnC,OAAO,EAAE,gBAAgB,KACtB,OAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSelectionValidator.js","names":[],"sources":["../../src/linker/ColumnSelectionValidator.ts"],"sourcesContent":["import { type PanelComponent } from '@deephaven/dashboard';\nimport { type LinkColumn } from './LinkerUtils';\n\nexport type ColumnSelectionValidator = (\n panel: PanelComponent,\n tableColumn?: LinkColumn\n) => boolean;\n"],"mappings":""}
1
+ {"version":3,"file":"ColumnSelectionValidator.js","names":[],"sources":["../../src/linker/ColumnSelectionValidator.ts"],"sourcesContent":["import { type PanelComponent } from '@deephaven/dashboard';\nimport { type LinkPointOptions, type LinkColumn } from './LinkerUtils';\n\nexport type ColumnSelectionValidator = (\n panelOrId: PanelComponent | string,\n tableColumn: LinkColumn | undefined,\n options: LinkPointOptions\n) => boolean;\n"],"mappings":""}
@@ -4,8 +4,9 @@ import { type PanelComponent, type PanelManager } from '@deephaven/dashboard';
4
4
  import type GoldenLayout from '@deephaven/golden-layout';
5
5
  import { type RowDataMap } from '@deephaven/jsapi-utils';
6
6
  import type { dh as DhType } from '@deephaven/jsapi-types';
7
- import { type Link, type LinkColumn, type LinkFilterMap, type LinkType } from './LinkerUtils';
7
+ import { type Link, type LinkColumn, type LinkFilterMap, type LinkType, type LinkPointOptions } from './LinkerUtils';
8
8
  import { type FilterColumnSourceId } from '../FilterEvents';
9
+ import { type LinkTargetProps } from './LinkerEvent';
9
10
  interface StateProps {
10
11
  activeTool: string;
11
12
  dh: typeof DhType;
@@ -28,7 +29,9 @@ declare const connector: import("react-redux").InferableComponentEnhancerWithPro
28
29
  }, OwnProps>;
29
30
  export type LinkerProps = OwnProps & StateProps & ConnectedProps<typeof connector>;
30
31
  export type LinkerState = {
31
- linkInProgress?: Link;
32
+ linkInProgress?: Link & {
33
+ endType?: LinkType;
34
+ };
32
35
  selectedIds: Set<string>;
33
36
  isDraggingPanel: boolean;
34
37
  };
@@ -38,6 +41,7 @@ export declare class Linker extends Component<LinkerProps, LinkerState> {
38
41
  componentDidUpdate(prevProps: LinkerProps): void;
39
42
  componentDidCatch(error: Error, info: ErrorInfo): void;
40
43
  componentWillUnmount(): void;
44
+ private linkTargetPropMap;
41
45
  private removerFns;
42
46
  startListening(layout: GoldenLayout): void;
43
47
  stopListening(layout: GoldenLayout): void;
@@ -45,17 +49,18 @@ export declare class Linker extends Component<LinkerProps, LinkerState> {
45
49
  handleCancel(): void;
46
50
  handleDone(): void;
47
51
  handleChartColumnSelect(panel: PanelComponent, column: LinkColumn): void;
48
- handleFilterColumnSelect(panel: PanelComponent, column: LinkColumn): void;
49
52
  handleColumnsChanged(sourceId: FilterColumnSourceId, columns: readonly LinkColumn[] | null): void;
50
53
  handleGridColumnSelect(panel: PanelComponent, column: LinkColumn): void;
54
+ handleLinkPointSelected(sourceId: string, column: LinkColumn, options: LinkPointOptions): void;
51
55
  /**
52
56
  * Track a column selection and build the link from it.
53
- * @param panel The panel component that is the source for the column selection
57
+ * @param sourceId The ID of the source for the column selection
54
58
  * @param column The column that was selected
59
+ * @param type The type of the link point
55
60
  * @param isAlwaysEndPoint True if the selection is always the end point, even if it's the first column selected. Defaults to false.
56
61
  * @param overrideIsolatedLinkerPanelId isolatedLinkerPanelId to use when method is called before prop changes propagate
57
62
  */
58
- columnSelected(panel: PanelComponent, column: LinkColumn, isAlwaysEndPoint?: boolean, overrideIsolatedLinkerPanelId?: string | string[]): void;
63
+ columnSelected(sourceId: string, column: LinkColumn, type: LinkType, isAlwaysEndPoint?: boolean, overrideIsolatedLinkerPanelId?: string | string[]): void;
59
64
  unsetFilterValueForLink(link: Link): void;
60
65
  /**
61
66
  * Set filters for a given panel ID
@@ -67,7 +72,8 @@ export declare class Linker extends Component<LinkerProps, LinkerState> {
67
72
  deleteLinks(links: Link[], clearAll?: boolean): void;
68
73
  handleAllLinksDeleted(): void;
69
74
  handleLinkDeleted(linkId: string): void;
70
- handleUpdateValues(panel: PanelComponent, dataMap: RowDataMap): void;
75
+ handleTargetRegistered(sourceId: string, handlers: LinkTargetProps | null): void;
76
+ handleUpdateValues(sourceId: string, dataMap: RowDataMap): void;
71
77
  handlePanelCloned(panel: PanelComponent, cloneConfig: {
72
78
  id: string;
73
79
  }): void;
@@ -88,7 +94,7 @@ export declare class Linker extends Component<LinkerProps, LinkerState> {
88
94
  isOverlayShown(): boolean;
89
95
  updateSelectionValidators(): void;
90
96
  updateLinkInProgressType(type?: LinkType): void;
91
- isColumnSelectionValid(panel: PanelComponent, tableColumn?: LinkColumn): boolean;
97
+ isColumnSelectionValid(panelOrId: PanelComponent | string, tableColumn: LinkColumn | undefined, options: LinkPointOptions): boolean;
92
98
  render(): JSX.Element | null;
93
99
  }
94
100
  declare const ConnectedLinker: import("react-redux").ConnectedComponent<typeof Linker, import("react-redux").Omit<React.ClassAttributes<Linker> & OwnProps & StateProps & {
@@ -98,6 +104,6 @@ declare const ConnectedLinker: import("react-redux").ConnectedComponent<typeof L
98
104
  deleteDashboardLinks: (id: string, linkIds: string[]) => unknown;
99
105
  setDashboardIsolatedLinkerPanelId: (id: string, isolatedLinkerPanelId: string | string[] | undefined) => unknown;
100
106
  setDashboardColumnSelectionValidator: (id: string, columnSelectionValidator: import("./ColumnSelectionValidator").ColumnSelectionValidator | undefined) => unknown;
101
- }, "links" | "setActiveTool" | "setDashboardIsolatedLinkerPanelId" | "timeZone" | "dh" | "activeTool" | "isolatedLinkerPanelId" | "setDashboardLinks" | "addDashboardLinks" | "deleteDashboardLinks" | "setDashboardColumnSelectionValidator"> & OwnProps>;
107
+ }, "links" | "setActiveTool" | "setDashboardIsolatedLinkerPanelId" | "dh" | "timeZone" | "activeTool" | "isolatedLinkerPanelId" | "setDashboardLinks" | "addDashboardLinks" | "deleteDashboardLinks" | "setDashboardColumnSelectionValidator"> & OwnProps>;
102
108
  export default ConnectedLinker;
103
109
  //# sourceMappingURL=Linker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Linker.d.ts","sourceRoot":"","sources":["../../src/linker/Linker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAW,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAI3D,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,YAAY,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAGL,KAAK,UAAU,EAEhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAsB3D,OAAoB,EAElB,KAAK,IAAI,EACT,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,QAAQ,EAEd,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,iBAAiB,CAAC;AAIzB,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,MAAM,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,QAAQ;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAaD,QAAA,MAAM,SAAS;;;;;;;YAQb,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAChC,UAAU,GACV,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;AAEnC,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,CAAC,EAAE,IAAI,CAAC;IACtB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,qBAAa,MAAO,SAAQ,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBACjD,KAAK,EAAE,WAAW;IA8B9B,iBAAiB,IAAI,IAAI;IAMzB,kBAAkB,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAchD,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI;IAItD,oBAAoB,IAAI,IAAI;IAK5B,OAAO,CAAC,UAAU,CAAsB;IAExC,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAsB1C,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAqBzC,KAAK,IAAI,IAAI;IAOb,YAAY,IAAI,IAAI;IASpB,UAAU,IAAI,IAAI;IAKlB,uBAAuB,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAIxE,wBAAwB,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAiCzE,oBAAoB,CAClB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,GACpC,IAAI;IA0BP,sBAAsB,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAQvE;;;;;;OAMG;IACH,cAAc,CACZ,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,UAAU,EAClB,gBAAgB,UAAQ,EACxB,6BAA6B,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAChD,IAAI;IA2GP,uBAAuB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAmBzC;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;IAalE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAK7B,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,QAAQ,UAAQ,GAAG,IAAI;IAelD,qBAAqB,IAAI,IAAI;IAe7B,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUvC,kBAAkB,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI;IAwDpE,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAc3E,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAY9C,kBAAkB,IAAI,IAAI;IAI1B,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOxC,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIxC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI;IAK1C,wBAAwB,IAAI,IAAI;IAIhC,iBAAiB,IAAI,IAAI;IAIzB,YAAY,IAAI,IAAI;IAMpB;;;OAGG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAW5C,cAAc,UAEH,IAAI,EAAE,kBACG,IAAI,GAAG,SAAS,qBACb,MAAM,GAAG,SAAS,YAmBvC;IAEF,cAAc,IAAI,OAAO;IAKzB,yBAAyB,IAAI,IAAI;IAmBjC,wBAAwB,CAAC,IAAI,GAAE,QAAoB,GAAG,IAAI;IAc1D,sBAAsB,CACpB,KAAK,EAAE,cAAc,EACrB,WAAW,CAAC,EAAE,UAAU,GACvB,OAAO;IAiDV,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI;CAsC7B;AAED,QAAA,MAAM,eAAe;;;;;;;0PAAoB,CAAC;AAE1C,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"Linker.d.ts","sourceRoot":"","sources":["../../src/linker/Linker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAW,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAI3D,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,YAAY,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,YAAY,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAGL,KAAK,UAAU,EAEhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAuB3D,OAAoB,EAElB,KAAK,IAAI,EACT,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,QAAQ,EAEb,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,eAAe,EAIrB,MAAM,eAAe,CAAC;AAIvB,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,MAAM,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,QAAQ;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAaD,QAAA,MAAM,SAAS;;;;;;;YAQb,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAChC,UAAU,GACV,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;AAEnC,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,CAAC,EAAE,IAAI,GAAG;QAAE,OAAO,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC;IAC/C,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,qBAAa,MAAO,SAAQ,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBACjD,KAAK,EAAE,WAAW;IA+B9B,iBAAiB,IAAI,IAAI;IAMzB,kBAAkB,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAchD,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI;IAItD,oBAAoB,IAAI,IAAI;IAK5B,OAAO,CAAC,iBAAiB,CAA2C;IAEpE,OAAO,CAAC,UAAU,CAAsB;IAExC,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAqB1C,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAiBzC,KAAK,IAAI,IAAI;IAOb,YAAY,IAAI,IAAI;IASpB,UAAU,IAAI,IAAI;IAKlB,uBAAuB,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAMxE,oBAAoB,CAClB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,GACpC,IAAI;IA0BP,sBAAsB,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAUvE,uBAAuB,CACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,gBAAgB,GACxB,IAAI;IAoCP;;;;;;;OAOG;IACH,cAAc,CACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,QAAQ,EACd,gBAAgB,UAAQ,EACxB,6BAA6B,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAChD,IAAI;IAkHP,uBAAuB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IA0BzC;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;IAuBlE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAK7B,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,QAAQ,UAAQ,GAAG,IAAI;IAelD,qBAAqB,IAAI,IAAI;IAe7B,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUvC,sBAAsB,CACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,eAAe,GAAG,IAAI,GAC/B,IAAI;IASP,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI;IAkD/D,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAc3E,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAY9C,kBAAkB,IAAI,IAAI;IAI1B,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOxC,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIxC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI;IAK1C,wBAAwB,IAAI,IAAI;IAIhC,iBAAiB,IAAI,IAAI;IAIzB,YAAY,IAAI,IAAI;IAMpB;;;OAGG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAW5C,cAAc,UAEH,IAAI,EAAE,kBACG,IAAI,GAAG,SAAS,qBACb,MAAM,GAAG,SAAS,YAmBvC;IAEF,cAAc,IAAI,OAAO;IAKzB,yBAAyB,IAAI,IAAI;IAmBjC,wBAAwB,CAAC,IAAI,GAAE,QAAoB,GAAG,IAAI;IAc1D,sBAAsB,CACpB,SAAS,EAAE,cAAc,GAAG,MAAM,EAClC,WAAW,EAAE,UAAU,GAAG,SAAS,EACnC,OAAO,EAAE,gBAAgB,GACxB,OAAO;IAkEV,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI;CAuC7B;AAED,QAAA,MAAM,eAAe;;;;;;;0PAAoB,CAAC;AAE1C,eAAe,eAAe,CAAC"}