ekms 8.0.0-beta.1 → 8.0.0-beta.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. package/common/animals.instance.json +2542 -1375
  2. package/common/colors.instance.json +6796 -3773
  3. package/common/crew.instance.json +12836 -6611
  4. package/common/crew.test.json +714 -452
  5. package/common/dialogues.js +2 -18
  6. package/common/dimension.instance.json +242 -261
  7. package/common/dimension.test.json +314 -502
  8. package/common/edible.instance.json +19280 -10008
  9. package/common/emotions.instance.json +122 -129
  10. package/common/fastfood.instance.json +218824 -110556
  11. package/common/formulas.instance.json +216 -250
  12. package/common/formulas.js +2 -2
  13. package/common/help.test.json +10 -22
  14. package/common/helpers/concept.js +2 -1
  15. package/common/kirk.instance.json +564 -290
  16. package/common/length.instance.json +5153 -4677
  17. package/common/math.instance.json +140 -1157
  18. package/common/math.js +4 -4
  19. package/common/negation.instance.json +2 -0
  20. package/common/negation.js +38 -0
  21. package/common/negation.test.json +308 -0
  22. package/common/numbers.js +2 -2
  23. package/common/ordering.instance.json +292 -162
  24. package/common/people.instance.json +1902 -1015
  25. package/common/percentages.instance.json +2 -0
  26. package/common/percentages.js +57 -0
  27. package/common/percentages.test.json +751 -0
  28. package/common/pipboy.instance.json +7690 -6356
  29. package/common/pokemon.instance.json +3954 -2081
  30. package/common/pressure.instance.json +1265 -1193
  31. package/common/properties.instance.json +106 -61
  32. package/common/properties.js +2 -0
  33. package/common/reports.instance.json +557 -559
  34. package/common/sdefaults.js +10 -0
  35. package/common/spock.instance.json +564 -290
  36. package/common/temperature.instance.json +1297 -1209
  37. package/common/ui.instance.json +238 -259
  38. package/common/weight.instance.json +4905 -4166
  39. package/main.js +51 -46
  40. package/package.json +13 -6
@@ -0,0 +1,2 @@
1
+ {
2
+ }
@@ -0,0 +1,57 @@
1
+ const { Config, knowledgeModule, where } = require('./runtime').theprogrammablemind
2
+ const { defaultContextCheck } = require('./helpers')
3
+ const percentages_tests = require('./percentages.test.json')
4
+ const numbers = require('./numbers')
5
+
6
+ let configStruct = {
7
+ name: 'percentages',
8
+ operators: [
9
+ "((number/*) [percent])",
10
+ "((percent/1) [percentageOf|of] (number/*))",
11
+ ],
12
+ bridges: [
13
+ {
14
+ id: "percent",
15
+ words: ['percent', '%'],
16
+ bridge: "{ ...next(operator), modifiers: ['scale'], scale: before[0] }",
17
+ generatorp: ({context}) => context.text,
18
+ },
19
+ {
20
+ id: "percentageOf",
21
+ words: ['percent', '%'],
22
+ bridge: "{ ...next(operator), percentage: before[0], isResponse: true, semanticIsEvaluate: true, value: after[0] }",
23
+ evaluator: ({context, e}) => {
24
+ const scale = context.percentage.scale
25
+ const number = e(context.value)
26
+ const percentage = number.value * scale.value / 100
27
+ const result = { ...number, value: percentage, word: null, text: null }
28
+ context.evalue = result
29
+ context.isReponse = true
30
+ context.paraphrase = false
31
+ },
32
+ generatorp: ({context}) => context.text,
33
+ },
34
+ ],
35
+ debug: false,
36
+ version: '3',
37
+ };
38
+
39
+ const createConfig = () => {
40
+ const config = new Config(configStruct, module)
41
+ config.add(numbers())
42
+ return config
43
+ }
44
+
45
+ knowledgeModule( {
46
+ module,
47
+ createConfig,
48
+ description: 'talking about percentages',
49
+ test: {
50
+ name: './percentages.test.json',
51
+ contents: percentages_tests,
52
+ checks: {
53
+ context: [...defaultContextCheck, { property: 'scale', filter: ['marker', 'word', 'value'] }],
54
+ },
55
+
56
+ },
57
+ })