ekms 8.0.0-beta.9 → 8.0.0-beta.91

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 (113) hide show
  1. package/common/animals.instance.json +2915 -1553
  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 -29
  10. package/common/colors.instance.json +7487 -4114
  11. package/common/colors.js +5 -9
  12. package/common/colors.test.json +345 -780
  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/conjunction.instance.json +2 -0
  18. package/common/conjunction.js +104 -0
  19. package/common/conjunction.test.json +322 -0
  20. package/common/countable.js +20 -14
  21. package/common/countable.test.json +1050 -0
  22. package/common/crew.instance.json +13553 -7026
  23. package/common/crew.js +37 -42
  24. package/common/crew.test.json +714 -452
  25. package/common/currency.js +28 -46
  26. package/common/dialogues.js +150 -426
  27. package/common/dialogues.test.json +0 -786
  28. package/common/dimension.instance.json +491 -262
  29. package/common/dimension.js +22 -24
  30. package/common/dimension.test.json +508 -1702
  31. package/common/edible.instance.json +20446 -10806
  32. package/common/edible.js +4 -9
  33. package/common/emotions.instance.json +192 -124
  34. package/common/emotions.js +36 -39
  35. package/common/evaluate.instance.json +2 -0
  36. package/common/evaluate.js +53 -0
  37. package/common/evaluate.test.json +574 -0
  38. package/common/events.js +11 -15
  39. package/common/fastfood.instance.json +222642 -113618
  40. package/common/fastfood.js +76 -86
  41. package/common/fastfood.test.json +268 -90
  42. package/common/formulas.instance.json +443 -247
  43. package/common/formulas.js +20 -27
  44. package/common/gdefaults.js +40 -27
  45. package/common/help.js +9 -14
  46. package/common/help.test.json +65 -16
  47. package/common/helpers/concept.js +10 -7
  48. package/common/helpers/dialogues.js +5 -3
  49. package/common/helpers/properties.js +67 -64
  50. package/common/helpers.js +35 -24
  51. package/common/hierarchy.js +17 -25
  52. package/common/javascript.js +12 -19
  53. package/common/kirk.instance.json +583 -299
  54. package/common/kirk.js +6 -9
  55. package/common/length.instance.json +9005 -5001
  56. package/common/length.js +5 -9
  57. package/common/listener.js +48 -0
  58. package/common/listener.test.json +104 -0
  59. package/common/math.instance.json +406 -1178
  60. package/common/math.js +17 -21
  61. package/common/meta.js +24 -48
  62. package/common/nameable.instance.json +2 -0
  63. package/common/nameable.js +144 -0
  64. package/common/nameable.test.json +3191 -0
  65. package/common/negation.js +11 -7
  66. package/common/numbers.js +28 -32
  67. package/common/ordering.instance.json +443 -343
  68. package/common/ordering.js +81 -87
  69. package/common/ordinals.instance.json +2 -0
  70. package/common/ordinals.js +60 -0
  71. package/common/ordinals.test.json +306 -0
  72. package/common/people.instance.json +2210 -1150
  73. package/common/people.js +9 -14
  74. package/common/percentages.instance.json +2 -0
  75. package/common/percentages.js +53 -0
  76. package/common/percentages.test.json +751 -0
  77. package/common/pipboy.instance.json +11845 -6590
  78. package/common/pipboy.js +53 -62
  79. package/common/pipboy.test.json +2835 -0
  80. package/common/pokemon.instance.json +4300 -2285
  81. package/common/pokemon.js +8 -21
  82. package/common/pos.js +16 -14
  83. package/common/pressure.instance.json +2325 -1340
  84. package/common/pressure.js +5 -9
  85. package/common/properties.instance.json +148 -88
  86. package/common/properties.js +149 -160
  87. package/common/punctuation.js +16 -8
  88. package/common/reports.instance.json +1019 -551
  89. package/common/reports.js +77 -101
  90. package/common/reports.test.json +15623 -10458
  91. package/common/scorekeeper.js +19 -31
  92. package/common/sdefaults.js +17 -8
  93. package/common/sizeable.js +7 -11
  94. package/common/spock.instance.json +582 -298
  95. package/common/spock.js +6 -9
  96. package/common/stgame.js +20 -20
  97. package/common/stm.js +173 -31
  98. package/common/stm.test.json +1734 -1
  99. package/common/tell.js +15 -19
  100. package/common/temperature.instance.json +2430 -1429
  101. package/common/temperature.js +5 -9
  102. package/common/tester.js +15 -4
  103. package/common/testing.js +8 -12
  104. package/common/time.js +21 -26
  105. package/common/tokenize.js +6 -7
  106. package/common/ui.instance.json +150 -463
  107. package/common/ui.js +22 -33
  108. package/common/ui.test.json +641 -5357
  109. package/common/weight.instance.json +8034 -4503
  110. package/common/weight.js +5 -9
  111. package/common/yesno.js +6 -6
  112. package/main.js +20 -4
  113. package/package.json +37 -6
package/common/ui.js CHANGED
@@ -1,7 +1,7 @@
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
- const math = require('./math')
4
+ const ordinals = require('./ordinals')
5
5
  const ui_tests = require('./ui.test.json')
6
6
  const ui_instance = require('./ui.instance.json')
7
7
 
@@ -39,13 +39,13 @@ 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])",
46
46
  "([unselect])",
47
47
  "([cancel])",
48
- "([move] ([direction]))",
48
+ "([move] ([moveable])? ([direction]))",
49
49
  "([down])",
50
50
  "([up])",
51
51
  "([left])",
@@ -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,24 +125,19 @@ const configStruct = {
125
125
  {
126
126
  where: where(),
127
127
  id: "move",
128
- isA: ['verby'],
128
+ isA: ['verb'],
129
129
  level: 0,
130
- bridge: "{ ...next(operator), direction: after[0] }",
131
- generatorp: ({context, g}) => `move ${g(context.direction)}`,
130
+ optional: { 1: "{ marker: 'moveable', pullFromContext: true, default: true, skipDefault: true }" },
131
+ bridge: "{ ...next(operator), operator: operator, moveable: after[0], direction: after[1], generate: ['operator', 'moveable', 'direction' ] }",
132
132
  semantic: ({api, context}) => {
133
133
  api.move(context.direction.value, context.direction.steps ? context.direction.steps.value : 1)
134
134
  }
135
135
  },
136
- {
137
- id: "direction",
138
- level: 0,
139
- bridge: "{ ...next(operator) }"
140
- },
136
+ { id: "moveable", },
137
+ { id: "direction", },
141
138
  {
142
139
  id: "up",
143
- level: 0,
144
140
  isA: ['direction'],
145
- bridge: "{ ...next(operator) }"
146
141
  },
147
142
  {
148
143
  id: "down",
@@ -183,27 +178,21 @@ const template = {
183
178
  ],
184
179
  }
185
180
 
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
181
  // const config = createConfig()
196
182
 
197
183
  knowledgeModule({
184
+ config,
185
+ includes: [dialogues, ordinals],
186
+ api: () => new API(),
187
+
198
188
  module,
199
189
  description: 'Control a ui with speech',
200
- createConfig,
201
190
  test: {
202
191
  name: './ui.test.json',
203
192
  contents: ui_tests,
204
193
  checks: {
205
194
  objects: ['move', 'select', 'unselect', 'cancel', 'stop'],
206
- context: defaultContextCheck,
195
+ context: defaultContextCheck(['operator', 'direction', 'moveable']),
207
196
  },
208
197
  },
209
198
  template: {