@thisisagile/easy-react 17.25.2 → 17.26.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/dist/index.mjs CHANGED
@@ -1,3 +1,113 @@
1
- export * from "./layout";
2
- export * from "./utils";
1
+ // src/layout/If.tsx
2
+ import { Fragment, jsx } from "react/jsx-runtime";
3
+ var If = ({ condition, children }) => condition ? /* @__PURE__ */ jsx(Fragment, { children }) : null;
4
+
5
+ // src/utils/Children.ts
6
+ import { isDefined, toList } from "@thisisagile/easy";
7
+ import React from "react";
8
+ var toChildren = (children) => toList(React.Children.toArray(children).filter(isDefined));
9
+
10
+ // src/utils/Hooks.ts
11
+ import { isPageList, ofGet, toList as toList2, toPageList } from "@thisisagile/easy";
12
+ import { useState } from "react";
13
+ var useToggle = (initialState = false) => {
14
+ const [state, setState] = useState(initialState);
15
+ return [state, () => setState((s) => !s)];
16
+ };
17
+ function useSwitch(...states) {
18
+ const [state, setState] = useState(states[0]);
19
+ const next = () => setState((s) => states[(states.indexOf(s) + 1) % states.length]);
20
+ const isState = (t) => state === t;
21
+ function ifState(t, yes, no) {
22
+ return ofGet(state === t ? yes : no, t);
23
+ }
24
+ return { state, next, states, isState, ifState };
25
+ }
26
+ var useA = (item = {}) => {
27
+ const [state, setState] = useState({ isValid: false, ...item });
28
+ return [
29
+ state,
30
+ (e) => {
31
+ setState(e);
32
+ return e;
33
+ }
34
+ ];
35
+ };
36
+ var useAn = useA;
37
+ var useOptional = (item) => {
38
+ const [state, setState] = useState(item);
39
+ const set = (e) => {
40
+ setState(e);
41
+ return e;
42
+ };
43
+ return [state, set, () => set()];
44
+ };
45
+ var useEntity = useA;
46
+ var useList = (...items) => {
47
+ const [state, setState] = useState(toList2(...items));
48
+ return [
49
+ state,
50
+ (e) => {
51
+ setState(e);
52
+ return e;
53
+ }
54
+ ];
55
+ };
56
+ var usePageList = (...items) => {
57
+ const [pages, setPages] = useState(toPageList(items));
58
+ return [
59
+ pages,
60
+ (e) => {
61
+ setPages(e);
62
+ return e;
63
+ }
64
+ ];
65
+ };
66
+ var usePaging = (f, options) => {
67
+ const [list, setList] = usePageList();
68
+ const [skip, setSkip] = useState(options?.skip ?? 0);
69
+ const [take] = useState(options?.take ?? 5);
70
+ const next = (options2 = { skip, take }) => f(options2).then((items) => {
71
+ setSkip(skip + take);
72
+ return setList(toPageList(list.add(items), items));
73
+ });
74
+ return [list, next, list.length < (list?.total ?? 0), skip, take];
75
+ };
76
+ var useGet = (f, initial) => {
77
+ const [item, setItem] = useState(initial ?? {});
78
+ const getter = () => f().then((i) => {
79
+ setItem(i);
80
+ return i;
81
+ });
82
+ return [item, getter];
83
+ };
84
+ var useGetList = (f) => {
85
+ const [list, setList] = usePageList();
86
+ const getter = () => f().then((l) => setList(isPageList(l) ? l : toPageList(l, { total: l.length })));
87
+ return [list, getter];
88
+ };
89
+
90
+ // src/utils/useOnce.ts
91
+ import { useEffect, useState as useState2 } from "react";
92
+ function useOnce(f, options) {
93
+ const [item, setItem] = useState2(options?.initial);
94
+ useEffect(() => void f().then((i) => setItem(i)), options?.deps ?? []);
95
+ return [item];
96
+ }
97
+ export {
98
+ If,
99
+ toChildren,
100
+ useA,
101
+ useAn,
102
+ useEntity,
103
+ useGet,
104
+ useGetList,
105
+ useList,
106
+ useOnce,
107
+ useOptional,
108
+ usePageList,
109
+ usePaging,
110
+ useSwitch,
111
+ useToggle
112
+ };
3
113
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './layout';\nexport * from './utils';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../src/layout/If.tsx","../src/utils/Children.ts","../src/utils/Hooks.ts","../src/utils/useOnce.ts"],"sourcesContent":["import * as React from 'react';\nimport { FunctionComponent, ReactElement, ReactNode } from 'react';\n\nexport interface IfProps {\n condition: any | undefined;\n children?: ReactNode;\n}\n\nexport const If: FunctionComponent<IfProps> = ({ condition, children }): ReactElement | null => (condition ? <>{children}</> : null);\n","import { isDefined, List, toList } from '@thisisagile/easy';\nimport React, { ReactNode } from 'react';\n\nexport const toChildren = (children: ReactNode): List<ReactNode> => toList(React.Children.toArray(children).filter(isDefined));\n","import { Get, isPageList, List, ofGet, Optional, PageList, PageOptions, Predicate, toList, toPageList, Validatable } from '@thisisagile/easy';\nimport { useState } from 'react';\n\nexport const useToggle = (initialState = false): [boolean, () => void] => {\n const [state, setState] = useState<boolean>(initialState);\n return [state, () => setState(s => !s)];\n};\n\nexport function useSwitch<T>(...states: T[]): {\n state: T;\n next: () => void;\n states: T[];\n isState: Predicate<T>;\n ifState: <U>(t: T, yes: Get<U, T>, no: Get<U, T>) => U;\n} {\n const [state, setState] = useState(states[0]);\n const next = () => setState(s => states[(states.indexOf(s) + 1) % states.length]);\n const isState = (t: T) => state === t;\n\n function ifState<U>(t: T, yes: Get<U, T>, no: Get<U, T>): U {\n return ofGet(state === t ? yes : no, t);\n }\n\n return { state, next, states, isState, ifState };\n}\n\nexport const useA = <E extends Validatable>(item: Partial<E> = {} as Partial<E>): [E, (e: E) => E] => {\n const [state, setState] = useState<E>({ isValid: false, ...item } as E);\n return [\n state,\n (e: E): E => {\n setState(e);\n return e;\n },\n ];\n};\n\nexport const useAn = useA;\n\nexport const useOptional = <E>(item?: Partial<E>): [E, (e: Optional<E>) => Optional<E>, () => Optional<E>] => {\n const [state, setState] = useState<E>(item as E);\n const set = (e?: Optional<E>): Optional<E> => {\n setState(e as E);\n return e;\n };\n return [state, set, (): Optional<E> => set()];\n};\n\nexport const useEntity = useA;\n\nexport const useList = <E>(...items: E[]): [List<E>, (e: List<E>) => List<E>] => {\n const [state, setState] = useState<List<E>>(toList<E>(...items));\n return [\n state,\n (e: List<E>): List<E> => {\n setState(e);\n return e;\n },\n ];\n};\n\nexport const usePageList = <E>(...items: E[]): [PageList<E>, (e: PageList<E>) => PageList<E>] => {\n const [pages, setPages] = useState<PageList<E>>(toPageList<E>(items));\n return [\n pages,\n (e: PageList<E>): PageList<E> => {\n setPages(e);\n return e;\n },\n ];\n};\n\nexport const usePaging = <E>(\n f: (options?: PageOptions) => Promise<PageList<E>>,\n options?: PageOptions\n): [PageList<E>, (options?: PageOptions) => Promise<PageList<E>>, boolean, number, number] => {\n const [list, setList] = usePageList<E>();\n const [skip, setSkip] = useState(options?.skip ?? 0);\n const [take] = useState(options?.take ?? 5);\n const next = (options: PageOptions = { skip, take }) =>\n f(options).then(items => {\n setSkip(skip + take);\n return setList(toPageList(list.add(items), items));\n });\n return [list, next, list.length < (list?.total ?? 0), skip, take];\n};\n\nexport const useGet = <E>(f: () => Promise<E>, initial?: Partial<E>): [E, () => Promise<E>] => {\n const [item, setItem] = useState((initial ?? {}) as E);\n const getter = () =>\n f().then(i => {\n setItem(i);\n return i;\n });\n return [item, getter];\n};\n\nexport const useGetList = <E>(f: () => Promise<List<E>>): [List<E>, () => Promise<PageList<E>>] => {\n const [list, setList] = usePageList<E>();\n const getter = () => f().then(l => setList(isPageList<E>(l) ? l : toPageList(l, { total: l.length })));\n return [list, getter];\n};\n","import { DependencyList, useEffect, useState } from 'react';\n\nexport type UseOnceOptions<E> = {\n deps?: DependencyList;\n initial?: Partial<E>;\n};\n\nexport function useOnce<E>(f: () => Promise<E>, options?: UseOnceOptions<E>): [E] {\n const [item, setItem] = useState(options?.initial as E);\n useEffect(() => void f().then(i => setItem(i)), options?.deps ?? []);\n return [item];\n}\n"],"mappings":"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","names":["toList","options","useState"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy-react",
3
- "version": "17.25.2",
3
+ "version": "17.26.0",
4
4
  "description": "Straightforward library building micro applications in react",
