@futdevpro/fsm-dynamo 1.16.34 → 1.16.36

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 (22) hide show
  1. package/build/_models/control-models/data-model-params.control-model.d.ts +7 -0
  2. package/build/_models/control-models/data-model-params.control-model.d.ts.map +1 -1
  3. package/build/_models/control-models/data-model-params.control-model.js +9 -0
  4. package/build/_models/control-models/data-model-params.control-model.js.map +1 -1
  5. package/build/_modules/game/_models/audio-mixer-config.interface.d.ts +7 -0
  6. package/build/_modules/game/_models/audio-mixer-config.interface.d.ts.map +1 -1
  7. package/build/_modules/game/_models/audio-mixer-settings.interface.d.ts +9 -0
  8. package/build/_modules/game/_models/audio-mixer-settings.interface.d.ts.map +1 -1
  9. package/build/_modules/game/_models/audio-mixer-state.interface.d.ts +12 -0
  10. package/build/_modules/game/_models/audio-mixer-state.interface.d.ts.map +1 -1
  11. package/build/_modules/game/_models/audio-mixer.control-model.d.ts +7 -0
  12. package/build/_modules/game/_models/audio-mixer.control-model.d.ts.map +1 -1
  13. package/build/_modules/game/_models/audio-mixer.control-model.js +32 -2
  14. package/build/_modules/game/_models/audio-mixer.control-model.js.map +1 -1
  15. package/package.json +1 -1
  16. package/src/_models/control-models/data-model-params.control-model.spec.ts +23 -0
  17. package/src/_models/control-models/data-model-params.control-model.ts +12 -2
  18. package/src/_modules/game/_models/audio-mixer-config.interface.ts +8 -0
  19. package/src/_modules/game/_models/audio-mixer-settings.interface.ts +10 -0
  20. package/src/_modules/game/_models/audio-mixer-state.interface.ts +13 -0
  21. package/src/_modules/game/_models/audio-mixer.control-model.spec.ts +70 -0
  22. package/src/_modules/game/_models/audio-mixer.control-model.ts +43 -2
@@ -71,6 +71,13 @@ export declare class DyFM_DataModel_Params<T extends DyFM_Metadata> extends DyFM
71
71
  readonly stackLocation?: string;
72
72
  constructor(set: DyFM_DataModel_Settings<T>);
73
73
  constructed?(): boolean;
74
+ /**
75
+ * BFR-ORGANIZER-001/002 kísérő (generikus): egy property deklarált default-értéke
76
+ * (`properties[key].default`) — hogy a defaultok EGYETLEN forrásból (a dataParams-ból)
77
+ * jöjjenek a fogyasztó create-útjain is (pl. `params.priority ?? dataParams.getDefaultValue('priority')`),
78
+ * ne duplikálódjanak literálként a service-kódban. `undefined`, ha nincs deklarált default.
79
+ */
80
+ getDefaultValue?<K extends keyof T>(key: K): T[K] | undefined;
74
81
  setKeysForSubObjectParams?(property: DyFM_DataProperty_Params<any, T>): void;
75
82
  }
76
83
  //# sourceMappingURL=data-model-params.control-model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-model-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAGrG;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,sBAAsB;IACrC,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,CAAC,EAAE,sBAAsB,GAAG,MAAM,GAAG,SAAS,CAQtG;AAID,qBAAa,uBAAuB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,aAAa;IACjF;;OAEG;IACH,QAAQ,EAAG,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEhC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,sBAAsB,CAAC;IAEnC;;;OAGG;IACH,UAAU,EAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;CACrC;AAcD,qBAAa,qBAAqB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,uBAAuB,CAAC,CAAC,CAAC;IAG5F,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;gBAG9B,GAAG,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAiNjC,WAAW,CAAC,IAAI,OAAO;IAIvB,yBAAyB,CAAC,CAAC,QAAQ,EAAE,wBAAwB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI;CA0B7E"}
