tpmkms_4wp 7.12.8 → 8.0.0-beta.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.
- package/common/animals.instance.json +192 -406
- package/common/animals.js +1 -1
- package/common/avatar.js +7 -5
- package/common/characters.js +12 -6
- package/common/{pipboyTemplate.instance.json → colors.instance.json} +13784 -8900
- package/common/colors.js +71 -0
- package/common/colors.test.json +4860 -0
- package/common/concept.js +2 -2
- package/common/crew.instance.json +3945 -3636
- package/common/crew.js +5 -3
- package/common/currency.js +0 -2
- package/common/dialogues.js +152 -20
- package/common/dialogues.test.json +1053 -33
- package/common/dimension.instance.json +750 -86
- package/common/dimension.js +15 -7
- package/common/dimension.test.json +289 -312
- package/common/edible.instance.json +446 -578
- package/common/edible.js +1 -1
- package/common/emotions.instance.json +67 -39
- package/common/emotions.js +1 -1
- package/common/fastfood.instance.json +1769 -2136
- package/common/fastfood.js +2 -2
- package/common/fastfood.test.json +7941 -3647
- package/common/formulas.instance.json +996 -0
- package/common/formulas.js +19 -6
- package/common/formulas.test.json +504 -2896
- package/common/gdefaults.js +2 -0
- package/common/help.js +7 -2
- package/common/help.test.json +18 -10
- package/common/helpers/concept.js +29 -9
- package/common/helpers/dialogues.js +17 -1
- package/common/helpers/formulas.js +0 -14
- package/common/helpers/meta.js +0 -1
- package/common/helpers/properties.js +6 -13
- package/common/helpers.js +5 -0
- package/common/javascript.js +8 -6
- package/common/kirk.instance.json +5 -1
- package/common/kirk.js +1 -1
- package/common/length.instance.json +417 -811
- package/common/length.js +1 -1
- package/common/math.instance.json +1938 -1
- package/common/math.js +17 -5
- package/common/meta.instance.json +1 -1
- package/common/meta.js +33 -10
- package/common/numbers.js +28 -24
- package/common/ordering.instance.json +98 -138
- package/common/ordering.js +1 -1
- package/common/people.instance.json +68 -121
- package/common/people.js +1 -1
- package/common/pipboy.instance.json +23411 -1076
- package/common/pipboy.js +31 -4
- package/common/pipboy.test.json +13 -9
- package/common/pokemon.instance.json +172 -223
- package/common/pokemon.js +1 -1
- package/common/pressure.instance.json +131 -81
- package/common/pressure.js +1 -1
- package/common/properties.instance.json +25 -49
- package/common/properties.js +20 -15
- package/common/properties.test.json +17605 -4030
- package/common/punctuation.js +8 -0
- package/common/punctuation.test.json +233 -5
- package/common/reports.instance.json +33 -65
- package/common/reports.js +9 -9
- package/common/scorekeeper.instance.json +1 -1
- package/common/scorekeeper.js +9 -7
- package/common/sizeable.js +7 -2
- package/common/spock.instance.json +5 -1
- package/common/spock.js +1 -1
- package/common/stm.js +16 -5
- package/common/tell.js +4 -2
- package/common/temperature.instance.json +142 -252
- package/common/temperature.js +1 -1
- package/common/testing.js +0 -1
- package/common/time.js +36 -20
- package/common/time.test.json +66 -44
- package/common/tokenize.js +47 -0
- package/common/tokenize.test.json +87 -0
- package/common/ui.instance.json +13 -1
- package/common/ui.js +0 -1
- package/common/weight.instance.json +335 -228
- package/common/weight.js +1 -1
- package/common/weight.test.json +242 -238
- package/main.js +6 -8
- package/package.json +10 -18
- package/common/dimensionTemplate.instance.json +0 -582
- package/common/dimensionTemplate.js +0 -35
- package/common/dimensionTemplate.test.json +0 -2
- package/common/formulasTemplate.instance.json +0 -483
- package/common/formulasTemplate.js +0 -30
- package/common/formulasTemplate.test.json +0 -2
- package/common/mathTemplate.instance.json +0 -1635
- package/common/mathTemplate.js +0 -32
- package/common/mathTemplate.test.json +0 -1422
- package/common/pipboyTemplate.js +0 -48
- package/common/pipboyTemplate.test.json +0 -2
package/common/crew.js
CHANGED
@@ -7,7 +7,8 @@ const crew_instance = require('./crew.instance.json')
|
|
7
7
|
const pluralize = require('pluralize')
|
8
8
|
|
9
9
|
const template = {
|
10
|
-
|
10
|
+
configs: [
|
11
|
+
"crew modifies member",
|
11
12
|
"kirk's name is jim",
|
12
13
|
"kirk's rank is captain",
|
13
14
|
"kirk's eyes are blue",
|
@@ -24,6 +25,7 @@ const template = {
|
|
24
25
|
"mccoy is a crew member",
|
25
26
|
"mccoy is a doctor",
|
26
27
|
"the status of the phasers is armed",
|
28
|
+
"photon modifies torpedoes",
|
27
29
|
"the status of the photon torpedoes is armed",
|
28
30
|
"phasers are weapons",
|
29
31
|
"torpedoes are weapons",
|
@@ -43,8 +45,8 @@ const createConfig = () => {
|
|
43
45
|
config.initializer( ({config, apis}) => {
|
44
46
|
const api = apis('properties')
|
45
47
|
const conceptApi = apis('concept')
|
46
|
-
conceptApi.kindOfConcept({ config, modifiers: ['photon'], object: 'torpedo' })
|
47
|
-
conceptApi.kindOfConcept({ config, modifiers: ['crew'], object: 'member' })
|
48
|
+
// conceptApi.kindOfConcept({ config, modifiers: ['photon'], object: 'torpedo' })
|
49
|
+
// conceptApi.kindOfConcept({ config, modifiers: ['crew'], object: 'member' })
|
48
50
|
api.createActionPrefix({
|
49
51
|
operator: 'arm',
|
50
52
|
create: ['arm', 'weapon'],
|
package/common/currency.js
CHANGED
package/common/dialogues.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
const { Config, knowledgeModule, where } = require('./runtime').theprogrammablemind
|
1
|
+
const { Config, knowledgeModule, where, stableId } = require('./runtime').theprogrammablemind
|
2
2
|
const meta = require('./meta.js')
|
3
3
|
const gdefaults = require('./gdefaults.js')
|
4
4
|
const sdefaults = require('./sdefaults.js')
|
@@ -36,6 +36,10 @@ const warningSameNotEvaluated = (log, one) => {
|
|
36
36
|
let configStruct = {
|
37
37
|
name: 'dialogues',
|
38
38
|
operators: [
|
39
|
+
"([makeObject] (word))",
|
40
|
+
"([setIdSuffix] (word))",
|
41
|
+
"([resetIdSuffix])",
|
42
|
+
|
39
43
|
"(([queryable]) [is|] ([queryable|]))",
|
40
44
|
"([is:queryBridge|] ([queryable]) ([queryable]))",
|
41
45
|
// "(([queryable]) [is:isEdBridge|is,are] ([isEdAble|]))",
|
@@ -54,7 +58,7 @@ let configStruct = {
|
|
54
58
|
"([what:optional])",
|
55
59
|
"(<the|> ([theAble|]))",
|
56
60
|
"(<a|a,an> ([theAble|]))",
|
57
|
-
"([unknown])",
|
61
|
+
// "([unknown])",
|
58
62
|
"([not] ([notAble|]))",
|
59
63
|
|
60
64
|
"([be] ([briefOrWordy|]))",
|
@@ -98,6 +102,30 @@ let configStruct = {
|
|
98
102
|
]
|
99
103
|
},
|
100
104
|
bridges: [
|
105
|
+
{
|
106
|
+
id: 'makeObject',
|
107
|
+
bridge: "{ ...next(operator), object: after[0] }",
|
108
|
+
generatorp: ({context, gp}) => `${context.word} ${gp(context.object)}`,
|
109
|
+
semantic: ({config, context, api}) => {
|
110
|
+
api.makeObject({ context: context.object, config, types: [] })
|
111
|
+
}
|
112
|
+
},
|
113
|
+
{
|
114
|
+
id: 'setIdSuffix',
|
115
|
+
bridge: "{ ...next(operator), suffix: after[0] }",
|
116
|
+
generatorp: ({context, gp}) => `${context.word} ${gp(context.suffix)}`,
|
117
|
+
semantic: ({context, api}) => {
|
118
|
+
api.setIdSuffix(context.suffix.text)
|
119
|
+
}
|
120
|
+
},
|
121
|
+
{
|
122
|
+
id: 'resetIdSuffix',
|
123
|
+
bridge: "{ ...next(operator) }",
|
124
|
+
semantic: ({context, api}) => {
|
125
|
+
api.setIdSuffix('')
|
126
|
+
}
|
127
|
+
},
|
128
|
+
|
101
129
|
{ id: "by", level: 0, bridge: "{ ...next(operator), object: after[0] }", optional: { 'isEder': "{ marker: 'unknown', implicit: true, concept: true }", }, },
|
102
130
|
|
103
131
|
{ id: "debug23", level: 0, bridge: "{ ...next(operator) }" },
|
@@ -150,8 +178,8 @@ let configStruct = {
|
|
150
178
|
{ id: "yesno", level: 0, bridge: "{ ...next(operator) }" },
|
151
179
|
{ id: "canBeQuestion", level: 0, bridge: "{ ...next(operator) }" },
|
152
180
|
{ id: "canBeQuestion", level: 1, bridge: "{ ...next(operator) }" },
|
153
|
-
{ id: "unknown", level: 0, bridge: "{ ...next(operator), unknown: true, dead: true }" },
|
154
|
-
{ id: "unknown", level: 1, bridge: "{ ...next(operator) }" },
|
181
|
+
// { id: "unknown", level: 0, bridge: "{ ...next(operator), unknown: true, dead: true }" },
|
182
|
+
// { id: "unknown", level: 1, bridge: "{ ...next(operator) }" },
|
155
183
|
{ id: "queryable", level: 0, bridge: "{ ...next(operator) }" },
|
156
184
|
{ id: "questionMark", level: 0, bridge: "{ ...before[0], query: [before.marker] }" },
|
157
185
|
// { id: "isEd", level: 0, bridge: "{ ...context, query: true }" },
|
@@ -235,7 +263,6 @@ let configStruct = {
|
|
235
263
|
applyq: () => 'the test question?',
|
236
264
|
onNevermind: ({objects, context}) => {
|
237
265
|
objects.onNevermindWasCalled = true
|
238
|
-
debugger
|
239
266
|
objects.nevermindType = nevermindType
|
240
267
|
return nevermindType == 'accept'
|
241
268
|
},
|
@@ -275,17 +302,19 @@ let configStruct = {
|
|
275
302
|
},
|
276
303
|
],
|
277
304
|
words: {
|
278
|
-
"
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
305
|
+
"literals": {
|
306
|
+
"?": [{"id": "questionMark", "initial": "{}" }],
|
307
|
+
"the": [{"id": "the", "initial": "{ modifiers: [] }" }],
|
308
|
+
"who": [{"id": "what", "initial": "{ modifiers: [], query: true }" }],
|
309
|
+
"yes": [{"id": "yesno", "initial": "{ value: true }" }],
|
310
|
+
"no": [{"id": "yesno", "initial": "{ value: false }" }],
|
311
|
+
"brief": [{"id": "briefOrWordy", "initial": "{ value: 'brief' }" }],
|
312
|
+
"wordy": [{"id": "briefOrWordy", "initial": "{ value: 'wordy' }" }],
|
313
|
+
"does": [{"id": "does", "initial": "{ number: 'one' }" }],
|
314
|
+
"do": [{"id": "does", "initial": "{ number: 'many' }" }],
|
315
|
+
"is": [{"id": "is", "initial": "{ number: 'one' }" }, {"id": "isEd", "initial": "{ number: 'one' }" }],
|
316
|
+
"are": [{"id": "is", "initial": "{ number: 'many' }" }, {"id": "isEd", "initial": "{ number: 'many' }" }],
|
317
|
+
}
|
289
318
|
},
|
290
319
|
|
291
320
|
floaters: ['query'],
|
@@ -301,6 +330,7 @@ let configStruct = {
|
|
301
330
|
{ "context": [['isEdAble', 0], ['is', 1], ], "choose": [0] },
|
302
331
|
],
|
303
332
|
hierarchy: [
|
333
|
+
['doubleQuote', 'queryable'],
|
304
334
|
['it', 'pronoun'],
|
305
335
|
['this', 'pronoun'],
|
306
336
|
['questionMark', 'punctuation'],
|
@@ -679,7 +709,6 @@ let configStruct = {
|
|
679
709
|
|
680
710
|
*/
|
681
711
|
context.value = kms.stm.api.mentions(context)
|
682
|
-
// debugger;
|
683
712
|
if (!context.value) {
|
684
713
|
// retry()
|
685
714
|
context.value = { marker: 'answerNotKnown' }
|
@@ -893,6 +922,102 @@ let configStruct = {
|
|
893
922
|
],
|
894
923
|
};
|
895
924
|
|
925
|
+
// move ask to the KM's since verbatim is called probably in dialogues?
|
926
|
+
const getAsk = (config) => (uuid) => {
|
927
|
+
return (asks) => {
|
928
|
+
const ask = (ask) => {
|
929
|
+
let oneShot = true // default
|
930
|
+
if (ask.oneShot === false) {
|
931
|
+
oneShot = false
|
932
|
+
}
|
933
|
+
|
934
|
+
const id_q = stableId('semantic')
|
935
|
+
const id_rs = []
|
936
|
+
let wasAsked = false
|
937
|
+
let wasApplied = false
|
938
|
+
const getWasAsked = () => {
|
939
|
+
return wasAsked
|
940
|
+
}
|
941
|
+
const setWasAsked = (value) => {
|
942
|
+
wasAsked = value
|
943
|
+
}
|
944
|
+
const getWasApplied = () => {
|
945
|
+
return wasApplied
|
946
|
+
}
|
947
|
+
const setWasApplied = (value) => {
|
948
|
+
wasApplied = value
|
949
|
+
}
|
950
|
+
|
951
|
+
const semanticsr = ask.semanticsr || []
|
952
|
+
if (semanticsr.length == 0) {
|
953
|
+
semanticsr.push({ match: ask.matchr, apply: ask.applyr })
|
954
|
+
}
|
955
|
+
for (const semantic of semanticsr) {
|
956
|
+
const id_r = stableId('semantic')
|
957
|
+
id_rs.push(id_r)
|
958
|
+
config.addSemantic({
|
959
|
+
uuid,
|
960
|
+
id: id_r,
|
961
|
+
tied_ids: [id_q],
|
962
|
+
oneShot,
|
963
|
+
where: semantic.where || ask.where || where(2),
|
964
|
+
source: 'response',
|
965
|
+
match: (args) => semantic.match(args),
|
966
|
+
apply: (args) => {
|
967
|
+
setWasApplied(true)
|
968
|
+
semantic.apply(args)
|
969
|
+
},
|
970
|
+
})
|
971
|
+
}
|
972
|
+
|
973
|
+
config.addSemantic({
|
974
|
+
uuid,
|
975
|
+
oneShot,
|
976
|
+
id: id_q,
|
977
|
+
tied_ids: id_rs,
|
978
|
+
where: ask.where,
|
979
|
+
isQuestion: true, // do one question at a time
|
980
|
+
getWasAsked,
|
981
|
+
getWasApplied,
|
982
|
+
onNevermind: ask.onNevermind,
|
983
|
+
source: 'question',
|
984
|
+
match: ({ context }) => context.marker == 'controlEnd' || context.marker == 'controlBetween',
|
985
|
+
apply: (args) => {
|
986
|
+
let matchq = ask.matchq
|
987
|
+
let applyq = ask.applyq
|
988
|
+
if (!matchq) {
|
989
|
+
let wasAsked = false
|
990
|
+
matchq = () => !wasAsked,
|
991
|
+
applyq = (args) => {
|
992
|
+
wasAsked = true
|
993
|
+
return ask.applyq(args)
|
994
|
+
}
|
995
|
+
}
|
996
|
+
if (matchq(args)) {
|
997
|
+
setWasAsked(true)
|
998
|
+
setWasApplied(false)
|
999
|
+
// args.context.motivationKeep = true
|
1000
|
+
args.verbatim(applyq(args))
|
1001
|
+
/*
|
1002
|
+
args.context.verbatim = applyq(args)
|
1003
|
+
args.context.isResponse = true;
|
1004
|
+
delete args.context.controlRemove;
|
1005
|
+
*/
|
1006
|
+
args.context.controlKeepMotivation = true
|
1007
|
+
}
|
1008
|
+
args.context.cascade = true
|
1009
|
+
}
|
1010
|
+
})
|
1011
|
+
}
|
1012
|
+
if (!Array.isArray(asks)) {
|
1013
|
+
asks = [asks]
|
1014
|
+
}
|
1015
|
+
|
1016
|
+
[...asks].reverse().forEach( (a) => ask(a) )
|
1017
|
+
}
|
1018
|
+
}
|
1019
|
+
|
1020
|
+
|
896
1021
|
const createConfig = () => {
|
897
1022
|
const config = new Config(configStruct, module)
|
898
1023
|
config.stop_auto_rebuild()
|
@@ -904,7 +1029,7 @@ const createConfig = () => {
|
|
904
1029
|
e: (context) => config.api.getEvaluator(args.s, args.log, context),
|
905
1030
|
}))
|
906
1031
|
*/
|
907
|
-
config.addArgs(({isA}) => ({
|
1032
|
+
config.addArgs(({config, api, isA}) => ({
|
908
1033
|
isAListable: (context, type) => {
|
909
1034
|
if (context.marker == 'list' || context.listable) {
|
910
1035
|
return context.value.every( (element) => isA(element.marker, type) )
|
@@ -912,7 +1037,7 @@ const createConfig = () => {
|
|
912
1037
|
return isA(context.marker, type)
|
913
1038
|
}
|
914
1039
|
},
|
915
|
-
toContext(v) {
|
1040
|
+
toContext: (v) => {
|
916
1041
|
if (Array.isArray(v)) {
|
917
1042
|
return { marker: 'list', level: 1, value: v }
|
918
1043
|
}
|
@@ -921,6 +1046,13 @@ const createConfig = () => {
|
|
921
1046
|
}
|
922
1047
|
return v
|
923
1048
|
},
|
1049
|
+
getUUIDScoped: (uuid) => { return {
|
1050
|
+
ask: getAsk(config)(uuid),
|
1051
|
+
}
|
1052
|
+
},
|
1053
|
+
toScopedId: (context) => {
|
1054
|
+
return api('dialogues').toScopedId(context)
|
1055
|
+
},
|
924
1056
|
}))
|
925
1057
|
objects.mentioned = []
|
926
1058
|
objects.variables = {
|
@@ -943,7 +1075,7 @@ knowledgeModule( {
|
|
943
1075
|
name: './dialogues.test.json',
|
944
1076
|
contents: dialogues_tests,
|
945
1077
|
checks: {
|
946
|
-
objects: ['onNevermindWasCalled', 'nevermindType'],
|
1078
|
+
objects: ['onNevermindWasCalled', 'nevermindType', 'idSuffix'],
|
947
1079
|
context: defaultContextCheck,
|
948
1080
|
},
|
949
1081
|
|