@visactor/react-vtable 1.25.1-alpha.0 → 1.26.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.
@@ -29,5 +29,4 @@ export default function withContainer(Comp, name = "TableContainer", getProps) {
29
29
  }, getProps ? getProps(options) : options)) : React.createElement(React.Fragment, null));
30
30
  }));
31
31
  return Cls.displayName = name || Comp.name, Cls;
32
- }
33
- //# sourceMappingURL=withContainer.js.map
32
+ }
@@ -12,4 +12,5 @@ export function withTableInstance(Component) {
12
12
  return Com.displayName = Component.name, Com;
13
13
  }
14
14
 
15
- export default TableContext;
15
+ export default TableContext;
16
+ //# sourceMappingURL=table.js.map
package/es/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export * from './tables';
2
2
  export * from './table-components';
3
3
  export * from './components';
4
- export declare const version = "1.25.1-alpha.0";
4
+ export declare const version = "1.26.0";
package/es/index.js CHANGED
@@ -4,5 +4,5 @@ export * from "./table-components";
4
4
 
5
5
  export * from "./components";
6
6
 
7
- export const version = "1.25.1-alpha.0";
7
+ export const version = "1.26.0";
8
8
  //# sourceMappingURL=index.js.map
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAE7B,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC","file":"index.js","sourcesContent":["export * from './tables';\nexport * from './table-components';\nexport * from './components';\n\nexport const version = \"1.25.1-alpha.0\";\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAE7B,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC","file":"index.js","sourcesContent":["export * from './tables';\nexport * from './table-components';\nexport * from './components';\n\nexport const version = \"1.26.0\";\n"]}
@@ -49,6 +49,10 @@ export const reconcilor = ReactReconciler({
49
49
  },
50
50
  getCurrentUpdatePriority: () => currentUpdatePriority,
51
51
  resolveUpdatePriority: () => currentUpdatePriority,
52
+ trackSchedulerEvent: () => {},
53
+ resolveEventType: () => null,
54
+ resolveEventTimeStamp: () => Date.now(),
55
+ shouldAttemptEagerTransition: () => !1,
52
56
  getCurrentEventPriority: () => DefaultEventPriority,
53
57
  getInstanceFromNode: node => null,
54
58
  beforeActiveInstanceBlur: () => {},
@@ -1 +1 @@
1
- {"version":3,"sources":["table-components/custom/reconciler.ts"],"names":[],"mappings":"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","file":"reconciler.js","sourcesContent":["import { application, REACT_TO_CANOPUS_EVENTS, Group, Tag, Text } from '@visactor/vtable/es/vrender';\nimport type { FlexLayoutPlugin, Graphic, IGraphic, IGraphicCreator } from '@visactor/vtable/es/vrender';\nimport { isFunction, isNumber, merge } from '@visactor/vutils';\nimport React from 'react';\nimport ReactReconciler from 'react-reconciler';\nimport { ConcurrentRoot, DefaultEventPriority, LegacyRoot } from 'react-reconciler/constants.js';\nimport { createVRenderComponent } from '../../components/vrender-components/component-creater';\n\ndeclare const process: any;\n\nconst rendererPackageName = 'react-vtable';\nconst rendererVersion =\n typeof (React as any).version === 'string' && (React as any).version.length > 0 ? (React as any).version : '0.0.0';\n\n/**\n * react-reconciler 与 React 主版本强绑定:\n * - React18 对应 react-reconciler@0.29.x\n * - React19 对应 react-reconciler@0.31.x\n *\n * 本仓库默认依赖树以 React18 为主;React19 Demo 通过 Vite alias 指向 .react19-deps 的 react-reconciler,\n * 避免因版本不匹配出现运行时报错(例如读取内部字段 undefined)。\n */\ntype Instance = any;\nlet currentUpdatePriority: number = DefaultEventPriority;\n\nexport type ReconcilerErrorType = 'uncaught' | 'caught' | 'recoverable';\nexport type ReconcilerErrorReporter = (type: ReconcilerErrorType, error: unknown) => void;\n\nexport const reconcilor = (ReactReconciler as any)({\n supportsMutation: true,\n supportsPersistence: false,\n rendererVersion,\n rendererPackageName,\n\n createInstance: (type: string, props: any, instance: any): any => {\n const graphic = createGraphic(type, props);\n if (graphic) {\n bindEventsToGraphic(graphic as IGraphic, props);\n } else {\n return undefined;\n // createInstance\n // graphic = createGraphic('group', {});\n }\n return graphic;\n },\n\n createTextInstance: (text: string, instance: any): any => {\n // const textGraphic = createText({ text });\n // return textGraphic;\n // debugger;\n // return document.createTextNode(text);\n return undefined;\n },\n\n appendInitialChild: (parentInstance: Instance, childInstance: Instance) => {\n parentInstance.add(childInstance);\n },\n\n finalizeInitialChildren: () => false,\n\n prepareUpdate: () => true,\n\n shouldSetTextContent: () => false,\n\n getRootHostContext: (): Record<string, never> => ({}),\n\n getChildHostContext: (): Record<string, never> => ({}),\n\n getPublicInstance: (instance: Instance): any => {\n return instance;\n },\n\n prepareForCommit: (): null => null,\n\n resetAfterCommit: (): undefined => undefined,\n\n preparePortalMount: (): null => null,\n\n // eslint-disable-next-line no-undef\n scheduleTimeout: setTimeout,\n // eslint-disable-next-line no-undef\n cancelTimeout: clearTimeout,\n supportsMicrotasks: true,\n scheduleMicrotask: (callback: () => void) => {\n Promise.resolve().then(callback);\n },\n\n noTimeout: -1,\n isPrimaryRenderer: false,\n\n setCurrentUpdatePriority: (newPriority: number): void => {\n currentUpdatePriority = newPriority;\n },\n\n getCurrentUpdatePriority: (): number => {\n return currentUpdatePriority;\n },\n\n resolveUpdatePriority: (): number => {\n return currentUpdatePriority;\n },\n\n getCurrentEventPriority: (): number => DefaultEventPriority,\n\n getInstanceFromNode: (node: any): null => null,\n\n beforeActiveInstanceBlur: (): undefined => undefined,\n\n afterActiveInstanceBlur: (): undefined => undefined,\n\n prepareScopeUpdate: (): undefined => undefined,\n\n getInstanceFromScope: (): undefined => undefined,\n\n detachDeletedInstance: (): undefined => undefined,\n\n supportsHydration: false,\n maySuspendCommit: (): boolean => false,\n preloadInstance: (): null => null,\n startSuspendingCommit: (): null => null,\n suspendInstance: (): undefined => undefined,\n waitForCommitToBeReady: (): null => null,\n\n appendChild: (parentInstance: Instance, child: Instance) => {\n parentInstance.add(child);\n },\n appendChildToContainer: (container: Instance, child: Instance) => {\n container.add(child);\n },\n\n insertBefore: (parentInstance: Instance, child: Instance, beforeChild: Instance) => {\n parentInstance.insertBefore(child, beforeChild);\n },\n\n insertInContainerBefore: (parentInstance: Instance, child: Instance, beforeChild: Instance) => {\n parentInstance.insertBefore(child, beforeChild);\n },\n\n removeChild: (parentInstance: Instance, child: Instance) => {\n child.delete();\n },\n\n removeChildFromContainer: (parentInstance: Instance, child: Instance) => {\n child.delete();\n },\n\n commitUpdate: (...args: any[]): void => {\n const instance = args[0];\n if (typeof args[1] === 'string') {\n const oldProps = args[2];\n const newProps = args[3];\n updateGraphicProps(instance, newProps, oldProps);\n return;\n }\n const oldProps = args[3];\n const newProps = args[4];\n updateGraphicProps(instance, newProps, oldProps);\n },\n\n hideInstance: (instance: Instance) => {\n instance.setAttribute('visible', false);\n },\n\n unhideInstance: (instance: any, props: any): void => {\n instance.setAttribute('visible', true);\n },\n\n clearContainer: (container: Instance) => {\n container.removeAllChild();\n },\n\n commitTextUpdate: (textInstance: any, oldText: string, newText: string) => {\n // debugger;\n }\n});\n\nconst injectIntoDevTools = (reconcilor as any).injectIntoDevTools;\nif (typeof injectIntoDevTools === 'function') {\n if (injectIntoDevTools.length === 0) {\n injectIntoDevTools();\n } else {\n injectIntoDevTools({\n bundleType: \"production\" !== 'production' ? 1 : 0,\n version: rendererVersion,\n rendererPackageName\n });\n }\n}\n\nexport const createReconcilerContainer = (\n container: Instance,\n identifierPrefix = 'custom',\n reportError?: ReconcilerErrorReporter\n) => {\n const createContainer = (reconcilor as any).createContainer;\n const hydrationCallbacks: null = null;\n const isStrictMode = false;\n const concurrentUpdatesByDefaultOverride = false;\n const noop = (): void => undefined;\n // React19 的 createContainer 需要传入 error callbacks;这里不做任何全局 side-effect,\n // 由上层(例如 BaseTable 的 onError)选择是否接收这些错误。\n const onUncaughtError = reportError ? (error: unknown) => reportError('uncaught', error) : noop;\n const onCaughtError = reportError ? (error: unknown) => reportError('caught', error) : noop;\n const onRecoverableError = reportError ? (error: unknown) => reportError('recoverable', error) : noop;\n const transitionCallbacks: null = null;\n\n const majorVersion = Number.parseInt(String((React as any).version ?? '0').split('.')[0], 10);\n const rootTag = Number.isFinite(majorVersion) && majorVersion >= 19 ? ConcurrentRoot : LegacyRoot;\n return createContainer(\n container as any,\n rootTag,\n hydrationCallbacks,\n isStrictMode,\n concurrentUpdatesByDefaultOverride,\n identifierPrefix,\n onUncaughtError,\n onCaughtError,\n onRecoverableError,\n transitionCallbacks\n );\n};\n\nfunction createGraphic(type: string, props: any) {\n const component = createVRenderComponent(type, props);\n if (component) {\n return component;\n }\n if (type === 'group') {\n return new Group(props.attribute ? props.attribute : props);\n }\n if (type === 'text') {\n return new Text(props.attribute ? props.attribute : props);\n }\n if (!application.graphicService.creator[type as keyof IGraphicCreator]) {\n return undefined;\n }\n const graphic = application.graphicService.creator[type as keyof IGraphicCreator]((props as any).attribute);\n return graphic;\n}\n\nfunction isEventProp(key: string, props: any) {\n return key.startsWith('on') && isFunction(props[key]);\n}\n\nfunction bindEventsToGraphic(graphic: IGraphic, props: any) {\n for (const key in props) {\n if (isEventProp(key, props) && REACT_TO_CANOPUS_EVENTS[key as keyof typeof REACT_TO_CANOPUS_EVENTS]) {\n graphic.addEventListener(REACT_TO_CANOPUS_EVENTS[key as keyof typeof REACT_TO_CANOPUS_EVENTS], props[key]);\n }\n }\n}\n\nfunction updateGraphicProps(graphic: IGraphic, newProps: any, oldProps: any) {\n // deal width event update\n for (const propKey in oldProps) {\n if (isEventProp(propKey, oldProps) && oldProps[propKey] !== newProps[propKey]) {\n graphic.removeEventListener(\n REACT_TO_CANOPUS_EVENTS[propKey as keyof typeof REACT_TO_CANOPUS_EVENTS],\n oldProps[propKey]\n );\n }\n }\n for (const propKey in newProps) {\n if (isEventProp(propKey, newProps) && oldProps[propKey] !== newProps[propKey]) {\n graphic.addEventListener(\n REACT_TO_CANOPUS_EVENTS[propKey as keyof typeof REACT_TO_CANOPUS_EVENTS],\n newProps[propKey]\n );\n }\n }\n const attribute = newProps.attribute ?? merge({}, newProps);\n\n // update all attribute\n graphic.initAttributes(attribute);\n if (graphic.type === 'image') {\n graphic.loadImage(attribute.image);\n }\n\n if (\n attribute.display === 'flex' &&\n attribute.width === undefined &&\n attribute.height === undefined &&\n isNumber(oldProps.attribute.width) &&\n isNumber(oldProps.attribute.height)\n ) {\n const plugin = graphic.stage.pluginService.findPluginsByName('FlexLayoutPlugin')[0] as FlexLayoutPlugin;\n if (plugin) {\n plugin.tryLayoutChildren(graphic);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["table-components/custom/reconciler.ts"],"names":[],"mappings":"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","file":"reconciler.js","sourcesContent":["import { application, REACT_TO_CANOPUS_EVENTS, Group, Tag, Text } from '@visactor/vtable/es/vrender';\nimport type { FlexLayoutPlugin, Graphic, IGraphic, IGraphicCreator } from '@visactor/vtable/es/vrender';\nimport { isFunction, isNumber, merge } from '@visactor/vutils';\nimport React from 'react';\nimport ReactReconciler from 'react-reconciler';\nimport { ConcurrentRoot, DefaultEventPriority, LegacyRoot } from 'react-reconciler/constants.js';\nimport { createVRenderComponent } from '../../components/vrender-components/component-creater';\n\ndeclare const process: any;\n\nconst rendererPackageName = 'react-vtable';\nconst rendererVersion =\n typeof (React as any).version === 'string' && (React as any).version.length > 0 ? (React as any).version : '0.0.0';\n\n/**\n * react-reconciler 与 React 主版本强绑定:\n * - React18 对应 react-reconciler@0.29.x\n * - React19 对应 react-reconciler@0.31.x\n *\n * 本仓库默认依赖树以 React18 为主;React19 Demo 通过 Vite alias 指向 .react19-deps 的 react-reconciler,\n * 避免因版本不匹配出现运行时报错(例如读取内部字段 undefined)。\n */\ntype Instance = any;\nlet currentUpdatePriority: number = DefaultEventPriority;\n\nexport type ReconcilerErrorType = 'uncaught' | 'caught' | 'recoverable';\nexport type ReconcilerErrorReporter = (type: ReconcilerErrorType, error: unknown) => void;\n\nexport const reconcilor = (ReactReconciler as any)({\n supportsMutation: true,\n supportsPersistence: false,\n rendererVersion,\n rendererPackageName,\n\n createInstance: (type: string, props: any, instance: any): any => {\n const graphic = createGraphic(type, props);\n if (graphic) {\n bindEventsToGraphic(graphic as IGraphic, props);\n } else {\n return undefined;\n // createInstance\n // graphic = createGraphic('group', {});\n }\n return graphic;\n },\n\n createTextInstance: (text: string, instance: any): any => {\n // const textGraphic = createText({ text });\n // return textGraphic;\n // debugger;\n // return document.createTextNode(text);\n return undefined;\n },\n\n appendInitialChild: (parentInstance: Instance, childInstance: Instance) => {\n parentInstance.add(childInstance);\n },\n\n finalizeInitialChildren: () => false,\n\n prepareUpdate: () => true,\n\n shouldSetTextContent: () => false,\n\n getRootHostContext: (): Record<string, never> => ({}),\n\n getChildHostContext: (): Record<string, never> => ({}),\n\n getPublicInstance: (instance: Instance): any => {\n return instance;\n },\n\n prepareForCommit: (): null => null,\n\n resetAfterCommit: (): undefined => undefined,\n\n preparePortalMount: (): null => null,\n\n // eslint-disable-next-line no-undef\n scheduleTimeout: setTimeout,\n // eslint-disable-next-line no-undef\n cancelTimeout: clearTimeout,\n supportsMicrotasks: true,\n scheduleMicrotask: (callback: () => void) => {\n Promise.resolve().then(callback);\n },\n\n noTimeout: -1,\n isPrimaryRenderer: false,\n\n setCurrentUpdatePriority: (newPriority: number): void => {\n currentUpdatePriority = newPriority;\n },\n\n getCurrentUpdatePriority: (): number => {\n return currentUpdatePriority;\n },\n\n resolveUpdatePriority: (): number => {\n return currentUpdatePriority;\n },\n\n trackSchedulerEvent: (): void => undefined,\n\n resolveEventType: (): null => null,\n\n resolveEventTimeStamp: (): number => {\n return Date.now();\n },\n\n shouldAttemptEagerTransition: (): boolean => false,\n\n getCurrentEventPriority: (): number => DefaultEventPriority,\n\n getInstanceFromNode: (node: any): null => null,\n\n beforeActiveInstanceBlur: (): undefined => undefined,\n\n afterActiveInstanceBlur: (): undefined => undefined,\n\n prepareScopeUpdate: (): undefined => undefined,\n\n getInstanceFromScope: (): undefined => undefined,\n\n detachDeletedInstance: (): undefined => undefined,\n\n supportsHydration: false,\n maySuspendCommit: (): boolean => false,\n preloadInstance: (): null => null,\n startSuspendingCommit: (): null => null,\n suspendInstance: (): undefined => undefined,\n waitForCommitToBeReady: (): null => null,\n\n appendChild: (parentInstance: Instance, child: Instance) => {\n parentInstance.add(child);\n },\n appendChildToContainer: (container: Instance, child: Instance) => {\n container.add(child);\n },\n\n insertBefore: (parentInstance: Instance, child: Instance, beforeChild: Instance) => {\n parentInstance.insertBefore(child, beforeChild);\n },\n\n insertInContainerBefore: (parentInstance: Instance, child: Instance, beforeChild: Instance) => {\n parentInstance.insertBefore(child, beforeChild);\n },\n\n removeChild: (parentInstance: Instance, child: Instance) => {\n child.delete();\n },\n\n removeChildFromContainer: (parentInstance: Instance, child: Instance) => {\n child.delete();\n },\n\n commitUpdate: (...args: any[]): void => {\n const instance = args[0];\n if (typeof args[1] === 'string') {\n const oldProps = args[2];\n const newProps = args[3];\n updateGraphicProps(instance, newProps, oldProps);\n return;\n }\n const oldProps = args[3];\n const newProps = args[4];\n updateGraphicProps(instance, newProps, oldProps);\n },\n\n hideInstance: (instance: Instance) => {\n instance.setAttribute('visible', false);\n },\n\n unhideInstance: (instance: any, props: any): void => {\n instance.setAttribute('visible', true);\n },\n\n clearContainer: (container: Instance) => {\n container.removeAllChild();\n },\n\n commitTextUpdate: (textInstance: any, oldText: string, newText: string) => {\n // debugger;\n }\n});\n\nconst injectIntoDevTools = (reconcilor as any).injectIntoDevTools;\nif (typeof injectIntoDevTools === 'function') {\n if (injectIntoDevTools.length === 0) {\n injectIntoDevTools();\n } else {\n injectIntoDevTools({\n bundleType: \"production\" !== 'production' ? 1 : 0,\n version: rendererVersion,\n rendererPackageName\n });\n }\n}\n\nexport const createReconcilerContainer = (\n container: Instance,\n identifierPrefix = 'custom',\n reportError?: ReconcilerErrorReporter\n) => {\n const createContainer = (reconcilor as any).createContainer;\n const hydrationCallbacks: null = null;\n const isStrictMode = false;\n const concurrentUpdatesByDefaultOverride = false;\n const noop = (): void => undefined;\n // React19 的 createContainer 需要传入 error callbacks;这里不做任何全局 side-effect,\n // 由上层(例如 BaseTable 的 onError)选择是否接收这些错误。\n const onUncaughtError = reportError ? (error: unknown) => reportError('uncaught', error) : noop;\n const onCaughtError = reportError ? (error: unknown) => reportError('caught', error) : noop;\n const onRecoverableError = reportError ? (error: unknown) => reportError('recoverable', error) : noop;\n const transitionCallbacks: null = null;\n\n const majorVersion = Number.parseInt(String((React as any).version ?? '0').split('.')[0], 10);\n const rootTag = Number.isFinite(majorVersion) && majorVersion >= 19 ? ConcurrentRoot : LegacyRoot;\n return createContainer(\n container as any,\n rootTag,\n hydrationCallbacks,\n isStrictMode,\n concurrentUpdatesByDefaultOverride,\n identifierPrefix,\n onUncaughtError,\n onCaughtError,\n onRecoverableError,\n transitionCallbacks\n );\n};\n\nfunction createGraphic(type: string, props: any) {\n const component = createVRenderComponent(type, props);\n if (component) {\n return component;\n }\n if (type === 'group') {\n return new Group(props.attribute ? props.attribute : props);\n }\n if (type === 'text') {\n return new Text(props.attribute ? props.attribute : props);\n }\n if (!application.graphicService.creator[type as keyof IGraphicCreator]) {\n return undefined;\n }\n const graphic = application.graphicService.creator[type as keyof IGraphicCreator]((props as any).attribute);\n return graphic;\n}\n\nfunction isEventProp(key: string, props: any) {\n return key.startsWith('on') && isFunction(props[key]);\n}\n\nfunction bindEventsToGraphic(graphic: IGraphic, props: any) {\n for (const key in props) {\n if (isEventProp(key, props) && REACT_TO_CANOPUS_EVENTS[key as keyof typeof REACT_TO_CANOPUS_EVENTS]) {\n graphic.addEventListener(REACT_TO_CANOPUS_EVENTS[key as keyof typeof REACT_TO_CANOPUS_EVENTS], props[key]);\n }\n }\n}\n\nfunction updateGraphicProps(graphic: IGraphic, newProps: any, oldProps: any) {\n // deal width event update\n for (const propKey in oldProps) {\n if (isEventProp(propKey, oldProps) && oldProps[propKey] !== newProps[propKey]) {\n graphic.removeEventListener(\n REACT_TO_CANOPUS_EVENTS[propKey as keyof typeof REACT_TO_CANOPUS_EVENTS],\n oldProps[propKey]\n );\n }\n }\n for (const propKey in newProps) {\n if (isEventProp(propKey, newProps) && oldProps[propKey] !== newProps[propKey]) {\n graphic.addEventListener(\n REACT_TO_CANOPUS_EVENTS[propKey as keyof typeof REACT_TO_CANOPUS_EVENTS],\n newProps[propKey]\n );\n }\n }\n const attribute = newProps.attribute ?? merge({}, newProps);\n\n // update all attribute\n graphic.initAttributes(attribute);\n if (graphic.type === 'image') {\n graphic.loadImage(attribute.image);\n }\n\n if (\n attribute.display === 'flex' &&\n attribute.width === undefined &&\n attribute.height === undefined &&\n isNumber(oldProps.attribute.width) &&\n isNumber(oldProps.attribute.height)\n ) {\n const plugin = graphic.stage.pluginService.findPluginsByName('FlexLayoutPlugin')[0] as FlexLayoutPlugin;\n if (plugin) {\n plugin.tryLayoutChildren(graphic);\n }\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visactor/react-vtable",
3
- "version": "1.25.1-alpha.0",
3
+ "version": "1.26.0",
4
4
  "description": "The react version of VTable",
5
5
  "keywords": [
6
6
  "react",
@@ -47,10 +47,10 @@
47
47
  "react-dom": "^18.2.0 || ^19.0.0"
48
48
  },
49
49
  "dependencies": {
50
- "@visactor/vtable": "1.25.1-alpha.0",
51
50
  "@visactor/vutils": "~1.0.17",
52
51
  "react-is": "^18.2.0",
53
- "react-reconciler": "0.29.0"
52
+ "react-reconciler": "0.29.0",
53
+ "@visactor/vtable": "1.26.0"
54
54
  },
55
55
  "devDependencies": {
56
56
  "cross-env": "^7.0.3",