5
5
  "author": "Sander Hoogendoorn",
6
6
  "license": "MIT",
@@ -55,7 +55,7 @@
55
55
  "next-transpile-modules": "^10.0.0"
56
56
  },
57
57
  "dependencies": {
58
- "@thisisagile/easy": "^17.25.2",
58
+ "@thisisagile/easy": "^17.26.0",
59
59
  "react": "^18.3.1",
60
60
  "react-dom": "^18.3.1",
61
61
  "sass": "^1.80.3"
@@ -1,7 +0,0 @@
1
- // src/layout/If.tsx
2
- import { Fragment, jsx } from "react/jsx-runtime";
3
- var If = ({ condition, children }) => condition ? /* @__PURE__ */ jsx(Fragment, { children }) : null;
4
- export {
5
- If
6
- };
7
- //# sourceMappingURL=If.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/layout/If.tsx"],"sourcesContent":["import * as React from 'react';\nimport { FunctionComponent, ReactElement, ReactNode } from 'react';\n\nexport interface IfProps {\n condition: any | undefined;\n children?: ReactNode;\n}\n\nexport const If: FunctionComponent<IfProps> = ({ condition, children }): ReactElement | null => (condition ? <>{children}</> : null);\n"],"mappings":";AAQ6G;AAAtG,IAAM,KAAiC,CAAC,EAAE,WAAW,SAAS,MAA4B,YAAY,gCAAG,UAAS,IAAM;","names":[]}
@@ -1,2 +0,0 @@
1
- export * from "./If";
2
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/layout/index.ts"],"sourcesContent":["export * from './If';\n"],"mappings":"AAAA,cAAc;","names":[]}
@@ -1,8 +0,0 @@
1
- // src/utils/Children.ts
2
- import { isDefined, toList } from "@thisisagile/easy";
3
- import React from "react";
4
- var toChildren = (children) => toList(React.Children.toArray(children).filter(isDefined));
5
- export {
6
- toChildren
7
- };
8
- //# sourceMappingURL=Children.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/Children.ts"],"sourcesContent":["import { isDefined, List, toList } from '@thisisagile/easy';\nimport React, { ReactNode } from 'react';\n\nexport const toChildren = (children: ReactNode): List<ReactNode> => toList(React.Children.toArray(children).filter(isDefined));\n"],"mappings":";AAAA,SAAS,WAAiB,cAAc;AACxC,OAAO,WAA0B;AAE1B,IAAM,aAAa,CAAC,aAAyC,OAAO,MAAM,SAAS,QAAQ,QAAQ,EAAE,OAAO,SAAS,CAAC;","names":[]}
@@ -1,93 +0,0 @@
1
- // src/utils/Hooks.ts
2
- import { isPageList, ofGet, toList, toPageList } from "@thisisagile/easy";
3
- import { useState } from "react";
4
- var useToggle = (initialState = false) => {
5
- const [state, setState] = useState(initialState);
6
- return [state, () => setState((s) => !s)];
7
- };
8
- function useSwitch(...states) {
9
- const [state, setState] = useState(states[0]);
10
- const next = () => setState((s) => states[(states.indexOf(s) + 1) % states.length]);
11
- const isState = (t) => state === t;
12
- function ifState(t, yes, no) {
13
- return ofGet(state === t ? yes : no, t);
14
- }
15
- return { state, next, states, isState, ifState };
16
- }
17
- var useA = (item = {}) => {
18
- const [state, setState] = useState({ isValid: false, ...item });
19
- return [
20
- state,
21
- (e) => {
22
- setState(e);
23
- return e;
24
- }
25
- ];
26
- };
27
- var useAn = useA;
28
- var useOptional = (item) => {
29
- const [state, setState] = useState(item);
30
- const set = (e) => {
31
- setState(e);
32
- return e;
33
- };
34
- return [state, set, () => set()];
35
- };
36
- var useEntity = useA;
37
- var useList = (...items) => {
38
- const [state, setState] = useState(toList(...items));
39
- return [
40
- state,
41
- (e) => {
42
- setState(e);
43
- return e;
44
- }
45
- ];
46
- };
47
- var usePageList = (...items) => {
48
- const [pages, setPages] = useState(toPageList(items));
49
- return [
50
- pages,
51
- (e) => {
52
- setPages(e);
53
- return e;
54
- }
55
- ];
56
- };
57
- var usePaging = (f, options) => {
58
- const [list, setList] = usePageList();
59
- const [skip, setSkip] = useState(options?.skip ?? 0);
60
- const [take] = useState(options?.take ?? 5);
61
- const next = (options2 = { skip, take }) => f(options2).then((items) => {
62
- setSkip(skip + take);
63
- return setList(toPageList(list.add(items), items));
64
- });
65
- return [list, next, list.length < (list?.total ?? 0), skip, take];
66
- };
67
- var useGet = (f, initial) => {
68
- const [item, setItem] = useState(initial ?? {});
69
- const getter = () => f().then((i) => {
70
- setItem(i);
71
- return i;
72
- });
73
- return [item, getter];
74
- };
75
- var useGetList = (f) => {
76
- const [list, setList] = usePageList();
77
- const getter = () => f().then((l) => setList(isPageList(l) ? l : toPageList(l, { total: l.length })));
78
- return [list, getter];
79
- };
80
- export {
81
- useA,
82
- useAn,
83
- useEntity,
84
- useGet,
85
- useGetList,
86
- useList,
87
- useOptional,
88
- usePageList,
89
- usePaging,
90
- useSwitch,
91
- useToggle
92
- };
93
- //# sourceMappingURL=Hooks.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/Hooks.ts"],"sourcesContent":["import { Get, isPageList, List, ofGet, Optional, PageList, PageOptions, Predicate, toList, toPageList, Validatable } from '@thisisagile/easy';\nimport { useState } from 'react';\n\nexport const useToggle = (initialState = false): [boolean, () => void] => {\n const [state, setState] = useState<boolean>(initialState);\n return [state, () => setState(s => !s)];\n};\n\nexport function useSwitch<T>(...states: T[]): {\n state: T;\n next: () => void;\n states: T[];\n isState: Predicate<T>;\n ifState: <U>(t: T, yes: Get<U, T>, no: Get<U, T>) => U;\n} {\n const [state, setState] = useState(states[0]);\n const next = () => setState(s => states[(states.indexOf(s) + 1) % states.length]);\n const isState = (t: T) => state === t;\n\n function ifState<U>(t: T, yes: Get<U, T>, no: Get<U, T>): U {\n return ofGet(state === t ? yes : no, t);\n }\n\n return { state, next, states, isState, ifState };\n}\n\nexport const useA = <E extends Validatable>(item: Partial<E> = {} as Partial<E>): [E, (e: E) => E] => {\n const [state, setState] = useState<E>({ isValid: false, ...item } as E);\n return [\n state,\n (e: E): E => {\n setState(e);\n return e;\n },\n ];\n};\n\nexport const useAn = useA;\n\nexport const useOptional = <E>(item?: Partial<E>): [E, (e: Optional<E>) => Optional<E>, () => Optional<E>] => {\n const [state, setState] = useState<E>(item as E);\n const set = (e?: Optional<E>): Optional<E> => {\n setState(e as E);\n return e;\n };\n return [state, set, (): Optional<E> => set()];\n};\n\nexport const useEntity = useA;\n\nexport const useList = <E>(...items: E[]): [List<E>, (e: List<E>) => List<E>] => {\n const [state, setState] = useState<List<E>>(toList<E>(...items));\n return [\n state,\n (e: List<E>): List<E> => {\n setState(e);\n return e;\n },\n ];\n};\n\nexport const usePageList = <E>(...items: E[]): [PageList<E>, (e: PageList<E>) => PageList<E>] => {\n const [pages, setPages] = useState<PageList<E>>(toPageList<E>(items));\n return [\n pages,\n (e: PageList<E>): PageList<E> => {\n setPages(e);\n return e;\n },\n ];\n};\n\nexport const usePaging = <E>(\n f: (options?: PageOptions) => Promise<PageList<E>>,\n options?: PageOptions\n): [PageList<E>, (options?: PageOptions) => Promise<PageList<E>>, boolean, number, number] => {\n const [list, setList] = usePageList<E>();\n const [skip, setSkip] = useState(options?.skip ?? 0);\n const [take] = useState(options?.take ?? 5);\n const next = (options: PageOptions = { skip, take }) =>\n f(options).then(items => {\n setSkip(skip + take);\n return setList(toPageList(list.add(items), items));\n });\n return [list, next, list.length < (list?.total ?? 0), skip, take];\n};\n\nexport const useGet = <E>(f: () => Promise<E>, initial?: Partial<E>): [E, () => Promise<E>] => {\n const [item, setItem] = useState((initial ?? {}) as E);\n const getter = () =>\n f().then(i => {\n setItem(i);\n return i;\n });\n return [item, getter];\n};\n\nexport const useGetList = <E>(f: () => Promise<List<E>>): [List<E>, () => Promise<PageList<E>>] => {\n const [list, setList] = usePageList<E>();\n const getter = () => f().then(l => setList(isPageList<E>(l) ? l : toPageList(l, { total: l.length })));\n return [list, getter];\n};\n"],"mappings":"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","names":["options"]}
@@ -1,4 +0,0 @@
1
- export * from "./Children";
2
- export * from "./Hooks";
3
- export * from "./useOnce";
4
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export * from './Children';\nexport * from './Hooks';\nexport * from './useOnce';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
@@ -1,11 +0,0 @@
1
- // src/utils/useOnce.ts
2
- import { useEffect, useState } from "react";
3
- function useOnce(f, options) {
4
- const [item, setItem] = useState(options?.initial);
5
- useEffect(() => void f().then((i) => setItem(i)), options?.deps ?? []);
6
- return [item];
7
- }
8
- export {
9
- useOnce
10
- };
11
- //# sourceMappingURL=useOnce.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/utils/useOnce.ts"],"sourcesContent":["import { DependencyList, useEffect, useState } from 'react';\n\nexport type UseOnceOptions<E> = {\n deps?: DependencyList;\n initial?: Partial<E>;\n};\n\nexport function useOnce<E>(f: () => Promise<E>, options?: UseOnceOptions<E>): [E] {\n const [item, setItem] = useState(options?.initial as E);\n useEffect(() => void f().then(i => setItem(i)), options?.deps ?? []);\n return [item];\n}\n"],"mappings":";AAAA,SAAyB,WAAW,gBAAgB;AAO7C,SAAS,QAAW,GAAqB,SAAkC;AAChF,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,SAAS,OAAY;AACtD,YAAU,MAAM,KAAK,EAAE,EAAE,KAAK,OAAK,QAAQ,CAAC,CAAC,GAAG,SAAS,QAAQ,CAAC,CAAC;AACnE,SAAO,CAAC,IAAI;AACd;","names":[]}