@haibun/core 1.73.0 → 1.74.0

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 (89) hide show
  1. package/build/applyEffectFeatures.d.ts.map +1 -1
  2. package/build/applyEffectFeatures.js +4 -2
  3. package/build/applyEffectFeatures.js.map +1 -1
  4. package/build/currentVersion.d.ts +1 -1
  5. package/build/currentVersion.js +1 -1
  6. package/build/lib/astepper.d.ts +2 -3
  7. package/build/lib/astepper.d.ts.map +1 -1
  8. package/build/lib/astepper.js.map +1 -1
  9. package/build/lib/defs.d.ts +48 -18
  10. package/build/lib/defs.d.ts.map +1 -1
  11. package/build/lib/defs.js +17 -2
  12. package/build/lib/defs.js.map +1 -1
  13. package/build/lib/domain-types.d.ts +22 -2
  14. package/build/lib/domain-types.d.ts.map +1 -1
  15. package/build/lib/domain-types.js +54 -3
  16. package/build/lib/domain-types.js.map +1 -1
  17. package/build/lib/feature-variables.d.ts +8 -9
  18. package/build/lib/feature-variables.d.ts.map +1 -1
  19. package/build/lib/feature-variables.js +30 -12
  20. package/build/lib/feature-variables.js.map +1 -1
  21. package/build/lib/namedVars.d.ts +10 -15
  22. package/build/lib/namedVars.d.ts.map +1 -1
  23. package/build/lib/namedVars.js +130 -114
  24. package/build/lib/namedVars.js.map +1 -1
  25. package/build/lib/populateActionArgs.d.ts +4 -0
  26. package/build/lib/populateActionArgs.d.ts.map +1 -0
  27. package/build/lib/populateActionArgs.js +58 -0
  28. package/build/lib/populateActionArgs.js.map +1 -0
  29. package/build/lib/test/SetTimeStepper.d.ts +2 -2
  30. package/build/lib/test/SetTimeStepper.d.ts.map +1 -1
  31. package/build/lib/test/SetTimeStepper.js +6 -1
  32. package/build/lib/test/SetTimeStepper.js.map +1 -1
  33. package/build/lib/test/TestSteps.d.ts +3 -3
  34. package/build/lib/test/TestSteps.d.ts.map +1 -1
  35. package/build/lib/test/TestSteps.js +3 -1
  36. package/build/lib/test/TestSteps.js.map +1 -1
  37. package/build/lib/test/lib.d.ts.map +1 -1
  38. package/build/lib/test/lib.js +5 -2
  39. package/build/lib/test/lib.js.map +1 -1
  40. package/build/lib/util/featureStep-executor.d.ts +6 -0
  41. package/build/lib/util/featureStep-executor.d.ts.map +1 -0
  42. package/build/lib/util/featureStep-executor.js +39 -0
  43. package/build/lib/util/featureStep-executor.js.map +1 -0
  44. package/build/lib/util/index.d.ts +1 -2
  45. package/build/lib/util/index.d.ts.map +1 -1
  46. package/build/lib/util/index.js +2 -3
  47. package/build/lib/util/index.js.map +1 -1
  48. package/build/lib/util/resolveAndExecuteStatement.js +1 -1
  49. package/build/lib/util/resolveAndExecuteStatement.js.map +1 -1
  50. package/build/phases/Executor.d.ts +3 -3
  51. package/build/phases/Executor.d.ts.map +1 -1
  52. package/build/phases/Executor.js +53 -27
  53. package/build/phases/Executor.js.map +1 -1
  54. package/build/phases/Resolver.d.ts +2 -5
  55. package/build/phases/Resolver.d.ts.map +1 -1
  56. package/build/phases/Resolver.js +28 -20
  57. package/build/phases/Resolver.js.map +1 -1
  58. package/build/runner.js +2 -2
  59. package/build/runner.js.map +1 -1
  60. package/build/steps/debugger-stepper.d.ts +6 -54
  61. package/build/steps/debugger-stepper.d.ts.map +1 -1
  62. package/build/steps/debugger-stepper.js +53 -20
  63. package/build/steps/debugger-stepper.js.map +1 -1
  64. package/build/steps/haibun.d.ts +27 -87
  65. package/build/steps/haibun.d.ts.map +1 -1
  66. package/build/steps/haibun.js +78 -189
  67. package/build/steps/haibun.js.map +1 -1
  68. package/build/steps/narrator.d.ts +81 -0
  69. package/build/steps/narrator.d.ts.map +1 -0
  70. package/build/steps/narrator.js +102 -0
  71. package/build/steps/narrator.js.map +1 -0
  72. package/build/steps/parse.d.ts +1 -1
  73. package/build/steps/variables-stepper.d.ts +7 -40
  74. package/build/steps/variables-stepper.d.ts.map +1 -1
  75. package/build/steps/variables-stepper.js +102 -42
  76. package/build/steps/variables-stepper.js.map +1 -1
  77. package/package.json +1 -1
  78. package/build/lib/ReadlinePrompter.d.ts +0 -9
  79. package/build/lib/ReadlinePrompter.d.ts.map +0 -1
  80. package/build/lib/ReadlinePrompter.js +0 -27
  81. package/build/lib/ReadlinePrompter.js.map +0 -1
  82. package/build/lib/create-world.d.ts +0 -3
  83. package/build/lib/create-world.d.ts.map +0 -1
  84. package/build/lib/create-world.js +0 -31
  85. package/build/lib/create-world.js.map +0 -1
  86. package/build/lib/util/executeStep.d.ts +0 -5
  87. package/build/lib/util/executeStep.d.ts.map +0 -1
  88. package/build/lib/util/executeStep.js +0 -16
  89. package/build/lib/util/executeStep.js.map +0 -1
