ywana-core8 0.0.159 → 0.0.163
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/dist/index.cjs +24 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.modern.js +24 -8
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +24 -8
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/domain/ContentEditor.js +6 -5
- package/src/domain/TablePage.js +10 -1
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import React, { Fragment, useState } from 'react';
|
2
2
|
import { Button, CheckBox, DataTable, DropDown, Icon, Stack, Tab, Tabs, Text, TextField, Tree, TreeNode, TreeItem, TokenField, Property } from '../html';
|
3
|
-
import { Content, TYPES } from './ContentType';
|
3
|
+
import { CHECK, Content, TYPES } from './ContentType';
|
4
4
|
import './ContentEditor.css';
|
5
5
|
import { FORMATS } from './ContentType';
|
6
6
|
|
@@ -168,7 +168,7 @@ export const TreededContentEditor = ({ content, filter, onChange }) => {
|
|
168
168
|
* FieldEditor
|
169
169
|
*/
|
170
170
|
export const FieldEditor = ({ field, onChange, content, outlined = false }) => {
|
171
|
-
const { id, type, item, label, editable, options, hidden } = field
|
171
|
+
const { id, type, item, label, editable, options, hidden = false } = field
|
172
172
|
|
173
173
|
function change(id, value) {
|
174
174
|
if (onChange) onChange(id, value)
|
@@ -176,7 +176,8 @@ export const FieldEditor = ({ field, onChange, content, outlined = false }) => {
|
|
176
176
|
|
177
177
|
function renderField() {
|
178
178
|
const value1 = field.value ? field.value : field.default
|
179
|
-
|
179
|
+
const isHidden = CHECK['isFunction'](hidden) ? hidden(field, value1) : hidden
|
180
|
+
if (isHidden) {
|
180
181
|
return null
|
181
182
|
} else {
|
182
183
|
switch (type) {
|
@@ -233,7 +234,7 @@ const EntityEditor = ({ field, value = {}, onChange }) => {
|
|
233
234
|
* String Editor
|
234
235
|
*/
|
235
236
|
export const StringEditor = ({ field, value = '', onChange, content, outlined }) => {
|
236
|
-
const { id, format, label, options, editable = true } = field
|
237
|
+
const { id, format, label, options, editable = true, predictive = false } = field
|
237
238
|
|
238
239
|
function change(id, value) {
|
239
240
|
if (onChange) onChange(id, value)
|
@@ -248,7 +249,7 @@ export const StringEditor = ({ field, value = '', onChange, content, outlined })
|
|
248
249
|
<div className='field-editor string-editor'>
|
249
250
|
{
|
250
251
|
format === FORMATS.DATE ? <TextField outlined={outlined} id={id} type="date" label={label} value={value} onChange={change} readOnly={!editable} /> :
|
251
|
-
options ? <DropDown outlined={outlined} id={id} label={label} value={value} onChange={change} options={buildOptions()} readOnly={!editable} canFilter={
|
252
|
+
options ? <DropDown outlined={outlined} id={id} label={label} value={value} onChange={change} options={buildOptions()} readOnly={!editable} canFilter={predictive} /> :
|
252
253
|
<TextField outlined={outlined} id={id} label={label} value={value} onChange={change} readOnly={!editable} />
|
253
254
|
}
|
254
255
|
</div>
|
package/src/domain/TablePage.js
CHANGED
@@ -19,7 +19,7 @@ export const TablePage = (props) => {
|
|
19
19
|
const { id = "table",
|
20
20
|
icon, title, name,
|
21
21
|
schema, url, field,
|
22
|
-
actions, dev = false, tableActions, selectionActions = [],
|
22
|
+
actions = [], dev = false, tableActions, selectionActions = [],
|
23
23
|
editable, canFilter = false, canQuery = false, canAdd = true, canDelete = true,
|
24
24
|
autosave = true, delay = 1000,
|
25
25
|
groupBy, validator, scenario,
|
@@ -103,6 +103,14 @@ export const TablePage = (props) => {
|
|
103
103
|
return null;
|
104
104
|
}
|
105
105
|
|
106
|
+
function renderActions() {
|
107
|
+
return actions.map(element => {
|
108
|
+
const action = () => element.props.action(pageContext)
|
109
|
+
const clone = React.cloneElement(element, [ action ])
|
110
|
+
return clone
|
111
|
+
})
|
112
|
+
}
|
113
|
+
|
106
114
|
return (
|
107
115
|
<Fragment>
|
108
116
|
<Header className="table-page" title={<Text>{title}</Text>}>
|
@@ -113,6 +121,7 @@ export const TablePage = (props) => {
|
|
113
121
|
</MenuIcon>
|
114
122
|
) : null}
|
115
123
|
{actions}
|
124
|
+
{renderActions()}
|
116
125
|
</Header>
|
117
126
|
<menu className="table-page">
|
118
127
|
{canQuery ? <TableQueries schema={schema} /> : null}
|