@thisisagile/easy-react 17.30.6 → 17.30.8

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.
@@ -0,0 +1,12 @@
1
+ // src/utils/useState.ts
2
+ import { useState as useReactState } from "react";
3
+ function useState(initial) {
4
+ const [state, setState] = useReactState(initial);
5
+ const reset = () => setState(initial);
6
+ return [state, setState, reset];
7
+ }
8
+
9
+ export {
10
+ useState
11
+ };
12
+ //# sourceMappingURL=chunk-XFIUD32G.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/useState.ts"],"sourcesContent":["import { Dispatch, SetStateAction, useState as useReactState } from 'react';\n\nexport function useState<T>(): [T | undefined, Dispatch<SetStateAction<T | undefined>>, () => void];\nexport function useState<T>(initial: T): [T, Dispatch<SetStateAction<T>>, () => void];\nexport function useState<T>(initial?: T) {\n const [state, setState] = useReactState(initial);\n const reset = () => setState(initial);\n return [state, setState, reset] as const;\n}\n"],"mappings":";AAAA,SAAmC,YAAY,qBAAqB;AAI7D,SAAS,SAAY,SAAa;AACvC,QAAM,CAAC,OAAO,QAAQ,IAAI,cAAc,OAAO;AAC/C,QAAM,QAAQ,MAAM,SAAS,OAAO;AACpC,SAAO,CAAC,OAAO,UAAU,KAAK;AAChC;","names":[]}
package/dist/index.js CHANGED
@@ -43,6 +43,7 @@ __export(src_exports, {
43
43
  usePageList: () => usePageList,
44
44
  usePaging: () => usePaging,
45
45
  useRev: () => useRev,
46
+ useState: () => useState3,
46
47
  useSwitch: () => useSwitch,
47
48
  useToggle: () => useToggle
48
49
  });
@@ -141,12 +142,18 @@ function useOnce(f, options) {
141
142
  return [item];
142
143
  }
143
144
 
144
- // src/utils/useRev.ts
145
+ // src/utils/useState.ts
145
146
  var import_react4 = require("react");
147
+ function useState3(initial) {
148
+ const [state, setState] = (0, import_react4.useState)(initial);
149
+ const reset = () => setState(initial);
150
+ return [state, setState, reset];
151
+ }
152
+
153
+ // src/utils/useRev.ts
146
154
  var useRev = (initial = 0) => {
147
- const [rev, setRev] = (0, import_react4.useState)(initial);
155
+ const [rev, setRev, reset] = useState3(initial);
148
156
  const revalidate = () => setRev((r) => r + 1);
149
- const reset = () => setRev(initial);
150
157
  return { rev, revalidate, reset };
151
158
  };
152
159
 
