tpmkms 8.0.0-beta.41 → 8.0.0-beta.43
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/common/animals.js +17 -20
- package/common/articles.js +6 -11
- package/common/avatar.js +5 -9
- package/common/characters.js +22 -26
- package/common/colors.instance.json +28 -0
- package/common/colors.js +4 -8
- package/common/comparable.js +5 -9
- package/common/concept.js +120 -124
- package/common/countable.js +5 -9
- package/common/crew.js +36 -41
- package/common/currency.js +25 -43
- package/common/dialogues.js +46 -49
- package/common/dimension.instance.json +8 -8
- package/common/dimension.js +7 -13
- package/common/edible.instance.json +112 -0
- package/common/edible.js +3 -8
- package/common/emotions.js +35 -38
- package/common/evaluate.js +5 -11
- package/common/events.js +6 -10
- package/common/fastfood.instance.json +401 -317
- package/common/fastfood.js +53 -63
- package/common/formulas.instance.json +10 -10
- package/common/formulas.js +7 -14
- package/common/gdefaults.js +8 -10
- package/common/help.js +7 -12
- package/common/hierarchy.js +8 -12
- package/common/javascript.js +7 -14
- package/common/kirk.js +5 -8
- package/common/length.js +4 -8
- package/common/listener.js +5 -11
- package/common/math.instance.json +16 -16
- package/common/math.js +6 -10
- package/common/meta.js +5 -22
- package/common/nameable.js +6 -13
- package/common/negation.js +5 -5
- package/common/numbers.js +5 -9
- package/common/ordering.instance.json +68 -0
- package/common/ordering.js +80 -86
- package/common/people.js +8 -12
- package/common/percentages.js +5 -9
- package/common/pipboy.instance.json +84 -28
- package/common/pipboy.js +7 -15
- package/common/pokemon.js +7 -20
- package/common/pos.js +4 -5
- package/common/pressure.js +4 -8
- package/common/properties.js +6 -12
- package/common/punctuation.js +5 -5
- package/common/reports.instance.json +1 -1
- package/common/reports.js +9 -14
- package/common/scorekeeper.js +8 -12
- package/common/sdefaults.js +4 -5
- package/common/sizeable.js +5 -9
- package/common/spock.js +5 -8
- package/common/stgame.js +18 -23
- package/common/stm.js +9 -15
- package/common/tell.js +9 -13
- package/common/temperature.instance.json +0 -112
- package/common/temperature.js +4 -8
- package/common/tester.js +1 -1
- package/common/testing.js +5 -9
- package/common/time.js +18 -23
- package/common/tokenize.js +4 -5
- package/common/ui.js +6 -12
- package/common/weight.js +4 -8
- package/common/yesno.js +5 -5
- package/package.json +2 -2
package/common/fastfood.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
const {
|
1
|
+
const { knowledgeModule, ensureTestFile, where } = require('./runtime').theprogrammablemind
|
2
2
|
const { defaultContextCheck, propertyToArray } = require('./helpers')
|
3
3
|
const edible = require('./edible')
|
4
4
|
const events = require('./events')
|
@@ -935,75 +935,65 @@ class State {
|
|
935
935
|
}
|
936
936
|
}
|
937
937
|
|
938
|
-
const
|
939
|
-
|
940
|
-
|
941
|
-
|
942
|
-
|
943
|
-
|
944
|
-
|
945
|
-
|
946
|
-
|
947
|
-
|
948
|
-
|
949
|
-
|
950
|
-
|
951
|
-
|
952
|
-
|
953
|
-
|
954
|
-
|
955
|
-
|
956
|
-
|
957
|
-
|
958
|
-
|
959
|
-
|
960
|
-
|
961
|
-
|
962
|
-
|
963
|
-
km('fastfood').api.state.add(element)
|
964
|
-
}
|
965
|
-
}
|
966
|
-
},
|
967
|
-
],
|
968
|
-
floaters: ['quantity'],
|
969
|
-
bridges: [
|
970
|
-
{
|
971
|
-
id: 'orderNoun',
|
972
|
-
parents: ['noun', 'queryable'],
|
973
|
-
evaluator: ({context, api}) => {
|
974
|
-
context.evalue = { marker: 'list', value: api.objects.items }
|
975
|
-
api.show()
|
938
|
+
const config = {
|
939
|
+
name: 'fastfood',
|
940
|
+
operators: [
|
941
|
+
"([orderNoun|order])",
|
942
|
+
"([showOrder|show] ([orderNoun/1]))",
|
943
|
+
],
|
944
|
+
// flatten: ['list'],
|
945
|
+
// TODO use node naming not python
|
946
|
+
semantics: [
|
947
|
+
{
|
948
|
+
where: where(),
|
949
|
+
priority: -10,
|
950
|
+
match: ({context}) => context.marker == 'compound_operator',
|
951
|
+
apply: async ({context, s}) => {
|
952
|
+
context.marker = 'list'
|
953
|
+
context.flatten = true
|
954
|
+
await s(context)
|
955
|
+
}
|
956
|
+
},
|
957
|
+
{
|
958
|
+
where: where(),
|
959
|
+
match: ({context, isAListable}) => isAListable(context, 'edible') && context.marker !== 'edible' && !context.same && !context.isResponse && !context.evaluate,
|
960
|
+
apply: ({context, km, api, instance}) => {
|
961
|
+
for (const element of propertyToArray(context)) {
|
962
|
+
km('fastfood').api.state.add(element)
|
976
963
|
}
|
964
|
+
}
|
965
|
+
},
|
966
|
+
],
|
967
|
+
floaters: ['quantity'],
|
968
|
+
bridges: [
|
969
|
+
{
|
970
|
+
id: 'orderNoun',
|
971
|
+
parents: ['noun', 'queryable'],
|
972
|
+
evaluator: ({context, api}) => {
|
973
|
+
context.evalue = { marker: 'list', value: api.objects.items }
|
974
|
+
api.show()
|
975
|
+
}
|
976
|
+
},
|
977
|
+
{
|
978
|
+
id: 'showOrder',
|
979
|
+
parents: ['verby'],
|
980
|
+
bridge: "{ ...next(operator), order: after[0] }",
|
981
|
+
generatorp: async ({context, g}) => `show ${await g(context.order)}`,
|
982
|
+
semantic: ({api}) => {
|
983
|
+
api.state.show()
|
977
984
|
},
|
978
|
-
|
979
|
-
|
980
|
-
parents: ['verby'],
|
981
|
-
bridge: "{ ...next(operator), order: after[0] }",
|
982
|
-
generatorp: async ({context, g}) => `show ${await g(context.order)}`,
|
983
|
-
semantic: ({api}) => {
|
984
|
-
api.state.show()
|
985
|
-
},
|
986
|
-
},
|
987
|
-
],
|
988
|
-
}, module)
|
989
|
-
config.stop_auto_rebuild()
|
990
|
-
await config.add(edible, countable, events, sizeable)
|
991
|
-
await config.setApi(api)
|
992
|
-
await config.initializer( ({api}) => {
|
993
|
-
api.state = new State(api)
|
994
|
-
})
|
995
|
-
if (additionalConfig) {
|
996
|
-
additionalConfig(config)
|
997
|
-
}
|
998
|
-
await config.restart_auto_rebuild()
|
999
|
-
return config
|
985
|
+
},
|
986
|
+
],
|
1000
987
|
}
|
1001
988
|
|
1002
989
|
knowledgeModule( {
|
990
|
+
config,
|
991
|
+
includes: [edible, countable, events, sizeable],
|
992
|
+
api: () => new API(),
|
993
|
+
initializer: ({api}) => { api.state = new State(api) },
|
994
|
+
|
1003
995
|
module,
|
1004
996
|
description: 'fastfood related concepts',
|
1005
|
-
createConfig,
|
1006
|
-
acceptsAdditionalConfig: true,
|
1007
997
|
test: {
|
1008
998
|
name: './fastfood.test.json',
|
1009
999
|
contents: fastfood_tests,
|
@@ -29,14 +29,14 @@
|
|
29
29
|
],
|
30
30
|
"semantics": [
|
31
31
|
{
|
32
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
32
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
33
33
|
"match": "({context, api}) => context.evaluate && api.get(context)",
|
34
34
|
"apply": "async ({context, api, e}) => {\n const { formula } = api.get(context)\n // console.log('greg24 -----------', JSON.stringify(formula, null, 2))\n context.evalue = await e(formula) \n }"
|
35
35
|
}
|
36
36
|
],
|
37
37
|
"bridges": [
|
38
38
|
{
|
39
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
39
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
40
40
|
"id": "formulaForVariable",
|
41
41
|
"isA": [
|
42
42
|
"preposition",
|
@@ -48,7 +48,7 @@
|
|
48
48
|
"evaluator": "({context, api, objects}) => {\n const formulas = api.gets(context.variable).map((f) => { return { ...f.equality, paraphrase: true } })\n context.evalue = { marker: 'list', value: formulas }\n }"
|
49
49
|
},
|
50
50
|
{
|
51
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
51
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
52
52
|
"id": "solve",
|
53
53
|
"bridge": "{ ...next(operator), equality: after[0], variable: after[2] }",
|
54
54
|
"generatorp": "async ({context, gp}) => `${context.word} ${await gp(context.equality)} for ${await gp(context.variable)}`",
|
@@ -74,7 +74,7 @@
|
|
74
74
|
]
|
75
75
|
},
|
76
76
|
{
|
77
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
77
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
78
78
|
"id": "calculate",
|
79
79
|
"isA": [
|
80
80
|
"verby"
|
@@ -90,7 +90,7 @@
|
|
90
90
|
"semantic": "async ({context, e}) => {\n context.evalue = await e(context.expression)\n context.isResponse = true\n }"
|
91
91
|
},
|
92
92
|
{
|
93
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
93
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
94
94
|
"id": "equals",
|
95
95
|
"bridge": "{ ...next(operator), left: before[0], right: after[0] }",
|
96
96
|
"words": [
|
@@ -868,12 +868,12 @@
|
|
868
868
|
],
|
869
869
|
"semantics": [
|
870
870
|
{
|
871
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
871
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5"
|
872
872
|
}
|
873
873
|
],
|
874
874
|
"bridges": [
|
875
875
|
{
|
876
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
876
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
877
877
|
"id": "formulaForVariable",
|
878
878
|
"isA": [
|
879
879
|
"preposition",
|
@@ -883,7 +883,7 @@
|
|
883
883
|
"bridge": "{ number: before[0].number, ...next(operator), what: before[0], equality: after[0], variable: after[1] }"
|
884
884
|
},
|
885
885
|
{
|
886
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
886
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
887
887
|
"id": "solve",
|
888
888
|
"bridge": "{ ...next(operator), equality: after[0], variable: after[2] }"
|
889
889
|
},
|
@@ -907,7 +907,7 @@
|
|
907
907
|
]
|
908
908
|
},
|
909
909
|
{
|
910
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
910
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
911
911
|
"id": "calculate",
|
912
912
|
"isA": [
|
913
913
|
"verby"
|
@@ -921,7 +921,7 @@
|
|
921
921
|
]
|
922
922
|
},
|
923
923
|
{
|
924
|
-
"where": "/home/dev/code/theprogrammablemind/kms/
|
924
|
+
"where": "/home/dev/code/theprogrammablemind/kms/node_modules/theprogrammablemind/src/helpers.js:5",
|
925
925
|
"id": "equals",
|
926
926
|
"bridge": "{ ...next(operator), left: before[0], right: after[0] }",
|
927
927
|
"words": [
|
package/common/formulas.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
const {
|
1
|
+
const { knowledgeModule, where, Digraph } = require('./runtime').theprogrammablemind
|
2
2
|
const { defaultContextCheck } = require('./helpers')
|
3
3
|
const dialogues = require('./dialogues.js')
|
4
4
|
const pos = require('./pos.js')
|
@@ -91,7 +91,7 @@ class API {
|
|
91
91
|
}
|
92
92
|
*/
|
93
93
|
|
94
|
-
let
|
94
|
+
let config = {
|
95
95
|
name: 'formulas',
|
96
96
|
operators: [
|
97
97
|
// TODO notations like (([arg1:]) [op] ([arg2:nameOfArg2}|word1])) -> just make the bridge + operators. put this in the bridge def / also calculate generators
|
@@ -188,24 +188,17 @@ let configStruct = {
|
|
188
188
|
const template = {
|
189
189
|
configs: [
|
190
190
|
"formulas are concepts",
|
191
|
-
|
191
|
+
config,
|
192
192
|
]
|
193
193
|
}
|
194
194
|
|
195
|
-
const createConfig = async () => {
|
196
|
-
const api = new API()
|
197
|
-
config = new Config({ name: 'formulas' }, module)
|
198
|
-
config.stop_auto_rebuild()
|
199
|
-
await config.add(dialogues, pos, math, hierarchy, comparable, countable)
|
200
|
-
await config.setApi(api)
|
201
|
-
await config.restart_auto_rebuild()
|
202
|
-
return config
|
203
|
-
}
|
204
|
-
|
205
195
|
knowledgeModule({
|
196
|
+
config: { name: 'formulas' },
|
197
|
+
includes: [dialogues, pos, math, hierarchy, comparable, countable],
|
198
|
+
api: () => new API(),
|
199
|
+
|
206
200
|
module,
|
207
201
|
description: 'Formulas using math',
|
208
|
-
createConfig,
|
209
202
|
template: { template, instance },
|
210
203
|
test: {
|
211
204
|
name: './formulas.test.json',
|
package/common/gdefaults.js
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
const pluralize = require('pluralize')
|
2
2
|
const { defaultContextCheck } = require('./helpers')
|
3
|
-
const {
|
3
|
+
const { knowledgeModule, where } = require('./runtime').theprogrammablemind
|
4
4
|
const tokenize = require('./tokenize.js')
|
5
5
|
const gdefaults_tests = require('./gdefaults.test.json')
|
6
6
|
const { isMany } = require('./helpers.js')
|
7
7
|
|
8
|
-
let
|
8
|
+
let config = {
|
9
9
|
name: 'gdefaults',
|
10
10
|
generators: [
|
11
11
|
/* TODO save for later
|
@@ -181,10 +181,7 @@ let configStruct = {
|
|
181
181
|
],
|
182
182
|
};
|
183
183
|
|
184
|
-
const
|
185
|
-
const config = new Config(configStruct, module)
|
186
|
-
await config.add(tokenize)
|
187
|
-
await config.initializer( ({config}) => {
|
184
|
+
const initializer = ({config}) => {
|
188
185
|
config.addArgs((args) => {
|
189
186
|
return {
|
190
187
|
number: (context) => isMany(context) ? "many" : "one",
|
@@ -198,14 +195,15 @@ const createConfig = async () => {
|
|
198
195
|
},
|
199
196
|
}
|
200
197
|
})
|
201
|
-
}
|
202
|
-
return config
|
203
|
-
}
|
198
|
+
}
|
204
199
|
|
205
200
|
knowledgeModule({
|
201
|
+
config,
|
202
|
+
includes: [tokenize],
|
203
|
+
initializer,
|
204
|
+
|
206
205
|
module,
|
207
206
|
description: 'defaults for generators',
|
208
|
-
createConfig,
|
209
207
|
test: {
|
210
208
|
name: './gdefaults.test.json',
|
211
209
|
contents: gdefaults_tests,
|
package/common/help.js
CHANGED
@@ -22,7 +22,7 @@ const getHelp = (config, indent=2) => {
|
|
22
22
|
return help
|
23
23
|
}
|
24
24
|
|
25
|
-
const
|
25
|
+
const config = {
|
26
26
|
name: 'help',
|
27
27
|
operators: [
|
28
28
|
"([help] ([withKM|with] ([km]))?)",
|
@@ -82,12 +82,7 @@ const configStruct = {
|
|
82
82
|
},
|
83
83
|
};
|
84
84
|
|
85
|
-
const
|
86
|
-
const config = new Config(configStruct, module)
|
87
|
-
config.stop_auto_rebuild()
|
88
|
-
await config.add(dialogues)
|
89
|
-
|
90
|
-
await config.initializer( ({ config, addWord, kms }) => {
|
85
|
+
const initializer = ({ config, addWord, kms }) => {
|
91
86
|
const names = new Set()
|
92
87
|
for (let name in kms) {
|
93
88
|
names.add(name);
|
@@ -95,15 +90,15 @@ const createConfig = async () => {
|
|
95
90
|
for (let name of names) {
|
96
91
|
addWord(name, {id: "km", initial: `{ value: '${name}', word: '${name}' }`})
|
97
92
|
}
|
98
|
-
}
|
99
|
-
await config.restart_auto_rebuild()
|
100
|
-
return config
|
101
|
-
}
|
93
|
+
}
|
102
94
|
|
103
95
|
knowledgeModule({
|
96
|
+
config,
|
97
|
+
includes: [dialogues],
|
98
|
+
initializer,
|
99
|
+
|
104
100
|
module,
|
105
101
|
description: 'Help the user with the current knowledge modules',
|
106
|
-
createConfig,
|
107
102
|
test: {
|
108
103
|
name: './help.test.json',
|
109
104
|
contents: help_tests,
|
package/common/hierarchy.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
const {
|
1
|
+
const { knowledgeModule, where } = require('./runtime').theprogrammablemind
|
2
2
|
const { defaultContextCheck } = require('./helpers')
|
3
3
|
const properties = require('./properties')
|
4
4
|
const hierarchy_tests = require('./hierarchy.test.json')
|
@@ -32,7 +32,7 @@ const getTypes = ( km, concept, instance ) => {
|
|
32
32
|
|
33
33
|
// TODO the types of rank are x y z ....
|
34
34
|
// TODO x is a kind of y
|
35
|
-
let
|
35
|
+
let config = {
|
36
36
|
name: 'hierarchy',
|
37
37
|
operators: [
|
38
38
|
// "([hierarchyAble|])",
|
@@ -284,23 +284,19 @@ let configStruct = {
|
|
284
284
|
]
|
285
285
|
};
|
286
286
|
|
287
|
-
const
|
288
|
-
const config = new Config(configStruct, module)
|
289
|
-
config.stop_auto_rebuild()
|
290
|
-
await config.add(properties)
|
291
|
-
await config.initializer( ({apis, hierarchy}) => {
|
287
|
+
const initializer = ({apis, hierarchy}) => {
|
292
288
|
apis('stm').addIsA( (child, parent) => {
|
293
289
|
return hierarchy.isA(child, parent)
|
294
290
|
})
|
295
|
-
}
|
296
|
-
await config.restart_auto_rebuild()
|
297
|
-
return config
|
298
|
-
}
|
291
|
+
}
|
299
292
|
|
300
293
|
knowledgeModule( {
|
294
|
+
config,
|
295
|
+
includes: [properties],
|
296
|
+
initializer,
|
297
|
+
|
301
298
|
module,
|
302
299
|
description: 'hierarchy of objects',
|
303
|
-
createConfig,
|
304
300
|
test: {
|
305
301
|
name: './hierarchy.test.json',
|
306
302
|
contents: hierarchy_tests,
|
package/common/javascript.js
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
const {
|
1
|
+
const { knowledgeModule, where } = require('./runtime').theprogrammablemind
|
2
2
|
const { defaultContextCheck } = require('./helpers')
|
3
3
|
const dialogues = require('./dialogues')
|
4
4
|
const javascript_tests = require('./javascript.test.json')
|
5
5
|
|
6
|
-
let
|
6
|
+
let config = {
|
7
7
|
name: 'javascript',
|
8
8
|
operators: [
|
9
9
|
"((<let> ([variable|])) [assignment|] (value))",
|
@@ -60,22 +60,15 @@ let configStruct = {
|
|
60
60
|
],
|
61
61
|
};
|
62
62
|
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
await config.initializer( ({objects, uuid}) => {
|
63
|
+
knowledgeModule( {
|
64
|
+
config,
|
65
|
+
includes: [dialogues],
|
66
|
+
initializer: ({objects, uuid}) => {
|
69
67
|
objects.variables = {}
|
70
|
-
}
|
71
|
-
await config.restart_auto_rebuild()
|
72
|
-
return config
|
73
|
-
}
|
68
|
+
},
|
74
69
|
|
75
|
-
knowledgeModule( {
|
76
70
|
module,
|
77
71
|
description: 'javascript interpreter',
|
78
|
-
createConfig,
|
79
72
|
test: {
|
80
73
|
name: './javascript.test.json',
|
81
74
|
contents: javascript_tests,
|
package/common/kirk.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
const {
|
1
|
+
const { knowledgeModule, where } = require('./runtime').theprogrammablemind
|
2
2
|
const { defaultContextCheck } = require('./helpers')
|
3
3
|
const crew = require('./crew')
|
4
4
|
const kirk_tests = require('./kirk.test.json')
|
@@ -14,18 +14,15 @@ const template = {
|
|
14
14
|
// TODO what is the name of you
|
15
15
|
// TODO crew members -> who are the crew members
|
16
16
|
|
17
|
-
const createConfig = async () => {
|
18
|
-
const config = new Config({ name: 'kirk', }, module)
|
19
|
-
await config.add(crew)
|
20
|
-
return config
|
21
|
-
}
|
22
|
-
|
23
17
|
kirk_instance.base = 'crew'
|
18
|
+
|
24
19
|
// config.load(template, kirk_instance)
|
25
20
|
knowledgeModule( {
|
21
|
+
config: { name: 'kirk', },
|
22
|
+
includes: [crew],
|
23
|
+
|
26
24
|
module,
|
27
25
|
description: 'Captain Kirk Simulator using a KM template',
|
28
|
-
createConfig,
|
29
26
|
test: {
|
30
27
|
name: './kirk.test.json',
|
31
28
|
contents: kirk_tests,
|
package/common/length.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
const {
|
1
|
+
const { knowledgeModule, where, Digraph } = require('./runtime').theprogrammablemind
|
2
2
|
const { defaultContextCheck } = require('./helpers')
|
3
3
|
const dimension = require('./dimension.js')
|
4
4
|
const length_tests = require('./length.test.json')
|
@@ -36,16 +36,12 @@ const template = {
|
|
36
36
|
],
|
37
37
|
}
|
38
38
|
|
39
|
-
const createConfig = async () => {
|
40
|
-
const config = new Config({ name: 'length' }, module)
|
41
|
-
await config.add(dimension)
|
42
|
-
return config
|
43
|
-
}
|
44
|
-
|
45
39
|
knowledgeModule({
|
40
|
+
config: { name: 'length' },
|
41
|
+
includes: [dimension],
|
42
|
+
|
46
43
|
module,
|
47
44
|
description: 'Length dimension',
|
48
|
-
createConfig,
|
49
45
|
test: {
|
50
46
|
name: './length.test.json',
|
51
47
|
contents: length_tests,
|
package/common/listener.js
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
const {
|
1
|
+
const { knowledgeModule, where } = require('./runtime').theprogrammablemind
|
2
2
|
const { defaultContextCheck } = require('./helpers')
|
3
3
|
const helpers = require('./helpers')
|
4
4
|
const gdefaults = require('./gdefaults')
|
5
5
|
const listener_tests = require('./listener.test.json')
|
6
6
|
|
7
|
-
const
|
7
|
+
const config = {
|
8
8
|
name: 'listener',
|
9
9
|
operators: [
|
10
10
|
{ pattern: "([call])", development: true },
|
@@ -31,18 +31,12 @@ const configStruct = {
|
|
31
31
|
],
|
32
32
|
}
|
33
33
|
|
34
|
-
let createConfig = async () => {
|
35
|
-
const config = new Config(configStruct, module)
|
36
|
-
config.stop_auto_rebuild()
|
37
|
-
await config.add(gdefaults)
|
38
|
-
await config.restart_auto_rebuild()
|
39
|
-
return config
|
40
|
-
}
|
41
|
-
|
42
34
|
knowledgeModule( {
|
35
|
+
config,
|
36
|
+
includes: [gdefaults],
|
37
|
+
|
43
38
|
module,
|
44
39
|
description: 'test of listeners',
|
45
|
-
createConfig,
|
46
40
|
test: {
|
47
41
|
name: './listener.test.json',
|
48
42
|
contents: listener_tests,
|