matterbridge 1.3.28 → 1.4.1

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 (37) hide show
  1. package/CHANGELOG.md +19 -3
  2. package/README.md +7 -4
  3. package/dist/deviceManager.d.ts +46 -0
  4. package/dist/deviceManager.d.ts.map +1 -0
  5. package/dist/deviceManager.js +92 -0
  6. package/dist/deviceManager.js.map +1 -0
  7. package/dist/matterbridge.d.ts +18 -76
  8. package/dist/matterbridge.d.ts.map +1 -1
  9. package/dist/matterbridge.js +218 -440
  10. package/dist/matterbridge.js.map +1 -1
  11. package/dist/matterbridgeDevice.d.ts +18 -5
  12. package/dist/matterbridgeDevice.d.ts.map +1 -1
  13. package/dist/matterbridgeDevice.js +9 -5
  14. package/dist/matterbridgeDevice.js.map +1 -1
  15. package/dist/matterbridgePlatform.d.ts +6 -1
  16. package/dist/matterbridgePlatform.d.ts.map +1 -1
  17. package/dist/matterbridgePlatform.js +8 -0
  18. package/dist/matterbridgePlatform.js.map +1 -1
  19. package/dist/matterbridgeTypes.d.ts +28 -1
  20. package/dist/matterbridgeTypes.d.ts.map +1 -1
  21. package/dist/matterbridgeTypes.js +26 -1
  22. package/dist/matterbridgeTypes.js.map +1 -1
  23. package/dist/{plugins.d.ts → pluginManager.d.ts} +6 -3
  24. package/dist/pluginManager.d.ts.map +1 -0
  25. package/dist/{plugins.js → pluginManager.js} +26 -16
  26. package/dist/pluginManager.js.map +1 -0
  27. package/frontend/build/asset-manifest.json +6 -6
  28. package/frontend/build/index.html +1 -1
  29. package/frontend/build/static/css/{main.df840158.css → main.5174e68c.css} +2 -2
  30. package/frontend/build/static/css/{main.df840158.css.map → main.5174e68c.css.map} +1 -1
  31. package/frontend/build/static/js/{main.2a46688a.js → main.fd6f85a1.js} +3 -3
  32. package/frontend/build/static/js/main.fd6f85a1.js.map +1 -0
  33. package/package.json +12 -11
  34. package/dist/plugins.d.ts.map +0 -1
  35. package/dist/plugins.js.map +0 -1
  36. package/frontend/build/static/js/main.2a46688a.js.map +0 -1
  37. /package/frontend/build/static/js/{main.2a46688a.js.LICENSE.txt → main.fd6f85a1.js.LICENSE.txt} +0 -0
