theprogrammablemind 7.5.4-beta.6 → 7.5.4-beta.7

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/client.js CHANGED
@@ -1662,7 +1662,14 @@ function where(goUp = 2) {
1662
1662
  const e = new Error();
1663
1663
  const regexForm1 = /\((.*):(\d+):(\d+)\)$/
1664
1664
  const regexForm2 = /at (.*):(\d+):(\d+)$/
1665
- const line = e.stack.split("\n")[goUp];
1665
+ const lines = e.stack.split("\n")
1666
+ let line
1667
+ for (line of lines.slice(1)) {
1668
+ if (!(line.includes("config.js:") || line.includes("client.js:"))) {
1669
+ break;
1670
+ }
1671
+ }
1672
+ // const line = e.stack.split("\n")[goUp];
1666
1673
  const match = regexForm1.exec(line) || regexForm2.exec(line);
1667
1674
  if (match) {
1668
1675
  return `${match[1]}:${match[2]}`
package/package.json CHANGED
@@ -62,6 +62,6 @@
62
62
  "json-stable-stringify": "^1.0.1",
63
63
  "node-fetch": "^2.6.1"
64
64
  },
65
- "version": "7.5.4-beta.6",
65
+ "version": "7.5.4-beta.7",
66
66
  "license": "ISC"
67
67
  }
package/src/config.js CHANGED
@@ -74,31 +74,39 @@ const handleBridgeProps = (config, bridge) => {
74
74
  }
75
75
  if (bridge.generatorp) {
76
76
  config.config.generators.unshift({
77
- where: bridge.generatorp.where || client.where(3),
77
+ where: bridge.generatorp.where || bridge.where || client.where(4),
78
78
  match: ({context}) => bridge.id == context.marker && context.paraphrase,
79
79
  apply: (args) => bridge.generatorp(args),
80
+ applyWrapped: bridge.generatorp,
81
+ property: 'generatorp',
80
82
  })
81
83
  }
82
84
  if (bridge.generatorr) {
83
85
  config.config.generators.unshift({
84
86
  // TODO merge response and isResponse
85
- where: bridge.generatorr.where || client.where(3),
87
+ where: bridge.generatorr.where || bridge.where || client.where(3),
86
88
  match: ({context}) => bridge.id == context.marker && !context.paraphrase && (context.response || context.isResponse),
87
89
  apply: (args) => bridge.generatorr(args),
90
+ applyWrapped: bridge.generatorr,
91
+ property: 'generatorr',
88
92
  })
89
93
  }
90
94
  if (bridge.evaluator) {
91
95
  config.config.semantics.unshift({
92
- where: bridge.evaluator.where || client.where(3),
96
+ where: bridge.evaluator.where || bridge.where || client.where(3),
93
97
  match: ({context}) => bridge.id == context.marker && context.evaluate,
94
98
  apply: (args) => bridge.evaluator(args),
99
+ applyWrapped: bridge.evaluator,
100
+ property: 'evaluator',
95
101
  })
96
102
  }
97
103
  if (bridge.semantic) {
98
104
  config.config.semantics.unshift({
99
- where: bridge.semantic.where || client.where(3),
105
+ where: bridge.semantic.where || bridge.where || client.where(3),
100
106
  match: ({context}) => bridge.id == context.marker,
101
107
  apply: (args) => bridge.semantic(args),
108
+ applyWrapped: bridge.semantic,
109
+ property: 'semantic',
102
110
  })
103
111
  }
104
112
  }
@@ -106,7 +114,7 @@ const handleBridgeProps = (config, bridge) => {
106
114
  const handleCalculatedProps = (baseConfig, moreConfig) => {
107
115
  for (let bridge of moreConfig.bridges) {
108
116
  const valid = [ 'before', 'bridge', 'development', 'evaluator', 'generatorp', 'generatorr', 'generators', 'id', 'convolution', 'inverted', 'isA', 'children', 'parents',
109
- 'level', 'optional', 'selector', 'semantic', 'words', /Bridge$/, 'localHierarchy' ]
117
+ 'level', 'optional', 'selector', 'semantic', 'words', /Bridge$/, 'localHierarchy', 'where' ]
110
118
  helpers.validProps(valid, bridge, 'bridge')
111
119
  handleBridgeProps(baseConfig, bridge)
112
120
  }
package/src/generators.js CHANGED
@@ -6,9 +6,11 @@ class Generator {
6
6
  // constructor ({ match, apply, uuid, index, km, priority, notes }) {
7
7
  constructor (generator) {
8
8
  generator = normalizeGenerator(generator)
9
- const { match, apply, uuid, index, km, priority, where, notes, debug } = generator
9
+ const { match, apply, uuid, index, km, priority, where, notes, debug, applyWrapped, property } = generator
10
10
  this.match = match
11
11
  this._apply = apply
12
+ this._applyWrapped = applyWrapped
13
+ this.property = property
12
14
  this.uuid = uuid
13
15
  this.index = index
14
16
  this.km = km
@@ -39,7 +41,7 @@ class Generator {
39
41
  }
40
42
 
41
43
  toString () {
42
- return `Generator(${this.match}, ${this._apply})`
44
+ return `Generator(${this.match}, ${this._applyWrapped || this._apply})${this.property ? `\nsee the ${this.property} property` : ''}`
43
45
  }
44
46
 
45
47
  matches (baseArgs, objects, context, hierarchy, config, options = {}) {
package/src/semantics.js CHANGED
@@ -6,9 +6,11 @@ class Semantic {
6
6
  // constructor ({match, apply, uuid, index, km, notes}) {
7
7
  constructor (semantic) {
8
8
  semantic = normalizeSemantic(semantic)
9
- const { match, apply, uuid, index, km, notes, priority, debug, where } = semantic
9
+ const { match, apply, uuid, index, km, notes, priority, debug, where, applyWrapped, property } = semantic
10
10
  this.matcher = match
11
11
  this._apply = apply
12
+ this._applyWrapped = applyWrapped
13
+ this.property = property
12
14
  this.uuid = uuid
13
15
  this.index = index
14
16
  this.km = km
@@ -27,7 +29,7 @@ class Semantic {
27
29
  }
28
30
 
29
31
  toString () {
30
- return `Semantic(${this.matcher}, ${this._apply})`
32
+ return `Semantic(${this.matcher}, ${this._applyWrapped || this._apply})${this.property ? `\nsee the ${this.property} property` : ''}`
31
33
  }
32
34
 
33
35
  getAPI (config) {