ekms 8.0.0 → 8.1.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.
Files changed (124) hide show
  1. package/common/animals.instance.json +3055 -1651
  2. package/common/animals.js +17 -20
  3. package/common/articles.js +103 -0
  4. package/common/articles.test.json +310 -0
  5. package/common/asking.instance.json +2 -0
  6. package/common/asking.js +253 -0
  7. package/common/asking.test.json +2290 -0
  8. package/common/avatar.js +6 -10
  9. package/common/characters.js +23 -30
  10. package/common/colors.instance.json +25666 -0
  11. package/common/colors.js +67 -0
  12. package/common/colors.test.json +4425 -0
  13. package/common/comparable.instance.json +1750 -0
  14. package/common/comparable.js +36 -28
  15. package/common/comparable.test.json +1196 -2
  16. package/common/concept.js +121 -119
  17. package/common/concept.test.json +688 -0
  18. package/common/conjunction.instance.json +2 -0
  19. package/common/conjunction.js +104 -0
  20. package/common/conjunction.test.json +322 -0
  21. package/common/countable.js +20 -14
  22. package/common/countable.test.json +1050 -0
  23. package/common/crew.instance.json +16432 -9850
  24. package/common/crew.js +39 -42
  25. package/common/crew.test.json +714 -452
  26. package/common/currency.js +28 -46
  27. package/common/dialogues.js +187 -429
  28. package/common/dialogues.test.json +684 -450
  29. package/common/dimension.instance.json +517 -289
  30. package/common/dimension.js +22 -24
  31. package/common/dimension.test.json +727 -1944
  32. package/common/edible.instance.json +20506 -10664
  33. package/common/edible.js +4 -9
  34. package/common/emotions.instance.json +195 -123
  35. package/common/emotions.js +36 -39
  36. package/common/evaluate.instance.json +2 -0
  37. package/common/evaluate.js +53 -0
  38. package/common/evaluate.test.json +574 -0
  39. package/common/events.js +11 -15
  40. package/common/fastfood.instance.json +223185 -113172
  41. package/common/fastfood.js +77 -87
  42. package/common/fastfood.test.json +8205 -3733
  43. package/common/formulas.instance.json +444 -244
  44. package/common/formulas.js +20 -27
  45. package/common/formulas.test.json +1027 -955
  46. package/common/gdefaults.js +45 -32
  47. package/common/help.js +9 -14
  48. package/common/help.test.json +71 -18
  49. package/common/helpers/concept.js +37 -10
  50. package/common/helpers/dialogues.js +22 -4
  51. package/common/helpers/formulas.js +0 -14
  52. package/common/helpers/meta.js +0 -1
  53. package/common/helpers/properties.js +92 -84
  54. package/common/helpers.js +35 -24
  55. package/common/hierarchy.js +18 -25
  56. package/common/javascript.js +12 -19
  57. package/common/kirk.instance.json +583 -300
  58. package/common/kirk.js +6 -9
  59. package/common/length.instance.json +8995 -4964
  60. package/common/length.js +5 -9
  61. package/common/listener.js +48 -0
  62. package/common/listener.test.json +104 -0
  63. package/common/math.instance.json +409 -1202
  64. package/common/math.js +17 -21
  65. package/common/meta.js +24 -50
  66. package/common/nameable.instance.json +2 -0
  67. package/common/nameable.js +144 -0
  68. package/common/nameable.test.json +3191 -0
  69. package/common/negation.instance.json +2 -0
  70. package/common/negation.js +38 -0
  71. package/common/negation.test.json +308 -0
  72. package/common/numbers.js +28 -32
  73. package/common/ordering.instance.json +459 -274
  74. package/common/ordering.js +81 -87
  75. package/common/ordinals.instance.json +2 -0
  76. package/common/ordinals.js +61 -0
  77. package/common/ordinals.test.json +412 -0
  78. package/common/people.instance.json +2138 -1321
  79. package/common/people.js +9 -14
  80. package/common/people.test.json +1815 -1073
  81. package/common/percentages.instance.json +2 -0
  82. package/common/percentages.js +53 -0
  83. package/common/percentages.test.json +751 -0
  84. package/common/pipboy.instance.json +12261 -6898
  85. package/common/pipboy.js +53 -62
  86. package/common/pipboy.test.json +2835 -0
  87. package/common/pokemon.instance.json +4432 -2351
  88. package/common/pokemon.js +8 -21
  89. package/common/pos.js +16 -14
  90. package/common/pressure.instance.json +2311 -1303
  91. package/common/pressure.js +5 -9
  92. package/common/properties.instance.json +151 -87
  93. package/common/properties.js +164 -167
  94. package/common/properties.test.json +17605 -4030
  95. package/common/punctuation.js +24 -8
  96. package/common/punctuation.test.json +233 -5
  97. package/common/reports.instance.json +1037 -551
  98. package/common/reports.js +77 -103
  99. package/common/reports.test.json +15623 -10458
  100. package/common/scorekeeper.js +19 -31
  101. package/common/sdefaults.js +17 -8
  102. package/common/sizeable.js +13 -12
  103. package/common/spock.instance.json +582 -299
  104. package/common/spock.js +6 -9
  105. package/common/stgame.js +20 -20
  106. package/common/stm.js +182 -29
  107. package/common/stm.test.json +1734 -1
  108. package/common/tell.js +15 -19
  109. package/common/temperature.instance.json +2379 -1355
  110. package/common/temperature.js +5 -9
  111. package/common/tester.js +15 -4
  112. package/common/testing.js +8 -13
  113. package/common/time.js +21 -26
  114. package/common/tokenize.js +8 -8
  115. package/common/tokenize.test.json +86 -1
  116. package/common/ui.instance.json +151 -460
  117. package/common/ui.js +22 -34
  118. package/common/ui.test.json +641 -5357
  119. package/common/weight.instance.json +7957 -4350
  120. package/common/weight.js +5 -9
  121. package/common/weight.test.json +242 -238
  122. package/common/yesno.js +6 -6
  123. package/main.js +68 -45
  124. package/package.json +44 -6