@@ -70,11 +70,19 @@ export class MatterbridgePlatform {
70
70
  async onShutdown(reason) {
71
71
  this.log.debug("The plugin doesn't override onShutdown.", reason);
72
72
  }
73
+ /**
74
+ * Sets the logger level and logs a debug message indicating that the plugin doesn't override this method.
75
+ * @param {LogLevel} logLevel The new logger level.
76
+ */
77
+ async onChangeLoggerLevel(logLevel) {
78
+ this.log.debug(`The plugin doesn't override onChangeLoggerLevel. Logger level set to: ${logLevel}`);
79
+ }
73
80
  /**
74
81
  * Registers a device with the Matterbridge platform.
75
82
  * @param {MatterbridgeDevice} device - The device to register.
76
83
  */
77
84
  async registerDevice(device) {
85
+ device.plugin = this.name;
78
86
  await this.matterbridge.addBridgedDevice(this.name, device);
79
87
  }
80
88
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"matterbridgePlatform.js","sourceRoot":"","sources":["../src/matterbridgePlatform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAeH;;;GAGG;AACH,MAAM,OAAO,oBAAoB;IACxB,YAAY,CAAe;IAC3B,GAAG,CAAa;IAChB,MAAM,GAAmB,EAAE,CAAC;IAC5B,IAAI,GAAG,EAAE,CAAC,CAAC,uEAAuE;IAClF,IAAI,GAAG,EAAE,CAAC,CAAC,wCAAwC;IACnD,OAAO,GAAG,EAAE,CAAC,CAAC,uEAAuE;IAE5F;;;;;OAKG;IACH,YAAY,YAA0B,EAAE,GAAe,EAAE,MAAsB;QAC7E,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,MAAe;QAC3B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,MAAe;QAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yCAAyC,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,MAA0B;QAC7C,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAA0B;QAC/C,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;CACF"}
1
+ {"version":3,"file":"matterbridgePlatform.js","sourceRoot":"","sources":["../src/matterbridgePlatform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAeH;;;GAGG;AACH,MAAM,OAAO,oBAAoB;IACxB,YAAY,CAAe;IAC3B,GAAG,CAAa;IAChB,MAAM,GAAmB,EAAE,CAAC;IAC5B,IAAI,GAAG,EAAE,CAAC,CAAC,uEAAuE;IAClF,IAAI,GAAG,EAAE,CAAC,CAAC,wCAAwC;IACnD,OAAO,GAAG,EAAE,CAAC,CAAC,uEAAuE;IAE5F;;;;;OAKG;IACH,YAAY,YAA0B,EAAE,GAAe,EAAE,MAAsB;QAC7E,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,MAAe;QAC3B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,MAAe;QAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yCAAyC,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,mBAAmB,CAAC,QAAkB;QAC1C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yEAAyE,QAAQ,EAAE,CAAC,CAAC;IACtG,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,MAA0B;QAC7C,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1B,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAA0B;QAC/C,MAAM,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;CACF"}
@@ -1,3 +1,25 @@
1
+ /**
2
+ * This file contains the types for Matterbridge.
3
+ *
4
+ * @file matterbridgeTypes.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-07-12
7
+ * @version 1.0.1
8
+ *
9
+ * Copyright 2023, 2024, 2025 Luca Liguori.
10
+ *
11
+ * Licensed under the Apache License, Version 2.0 (the "License");
12
+ * you may not use this file except in compliance with the License.
13
+ * You may obtain a copy of the License at
14
+ *
15
+ * http://www.apache.org/licenses/LICENSE-2.0
16
+ *
17
+ * Unless required by applicable law or agreed to in writing, software
18
+ * distributed under the License is distributed on an "AS IS" BASIS,
19
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ * See the License for the specific language governing permissions and
21
+ * limitations under the License. *
22
+ */
1
23
  import { NodeStorage } from 'node-persist-manager';
2
24
  import { FabricIndex, NodeId, VendorId } from '@project-chip/matter-node.js/datatype';
3
25
  import { ExposedFabricInformation } from '@project-chip/matter-node.js/fabric';
@@ -6,6 +28,10 @@ import { MatterbridgeDevice } from './matterbridgeDevice.js';
6
28
  import { StorageContext } from '@project-chip/matter-node.js/storage';
7
29
  import { CommissioningServer } from '@project-chip/matter-node.js';
8
30
  import { Aggregator } from '@project-chip/matter-node.js/device';
31
+ import { LogLevel } from 'node-ansi-logger';
32
+ export declare const plg = "\u001B[38;5;33m";
33
+ export declare const dev = "\u001B[38;5;79m";
34
+ export declare const typ = "\u001B[38;5;207m";
9
35
  export interface RegisteredPlugin extends BaseRegisteredPlugin {
10
36
  nodeContext?: NodeStorage;
11
37
  storageContext?: StorageContext;
@@ -74,7 +100,8 @@ export interface MatterbridgeInformation {
74
100
  matterbridgeConnected: boolean;
75
101
  bridgeMode: string;
76
102
  restartMode: string;
77
- debugEnabled: boolean;
103
+ profile?: string;
104
+ loggerLevel: LogLevel;
78
105
  matterLoggerLevel: number;
79
106
  }
80
107
  export interface SanitizedExposedFabricInformation {
@@ -1 +1 @@
1
- {"version":3,"file":"matterbridgeTypes.d.ts","sourceRoot":"","sources":["../src/matterbridgeTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matterbridgeTypes.d.ts","sourceRoot":"","sources":["../src/matterbridgeTypes.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,27 @@
1
- export {};
1
+ /**
2
+ * This file contains the types for Matterbridge.
3
+ *
4
+ * @file matterbridgeTypes.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-07-12
7
+ * @version 1.0.1
8
+ *
9
+ * Copyright 2023, 2024, 2025 Luca Liguori.
10
+ *
11
+ * Licensed under the Apache License, Version 2.0 (the "License");
12
+ * you may not use this file except in compliance with the License.
13
+ * You may obtain a copy of the License at
14
+ *
15
+ * http://www.apache.org/licenses/LICENSE-2.0
16
+ *
17
+ * Unless required by applicable law or agreed to in writing, software
18
+ * distributed under the License is distributed on an "AS IS" BASIS,
19
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ * See the License for the specific language governing permissions and
21
+ * limitations under the License. *
22
+ */
23
+ // Default colors
24
+ export const plg = '\u001B[38;5;33m';
25
+ export const dev = '\u001B[38;5;79m';
26
+ export const typ = '\u001B[38;5;207m';
2
27
  //# sourceMappingURL=matterbridgeTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"matterbridgeTypes.js","sourceRoot":"","sources":["../src/matterbridgeTypes.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"matterbridgeTypes.js","sourceRoot":"","sources":["../src/matterbridgeTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAYH,iBAAiB;AACjB,MAAM,CAAC,MAAM,GAAG,GAAG,iBAAiB,CAAC;AACrC,MAAM,CAAC,MAAM,GAAG,GAAG,iBAAiB,CAAC;AACrC,MAAM,CAAC,MAAM,GAAG,GAAG,kBAAkB,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * @file plugins.ts
5
5
  * @author Luca Liguori
6
6
  * @date 2024-07-14
7
- * @version 1.2.8
7
+ * @version 1.0.8
8
8
  *
9
9
  * Copyright 2024 Luca Liguori.
10
10
  *
@@ -20,10 +20,11 @@
20
20
  * See the License for the specific language governing permissions and
21
21
  * limitations under the License. *
22
22
  */
23
+ import { LogLevel } from 'node-ansi-logger';
23
24
  import { Matterbridge } from './matterbridge.js';
24
25
  import { RegisteredPlugin } from './matterbridgeTypes.js';
25
26
  import { MatterbridgePlatform, PlatformConfig, PlatformSchema } from './matterbridgePlatform.js';
26
- export declare class Plugins {
27
+ export declare class PluginManager {
27
28
  private _plugins;
28
29
  private nodeContext;
29
30
  private matterbridge;
@@ -38,6 +39,8 @@ export declare class Plugins {
38
39
  array(): RegisteredPlugin[];
39
40
  [Symbol.iterator](): IterableIterator<RegisteredPlugin>;
40
41
  forEach(callback: (plugin: RegisteredPlugin) => Promise<void>): Promise<void>;
42
+ get logLevel(): LogLevel;
43
+ set logLevel(logLevel: LogLevel);
41
44
  loadFromStorage(): Promise<RegisteredPlugin[]>;
42
45
  saveToStorage(): Promise<number>;
43
46
  /**
@@ -99,4 +102,4 @@ export declare class Plugins {
99
102
  loadSchema(plugin: RegisteredPlugin): Promise<PlatformSchema>;
100
103
  getDefaultSchema(plugin: RegisteredPlugin): PlatformSchema;
101
104
  }
102
- //# sourceMappingURL=plugins.d.ts.map
105
+ //# sourceMappingURL=pluginManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pluginManager.d.ts","sourceRoot":"","sources":["../src/pluginManager.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * @file plugins.ts
5
5
  * @author Luca Liguori
6
6
  * @date 2024-07-14
7
- * @version 1.2.8
7
+ * @version 1.0.8
8
8
  *
9
9
  * Copyright 2024 Luca Liguori.
10
10
  *
@@ -21,17 +21,14 @@
21
21
  * limitations under the License. *
22
22
  */
23
23
  /* eslint-disable @typescript-eslint/no-unused-vars */
24
- import { AnsiLogger, BLUE, db, er, nf, rs, UNDERLINE, UNDERLINEOFF, wr } from 'node-ansi-logger';
24
+ import { AnsiLogger, BLUE, db, er, nf, nt, rs, UNDERLINE, UNDERLINEOFF, wr } from 'node-ansi-logger';
25
+ import { plg, typ } from './matterbridgeTypes.js';
25
26
  import path from 'path';
26
27
  import { promises as fs } from 'fs';
27
28
  import { pathToFileURL } from 'url';
28
29
  import { exec } from 'child_process';
29
30
  import { shelly_config, somfytahoma_config, zigbee2mqtt_config } from './defaultConfigSchema.js';
30
- // Default colors
31
- const plg = '\u001B[38;5;33m';
32
- const dev = '\u001B[38;5;79m';
33
- const typ = '\u001B[38;5;207m';
34
- export class Plugins {
31
+ export class PluginManager {
35
32
  _plugins = new Map();
36
33
  nodeContext;
37
34
  matterbridge;
@@ -40,7 +37,7 @@ export class Plugins {
40
37
  this.matterbridge = matterbridge;
41
38
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
42
39
  this.nodeContext = matterbridge.nodeContext;
43
- this.log = new AnsiLogger({ logName: 'MatterbridgePluginsManager', logTimestampFormat: 4 /* TimestampFormat.TIME_MILLIS */, logDebug: matterbridge.debugEnabled });
40
+ this.log = new AnsiLogger({ logName: 'PluginManager', logTimestampFormat: 4 /* TimestampFormat.TIME_MILLIS */, logLevel: matterbridge.log.logLevel });
44
41
  this.log.debug('Matterbridge plugin manager starting...');
45
42
  }
46
43
  get length() {
@@ -70,10 +67,22 @@ export class Plugins {
70
67
  }
71
68
  async forEach(callback) {
72
69
  const tasks = Array.from(this._plugins.values()).map(async (plugin) => {
73
- await callback(plugin);
70
+ try {
71
+ await callback(plugin);
72
+ }
73
+ catch (error) {
74
+ this.log.error(`Error processing forEach plugin ${plg}${plugin.name}${er}:`, error);
75
+ // throw error;
76
+ }
74
77
  });
75
78
  await Promise.all(tasks);
76
79
  }
80
+ get logLevel() {
81
+ return this.log.logLevel;
82
+ }
83
+ set logLevel(logLevel) {
84
+ this.log.logLevel = logLevel;
85
+ }
77
86
  async loadFromStorage() {
78
87
  // Load the array from storage and convert it to a map
79
88
  const pluginsArray = await this.nodeContext.get('plugins', []);
@@ -372,7 +381,7 @@ export class Plugins {
372
381
  // Call the default export function of the plugin, passing this MatterBridge instance, the log and the config
373
382
  if (pluginInstance.default) {
374
383
  const config = await this.loadConfig(plugin);
375
- const log = new AnsiLogger({ logName: plugin.description ?? 'No description', logTimestampFormat: 4 /* TimestampFormat.TIME_MILLIS */, logDebug: config.debug ?? false });
384
+ const log = new AnsiLogger({ logName: plugin.description ?? 'No description', logTimestampFormat: 4 /* TimestampFormat.TIME_MILLIS */, logLevel: config.debug ? "debug" /* LogLevel.DEBUG */ : this.matterbridge.log.logLevel });
376
385
  const platform = pluginInstance.default(this.matterbridge, log, config);
377
386
  config.type = platform.type;
378
387
  platform.name = packageJson.name;
@@ -389,7 +398,7 @@ export class Plugins {
389
398
  plugin.addedDevices = 0;
390
399
  plugin.configJson = config;
391
400
  plugin.schemaJson = await this.loadSchema(plugin);
392
- this.log.info(`Loaded plugin ${plg}${plugin.name}${nf} type ${typ}${platform.type}${db} (entrypoint ${UNDERLINE}${pluginEntry}${UNDERLINEOFF})`);
401
+ this.log.notice(`Loaded plugin ${plg}${plugin.name}${nf} type ${typ}${platform.type}${db} (entrypoint ${UNDERLINE}${pluginEntry}${UNDERLINEOFF})`);
393
402
  if (start)
394
403
  await this.start(plugin, message, false);
395
404
  if (configure)
@@ -428,10 +437,10 @@ export class Plugins {
428
437
  this.log.error(`Plugin ${plg}${plugin.name}${er} already started`);
429
438
  return undefined;
430
439
  }
431
- this.log.info(`Starting plugin ${plg}${plugin.name}${db} type ${typ}${plugin.type}${db}`);
440
+ this.log.info(`Starting plugin ${plg}${plugin.name}${nf} type ${typ}${plugin.type}${nf}`);
432
441
  try {
433
442
  await plugin.platform.onStart(message);
434
- this.log.info(`Started plugin ${plg}${plugin.name}${db} type ${typ}${plugin.type}${db}`);
443
+ this.log.notice(`Started plugin ${plg}${plugin.name}${nt} type ${typ}${plugin.type}${nt}`);
435
444
  plugin.started = true;
436
445
  if (configure)
437
446
  await this.configure(plugin);
@@ -469,7 +478,7 @@ export class Plugins {
469
478
  this.log.info(`Configuring plugin ${plg}${plugin.name}${nf} type ${typ}${plugin.type}${nf}`);
470
479
  try {
471
480
  await plugin.platform.onConfigure();
472
- this.log.info(`Configured plugin ${plg}${plugin.name}${nf} type ${typ}${plugin.type}${nf}`);
481
+ this.log.notice(`Configured plugin ${plg}${plugin.name}${nt} type ${typ}${plugin.type}${nt}`);
473
482
  plugin.configured = true;
474
483
  await this.saveConfigFromPlugin(plugin);
475
484
  return plugin;
@@ -515,7 +524,7 @@ export class Plugins {
515
524
  }
516
525
  plugin.registeredDevices = undefined;
517
526
  plugin.addedDevices = undefined;
518
- this.log.info(`Shutdown of plugin ${plg}${plugin.name}${nf} completed`);
527
+ this.log.notice(`Shutdown of plugin ${plg}${plugin.name}${nt} completed`);
519
528
  return plugin;
520
529
  }
521
530
  catch (err) {
@@ -592,6 +601,7 @@ export class Plugins {
592
601
  await fs.writeFile(configFile, JSON.stringify(plugin.platform.config, null, 2), 'utf8');
593
602
  this.log.debug(`Saved config file ${configFile} for plugin ${plg}${plugin.name}${db}`);
594
603
  // this.log.debug(`Saved config file ${configFile} for plugin ${plg}${plugin.name}${db}.\nConfig:${rs}\n`, plugin.platform.config);
604
+ return Promise.resolve();
595
605
  }
596
606
  catch (err) {
597
607
  this.log.error(`Error saving config file ${configFile} for plugin ${plg}${plugin.name}${er}: ${err}`);
@@ -671,4 +681,4 @@ export class Plugins {
671
681
  };
672
682
  }
673
683
  }
674
- //# sourceMappingURL=plugins.js.map
684
+ //# sourceMappingURL=pluginManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pluginManager.js","sourceRoot":"","sources":["../src/pluginManager.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "files": {
3
- "main.css": "/static/css/main.df840158.css",
4
- "main.js": "/static/js/main.2a46688a.js",
3
+ "main.css": "/static/css/main.5174e68c.css",
4
+ "main.js": "/static/js/main.fd6f85a1.js",
5
5
  "static/js/453.d855a71b.chunk.js": "/static/js/453.d855a71b.chunk.js",
6
6
  "index.html": "/index.html",
7
- "main.df840158.css.map": "/static/css/main.df840158.css.map",
8
- "main.2a46688a.js.map": "/static/js/main.2a46688a.js.map",
7
+ "main.5174e68c.css.map": "/static/css/main.5174e68c.css.map",
8
+ "main.fd6f85a1.js.map": "/static/js/main.fd6f85a1.js.map",
9
9
  "453.d855a71b.chunk.js.map": "/static/js/453.d855a71b.chunk.js.map"
10
10
  },
11
11
  "entrypoints": [
12
- "static/css/main.df840158.css",
13
- "static/js/main.2a46688a.js"
12
+ "static/css/main.5174e68c.css",
13
+ "static/js/main.fd6f85a1.js"
14
14
  ]
15
15
  }
@@ -1 +1 @@
1
- <!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/matterbridge 32x32.png"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><title>Matterbridge</title><link rel="manifest" href="/manifest.json"/><script defer="defer" src="/static/js/main.2a46688a.js"></script><link href="/static/css/main.df840158.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
1
+ <!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/matterbridge 32x32.png"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><title>Matterbridge</title><link rel="manifest" href="/manifest.json"/><script defer="defer" src="/static/js/main.fd6f85a1.js"></script><link href="/static/css/main.5174e68c.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
@@ -1,2 +1,2 @@
1
- body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.tooltip-container{display:inline-block;position:relative}.tooltip-text{background-color:#555;border-radius:6px;bottom:calc(100% + 10px);color:#fff;font-size:12px;left:50%;margin-left:-60px;opacity:0;padding:5px;position:absolute;text-align:center;transition:opacity .3s;visibility:hidden;z-index:1}.tooltip-container:hover{cursor:pointer}.tooltip-container:hover .tooltip-text{opacity:1;visibility:visible}.status-enabled{background-color:green}.status-disabled,.status-enabled{border-radius:.25rem;box-shadow:2px 2px 2px #0003;color:#fff;cursor:pointer;font-size:12px;padding:.2rem;text-align:center}.status-disabled{background-color:red}.status-information{background-color:#9e9e9e;color:#fff}.status-information,.status-warning{border-radius:.25rem;box-shadow:2px 2px 2px #0003;cursor:pointer;font-size:12px;padding:2px 10px;text-align:center}.status-warning{background-color:#e9db18;color:#000}.status-sponsor{background-color:#b6409c;padding:2px 10px}.status-blue,.status-sponsor{border-radius:.25rem;box-shadow:2px 2px 2px #0003;color:#fff;cursor:pointer;font-size:12px;text-align:center}.status-blue{background-color:#5f8c9e;padding:.2rem}.PluginsIconButton{color:#000;gap:0;padding:0}.HeaderButton{color:#4caf50}.main-background{background-color:#c4c2c2}.header{gap:20px;height:40px;justify-content:flex-start;margin:0;padding:0}.header,nav{align-items:center;display:flex}.nav-link{color:#333;font-size:20px;margin:0 10px;text-decoration:none;transition:color .3s ease}.nav-link:hover{color:#007bff}.nav-link:hodddver{color:#5c0e91}table{border-collapse:collapse;width:100%}thead{border:1px solid #ddd;position:-webkit-sticky;position:sticky;top:0;z-index:auto}thead th{background:#4caf50;color:#fff}tbody td,thead th{border:1px solid #ddd;padding:5px 10px;text-align:left}tbody td{font-size:14px;margin:0}.table-content-even{background-color:#bdbdbd}.table-content-odd{background-color:#9e9e9e}.table-content-selected{background-color:#5f8c9e}h3{margin:0}.MbfPageDiv{gap:20px;height:calc(100% - 60px);margin:0;padding:0;width:100%}.MbfPageDiv,.MbfWindowDiv{display:flex;flex-direction:column}.MbfWindowDiv{background-color:#9e9e9e;border:1px solid #ddd;box-shadow:5px 5px 10px #888;box-sizing:border-box}.MbfWindowDivTable{display:flex;display:block;flex:1 1 auto;flex-direction:column;gap:0;margin:-1px;overflow:auto;padding:0}.MbfWindowHeader{background-color:#4caf50;border-bottom:1px solid #ddd;box-sizing:border-box;padding:0;width:100%}.MbfWindowFooter,.MbfWindowHeader{align-items:center;display:"flex";margin:0}.MbfWindowFooter{color:#000;height:40px;justify-content:center;padding:0 10px 10px}.MbfWindowHeaderText{color:#fff;font-weight:700;margin:0;padding:5px 10px}.MbfWindowBodyColumn{flex:1 1 auto;flex-direction:column;padding:10px 0;width:100%}.MbfWindowBodyColumn,.MbfWindowBodyRow{display:flex;gap:0;margin:0;overflow:auto}.MbfWindowBodyRow{flex:1 1 auto;flex-direction:row;height:100%;padding:0}.MbfScreen{background-color:#c4c2c2;display:flex;flex-direction:column;gap:20px;height:calc(100vh - 40px);margin:0;padding:20px;width:calc(100vw - 40px)}@media (max-width:1600px){.MbfScreen{height:800px;width:1600px}}
2
- /*# sourceMappingURL=main.df840158.css.map*/
1
+ body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.tooltip-container{display:inline-block;position:relative}.tooltip-text{background-color:#555;border-radius:6px;bottom:calc(100% + 10px);color:#fff;font-size:12px;left:50%;margin-left:-60px;opacity:0;padding:5px;position:absolute;text-align:center;transition:opacity .3s;visibility:hidden;z-index:1}.tooltip-container:hover{cursor:pointer}.tooltip-container:hover .tooltip-text{opacity:1;visibility:visible}.status-enabled{background-color:green}.status-disabled,.status-enabled{border-radius:.25rem;box-shadow:2px 2px 2px #0003;color:#fff;cursor:pointer;font-size:12px;padding:.2rem;text-align:center}.status-disabled{background-color:red}.status-information{background-color:#9e9e9e;color:#fff}.status-information,.status-warning{border-radius:.25rem;box-shadow:2px 2px 2px #0003;cursor:pointer;font-size:12px;padding:2px 10px;text-align:center}.status-warning{background-color:#e9db18;color:#000}.status-sponsor{background-color:#b6409c;padding:2px 10px}.status-blue,.status-sponsor{border-radius:.25rem;box-shadow:2px 2px 2px #0003;color:#fff;cursor:pointer;font-size:12px;text-align:center}.status-blue{background-color:#5f8c9e;padding:.2rem}.PluginsIconButton{color:#000;gap:0;padding:0}.HeaderButton{color:#4caf50}.main-background{background-color:#c4c2c2}.header{gap:20px;height:40px;justify-content:flex-start;margin:0;padding:0}.header,nav{align-items:center;display:flex}.nav-link{color:#333;font-size:20px;margin:0 10px;text-decoration:none;transition:color .3s ease}.nav-link:hover{color:#007bff}.nav-link:hodddver{color:red}table{border-collapse:collapse;width:100%}thead{border:1px solid #ddd;position:-webkit-sticky;position:sticky;top:0;z-index:auto}thead th{background:#4caf50;color:#fff}tbody td,thead th{border:1px solid #ddd;padding:5px 10px;text-align:left}tbody td{font-size:14px;margin:0}.table-content-even{background-color:#bdbdbd}.table-content-odd{background-color:#9e9e9e}.table-content-selected{background-color:#5f8c9e}h3{margin:0}.MbfPageDiv{gap:20px;height:calc(100% - 60px);margin:0;padding:0;width:100%}.MbfPageDiv,.MbfWindowDiv{display:flex;flex-direction:column}.MbfWindowDiv{background-color:#9e9e9e;border:1px solid #ddd;box-shadow:5px 5px 10px #888;box-sizing:border-box}.MbfWindowDivTable{display:flex;display:block;flex:1 1 auto;flex-direction:column;gap:0;margin:-1px;overflow:auto;padding:0}.MbfWindowHeader{background-color:#4caf50;border-bottom:1px solid #ddd;box-sizing:border-box;padding:0;width:100%}.MbfWindowFooter,.MbfWindowHeader{align-items:center;display:"flex";margin:0}.MbfWindowFooter{color:#000;height:40px;justify-content:center;padding:0 10px 10px}.MbfWindowHeaderText{color:#fff;font-weight:700;margin:0;padding:5px 10px}.MbfWindowBodyColumn{flex:1 1 auto;flex-direction:column;padding:10px 0;width:100%}.MbfWindowBodyColumn,.MbfWindowBodyRow{display:flex;gap:0;margin:0;overflow:auto}.MbfWindowBodyRow{flex:1 1 auto;flex-direction:row;height:100%;padding:0}.MbfScreen{background-color:#c4c2c2;display:flex;flex-direction:column;gap:20px;height:calc(100vh - 40px);margin:0;padding:20px;width:calc(100vw - 40px)}@media (max-width:1600px){.MbfScreen{height:800px;width:1600px}}
2
+ /*# sourceMappingURL=main.5174e68c.css.map*/
@@ -1 +1 @@
1
- {"version":3,"file":"static/css/main.df840158.css","mappings":"AAAA,KAKE,kCAAmC,CACnC,iCAAkC,CAJlC,mIAEY,CAHZ,QAMF,CAEA,KACE,uEAEF,CCTA,mBAEE,oBAAqB,CADrB,iBAEF,CAKA,cAEE,qBAAsB,CAItB,iBAAkB,CAIlB,wBAAyB,CAPzB,UAAW,CAaX,cAAe,CALf,QAAS,CACT,iBAAkB,CAElB,SAAU,CATV,WAAgB,CAGhB,iBAAkB,CAJlB,iBAAkB,CAWlB,sBAAwB,CAdxB,iBAAkB,CAQlB,SAQF,CAEA,yBACE,cACF,CAEA,uCAEE,SAAU,CADV,kBAEF,CAGA,gBACE,sBAQF,CAEA,iCAPE,oBAAsB,CAItB,4BAA0C,CAN1C,UAAY,CAKZ,cAAe,CADf,cAAe,CAHf,aAAe,CAEf,iBAeF,CATA,iBACE,oBAQF,CAEA,oBACE,wBAAyB,CACzB,UAUF,CAEA,oCAPE,oBAAsB,CAItB,4BAA0C,CAD1C,cAAe,CADf,cAAe,CAHf,gBAAgB,CAEhB,iBAkBF,CAZA,gBACE,wBAAyB,CACzB,UAUF,CAEA,gBACE,wBAAyB,CAKzB,gBAMF,CAEA,6BAPE,oBAAsB,CAItB,4BAA0C,CAT1C,UAAY,CAQZ,cAAe,CADf,cAAe,CADf,iBAeF,CATA,aACE,wBAAyB,CAEzB,aAMF,CAIA,mBACE,UAAc,CAEd,KAAM,CADN,SAEF,CAEA,cACE,aACF,CAGA,iBACE,wBACF,CAGA,QAIE,QAAS,CAGT,WAAY,CAJZ,0BAA2B,CAE3B,QAAS,CACT,SAEF,CAGA,YATE,kBAAmB,CADnB,YAaF,CAGA,UAIE,UAAW,CAFX,cAAe,CADf,aAAc,CAEd,oBAAqB,CAErB,yBACF,CAEA,gBACE,aACF,CAEA,mBACE,aACF,CAGA,MACE,wBAAyB,CACzB,UACF,CAEA,MAGE,qBAAsB,CAFtB,uBAAgB,CAAhB,eAAgB,CAChB,KAAM,CAEN,YACF,CAEA,SAME,kBAAmB,CADnB,UAGF,CAEA,kBATE,qBAAsB,CAGtB,gBAAkB,CAGlB,eAWF,CARA,SAOE,cAAe,CALf,QAMF,CAEA,oBACE,wBACF,CAEA,mBACE,wBACF,CAEA,wBACE,wBACF,CAEA,GACE,QACF,CAeA,YAOE,QAAS,CAJT,wBAAyB,CAEzB,QAAW,CACX,SAAY,CAFZ,UAIF,CAGA,0BAVE,YAAa,CACb,qBAgBF,CAPA,cAME,wBAAyB,CAFzB,qBAAsB,CADtB,4BAA6B,CAE7B,qBAEF,CAGA,mBACE,YAAa,CAOb,aAAc,CALd,aAAc,CADd,qBAAsB,CAItB,KAAM,CAFN,WAAY,CAGZ,aAAc,CAFd,SAIF,CAGA,iBAKE,wBAAyB,CADzB,4BAA6B,CAI7B,qBAAsB,CADtB,SAAY,CAJZ,UAMF,CAGA,kCAVE,kBAAmB,CADnB,cAAe,CAKf,QAeF,CATA,iBAKE,UAAY,CADZ,WAAY,CADZ,sBAAuB,CAKvB,mBACF,CAGA,qBACE,UAAY,CACZ,eAAiB,CACjB,QAAW,CAGX,gBACF,CAGA,qBAGE,aAAc,CADd,qBAAsB,CAItB,cAA0B,CAF1B,UAKF,CAGA,uCAXE,YAAa,CAMb,KAAQ,CAFR,QAAW,CAGX,aAcF,CAVA,kBAGE,aAAc,CADd,kBAAmB,CAEnB,WAAY,CAGZ,SAGF,CAGA,WAQE,wBAAyB,CAPzB,YAAa,CACb,qBAAsB,CAGtB,QAAS,CADT,yBAA0B,CAE1B,QAAS,CACT,YAAa,CAJb,wBAMF,CAGA,0BACE,WAEE,YAAa,CADb,YAEF,CACF","sources":["index.css","App.css"],"sourcesContent":["body {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n","/* App.css */\r\n\r\n/* Tooltip style */\r\n.tooltip-container {\r\n position: relative;\r\n display: inline-block;\r\n}\r\n\r\n/*\r\nwidth: 120px;\r\n*/\r\n.tooltip-text {\r\n visibility: hidden;\r\n background-color: #555;\r\n color: #fff;\r\n text-align: center;\r\n padding: 5px 5px;\r\n border-radius: 6px;\r\n\r\n position: absolute;\r\n z-index: 1;\r\n bottom: calc(100% + 10px);\r\n left: 50%;\r\n margin-left: -60px;\r\n\r\n opacity: 0;\r\n transition: opacity 0.3s;\r\n font-size: 12px;\r\n}\r\n\r\n.tooltip-container:hover {\r\n cursor: pointer;\r\n}\r\n\r\n.tooltip-container:hover .tooltip-text {\r\n visibility: visible;\r\n opacity: 1;\r\n}\r\n\r\n/* StatusIndicator style */\r\n.status-enabled {\r\n background-color: green;\r\n color: white;\r\n padding: 0.2rem;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-disabled {\r\n background-color: red;\r\n color: white;\r\n padding: 0.2rem;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-information {\r\n background-color: #9e9e9e;\r\n color: white;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n padding-bottom: 2px;\r\n padding-top: 2px;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-warning {\r\n background-color: #e9db18;\r\n color: black;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n padding-bottom: 2px;\r\n padding-top: 2px;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-sponsor {\r\n background-color: #b6409c;\r\n color: white;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n padding-bottom: 2px;\r\n padding-top: 2px;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-blue {\r\n background-color: #5f8c9e;\r\n color: white;\r\n padding: 0.2rem;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n/* Home page style */\r\n\r\n.PluginsIconButton {\r\n color: #000000;\r\n padding: 0;\r\n gap: 0;\r\n}\r\n\r\n.HeaderButton {\r\n color: #4CAF50;\r\n}\r\n\r\n/* Table header style */\r\n.main-background {\r\n background-color: #c4c2c2;\r\n}\r\n\r\n/* Header style */\r\n.header {\r\n display: flex;\r\n align-items: center;\r\n justify-content: flex-start;\r\n gap: 20px;\r\n margin: 0;\r\n padding: 0;\r\n height: 40px;\r\n}\r\n\r\n/* Navigation style */\r\nnav {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n/* Navigation in Header.js style */\r\n.nav-link {\r\n margin: 0 10px;\r\n font-size: 20px;\r\n text-decoration: none;\r\n color: #333;\r\n transition: color 0.3s ease;\r\n}\r\n\r\n.nav-link:hover {\r\n color: #007BFF;\r\n}\r\n\r\n.nav-link:hodddver {\r\n color: #5c0e91;\r\n}\r\n\r\n/* Table style */\r\ntable {\r\n border-collapse: collapse;\r\n width: 100%;\r\n}\r\n\r\nthead {\r\n position: sticky;\r\n top: 0;\r\n border: 1px solid #ddd;\r\n z-index: auto;\r\n}\r\n\r\nthead th {\r\n border: 1px solid #ddd;\r\n padding: 5px;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n color: white;\r\n background: #4CAF50;\r\n text-align: left;\r\n}\r\n\r\ntbody td {\r\n border: 1px solid #ddd;\r\n margin: 0;\r\n padding: 5px;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n text-align: left;\r\n font-size: 14px;\r\n}\r\n\r\n.table-content-even {\r\n background-color: #bdbdbd;\r\n}\r\n\r\n.table-content-odd {\r\n background-color: #9e9e9e;\r\n}\r\n\r\n.table-content-selected {\r\n background-color: #5f8c9e;\r\n}\r\n\r\nh3 {\r\n margin: 0;\r\n}\r\n\r\n/* Mbf table content style \r\n.MbfWindowDiv table,\r\n.MbfWindowDiv table thead,\r\n.MbfWindowDiv table tbody,\r\n.MbfWindowDiv table tr,\r\n.MbfWindowDiv table th,\r\n.MbfWindowDiv table td {\r\n border: none;\r\n box-shadow: none;\r\n}\r\n*/\r\n\r\n/* Define the style for the main page element */\r\n.MbfPageDiv {\r\n display: flex;\r\n flex-direction: column;\r\n height: calc(100% - 60px);\r\n width: 100%;\r\n margin: 0px;\r\n padding: 0px;\r\n gap: 20px;\r\n}\r\n\r\n/* Define the style for the main div element */\r\n.MbfWindowDiv {\r\n display: flex;\r\n flex-direction: column;\r\n box-shadow: 5px 5px 10px #888;\r\n border: 1px solid #ddd;\r\n box-sizing: border-box;\r\n background-color: #9e9e9e;\r\n}\r\n\r\n/* Define the style for the main div element */\r\n.MbfWindowDivTable {\r\n display: flex;\r\n flex-direction: column;\r\n flex: 1 1 auto;\r\n margin: -1px;\r\n padding: 0;\r\n gap: 0;\r\n overflow: auto;\r\n display: block;\r\n}\r\n\r\n/* Define the style for the header element */\r\n.MbfWindowHeader {\r\n display: 'flex';\r\n align-items: center;\r\n width: 100%;\r\n border-bottom: 1px solid #ddd;\r\n background-color: #4CAF50;\r\n margin: 0px;\r\n padding: 0px;\r\n box-sizing: border-box;\r\n}\r\n\r\n/* Define the style for the header element */\r\n.MbfWindowFooter {\r\n display: 'flex';\r\n align-items: center;\r\n justify-content: center;\r\n height: 40px;\r\n color: black;\r\n margin: 0px;\r\n padding: 10px;\r\n padding-top: 0px;\r\n}\r\n\r\n/* Define the style for the header text element */\r\n.MbfWindowHeaderText {\r\n color: white;\r\n font-weight: bold;\r\n margin: 0px;\r\n padding: 5px;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n}\r\n\r\n/* Define the style for the body element width: 100%;*/\r\n.MbfWindowBodyColumn {\r\n display: flex;\r\n flex-direction: column;\r\n flex: 1 1 auto;\r\n width: 100%;\r\n margin: 0px;\r\n padding: 10px 0px 10px 0px;\r\n gap: 0px;\r\n overflow: auto;\r\n}\r\n\r\n/* Define the style for the body element */\r\n.MbfWindowBodyRow {\r\n display: flex;\r\n flex-direction: row;\r\n flex: 1 1 auto;\r\n height: 100%;\r\n padding: 0px 10px 0px 10px;\r\n margin: 0px;\r\n padding: 0px;\r\n gap: 0px;\r\n overflow: auto;\r\n}\r\n\r\n/* Table header style */\r\n.MbfScreen {\r\n display: flex;\r\n flex-direction: column;\r\n width: calc(100vw - 40px);\r\n height: calc(100vh - 40px);\r\n gap: 20px;\r\n margin: 0;\r\n padding: 20px;\r\n background-color: #c4c2c2;\r\n}\r\n\r\n/* Styles for mobile screens */\r\n@media (max-width: 1600px) {\r\n .MbfScreen {\r\n width: 1600px;\r\n height: 800px;\r\n }\r\n}"],"names":[],"sourceRoot":""}
1
+ {"version":3,"file":"static/css/main.5174e68c.css","mappings":"AAAA,KAKE,kCAAmC,CACnC,iCAAkC,CAJlC,mIAEY,CAHZ,QAMF,CAEA,KACE,uEAEF,CCTA,mBAEE,oBAAqB,CADrB,iBAEF,CAKA,cAEE,qBAAsB,CAItB,iBAAkB,CAIlB,wBAAyB,CAPzB,UAAW,CAaX,cAAe,CALf,QAAS,CACT,iBAAkB,CAElB,SAAU,CATV,WAAgB,CAGhB,iBAAkB,CAJlB,iBAAkB,CAWlB,sBAAwB,CAdxB,iBAAkB,CAQlB,SAQF,CAEA,yBACE,cACF,CAEA,uCAEE,SAAU,CADV,kBAEF,CAGA,gBACE,sBAQF,CAEA,iCAPE,oBAAsB,CAItB,4BAA0C,CAN1C,UAAY,CAKZ,cAAe,CADf,cAAe,CAHf,aAAe,CAEf,iBAeF,CATA,iBACE,oBAQF,CAEA,oBACE,wBAAyB,CACzB,UAUF,CAEA,oCAPE,oBAAsB,CAItB,4BAA0C,CAD1C,cAAe,CADf,cAAe,CAHf,gBAAgB,CAEhB,iBAkBF,CAZA,gBACE,wBAAyB,CACzB,UAUF,CAEA,gBACE,wBAAyB,CAKzB,gBAMF,CAEA,6BAPE,oBAAsB,CAItB,4BAA0C,CAT1C,UAAY,CAQZ,cAAe,CADf,cAAe,CADf,iBAeF,CATA,aACE,wBAAyB,CAEzB,aAMF,CAIA,mBACE,UAAc,CAEd,KAAM,CADN,SAEF,CAEA,cACE,aACF,CAGA,iBACE,wBACF,CAGA,QAIE,QAAS,CAGT,WAAY,CAJZ,0BAA2B,CAE3B,QAAS,CACT,SAEF,CAGA,YATE,kBAAmB,CADnB,YAaF,CAGA,UAIE,UAAW,CAFX,cAAe,CADf,aAAc,CAEd,oBAAqB,CAErB,yBACF,CAEA,gBACE,aACF,CAEA,mBACE,SACF,CAGA,MACE,wBAAyB,CACzB,UACF,CAEA,MAGE,qBAAsB,CAFtB,uBAAgB,CAAhB,eAAgB,CAChB,KAAM,CAEN,YACF,CAEA,SAME,kBAAmB,CADnB,UAGF,CAEA,kBATE,qBAAsB,CAGtB,gBAAkB,CAGlB,eAWF,CARA,SAOE,cAAe,CALf,QAMF,CAEA,oBACE,wBACF,CAEA,mBACE,wBACF,CAEA,wBACE,wBACF,CAEA,GACE,QACF,CAeA,YAOE,QAAS,CAJT,wBAAyB,CAEzB,QAAW,CACX,SAAY,CAFZ,UAIF,CAGA,0BAVE,YAAa,CACb,qBAgBF,CAPA,cAME,wBAAyB,CAFzB,qBAAsB,CADtB,4BAA6B,CAE7B,qBAEF,CAGA,mBACE,YAAa,CAOb,aAAc,CALd,aAAc,CADd,qBAAsB,CAItB,KAAM,CAFN,WAAY,CAGZ,aAAc,CAFd,SAIF,CAGA,iBAKE,wBAAyB,CADzB,4BAA6B,CAI7B,qBAAsB,CADtB,SAAY,CAJZ,UAMF,CAGA,kCAVE,kBAAmB,CADnB,cAAe,CAKf,QAeF,CATA,iBAKE,UAAY,CADZ,WAAY,CADZ,sBAAuB,CAKvB,mBACF,CAGA,qBACE,UAAY,CACZ,eAAiB,CACjB,QAAW,CAGX,gBACF,CAGA,qBAGE,aAAc,CADd,qBAAsB,CAItB,cAA0B,CAF1B,UAKF,CAGA,uCAXE,YAAa,CAMb,KAAQ,CAFR,QAAW,CAGX,aAcF,CAVA,kBAGE,aAAc,CADd,kBAAmB,CAEnB,WAAY,CAGZ,SAGF,CAGA,WAQE,wBAAyB,CAPzB,YAAa,CACb,qBAAsB,CAGtB,QAAS,CADT,yBAA0B,CAE1B,QAAS,CACT,YAAa,CAJb,wBAMF,CAGA,0BACE,WAEE,YAAa,CADb,YAEF,CACF","sources":["index.css","App.css"],"sourcesContent":["body {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n","/* App.css */\r\n\r\n/* Tooltip style */\r\n.tooltip-container {\r\n position: relative;\r\n display: inline-block;\r\n}\r\n\r\n/*\r\nwidth: 120px;\r\n*/\r\n.tooltip-text {\r\n visibility: hidden;\r\n background-color: #555;\r\n color: #fff;\r\n text-align: center;\r\n padding: 5px 5px;\r\n border-radius: 6px;\r\n\r\n position: absolute;\r\n z-index: 1;\r\n bottom: calc(100% + 10px);\r\n left: 50%;\r\n margin-left: -60px;\r\n\r\n opacity: 0;\r\n transition: opacity 0.3s;\r\n font-size: 12px;\r\n}\r\n\r\n.tooltip-container:hover {\r\n cursor: pointer;\r\n}\r\n\r\n.tooltip-container:hover .tooltip-text {\r\n visibility: visible;\r\n opacity: 1;\r\n}\r\n\r\n/* StatusIndicator style */\r\n.status-enabled {\r\n background-color: green;\r\n color: white;\r\n padding: 0.2rem;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-disabled {\r\n background-color: red;\r\n color: white;\r\n padding: 0.2rem;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-information {\r\n background-color: #9e9e9e;\r\n color: white;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n padding-bottom: 2px;\r\n padding-top: 2px;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-warning {\r\n background-color: #e9db18;\r\n color: black;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n padding-bottom: 2px;\r\n padding-top: 2px;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-sponsor {\r\n background-color: #b6409c;\r\n color: white;\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n padding-bottom: 2px;\r\n padding-top: 2px;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.status-blue {\r\n background-color: #5f8c9e;\r\n color: white;\r\n padding: 0.2rem;\r\n border-radius: 0.25rem;\r\n text-align: center;\r\n font-size: 12px;\r\n cursor: pointer;\r\n box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n/* Home page style */\r\n\r\n.PluginsIconButton {\r\n color: #000000;\r\n padding: 0;\r\n gap: 0;\r\n}\r\n\r\n.HeaderButton {\r\n color: #4CAF50;\r\n}\r\n\r\n/* Table header style */\r\n.main-background {\r\n background-color: #c4c2c2;\r\n}\r\n\r\n/* Header style */\r\n.header {\r\n display: flex;\r\n align-items: center;\r\n justify-content: flex-start;\r\n gap: 20px;\r\n margin: 0;\r\n padding: 0;\r\n height: 40px;\r\n}\r\n\r\n/* Navigation style */\r\nnav {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n/* Navigation in Header.js style */\r\n.nav-link {\r\n margin: 0 10px;\r\n font-size: 20px;\r\n text-decoration: none;\r\n color: #333;\r\n transition: color 0.3s ease;\r\n}\r\n\r\n.nav-link:hover {\r\n color: #007BFF;\r\n}\r\n\r\n.nav-link:hodddver {\r\n color: #ff0000;\r\n}\r\n\r\n/* Table style */\r\ntable {\r\n border-collapse: collapse;\r\n width: 100%;\r\n}\r\n\r\nthead {\r\n position: sticky;\r\n top: 0;\r\n border: 1px solid #ddd;\r\n z-index: auto;\r\n}\r\n\r\nthead th {\r\n border: 1px solid #ddd;\r\n padding: 5px;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n color: white;\r\n background: #4CAF50;\r\n text-align: left;\r\n}\r\n\r\ntbody td {\r\n border: 1px solid #ddd;\r\n margin: 0;\r\n padding: 5px;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n text-align: left;\r\n font-size: 14px;\r\n}\r\n\r\n.table-content-even {\r\n background-color: #bdbdbd;\r\n}\r\n\r\n.table-content-odd {\r\n background-color: #9e9e9e;\r\n}\r\n\r\n.table-content-selected {\r\n background-color: #5f8c9e;\r\n}\r\n\r\nh3 {\r\n margin: 0;\r\n}\r\n\r\n/* Mbf table content style \r\n.MbfWindowDiv table,\r\n.MbfWindowDiv table thead,\r\n.MbfWindowDiv table tbody,\r\n.MbfWindowDiv table tr,\r\n.MbfWindowDiv table th,\r\n.MbfWindowDiv table td {\r\n border: none;\r\n box-shadow: none;\r\n}\r\n*/\r\n\r\n/* Define the style for the main page element */\r\n.MbfPageDiv {\r\n display: flex;\r\n flex-direction: column;\r\n height: calc(100% - 60px);\r\n width: 100%;\r\n margin: 0px;\r\n padding: 0px;\r\n gap: 20px;\r\n}\r\n\r\n/* Define the style for the main div element */\r\n.MbfWindowDiv {\r\n display: flex;\r\n flex-direction: column;\r\n box-shadow: 5px 5px 10px #888;\r\n border: 1px solid #ddd;\r\n box-sizing: border-box;\r\n background-color: #9e9e9e;\r\n}\r\n\r\n/* Define the style for the main div element */\r\n.MbfWindowDivTable {\r\n display: flex;\r\n flex-direction: column;\r\n flex: 1 1 auto;\r\n margin: -1px;\r\n padding: 0;\r\n gap: 0;\r\n overflow: auto;\r\n display: block;\r\n}\r\n\r\n/* Define the style for the header element */\r\n.MbfWindowHeader {\r\n display: 'flex';\r\n align-items: center;\r\n width: 100%;\r\n border-bottom: 1px solid #ddd;\r\n background-color: #4CAF50;\r\n margin: 0px;\r\n padding: 0px;\r\n box-sizing: border-box;\r\n}\r\n\r\n/* Define the style for the header element */\r\n.MbfWindowFooter {\r\n display: 'flex';\r\n align-items: center;\r\n justify-content: center;\r\n height: 40px;\r\n color: black;\r\n margin: 0px;\r\n padding: 10px;\r\n padding-top: 0px;\r\n}\r\n\r\n/* Define the style for the header text element */\r\n.MbfWindowHeaderText {\r\n color: white;\r\n font-weight: bold;\r\n margin: 0px;\r\n padding: 5px;\r\n padding-right: 10px;\r\n padding-left: 10px;\r\n}\r\n\r\n/* Define the style for the body element width: 100%;*/\r\n.MbfWindowBodyColumn {\r\n display: flex;\r\n flex-direction: column;\r\n flex: 1 1 auto;\r\n width: 100%;\r\n margin: 0px;\r\n padding: 10px 0px 10px 0px;\r\n gap: 0px;\r\n overflow: auto;\r\n}\r\n\r\n/* Define the style for the body element */\r\n.MbfWindowBodyRow {\r\n display: flex;\r\n flex-direction: row;\r\n flex: 1 1 auto;\r\n height: 100%;\r\n padding: 0px 10px 0px 10px;\r\n margin: 0px;\r\n padding: 0px;\r\n gap: 0px;\r\n overflow: auto;\r\n}\r\n\r\n/* Table header style */\r\n.MbfScreen {\r\n display: flex;\r\n flex-direction: column;\r\n width: calc(100vw - 40px);\r\n height: calc(100vh - 40px);\r\n gap: 20px;\r\n margin: 0;\r\n padding: 20px;\r\n background-color: #c4c2c2;\r\n}\r\n\r\n/* Styles for mobile screens */\r\n@media (max-width: 1600px) {\r\n .MbfScreen {\r\n width: 1600px;\r\n height: 800px;\r\n }\r\n}"],"names":[],"sourceRoot":""}