ekms 8.0.0-beta.6 → 8.0.0-beta.61

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. package/common/animals.instance.json +2871 -1379
  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/avatar.js +5 -9
  6. package/common/characters.js +22 -28
  7. package/common/colors.instance.json +7175 -3634
  8. package/common/colors.js +4 -8
  9. package/common/colors.test.json +345 -780
  10. package/common/comparable.instance.json +1750 -0
  11. package/common/comparable.js +36 -28
  12. package/common/comparable.test.json +438 -2
  13. package/common/concept.js +120 -118
  14. package/common/countable.js +19 -13
  15. package/common/countable.test.json +1050 -0
  16. package/common/crew.instance.json +13067 -6598
  17. package/common/crew.js +36 -41
  18. package/common/crew.test.json +714 -452
  19. package/common/currency.js +27 -45
  20. package/common/dialogues.js +161 -285
  21. package/common/dimension.instance.json +474 -253
  22. package/common/dimension.js +16 -22
  23. package/common/dimension.test.json +446 -1640
  24. package/common/edible.instance.json +20057 -10041
  25. package/common/edible.js +3 -8
  26. package/common/emotions.instance.json +147 -129
  27. package/common/emotions.js +35 -38
  28. package/common/evaluate.instance.json +2 -0
  29. package/common/evaluate.js +49 -0
  30. package/common/evaluate.test.json +574 -0
  31. package/common/events.js +10 -14
  32. package/common/fastfood.instance.json +221825 -111641
  33. package/common/fastfood.js +75 -85
  34. package/common/fastfood.test.json +268 -90
  35. package/common/formulas.instance.json +455 -249
  36. package/common/formulas.js +19 -26
  37. package/common/gdefaults.js +24 -26
  38. package/common/help.js +7 -12
  39. package/common/help.test.json +22 -22
  40. package/common/helpers/concept.js +10 -7
  41. package/common/helpers/dialogues.js +2 -3
  42. package/common/helpers/properties.js +54 -62
  43. package/common/helpers.js +6 -5
  44. package/common/hierarchy.js +16 -24
  45. package/common/javascript.js +11 -18
  46. package/common/kirk.instance.json +584 -290
  47. package/common/kirk.js +5 -8
  48. package/common/length.instance.json +8834 -4757
  49. package/common/length.js +4 -8
  50. package/common/listener.js +48 -0
  51. package/common/listener.test.json +104 -0
  52. package/common/math.instance.json +425 -1187
  53. package/common/math.js +16 -20
  54. package/common/meta.js +23 -47
  55. package/common/nameable.instance.json +2 -0
  56. package/common/nameable.js +135 -0
  57. package/common/nameable.test.json +2121 -0
  58. package/common/negation.instance.json +2 -0
  59. package/common/negation.js +38 -0
  60. package/common/negation.test.json +308 -0
  61. package/common/numbers.js +27 -31
  62. package/common/ordering.instance.json +366 -246
  63. package/common/ordering.js +80 -86
  64. package/common/people.instance.json +2134 -1022
  65. package/common/people.js +8 -13
  66. package/common/percentages.instance.json +2 -0
  67. package/common/percentages.js +53 -0
  68. package/common/percentages.test.json +751 -0
  69. package/common/pipboy.instance.json +11767 -6295
  70. package/common/pipboy.js +48 -59
  71. package/common/pokemon.instance.json +4226 -2081
  72. package/common/pokemon.js +7 -20
  73. package/common/pos.js +12 -13
  74. package/common/pressure.instance.json +2208 -1175
  75. package/common/pressure.js +4 -8
  76. package/common/properties.instance.json +131 -61
  77. package/common/properties.js +57 -134
  78. package/common/punctuation.js +6 -6
  79. package/common/reports.instance.json +1018 -530
  80. package/common/reports.js +73 -97
  81. package/common/scorekeeper.js +18 -30
  82. package/common/sdefaults.js +16 -7
  83. package/common/sizeable.js +6 -10
  84. package/common/spock.instance.json +584 -290
  85. package/common/spock.js +5 -8
  86. package/common/stgame.js +19 -19
  87. package/common/stm.js +164 -27
  88. package/common/stm.test.json +1734 -1
  89. package/common/tell.js +14 -18
  90. package/common/temperature.instance.json +2271 -1222
  91. package/common/temperature.js +4 -8
  92. package/common/tester.js +3 -3
  93. package/common/testing.js +8 -12
  94. package/common/time.js +20 -25
  95. package/common/tokenize.js +4 -5
  96. package/common/ui.instance.json +459 -240
  97. package/common/ui.js +16 -22
  98. package/common/weight.instance.json +7646 -4026
  99. package/common/weight.js +4 -8
  100. package/common/yesno.js +5 -5
  101. package/main.js +59 -46
  102. package/package.json +28 -5