@@ -1,138 +1,154 @@
1
- import { cred } from '../steps/credentials.js';
2
- import { HAIBUN } from './defs.js';
3
- import { BASE_TYPES } from './domain-types.js';
4
- import { getSerialTime } from './util/index.js';
5
- const TYPE_QUOTED = 'q_';
6
- const TYPE_CREDENTIAL = 'c_';
7
- const TYPE_SPECIAL = 's_';
8
- const TYPE_ENV = 'e_';
9
- const TYPE_VAR = 'b_';
10
- // from source or literal
11
- const TYPE_ENV_OR_VAR_OR_LITERAL = 't_';
12
- export const matchGroups = (num = 0) => {
13
- const b = `\`(?<${TYPE_VAR}${num}>.+)\``; // var
14
- const e = `{(?<${TYPE_ENV}${num}>.+)}`; // env var
15
- // FIXME this is being assigned as t_
16
- const s = `\\[(?<${TYPE_SPECIAL}${num}>.+)\\]`; // special
17
- const c = `<(?<${TYPE_CREDENTIAL}${num}>.+)>`; // credential
18
- const q = `"(?<${TYPE_QUOTED}${num}>.+)"`; // quoted string
19
- const t = `(?<${TYPE_ENV_OR_VAR_OR_LITERAL}${num}>.+)`; // var or enve or literal
20
- return `(${b}|${e}|${s}|${c}|${q}|${t})`;
21
- };
22
- export const namedInterpolation = (inp, types = BASE_TYPES) => {
1
+ import { Origin } from './defs.js';
2
+ import { DOMAIN_STRING } from './domain-types.js';
3
+ export const TYPE_QUOTED = 'q_';
4
+ export const TYPE_ENV = 'e_';
5
+ export const TYPE_VAR = 'b_';
6
+ export const TYPE_ENV_OR_VAR_OR_LITERAL = 't_';
7
+ export const namedInterpolation = (inp) => {
23
8
  if (!inp.includes('{')) {
24
- return { str: inp };
9
+ return { regexPattern: inp };
25
10
  }
26
- const stepVariables = [];
11
+ const stepValuesMap = {};
27
12
  let last = 0;
28
- let str = '';
13
+ let regexPattern = '';
29
14
  let bs = inp.indexOf('{');
30
- let be = 401;
15
+ let be = -1;
31
16
  let bail = 0;
32
- let matches = 0;
17
+ let matchIndex = 0;
18
+ const placeholderRegex = '.+';
33
19
  while (bs > -1 && bail++ < 400) {
34
- str += inp.substring(last, bs);
20
+ regexPattern += inp.substring(last, bs);
35
21
  be = inp.indexOf('}', bs);
36
22
  if (be < 0) {
37
23
  throw Error(`missing end bracket in ${inp}`);
38
24
  }
39
- stepVariables.push(pairToVar(inp.substring(bs + 1, be), types));
25
+ const rawPair = inp.substring(bs + 1, be);
26
+ const { name, domain } = pairToVar(rawPair);
27
+ const precedingChar = inp.substring(bs - 1, bs);
28
+ const origin = inferOrigin(precedingChar);
29
+ // Strip any already-appended preceding delimiter from the
30
+ // regexPattern so the group pattern can insert the correct single
31
+ // delimiter.
32
+ if (precedingChar && ['$', '`', '<', '"'].includes(precedingChar)) {
33
+ // remove the last character we just added (the delimiter)
34
+ regexPattern = regexPattern.slice(0, -1);
35
+ }
36
+ stepValuesMap[name] = { term: name, domain, origin };
37
+ let matchGroupPattern;
38
+ if (origin === Origin.env) {
39
+ matchGroupPattern = `\\$(?<${TYPE_ENV}${matchIndex}>[A-Za-z_][A-Za-z0-9_]*)\\$`;
40
+ }
41
+ else if (origin === Origin.var) {
42
+ matchGroupPattern = `\`(?<${TYPE_VAR}${matchIndex}>.+)\``;
43
+ }
44
+ else if (origin === Origin.quoted) {
45
+ matchGroupPattern = `"(?<${TYPE_QUOTED}${matchIndex}>.+)"`;
46
+ }
47
+ else {
48
+ // For a plain placeholder we accept several syntaxes and capture each
49
+ // into a distinct named group so callers can detect whether the
50
+ // value was quoted, backticked or a bare literal.
51
+ matchGroupPattern = `(?:"(?<${TYPE_QUOTED}${matchIndex}>.+)"|\`(?<${TYPE_VAR}${matchIndex}>.+)\`|(?<${TYPE_ENV_OR_VAR_OR_LITERAL}${matchIndex}>${placeholderRegex}))`;
52
+ }
53
+ regexPattern += matchGroupPattern;
54
+ matchIndex++;
40
55
  bs = inp.indexOf('{', be);
41
- last = be + 1;
42
- str += matchGroups(matches++);
56
+ // If the placeholder was wrapped with a delimiter on the left, the
57
+ // corresponding closing delimiter appears immediately after the '}' and
58
+ // must be skipped from the trailing substring to avoid duplicating it
59
+ // in the final regex. Otherwise include the character after '}' as
60
+ // normal.
61
+ if (precedingChar && ['$', '`', '<', '"'].includes(precedingChar)) {
62
+ last = be + 2;
63
+ }
64
+ else {
65
+ last = be + 1;
66
+ }
43
67
  }
44
- str += inp.substring(be + 1);
45
- return { stepVariables, str };
68
+ regexPattern += inp.substring(last);
69
+ return { stepValuesMap, regexPattern };
46
70
  };
47
- function pairToVar(pair, types) {
48
- // eslint-disable-next-line prefer-const
49
- let [name, type] = pair.split(':').map((i) => i.trim());
50
- if (!type)
51
- type = 'string';
52
- if (!types.includes(type)) {
53
- throw Error(`unknown type ${type}`);
54
- }
55
- return { name, type };
71
+ export const matchGwtaToAction = (gwta, actionable, actionName, stepperName, step) => {
72
+ const { regexPattern, stepValuesMap } = namedInterpolation(gwta);
73
+ // anchor the pattern so the whole actionable matches
74
+ // use case-insensitive matching to be consistent with dePolite handling
75
+ const r = new RegExp(`^${regexPattern}$`, 'i');
76
+ return getMatch(actionable, r, actionName, stepperName, step, stepValuesMap);
77
+ };
78
+ // no-op
79
+ function pairToVar(pair) {
80
+ const [name, domainRaw] = pair.split(':').map((i) => i.trim());
81
+ const domain = domainRaw || DOMAIN_STRING;
82
+ return { name, domain };
56
83
  }
57
84
  export function getNamedMatches(regexp, what) {
58
85
  const named = regexp.exec(what);
59
86
  return named?.groups;
60
87
  }
61
- export const getMatch = (actionable, r, actionName, stepperName, step, stepVariables) => {
88
+ export const getMatch = (actionable, r, actionName, stepperName, step, stepValuesMap) => {
62
89
  if (!r.test(actionable)) {
63
90
  return;
64
91
  }
65
- const named = getNamedMatches(r, actionable);
66
- return { actionName, stepperName, step, named, stepVariables };
67
- };
68
- // returns named values, assigning variable values as appropriate
69
- // retrieves from world.shared if a base domain, otherwise world.domains[type].shared
70
- export function getNamedToVars(found, world, featureStep) {
71
- const { named, stepVariables } = found;
72
- if (!named) {
73
- return { _nb: 'no named' };
74
- }
75
- if (!stepVariables || stepVariables.length < 1) {
76
- return named;
77
- }
78
- const namedFromVars = {};
79
- stepVariables.forEach((v, i) => {
80
- const { name, type } = v;
81
- const { shared } = world;
82
- const namedKey = Object.keys(named).find((c) => c.endsWith(`_${i}`) && named[c] !== undefined);
83
- if (!namedKey) {
84
- throw Error(`no namedKey from ${named} for ${i}`);
85
- }
86
- const namedValue = named[namedKey];
87
- if (namedKey.startsWith(TYPE_ENV_OR_VAR_OR_LITERAL)) {
88
- // For TYPE_ENV_OR_VAR_OR_LITERAL, check env first if exists
89
- if (world.options.envVariables && world.options.envVariables[namedValue] !== undefined) {
90
- namedFromVars[name] = world.options.envVariables[namedValue];
91
- }
92
- else {
93
- namedFromVars[name] = shared?.get(namedValue) || (named && named[namedKey]);
92
+ const groups = getNamedMatches(r, actionable);
93
+ if (groups && stepValuesMap) {
94
+ const entries = Object.values(stepValuesMap);
95
+ let i = 0;
96
+ for (const ph of entries) {
97
+ // Prefer quoted, backtick, then bare literal captures.
98
+ const q = groups[`${TYPE_QUOTED}${i}`];
99
+ const b = groups[`${TYPE_VAR}${i}`];
100
+ const e = groups[`${TYPE_ENV}${i}`];
101
+ const t = groups[`${TYPE_ENV_OR_VAR_OR_LITERAL}${i}`];
102
+ const chosen = q ?? b ?? t;
103
+ // prefer the dedicated env group if present
104
+ const actuallyChosen = q ?? b ?? e ?? t;
105
+ if (actuallyChosen !== undefined) {
106
+ ph.term = chosen;
107
+ // set origin according to which capture matched
108
+ if (q !== undefined) {
109
+ ph.origin = Origin.quoted;
110
+ }
111
+ else if (b !== undefined) {
112
+ ph.origin = Origin.var;
113
+ }
114
+ else if (e !== undefined) {
115
+ ph.origin = Origin.env;
116
+ }
117
+ else if (t !== undefined) {
118
+ // bare literal capture - detect env syntax $NAME$ or inline name:domain
119
+ const envMatch = /^\$([A-Za-z_][A-Za-z0-9_]*)\$$/.exec(t);
120
+ if (envMatch) {
121
+ ph.term = envMatch[1];
122
+ ph.origin = Origin.env;
123
+ }
124
+ else {
125
+ ph.origin = Origin.fallthrough;
126
+ // If the bare literal looks like JSON, treat it as fallthrough.
127
+ const tTrim = String(t).trim();
128
+ if (tTrim.startsWith('{') || tTrim.startsWith('[')) {
129
+ ph.term = tTrim;
130
+ }
131
+ }
132
+ }
133
+ // domain 'statement' should force origin to 'statement'
134
+ if (ph.domain === 'statement')
135
+ ph.origin = Origin.statement;
94
136
  }
137
+ i++;
95
138
  }
96
- else if (namedKey.startsWith(TYPE_VAR)) {
97
- // must be from source
98
- if (!shared.get(namedValue)) {
99
- throw Error(`no value for "${namedValue}" from ${JSON.stringify({ keys: Object.keys(shared.all()), type })} in ${featureStep.path}`);
100
- }
101
- namedFromVars[name] = shared.get(namedValue);
102
- }
103
- else if (namedKey.startsWith(TYPE_SPECIAL)) {
104
- let toSet;
105
- if (namedValue === 'SERIALTIME') {
106
- toSet = '' + getSerialTime();
107
- }
108
- else {
109
- throw Error(`unknown special "${namedValue}" in ${JSON.stringify(found)}`);
110
- }
111
- namedFromVars[name] = toSet;
112
- }
113
- else if (namedKey.startsWith(TYPE_CREDENTIAL)) {
114
- // must be from source
115
- if (!shared.get(cred(namedValue))) {
116
- throw Error(`no value for credential "${namedValue}" from ${JSON.stringify({ keys: Object.keys(shared), type })}`);
117
- }
118
- namedFromVars[name] = shared.get(cred(namedValue));
119
- }
120
- else if (namedKey.startsWith(TYPE_ENV)) {
121
- // FIXME add test
122
- const val = world.options?.envVariables[namedValue];
123
- if (val === undefined) {
124
- throw Error(`no env value for "${namedValue}" from ${JSON.stringify(world.options?.envVariables)}.\nenv values are passed via ${HAIBUN}_ENV and ${HAIBUN}_ENVC.`);
125
- }
126
- namedFromVars[name] = val;
127
- }
128
- else if (namedKey.startsWith(TYPE_QUOTED)) {
129
- // quoted
130
- namedFromVars[name] = named[namedKey];
131
- }
132
- else {
133
- throw Error(`unknown assignment ${namedKey}`);
134
- }
135
- });
136
- return namedFromVars;
137
- }
139
+ }
140
+ return { actionName, stepperName, step, stepValuesMap };
141
+ };
142
+ const inferOrigin = (char) => {
143
+ switch (char) {
144
+ case '$':
145
+ return Origin.env;
146
+ case '`':
147
+ return Origin.var;
148
+ case '"':
149
+ return Origin.quoted;
150
+ default:
151
+ return Origin.fallthrough;
152
+ }
153
+ };
138
154
  //# sourceMappingURL=namedVars.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"namedVars.js","sourceRoot":"","sources":["../../src/lib/namedVars.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"namedVars.js","sourceRoot":"","sources":["../../src/lib/namedVars.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { AStepper } from './astepper.js';
2
+ import { TFeatureStep, TStepArgs, TWorld } from './defs.js';
3
+ export declare function populateActionArgs(featureStep: TFeatureStep, world: TWorld, steppers: AStepper[]): Promise<TStepArgs>;
4
+ //# sourceMappingURL=populateActionArgs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"populateActionArgs.d.ts","sourceRoot":"","sources":["../../src/lib/populateActionArgs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,WAAW,CAAC;AAIpE,wBAAsB,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAkD3H"}
@@ -0,0 +1,58 @@
1
+ import { Origin } from './defs.js';
2
+ import { asDomainKey, DOMAIN_STRING } from './domain-types.js';
3
+ // Given a feature step and the current world, populate the action args. This will update the existing stepValuesMap as actionVal
4
+ export async function populateActionArgs(featureStep, world, steppers) {
5
+ const stepArgs = {};
6
+ if (!featureStep.action.stepValuesMap)
7
+ return stepArgs; // no variables for this step
8
+ for (const [name, actionVal] of Object.entries(featureStep.action.stepValuesMap)) {
9
+ const storedEntry = world.shared.all()[actionVal.term];
10
+ if (actionVal.origin === Origin.statement) {
11
+ actionVal.value = actionVal.term;
12
+ }
13
+ else if (actionVal.origin === Origin.env) {
14
+ actionVal.value = world.options.envVariables[actionVal.term]; // might be undefined
15
+ actionVal.domain = DOMAIN_STRING;
16
+ }
17
+ else if (actionVal.origin === Origin.var) {
18
+ if (storedEntry) {
19
+ actionVal.domain = storedEntry.domain;
20
+ actionVal.value = storedEntry.value;
21
+ actionVal.provenance = storedEntry.provenance;
22
+ }
23
+ }
24
+ else if (actionVal.origin === Origin.fallthrough) {
25
+ if (world.options.envVariables[actionVal.term]) {
26
+ actionVal.value = world.options.envVariables[actionVal.term];
27
+ }
28
+ else if (storedEntry) {
29
+ actionVal.value = storedEntry.value;
30
+ actionVal.domain = storedEntry.domain;
31
+ actionVal.provenance = storedEntry.provenance;
32
+ }
33
+ else {
34
+ actionVal.value = actionVal.term;
35
+ actionVal.domain = DOMAIN_STRING;
36
+ }
37
+ }
38
+ else if (actionVal.origin === Origin.quoted) {
39
+ actionVal.value = actionVal.term;
40
+ actionVal.domain = DOMAIN_STRING;
41
+ }
42
+ else {
43
+ throw new Error(`Unsupported origin type: ${actionVal.origin}`);
44
+ }
45
+ if (actionVal.value === undefined) {
46
+ continue;
47
+ }
48
+ const actionDomainKey = asDomainKey(actionVal.domain.split('|').map(d => d.trim()));
49
+ if (!world.domains[actionDomainKey]) {
50
+ throw new Error(`No domain coercer found for domain "${actionDomainKey}"`);
51
+ }
52
+ actionVal.value = await Promise.resolve(world.domains[actionDomainKey].coerce(actionVal, featureStep, steppers));
53
+ // actionVal has been updated, update the actionVal in place for downstream processing
54
+ stepArgs[name] = actionVal.value;
55
+ }
56
+ return stepArgs;
57
+ }
58
+ //# sourceMappingURL=populateActionArgs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"populateActionArgs.js","sourceRoot":"","sources":["../../src/lib/populateActionArgs.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { TNamed } from '../defs.js';
1
+ import { TStepArgs } from '../defs.js';
2
2
  import { AStepper } from '../astepper.js';
3
3
  export default class SetTimeStepper extends AStepper {
4
4
  steps: {
5
5
  setTime: {
6
6
  gwta: string;
7
- action: ({ y, m, d, h, min, s }: TNamed) => Promise<import("../defs.js").TOKActionResult>;
7
+ action: ({ y, m, d, h, min, s }: TStepArgs) => Promise<import("../defs.js").TOKActionResult>;
8
8
  };
9
9
  };
10
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SetTimeStepper.d.ts","sourceRoot":"","sources":["../../../src/lib/test/SetTimeStepper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAM,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,QAAQ;IAClD,KAAK;;;6CAGgC,MAAM;;MAMzC;CACH"}
1
+ {"version":3,"file":"SetTimeStepper.d.ts","sourceRoot":"","sources":["../../../src/lib/test/SetTimeStepper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAM,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,QAAQ;IAClD,KAAK;;;6CAGgC,SAAS;;MAQ5C;CACH"}
@@ -11,7 +11,12 @@ export default class SetTimeStepper extends AStepper {
11
11
  setTime: {
12
12
  gwta: 'change date to {y}-{m}-{d} {h}:{min}:{s}',
13
13
  action: ({ y, m, d, h, min, s }) => {
14
- const date = new Date(checkedInt('year', y), checkedInt('month', m) - 1, checkedInt('day', d), checkedInt('hour', h), checkedInt('minute', min), checkedInt('second', s));
14
+ for (const v of [y, m, d, h, min, s]) {
15
+ if (Array.isArray(v))
16
+ throw new Error('date parts must be strings');
17
+ }
18
+ const ys = y, ms = m, ds = d, hs = h, mins = min, ss = s;
19
+ const date = new Date(checkedInt('year', ys), checkedInt('month', ms) - 1, checkedInt('day', ds), checkedInt('hour', hs), checkedInt('minute', mins), checkedInt('second', ss));
15
20
  vi.setSystemTime(date);
16
21
  return Promise.resolve(OK);
17
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SetTimeStepper.js","sourceRoot":"","sources":["../../../src/lib/test/SetTimeStepper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAU,EAAE,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE;IAC1C,IAAI,CAAC,KAAK,SAAS;QAAE,MAAM,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACpE,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACzB,CAAC,CAAA;AACD,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,QAAQ;IAClD,KAAK,GAAG;QACN,OAAO,EAAE;YACP,IAAI,EAAE,0CAA0C;YAChD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAU,EAAE,EAAE;gBACzC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1K,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7B,CAAC;SACF;KACF,CAAC;CACH"}
1
+ {"version":3,"file":"SetTimeStepper.js","sourceRoot":"","sources":["../../../src/lib/test/SetTimeStepper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAa,EAAE,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE;IAC1C,IAAI,CAAC,KAAK,SAAS;QAAE,MAAM,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACpE,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACzB,CAAC,CAAA;AACD,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,QAAQ;IAClD,KAAK,GAAG;QACN,OAAO,EAAE;YACP,IAAI,EAAE,0CAA0C;YAChD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAa,EAAE,EAAE;gBAC5C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;oBAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;wBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAAC,CAAC;gBAC9G,MAAM,EAAE,GAAG,CAAW,EAAE,EAAE,GAAG,CAAW,EAAE,EAAE,GAAG,CAAW,EAAE,EAAE,GAAG,CAAW,EAAE,IAAI,GAAG,GAAa,EAAE,EAAE,GAAG,CAAW,CAAC;gBACrH,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;gBAChL,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBACvB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7B,CAAC;SACF;KACF,CAAC;CACH"}
@@ -1,4 +1,4 @@
1
- import { TNamed } from '../defs.js';
1
+ import { TStepArgs } from '../defs.js';
2
2
  import { AStepper } from '../astepper.js';
3
3
  declare const TestSteps: {
4
4
  new (): {
@@ -16,8 +16,8 @@ declare const TestSteps: {
16
16
  action: () => Promise<import("../defs.js").TOKActionResult>;
17
17
  };
18
18
  named: {
19
- match: RegExp;
20
- action: ({ param }: TNamed) => Promise<import("../defs.js").TOKActionResult | import("../defs.js").TNotOKActionResult>;
19
+ gwta: string;
20
+ action: ({ param }: TStepArgs) => Promise<import("../defs.js").TNotOKActionResult | import("../defs.js").TOKActionResult>;
21
21
  };
22
22
  throws: {
23
23
  gwta: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TestSteps.d.ts","sourceRoot":"","sources":["../../../src/lib/test/TestSteps.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;oCAgBc,MAAM;;;;;;;;;;;;CAWlC,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"TestSteps.d.ts","sourceRoot":"","sources":["../../../src/lib/test/TestSteps.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;oCAgBc,SAAS;;;;;;;;;;;;CAYrC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -15,8 +15,10 @@ const TestSteps = class TestSteps extends AStepper {
15
15
  action: async () => Promise.resolve(actionOK()),
16
16
  },
17
17
  named: {
18
- match: /^parameter (?<param>.+) is accepted$/,
18
+ gwta: 'parameter {param} is accepted',
19
19
  action: async ({ param }) => {
20
+ if (Array.isArray(param))
21
+ throw new Error('param must be string');
20
22
  return Promise.resolve(param === 'x' ? actionOK() : actionNotOK('test'));
21
23
  },
22
24
  },
@@ -1 +1 @@
1
- {"version":3,"file":"TestSteps.js","sourceRoot":"","sources":["../../../src/lib/test/TestSteps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEzD,MAAM,SAAS,GAAG,MAAM,SAAU,SAAQ,QAAQ;IACjD,KAAK,GAAG;QACP,KAAK,EAAE;YACN,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC7D;QACD,IAAI,EAAE;YACL,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;SAC/C;QACD,MAAM,EAAE;YACP,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;SAC/C;QACD,KAAK,EAAE;YACN,KAAK,EAAE,sCAAsC;YAC7C,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAU,EAAE,EAAE;gBACnC,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;YAC1E,CAAC;SACD;QACD,MAAM,EAAE;YACP,IAAI,EAAE,oBAAoB;YAC1B,MAAM,EAAE,GAAG,EAAE;gBACZ,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACvC,CAAC;SACD;KACD,CAAC;CACF,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"TestSteps.js","sourceRoot":"","sources":["../../../src/lib/test/TestSteps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEzD,MAAM,SAAS,GAAG,MAAM,SAAU,SAAQ,QAAQ;IACjD,KAAK,GAAG;QACP,KAAK,EAAE;YACN,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC7D;QACD,IAAI,EAAE;YACL,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;SAC/C;QACD,MAAM,EAAE;YACP,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;SAC/C;QACD,KAAK,EAAE;YACN,IAAI,EAAE,+BAA+B;YACrC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAa,EAAE,EAAE;gBACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBAClE,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;YAC1E,CAAC;SACD;QACD,MAAM,EAAE;YACP,IAAI,EAAE,oBAAoB;YAC1B,MAAM,EAAE,GAAG,EAAE;gBACZ,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACvC,CAAC;SACD;KACD,CAAC;CACF,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/lib/test/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAgB,eAAe,EAAE,MAAM,YAAY,CAAC;AAY5F,eAAO,MAAM,iBAAiB;;;;;CAA4D,CAAC;AAE3F,eAAO,MAAM,oCAAoC,yCAAyC,CAAC;AAC3F,eAAO,MAAM,SAAS,cAAc,CAAC;AAErC,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,gDAGnF;AAGD,KAAK,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC;AAExE,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,aAAa,GAAG,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,YAAY,GAAE,aAAiC,EAAE,aAAa,GAAE,aAAkB;WAKC,MAAM;GAF5L;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,GAAE,aAAkB,GAAG,OAAO,CAAC,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAY/L;AAED,wBAAgB,uBAAuB,CAAC,YAAY,GAAE,aAAiC,EAAE,GAAG;;CAA+B,UAQ1H;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,oBAAc,GAAG,MAAM,CAY3E;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,GAAG,SAAqB,6BAEnF"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/lib/test/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAgB,eAAe,EAAE,MAAM,YAAY,CAAC;AAa5F,eAAO,MAAM,iBAAiB;;;;;CAA4D,CAAC;AAE3F,eAAO,MAAM,oCAAoC,yCAAyC,CAAC;AAC3F,eAAO,MAAM,SAAS,cAAc,CAAC;AAErC,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,gDAGnF;AAGD,KAAK,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC;AAExE,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,aAAa,GAAG,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,YAAY,GAAE,aAAiC,EAAE,aAAa,GAAE,aAAkB;WAKC,MAAM;GAF5L;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,aAAa,GAAE,aAAkB,GAAG,OAAO,CAAC,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAY/L;AAED,wBAAgB,uBAAuB,CAAC,YAAY,GAAE,aAAiC,EAAE,GAAG;;CAA+B,UAQ1H;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,oBAAc,GAAG,MAAM,CAc3E;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,GAAG,SAAqB,6BAEnF"}
@@ -1,4 +1,5 @@
1
1
  import { DEFAULT_DEST } from '../defs.js';
2
+ import { getCoreDomains } from '../domain-types.js';
2
3
  import { createSteppers } from './../util/index.js';
3
4
  import { getRunTag } from '../ttag.js';
4
5
  import { getSteppers } from '../util/workspace-lib.js';
@@ -41,10 +42,9 @@ export function getTestWorldWithOptions(protoOptions = DEF_PROTO_OPTIONS, env =
41
42
  return world;
42
43
  }
43
44
  export function getDefaultWorld(sequence, env = process.env) {
44
- return {
45
+ const world = {
45
46
  timer: new Timer(),
46
47
  tag: getRunTag(sequence, 0),
47
- shared: new FeatureVariables(getDefaultTag(sequence).toString()),
48
48
  logger: new Logger(env.HAIBUN_LOG_LEVEL ? { level: env.HAIBUN_LOG_LEVEL } : LOGGER_LOG),
49
49
  prompter: new Prompter(),
50
50
  runtime: {},
@@ -52,6 +52,9 @@ export function getDefaultWorld(sequence, env = process.env) {
52
52
  moduleOptions: {},
53
53
  bases: ['/features/'],
54
54
  };
55
+ world.domains = getCoreDomains(world);
56
+ world.shared = new FeatureVariables(world);
57
+ return world;
55
58
  }
56
59
  export function getDefaultTag(sequence, desc = undefined) {
57
60
  return getRunTag(sequence, -1, desc ? { desc } : undefined, false);
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib/test/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib/test/lib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { AStepper } from '../astepper.js';
2
+ import { TWorld, TStepResult, TFeatureStep, ExecMode } from '../defs.js';
3
+ export declare function resolveAndExecuteStatement(statement: string, base: string, steppers: AStepper[], world: TWorld, execMode: ExecMode, seqStart: number[]): Promise<TStepResult>;
4
+ export declare function doExecuteFeatureSteps(featureSteps: TFeatureStep[], steppers: AStepper[], world: TWorld, execMode?: ExecMode): Promise<TStepResult>;
5
+ export declare function findFeatureStepsFromStatement(statement: string, steppers: AStepper[], world: TWorld, base: string, seqStart: number[], inc?: number): TFeatureStep[];
6
+ //# sourceMappingURL=featureStep-executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"featureStep-executor.d.ts","sourceRoot":"","sources":["../../../src/lib/util/featureStep-executor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAY,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGnF,wBAAsB,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAGnL;AAED,wBAAsB,qBAAqB,CAAC,YAAY,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,QAA0B,GAAG,OAAO,CAAC,WAAW,CAAC,CAUzK;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,SAAI,GAAG,YAAY,EAAE,CAiB/J"}
@@ -0,0 +1,39 @@
1
+ import { getActionableStatement } from '../../phases/Resolver.js';
2
+ import { FeatureExecutor } from '../../phases/Executor.js';
3
+ import { ExecMode } from '../defs.js';
4
+ import { expandLine } from '../features.js';
5
+ export async function resolveAndExecuteStatement(statement, base, steppers, world, execMode, seqStart) {
6
+ const featureSteps = findFeatureStepsFromStatement(statement, steppers, world, base, seqStart);
7
+ return await doExecuteFeatureSteps(featureSteps, steppers, world, execMode);
8
+ }
9
+ export async function doExecuteFeatureSteps(featureSteps, steppers, world, execMode = ExecMode.CYCLES) {
10
+ let lastResult;
11
+ for (const x of featureSteps) {
12
+ lastResult = await FeatureExecutor.doFeatureStep(steppers, x, world, execMode);
13
+ if (execMode === ExecMode.CYCLES || execMode === ExecMode.PROMPT) {
14
+ world.runtime.stepResults.push(lastResult);
15
+ }
16
+ if (!lastResult.ok)
17
+ return lastResult;
18
+ }
19
+ return lastResult;
20
+ }
21
+ export function findFeatureStepsFromStatement(statement, steppers, world, base, seqStart, inc = 1) {
22
+ const featureSteps = [];
23
+ if (!world.runtime.backgrounds) {
24
+ throw new Error('runtime.backgrounds is undefined; cannot expand inline Backgrounds');
25
+ }
26
+ const backgroundFeature = { path: `from ${statement}`, base, name: 'inline-backgrounds', content: `Backgrounds: ${statement}` };
27
+ const expanded = expandLine(statement, world.runtime.backgrounds, backgroundFeature);
28
+ // Increment the last segment of seqStart by inc for each expanded step
29
+ const prefix = seqStart.slice(0, -1);
30
+ let latest = seqStart[seqStart.length - 1];
31
+ for (const x of expanded) {
32
+ const seqPath = [...prefix, latest];
33
+ const { featureStep } = getActionableStatement(steppers, x.line, x.feature.path, seqPath);
34
+ latest += inc;
35
+ featureSteps.push(featureStep);
36
+ }
37
+ return featureSteps;
38
+ }
39
+ //# sourceMappingURL=featureStep-executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"featureStep-executor.js","sourceRoot":"","sources":["../../../src/lib/util/featureStep-executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAA+C,QAAQ,EAAE,MAAM,YAAY,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,SAAiB,EAAE,IAAY,EAAE,QAAoB,EAAE,KAAa,EAAE,QAAkB,EAAE,QAAkB;IAC5J,MAAM,YAAY,GAAG,6BAA6B,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/F,OAAO,MAAM,qBAAqB,CAAC,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,YAA4B,EAAE,QAAoB,EAAE,KAAa,EAAE,WAAqB,QAAQ,CAAC,MAAM;IAClJ,IAAI,UAAU,CAAC;IACf,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC9B,UAAU,GAAG,MAAM,eAAe,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/E,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAClE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,EAAE;YAAE,OAAO,UAAU,CAAC;IACvC,CAAC;IACD,OAAO,UAAW,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,SAAiB,EAAE,QAAoB,EAAE,KAAa,EAAE,IAAY,EAAE,QAAkB,EAAE,GAAG,GAAG,CAAC;IAC9I,MAAM,YAAY,GAAmB,EAAE,CAAC;IACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,iBAAiB,GAAa,EAAE,IAAI,EAAE,QAAQ,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,gBAAgB,SAAS,EAAE,EAAE,CAAC;IAC1I,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IACrF,uEAAuE;IACvE,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,MAAM,EAAE,WAAW,EAAE,GAAG,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1F,MAAM,IAAI,GAAG,CAAC;QACd,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,YAAY,CAAC;AACrB,CAAC"}
@@ -26,7 +26,7 @@ export declare function describeSteppers(steppers: AStepper[]): string;
26
26
  export declare function isLowerCase(str: string): boolean;
27
27
  export declare const sleep: (ms: number) => Promise<unknown>;
28
28
  export declare function verifyExtraOptions(inExtraOptions: TModuleOptions, csteppers: CStepper[]): Promise<void>;
29
- export declare function setStepperWorlds(steppers: AStepper[], world: TWorld): Promise<void>;
29
+ export declare function setStepperWorldsAndDomains(steppers: AStepper[], world: TWorld): Promise<void>;
30
30
  export declare function getPre(stepper: AStepper): string;
31
31
  /**
32
32
  * Find a stepper by option value from a list of steppers
@@ -78,7 +78,6 @@ export declare const optionOrError: (val: string, options: string[]) => {
78
78
  };
79
79
  export declare function trying<TResult>(fun: () => void): Promise<Error | TResult>;
80
80
  export declare function asError(e: unknown): Error;
81
- export declare const getSerialTime: () => number;
82
81
  export declare function dePolite(s: string): string;
83
82
  export declare function shortenURI(uri: string): string;
84
83
  export declare function formattedSteppers(steppers: AStepper[]): {