ywana-core8 0.0.296 → 0.0.299

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ywana-core8",
3
- "version": "0.0.296",
3
+ "version": "0.0.299",
4
4
  "description": "ywana-core8",
5
5
  "author": "Ernesto Roldan Garcia",
6
6
  "license": "MIT",
@@ -66,4 +66,13 @@ main.table-filters {
66
66
 
67
67
  td.entity-cell {
68
68
  background-color: rgba(240,240,240,.4);
69
+ }
70
+
71
+ .table-queries-item {
72
+ display: flex;
73
+ align-items: center;
74
+ }
75
+
76
+ .table-queries-item>label {
77
+ flex: 1;
69
78
  }
@@ -22,7 +22,8 @@ export const TablePage = (props) => {
22
22
  autosave = true, delay = 1000,
23
23
  editable,
24
24
  actions = [], dev = false, tableActions, selectionActions = [],
25
- canFilter = false, canQuery = false, canAdd = true, canDelete = true, canEdit = true,
25
+ canFilter = false, canAdd = true, canDelete = true, canEdit = true,
26
+ canQuery = false, urlQuery,
26
27
  groupBy, validator, scenario,
27
28
  formFilter, tableFilter, editorFilter = false
28
29
  } = props
@@ -48,6 +49,7 @@ export const TablePage = (props) => {
48
49
  useEffect(async () => {
49
50
  const context = TableContext(url, field, host)
50
51
  await context.load()
52
+ if (canQuery) await context.loadQueries()
51
53
  setPageContext(context)
52
54
  }, [])
53
55
 
@@ -62,7 +64,7 @@ export const TablePage = (props) => {
62
64
  function saveQuery(filters) {
63
65
  const onOK = async (form) => {
64
66
  form.filters = filters
65
- await pageContext.createQuery(form)
67
+ await pageContext.createQuery(form, urlQuery)
66
68
  setPageContext(Object.assign({}, pageContext))
67
69
  }
68
70
  site.openDialog(<CreateContentDialog label="Nueva query" type={QUERY} onOK={onOK} />)
@@ -134,7 +136,7 @@ export const TablePage = (props) => {
134
136
  </Header>
135
137
  {canQuery || canFilter ? (
136
138
  <menu className="table-page">
137
- {canQuery ? <TableQueries schema={schema} /> : null}
139
+ {canQuery ? <TableQueries schema={schema} url={urlQuery}/> : null}
138
140
  {canFilter ? <TableFilters schema={schema} onSave={saveQuery}/> : null}
139
141
  </menu>
140
142
  ) : null }
@@ -209,22 +211,33 @@ const TableSelector = (props) => {
209
211
  const TableQueries = (props) => {
210
212
 
211
213
  const [pageContext, setPageContext] = useContext(PageContext)
214
+ const { queries= [
215
+ { name: "Query 1", filters: {}},
216
+ { name: "Query 2", filters: {}},
217
+ { name: "Query 3", filters: {}},
218
+ ] } = pageContext
212
219
 
213
220
  useEffect(() => {
214
221
  pageContext.loadQueries()
215
222
  }, [])
216
223
 
217
-
218
- const queries = [1,2,3 ]
224
+
225
+ async function remove(id) {
226
+ await pageContext.removeQuery(id)
227
+ setPageContext(Object.assign({}, pageContext))
228
+ }
229
+
219
230
  return (
220
231
  <Fragment>
221
232
  <Header className="table-queries" title={<Text>Queries</Text>} />
222
233
  <main className="table-queries">
223
- {queries.map(query => (
234
+ {queries ? queries.map(query => (
224
235
  <div className="table-queries-item">
225
-
236
+ <Icon icon="star" />
237
+ <label>{query.name}</label>
238
+ <Icon icon="close" clickable size="small" action={() => remove(query.id)} />
226
239
  </div>
227
- ))}
240
+ )) : <div>...empty...</div>}
228
241
  </main>
229
242
  </Fragment>
230
243
  )
@@ -275,7 +288,7 @@ const TableFilters = (props) => {
275
288
  <ContentEditor content={content} onChange={change} />
276
289
  </main>
277
290
  <footer>
278
- { canQuery ? <Button icon="playlist_add" label="CREAR BUSQUEDA" action={save} outlined/> : null}
291
+ { onSave ? <Button icon="playlist_add" label="CREAR BUSQUEDA" action={save} outlined/> : null}
279
292
  </footer>
280
293
  </Fragment>
281
294
  )