@xyo-network/module-model 3.0.7 → 3.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/neutral/Config/Archiving.d.ts +9 -0
- package/dist/neutral/Config/Archiving.d.ts.map +1 -0
- package/dist/neutral/Config/Config.d.ts +17 -0
- package/dist/neutral/Config/Config.d.ts.map +1 -0
- package/dist/neutral/Config/Fields.d.ts +23 -0
- package/dist/neutral/Config/Fields.d.ts.map +1 -0
- package/dist/neutral/Config/Security.d.ts +9 -0
- package/dist/neutral/Config/Security.d.ts.map +1 -0
- package/dist/neutral/Config/index.d.ts +5 -0
- package/dist/neutral/Config/index.d.ts.map +1 -0
- package/dist/neutral/CreatableModule/CreatableModule.d.ts +20 -0
- package/dist/neutral/CreatableModule/CreatableModule.d.ts.map +1 -0
- package/dist/neutral/CreatableModule/CreatableModuleRegistry.d.ts +12 -0
- package/dist/neutral/CreatableModule/CreatableModuleRegistry.d.ts.map +1 -0
- package/dist/neutral/CreatableModule/LabeledCreatableModuleFactory.d.ts +7 -0
- package/dist/neutral/CreatableModule/LabeledCreatableModuleFactory.d.ts.map +1 -0
- package/dist/neutral/CreatableModule/ModuleFactory.d.ts +26 -0
- package/dist/neutral/CreatableModule/ModuleFactory.d.ts.map +1 -0
- package/dist/neutral/CreatableModule/index.d.ts +5 -0
- package/dist/neutral/CreatableModule/index.d.ts.map +1 -0
- package/dist/neutral/DetailsError.d.ts +6 -0
- package/dist/neutral/DetailsError.d.ts.map +1 -0
- package/dist/neutral/EventsModels/ModuleBusy.d.ts +9 -0
- package/dist/neutral/EventsModels/ModuleBusy.d.ts.map +1 -0
- package/dist/neutral/EventsModels/ModuleError.d.ts +9 -0
- package/dist/neutral/EventsModels/ModuleError.d.ts.map +1 -0
- package/dist/neutral/EventsModels/ModuleEventArgs.d.ts +7 -0
- package/dist/neutral/EventsModels/ModuleEventArgs.d.ts.map +1 -0
- package/dist/neutral/EventsModels/ModuleEventData.d.ts +6 -0
- package/dist/neutral/EventsModels/ModuleEventData.d.ts.map +1 -0
- package/dist/neutral/EventsModels/ModuleQueried.d.ts +14 -0
- package/dist/neutral/EventsModels/ModuleQueried.d.ts.map +1 -0
- package/dist/neutral/EventsModels/index.d.ts +6 -0
- package/dist/neutral/EventsModels/index.d.ts.map +1 -0
- package/dist/neutral/Labels/Labels.d.ts +11 -0
- package/dist/neutral/Labels/Labels.d.ts.map +1 -0
- package/dist/neutral/Labels/index.d.ts +3 -0
- package/dist/neutral/Labels/index.d.ts.map +1 -0
- package/dist/neutral/Labels/standard/View.d.ts +6 -0
- package/dist/neutral/Labels/standard/View.d.ts.map +1 -0
- package/dist/neutral/Labels/standard/index.d.ts +2 -0
- package/dist/neutral/Labels/standard/index.d.ts.map +1 -0
- package/dist/neutral/ModuleDescription.d.ts +9 -0
- package/dist/neutral/ModuleDescription.d.ts.map +1 -0
- package/dist/neutral/ModuleIdentifier.d.ts +43 -0
- package/dist/neutral/ModuleIdentifier.d.ts.map +1 -0
- package/dist/neutral/ModuleIdentifierTransformer.d.ts +7 -0
- package/dist/neutral/ModuleIdentifierTransformer.d.ts.map +1 -0
- package/dist/neutral/ModuleParams.d.ts +14 -0
- package/dist/neutral/ModuleParams.d.ts.map +1 -0
- package/dist/neutral/ModuleQueryHandlerResult.d.ts +3 -0
- package/dist/neutral/ModuleQueryHandlerResult.d.ts.map +1 -0
- package/dist/neutral/ModuleQueryResult.d.ts +8 -0
- package/dist/neutral/ModuleQueryResult.d.ts.map +1 -0
- package/dist/neutral/Payload/Address.d.ts +16 -0
- package/dist/neutral/Payload/Address.d.ts.map +1 -0
- package/dist/neutral/Payload/AddressPreviousHash.d.ts +9 -0
- package/dist/neutral/Payload/AddressPreviousHash.d.ts.map +1 -0
- package/dist/neutral/Payload/Description.d.ts +6 -0
- package/dist/neutral/Payload/Description.d.ts.map +1 -0
- package/dist/neutral/Payload/ModuleState.d.ts +13 -0
- package/dist/neutral/Payload/ModuleState.d.ts.map +1 -0
- package/dist/neutral/Payload/index.d.ts +5 -0
- package/dist/neutral/Payload/index.d.ts.map +1 -0
- package/dist/neutral/Queries/Manifest.d.ts +8 -0
- package/dist/neutral/Queries/Manifest.d.ts.map +1 -0
- package/dist/neutral/Queries/ModuleAddress/Query.d.ts +7 -0
- package/dist/neutral/Queries/ModuleAddress/Query.d.ts.map +1 -0
- package/dist/neutral/Queries/ModuleAddress/index.d.ts +2 -0
- package/dist/neutral/Queries/ModuleAddress/index.d.ts.map +1 -0
- package/dist/neutral/Queries/State.d.ts +5 -0
- package/dist/neutral/Queries/State.d.ts.map +1 -0
- package/dist/neutral/Queries/Subscribe.d.ts +14 -0
- package/dist/neutral/Queries/Subscribe.d.ts.map +1 -0
- package/dist/neutral/Queries/index.d.ts +10 -0
- package/dist/neutral/Queries/index.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/ResolveHelper.d.ts +26 -0
- package/dist/neutral/ResolveHelper/ResolveHelper.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/ResolveHelperStatic.d.ts +7 -0
- package/dist/neutral/ResolveHelper/ResolveHelperStatic.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/index.d.ts +10 -0
- package/dist/neutral/ResolveHelper/index.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/model.d.ts +2 -0
- package/dist/neutral/ResolveHelper/model.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/resolveAddressToInstance.d.ts +9 -0
- package/dist/neutral/ResolveHelper/resolveAddressToInstance.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/resolveAll.d.ts +6 -0
- package/dist/neutral/ResolveHelper/resolveAll.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/resolveLocalNameToAddress.d.ts +9 -0
- package/dist/neutral/ResolveHelper/resolveLocalNameToAddress.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/resolveLocalNameToInstance.d.ts +8 -0
- package/dist/neutral/ResolveHelper/resolveLocalNameToInstance.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/resolvePathToAddress.d.ts +5 -0
- package/dist/neutral/ResolveHelper/resolvePathToAddress.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/resolvePathToInstance.d.ts +4 -0
- package/dist/neutral/ResolveHelper/resolvePathToInstance.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/traceModuleIdentifier.d.ts +5 -0
- package/dist/neutral/ResolveHelper/traceModuleIdentifier.d.ts.map +1 -0
- package/dist/neutral/ResolveHelper/transformModuleIdentifier.d.ts +4 -0
- package/dist/neutral/ResolveHelper/transformModuleIdentifier.d.ts.map +1 -0
- package/dist/neutral/cache.d.ts +6 -0
- package/dist/neutral/cache.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +20 -783
- package/dist/neutral/index.d.ts.map +1 -0
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/instance/Instance.d.ts +41 -0
- package/dist/neutral/instance/Instance.d.ts.map +1 -0
- package/dist/neutral/instance/ModuleFilter.d.ts +49 -0
- package/dist/neutral/instance/ModuleFilter.d.ts.map +1 -0
- package/dist/neutral/instance/ModuleRepository.d.ts +10 -0
- package/dist/neutral/instance/ModuleRepository.d.ts.map +1 -0
- package/dist/neutral/instance/ModuleResolver.d.ts +30 -0
- package/dist/neutral/instance/ModuleResolver.d.ts.map +1 -0
- package/dist/neutral/instance/ObjectFilter.d.ts +30 -0
- package/dist/neutral/instance/ObjectFilter.d.ts.map +1 -0
- package/dist/neutral/instance/ObjectResolver.d.ts +30 -0
- package/dist/neutral/instance/ObjectResolver.d.ts.map +1 -0
- package/dist/neutral/instance/asModuleInstance.d.ts +41 -0
- package/dist/neutral/instance/asModuleInstance.d.ts.map +1 -0
- package/dist/neutral/instance/attachable/AttachableInstance.d.ts +15 -0
- package/dist/neutral/instance/attachable/AttachableInstance.d.ts.map +1 -0
- package/dist/neutral/instance/attachable/asAttachableInstance.d.ts +41 -0
- package/dist/neutral/instance/attachable/asAttachableInstance.d.ts.map +1 -0
- package/dist/neutral/instance/attachable/index.d.ts +4 -0
- package/dist/neutral/instance/attachable/index.d.ts.map +1 -0
- package/dist/neutral/instance/attachable/isAttachableInstance.d.ts +5 -0
- package/dist/neutral/instance/attachable/isAttachableInstance.d.ts.map +1 -0
- package/dist/neutral/instance/index.d.ts +10 -0
- package/dist/neutral/instance/index.d.ts.map +1 -0
- package/dist/neutral/instance/isModuleInstance.d.ts +5 -0
- package/dist/neutral/instance/isModuleInstance.d.ts.map +1 -0
- package/dist/neutral/lib/duplicateModules.d.ts +3 -0
- package/dist/neutral/lib/duplicateModules.d.ts.map +1 -0
- package/dist/neutral/lib/index.d.ts +3 -0
- package/dist/neutral/lib/index.d.ts.map +1 -0
- package/dist/neutral/lib/serializable.d.ts +3 -0
- package/dist/neutral/lib/serializable.d.ts.map +1 -0
- package/dist/neutral/module/IsModuleFactory.d.ts +7 -0
- package/dist/neutral/module/IsModuleFactory.d.ts.map +1 -0
- package/dist/neutral/module/Module.d.ts +7 -0
- package/dist/neutral/module/Module.d.ts.map +1 -0
- package/dist/neutral/module/ModuleFields.d.ts +22 -0
- package/dist/neutral/module/ModuleFields.d.ts.map +1 -0
- package/dist/neutral/module/ModuleQueryFunctions.d.ts +15 -0
- package/dist/neutral/module/ModuleQueryFunctions.d.ts.map +1 -0
- package/dist/neutral/module/asModule.d.ts +41 -0
- package/dist/neutral/module/asModule.d.ts.map +1 -0
- package/dist/neutral/module/asModuleObject.d.ts +41 -0
- package/dist/neutral/module/asModuleObject.d.ts.map +1 -0
- package/dist/neutral/module/index.d.ts +9 -0
- package/dist/neutral/module/index.d.ts.map +1 -0
- package/dist/neutral/module/isModule.d.ts +6 -0
- package/dist/neutral/module/isModule.d.ts.map +1 -0
- package/dist/neutral/module/isModuleObject.d.ts +17 -0
- package/dist/neutral/module/isModuleObject.d.ts.map +1 -0
- package/dist/neutral/withModule.d.ts +31 -0
- package/dist/neutral/withModule.d.ts.map +1 -0
- package/package.json +16 -16
- package/src/Config/Fields.ts +2 -1
- package/src/CreatableModule/ModuleFactory.ts +6 -3
- package/src/Labels/standard/View.ts +1 -3
- package/src/ModuleParams.ts +3 -1
- package/src/ModuleQueryResult.ts +3 -1
- package/src/ResolveHelper/ResolveHelper.ts +15 -5
- package/src/instance/ModuleFilter.ts +2 -1
- package/src/instance/ObjectFilter.ts +3 -1
- package/src/lib/serializable.ts +3 -1
- package/src/module/IsModuleFactory.ts +3 -1
- package/xy.config.ts +1 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/module-model",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.9",
|
|
4
4
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -29,23 +29,23 @@
|
|
|
29
29
|
"module": "dist/neutral/index.mjs",
|
|
30
30
|
"types": "dist/neutral/index.d.ts",
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@xylabs/assert": "^4.0.
|
|
33
|
-
"@xylabs/exists": "^4.0.
|
|
34
|
-
"@xylabs/hex": "^4.0.
|
|
35
|
-
"@xylabs/lodash": "^4.0.
|
|
36
|
-
"@xylabs/logger": "^4.0.
|
|
37
|
-
"@xylabs/object": "^4.0.
|
|
38
|
-
"@xylabs/promise": "^4.0.
|
|
39
|
-
"@xylabs/retry": "^4.0.
|
|
40
|
-
"@xyo-network/account-model": "^3.0.
|
|
41
|
-
"@xyo-network/boundwitness-model": "^3.0.
|
|
42
|
-
"@xyo-network/manifest-model": "^3.0.
|
|
43
|
-
"@xyo-network/module-events": "^3.0.
|
|
44
|
-
"@xyo-network/payload-model": "^3.0.
|
|
32
|
+
"@xylabs/assert": "^4.0.3",
|
|
33
|
+
"@xylabs/exists": "^4.0.3",
|
|
34
|
+
"@xylabs/hex": "^4.0.3",
|
|
35
|
+
"@xylabs/lodash": "^4.0.3",
|
|
36
|
+
"@xylabs/logger": "^4.0.3",
|
|
37
|
+
"@xylabs/object": "^4.0.3",
|
|
38
|
+
"@xylabs/promise": "^4.0.3",
|
|
39
|
+
"@xylabs/retry": "^4.0.3",
|
|
40
|
+
"@xyo-network/account-model": "^3.0.9",
|
|
41
|
+
"@xyo-network/boundwitness-model": "^3.0.9",
|
|
42
|
+
"@xyo-network/manifest-model": "^3.0.9",
|
|
43
|
+
"@xyo-network/module-events": "^3.0.9",
|
|
44
|
+
"@xyo-network/payload-model": "^3.0.9"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@xylabs/ts-scripts-yarn3": "^4.0.
|
|
48
|
-
"@xylabs/tsconfig": "^4.0.
|
|
47
|
+
"@xylabs/ts-scripts-yarn3": "^4.0.7",
|
|
48
|
+
"@xylabs/tsconfig": "^4.0.7",
|
|
49
49
|
"typescript": "^5.5.4"
|
|
50
50
|
},
|
|
51
51
|
"publishConfig": {
|
package/src/Config/Fields.ts
CHANGED
|
@@ -33,7 +33,8 @@ export interface ModuleConfigFields {
|
|
|
33
33
|
|
|
34
34
|
readonly retry?: RetryConfig
|
|
35
35
|
|
|
36
|
-
/** @field The query schemas and allowed/disallowed addresses which are allowed to issue them against the module.
|
|
36
|
+
/** @field The query schemas and allowed/disallowed addresses which are allowed to issue them against the module.
|
|
37
|
+
* If both allowed and disallowed is specified, then disallowed takes priority. */
|
|
37
38
|
readonly security?: ModuleSecurityConfig
|
|
38
39
|
|
|
39
40
|
/** @field sign every query */
|
|
@@ -61,9 +61,12 @@ export class ModuleFactory<TModule extends AttachableModuleInstance> implements
|
|
|
61
61
|
create<T extends AttachableModuleInstance>(this: CreatableModuleFactory<T>, params?: TModule['params'] | undefined): Promise<T> {
|
|
62
62
|
const factory = this as ModuleFactory<T>
|
|
63
63
|
const schema = factory.creatableModule.defaultConfigSchema
|
|
64
|
-
const mergedParams: TModule['params'] = merge(
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
const mergedParams: TModule['params'] = merge(
|
|
65
|
+
{},
|
|
66
|
+
factory.defaultParams,
|
|
67
|
+
params,
|
|
68
|
+
{ config: merge({}, factory.defaultParams?.config, params?.config, { schema }) },
|
|
69
|
+
)
|
|
67
70
|
return factory.creatableModule.create<T>(mergedParams)
|
|
68
71
|
}
|
|
69
72
|
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
export const ModuleLimitationLabelName = 'network.xyo.module.limitation'
|
|
2
2
|
export type ModuleLimitationLabelName = typeof ModuleLimitationLabelName
|
|
3
3
|
|
|
4
|
-
export const ModuleLimitationViewLabel = {
|
|
5
|
-
ModuleLimitationLabelName: 'view',
|
|
6
|
-
}
|
|
4
|
+
export const ModuleLimitationViewLabel = { ModuleLimitationLabelName: 'view' }
|
package/src/ModuleParams.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type {
|
|
2
|
+
BaseParams, EmptyObject, WithAdditional,
|
|
3
|
+
} from '@xylabs/object'
|
|
2
4
|
import type { AccountInstance } from '@xyo-network/account-model'
|
|
3
5
|
|
|
4
6
|
import type { AnyConfigSchema, ModuleConfig } from './Config/index.ts'
|
package/src/ModuleQueryResult.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { BoundWitness } from '@xyo-network/boundwitness-model'
|
|
2
|
-
import type {
|
|
2
|
+
import type {
|
|
3
|
+
ModuleError, Payload, WithMeta,
|
|
4
|
+
} from '@xyo-network/payload-model'
|
|
3
5
|
|
|
4
6
|
export type ModuleQueryResult<P extends Payload = Payload, E extends ModuleError = ModuleError, B extends BoundWitness = BoundWitness> = [
|
|
5
7
|
WithMeta<B>,
|
|
@@ -8,7 +8,9 @@ import type { Logger } from '@xylabs/logger'
|
|
|
8
8
|
import { IdLogger } from '@xylabs/logger'
|
|
9
9
|
import { toJsonString } from '@xylabs/object'
|
|
10
10
|
|
|
11
|
-
import type {
|
|
11
|
+
import type {
|
|
12
|
+
ModuleFilter, ModuleFilterOptions, ModuleInstance, ModuleResolver,
|
|
13
|
+
} from '../instance/index.ts'
|
|
12
14
|
import { asModuleInstance } from '../instance/index.ts'
|
|
13
15
|
import { duplicateModules } from '../lib/index.ts'
|
|
14
16
|
import type { ModuleIdentifier } from '../ModuleIdentifier.ts'
|
|
@@ -88,15 +90,23 @@ export class ResolveHelper extends ResolveHelperStatic {
|
|
|
88
90
|
static async resolve<T extends ModuleInstance = ModuleInstance>(
|
|
89
91
|
config: ResolveHelperConfig,
|
|
90
92
|
idOrFilter: ModuleFilter<T> | ModuleIdentifier = '*',
|
|
91
|
-
{
|
|
93
|
+
{
|
|
94
|
+
maxDepth = 3, required = 'log', ...options
|
|
95
|
+
}: ModuleFilterOptions<T> = {},
|
|
92
96
|
): Promise<T | T[] | undefined> {
|
|
93
|
-
const {
|
|
97
|
+
const {
|
|
98
|
+
transformers, mod, logger = this.defaultLogger, dead = false, upResolver, downResolver, privateResolver,
|
|
99
|
+
} = config
|
|
94
100
|
const log = logger ? new IdLogger(logger, () => `ResolveHelper [${mod.id}][${idOrFilter}]`) : undefined
|
|
95
101
|
|
|
96
|
-
const downLocalOptions: ModuleFilterOptions<T> = {
|
|
102
|
+
const downLocalOptions: ModuleFilterOptions<T> = {
|
|
103
|
+
...options, direction: 'down', maxDepth, required: false,
|
|
104
|
+
}
|
|
97
105
|
const upLocalOptions: ModuleFilterOptions<T> = { ...downLocalOptions, direction: 'up' }
|
|
98
106
|
|
|
99
|
-
const childOptions: ModuleFilterOptions<T> = {
|
|
107
|
+
const childOptions: ModuleFilterOptions<T> = {
|
|
108
|
+
...options, maxDepth: maxDepth - 1, required: false,
|
|
109
|
+
}
|
|
100
110
|
|
|
101
111
|
const direction = options?.direction ?? 'all'
|
|
102
112
|
const up = direction === 'up' || direction === 'all'
|
package/src/lib/serializable.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// Inspired by https://stackoverflow.com/a/49079549/2803259
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
every, isArray, isBoolean, isNull, isNumber, isPlainObject, isString, isUndefined, overSome,
|
|
5
|
+
} from '@xylabs/lodash'
|
|
4
6
|
|
|
5
7
|
const JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString]
|
|
6
8
|
const JSONComplexChecks = [isPlainObject, isArray]
|