@futdevpro/fsm-dynamo 1.20.88 → 1.20.93

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 (462) hide show
  1. package/build/_models/control-models/data-model-params.control-model.d.ts +0 -1
  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 +1 -4
  4. package/build/_models/control-models/data-model-params.control-model.js.map +1 -1
  5. package/build/_models/control-models/data-property-params.control-model.d.ts +0 -1
  6. package/build/_models/control-models/data-property-params.control-model.d.ts.map +1 -1
  7. package/build/_models/control-models/data-property-params.control-model.js +1 -4
  8. package/build/_models/control-models/data-property-params.control-model.js.map +1 -1
  9. package/build/_models/control-models/service-endpoint-settings-base.control-model.d.ts +0 -1
  10. package/build/_models/control-models/service-endpoint-settings-base.control-model.d.ts.map +1 -1
  11. package/build/_models/control-models/service-endpoint-settings-base.control-model.js +4 -4
  12. package/build/_models/control-models/service-endpoint-settings-base.control-model.js.map +1 -1
  13. package/build/_modules/data-handler/_models/data-handler-settings.control-model.d.ts +0 -3
  14. package/build/_modules/data-handler/_models/data-handler-settings.control-model.d.ts.map +1 -1
  15. package/build/_modules/data-handler/_models/data-handler-settings.control-model.js +4 -10
  16. package/build/_modules/data-handler/_models/data-handler-settings.control-model.js.map +1 -1
  17. package/build/_modules/data-handler/_models/data-handler.control-model.d.ts.map +1 -1
  18. package/build/_modules/data-handler/_models/data-handler.control-model.js +10 -4
  19. package/build/_modules/data-handler/_models/data-handler.control-model.js.map +1 -1
  20. package/build/_modules/data-handler/_models/data-list-handler.control-model.d.ts +1 -1
  21. package/build/_modules/data-handler/_models/data-list-handler.control-model.d.ts.map +1 -1
  22. package/build/_modules/data-handler/_models/data-search-handler.control-model.d.ts +1 -1
  23. package/build/_modules/data-handler/_models/data-search-handler.control-model.d.ts.map +1 -1
  24. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.d.ts +1 -1
  25. package/build/_modules/data-handler/_models/list-collector-data-handler.control-model.d.ts.map +1 -1
  26. package/build/_modules/data-handler/index.d.ts +3 -0
  27. package/build/_modules/data-handler/index.d.ts.map +1 -1
  28. package/build/_modules/data-handler/index.js +3 -0
  29. package/build/_modules/data-handler/index.js.map +1 -1
  30. package/build/_modules/game/_models/flying-effect.control-model.d.ts +34 -0
  31. package/build/_modules/game/_models/flying-effect.control-model.d.ts.map +1 -0
  32. package/build/_modules/game/_models/flying-effect.control-model.js +217 -0
  33. package/build/_modules/game/_models/flying-effect.control-model.js.map +1 -0
  34. package/build/_modules/game/_models/flying-effect.interface.d.ts +53 -0
  35. package/build/_modules/game/_models/flying-effect.interface.d.ts.map +1 -0
  36. package/build/_modules/game/_models/flying-effect.interface.js +3 -0
  37. package/build/_modules/game/_models/flying-effect.interface.js.map +1 -0
  38. package/build/_modules/game/index.d.ts +2 -0
  39. package/build/_modules/game/index.d.ts.map +1 -1
  40. package/build/_modules/game/index.js +2 -0
  41. package/build/_modules/game/index.js.map +1 -1
  42. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.d.ts +0 -3
  43. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.d.ts.map +1 -1
  44. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.js +4 -10
  45. package/build/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.js.map +1 -1
  46. package/build/_modules/ngx-models/_models/control-models/data-handler.control-model.d.ts.map +1 -1
  47. package/build/_modules/ngx-models/_models/control-models/data-handler.control-model.js +10 -4
  48. package/build/_modules/ngx-models/_models/control-models/data-handler.control-model.js.map +1 -1
  49. package/build/_modules/ngx-models/index.d.ts +3 -0
  50. package/build/_modules/ngx-models/index.d.ts.map +1 -1
  51. package/build/_modules/ngx-models/index.js +3 -0
  52. package/build/_modules/ngx-models/index.js.map +1 -1
  53. package/build/_modules/sandbox-runtime/_collections/zero-egress-receipt.util.d.ts.map +1 -1
  54. package/build/_modules/sandbox-runtime/_collections/zero-egress-receipt.util.js +2 -0
  55. package/build/_modules/sandbox-runtime/_collections/zero-egress-receipt.util.js.map +1 -1
  56. package/build/_modules/sandbox-runtime/_collections/zero-egress-result-code.const.d.ts +2 -0
  57. package/build/_modules/sandbox-runtime/_collections/zero-egress-result-code.const.d.ts.map +1 -1
  58. package/build/_modules/sandbox-runtime/_collections/zero-egress-result-code.const.js +2 -0
  59. package/build/_modules/sandbox-runtime/_collections/zero-egress-result-code.const.js.map +1 -1
  60. package/build/index.d.ts +3 -0
  61. package/build/index.d.ts.map +1 -1
  62. package/build/index.js +3 -0
  63. package/build/index.js.map +1 -1
  64. package/build-esm/_collections/constants/data-sizes.const.js +37 -0
  65. package/build-esm/_collections/constants/error-defaults.const.js +17 -0
  66. package/build-esm/_collections/constants/global-settings.const.js +17 -0
  67. package/build-esm/_collections/constants/numbers.const.js +36 -0
  68. package/build-esm/_collections/constants/times.const.js +38 -0
  69. package/build-esm/_collections/utils/array.util.js +632 -0
  70. package/build-esm/_collections/utils/async.util.js +183 -0
  71. package/build-esm/_collections/utils/data.util.js +203 -0
  72. package/build-esm/_collections/utils/extract-error-message.util.js +183 -0
  73. package/build-esm/_collections/utils/json-error-helper.util.js +251 -0
  74. package/build-esm/_collections/utils/log.util.js +555 -0
  75. package/build-esm/_collections/utils/math/box-bounds.util.js +159 -0
  76. package/build-esm/_collections/utils/math/math.util.js +183 -0
  77. package/build-esm/_collections/utils/math/random.util.js +117 -0
  78. package/build-esm/_collections/utils/math/trigonometry.util.js +89 -0
  79. package/build-esm/_collections/utils/math/vector2.util.js +587 -0
  80. package/build-esm/_collections/utils/object.util.js +591 -0
  81. package/build-esm/_collections/utils/operation-authz.util.js +136 -0
  82. package/build-esm/_collections/utils/operation-guardrails.util.js +220 -0
  83. package/build-esm/_collections/utils/operation-run.util.js +81 -0
  84. package/build-esm/_collections/utils/operation-schema.util.js +159 -0
  85. package/build-esm/_collections/utils/regex/password-regex.util.js +56 -0
  86. package/build-esm/_collections/utils/regex/regex.util.js +1 -0
  87. package/build-esm/_collections/utils/regex/username-regex.util.js +28 -0
  88. package/build-esm/_collections/utils/require-env.util.js +90 -0
  89. package/build-esm/_collections/utils/round-list.util.js +108 -0
  90. package/build-esm/_collections/utils/secret-mask.util.js +219 -0
  91. package/build-esm/_collections/utils/stack.util.js +126 -0
  92. package/build-esm/_collections/utils/string-case.util.js +332 -0
  93. package/build-esm/_collections/utils/string.util.js +366 -0
  94. package/build-esm/_collections/utils/time.util.js +431 -0
  95. package/build-esm/_collections/utils/type-cloning-facility.util.js +122 -0
  96. package/build-esm/_collections/utils/utilities.util.js +61 -0
  97. package/build-esm/_collections/utils/uuid.util.js +33 -0
  98. package/build-esm/_enums/basic-property-type.enum.js +18 -0
  99. package/build-esm/_enums/data-model-type.enum.js +24 -0
  100. package/build-esm/_enums/environment-flag.enum.js +26 -0
  101. package/build-esm/_enums/error-level.enum.js +35 -0
  102. package/build-esm/_enums/error-status.enum.js +28 -0
  103. package/build-esm/_enums/http/http-call-type.enum.js +42 -0
  104. package/build-esm/_enums/http/http-event-type.enum.js +39 -0
  105. package/build-esm/_enums/http/http-response-type.enum.js +18 -0
  106. package/build-esm/_enums/log-style.enum.js +38 -0
  107. package/build-esm/_enums/operation-auth.type-enum.js +19 -0
  108. package/build-esm/_enums/operation-if-match.type-enum.js +17 -0
  109. package/build-esm/_enums/operation-patch-field.type-enum.js +40 -0
  110. package/build-esm/_enums/server-connection-status.enum.js +5 -0
  111. package/build-esm/_enums/time/day-of-week.enum.js +47 -0
  112. package/build-esm/_enums/time/month.enum.js +23 -0
  113. package/build-esm/_enums/time/relative-date.enum.js +19 -0
  114. package/build-esm/_models/control-models/data-model-params.control-model.js +259 -0
  115. package/build-esm/_models/control-models/data-model-settings.control-model.js +63 -0
  116. package/build-esm/_models/control-models/data-property-params.control-model.js +101 -0
  117. package/build-esm/_models/control-models/data-property-settings.control-model.js +61 -0
  118. package/build-esm/_models/control-models/error.control-model.js +787 -0
  119. package/build-esm/_models/control-models/http/http-error-response.control-model.js +48 -0
  120. package/build-esm/_models/control-models/http/http-headers.control-model.js +43 -0
  121. package/build-esm/_models/control-models/http/http-response.model-base.js +62 -0
  122. package/build-esm/_models/control-models/operation-context.control-model.js +110 -0
  123. package/build-esm/_models/control-models/operation-settings.control-model.js +184 -0
  124. package/build-esm/_models/control-models/poll.control-model.js +202 -0
  125. package/build-esm/_models/control-models/range-value.control-model.js +247 -0
  126. package/build-esm/_models/control-models/server-route-settings-base.control-model.js +19 -0
  127. package/build-esm/_models/control-models/server-status.control-model.js +73 -0
  128. package/build-esm/_models/control-models/service-endpoint-settings-base.control-model.js +110 -0
  129. package/build-esm/_models/data-models/errors.data-model.js +156 -0
  130. package/build-esm/_models/data-models/metadata.data-model.js +120 -0
  131. package/build-esm/_models/interfaces/box-bounds.interface.js +1 -0
  132. package/build-esm/_models/interfaces/environment/global-log-settings.interface.js +1 -0
  133. package/build-esm/_models/interfaces/environment/global-settings.interface.js +1 -0
  134. package/build-esm/_models/interfaces/error-defaults.interface.js +1 -0
  135. package/build-esm/_models/interfaces/operation-authz-result.interface.js +1 -0
  136. package/build-esm/_models/interfaces/operation-authz.interface.js +1 -0
  137. package/build-esm/_models/interfaces/operation-exposure.interface.js +1 -0
  138. package/build-esm/_models/interfaces/operation-guardrails.interface.js +1 -0
  139. package/build-esm/_models/interfaces/operation-input-settings.interface.js +1 -0
  140. package/build-esm/_models/interfaces/operation-json-schema.interface.js +1 -0
  141. package/build-esm/_models/interfaces/operation-patch-field.interface.js +1 -0
  142. package/build-esm/_models/interfaces/operation-patch-result.interface.js +1 -0
  143. package/build-esm/_models/interfaces/operation-patch-violation.interface.js +1 -0
  144. package/build-esm/_models/interfaces/operation-run-result.interface.js +1 -0
  145. package/build-esm/_models/interfaces/paged.interface.js +1 -0
  146. package/build-esm/_models/interfaces/poll-handle.interface.js +1 -0
  147. package/build-esm/_models/interfaces/random-weight.interface.js +1 -0
  148. package/build-esm/_models/interfaces/route-settings.interface.js +1 -0
  149. package/build-esm/_models/interfaces/search-query.interface.js +1 -0
  150. package/build-esm/_models/interfaces/search-result.interface.js +1 -0
  151. package/build-esm/_models/interfaces/server-error-statistics.interface.js +1 -0
  152. package/build-esm/_models/interfaces/vector2.interface.js +1 -0
  153. package/build-esm/_models/types/db-filter.type.js +1 -0
  154. package/build-esm/_models/types/db-sort.type.js +1 -0
  155. package/build-esm/_models/types/deprecated-boolean-alias.type.js +1 -0
  156. package/build-esm/_models/types/ds-filter.type.js +15 -0
  157. package/build-esm/_models/types/ds-sort.type.js +1 -0
  158. package/build-esm/_modules/ai/_collections/ai-media-provenance.util.js +24 -0
  159. package/build-esm/_modules/ai/_collections/ai-model-ref.util.js +70 -0
  160. package/build-esm/_modules/ai/_collections/ai-model-registry.util.js +37 -0
  161. package/build-esm/_modules/ai/_enums/ai-message-role.enum.js +8 -0
  162. package/build-esm/_modules/ai/_enums/ai-model-type.enum.js +8 -0
  163. package/build-esm/_modules/ai/_enums/ai-provider.enum.js +8 -0
  164. package/build-esm/_modules/ai/_models/ai-call-settings.interface.js +88 -0
  165. package/build-esm/_modules/ai/_models/ai-config.interface.js +1 -0
  166. package/build-esm/_modules/ai/_models/ai-embedding-request.interface.js +1 -0
  167. package/build-esm/_modules/ai/_models/ai-embedding-response.interface.js +1 -0
  168. package/build-esm/_modules/ai/_models/ai-image-request.interface.js +1 -0
  169. package/build-esm/_modules/ai/_models/ai-image-response.interface.js +1 -0
  170. package/build-esm/_modules/ai/_models/ai-llm-request.interface.js +1 -0
  171. package/build-esm/_modules/ai/_models/ai-llm-response.interface.js +1 -0
  172. package/build-esm/_modules/ai/_models/ai-media-file.interface.js +1 -0
  173. package/build-esm/_modules/ai/_models/ai-media-provenance.interface.js +1 -0
  174. package/build-esm/_modules/ai/_models/ai-message.interface.js +1 -0
  175. package/build-esm/_modules/ai/_models/ai-model-capabilities.interface.js +1 -0
  176. package/build-esm/_modules/ai/_models/ai-model-info.interface.js +1 -0
  177. package/build-esm/_modules/ai/_models/ai-model-settings-schema.interface.js +1 -0
  178. package/build-esm/_modules/ai/_models/ai-model3d-request.interface.js +1 -0
  179. package/build-esm/_modules/ai/_models/ai-model3d-response.interface.js +1 -0
  180. package/build-esm/_modules/ai/_models/ai-provider-capabilities.interface.js +1 -0
  181. package/build-esm/_modules/ai/_models/ai-settings.interface.js +10 -0
  182. package/build-esm/_modules/ai/_models/ai-speech-request.interface.js +1 -0
  183. package/build-esm/_modules/ai/_models/ai-speech-response.interface.js +1 -0
  184. package/build-esm/_modules/ai/_models/ai-tool-call.interface.js +1 -0
  185. package/build-esm/_modules/ai/_models/ai-tool-handler.type.js +1 -0
  186. package/build-esm/_modules/ai/_models/ai-tool-result.interface.js +1 -0
  187. package/build-esm/_modules/ai/_models/ai-tool.interface.js +1 -0
  188. package/build-esm/_modules/ai/_models/ai-user-provider-config.control-model.js +31 -0
  189. package/build-esm/_modules/ai/_modules/anthropic/_collections/aai-models.const.js +130 -0
  190. package/build-esm/_modules/ai/_modules/anthropic/_enums/aai-model.enum.js +17 -0
  191. package/build-esm/_modules/ai/_modules/anthropic/_models/aai-call-settings.control-model.js +23 -0
  192. package/build-esm/_modules/ai/_modules/anthropic/_models/aai-client-options.interface.js +1 -0
  193. package/build-esm/_modules/ai/_modules/anthropic/_models/aai-settings.control-model.js +25 -0
  194. package/build-esm/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.js +22 -0
  195. package/build-esm/_modules/ai/_modules/anthropic/index.js +9 -0
  196. package/build-esm/_modules/ai/_modules/document-ai/_models/dai-embedding-info.interface.js +1 -0
  197. package/build-esm/_modules/ai/_modules/document-ai/_models/dai-vector-search-params.interface.js +1 -0
  198. package/build-esm/_modules/ai/_modules/document-ai/index.js +3 -0
  199. package/build-esm/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js +38 -0
  200. package/build-esm/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.js +7 -0
  201. package/build-esm/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.js +21 -0
  202. package/build-esm/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.js +1 -0
  203. package/build-esm/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.js +24 -0
  204. package/build-esm/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.js +22 -0
  205. package/build-esm/_modules/ai/_modules/fdp-ai/index.js +9 -0
  206. package/build-esm/_modules/ai/_modules/google-ai/_collections/gai-models.const.js +155 -0
  207. package/build-esm/_modules/ai/_modules/google-ai/_enums/gai-model.enum.js +14 -0
  208. package/build-esm/_modules/ai/_modules/google-ai/_models/gai-call-settings.control-model.js +23 -0
  209. package/build-esm/_modules/ai/_modules/google-ai/_models/gai-client-options.interface.js +1 -0
  210. package/build-esm/_modules/ai/_modules/google-ai/_models/gai-settings.control-model.js +25 -0
  211. package/build-esm/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.js +22 -0
  212. package/build-esm/_modules/ai/_modules/google-ai/index.js +9 -0
  213. package/build-esm/_modules/ai/_modules/local-ai/_collections/lai-models.const.js +57 -0
  214. package/build-esm/_modules/ai/_modules/local-ai/_enums/lai-model.enum.js +5 -0
  215. package/build-esm/_modules/ai/_modules/local-ai/_models/lai-call-settings.control-model.js +19 -0
  216. package/build-esm/_modules/ai/_modules/local-ai/_models/lai-client-options.interface.js +1 -0
  217. package/build-esm/_modules/ai/_modules/local-ai/_models/lai-settings.control-model.js +22 -0
  218. package/build-esm/_modules/ai/_modules/local-ai/index.js +8 -0
  219. package/build-esm/_modules/ai/_modules/open-ai/_collections/oai-embedding-model-dimensions.const.js +6 -0
  220. package/build-esm/_modules/ai/_modules/open-ai/_collections/oai-models.const.js +455 -0
  221. package/build-esm/_modules/ai/_modules/open-ai/_enums/oai-model.enum.js +146 -0
  222. package/build-esm/_modules/ai/_modules/open-ai/_models/oai-call-settings.control-model.js +23 -0
  223. package/build-esm/_modules/ai/_modules/open-ai/_models/oai-client-options.interface.js +1 -0
  224. package/build-esm/_modules/ai/_modules/open-ai/_models/oai-embedding-info.interface.js +1 -0
  225. package/build-esm/_modules/ai/_modules/open-ai/_models/oai-settings.control-model.js +25 -0
  226. package/build-esm/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.js +23 -0
  227. package/build-esm/_modules/ai/_modules/open-ai/index.js +19 -0
  228. package/build-esm/_modules/ai/index.js +34 -0
  229. package/build-esm/_modules/application-alert/_collections/application-alert-envelope.util.js +267 -0
  230. package/build-esm/_modules/application-alert/_enums/application-alert-evaluation-state.type-enum.js +6 -0
  231. package/build-esm/_modules/application-alert/_enums/application-alert-severity.type-enum.js +8 -0
  232. package/build-esm/_modules/application-alert/_models/application-alert.interface.js +1 -0
  233. package/build-esm/_modules/application-alert/index.js +4 -0
  234. package/build-esm/_modules/ci-tools/_enums/cit-ci-result-code.enum.js +9 -0
  235. package/build-esm/_modules/ci-tools/_enums/cit-ci-step-result-code.enum.js +9 -0
  236. package/build-esm/_modules/ci-tools/_models/cit-ci-result-info.data-models.js +63 -0
  237. package/build-esm/_modules/ci-tools/_models/cit-ci-step-result.interface.js +1 -0
  238. package/build-esm/_modules/ci-tools/index.js +6 -0
  239. package/build-esm/_modules/crypto/_collections/crypto-v1.util.js +199 -0
  240. package/build-esm/_modules/crypto/_collections/crypto-v2.util.js +273 -0
  241. package/build-esm/_modules/crypto/_collections/crypto-v4.util.js +605 -0
  242. package/build-esm/_modules/crypto/_collections/crypto.util.js +651 -0
  243. package/build-esm/_modules/crypto/_models/artifact-signature.interface.js +1 -0
  244. package/build-esm/_modules/crypto/_services/artifact-signature.control-service.js +276 -0
  245. package/build-esm/_modules/crypto/index.js +11 -0
  246. package/build-esm/_modules/custom-data/_collections/cud-module-settings.const.js +18 -0
  247. package/build-esm/_modules/custom-data/_models/cud.data-model.js +30 -0
  248. package/build-esm/_modules/custom-data/index.js +4 -0
  249. package/build-esm/_modules/data-handler/_models/data-handler-settings.control-model.js +78 -0
  250. package/build-esm/_modules/data-handler/_models/data-handler.control-model.js +386 -0
  251. package/build-esm/_modules/data-handler/_models/data-list-handler-settings.control-model.js +11 -0
  252. package/build-esm/_modules/data-handler/_models/data-list-handler.control-model.js +222 -0
  253. package/build-esm/_modules/data-handler/_models/data-search-handler-settings.control-model.js +25 -0
  254. package/build-esm/_modules/data-handler/_models/data-search-handler.control-model.js +334 -0
  255. package/build-esm/_modules/data-handler/_models/list-collector-data-handler-settings.control-model.js +12 -0
  256. package/build-esm/_modules/data-handler/_models/list-collector-data-handler.control-model.js +243 -0
  257. package/build-esm/_modules/data-handler/index.js +9 -0
  258. package/build-esm/_modules/deployment/_collections/atomic-rollback-manifest.util.js +348 -0
  259. package/build-esm/_modules/deployment/_models/atomic-rollback-manifest.interface.js +1 -0
  260. package/build-esm/_modules/deployment/index.js +2 -0
  261. package/build-esm/_modules/game/_collections/audio-mixer.util.js +109 -0
  262. package/build-esm/_modules/game/_collections/audio-scale.util.js +100 -0
  263. package/build-esm/_modules/game/_enums/audio-channel.enum.js +21 -0
  264. package/build-esm/_modules/game/_models/audio-mixer-config.interface.js +1 -0
  265. package/build-esm/_modules/game/_models/audio-mixer-settings.interface.js +1 -0
  266. package/build-esm/_modules/game/_models/audio-mixer-state.interface.js +1 -0
  267. package/build-esm/_modules/game/_models/audio-mixer.control-model.js +337 -0
  268. package/build-esm/_modules/game/_models/audio-scale.interface.js +1 -0
  269. package/build-esm/_modules/game/_models/flying-effect.control-model.js +212 -0
  270. package/build-esm/_modules/game/_models/flying-effect.interface.js +1 -0
  271. package/build-esm/_modules/game/_models/seeded-random-registry.control-model.js +124 -0
  272. package/build-esm/_modules/game/_models/seeded-random-registry.interface.js +1 -0
  273. package/build-esm/_modules/game/_models/seeded-random-state.interface.js +1 -0
  274. package/build-esm/_modules/game/_models/seeded-random.control-model.js +261 -0
  275. package/build-esm/_modules/game/index.js +17 -0
  276. package/build-esm/_modules/location/_collections/assets/country-codes-ISO-3166.json +3239 -0
  277. package/build-esm/_modules/location/_collections/assets/country-divisions-ISO-3166-all-list.json +19036 -0
  278. package/build-esm/_modules/location/_collections/assets/country-phone-codes.json +1202 -0
  279. package/build-esm/_modules/location/_collections/loc-country-divisions.const.js +3 -0
  280. package/build-esm/_modules/location/_collections/loc-country-isos.const.js +2 -0
  281. package/build-esm/_modules/location/_collections/loc-regions.util.js +107 -0
  282. package/build-esm/_modules/location/_collections/loc.util.js +56 -0
  283. package/build-esm/_modules/location/_enums/loc-region.enum.js +11 -0
  284. package/build-esm/_modules/location/_enums/loc-sub-region.enum.js +23 -0
  285. package/build-esm/_modules/location/_enums/loc-subdivision-region-type.enum.js +45 -0
  286. package/build-esm/_modules/location/_models/loc-coordinates.interface.js +1 -0
  287. package/build-esm/_modules/location/_models/loc-country-division.interface.js +1 -0
  288. package/build-esm/_modules/location/_models/loc-country-iso.interface.js +1 -0
  289. package/build-esm/_modules/location/_models/loc-country-phone-code.interface.js +1 -0
  290. package/build-esm/_modules/location/_models/loc-division-collection.interface.js +1 -0
  291. package/build-esm/_modules/location/_models/loc-division-region-data.interface.js +1 -0
  292. package/build-esm/_modules/location/_models/loc-geo-ip-location.interface.js +1 -0
  293. package/build-esm/_modules/location/index.js +17 -0
  294. package/build-esm/_modules/messaging/_collections/msg-module-settings.const.js +44 -0
  295. package/build-esm/_modules/messaging/_enums/msg-attachment-type.enum.js +21 -0
  296. package/build-esm/_modules/messaging/_enums/msg-conversation-type.enum.js +17 -0
  297. package/build-esm/_modules/messaging/_enums/msg-delivery-status.enum.js +15 -0
  298. package/build-esm/_modules/messaging/_enums/msg-event-key.enum.js +28 -0
  299. package/build-esm/_modules/messaging/_enums/msg-participant-role.enum.js +17 -0
  300. package/build-esm/_modules/messaging/_enums/msg-provider-type.enum.js +8 -0
  301. package/build-esm/_modules/messaging/_enums/msg-status.enum.js +21 -0
  302. package/build-esm/_modules/messaging/_enums/msg-type.enum.js +19 -0
  303. package/build-esm/_modules/messaging/_models/msg-attachment.interface.js +1 -0
  304. package/build-esm/_modules/messaging/_models/msg-conversation.data-model.js +80 -0
  305. package/build-esm/_modules/messaging/_models/msg-mention.interface.js +1 -0
  306. package/build-esm/_modules/messaging/_models/msg-message.data-model.js +102 -0
  307. package/build-esm/_modules/messaging/_models/msg-participant.interface.js +1 -0
  308. package/build-esm/_modules/messaging/_models/msg-reaction.interface.js +1 -0
  309. package/build-esm/_modules/messaging/_models/msg-thread-info.interface.js +1 -0
  310. package/build-esm/_modules/messaging/_modules/agent/_enums/agt-process-step-type.enum.js +27 -0
  311. package/build-esm/_modules/messaging/_modules/agent/_enums/agt-tool-status.enum.js +19 -0
  312. package/build-esm/_modules/messaging/_modules/agent/_models/agt-process-step.interface.js +1 -0
  313. package/build-esm/_modules/messaging/_modules/agent/_models/agt-reasoning-info.interface.js +1 -0
  314. package/build-esm/_modules/messaging/_modules/agent/_models/agt-tool-usage.interface.js +1 -0
  315. package/build-esm/_modules/messaging/_modules/agent/index.js +7 -0
  316. package/build-esm/_modules/messaging/index.js +25 -0
  317. package/build-esm/_modules/ngx-models/_collections/angular-placeholders.js +1 -0
  318. package/build-esm/_modules/ngx-models/_collections/button-new-style-settings-presets.const.js +170 -0
  319. package/build-esm/_modules/ngx-models/_collections/dynamo-global.settings.js +88 -0
  320. package/build-esm/_modules/ngx-models/_enums/button-new/button-new-border-radius.enum.js +14 -0
  321. package/build-esm/_modules/ngx-models/_enums/button-new/button-new-icon-style-type.enum.js +12 -0
  322. package/build-esm/_modules/ngx-models/_enums/button-new/button-new-size.enum.js +15 -0
  323. package/build-esm/_modules/ngx-models/_enums/button-new/button-new-style-type.enum.js +17 -0
  324. package/build-esm/_modules/ngx-models/_enums/button-type.enum.js +35 -0
  325. package/build-esm/_modules/ngx-models/_enums/checkbox-label-position.enum.js +8 -0
  326. package/build-esm/_modules/ngx-models/_enums/container-type.enum.js +11 -0
  327. package/build-esm/_modules/ngx-models/_enums/errors/error-level.enum.js +14 -0
  328. package/build-esm/_modules/ngx-models/_enums/errors/error-notification-color.enum.js +14 -0
  329. package/build-esm/_modules/ngx-models/_enums/errors/error-ui-mode.enum.js +14 -0
  330. package/build-esm/_modules/ngx-models/_enums/field-appearance.enum.js +13 -0
  331. package/build-esm/_modules/ngx-models/_enums/field-type.enum.js +49 -0
  332. package/build-esm/_modules/ngx-models/_enums/file-type.enum.js +12 -0
  333. package/build-esm/_modules/ngx-models/_enums/flex/flex-layout-align.enum.js +21 -0
  334. package/build-esm/_modules/ngx-models/_enums/flex/flex-layout.enum.js +6 -0
  335. package/build-esm/_modules/ngx-models/_enums/form-access.enum.js +9 -0
  336. package/build-esm/_modules/ngx-models/_enums/form-reset-data.enum.js +12 -0
  337. package/build-esm/_modules/ngx-models/_enums/form-store-on.enum.js +8 -0
  338. package/build-esm/_modules/ngx-models/_enums/forms-new/field-new-validator-type.enum.js +21 -0
  339. package/build-esm/_modules/ngx-models/_enums/frames/header-item-type.enum.js +16 -0
  340. package/build-esm/_modules/ngx-models/_enums/frames/header-position.enum.js +11 -0
  341. package/build-esm/_modules/ngx-models/_enums/frames/side-nav-badge-color.enum.js +14 -0
  342. package/build-esm/_modules/ngx-models/_enums/html/input-types.enum.js +26 -0
  343. package/build-esm/_modules/ngx-models/_enums/material-color.enum.js +14 -0
  344. package/build-esm/_modules/ngx-models/_enums/material-tooltip-position.enum.js +13 -0
  345. package/build-esm/_modules/ngx-models/_enums/preconfigured-field-type.enum.js +8 -0
  346. package/build-esm/_modules/ngx-models/_enums/storage-type.enum.js +13 -0
  347. package/build-esm/_modules/ngx-models/_enums/validator-type.enum.js +7 -0
  348. package/build-esm/_modules/ngx-models/_enums/voice/audio-mime-type.enum.js +15 -0
  349. package/build-esm/_modules/ngx-models/_enums/voice/voice-provider-type.enum.js +32 -0
  350. package/build-esm/_modules/ngx-models/_enums/voice/voice-recorder-state.enum.js +21 -0
  351. package/build-esm/_modules/ngx-models/_models/control-models/button-new-style-settings.control-model.js +44 -0
  352. package/build-esm/_modules/ngx-models/_models/control-models/button-params.control-model.js +304 -0
  353. package/build-esm/_modules/ngx-models/_models/control-models/chat/chat-column-layout-settings.control-model.js +59 -0
  354. package/build-esm/_modules/ngx-models/_models/control-models/data-handler-settings.control-model.js +94 -0
  355. package/build-esm/_modules/ngx-models/_models/control-models/data-handler.control-model.js +407 -0
  356. package/build-esm/_modules/ngx-models/_models/control-models/errors/error-notification.control-model.js +43 -0
  357. package/build-esm/_modules/ngx-models/_models/control-models/errors/error-settings.control-model.js +64 -0
  358. package/build-esm/_modules/ngx-models/_models/control-models/errors/errors-settings.control-model.js +52 -0
  359. package/build-esm/_modules/ngx-models/_models/control-models/field-settings.control-model.js +207 -0
  360. package/build-esm/_modules/ngx-models/_models/control-models/form-settings.control-model.js +275 -0
  361. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/checkbox-field-new-settings.control-model.js +29 -0
  362. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/color-picker-field-new-settings.control-model.js +36 -0
  363. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/date-field-new-settings.control-model.js +31 -0
  364. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/date-range-field-new-settings.control-model.js +46 -0
  365. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/datetime-field-new-settings.control-model.js +38 -0
  366. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/datetime-range-field-new-settings.control-model.js +48 -0
  367. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/emoji-picker-field-new-settings.control-model.js +21 -0
  368. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/field-new-settings.control-model.js +91 -0
  369. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/field-new-types.js +1 -0
  370. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/form-new-settings.control-model.js +39 -0
  371. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/icon-picker-field-new-settings.control-model.js +39 -0
  372. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/index.js +23 -0
  373. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/multiselect-field-new-settings.control-model.js +31 -0
  374. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/number-field-new-settings.control-model.js +29 -0
  375. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/password-field-new-settings.control-model.js +51 -0
  376. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/picker-field-new-option.interface.js +1 -0
  377. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/radio-select-field-new-settings.control-model.js +38 -0
  378. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/select-field-new-settings.control-model.js +35 -0
  379. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/slider-field-new-settings.control-model.js +50 -0
  380. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/slider-range-field-new-settings.control-model.js +47 -0
  381. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/text-field-new-settings.control-model.js +35 -0
  382. package/build-esm/_modules/ngx-models/_models/control-models/forms-new/textarea-field-new-settings.control-model.js +27 -0
  383. package/build-esm/_modules/ngx-models/_models/control-models/frames/header-item-settings.control-model.js +44 -0
  384. package/build-esm/_modules/ngx-models/_models/control-models/frames/main-frame-settings.control-model.js +56 -0
  385. package/build-esm/_modules/ngx-models/_models/control-models/frames/side-nav-item-settings.control-model.js +58 -0
  386. package/build-esm/_modules/ngx-models/_models/control-models/frames/side-nav-settings.control-model.js +38 -0
  387. package/build-esm/_modules/ngx-models/_models/control-models/select.control-model.js +27 -0
  388. package/build-esm/_modules/ngx-models/_models/control-models/signal-data-list-handler-settings.control-model.js +23 -0
  389. package/build-esm/_modules/ngx-models/_models/control-models/signal-data-search-handler-settings.control-model.js +25 -0
  390. package/build-esm/_modules/ngx-models/_models/control-models/signal-list-collector-data-handler-settings.control-model.js +12 -0
  391. package/build-esm/_modules/ngx-models/_models/control-models/voice/voice-providers-settings.control-model.js +22 -0
  392. package/build-esm/_modules/ngx-models/_models/control-models/voice/voice-record-button-settings.control-model.js +91 -0
  393. package/build-esm/_modules/ngx-models/_models/control-models/voice/voice-recorder-settings.control-model.js +42 -0
  394. package/build-esm/_modules/ngx-models/_models/interfaces/button-new-settings.interface.js +1 -0
  395. package/build-esm/_modules/ngx-models/_models/interfaces/confirm-settings.interface.js +1 -0
  396. package/build-esm/_modules/ngx-models/_models/interfaces/global-settings.interface.js +1 -0
  397. package/build-esm/_modules/ngx-models/_models/interfaces/select-options-custom-constructor.interface.js +1 -0
  398. package/build-esm/_modules/ngx-models/_models/interfaces/storage.service.js +40 -0
  399. package/build-esm/_modules/ngx-models/_models/interfaces/voice/speak-options.interface.js +1 -0
  400. package/build-esm/_modules/ngx-models/_models/interfaces/voice/speak-result.interface.js +1 -0
  401. package/build-esm/_modules/ngx-models/_models/interfaces/voice/transcribe-options.interface.js +1 -0
  402. package/build-esm/_modules/ngx-models/_models/interfaces/voice/transcribe-result.interface.js +1 -0
  403. package/build-esm/_modules/ngx-models/_models/interfaces/voice/voice-profile.interface.js +1 -0
  404. package/build-esm/_modules/ngx-models/_models/interfaces/voice/voice-provider-init.interface.js +1 -0
  405. package/build-esm/_modules/ngx-models/_utils/shared.service.js +407 -0
  406. package/build-esm/_modules/ngx-models/index.js +89 -0
  407. package/build-esm/_modules/operation-control/_collections/operation-lease.util.js +323 -0
  408. package/build-esm/_modules/operation-control/_enums/operation-decision-code.type-enum.js +22 -0
  409. package/build-esm/_modules/operation-control/_enums/operation-state.type-enum.js +9 -0
  410. package/build-esm/_modules/operation-control/_models/operation-lease.interface.js +1 -0
  411. package/build-esm/_modules/operation-control/index.js +4 -0
  412. package/build-esm/_modules/pipe/_collections/pip-transforms.const.js +32 -0
  413. package/build-esm/_modules/pipe/_collections/utils/pip-country-pipe.util.js +29 -0
  414. package/build-esm/_modules/pipe/_collections/utils/pip-custom-pipe.util.js +22 -0
  415. package/build-esm/_modules/pipe/_collections/utils/pip-division-pipe.util.js +21 -0
  416. package/build-esm/_modules/pipe/_collections/utils/pip-json-pipe.util.js +18 -0
  417. package/build-esm/_modules/pipe/_collections/utils/pip-list-pipe.util.js +19 -0
  418. package/build-esm/_modules/pipe/_collections/utils/pip-multi-pipe-pipe.util.js +164 -0
  419. package/build-esm/_modules/pipe/_collections/utils/pip-obj-key-pipe.util.js +16 -0
  420. package/build-esm/_modules/pipe/_collections/utils/pip-range-pipe.util.js +64 -0
  421. package/build-esm/_modules/pipe/_collections/utils/pip-region-pipe.util.js +22 -0
  422. package/build-esm/_modules/pipe/_collections/utils/pip-replace-pipe.util.js +15 -0
  423. package/build-esm/_modules/pipe/_collections/utils/pip-slider-pipe.util.js +26 -0
  424. package/build-esm/_modules/pipe/_collections/utils/pip-smart-replace-pipe.util.js +40 -0
  425. package/build-esm/_modules/pipe/_enums/pip-range-pipe-setting.enum.js +14 -0
  426. package/build-esm/_modules/pipe/_enums/pip.enum.js +48 -0
  427. package/build-esm/_modules/pipe/_models/pip-multi-pipe-settings.type.js +1 -0
  428. package/build-esm/_modules/pipe/_models/pip-transforms.interface.js +1 -0
  429. package/build-esm/_modules/pipe/index.js +22 -0
  430. package/build-esm/_modules/request-safety/_collections/request-safety-inspector.util.js +317 -0
  431. package/build-esm/_modules/request-safety/_enums/request-safety-finding.type-enum.js +39 -0
  432. package/build-esm/_modules/request-safety/_models/request-safety.interface.js +1 -0
  433. package/build-esm/_modules/request-safety/index.js +3 -0
  434. package/build-esm/_modules/sandbox-runtime/_collections/zero-egress-receipt.util.js +154 -0
  435. package/build-esm/_modules/sandbox-runtime/_collections/zero-egress-result-code.const.js +36 -0
  436. package/build-esm/_modules/sandbox-runtime/_enums/zero-egress-outcome.type-enum.js +11 -0
  437. package/build-esm/_modules/sandbox-runtime/_models/zero-egress-receipt.interface.js +1 -0
  438. package/build-esm/_modules/sandbox-runtime/index.js +4 -0
  439. package/build-esm/_modules/security/_collections/stored-secret.util.js +68 -0
  440. package/build-esm/_modules/security/_models/stored-secret.control-model.js +52 -0
  441. package/build-esm/_modules/security/index.js +7 -0
  442. package/build-esm/_modules/socket/_enums/sck-event-key.enum.js +18 -0
  443. package/build-esm/_modules/socket/_models/sck-client-params.control-model.js +47 -0
  444. package/build-esm/_modules/socket/_models/sck-socket-event.control-model.js +133 -0
  445. package/build-esm/_modules/socket/_services/sck-client.service-base.js +314 -0
  446. package/build-esm/_modules/socket/index.js +7 -0
  447. package/build-esm/_modules/state-machine/_models/state-machine-config.interface.js +1 -0
  448. package/build-esm/_modules/state-machine/_models/state-machine-event.interface.js +1 -0
  449. package/build-esm/_modules/state-machine/_models/state-machine.control-model.js +262 -0
  450. package/build-esm/_modules/state-machine/_models/state-transition-result.interface.js +1 -0
  451. package/build-esm/_modules/state-machine/_models/state-transition.interface.js +1 -0
  452. package/build-esm/_modules/state-machine/index.js +6 -0
  453. package/build-esm/_modules/test/_collections/tst-module-settings.const.js +38 -0
  454. package/build-esm/_modules/test/index.js +2 -0
  455. package/build-esm/_modules/usage/_collections/usg-module-settings.const.js +16 -0
  456. package/build-esm/_modules/usage/_models/usg-action.control-model.js +25 -0
  457. package/build-esm/_modules/usage/_models/usg-daily-usage-data.control-model.js +30 -0
  458. package/build-esm/_modules/usage/_models/usg-data.control-model.js +30 -0
  459. package/build-esm/_modules/usage/_models/usg-session.data-model.js +60 -0
  460. package/build-esm/_modules/usage/index.js +7 -0
  461. package/build-esm/index.js +108 -0
  462. package/package.json +86 -85