@@ -176,6 +183,7 @@ function useToggle(initial = false) {
176
183
  usePageList,
177
184
  usePaging,
178
185
  useRev,
186
+ useState,
179
187
  useSwitch,
180
188
  useToggle
181
189
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/layout/If.tsx","../src/utils/Children.ts","../src/utils/Hooks.ts","../src/utils/useOnce.ts","../src/utils/useRev.ts","../src/utils/useToggle.ts"],"sourcesContent":["export * from './layout';\nexport * from './utils';\n","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\n// export 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","import { useState } from 'react';\n\nexport const useRev = (initial = 0) => {\n const [rev, setRev] = useState(initial);\n const revalidate = () => setRev(r => r + 1);\n const reset = () => setRev(initial);\n return { rev, revalidate, reset };\n};\n","import { useState } from 'react';\n\nexport function useToggle(initial = false): [boolean, () => void, <T>(fn: () => Promise<T>) => Promise<T>] {\n const [state, setState] = useState(initial);\n const toggle = () => setState(s => !s);\n const flip = <T>(fn: () => Promise<T>) => {\n setState(s => !s);\n return fn().finally(() => setState(s => !s));\n };\n return [state, toggle, flip];\n}\n"],"mappings":"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","names":["React","import_easy","import_react","options","import_react","import_react","import_react"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/layout/If.tsx","../src/utils/Children.ts","../src/utils/Hooks.ts","../src/utils/useOnce.ts","../src/utils/useState.ts","../src/utils/useRev.ts","../src/utils/useToggle.ts"],"sourcesContent":["export * from './layout';\nexport * from './utils';\n","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\n// export 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","import { Dispatch, SetStateAction, useState as useReactState } from 'react';\n\nexport function useState<T>(): [T | undefined, Dispatch<SetStateAction<T | undefined>>, () => void];\nexport function useState<T>(initial: T): [T, Dispatch<SetStateAction<T>>, () => void];\nexport function useState<T>(initial?: T) {\n const [state, setState] = useReactState(initial);\n const reset = () => setState(initial);\n return [state, setState, reset] as const;\n}\n","import { useState } from './useState';\n\nexport const useRev = (initial = 0) => {\n const [rev, setRev, reset] = useState(initial);\n const revalidate = () => setRev(r => r + 1);\n return { rev, revalidate, reset };\n};\n","import { useState } from 'react';\n\nexport function useToggle(initial = false): [boolean, () => void, <T>(fn: () => Promise<T>) => Promise<T>] {\n const [state, setState] = useState(initial);\n const toggle = () => setState(s => !s);\n const flip = <T>(fn: () => Promise<T>) => {\n setState(s => !s);\n return fn().finally(() => setState(s => !s));\n };\n return [state, toggle, flip];\n}\n"],"mappings":"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","names":["useState","React","import_easy","import_react","options","import_react","import_react","useState","useReactState","useState","import_react"]}
@@ -2,4 +2,5 @@ export * from './Children';
2
2
  export * from './Hooks';
3
3
  export * from './useOnce';
4
4
  export * from './useRev';
5
+ export * from './useState';
5
6
  export * from './useToggle';
@@ -2,5 +2,6 @@ export * from "./Children";
2
2
  export * from "./Hooks";
3
3
  export * from "./useOnce";
4
4
  export * from "./useRev";
5
+ export * from "./useState";
5
6
  export * from "./useToggle";
6
7
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export * from './Children';\nexport * from './Hooks';\nexport * from './useOnce';\nexport * from './useRev';\nexport * from './useToggle';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export * from './Children';\nexport * from './Hooks';\nexport * from './useOnce';\nexport * from './useRev';\nexport * from './useState';\nexport * from './useToggle';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
@@ -1,9 +1,11 @@
1
+ import {
2
+ useState
3
+ } from "../chunk-XFIUD32G.mjs";
4
+
1
5
  // src/utils/useRev.ts
2
- import { useState } from "react";
3
6
  var useRev = (initial = 0) => {
4
- const [rev, setRev] = useState(initial);
7
+ const [rev, setRev, reset] = useState(initial);
5
8
  const revalidate = () => setRev((r) => r + 1);
6
- const reset = () => setRev(initial);
7
9
  return { rev, revalidate, reset };
8
10
  };
9
11
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/useRev.ts"],"sourcesContent":["import { useState } from 'react';\n\nexport const useRev = (initial = 0) => {\n const [rev, setRev] = useState(initial);\n const revalidate = () => setRev(r => r + 1);\n const reset = () => setRev(initial);\n return { rev, revalidate, reset };\n};\n"],"mappings":";AAAA,SAAS,gBAAgB;AAElB,IAAM,SAAS,CAAC,UAAU,MAAM;AACrC,QAAM,CAAC,KAAK,MAAM,IAAI,SAAS,OAAO;AACtC,QAAM,aAAa,MAAM,OAAO,OAAK,IAAI,CAAC;AAC1C,QAAM,QAAQ,MAAM,OAAO,OAAO;AAClC,SAAO,EAAE,KAAK,YAAY,MAAM;AAClC;","names":[]}
1
+ {"version":3,"sources":["../../src/utils/useRev.ts"],"sourcesContent":["import { useState } from './useState';\n\nexport const useRev = (initial = 0) => {\n const [rev, setRev, reset] = useState(initial);\n const revalidate = () => setRev(r => r + 1);\n return { rev, revalidate, reset };\n};\n"],"mappings":";;;;;AAEO,IAAM,SAAS,CAAC,UAAU,MAAM;AACrC,QAAM,CAAC,KAAK,QAAQ,KAAK,IAAI,SAAS,OAAO;AAC7C,QAAM,aAAa,MAAM,OAAO,OAAK,IAAI,CAAC;AAC1C,SAAO,EAAE,KAAK,YAAY,MAAM;AAClC;","names":[]}
@@ -0,0 +1,3 @@
1
+ import { Dispatch, SetStateAction } from 'react';
2
+ export declare function useState<T>(): [T | undefined, Dispatch<SetStateAction<T | undefined>>, () => void];
3
+ export declare function useState<T>(initial: T): [T, Dispatch<SetStateAction<T>>, () => void];
@@ -0,0 +1,7 @@
1
+ import {
2
+ useState
3
+ } from "../chunk-XFIUD32G.mjs";
4
+ export {
5
+ useState
6
+ };
7
+ //# sourceMappingURL=useState.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy-react",
3
- "version": "17.30.6",
3
+ "version": "17.30.8",
4
4
  "description": "Straightforward library building micro applications in react",
5
5
  "author": "Sander Hoogendoorn",
6
6
  "license": "MIT",
@@ -47,7 +47,7 @@
47
47
  "next-transpile-modules": "^10.0.0"
48
48
  },
49
49
  "dependencies": {
50
- "@thisisagile/easy": "^17.30.6",
50
+ "@thisisagile/easy": "^17.30.8",
51
51
  "react": "^18.3.1",
52
52
  "react-dom": "^18.3.1",
53
53
  "sass": "^1.80.3"
@@ -2,4 +2,5 @@ export * from './Children';
2
2
  export * from './Hooks';
3
3
  export * from './useOnce';
4
4
  export * from './useRev';
5
+ export * from './useState';
5
6
  export * from './useToggle';
@@ -1,8 +1,7 @@
1
- import { useState } from 'react';
1
+ import { useState } from './useState';
2
2
 
3
3
  export const useRev = (initial = 0) => {
4
- const [rev, setRev] = useState(initial);
4
+ const [rev, setRev, reset] = useState(initial);
5
5
  const revalidate = () => setRev(r => r + 1);
6
- const reset = () => setRev(initial);
7
6
  return { rev, revalidate, reset };
8
7
  };
@@ -0,0 +1,9 @@
1
+ import { Dispatch, SetStateAction, useState as useReactState } from 'react';
2
+
3
+ export function useState<T>(): [T | undefined, Dispatch<SetStateAction<T | undefined>>, () => void];
4
+ export function useState<T>(initial: T): [T, Dispatch<SetStateAction<T>>, () => void];
5
+ export function useState<T>(initial?: T) {
6
+ const [state, setState] = useReactState(initial);
7
+ const reset = () => setState(initial);
8
+ return [state, setState, reset] as const;
9
+ }