ag-grid-iux-react
Advanced tools
Comparing version 2.0.0 to 3.0.0
@@ -1,6 +0,6 @@ | ||
## 2.0.0 | ||
## 3.0.0 | ||
`2020-09-22` | ||
`2024-06-03` | ||
- upgrade to version 24.0.0 | ||
- React 升级到 version18 | ||
@@ -11,3 +11,3 @@ ## 1.0.1 | ||
- Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps | ||
- Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps | ||
@@ -18,2 +18,2 @@ ## 1.0.0 | ||
- 项目初始化 | ||
- 项目初始化 |
@@ -1,4 +0,3 @@ | ||
// ag-grid-react v24.0.0 | ||
// ag-grid-iux-react v2.0.0 | ||
import { Component } from "react"; | ||
import * as AgGrid from "ag-grid-iux-community"; | ||
import { ColDef, ColGroupDef } from "ag-grid-iux-community"; | ||
@@ -14,3 +13,3 @@ export interface AgGridColumnProps extends ColDef { | ||
render(): any; | ||
static mapChildColumnDefs(columnProps: any): AgGrid.ColDef[]; | ||
static mapChildColumnDefs(columnProps: any): any; | ||
static toColDef(columnProps: any): ColDef; | ||
@@ -17,0 +16,0 @@ static hasChildColumns(columnProps: any): boolean; |
@@ -1,2 +0,2 @@ | ||
// ag-grid-react v24.0.0 | ||
// ag-grid-iux-react v2.0.0 | ||
"use strict"; | ||
@@ -7,6 +7,8 @@ var __extends = (this && this.__extends) || (function () { | ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || | ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; | ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; | ||
return extendStatics(d, b); | ||
}; | ||
return function (d, b) { | ||
if (typeof b !== "function" && b !== null) | ||
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); | ||
extendStatics(d, b); | ||
@@ -18,2 +20,3 @@ function __() { this.constructor = d; } | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.AgGridColumn = void 0; | ||
var React = require("react"); | ||
@@ -20,0 +23,0 @@ var react_1 = require("react"); |
@@ -1,49 +0,27 @@ | ||
// ag-grid-react v24.0.0 | ||
// ag-grid-iux-react v2.0.0 | ||
import * as React from "react"; | ||
import { Component, ReactPortal } from "react"; | ||
import { ColumnApi, GridApi, GridOptions, Module } from "ag-grid-iux-community"; | ||
import { ReactComponent } from "./reactComponent"; | ||
import { ChangeDetectionService, ChangeDetectionStrategyType } from "./changeDetectionService"; | ||
import * as AgGrid from "ag-grid-iux-community"; | ||
import { GridOptions } from "ag-grid-iux-community"; | ||
export interface AgGridReactProps extends GridOptions { | ||
gridOptions?: GridOptions; | ||
modules?: Module[]; | ||
rowDataChangeDetectionStrategy?: ChangeDetectionStrategyType; | ||
componentWrappingElement?: string; | ||
disableStaticMarkup?: boolean; | ||
containerStyle?: any; | ||
} | ||
export declare class AgGridReact extends Component<AgGridReactProps, {}> { | ||
export declare class AgGridReact extends React.Component<AgGridReactProps, {}> { | ||
props: any; | ||
state: any; | ||
static propTypes: any; | ||
gridOptions: GridOptions; | ||
changeDetectionService: ChangeDetectionService; | ||
api: GridApi | null; | ||
columnApi: ColumnApi; | ||
portals: ReactPortal[]; | ||
hasPendingPortalUpdate: boolean; | ||
destroyed: boolean; | ||
gridOptions: AgGrid.GridOptions; | ||
api: AgGrid.GridApi; | ||
columnApi: AgGrid.ColumnApi; | ||
protected eGridDiv: HTMLElement; | ||
private static MAX_COMPONENT_CREATION_TIME; | ||
constructor(props: any, state: any); | ||
render(): React.ReactElement<any, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)>) | (new (props: any) => React.Component<any, any, any>)>; | ||
render(): React.ReactElement<any, string | React.JSXElementConstructor<any>>; | ||
createStyleForDiv(): any; | ||
componentDidMount(): void; | ||
waitForInstance(reactComponent: ReactComponent, resolve: (value: any) => void, runningTime?: number): void; | ||
/** | ||
* Mounts a react portal for components registered under the componentFramework. | ||
* We do this because we want all portals to be in the same tree - in order to get | ||
* Context to work properly. | ||
*/ | ||
mountReactPortal(portal: ReactPortal, reactComponent: ReactComponent, resolve: (value: any) => void): void; | ||
batchUpdate(callback?: any): any; | ||
destroyPortal(portal: ReactPortal): void; | ||
private getStrategyTypeForProp; | ||
shouldComponentUpdate(nextProps: any): boolean; | ||
componentDidUpdate(prevProps: any): void; | ||
processPropsChanges(prevProps: any, nextProps: any): void; | ||
private extractDeclarativeColDefChanges; | ||
private extractGridPropertyChanges; | ||
shouldComponentUpdate(): boolean; | ||
UNSAFE_componentWillReceiveProps(nextProps: any): void; | ||
componentWillUnmount(): void; | ||
isDisableStaticMarkup(): boolean; | ||
static unwrapStringOrNumber(obj: any): any; | ||
copy(value: any): any; | ||
areEquivalent(a: any, b: any): boolean; | ||
static areEquivalent(a: any, b: any): boolean; | ||
} |
@@ -1,2 +0,2 @@ | ||
// ag-grid-react v24.0.0 | ||
// ag-grid-iux-react v2.0.0 | ||
"use strict"; | ||
@@ -7,6 +7,8 @@ var __extends = (this && this.__extends) || (function () { | ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || | ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; | ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; }; | ||
return extendStatics(d, b); | ||
}; | ||
return function (d, b) { | ||
if (typeof b !== "function" && b !== null) | ||
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null"); | ||
extendStatics(d, b); | ||
@@ -17,17 +19,19 @@ function __() { this.constructor = d; } | ||
})(); | ||
var __spreadArrays = (this && this.__spreadArrays) || function () { | ||
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; | ||
for (var r = Array(s), k = 0, i = 0; i < il; i++) | ||
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) | ||
r[k] = a[j]; | ||
return r; | ||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { | ||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; | ||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); | ||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; | ||
return c > 3 && r && Object.defineProperty(target, key, r), r; | ||
}; | ||
var __metadata = (this && this.__metadata) || function (k, v) { | ||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.AgGridReact = void 0; | ||
var React = require("react"); | ||
var react_1 = require("react"); | ||
var PropTypes = require("prop-types"); | ||
var ag_grid_community_1 = require("ag-grid-iux-community"); | ||
var AgGrid = require("ag-grid-iux-community"); | ||
var ag_grid_iux_community_1 = require("ag-grid-iux-community"); | ||
var agGridColumn_1 = require("./agGridColumn"); | ||
var reactComponent_1 = require("./reactComponent"); | ||
var changeDetectionService_1 = require("./changeDetectionService"); | ||
var agReactComponent_1 = require("./agReactComponent"); | ||
var AgGridReact = /** @class */ (function (_super) { | ||
@@ -39,7 +43,2 @@ __extends(AgGridReact, _super); | ||
_this.state = state; | ||
_this.changeDetectionService = new changeDetectionService_1.ChangeDetectionService(); | ||
_this.api = null; | ||
_this.portals = []; | ||
_this.hasPendingPortalUpdate = false; | ||
_this.destroyed = false; | ||
return _this; | ||
@@ -54,3 +53,3 @@ } | ||
} | ||
}, this.portals); | ||
}); | ||
}; | ||
@@ -69,9 +68,6 @@ AgGridReact.prototype.createStyleForDiv = function () { | ||
AgGridReact.prototype.componentDidMount = function () { | ||
var modules = this.props.modules || []; | ||
var gridParams = { | ||
providedBeanInstances: { | ||
agGridReact: this, | ||
frameworkComponentWrapper: new ReactFrameworkComponentWrapper(this) | ||
}, | ||
modules: modules | ||
seedBeanInstances: { | ||
agGridReact: this | ||
} | ||
}; | ||
@@ -82,77 +78,9 @@ var gridOptions = this.props.gridOptions || {}; | ||
} | ||
this.gridOptions = ag_grid_community_1.ComponentUtil.copyAttributesToGridOptions(gridOptions, this.props); | ||
this.gridOptions = AgGrid.ComponentUtil.copyAttributesToGridOptions(gridOptions, this.props); | ||
// don't need the return value | ||
new ag_grid_community_1.Grid(this.eGridDiv, this.gridOptions, gridParams); | ||
new AgGrid.Grid(this.eGridDiv, this.gridOptions, gridParams); | ||
this.api = this.gridOptions.api; | ||
this.columnApi = this.gridOptions.columnApi; | ||
}; | ||
AgGridReact.prototype.waitForInstance = function (reactComponent, resolve, runningTime) { | ||
var _this = this; | ||
if (runningTime === void 0) { runningTime = 0; } | ||
// if the grid has been destroyed in the meantime just resolve | ||
if (this.destroyed) { | ||
resolve(null); | ||
return; | ||
} | ||
if (reactComponent.rendered()) { | ||
resolve(null); | ||
} | ||
else { | ||
if (runningTime >= AgGridReact.MAX_COMPONENT_CREATION_TIME) { | ||
console.error("ag-Grid: React Component '" + reactComponent.getReactComponentName() + "' not created within " + AgGridReact.MAX_COMPONENT_CREATION_TIME + "ms"); | ||
return; | ||
} | ||
window.setTimeout(function () { return _this.waitForInstance(reactComponent, resolve, runningTime + 5); }, 5); | ||
} | ||
}; | ||
/** | ||
* Mounts a react portal for components registered under the componentFramework. | ||
* We do this because we want all portals to be in the same tree - in order to get | ||
* Context to work properly. | ||
*/ | ||
AgGridReact.prototype.mountReactPortal = function (portal, reactComponent, resolve) { | ||
this.portals = __spreadArrays(this.portals, [portal]); | ||
this.batchUpdate(this.waitForInstance(reactComponent, resolve)); | ||
}; | ||
AgGridReact.prototype.batchUpdate = function (callback) { | ||
var _this = this; | ||
if (this.hasPendingPortalUpdate) { | ||
return callback && callback(); | ||
} | ||
setTimeout(function () { | ||
if (_this.api) { // destroyed? | ||
_this.forceUpdate(function () { | ||
callback && callback(); | ||
_this.hasPendingPortalUpdate = false; | ||
}); | ||
} | ||
}); | ||
this.hasPendingPortalUpdate = true; | ||
}; | ||
AgGridReact.prototype.destroyPortal = function (portal) { | ||
this.portals = this.portals.filter(function (curPortal) { return curPortal !== portal; }); | ||
this.batchUpdate(); | ||
}; | ||
AgGridReact.prototype.getStrategyTypeForProp = function (propKey) { | ||
switch (propKey) { | ||
case 'rowData': { | ||
// for row data we either return the supplied strategy, or: | ||
// if deltaRowDataMode/immutableData we default to IdentityChecks, | ||
// if not we default to DeepValueChecks (with the rest of the properties) | ||
if (!!this.props.rowDataChangeDetectionStrategy) { | ||
return this.props.rowDataChangeDetectionStrategy; | ||
} | ||
else if (this.props['deltaRowDataMode'] || this.props['immutableData']) { | ||
return changeDetectionService_1.ChangeDetectionStrategyType.IdentityCheck; | ||
} | ||
return changeDetectionService_1.ChangeDetectionStrategyType.DeepValueCheck; | ||
} | ||
default: { | ||
// all other data properties will default to DeepValueCheck | ||
return changeDetectionService_1.ChangeDetectionStrategyType.DeepValueCheck; | ||
} | ||
} | ||
}; | ||
AgGridReact.prototype.shouldComponentUpdate = function (nextProps) { | ||
this.processPropsChanges(this.props, nextProps); | ||
AgGridReact.prototype.shouldComponentUpdate = function () { | ||
// we want full control of the dom, as ag-Grid doesn't use React internally, | ||
@@ -163,68 +91,27 @@ // so for performance reasons we tell React we don't need render called after | ||
}; | ||
AgGridReact.prototype.componentDidUpdate = function (prevProps) { | ||
this.processPropsChanges(prevProps, this.props); | ||
}; | ||
AgGridReact.prototype.processPropsChanges = function (prevProps, nextProps) { | ||
AgGridReact.prototype.UNSAFE_componentWillReceiveProps = function (nextProps) { | ||
var _this = this; | ||
var debugLogging = !!nextProps.debug; | ||
// keeping consistent with web components, put changing | ||
// values in currentValue and previousValue pairs and | ||
// not include items that have not changed. | ||
var changes = {}; | ||
this.extractGridPropertyChanges(prevProps, nextProps, changes); | ||
this.extractDeclarativeColDefChanges(nextProps, changes); | ||
if (Object.keys(changes).length > 0) { | ||
ag_grid_community_1.ComponentUtil.processOnChange(changes, this.gridOptions, this.api, this.columnApi); | ||
} | ||
}; | ||
AgGridReact.prototype.extractDeclarativeColDefChanges = function (nextProps, changes) { | ||
// if columnDefs are provided on gridOptions we use those - you can't combine both | ||
// we also skip if columnDefs are provided as a prop directly on AgGridReact | ||
if ((this.props.gridOptions && this.props.gridOptions.columnDefs) || this.props.columnDefs) { | ||
return; | ||
} | ||
var debugLogging = !!nextProps.debug; | ||
if (agGridColumn_1.AgGridColumn.hasChildColumns(nextProps)) { | ||
var detectionStrategy = this.changeDetectionService.getStrategy(this.getStrategyTypeForProp('columnDefs')); | ||
var currentColDefs = this.gridOptions.columnDefs; | ||
var newColDefs = agGridColumn_1.AgGridColumn.mapChildColumnDefs(nextProps); | ||
if (!detectionStrategy.areEqual(currentColDefs, newColDefs)) { | ||
AgGrid.ComponentUtil.ALL_PROPERTIES.forEach(function (propKey) { | ||
if (!_this.areEquivalent(_this.props[propKey], nextProps[propKey])) { | ||
if (debugLogging) { | ||
console.log("agGridReact: colDefs definitions changed"); | ||
console.log("agGridReact: [".concat(propKey, "] property changed")); | ||
} | ||
changes['columnDefs'] = | ||
{ | ||
previousValue: this.gridOptions.columnDefs, | ||
currentValue: agGridColumn_1.AgGridColumn.mapChildColumnDefs(nextProps) | ||
}; | ||
} | ||
} | ||
else if (this.gridOptions.columnDefs && this.gridOptions.columnDefs.length > 0) { | ||
changes['columnDefs'] = | ||
{ | ||
previousValue: this.gridOptions.columnDefs, | ||
currentValue: [] | ||
changes[propKey] = { | ||
previousValue: _this.props[propKey], | ||
currentValue: nextProps[propKey] | ||
}; | ||
} | ||
}; | ||
AgGridReact.prototype.extractGridPropertyChanges = function (prevProps, nextProps, changes) { | ||
var _this = this; | ||
var debugLogging = !!nextProps.debug; | ||
var changedKeys = Object.keys(nextProps); | ||
changedKeys.forEach(function (propKey) { | ||
if (ag_grid_community_1.ComponentUtil.ALL_PROPERTIES.indexOf(propKey) !== -1) { | ||
var changeDetectionStrategy = _this.changeDetectionService.getStrategy(_this.getStrategyTypeForProp(propKey)); | ||
if (!changeDetectionStrategy.areEqual(prevProps[propKey], nextProps[propKey])) { | ||
if (debugLogging) { | ||
console.log("agGridReact: [" + propKey + "] property changed"); | ||
} | ||
changes[propKey] = { | ||
previousValue: prevProps[propKey], | ||
currentValue: nextProps[propKey] | ||
}; | ||
} | ||
} | ||
}); | ||
ag_grid_community_1.ComponentUtil.getEventCallbacks().forEach(function (funcName) { | ||
AgGrid.ComponentUtil.getEventCallbacks().forEach(function (funcName) { | ||
if (_this.props[funcName] !== nextProps[funcName]) { | ||
if (debugLogging) { | ||
console.log("agGridReact: [" + funcName + "] event callback changed"); | ||
console.log("agGridReact: [".concat(funcName, "] event callback changed")); | ||
} | ||
changes[funcName] = { | ||
previousValue: prevProps[funcName], | ||
previousValue: _this.props[funcName], | ||
currentValue: nextProps[funcName] | ||
@@ -234,2 +121,3 @@ }; | ||
}); | ||
AgGrid.ComponentUtil.processOnChange(changes, this.gridOptions, this.api, this.columnApi); | ||
}; | ||
@@ -239,12 +127,105 @@ AgGridReact.prototype.componentWillUnmount = function () { | ||
this.api.destroy(); | ||
this.api = null; | ||
} | ||
this.destroyed = true; | ||
}; | ||
AgGridReact.prototype.isDisableStaticMarkup = function () { | ||
return !!this.props.disableStaticMarkup; | ||
/* | ||
* deeper object comparison - taken from https://stackoverflow.com/questions/1068834/object-comparison-in-javascript | ||
*/ | ||
AgGridReact.unwrapStringOrNumber = function (obj) { | ||
return obj instanceof Number || obj instanceof String ? obj.valueOf() : obj; | ||
}; | ||
AgGridReact.MAX_COMPONENT_CREATION_TIME = 1000; // a second should be more than enough to instantiate a component | ||
// sigh, here for ie compatibility | ||
AgGridReact.prototype.copy = function (value) { | ||
if (!value) { | ||
return value; | ||
} | ||
if (Array.isArray(value)) { | ||
// shallow copy the array - this will typically be either rowData or columnDefs | ||
var arrayCopy = []; | ||
for (var i = 0; i < value.length; i++) { | ||
arrayCopy.push(this.copy(value[i])); | ||
} | ||
return arrayCopy; | ||
} | ||
// for anything without keys (boolean, string etc). | ||
// Object.keys - chrome will swallow them, IE will fail (correctly, imho) | ||
if (typeof value !== "object") { | ||
return value; | ||
} | ||
return [{}, value].reduce(function (r, o) { | ||
Object.keys(o).forEach(function (k) { | ||
r[k] = o[k]; | ||
}); | ||
return r; | ||
}, {}); | ||
}; | ||
AgGridReact.prototype.areEquivalent = function (a, b) { | ||
return AgGridReact.areEquivalent(this.copy(a), this.copy(b)); | ||
}; | ||
/* | ||
* slightly modified, but taken from https://stackoverflow.com/questions/1068834/object-comparison-in-javascript | ||
* | ||
* What we're trying to do here is determine if the property being checked has changed in _value_, not just in reference | ||
* | ||
* For eg, if a user updates the columnDefs via property binding, but the actual columns defs are the same before and | ||
* after, then we don't want the grid to re-render | ||
*/ | ||
AgGridReact.areEquivalent = function (a, b) { | ||
a = AgGridReact.unwrapStringOrNumber(a); | ||
b = AgGridReact.unwrapStringOrNumber(b); | ||
if (a === b) | ||
return true; //e.g. a and b both null | ||
if (a === null || b === null || typeof a !== typeof b) | ||
return false; | ||
if (a instanceof Date) { | ||
return b instanceof Date && a.valueOf() === b.valueOf(); | ||
} | ||
if (typeof a === "function") { | ||
return a.toString() === b.toString(); | ||
} | ||
if (typeof a !== "object") { | ||
return a == b; //for boolean, number, string, function, xml | ||
} | ||
var newA = a.areEquivPropertyTracking === undefined, newB = b.areEquivPropertyTracking === undefined; | ||
try { | ||
var prop = void 0; | ||
if (newA) { | ||
a.areEquivPropertyTracking = []; | ||
} | ||
else if (a.areEquivPropertyTracking.some(function (other) { | ||
return other === b; | ||
})) | ||
return true; | ||
if (newB) { | ||
b.areEquivPropertyTracking = []; | ||
} | ||
else if (b.areEquivPropertyTracking.some(function (other) { return other === a; })) { | ||
return true; | ||
} | ||
a.areEquivPropertyTracking.push(b); | ||
b.areEquivPropertyTracking.push(a); | ||
var tmp = {}; | ||
for (prop in a) | ||
if (prop != "areEquivPropertyTracking") { | ||
tmp[prop] = null; | ||
} | ||
for (prop in b) | ||
if (prop != "areEquivPropertyTracking") { | ||
tmp[prop] = null; | ||
} | ||
for (prop in tmp) { | ||
if (!this.areEquivalent(a[prop], b[prop])) { | ||
return false; | ||
} | ||
} | ||
return true; | ||
} | ||
finally { | ||
if (newA) | ||
delete a.areEquivPropertyTracking; | ||
if (newB) | ||
delete b.areEquivPropertyTracking; | ||
} | ||
}; | ||
return AgGridReact; | ||
}(react_1.Component)); | ||
}(React.Component)); | ||
exports.AgGridReact = AgGridReact; | ||
@@ -254,9 +235,9 @@ AgGridReact.propTypes = { | ||
}; | ||
addProperties(ag_grid_community_1.ComponentUtil.getEventCallbacks(), PropTypes.func); | ||
addProperties(ag_grid_community_1.ComponentUtil.BOOLEAN_PROPERTIES, PropTypes.bool); | ||
addProperties(ag_grid_community_1.ComponentUtil.STRING_PROPERTIES, PropTypes.string); | ||
addProperties(ag_grid_community_1.ComponentUtil.OBJECT_PROPERTIES, PropTypes.object); | ||
addProperties(ag_grid_community_1.ComponentUtil.ARRAY_PROPERTIES, PropTypes.array); | ||
addProperties(ag_grid_community_1.ComponentUtil.NUMBER_PROPERTIES, PropTypes.number); | ||
addProperties(ag_grid_community_1.ComponentUtil.FUNCTION_PROPERTIES, PropTypes.func); | ||
addProperties(AgGrid.ComponentUtil.getEventCallbacks(), PropTypes.func); | ||
addProperties(AgGrid.ComponentUtil.BOOLEAN_PROPERTIES, PropTypes.bool); | ||
addProperties(AgGrid.ComponentUtil.STRING_PROPERTIES, PropTypes.string); | ||
addProperties(AgGrid.ComponentUtil.OBJECT_PROPERTIES, PropTypes.object); | ||
addProperties(AgGrid.ComponentUtil.ARRAY_PROPERTIES, PropTypes.array); | ||
addProperties(AgGrid.ComponentUtil.NUMBER_PROPERTIES, PropTypes.number); | ||
addProperties(AgGrid.ComponentUtil.FUNCTION_PROPERTIES, PropTypes.func); | ||
function addProperties(listOfProps, propType) { | ||
@@ -269,11 +250,52 @@ listOfProps.forEach(function (propKey) { | ||
__extends(ReactFrameworkComponentWrapper, _super); | ||
function ReactFrameworkComponentWrapper(agGridReact) { | ||
var _this = _super.call(this) || this; | ||
_this.agGridReact = agGridReact; | ||
return _this; | ||
function ReactFrameworkComponentWrapper() { | ||
return _super !== null && _super.apply(this, arguments) || this; | ||
} | ||
ReactFrameworkComponentWrapper.prototype.createWrapper = function (UserReactComponent, componentType) { | ||
return new reactComponent_1.ReactComponent(UserReactComponent, this.agGridReact, componentType); | ||
ReactFrameworkComponentWrapper.prototype.createWrapper = function (ReactComponent) { | ||
var _self = this; | ||
var DynamicAgReactComponent = /** @class */ (function (_super) { | ||
__extends(DynamicAgReactComponent, _super); | ||
function DynamicAgReactComponent() { | ||
return _super.call(this, ReactComponent, _self.agGridReact) || this; | ||
} | ||
DynamicAgReactComponent.prototype.init = function (params) { | ||
return _super.prototype.init.call(this, params); | ||
}; | ||
DynamicAgReactComponent.prototype.hasMethod = function (name) { | ||
var frameworkComponentInstance = wrapper.getFrameworkComponentInstance(); | ||
if (frameworkComponentInstance == null) { | ||
return true; | ||
} | ||
return frameworkComponentInstance[name] != null; | ||
}; | ||
DynamicAgReactComponent.prototype.callMethod = function (name, args) { | ||
var _this = this; | ||
var frameworkComponentInstance = this.getFrameworkComponentInstance(); | ||
if (frameworkComponentInstance == null) { | ||
setTimeout(function () { return _this.callMethod(name, args); }, 100); | ||
} | ||
else { | ||
var method = wrapper.getFrameworkComponentInstance()[name]; | ||
if (method == null) | ||
return null; | ||
return method.apply(frameworkComponentInstance, args); | ||
} | ||
}; | ||
DynamicAgReactComponent.prototype.addMethod = function (name, callback) { | ||
wrapper[name] = callback; | ||
}; | ||
return DynamicAgReactComponent; | ||
}(agReactComponent_1.AgReactComponent)); | ||
var wrapper = new DynamicAgReactComponent(); | ||
return wrapper; | ||
}; | ||
__decorate([ | ||
(0, ag_grid_iux_community_1.Autowired)("agGridReact"), | ||
__metadata("design:type", AgGridReact) | ||
], ReactFrameworkComponentWrapper.prototype, "agGridReact", void 0); | ||
ReactFrameworkComponentWrapper = __decorate([ | ||
(0, ag_grid_iux_community_1.Bean)("frameworkComponentWrapper") | ||
], ReactFrameworkComponentWrapper); | ||
return ReactFrameworkComponentWrapper; | ||
}(ag_grid_community_1.BaseComponentWrapper)); | ||
}(ag_grid_iux_community_1.BaseComponentWrapper)); | ||
AgGrid.Grid.setFrameworkBeans([ReactFrameworkComponentWrapper]); |
@@ -1,4 +0,5 @@ | ||
// ag-grid-react v24.0.0 | ||
import { ICellEditor, ICellEditorParams, ICellRenderer, ICellRendererParams, IDate, IDateParams, IFilter, IFilterParams, IHeader, IHeaderGroup, IHeaderGroupParams, IHeaderParams, ILoadingCellRendererParams, ILoadingOverlayParams, INoRowsOverlayParams, IStatusPanel, IToolPanel, IToolPanelParams, IAfterGuiAttachedParams, IStatusPanelParams } from 'ag-grid-iux-community'; | ||
// ag-grid-iux-react v2.0.0 | ||
import { ICellEditor, ICellEditorParams, ICellRenderer, ICellRendererParams, IDate, IDateParams, IFilter, IFilterParams, IHeader, IHeaderGroup, IHeaderGroupParams, IHeaderParams, ILoadingOverlayParams, INoRowsOverlayParams, IStatusPanel, IToolPanel, IToolPanelParams, IAfterGuiAttachedParams, IStatusPanelParams } from 'ag-grid-iux-community'; | ||
export interface AgReactFrameworkComponent<T> { | ||
agInit(params: T): void; | ||
afterGuiAttached?(params?: IAfterGuiAttachedParams): void; | ||
@@ -18,4 +19,2 @@ } | ||
} | ||
export interface ILoadingCellRendererReactComp extends AgReactFrameworkComponent<ILoadingCellRendererParams> { | ||
} | ||
export interface ILoadingOverlayReactComp extends AgReactFrameworkComponent<ILoadingOverlayParams> { | ||
@@ -22,0 +21,0 @@ } |
@@ -1,3 +0,3 @@ | ||
// ag-grid-react v24.0.0 | ||
// ag-grid-iux-react v2.0.0 | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); |
@@ -1,3 +0,3 @@ | ||
// ag-grid-react v24.0.0 | ||
// ag-grid-iux-react v2.0.0 | ||
export { AgGridReact } from './agGridReact'; | ||
export { AgGridColumn } from './agGridColumn'; |
@@ -1,20 +0,8 @@ | ||
// ag-grid-react v24.0.0 | ||
// ag-grid-iux-react v2.0.0 | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.AgGridColumn = exports.AgGridReact = void 0; | ||
var agGridReact_1 = require("./agGridReact"); | ||
exports.AgGridReact = agGridReact_1.AgGridReact; | ||
Object.defineProperty(exports, "AgGridReact", { enumerable: true, get: function () { return agGridReact_1.AgGridReact; } }); | ||
var agGridColumn_1 = require("./agGridColumn"); | ||
exports.AgGridColumn = agGridColumn_1.AgGridColumn; | ||
// https://github.com/rollup/rollup-plugin-typescript/issues/109 | ||
// export {ICellEditorReactComp} from './interfaces'; | ||
// export {AgReactFrameworkComponent} from './interfaces'; | ||
// export {IHeaderGroupReactComp } from './interfaces'; | ||
// export {IHeaderReactComp } from './interfaces'; | ||
// export {IDateReactComp } from './interfaces'; | ||
// export {IFilterReactComp } from './interfaces'; | ||
// export {ICellRendererReactComp } from './interfaces'; | ||
// export {ILoadingCellRendererReactComp } from './interfaces'; | ||
// export {ILoadingOverlayReactComp } from './interfaces'; | ||
// export {INoRowsOverlayReactComp } from './interfaces'; | ||
// export {IStatusPanelReactComp } from './interfaces'; | ||
// export {IToolPanelReactComp } from './interfaces'; | ||
Object.defineProperty(exports, "AgGridColumn", { enumerable: true, get: function () { return agGridColumn_1.AgGridColumn; } }); |
The MIT License | ||
Copyright (c) 2015-2019 AG GRID LTD | ||
Copyright (c) 2015-2016 AG GRID LTD | ||
@@ -5,0 +5,0 @@ Permission is hereby granted, free of charge, to any person obtaining a copy |
@@ -5,24 +5,9 @@ export * from './lib/agGridReact'; | ||
import {AgGridReactProps} from "./lib/agGridReact"; | ||
import {AgGridColumnGroupProps, AgGridColumnProps} from "./lib/agGridColumn"; | ||
import {AgGridColumnProps, AgGridColumnGroupProps} from "./lib/agGridColumn"; | ||
import {Component} from "react"; | ||
export declare class AgGridReact extends Component<AgGridReactProps, {}> { | ||
declare module "ag-grid-iux-react" { | ||
export class AgGridReact extends Component<AgGridReactProps, {}> { | ||
} | ||
export class AgGridColumn extends Component<AgGridColumnProps | AgGridColumnGroupProps, {}> { | ||
} | ||
} | ||
export declare class AgGridColumn extends Component<AgGridColumnProps | AgGridColumnGroupProps, {}> { | ||
} | ||
export {ICellEditorReactComp} from './lib/interfaces'; | ||
export {AgReactFrameworkComponent} from './lib/interfaces'; | ||
export {IHeaderGroupReactComp} from './lib/interfaces'; | ||
export {IHeaderReactComp} from './lib/interfaces'; | ||
export {IDateReactComp} from './lib/interfaces'; | ||
export {IFilterReactComp} from './lib/interfaces'; | ||
export {ICellRendererReactComp} from './lib/interfaces'; | ||
export {ILoadingCellRendererReactComp} from './lib/interfaces'; | ||
export {ILoadingOverlayReactComp} from './lib/interfaces'; | ||
export {INoRowsOverlayReactComp} from './lib/interfaces'; | ||
export {IStatusPanelReactComp} from './lib/interfaces'; | ||
export {IToolPanelReactComp} from './lib/interfaces'; | ||
178
package.json
{ | ||
"name": "ag-grid-iux-react", | ||
"version": "2.0.0", | ||
"author": { | ||
"name": "Niall Crosby", | ||
"email": "niall.crosby@ag-grid.com" | ||
}, | ||
"babel": { | ||
"presets": [ | ||
"react-app" | ||
] | ||
}, | ||
"bugs": { | ||
"url": "https://github.com/ag-grid/ag-grid/issues" | ||
}, | ||
"bundleDependencies": false, | ||
"dependencies": { | ||
"prop-types": "^15.6.2" | ||
}, | ||
"deprecated": false, | ||
"description": "ag-Grid React Component", | ||
"devDependencies": { | ||
"@ag-grid-community/react": "~24.0.0", | ||
"@types/jest": "24.0.18", | ||
"@types/react": "16.9.2", | ||
"@types/react-dom": "16.9.0", | ||
"ag-grid-community": "~24.0.0", | ||
"babel-preset-react-app": "^9.0.1", | ||
"cypress": "3.0.1", | ||
"enzyme": "^3.10.0", | ||
"enzyme-adapter-react-16": "^1.14.0", | ||
"gulp": "^4.0.0", | ||
"gulp-clean": "^0.4.0", | ||
"gulp-header": "^2.0.0", | ||
"gulp-merge": "^0.1.1", | ||
"gulp-rename": "^1.4.0", | ||
"gulp-replace": "^1.0.0", | ||
"gulp-sourcemaps": "^2.6.0", | ||
"gulp-typescript": "^5.0.0", | ||
"jest": "24.8.0", | ||
"jest-environment-jsdom-fourteen": "0.1.0", | ||
"jest-watch-typeahead": "0.3.1", | ||
"lnk": "^1.1.0", | ||
"merge-stream": "^2.0.0", | ||
"react": "^16.9.0", | ||
"react-app-polyfill": "^1.0.2", | ||
"react-dom": "^16.9.0", | ||
"rollup": "~0.67.3", | ||
"rollup-plugin-commonjs": "^9.1.6", | ||
"rollup-plugin-typescript": "^1.0.0", | ||
"rollup-plugin-uglify": "^6.0.0", | ||
"rollup-stream": "^1.24.0", | ||
"serialize-javascript": "2.1.0", | ||
"tslib": "^1.10.0", | ||
"typescript": "3.6.3", | ||
"vinyl-source-stream": "^2.0.0" | ||
}, | ||
"homepage": "https://www.ag-grid.com/react-grid/", | ||
"jest": { | ||
"roots": [ | ||
"<rootDir>/src" | ||
], | ||
"collectCoverageFrom": [ | ||
"src/**/*.{js,jsx,ts,tsx}", | ||
"!src/**/*.d.ts" | ||
], | ||
"setupFiles": [ | ||
"react-app-polyfill/jsdom", | ||
"<rootDir>/jest/setupTests.ts" | ||
], | ||
"setupFilesAfterEnv": [], | ||
"testMatch": [ | ||
"<rootDir>/src/**/__tests__/**/*.{js,jsx,ts,tsx}", | ||
"<rootDir>/src/**/*.{spec,test}.{js,jsx,ts,tsx}" | ||
], | ||
"testEnvironment": "jest-environment-jsdom-fourteen", | ||
"transform": { | ||
"^.+\\.(js|jsx|ts|tsx)$": "<rootDir>/node_modules/babel-jest", | ||
"^(?!.*\\.(js|jsx|ts|tsx|css|json)$)": "<rootDir>/jest/fileTransform.js" | ||
"name": "ag-grid-iux-react", | ||
"description": "ag-Grid React Component", | ||
"repository": { | ||
"type": "git", | ||
"url": "git+https://github.com/ag-grid/ag-grid.git" | ||
}, | ||
"transformIgnorePatterns": [ | ||
"[/\\\\]node_modules[/\\\\].+\\.(js|jsx|ts|tsx)$", | ||
"^.+\\.module\\.(css|sass|scss)$" | ||
], | ||
"modulePaths": [], | ||
"moduleNameMapper": { | ||
"^react-native$": "react-native-web", | ||
"^.+\\.module\\.(css|sass|scss)$": "identity-obj-proxy" | ||
"scripts": { | ||
"build": "gulp", | ||
"umd": "rollup -c" | ||
}, | ||
"moduleFileExtensions": [ | ||
"web.js", | ||
"js", | ||
"web.ts", | ||
"ts", | ||
"web.tsx", | ||
"tsx", | ||
"json", | ||
"web.jsx", | ||
"jsx", | ||
"node" | ||
"typings": "./main.d.ts", | ||
"version": "3.0.0", | ||
"dependencies": { | ||
"prop-types": "15.6.0" | ||
}, | ||
"devDependencies": { | ||
"@types/react": "^18.3.1", | ||
"@types/react-dom": "^18.3.0", | ||
"ag-grid-iux-community": "^1.0.0", | ||
"gulp": "^4.0.2", | ||
"gulp-debug": "^3.2.0", | ||
"gulp-header": "^2.0.5", | ||
"gulp-rename": "^1.4.0", | ||
"gulp-sourcemaps": "^2.6.4", | ||
"gulp-typescript": "^4.0.2", | ||
"merge2": "^1.2.2", | ||
"prop-types": "15.6.0", | ||
"react": "^18.3.1", | ||
"react-dom": "^18.3.1", | ||
"rollup": "^0.55.3", | ||
"rollup-plugin-commonjs": "^8.3.0", | ||
"rollup-plugin-typescript": "^0.8.1", | ||
"rollup-plugin-uglify": "^3.0.0", | ||
"rollup-stream": "^1.24.1", | ||
"typescript": "^4.3.5", | ||
"vinyl-source-stream": "^2.0.0" | ||
}, | ||
"homepage": "https://react.ag-grid.com", | ||
"keywords": [ | ||
"react-component", | ||
"grid", | ||
"data", | ||
"table", | ||
"react" | ||
], | ||
"watchPlugins": [ | ||
"jest-watch-typeahead/filename", | ||
"jest-watch-typeahead/testname" | ||
] | ||
}, | ||
"keywords": [ | ||
"react-component", | ||
"grid", | ||
"data", | ||
"table", | ||
"react" | ||
], | ||
"license": "MIT", | ||
"main": "main.js", | ||
"peerDependencies": { | ||
"ag-grid-community": "~24.0.0", | ||
"react": "^16.3.0", | ||
"react-dom": "^16.3.0" | ||
}, | ||
"publishConfig": { | ||
"access": "public" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git+https://github.com/ag-grid/ag-grid.git" | ||
}, | ||
"scripts": { | ||
"build": "gulp && npm run hash", | ||
"cypress": "cypress run --spec 'cypress/integration/**/*spec.js'", | ||
"cypress:open": "cypress open", | ||
"hash": "sh ../../scripts/hashDirectory.sh > .hash", | ||
"test:debug": "node --inspect-brk node_modules/.bin/jest --runInBand", | ||
"test:e2e": "gulp link-umd-e2e && npm run cypress", | ||
"test:watch": "jest --watch", | ||
"umd": "rollup -c" | ||
}, | ||
"typings": "./main.d.ts" | ||
"license": "MIT", | ||
"main": "main.js" | ||
} |
@@ -56,7 +56,7 @@ | ||
Use the setup instructions below or go through [a 5-minute-quickstart guide](https://www.ag-grid.com/react-grid?utm_source=ag-grid-react-readme&utm_medium=repository&utm_campaign=github). | ||
Use the setup instructions below or go through [a 5-minute-quickstart guide](https://www.ag-grid.com/react-getting-started?utm_source=ag-grid-react-readme&utm_medium=repository&utm_campaign=github). | ||
#### Install dependencies | ||
$ npm i --save ag-grid-community ag-grid-react react-dom-factories | ||
$ npm i --save ag-grid ag-grid-react react-dom-factories | ||
@@ -67,4 +67,4 @@ #### Import the grid and styles | ||
import 'ag-grid-community/dist/styles/ag-grid.css'; | ||
import 'ag-grid-community/dist/styles/ag-theme-balham.css'; | ||
import 'ag-grid/dist/styles/ag-grid.css'; | ||
import 'ag-grid/dist/styles/ag-theme-balham.css'; | ||
@@ -71,0 +71,0 @@ ### Set the grid's configuration in a parent component |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
No contributors or author data
MaintenancePackage does not specify a list of contributors or an author in package.json.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
1
20
1136
61442
26
2
2
+ Addedasap@2.0.6(transitive)
+ Addedcore-js@1.2.7(transitive)
+ Addedencoding@0.1.13(transitive)
+ Addedfbjs@0.8.18(transitive)
+ Addediconv-lite@0.6.3(transitive)
+ Addedis-stream@1.1.0(transitive)
+ Addedisomorphic-fetch@2.2.1(transitive)
+ Addednode-fetch@1.7.3(transitive)
+ Addedpromise@7.3.1(transitive)
+ Addedprop-types@15.6.0(transitive)
+ Addedsafer-buffer@2.1.2(transitive)
+ Addedsetimmediate@1.0.5(transitive)
+ Addedua-parser-js@0.7.40(transitive)
+ Addedwhatwg-fetch@3.6.20(transitive)
- Removedag-grid-community@24.0.0(transitive)
- Removedprop-types@15.8.1(transitive)
- Removedreact@16.14.0(transitive)
- Removedreact-dom@16.14.0(transitive)
- Removedreact-is@16.13.1(transitive)
- Removedscheduler@0.19.1(transitive)
Updatedprop-types@15.6.0