@@ -0,0 +1,348 @@
1
+ import * as CryptoJS from 'crypto-js';
2
+ const dyfm_exactManifestKeys = [
3
+ 'authority',
4
+ 'configuration',
5
+ 'contractVersion',
6
+ 'environment',
7
+ 'images',
8
+ 'operationId',
9
+ 'postChecks',
10
+ 'sourceRevision',
11
+ 'targetChecksum',
12
+ ].join(',');
13
+ const dyfm_exactAuthorityKeys = 'evidenceId,principalId';
14
+ const dyfm_exactConfigurationKeys = 'compatibilityVersion,policyChecksum,revision,sha256';
15
+ const dyfm_exactImageKeys = 'digest,immutableReference,mutableReference,service,version';
16
+ const dyfm_exactPostCheckKeys = 'checkId,endpoint,expectedProbeContract,service';
17
+ const dyfm_revisionPattern = /^[0-9a-f]{40}$/u;
18
+ const dyfm_sha256Pattern = /^[0-9a-f]{64}$/u;
19
+ const dyfm_digestPattern = /^sha256:[0-9a-f]{64}$/u;
20
+ const dyfm_operationPattern = /^rollback_[0-9a-f]{32}$/u;
21
+ const dyfm_safeIdPattern = /^[a-z0-9][a-z0-9._-]{0,127}$/u;
22
+ const dyfm_versionPattern = /^[0-9A-Za-z][0-9A-Za-z._-]{0,63}$/u;
23
+ const dyfm_compatibilityPattern = /^[a-z0-9][a-z0-9-]{1,63}\/[1-9][0-9]{0,8}$/u;
24
+ const dyfm_contractPattern = /^[a-z0-9][a-z0-9-]{1,63}\/[1-9][0-9]{0,8}$/u;
25
+ const dyfm_imageReferencePattern = /^(?:[a-z0-9]+(?:[._-][a-z0-9]+)*(?::[0-9]+)?\/)+[a-z0-9]+(?:[._-][a-z0-9]+)*:[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/u;
26
+ /** Determines whether an unknown value is a non-array object. */
27
+ function dyfm_isRecord(value) {
28
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
29
+ }
30
+ /** Compares an object's sorted keys with one exact key signature. */
31
+ function dyfm_hasExactKeys(value, expected) {
32
+ return Object.keys(value).sort().join(',') === expected;
33
+ }
34
+ /** Narrows a value to a deployment environment supported by the contract. */
35
+ function dyfm_isEnvironment(value) {
36
+ return value === 'test' || value === 'production';
37
+ }
38
+ /** Allows bounded HTTPS probes and service-local HTTP probes without credentials or query data. */
39
+ function dyfm_isSafePostCheckEndpoint(value, service) {
40
+ if (value.length > 2048) {
41
+ return false;
42
+ }
43
+ try {
44
+ const endpoint = new URL(value);
45
+ if (endpoint.username
46
+ || endpoint.password
47
+ || endpoint.search
48
+ || endpoint.hash
49
+ || !/^\/[A-Za-z0-9/_-]{0,127}$/u.test(endpoint.pathname)) {
50
+ return false;
51
+ }
52
+ if (endpoint.protocol === 'https:') {
53
+ return true;
54
+ }
55
+ return endpoint.protocol === 'http:'
56
+ && [service, '127.0.0.1', 'localhost'].includes(endpoint.hostname);
57
+ }
58
+ catch {
59
+ return false;
60
+ }
61
+ }
62
+ /** Parses bounded deployment authority evidence without returning rejected content. */
63
+ function dyfm_parseAuthority(value, gapCodes) {
64
+ if (!dyfm_isRecord(value) || !dyfm_hasExactKeys(value, dyfm_exactAuthorityKeys)) {
65
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|AUTHORITY_SHAPE_INVALID');
66
+ return undefined;
67
+ }
68
+ if (typeof value.principalId !== 'string' || !dyfm_safeIdPattern.test(value.principalId)) {
69
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|AUTHORITY_PRINCIPAL_INVALID');
70
+ }
71
+ if (typeof value.evidenceId !== 'string' || !dyfm_sha256Pattern.test(value.evidenceId)) {
72
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|AUTHORITY_EVIDENCE_INVALID');
73
+ }
74
+ if (typeof value.principalId !== 'string'
75
+ || typeof value.evidenceId !== 'string'
76
+ || gapCodes.some((code) => code.startsWith('FDP|ATOMIC_ROLLBACK|AUTHORITY_'))) {
77
+ return undefined;
78
+ }
79
+ return { principalId: value.principalId, evidenceId: value.evidenceId };
80
+ }
81
+ /** Parses an exact configuration and compatibility target. */
82
+ function dyfm_parseConfiguration(value, gapCodes) {
83
+ if (!dyfm_isRecord(value) || !dyfm_hasExactKeys(value, dyfm_exactConfigurationKeys)) {
84
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|CONFIGURATION_SHAPE_INVALID');
85
+ return undefined;
86
+ }
87
+ if (typeof value.revision !== 'string' || !dyfm_revisionPattern.test(value.revision)) {
88
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|CONFIGURATION_REVISION_INVALID');
89
+ }
90
+ if (typeof value.sha256 !== 'string' || !dyfm_sha256Pattern.test(value.sha256)) {
91
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|CONFIGURATION_CHECKSUM_INVALID');
92
+ }
93
+ if (typeof value.compatibilityVersion !== 'string'
94
+ || !dyfm_compatibilityPattern.test(value.compatibilityVersion)) {
95
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|CONFIGURATION_COMPATIBILITY_INVALID');
96
+ }
97
+ if (typeof value.policyChecksum !== 'string' || !dyfm_sha256Pattern.test(value.policyChecksum)) {
98
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|CONFIGURATION_POLICY_CHECKSUM_INVALID');
99
+ }
100
+ if (typeof value.revision !== 'string'
101
+ || typeof value.sha256 !== 'string'
102
+ || typeof value.compatibilityVersion !== 'string'
103
+ || typeof value.policyChecksum !== 'string'
104
+ || gapCodes.some((code) => code.startsWith('FDP|ATOMIC_ROLLBACK|CONFIGURATION_'))) {
105
+ return undefined;
106
+ }
107
+ return {
108
+ revision: value.revision,
109
+ sha256: value.sha256,
110
+ compatibilityVersion: value.compatibilityVersion,
111
+ policyChecksum: value.policyChecksum,
112
+ };
113
+ }
114
+ /** Parses the complete immutable image promotion set. */
115
+ function dyfm_parseImages(value, gapCodes) {
116
+ if (!Array.isArray(value) || value.length < 1 || value.length > 16) {
117
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|IMAGE_SET_CARDINALITY_INVALID');
118
+ return [];
119
+ }
120
+ const images = [];
121
+ for (const candidate of value) {
122
+ if (!dyfm_isRecord(candidate) || !dyfm_hasExactKeys(candidate, dyfm_exactImageKeys)) {
123
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|IMAGE_SHAPE_INVALID');
124
+ continue;
125
+ }
126
+ const service = typeof candidate.service === 'string' ? candidate.service : undefined;
127
+ const version = typeof candidate.version === 'string' ? candidate.version : undefined;
128
+ const immutableReference = typeof candidate.immutableReference === 'string'
129
+ ? candidate.immutableReference
130
+ : undefined;
131
+ const mutableReference = typeof candidate.mutableReference === 'string'
132
+ ? candidate.mutableReference
133
+ : undefined;
134
+ const digest = typeof candidate.digest === 'string' ? candidate.digest : undefined;
135
+ if (!service || !dyfm_safeIdPattern.test(service)) {
136
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|IMAGE_SERVICE_INVALID');
137
+ continue;
138
+ }
139
+ if (!version || !dyfm_versionPattern.test(version)) {
140
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|IMAGE_VERSION_INVALID|${service}`);
141
+ continue;
142
+ }
143
+ if (!immutableReference
144
+ || immutableReference.length > 512
145
+ || !dyfm_imageReferencePattern.test(immutableReference)
146
+ || !immutableReference.endsWith(`/${service}:release-${version}`)) {
147
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|IMAGE_IMMUTABLE_REFERENCE_INVALID|${service}`);
148
+ continue;
149
+ }
150
+ if (!mutableReference
151
+ || mutableReference.length > 512
152
+ || !dyfm_imageReferencePattern.test(mutableReference)
153
+ || !mutableReference.endsWith(`/${service}:release`)) {
154
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|IMAGE_MUTABLE_REFERENCE_INVALID|${service}`);
155
+ continue;
156
+ }
157
+ if (immutableReference.slice(0, immutableReference.lastIndexOf(':'))
158
+ !== mutableReference.slice(0, mutableReference.lastIndexOf(':'))) {
159
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|IMAGE_REPOSITORY_MISMATCH|${service}`);
160
+ continue;
161
+ }
162
+ if (!digest || !dyfm_digestPattern.test(digest)) {
163
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|IMAGE_DIGEST_INVALID|${service}`);
164
+ continue;
165
+ }
166
+ images.push({
167
+ service: service,
168
+ version: version,
169
+ immutableReference: immutableReference,
170
+ mutableReference: mutableReference,
171
+ digest: digest,
172
+ });
173
+ }
174
+ const services = images.map((image) => image.service);
175
+ if (new Set(services).size !== services.length) {
176
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|IMAGE_SERVICE_DUPLICATED');
177
+ }
178
+ return images;
179
+ }
180
+ /** Parses bounded post-deployment checks targeting manifest services only. */
181
+ function dyfm_parsePostChecks(value, gapCodes) {
182
+ if (!Array.isArray(value) || value.length < 1 || value.length > 32) {
183
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|POST_CHECK_SET_CARDINALITY_INVALID');
184
+ return [];
185
+ }
186
+ const postChecks = [];
187
+ for (const candidate of value) {
188
+ if (!dyfm_isRecord(candidate) || !dyfm_hasExactKeys(candidate, dyfm_exactPostCheckKeys)) {
189
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|POST_CHECK_SHAPE_INVALID');
190
+ continue;
191
+ }
192
+ const checkId = typeof candidate.checkId === 'string' ? candidate.checkId : undefined;
193
+ const service = typeof candidate.service === 'string' ? candidate.service : undefined;
194
+ const endpoint = typeof candidate.endpoint === 'string' ? candidate.endpoint : undefined;
195
+ const expectedProbeContract = typeof candidate.expectedProbeContract === 'string'
196
+ ? candidate.expectedProbeContract
197
+ : undefined;
198
+ if (!checkId || !dyfm_safeIdPattern.test(checkId)) {
199
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|POST_CHECK_ID_INVALID');
200
+ continue;
201
+ }
202
+ if (!service || !dyfm_safeIdPattern.test(service)) {
203
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|POST_CHECK_SERVICE_INVALID|${checkId}`);
204
+ continue;
205
+ }
206
+ if (!endpoint || !dyfm_isSafePostCheckEndpoint(endpoint, service)) {
207
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|POST_CHECK_ENDPOINT_INVALID|${checkId}`);
208
+ continue;
209
+ }
210
+ if (!expectedProbeContract || !dyfm_contractPattern.test(expectedProbeContract)) {
211
+ gapCodes.push(`FDP|ATOMIC_ROLLBACK|POST_CHECK_CONTRACT_INVALID|${checkId}`);
212
+ continue;
213
+ }
214
+ postChecks.push({
215
+ checkId: checkId,
216
+ service: service,
217
+ endpoint: endpoint,
218
+ expectedProbeContract: expectedProbeContract,
219
+ });
220
+ }
221
+ if (new Set(postChecks.map((check) => check.checkId)).size
222
+ !== postChecks.length) {
223
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|POST_CHECK_ID_DUPLICATED');
224
+ }
225
+ return postChecks;
226
+ }
227
+ /** Creates the exact, insertion-order-independent JSON value hashed by every producer and consumer. */
228
+ function dyfm_canonicalTarget(manifest) {
229
+ return JSON.stringify({
230
+ contractVersion: manifest.contractVersion,
231
+ operationId: manifest.operationId,
232
+ environment: manifest.environment,
233
+ authority: {
234
+ principalId: manifest.authority.principalId,
235
+ evidenceId: manifest.authority.evidenceId,
236
+ },
237
+ sourceRevision: manifest.sourceRevision,
238
+ configuration: {
239
+ revision: manifest.configuration.revision,
240
+ sha256: manifest.configuration.sha256,
241
+ compatibilityVersion: manifest.configuration.compatibilityVersion,
242
+ policyChecksum: manifest.configuration.policyChecksum,
243
+ },
244
+ images: [...manifest.images].sort((left, right) => left.service
245
+ .localeCompare(right.service)).map((image) => ({
246
+ service: image.service,
247
+ version: image.version,
248
+ immutableReference: image.immutableReference,
249
+ mutableReference: image.mutableReference,
250
+ digest: image.digest,
251
+ })),
252
+ postChecks: [...manifest.postChecks].sort((left, right) => left
253
+ .checkId.localeCompare(right.checkId)).map((check) => ({
254
+ checkId: check.checkId,
255
+ service: check.service,
256
+ endpoint: check.endpoint,
257
+ expectedProbeContract: check.expectedProbeContract,
258
+ })),
259
+ });
260
+ }
261
+ /** Canonical manifest checksum and strict content-free local validation. */
262
+ export class DyFM_AtomicRollbackManifest_Util {
263
+ /** Calculates the canonical SHA-256 target checksum for a typed manifest. */
264
+ static computeTargetChecksum(manifest) {
265
+ return CryptoJS.SHA256(dyfm_canonicalTarget(manifest)).toString();
266
+ }
267
+ /** Validates an unknown manifest without reflecting rejected content. */
268
+ static validate(value) {
269
+ if (!dyfm_isRecord(value) || !dyfm_hasExactKeys(value, dyfm_exactManifestKeys)) {
270
+ return {
271
+ contractVersion: 'fdp-atomic-rollback-local-validation/1',
272
+ valid: false,
273
+ environment: 'invalid',
274
+ operationId: 'invalid',
275
+ targetChecksum: 'invalid',
276
+ serviceCount: 0,
277
+ postCheckCount: 0,
278
+ gapCodes: ['FDP|ATOMIC_ROLLBACK|MANIFEST_SHAPE_INVALID'],
279
+ };
280
+ }
281
+ const gapCodes = [];
282
+ if (value.contractVersion !== 'fdp-atomic-rollback-manifest/1') {
283
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|CONTRACT_VERSION_INVALID');
284
+ }
285
+ if (typeof value.operationId !== 'string' || !dyfm_operationPattern.test(value.operationId)) {
286
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|OPERATION_ID_INVALID');
287
+ }
288
+ if (!dyfm_isEnvironment(value.environment)) {
289
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|ENVIRONMENT_INVALID');
290
+ }
291
+ if (typeof value.sourceRevision !== 'string' || !dyfm_revisionPattern.test(value.sourceRevision)) {
292
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|SOURCE_REVISION_INVALID');
293
+ }
294
+ const authority = dyfm_parseAuthority(value.authority, gapCodes);
295
+ const configuration = dyfm_parseConfiguration(value.configuration, gapCodes);
296
+ const images = dyfm_parseImages(value.images, gapCodes);
297
+ const postChecks = dyfm_parsePostChecks(value.postChecks, gapCodes);
298
+ const imageServices = new Set(images.map((image) => image.service));
299
+ if (postChecks.some((check) => !imageServices.has(check.service))) {
300
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|POST_CHECK_SERVICE_NOT_TARGETED');
301
+ }
302
+ if (typeof value.targetChecksum !== 'string' || !dyfm_sha256Pattern.test(value.targetChecksum)) {
303
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|TARGET_CHECKSUM_INVALID');
304
+ }
305
+ let manifest;
306
+ if (!gapCodes.length
307
+ && typeof value.operationId === 'string'
308
+ && dyfm_isEnvironment(value.environment)
309
+ && authority
310
+ && typeof value.sourceRevision === 'string'
311
+ && configuration
312
+ && images.length > 0
313
+ && postChecks.length > 0
314
+ && typeof value.targetChecksum === 'string') {
315
+ manifest = {
316
+ contractVersion: 'fdp-atomic-rollback-manifest/1',
317
+ operationId: value.operationId,
318
+ environment: value.environment,
319
+ authority: authority,
320
+ sourceRevision: value.sourceRevision,
321
+ configuration: configuration,
322
+ images: images,
323
+ postChecks: postChecks,
324
+ targetChecksum: value.targetChecksum,
325
+ };
326
+ if (this.computeTargetChecksum(manifest) !== value.targetChecksum) {
327
+ gapCodes.push('FDP|ATOMIC_ROLLBACK|TARGET_CHECKSUM_MISMATCH');
328
+ manifest = undefined;
329
+ }
330
+ }
331
+ const normalizedGapCodes = [...new Set(gapCodes)].sort();
332
+ return {
333
+ contractVersion: 'fdp-atomic-rollback-local-validation/1',
334
+ valid: !normalizedGapCodes.length,
335
+ environment: dyfm_isEnvironment(value.environment) ? value.environment : 'invalid',
336
+ operationId: !normalizedGapCodes.length && typeof value.operationId === 'string'
337
+ ? value.operationId
338
+ : 'invalid',
339
+ targetChecksum: !normalizedGapCodes.length && typeof value.targetChecksum === 'string'
340
+ ? value.targetChecksum
341
+ : 'invalid',
342
+ serviceCount: images.length,
343
+ postCheckCount: postChecks.length,
344
+ gapCodes: normalizedGapCodes,
345
+ ...(manifest ? { manifest: manifest } : {}),
346
+ };
347
+ }
348
+ }
@@ -0,0 +1,2 @@
1
+ export * from './_collections/atomic-rollback-manifest.util';
2
+ export * from './_models/atomic-rollback-manifest.interface';
@@ -0,0 +1,109 @@
1
+ import { DyFM_AudioChannel } from '../_enums/audio-channel.enum';
2
+ /**
3
+ * Statikus util a jatek-audio mixer beallitasaihoz.
4
+ *
5
+ * Rendereles-agnosztikus es platform-fuggetlen: NINCS benne DOM, Web Audio, Angular vagy Node
6
+ * fuggoseg — a tenyleges lejatszast az `@futdevpro/ngx-dynamo` game-modulja (vagy a projekt sajat
7
+ * motorja) vegzi, ez csak a **modell + szamitas**.
8
+ *
9
+ * **Hasznalat:**
10
+ * ```typescript
11
+ * const settings: DyFM_AudioMixer_Settings = DyFM_AudioMixer_Util.merge(loadedFromSave);
12
+ * const volume: number = DyFM_AudioMixer_Util.getEffectiveVolume(settings, DyFM_AudioChannel.music);
13
+ * audioElement.volume = volume;
14
+ * ```
15
+ */
16
+ export class DyFM_AudioMixer_Util {
17
+ /** Alapertelmezett hangero minden csatornara (0..1). */
18
+ static defaultVolume = 0.8;
19
+ /**
20
+ * Az alapertelmezett mixer-beallitas. Minden hivas UJ objektumot ad vissza, hogy a
21
+ * hivo szabadon mutalhassa (nincs megosztott referencia).
22
+ */
23
+ static getDefaults() {
24
+ return {
25
+ master: this.defaultVolume,
26
+ music: this.defaultVolume,
27
+ ambience: this.defaultVolume,
28
+ effects: this.defaultVolume,
29
+ muted: false,
30
+ };
31
+ }
32
+ /**
33
+ * Egy hangero-erteket a 0..1 tartomanyba szorit. A nem-szamokat (NaN, undefined, null,
34
+ * nem-szam tipus) a `fallback`-re cseréli — igy egy serult save-payload sem tud NaN-t
35
+ * juttatni a lejatszoba (a `HTMLAudioElement.volume = NaN` dobna).
36
+ */
37
+ static clamp(value, fallback = DyFM_AudioMixer_Util.defaultVolume) {
38
+ if (typeof value !== 'number' || Number.isNaN(value)) {
39
+ return fallback;
40
+ }
41
+ if (value < 0) {
42
+ return 0;
43
+ }
44
+ if (1 < value) {
45
+ return 1;
46
+ }
47
+ return value;
48
+ }
49
+ /**
50
+ * Reszleges (vagy hianyzo) beallitas-objektumbol teljes, ervenyes settingset allit elo:
51
+ * a hianyzo mezoket a defaultbol veszi, a meglevoket 0..1-re szoritja.
52
+ *
53
+ * **Ez a migracios biztositek:** egy regi save-payload, ami meg nem ismerte az `ambience`
54
+ * csatornat, igy is betoltheto marad.
55
+ */
56
+ static merge(partial) {
57
+ const defaults = this.getDefaults();
58
+ if (!partial) {
59
+ return defaults;
60
+ }
61
+ return {
62
+ master: this.clamp(partial.master ?? defaults.master, defaults.master),
63
+ music: this.clamp(partial.music ?? defaults.music, defaults.music),
64
+ ambience: this.clamp(partial.ambience ?? defaults.ambience, defaults.ambience),
65
+ effects: this.clamp(partial.effects ?? defaults.effects, defaults.effects),
66
+ muted: partial.muted === true,
67
+ };
68
+ }
69
+ /**
70
+ * Egy csatorna EFFEKTIV hangereje: a csatorna sajat erteke szorozva a master-rel.
71
+ * Nemitas (`muted`) eseten mindig 0. A `master` csatornara a sajat erteket adja vissza
72
+ * (nem negyzetre emelve).
73
+ */
74
+ static getEffectiveVolume(settings, channel) {
75
+ const safe = this.merge(settings);
76
+ if (safe.muted) {
77
+ return 0;
78
+ }
79
+ if (channel === DyFM_AudioChannel.master) {
80
+ return safe.master;
81
+ }
82
+ return this.clamp(safe[channel] * safe.master);
83
+ }
84
+ /**
85
+ * Egy csatorna hangerejenek beallitasa — UJ settings-objektumot ad vissza (immutable update),
86
+ * hogy signal-/state-alapu tarolokban is biztonsagos legyen.
87
+ */
88
+ static withChannelVolume(settings, channel, volume) {
89
+ const next = this.merge(settings);
90
+ next[channel] = this.clamp(volume);
91
+ return next;
92
+ }
93
+ /** Nemitas beallitasa — UJ settings-objektumot ad vissza (immutable update). */
94
+ static withMuted(settings, muted) {
95
+ const next = this.merge(settings);
96
+ next.muted = muted === true;
97
+ return next;
98
+ }
99
+ /** Ket beallitas ertek szerinti egyezese (mentes-szukseg / change-detection dontesehez). */
100
+ static isEqual(a, b) {
101
+ const left = this.merge(a);
102
+ const right = this.merge(b);
103
+ return left.master === right.master
104
+ && left.music === right.music
105
+ && left.ambience === right.ambience
106
+ && left.effects === right.effects
107
+ && left.muted === right.muted;
108
+ }
109
+ }
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Skala-konverziok az audio-mixerhez: a projekt sajat szamabrazolasa (pl. `0-100` egesz)
3
+ * es a lejatszo API-k altal vart `0..1` kozott.
4
+ *
5
+ * **Miert statikus util:** nincs allapota — tiszta fuggvenyek, a `DyFM_Math` mintajara.
6
+ *
7
+ * **Hasznalat:**
8
+ * ```typescript
9
+ * const percent = DyFM_AudioScale_Util.getPercentScale();
10
+ * DyFM_AudioScale_Util.toUnit(72, percent); // 0.72 -> ezt varja a HTMLAudio / GainNode
11
+ * DyFM_AudioScale_Util.fromUnit(0.725, percent); // 73 -> ezt tarolja / mutatja a projekt
12
+ * ```
13
+ */
14
+ export class DyFM_AudioScale_Util {
15
+ /** Alapertelmezett hangero-arany (a skala maximumanak hanyada), ha nincs jobb ertek. */
16
+ static defaultRatio = 0.8;
17
+ /**
18
+ * A `0..1` lebegopontos skala — a Prototyper prototipusai (es a round-1
19
+ * `DyFM_AudioMixer_Settings`) ezt hasznaljak. Minden hivas UJ objektumot ad vissza, hogy a
20
+ * hivo szabadon mutalhassa.
21
+ */
22
+ static getUnitScale() {
23
+ return {
24
+ max: 1,
25
+ integer: false,
26
+ };
27
+ }
28
+ /**
29
+ * A `0-100` egesz skala — a Hero Coordinator ezt tarolja a localStorage-ban
30
+ * (`clampVolume` = `Math.round`). Minden hivas UJ objektumot ad vissza.
31
+ */
32
+ static getPercentScale() {
33
+ return {
34
+ max: 100,
35
+ integer: true,
36
+ };
37
+ }
38
+ /**
39
+ * Sajat skalan levo erteket `0..1`-re normalizal, es a tartomanyba szorit.
40
+ * Ervenytelen bemenet (NaN, nem-szam, null/undefined) eseten a `fallbackUnit`-ot adja —
41
+ * igy egy serult save-payload sem tud NaN-t juttatni a lejatszoba
42
+ * (`HTMLAudioElement.volume = NaN` dobna, a `GainNode.gain.value = NaN` elnemitana).
43
+ */
44
+ static toUnit(value, scale, fallbackUnit = DyFM_AudioScale_Util.defaultRatio) {
45
+ const max = this.getSafeMax(scale);
46
+ if (typeof value !== 'number' || Number.isNaN(value)) {
47
+ return this.clampUnit(fallbackUnit);
48
+ }
49
+ return this.clampUnit(value / max);
50
+ }
51
+ /**
52
+ * `0..1` erteket a sajat skalara alakit vissza. Egesz skalanal (`integer: true`) kerekit,
53
+ * igy a `0-100`-as UI-nak nem kell tortszamokkal dolgoznia.
54
+ */
55
+ static fromUnit(unit, scale) {
56
+ const max = this.getSafeMax(scale);
57
+ const safeUnit = typeof unit !== 'number' || Number.isNaN(unit)
58
+ ? 0
59
+ : this.clampUnit(unit);
60
+ const scaled = safeUnit * max;
61
+ return scale && scale.integer === true ? Math.round(scaled) : scaled;
62
+ }
63
+ /**
64
+ * Egy erteket a sajat skala `0..max` tartomanyaba szorit (egesz skalanal kerekit is).
65
+ *
66
+ * Ervenytelen bemenetre (NaN, nem-szam) a `fallbackScaleValue`-t adja — **a sajat skalan**.
67
+ * Alapertelmezesben `0`; a mixer viszont a csatorna DEFAULT-jat adja at, mert egy serult
68
+ * mentesbol jobb a hallhato alapertek, mint a nema 0 (a felhasznalo eszre sem venne).
69
+ */
70
+ static clampToScale(value, scale, fallbackScaleValue = 0) {
71
+ if (typeof value !== 'number' || Number.isNaN(value)) {
72
+ const safeFallback = typeof fallbackScaleValue === 'number'
73
+ && !Number.isNaN(fallbackScaleValue)
74
+ ? fallbackScaleValue
75
+ : 0;
76
+ return this.fromUnit(this.toUnit(safeFallback, scale, 0), scale);
77
+ }
78
+ return this.fromUnit(this.toUnit(value, scale, 0), scale);
79
+ }
80
+ /** Egy `0..1` erteket a tartomanyba szorit. */
81
+ static clampUnit(value) {
82
+ if (typeof value !== 'number' || Number.isNaN(value)) {
83
+ return 0;
84
+ }
85
+ if (value < 0) {
86
+ return 0;
87
+ }
88
+ return 1 < value ? 1 : value;
89
+ }
90
+ /**
91
+ * A skala maximuma vedve: a hianyzo / nem-pozitiv / NaN maximumot `1`-re cseréli, hogy a
92
+ * nullaval valo osztas es a NaN-terjedes kizart legyen.
93
+ */
94
+ static getSafeMax(scale) {
95
+ if (!scale || typeof scale.max !== 'number' || Number.isNaN(scale.max) || scale.max <= 0) {
96
+ return 1;
97
+ }
98
+ return scale.max;
99
+ }
100
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * A jatek-audio mixer **klasszikus** csatorna-keszlete.
3
+ *
4
+ * A Prototyper HAROM prototipusa (Room Cats / Cell Stage / Portalhold) egymastol fuggetlenul
5
+ * ugyanezt a negy csatornat vezette be — ez az enum az o kanonikus nevezektanuk.
6
+ *
7
+ * **FIGYELEM (2026-08-06 helyesbites):** ez NEM flotta-univerzalis. A **Hero Coordinator**
8
+ * csatornai `master` / `music` / **`dialog`** / **`interface`**, es `0-100` egeszet tarol.
9
+ * Ha a projekted csatorna-keszlete elter, NE ezt az enumot hasznald, hanem a
10
+ * `DyFM_AudioMixer_ControlModel`-t sajat config-gal (csatorna- es skala-agnosztikus).
11
+ *
12
+ * A `master` NEM onallo hangsav: minden csatorna effektiv hangereje a sajat erteke
13
+ * SZOROZVA a master-rel (lasd `DyFM_AudioMixer_Util.getEffectiveVolume`).
14
+ */
15
+ export var DyFM_AudioChannel;
16
+ (function (DyFM_AudioChannel) {
17
+ DyFM_AudioChannel["master"] = "master";
18
+ DyFM_AudioChannel["music"] = "music";
19
+ DyFM_AudioChannel["ambience"] = "ambience";
20
+ DyFM_AudioChannel["effects"] = "effects";
21
+ })(DyFM_AudioChannel || (DyFM_AudioChannel = {}));