@imbricate/core 1.21.0 → 1.24.1

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.
Files changed (43) hide show
  1. package/binary-storage/base.d.ts +18 -0
  2. package/binary-storage/base.js +30 -0
  3. package/binary-storage/definition.d.ts +3 -3
  4. package/binary-storage/definition.js +4 -10
  5. package/capability/builder.d.ts +12 -0
  6. package/capability/builder.js +26 -0
  7. package/capability/create.d.ts +7 -0
  8. package/capability/create.js +16 -0
  9. package/capability/definition.d.ts +4 -0
  10. package/capability/definition.js +13 -1
  11. package/capability/validate.d.ts +2 -2
  12. package/collection/base.d.ts +31 -0
  13. package/collection/base.js +54 -0
  14. package/collection/definition.d.ts +2 -2
  15. package/collection/definition.js +9 -25
  16. package/collection/interface.d.ts +7 -7
  17. package/collection/interface.js +1 -1
  18. package/error/not-implemented.d.ts +2 -2
  19. package/error/not-implemented.js +7 -7
  20. package/function/base.d.ts +18 -0
  21. package/function/base.js +30 -0
  22. package/function/definition.d.ts +1 -0
  23. package/function/definition.js +4 -1
  24. package/index.d.ts +9 -0
  25. package/index.js +9 -0
  26. package/origin/base.d.ts +44 -0
  27. package/origin/base.js +78 -0
  28. package/origin/definition.d.ts +1 -0
  29. package/origin/definition.js +17 -1
  30. package/origin/interface.d.ts +6 -6
  31. package/package.json +1 -1
  32. package/page/base.d.ts +32 -0
  33. package/page/base.js +48 -0
  34. package/page/definition.d.ts +1 -0
  35. package/page/definition.js +9 -1
  36. package/script/base.d.ts +35 -0
  37. package/script/base.js +51 -0
  38. package/script/definition.d.ts +1 -0
  39. package/script/definition.js +10 -1
  40. package/trash/base.d.ts +20 -0
  41. package/trash/base.js +36 -0
  42. package/trash/definition.d.ts +3 -2
  43. package/trash/definition.js +7 -1
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace BinaryStorage
4
+ * @description Base
5
+ */
6
+ import { ImbricateCapabilityBuilder } from "../capability/builder";
7
+ import { ImbricateCapability } from "../capability/definition";
8
+ import type { PromiseOr } from "../definition/promise";
9
+ import { IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY, ImbricateBinaryStorageCapability } from "./definition";
10
+ import type { IImbricateBinaryStorage } from "./interface";
11
+ export declare abstract class ImbricateBaseBinaryStorage implements IImbricateBinaryStorage {
12
+ static buildCapability(initial?: ImbricateCapability): ImbricateCapabilityBuilder<IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY>;
13
+ static allAllowCapability(): ImbricateBinaryStorageCapability;
14
+ static allDenyCapability(): ImbricateBinaryStorageCapability;
15
+ abstract readonly capabilities: ImbricateBinaryStorageCapability;
16
+ putBinaryBase64(_binary: string, _fileName: string): PromiseOr<string>;
17
+ validateBinaryBase64(_binary: string): PromiseOr<boolean>;
18
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace BinaryStorage
5
+ * @description Base
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricateBaseBinaryStorage = void 0;
9
+ const builder_1 = require("../capability/builder");
10
+ const definition_1 = require("../capability/definition");
11
+ const not_implemented_1 = require("../error/not-implemented");
12
+ const definition_2 = require("./definition");
13
+ class ImbricateBaseBinaryStorage {
14
+ static buildCapability(initial = (0, definition_1.createDenyImbricateCapability)()) {
15
+ return builder_1.ImbricateCapabilityBuilder.create(definition_2.ImbricateBinaryStorageCapabilityList, initial);
16
+ }
17
+ static allAllowCapability() {
18
+ return this.buildCapability((0, definition_1.createAllowImbricateCapability)()).build();
19
+ }
20
+ static allDenyCapability() {
21
+ return this.buildCapability((0, definition_1.createDenyImbricateCapability)()).build();
22
+ }
23
+ putBinaryBase64(_binary, _fileName) {
24
+ throw not_implemented_1.ImbricateNotImplemented.create("PutBinaryBase64", definition_2.IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY.UPLOAD_FILE);
25
+ }
26
+ validateBinaryBase64(_binary) {
27
+ throw not_implemented_1.ImbricateNotImplemented.create("ValidateBinaryBase64", definition_2.IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY.UPLOAD_FILE);
28
+ }
29
+ }
30
+ exports.ImbricateBaseBinaryStorage = ImbricateBaseBinaryStorage;
@@ -3,9 +3,9 @@
3
3
  * @namespace BinaryStorage
4
4
  * @description Definition
5
5
  */
6
- import { ImbricateCapability } from "../capability/definition";
7
- export type ImbricateBinaryStorageCapability = Record<IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY, ImbricateCapability>;
6
+ import type { ImbricateCapabilityRecord } from "../capability/definition";
7
+ export type ImbricateBinaryStorageCapability = ImbricateCapabilityRecord<IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY>;
8
8
  export declare enum IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY {
9
9
  UPLOAD_FILE = "imbricate.binary.storage.upload"
10
10
  }
11
- export declare const createAllAllowImbricateBinaryStorageCapability: () => ImbricateBinaryStorageCapability;
11
+ export declare const ImbricateBinaryStorageCapabilityList: IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY[];
@@ -5,17 +5,11 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createAllAllowImbricateBinaryStorageCapability = exports.IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY = void 0;
9
- const definition_1 = require("../capability/definition");
8
+ exports.ImbricateBinaryStorageCapabilityList = exports.IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY = void 0;
10
9
  var IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY;
11
10
  (function (IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY) {
12
11
  IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY["UPLOAD_FILE"] = "imbricate.binary.storage.upload";
13
12
  })(IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY || (exports.IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY = IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY = {}));
14
- const createAllAllowImbricateBinaryStorageCapability = () => {
15
- return {
16
- [IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY.UPLOAD_FILE]: {
17
- effect: definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW,
18
- },
19
- };
20
- };
21
- exports.createAllAllowImbricateBinaryStorageCapability = createAllAllowImbricateBinaryStorageCapability;
13
+ exports.ImbricateBinaryStorageCapabilityList = [
14
+ IMBRICATE_BINARY_STORAGE_CAPABILITY_KEY.UPLOAD_FILE,
15
+ ];
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Capability
4
+ * @description Builder
5
+ */
6
+ import type { ImbricateCapability, ImbricateCapabilityKey, ImbricateCapabilityRecord } from "./definition";
7
+ export declare class ImbricateCapabilityBuilder<T extends ImbricateCapabilityKey> {
8
+ static create<T extends ImbricateCapabilityKey>(list: T[], initialValue: ImbricateCapability): ImbricateCapabilityBuilder<T>;
9
+ private readonly _capabilities;
10
+ private constructor();
11
+ build(): ImbricateCapabilityRecord<T>;
12
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Capability
5
+ * @description Builder
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricateCapabilityBuilder = void 0;
9
+ const create_1 = require("./create");
10
+ class ImbricateCapabilityBuilder {
11
+ static create(list, initialValue) {
12
+ const capabilities = (0, create_1.createImbricateCapabilityRecord)(list, initialValue);
13
+ return new ImbricateCapabilityBuilder(capabilities);
14
+ }
15
+ constructor(capabilities) {
16
+ this._capabilities = capabilities;
17
+ }
18
+ build() {
19
+ return Object.keys(this._capabilities).map((key) => {
20
+ return {
21
+ [key]: this._capabilities[key],
22
+ };
23
+ });
24
+ }
25
+ }
26
+ exports.ImbricateCapabilityBuilder = ImbricateCapabilityBuilder;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Capability
4
+ * @description Create
5
+ */
6
+ import type { ImbricateCapability, ImbricateCapabilityRecord } from "./definition";
7
+ export declare const createImbricateCapabilityRecord: <T extends string>(list: T[], initialValue: ImbricateCapability) => ImbricateCapabilityRecord<T>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Capability
5
+ * @description Create
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.createImbricateCapabilityRecord = void 0;
9
+ const createImbricateCapabilityRecord = (list, initialValue) => {
10
+ const record = {};
11
+ for (const key of list) {
12
+ record[key] = Object.assign({}, initialValue);
13
+ }
14
+ return record;
15
+ };
16
+ exports.createImbricateCapabilityRecord = createImbricateCapabilityRecord;
@@ -3,6 +3,7 @@
3
3
  * @namespace Capability
4
4
  * @description Definition
5
5
  */
6
+ export type ImbricateCapabilityKey = string;
6
7
  export declare enum IMBRICATE_CAPABILITY_EFFECT {
7
8
  ALLOW = "ALLOW",
8
9
  DENY = "DENY"
@@ -10,3 +11,6 @@ export declare enum IMBRICATE_CAPABILITY_EFFECT {
10
11
  export type ImbricateCapability = {
11
12
  readonly effect: IMBRICATE_CAPABILITY_EFFECT;
12
13
  };
14
+ export type ImbricateCapabilityRecord<T extends ImbricateCapabilityKey> = Record<T, ImbricateCapability>;
15
+ export declare const createAllowImbricateCapability: () => ImbricateCapability;
16
+ export declare const createDenyImbricateCapability: () => ImbricateCapability;
@@ -5,9 +5,21 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.IMBRICATE_CAPABILITY_EFFECT = void 0;
8
+ exports.createDenyImbricateCapability = exports.createAllowImbricateCapability = exports.IMBRICATE_CAPABILITY_EFFECT = void 0;
9
9
  var IMBRICATE_CAPABILITY_EFFECT;
10
10
  (function (IMBRICATE_CAPABILITY_EFFECT) {
11
11
  IMBRICATE_CAPABILITY_EFFECT["ALLOW"] = "ALLOW";
12
12
  IMBRICATE_CAPABILITY_EFFECT["DENY"] = "DENY";
13
13
  })(IMBRICATE_CAPABILITY_EFFECT || (exports.IMBRICATE_CAPABILITY_EFFECT = IMBRICATE_CAPABILITY_EFFECT = {}));
14
+ const createAllowImbricateCapability = () => {
15
+ return {
16
+ effect: IMBRICATE_CAPABILITY_EFFECT.ALLOW,
17
+ };
18
+ };
19
+ exports.createAllowImbricateCapability = createAllowImbricateCapability;
20
+ const createDenyImbricateCapability = () => {
21
+ return {
22
+ effect: IMBRICATE_CAPABILITY_EFFECT.DENY,
23
+ };
24
+ };
25
+ exports.createDenyImbricateCapability = createDenyImbricateCapability;
@@ -4,7 +4,7 @@
4
4
  * @description Validate
5
5
  */
6
6
  import { IMBRICATE_COLLECTION_CAPABILITY_KEY } from "../collection/definition";
7
- import { IImbricateOriginCollection } from "../collection/interface";
7
+ import type { IImbricateCollection } from "../collection/interface";
8
8
  import { IMBRICATE_ORIGIN_CAPABILITY_KEY } from "../origin/definition";
9
9
  import { IImbricateOrigin } from "../origin/interface";
10
10
  import { IMBRICATE_PAGE_CAPABILITY_KEY } from "../page/definition";
@@ -14,6 +14,6 @@ import { IImbricateScript } from "../script/interface";
14
14
  import { ImbricateCapability } from "./definition";
15
15
  export declare const validateImbricateCapability: <CapabilityRecords extends Record<string, ImbricateCapability>, KeySet extends keyof CapabilityRecords>(capabilities: CapabilityRecords, capability: KeySet) => boolean;
16
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;
17
+ export declare const validateImbricateCollectionCapability: (collection: IImbricateCollection, capability: IMBRICATE_COLLECTION_CAPABILITY_KEY) => boolean;
18
18
  export declare const validateImbricatePageCapability: (page: IImbricatePage, capability: IMBRICATE_PAGE_CAPABILITY_KEY) => boolean;
19
19
  export declare const validateImbricateScriptCapability: (script: IImbricateScript, capability: IMBRICATE_SCRIPT_CAPABILITY_KEY) => boolean;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Collection
4
+ * @description Base
5
+ */
6
+ import { ImbricateCapabilityBuilder } from "../capability/builder";
7
+ import { ImbricateCapability } from "../capability/definition";
8
+ import type { PromiseOr } from "../definition/promise";
9
+ import type { ImbricatePageMetadata, ImbricatePageSearchResult, ImbricatePageSnapshot } from "../page/definition";
10
+ import type { IImbricatePage } from "../page/interface";
11
+ import type { ImbricatePageQuery, ImbricatePageQueryConfig, ImbricateSearchPageConfig } from "../query/page";
12
+ import { IMBRICATE_COLLECTION_CAPABILITY_KEY, ImbricateCollectionCapability } from "./definition";
13
+ import type { IImbricateCollection } from "./interface";
14
+ export declare abstract class ImbricateCollectionBase implements IImbricateCollection {
15
+ static buildCapability(initial?: ImbricateCapability): ImbricateCapabilityBuilder<IMBRICATE_COLLECTION_CAPABILITY_KEY>;
16
+ static allAllowCapability(): ImbricateCollectionCapability;
17
+ static allDenyCapability(): ImbricateCollectionCapability;
18
+ abstract readonly collectionName: string;
19
+ abstract readonly uniqueIdentifier: string;
20
+ abstract readonly capabilities: ImbricateCollectionCapability;
21
+ createPage(_directories: string[], _title: string, _initialContent: string): PromiseOr<IImbricatePage>;
22
+ putPage(_pageMetadata: ImbricatePageMetadata, _content: string): PromiseOr<IImbricatePage>;
23
+ retitlePage(_identifier: string, _newTitle: string): PromiseOr<void>;
24
+ deletePage(_identifier: string): PromiseOr<void>;
25
+ hasPage(_directories: string[], _title: string): PromiseOr<boolean>;
26
+ getPage(_identifier: string): PromiseOr<IImbricatePage | null>;
27
+ listPages(_directories: string[], _recursive: boolean): PromiseOr<ImbricatePageSnapshot[]>;
28
+ listDirectories(_directories: string[]): PromiseOr<string[]>;
29
+ searchPages(_keyword: string, _config: ImbricateSearchPageConfig): PromiseOr<ImbricatePageSearchResult[]>;
30
+ queryPages(_query: ImbricatePageQuery, _config: ImbricatePageQueryConfig): PromiseOr<IImbricatePage[]>;
31
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Collection
5
+ * @description Base
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricateCollectionBase = void 0;
9
+ const builder_1 = require("../capability/builder");
10
+ const definition_1 = require("../capability/definition");
11
+ const not_implemented_1 = require("../error/not-implemented");
12
+ const definition_2 = require("./definition");
13
+ class ImbricateCollectionBase {
14
+ static buildCapability(initial = (0, definition_1.createDenyImbricateCapability)()) {
15
+ return builder_1.ImbricateCapabilityBuilder.create(definition_2.ImbricateCollectionCapabilityList, initial);
16
+ }
17
+ static allAllowCapability() {
18
+ return this.buildCapability((0, definition_1.createAllowImbricateCapability)()).build();
19
+ }
20
+ static allDenyCapability() {
21
+ return this.buildCapability((0, definition_1.createDenyImbricateCapability)()).build();
22
+ }
23
+ createPage(_directories, _title, _initialContent) {
24
+ throw not_implemented_1.ImbricateNotImplemented.create("CreatePage", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.CREATE_PAGE);
25
+ }
26
+ putPage(_pageMetadata, _content) {
27
+ throw not_implemented_1.ImbricateNotImplemented.create("PutPage", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.PUT_PAGE);
28
+ }
29
+ retitlePage(_identifier, _newTitle) {
30
+ throw not_implemented_1.ImbricateNotImplemented.create("RetitlePage", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.RETITLE_PAGE);
31
+ }
32
+ deletePage(_identifier) {
33
+ throw not_implemented_1.ImbricateNotImplemented.create("DeletePage", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.DELETE_PAGE);
34
+ }
35
+ hasPage(_directories, _title) {
36
+ throw not_implemented_1.ImbricateNotImplemented.create("HasPage", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.GET_PAGE);
37
+ }
38
+ getPage(_identifier) {
39
+ throw not_implemented_1.ImbricateNotImplemented.create("GetPage", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.GET_PAGE);
40
+ }
41
+ listPages(_directories, _recursive) {
42
+ throw not_implemented_1.ImbricateNotImplemented.create("ListPages", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.LIST_PAGES);
43
+ }
44
+ listDirectories(_directories) {
45
+ throw not_implemented_1.ImbricateNotImplemented.create("ListDirectories", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.LIST_PAGES);
46
+ }
47
+ searchPages(_keyword, _config) {
48
+ throw not_implemented_1.ImbricateNotImplemented.create("SearchPages", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.LIST_PAGES);
49
+ }
50
+ queryPages(_query, _config) {
51
+ throw not_implemented_1.ImbricateNotImplemented.create("QueryPages", definition_2.IMBRICATE_COLLECTION_CAPABILITY_KEY.LIST_PAGES);
52
+ }
53
+ }
54
+ exports.ImbricateCollectionBase = ImbricateCollectionBase;
@@ -3,7 +3,7 @@
3
3
  * @namespace Collection
4
4
  * @description Definition
5
5
  */
6
- import { ImbricateCapability } from "../capability/definition";
6
+ import type { ImbricateCapability } from "../capability/definition";
7
7
  export type ImbricateCollectionCapability = Record<IMBRICATE_COLLECTION_CAPABILITY_KEY, ImbricateCapability>;
8
8
  export declare enum IMBRICATE_COLLECTION_CAPABILITY_KEY {
9
9
  CREATE_PAGE = "imbricate.collection.page.create",
@@ -13,4 +13,4 @@ export declare enum IMBRICATE_COLLECTION_CAPABILITY_KEY {
13
13
  GET_PAGE = "imbricate.collection.page.get",
14
14
  LIST_PAGES = "imbricate.collection.page.list"
15
15
  }
16
- export declare const createAllAllowImbricateCollectionCapability: () => ImbricateCollectionCapability;
16
+ export declare const ImbricateCollectionCapabilityList: IMBRICATE_COLLECTION_CAPABILITY_KEY[];
@@ -5,8 +5,7 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createAllAllowImbricateCollectionCapability = exports.IMBRICATE_COLLECTION_CAPABILITY_KEY = void 0;
9
- const definition_1 = require("../capability/definition");
8
+ exports.ImbricateCollectionCapabilityList = exports.IMBRICATE_COLLECTION_CAPABILITY_KEY = void 0;
10
9
  var IMBRICATE_COLLECTION_CAPABILITY_KEY;
11
10
  (function (IMBRICATE_COLLECTION_CAPABILITY_KEY) {
12
11
  IMBRICATE_COLLECTION_CAPABILITY_KEY["CREATE_PAGE"] = "imbricate.collection.page.create";
@@ -16,26 +15,11 @@ var IMBRICATE_COLLECTION_CAPABILITY_KEY;
16
15
  IMBRICATE_COLLECTION_CAPABILITY_KEY["GET_PAGE"] = "imbricate.collection.page.get";
17
16
  IMBRICATE_COLLECTION_CAPABILITY_KEY["LIST_PAGES"] = "imbricate.collection.page.list";
18
17
  })(IMBRICATE_COLLECTION_CAPABILITY_KEY || (exports.IMBRICATE_COLLECTION_CAPABILITY_KEY = IMBRICATE_COLLECTION_CAPABILITY_KEY = {}));
19
- const createAllAllowImbricateCollectionCapability = () => {
20
- return {
21
- [IMBRICATE_COLLECTION_CAPABILITY_KEY.CREATE_PAGE]: {
22
- effect: definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW,
23
- },
24
- [IMBRICATE_COLLECTION_CAPABILITY_KEY.PUT_PAGE]: {
25
- effect: definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW,
26
- },
27
- [IMBRICATE_COLLECTION_CAPABILITY_KEY.RETITLE_PAGE]: {
28
- effect: definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW,
29
- },
30
- [IMBRICATE_COLLECTION_CAPABILITY_KEY.DELETE_PAGE]: {
31
- effect: definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW,
32
- },
33
- [IMBRICATE_COLLECTION_CAPABILITY_KEY.GET_PAGE]: {
34
- effect: definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW,
35
- },
36
- [IMBRICATE_COLLECTION_CAPABILITY_KEY.LIST_PAGES]: {
37
- effect: definition_1.IMBRICATE_CAPABILITY_EFFECT.ALLOW,
38
- },
39
- };
40
- };
41
- exports.createAllAllowImbricateCollectionCapability = createAllAllowImbricateCollectionCapability;
18
+ exports.ImbricateCollectionCapabilityList = [
19
+ IMBRICATE_COLLECTION_CAPABILITY_KEY.CREATE_PAGE,
20
+ IMBRICATE_COLLECTION_CAPABILITY_KEY.PUT_PAGE,
21
+ IMBRICATE_COLLECTION_CAPABILITY_KEY.RETITLE_PAGE,
22
+ IMBRICATE_COLLECTION_CAPABILITY_KEY.DELETE_PAGE,
23
+ IMBRICATE_COLLECTION_CAPABILITY_KEY.GET_PAGE,
24
+ IMBRICATE_COLLECTION_CAPABILITY_KEY.LIST_PAGES,
25
+ ];
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * @author WMXPY
3
- * @namespace Origin_Collection
3
+ * @namespace Collection
4
4
  * @description Interface
5
5
  */
6
- import { PromiseOr } from "../definition/promise";
7
- import { ImbricatePageMetadata, ImbricatePageSearchResult, ImbricatePageSnapshot } from "../page/definition";
8
- import { IImbricatePage } from "../page/interface";
9
- import { ImbricatePageQuery, ImbricatePageQueryConfig, ImbricateSearchPageConfig } from "../query/page";
10
- import { ImbricateCollectionCapability } from "./definition";
11
- export interface IImbricateOriginCollection {
6
+ import type { PromiseOr } from "../definition/promise";
7
+ import type { ImbricatePageMetadata, ImbricatePageSearchResult, ImbricatePageSnapshot } from "../page/definition";
8
+ import type { IImbricatePage } from "../page/interface";
9
+ import type { ImbricatePageQuery, ImbricatePageQueryConfig, ImbricateSearchPageConfig } from "../query/page";
10
+ import type { ImbricateCollectionCapability } from "./definition";
11
+ export interface IImbricateCollection {
12
12
  readonly collectionName: string;
13
13
  readonly uniqueIdentifier: string;
14
14
  readonly description?: string;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /**
3
3
  * @author WMXPY
4
- * @namespace Origin_Collection
4
+ * @namespace Collection
5
5
  * @description Interface
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -4,7 +4,7 @@
4
4
  * @description Not Implemented
5
5
  */
6
6
  import { ImbricateError } from "./imbricate-error";
7
- export declare class ImbricateNoteImplemented extends ImbricateError {
8
- static create(originName: string, capabilityIdentifier: string): ImbricateNoteImplemented;
7
+ export declare class ImbricateNotImplemented extends ImbricateError {
8
+ static create(feature: string, capabilityIdentifier: string): ImbricateNotImplemented;
9
9
  protected constructor(message: string, reason?: any);
10
10
  }
@@ -5,15 +5,15 @@
5
5
  * @description Not Implemented
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.ImbricateNoteImplemented = void 0;
8
+ exports.ImbricateNotImplemented = void 0;
9
9
  const imbricate_error_1 = require("./imbricate-error");
10
- class ImbricateNoteImplemented extends imbricate_error_1.ImbricateError {
11
- static create(originName, capabilityIdentifier) {
12
- return new ImbricateNoteImplemented(`Origin: ${originName} Capability: ${capabilityIdentifier} Not Implemented`);
10
+ class ImbricateNotImplemented extends imbricate_error_1.ImbricateError {
11
+ static create(feature, capabilityIdentifier) {
12
+ return new ImbricateNotImplemented(`Feature: [${feature}], which correspond with capability: [${capabilityIdentifier}] is not Implemented`);
13
13
  }
14
14
  constructor(message, reason) {
15
- super(message, "ImbricateNoteImplemented", reason);
16
- Object.setPrototypeOf(this, ImbricateNoteImplemented.prototype);
15
+ super(message, "ImbricateNotImplemented", reason);
16
+ Object.setPrototypeOf(this, ImbricateNotImplemented.prototype);
17
17
  }
18
18
  }
19
- exports.ImbricateNoteImplemented = ImbricateNoteImplemented;
19
+ exports.ImbricateNotImplemented = ImbricateNotImplemented;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Function
4
+ * @description Base
5
+ */
6
+ import { ImbricateCapabilityBuilder } from "../capability/builder";
7
+ import { ImbricateCapability } from "../capability/definition";
8
+ import type { IImbricateOrigin } from "../origin/interface";
9
+ import { IMBRICATE_FUNCTION_CAPABILITY_KEY, ImbricateFunction, ImbricateFunctionCapability } from "./definition";
10
+ import type { IImbricateFunctionManager } from "./interface";
11
+ export declare abstract class ImbricateFunctionManagerBase implements IImbricateFunctionManager {
12
+ static buildCapability(initial?: ImbricateCapability): ImbricateCapabilityBuilder<IMBRICATE_FUNCTION_CAPABILITY_KEY>;
13
+ static allAllowCapability(): ImbricateFunctionCapability;
14
+ static allDenyCapability(): ImbricateFunctionCapability;
15
+ abstract readonly capabilities: ImbricateFunctionCapability;
16
+ findSynchronousOriginFunctions(): Array<ImbricateFunction<IImbricateOrigin>>;
17
+ findAllOriginFunctions(): Array<ImbricateFunction<IImbricateOrigin>>;
18
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Function
5
+ * @description Base
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricateFunctionManagerBase = void 0;
9
+ const builder_1 = require("../capability/builder");
10
+ const definition_1 = require("../capability/definition");
11
+ const not_implemented_1 = require("../error/not-implemented");
12
+ const definition_2 = require("./definition");
13
+ class ImbricateFunctionManagerBase {
14
+ static buildCapability(initial = (0, definition_1.createDenyImbricateCapability)()) {
15
+ return builder_1.ImbricateCapabilityBuilder.create(definition_2.ImbricateFunctionCapabilityList, initial);
16
+ }
17
+ static allAllowCapability() {
18
+ return this.buildCapability((0, definition_1.createAllowImbricateCapability)()).build();
19
+ }
20
+ static allDenyCapability() {
21
+ return this.buildCapability((0, definition_1.createDenyImbricateCapability)()).build();
22
+ }
23
+ findSynchronousOriginFunctions() {
24
+ throw not_implemented_1.ImbricateNotImplemented.create("FindSynchronousOriginFunctions", definition_2.IMBRICATE_FUNCTION_CAPABILITY_KEY.FIND_ORIGIN_FUNCTIONS);
25
+ }
26
+ findAllOriginFunctions() {
27
+ throw not_implemented_1.ImbricateNotImplemented.create("FindAllOriginFunctions", definition_2.IMBRICATE_FUNCTION_CAPABILITY_KEY.FIND_ORIGIN_FUNCTIONS);
28
+ }
29
+ }
30
+ exports.ImbricateFunctionManagerBase = ImbricateFunctionManagerBase;
@@ -15,4 +15,5 @@ export type ImbricateFunctionCapability = Record<IMBRICATE_FUNCTION_CAPABILITY_K
15
15
  export declare enum IMBRICATE_FUNCTION_CAPABILITY_KEY {
16
16
  FIND_ORIGIN_FUNCTIONS = "imbricate.function.origin.find"
17
17
  }
18
+ export declare const ImbricateFunctionCapabilityList: IMBRICATE_FUNCTION_CAPABILITY_KEY[];
18
19
  export declare const createAllAllowImbricateFunctionCapability: () => ImbricateFunctionCapability;
@@ -5,12 +5,15 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createAllAllowImbricateFunctionCapability = exports.IMBRICATE_FUNCTION_CAPABILITY_KEY = void 0;
8
+ exports.createAllAllowImbricateFunctionCapability = exports.ImbricateFunctionCapabilityList = exports.IMBRICATE_FUNCTION_CAPABILITY_KEY = void 0;
9
9
  const definition_1 = require("../capability/definition");
10
10
  var IMBRICATE_FUNCTION_CAPABILITY_KEY;
11
11
  (function (IMBRICATE_FUNCTION_CAPABILITY_KEY) {
12
12
  IMBRICATE_FUNCTION_CAPABILITY_KEY["FIND_ORIGIN_FUNCTIONS"] = "imbricate.function.origin.find";
13
13
  })(IMBRICATE_FUNCTION_CAPABILITY_KEY || (exports.IMBRICATE_FUNCTION_CAPABILITY_KEY = IMBRICATE_FUNCTION_CAPABILITY_KEY = {}));
14
+ exports.ImbricateFunctionCapabilityList = [
15
+ IMBRICATE_FUNCTION_CAPABILITY_KEY.FIND_ORIGIN_FUNCTIONS,
16
+ ];
14
17
  const createAllAllowImbricateFunctionCapability = () => {
15
18
  return {
16
19
  [IMBRICATE_FUNCTION_CAPABILITY_KEY.FIND_ORIGIN_FUNCTIONS]: {
package/index.d.ts CHANGED
@@ -2,10 +2,14 @@
2
2
  * @author WMXPY
3
3
  * @description Index
4
4
  */
5
+ export * from "./binary-storage/base";
5
6
  export * from "./binary-storage/definition";
6
7
  export * from "./binary-storage/interface";
8
+ export * from "./capability/builder";
9
+ export * from "./capability/create";
7
10
  export * from "./capability/definition";
8
11
  export * from "./capability/validate";
12
+ export * from "./collection/base";
9
13
  export * from "./collection/definition";
10
14
  export * from "./collection/interface";
11
15
  export * from "./collection/least-common-identifier";
@@ -13,10 +17,13 @@ export * from "./definition/listable";
13
17
  export * from "./definition/promise";
14
18
  export * from "./error/imbricate-error";
15
19
  export * from "./error/not-implemented";
20
+ export * from "./function/base";
16
21
  export * from "./function/definition";
17
22
  export * from "./function/interface";
23
+ export * from "./origin/base";
18
24
  export * from "./origin/definition";
19
25
  export * from "./origin/interface";
26
+ export * from "./page/base";
20
27
  export * from "./page/definition";
21
28
  export * from "./page/interface";
22
29
  export * from "./query/definition";
@@ -28,9 +35,11 @@ export * from "./sandbox/definition/implementation";
28
35
  export * from "./sandbox/feature/builder";
29
36
  export * from "./sandbox/feature/feature";
30
37
  export * from "./sandbox/sandbox";
38
+ export * from "./script/base";
31
39
  export * from "./script/definition";
32
40
  export * from "./script/interface";
33
41
  export * from "./search/prefix";
34
42
  export * from "./search/snippet";
43
+ export * from "./trash/base";
35
44
  export * from "./trash/definition";
36
45
  export * from "./trash/interface";
package/index.js CHANGED
@@ -18,10 +18,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
18
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
+ __exportStar(require("./binary-storage/base"), exports);
21
22
  __exportStar(require("./binary-storage/definition"), exports);
22
23
  __exportStar(require("./binary-storage/interface"), exports);
24
+ __exportStar(require("./capability/builder"), exports);
25
+ __exportStar(require("./capability/create"), exports);
23
26
  __exportStar(require("./capability/definition"), exports);
24
27
  __exportStar(require("./capability/validate"), exports);
28
+ __exportStar(require("./collection/base"), exports);
25
29
  __exportStar(require("./collection/definition"), exports);
26
30
  __exportStar(require("./collection/interface"), exports);
27
31
  __exportStar(require("./collection/least-common-identifier"), exports);
@@ -29,10 +33,13 @@ __exportStar(require("./definition/listable"), exports);
29
33
  __exportStar(require("./definition/promise"), exports);
30
34
  __exportStar(require("./error/imbricate-error"), exports);
31
35
  __exportStar(require("./error/not-implemented"), exports);
36
+ __exportStar(require("./function/base"), exports);
32
37
  __exportStar(require("./function/definition"), exports);
33
38
  __exportStar(require("./function/interface"), exports);
39
+ __exportStar(require("./origin/base"), exports);
34
40
  __exportStar(require("./origin/definition"), exports);
35
41
  __exportStar(require("./origin/interface"), exports);
42
+ __exportStar(require("./page/base"), exports);
36
43
  __exportStar(require("./page/definition"), exports);
37
44
  __exportStar(require("./page/interface"), exports);
38
45
  __exportStar(require("./query/definition"), exports);
@@ -44,9 +51,11 @@ __exportStar(require("./sandbox/definition/implementation"), exports);
44
51
  __exportStar(require("./sandbox/feature/builder"), exports);
45
52
  __exportStar(require("./sandbox/feature/feature"), exports);
46
53
  __exportStar(require("./sandbox/sandbox"), exports);
54
+ __exportStar(require("./script/base"), exports);
47
55
  __exportStar(require("./script/definition"), exports);
48
56
  __exportStar(require("./script/interface"), exports);
49
57
  __exportStar(require("./search/prefix"), exports);
50
58
  __exportStar(require("./search/snippet"), exports);
59
+ __exportStar(require("./trash/base"), exports);
51
60
  __exportStar(require("./trash/definition"), exports);
52
61
  __exportStar(require("./trash/interface"), exports);
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Origin
4
+ * @description Base
5
+ */
6
+ import type { IImbricateBinaryStorage } from "../binary-storage/interface";
7
+ import { ImbricateCapabilityBuilder } from "../capability/builder";
8
+ import { ImbricateCapability } from "../capability/definition";
9
+ import type { IImbricateCollection } from "../collection/interface";
10
+ import type { PromiseOr } from "../definition/promise";
11
+ import type { IImbricateFunctionManager } from "../function/interface";
12
+ import type { IImbricateOrigin } from "../origin/interface";
13
+ import { ImbricateScriptQuery, ImbricateScriptQueryConfig, ImbricateSearchScriptConfig } from "../query/script";
14
+ import { ImbricateScriptMetadata, ImbricateScriptSnapshot } from "../script/definition";
15
+ import type { IImbricateScript } from "../script/interface";
16
+ import { IMBRICATE_ORIGIN_CAPABILITY_KEY, ImbricateOriginCapability, ImbricateOriginMetadata } from "./definition";
17
+ export declare abstract class ImbricateOriginBase implements IImbricateOrigin {
18
+ static buildCapability(initial?: ImbricateCapability): ImbricateCapabilityBuilder<IMBRICATE_ORIGIN_CAPABILITY_KEY>;
19
+ static allAllowCapability(): ImbricateOriginCapability;
20
+ static allDenyCapability(): ImbricateOriginCapability;
21
+ abstract readonly originType: string;
22
+ abstract readonly uniqueIdentifier: string;
23
+ abstract readonly metadata: ImbricateOriginMetadata;
24
+ abstract readonly payloads: Record<string, any>;
25
+ abstract readonly capabilities: ImbricateOriginCapability;
26
+ getFunctionManager(): IImbricateFunctionManager;
27
+ getBinaryStorage(): IImbricateBinaryStorage;
28
+ createCollection(_collectionName: string, _description?: string): PromiseOr<IImbricateCollection>;
29
+ renameCollection(_collectionUniqueIdentifier: string, _newCollectionName: string): PromiseOr<void>;
30
+ deleteCollection(_collectionUniqueIdentifier: string): PromiseOr<void>;
31
+ hasCollection(_collectionName: string): PromiseOr<boolean>;
32
+ findCollection(_collectionName: string): PromiseOr<IImbricateCollection | null>;
33
+ getCollection(_collectionUniqueIdentifier: string): PromiseOr<IImbricateCollection | null>;
34
+ listCollections(): PromiseOr<IImbricateCollection[]>;
35
+ createScript(_scriptName: string, _initialScript: string, _description?: string): PromiseOr<IImbricateScript>;
36
+ putScript(_scriptMetadata: ImbricateScriptMetadata, _script: string): PromiseOr<IImbricateScript>;
37
+ renameScript(_identifier: string, _newScriptName: string): PromiseOr<void>;
38
+ deleteScript(_identifier: string): PromiseOr<void>;
39
+ hasScript(_scriptName: string): PromiseOr<boolean>;
40
+ getScript(_identifier: string): PromiseOr<IImbricateScript | null>;
41
+ listScripts(): PromiseOr<ImbricateScriptSnapshot[]>;
42
+ searchScripts(_keyword: string, _config: ImbricateSearchScriptConfig): PromiseOr<any[]>;
43
+ queryScripts(_query: ImbricateScriptQuery, _config: ImbricateScriptQueryConfig): PromiseOr<IImbricateScript[]>;
44
+ }
package/origin/base.js ADDED
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Origin
5
+ * @description Base
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricateOriginBase = void 0;
9
+ const builder_1 = require("../capability/builder");
10
+ const definition_1 = require("../capability/definition");
11
+ const not_implemented_1 = require("../error/not-implemented");
12
+ const definition_2 = require("./definition");
13
+ class ImbricateOriginBase {
14
+ static buildCapability(initial = (0, definition_1.createDenyImbricateCapability)()) {
15
+ return builder_1.ImbricateCapabilityBuilder.create(definition_2.ImbricateOriginCapabilityList, initial);
16
+ }
17
+ static allAllowCapability() {
18
+ return this.buildCapability((0, definition_1.createAllowImbricateCapability)()).build();
19
+ }
20
+ static allDenyCapability() {
21
+ return this.buildCapability((0, definition_1.createDenyImbricateCapability)()).build();
22
+ }
23
+ getFunctionManager() {
24
+ throw not_implemented_1.ImbricateNotImplemented.create("GetFunctionManager", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.ORIGIN_FUNCTION);
25
+ }
26
+ getBinaryStorage() {
27
+ throw not_implemented_1.ImbricateNotImplemented.create("GetBinaryStorage", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.ORIGIN_BINARY_STORAGE);
28
+ }
29
+ createCollection(_collectionName, _description) {
30
+ throw not_implemented_1.ImbricateNotImplemented.create("CreateCollection", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.CREATE_COLLECTION);
31
+ }
32
+ renameCollection(_collectionUniqueIdentifier, _newCollectionName) {
33
+ throw not_implemented_1.ImbricateNotImplemented.create("RenameCollection", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.RENAME_COLLECTION);
34
+ }
35
+ deleteCollection(_collectionUniqueIdentifier) {
36
+ throw not_implemented_1.ImbricateNotImplemented.create("DeleteCollection", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.DELETE_COLLECTION);
37
+ }
38
+ hasCollection(_collectionName) {
39
+ throw not_implemented_1.ImbricateNotImplemented.create("HasCollection", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_COLLECTIONS);
40
+ }
41
+ findCollection(_collectionName) {
42
+ throw not_implemented_1.ImbricateNotImplemented.create("FindCollection", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_COLLECTIONS);
43
+ }
44
+ getCollection(_collectionUniqueIdentifier) {
45
+ throw not_implemented_1.ImbricateNotImplemented.create("GetCollection", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.GET_COLLECTION);
46
+ }
47
+ listCollections() {
48
+ throw not_implemented_1.ImbricateNotImplemented.create("ListCollections", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_COLLECTIONS);
49
+ }
50
+ createScript(_scriptName, _initialScript, _description) {
51
+ throw not_implemented_1.ImbricateNotImplemented.create("CreateScript", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.CREATE_SCRIPT);
52
+ }
53
+ putScript(_scriptMetadata, _script) {
54
+ throw not_implemented_1.ImbricateNotImplemented.create("PutScript", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.PUT_SCRIPT);
55
+ }
56
+ renameScript(_identifier, _newScriptName) {
57
+ throw not_implemented_1.ImbricateNotImplemented.create("RenameScript", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.RENAME_SCRIPT);
58
+ }
59
+ deleteScript(_identifier) {
60
+ throw not_implemented_1.ImbricateNotImplemented.create("DeleteScript", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.DELETE_SCRIPT);
61
+ }
62
+ hasScript(_scriptName) {
63
+ throw not_implemented_1.ImbricateNotImplemented.create("HasScript", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_SCRIPTS);
64
+ }
65
+ getScript(_identifier) {
66
+ throw not_implemented_1.ImbricateNotImplemented.create("GetScript", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.GET_SCRIPT);
67
+ }
68
+ listScripts() {
69
+ throw not_implemented_1.ImbricateNotImplemented.create("ListScripts", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_SCRIPTS);
70
+ }
71
+ searchScripts(_keyword, _config) {
72
+ throw not_implemented_1.ImbricateNotImplemented.create("SearchScripts", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_SCRIPTS);
73
+ }
74
+ queryScripts(_query, _config) {
75
+ throw not_implemented_1.ImbricateNotImplemented.create("QueryScripts", definition_2.IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_SCRIPTS);
76
+ }
77
+ }
78
+ exports.ImbricateOriginBase = ImbricateOriginBase;
@@ -29,4 +29,5 @@ export declare enum IMBRICATE_ORIGIN_CAPABILITY_KEY {
29
29
  GET_SCRIPT = "imbricate.origin.script.get",
30
30
  LIST_SCRIPTS = "imbricate.origin.script.list"
31
31
  }
32
+ export declare const ImbricateOriginCapabilityList: IMBRICATE_ORIGIN_CAPABILITY_KEY[];
32
33
  export declare const createAllAllowImbricateOriginCapability: () => ImbricateOriginCapability;
@@ -5,7 +5,7 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createAllAllowImbricateOriginCapability = exports.IMBRICATE_ORIGIN_CAPABILITY_KEY = exports.IMBRICATE_DIGEST_ALGORITHM = void 0;
8
+ exports.createAllAllowImbricateOriginCapability = exports.ImbricateOriginCapabilityList = exports.IMBRICATE_ORIGIN_CAPABILITY_KEY = exports.IMBRICATE_DIGEST_ALGORITHM = void 0;
9
9
  const definition_1 = require("../capability/definition");
10
10
  var IMBRICATE_DIGEST_ALGORITHM;
11
11
  (function (IMBRICATE_DIGEST_ALGORITHM) {
@@ -30,6 +30,22 @@ var IMBRICATE_ORIGIN_CAPABILITY_KEY;
30
30
  IMBRICATE_ORIGIN_CAPABILITY_KEY["GET_SCRIPT"] = "imbricate.origin.script.get";
31
31
  IMBRICATE_ORIGIN_CAPABILITY_KEY["LIST_SCRIPTS"] = "imbricate.origin.script.list";
32
32
  })(IMBRICATE_ORIGIN_CAPABILITY_KEY || (exports.IMBRICATE_ORIGIN_CAPABILITY_KEY = IMBRICATE_ORIGIN_CAPABILITY_KEY = {}));
33
+ exports.ImbricateOriginCapabilityList = [
34
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.ORIGIN_FUNCTION,
35
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.ORIGIN_BINARY_STORAGE,
36
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.ORIGIN_TRASH_STASH,
37
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.CREATE_COLLECTION,
38
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.RENAME_COLLECTION,
39
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.DELETE_COLLECTION,
40
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.GET_COLLECTION,
41
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_COLLECTIONS,
42
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.CREATE_SCRIPT,
43
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.PUT_SCRIPT,
44
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.RENAME_SCRIPT,
45
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.DELETE_SCRIPT,
46
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.GET_SCRIPT,
47
+ IMBRICATE_ORIGIN_CAPABILITY_KEY.LIST_SCRIPTS,
48
+ ];
33
49
  const createAllAllowImbricateOriginCapability = () => {
34
50
  return {
35
51
  [IMBRICATE_ORIGIN_CAPABILITY_KEY.ORIGIN_FUNCTION]: {
@@ -4,7 +4,7 @@
4
4
  * @description Interface
5
5
  */
6
6
  import { IImbricateBinaryStorage } from "../binary-storage/interface";
7
- import { IImbricateOriginCollection } from "../collection/interface";
7
+ import type { IImbricateCollection } from "../collection/interface";
8
8
  import { PromiseOr } from "../definition/promise";
9
9
  import { IImbricateFunctionManager } from "../function/interface";
10
10
  import { ImbricateScriptQuery, ImbricateScriptQueryConfig, ImbricateSearchScriptConfig } from "../query/script";
@@ -37,7 +37,7 @@ export interface IImbricateOrigin {
37
37
  *
38
38
  * @returns Function manager
39
39
  */
40
- getFunctionManger(): IImbricateFunctionManager;
40
+ getFunctionManager(): IImbricateFunctionManager;
41
41
  /**
42
42
  * Get binary storage
43
43
  *
@@ -52,13 +52,13 @@ export interface IImbricateOrigin {
52
52
  *
53
53
  * @returns Created collection
54
54
  */
55
- createCollection(collectionName: string, description?: string): PromiseOr<IImbricateOriginCollection>;
55
+ createCollection(collectionName: string, description?: string): PromiseOr<IImbricateCollection>;
56
56
  renameCollection(collectionUniqueIdentifier: string, newCollectionName: string): PromiseOr<void>;
57
57
  deleteCollection(collectionUniqueIdentifier: string): PromiseOr<void>;
58
58
  hasCollection(collectionName: string): PromiseOr<boolean>;
59
- findCollection(collectionName: string): PromiseOr<IImbricateOriginCollection | null>;
60
- getCollection(collectionUniqueIdentifier: string): PromiseOr<IImbricateOriginCollection | null>;
61
- listCollections(): PromiseOr<IImbricateOriginCollection[]>;
59
+ findCollection(collectionName: string): PromiseOr<IImbricateCollection | null>;
60
+ getCollection(collectionUniqueIdentifier: string): PromiseOr<IImbricateCollection | null>;
61
+ listCollections(): PromiseOr<IImbricateCollection[]>;
62
62
  /**
63
63
  * Create a script
64
64
  *
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@imbricate/core",
3
3
  "main": "index.js",
4
- "version": "1.21.0",
4
+ "version": "1.24.1",
5
5
  "description": "Imbricate Core, Notebook for Engineers",
6
6
  "repository": {
7
7
  "type": "git",
package/page/base.d.ts ADDED
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Page
4
+ * @description Base
5
+ */
6
+ import { ImbricateCapabilityBuilder } from "../capability/builder";
7
+ import { ImbricateCapability } from "../capability/definition";
8
+ import type { PromiseOr } from "../definition/promise";
9
+ import { IMBRICATE_PAGE_CAPABILITY_KEY, ImbricatePageCapability, ImbricatePageHistoryRecord } from "./definition";
10
+ import type { IImbricatePage } from "./interface";
11
+ export declare abstract class ImbricatePageBase implements IImbricatePage {
12
+ static buildCapability(initial?: ImbricateCapability): ImbricateCapabilityBuilder<IMBRICATE_PAGE_CAPABILITY_KEY>;
13
+ static allAllowCapability(): ImbricatePageCapability;
14
+ static allDenyCapability(): ImbricatePageCapability;
15
+ abstract readonly title: string;
16
+ abstract readonly directories: string[];
17
+ abstract readonly identifier: string;
18
+ abstract readonly digest: string;
19
+ abstract readonly historyRecords: ImbricatePageHistoryRecord[];
20
+ abstract readonly description?: string;
21
+ abstract readonly createdAt: Date;
22
+ abstract readonly updatedAt: Date;
23
+ abstract readonly capabilities: ImbricatePageCapability;
24
+ readContent(): PromiseOr<string>;
25
+ writeContent(_content: string): PromiseOr<void>;
26
+ readAttributes(): PromiseOr<Record<string, string>>;
27
+ writeAttribute(_key: string, _value: string): PromiseOr<void>;
28
+ refreshUpdateMetadata(_updatedAt: Date, _digest: string): PromiseOr<void>;
29
+ refreshUpdatedAt(_updatedAt: Date): PromiseOr<void>;
30
+ refreshDigest(_digest: string): PromiseOr<void>;
31
+ addHistoryRecord(_record: ImbricatePageHistoryRecord): PromiseOr<void>;
32
+ }
package/page/base.js ADDED
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Page
5
+ * @description Base
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricatePageBase = void 0;
9
+ const builder_1 = require("../capability/builder");
10
+ const definition_1 = require("../capability/definition");
11
+ const not_implemented_1 = require("../error/not-implemented");
12
+ const definition_2 = require("./definition");
13
+ class ImbricatePageBase {
14
+ static buildCapability(initial = (0, definition_1.createDenyImbricateCapability)()) {
15
+ return builder_1.ImbricateCapabilityBuilder.create(definition_2.ImbricatePageCapabilityList, initial);
16
+ }
17
+ static allAllowCapability() {
18
+ return this.buildCapability((0, definition_1.createAllowImbricateCapability)()).build();
19
+ }
20
+ static allDenyCapability() {
21
+ return this.buildCapability((0, definition_1.createDenyImbricateCapability)()).build();
22
+ }
23
+ readContent() {
24
+ throw not_implemented_1.ImbricateNotImplemented.create("ReadContent", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.READ);
25
+ }
26
+ writeContent(_content) {
27
+ throw not_implemented_1.ImbricateNotImplemented.create("WriteContent", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.WRITE);
28
+ }
29
+ readAttributes() {
30
+ throw not_implemented_1.ImbricateNotImplemented.create("ReadAttributes", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.READ_ATTRIBUTE);
31
+ }
32
+ writeAttribute(_key, _value) {
33
+ throw not_implemented_1.ImbricateNotImplemented.create("WriteAttribute", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.WRITE_ATTRIBUTE);
34
+ }
35
+ refreshUpdateMetadata(_updatedAt, _digest) {
36
+ throw not_implemented_1.ImbricateNotImplemented.create("RefreshUpdateMetadata", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.UPDATE_METADATA);
37
+ }
38
+ refreshUpdatedAt(_updatedAt) {
39
+ throw not_implemented_1.ImbricateNotImplemented.create("RefreshUpdatedAt", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.UPDATE_METADATA);
40
+ }
41
+ refreshDigest(_digest) {
42
+ throw not_implemented_1.ImbricateNotImplemented.create("RefreshDigest", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.UPDATE_METADATA);
43
+ }
44
+ addHistoryRecord(_record) {
45
+ throw not_implemented_1.ImbricateNotImplemented.create("AddHistoryRecord", definition_2.IMBRICATE_PAGE_CAPABILITY_KEY.UPDATE_HISTORY_RECORD);
46
+ }
47
+ }
48
+ exports.ImbricatePageBase = ImbricatePageBase;
@@ -33,4 +33,5 @@ export declare enum IMBRICATE_PAGE_CAPABILITY_KEY {
33
33
  UPDATE_METADATA = "imbricate.page.metadata.update",
34
34
  UPDATE_HISTORY_RECORD = "imbricate.page.history.update"
35
35
  }
36
+ export declare const ImbricatePageCapabilityList: IMBRICATE_PAGE_CAPABILITY_KEY[];
36
37
  export declare const createAllAllowImbricatePageCapability: () => ImbricatePageCapability;
@@ -5,7 +5,7 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createAllAllowImbricatePageCapability = exports.IMBRICATE_PAGE_CAPABILITY_KEY = void 0;
8
+ exports.createAllAllowImbricatePageCapability = exports.ImbricatePageCapabilityList = exports.IMBRICATE_PAGE_CAPABILITY_KEY = void 0;
9
9
  const definition_1 = require("../capability/definition");
10
10
  var IMBRICATE_PAGE_CAPABILITY_KEY;
11
11
  (function (IMBRICATE_PAGE_CAPABILITY_KEY) {
@@ -16,6 +16,14 @@ var IMBRICATE_PAGE_CAPABILITY_KEY;
16
16
  IMBRICATE_PAGE_CAPABILITY_KEY["UPDATE_METADATA"] = "imbricate.page.metadata.update";
17
17
  IMBRICATE_PAGE_CAPABILITY_KEY["UPDATE_HISTORY_RECORD"] = "imbricate.page.history.update";
18
18
  })(IMBRICATE_PAGE_CAPABILITY_KEY || (exports.IMBRICATE_PAGE_CAPABILITY_KEY = IMBRICATE_PAGE_CAPABILITY_KEY = {}));
19
+ exports.ImbricatePageCapabilityList = [
20
+ IMBRICATE_PAGE_CAPABILITY_KEY.READ,
21
+ IMBRICATE_PAGE_CAPABILITY_KEY.WRITE,
22
+ IMBRICATE_PAGE_CAPABILITY_KEY.READ_ATTRIBUTE,
23
+ IMBRICATE_PAGE_CAPABILITY_KEY.WRITE_ATTRIBUTE,
24
+ IMBRICATE_PAGE_CAPABILITY_KEY.UPDATE_METADATA,
25
+ IMBRICATE_PAGE_CAPABILITY_KEY.UPDATE_HISTORY_RECORD,
26
+ ];
19
27
  const createAllAllowImbricatePageCapability = () => {
20
28
  return {
21
29
  [IMBRICATE_PAGE_CAPABILITY_KEY.READ]: {
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Script
4
+ * @description Base
5
+ */
6
+ import type { MarkedResult } from "@sudoo/marked";
7
+ import { ImbricateCapabilityBuilder } from "../capability/builder";
8
+ import { ImbricateCapability } from "../capability/definition";
9
+ import type { PromiseOr } from "../definition/promise";
10
+ import type { SandboxExecuteConfig, SandboxExecuteParameter } from "../sandbox/definition/config";
11
+ import type { SandboxFeature } from "../sandbox/feature/feature";
12
+ import { IMBRICATE_SCRIPT_CAPABILITY_KEY, ImbricateScriptAttributes, ImbricateScriptCapability, ImbricateScriptHistoryRecord } from "./definition";
13
+ import type { IImbricateScript } from "./interface";
14
+ export declare abstract class ImbricateScriptBase implements IImbricateScript {
15
+ static buildCapability(initial?: ImbricateCapability): ImbricateCapabilityBuilder<IMBRICATE_SCRIPT_CAPABILITY_KEY>;
16
+ static allAllowCapability(): ImbricateScriptCapability;
17
+ static allDenyCapability(): ImbricateScriptCapability;
18
+ abstract readonly scriptName: string;
19
+ abstract readonly identifier: string;
20
+ abstract readonly digest: string;
21
+ abstract readonly historyRecords: ImbricateScriptHistoryRecord[];
22
+ abstract readonly description?: string;
23
+ abstract readonly createdAt: Date;
24
+ abstract readonly updatedAt: Date;
25
+ abstract readonly capabilities: ImbricateScriptCapability;
26
+ readScript(): PromiseOr<string>;
27
+ writeScript(_script: string): PromiseOr<void>;
28
+ readAttributes(): PromiseOr<ImbricateScriptAttributes>;
29
+ writeAttribute(_key: string, _value: string): PromiseOr<void>;
30
+ refreshUpdateMetadata(_updatedAt: Date, _digest: string): PromiseOr<void>;
31
+ refreshUpdatedAt(_updatedAt: Date): PromiseOr<void>;
32
+ refreshDigest(_digest: string): PromiseOr<void>;
33
+ addHistoryRecord(_record: ImbricateScriptHistoryRecord): PromiseOr<void>;
34
+ execute(_features: SandboxFeature[], _config: SandboxExecuteConfig, _parameter: SandboxExecuteParameter): PromiseOr<MarkedResult>;
35
+ }
package/script/base.js ADDED
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Script
5
+ * @description Base
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricateScriptBase = void 0;
9
+ const builder_1 = require("../capability/builder");
10
+ const definition_1 = require("../capability/definition");
11
+ const not_implemented_1 = require("../error/not-implemented");
12
+ const definition_2 = require("./definition");
13
+ class ImbricateScriptBase {
14
+ static buildCapability(initial = (0, definition_1.createDenyImbricateCapability)()) {
15
+ return builder_1.ImbricateCapabilityBuilder.create(definition_2.ImbricateScriptCapabilityList, initial);
16
+ }
17
+ static allAllowCapability() {
18
+ return this.buildCapability((0, definition_1.createAllowImbricateCapability)()).build();
19
+ }
20
+ static allDenyCapability() {
21
+ return this.buildCapability((0, definition_1.createDenyImbricateCapability)()).build();
22
+ }
23
+ readScript() {
24
+ throw not_implemented_1.ImbricateNotImplemented.create("ReadScript", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.READ);
25
+ }
26
+ writeScript(_script) {
27
+ throw not_implemented_1.ImbricateNotImplemented.create("WriteScript", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.WRITE);
28
+ }
29
+ readAttributes() {
30
+ throw not_implemented_1.ImbricateNotImplemented.create("ReadAttributes", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.READ_ATTRIBUTE);
31
+ }
32
+ writeAttribute(_key, _value) {
33
+ throw not_implemented_1.ImbricateNotImplemented.create("WriteAttribute", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.WRITE_ATTRIBUTE);
34
+ }
35
+ refreshUpdateMetadata(_updatedAt, _digest) {
36
+ throw not_implemented_1.ImbricateNotImplemented.create("RefreshUpdateMetadata", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.UPDATE_METADATA);
37
+ }
38
+ refreshUpdatedAt(_updatedAt) {
39
+ throw not_implemented_1.ImbricateNotImplemented.create("RefreshUpdatedAt", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.UPDATE_METADATA);
40
+ }
41
+ refreshDigest(_digest) {
42
+ throw not_implemented_1.ImbricateNotImplemented.create("RefreshDigest", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.UPDATE_METADATA);
43
+ }
44
+ addHistoryRecord(_record) {
45
+ throw not_implemented_1.ImbricateNotImplemented.create("AddHistoryRecord", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.UPDATE_HISTORY_RECORD);
46
+ }
47
+ execute(_features, _config, _parameter) {
48
+ throw not_implemented_1.ImbricateNotImplemented.create("Execute", definition_2.IMBRICATE_SCRIPT_CAPABILITY_KEY.EXECUTE);
49
+ }
50
+ }
51
+ exports.ImbricateScriptBase = ImbricateScriptBase;
@@ -33,4 +33,5 @@ export declare enum IMBRICATE_SCRIPT_CAPABILITY_KEY {
33
33
  UPDATE_HISTORY_RECORD = "imbricate.script.history.update",
34
34
  EXECUTE = "imbricate.script.execute"
35
35
  }
36
+ export declare const ImbricateScriptCapabilityList: IMBRICATE_SCRIPT_CAPABILITY_KEY[];
36
37
  export declare const createAllAllowImbricateScriptCapability: () => ImbricateScriptCapability;
@@ -5,7 +5,7 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createAllAllowImbricateScriptCapability = exports.IMBRICATE_SCRIPT_CAPABILITY_KEY = void 0;
8
+ exports.createAllAllowImbricateScriptCapability = exports.ImbricateScriptCapabilityList = exports.IMBRICATE_SCRIPT_CAPABILITY_KEY = void 0;
9
9
  const definition_1 = require("../capability/definition");
10
10
  var IMBRICATE_SCRIPT_CAPABILITY_KEY;
11
11
  (function (IMBRICATE_SCRIPT_CAPABILITY_KEY) {
@@ -17,6 +17,15 @@ var IMBRICATE_SCRIPT_CAPABILITY_KEY;
17
17
  IMBRICATE_SCRIPT_CAPABILITY_KEY["UPDATE_HISTORY_RECORD"] = "imbricate.script.history.update";
18
18
  IMBRICATE_SCRIPT_CAPABILITY_KEY["EXECUTE"] = "imbricate.script.execute";
19
19
  })(IMBRICATE_SCRIPT_CAPABILITY_KEY || (exports.IMBRICATE_SCRIPT_CAPABILITY_KEY = IMBRICATE_SCRIPT_CAPABILITY_KEY = {}));
20
+ exports.ImbricateScriptCapabilityList = [
21
+ IMBRICATE_SCRIPT_CAPABILITY_KEY.READ,
22
+ IMBRICATE_SCRIPT_CAPABILITY_KEY.WRITE,
23
+ IMBRICATE_SCRIPT_CAPABILITY_KEY.READ_ATTRIBUTE,
24
+ IMBRICATE_SCRIPT_CAPABILITY_KEY.WRITE_ATTRIBUTE,
25
+ IMBRICATE_SCRIPT_CAPABILITY_KEY.UPDATE_METADATA,
26
+ IMBRICATE_SCRIPT_CAPABILITY_KEY.UPDATE_HISTORY_RECORD,
27
+ IMBRICATE_SCRIPT_CAPABILITY_KEY.EXECUTE,
28
+ ];
20
29
  const createAllAllowImbricateScriptCapability = () => {
21
30
  return {
22
31
  [IMBRICATE_SCRIPT_CAPABILITY_KEY.READ]: {
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @author WMXPY
3
+ * @namespace Trash
4
+ * @description Base
5
+ */
6
+ import { ImbricateCapabilityBuilder } from "../capability/builder";
7
+ import { ImbricateCapability } from "../capability/definition";
8
+ import type { PromiseOr } from "../definition/promise";
9
+ import { IMBRICATE_TRASH_STASH_CAPABILITY_KEY, ImbricateTrashStashCapability, ImbricateVacantPage, ImbricateVacantScript } from "./definition";
10
+ import type { IImbricateTrashStash } from "./interface";
11
+ export declare abstract class ImbricateTrashStashBase implements IImbricateTrashStash {
12
+ static buildCapability(initial?: ImbricateCapability): ImbricateCapabilityBuilder<IMBRICATE_TRASH_STASH_CAPABILITY_KEY>;
13
+ static allAllowCapability(): ImbricateTrashStashCapability;
14
+ static allDenyCapability(): ImbricateTrashStashCapability;
15
+ abstract readonly capabilities: ImbricateTrashStashCapability;
16
+ tossPage(_page: ImbricateVacantPage): PromiseOr<void>;
17
+ retrievePage(_collectionUniqueIdentifier: string, _pageIdentifier: string): PromiseOr<ImbricateVacantPage | null>;
18
+ tossScript(_script: ImbricateVacantScript): PromiseOr<void>;
19
+ retrieveScript(_scriptIdentifier: string): PromiseOr<ImbricateVacantScript | null>;
20
+ }
package/trash/base.js ADDED
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /**
3
+ * @author WMXPY
4
+ * @namespace Trash
5
+ * @description Base
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ImbricateTrashStashBase = void 0;
9
+ const builder_1 = require("../capability/builder");
10
+ const definition_1 = require("../capability/definition");
11
+ const not_implemented_1 = require("../error/not-implemented");
12
+ const definition_2 = require("./definition");
13
+ class ImbricateTrashStashBase {
14
+ static buildCapability(initial = (0, definition_1.createDenyImbricateCapability)()) {
15
+ return builder_1.ImbricateCapabilityBuilder.create(definition_2.ImbricateTrashStashCapabilityList, initial);
16
+ }
17
+ static allAllowCapability() {
18
+ return this.buildCapability((0, definition_1.createAllowImbricateCapability)()).build();
19
+ }
20
+ static allDenyCapability() {
21
+ return this.buildCapability((0, definition_1.createDenyImbricateCapability)()).build();
22
+ }
23
+ tossPage(_page) {
24
+ throw not_implemented_1.ImbricateNotImplemented.create("TossPage", definition_2.IMBRICATE_TRASH_STASH_CAPABILITY_KEY.TOSS_PAGE);
25
+ }
26
+ retrievePage(_collectionUniqueIdentifier, _pageIdentifier) {
27
+ throw not_implemented_1.ImbricateNotImplemented.create("RetrievePage", definition_2.IMBRICATE_TRASH_STASH_CAPABILITY_KEY.RETRIEVE_PAGE);
28
+ }
29
+ tossScript(_script) {
30
+ throw not_implemented_1.ImbricateNotImplemented.create("TossScript", definition_2.IMBRICATE_TRASH_STASH_CAPABILITY_KEY.TOSS_SCRIPT);
31
+ }
32
+ retrieveScript(_scriptIdentifier) {
33
+ throw not_implemented_1.ImbricateNotImplemented.create("RetrieveScript", definition_2.IMBRICATE_TRASH_STASH_CAPABILITY_KEY.RETRIEVE_SCRIPT);
34
+ }
35
+ }
36
+ exports.ImbricateTrashStashBase = ImbricateTrashStashBase;
@@ -3,7 +3,7 @@
3
3
  * @namespace Trash
4
4
  * @description Definition
5
5
  */
6
- import { ImbricateCapability } from "../capability/definition";
6
+ import { ImbricateCapabilityRecord } from "../capability/definition";
7
7
  export type ImbricateVacantPage = {
8
8
  readonly collectionUniqueIdentifier: string;
9
9
  readonly pageIdentifier: string;
@@ -15,11 +15,12 @@ export type ImbricateVacantScript = {
15
15
  readonly scriptDigest: string;
16
16
  readonly script: string;
17
17
  };
18
- export type ImbricateTrashStashCapability = Record<IMBRICATE_TRASH_STASH_CAPABILITY_KEY, ImbricateCapability>;
18
+ export type ImbricateTrashStashCapability = ImbricateCapabilityRecord<IMBRICATE_TRASH_STASH_CAPABILITY_KEY>;
19
19
  export declare enum IMBRICATE_TRASH_STASH_CAPABILITY_KEY {
20
20
  TOSS_PAGE = "imbricate.trash-stash.page.toss",
21
21
  RETRIEVE_PAGE = "imbricate.trash-stash.page.retrieve",
22
22
  TOSS_SCRIPT = "imbricate.trash-stash.script.toss",
23
23
  RETRIEVE_SCRIPT = "imbricate.trash-stash.script.retrieve"
24
24
  }
25
+ export declare const ImbricateTrashStashCapabilityList: IMBRICATE_TRASH_STASH_CAPABILITY_KEY[];
25
26
  export declare const createAllAllowImbricateTrashStashCapability: () => ImbricateTrashStashCapability;
@@ -5,7 +5,7 @@
5
5
  * @description Definition
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createAllAllowImbricateTrashStashCapability = exports.IMBRICATE_TRASH_STASH_CAPABILITY_KEY = void 0;
8
+ exports.createAllAllowImbricateTrashStashCapability = exports.ImbricateTrashStashCapabilityList = exports.IMBRICATE_TRASH_STASH_CAPABILITY_KEY = void 0;
9
9
  const definition_1 = require("../capability/definition");
10
10
  var IMBRICATE_TRASH_STASH_CAPABILITY_KEY;
11
11
  (function (IMBRICATE_TRASH_STASH_CAPABILITY_KEY) {
@@ -14,6 +14,12 @@ var IMBRICATE_TRASH_STASH_CAPABILITY_KEY;
14
14
  IMBRICATE_TRASH_STASH_CAPABILITY_KEY["TOSS_SCRIPT"] = "imbricate.trash-stash.script.toss";
15
15
  IMBRICATE_TRASH_STASH_CAPABILITY_KEY["RETRIEVE_SCRIPT"] = "imbricate.trash-stash.script.retrieve";
16
16
  })(IMBRICATE_TRASH_STASH_CAPABILITY_KEY || (exports.IMBRICATE_TRASH_STASH_CAPABILITY_KEY = IMBRICATE_TRASH_STASH_CAPABILITY_KEY = {}));
17
+ exports.ImbricateTrashStashCapabilityList = [
18
+ IMBRICATE_TRASH_STASH_CAPABILITY_KEY.TOSS_PAGE,
19
+ IMBRICATE_TRASH_STASH_CAPABILITY_KEY.RETRIEVE_PAGE,
20
+ IMBRICATE_TRASH_STASH_CAPABILITY_KEY.TOSS_SCRIPT,
21
+ IMBRICATE_TRASH_STASH_CAPABILITY_KEY.RETRIEVE_SCRIPT,
22
+ ];
17
23
  const createAllAllowImbricateTrashStashCapability = () => {
18
24
  return {
19
25
  [IMBRICATE_TRASH_STASH_CAPABILITY_KEY.TOSS_PAGE]: {