@endge/core 1.2.5

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 (240) hide show
  1. package/ReadMe.md +21 -0
  2. package/dist/core.js +85019 -0
  3. package/dist/domain/data-source-graphql.d.ts +4 -0
  4. package/dist/domain/data-source-mock.d.ts +4 -0
  5. package/dist/domain/data-source-rest.d.ts +4 -0
  6. package/dist/domain/declare/jsx.d.ts +68 -0
  7. package/dist/domain/declare/scenario.d.ts +19 -0
  8. package/dist/domain/dependency-graph.d.ts +19 -0
  9. package/dist/domain/entities/action-flow/REndgeFlow.d.ts +27 -0
  10. package/dist/domain/entities/data/DataSource.d.ts +8 -0
  11. package/dist/domain/entities/data/DependencyEdge.d.ts +48 -0
  12. package/dist/domain/entities/data/DependencyGraph.d.ts +25 -0
  13. package/dist/domain/entities/data/DependencyNode.d.ts +30 -0
  14. package/dist/domain/entities/debug/MemoryStore.d.ts +34 -0
  15. package/dist/domain/entities/debug/tools/base.d.ts +5 -0
  16. package/dist/domain/entities/debug/tools/tree.d.ts +12 -0
  17. package/dist/domain/entities/diagnostics/DiagnosticsRecordStore.d.ts +33 -0
  18. package/dist/domain/entities/diagnostics/DiagnosticsScopeHandle.d.ts +21 -0
  19. package/dist/domain/entities/diagnostics/DiagnosticsSpan.d.ts +9 -0
  20. package/dist/domain/entities/diagnostics/DiagnosticsTrace.d.ts +9 -0
  21. package/dist/domain/entities/endge/EndgeActionJsonScript.d.ts +2 -0
  22. package/dist/domain/entities/endge/EndgeApi.d.ts +23 -0
  23. package/dist/domain/entities/endge/EndgeEvent.d.ts +33 -0
  24. package/dist/domain/entities/endge/EndgeFederation.d.ts +64 -0
  25. package/dist/domain/entities/endge/EndgeModule.d.ts +36 -0
  26. package/dist/domain/entities/endge/EndgeModuleController.d.ts +18 -0
  27. package/dist/domain/entities/endge/EndgeSlotRegistry.d.ts +14 -0
  28. package/dist/domain/entities/reflect/RAction.d.ts +30 -0
  29. package/dist/domain/entities/reflect/RBehaviorBinding.d.ts +19 -0
  30. package/dist/domain/entities/reflect/RComponent.d.ts +25 -0
  31. package/dist/domain/entities/reflect/RComponentBase.d.ts +39 -0
  32. package/dist/domain/entities/reflect/RComponentDSL.d.ts +14 -0
  33. package/dist/domain/entities/reflect/RComponentTable.d.ts +21 -0
  34. package/dist/domain/entities/reflect/RComponentTableColumn.d.ts +64 -0
  35. package/dist/domain/entities/reflect/RConverter.d.ts +14 -0
  36. package/dist/domain/entities/reflect/REntity.d.ts +47 -0
  37. package/dist/domain/entities/reflect/REnvironment.d.ts +6 -0
  38. package/dist/domain/entities/reflect/RField.d.ts +9 -0
  39. package/dist/domain/entities/reflect/RFilter.d.ts +11 -0
  40. package/dist/domain/entities/reflect/RFolder.d.ts +23 -0
  41. package/dist/domain/entities/reflect/RI18nBundle.d.ts +16 -0
  42. package/dist/domain/entities/reflect/RIntegration.d.ts +13 -0
  43. package/dist/domain/entities/reflect/RNavigation.d.ts +24 -0
  44. package/dist/domain/entities/reflect/RPage.d.ts +45 -0
  45. package/dist/domain/entities/reflect/RPageTemplate.d.ts +32 -0
  46. package/dist/domain/entities/reflect/RParameter.d.ts +13 -0
  47. package/dist/domain/entities/reflect/RPolicy.d.ts +7 -0
  48. package/dist/domain/entities/reflect/RPresentationBinding.d.ts +20 -0
  49. package/dist/domain/entities/reflect/RProject.d.ts +68 -0
  50. package/dist/domain/entities/reflect/RQuery.d.ts +43 -0
  51. package/dist/domain/entities/reflect/RQueryFilter.d.ts +12 -0
  52. package/dist/domain/entities/reflect/RQueryRest.d.ts +21 -0
  53. package/dist/domain/entities/reflect/RScenario.d.ts +20 -0
  54. package/dist/domain/entities/reflect/RSettings.d.ts +49 -0
  55. package/dist/domain/entities/reflect/RStyle.d.ts +7 -0
  56. package/dist/domain/entities/reflect/RTenant.d.ts +8 -0
  57. package/dist/domain/entities/reflect/RType.d.ts +17 -0
  58. package/dist/domain/entities/reflect/RVersion.d.ts +29 -0
  59. package/dist/domain/entities/reflect/RView.d.ts +21 -0
  60. package/dist/domain/entities/reflect/RVocabs.d.ts +16 -0
  61. package/dist/domain/entities/runtime/RuntimeBindingScope.d.ts +48 -0
  62. package/dist/domain/entities/runtime/RuntimeContext.d.ts +26 -0
  63. package/dist/domain/entities/runtime/RuntimeEnvironment.d.ts +12 -0
  64. package/dist/domain/entities/runtime/RuntimeHostBase.d.ts +100 -0
  65. package/dist/domain/entities/runtime/RuntimeHostFactory.d.ts +15 -0
  66. package/dist/domain/entities/runtime/RuntimeHostRegistry.d.ts +56 -0
  67. package/dist/domain/entities/runtime/RuntimeScope.d.ts +45 -0
  68. package/dist/domain/entities/runtime/hosts/ActionRuntimeHost.d.ts +30 -0
  69. package/dist/domain/entities/runtime/hosts/ComponentRuntimeHost.d.ts +22 -0
  70. package/dist/domain/entities/runtime/hosts/PageRuntimeHost.d.ts +22 -0
  71. package/dist/domain/entities/runtime/hosts/ProjectRuntimeHost.d.ts +22 -0
  72. package/dist/domain/entities/runtime/hosts/QueryRuntimeHost.d.ts +22 -0
  73. package/dist/domain/entities/runtime/hosts/TableRuntimeHost.d.ts +22 -0
  74. package/dist/domain/entities/runtime/hosts/ViewRuntimeHost.d.ts +22 -0
  75. package/dist/domain/script-api/expose.d.ts +6 -0
  76. package/dist/domain/script-api/mount.d.ts +7 -0
  77. package/dist/domain/script-api/query.d.ts +7 -0
  78. package/dist/domain/script-api/watch.d.ts +7 -0
  79. package/dist/domain/services/AbstractSyntaxTree_JSX.d.ts +30 -0
  80. package/dist/domain/services/AbstractSyntaxTree_TS.d.ts +18 -0
  81. package/dist/domain/services/GraphQLBuilderService.d.ts +19 -0
  82. package/dist/domain/services/ScenarioScriptBuilderService.d.ts +19 -0
  83. package/dist/domain/services/auth.d.ts +17 -0
  84. package/dist/domain/services/component-render-host.d.ts +20 -0
  85. package/dist/domain/types/action.types.d.ts +65 -0
  86. package/dist/domain/types/api.types.d.ts +29 -0
  87. package/dist/domain/types/auth.types.d.ts +82 -0
  88. package/dist/domain/types/bootstrap.types.d.ts +35 -0
  89. package/dist/domain/types/codegen.types.d.ts +23 -0
  90. package/dist/domain/types/component.types.d.ts +8 -0
  91. package/dist/domain/types/configuration-contract.types.d.ts +53 -0
  92. package/dist/domain/types/debug/base.types.d.ts +74 -0
  93. package/dist/domain/types/debug/events.types.d.ts +3 -0
  94. package/dist/domain/types/debug/tree.types.d.ts +27 -0
  95. package/dist/domain/types/diagnostics.types.d.ts +235 -0
  96. package/dist/domain/types/document.types.d.ts +93 -0
  97. package/dist/domain/types/endge-flow-runtime.types.d.ts +28 -0
  98. package/dist/domain/types/endge-flow.types.d.ts +110 -0
  99. package/dist/domain/types/events.types.d.ts +29 -0
  100. package/dist/domain/types/faceted-cascade.d.ts +300 -0
  101. package/dist/domain/types/filter.types.d.ts +39 -0
  102. package/dist/domain/types/flow-condition.types.d.ts +39 -0
  103. package/dist/domain/types/forge.types.d.ts +30 -0
  104. package/dist/domain/types/jsx.types.d.ts +16 -0
  105. package/dist/domain/types/models.types.d.ts +7 -0
  106. package/dist/domain/types/navigation.types.d.ts +27 -0
  107. package/dist/domain/types/query.types.d.ts +66 -0
  108. package/dist/domain/types/resolve.types.d.ts +70 -0
  109. package/dist/domain/types/runtime-entity-map.types.d.ts +28 -0
  110. package/dist/domain/types/runtime-host.types.d.ts +168 -0
  111. package/dist/domain/types/runtime-registry.types.d.ts +38 -0
  112. package/dist/domain/types/runtime.types.d.ts +103 -0
  113. package/dist/domain/types/schema.types.d.ts +92 -0
  114. package/dist/domain/types/settings.types.d.ts +117 -0
  115. package/dist/domain/types/styles.types.d.ts +25 -0
  116. package/dist/domain/types/table.types.d.ts +15 -0
  117. package/dist/domain/types/types.d.ts +99 -0
  118. package/dist/domain/types/ui-composition.types.d.ts +201 -0
  119. package/dist/domain/types/ui.types.d.ts +17 -0
  120. package/dist/main.d.ts +154 -0
  121. package/dist/model/config/contracts/behavior/component.d.ts +2 -0
  122. package/dist/model/config/contracts/behavior/index.d.ts +8 -0
  123. package/dist/model/config/contracts/behavior/page-template.d.ts +2 -0
  124. package/dist/model/config/contracts/behavior/page.d.ts +30 -0
  125. package/dist/model/config/contracts/behavior/project.d.ts +2 -0
  126. package/dist/model/config/contracts/behavior/query.d.ts +2 -0
  127. package/dist/model/config/contracts/behavior/view.d.ts +2 -0
  128. package/dist/model/config/contracts/configuration/index.d.ts +3 -0
  129. package/dist/model/config/contracts/configuration/navigation.d.ts +3 -0
  130. package/dist/model/config/contracts/index.d.ts +17 -0
  131. package/dist/model/config/contracts/presentation/component.d.ts +2 -0
  132. package/dist/model/config/contracts/presentation/index.d.ts +8 -0
  133. package/dist/model/config/contracts/presentation/page-template.d.ts +2 -0
  134. package/dist/model/config/contracts/presentation/page.d.ts +2 -0
  135. package/dist/model/config/contracts/presentation/project.d.ts +2 -0
  136. package/dist/model/config/contracts/presentation/query.d.ts +2 -0
  137. package/dist/model/config/contracts/presentation/view.d.ts +2 -0
  138. package/dist/model/config/debug.d.ts +11 -0
  139. package/dist/model/config/events.d.ts +16 -0
  140. package/dist/model/config/index.d.ts +7 -0
  141. package/dist/model/config/persistance_config.d.ts +6 -0
  142. package/dist/model/config/storage_config.d.ts +4 -0
  143. package/dist/model/config/ui-composition-defaults.d.ts +523 -0
  144. package/dist/model/db/repositories/Actions_Repository.d.ts +35 -0
  145. package/dist/model/db/repositories/BehaviorBindings_Repository.d.ts +16 -0
  146. package/dist/model/db/repositories/Components_Repository.d.ts +64 -0
  147. package/dist/model/db/repositories/Converters_Repository.d.ts +40 -0
  148. package/dist/model/db/repositories/Environments_Repository.d.ts +35 -0
  149. package/dist/model/db/repositories/Filters_Repository.d.ts +56 -0
  150. package/dist/model/db/repositories/Folders_Repository.d.ts +30 -0
  151. package/dist/model/db/repositories/I18nBundles_Repository.d.ts +47 -0
  152. package/dist/model/db/repositories/Integrations_Repository.d.ts +40 -0
  153. package/dist/model/db/repositories/Navigations_Repository.d.ts +40 -0
  154. package/dist/model/db/repositories/PageTemplates_Repository.d.ts +56 -0
  155. package/dist/model/db/repositories/Pages_Repository.d.ts +89 -0
  156. package/dist/model/db/repositories/Parameters_Repository.d.ts +56 -0
  157. package/dist/model/db/repositories/Policies_Repository.d.ts +35 -0
  158. package/dist/model/db/repositories/PresentationBindings_Repository.d.ts +14 -0
  159. package/dist/model/db/repositories/Projects_Repository.d.ts +38 -0
  160. package/dist/model/db/repositories/Queries_Repository.d.ts +45 -0
  161. package/dist/model/db/repositories/Scenarios_Repository.d.ts +41 -0
  162. package/dist/model/db/repositories/Settings_Repository.d.ts +48 -0
  163. package/dist/model/db/repositories/Styles_Repository.d.ts +51 -0
  164. package/dist/model/db/repositories/Tenants_Repository.d.ts +39 -0
  165. package/dist/model/db/repositories/Types_Repository.d.ts +48 -0
  166. package/dist/model/db/repositories/Versions_Repository.d.ts +15 -0
  167. package/dist/model/db/repositories/Views_Repository.d.ts +65 -0
  168. package/dist/model/db/repositories/Vocabs_Repository.d.ts +59 -0
  169. package/dist/model/db/repositories/payload-api.d.ts +10 -0
  170. package/dist/model/db/schema-database/BaseSchemaRepositoriy.d.ts +19 -0
  171. package/dist/model/db/schema-database/PayloadSchemaAdapter.d.ts +34 -0
  172. package/dist/model/db/schema-database/SchemaStorageAdapter.d.ts +40 -0
  173. package/dist/model/endge/endge-app.d.ts +47 -0
  174. package/dist/model/endge/endge-auth.d.ts +56 -0
  175. package/dist/model/endge/endge-bind.d.ts +32 -0
  176. package/dist/model/endge/endge-bindings-behavior.d.ts +39 -0
  177. package/dist/model/endge/endge-bindings-presentation.d.ts +30 -0
  178. package/dist/model/endge/endge-bootstrap.d.ts +23 -0
  179. package/dist/model/endge/endge-console.d.ts +35 -0
  180. package/dist/model/endge/endge-contracts.d.ts +77 -0
  181. package/dist/model/endge/endge-debug.d.ts +37 -0
  182. package/dist/model/endge/endge-diagnostics.d.ts +111 -0
  183. package/dist/model/endge/endge-domain.d.ts +519 -0
  184. package/dist/model/endge/endge-events.d.ts +25 -0
  185. package/dist/model/endge/endge-extract.d.ts +84 -0
  186. package/dist/model/endge/endge-flow-registry.d.ts +21 -0
  187. package/dist/model/endge/endge-flow.d.ts +51 -0
  188. package/dist/model/endge/endge-query.d.ts +20 -0
  189. package/dist/model/endge/endge-render.d.ts +17 -0
  190. package/dist/model/endge/endge-reports.d.ts +22 -0
  191. package/dist/model/endge/endge-runtime-debugger.d.ts +60 -0
  192. package/dist/model/endge/endge-runtime.d.ts +87 -0
  193. package/dist/model/endge/endge-schema-database.d.ts +217 -0
  194. package/dist/model/endge/endge-script.d.ts +42 -0
  195. package/dist/model/endge/endge-sse.d.ts +19 -0
  196. package/dist/model/endge/endge-store.d.ts +41 -0
  197. package/dist/model/endge/endge-styles.d.ts +45 -0
  198. package/dist/model/endge/endge-testing.d.ts +16 -0
  199. package/dist/model/endge/endge-ui-registry.d.ts +50 -0
  200. package/dist/model/endge/endge-ui.d.ts +43 -0
  201. package/dist/model/endge/endge-updates.d.ts +34 -0
  202. package/dist/model/endge/endge-vars.d.ts +50 -0
  203. package/dist/model/endge/endge-vocabs.d.ts +47 -0
  204. package/dist/model/endge/endge.d.ts +98 -0
  205. package/dist/model/factories/DataSourceFactory.d.ts +14 -0
  206. package/dist/model/factories/DocumentFactory.d.ts +24 -0
  207. package/dist/model/helpers/endge-resolve-engine.d.ts +93 -0
  208. package/dist/model/helpers/raph-phases/endge-runtime-boundary.d.ts +13 -0
  209. package/dist/model/helpers/raph-phases/queries-phase.d.ts +7 -0
  210. package/dist/model/helpers/raph-phases/tables-phase.d.ts +7 -0
  211. package/dist/model/seed/actions/console_log.d.ts +3 -0
  212. package/dist/model/seed/actions/load_vocabs.d.ts +3 -0
  213. package/dist/model/seed/converters/arrays/split.d.ts +2 -0
  214. package/dist/model/seed/converters/arrays/to-array.d.ts +2 -0
  215. package/dist/model/seed/converters/date/date-to-date-string.d.ts +2 -0
  216. package/dist/model/seed/converters/date/date-to-iso-string.d.ts +2 -0
  217. package/dist/model/seed/converters/date/date-to-iso-z.d.ts +2 -0
  218. package/dist/model/seed/converters/date/date-to-time-string.d.ts +2 -0
  219. package/dist/model/seed/converters/date/iso-string-to-date.d.ts +2 -0
  220. package/dist/model/seed/converters/date/iso-string-to-time-string.d.ts +2 -0
  221. package/dist/model/seed/converters/date/string-to-date.d.ts +2 -0
  222. package/dist/model/seed/converters/date/time-string-to-date.d.ts +2 -0
  223. package/dist/model/seed/converters/date/timestamp-to-date.d.ts +2 -0
  224. package/dist/model/seed/converters/date/weekdays-range.d.ts +5 -0
  225. package/dist/model/seed/converters/json/json-parse.d.ts +2 -0
  226. package/dist/model/seed/converters/json/json-stringify.d.ts +2 -0
  227. package/dist/model/seed/converters/numbers/number-to-string.d.ts +2 -0
  228. package/dist/model/seed/converters/numbers/string-to-number.d.ts +2 -0
  229. package/dist/model/seed/converters/strings/default-if-empty.d.ts +2 -0
  230. package/dist/model/seed/converters/strings/string-to-boolean.d.ts +2 -0
  231. package/dist/model/seed/converters/strings/string-trim.d.ts +2 -0
  232. package/dist/model/services/Auth_Service.d.ts +23 -0
  233. package/dist/tmp/hierarchial-faceted-configuration-cascade/tmp.d.ts +82 -0
  234. package/dist/tools/ScheduleUpdate-sse-generator.d.ts +9 -0
  235. package/dist/tools/graphql-parser.d.ts +5 -0
  236. package/dist/tools/mock-generator.d.ts +16 -0
  237. package/dist/tools/openapi-parser.d.ts +4 -0
  238. package/dist/tools/table.d.ts +4 -0
  239. package/dist/tools/updates-generator.d.ts +12 -0
  240. package/package.json +71 -0
