@netless/telebox-insider 0.3.0-beta.6 → 0.3.0-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netless/telebox-insider",
3
- "version": "0.3.0-beta.6",
3
+ "version": "0.3.0-beta.8",
4
4
  "private": false,
5
5
  "description": "Window widget for Whiteboard",
6
6
  "author": "CRIMX <straybugs@gmail.com> (https://github.com/crimx/)",
@@ -69,7 +69,7 @@
69
69
  "react-dom": "^17.0.2",
70
70
  "react-refresh": "^0.8.3",
71
71
  "rimraf": "^3.0.0",
72
- "sass": "^1.36.0",
72
+ "sass": "^1.77.0",
73
73
  "sass-loader": "^10.1.1",
74
74
  "side-effect-manager": "0.1.5",
75
75
  "typescript": "^4.9.5",
@@ -13,7 +13,7 @@ export interface AppMenuProps {
13
13
 
14
14
  export class AppMenu {
15
15
  private readonly namespace: string = 'telebox-app-menu';
16
- public readonly container: HTMLDivElement;
16
+ private container: HTMLDivElement;
17
17
  private readonly badge: HTMLDivElement = document.createElement('div');
18
18
  private readonly menuView: HTMLDivElement = document.createElement('div');
19
19
  private readonly manager: TeleBoxManager;
@@ -76,6 +76,14 @@ export class AppMenu {
76
76
  }
77
77
  };
78
78
 
79
+ public setContainer(container: HTMLDivElement){
80
+ if(this.container) {
81
+ this.container.remove();
82
+ }
83
+ this.container = container;
84
+ this.init();
85
+ }
86
+
79
87
  private createDefaultAppMenu(){
80
88
  this.badge.classList.add(this.c('app-menu-badge'));
81
89
  this.menuView.classList.add(this.c('app-menu-tooltip'));
@@ -1,5 +1,5 @@
1
- @import "../scss/variables.scss";
2
- @import "../scss/mixins.scss";
1
+ @use "../scss/variables" as *;
2
+ @use "../scss/mixins" as *;
3
3
 
4
4
  .#{$namespace}-box {
5
5
  position: absolute;
@@ -1,5 +1,5 @@
1
- @import "../scss/variables.scss";
2
- @import "../scss/mixins.scss";
1
+ @use "../scss/variables" as *;
2
+ @use "../scss/mixins" as *;
3
3
 
4
4
  .#{$namespace}-collector {
5
5
  @include no-user-select;
@@ -1,5 +1,5 @@
1
- @import "../../scss/variables.scss";
2
- @import "../../scss/mixins.scss";
1
+ @use "../../scss/variables" as *;
2
+ @use "../../scss/mixins" as *;
3
3
 
4
4
  $scrollbar-size: 8px;
5
5
  $scrollbar-ff-width: auto; // FF-only accepts auto, thin, none
@@ -211,6 +211,9 @@ export class TeleBoxManager {
211
211
  collector.setVisible(minimized$.value);
212
212
  collector.setReadonly(readonly$.value);
213
213
  collector.setDarkMode(this._darkMode$.value);
214
+ if (this.useBoxesStatus && this.appMenu) {
215
+ this.appMenu.setContainer(collector.$appMenuContainer);
216
+ }
214
217
  this._sideEffect.add(() => {
215
218
  collector.getBoxesStatus = () => {
216
219
  return this.boxesStatus$;
@@ -563,11 +566,15 @@ export class TeleBoxManager {
563
566
  return this.lastNotMinimizedBoxesStatus$;
564
567
  }
565
568
 
566
- public async setBoxesStatus(boxesStatus: Map<string, TeleBoxState>, skipUpdate = false): Promise<void> {
569
+ public setBoxesStatus(boxesStatus: Map<string, TeleBoxState>, skipUpdate = false) {
567
570
  this.boxesStatus$ = boxesStatus;
568
571
  this.effectBoxesStatusChange(skipUpdate);
569
572
  }
570
573
 
574
+ public getBoxesStatus(): Map<string, TeleBoxState> {
575
+ return this.boxesStatus$;
576
+ }
577
+
571
578
  private effectBoxStatusChange(){
572
579
  if (!this.useBoxesStatus) {
573
580
  return;
@@ -1,5 +1,5 @@
1
- @import "../../scss/variables.scss";
2
- @import "../../scss/mixins.scss";
1
+ @use "../../scss/variables" as *;
2
+ @use "../../scss/mixins" as *;
3
3
 
4
4
  .#{$namespace}-titlebar {
5
5
  @include no-user-select;