@contrail/flexplm 1.5.1-alpha.5843ce4 → 1.5.1-alpha.c9b11be

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.
@@ -79,7 +79,7 @@ export declare class BaseProcessPublishAssortment {
79
79
  private sendToFlexPLM;
80
80
  private saveToLocalFile;
81
81
  private handleVibeIQFile;
82
- sendPublishPayloadEvent(outboundEvent: any): Promise<void>;
82
+ private sendPublishPayloadEvent;
83
83
  private getCurrentDateString;
84
84
  getItemFamilyChanges(pcd: PublishChangeData, changeDetail: any, assortmentItemFullChangeMap: Map<string, any>, assortmentItemDeleteMap: Map<string, any>): Map<string, ItemFamilyChanges>;
85
85
  getEventsForPublishChangeData(publishChangeData: PublishChangeData): Promise<SeasonalPayload[]>;
@@ -576,10 +576,11 @@ class BaseProcessPublishAssortment {
576
576
  events
577
577
  };
578
578
  const flexPLMConnect = new flexplm_connect_1.FlexPLMConnect(this.config);
579
- const [result] = await Promise.all([
579
+ const [sendResult] = await Promise.allSettled([
580
580
  flexPLMConnect.sendToFlexPLM(outboundPublishEvent),
581
581
  this.sendPublishPayloadEvent(outboundPublishEvent)
582
582
  ]);
583
+ const result = sendResult.status === 'fulfilled' ? sendResult.value : { error: sendResult.reason?.message };
583
584
  const isResultObject = typeof result === 'object' && result !== null;
584
585
  const resultWithOutboundPublishEvent = isResultObject
585
586
  ? { ...result, outboundPublishEvent }
@@ -631,10 +632,11 @@ class BaseProcessPublishAssortment {
631
632
  };
632
633
  if (sendMode === 'vibeiqfile') {
633
634
  const flexPLMConnect = new flexplm_connect_1.FlexPLMConnect(this.config);
634
- const [result] = await Promise.all([
635
+ const [sendResult] = await Promise.allSettled([
635
636
  flexPLMConnect.sendToFlexPLM(outboundPublishEvent),
636
637
  this.sendPublishPayloadEvent(outboundPublishEvent)
637
638
  ]);
639
+ const result = sendResult.status === 'fulfilled' ? sendResult.value : { error: sendResult.reason?.message };
638
640
  return { ...result, outboundPublishEvent };
639
641
  }
640
642
  else {
@@ -645,7 +647,7 @@ class BaseProcessPublishAssortment {
645
647
  };
646
648
  }
647
649
  }
648
- async sendPublishPayloadEvent(outboundEvent) {
650
+ async sendPublishPayloadEvent(outboundPublishEvent) {
649
651
  console.info('sendPublishPayloadEvent()');
650
652
  let initialEvent = {};
651
653
  if (this.config?.event) {
@@ -656,7 +658,7 @@ class BaseProcessPublishAssortment {
656
658
  const eventBody = {
657
659
  originSystemType: 'VibeIQ',
658
660
  objectClass: 'AssortmentPublishedToFlexPLM',
659
- outboundEvent,
661
+ outboundPublishEvent,
660
662
  initialEvent
661
663
  };
662
664
  await new sdk_1.Entities().create({
@@ -1779,14 +1779,14 @@ describe('sendToFlexPLM / handleVibeIQFile / sendPublishPayloadEvent', () => {
1779
1779
  });
1780
1780
  it('sendPublishPayloadEvent creates an external-event with initialEvent parsed from config', async () => {
1781
1781
  const bppa = new base_process_publish_assortment_1.BaseProcessPublishAssortment(config, dc, mapFileUtil);
1782
- const outboundEvent = { foo: 'bar' };
1783
- await bppa.sendPublishPayloadEvent(outboundEvent);
1782
+ const outboundPublishEvent = { foo: 'bar' };
1783
+ await bppa.sendPublishPayloadEvent(outboundPublishEvent);
1784
1784
  expect(createCallArg).toEqual({
1785
1785
  entityName: 'external-event',
1786
1786
  object: {
1787
1787
  originSystemType: 'VibeIQ',
1788
1788
  objectClass: 'AssortmentPublishedToFlexPLM',
1789
- outboundEvent,
1789
+ outboundPublishEvent,
1790
1790
  initialEvent: { sourceEventId: 'src-1' }
1791
1791
  }
1792
1792
  });
@@ -1794,14 +1794,14 @@ describe('sendToFlexPLM / handleVibeIQFile / sendPublishPayloadEvent', () => {
1794
1794
  it('sendPublishPayloadEvent defaults initialEvent to {} when config has no event', async () => {
1795
1795
  const bareConfig = { taskId: 'task-x' };
1796
1796
  const bppa = new base_process_publish_assortment_1.BaseProcessPublishAssortment(bareConfig, dc, mapFileUtil);
1797
- const outboundEvent = { hello: 'world' };
1798
- await bppa.sendPublishPayloadEvent(outboundEvent);
1797
+ const outboundPublishEvent = { hello: 'world' };
1798
+ await bppa.sendPublishPayloadEvent(outboundPublishEvent);
1799
1799
  expect(createCallArg).toEqual({
1800
1800
  entityName: 'external-event',
1801
1801
  object: {
1802
1802
  originSystemType: 'VibeIQ',
1803
1803
  objectClass: 'AssortmentPublishedToFlexPLM',
1804
- outboundEvent,
1804
+ outboundPublishEvent,
1805
1805
  initialEvent: {}
1806
1806
  }
1807
1807
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contrail/flexplm",
3
- "version": "1.5.1-alpha.5843ce4",
3
+ "version": "1.5.1-alpha.c9b11be",
4
4
  "description": "Library used for integration with flexplm.",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -2045,7 +2045,7 @@ describe('sendToFlexPLM / handleVibeIQFile / sendPublishPayloadEvent', () => {
2045
2045
  flexResolved = true;
2046
2046
  return flexResponse as any;
2047
2047
  });
2048
- const spyEvent = jest.spyOn(bppa, 'sendPublishPayloadEvent')
2048
+ const spyEvent = jest.spyOn(bppa as any, 'sendPublishPayloadEvent')
2049
2049
  .mockImplementation(async () => {
2050
2050
  await new Promise(r => setTimeout(r, 5));
2051
2051
  eventResolved = true;
@@ -2073,7 +2073,7 @@ describe('sendToFlexPLM / handleVibeIQFile / sendPublishPayloadEvent', () => {
2073
2073
 
2074
2074
  const spyFlex = jest.spyOn(FlexPLMConnect.prototype, 'sendToFlexPLM')
2075
2075
  .mockResolvedValue(flexResponse as any);
2076
- const spyEvent = jest.spyOn(bppa, 'sendPublishPayloadEvent')
2076
+ const spyEvent = jest.spyOn(bppa as any, 'sendPublishPayloadEvent')
2077
2077
  .mockResolvedValue(undefined as any);
2078
2078
 
2079
2079
  const result = await (bppa as any).handleVibeIQFile(events, eventType, 'vibeiqfile');
@@ -2101,7 +2101,7 @@ describe('sendToFlexPLM / handleVibeIQFile / sendPublishPayloadEvent', () => {
2101
2101
 
2102
2102
  const spyFlex = jest.spyOn(FlexPLMConnect.prototype, 'sendToFlexPLM')
2103
2103
  .mockResolvedValue({} as any);
2104
- const spyEvent = jest.spyOn(bppa, 'sendPublishPayloadEvent')
2104
+ const spyEvent = jest.spyOn(bppa as any, 'sendPublishPayloadEvent')
2105
2105
  .mockResolvedValue(undefined as any);
2106
2106
 
2107
2107
  const result = await (bppa as any).handleVibeIQFile(events, eventType, 'vibeiqfile-dontsendtoflexplm');
@@ -2119,16 +2119,16 @@ describe('sendToFlexPLM / handleVibeIQFile / sendPublishPayloadEvent', () => {
2119
2119
 
2120
2120
  it('sendPublishPayloadEvent creates an external-event with initialEvent parsed from config', async () => {
2121
2121
  const bppa = new BaseProcessPublishAssortment(config, dc, mapFileUtil);
2122
- const outboundEvent = { foo: 'bar' };
2122
+ const outboundPublishEvent = { foo: 'bar' };
2123
2123
 
2124
- await bppa.sendPublishPayloadEvent(outboundEvent);
2124
+ await (bppa as any).sendPublishPayloadEvent(outboundPublishEvent);
2125
2125
 
2126
2126
  expect(createCallArg).toEqual({
2127
2127
  entityName: 'external-event',
2128
2128
  object: {
2129
2129
  originSystemType: 'VibeIQ',
2130
2130
  objectClass: 'AssortmentPublishedToFlexPLM',
2131
- outboundEvent,
2131
+ outboundPublishEvent,
2132
2132
  initialEvent: { sourceEventId: 'src-1' }
2133
2133
  }
2134
2134
  });
@@ -2137,16 +2137,16 @@ describe('sendToFlexPLM / handleVibeIQFile / sendPublishPayloadEvent', () => {
2137
2137
  it('sendPublishPayloadEvent defaults initialEvent to {} when config has no event', async () => {
2138
2138
  const bareConfig = { taskId: 'task-x' } as unknown as FCConfig;
2139
2139
  const bppa = new BaseProcessPublishAssortment(bareConfig, dc, mapFileUtil);
2140
- const outboundEvent = { hello: 'world' };
2140
+ const outboundPublishEvent = { hello: 'world' };
2141
2141
 
2142
- await bppa.sendPublishPayloadEvent(outboundEvent);
2142
+ await (bppa as any).sendPublishPayloadEvent(outboundPublishEvent);
2143
2143
 
2144
2144
  expect(createCallArg).toEqual({
2145
2145
  entityName: 'external-event',
2146
2146
  object: {
2147
2147
  originSystemType: 'VibeIQ',
2148
2148
  objectClass: 'AssortmentPublishedToFlexPLM',
2149
- outboundEvent,
2149
+ outboundPublishEvent,
2150
2150
  initialEvent: {}
2151
2151
  }
2152
2152
  });
@@ -693,10 +693,11 @@ export class BaseProcessPublishAssortment {
693
693
  };
694
694
 
695
695
  const flexPLMConnect = new FlexPLMConnect(this.config);
696
- const [result] = await Promise.all([
696
+ const [sendResult] = await Promise.allSettled([
697
697
  flexPLMConnect.sendToFlexPLM(outboundPublishEvent),
698
698
  this.sendPublishPayloadEvent(outboundPublishEvent)
699
699
  ]);
700
+ const result = sendResult.status === 'fulfilled' ? sendResult.value : { error: sendResult.reason?.message };
700
701
  const isResultObject = typeof result === 'object' && result !== null;
701
702
  const resultWithOutboundPublishEvent = isResultObject
702
703
  ? { ...result, outboundPublishEvent }
@@ -756,10 +757,11 @@ export class BaseProcessPublishAssortment {
756
757
 
757
758
  if (sendMode === 'vibeiqfile') {
758
759
  const flexPLMConnect = new FlexPLMConnect(this.config);
759
- const [result] = await Promise.all([
760
+ const [sendResult] = await Promise.allSettled([
760
761
  flexPLMConnect.sendToFlexPLM(outboundPublishEvent),
761
762
  this.sendPublishPayloadEvent(outboundPublishEvent)
762
763
  ]);
764
+ const result = sendResult.status === 'fulfilled' ? sendResult.value : { error: sendResult.reason?.message };
763
765
  return { ...result, outboundPublishEvent };
764
766
  } else {
765
767
  await this.sendPublishPayloadEvent(outboundPublishEvent);
@@ -770,10 +772,10 @@ export class BaseProcessPublishAssortment {
770
772
  }
771
773
  }
772
774
 
773
- public async sendPublishPayloadEvent(outboundEvent: any){
775
+ private async sendPublishPayloadEvent(outboundPublishEvent: AsyncEventsPayloadType){
774
776
  console.info('sendPublishPayloadEvent()');
775
777
  let initialEvent = {};
776
- if(this.config?.event){
778
+ if (this.config?.event){
777
779
  initialEvent = (typeof this.config?.event === 'string')
778
780
  ? JSON.parse(this.config?.event)
779
781
  : this.config?.event;
@@ -781,7 +783,7 @@ export class BaseProcessPublishAssortment {
781
783
  const eventBody = {
782
784
  originSystemType: 'VibeIQ',
783
785
  objectClass: 'AssortmentPublishedToFlexPLM',
784
- outboundEvent,
786
+ outboundPublishEvent,
785
787
  initialEvent
786
788
  };
787
789