@genesislcap/grid-pro 11.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/dist/dts/cell/cell.d.ts +14 -0
- package/dist/dts/cell/cell.d.ts.map +1 -0
- package/dist/dts/cell/cell.template.d.ts +3 -0
- package/dist/dts/cell/cell.template.d.ts.map +1 -0
- package/dist/dts/cell/index.d.ts +3 -0
- package/dist/dts/cell/index.d.ts.map +1 -0
- package/dist/dts/cell-renderers/action.renderer.d.ts +33 -0
- package/dist/dts/cell-renderers/action.renderer.d.ts.map +1 -0
- package/dist/dts/cell-renderers/actions-menu.renderer.d.ts +19 -0
- package/dist/dts/cell-renderers/actions-menu.renderer.d.ts.map +1 -0
- package/dist/dts/cell-renderers/boolean.renderer.d.ts +25 -0
- package/dist/dts/cell-renderers/boolean.renderer.d.ts.map +1 -0
- package/dist/dts/cell-renderers/index.d.ts +6 -0
- package/dist/dts/cell-renderers/index.d.ts.map +1 -0
- package/dist/dts/cell-renderers/select.renderer.d.ts +34 -0
- package/dist/dts/cell-renderers/select.renderer.d.ts.map +1 -0
- package/dist/dts/cell-renderers/text.renderer.d.ts +30 -0
- package/dist/dts/cell-renderers/text.renderer.d.ts.map +1 -0
- package/dist/dts/cell-renderers/utils/accessor.d.ts +2 -0
- package/dist/dts/cell-renderers/utils/accessor.d.ts.map +1 -0
- package/dist/dts/cell-renderers/utils/index.d.ts +2 -0
- package/dist/dts/cell-renderers/utils/index.d.ts.map +1 -0
- package/dist/dts/column/column.d.ts +8 -0
- package/dist/dts/column/column.d.ts.map +1 -0
- package/dist/dts/column/column.template.d.ts +3 -0
- package/dist/dts/column/column.template.d.ts.map +1 -0
- package/dist/dts/column/index.d.ts +4 -0
- package/dist/dts/column/index.d.ts.map +1 -0
- package/dist/dts/column/utils/grid-pro-columns.d.ts +4 -0
- package/dist/dts/column/utils/grid-pro-columns.d.ts.map +1 -0
- package/dist/dts/column/utils/index.d.ts +2 -0
- package/dist/dts/column/utils/index.d.ts.map +1 -0
- package/dist/dts/external/ag-grid-css.d.ts +2 -0
- package/dist/dts/external/ag-grid-css.d.ts.map +1 -0
- package/dist/dts/external/ag-head-css.d.ts +2 -0
- package/dist/dts/external/ag-head-css.d.ts.map +1 -0
- package/dist/dts/external/ag-theme-alpine-no-font-css.d.ts +2 -0
- package/dist/dts/external/ag-theme-alpine-no-font-css.d.ts.map +1 -0
- package/dist/dts/external/ag-theme-balham-no-font-css.d.ts +2 -0
- package/dist/dts/external/ag-theme-balham-no-font-css.d.ts.map +1 -0
- package/dist/dts/external/ag-theme-material-no-font-css.d.ts +2 -0
- package/dist/dts/external/ag-theme-material-no-font-css.d.ts.map +1 -0
- package/dist/dts/external/fonts.d.ts +8 -0
- package/dist/dts/external/fonts.d.ts.map +1 -0
- package/dist/dts/external/index.d.ts +9 -0
- package/dist/dts/external/index.d.ts.map +1 -0
- package/dist/dts/grid-components.d.ts +59 -0
- package/dist/dts/grid-components.d.ts.map +1 -0
- package/dist/dts/grid-pro-genesis-datasource/grid-pro-genesis-datasource-next.d.ts +390 -0
- package/dist/dts/grid-pro-genesis-datasource/grid-pro-genesis-datasource-next.d.ts.map +1 -0
- package/dist/dts/grid-pro-genesis-datasource/grid-pro-genesis-datasource.d.ts +376 -0
- package/dist/dts/grid-pro-genesis-datasource/grid-pro-genesis-datasource.d.ts.map +1 -0
- package/dist/dts/grid-pro-genesis-datasource/index.d.ts +3 -0
- package/dist/dts/grid-pro-genesis-datasource/index.d.ts.map +1 -0
- package/dist/dts/grid-pro.d.ts +389 -0
- package/dist/dts/grid-pro.d.ts.map +1 -0
- package/dist/dts/grid-pro.definitions.d.ts +8 -0
- package/dist/dts/grid-pro.definitions.d.ts.map +1 -0
- package/dist/dts/grid-pro.styles.d.ts +3 -0
- package/dist/dts/grid-pro.styles.d.ts.map +1 -0
- package/dist/dts/grid-pro.template.d.ts +3 -0
- package/dist/dts/grid-pro.template.d.ts.map +1 -0
- package/dist/dts/grid-pro.types.d.ts +68 -0
- package/dist/dts/grid-pro.types.d.ts.map +1 -0
- package/dist/dts/index.d.ts +20 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/dts/index.federated.d.ts +1 -0
- package/dist/dts/index.federated.d.ts.map +1 -0
- package/dist/dts/style/colors.d.ts +4 -0
- package/dist/dts/style/colors.d.ts.map +1 -0
- package/dist/dts/style/index.d.ts +3 -0
- package/dist/dts/style/index.d.ts.map +1 -0
- package/dist/dts/style/tokens.d.ts +6 -0
- package/dist/dts/style/tokens.d.ts.map +1 -0
- package/dist/dts/utils/index.d.ts +2 -0
- package/dist/dts/utils/index.d.ts.map +1 -0
- package/dist/dts/utils/logger.d.ts +2 -0
- package/dist/dts/utils/logger.d.ts.map +1 -0
- package/dist/esm/cell/cell.js +46 -0
- package/dist/esm/cell/cell.template.js +6 -0
- package/dist/esm/cell/index.js +2 -0
- package/dist/esm/cell-renderers/action.renderer.js +85 -0
- package/dist/esm/cell-renderers/actions-menu.renderer.js +46 -0
- package/dist/esm/cell-renderers/boolean.renderer.js +42 -0
- package/dist/esm/cell-renderers/index.js +5 -0
- package/dist/esm/cell-renderers/select.renderer.js +69 -0
- package/dist/esm/cell-renderers/text.renderer.js +66 -0
- package/dist/esm/cell-renderers/utils/accessor.js +18 -0
- package/dist/esm/cell-renderers/utils/index.js +1 -0
- package/dist/esm/column/column.js +24 -0
- package/dist/esm/column/column.template.js +6 -0
- package/dist/esm/column/index.js +3 -0
- package/dist/esm/column/utils/grid-pro-columns.js +15 -0
- package/dist/esm/column/utils/index.js +1 -0
- package/dist/esm/external/ag-grid-css.js +7166 -0
- package/dist/esm/external/ag-head-css.js +19 -0
- package/dist/esm/external/ag-theme-alpine-no-font-css.js +452 -0
- package/dist/esm/external/ag-theme-balham-no-font-css.js +272 -0
- package/dist/esm/external/ag-theme-material-no-font-css.js +267 -0
- package/dist/esm/external/fonts.js +33 -0
- package/dist/esm/external/index.js +15 -0
- package/dist/esm/grid-components.js +21 -0
- package/dist/esm/grid-pro-genesis-datasource/grid-pro-genesis-datasource-next.js +328 -0
- package/dist/esm/grid-pro-genesis-datasource/grid-pro-genesis-datasource.js +339 -0
- package/dist/esm/grid-pro-genesis-datasource/index.js +2 -0
- package/dist/esm/grid-pro.definitions.js +43 -0
- package/dist/esm/grid-pro.js +297 -0
- package/dist/esm/grid-pro.styles.js +31 -0
- package/dist/esm/grid-pro.template.js +9 -0
- package/dist/esm/grid-pro.types.js +72 -0
- package/dist/esm/index.federated.js +1 -0
- package/dist/esm/index.js +19 -0
- package/dist/esm/style/colors.js +4 -0
- package/dist/esm/style/index.js +2 -0
- package/dist/esm/style/tokens.js +7 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/logger.js +2 -0
- package/externals.js +11 -0
- package/federation.config.json +9 -0
- package/license.txt +46 -0
- package/package.json +107 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { __awaiter, __decorate } from "tslib";
|
|
2
|
+
import { css, html, observable } from '@microsoft/fast-element';
|
|
3
|
+
import { DesignToken, FoundationElement } from '@microsoft/fast-foundation';
|
|
4
|
+
import { logger } from '../utils';
|
|
5
|
+
export class ActionRenderer extends FoundationElement {
|
|
6
|
+
init(params) {
|
|
7
|
+
if (!params)
|
|
8
|
+
return;
|
|
9
|
+
this.params = params;
|
|
10
|
+
}
|
|
11
|
+
getGui() {
|
|
12
|
+
return this;
|
|
13
|
+
}
|
|
14
|
+
destroy() { }
|
|
15
|
+
refresh(params) {
|
|
16
|
+
this.params = params;
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
isDisabled(data) {
|
|
20
|
+
var _a;
|
|
21
|
+
if (typeof ((_a = this.params) === null || _a === void 0 ? void 0 : _a.isDisabled) === 'function') {
|
|
22
|
+
try {
|
|
23
|
+
return this.params.isDisabled(data);
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
logger.error('Error executing grid action cell renderer isDisabled callback:', error);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
clickHandler() {
|
|
32
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
this.pendingAction = true;
|
|
34
|
+
yield this.params.actionClick(this.params.data);
|
|
35
|
+
this.pendingAction = false;
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
get dataTestId() {
|
|
39
|
+
var _a;
|
|
40
|
+
if (this.params.dataTestId) {
|
|
41
|
+
return this.params.dataTestId + ((_a = this.params.data[this.params.uniqueFieldName]) !== null && _a !== void 0 ? _a : '');
|
|
42
|
+
}
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
__decorate([
|
|
47
|
+
observable
|
|
48
|
+
], ActionRenderer.prototype, "params", void 0);
|
|
49
|
+
__decorate([
|
|
50
|
+
observable
|
|
51
|
+
], ActionRenderer.prototype, "pendingAction", void 0);
|
|
52
|
+
const { create } = DesignToken;
|
|
53
|
+
export const actionHeightMultiplier = create('action-height-multiplier').withDefault('0.6px');
|
|
54
|
+
export const agActionRendererStyles = css `
|
|
55
|
+
.action-container {
|
|
56
|
+
align-items: center;
|
|
57
|
+
display: flex;
|
|
58
|
+
height: 100%;
|
|
59
|
+
justify-content: center;
|
|
60
|
+
}
|
|
61
|
+
.action-renderer {
|
|
62
|
+
align-self: center;
|
|
63
|
+
display: flex;
|
|
64
|
+
height: calc(
|
|
65
|
+
(var(--base-height-multiplier) + var(--density)) * var(--design-unit) *
|
|
66
|
+
var(--action-height-multiplier)
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
`;
|
|
70
|
+
export const foundationGridProActionRenderer = ActionRenderer.compose({
|
|
71
|
+
baseName: 'grid-pro-action-renderer',
|
|
72
|
+
styles: css `
|
|
73
|
+
${agActionRendererStyles}
|
|
74
|
+
`,
|
|
75
|
+
template: html `
|
|
76
|
+
<div class="action-container" part="action-container">
|
|
77
|
+
<foundation-button
|
|
78
|
+
class="action-renderer"
|
|
79
|
+
part="action-renderer"
|
|
80
|
+
data-test-id="${(x) => x.dataTestId}"
|
|
81
|
+
?disabled=${(x) => { var _a; return x.pendingAction || x.isDisabled((_a = x.params) === null || _a === void 0 ? void 0 : _a.data); }}
|
|
82
|
+
appearance="${(x) => x.params.appearance}"
|
|
83
|
+
@click=${(x) => x.clickHandler()}">${(x) => x.params.actionName}</foundation-button>
|
|
84
|
+
</div>`,
|
|
85
|
+
});
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { html, observable } from '@microsoft/fast-element';
|
|
3
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
4
|
+
import { GridProRendererTypes } from '../grid-pro.types';
|
|
5
|
+
export class ActionsMenuRenderer extends FoundationElement {
|
|
6
|
+
init(params) {
|
|
7
|
+
if (!params)
|
|
8
|
+
return;
|
|
9
|
+
this.params = params;
|
|
10
|
+
}
|
|
11
|
+
getGui() {
|
|
12
|
+
return this;
|
|
13
|
+
}
|
|
14
|
+
destroy() { }
|
|
15
|
+
refresh(params) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
__decorate([
|
|
20
|
+
observable
|
|
21
|
+
], ActionsMenuRenderer.prototype, "params", void 0);
|
|
22
|
+
export const foundationGridProActionsMenuRenderer = ActionsMenuRenderer.compose({
|
|
23
|
+
baseName: 'grid-pro-actions-menu-renderer',
|
|
24
|
+
template: html `
|
|
25
|
+
<foundation-actions-menu
|
|
26
|
+
name="${(x) => x.params.headerName}"
|
|
27
|
+
:definition=${(x) => x.params}
|
|
28
|
+
></foundation-actions-menu>
|
|
29
|
+
`,
|
|
30
|
+
});
|
|
31
|
+
export const getActionsMenuDef = (actions, overrideDef = {}, customActionsOpenerName = '⋮', isVertical = false, buttonAppearance) => {
|
|
32
|
+
const actionsMenuDef = {
|
|
33
|
+
cellRenderer: GridProRendererTypes.actionsMenu,
|
|
34
|
+
cellRendererParams: {
|
|
35
|
+
actions,
|
|
36
|
+
buttonAppearance,
|
|
37
|
+
isVertical,
|
|
38
|
+
buttonText: customActionsOpenerName,
|
|
39
|
+
},
|
|
40
|
+
cellStyle: { border: 'none', overflow: 'visible' },
|
|
41
|
+
field: 'actions',
|
|
42
|
+
headerName: 'Actions',
|
|
43
|
+
width: 150,
|
|
44
|
+
};
|
|
45
|
+
return Object.assign(Object.assign({}, actionsMenuDef), overrideDef);
|
|
46
|
+
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { css, html, observable } from '@microsoft/fast-element';
|
|
3
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
4
|
+
export class BooleanRenderer extends FoundationElement {
|
|
5
|
+
init(params) {
|
|
6
|
+
if (!params)
|
|
7
|
+
return;
|
|
8
|
+
this.params = params;
|
|
9
|
+
}
|
|
10
|
+
getGui() {
|
|
11
|
+
return this;
|
|
12
|
+
}
|
|
13
|
+
destroy() { }
|
|
14
|
+
refresh(params) {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
__decorate([
|
|
19
|
+
observable
|
|
20
|
+
], BooleanRenderer.prototype, "params", void 0);
|
|
21
|
+
export const agBooleanRendererStyles = css `
|
|
22
|
+
:host {
|
|
23
|
+
align-center: center;
|
|
24
|
+
display: flex;
|
|
25
|
+
height: 100%;
|
|
26
|
+
}
|
|
27
|
+
`;
|
|
28
|
+
export const getAgBooleanRendererTemplate = (designSystem = 'foundation') => {
|
|
29
|
+
const checkboxComponent = `${designSystem}-checkbox`;
|
|
30
|
+
return html `
|
|
31
|
+
<${checkboxComponent}
|
|
32
|
+
@change="${(x) => { var _a; return (_a = x.params) === null || _a === void 0 ? void 0 : _a.changeHandler(x.params); }}"
|
|
33
|
+
checked="${(x) => { var _a; return (_a = x.params) === null || _a === void 0 ? void 0 : _a.value; }}"
|
|
34
|
+
readonly="${(x) => { var _a; return (_a = x.params) === null || _a === void 0 ? void 0 : _a.readonly; }}"
|
|
35
|
+
></${checkboxComponent}>
|
|
36
|
+
`;
|
|
37
|
+
};
|
|
38
|
+
export const foundationAgBooleanRenderer = BooleanRenderer.compose({
|
|
39
|
+
baseName: 'boolean-renderer',
|
|
40
|
+
styles: agBooleanRendererStyles,
|
|
41
|
+
template: getAgBooleanRendererTemplate(),
|
|
42
|
+
});
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { css, html, observable, repeat } from '@microsoft/fast-element';
|
|
3
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
4
|
+
import { setValueWithAccessor } from './utils';
|
|
5
|
+
export class SelectRenderer extends FoundationElement {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.selectionChanged = (e) => {
|
|
9
|
+
this.value = e.target.value;
|
|
10
|
+
this.params.onSelect(e.target.value, this.params);
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
init(params) {
|
|
14
|
+
var _a;
|
|
15
|
+
if (!params)
|
|
16
|
+
return;
|
|
17
|
+
this.params = params;
|
|
18
|
+
this.value = setValueWithAccessor((_a = params.node) === null || _a === void 0 ? void 0 : _a.data, params.accessor) || undefined;
|
|
19
|
+
}
|
|
20
|
+
getGui() {
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
destroy() { }
|
|
24
|
+
refresh(params) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
__decorate([
|
|
29
|
+
observable
|
|
30
|
+
], SelectRenderer.prototype, "params", void 0);
|
|
31
|
+
__decorate([
|
|
32
|
+
observable
|
|
33
|
+
], SelectRenderer.prototype, "value", void 0);
|
|
34
|
+
export const agSelectRendererStyles = css `
|
|
35
|
+
:host,
|
|
36
|
+
.select-renderer,
|
|
37
|
+
zero-option,
|
|
38
|
+
::part(listbox),
|
|
39
|
+
::part(control) {
|
|
40
|
+
max-width: var(--select-renderer-max-width);
|
|
41
|
+
min-width: 100%;
|
|
42
|
+
}
|
|
43
|
+
`;
|
|
44
|
+
export const getSelectRendererTemplate = (designSystem = 'foundation') => {
|
|
45
|
+
const selectComponent = `${designSystem}-select`;
|
|
46
|
+
const optionComponent = `${designSystem}-option`;
|
|
47
|
+
return html `
|
|
48
|
+
<${selectComponent}
|
|
49
|
+
class="select-renderer"
|
|
50
|
+
@change=${(x, c) => x.selectionChanged(c.event)}
|
|
51
|
+
:value=${(x) => x.value}
|
|
52
|
+
>
|
|
53
|
+
<${optionComponent}
|
|
54
|
+
defaultSelected
|
|
55
|
+
style="display: none;"
|
|
56
|
+
>
|
|
57
|
+
${(x) => x.params.defaultValue || 'Select option'}
|
|
58
|
+
</${optionComponent}>
|
|
59
|
+
${repeat((x) => x.params.options(x.params.node.data), html `
|
|
60
|
+
<${optionComponent} value=${(x) => x.name}>${(x) => x.displayName}</${optionComponent}>
|
|
61
|
+
`)}
|
|
62
|
+
</${selectComponent}>
|
|
63
|
+
`;
|
|
64
|
+
};
|
|
65
|
+
export const foundationAgSelectRenderer = SelectRenderer.compose({
|
|
66
|
+
baseName: 'select-renderer',
|
|
67
|
+
styles: agSelectRendererStyles,
|
|
68
|
+
template: getSelectRendererTemplate(),
|
|
69
|
+
});
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { sync } from '@genesislcap/foundation-utils';
|
|
3
|
+
import { css, html, observable, ref } from '@microsoft/fast-element';
|
|
4
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
5
|
+
import { setValueWithAccessor } from './utils';
|
|
6
|
+
export class AgTextRenderer extends FoundationElement {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.textValue = '';
|
|
10
|
+
this.textChanged = (e) => {
|
|
11
|
+
this.textValue = e.target.value;
|
|
12
|
+
this.params.onChange(e.target.value, this.params);
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
init(params) {
|
|
16
|
+
var _a;
|
|
17
|
+
if (!params)
|
|
18
|
+
return;
|
|
19
|
+
this.params = params;
|
|
20
|
+
this.textValue =
|
|
21
|
+
this.textValue === ''
|
|
22
|
+
? setValueWithAccessor((_a = params === null || params === void 0 ? void 0 : params.node) === null || _a === void 0 ? void 0 : _a.data, params.accessor)
|
|
23
|
+
: this.textValue;
|
|
24
|
+
}
|
|
25
|
+
getGui() {
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
destroy() { }
|
|
29
|
+
refresh(params) {
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
__decorate([
|
|
34
|
+
observable
|
|
35
|
+
], AgTextRenderer.prototype, "textValue", void 0);
|
|
36
|
+
__decorate([
|
|
37
|
+
observable
|
|
38
|
+
], AgTextRenderer.prototype, "params", void 0);
|
|
39
|
+
export const textRendererStyles = css `
|
|
40
|
+
:host {
|
|
41
|
+
display: flex;
|
|
42
|
+
width: 100%;
|
|
43
|
+
height: 100%;
|
|
44
|
+
align-center: center;
|
|
45
|
+
}
|
|
46
|
+
.text-renderer {
|
|
47
|
+
width: 100%;
|
|
48
|
+
}
|
|
49
|
+
`;
|
|
50
|
+
export const getTextRendererTemplate = (designSystem = 'foundation') => {
|
|
51
|
+
const textComponent = `${designSystem}-text-field`;
|
|
52
|
+
return html `
|
|
53
|
+
<${textComponent}
|
|
54
|
+
${ref('textField')}
|
|
55
|
+
type="text"
|
|
56
|
+
class="text-renderer"
|
|
57
|
+
:value="${sync((x) => x.textValue)}"
|
|
58
|
+
@change="${(x, c) => x.textChanged(c.event)}"
|
|
59
|
+
></${textComponent}>
|
|
60
|
+
`;
|
|
61
|
+
};
|
|
62
|
+
export const foundationAgTextRenderer = AgTextRenderer.compose({
|
|
63
|
+
baseName: 'grid-text-renderer',
|
|
64
|
+
styles: textRendererStyles,
|
|
65
|
+
template: getTextRendererTemplate(),
|
|
66
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const setValueWithAccessor = (data, accessor) => {
|
|
2
|
+
if (accessor.indexOf('.') < 0) {
|
|
3
|
+
return data[accessor];
|
|
4
|
+
}
|
|
5
|
+
else {
|
|
6
|
+
const accessorPieces = accessor.split('.');
|
|
7
|
+
let currentObject = data;
|
|
8
|
+
while (accessorPieces.length > 0 && currentObject) {
|
|
9
|
+
const fieldPiece = accessorPieces.shift();
|
|
10
|
+
if (accessorPieces.length === 0) {
|
|
11
|
+
return currentObject[fieldPiece];
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
currentObject = currentObject[fieldPiece];
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './accessor';
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { customElement, observable } from '@microsoft/fast-element';
|
|
3
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
4
|
+
import { ColumnTemplate as template } from './column.template';
|
|
5
|
+
let GridColumn = class GridColumn extends FoundationElement {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.definition = {};
|
|
9
|
+
}
|
|
10
|
+
slottedAgCellChanged() { }
|
|
11
|
+
};
|
|
12
|
+
__decorate([
|
|
13
|
+
observable
|
|
14
|
+
], GridColumn.prototype, "slottedAgCell", void 0);
|
|
15
|
+
__decorate([
|
|
16
|
+
observable
|
|
17
|
+
], GridColumn.prototype, "definition", void 0);
|
|
18
|
+
GridColumn = __decorate([
|
|
19
|
+
customElement({
|
|
20
|
+
name: 'grid-pro-column',
|
|
21
|
+
template,
|
|
22
|
+
})
|
|
23
|
+
], GridColumn);
|
|
24
|
+
export { GridColumn };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { html, repeat, when } from '@microsoft/fast-element';
|
|
2
|
+
export function gridProColumns(itemsBinding, includeRenderers = true) {
|
|
3
|
+
return html `
|
|
4
|
+
${repeat(typeof itemsBinding === 'function' ? itemsBinding : () => itemsBinding, html `
|
|
5
|
+
<grid-pro-column :definition=${(x) => x}>
|
|
6
|
+
${when((x) => includeRenderers && x.cellRenderer, html `
|
|
7
|
+
<grid-pro-cell
|
|
8
|
+
:renderer="${(x) => x.cellRenderer}"
|
|
9
|
+
:rendererParams="${(x) => x.cellRendererParams}"
|
|
10
|
+
></grid-pro-cell>
|
|
11
|
+
`)}
|
|
12
|
+
</grid-pro-column>
|
|
13
|
+
`)}
|
|
14
|
+
`;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './grid-pro-columns';
|