q2-tecton-platform 1.47.4 → 1.47.6

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 +1 @@
1
- {"version":3,"file":"t.d.ts","sourceRoot":"","sources":["../../../src/actions/t.ts"],"names":[],"mappings":"AAAA,OAAO,UAA6B,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAKxD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,uBAAuB,EACzC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,GAC1B,IAAI,CA2BN"}
1
+ {"version":3,"file":"t.d.ts","sourceRoot":"","sources":["../../../src/actions/t.ts"],"names":[],"mappings":"AAAA,OAAO,UAA6B,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAKxD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,uBAAuB,EACzC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,GAC1B,IAAI,CAmCN"}
@@ -5,10 +5,13 @@ import { Maybe } from 'maybe-not';
5
5
  export default function setupTectonLanguage(messageBus, legacyControlBus, capabilities, teardowns) {
6
6
  const language = legacyControlBus.getCurrentLanguage();
7
7
  const currentLanguage$ = new BehaviorSubject(language);
8
+ let active = true; // Flag to prevent callback from executing after teardown
8
9
  if (legacyControlBus.languageChanged) {
9
10
  capabilities.add('languageChanged');
10
11
  legacyControlBus.languageChanged((langKey) => {
11
- currentLanguage$.next(langKey);
12
+ if (active) {
13
+ currentLanguage$.next(langKey);
14
+ }
12
15
  });
13
16
  }
14
17
  const currentLanguageSubscription = currentLanguage$.subscribe((langKey = 'en-US') => {
@@ -18,6 +21,11 @@ export default function setupTectonLanguage(messageBus, legacyControlBus, capabi
18
21
  return Promise.resolve({ langKey: currentLanguage$.getValue() });
19
22
  });
20
23
  teardowns.push(() => {
24
+ // Deactivate callback to prevent it from executing after teardown
25
+ active = false;
26
+ // Unsubscribe from all subscriptions
21
27
  [currentLanguageSubscription, currentLanguageResponseSubscription].forEach(subscription => subscription.unsubscribe());
28
+ // Complete the BehaviorSubject to release all internal state
29
+ currentLanguage$.complete();
22
30
  });
23
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"platform-outlet.d.ts","sourceRoot":"","sources":["../../../src/outlets/platform-outlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,4BAA4B,EAQ/B,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAe,MAAM,0CAA0C,CAAC;AACpF,OAAO,EAAE,eAAe,EAAiB,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAKzC,UAAU,qBAAsB,SAAQ,eAAe;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,iCAAiC;;GAAkD,CAAC;AAEjG,wBAAgB,wBAAwB,CACpC,aAAa,EAAE,eAAe,CAAC,mBAAmB,CAAC,EACnD,OAAO,EAAE,eAAe,CAAC,cAAc,CAAC,EACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,EACpD,wBAAwB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,gBAGlC,WAAW,cACX,MAAM,yBACK,qBAAqB,mBAC3B,gBAAgB,MAAM,GAAG,CAAC,CAAC,KAC7C,4BAA4B,CAoLlC"}
1
+ {"version":3,"file":"platform-outlet.d.ts","sourceRoot":"","sources":["../../../src/outlets/platform-outlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,4BAA4B,EAQ/B,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAe,MAAM,0CAA0C,CAAC;AACpF,OAAO,EAAE,eAAe,EAA+B,MAAM,MAAM,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAKzC,UAAU,qBAAsB,SAAQ,eAAe;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,iCAAiC;;GAAkD,CAAC;AAEjG,wBAAgB,wBAAwB,CACpC,aAAa,EAAE,eAAe,CAAC,mBAAmB,CAAC,EACnD,OAAO,EAAE,eAAe,CAAC,cAAc,CAAC,EACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,EACpD,wBAAwB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,gBAGlC,WAAW,cACX,MAAM,yBACK,qBAAqB,mBAC3B,gBAAgB,MAAM,GAAG,CAAC,CAAC,KAC7C,4BAA4B,CAqMlC"}
@@ -1,6 +1,6 @@
1
1
  import { buildLoaders, setupOutletIFrameWrapper, setupOutletIFrameLoading, setupOutletIFrameResizer, setupOutletSetTitleListener, setupOutletInfo, getBaseClass, isBeta, } from 'q2-tecton-common/lib/outlets/tecton-outlet-base';
2
2
  import { sendMessage } from 'q2-tecton-common/lib/utility/message-bus';
3
- import { BehaviorSubject, combineLatest } from 'rxjs';
3
+ import { BehaviorSubject, combineLatest, Subscription } from 'rxjs';
4
4
  import { map, filter, distinctUntilChanged, pairwise } from 'rxjs/operators';
5
5
  import addParamToURL from 'q2-tecton-common/lib/utility/addParamToURL';
6
6
  import { Maybe } from 'maybe-not';
@@ -27,23 +27,42 @@ export function loadTectonPlatformOutlet(tectonConfig$, params$, authPayload, bu
27
27
  };
28
28
  const loadingSubscription = setupOutletIFrameLoading(messageBus, getModuleId, getContent);
29
29
  const outletInfoSubscription = setupOutletInfo(messageBus, getModuleId, getContent);
30
- const teardown$ = new BehaviorSubject(() => {
31
- loadingSubscription.unsubscribe();
32
- outletInfoSubscription.unsubscribe();
30
+ // Use Subscription to accumulate all cleanup, preventing memory leaks
31
+ const teardownsSubscription = new Subscription();
32
+ teardownsSubscription.add(loadingSubscription);
33
+ teardownsSubscription.add(outletInfoSubscription);
34
+ // Add BehaviorSubject cleanup - must call .complete() separately from .unsubscribe()
35
+ teardownsSubscription.add(() => {
36
+ // Clear object/function references before completing
37
+ // DOM$.next(null as any) - commented out: compatible with Playwright tests in later Tecton versions but breaks Karma tests in 1.47.x
33
38
  DOM$.complete();
34
- DOM$.next(null);
39
+ // effect$.next(() => {}) - commented out: same reason as above
40
+ effect$.complete();
41
+ // Primitives can be completed directly without clearing
42
+ settled$.complete();
43
+ });
44
+ // Wrapper BehaviorSubject for parent compatibility - parent expects BehaviorSubject<Teardown>
45
+ const teardown$ = new BehaviorSubject(() => {
46
+ teardown$.complete();
47
+ teardownsSubscription.unsubscribe();
35
48
  });
36
49
  const configTree$ = memorizedProps$.pipe(map(props => props.configTree), filter(configTree => !!configTree), distinctUntilChanged());
37
50
  const isOverpanel$ = new BehaviorSubject(false);
38
51
  const overpanelSubscription = memorizedProps$
39
52
  .pipe(map(props => props.overpanel), filter(overpanel => typeof overpanel === 'boolean'), distinctUntilChanged())
40
53
  .subscribe(isOverpanel$);
54
+ teardownsSubscription.add(overpanelSubscription);
55
+ // Add isOverpanel$ cleanup (primitive, just complete)
56
+ teardownsSubscription.add(() => {
57
+ isOverpanel$.complete();
58
+ });
41
59
  const routeName$ = memorizedProps$.pipe(map(props => props.routeName), filter(routeName => !!routeName), distinctUntilChanged());
42
60
  const moduleIdChangeSubscription = routeName$
43
61
  .pipe(map(routeName => `${outletPath}.${routeName}`), pairwise())
44
62
  .subscribe(([oldModuleId]) => {
45
63
  sendMessage('clearParams', Maybe.just(JSON.stringify({ moduleId: oldModuleId })));
46
64
  });
65
+ teardownsSubscription.add(moduleIdChangeSubscription);
47
66
  const outletDataSubscription = combineLatest(configTree$, isOverpanel$, routeName$).subscribe(([configTree, isOverpanel, routeName]) => {
48
67
  const tectonConfig = tectonConfig$.getValue();
49
68
  const module = tectonConfig.features[configTree.featureName].modules[configTree.moduleName];
@@ -65,14 +84,10 @@ export function loadTectonPlatformOutlet(tectonConfig$, params$, authPayload, bu
65
84
  }
66
85
  if (!isOverpanel) {
67
86
  const resizerSubscription = setupOutletIFrameResizer(messageBus, getModuleId, getContent);
68
- teardown$.next(() => {
69
- resizerSubscription.unsubscribe();
70
- });
87
+ teardownsSubscription.add(resizerSubscription);
71
88
  }
72
89
  const titleSubscription = setupOutletSetTitleListener(messageBus, getModuleId, getContent);
73
- teardown$.next(() => {
74
- titleSubscription.unsubscribe();
75
- });
90
+ teardownsSubscription.add(titleSubscription);
76
91
  const outletDOM = setupOutletIFrameWrapper(iframeSrc, moduleId, authPayload ? authPayload() : [], `${configTree.featureName}-${configTree.moduleName}`, platformOutletElement.style.maxHeight, platformOutletElement.style.maxWidth, isOverpanel, formPostAuth, additionalDomains, allowDirectives);
77
92
  const loaderWrapper = document.createElement('div');
78
93
  loaderWrapper.style.minHeight = minHeight || '0px';
@@ -111,14 +126,13 @@ export function loadTectonPlatformOutlet(tectonConfig$, params$, authPayload, bu
111
126
  }
112
127
  settled$.next(true);
113
128
  });
114
- teardown$.next(() => {
115
- overpanelSubscription.unsubscribe();
116
- outletDataSubscription.unsubscribe();
117
- moduleIdChangeSubscription.unsubscribe();
129
+ // Add cleanup for clearParams message
130
+ teardownsSubscription.add(() => {
118
131
  sendMessage('clearParams', Maybe.just(JSON.stringify({ moduleId })));
119
132
  });
120
133
  }
121
134
  });
135
+ teardownsSubscription.add(outletDataSubscription);
122
136
  return {
123
137
  DOM$,
124
138
  settled$,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/setup/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/setup/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAEtG,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnG,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AASvC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,iBAAiB,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE1E,MAAM,WAAW,uBAAuB;IACpC,2BAA2B,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,WAAW,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAClE,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACpF,cAAc,IAAI,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnD,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1C,kBAAkB,IAAI,MAAM,CAAC;IAC7B,eAAe,IAAI,MAAM,CAAC;IAC1B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/C,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACnD,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACjE,uBAAuB,CAAC,IAAI,MAAM,GAAG,SAAS,CAAC;IAC/C,YAAY,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1C,cAAc,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,kBAAkB,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,iBAAiB,CAAC,IAAI,IAAI,CAAC;IAC3B,aAAa,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACnF,WAAW,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,kBAAkB,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3E,cAAc,CAAC,IAAI,IAAI,CAAC;IACxB,yBAAyB,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACtF,eAAe,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,YAAY,CAAC,IAAI,SAAS,CAAC;IAC3B,eAAe,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,YAAY,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,gBAAgB,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,cAAc,CAAC,IAAI,YAAY,CAAC;IAChC,UAAU,CAAC,IAAI,QAAQ,CAAC;IACxB,SAAS,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;IAC9D,SAAS,CAAC,IAAI,IAAI,CAAC;IACnB,eAAe,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACnD,kBAAkB,CAAC,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC1C,WAAW,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3E,UAAU,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAChG,yBAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI,CAAC;IACtE,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IACtD,YAAY,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7E,2BAA2B,CAAC,IAAI,IAAI,CAAC;IACrC,eAAe,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACnD,oBAAoB,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAClG,SAAS,CAAC,CAAC,YAAY,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxE,WAAW,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3F,mBAAmB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACrG,iBAAiB,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,YAAY,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,uBAAuB,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACxC,gBAAgB,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,SAAS,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,aAAa,CAAC,CACV,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,EACzC,mBAAmB,EAAE,MAAM,GAAG,SAAS,EACvC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAC/B,MAAM,EAAE,iBAAiB,CAAC,QAAQ,CAAC,EACnC,MAAM,EAAE,iBAAiB,CAAC,QAAQ,CAAC,GACpC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IAC9B,eAAe,CAAC,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC3E,WAAW,CAAC,CAAC,OAAO,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpF,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACjD,oBAAoB,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAC9E,YAAY,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;IAClG,cAAc,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrE,oBAAoB,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,qBAAqB,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,SAAS,CAAC,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACrD,wBAAwB,CAAC,IAAI,OAAO,CAAC,2BAA2B,CAAC,CAAC;CACrE;AAED,MAAM,WAAW,uBAAuB;IACpC,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAChE,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACpF,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAAC;IACjD,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CAAC;IACnD,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC;IACrE,aAAa,CAAC,UAAU,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrD,QAAQ,IAAI,IAAI,CAAC;IACjB,mBAAmB,CAAC,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;IACzD,YAAY,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAChD,YAAY,IAAI,IAAI,CAAC;IACrB,wBAAwB,CAAC,eAAe,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5D;AAED,MAAM,WAAW,cAAc;IAC3B,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAChC;AAED,oBAAY,aAAa,GAAG,OAAO,MAAM,GAAG;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;CACvD,CAAC;AAEF,wBAAgB,IAAI,CAChB,YAAY,EAAE,mBAAmB,EACjC,gBAAgB,EAAE,uBAAuB,EACzC,WAAW,CAAC,EAAE,YAAY,GAC3B,uBAAuB,CA6HzB"}
@@ -119,6 +119,9 @@ export function init(tectonConfig, legacyControlBus, testOptions) {
119
119
  },
120
120
  teardown() {
121
121
  teardowns.forEach(fn => fn());
122
+ // Complete BehaviorSubjects to release internal state
123
+ params$.complete();
124
+ tectonConfig$.complete();
122
125
  },
123
126
  };
124
127
  }
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/setup/styles.ts"],"names":[],"mappings":"AAAA,OAAO,UAA6B,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,GAAG,CAAC;AAK5C,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACrC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,uBAAuB,EACzC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,GAC1B,IAAI,CAwCN"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/setup/styles.ts"],"names":[],"mappings":"AAAA,OAAO,UAA6B,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,GAAG,CAAC;AAK5C,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACrC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,uBAAuB,EACzC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,GAC1B,IAAI,CAgDN"}
@@ -11,10 +11,13 @@ export default function setupTectonStyles(messageBus, legacyControlBus, capabili
11
11
  const currentTheme$ = new BehaviorSubject({
12
12
  path: ifRelativePrependOrigin(legacyControlBus.getCustomerSpecificAssetPath(`${legacyControlBus.getCurrentTheme()}-props.css`)),
13
13
  });
14
+ let active = true; // Flag to prevent callback from executing after teardown
14
15
  const onThemeChange = (themeName) => {
15
- currentTheme$.next({
16
- path: ifRelativePrependOrigin(legacyControlBus.getCustomerSpecificAssetPath(`${themeName}-props.css`)),
17
- });
16
+ if (active) {
17
+ currentTheme$.next({
18
+ path: ifRelativePrependOrigin(legacyControlBus.getCustomerSpecificAssetPath(`${themeName}-props.css`)),
19
+ });
20
+ }
18
21
  };
19
22
  if (legacyControlBus.themeChanged) {
20
23
  capabilities.add('themeChanged');
@@ -27,7 +30,12 @@ export default function setupTectonStyles(messageBus, legacyControlBus, capabili
27
30
  return Promise.resolve(currentTheme$.getValue());
28
31
  });
29
32
  teardowns.push(() => {
33
+ // Deactivate callback to prevent it from executing after teardown
34
+ active = false;
35
+ // Unsubscribe from all subscriptions
30
36
  tectonThemeSubscription.unsubscribe();
31
37
  tectonCurrentThemeServiceSubscription.unsubscribe();
38
+ // Complete the BehaviorSubject to release all internal state
39
+ currentTheme$.complete();
32
40
  });
33
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"platformCssPropertiesChangedSetup.d.ts","sourceRoot":"","sources":["../../../src/sources/platformCssPropertiesChangedSetup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AASlD,MAAM,CAAC,OAAO,UAAU,iCAAiC,CACrD,gBAAgB,EAAE,uBAAuB,EACzC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,QAoB5B"}
1
+ {"version":3,"file":"platformCssPropertiesChangedSetup.d.ts","sourceRoot":"","sources":["../../../src/sources/platformCssPropertiesChangedSetup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AASlD,MAAM,CAAC,OAAO,UAAU,iCAAiC,CACrD,gBAAgB,EAAE,uBAAuB,EACzC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,QA6B5B"}
@@ -3,21 +3,29 @@ import { Maybe } from 'maybe-not';
3
3
  import CapabilityNames from 'q2-tecton-common/lib/constants/capabilityNames';
4
4
  import streamNames from 'q2-tecton-common/lib/constants/streamNames';
5
5
  import { BehaviorSubject } from 'rxjs';
6
- import { skip } from 'rxjs/internal/operators/skip';
6
+ import { skip } from 'rxjs/operators';
7
7
  export default function platformCssPropertiesChangedSetup(legacyControlBus, capabilities, teardowns) {
8
8
  if (!legacyControlBus.cssPropertiesChanged) {
9
9
  return;
10
10
  }
11
11
  capabilities.add(CapabilityNames.PlatformCssPropertiesChanged);
12
12
  const currentProperties$ = new BehaviorSubject([]);
13
+ let active = true; // Flag to prevent callback from executing after teardown
13
14
  const onCssPropertiesChanged = (cssProperties) => {
14
- currentProperties$.next(cssProperties);
15
+ if (active) {
16
+ currentProperties$.next(cssProperties);
17
+ }
15
18
  };
16
19
  const propertiesSubscription = currentProperties$.pipe(skip(1)).subscribe(cssProperties => {
17
20
  sendBroadcast(streamNames.streamCssProperties, Maybe.just(JSON.stringify(cssProperties)));
18
21
  });
19
22
  legacyControlBus.cssPropertiesChanged(onCssPropertiesChanged);
20
23
  teardowns.push(() => {
24
+ // Deactivate callback to prevent it from executing after teardown
25
+ active = false;
26
+ // Unsubscribe from subscription
21
27
  propertiesSubscription.unsubscribe();
28
+ // Complete the BehaviorSubject to release all internal state
29
+ currentProperties$.complete();
22
30
  });
23
31
  }