@xpack/xpm-lib 3.1.1 → 3.1.2

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.
@@ -1,17 +1,18 @@
1
1
  import { Logger } from '@xpack/logger';
2
2
  import { XpmLiquidEngine } from './liquid-engine.js';
3
3
  import { XpmLiquidSubstitutionsVariables, XpmLiquidSubstitutionsStrings } from './substitutions-variables.js';
4
- import { JsonActions } from './types.js';
4
+ import { JsonActions, JsonActionValue } from './types.js';
5
5
  export declare class XpmLiquidActions {
6
6
  #private;
7
7
  readonly log: Logger;
8
8
  readonly engine: XpmLiquidEngine;
9
9
  readonly substitutionsVariables: XpmLiquidSubstitutionsVariables;
10
10
  readonly jsonActions: JsonActions;
11
- constructor({ log, engine, substitutionsVariables, jsonActions, }: {
11
+ constructor({ log, engine, substitutionsVariables, inheritedActionsMap, jsonActions, }: {
12
12
  log: Logger;
13
13
  engine: XpmLiquidEngine;
14
14
  substitutionsVariables: XpmLiquidSubstitutionsVariables;
15
+ inheritedActionsMap?: Map<string, XpmLiquidAction>;
15
16
  jsonActions: JsonActions | undefined;
16
17
  });
17
18
  initialise(): Promise<void>;
@@ -22,9 +23,13 @@ export declare class XpmLiquidActions {
22
23
  }
23
24
  export declare class XpmLiquidAction {
24
25
  #private;
26
+ readonly actionName: string;
27
+ readonly jsonAction: JsonActionValue;
28
+ parentActions: XpmLiquidActions;
25
29
  matrixParameters?: XpmLiquidSubstitutionsStrings;
26
- constructor({ actionName, parentActions, }: {
30
+ constructor({ actionName, jsonAction, parentActions, }: {
27
31
  actionName: string;
32
+ jsonAction: JsonActionValue;
28
33
  parentActions: XpmLiquidActions;
29
34
  });
30
35
  getCommands(): Promise<string[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"liquid-actions.d.ts","sourceRoot":"","sources":["../../src/lib/liquid-actions.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAMxC,qBAAa,gBAAgB;;IAI3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,sBAAsB,EAAE,+BAA+B,CAAA;IAChE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;gBASrB,EACV,GAAG,EACH,MAAM,EACN,sBAAsB,EACtB,WAAW,GACZ,EAAE;QACD,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,eAAe,CAAA;QACvB,sBAAsB,EAAE,+BAA+B,CAAA;QACvD,WAAW,EAAE,WAAW,GAAG,SAAS,CAAA;KACrC;IAgBK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBjC,KAAK,IAAI,OAAO;IAIhB,KAAK,IAAI,MAAM,EAAE;IAOjB,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIhC,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe;CASzC;AAKD,qBAAa,eAAe;;IAQ1B,gBAAgB,CAAC,EAAE,6BAA6B,CAAA;gBAMpC,EACV,UAAU,EACV,aAAa,GACd,EAAE;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,aAAa,EAAE,gBAAgB,CAAA;KAChC;IAUK,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAwBvC"}
1
+ {"version":3,"file":"liquid-actions.d.ts","sourceRoot":"","sources":["../../src/lib/liquid-actions.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAMzD,qBAAa,gBAAgB;;IAI3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,sBAAsB,EAAE,+BAA+B,CAAA;IAChE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;gBAUrB,EACV,GAAG,EACH,MAAM,EACN,sBAAsB,EACtB,mBAAmB,EACnB,WAAW,GACZ,EAAE;QACD,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,eAAe,CAAA;QACvB,sBAAsB,EAAE,+BAA+B,CAAA;QACvD,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;QAClD,WAAW,EAAE,WAAW,GAAG,SAAS,CAAA;KACrC;IAiCK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBjC,KAAK,IAAI,OAAO;IAIhB,KAAK,IAAI,MAAM,EAAE;IAOjB,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIhC,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe;CAiBzC;AAKD,qBAAa,eAAe;;IAI1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAE3B,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAA;IACpC,aAAa,EAAE,gBAAgB,CAAA;IAG/B,gBAAgB,CAAC,EAAE,6BAA6B,CAAA;gBAMpC,EACV,UAAU,EAEV,UAAU,EACV,aAAa,GACd,EAAE;QACD,UAAU,EAAE,MAAM,CAAA;QAElB,UAAU,EAAE,eAAe,CAAA;QAC3B,aAAa,EAAE,gBAAgB,CAAA;KAChC;IAgBK,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAwBvC"}
@@ -10,7 +10,7 @@
10
10
  */
11
11
  /* eslint max-len: [ "error", 80, { "ignoreUrls": true } ] */
12
12
  // ----------------------------------------------------------------------------
13
- // import assert from 'assert'
13
+ import assert from 'node:assert';
14
14
  import * as os from 'node:os';
15
15
  import { performSubstitutions } from './functions/perform-substitutions.js';
16
16
  // ----------------------------------------------------------------------------
@@ -22,18 +22,31 @@ export class XpmLiquidActions {
22
22
  engine;
23
23
  substitutionsVariables;
24
24
  jsonActions;
25
- #map;
25
+ #actionsMap;
26
+ #jsonActionsNamesMap;
26
27
  #isInitialised = false;
27
28
  // --------------------------------------------------------------------------
28
29
  // Constructor and async initialiser.
29
- constructor({ log, engine, substitutionsVariables, jsonActions, }) {
30
+ constructor({ log, engine, substitutionsVariables, inheritedActionsMap, jsonActions, }) {
30
31
  log.trace(`${XpmLiquidActions.name}()`);
31
32
  this.log = log;
32
33
  this.engine = engine;
33
34
  this.substitutionsVariables = substitutionsVariables;
34
35
  this.jsonActions = jsonActions ?? {};
35
36
  // Possibly empty if there are no actions.
36
- this.#map = new Map();
37
+ this.#actionsMap = new Map();
38
+ if (inheritedActionsMap !== undefined) {
39
+ for (const [inheritedActionName, inheritedAction,] of inheritedActionsMap) {
40
+ // Make copies of the actions, do not alter the inherited ones.
41
+ const action = new XpmLiquidAction({
42
+ actionName: inheritedActionName,
43
+ jsonAction: inheritedAction.jsonAction,
44
+ parentActions: this,
45
+ });
46
+ this.#actionsMap.set(inheritedActionName, action);
47
+ }
48
+ }
49
+ this.#jsonActionsNamesMap = new Map();
37
50
  // log.trace('substitutionsVariables => ', this.substitutionsVariables)
38
51
  // The rest of the initialisation is done in the async initialiser.
39
52
  }
@@ -43,30 +56,43 @@ export class XpmLiquidActions {
43
56
  return;
44
57
  }
45
58
  for (const actionName of Object.keys(this.jsonActions)) {
46
- // TODO: expand templates in names
47
- this.#map.set(actionName, undefined);
59
+ if (actionName.includes('{{')) {
60
+ // TODO: expand templates and generate multiple actions.
61
+ }
62
+ else {
63
+ this.#actionsMap.set(actionName, undefined);
64
+ this.#jsonActionsNamesMap.set(actionName, actionName);
65
+ }
48
66
  }
49
- this.log.trace(`${XpmLiquidActions.name}.initialise() =>`, Array.from(this.#map.keys()));
67
+ this.log.trace(`${XpmLiquidActions.name}.initialise() =>`, Array.from(this.#actionsMap.keys()));
50
68
  this.#isInitialised = true;
51
69
  }
52
70
  // --------------------------------------------------------------------------
53
71
  // Methods.
54
72
  empty() {
55
- return this.#map.size === 0;
73
+ return this.#actionsMap.size === 0;
56
74
  }
57
75
  names() {
58
- const actionNames = Array.from(this.#map.keys());
76
+ const actionNames = Array.from(this.#actionsMap.keys());
59
77
  this.log.trace(`${XpmLiquidActions.name}.names() =>`, actionNames);
60
78
  return actionNames;
61
79
  }
62
80
  has(actionName) {
63
- return this.#map.has(actionName);
81
+ return this.#actionsMap.has(actionName);
64
82
  }
65
83
  get(actionName) {
66
- let action = this.#map.get(actionName);
84
+ let action = this.#actionsMap.get(actionName);
67
85
  if (action === undefined) {
68
- action = new XpmLiquidAction({ actionName, parentActions: this });
69
- this.#map.set(actionName, action);
86
+ const jsonActionName =
87
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
88
+ this.#jsonActionsNamesMap.get(actionName);
89
+ const jsonAction = this.jsonActions[jsonActionName] ?? '';
90
+ action = new XpmLiquidAction({
91
+ actionName,
92
+ jsonAction,
93
+ parentActions: this,
94
+ });
95
+ this.#actionsMap.set(actionName, action);
70
96
  }
71
97
  return action;
72
98
  }
@@ -76,36 +102,45 @@ export class XpmLiquidActions {
76
102
  export class XpmLiquidAction {
77
103
  // --------------------------------------------------------------------------
78
104
  // Members.
79
- #actionName;
80
- #parentActions;
105
+ actionName;
106
+ // readonly jsonActionName: string
107
+ jsonAction;
108
+ parentActions;
81
109
  // For templates, the actual values.
82
110
  matrixParameters;
83
111
  #commands;
84
112
  // --------------------------------------------------------------------------
85
113
  // Constructor.
86
- constructor({ actionName, parentActions, }) {
114
+ constructor({ actionName,
115
+ // jsonActionName,
116
+ jsonAction, parentActions, }) {
117
+ assert(actionName);
118
+ // assert(jsonActionName)
119
+ assert(parentActions);
87
120
  parentActions.log.trace(`${XpmLiquidAction.name}(${actionName})`);
88
- this.#actionName = actionName;
89
- this.#parentActions = parentActions;
121
+ this.actionName = actionName;
122
+ // this.jsonActionName = jsonActionName
123
+ this.jsonAction = jsonAction;
124
+ this.parentActions = parentActions;
90
125
  }
91
126
  // --------------------------------------------------------------------------
92
127
  // Methods.
93
128
  async getCommands() {
94
129
  if (this.#commands === undefined) {
95
130
  // Silently accept empty or non-existing actions.
96
- const jsonAction = this.#parentActions.jsonActions[this.#actionName] ?? '';
131
+ const jsonAction = this.jsonAction;
97
132
  const input = Array.isArray(jsonAction)
98
133
  ? jsonAction.join(os.EOL)
99
134
  : jsonAction;
100
135
  const substituted = await performSubstitutions({
101
136
  input,
102
- engine: this.#parentActions.engine,
103
- substitutionsVariables: this.#parentActions.substitutionsVariables,
104
- log: this.#parentActions.log,
137
+ engine: this.parentActions.engine,
138
+ substitutionsVariables: this.parentActions.substitutionsVariables,
139
+ log: this.parentActions.log,
105
140
  });
106
141
  this.#commands = substituted.split(os.EOL);
107
142
  }
108
- this.#parentActions.log.trace(`${XpmLiquidAction.name}.commands() =>`, this.#commands);
143
+ this.parentActions.log.trace(`${XpmLiquidAction.name}.commands() =>`, this.#commands);
109
144
  return this.#commands;
110
145
  }
111
146
  }
@@ -1 +1 @@
1
- {"version":3,"file":"liquid-actions.js","sourceRoot":"","sources":["../../src/lib/liquid-actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liquid-actions.js","sourceRoot":"","sources":["../../src/lib/liquid-actions.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,6 @@ export declare class XpmLiquidBuildConfigurations {
28
28
  export declare class XpmLiquidBuildConfiguration {
29
29
  #private;
30
30
  readonly hidden: boolean;
31
- readonly jsonBuildConfigurationName: string;
32
31
  readonly jsonBuildConfiguration: JsonBuildConfiguration;
33
32
  substitutionsVariables: XpmLiquidSubstitutionsVariables;
34
33
  properties: XpmLiquidSubstitutionsStrings;
@@ -36,10 +35,9 @@ export declare class XpmLiquidBuildConfiguration {
36
35
  jsonDevDependencies: JsonDependencies;
37
36
  matrixParameters?: XpmLiquidSubstitutionsStrings;
38
37
  constructor({ buildConfigurationName, // The Liquid-processed name.
39
- jsonBuildConfigurationName, // The raw name from package.json.
40
- parentBuildConfigurations, }: {
38
+ jsonBuildConfiguration, parentBuildConfigurations, }: {
41
39
  buildConfigurationName: string;
42
- jsonBuildConfigurationName: string;
40
+ jsonBuildConfiguration: JsonBuildConfiguration;
43
41
  parentBuildConfigurations: XpmLiquidBuildConfigurations;
44
42
  });
45
43
  initialise(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"liquid-build-configurations.d.ts","sourceRoot":"","sources":["../../src/lib/liquid-build-configurations.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,8BAA8B,CAAA;AAErC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAOtD,qBAAa,4BAA4B;;IAIvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,sBAAsB,EAAE,+BAA+B,CAAA;IAChE,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAA;gBAa7C,EACV,GAAG,EACH,MAAM,EACN,sBAAsB,EACtB,uBAAuB,GACxB,EAAE;QACD,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,eAAe,CAAA;QACvB,sBAAsB,EAAE,+BAA+B,CAAA;QACvD,uBAAuB,EAAE,uBAAuB,GAAG,SAAS,CAAA;KAC7D;IAkBK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BjC,KAAK,IAAI,OAAO;IAIhB,KAAK,IAAI,MAAM,EAAE;IAYjB,OAAO,CAAC,sBAAsB,EAAE,MAAM,GAAG,OAAO;IAIhD,OAAO,CAAC,sBAAsB,EAAE,MAAM,GAAG,sBAAsB;IAM/D,QAAQ,CAAC,sBAAsB,EAAE,MAAM,GAAG,OAAO;IAOjD,GAAG,CAAC,sBAAsB,EAAE,MAAM,GAAG,OAAO;IAItC,GAAG,CACP,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,2BAA2B,CAAC;IAwBvC,WAAW,CAAC,sBAAsB,EAAE,MAAM,GAAG,MAAM;CAIpD;AAKD,qBAAa,2BAA2B;;IAItC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IAGxB,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAA;IAE3C,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAA;IAEvD,sBAAsB,EAAE,+BAA+B,CAAA;IAEvD,UAAU,EAAE,6BAA6B,CAAK;IAE9C,gBAAgB,EAAE,gBAAgB,CAAK;IACvC,mBAAmB,EAAE,gBAAgB,CAAK;IAG1C,gBAAgB,CAAC,EAAE,6BAA6B,CAAA;gBAgBpC,EACV,sBAAsB,EAAE,6BAA6B;IACrD,0BAA0B,EAAE,kCAAkC;IAC9D,yBAAyB,GAC1B,EAAE;QACD,sBAAsB,EAAE,MAAM,CAAA;QAC9B,0BAA0B,EAAE,MAAM,CAAA;QAClC,yBAAyB,EAAE,4BAA4B,CAAA;KACxD;IAuBK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAkHjC,IAAI,OAAO,IAAI,gBAAgB,CAG9B;IAEK,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC;CAiCpD"}
1
+ {"version":3,"file":"liquid-build-configurations.d.ts","sourceRoot":"","sources":["../../src/lib/liquid-build-configurations.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,8BAA8B,CAAA;AAErC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAmB,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAOvE,qBAAa,4BAA4B;;IAIvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,sBAAsB,EAAE,+BAA+B,CAAA;IAChE,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAA;gBAa7C,EACV,GAAG,EACH,MAAM,EACN,sBAAsB,EACtB,uBAAuB,GACxB,EAAE;QACD,GAAG,EAAE,MAAM,CAAA;QACX,MAAM,EAAE,eAAe,CAAA;QACvB,sBAAsB,EAAE,+BAA+B,CAAA;QACvD,uBAAuB,EAAE,uBAAuB,GAAG,SAAS,CAAA;KAC7D;IAsBK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BjC,KAAK,IAAI,OAAO;IAIhB,KAAK,IAAI,MAAM,EAAE;IAYjB,OAAO,CAAC,sBAAsB,EAAE,MAAM,GAAG,OAAO;IAIhD,OAAO,CAAC,sBAAsB,EAAE,MAAM,GAAG,sBAAsB;IAM/D,QAAQ,CAAC,sBAAsB,EAAE,MAAM,GAAG,OAAO;IAOjD,GAAG,CAAC,sBAAsB,EAAE,MAAM,GAAG,OAAO;IAItC,GAAG,CACP,sBAAsB,EAAE,MAAM,GAC7B,OAAO,CAAC,2BAA2B,CAAC;IA4BvC,WAAW,CAAC,sBAAsB,EAAE,MAAM,GAAG,MAAM;CAIpD;AAKD,qBAAa,2BAA2B;;IAItC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IAKxB,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAA;IAEvD,sBAAsB,EAAE,+BAA+B,CAAA;IAEvD,UAAU,EAAE,6BAA6B,CAAK;IAE9C,gBAAgB,EAAE,gBAAgB,CAAK;IACvC,mBAAmB,EAAE,gBAAgB,CAAK;IAG1C,gBAAgB,CAAC,EAAE,6BAA6B,CAAA;gBAgBpC,EACV,sBAAsB,EAAE,6BAA6B;IAErD,sBAAsB,EACtB,yBAAyB,GAC1B,EAAE;QACD,sBAAsB,EAAE,MAAM,CAAA;QAE9B,sBAAsB,EAAE,sBAAsB,CAAA;QAC9C,yBAAyB,EAAE,4BAA4B,CAAA;KACxD;IAwBK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA8HjC,IAAI,OAAO,IAAI,gBAAgB,CAG9B;IAEK,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC;CAiCpD"}
@@ -32,6 +32,9 @@ export class XpmLiquidBuildConfigurations {
32
32
  // --------------------------------------------------------------------------
33
33
  // Constructor and async initialiser.
34
34
  constructor({ log, engine, substitutionsVariables, jsonBuildConfigurations, }) {
35
+ assert(log);
36
+ assert(engine);
37
+ assert(substitutionsVariables);
35
38
  log.trace(`${XpmLiquidBuildConfigurations.name}()`);
36
39
  this.log = log;
37
40
  this.engine = engine;
@@ -88,9 +91,11 @@ export class XpmLiquidBuildConfigurations {
88
91
  const jsonBuildConfigurationName =
89
92
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
90
93
  this.#jsonBuildConfigurationsNamesMap.get(buildConfigurationName);
94
+ const jsonBuildConfiguration = this.jsonBuildConfigurations[jsonBuildConfigurationName] ?? {};
91
95
  buildConfiguration = new XpmLiquidBuildConfiguration({
92
96
  buildConfigurationName,
93
- jsonBuildConfigurationName,
97
+ // jsonBuildConfigurationName,
98
+ jsonBuildConfiguration,
94
99
  parentBuildConfigurations: this,
95
100
  });
96
101
  await buildConfiguration.initialise();
@@ -110,7 +115,7 @@ export class XpmLiquidBuildConfiguration {
110
115
  // Members.
111
116
  hidden;
112
117
  // The actual (un-substituted) name from package.json.
113
- jsonBuildConfigurationName;
118
+ // readonly jsonBuildConfigurationName: string
114
119
  // Points to the actual buildConfiguration in package.json.
115
120
  jsonBuildConfiguration;
116
121
  substitutionsVariables;
@@ -128,14 +133,17 @@ export class XpmLiquidBuildConfiguration {
128
133
  // --------------------------------------------------------------------------
129
134
  // Constructor and async initialiser.
130
135
  constructor({ buildConfigurationName, // The Liquid-processed name.
131
- jsonBuildConfigurationName, // The raw name from package.json.
132
- parentBuildConfigurations, }) {
136
+ // jsonBuildConfigurationName, // The raw name from package.json.
137
+ jsonBuildConfiguration, parentBuildConfigurations, }) {
138
+ assert(buildConfigurationName);
139
+ // assert(jsonBuildConfigurationName)
140
+ assert(jsonBuildConfiguration);
141
+ assert(parentBuildConfigurations);
133
142
  parentBuildConfigurations.log.trace(`${XpmLiquidBuildConfiguration.name}(${buildConfigurationName})`);
134
143
  this.#buildConfigurationName = buildConfigurationName;
135
- this.jsonBuildConfigurationName = jsonBuildConfigurationName;
144
+ // this.jsonBuildConfigurationName = jsonBuildConfigurationName
145
+ this.jsonBuildConfiguration = jsonBuildConfiguration;
136
146
  this.#parentBuildConfigurations = parentBuildConfigurations;
137
- this.jsonBuildConfiguration =
138
- parentBuildConfigurations.jsonBuildConfigurations[jsonBuildConfigurationName] ?? {};
139
147
  this.substitutionsVariables = {
140
148
  ...this.#parentBuildConfigurations.substitutionsVariables,
141
149
  };
@@ -163,6 +171,7 @@ export class XpmLiquidBuildConfiguration {
163
171
  else if (Array.isArray(jsonBuildConfiguration.inherit)) {
164
172
  inherits = jsonBuildConfiguration.inherit;
165
173
  }
174
+ const inheritedActionsMap = new Map();
166
175
  // Add inherited configuration properties.
167
176
  // TODO: detect circular references.
168
177
  for (const inheritedBuildConfigurationName of inherits) {
@@ -180,6 +189,11 @@ export class XpmLiquidBuildConfiguration {
180
189
  ...this.jsonDevDependencies,
181
190
  ...inheritedBuildConfiguration.jsonDevDependencies,
182
191
  };
192
+ await inheritedBuildConfiguration.actions.initialise();
193
+ for (const actionName of inheritedBuildConfiguration.actions.names()) {
194
+ const action = inheritedBuildConfiguration.actions.get(actionName);
195
+ inheritedActionsMap.set(actionName, action);
196
+ }
183
197
  }
184
198
  else {
185
199
  log.warn('buildConfiguration', this.#buildConfigurationName, 'inherits from missing', inheritedBuildConfigurationName, '(ignored)');
@@ -218,6 +232,7 @@ export class XpmLiquidBuildConfiguration {
218
232
  log: this.#parentBuildConfigurations.log,
219
233
  engine: this.#parentBuildConfigurations.engine,
220
234
  substitutionsVariables: this.substitutionsVariables,
235
+ inheritedActionsMap,
221
236
  jsonActions: this.jsonBuildConfiguration.actions,
222
237
  });
223
238
  // Note: this must be done manually by the application.
@@ -1 +1 @@
1
- {"version":3,"file":"liquid-build-configurations.js","sourceRoot":"","sources":["../../src/lib/liquid-build-configurations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"liquid-build-configurations.js","sourceRoot":"","sources":["../../src/lib/liquid-build-configurations.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xpack/xpm-lib",
3
- "version": "3.1.1",
3
+ "version": "3.1.2",
4
4
  "description": "A Node.js ES6 module with the xpm library utilities",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -13,7 +13,7 @@
13
13
 
14
14
  // ----------------------------------------------------------------------------
15
15
 
16
- // import assert from 'assert'
16
+ import assert from 'node:assert'
17
17
  import * as os from 'node:os'
18
18
 
19
19
  import { Logger } from '@xpack/logger'
@@ -23,7 +23,7 @@ import {
23
23
  XpmLiquidSubstitutionsVariables,
24
24
  XpmLiquidSubstitutionsStrings,
25
25
  } from './substitutions-variables.js'
26
- import { JsonActions } from './types.js'
26
+ import { JsonActions, JsonActionValue } from './types.js'
27
27
  import { performSubstitutions } from './functions/perform-substitutions.js'
28
28
 
29
29
  // ----------------------------------------------------------------------------
@@ -38,7 +38,8 @@ export class XpmLiquidActions {
38
38
  readonly substitutionsVariables: XpmLiquidSubstitutionsVariables
39
39
  readonly jsonActions: JsonActions
40
40
 
41
- readonly #map: Map<string, XpmLiquidAction | undefined>
41
+ readonly #actionsMap: Map<string, XpmLiquidAction | undefined>
42
+ readonly #jsonActionsNamesMap: Map<string, string>
42
43
 
43
44
  #isInitialised = false
44
45
 
@@ -49,11 +50,13 @@ export class XpmLiquidActions {
49
50
  log,
50
51
  engine,
51
52
  substitutionsVariables,
53
+ inheritedActionsMap,
52
54
  jsonActions,
53
55
  }: {
54
56
  log: Logger
55
57
  engine: XpmLiquidEngine
56
58
  substitutionsVariables: XpmLiquidSubstitutionsVariables
59
+ inheritedActionsMap?: Map<string, XpmLiquidAction>
57
60
  jsonActions: JsonActions | undefined
58
61
  }) {
59
62
  log.trace(`${XpmLiquidActions.name}()`)
@@ -64,7 +67,24 @@ export class XpmLiquidActions {
64
67
  this.jsonActions = jsonActions ?? {}
65
68
 
66
69
  // Possibly empty if there are no actions.
67
- this.#map = new Map<string, XpmLiquidAction | undefined>()
70
+ this.#actionsMap = new Map<string, XpmLiquidAction | undefined>()
71
+
72
+ if (inheritedActionsMap !== undefined) {
73
+ for (const [
74
+ inheritedActionName,
75
+ inheritedAction,
76
+ ] of inheritedActionsMap) {
77
+ // Make copies of the actions, do not alter the inherited ones.
78
+ const action = new XpmLiquidAction({
79
+ actionName: inheritedActionName,
80
+ jsonAction: inheritedAction.jsonAction,
81
+ parentActions: this,
82
+ })
83
+ this.#actionsMap.set(inheritedActionName, action)
84
+ }
85
+ }
86
+
87
+ this.#jsonActionsNamesMap = new Map<string, string>()
68
88
 
69
89
  // log.trace('substitutionsVariables => ', this.substitutionsVariables)
70
90
  // The rest of the initialisation is done in the async initialiser.
@@ -76,13 +96,17 @@ export class XpmLiquidActions {
76
96
  return
77
97
  }
78
98
  for (const actionName of Object.keys(this.jsonActions)) {
79
- // TODO: expand templates in names
80
- this.#map.set(actionName, undefined)
99
+ if (actionName.includes('{{')) {
100
+ // TODO: expand templates and generate multiple actions.
101
+ } else {
102
+ this.#actionsMap.set(actionName, undefined)
103
+ this.#jsonActionsNamesMap.set(actionName, actionName)
104
+ }
81
105
  }
82
106
 
83
107
  this.log.trace(
84
108
  `${XpmLiquidActions.name}.initialise() =>`,
85
- Array.from(this.#map.keys())
109
+ Array.from(this.#actionsMap.keys())
86
110
  )
87
111
 
88
112
  this.#isInitialised = true
@@ -92,25 +116,33 @@ export class XpmLiquidActions {
92
116
  // Methods.
93
117
 
94
118
  empty(): boolean {
95
- return this.#map.size === 0
119
+ return this.#actionsMap.size === 0
96
120
  }
97
121
 
98
122
  names(): string[] {
99
- const actionNames = Array.from(this.#map.keys())
123
+ const actionNames = Array.from(this.#actionsMap.keys())
100
124
 
101
125
  this.log.trace(`${XpmLiquidActions.name}.names() =>`, actionNames)
102
126
  return actionNames
103
127
  }
104
128
 
105
129
  has(actionName: string): boolean {
106
- return this.#map.has(actionName)
130
+ return this.#actionsMap.has(actionName)
107
131
  }
108
132
 
109
133
  get(actionName: string): XpmLiquidAction {
110
- let action = this.#map.get(actionName)
134
+ let action = this.#actionsMap.get(actionName)
111
135
  if (action === undefined) {
112
- action = new XpmLiquidAction({ actionName, parentActions: this })
113
- this.#map.set(actionName, action)
136
+ const jsonActionName: string =
137
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
138
+ this.#jsonActionsNamesMap.get(actionName)!
139
+ const jsonAction = this.jsonActions[jsonActionName] ?? ''
140
+ action = new XpmLiquidAction({
141
+ actionName,
142
+ jsonAction,
143
+ parentActions: this,
144
+ })
145
+ this.#actionsMap.set(actionName, action)
114
146
  }
115
147
 
116
148
  return action
@@ -124,8 +156,10 @@ export class XpmLiquidAction {
124
156
  // --------------------------------------------------------------------------
125
157
  // Members.
126
158
 
127
- readonly #actionName: string
128
- readonly #parentActions: XpmLiquidActions
159
+ readonly actionName: string
160
+ // readonly jsonActionName: string
161
+ readonly jsonAction: JsonActionValue
162
+ parentActions: XpmLiquidActions
129
163
 
130
164
  // For templates, the actual values.
131
165
  matrixParameters?: XpmLiquidSubstitutionsStrings
@@ -136,15 +170,25 @@ export class XpmLiquidAction {
136
170
 
137
171
  constructor({
138
172
  actionName,
173
+ // jsonActionName,
174
+ jsonAction,
139
175
  parentActions,
140
176
  }: {
141
177
  actionName: string
178
+ // jsonActionName: string
179
+ jsonAction: JsonActionValue
142
180
  parentActions: XpmLiquidActions
143
181
  }) {
182
+ assert(actionName)
183
+ // assert(jsonActionName)
184
+ assert(parentActions)
185
+
144
186
  parentActions.log.trace(`${XpmLiquidAction.name}(${actionName})`)
145
187
 
146
- this.#actionName = actionName
147
- this.#parentActions = parentActions
188
+ this.actionName = actionName
189
+ // this.jsonActionName = jsonActionName
190
+ this.jsonAction = jsonAction
191
+ this.parentActions = parentActions
148
192
  }
149
193
 
150
194
  // --------------------------------------------------------------------------
@@ -153,22 +197,22 @@ export class XpmLiquidAction {
153
197
  async getCommands(): Promise<string[]> {
154
198
  if (this.#commands === undefined) {
155
199
  // Silently accept empty or non-existing actions.
156
- const jsonAction = this.#parentActions.jsonActions[this.#actionName] ?? ''
200
+ const jsonAction = this.jsonAction
157
201
  const input = Array.isArray(jsonAction)
158
202
  ? jsonAction.join(os.EOL)
159
203
  : jsonAction
160
204
 
161
205
  const substituted = await performSubstitutions({
162
206
  input,
163
- engine: this.#parentActions.engine,
164
- substitutionsVariables: this.#parentActions.substitutionsVariables,
165
- log: this.#parentActions.log,
207
+ engine: this.parentActions.engine,
208
+ substitutionsVariables: this.parentActions.substitutionsVariables,
209
+ log: this.parentActions.log,
166
210
  })
167
211
 
168
212
  this.#commands = substituted.split(os.EOL)
169
213
  }
170
214
 
171
- this.#parentActions.log.trace(
215
+ this.parentActions.log.trace(
172
216
  `${XpmLiquidAction.name}.commands() =>`,
173
217
  this.#commands
174
218
  )
@@ -30,7 +30,7 @@ import {
30
30
  JsonDependencies,
31
31
  } from './types.js'
32
32
  import { performSubstitutions } from './functions/perform-substitutions.js'
33
- import { XpmLiquidActions } from './liquid-actions.js'
33
+ import { XpmLiquidAction, XpmLiquidActions } from './liquid-actions.js'
34
34
  import { isString } from './functions/utils.js'
35
35
  import { filterPath } from './functions/utils.js'
36
36
 
@@ -68,6 +68,10 @@ export class XpmLiquidBuildConfigurations {
68
68
  substitutionsVariables: XpmLiquidSubstitutionsVariables
69
69
  jsonBuildConfigurations: JsonBuildConfigurations | undefined
70
70
  }) {
71
+ assert(log)
72
+ assert(engine)
73
+ assert(substitutionsVariables)
74
+
71
75
  log.trace(`${XpmLiquidBuildConfigurations.name}()`)
72
76
 
73
77
  this.log = log
@@ -163,9 +167,13 @@ export class XpmLiquidBuildConfigurations {
163
167
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
164
168
  this.#jsonBuildConfigurationsNamesMap.get(buildConfigurationName)!
165
169
 
170
+ const jsonBuildConfiguration =
171
+ this.jsonBuildConfigurations[jsonBuildConfigurationName] ?? {}
172
+
166
173
  buildConfiguration = new XpmLiquidBuildConfiguration({
167
174
  buildConfigurationName,
168
- jsonBuildConfigurationName,
175
+ // jsonBuildConfigurationName,
176
+ jsonBuildConfiguration,
169
177
  parentBuildConfigurations: this,
170
178
  })
171
179
  await buildConfiguration.initialise()
@@ -194,7 +202,7 @@ export class XpmLiquidBuildConfiguration {
194
202
  readonly hidden: boolean
195
203
 
196
204
  // The actual (un-substituted) name from package.json.
197
- readonly jsonBuildConfigurationName: string
205
+ // readonly jsonBuildConfigurationName: string
198
206
  // Points to the actual buildConfiguration in package.json.
199
207
  readonly jsonBuildConfiguration: JsonBuildConfiguration
200
208
 
@@ -224,26 +232,29 @@ export class XpmLiquidBuildConfiguration {
224
232
 
225
233
  constructor({
226
234
  buildConfigurationName, // The Liquid-processed name.
227
- jsonBuildConfigurationName, // The raw name from package.json.
235
+ // jsonBuildConfigurationName, // The raw name from package.json.
236
+ jsonBuildConfiguration,
228
237
  parentBuildConfigurations,
229
238
  }: {
230
239
  buildConfigurationName: string
231
- jsonBuildConfigurationName: string
240
+ // jsonBuildConfigurationName: string
241
+ jsonBuildConfiguration: JsonBuildConfiguration
232
242
  parentBuildConfigurations: XpmLiquidBuildConfigurations
233
243
  }) {
244
+ assert(buildConfigurationName)
245
+ // assert(jsonBuildConfigurationName)
246
+ assert(jsonBuildConfiguration)
247
+ assert(parentBuildConfigurations)
248
+
234
249
  parentBuildConfigurations.log.trace(
235
250
  `${XpmLiquidBuildConfiguration.name}(${buildConfigurationName})`
236
251
  )
237
252
 
238
253
  this.#buildConfigurationName = buildConfigurationName
239
- this.jsonBuildConfigurationName = jsonBuildConfigurationName
254
+ // this.jsonBuildConfigurationName = jsonBuildConfigurationName
255
+ this.jsonBuildConfiguration = jsonBuildConfiguration
240
256
  this.#parentBuildConfigurations = parentBuildConfigurations
241
257
 
242
- this.jsonBuildConfiguration =
243
- parentBuildConfigurations.jsonBuildConfigurations[
244
- jsonBuildConfigurationName
245
- ] ?? {}
246
-
247
258
  this.substitutionsVariables = {
248
259
  ...this.#parentBuildConfigurations.substitutionsVariables,
249
260
  }
@@ -275,6 +286,11 @@ export class XpmLiquidBuildConfiguration {
275
286
  inherits = jsonBuildConfiguration.inherit as string[]
276
287
  }
277
288
 
289
+ const inheritedActionsMap: Map<string, XpmLiquidAction> = new Map<
290
+ string,
291
+ XpmLiquidAction
292
+ >()
293
+
278
294
  // Add inherited configuration properties.
279
295
  // TODO: detect circular references.
280
296
  for (const inheritedBuildConfigurationName of inherits) {
@@ -299,6 +315,12 @@ export class XpmLiquidBuildConfiguration {
299
315
  ...this.jsonDevDependencies,
300
316
  ...inheritedBuildConfiguration.jsonDevDependencies,
301
317
  }
318
+
319
+ await inheritedBuildConfiguration.actions.initialise()
320
+ for (const actionName of inheritedBuildConfiguration.actions.names()) {
321
+ const action = inheritedBuildConfiguration.actions.get(actionName)
322
+ inheritedActionsMap.set(actionName, action)
323
+ }
302
324
  } else {
303
325
  log.warn(
304
326
  'buildConfiguration',
@@ -347,6 +369,7 @@ export class XpmLiquidBuildConfiguration {
347
369
  log: this.#parentBuildConfigurations.log,
348
370
  engine: this.#parentBuildConfigurations.engine,
349
371
  substitutionsVariables: this.substitutionsVariables,
372
+ inheritedActionsMap,
350
373
  jsonActions: this.jsonBuildConfiguration.actions,
351
374
  })
352
375
  // Note: this must be done manually by the application.