package/common/ui.js CHANGED
@@ -1,4 +1,4 @@
1
- const { Config, knowledgeModule, where, Digraph } = require('./runtime').theprogrammablemind
1
+ const { knowledgeModule, where, Digraph } = require('./runtime').theprogrammablemind
2
2
  const { defaultContextCheck } = require('./helpers')
3
3
  const dialogues = require('./dialogues')
4
4
  const math = require('./math')
@@ -39,7 +39,7 @@ class API {
39
39
  again
40
40
  stop/start listening
41
41
  */
42
- const configStruct = {
42
+ const config = {
43
43
  name: 'ui',
44
44
  operators: [
45
45
  "([select])",
@@ -58,7 +58,7 @@ const configStruct = {
58
58
  {
59
59
  where: where(),
60
60
  match: ({context, isA}) => isA(context, 'direction'),
61
- apply: ({context, insert, s, fragments}) => {
61
+ apply: async ({context, insert, s, fragments}) => {
62
62
  const direction = context
63
63
  const fragment = fragments("move direction")
64
64
  const mappings = [{
@@ -66,8 +66,8 @@ const configStruct = {
66
66
  match: ({context}) => context.value == 'direction',
67
67
  apply: ({context}) => Object.assign(context, direction),
68
68
  }]
69
- const instantiation = fragment.instantiate(mappings)
70
- s(instantiation)
69
+ const instantiation = await fragment.instantiate(mappings)
70
+ await s(instantiation)
71
71
  }
72
72
  },
73
73
  ],
@@ -75,7 +75,7 @@ const configStruct = {
75
75
  {
76
76
  where: where(),
77
77
  id: "select",
78
- isA: ['verby'],
78
+ isA: ['verb'],
79
79
  level: 0,
80
80
  bridge: "{ ...next(operator) }",
81
81
  semantic: ({api, context}) => {
@@ -85,7 +85,7 @@ const configStruct = {
85
85
  {
86
86
  where: where(),
87
87
  id: "unselect",
88
- isA: ['verby'],
88
+ isA: ['verb'],
89
89
  level: 0,
90
90
  bridge: "{ ...next(operator) }",
91
91
  semantic: ({api, context}) => {
@@ -103,7 +103,7 @@ const configStruct = {
103
103
  {
104
104
  where: where(),
105
105
  id: "cancel",
106
- isA: ['verby'],
106
+ isA: ['verb'],
107
107
  level: 0,
108
108
  words: ['close'],
109
109
  bridge: "{ ...next(operator) }",
@@ -114,10 +114,10 @@ const configStruct = {
114
114
  {
115
115
  where: where(),
116
116
  id: "stop",
117
- isA: ['verby'],
117
+ isA: ['verb'],
118
118
  level: 0,
119
119
  bridge: "{ ...next(operator), action: after[0] }",
120
- generatorp: ({context, g}) => `stop ${g(context.action)}`,
120
+ generatorp: async ({context, g}) => `stop ${await g(context.action)}`,
121
121
  semantic: ({api, context}) => {
122
122
  api.stop(context.action.value)
123
123
  }
@@ -125,10 +125,10 @@ const configStruct = {
125
125
  {
126
126
  where: where(),
127
127
  id: "move",
128
- isA: ['verby'],
128
+ isA: ['verb'],
129
129
  level: 0,
130
130
  bridge: "{ ...next(operator), direction: after[0] }",
131
- generatorp: ({context, g}) => `move ${g(context.direction)}`,
131
+ generatorp: async ({context, g}) => `move ${await g(context.direction)}`,
132
132
  semantic: ({api, context}) => {
133
133
  api.move(context.direction.value, context.direction.steps ? context.direction.steps.value : 1)
134
134
  }
@@ -183,21 +183,15 @@ const template = {
183
183
  ],
184
184
  }
185
185
 
186
- const createConfig = () => {
187
- const config = new Config(configStruct, module)
188
- config.stop_auto_rebuild()
189
- config.add(dialogues(), math())
190
- config.api = new API()
191
- config.restart_auto_rebuild()
192
- return config
193
- }
194
-
195
186
  // const config = createConfig()
196
187
 
197
188
  knowledgeModule({
189
+ config,
190
+ includes: [dialogues, math],
191
+ api: () => new API(),
192
+
198
193
  module,
199
194
  description: 'Control a ui with speech',
200
- createConfig,
201
195
  test: {
202
196
  name: './ui.test.json',
203
197
  contents: ui_tests,