package/common/avatar.js CHANGED
@@ -1,11 +1,11 @@
1
- const { Config, knowledgeModule, where } = require('./runtime').theprogrammablemind
1
+ const { knowledgeModule, where } = require('./runtime').theprogrammablemind
2
2
  const { defaultContextCheck } = require('./helpers')
3
3
  const dialogues = require('./dialogues')
4
4
  const hierarchy = require('./hierarchy')
5
5
  const emotions = require('./emotions')
6
6
  const avatar_tests = require('./avatar.test.json')
7
7
 
8
- let configStruct = {
8
+ let config = {
9
9
  name: 'avatar',
10
10
 
11
11
  // TODO make different response for answerNotKnown based on emotions
@@ -68,21 +68,17 @@ let configStruct = {
68
68
 
69
69
  };
70
70
 
71
- const createConfig = () => {
72
- const config = new Config(configStruct, module)
73
- config.add(hierarchy(), emotions())
74
- return config
75
- }
76
-
77
71
  knowledgeModule( {
72
+ config,
73
+ includes: [hierarchy, emotions],
74
+
78
75
  module,
79
76
  description: 'avatar for dialogues',
80
- createConfig,
81
77
  test: {
82
78
  name: './avatar.test.json',
83
79
  contents: avatar_tests,
84
80
  checks: {
85
- context: defaultContextCheck,
81
+ context: defaultContextCheck(),
86
82
  },
87
83
  }
88
84
  })
@@ -1,4 +1,4 @@
1
- const { Config, knowledgeModule, where } = require('./runtime').theprogrammablemind
1
+ const { knowledgeModule, where, process:clientProcess } = require('./runtime').theprogrammablemind
2
2
  const { defaultContextCheck } = require('./helpers')
3
3
  const gdefaults = require('./gdefaults.js')
4
4
  const createCurrencyKM = require('./currency.js')
@@ -28,7 +28,7 @@ const getHelp = (config, indent=2) => {
28
28
  -> get response back: sally said: blah
29
29
  */
30
30
 
31
- let configStruct = {
31
+ let config = {
32
32
  name: 'characters',
33
33
 
34
34
  operators: [
@@ -98,7 +98,6 @@ let configStruct = {
98
98
  const words = context.words.map( (context) => context.word )
99
99
  const utterance = words.join(' ')
100
100
  const config = km('characters')
101
- debugger
102
101
  const api = config._api.apis[context.value]
103
102
  api.process(config, utterance).then( (result) => {
104
103
  if (!api.response) {
@@ -127,7 +126,8 @@ class Sally {
127
126
  }
128
127
  */
129
128
  this.timeKM.server(config.getServer(), config.getAPIKey())
130
- return this.timeKM.process(utterance)
129
+ // return this.timeKM.process(utterance)
130
+ return clientProcess(this.timeKM, utterance)
131
131
  }
132
132
 
133
133
  response({context, result}) {
@@ -151,7 +151,9 @@ class Bob {
151
151
 
152
152
  process(config, utterance) {
153
153
  this.currencyKM.server(config.getServer(), config.getAPIKey())
154
- return this.currencyKM.process(utterance, { credentials: this.credentials })
154
+ // return this.currencyKM.process(utterance, { credentials: this.credentials })
155
+ // return clientProcess(this.currencyKM.process, utterance, { credentials: this.credentials })
156
+ return clientProcess(this.currencyKM, utterance)
155
157
  }
156
158
 
157
159
  response({context, result}) {
@@ -174,41 +176,32 @@ const initializeApi = (config, api) => {
174
176
  }
175
177
 
176
178
 
177
- const createConfig = () => {
178
- const timeKM = createTimeKM()
179
- const currencyKM = createCurrencyKM()
180
- const api = new Sally(timeKM)
181
- const api2 = new Bob(currencyKM)
182
-
183
- const config = new Config(configStruct, module)
184
- config.stop_auto_rebuild()
185
- config.add(gdefaults())
186
-
187
- config.multiApi = initializeApi
188
- config.initializer( ({isModule, config, km}) => {
189
- if (!isModule) {
190
- // config.api = api2
191
- // config.api = api
192
- const config = km('characters')
193
- config.api = api2
194
- config.api = api
195
- }
196
- })
197
- config.restart_auto_rebuild()
198
- return config
179
+ const initializer = async ({isModule, km}) => {
180
+ if (!isModule) {
181
+ const timeKM = await createTimeKM()
182
+ const currencyKM = await createCurrencyKM()
183
+ const config = km('characters')
184
+ const api = new Sally(timeKM)
185
+ const api2 = new Bob(currencyKM)
186
+ await config.setApi(() => api2)
187
+ await config.setApi(() => api)
188
+ }
199
189
  }
200
-
201
190
  // mode this to non-module init only
202
191
  knowledgeModule({
192
+ config,
193
+ includes: [gdefaults],
194
+ initializer,
195
+ multiApiInitializer: initializeApi,
196
+
203
197
  module,
204
198
  description: 'this module is for creating a team of characters that can respond to commands',
205
199
  demo: "https://youtu.be/eA25GZ0ZAHo",
206
- createConfig,
207
200
  test: {
208
201
  name: './characters.test.json',
209
202
  contents: characters_tests,
210
203
  checks: {
211
- context: defaultContextCheck,
204
+ context: defaultContextCheck(),
212
205
  },
213
206
  },
214
207
  })