@aiszlab/relax 2.0.6-beta.9 → 2.0.7
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/hooks/use-controlled-state.d.ts +1 -1
- package/dist/hooks/use-memorized.cjs +20 -0
- package/dist/hooks/use-memorized.d.ts +6 -0
- package/dist/hooks/use-memorized.mjs +18 -0
- package/dist/hooks/use-scale.cjs +2 -2
- package/dist/hooks/use-scale.mjs +2 -2
- package/dist/index.cjs +16 -4
- package/dist/index.d.ts +8 -2
- package/dist/index.mjs +8 -2
- package/dist/types/at.d.ts +3 -3
- package/dist/types/last.d.ts +1 -1
- package/dist/utils/at.cjs +5 -2
- package/dist/utils/at.d.ts +2 -1
- package/dist/utils/at.mjs +5 -2
- package/dist/utils/first.d.ts +1 -1
- package/dist/utils/last.d.ts +1 -1
- package/package.json +1 -1
- package/dist/hooks/use-memorable.cjs +0 -16
- package/dist/hooks/use-memorable.d.ts +0 -1
- package/dist/hooks/use-memorable.mjs +0 -14
- package/dist/next/authenticated.cjs +0 -46
- package/dist/next/authenticated.d.ts +0 -9
- package/dist/next/authenticated.mjs +0 -44
- package/dist/next/authentication.cjs +0 -97
- package/dist/next/authentication.d.ts +0 -10
- package/dist/next/authentication.mjs +0 -94
- package/dist/next/constants.cjs +0 -8
- package/dist/next/constants.d.ts +0 -4
- package/dist/next/constants.mjs +0 -6
- package/dist/next/index.cjs +0 -10
- package/dist/next/index.d.ts +0 -3
- package/dist/next/index.mjs +0 -2
|
@@ -10,7 +10,7 @@ type UsingControlledState<S> = {
|
|
|
10
10
|
* @description
|
|
11
11
|
* value update callback
|
|
12
12
|
*/
|
|
13
|
-
onUpdate?: (next: S
|
|
13
|
+
onUpdate?: (next: Partialable<S>, prev: Partialable<S>) => void;
|
|
14
14
|
};
|
|
15
15
|
type UsedControlledState<T> = [T, Dispatch<SetStateAction<T>>];
|
|
16
16
|
/**
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var react = require('react');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @description 基于`React`.`useMemo`的增强
|
|
7
|
+
* 在依赖发生改变时,具备读取上一次`useMemo`结果的能力
|
|
8
|
+
*/
|
|
9
|
+
var useMemorized = function useMemorized(factory, deps) {
|
|
10
|
+
var _previousMemorized = react.useRef(null);
|
|
11
|
+
var _memorized = react.useMemo(function () {
|
|
12
|
+
return factory(_previousMemorized.current);
|
|
13
|
+
}, deps);
|
|
14
|
+
react.useEffect(function () {
|
|
15
|
+
_previousMemorized.current = _memorized;
|
|
16
|
+
});
|
|
17
|
+
return _memorized;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
exports.useMemorized = useMemorized;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { useRef, useMemo, useEffect } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @description 基于`React`.`useMemo`的增强
|
|
5
|
+
* 在依赖发生改变时,具备读取上一次`useMemo`结果的能力
|
|
6
|
+
*/
|
|
7
|
+
var useMemorized = function useMemorized(factory, deps) {
|
|
8
|
+
var _previousMemorized = useRef(null);
|
|
9
|
+
var _memorized = useMemo(function () {
|
|
10
|
+
return factory(_previousMemorized.current);
|
|
11
|
+
}, deps);
|
|
12
|
+
useEffect(function () {
|
|
13
|
+
_previousMemorized.current = _memorized;
|
|
14
|
+
});
|
|
15
|
+
return _memorized;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export { useMemorized };
|
package/dist/hooks/use-scale.cjs
CHANGED
|
@@ -8,7 +8,7 @@ var isNumber = require('../is/is-number.cjs');
|
|
|
8
8
|
* @description 比较两个`css`单位的缩放比例
|
|
9
9
|
*/
|
|
10
10
|
var useScale = function useScale(resize, originalSize) {
|
|
11
|
-
var _useState = react.useState(
|
|
11
|
+
var _useState = react.useState(0),
|
|
12
12
|
_useState2 = _slicedToArray(_useState, 2),
|
|
13
13
|
scale = _useState2[0],
|
|
14
14
|
setScale = _useState2[1];
|
|
@@ -30,7 +30,7 @@ var useScale = function useScale(resize, originalSize) {
|
|
|
30
30
|
if (_originalSizedWidth > 0) {
|
|
31
31
|
setScale(_resizedWidth / _originalSizedWidth);
|
|
32
32
|
} else {
|
|
33
|
-
setScale(
|
|
33
|
+
setScale(0);
|
|
34
34
|
}
|
|
35
35
|
_parent.remove();
|
|
36
36
|
}, [resize, originalSize]);
|
package/dist/hooks/use-scale.mjs
CHANGED
|
@@ -6,7 +6,7 @@ import { isNumber } from '../is/is-number.mjs';
|
|
|
6
6
|
* @description 比较两个`css`单位的缩放比例
|
|
7
7
|
*/
|
|
8
8
|
var useScale = function useScale(resize, originalSize) {
|
|
9
|
-
var _useState = useState(
|
|
9
|
+
var _useState = useState(0),
|
|
10
10
|
_useState2 = _slicedToArray(_useState, 2),
|
|
11
11
|
scale = _useState2[0],
|
|
12
12
|
setScale = _useState2[1];
|
|
@@ -28,7 +28,7 @@ var useScale = function useScale(resize, originalSize) {
|
|
|
28
28
|
if (_originalSizedWidth > 0) {
|
|
29
29
|
setScale(_resizedWidth / _originalSizedWidth);
|
|
30
30
|
} else {
|
|
31
|
-
setScale(
|
|
31
|
+
setScale(0);
|
|
32
32
|
}
|
|
33
33
|
_parent.remove();
|
|
34
34
|
}, [resize, originalSize]);
|
package/dist/index.cjs
CHANGED
|
@@ -19,7 +19,7 @@ var useUpdateEffect = require('./hooks/use-update-effect.cjs');
|
|
|
19
19
|
var useCounter = require('./hooks/use-counter.cjs');
|
|
20
20
|
var useHover = require('./hooks/use-hover.cjs');
|
|
21
21
|
var useFocus = require('./hooks/use-focus.cjs');
|
|
22
|
-
var
|
|
22
|
+
var useMemorized = require('./hooks/use-memorized.cjs');
|
|
23
23
|
var useMutateObserver = require('./hooks/use-mutate-observer.cjs');
|
|
24
24
|
var useRaf = require('./hooks/use-raf.cjs');
|
|
25
25
|
var useDevicePixelRatio = require('./hooks/use-device-pixel-ratio.cjs');
|
|
@@ -42,11 +42,13 @@ var useDraggable = require('./hooks/use-draggable.cjs');
|
|
|
42
42
|
var useAsyncEffect = require('./hooks/use-async-effect.cjs');
|
|
43
43
|
var useLazyRef = require('./hooks/use-lazy-ref.cjs');
|
|
44
44
|
var useScroll = require('./hooks/use-scroll.cjs');
|
|
45
|
+
var useScale = require('./hooks/use-scale.cjs');
|
|
45
46
|
var isRefable = require('./is/is-refable.cjs');
|
|
46
47
|
var isUndefined = require('./is/is-undefined.cjs');
|
|
47
48
|
var isNull = require('./is/is-null.cjs');
|
|
48
49
|
var isVoid = require('./is/is-void.cjs');
|
|
49
50
|
var isArray = require('./is/is-array.cjs');
|
|
51
|
+
var isNumber = require('./is/is-number.cjs');
|
|
50
52
|
var isEmpty = require('./is/is-empty.cjs');
|
|
51
53
|
var isDomUsable = require('./is/is-dom-usable.cjs');
|
|
52
54
|
var isMobile = require('./is/is-mobile.cjs');
|
|
@@ -57,7 +59,11 @@ var isThenable = require('./is/is-thenable.cjs');
|
|
|
57
59
|
var isHtmlElement = require('./is/is-html-element.cjs');
|
|
58
60
|
var isHtmlInputElement = require('./is/is-html-input-element.cjs');
|
|
59
61
|
var isObject = require('./is/is-object.cjs');
|
|
60
|
-
var
|
|
62
|
+
var isDeepKey = require('./is/is-deep-key.cjs');
|
|
63
|
+
var isString = require('./is/is-string.cjs');
|
|
64
|
+
var isBoolean = require('./is/is-boolean.cjs');
|
|
65
|
+
var isMap = require('./is/is-map.cjs');
|
|
66
|
+
var isSet = require('./is/is-set.cjs');
|
|
61
67
|
var effect = require('./utils/effect.cjs');
|
|
62
68
|
var unique = require('./utils/unique.cjs');
|
|
63
69
|
var uniqueBy = require('./utils/unique-by.cjs');
|
|
@@ -109,7 +115,7 @@ exports.useUpdateEffect = useUpdateEffect.useUpdateEffect;
|
|
|
109
115
|
exports.useCounter = useCounter.useCounter;
|
|
110
116
|
exports.useHover = useHover.useHover;
|
|
111
117
|
exports.useFocus = useFocus.useFocus;
|
|
112
|
-
exports.
|
|
118
|
+
exports.useMemorized = useMemorized.useMemorized;
|
|
113
119
|
exports.useMutateObserver = useMutateObserver.useMutateObserver;
|
|
114
120
|
exports.useRaf = useRaf.useRaf;
|
|
115
121
|
exports.useDevicePixelRatio = useDevicePixelRatio.useDevicePixelRatio;
|
|
@@ -132,11 +138,13 @@ exports.useDraggable = useDraggable.useDraggable;
|
|
|
132
138
|
exports.useAsyncEffect = useAsyncEffect.useAsyncEffect;
|
|
133
139
|
exports.useLazyRef = useLazyRef.useLazyRef;
|
|
134
140
|
exports.useScroll = useScroll.useScroll;
|
|
141
|
+
exports.useScale = useScale.useScale;
|
|
135
142
|
exports.isRefable = isRefable.isRefable;
|
|
136
143
|
exports.isUndefined = isUndefined.isUndefined;
|
|
137
144
|
exports.isNull = isNull.isNull;
|
|
138
145
|
exports.isVoid = isVoid.isVoid;
|
|
139
146
|
exports.isArray = isArray.isArray;
|
|
147
|
+
exports.isNumber = isNumber.isNumber;
|
|
140
148
|
exports.isEmpty = isEmpty.isEmpty;
|
|
141
149
|
exports.isDomUsable = isDomUsable.isDomUsable;
|
|
142
150
|
exports.isMobile = isMobile.isMobile;
|
|
@@ -147,7 +155,11 @@ exports.isThenable = isThenable.isThenable;
|
|
|
147
155
|
exports.isHTMLElement = isHtmlElement.isHTMLElement;
|
|
148
156
|
exports.isHTMLInputElement = isHtmlInputElement.isHTMLInputElement;
|
|
149
157
|
exports.isObject = isObject.isObject;
|
|
150
|
-
exports.
|
|
158
|
+
exports.isDeepKey = isDeepKey.isDeepKey;
|
|
159
|
+
exports.isString = isString.isString;
|
|
160
|
+
exports.isBoolean = isBoolean.isBoolean;
|
|
161
|
+
exports.isMap = isMap.isMap;
|
|
162
|
+
exports.isSet = isSet.isSet;
|
|
151
163
|
exports.effect = effect.effect;
|
|
152
164
|
exports.unique = unique.unique;
|
|
153
165
|
exports.uniqueBy = uniqueBy.uniqueBy;
|
package/dist/index.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export { useUpdateEffect } from "./hooks/use-update-effect";
|
|
|
21
21
|
export { useCounter } from "./hooks/use-counter";
|
|
22
22
|
export { useHover } from "./hooks/use-hover";
|
|
23
23
|
export { useFocus } from "./hooks/use-focus";
|
|
24
|
-
export {
|
|
24
|
+
export { useMemorized } from "./hooks/use-memorized";
|
|
25
25
|
export { useMutateObserver } from "./hooks/use-mutate-observer";
|
|
26
26
|
export { useRaf } from "./hooks/use-raf";
|
|
27
27
|
export { useDevicePixelRatio } from "./hooks/use-device-pixel-ratio";
|
|
@@ -44,6 +44,7 @@ export { useDraggable } from "./hooks/use-draggable";
|
|
|
44
44
|
export { useAsyncEffect } from "./hooks/use-async-effect";
|
|
45
45
|
export { useLazyRef } from "./hooks/use-lazy-ref";
|
|
46
46
|
export { useScroll } from "./hooks/use-scroll";
|
|
47
|
+
export { useScale } from "./hooks/use-scale";
|
|
47
48
|
/**
|
|
48
49
|
* @description
|
|
49
50
|
* is
|
|
@@ -53,6 +54,7 @@ export { isUndefined } from "./is/is-undefined";
|
|
|
53
54
|
export { isNull } from "./is/is-null";
|
|
54
55
|
export { isVoid } from "./is/is-void";
|
|
55
56
|
export { isArray } from "./is/is-array";
|
|
57
|
+
export { isNumber } from "./is/is-number";
|
|
56
58
|
export { isEmpty } from "./is/is-empty";
|
|
57
59
|
export { isDomUsable } from "./is/is-dom-usable";
|
|
58
60
|
export { isMobile } from "./is/is-mobile";
|
|
@@ -63,7 +65,11 @@ export { isThenable } from "./is/is-thenable";
|
|
|
63
65
|
export { isHTMLElement } from "./is/is-html-element";
|
|
64
66
|
export { isHTMLInputElement } from "./is/is-html-input-element";
|
|
65
67
|
export { isObject } from "./is/is-object";
|
|
66
|
-
export {
|
|
68
|
+
export { isDeepKey } from "./is/is-deep-key";
|
|
69
|
+
export { isString } from "./is/is-string";
|
|
70
|
+
export { isBoolean } from "./is/is-boolean";
|
|
71
|
+
export { isMap } from "./is/is-map";
|
|
72
|
+
export { isSet } from "./is/is-set";
|
|
67
73
|
/**
|
|
68
74
|
* @description
|
|
69
75
|
* utils
|
package/dist/index.mjs
CHANGED
|
@@ -17,7 +17,7 @@ export { useUpdateEffect } from './hooks/use-update-effect.mjs';
|
|
|
17
17
|
export { useCounter } from './hooks/use-counter.mjs';
|
|
18
18
|
export { useHover } from './hooks/use-hover.mjs';
|
|
19
19
|
export { useFocus } from './hooks/use-focus.mjs';
|
|
20
|
-
export {
|
|
20
|
+
export { useMemorized } from './hooks/use-memorized.mjs';
|
|
21
21
|
export { useMutateObserver } from './hooks/use-mutate-observer.mjs';
|
|
22
22
|
export { useRaf } from './hooks/use-raf.mjs';
|
|
23
23
|
export { useDevicePixelRatio } from './hooks/use-device-pixel-ratio.mjs';
|
|
@@ -40,11 +40,13 @@ export { useDraggable } from './hooks/use-draggable.mjs';
|
|
|
40
40
|
export { useAsyncEffect } from './hooks/use-async-effect.mjs';
|
|
41
41
|
export { useLazyRef } from './hooks/use-lazy-ref.mjs';
|
|
42
42
|
export { useScroll } from './hooks/use-scroll.mjs';
|
|
43
|
+
export { useScale } from './hooks/use-scale.mjs';
|
|
43
44
|
export { isRefable } from './is/is-refable.mjs';
|
|
44
45
|
export { isUndefined } from './is/is-undefined.mjs';
|
|
45
46
|
export { isNull } from './is/is-null.mjs';
|
|
46
47
|
export { isVoid } from './is/is-void.mjs';
|
|
47
48
|
export { isArray } from './is/is-array.mjs';
|
|
49
|
+
export { isNumber } from './is/is-number.mjs';
|
|
48
50
|
export { isEmpty } from './is/is-empty.mjs';
|
|
49
51
|
export { isDomUsable } from './is/is-dom-usable.mjs';
|
|
50
52
|
export { isMobile } from './is/is-mobile.mjs';
|
|
@@ -55,7 +57,11 @@ export { isThenable } from './is/is-thenable.mjs';
|
|
|
55
57
|
export { isHTMLElement } from './is/is-html-element.mjs';
|
|
56
58
|
export { isHTMLInputElement } from './is/is-html-input-element.mjs';
|
|
57
59
|
export { isObject } from './is/is-object.mjs';
|
|
58
|
-
export {
|
|
60
|
+
export { isDeepKey } from './is/is-deep-key.mjs';
|
|
61
|
+
export { isString } from './is/is-string.mjs';
|
|
62
|
+
export { isBoolean } from './is/is-boolean.mjs';
|
|
63
|
+
export { isMap } from './is/is-map.mjs';
|
|
64
|
+
export { isSet } from './is/is-set.mjs';
|
|
59
65
|
export { effect } from './utils/effect.mjs';
|
|
60
66
|
export { unique } from './utils/unique.mjs';
|
|
61
67
|
export { uniqueBy } from './utils/unique-by.mjs';
|
package/dist/types/at.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Partialable } from "./partialable";
|
|
1
|
+
import type { Partialable } from "./partialable";
|
|
2
2
|
/**
|
|
3
|
-
* `At` types
|
|
3
|
+
* @description `At` types
|
|
4
4
|
*/
|
|
5
|
-
export type At<T> = T extends string ? Partialable<string> : T extends
|
|
5
|
+
export type At<T> = T extends string ? Partialable<string> : T extends Array<infer R> ? Partialable<R> : never;
|
package/dist/types/last.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export type Last<T> = T extends null | undefined ? undefined : T extends string ? string : T extends [...Array<unknown>, infer D] ? D : T extends ReadonlyArray<infer I> ? I | undefined :
|
|
1
|
+
export type Last<T> = T extends null | undefined ? undefined : T extends string ? string : T extends [...Array<unknown>, infer D] ? D : T extends ReadonlyArray<infer I> ? I | undefined : never;
|
package/dist/utils/at.cjs
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var isString = require('../is/is-string.cjs');
|
|
4
|
+
var isVoid = require('../is/is-void.cjs');
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* @description for different browser or browser version, use good api to cover
|
|
7
8
|
*/
|
|
8
9
|
function at(value, index) {
|
|
10
|
+
if (isVoid.isVoid(value)) {
|
|
11
|
+
return void 0;
|
|
12
|
+
}
|
|
9
13
|
if (isString.isString(value)) {
|
|
10
14
|
return value.at(index);
|
|
11
15
|
}
|
|
12
|
-
|
|
13
|
-
if (Array.prototype.at) {
|
|
16
|
+
if (value.at) {
|
|
14
17
|
return value.at(index);
|
|
15
18
|
}
|
|
16
19
|
return value[index];
|
package/dist/utils/at.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import type { Voidable } from "../types";
|
|
1
2
|
import type { At } from "../types/at";
|
|
2
3
|
/**
|
|
3
4
|
* @description for different browser or browser version, use good api to cover
|
|
4
5
|
*/
|
|
5
|
-
declare function at<T
|
|
6
|
+
declare function at<T extends Array<unknown>>(value: Voidable<string | T>, index: number): At<T>;
|
|
6
7
|
export { at };
|
package/dist/utils/at.mjs
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { isString } from '../is/is-string.mjs';
|
|
2
|
+
import { isVoid } from '../is/is-void.mjs';
|
|
2
3
|
|
|
3
4
|
/**
|
|
4
5
|
* @description for different browser or browser version, use good api to cover
|
|
5
6
|
*/
|
|
6
7
|
function at(value, index) {
|
|
8
|
+
if (isVoid(value)) {
|
|
9
|
+
return void 0;
|
|
10
|
+
}
|
|
7
11
|
if (isString(value)) {
|
|
8
12
|
return value.at(index);
|
|
9
13
|
}
|
|
10
|
-
|
|
11
|
-
if (Array.prototype.at) {
|
|
14
|
+
if (value.at) {
|
|
12
15
|
return value.at(index);
|
|
13
16
|
}
|
|
14
17
|
return value[index];
|
package/dist/utils/first.d.ts
CHANGED
|
@@ -3,5 +3,5 @@ import type { Voidable, First } from "@aiszlab/relax/types";
|
|
|
3
3
|
* @description
|
|
4
4
|
* first element
|
|
5
5
|
*/
|
|
6
|
-
declare function first<T extends
|
|
6
|
+
declare function first<T extends Array<unknown>>(value: Voidable<string | T>): First<T>;
|
|
7
7
|
export { first };
|
package/dist/utils/last.d.ts
CHANGED
|
@@ -3,5 +3,5 @@ import type { Voidable, Last } from "@aiszlab/relax/types";
|
|
|
3
3
|
* @description
|
|
4
4
|
* last element
|
|
5
5
|
*/
|
|
6
|
-
declare function last<T extends
|
|
6
|
+
declare function last<T extends Array<unknown>>(value: Voidable<string | T>): Last<T>;
|
|
7
7
|
export { last };
|
package/package.json
CHANGED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var react = require('react');
|
|
4
|
-
|
|
5
|
-
var useMemorable = function useMemorable(getter, condition, shouldUpdate) {
|
|
6
|
-
var cacheRef = react.useRef(null);
|
|
7
|
-
if (cacheRef.current === null || shouldUpdate(cacheRef.current.condition, condition)) {
|
|
8
|
-
cacheRef.current = {
|
|
9
|
-
value: getter(),
|
|
10
|
-
condition: condition
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
return cacheRef.current.value;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
exports.useMemorable = useMemorable;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const useMemorable: <Value, Condition = unknown[]>(getter: () => Value, condition: Condition, shouldUpdate: (prev: Condition, next: Condition) => boolean) => Value;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { useRef } from 'react';
|
|
2
|
-
|
|
3
|
-
var useMemorable = function useMemorable(getter, condition, shouldUpdate) {
|
|
4
|
-
var cacheRef = useRef(null);
|
|
5
|
-
if (cacheRef.current === null || shouldUpdate(cacheRef.current.condition, condition)) {
|
|
6
|
-
cacheRef.current = {
|
|
7
|
-
value: getter(),
|
|
8
|
-
condition: condition
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
return cacheRef.current.value;
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
export { useMemorable };
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var _regeneratorRuntime = require('@babel/runtime/helpers/regeneratorRuntime');
|
|
4
|
-
var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
|
|
5
|
-
var react = require('react');
|
|
6
|
-
var constants = require('./constants.cjs');
|
|
7
|
-
var authentication = require('./authentication.cjs');
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* 认证注入组件
|
|
11
|
-
*/
|
|
12
|
-
var Authenticated = /*#__PURE__*/function () {
|
|
13
|
-
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
14
|
-
var authenticated;
|
|
15
|
-
return _regeneratorRuntime().wrap(function (_context) {
|
|
16
|
-
while (1) switch (_context.prev = _context.next) {
|
|
17
|
-
case 0:
|
|
18
|
-
_context.next = 1;
|
|
19
|
-
return authentication.tryAuthenticate()["catch"](function () {
|
|
20
|
-
return null;
|
|
21
|
-
});
|
|
22
|
-
case 1:
|
|
23
|
-
authenticated = _context.sent;
|
|
24
|
-
if (authenticated) {
|
|
25
|
-
_context.next = 2;
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
return _context.abrupt("return", null);
|
|
29
|
-
case 2:
|
|
30
|
-
return _context.abrupt("return", /*#__PURE__*/react.createElement("script", {
|
|
31
|
-
dangerouslySetInnerHTML: {
|
|
32
|
-
__html: "sessionStorage.setItem('".concat(constants.TOKEN_KEY, "', '").concat(authenticated, "')")
|
|
33
|
-
}
|
|
34
|
-
}));
|
|
35
|
-
case 3:
|
|
36
|
-
case "end":
|
|
37
|
-
return _context.stop();
|
|
38
|
-
}
|
|
39
|
-
}, _callee);
|
|
40
|
-
}));
|
|
41
|
-
return function Authenticated() {
|
|
42
|
-
return _ref.apply(this, arguments);
|
|
43
|
-
};
|
|
44
|
-
}();
|
|
45
|
-
|
|
46
|
-
module.exports = Authenticated;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import _regeneratorRuntime from '@babel/runtime/helpers/regeneratorRuntime';
|
|
2
|
-
import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
|
|
3
|
-
import { createElement } from 'react';
|
|
4
|
-
import { TOKEN_KEY } from './constants.mjs';
|
|
5
|
-
import { tryAuthenticate } from './authentication.mjs';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* 认证注入组件
|
|
9
|
-
*/
|
|
10
|
-
var Authenticated = /*#__PURE__*/function () {
|
|
11
|
-
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
12
|
-
var authenticated;
|
|
13
|
-
return _regeneratorRuntime().wrap(function (_context) {
|
|
14
|
-
while (1) switch (_context.prev = _context.next) {
|
|
15
|
-
case 0:
|
|
16
|
-
_context.next = 1;
|
|
17
|
-
return tryAuthenticate()["catch"](function () {
|
|
18
|
-
return null;
|
|
19
|
-
});
|
|
20
|
-
case 1:
|
|
21
|
-
authenticated = _context.sent;
|
|
22
|
-
if (authenticated) {
|
|
23
|
-
_context.next = 2;
|
|
24
|
-
break;
|
|
25
|
-
}
|
|
26
|
-
return _context.abrupt("return", null);
|
|
27
|
-
case 2:
|
|
28
|
-
return _context.abrupt("return", /*#__PURE__*/createElement("script", {
|
|
29
|
-
dangerouslySetInnerHTML: {
|
|
30
|
-
__html: "sessionStorage.setItem('".concat(TOKEN_KEY, "', '").concat(authenticated, "')")
|
|
31
|
-
}
|
|
32
|
-
}));
|
|
33
|
-
case 3:
|
|
34
|
-
case "end":
|
|
35
|
-
return _context.stop();
|
|
36
|
-
}
|
|
37
|
-
}, _callee);
|
|
38
|
-
}));
|
|
39
|
-
return function Authenticated() {
|
|
40
|
-
return _ref.apply(this, arguments);
|
|
41
|
-
};
|
|
42
|
-
}();
|
|
43
|
-
|
|
44
|
-
export { Authenticated as default };
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var _regeneratorRuntime = require('@babel/runtime/helpers/regeneratorRuntime');
|
|
4
|
-
var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
|
|
5
|
-
var headers = require('next/headers');
|
|
6
|
-
var isDomUsable = require('../is/is-dom-usable.cjs');
|
|
7
|
-
var constants = require('./constants.cjs');
|
|
8
|
-
var server = require('next/server');
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* 获取当前应用认证信息
|
|
12
|
-
*/
|
|
13
|
-
var tryAuthenticate = /*#__PURE__*/function () {
|
|
14
|
-
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
15
|
-
var _yield$cookies$get$va, _yield$cookies$get;
|
|
16
|
-
var _t, _t2, _t3, _t4, _t5, _t6;
|
|
17
|
-
return _regeneratorRuntime().wrap(function (_context) {
|
|
18
|
-
while (1) switch (_context.prev = _context.next) {
|
|
19
|
-
case 0:
|
|
20
|
-
if (!isDomUsable.isDomUsable()) {
|
|
21
|
-
_context.next = 1;
|
|
22
|
-
break;
|
|
23
|
-
}
|
|
24
|
-
return _context.abrupt("return", sessionStorage.getItem(constants.TOKEN_KEY));
|
|
25
|
-
case 1:
|
|
26
|
-
_context.next = 2;
|
|
27
|
-
return headers.cookies();
|
|
28
|
-
case 2:
|
|
29
|
-
_t3 = _yield$cookies$get = _context.sent.get(constants.TOKEN_KEY);
|
|
30
|
-
_t2 = _t3 === null;
|
|
31
|
-
if (_t2) {
|
|
32
|
-
_context.next = 3;
|
|
33
|
-
break;
|
|
34
|
-
}
|
|
35
|
-
_t2 = _yield$cookies$get === void 0;
|
|
36
|
-
case 3:
|
|
37
|
-
if (!_t2) {
|
|
38
|
-
_context.next = 4;
|
|
39
|
-
break;
|
|
40
|
-
}
|
|
41
|
-
_t4 = void 0;
|
|
42
|
-
_context.next = 5;
|
|
43
|
-
break;
|
|
44
|
-
case 4:
|
|
45
|
-
_t4 = _yield$cookies$get.value;
|
|
46
|
-
case 5:
|
|
47
|
-
_t5 = _yield$cookies$get$va = _t4;
|
|
48
|
-
_t = _t5 !== null;
|
|
49
|
-
if (!_t) {
|
|
50
|
-
_context.next = 6;
|
|
51
|
-
break;
|
|
52
|
-
}
|
|
53
|
-
_t = _yield$cookies$get$va !== void 0;
|
|
54
|
-
case 6:
|
|
55
|
-
if (!_t) {
|
|
56
|
-
_context.next = 7;
|
|
57
|
-
break;
|
|
58
|
-
}
|
|
59
|
-
_t6 = _yield$cookies$get$va;
|
|
60
|
-
_context.next = 8;
|
|
61
|
-
break;
|
|
62
|
-
case 7:
|
|
63
|
-
_t6 = null;
|
|
64
|
-
case 8:
|
|
65
|
-
return _context.abrupt("return", _t6);
|
|
66
|
-
case 9:
|
|
67
|
-
case "end":
|
|
68
|
-
return _context.stop();
|
|
69
|
-
}
|
|
70
|
-
}, _callee);
|
|
71
|
-
}));
|
|
72
|
-
return function tryAuthenticate() {
|
|
73
|
-
return _ref.apply(this, arguments);
|
|
74
|
-
};
|
|
75
|
-
}();
|
|
76
|
-
/**
|
|
77
|
-
* 中间介
|
|
78
|
-
*/
|
|
79
|
-
var middleware = function middleware(request) {
|
|
80
|
-
var isAuthenticated = request.nextUrl.searchParams.has(constants.TOKEN_KEY);
|
|
81
|
-
if (!isAuthenticated) return;
|
|
82
|
-
var _authenticated = request.nextUrl.searchParams.get(constants.TOKEN_KEY);
|
|
83
|
-
var url = new URL(request.url);
|
|
84
|
-
url.searchParams["delete"](constants.TOKEN_KEY);
|
|
85
|
-
var response = server.NextResponse.redirect(url);
|
|
86
|
-
if (_authenticated) {
|
|
87
|
-
response.cookies.set({
|
|
88
|
-
httpOnly: true,
|
|
89
|
-
name: constants.TOKEN_KEY,
|
|
90
|
-
value: _authenticated
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
return response;
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
exports.middleware = middleware;
|
|
97
|
-
exports.tryAuthenticate = tryAuthenticate;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { Nullable } from "../types";
|
|
2
|
-
import { NextResponse, type NextRequest } from "next/server";
|
|
3
|
-
/**
|
|
4
|
-
* 获取当前应用认证信息
|
|
5
|
-
*/
|
|
6
|
-
export declare const tryAuthenticate: () => Promise<Nullable<string>>;
|
|
7
|
-
/**
|
|
8
|
-
* 中间介
|
|
9
|
-
*/
|
|
10
|
-
export declare const middleware: (request: NextRequest) => NextResponse<unknown> | undefined;
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import _regeneratorRuntime from '@babel/runtime/helpers/regeneratorRuntime';
|
|
2
|
-
import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
|
|
3
|
-
import { cookies } from 'next/headers';
|
|
4
|
-
import { isDomUsable } from '../is/is-dom-usable.mjs';
|
|
5
|
-
import { TOKEN_KEY } from './constants.mjs';
|
|
6
|
-
import { NextResponse } from 'next/server';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* 获取当前应用认证信息
|
|
10
|
-
*/
|
|
11
|
-
var tryAuthenticate = /*#__PURE__*/function () {
|
|
12
|
-
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
13
|
-
var _yield$cookies$get$va, _yield$cookies$get;
|
|
14
|
-
var _t, _t2, _t3, _t4, _t5, _t6;
|
|
15
|
-
return _regeneratorRuntime().wrap(function (_context) {
|
|
16
|
-
while (1) switch (_context.prev = _context.next) {
|
|
17
|
-
case 0:
|
|
18
|
-
if (!isDomUsable()) {
|
|
19
|
-
_context.next = 1;
|
|
20
|
-
break;
|
|
21
|
-
}
|
|
22
|
-
return _context.abrupt("return", sessionStorage.getItem(TOKEN_KEY));
|
|
23
|
-
case 1:
|
|
24
|
-
_context.next = 2;
|
|
25
|
-
return cookies();
|
|
26
|
-
case 2:
|
|
27
|
-
_t3 = _yield$cookies$get = _context.sent.get(TOKEN_KEY);
|
|
28
|
-
_t2 = _t3 === null;
|
|
29
|
-
if (_t2) {
|
|
30
|
-
_context.next = 3;
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
_t2 = _yield$cookies$get === void 0;
|
|
34
|
-
case 3:
|
|
35
|
-
if (!_t2) {
|
|
36
|
-
_context.next = 4;
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
39
|
-
_t4 = void 0;
|
|
40
|
-
_context.next = 5;
|
|
41
|
-
break;
|
|
42
|
-
case 4:
|
|
43
|
-
_t4 = _yield$cookies$get.value;
|
|
44
|
-
case 5:
|
|
45
|
-
_t5 = _yield$cookies$get$va = _t4;
|
|
46
|
-
_t = _t5 !== null;
|
|
47
|
-
if (!_t) {
|
|
48
|
-
_context.next = 6;
|
|
49
|
-
break;
|
|
50
|
-
}
|
|
51
|
-
_t = _yield$cookies$get$va !== void 0;
|
|
52
|
-
case 6:
|
|
53
|
-
if (!_t) {
|
|
54
|
-
_context.next = 7;
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
57
|
-
_t6 = _yield$cookies$get$va;
|
|
58
|
-
_context.next = 8;
|
|
59
|
-
break;
|
|
60
|
-
case 7:
|
|
61
|
-
_t6 = null;
|
|
62
|
-
case 8:
|
|
63
|
-
return _context.abrupt("return", _t6);
|
|
64
|
-
case 9:
|
|
65
|
-
case "end":
|
|
66
|
-
return _context.stop();
|
|
67
|
-
}
|
|
68
|
-
}, _callee);
|
|
69
|
-
}));
|
|
70
|
-
return function tryAuthenticate() {
|
|
71
|
-
return _ref.apply(this, arguments);
|
|
72
|
-
};
|
|
73
|
-
}();
|
|
74
|
-
/**
|
|
75
|
-
* 中间介
|
|
76
|
-
*/
|
|
77
|
-
var middleware = function middleware(request) {
|
|
78
|
-
var isAuthenticated = request.nextUrl.searchParams.has(TOKEN_KEY);
|
|
79
|
-
if (!isAuthenticated) return;
|
|
80
|
-
var _authenticated = request.nextUrl.searchParams.get(TOKEN_KEY);
|
|
81
|
-
var url = new URL(request.url);
|
|
82
|
-
url.searchParams["delete"](TOKEN_KEY);
|
|
83
|
-
var response = NextResponse.redirect(url);
|
|
84
|
-
if (_authenticated) {
|
|
85
|
-
response.cookies.set({
|
|
86
|
-
httpOnly: true,
|
|
87
|
-
name: TOKEN_KEY,
|
|
88
|
-
value: _authenticated
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
return response;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
export { middleware, tryAuthenticate };
|
package/dist/next/constants.cjs
DELETED
package/dist/next/constants.d.ts
DELETED
package/dist/next/constants.mjs
DELETED
package/dist/next/index.cjs
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var authenticated = require('./authenticated.cjs');
|
|
4
|
-
var authentication = require('./authentication.cjs');
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
exports.Authenticated = authenticated;
|
|
9
|
-
exports.middleware = authentication.middleware;
|
|
10
|
-
exports.tryAuthenticate = authentication.tryAuthenticate;
|
package/dist/next/index.d.ts
DELETED
package/dist/next/index.mjs
DELETED