@imbricate/core 1.17.1 → 1.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/capability/validate.d.ts +19 -0
- package/capability/validate.js +39 -0
- package/collection/interface.d.ts +1 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/origin/definition.d.ts +0 -1
- package/origin/interface.d.ts +2 -0
- package/package.json +6 -4
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author WMXPY
|
|
3
|
+
* @namespace Capability
|
|
4
|
+
* @description Validate
|
|
5
|
+
*/
|
|
6
|
+
import { IMBRICATE_COLLECTION_CAPABILITY_KEY } from "../collection/definition";
|
|
7
|
+
import { IImbricateOriginCollection } from "../collection/interface";
|
|
8
|
+
import { IMBRICATE_ORIGIN_CAPABILITY_KEY } from "../origin/definition";
|
|
9
|
+
import { IImbricateOrigin } from "../origin/interface";
|
|
10
|
+
import { IMBRICATE_PAGE_CAPABILITY_KEY } from "../page/definition";
|
|
11
|
+
import { IImbricatePage } from "../page/interface";
|
|
12
|
+
import { IMBRICATE_SCRIPT_CAPABILITY_KEY } from "../script/definition";
|
|
13
|
+
import { IImbricateScript } from "../script/interface";
|
|
14
|
+
import { ImbricateCapability } from "./definition";
|
|
15
|
+
export declare const validateImbricateCapability: <CapabilityRecords extends Record<string, ImbricateCapability>, KeySet extends keyof CapabilityRecords>(capabilities: CapabilityRecords, capability: KeySet) => boolean;
|
|
16
|
+
export declare const validateImbricateOriginCapability: (origin: IImbricateOrigin, capability: IMBRICATE_ORIGIN_CAPABILITY_KEY) => boolean;
|
|
17
|
+
export declare const validateImbricateCollectionCapability: (collection: IImbricateOriginCollection, capability: IMBRICATE_COLLECTION_CAPABILITY_KEY) => boolean;
|
|
18
|
+
export declare const validateImbricatePageCapability: (page: IImbricatePage, capability: IMBRICATE_PAGE_CAPABILITY_KEY) => boolean;
|
|
19
|
+
export declare const validateImbricateScriptCapability: (script: IImbricateScript, capability: IMBRICATE_SCRIPT_CAPABILITY_KEY) => boolean;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @author WMXPY
|
|
4
|
+
* @namespace Capability
|
|
5
|
+
* @description Validate
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.validateImbricateScriptCapability = exports.validateImbricatePageCapability = exports.validateImbricateCollectionCapability = exports.validateImbricateOriginCapability = exports.validateImbricateCapability = void 0;
|
|
9
|
+
const definition_1 = require("./definition");
|
|
10
|
+
const validateImbricateCapability = (capabilities, capability) => {
|
|
11
|
+
if (!capabilities) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
if (!Array.isArray(capabilities)) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
const capabilityValue = capabilities[capability];
|
|
18
|
+
if (!capabilityValue) {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
return capabilityValue.effect === definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW;
|
|
22
|
+
};
|
|
23
|
+
exports.validateImbricateCapability = validateImbricateCapability;
|
|
24
|
+
const validateImbricateOriginCapability = (origin, capability) => {
|
|
25
|
+
return (0, exports.validateImbricateCapability)(origin.capabilities, capability);
|
|
26
|
+
};
|
|
27
|
+
exports.validateImbricateOriginCapability = validateImbricateOriginCapability;
|
|
28
|
+
const validateImbricateCollectionCapability = (collection, capability) => {
|
|
29
|
+
return (0, exports.validateImbricateCapability)(collection.capabilities, capability);
|
|
30
|
+
};
|
|
31
|
+
exports.validateImbricateCollectionCapability = validateImbricateCollectionCapability;
|
|
32
|
+
const validateImbricatePageCapability = (page, capability) => {
|
|
33
|
+
return (0, exports.validateImbricateCapability)(page.capabilities, capability);
|
|
34
|
+
};
|
|
35
|
+
exports.validateImbricatePageCapability = validateImbricatePageCapability;
|
|
36
|
+
const validateImbricateScriptCapability = (script, capability) => {
|
|
37
|
+
return (0, exports.validateImbricateCapability)(script.capabilities, capability);
|
|
38
|
+
};
|
|
39
|
+
exports.validateImbricateScriptCapability = validateImbricateScriptCapability;
|
|
@@ -10,6 +10,7 @@ import { ImbricatePageQuery, ImbricatePageQueryConfig, ImbricateSearchPageConfig
|
|
|
10
10
|
import { ImbricateCollectionCapability } from "./definition";
|
|
11
11
|
export interface IImbricateOriginCollection {
|
|
12
12
|
readonly collectionName: string;
|
|
13
|
+
readonly uniqueIdentifier: string;
|
|
13
14
|
readonly description?: string;
|
|
14
15
|
readonly capabilities: ImbricateCollectionCapability;
|
|
15
16
|
createPage(directories: string[], title: string, initialContent: string): PromiseOr<IImbricatePage>;
|
package/index.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -19,6 +19,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
19
19
|
};
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
21
|
__exportStar(require("./capability/definition"), exports);
|
|
22
|
+
__exportStar(require("./capability/validate"), exports);
|
|
22
23
|
__exportStar(require("./collection/definition"), exports);
|
|
23
24
|
__exportStar(require("./collection/interface"), exports);
|
|
24
25
|
__exportStar(require("./collection/least-common-identifier"), exports);
|
package/origin/definition.d.ts
CHANGED
|
@@ -10,7 +10,6 @@ export declare enum IMBRICATE_DIGEST_ALGORITHM {
|
|
|
10
10
|
SHA256 = "SHA256"
|
|
11
11
|
}
|
|
12
12
|
export type ImbricateOriginMetadata = {
|
|
13
|
-
readonly type: string;
|
|
14
13
|
readonly digestAlgorithm: IMBRICATE_DIGEST_ALGORITHM;
|
|
15
14
|
};
|
|
16
15
|
export type ImbricateOriginCapability = Record<IMBRICATE_ORIGIN_CAPABILITY_KEY, ImbricateCapability>;
|
package/origin/interface.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ import { ImbricateScriptMetadata, ImbricateScriptSearchResult, ImbricateScriptSn
|
|
|
11
11
|
import { IImbricateScript } from "../script/interface";
|
|
12
12
|
import { ImbricateOriginCapability, ImbricateOriginMetadata } from "./definition";
|
|
13
13
|
export interface IImbricateOrigin {
|
|
14
|
+
readonly originType: string;
|
|
15
|
+
readonly uniqueIdentifier: string;
|
|
14
16
|
readonly metadata: ImbricateOriginMetadata;
|
|
15
17
|
readonly payloads: Record<string, any>;
|
|
16
18
|
readonly capabilities: ImbricateOriginCapability;
|
package/package.json
CHANGED
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@imbricate/core",
|
|
3
3
|
"main": "index.js",
|
|
4
|
-
"version": "1.
|
|
5
|
-
"description": "Core for
|
|
4
|
+
"version": "1.18.0",
|
|
5
|
+
"description": "Imbricate Core, Notebook for Engineers",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "git+https://github.com/Imbricate/Imbricate
|
|
8
|
+
"url": "git+https://github.com/Imbricate/Imbricate.git"
|
|
9
9
|
},
|
|
10
10
|
"keywords": [
|
|
11
|
+
"Notebook",
|
|
12
|
+
"Engineer",
|
|
11
13
|
"API"
|
|
12
14
|
],
|
|
13
15
|
"author": "WMXPY",
|
|
14
16
|
"license": "MIT",
|
|
15
17
|
"bugs": {
|
|
16
|
-
"url": "https://github.com/Imbricate/Imbricate
|
|
18
|
+
"url": "https://github.com/Imbricate/Imbricate/issues"
|
|
17
19
|
},
|
|
18
20
|
"homepage": "https://imbricate.io",
|
|
19
21
|
"dependencies": {
|