@innet/server 2.0.0-beta.7 → 2.0.0-beta.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.
- package/hooks/useNewSchema/useNewSchema.es6.js +0 -1
- package/hooks/useNewSchema/useNewSchema.js +0 -1
- package/index.es6.js +1 -0
- package/index.js +2 -0
- package/package.json +2 -3
- package/plugins/main/endpoint/endpoint.es6.js +0 -2
- package/plugins/main/endpoint/endpoint.js +0 -2
- package/plugins/main/host/host.es6.js +0 -1
- package/plugins/main/host/host.js +0 -1
- package/plugins/main/tag/tag.es6.js +0 -1
- package/plugins/main/tag/tag.js +0 -1
- package/plugins/main/variable/variable.es6.js +1 -4
- package/plugins/main/variable/variable.js +1 -4
- package/plugins/request/redirect/redirect.es6.js +0 -1
- package/plugins/request/redirect/redirect.js +0 -1
- package/plugins/schema/date/date.es6.js +0 -6
- package/plugins/schema/date/date.js +0 -6
- package/plugins/schema/field/field.es6.js +2 -1
- package/plugins/schema/field/field.js +2 -1
- package/plugins/schema/object/object.es6.js +4 -2
- package/plugins/schema/object/object.js +4 -2
- package/plugins/schema/tuple/tuple.es6.js +0 -1
- package/plugins/schema/tuple/tuple.js +0 -1
- package/plugins/schema/uuid/uuid.es6.js +0 -2
- package/plugins/schema/uuid/uuid.js +0 -2
- package/plugins/utils/swagger/swagger.es6.js +0 -1
- package/plugins/utils/swagger/swagger.js +0 -1
- package/utils/decorators/once/once.es6.js +0 -4
- package/utils/decorators/once/once.js +0 -4
- package/utils/generateTypes/generateTypes.es6.js +0 -1
- package/utils/generateTypes/generateTypes.js +0 -1
- package/utils/getSafeSchema/getSafeSchema.es6.js +5 -0
- package/utils/getSafeSchema/getSafeSchema.js +9 -0
- package/utils/getSafeSchema/index.es6.js +1 -0
- package/utils/getSafeSchema/index.js +9 -0
- package/utils/index.es6.js +1 -0
- package/utils/index.js +1 -0
- package/constants.d.ts +0 -4
- package/handler/handler.d.ts +0 -106
- package/handler/index.d.ts +0 -1
- package/hooks/index.d.ts +0 -33
- package/hooks/useAction/index.d.ts +0 -1
- package/hooks/useAction/useAction.d.ts +0 -4
- package/hooks/useApi/index.d.ts +0 -1
- package/hooks/useApi/useApi.d.ts +0 -11
- package/hooks/useBlock/index.d.ts +0 -1
- package/hooks/useBlock/useBlock.d.ts +0 -2
- package/hooks/useBody/index.d.ts +0 -1
- package/hooks/useBody/useBody.d.ts +0 -1
- package/hooks/useBodyFile/index.d.ts +0 -1
- package/hooks/useBodyFile/useBodyFile.d.ts +0 -3
- package/hooks/useClientIp/index.d.ts +0 -1
- package/hooks/useClientIp/useClientIp.d.ts +0 -1
- package/hooks/useComponentName/index.d.ts +0 -1
- package/hooks/useComponentName/useComponentName.d.ts +0 -1
- package/hooks/useCookies/index.d.ts +0 -1
- package/hooks/useCookies/useCookies.d.ts +0 -1
- package/hooks/useEffect/index.d.ts +0 -1
- package/hooks/useEffect/useEffect.d.ts +0 -2
- package/hooks/useEndpoint/index.d.ts +0 -1
- package/hooks/useEndpoint/useEndpoint.d.ts +0 -10
- package/hooks/useHeaders/index.d.ts +0 -1
- package/hooks/useHeaders/useHeaders.d.ts +0 -2
- package/hooks/useHost/index.d.ts +0 -1
- package/hooks/useHost/useHost.d.ts +0 -7
- package/hooks/useIsServerHttps/index.d.ts +0 -1
- package/hooks/useIsServerHttps/useIsServerHttps.d.ts +0 -3
- package/hooks/useNewSchema/index.d.ts +0 -1
- package/hooks/useNewSchema/useNewSchema.d.ts +0 -2
- package/hooks/useObjectRule/index.d.ts +0 -1
- package/hooks/useObjectRule/useObjectRule.d.ts +0 -4
- package/hooks/useObjectSchemaContext/index.d.ts +0 -1
- package/hooks/useObjectSchemaContext/useObjectSchemaContext.d.ts +0 -3
- package/hooks/useOneElementError/index.d.ts +0 -1
- package/hooks/useOneElementError/useOneElementError.d.ts +0 -1
- package/hooks/useParam/index.d.ts +0 -1
- package/hooks/useParam/useParam.d.ts +0 -7
- package/hooks/useParams/index.d.ts +0 -1
- package/hooks/useParams/useParams.d.ts +0 -3
- package/hooks/useParentRule/index.d.ts +0 -1
- package/hooks/useParentRule/useParentRule.d.ts +0 -4
- package/hooks/usePath/index.d.ts +0 -1
- package/hooks/usePath/usePath.d.ts +0 -1
- package/hooks/useRequest/index.d.ts +0 -1
- package/hooks/useRequest/useRequest.d.ts +0 -1
- package/hooks/useRequestHandler/index.d.ts +0 -1
- package/hooks/useRequestHandler/useRequestHandler.d.ts +0 -4
- package/hooks/useResponse/index.d.ts +0 -1
- package/hooks/useResponse/useResponse.d.ts +0 -1
- package/hooks/useRule/index.d.ts +0 -1
- package/hooks/useRule/useRule.d.ts +0 -6
- package/hooks/useSchemaContext/index.d.ts +0 -1
- package/hooks/useSchemaContext/useSchemaContext.d.ts +0 -5
- package/hooks/useSchemaType/index.d.ts +0 -1
- package/hooks/useSchemaType/useSchemaType.d.ts +0 -5
- package/hooks/useSearch/index.d.ts +0 -1
- package/hooks/useSearch/useSearch.d.ts +0 -1
- package/hooks/useServer/index.d.ts +0 -1
- package/hooks/useServer/useServer.d.ts +0 -10
- package/hooks/useServerPlugin/index.d.ts +0 -1
- package/hooks/useServerPlugin/useServerPlugin.d.ts +0 -2
- package/hooks/useServerPlugins/index.d.ts +0 -1
- package/hooks/useServerPlugins/useServerPlugins.d.ts +0 -4
- package/hooks/useServerPort/index.d.ts +0 -1
- package/hooks/useServerPort/useServerPort.d.ts +0 -3
- package/hooks/useTag/index.d.ts +0 -1
- package/hooks/useTag/useTag.d.ts +0 -3
- package/hooks/useThrow/index.d.ts +0 -1
- package/hooks/useThrow/useThrow.d.ts +0 -1
- package/index.d.ts +0 -6
- package/plugins/handler/index.d.ts +0 -1
- package/plugins/handler/serverFn/index.d.ts +0 -1
- package/plugins/handler/serverFn/serverFn.d.ts +0 -2
- package/plugins/index.d.ts +0 -5
- package/plugins/main/api/api.d.ts +0 -25
- package/plugins/main/api/index.d.ts +0 -1
- package/plugins/main/body/body.d.ts +0 -5
- package/plugins/main/body/index.d.ts +0 -1
- package/plugins/main/contact/contact.d.ts +0 -10
- package/plugins/main/contact/index.d.ts +0 -1
- package/plugins/main/endpoint/endpoint.d.ts +0 -43
- package/plugins/main/endpoint/index.d.ts +0 -1
- package/plugins/main/host/host.d.ts +0 -16
- package/plugins/main/host/index.d.ts +0 -1
- package/plugins/main/index.d.ts +0 -13
- package/plugins/main/license/index.d.ts +0 -1
- package/plugins/main/license/license.d.ts +0 -21
- package/plugins/main/param/index.d.ts +0 -1
- package/plugins/main/param/param.d.ts +0 -36
- package/plugins/main/preset/index.d.ts +0 -1
- package/plugins/main/preset/preset.d.ts +0 -3
- package/plugins/main/response/index.d.ts +0 -1
- package/plugins/main/response/response.d.ts +0 -21
- package/plugins/main/return/index.d.ts +0 -1
- package/plugins/main/return/return.d.ts +0 -4
- package/plugins/main/server/index.d.ts +0 -1
- package/plugins/main/server/server.d.ts +0 -13
- package/plugins/main/tag/index.d.ts +0 -1
- package/plugins/main/tag/tag.d.ts +0 -19
- package/plugins/main/variable/index.d.ts +0 -1
- package/plugins/main/variable/variable.d.ts +0 -24
- package/plugins/request/cms/cms.d.ts +0 -6
- package/plugins/request/cms/index.d.ts +0 -1
- package/plugins/request/cookie/cookie.d.ts +0 -7
- package/plugins/request/cookie/index.d.ts +0 -1
- package/plugins/request/error/error.d.ts +0 -61
- package/plugins/request/error/index.d.ts +0 -1
- package/plugins/request/file/file.d.ts +0 -5
- package/plugins/request/file/index.d.ts +0 -1
- package/plugins/request/header/header.d.ts +0 -6
- package/plugins/request/header/index.d.ts +0 -1
- package/plugins/request/index.d.ts +0 -8
- package/plugins/request/proxy/index.d.ts +0 -1
- package/plugins/request/proxy/proxy.d.ts +0 -8
- package/plugins/request/redirect/index.d.ts +0 -1
- package/plugins/request/redirect/redirect.d.ts +0 -18
- package/plugins/request/success/index.d.ts +0 -1
- package/plugins/request/success/success.d.ts +0 -19
- package/plugins/schema/any/any.d.ts +0 -5
- package/plugins/schema/any/index.d.ts +0 -1
- package/plugins/schema/array/array.d.ts +0 -9
- package/plugins/schema/array/index.d.ts +0 -1
- package/plugins/schema/binary/binary.d.ts +0 -9
- package/plugins/schema/binary/index.d.ts +0 -1
- package/plugins/schema/boolean/boolean.d.ts +0 -5
- package/plugins/schema/boolean/index.d.ts +0 -1
- package/plugins/schema/date/date.d.ts +0 -8
- package/plugins/schema/date/index.d.ts +0 -1
- package/plugins/schema/field/field.d.ts +0 -10
- package/plugins/schema/field/index.d.ts +0 -1
- package/plugins/schema/index.d.ts +0 -13
- package/plugins/schema/integer/index.d.ts +0 -1
- package/plugins/schema/integer/integer.d.ts +0 -45
- package/plugins/schema/null/index.d.ts +0 -1
- package/plugins/schema/null/null.d.ts +0 -5
- package/plugins/schema/number/index.d.ts +0 -1
- package/plugins/schema/number/number.d.ts +0 -41
- package/plugins/schema/object/index.d.ts +0 -1
- package/plugins/schema/object/object.d.ts +0 -6
- package/plugins/schema/string/index.d.ts +0 -1
- package/plugins/schema/string/string.d.ts +0 -36
- package/plugins/schema/tuple/index.d.ts +0 -1
- package/plugins/schema/tuple/tuple.d.ts +0 -6
- package/plugins/schema/uuid/index.d.ts +0 -1
- package/plugins/schema/uuid/uuid.d.ts +0 -6
- package/plugins/utils/blacklist/blacklist.d.ts +0 -5
- package/plugins/utils/blacklist/index.d.ts +0 -1
- package/plugins/utils/dts/dts.d.ts +0 -6
- package/plugins/utils/dts/index.d.ts +0 -1
- package/plugins/utils/env/env.d.ts +0 -7
- package/plugins/utils/env/index.d.ts +0 -1
- package/plugins/utils/index.d.ts +0 -7
- package/plugins/utils/protection/index.d.ts +0 -1
- package/plugins/utils/protection/protection.d.ts +0 -9
- package/plugins/utils/swagger/index.d.ts +0 -1
- package/plugins/utils/swagger/swagger.d.ts +0 -6
- package/plugins/utils/ui/index.d.ts +0 -1
- package/plugins/utils/ui/ui.d.ts +0 -13
- package/plugins/utils/whitelist/index.d.ts +0 -1
- package/plugins/utils/whitelist/whitelist.d.ts +0 -5
- package/types.d.ts +0 -69
- package/utils/FileData/Bin.d.ts +0 -47
- package/utils/FileData/index.d.ts +0 -1
- package/utils/JSONString/JSONString.d.ts +0 -1
- package/utils/JSONString/index.d.ts +0 -1
- package/utils/action/Action.d.ts +0 -31
- package/utils/action/index.d.ts +0 -1
- package/utils/dateFormat/dateFormat.d.ts +0 -2
- package/utils/dateFormat/index.d.ts +0 -1
- package/utils/decorators/index.d.ts +0 -1
- package/utils/decorators/once/index.d.ts +0 -1
- package/utils/decorators/once/once.d.ts +0 -4
- package/utils/generateTypes/generateTypes.d.ts +0 -3
- package/utils/generateTypes/index.d.ts +0 -1
- package/utils/getEndpoint/getEndpoint.d.ts +0 -2
- package/utils/getEndpoint/index.d.ts +0 -1
- package/utils/getOrAdd/getOrAdd.d.ts +0 -1
- package/utils/getOrAdd/index.d.ts +0 -1
- package/utils/httpOnStart/httpOnStart.d.ts +0 -2
- package/utils/httpOnStart/index.d.ts +0 -1
- package/utils/index.d.ts +0 -13
- package/utils/parseBody/index.d.ts +0 -1
- package/utils/parseBody/parseBody.d.ts +0 -2
- package/utils/parseFormBody/index.d.ts +0 -1
- package/utils/parseFormBody/parseFormBody.d.ts +0 -2
- package/utils/parseSearch/index.d.ts +0 -1
- package/utils/parseSearch/parseSearch.d.ts +0 -3
- package/utils/rules/arrayOf/arrayOf.d.ts +0 -2
- package/utils/rules/arrayOf/index.d.ts +0 -1
- package/utils/rules/bin/bin.d.ts +0 -2
- package/utils/rules/bin/index.d.ts +0 -1
- package/utils/rules/binaryAccept/binaryAccept.d.ts +0 -2
- package/utils/rules/binaryAccept/index.d.ts +0 -1
- package/utils/rules/constants.d.ts +0 -1
- package/utils/rules/dateTo/dateTo.d.ts +0 -2
- package/utils/rules/dateTo/index.d.ts +0 -1
- package/utils/rules/defaultTo/defaultTo.d.ts +0 -1
- package/utils/rules/defaultTo/index.d.ts +0 -1
- package/utils/rules/helpers.d.ts +0 -8
- package/utils/rules/index.d.ts +0 -28
- package/utils/rules/int/index.d.ts +0 -1
- package/utils/rules/int/int.d.ts +0 -2
- package/utils/rules/max/index.d.ts +0 -1
- package/utils/rules/max/max.d.ts +0 -1
- package/utils/rules/maxBin/index.d.ts +0 -1
- package/utils/rules/maxBin/maxBin.d.ts +0 -2
- package/utils/rules/maxDate/index.d.ts +0 -1
- package/utils/rules/maxDate/maxDate.d.ts +0 -1
- package/utils/rules/maxLength/index.d.ts +0 -1
- package/utils/rules/maxLength/maxLength.d.ts +0 -1
- package/utils/rules/min/index.d.ts +0 -1
- package/utils/rules/min/min.d.ts +0 -1
- package/utils/rules/minBin/index.d.ts +0 -1
- package/utils/rules/minBin/minBin.d.ts +0 -2
- package/utils/rules/minDate/index.d.ts +0 -1
- package/utils/rules/minDate/minDate.d.ts +0 -1
- package/utils/rules/minLength/index.d.ts +0 -1
- package/utils/rules/minLength/minLength.d.ts +0 -1
- package/utils/rules/nullable/index.d.ts +0 -1
- package/utils/rules/nullable/nullable.d.ts +0 -1
- package/utils/rules/num/index.d.ts +0 -1
- package/utils/rules/num/num.d.ts +0 -1
- package/utils/rules/objectOf/index.d.ts +0 -1
- package/utils/rules/objectOf/objectOf.d.ts +0 -3
- package/utils/rules/oneOf/index.d.ts +0 -1
- package/utils/rules/oneOf/oneOf.d.ts +0 -2
- package/utils/rules/optional/index.d.ts +0 -1
- package/utils/rules/optional/optional.d.ts +0 -2
- package/utils/rules/pattern/index.d.ts +0 -1
- package/utils/rules/pattern/pattern.d.ts +0 -1
- package/utils/rules/pipe/index.d.ts +0 -1
- package/utils/rules/pipe/pipe.d.ts +0 -2
- package/utils/rules/required/index.d.ts +0 -1
- package/utils/rules/required/required.d.ts +0 -2
- package/utils/rules/tupleOf/index.d.ts +0 -1
- package/utils/rules/tupleOf/tupleOf.d.ts +0 -2
- package/utils/rules/types.d.ts +0 -4
- package/utils/rules/uuidTo/index.d.ts +0 -1
- package/utils/rules/uuidTo/uuidTo.d.ts +0 -1
- package/utils/rules/values/index.d.ts +0 -1
- package/utils/rules/values/values.d.ts +0 -1
- package/utils/stringifySearch/index.d.ts +0 -1
- package/utils/stringifySearch/stringifySearch.d.ts +0 -2
|
@@ -17,7 +17,6 @@ function useNewSchema(schema = Object.create(null)) {
|
|
|
17
17
|
else if (parentSchema.type || '$ref' in parentSchema) {
|
|
18
18
|
const oldSchema = { ...parentSchema };
|
|
19
19
|
for (const key in parentSchema) {
|
|
20
|
-
// @ts-expect-error: FIXME
|
|
21
20
|
delete parentSchema[key];
|
|
22
21
|
}
|
|
23
22
|
parentSchema.oneOf = [oldSchema, schema];
|
|
@@ -21,7 +21,6 @@ function useNewSchema(schema = Object.create(null)) {
|
|
|
21
21
|
else if (parentSchema.type || '$ref' in parentSchema) {
|
|
22
22
|
const oldSchema = { ...parentSchema };
|
|
23
23
|
for (const key in parentSchema) {
|
|
24
|
-
// @ts-expect-error: FIXME
|
|
25
24
|
delete parentSchema[key];
|
|
26
25
|
}
|
|
27
26
|
parentSchema.oneOf = [oldSchema, schema];
|
package/index.es6.js
CHANGED
|
@@ -86,6 +86,7 @@ export { once } from './utils/decorators/once/once.es6.js';
|
|
|
86
86
|
export { generateSchemaTypes, generateTypes } from './utils/generateTypes/generateTypes.es6.js';
|
|
87
87
|
export { getEndpoint } from './utils/getEndpoint/getEndpoint.es6.js';
|
|
88
88
|
export { getOrAdd } from './utils/getOrAdd/getOrAdd.es6.js';
|
|
89
|
+
export { getSafeSchema } from './utils/getSafeSchema/getSafeSchema.es6.js';
|
|
89
90
|
export { httpOnStart } from './utils/httpOnStart/httpOnStart.es6.js';
|
|
90
91
|
export { parseBody } from './utils/parseBody/parseBody.es6.js';
|
|
91
92
|
export { parseFormBody } from './utils/parseFormBody/parseFormBody.es6.js';
|
package/index.js
CHANGED
|
@@ -90,6 +90,7 @@ var once = require('./utils/decorators/once/once.js');
|
|
|
90
90
|
var generateTypes = require('./utils/generateTypes/generateTypes.js');
|
|
91
91
|
var getEndpoint = require('./utils/getEndpoint/getEndpoint.js');
|
|
92
92
|
var getOrAdd = require('./utils/getOrAdd/getOrAdd.js');
|
|
93
|
+
var getSafeSchema = require('./utils/getSafeSchema/getSafeSchema.js');
|
|
93
94
|
var httpOnStart = require('./utils/httpOnStart/httpOnStart.js');
|
|
94
95
|
var parseBody = require('./utils/parseBody/parseBody.js');
|
|
95
96
|
var parseFormBody = require('./utils/parseFormBody/parseFormBody.js');
|
|
@@ -240,6 +241,7 @@ exports.generateSchemaTypes = generateTypes.generateSchemaTypes;
|
|
|
240
241
|
exports.generateTypes = generateTypes.generateTypes;
|
|
241
242
|
exports.getEndpoint = getEndpoint.getEndpoint;
|
|
242
243
|
exports.getOrAdd = getOrAdd.getOrAdd;
|
|
244
|
+
exports.getSafeSchema = getSafeSchema.getSafeSchema;
|
|
243
245
|
exports.httpOnStart = httpOnStart.httpOnStart;
|
|
244
246
|
exports.parseBody = parseBody.parseBody;
|
|
245
247
|
exports.parseFormBody = parseFormBody.parseFormBody;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@innet/server",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.8",
|
|
4
4
|
"description": "Create server-side application with innet",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "index.es6.js",
|
|
@@ -53,7 +53,6 @@
|
|
|
53
53
|
"string_decoder": "^1.3.0",
|
|
54
54
|
"tslib": "^2.8.1",
|
|
55
55
|
"uuid": "^13.0.0",
|
|
56
|
-
"watch-state": "^3.6.2"
|
|
57
|
-
"youch": "^4.1.0"
|
|
56
|
+
"watch-state": "^3.6.2"
|
|
58
57
|
}
|
|
59
58
|
}
|
|
@@ -46,9 +46,7 @@ const endpoint = () => {
|
|
|
46
46
|
endpoints[method] = { key: '', plugins: new Set() };
|
|
47
47
|
}
|
|
48
48
|
const endpoint = getEndpoint(path, endpoints[method]);
|
|
49
|
-
// @ts-expect-error: it's always an object
|
|
50
49
|
endpointContext.set(handler, { endpoint, operation, props });
|
|
51
|
-
// @ts-expect-error: it's always an object
|
|
52
50
|
serverPlugins.set(handler, endpoint.plugins);
|
|
53
51
|
innet(children, handler);
|
|
54
52
|
};
|
|
@@ -50,9 +50,7 @@ const endpoint = () => {
|
|
|
50
50
|
endpoints[method] = { key: '', plugins: new Set() };
|
|
51
51
|
}
|
|
52
52
|
const endpoint = getEndpoint.getEndpoint(path, endpoints[method]);
|
|
53
|
-
// @ts-expect-error: it's always an object
|
|
54
53
|
useEndpoint.endpointContext.set(handler, { endpoint, operation, props });
|
|
55
|
-
// @ts-expect-error: it's always an object
|
|
56
54
|
useServerPlugins.serverPlugins.set(handler, endpoint.plugins);
|
|
57
55
|
innet.innet(children, handler);
|
|
58
56
|
};
|
package/plugins/main/tag/tag.js
CHANGED
|
@@ -4,13 +4,10 @@ import { useHost } from '../../../hooks/useHost/useHost.es6.js';
|
|
|
4
4
|
|
|
5
5
|
const variable = () => {
|
|
6
6
|
const { server } = useHost();
|
|
7
|
-
const { key, values,
|
|
8
|
-
// predefine
|
|
9
|
-
value = values === null || values === void 0 ? void 0 : values[0], ...rest } = useProps();
|
|
7
|
+
const { key, values, value = values === null || values === void 0 ? void 0 : values[0], ...rest } = useProps();
|
|
10
8
|
if (!server.variables) {
|
|
11
9
|
server.variables = {};
|
|
12
10
|
}
|
|
13
|
-
// @ts-expect-error: FIXME
|
|
14
11
|
server.variables[key] = { ...rest, default: value, enum: values };
|
|
15
12
|
};
|
|
16
13
|
|
|
@@ -8,13 +8,10 @@ var useHost = require('../../../hooks/useHost/useHost.js');
|
|
|
8
8
|
|
|
9
9
|
const variable = () => {
|
|
10
10
|
const { server } = useHost.useHost();
|
|
11
|
-
const { key, values,
|
|
12
|
-
// predefine
|
|
13
|
-
value = values === null || values === void 0 ? void 0 : values[0], ...rest } = jsx.useProps();
|
|
11
|
+
const { key, values, value = values === null || values === void 0 ? void 0 : values[0], ...rest } = jsx.useProps();
|
|
14
12
|
if (!server.variables) {
|
|
15
13
|
server.variables = {};
|
|
16
14
|
}
|
|
17
|
-
// @ts-expect-error: FIXME
|
|
18
15
|
server.variables[key] = { ...rest, default: value, enum: values };
|
|
19
16
|
};
|
|
20
17
|
|
|
@@ -21,14 +21,12 @@ const date = () => {
|
|
|
21
21
|
const normDefault = dateFormat(defaultValue);
|
|
22
22
|
const normExample = dateFormat(example);
|
|
23
23
|
const normValues = values$1 === null || values$1 === void 0 ? void 0 : values$1.map(dateFormat);
|
|
24
|
-
// @ts-expect-error: FIXME
|
|
25
24
|
const stringValues = normValues === null || normValues === void 0 ? void 0 : normValues.map(value => value.toISOString());
|
|
26
25
|
const normExamples = examples === null || examples === void 0 ? void 0 : examples.map(dateFormat);
|
|
27
26
|
const schema = useSchemaType('string', {
|
|
28
27
|
...props,
|
|
29
28
|
default: defaultValue === 'now' ? undefined : normDefault === null || normDefault === void 0 ? void 0 : normDefault.toISOString(),
|
|
30
29
|
example: normExample === null || normExample === void 0 ? void 0 : normExample.toISOString(),
|
|
31
|
-
// @ts-expect-error: FIXME
|
|
32
30
|
examples: normExamples === null || normExamples === void 0 ? void 0 : normExamples.map(example => example.toISOString()),
|
|
33
31
|
values: stringValues,
|
|
34
32
|
});
|
|
@@ -40,20 +38,16 @@ const date = () => {
|
|
|
40
38
|
if (stringValues) {
|
|
41
39
|
rules.push((value, data) => values(stringValues)(value.toISOString(), data));
|
|
42
40
|
}
|
|
43
|
-
// @ts-expect-error: FIXME
|
|
44
41
|
schema.format = 'date-time';
|
|
45
42
|
if (normMin) {
|
|
46
|
-
// @ts-expect-error: FIXME
|
|
47
43
|
schema['x-minimum'] = normMin.toISOString();
|
|
48
44
|
rules.push(minDate(normMin));
|
|
49
45
|
}
|
|
50
46
|
if (normMax) {
|
|
51
|
-
// @ts-expect-error: FIXME
|
|
52
47
|
schema['x-maximum'] = normMax.toISOString();
|
|
53
48
|
rules.push(maxDate(normMax));
|
|
54
49
|
}
|
|
55
50
|
if (defaultValue === 'now') {
|
|
56
|
-
// @ts-expect-error: FIXME
|
|
57
51
|
schema['x-default'] = 'now';
|
|
58
52
|
}
|
|
59
53
|
if (defaultValue === undefined) {
|
|
@@ -25,14 +25,12 @@ const date = () => {
|
|
|
25
25
|
const normDefault = dateFormat.dateFormat(defaultValue);
|
|
26
26
|
const normExample = dateFormat.dateFormat(example);
|
|
27
27
|
const normValues = values$1 === null || values$1 === void 0 ? void 0 : values$1.map(dateFormat.dateFormat);
|
|
28
|
-
// @ts-expect-error: FIXME
|
|
29
28
|
const stringValues = normValues === null || normValues === void 0 ? void 0 : normValues.map(value => value.toISOString());
|
|
30
29
|
const normExamples = examples === null || examples === void 0 ? void 0 : examples.map(dateFormat.dateFormat);
|
|
31
30
|
const schema = useSchemaType.useSchemaType('string', {
|
|
32
31
|
...props,
|
|
33
32
|
default: defaultValue === 'now' ? undefined : normDefault === null || normDefault === void 0 ? void 0 : normDefault.toISOString(),
|
|
34
33
|
example: normExample === null || normExample === void 0 ? void 0 : normExample.toISOString(),
|
|
35
|
-
// @ts-expect-error: FIXME
|
|
36
34
|
examples: normExamples === null || normExamples === void 0 ? void 0 : normExamples.map(example => example.toISOString()),
|
|
37
35
|
values: stringValues,
|
|
38
36
|
});
|
|
@@ -44,20 +42,16 @@ const date = () => {
|
|
|
44
42
|
if (stringValues) {
|
|
45
43
|
rules.push((value, data) => values.values(stringValues)(value.toISOString(), data));
|
|
46
44
|
}
|
|
47
|
-
// @ts-expect-error: FIXME
|
|
48
45
|
schema.format = 'date-time';
|
|
49
46
|
if (normMin) {
|
|
50
|
-
// @ts-expect-error: FIXME
|
|
51
47
|
schema['x-minimum'] = normMin.toISOString();
|
|
52
48
|
rules.push(minDate.minDate(normMin));
|
|
53
49
|
}
|
|
54
50
|
if (normMax) {
|
|
55
|
-
// @ts-expect-error: FIXME
|
|
56
51
|
schema['x-maximum'] = normMax.toISOString();
|
|
57
52
|
rules.push(maxDate.maxDate(normMax));
|
|
58
53
|
}
|
|
59
54
|
if (defaultValue === 'now') {
|
|
60
|
-
// @ts-expect-error: FIXME
|
|
61
55
|
schema['x-default'] = 'now';
|
|
62
56
|
}
|
|
63
57
|
if (defaultValue === undefined) {
|
|
@@ -2,6 +2,7 @@ import { useNewHandler, innet } from 'innet';
|
|
|
2
2
|
import { useProps } from '@innet/jsx';
|
|
3
3
|
import '../../../hooks/index.es6.js';
|
|
4
4
|
import '../../../utils/index.es6.js';
|
|
5
|
+
import { getSafeSchema } from '../../../utils/getSafeSchema/getSafeSchema.es6.js';
|
|
5
6
|
import { useObjectSchemaContext } from '../../../hooks/useObjectSchemaContext/useObjectSchemaContext.es6.js';
|
|
6
7
|
import { schemaContext } from '../../../hooks/useSchemaContext/useSchemaContext.es6.js';
|
|
7
8
|
import { useObjectRule, objectRuleContext } from '../../../hooks/useObjectRule/useObjectRule.es6.js';
|
|
@@ -11,7 +12,7 @@ import { required } from '../../../utils/rules/required/required.es6.js';
|
|
|
11
12
|
const field = () => {
|
|
12
13
|
const handler = useNewHandler();
|
|
13
14
|
const { children, deprecated, key, optional, readOnly, writeOnly, } = useProps();
|
|
14
|
-
const schema = useObjectSchemaContext();
|
|
15
|
+
const schema = getSafeSchema(useObjectSchemaContext());
|
|
15
16
|
if (!schema.properties) {
|
|
16
17
|
schema.properties = {};
|
|
17
18
|
}
|
|
@@ -6,6 +6,7 @@ var innet = require('innet');
|
|
|
6
6
|
var jsx = require('@innet/jsx');
|
|
7
7
|
require('../../../hooks/index.js');
|
|
8
8
|
require('../../../utils/index.js');
|
|
9
|
+
var getSafeSchema = require('../../../utils/getSafeSchema/getSafeSchema.js');
|
|
9
10
|
var useObjectSchemaContext = require('../../../hooks/useObjectSchemaContext/useObjectSchemaContext.js');
|
|
10
11
|
var useSchemaContext = require('../../../hooks/useSchemaContext/useSchemaContext.js');
|
|
11
12
|
var useObjectRule = require('../../../hooks/useObjectRule/useObjectRule.js');
|
|
@@ -15,7 +16,7 @@ var required = require('../../../utils/rules/required/required.js');
|
|
|
15
16
|
const field = () => {
|
|
16
17
|
const handler = innet.useNewHandler();
|
|
17
18
|
const { children, deprecated, key, optional, readOnly, writeOnly, } = jsx.useProps();
|
|
18
|
-
const schema = useObjectSchemaContext.useObjectSchemaContext();
|
|
19
|
+
const schema = getSafeSchema.getSafeSchema(useObjectSchemaContext.useObjectSchemaContext());
|
|
19
20
|
if (!schema.properties) {
|
|
20
21
|
schema.properties = {};
|
|
21
22
|
}
|
|
@@ -15,6 +15,7 @@ import { pipe } from '../../../utils/rules/pipe/pipe.es6.js';
|
|
|
15
15
|
import { useRule, ruleContext } from '../../../hooks/useRule/useRule.es6.js';
|
|
16
16
|
import { objectRuleContext } from '../../../hooks/useObjectRule/useObjectRule.es6.js';
|
|
17
17
|
import { useEffect } from '../../../hooks/useEffect/useEffect.es6.js';
|
|
18
|
+
import { getSafeSchema } from '../../../utils/getSafeSchema/getSafeSchema.es6.js';
|
|
18
19
|
|
|
19
20
|
const object = () => {
|
|
20
21
|
useBlock('path');
|
|
@@ -53,8 +54,9 @@ const object = () => {
|
|
|
53
54
|
parentRuleContext.reset(handler);
|
|
54
55
|
innet(children, handler);
|
|
55
56
|
useEffect(() => {
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
const safeSchema = getSafeSchema(schema);
|
|
58
|
+
if (!Object.keys(safeSchema.additionalProperties).length) {
|
|
59
|
+
delete safeSchema.additionalProperties;
|
|
58
60
|
}
|
|
59
61
|
});
|
|
60
62
|
}
|
|
@@ -19,6 +19,7 @@ var pipe = require('../../../utils/rules/pipe/pipe.js');
|
|
|
19
19
|
var useRule = require('../../../hooks/useRule/useRule.js');
|
|
20
20
|
var useObjectRule = require('../../../hooks/useObjectRule/useObjectRule.js');
|
|
21
21
|
var useEffect = require('../../../hooks/useEffect/useEffect.js');
|
|
22
|
+
var getSafeSchema = require('../../../utils/getSafeSchema/getSafeSchema.js');
|
|
22
23
|
|
|
23
24
|
const object = () => {
|
|
24
25
|
useBlock.useBlock('path');
|
|
@@ -57,8 +58,9 @@ const object = () => {
|
|
|
57
58
|
useParentRule.parentRuleContext.reset(handler);
|
|
58
59
|
innet.innet(children, handler);
|
|
59
60
|
useEffect.useEffect(() => {
|
|
60
|
-
|
|
61
|
-
|
|
61
|
+
const safeSchema = getSafeSchema.getSafeSchema(schema);
|
|
62
|
+
if (!Object.keys(safeSchema.additionalProperties).length) {
|
|
63
|
+
delete safeSchema.additionalProperties;
|
|
62
64
|
}
|
|
63
65
|
});
|
|
64
66
|
}
|
|
@@ -16,10 +16,8 @@ const uuid = () => {
|
|
|
16
16
|
...props,
|
|
17
17
|
default: defaultValue === 'new' ? undefined : defaultValue,
|
|
18
18
|
});
|
|
19
|
-
// @ts-expect-error: FIXME
|
|
20
19
|
schema.format = 'uuid';
|
|
21
20
|
if (defaultValue === 'new') {
|
|
22
|
-
// @ts-expect-error: FIXME
|
|
23
21
|
schema['x-default'] = defaultValue;
|
|
24
22
|
}
|
|
25
23
|
const rules = [];
|
|
@@ -20,10 +20,8 @@ const uuid = () => {
|
|
|
20
20
|
...props,
|
|
21
21
|
default: defaultValue === 'new' ? undefined : defaultValue,
|
|
22
22
|
});
|
|
23
|
-
// @ts-expect-error: FIXME
|
|
24
23
|
schema.format = 'uuid';
|
|
25
24
|
if (defaultValue === 'new') {
|
|
26
|
-
// @ts-expect-error: FIXME
|
|
27
25
|
schema['x-default'] = defaultValue;
|
|
28
26
|
}
|
|
29
27
|
const rules = [];
|
|
@@ -5,7 +5,6 @@ import { useApi } from '../../../hooks/useApi/useApi.es6.js';
|
|
|
5
5
|
import { useServerPlugin } from '../../../hooks/useServerPlugin/useServerPlugin.es6.js';
|
|
6
6
|
import { useAction } from '../../../hooks/useAction/useAction.es6.js';
|
|
7
7
|
|
|
8
|
-
/** @deprecated Use <ui> */
|
|
9
8
|
const swagger = () => {
|
|
10
9
|
const { path = process.env.INNET_SWAGGER_PATH || '/swagger-ui', } = useProps() || {};
|
|
11
10
|
const { docs, prefix, } = useApi();
|
|
@@ -9,7 +9,6 @@ var useApi = require('../../../hooks/useApi/useApi.js');
|
|
|
9
9
|
var useServerPlugin = require('../../../hooks/useServerPlugin/useServerPlugin.js');
|
|
10
10
|
var useAction = require('../../../hooks/useAction/useAction.js');
|
|
11
11
|
|
|
12
|
-
/** @deprecated Use <ui> */
|
|
13
12
|
const swagger = () => {
|
|
14
13
|
const { path = process.env.INNET_SWAGGER_PATH || '/swagger-ui', } = jsx.useProps() || {};
|
|
15
14
|
const { docs, prefix, } = useApi.useApi();
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
const secretKey = Symbol('once');
|
|
2
2
|
function getCacheObject(target) {
|
|
3
|
-
// @ts-expect-error: FIXME
|
|
4
3
|
return target[secretKey] || (target[secretKey] = {});
|
|
5
4
|
}
|
|
6
5
|
function once(target, context) {
|
|
@@ -10,17 +9,14 @@ function once(target, context) {
|
|
|
10
9
|
return function () {
|
|
11
10
|
if (cache !== secretKey)
|
|
12
11
|
return cache;
|
|
13
|
-
// @ts-expect-error: FIXME
|
|
14
12
|
return (cache = ('apply' in fn ? fn.apply(this, arguments) : fn(...arguments)));
|
|
15
13
|
};
|
|
16
14
|
}
|
|
17
15
|
: function once() {
|
|
18
|
-
// @ts-expect-error: FIXME
|
|
19
16
|
const map = getCacheObject(this);
|
|
20
17
|
if (context.name in map) {
|
|
21
18
|
return map[context.name];
|
|
22
19
|
}
|
|
23
|
-
// @ts-expect-error: FIXME
|
|
24
20
|
return (map[context.name] = target.apply(this, arguments));
|
|
25
21
|
};
|
|
26
22
|
}
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const secretKey = Symbol('once');
|
|
6
6
|
function getCacheObject(target) {
|
|
7
|
-
// @ts-expect-error: FIXME
|
|
8
7
|
return target[secretKey] || (target[secretKey] = {});
|
|
9
8
|
}
|
|
10
9
|
function once(target, context) {
|
|
@@ -14,17 +13,14 @@ function once(target, context) {
|
|
|
14
13
|
return function () {
|
|
15
14
|
if (cache !== secretKey)
|
|
16
15
|
return cache;
|
|
17
|
-
// @ts-expect-error: FIXME
|
|
18
16
|
return (cache = ('apply' in fn ? fn.apply(this, arguments) : fn(...arguments)));
|
|
19
17
|
};
|
|
20
18
|
}
|
|
21
19
|
: function once() {
|
|
22
|
-
// @ts-expect-error: FIXME
|
|
23
20
|
const map = getCacheObject(this);
|
|
24
21
|
if (context.name in map) {
|
|
25
22
|
return map[context.name];
|
|
26
23
|
}
|
|
27
|
-
// @ts-expect-error: FIXME
|
|
28
24
|
return (map[context.name] = target.apply(this, arguments));
|
|
29
25
|
};
|
|
30
26
|
}
|
|
@@ -95,7 +95,6 @@ function generateTypes(docs, namespace = 'Api') {
|
|
|
95
95
|
for (const path in paths) {
|
|
96
96
|
const pathObject = paths[path];
|
|
97
97
|
for (const method in pathObject) {
|
|
98
|
-
// @ts-expect-error: FIXME
|
|
99
98
|
const endpoint = pathObject[method];
|
|
100
99
|
const parameters = endpoint.parameters;
|
|
101
100
|
const requestBody = endpoint.requestBody;
|
|
@@ -99,7 +99,6 @@ function generateTypes(docs, namespace = 'Api') {
|
|
|
99
99
|
for (const path in paths) {
|
|
100
100
|
const pathObject = paths[path];
|
|
101
101
|
for (const method in pathObject) {
|
|
102
|
-
// @ts-expect-error: FIXME
|
|
103
102
|
const endpoint = pathObject[method];
|
|
104
103
|
const parameters = endpoint.parameters;
|
|
105
104
|
const requestBody = endpoint.requestBody;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { getSafeSchema } from './getSafeSchema.es6.js';
|
package/utils/index.es6.js
CHANGED
|
@@ -5,6 +5,7 @@ import './decorators/index.es6.js';
|
|
|
5
5
|
import './generateTypes/index.es6.js';
|
|
6
6
|
import './getEndpoint/index.es6.js';
|
|
7
7
|
import './getOrAdd/index.es6.js';
|
|
8
|
+
import './getSafeSchema/index.es6.js';
|
|
8
9
|
import './httpOnStart/index.es6.js';
|
|
9
10
|
import './parseBody/index.es6.js';
|
|
10
11
|
import './parseFormBody/index.es6.js';
|
package/utils/index.js
CHANGED
|
@@ -7,6 +7,7 @@ require('./decorators/index.js');
|
|
|
7
7
|
require('./generateTypes/index.js');
|
|
8
8
|
require('./getEndpoint/index.js');
|
|
9
9
|
require('./getOrAdd/index.js');
|
|
10
|
+
require('./getSafeSchema/index.js');
|
|
10
11
|
require('./httpOnStart/index.js');
|
|
11
12
|
require('./parseBody/index.js');
|
|
12
13
|
require('./parseFormBody/index.js');
|
package/constants.d.ts
DELETED
package/handler/handler.d.ts
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { type JSXElement } from '@innet/jsx';
|
|
2
|
-
import { arraySync, async } from '@innet/utils';
|
|
3
|
-
import { type AnyProps, type ApiProps, type ArrayProps, type BinaryProps, blacklist, type BlacklistProps, type BodyProps, type BooleanProps, cms, type CmsProps, type ContactProps, type CookieProps, type DateProps, type DtsProps, type EndpointProps, type EnvProps, type ErrorProps, type FieldProps, file, type FileProps, type HeaderProps, type HostProps, type IntegerProps, type LicenseProps, type NullProps, type NumberProps, type ObjectProps, type ParamProps, preset, type PresetProps, protection, type ProtectionProps, type ProxyProps, type RedirectProps, type ResponseProps, type ReturnProps, type ServerProps, type StringProps, type SuccessProps, type SwaggerProps, type TagProps, type TupleProps, type UiProps, type UuidProps, type VariableProps, whitelist, type WhitelistProps } from '../plugins';
|
|
4
|
-
export declare const arrayPlugins: (typeof arraySync)[];
|
|
5
|
-
export declare const JSXPlugins: {
|
|
6
|
-
any: import("innet").HandlerPlugin;
|
|
7
|
-
api: import("innet").HandlerPlugin;
|
|
8
|
-
array: import("innet").HandlerPlugin;
|
|
9
|
-
binary: import("innet").HandlerPlugin;
|
|
10
|
-
blacklist: typeof blacklist;
|
|
11
|
-
body: import("innet").HandlerPlugin;
|
|
12
|
-
boolean: import("innet").HandlerPlugin;
|
|
13
|
-
cms: typeof cms;
|
|
14
|
-
contact: import("innet").HandlerPlugin;
|
|
15
|
-
cookie: import("innet").HandlerPlugin;
|
|
16
|
-
date: import("innet").HandlerPlugin;
|
|
17
|
-
dts: import("innet").HandlerPlugin;
|
|
18
|
-
endpoint: import("innet").HandlerPlugin;
|
|
19
|
-
env: import("innet").HandlerPlugin;
|
|
20
|
-
error: import("innet").HandlerPlugin;
|
|
21
|
-
field: import("innet").HandlerPlugin;
|
|
22
|
-
file: typeof file;
|
|
23
|
-
header: import("innet").HandlerPlugin;
|
|
24
|
-
host: import("innet").HandlerPlugin;
|
|
25
|
-
integer: import("innet").HandlerPlugin;
|
|
26
|
-
license: import("innet").HandlerPlugin;
|
|
27
|
-
null: import("innet").HandlerPlugin;
|
|
28
|
-
number: import("innet").HandlerPlugin;
|
|
29
|
-
object: import("innet").HandlerPlugin;
|
|
30
|
-
param: import("innet").HandlerPlugin;
|
|
31
|
-
preset: typeof preset;
|
|
32
|
-
protection: typeof protection;
|
|
33
|
-
proxy: import("innet").HandlerPlugin;
|
|
34
|
-
redirect: import("innet").HandlerPlugin;
|
|
35
|
-
response: import("innet").HandlerPlugin;
|
|
36
|
-
return: import("innet").HandlerPlugin;
|
|
37
|
-
server: import("innet").HandlerPlugin;
|
|
38
|
-
string: import("innet").HandlerPlugin;
|
|
39
|
-
success: import("innet").HandlerPlugin;
|
|
40
|
-
swagger: import("innet").HandlerPlugin;
|
|
41
|
-
tag: import("innet").HandlerPlugin;
|
|
42
|
-
tuple: import("innet").HandlerPlugin;
|
|
43
|
-
ui: import("innet").HandlerPlugin;
|
|
44
|
-
uuid: import("innet").HandlerPlugin;
|
|
45
|
-
variable: import("innet").HandlerPlugin;
|
|
46
|
-
whitelist: typeof whitelist;
|
|
47
|
-
};
|
|
48
|
-
export declare const fnPlugins: import("innet").Plugin[];
|
|
49
|
-
export declare const objectPlugins: import("innet").Plugin[];
|
|
50
|
-
export declare const promisePlugins: (typeof async)[];
|
|
51
|
-
export declare const handler: import("innet").Handler;
|
|
52
|
-
declare global {
|
|
53
|
-
namespace JSX {
|
|
54
|
-
type Element = ({} & string) | ArrayElement | FunctionElement | JSXElement | boolean | null | number | undefined;
|
|
55
|
-
interface ArrayElement extends Array<Element> {
|
|
56
|
-
}
|
|
57
|
-
type FunctionElement = () => Element;
|
|
58
|
-
interface ElementChildrenAttribute {
|
|
59
|
-
children: {};
|
|
60
|
-
}
|
|
61
|
-
interface IntrinsicElements {
|
|
62
|
-
any: AnyProps;
|
|
63
|
-
api: ApiProps;
|
|
64
|
-
array: ArrayProps;
|
|
65
|
-
binary: BinaryProps;
|
|
66
|
-
blacklist: BlacklistProps;
|
|
67
|
-
body: BodyProps;
|
|
68
|
-
boolean: BooleanProps;
|
|
69
|
-
cms: CmsProps;
|
|
70
|
-
contact: ContactProps;
|
|
71
|
-
cookie: CookieProps;
|
|
72
|
-
date: DateProps;
|
|
73
|
-
dts: DtsProps;
|
|
74
|
-
endpoint: EndpointProps;
|
|
75
|
-
env: EnvProps;
|
|
76
|
-
error: ErrorProps;
|
|
77
|
-
field: FieldProps;
|
|
78
|
-
file: FileProps;
|
|
79
|
-
header: HeaderProps;
|
|
80
|
-
host: HostProps;
|
|
81
|
-
integer: IntegerProps;
|
|
82
|
-
license: LicenseProps;
|
|
83
|
-
null: NullProps;
|
|
84
|
-
number: NumberProps;
|
|
85
|
-
object: ObjectProps;
|
|
86
|
-
param: ParamProps;
|
|
87
|
-
preset: PresetProps;
|
|
88
|
-
protection: ProtectionProps;
|
|
89
|
-
proxy: ProxyProps;
|
|
90
|
-
redirect: RedirectProps;
|
|
91
|
-
response: ResponseProps;
|
|
92
|
-
return: ReturnProps;
|
|
93
|
-
server: ServerProps;
|
|
94
|
-
string: StringProps;
|
|
95
|
-
success: SuccessProps;
|
|
96
|
-
/** @deprecated Use <ui> */
|
|
97
|
-
swagger: SwaggerProps;
|
|
98
|
-
tag: TagProps;
|
|
99
|
-
tuple: TupleProps;
|
|
100
|
-
ui: UiProps;
|
|
101
|
-
uuid: UuidProps;
|
|
102
|
-
variable: VariableProps;
|
|
103
|
-
whitelist: WhitelistProps;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
package/handler/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './handler';
|