1
+ {"version":3,"file":"data-model-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAGrG;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,sBAAsB;IACrC,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,CAAC,EAAE,sBAAsB,GAAG,MAAM,GAAG,SAAS,CAQtG;AAID,qBAAa,uBAAuB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,aAAa;IACjF;;OAEG;IACH,QAAQ,EAAG,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEhC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,sBAAsB,CAAC;IAEnC;;;OAGG;IACH,UAAU,EAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;CACrC;AAcD,qBAAa,qBAAqB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,uBAAuB,CAAC,CAAC,CAAC;IAG5F,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;gBAG9B,GAAG,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAiNjC,WAAW,CAAC,IAAI,OAAO;IAIvB;;;;;OAKG;IACH,eAAe,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;IAI7D,yBAAyB,CAAC,CAAC,QAAQ,EAAE,wBAAwB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI;CA0B7E"}
@@ -247,6 +247,15 @@ class DyFM_DataModel_Params extends DyFM_DataModel_Settings {
247
247
  constructed() {
248
248
  return true;
249
249
  }
250
+ /**
251
+ * BFR-ORGANIZER-001/002 kísérő (generikus): egy property deklarált default-értéke
252
+ * (`properties[key].default`) — hogy a defaultok EGYETLEN forrásból (a dataParams-ból)
253
+ * jöjjenek a fogyasztó create-útjain is (pl. `params.priority ?? dataParams.getDefaultValue('priority')`),
254
+ * ne duplikálódjanak literálként a service-kódban. `undefined`, ha nincs deklarált default.
255
+ */
256
+ getDefaultValue(key) {
257
+ return this.properties?.[key]?.default;
258
+ }
250
259
  setKeysForSubObjectParams(property) {
251
260
  if (property.subObjectParams) {
252
261
  Object.keys(property.subObjectParams).forEach((key) => {
@@ -1 +1 @@
1
- {"version":3,"file":"data-model-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-model-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":"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"}
@@ -33,5 +33,12 @@ export interface DyFM_AudioMixer_Config {
33
33
  defaultMaster?: number;
34
34
  /** Alapertelmezes a `defaults`-ban fel nem sorolt csatornakra (**sajat skala**). Default: a maximum 80%-a. */
35
35
  defaultChannelVolume?: number;
36
+ /**
37
+ * Szoljon-e a hang alapbol akkor is, ha a tab/ablak nem aktiv. **Default: `false`**
38
+ * (owner-direktiva — a hatter-hang opt-in, sosem opt-out).
39
+ *
40
+ * Csak nagyon indokolt esetben allitsd `true`-ra (pl. tisztan audio-jatek).
41
+ */
42
+ defaultPlayWhenUnfocused?: boolean;
36
43
  }
37
44
  //# sourceMappingURL=audio-mixer-config.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audio-mixer-config.interface.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer-config.interface.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,sBAAsB;IAErC,kFAAkF;IAClF,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB,2EAA2E;IAC3E,KAAK,EAAE,eAAe,CAAC;IAEvB,kHAAkH;IAClH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAElC,2FAA2F;IAC3F,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,8GAA8G;IAC9G,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B"}
1
+ {"version":3,"file":"audio-mixer-config.interface.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer-config.interface.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,sBAAsB;IAErC,kFAAkF;IAClF,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB,2EAA2E;IAC3E,KAAK,EAAE,eAAe,CAAC;IAEvB,kHAAkH;IAClH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAElC,2FAA2F;IAC3F,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,8GAA8G;IAC9G,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC"}
@@ -19,5 +19,14 @@ export interface DyFM_AudioMixer_Settings {
19
19
  effects: number;
20
20
  /** Globalis nemitas — ha true, minden effektiv hangero 0. */
21
21
  muted: boolean;
22
+ /**
23
+ * Szoljon-e a hang, ha a tab/ablak nem aktiv. **Default: `false`.**
24
+ *
25
+ * **OPCIONALIS** — szandekosan, hogy a mezo bevezetese ne legyen torо valtozas a round-1
26
+ * alakot mar hasznalo projekteknek. A letezese viszont azt biztositja, hogy a klasszikus
27
+ * oda-vissza konverzio (`toClassicSettings` -> `fromClassicSettings`) NE veszitse el a
28
+ * kapcsolot.
29
+ */
30
+ playWhenUnfocused?: boolean;
22
31
  }
23
32
  //# sourceMappingURL=audio-mixer-settings.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audio-mixer-settings.interface.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer-settings.interface.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,WAAW,wBAAwB;IACvC,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IAEf,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IAEd,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IAEjB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAEhB,6DAA6D;IAC7D,KAAK,EAAE,OAAO,CAAC;CAChB"}
1
+ {"version":3,"file":"audio-mixer-settings.interface.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer-settings.interface.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,WAAW,wBAAwB;IACvC,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IAEf,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IAEd,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IAEjB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAEhB,6DAA6D;IAC7D,KAAK,EAAE,OAAO,CAAC;IAEf;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B"}
@@ -15,5 +15,17 @@ export interface DyFM_AudioMixer_State {
15
15
  channels: Record<string, number>;
16
16
  /** Globalis nemitas — ha `true`, minden effektiv hangero 0. */
17
17
  muted: boolean;
18
+ /**
19
+ * Szoljon-e a hang akkor is, ha a **tab / ablak NEM aktiv** (hattervben van).
20
+ *
21
+ * **Alapertelmezes: `false`** — owner-direktiva. Egy hattervbe tett jatek alapbol NE szoljon
22
+ * bele a felhasznalo mas munkajaba; aki ezt akarja, az kapcsolja be. Ez a mezo CSAK a
23
+ * szandekot hordozza — a tenyleges szuneteltetest a lejatszo-reteg vegzi (bongeszo-fuggo
24
+ * `visibilitychange` / `blur`), mert a modell-reteg szandekosan DOM-fuggetlen.
25
+ *
26
+ * **Migracio:** a mezo nelkuli (regi) mentesek a `merge()`-ben a config alapertelmezeset
27
+ * kapjak, tehat egy regi save betoltese nem kapcsolja be veletlenul a hatter-hangot.
28
+ */
29
+ playWhenUnfocused: boolean;
18
30
  }
19
31
  //# sourceMappingURL=audio-mixer-state.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audio-mixer-state.interface.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer-state.interface.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,WAAW,qBAAqB;IAEpC,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IAEf,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,+DAA+D;IAC/D,KAAK,EAAE,OAAO,CAAC;CAChB"}
1
+ {"version":3,"file":"audio-mixer-state.interface.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer-state.interface.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,WAAW,qBAAqB;IAEpC,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IAEf,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,+DAA+D;IAC/D,KAAK,EAAE,OAAO,CAAC;IAEf;;;;;;;;;;OAUG;IACH,iBAAiB,EAAE,OAAO,CAAC;CAC5B"}
@@ -113,6 +113,13 @@ export declare class DyFM_AudioMixer_ControlModel {
113
113
  withMasterVolume(state: DyFM_AudioMixer_State, volume: number): DyFM_AudioMixer_State;
114
114
  /** Nemitas beallitasa — UJ allapot-objektumot ad vissza. */
115
115
  withMuted(state: DyFM_AudioMixer_State, muted: boolean): DyFM_AudioMixer_State;
116
+ /**
117
+ * A "szoljon-e hattervben" kapcsolo beallitasa — UJ allapot-objektumot ad vissza.
118
+ *
119
+ * A modell csak a SZANDEKOT tarolja; a tenyleges szuneteltetes a lejatszo-reteg dolga
120
+ * (`visibilitychange` / `blur`), mert ez a reteg DOM-fuggetlen.
121
+ */
122
+ withPlayWhenUnfocused(state: DyFM_AudioMixer_State, playWhenUnfocused: boolean): DyFM_AudioMixer_State;
116
123
  /** Ket allapot ertek szerinti egyezese (mentes-szukseg / change-detection dontesehez). */
117
124
  isEqual(a: DyFM_AudioMixer_State, b: DyFM_AudioMixer_State): boolean;
118
125
  /** A master alapertelmezese a sajat skalan (config, kulonben a maximum 80%-a). */
@@ -1 +1 @@
1
- {"version":3,"file":"audio-mixer.control-model.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer.control-model.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAItE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,4BAA4B;IAEvC,8FAA8F;IAC9F,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAY;IAEjD,6FAA6F;IAC7F,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAEhD;;;OAGG;gBACS,MAAM,EAAE,sBAAsB;IAoD1C;;;OAGG;IACH,MAAM,CAAC,aAAa,IAAI,4BAA4B;IASpD;;;OAGG;IACH,MAAM,CAAC,aAAa,CAClB,QAAQ,EAAE,MAAM,EAAE,EAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,aAAa,CAAC,EAAE,MAAM,GACrB,4BAA4B;IAS/B,gFAAgF;IAChF,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,qBAAqB;IAerF;;;;;;;;;OASG;IACH,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,GAAG,wBAAwB;IAazE,2EAA2E;IAC3E,SAAS,IAAI,sBAAsB;IAUnC,sDAAsD;IACtD,WAAW,IAAI,MAAM,EAAE;IAIvB,2EAA2E;IAC3E,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIpC;;;OAGG;IACH,WAAW,IAAI,qBAAqB;IAcpC;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI,GAAG,qBAAqB;IA6B7E;;;;;;;;;OASG;IACH,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IA0BzE;;;OAGG;IACH,iBAAiB,CACf,KAAK,EAAE,qBAAqB,EAC5B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,qBAAqB;IAexB,gFAAgF;IAChF,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,GAAG,qBAAqB;IAOrF,4DAA4D;IAC5D,SAAS,CAAC,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,GAAG,qBAAqB;IAO9E,0FAA0F;IAC1F,OAAO,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,qBAAqB,GAAG,OAAO;IAiBpE,kFAAkF;IAClF,OAAO,CAAC,gBAAgB;IAQxB,gGAAgG;IAChG,OAAO,CAAC,uBAAuB;CAchC"}
1
+ {"version":3,"file":"audio-mixer.control-model.d.ts","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer.control-model.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAItE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,4BAA4B;IAEvC,8FAA8F;IAC9F,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAY;IAEjD,6FAA6F;IAC7F,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;IAEhD;;;OAGG;gBACS,MAAM,EAAE,sBAAsB;IAqD1C;;;OAGG;IACH,MAAM,CAAC,aAAa,IAAI,4BAA4B;IASpD;;;OAGG;IACH,MAAM,CAAC,aAAa,CAClB,QAAQ,EAAE,MAAM,EAAE,EAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,aAAa,CAAC,EAAE,MAAM,GACrB,4BAA4B;IAS/B,gFAAgF;IAChF,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,qBAAqB;IAiBrF;;;;;;;;;OASG;IACH,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,GAAG,wBAAwB;IAsBzE,2EAA2E;IAC3E,SAAS,IAAI,sBAAsB;IAUnC,sDAAsD;IACtD,WAAW,IAAI,MAAM,EAAE;IAIvB,2EAA2E;IAC3E,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIpC;;;OAGG;IACH,WAAW,IAAI,qBAAqB;IAepC;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI,GAAG,qBAAqB;IAqC7E;;;;;;;;;OASG;IACH,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IA0BzE;;;OAGG;IACH,iBAAiB,CACf,KAAK,EAAE,qBAAqB,EAC5B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,qBAAqB;IAexB,gFAAgF;IAChF,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,GAAG,qBAAqB;IAOrF,4DAA4D;IAC5D,SAAS,CAAC,KAAK,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,GAAG,qBAAqB;IAO9E;;;;;OAKG;IACH,qBAAqB,CACnB,KAAK,EAAE,qBAAqB,EAC5B,iBAAiB,EAAE,OAAO,GACzB,qBAAqB;IAOxB,0FAA0F;IAC1F,OAAO,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,qBAAqB,GAAG,OAAO;IAqBpE,kFAAkF;IAClF,OAAO,CAAC,gBAAgB;IAQxB,gGAAgG;IAChG,OAAO,CAAC,uBAAuB;CAchC"}
@@ -88,6 +88,7 @@ class DyFM_AudioMixer_ControlModel {
88
88
  defaults: config.defaults ? { ...config.defaults } : {},
89
89
  defaultMaster: config.defaultMaster,
90
90
  defaultChannelVolume: config.defaultChannelVolume,
91
+ defaultPlayWhenUnfocused: config.defaultPlayWhenUnfocused === true,
91
92
  };
92
93
  }
93
94
  /**
@@ -126,6 +127,8 @@ class DyFM_AudioMixer_ControlModel {
126
127
  effects: audio_scale_util_1.DyFM_AudioScale_Util.toUnit(safe.effects, scale),
127
128
  },
128
129
  muted: safe.muted === true,
130
+ // Statikus metodus -> nincs peldany-config, ezert a GLOBALIS default (`false`) ervenyes.
131
+ playWhenUnfocused: safe.playWhenUnfocused === true,
129
132
  };
130
133
  }
131
134
  /**
@@ -141,13 +144,20 @@ class DyFM_AudioMixer_ControlModel {
141
144
  toClassicSettings(state) {
142
145
  const safe = this.merge(state);
143
146
  const scale = this.config.scale;
144
- return {
147
+ const classic = {
145
148
  master: audio_scale_util_1.DyFM_AudioScale_Util.toUnit(safe.master, scale),
146
149
  music: audio_scale_util_1.DyFM_AudioScale_Util.toUnit(safe.channels['music'], scale),
147
150
  ambience: audio_scale_util_1.DyFM_AudioScale_Util.toUnit(safe.channels['ambience'], scale),
148
151
  effects: audio_scale_util_1.DyFM_AudioScale_Util.toUnit(safe.channels['effects'], scale),
149
152
  muted: safe.muted === true,
150
153
  };
154
+ // A kapcsolot CSAK bekapcsolt allapotban irjuk ki. Igy a round-1 alakot mar hasznalo
155
+ // projektek payloadja valtozatlan marad (nem jelenik meg benne egy uj `false` mezo),
156
+ // a bekapcsolt allapot viszont tulel egy oda-vissza konverziot.
157
+ if (safe.playWhenUnfocused) {
158
+ classic.playWhenUnfocused = true;
159
+ }
160
+ return classic;
151
161
  }
152
162
  /** A peldany configja (masolat — a mutalasa nem hat vissza a modellre). */
153
163
  getConfig() {
@@ -180,6 +190,7 @@ class DyFM_AudioMixer_ControlModel {
180
190
  master: this.getDefaultMaster(),
181
191
  channels: channels,
182
192
  muted: false,
193
+ playWhenUnfocused: this.config.defaultPlayWhenUnfocused === true,
183
194
  };
184
195
  }
185
196
  /**
@@ -211,10 +222,16 @@ class DyFM_AudioMixer_ControlModel {
211
222
  const master = partial.master === undefined || partial.master === null
212
223
  ? defaults.master
213
224
  : audio_scale_util_1.DyFM_AudioScale_Util.clampToScale(partial.master, this.config.scale, defaults.master);
225
+ // A hianyzo `playWhenUnfocused` a CONFIG alapertelmezeset kapja, NEM vakon `false`-t:
226
+ // igy egy regi (mezo nelkuli) mentes betoltese nem irja felul a jatek sajat dontetet.
227
+ const playWhenUnfocused = partial.playWhenUnfocused === undefined || partial.playWhenUnfocused === null
228
+ ? defaults.playWhenUnfocused
229
+ : partial.playWhenUnfocused === true;
214
230
  return {
215
231
  master: master,
216
232
  channels: channels,
217
233
  muted: partial.muted === true,
234
+ playWhenUnfocused: playWhenUnfocused,
218
235
  };
219
236
  }
220
237
  /**
@@ -274,11 +291,24 @@ class DyFM_AudioMixer_ControlModel {
274
291
  next.muted = muted === true;
275
292
  return next;
276
293
  }
294
+ /**
295
+ * A "szoljon-e hattervben" kapcsolo beallitasa — UJ allapot-objektumot ad vissza.
296
+ *
297
+ * A modell csak a SZANDEKOT tarolja; a tenyleges szuneteltetes a lejatszo-reteg dolga
298
+ * (`visibilitychange` / `blur`), mert ez a reteg DOM-fuggetlen.
299
+ */
300
+ withPlayWhenUnfocused(state, playWhenUnfocused) {
301
+ const next = this.merge(state);
302
+ next.playWhenUnfocused = playWhenUnfocused === true;
303
+ return next;
304
+ }
277
305
  /** Ket allapot ertek szerinti egyezese (mentes-szukseg / change-detection dontesehez). */
278
306
  isEqual(a, b) {
279
307
  const left = this.merge(a);
280
308
  const right = this.merge(b);
281
- if (left.master !== right.master || left.muted !== right.muted) {
309
+ if (left.master !== right.master
310
+ || left.muted !== right.muted
311
+ || left.playWhenUnfocused !== right.playWhenUnfocused) {
282
312
  return false;
283
313
  }
284
314
  for (const channel of this.config.channels) {
@@ -1 +1 @@
1
- {"version":3,"file":"audio-mixer.control-model.js","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer.control-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audio-mixer.control-model.js","sourceRoot":"","sources":["../../../../src/_modules/game/_models/audio-mixer.control-model.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@futdevpro/fsm-dynamo",
3
- "version": "01.16.34",
3
+ "version": "01.16.36",
4
4
  "description": "Full Stack Model Collection for Dynamic (NodeJS-Typescript) Framework called Dynamo, by Future Development Ltd.",
5
5
  "DyBu_settings": {
6
6
  "packageType": "full-stack-package",
@@ -131,3 +131,26 @@ describe('| DyFM_resolveRetentionTtlSeconds (FR-258 / SR-1)', () => {
131
131
  expect(DyFM_resolveRetentionTtlSeconds({ retentionDays: 0.5 })).toBe(43200);
132
132
  });
133
133
  });
134
+
135
+ // BFR-ORGANIZER-001/002 kísérő — getDefaultValue: a property-defaultok single-source olvasása.
136
+ describe('| DyFM_DataModel_Params.getDefaultValue', () => {
137
+ interface TestShape { priority?: string; status?: string; title?: string; }
138
+
139
+ const params = new DyFM_DataModel_Params<TestShape & DyFM_Metadata>({
140
+ dataName: 'test_default_model',
141
+ properties: {
142
+ priority: { type: DyFM_BasicProperty_Type.string, default: 'medium' },
143
+ status: { type: DyFM_BasicProperty_Type.string, default: 'new' },
144
+ title: { type: DyFM_BasicProperty_Type.string },
145
+ },
146
+ });
147
+
148
+ it('| a deklarált default-értéket adja vissza', () => {
149
+ expect(params.getDefaultValue?.('priority')).toBe('medium');
150
+ expect(params.getDefaultValue?.('status')).toBe('new');
151
+ });
152
+
153
+ it('| default nélküli property → undefined', () => {
154
+ expect(params.getDefaultValue?.('title')).toBeUndefined();
155
+ });
156
+ });
@@ -319,8 +319,18 @@ export class DyFM_DataModel_Params<T extends DyFM_Metadata> extends DyFM_DataMod
319
319
  }
320
320
  }
321
321
 
322
- constructed?(): boolean {
323
- return true;
322
+ constructed?(): boolean {
323
+ return true;
324
+ }
325
+
326
+ /**
327
+ * BFR-ORGANIZER-001/002 kísérő (generikus): egy property deklarált default-értéke
328
+ * (`properties[key].default`) — hogy a defaultok EGYETLEN forrásból (a dataParams-ból)
329
+ * jöjjenek a fogyasztó create-útjain is (pl. `params.priority ?? dataParams.getDefaultValue('priority')`),
330
+ * ne duplikálódjanak literálként a service-kódban. `undefined`, ha nincs deklarált default.
331
+ */
332
+ getDefaultValue?<K extends keyof T>(key: K): T[K] | undefined {
333
+ return this.properties?.[key]?.default;
324
334
  }
325
335
 
326
336
  setKeysForSubObjectParams?(property: DyFM_DataProperty_Params<any, T>): void {
@@ -42,4 +42,12 @@ export interface DyFM_AudioMixer_Config {
42
42
 
43
43
  /** Alapertelmezes a `defaults`-ban fel nem sorolt csatornakra (**sajat skala**). Default: a maximum 80%-a. */
44
44
  defaultChannelVolume?: number;
45
+
46
+ /**
47
+ * Szoljon-e a hang alapbol akkor is, ha a tab/ablak nem aktiv. **Default: `false`**
48
+ * (owner-direktiva — a hatter-hang opt-in, sosem opt-out).
49
+ *
50
+ * Csak nagyon indokolt esetben allitsd `true`-ra (pl. tisztan audio-jatek).
51
+ */
52
+ defaultPlayWhenUnfocused?: boolean;
45
53
  }
@@ -25,4 +25,14 @@ export interface DyFM_AudioMixer_Settings {
25
25
 
26
26
  /** Globalis nemitas — ha true, minden effektiv hangero 0. */
27
27
  muted: boolean;
28
+
29
+ /**
30
+ * Szoljon-e a hang, ha a tab/ablak nem aktiv. **Default: `false`.**
31
+ *
32
+ * **OPCIONALIS** — szandekosan, hogy a mezo bevezetese ne legyen torо valtozas a round-1
33
+ * alakot mar hasznalo projekteknek. A letezese viszont azt biztositja, hogy a klasszikus
34
+ * oda-vissza konverzio (`toClassicSettings` -> `fromClassicSettings`) NE veszitse el a
35
+ * kapcsolot.
36
+ */
37
+ playWhenUnfocused?: boolean;
28
38
  }
@@ -20,4 +20,17 @@ export interface DyFM_AudioMixer_State {
20
20
 
21
21
  /** Globalis nemitas — ha `true`, minden effektiv hangero 0. */
22
22
  muted: boolean;
23
+
24
+ /**
25
+ * Szoljon-e a hang akkor is, ha a **tab / ablak NEM aktiv** (hattervben van).
26
+ *
27
+ * **Alapertelmezes: `false`** — owner-direktiva. Egy hattervbe tett jatek alapbol NE szoljon
28
+ * bele a felhasznalo mas munkajaba; aki ezt akarja, az kapcsolja be. Ez a mezo CSAK a
29
+ * szandekot hordozza — a tenyleges szuneteltetest a lejatszo-reteg vegzi (bongeszo-fuggo
30
+ * `visibilitychange` / `blur`), mert a modell-reteg szandekosan DOM-fuggetlen.
31
+ *
32
+ * **Migracio:** a mezo nelkuli (regi) mentesek a `merge()`-ben a config alapertelmezeset
33
+ * kapjak, tehat egy regi save betoltese nem kapcsolja be veletlenul a hatter-hangot.
34
+ */
35
+ playWhenUnfocused: boolean;
23
36
  }
@@ -173,6 +173,7 @@ describe('DyFM_AudioMixer_ControlModel', (): void => {
173
173
  master: NaN,
174
174
  channels: { music: NaN, dialog: NaN, interface: NaN },
175
175
  muted: false,
176
+ playWhenUnfocused: false,
176
177
  };
177
178
 
178
179
  expect(Number.isNaN(mixer.getEffectiveVolume(broken, 'music'))).toBe(false);
@@ -291,6 +292,7 @@ describe('DyFM_AudioMixer_ControlModel', (): void => {
291
292
  const mixer: DyFM_AudioMixer_ControlModel = createHeroCoordinatorMixer();
292
293
  const persisted: DyFM_AudioMixer_State = {
293
294
  master: 72, channels: { music: 36, dialog: 84, interface: 68 }, muted: false,
295
+ playWhenUnfocused: false,
294
296
  };
295
297
 
296
298
  expect(mixer.merge(JSON.parse(JSON.stringify(persisted)))).toEqual(persisted);
@@ -303,4 +305,72 @@ describe('DyFM_AudioMixer_ControlModel', (): void => {
303
305
  expect(mixer.hasChannel('interface')).toBe(true);
304
306
  });
305
307
  });
308
+
309
+ describe('playWhenUnfocused (hatter-hang kapcsolo)', (): void => {
310
+
311
+ it('ALAPBOL kikapcsolt — a hatter-hang opt-in, sosem opt-out', (): void => {
312
+ expect(createHeroCoordinatorMixer().getDefaults().playWhenUnfocused).toBe(false);
313
+ expect(DyFM_AudioMixer_ControlModel.createClassic().getDefaults().playWhenUnfocused).toBe(false);
314
+ });
315
+
316
+ it('a config explicit `true`-ra allithatja (pl. tisztan audio-jatek)', (): void => {
317
+ const mixer: DyFM_AudioMixer_ControlModel = new DyFM_AudioMixer_ControlModel({
318
+ channels: ['music'],
319
+ scale: { max: 1, integer: false },
320
+ defaultPlayWhenUnfocused: true,
321
+ });
322
+
323
+ expect(mixer.getDefaults().playWhenUnfocused).toBe(true);
324
+ });
325
+
326
+ it('REGI mentes (mezo nelkul) a CONFIG defaultjat kapja, nem vakon false-t', (): void => {
327
+ const optIn: DyFM_AudioMixer_ControlModel = new DyFM_AudioMixer_ControlModel({
328
+ channels: ['music'],
329
+ scale: { max: 1, integer: false },
330
+ defaultPlayWhenUnfocused: true,
331
+ });
332
+ // A regi payloadban meg NINCS `playWhenUnfocused` — pont ez a migracios eset.
333
+ const legacy: Partial<DyFM_AudioMixer_State> = { master: 0.5, channels: { music: 0.5 } };
334
+
335
+ expect(optIn.merge(legacy).playWhenUnfocused).toBe(true);
336
+ expect(createHeroCoordinatorMixer().merge({ master: 50 }).playWhenUnfocused).toBe(false);
337
+ });
338
+
339
+ it('az explicit `false` felulirja a `true` config-defaultot', (): void => {
340
+ const optIn: DyFM_AudioMixer_ControlModel = new DyFM_AudioMixer_ControlModel({
341
+ channels: ['music'],
342
+ scale: { max: 1, integer: false },
343
+ defaultPlayWhenUnfocused: true,
344
+ });
345
+
346
+ expect(optIn.merge({ playWhenUnfocused: false }).playWhenUnfocused).toBe(false);
347
+ });
348
+
349
+ it('a withPlayWhenUnfocused UJ objektumot ad (immutable update)', (): void => {
350
+ const mixer: DyFM_AudioMixer_ControlModel = createHeroCoordinatorMixer();
351
+ const before: DyFM_AudioMixer_State = mixer.getDefaults();
352
+ const after: DyFM_AudioMixer_State = mixer.withPlayWhenUnfocused(before, true);
353
+
354
+ expect(after).not.toBe(before);
355
+ expect(before.playWhenUnfocused).toBe(false);
356
+ expect(after.playWhenUnfocused).toBe(true);
357
+ });
358
+
359
+ it('az isEqual KULONBSEGET lat a kapcsolon (kulonben nem mentodne el)', (): void => {
360
+ const mixer: DyFM_AudioMixer_ControlModel = createHeroCoordinatorMixer();
361
+ const off: DyFM_AudioMixer_State = mixer.getDefaults();
362
+
363
+ expect(mixer.isEqual(off, mixer.withPlayWhenUnfocused(off, true))).toBe(false);
364
+ expect(mixer.isEqual(off, mixer.withPlayWhenUnfocused(off, false))).toBe(true);
365
+ });
366
+
367
+ it('a klasszikus oda-vissza konverzio NEM veszti el a kapcsolot', (): void => {
368
+ const mixer: DyFM_AudioMixer_ControlModel = DyFM_AudioMixer_ControlModel.createClassic();
369
+ const on: DyFM_AudioMixer_State = mixer.withPlayWhenUnfocused(mixer.getDefaults(), true);
370
+ const classic: DyFM_AudioMixer_Settings = mixer.toClassicSettings(on);
371
+
372
+ expect(classic.playWhenUnfocused).toBe(true);
373
+ expect(DyFM_AudioMixer_ControlModel.fromClassicSettings(classic).playWhenUnfocused).toBe(true);
374
+ });
375
+ });
306
376
  });
@@ -105,6 +105,7 @@ export class DyFM_AudioMixer_ControlModel {
105
105
  defaults: config.defaults ? { ...config.defaults } : {},
106
106
  defaultMaster: config.defaultMaster,
107
107
  defaultChannelVolume: config.defaultChannelVolume,
108
+ defaultPlayWhenUnfocused: config.defaultPlayWhenUnfocused === true,
108
109
  };
109
110
  }
110
111
 
@@ -151,6 +152,8 @@ export class DyFM_AudioMixer_ControlModel {
151
152
  effects: DyFM_AudioScale_Util.toUnit(safe.effects, scale),
152
153
  },
153
154
  muted: safe.muted === true,
155
+ // Statikus metodus -> nincs peldany-config, ezert a GLOBALIS default (`false`) ervenyes.
156
+ playWhenUnfocused: safe.playWhenUnfocused === true,
154
157
  };
155
158
  }
156
159
 
@@ -168,13 +171,22 @@ export class DyFM_AudioMixer_ControlModel {
168
171
  const safe: DyFM_AudioMixer_State = this.merge(state);
169
172
  const scale: DyFM_AudioScale = this.config.scale;
170
173
 
171
- return {
174
+ const classic: DyFM_AudioMixer_Settings = {
172
175
  master: DyFM_AudioScale_Util.toUnit(safe.master, scale),
173
176
  music: DyFM_AudioScale_Util.toUnit(safe.channels['music'], scale),
174
177
  ambience: DyFM_AudioScale_Util.toUnit(safe.channels['ambience'], scale),
175
178
  effects: DyFM_AudioScale_Util.toUnit(safe.channels['effects'], scale),
176
179
  muted: safe.muted === true,
177
180
  };
181
+
182
+ // A kapcsolot CSAK bekapcsolt allapotban irjuk ki. Igy a round-1 alakot mar hasznalo
183
+ // projektek payloadja valtozatlan marad (nem jelenik meg benne egy uj `false` mezo),
184
+ // a bekapcsolt allapot viszont tulel egy oda-vissza konverziot.
185
+ if (safe.playWhenUnfocused) {
186
+ classic.playWhenUnfocused = true;
187
+ }
188
+
189
+ return classic;
178
190
  }
179
191
 
180
192
  /** A peldany configja (masolat — a mutalasa nem hat vissza a modellre). */
@@ -213,6 +225,7 @@ export class DyFM_AudioMixer_ControlModel {
213
225
  master: this.getDefaultMaster(),
214
226
  channels: channels,
215
227
  muted: false,
228
+ playWhenUnfocused: this.config.defaultPlayWhenUnfocused === true,
216
229
  };
217
230
  }
218
231
 
@@ -251,10 +264,18 @@ export class DyFM_AudioMixer_ControlModel {
251
264
  ? defaults.master
252
265
  : DyFM_AudioScale_Util.clampToScale(partial.master, this.config.scale, defaults.master);
253
266
 
267
+ // A hianyzo `playWhenUnfocused` a CONFIG alapertelmezeset kapja, NEM vakon `false`-t:
268
+ // igy egy regi (mezo nelkuli) mentes betoltese nem irja felul a jatek sajat dontetet.
269
+ const playWhenUnfocused: boolean =
270
+ partial.playWhenUnfocused === undefined || partial.playWhenUnfocused === null
271
+ ? defaults.playWhenUnfocused
272
+ : partial.playWhenUnfocused === true;
273
+
254
274
  return {
255
275
  master: master,
256
276
  channels: channels,
257
277
  muted: partial.muted === true,
278
+ playWhenUnfocused: playWhenUnfocused,
258
279
  };
259
280
  }
260
281
 
@@ -333,12 +354,32 @@ export class DyFM_AudioMixer_ControlModel {
333
354
  return next;
334
355
  }
335
356
 
357
+ /**
358
+ * A "szoljon-e hattervben" kapcsolo beallitasa — UJ allapot-objektumot ad vissza.
359
+ *
360
+ * A modell csak a SZANDEKOT tarolja; a tenyleges szuneteltetes a lejatszo-reteg dolga
361
+ * (`visibilitychange` / `blur`), mert ez a reteg DOM-fuggetlen.
362
+ */
363
+ withPlayWhenUnfocused(
364
+ state: DyFM_AudioMixer_State,
365
+ playWhenUnfocused: boolean,
366
+ ): DyFM_AudioMixer_State {
367
+ const next: DyFM_AudioMixer_State = this.merge(state);
368
+ next.playWhenUnfocused = playWhenUnfocused === true;
369
+
370
+ return next;
371
+ }
372
+
336
373
  /** Ket allapot ertek szerinti egyezese (mentes-szukseg / change-detection dontesehez). */
337
374
  isEqual(a: DyFM_AudioMixer_State, b: DyFM_AudioMixer_State): boolean {
338
375
  const left: DyFM_AudioMixer_State = this.merge(a);
339
376
  const right: DyFM_AudioMixer_State = this.merge(b);
340
377
 
341
- if (left.master !== right.master || left.muted !== right.muted) {
378
+ if (
379
+ left.master !== right.master
380
+ || left.muted !== right.muted
381
+ || left.playWhenUnfocused !== right.playWhenUnfocused
382
+ ) {
342
383
  return false;
343
384
  }
344
385