@thisisagile/easy-react 17.30.4 → 17.30.5

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.js CHANGED
@@ -42,6 +42,7 @@ __export(src_exports, {
42
42
  useOptional: () => useOptional,
43
43
  usePageList: () => usePageList,
44
44
  usePaging: () => usePaging,
45
+ useRev: () => useRev,
45
46
  useSwitch: () => useSwitch,
46
47
  useToggle: () => useToggle
47
48
  });
@@ -143,6 +144,15 @@ function useOnce(f, options) {
143
144
  (0, import_react3.useEffect)(() => void f().then((i) => setItem(i)), options?.deps ?? []);
144
145
  return [item];
145
146
  }
147
+
148
+ // src/utils/useRev.ts
149
+ var import_react4 = require("react");
150
+ var useRev = (initial = 0) => {
151
+ const [rev, setRev] = (0, import_react4.useState)(initial);
152
+ const revalidate = () => setRev((r) => r + 1);
153
+ const reset = () => setRev(initial);
154
+ return { rev, revalidate, reset };
155
+ };
146
156
  // Annotate the CommonJS export names for ESM import in node:
147
157
  0 && (module.exports = {
148
158
  If,
@@ -157,6 +167,7 @@ function useOnce(f, options) {
157
167
  useOptional,
158
168
  usePageList,
159
169
  usePaging,
170
+ useRev,
160
171
  useSwitch,
161
172
  useToggle
162
173
  });
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"],"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\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":["React","import_easy","import_react","options","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/useRev.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\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","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":"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","names":["React","import_easy","import_react","options","import_react","import_react"]}
@@ -1,3 +1,4 @@
1
1
  export * from './Children';
2
2
  export * from './Hooks';
3
3
  export * from './useOnce';
4
+ export * from './useRev';
@@ -1,4 +1,5 @@
1
1
  export * from "./Children";
2
2
  export * from "./Hooks";
3
3
  export * from "./useOnce";
4
+ export * from "./useRev";
4
5
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
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
+ {"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export * from './Children';\nexport * from './Hooks';\nexport * from './useOnce';\nexport * from './useRev';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
@@ -0,0 +1,5 @@
1
+ export declare const useRev: (initial?: number) => {
2
+ rev: number;
3
+ revalidate: () => void;
4
+ reset: () => void;
5
+ };
@@ -0,0 +1,12 @@
1
+ // src/utils/useRev.ts
2
+ import { useState } from "react";
3
+ var useRev = (initial = 0) => {
4
+ const [rev, setRev] = useState(initial);
5
+ const revalidate = () => setRev((r) => r + 1);
6
+ const reset = () => setRev(initial);
7
+ return { rev, revalidate, reset };
8
+ };
9
+ export {
10
+ useRev
11
+ };
12
+ //# sourceMappingURL=useRev.mjs.map
@@ -0,0 +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":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy-react",
3
- "version": "17.30.4",
3
+ "version": "17.30.5",
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.4",
50
+ "@thisisagile/easy": "^17.30.5",
51
51
  "react": "^18.3.1",
52
52
  "react-dom": "^18.3.1",
53
53
  "sass": "^1.80.3"
@@ -1,3 +1,4 @@
1
1
  export * from './Children';
2
2
  export * from './Hooks';
3
3
  export * from './useOnce';
4
+ export * from './useRev';
@@ -0,0 +1,8 @@
1
+ import { useState } from 'react';
2
+
3
+ export const useRev = (initial = 0) => {
4
+ const [rev, setRev] = useState(initial);
5
+ const revalidate = () => setRev(r => r + 1);
6
+ const reset = () => setRev(initial);
7
+ return { rev, revalidate, reset };
8
+ };