@weaverse/hydrogen 5.9.2 → 5.9.4

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/dist/index.d.mts CHANGED
@@ -22,7 +22,7 @@ declare class ThemeSettingsStore {
22
22
  schema?: HydrogenThemeSchema;
23
23
  publicEnv?: PublicEnv;
24
24
  private listeners;
25
- private readonly MAX_LISTENERS;
25
+ private hasWarnedListenerCount;
26
26
  private isDestroyed;
27
27
  constructor(data: WeaverseThemeData);
28
28
  updateThemeSettings: (newSettings: HydrogenThemeSettings) => void;
package/dist/index.d.ts CHANGED
@@ -22,7 +22,7 @@ declare class ThemeSettingsStore {
22
22
  schema?: HydrogenThemeSchema;
23
23
  publicEnv?: PublicEnv;
24
24
  private listeners;
25
- private readonly MAX_LISTENERS;
25
+ private hasWarnedListenerCount;
26
26
  private isDestroyed;
27
27
  constructor(data: WeaverseThemeData);
28
28
  updateThemeSettings: (newSettings: HydrogenThemeSettings) => void;
package/dist/index.js CHANGED
@@ -297,7 +297,7 @@ var ThemeSettingsStore = class {
297
297
  schema;
298
298
  publicEnv;
299
299
  listeners = /* @__PURE__ */ new Set();
300
- MAX_LISTENERS = 100;
300
+ hasWarnedListenerCount = false;
301
301
  isDestroyed = false;
302
302
  constructor(data) {
303
303
  const { theme, schema: schema2, publicEnv } = data || {};
@@ -327,14 +327,13 @@ var ThemeSettingsStore = class {
327
327
  return () => {
328
328
  };
329
329
  }
330
- if (this.listeners.size >= this.MAX_LISTENERS) {
330
+ this.listeners.add(callback);
331
+ if (!this.hasWarnedListenerCount && this.listeners.size > 500) {
332
+ this.hasWarnedListenerCount = true;
331
333
  console.warn(
332
- `ThemeSettingsStore: Maximum listeners (${this.MAX_LISTENERS}) exceeded. Possible memory leak detected.`
334
+ `ThemeSettingsStore: ${this.listeners.size} listeners detected. This may indicate a performance issue. Consider using fewer useThemeSettings() calls.`
333
335
  );
334
- return () => {
335
- };
336
336
  }
337
- this.listeners.add(callback);
338
337
  return () => {
339
338
  this.listeners.delete(callback);
340
339
  };