ywana-core8 0.0.714 → 0.0.716

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.714",
3
+ "version": "0.0.716",
4
4
  "description": "ywana-core8",
5
5
  "homepage": "https://ywana.github.io/workspace",
6
6
  "author": "Ernesto Roldan Garcia",
@@ -1,4 +1,4 @@
1
- import React, { useState } from 'react'
1
+ import React, { useEffect, useState } from 'react'
2
2
  import { CollectionAPI } from "./CollectionAPI";
3
3
 
4
4
  export const CollectionContext = React.createContext()
@@ -8,16 +8,21 @@ export const CollectionContext = React.createContext()
8
8
  */
9
9
  export const CollectionContextProvider = (props) => {
10
10
 
11
- const { host, url, page, fetching=true, field, versioning = false, children } = props
11
+ const { host, url, page, fetching=true, field, versioning = false, children, filtersValue } = props
12
12
  const API = CollectionAPI(url, host)
13
13
 
14
14
  const [all, setAll] = useState([])
15
- const [filters, setFilters] = useState({})
15
+ const [filters, setFilters] = useState(filtersValue)
16
16
  const [likes, setLikes] = useState([])
17
17
  const [customFilters, setCustomFilters] = useState({})
18
18
  const [queries, setQueries] = useState([])
19
19
  const [selected, setSelected] = useState(null)
20
20
 
21
+ useEffect(() => {
22
+ console.log("CONTEXT LOAD", filters, customFilters)
23
+ load()
24
+ }, [filters, customFilters])
25
+
21
26
  async function load() {
22
27
 
23
28
  const runCustomFilters = (all) => {
@@ -9,13 +9,12 @@ import './CollectionFilters.css'
9
9
  */
10
10
  export const CollectionFilters = (props) => {
11
11
 
12
- const { schema, children, value } = props
12
+ const { schema, children } = props
13
13
  const context = useContext(CollectionContext)
14
14
  const { filters } = context
15
15
  const [open, setOpen] = useState(false)
16
16
 
17
17
  useEffect(() => {
18
- context.setFilters(value)
19
18
  const likes = Object.keys(schema).filter(id => schema[id].like === true)
20
19
  context.setLikes(likes)
21
20
  }, [schema])
@@ -54,13 +53,17 @@ export const CollectionFilters = (props) => {
54
53
  )
55
54
  }
56
55
 
56
+ /**
57
+ * Collection Filters Resume
58
+ */
57
59
  const CollectionFiltersResume = (props) => {
58
60
 
59
61
  const { schema } = props
60
62
  const context = useContext(CollectionContext)
61
63
  const { filters } = context
62
- const fields = Object.keys(filters)
63
64
 
65
+ if (!filters) return null
66
+ const fields = Object.keys(filters)
64
67
  if (!fields.length) return null
65
68
 
66
69
  return (
@@ -13,9 +13,7 @@ export const CollectionList = (props) => {
13
13
  const { all = [], selected, filters, customFilters } = context
14
14
  const [search, setSearch] = useState('')
15
15
 
16
- useEffect(() => {
17
- context.load()
18
- }, [filters, customFilters])
16
+
19
17
 
20
18
  function changeSearch(id, value) {
21
19
  setSearch(value)
@@ -22,11 +22,11 @@ export const CollectionPage = (props) => {
22
22
 
23
23
  return (
24
24
  <div className={`collection-page ${layout}`}>
25
- <CollectionContextProvider host={host} url={url}>
25
+ <CollectionContextProvider host={host} url={url} filtersValue={filtersValue}>
26
26
  <Header title={title} >
27
27
  {actions}
28
28
  </Header>
29
- {canFilter ? <CollectionFilters schema={schema} value={filtersValue} >{customFilters}</CollectionFilters> : null}
29
+ {canFilter ? <CollectionFilters schema={schema} >{customFilters}</CollectionFilters> : null}
30
30
  <CollectionList itemRenderer={listItemRenderer} groupBy={listGroupBy} searchBy={listSearchBy} />
31
31
  <CollectionEditor customEditor={customEditor} />
32
32
  </CollectionContextProvider>
@@ -34,7 +34,7 @@ const CollectionPageTest = (prop) => {
34
34
  title: <CustomTitle />,
35
35
  canFilter: true,
36
36
  customFilters: [<CustomFilter1 />, <CustomFilter2 />],
37
- filtersValue: { name: "111111"},
37
+ filtersValue: { name: "333"},
38
38
  listSearchBy: ["name"],
39
39
  listGroupBy: "name",
40
40
  listItemRenderer,