@@ -0,0 +1,300 @@
1
+ import { EndgeBindingMode, EndgeResolvedOverrideBase } from './resolve.types';
2
+ import { ConfigurationContract } from './configuration-contract.types';
3
+ /**
4
+ * Π’ΠΈΠΏ facet-слоя, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ override-спСцифика.
5
+ * Behavior ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρƒ повСдСния, Presentation - Π·Π° ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρƒ прСдставлСния,
6
+ * Configuration - Π·Π° ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρƒ ΠΈ наблюдСниС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ.
7
+ */
8
+ export declare enum EndgeFacetType {
9
+ Behavior = "behavior",
10
+ Presentation = "presentation",
11
+ Configuration = "configuration"
12
+ }
13
+ /**
14
+ * Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ сущностСй, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… faceted cascade.
15
+ * Π­Ρ‚ΠΎ ΠΎΠ±Ρ‰ΠΈΠ΅ entity type для behavior- ΠΈ presentation-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ².
16
+ */
17
+ export declare enum FacetedCascadeEntityType {
18
+ Project = "project",
19
+ View = "view",
20
+ Component = "component",
21
+ Query = "query",
22
+ Page = "page",
23
+ PageTemplate = "page-template"
24
+ }
25
+ /**
26
+ * ΠžΠ±Π»Π°ΡΡ‚ΡŒ дСйствия override-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°.
27
+ * Owner - слот относится ΠΊ самой сущности.
28
+ * Target - слот относится ΠΊ Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅ΠΉ/связанной сущности.
29
+ * Global - слот описываСт Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ.
30
+ */
31
+ export declare enum FacetedCascadeScope {
32
+ Owner = "owner",
33
+ Target = "target",
34
+ Global = "global"
35
+ }
36
+ /**
37
+ * Упрощённая схСма ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈΠ»ΠΈ контСкста для ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°.
38
+ */
39
+ export type FacetedCascadeSchema = Record<string, unknown>;
40
+ /**
41
+ * ΠžΠ±Ρ‰Π°Ρ Π±Π°Π·Π° для всСх override-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ².
42
+ * ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ описываСт допустимый слот ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹, Π½ΠΎ сам ΠΏΠΎ сСбС Π½Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ override.
43
+ */
44
+ export interface FacetedCascadeContractBase<TEntity extends string = string> {
45
+ /**
46
+ * Facet-слой, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ относится слот ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹.
47
+ */
48
+ facet: EndgeFacetType;
49
+ /**
50
+ * Π’ΠΈΠΏ сущности, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ слот ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹.
51
+ */
52
+ entityType: TEntity;
53
+ /**
54
+ * ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ имя слота для UI ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.
55
+ */
56
+ title: string;
57
+ /**
58
+ * Π§Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠ΅ описаниС назначСния слота.
59
+ */
60
+ description?: string | null;
61
+ /**
62
+ * ΠžΠ±Π»Π°ΡΡ‚ΡŒ дСйствия слота Π² каскадС.
63
+ */
64
+ scope: FacetedCascadeScope;
65
+ /**
66
+ * Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ override/binding для этого слота.
67
+ * Для совмСстимости со старой behavior-модСлью ΠΏΠΎΠ»Π΅ оставлСно ΠΎΠ±Ρ‰ΠΈΠΌ ΠΈ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ.
68
+ */
69
+ supportsBinding?: boolean;
70
+ /**
71
+ * МоТно Π»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ слот ΠΏΠΎ environment.
72
+ */
73
+ supportsEnvironmentOverride: boolean;
74
+ }
75
+ /**
76
+ * БСмантичСская катСгория behavior-слота.
77
+ * НуТна для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ событий ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅.
78
+ */
79
+ export declare enum BehaviorContractKind {
80
+ Lifecycle = "lifecycle",
81
+ Interaction = "interaction",
82
+ Data = "data",
83
+ Composition = "composition"
84
+ }
85
+ /**
86
+ * ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ behavior-слота.
87
+ * ΠžΠΏΠΈΡΡ‹Π²Π°Π΅Ρ‚ событиС, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ контСкст ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.
88
+ */
89
+ export interface BehaviorContract<TEntity extends string = string> extends FacetedCascadeContractBase<TEntity> {
90
+ facet: EndgeFacetType.Behavior;
91
+ /**
92
+ * ΠšΠ°Π½ΠΎΠ½ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ имя события, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ ΠΊΠ°ΠΊ selector Π² behavior cascade.
93
+ */
94
+ eventName: string;
95
+ /**
96
+ * ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ события.
97
+ */
98
+ eventKind: BehaviorContractKind;
99
+ /**
100
+ * Π‘Ρ…Π΅ΠΌΠ° payload события, Ссли ΠΎΠ½Π° Π½ΡƒΠΆΠ½Π° для UI ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ.
101
+ */
102
+ payloadSchema?: FacetedCascadeSchema | null;
103
+ /**
104
+ * Π‘Ρ…Π΅ΠΌΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ runtime-контСкста события.
105
+ */
106
+ contextSchema?: FacetedCascadeSchema | null;
107
+ }
108
+ /**
109
+ * БСмантичСская катСгория presentation-слота.
110
+ * НуТна для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ€ΠΎΠ»Π΅ΠΉ прСдставлСния Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅.
111
+ */
112
+ export declare enum PresentationContractKind {
113
+ Renderer = "renderer",
114
+ Layout = "layout",
115
+ Asset = "asset",
116
+ State = "state",
117
+ Composition = "composition"
118
+ }
119
+ /**
120
+ * ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ presentation-слота.
121
+ * ΠžΠΏΠΈΡΡ‹Π²Π°Π΅Ρ‚ Ρ€ΠΎΠ»ΡŒ прСдставлСния, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡ‚ΡŒ renderer, layout, asset ΠΈΠ»ΠΈ state-specific UI.
122
+ */
123
+ export interface PresentationContract<TEntity extends string = string> extends FacetedCascadeContractBase<TEntity> {
124
+ facet: EndgeFacetType.Presentation;
125
+ /**
126
+ * ΠšΠ°Π½ΠΎΠ½ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ€ΠΎΠ»ΡŒ прСдставлСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ ΠΊΠ°ΠΊ selector Π² presentation cascade.
127
+ */
128
+ role: string;
129
+ /**
130
+ * ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ presentation-слота.
131
+ */
132
+ contractKind: PresentationContractKind;
133
+ /**
134
+ * Π‘Ρ…Π΅ΠΌΠ° props/контСкста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ presentation-слот.
135
+ */
136
+ propsSchema?: FacetedCascadeSchema | null;
137
+ /**
138
+ * Π‘Ρ…Π΅ΠΌΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ контСкста Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ presentation-слота.
139
+ */
140
+ contextSchema?: FacetedCascadeSchema | null;
141
+ }
142
+ /**
143
+ * ΠžΠ±Ρ‰ΠΈΠΉ union ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² faceted cascade.
144
+ * РССстр ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Ρ…Ρ€Π°Π½ΠΈΡ‚ всС Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π°Π΅Ρ‚ ΠΈΡ… ΠΏΠΎ `facet`.
145
+ */
146
+ export type EndgeContract<TEntity extends string = string> = BehaviorContract<TEntity> | PresentationContract<TEntity> | ConfigurationContract<TEntity>;
147
+ /**
148
+ * БовмСстимыС aliases для ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ behavior/event-слоя.
149
+ * Пока behavior bindings Π΅Ρ‰Ρ‘ ΠΎΠΏΠΈΡ€Π°ΡŽΡ‚ΡΡ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½ "event contract".
150
+ */
151
+ export type EventContract = BehaviorContract<FacetedCascadeEntityType>;
152
+ export type EventContractSchema = FacetedCascadeSchema;
153
+ export { FacetedCascadeEntityType as EventContractEntityType, BehaviorContractKind as EventContractKind, FacetedCascadeScope as EventContractScope, };
154
+ /**
155
+ * ΠžΠ±Ρ‰Π°Ρ Π±Π°Π·Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° override-binding для ΠΎΠ±ΠΎΠΈΡ… facet-слоёв.
156
+ * Binding Ρ…Ρ€Π°Π½ΠΈΡ‚ ΡƒΠΆΠ΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… каскада.
157
+ */
158
+ export interface FacetedCascadeBindingDocBase {
159
+ id: number;
160
+ identity: string;
161
+ displayName: string;
162
+ projectId?: number | null;
163
+ ownerType: string;
164
+ ownerId: number;
165
+ targetType: string;
166
+ targetId?: number | null;
167
+ mode: EndgeBindingMode;
168
+ priority: number;
169
+ isEnabled: boolean;
170
+ environmentId?: number | null;
171
+ isInherited?: boolean;
172
+ originBindingId?: number | null;
173
+ folder?: number | null;
174
+ }
175
+ /**
176
+ * Π‘Π°Π·Π° payload для создания/обновлСния override-binding.
177
+ */
178
+ export interface FacetedCascadeBindingWriteDataBase {
179
+ identity: string;
180
+ displayName: string;
181
+ projectId?: number | null;
182
+ ownerType: string;
183
+ ownerId: number;
184
+ targetType: string;
185
+ targetId?: number | null;
186
+ mode: EndgeBindingMode;
187
+ priority: number;
188
+ isEnabled: boolean;
189
+ environmentId?: number | null;
190
+ isInherited?: boolean;
191
+ originBindingId?: number | null;
192
+ folder?: number | null;
193
+ }
194
+ /**
195
+ * ΠžΠ±Ρ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ€Π΅Π·ΠΎΠ»Π²Π° override-binding.
196
+ */
197
+ export interface FacetedCascadeBindingResolverOptions {
198
+ ownerType: string;
199
+ ownerId: number;
200
+ targetType?: string | null;
201
+ targetId?: number | null;
202
+ environmentId?: number | null;
203
+ }
204
+ /**
205
+ * Π‘Π°Π·Π° resolved-override Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° послС примСнСния каскада.
206
+ */
207
+ export type FacetedCascadeResolvedBindingBase = EndgeResolvedOverrideBase;
208
+ /**
209
+ * ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹ повСдСния.
210
+ */
211
+ export interface BehaviorBindingDoc extends FacetedCascadeBindingDocBase {
212
+ targetId: number;
213
+ eventName: string;
214
+ scriptRef: string;
215
+ }
216
+ /**
217
+ * Payload для записи behavior-binding.
218
+ */
219
+ export interface BehaviorBindingWriteData extends FacetedCascadeBindingWriteDataBase {
220
+ targetId: number;
221
+ eventName: string;
222
+ scriptRef: string;
223
+ }
224
+ /**
225
+ * ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ€Π΅Π·ΠΎΠ»Π²Π° behavior-binding для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ события.
226
+ */
227
+ export interface BehaviorBindingResolverOptions extends FacetedCascadeBindingResolverOptions {
228
+ eventName?: string | null;
229
+ }
230
+ /**
231
+ * Π˜Ρ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ resolved behavior-binding послС примСнСния каскада.
232
+ */
233
+ export interface ResolvedBehaviorBinding extends FacetedCascadeResolvedBindingBase {
234
+ eventName: string;
235
+ scriptRef: string;
236
+ }
237
+ /**
238
+ * ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹ прСдставлСния.
239
+ */
240
+ export interface PresentationBindingDoc extends FacetedCascadeBindingDocBase {
241
+ role: string;
242
+ rendererRef: string;
243
+ when?: string | null;
244
+ }
245
+ /**
246
+ * Payload для записи presentation-binding.
247
+ */
248
+ export interface PresentationBindingWriteData extends FacetedCascadeBindingWriteDataBase {
249
+ role: string;
250
+ rendererRef: string;
251
+ when?: string | null;
252
+ }
253
+ /**
254
+ * ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ€Π΅Π·ΠΎΠ»Π²Π° presentation-binding для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ€ΠΎΠ»ΠΈ.
255
+ */
256
+ export interface PresentationBindingResolverOptions extends FacetedCascadeBindingResolverOptions {
257
+ role?: string | null;
258
+ }
259
+ /**
260
+ * Π˜Ρ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ resolved presentation-binding послС примСнСния каскада.
261
+ */
262
+ export interface ResolvedPresentationBinding extends FacetedCascadeResolvedBindingBase {
263
+ role: string;
264
+ rendererRef: string;
265
+ when: string | null;
266
+ }
267
+ /**
268
+ * Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π΅Π·ΠΎΠ»Π²Π° behavior-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°: Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ запроса.
269
+ */
270
+ export interface BehaviorResolveResult {
271
+ /** ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ выполнялся Ρ€Π΅Π·ΠΎΠ»Π². */
272
+ request: BehaviorBindingResolverOptions;
273
+ /** Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ (selector), ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ искали. */
274
+ eventName: string;
275
+ /** НайдСнныС Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ послС каскада. */
276
+ bindings: ResolvedBehaviorBinding[];
277
+ /** НайдСн Π»ΠΈ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ Π±ΠΈΠ½Π΄ΠΈΠ½Π³. */
278
+ found: boolean;
279
+ /** ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΎΠ². */
280
+ count: number;
281
+ /** ЀасСт для Сдинообразия с presentation. */
282
+ facet: 'behavior';
283
+ }
284
+ /**
285
+ * Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π΅Π·ΠΎΠ»Π²Π° presentation-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°: Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ запроса.
286
+ */
287
+ export interface PresentationResolveResult {
288
+ /** ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ выполнялся Ρ€Π΅Π·ΠΎΠ»Π². */
289
+ request: PresentationBindingResolverOptions;
290
+ /** Роль (selector), ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ искали. */
291
+ role: string;
292
+ /** НайдСнныС Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ послС каскада. */
293
+ bindings: ResolvedPresentationBinding[];
294
+ /** НайдСн Π»ΠΈ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ Π±ΠΈΠ½Π΄ΠΈΠ½Π³. */
295
+ found: boolean;
296
+ /** ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΎΠ². */
297
+ count: number;
298
+ /** ЀасСт для Сдинообразия с behavior. */
299
+ facet: 'presentation';
300
+ }
@@ -0,0 +1,39 @@
1
+ /** ΠžΠΏΡ†ΠΈΡ статичСского списка поля Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°. */
2
+ export interface FilterStaticOptionSchema {
3
+ value: string;
4
+ label?: string;
5
+ }
6
+ /** Π Π΅ΠΆΠΈΠΌ поля Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°: список (статичСский/ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ) ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ². */
7
+ export type FilterFieldMode = 'static' | 'vocab' | 'date' | 'time' | 'datetime' | 'boolean' | 'string' | 'number';
8
+ /** ПолС Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° (коллСкция filters Π² Payload). */
9
+ export interface FilterFieldItemSchema {
10
+ key: string;
11
+ label?: string;
12
+ mode: FilterFieldMode;
13
+ staticOptions?: FilterStaticOptionSchema[];
14
+ vocabIdentity?: string;
15
+ vocabCollection?: string;
16
+ valuePath?: string;
17
+ /** ΠŸΡƒΡ‚ΡŒ Π΄ΠΎ поля подписи Π² UI Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° (Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ словаря). */
18
+ displayNamePath?: string;
19
+ /** Для словаря: Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½ Π»ΠΈ мноТСствСнный Π²Ρ‹Π±ΠΎΡ€ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ true). */
20
+ multiple?: boolean;
21
+ /** Π¦Π΅ΠΏΠΎΡ‡ΠΊΠ° ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ΠΎΠ² (identity ΠΈΠ· Π΄ΠΎΠΌΠ΅Π½Π°), ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. */
22
+ converterIdentities?: string[];
23
+ defaultValue?: string;
24
+ active?: boolean;
25
+ }
26
+ /** Π‘Ρ…Π΅ΠΌΠ° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° (коллСкция filters Π² Payload). */
27
+ export interface RFilterSchema {
28
+ identity: string;
29
+ displayName: string;
30
+ fields?: FilterFieldItemSchema[];
31
+ folder?: string | null;
32
+ /** Id ΠΏΠ°ΠΏΠΊΠΈ Π² Payload (для relationship ΠΏΡ€ΠΈ сохранСнии). */
33
+ folderId?: number | string | null;
34
+ author?: string | null;
35
+ active?: boolean;
36
+ deletedAt?: string | null;
37
+ meta?: Record<string, unknown>;
38
+ inherited?: boolean;
39
+ }
@@ -0,0 +1,39 @@
1
+ import { FlowHandlerContext } from './action.types';
2
+ export type { FlowHandlerContext };
3
+ /**
4
+ * ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π²Ρ…ΠΎΠ΄Π° условия ΠΈΠ· рССстра (для UI ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ).
5
+ */
6
+ export interface FlowConditionInputParam {
7
+ name: string;
8
+ label: string;
9
+ valueType: string;
10
+ optional?: boolean;
11
+ /** Π‘Π΅ΠΊΡ†ΠΈΠΈ Π΄ΠΎΠΌΠ΅Π½Π°, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½ Π²Ρ‹Π±ΠΎΡ€ сущности (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ vocabs). */
12
+ acceptSectionTypes?: string[];
13
+ }
14
+ /**
15
+ * Π‘ΠΏΠ΅ΠΊΠ° условия для рССстра (ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ + evaluator).
16
+ */
17
+ export interface FlowConditionSpec {
18
+ id: string;
19
+ title: string;
20
+ description: string | null;
21
+ inputParams: FlowConditionInputParam[];
22
+ evaluate(ctx: FlowHandlerContext, params: Record<string, unknown>): boolean | Promise<boolean>;
23
+ }
24
+ /**
25
+ * ΠšΠΎΠ½Ρ„ΠΈΠ³ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ switch Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ рССстра.
26
+ */
27
+ export interface FlowSwitchBranchConfig {
28
+ conditionId: string;
29
+ params: Record<string, unknown>;
30
+ portId: string;
31
+ }
32
+ /**
33
+ * ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΡƒΠ·Π»Π° switch Π² flow.
34
+ */
35
+ export interface FlowSwitchParams {
36
+ conditionMode?: 'script' | 'registry';
37
+ scriptExpression?: string;
38
+ branches?: FlowSwitchBranchConfig[];
39
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Endge ΠœΠΎΠ΄ΡƒΠ»ΡŒ
3
+ */
4
+ export interface EndgeModule {
5
+ id: string;
6
+ setup(): void;
7
+ destroy?(): void;
8
+ toPlain?(): object;
9
+ fromPlain?(data: object): void;
10
+ }
11
+ export type EndgeEventMap = Record<string, any>;
12
+ /**
13
+ * Π’ΠΎΠΊΠ΅Π½Ρ‹ (Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ сСрвисов)
14
+ */
15
+ export type EndgeToken<T, E extends EndgeEventMap> = string & {
16
+ __t?: T;
17
+ __ev?: E;
18
+ };
19
+ export declare const endgeToken: <T, E extends EndgeEventMap = object>(id: string) => EndgeToken<T, E>;
20
+ export type EndgeModuleCtor = new () => EndgeModule;
21
+ export type EndgeModuleSpec = EndgeModule | EndgeModuleCtor;
22
+ export type EndgeModuleLoader = (() => Promise<EndgeModuleSpec> | EndgeModuleSpec) | EndgeModuleSpec;
23
+ export interface EndgeModuleInstall<T extends EndgeModule, E extends EndgeEventMap = object> {
24
+ name: string;
25
+ version: string;
26
+ description: string;
27
+ author: string;
28
+ token: EndgeToken<T, E>;
29
+ loader: EndgeModuleLoader;
30
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹ классов ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ HTML ΠΈΠ· JSX/DSL.
3
+ * Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для стилизации ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ‚Π΅Π³ΠΎΠ² ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π² DOM.
4
+ */
5
+ export declare const EndgeJsxAttr: {
6
+ /** Класс Ρ‚Π΅Π³Π° Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня Π² Π΄Π΅Ρ€Π΅Π²Π΅ DSL */
7
+ readonly TagRoot: "endge-tag-root";
8
+ /** Класс любого Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ‚Π΅Π³Π° (Π² Ρ‚.Ρ‡. Π²Π½ΡƒΡ‚Ρ€ΠΈ v-if/v-else) */
9
+ readonly Tag: "endge-tag";
10
+ /** Атрибут ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Ρ‚Π΅Π³Π° Π² Π΄Π΅Ρ€Π΅Π²Π΅ */
11
+ readonly TagIdentity: "endge-tag-identity";
12
+ /** Атрибут ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈΠ· Π΄ΠΎΠΌΠ΅Π½Π° (Π½Π° Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠ±Ρ‘Ρ€Ρ‚ΠΊΠΈ). Для отобраТСния, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ. */
13
+ readonly ComponentIdentity: "endge-component-identity";
14
+ /** Π‘Ρ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ id ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° для сСлСкторов стилСй (Π½Π΅ мСняСтся ΠΏΡ€ΠΈ смСнС identity). */
15
+ readonly ComponentId: "data-endge-component-id";
16
+ };
@@ -0,0 +1,7 @@
1
+ export type TableBinding = {
2
+ keys: Record<string, // имя Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ
3
+ {
4
+ pk: string;
5
+ fk: string;
6
+ }>;
7
+ };
@@ -0,0 +1,27 @@
1
+ /** Π’ΠΈΠΏΡ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΈΠ· Payload (коллСкция navigations). */
2
+ /** Π£Π·Π΅Π» ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ. */
3
+ export interface NavigationTreeNodeDoc {
4
+ id?: string | null;
5
+ type: 'link' | 'group';
6
+ title: string;
7
+ icon?: string | null;
8
+ hidden?: boolean;
9
+ disabled?: boolean;
10
+ collapsedTitle?: string | null;
11
+ path?: string | null;
12
+ routeName?: string | null;
13
+ external?: boolean;
14
+ children?: NavigationTreeNodeDoc[];
15
+ }
16
+ /** Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΈΠ· Payload. */
17
+ export interface NavigationDoc {
18
+ id: number | string;
19
+ identity: string;
20
+ displayName: string;
21
+ description?: string | null;
22
+ folder?: number | string;
23
+ project?: number | string;
24
+ isSystem?: boolean;
25
+ tree?: NavigationTreeNodeDoc[];
26
+ meta?: Record<string, unknown>;
27
+ }
@@ -0,0 +1,66 @@
1
+ export type RQueryAuthMode = 'none' | 'token';
2
+ export interface RQueryAuth {
3
+ mode: RQueryAuthMode;
4
+ /**
5
+ * ΠΠ΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€ΡƒΡ‡Π½ΠΎΠΉ Ρ‚ΠΎΠΊΠ΅Π½. Если НЕ Π·Π°Π΄Π°Π½, Π±ΡƒΠ΄Π΅Ρ‚ взят ΠΈΠ· Endge.auth.
6
+ * ΠŸΡ€ΠΈΠΌΠ΅Ρ€: "eyJhbGciOi..."
7
+ */
8
+ manualToken?: string;
9
+ /** Π‘Ρ…Π΅ΠΌΠ° для Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "Bearer"). */
10
+ scheme?: string;
11
+ /** Имя Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "Authorization"). */
12
+ headerName?: string;
13
+ /**
14
+ * ΠšΡƒΠ΄Π° ΠΊΠ»Π°ΡΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½: Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈΠ»ΠΈ Π² query.
15
+ * По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 'header'.
16
+ */
17
+ sendAs?: 'header' | 'query';
18
+ /** Имя query-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (Ссли sendAs='query', ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 'access_token'). */
19
+ queryParamName?: string;
20
+ }
21
+ /** Π Π΅ΠΆΠΈΠΌ примСнСния списка Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² запроса (ΠΏΠΎΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ слияниС ΠΏΠΎ порядку). */
22
+ export type RQueryFilterApplyMode = 'merge';
23
+ export type FilterFieldType = 'string' | 'number' | 'boolean' | 'date' | 'datetime' | 'select' | 'multi-select';
24
+ export interface FilterStaticValue {
25
+ label: string;
26
+ value: string;
27
+ }
28
+ export interface FilterDynamicSource {
29
+ type: 'payload' | 'vocabs' | 'query';
30
+ collection?: string;
31
+ mapLabel?: string;
32
+ mapValue?: string;
33
+ queryIdentity?: string;
34
+ }
35
+ export interface FilterFieldSchema {
36
+ key: string;
37
+ label: string;
38
+ description?: string;
39
+ required?: boolean;
40
+ multiple?: boolean;
41
+ type: FilterFieldType;
42
+ staticValues?: FilterStaticValue[];
43
+ dynamicSource?: FilterDynamicSource | null;
44
+ }
45
+ export interface RuntimeFilterLink {
46
+ identity: string;
47
+ displayName: string;
48
+ description?: string;
49
+ }
50
+ /** Π‘Ρ…Π΅ΠΌΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (коллСкция parameters Π² Payload). */
51
+ export interface RParameterSchema {
52
+ identity: string;
53
+ displayName: string;
54
+ description?: string;
55
+ fields: FilterFieldSchema[];
56
+ runtimeFilters?: RuntimeFilterLink[];
57
+ folder?: string | null;
58
+ author?: string;
59
+ active: boolean;
60
+ deletedAt?: string | null;
61
+ }
62
+ export declare class RuntimeFilterLinkEntity {
63
+ identity: string;
64
+ displayName: string;
65
+ description?: string;
66
+ }
@@ -0,0 +1,70 @@
1
+ export type EndgeBindingMode = 'replace' | 'append' | 'prepend' | 'disable';
2
+ export type EndgeResolveSelectionMode = 'all' | 'inherited-only' | 'direct-only';
3
+ export interface EndgeResolveOptions {
4
+ ownerType: string;
5
+ ownerId: number;
6
+ targetType?: string | null;
7
+ targetId?: number | null;
8
+ selector?: string | null;
9
+ environmentId?: number | null;
10
+ }
11
+ export interface EndgeResolvedOverrideBase {
12
+ id: number | null;
13
+ identity: string;
14
+ displayName: string;
15
+ ownerType: string;
16
+ ownerId: number;
17
+ targetType: string;
18
+ targetId: number | null;
19
+ selector: string;
20
+ mode: EndgeBindingMode;
21
+ priority: number;
22
+ isEnabled: boolean;
23
+ environmentId: number | null;
24
+ isInherited: boolean;
25
+ originBindingId: number | null;
26
+ sourceOwnerType: string;
27
+ sourceOwnerId: number;
28
+ source: 'direct' | 'inherited';
29
+ depth: number;
30
+ }
31
+ export interface EndgeResolveSourceCommon {
32
+ id?: unknown;
33
+ identity?: unknown;
34
+ displayName?: unknown;
35
+ name?: unknown;
36
+ ownerType?: unknown;
37
+ ownerId?: unknown;
38
+ targetType?: unknown;
39
+ targetId?: unknown;
40
+ mode?: unknown;
41
+ priority?: unknown;
42
+ isEnabled?: unknown;
43
+ environmentId?: unknown;
44
+ originBindingId?: unknown;
45
+ }
46
+ export interface EndgeResolveBuildContext {
47
+ requestedOwnerType: string;
48
+ requestedOwnerId: number;
49
+ requestedTargetType: string;
50
+ requestedTargetId: number | null;
51
+ selector: string;
52
+ id: number | null;
53
+ identity: string;
54
+ displayName: string;
55
+ mode: EndgeBindingMode;
56
+ priority: number;
57
+ isEnabled: boolean;
58
+ environmentId: number | null;
59
+ originBindingId: number | null;
60
+ sourceOwnerType: string;
61
+ sourceOwnerId: number;
62
+ source: 'direct' | 'inherited';
63
+ depth: number;
64
+ }
65
+ export interface EndgeResolveEngineConfig<TSource extends EndgeResolveSourceCommon, TResolved extends EndgeResolvedOverrideBase> {
66
+ getSource: () => TSource[];
67
+ getSelector: (raw: TSource) => unknown;
68
+ buildResolved: (raw: TSource, ctx: EndgeResolveBuildContext) => TResolved | null;
69
+ isResolvedValid?: (item: TResolved) => boolean;
70
+ }
@@ -0,0 +1,28 @@
1
+ import { RAction } from '../entities/reflect/RAction';
2
+ import { RComponentTable } from '../entities/reflect/RComponentTable';
3
+ import { RPage } from '../entities/reflect/RPage';
4
+ import { RProject } from '../entities/reflect/RProject';
5
+ import { RQuery } from '../entities/reflect/RQuery';
6
+ import { RView } from '../entities/reflect/RView';
7
+ import { RComponent } from './component.types';
8
+ /**
9
+ * ΠšΠ°Π½ΠΎΠ½ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ сущностСй, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ runtime-host.
10
+ */
11
+ export interface RuntimeEntityModelMap {
12
+ /** ДомСнная модСль ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. */
13
+ project: RProject;
14
+ /** ДомСнная модСль страницы. */
15
+ page: RPage;
16
+ /** ДомСнная модСль view. */
17
+ view: RView;
18
+ /** Базовая домСнная модСль ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°. */
19
+ component: RComponent;
20
+ /** ДомСнная модСль запроса. */
21
+ query: RQuery;
22
+ /** ДомСнная модСль action. */
23
+ action: RAction;
24
+ /** ДомСнная модСль Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°. */
25
+ table: RComponentTable;
26
+ }
27
+ /** Дискриминатор Ρ‚ΠΈΠΏΠ° runtime-сущности. */
28
+ export type RuntimeEntityType = keyof RuntimeEntityModelMap;