@appaflytech/zeyrek-ai-mcp 0.0.35 → 0.0.37

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 (210) hide show
  1. package/.env.example +15 -0
  2. package/README.md +5 -5
  3. package/dist/config.js +37 -0
  4. package/dist/index.js +2 -0
  5. package/dist/knowledge/access.js +802 -0
  6. package/dist/knowledge/backendConstraints.js +18 -1
  7. package/dist/knowledge/case.js +41 -0
  8. package/dist/knowledge/componentCatalog.js +655 -424
  9. package/dist/knowledge/componentEvents.js +140 -23
  10. package/dist/knowledge/connectDataBind.js +843 -0
  11. package/dist/knowledge/connectDataDefinition.js +344 -0
  12. package/dist/knowledge/connectDataExecute.js +93 -0
  13. package/dist/knowledge/connectDataRules.js +128 -0
  14. package/dist/knowledge/decision.js +121 -0
  15. package/dist/knowledge/expressionPrelude.js +59 -0
  16. package/dist/knowledge/layoutSummary.js +140 -2
  17. package/dist/knowledge/microserviceParameters.js +58 -0
  18. package/dist/knowledge/mining.js +94 -0
  19. package/dist/knowledge/mobileComponentCatalog.js +864 -0
  20. package/dist/knowledge/mobileComponentEvents.js +239 -0
  21. package/dist/knowledge/mobileStore.js +321 -0
  22. package/dist/knowledge/normalize.js +235 -84
  23. package/dist/knowledge/outlines.js +36 -0
  24. package/dist/knowledge/platform/lint.js +385 -0
  25. package/dist/knowledge/platform/mobile.js +142 -0
  26. package/dist/knowledge/platform/mobileLayoutLint.js +324 -0
  27. package/dist/knowledge/platform/mobileRules.js +231 -0
  28. package/dist/knowledge/platform/mobileSpacing.js +82 -0
  29. package/dist/knowledge/platform/mobileTabs.js +108 -0
  30. package/dist/knowledge/platform/nativeBoxModel.js +44 -0
  31. package/dist/knowledge/platform/profile.js +25 -0
  32. package/dist/knowledge/platform/resolve.js +122 -0
  33. package/dist/knowledge/platform/web.js +39 -0
  34. package/dist/knowledge/policy.js +18 -4
  35. package/dist/knowledge/process.js +510 -0
  36. package/dist/knowledge/reservedTables.js +79 -0
  37. package/dist/knowledge/rowFilter.js +43 -0
  38. package/dist/knowledge/rules.js +423 -37
  39. package/dist/knowledge/schemaGuard.js +11 -0
  40. package/dist/knowledge/styleResolve.js +53 -19
  41. package/dist/knowledge/styleResolveNative.js +527 -0
  42. package/dist/knowledge/themeResolve.js +4 -4
  43. package/dist/knowledge/themeSchema.js +1 -2
  44. package/dist/observability/trace.js +6 -3
  45. package/dist/platform/argumentAliases.js +128 -0
  46. package/dist/platform/bodyFile.js +103 -0
  47. package/dist/platform/capture/actions.js +398 -0
  48. package/dist/platform/capture/browser.js +1 -0
  49. package/dist/platform/capture/capture.js +683 -0
  50. package/dist/platform/capture/console-log.js +122 -0
  51. package/dist/platform/capture/index.js +11 -0
  52. package/dist/platform/capture/readiness.js +103 -0
  53. package/dist/platform/capture/summary.js +77 -0
  54. package/dist/platform/capture/target.js +5 -0
  55. package/dist/platform/capture/targets/studio-mobile.js +15 -0
  56. package/dist/platform/capture/targets/studio-web.js +5 -0
  57. package/dist/platform/diagnostics.js +10 -4
  58. package/dist/platform/domSummary.js +1 -1
  59. package/dist/platform/errors.js +163 -10
  60. package/dist/platform/http.js +29 -8
  61. package/dist/platform/impersonation.js +45 -0
  62. package/dist/platform/jsonArray.js +24 -0
  63. package/dist/platform/responses.js +39 -5
  64. package/dist/platform/schemaReadMemory.js +60 -0
  65. package/dist/platform/secrets.js +19 -1
  66. package/dist/platform/strictArguments.js +68 -12
  67. package/dist/platform/tokenVault.js +187 -4
  68. package/dist/resources/examples/bpm-gorev-kontrol.json +294 -0
  69. package/dist/resources/examples/bpm-iso-dokuman.json +228 -0
  70. package/dist/resources/examples/bpm-satinalma.json +376 -0
  71. package/dist/resources/examples/connect-data-convert-verify.json +107 -0
  72. package/dist/resources/examples/connect-data-dropdown-roles.json +66 -0
  73. package/dist/resources/examples/connect-data-edit-m2m.json +73 -0
  74. package/dist/resources/examples/connect-data-query-params.json +50 -0
  75. package/dist/resources/examples/connect-data-table-entity.json +147 -0
  76. package/dist/resources/examples/connect-data-workflow-microservice.json +65 -0
  77. package/dist/resources/examples/middleware-authenticate.json +1 -1
  78. package/dist/resources/examples/mobile-app-shell-drawer.json +244 -0
  79. package/dist/resources/examples/mobile-app-shell-stack.json +157 -0
  80. package/dist/resources/examples/mobile-app-shell-tab.json +208 -0
  81. package/dist/resources/examples/mobile-form-screen.json +365 -0
  82. package/dist/resources/examples/mobile-list-detail-form.json +703 -0
  83. package/dist/resources/examples/page-detail-profile.json +2 -1
  84. package/dist/resources/examples/page-dynamic-form.json +3 -2
  85. package/dist/resources/examples/page-flex-sections.json +1 -1
  86. package/dist/resources/examples/page-html-embed.json +1 -1
  87. package/dist/resources/examples/workflow-basic.json +8 -2
  88. package/dist/resources/guides/access.md +810 -0
  89. package/dist/resources/guides/bpm.md +691 -0
  90. package/dist/resources/guides/case.md +153 -0
  91. package/dist/resources/guides/component.md +93 -6
  92. package/dist/resources/guides/decision.md +185 -0
  93. package/dist/resources/guides/entity.md +50 -8
  94. package/dist/resources/guides/expressions.md +14 -5
  95. package/dist/resources/guides/functions.md +1 -1
  96. package/dist/resources/guides/getting-started.md +38 -1
  97. package/dist/resources/guides/layout.md +11 -7
  98. package/dist/resources/guides/merge.md +37 -3
  99. package/dist/resources/guides/microservice.md +87 -2
  100. package/dist/resources/guides/middleware.md +68 -4
  101. package/dist/resources/guides/mobile-layout.md +193 -0
  102. package/dist/resources/guides/mobile-publish.md +124 -0
  103. package/dist/resources/guides/mobile.md +549 -0
  104. package/dist/resources/guides/page.md +463 -83
  105. package/dist/resources/guides/theme.md +8 -3
  106. package/dist/resources/guides/translation.md +1 -1
  107. package/dist/resources/guides/workflow.md +58 -1
  108. package/dist/resources/read.js +41 -0
  109. package/dist/resources/rules.js +11 -5
  110. package/dist/resources/schema-fingerprint.json +7 -5
  111. package/dist/resources/schemas/AccessExplanationDto.json +144 -0
  112. package/dist/resources/schemas/AccessMatrixDto.json +170 -0
  113. package/dist/resources/schemas/AccessPermissionDto.json +57 -0
  114. package/dist/resources/schemas/AccessPolicyDto.json +223 -0
  115. package/dist/resources/schemas/AccessResourceDto.json +86 -0
  116. package/dist/resources/schemas/AppSessionDto.json +53 -0
  117. package/dist/resources/schemas/ConnectDataDescribeDto.json +344 -0
  118. package/dist/resources/schemas/ConnectDataRequestModel.json +202 -0
  119. package/dist/resources/schemas/ConnectDataResultDto.json +421 -0
  120. package/dist/resources/schemas/ConnectorCredentialDto.json +70 -0
  121. package/dist/resources/schemas/ConvertConnectDataToMicroserviceCommand.json +37 -0
  122. package/dist/resources/schemas/CreateAccessPolicyCommand.json +209 -0
  123. package/dist/resources/schemas/CreateDecisionCommand.json +221 -0
  124. package/dist/resources/schemas/CreateEntityCommand.json +118 -0
  125. package/dist/resources/schemas/CreateMicroserviceCommand.json +13 -1
  126. package/dist/resources/schemas/CreateProcessDefinitionCommand.json +1337 -0
  127. package/dist/resources/schemas/CreateQueryCommand.json +4 -0
  128. package/dist/resources/schemas/CreateWorkflowCommand.json +146 -1
  129. package/dist/resources/schemas/DataJobDto.json +6 -1
  130. package/dist/resources/schemas/DecisionDto.json +302 -0
  131. package/dist/resources/schemas/DetachConnectDataMicroserviceCommand.json +28 -0
  132. package/dist/resources/schemas/ExplainAccessQuery.json +33 -0
  133. package/dist/resources/schemas/GenerateProcessDocumentCommand.json +116 -0
  134. package/dist/resources/schemas/GlobalFunctionUpdateResultDto.json +25 -1
  135. package/dist/resources/schemas/MicroserviceDto.json +15 -3
  136. package/dist/resources/schemas/OrganizationProjectDto.json +335 -0
  137. package/dist/resources/schemas/OrganizationSchemaDto.json +196 -0
  138. package/dist/resources/schemas/OrganizationSchemaVersionDto.json +207 -0
  139. package/dist/resources/schemas/PatchProcessDefinitionCommand.json +76 -0
  140. package/dist/resources/schemas/PreviewMicroserviceCommand.json +10 -1
  141. package/dist/resources/schemas/PreviewWorkflowCommand.json +25 -1
  142. package/dist/resources/schemas/ProcessDefinitionDto.json +1480 -0
  143. package/dist/resources/schemas/ProcessSimulationDto.json +96 -0
  144. package/dist/resources/schemas/SaveConnectorCredentialCommand.json +90 -0
  145. package/dist/resources/schemas/SaveProcessEventSourceCommand.json +61 -0
  146. package/dist/resources/schemas/SaveProcessMailSourceCommand.json +89 -0
  147. package/dist/resources/schemas/SignProcessTaskCommand.json +73 -0
  148. package/dist/resources/schemas/SimulateProcessDefinitionQuery.json +92 -0
  149. package/dist/resources/schemas/StartMobileBuildCommand.json +54 -0
  150. package/dist/resources/schemas/StepDto.json +25 -1
  151. package/dist/resources/schemas/UpdateAccessPolicyCommand.json +209 -0
  152. package/dist/resources/schemas/UpdateDecisionCommand.json +216 -0
  153. package/dist/resources/schemas/UpdateEntityCommand.json +118 -0
  154. package/dist/resources/schemas/UpdateMicroserviceCommand.json +13 -1
  155. package/dist/resources/schemas/UpdateProcessDefinitionCommand.json +1357 -0
  156. package/dist/resources/schemas/UpdateQueryCommand.json +4 -0
  157. package/dist/resources/schemas/UpdateViewCommand.json +0 -2
  158. package/dist/resources/schemas/UpdateWorkflowCommand.json +146 -1
  159. package/dist/resources/schemas/UpsertMobileStoreSettingsCommand.json +274 -0
  160. package/dist/resources/schemas/ValidateProcessDefinitionQuery.json +1339 -0
  161. package/dist/server.js +31 -1
  162. package/dist/tools/access.js +369 -2
  163. package/dist/tools/accessOperations.js +135 -0
  164. package/dist/tools/accessPolicies.js +170 -0
  165. package/dist/tools/accessRuntime.js +203 -0
  166. package/dist/tools/applications.js +60 -3
  167. package/dist/tools/bpm.js +343 -0
  168. package/dist/tools/bpmGovernance.js +266 -0
  169. package/dist/tools/bpmOperations.js +230 -0
  170. package/dist/tools/bpmReporting.js +154 -0
  171. package/dist/tools/bpmRouting.js +150 -0
  172. package/dist/tools/bpmRuntime.js +396 -0
  173. package/dist/tools/case.js +178 -0
  174. package/dist/tools/caseRuntime.js +89 -0
  175. package/dist/tools/common.js +10 -1
  176. package/dist/tools/components.js +118 -14
  177. package/dist/tools/connectData.js +450 -0
  178. package/dist/tools/connectors.js +193 -0
  179. package/dist/tools/datasources.js +3 -3
  180. package/dist/tools/decisions.js +206 -0
  181. package/dist/tools/dependencies.js +1 -1
  182. package/dist/tools/deployments.js +38 -3
  183. package/dist/tools/designSchemaPatch.js +34 -9
  184. package/dist/tools/dtos.js +36 -5
  185. package/dist/tools/entities.js +79 -12
  186. package/dist/tools/externalComponents.js +26 -5
  187. package/dist/tools/flows.js +119 -17
  188. package/dist/tools/folders.js +1 -1
  189. package/dist/tools/imports.js +5 -2
  190. package/dist/tools/layouts.js +50 -17
  191. package/dist/tools/merges.js +2 -2
  192. package/dist/tools/microservices.js +77 -25
  193. package/dist/tools/mobile.js +280 -0
  194. package/dist/tools/mobileStore.js +556 -0
  195. package/dist/tools/modules.js +48 -0
  196. package/dist/tools/organizationStructure.js +137 -0
  197. package/dist/tools/pages.js +465 -98
  198. package/dist/tools/platformInfo.js +28 -8
  199. package/dist/tools/profileWrite.js +92 -0
  200. package/dist/tools/projects.js +71 -9
  201. package/dist/tools/rows.js +69 -13
  202. package/dist/tools/schemaOps.js +61 -1
  203. package/dist/tools/screenWrite.js +36 -7
  204. package/dist/tools/screens.js +95 -5
  205. package/dist/tools/templates.js +26 -1
  206. package/dist/tools/translations.js +1 -1
  207. package/dist/tools/variables.js +11 -5
  208. package/dist/tools/workflows.js +10 -5
  209. package/package.json +2 -2
  210. package/dist/platform/screenshot.js +0 -1162
@@ -49,6 +49,13 @@ function referenceName(node) {
49
49
  return referenceName(allOf[0]);
50
50
  return undefined;
51
51
  }
52
+ /**
53
+ * `System.Text.Json.Nodes.JsonNode` gibi serbest JSON değerlerinin üretilen şeması katıdır
54
+ * (`options/parent/root`); içine inilirse meşru anahtarlar "platform yok sayıyor" diye raporlanır.
55
+ */
56
+ function isFreeFormJson(node) {
57
+ return /(^|.)Json(Node|Object|Array|Value|Element)$/.test(referenceName(node) ?? '');
58
+ }
52
59
  function resolve(document, node) {
53
60
  if (!node || typeof node !== 'object')
54
61
  return undefined;
@@ -76,6 +83,8 @@ function walk(document, schema, value, path, into) {
76
83
  if (!schema || !value || typeof value !== 'object')
77
84
  return;
78
85
  if (Array.isArray(value)) {
86
+ if (isFreeFormJson(schema.items))
87
+ return;
79
88
  const items = resolve(document, schema.items);
80
89
  value.forEach((entry, index) => walk(document, items, entry, `${path}[${index}]`, into));
81
90
  return;
@@ -95,6 +104,8 @@ function walk(document, schema, value, path, into) {
95
104
  into.push(child);
96
105
  continue;
97
106
  }
107
+ if (isFreeFormJson(properties[key]))
108
+ continue;
98
109
  walk(document, resolve(document, properties[key]), entry, child, into);
99
110
  }
100
111
  }
@@ -154,6 +154,24 @@ const resolveShadow = (shadow) => {
154
154
  return undefined;
155
155
  return SHADOW_VALUES[shadow] ?? String(shadow);
156
156
  };
157
+ /**
158
+ * Döndür / ölçekle / kaydır alanlarının kabul aralığı — frontend `style-groups/transform-fields.ts`
159
+ * `TRANSFORM_RANGES`'in kopyası (altın vakalar kilitler). Aralık dışı ve birimli değer yazılmaz.
160
+ */
161
+ export const TRANSFORM_RANGES = {
162
+ rotate: [-360, 360],
163
+ scale: [10, 500],
164
+ translateX: [-1000, 1000],
165
+ translateY: [-1000, 1000]
166
+ };
167
+ /** Sayı ya da sayısal metin, aralığın içinde; aksi `undefined` — frontend `transformValue`. */
168
+ export const transformValue = (value, field) => {
169
+ if (typeof value !== 'number' && (typeof value !== 'string' || value.trim() === ''))
170
+ return undefined;
171
+ const parsed = Number(value);
172
+ const [min, max] = TRANSFORM_RANGES[field];
173
+ return Number.isFinite(parsed) && parsed >= min && parsed <= max ? parsed : undefined;
174
+ };
157
175
  /**
158
176
  * Grupların alan listeleri — frontend `style-groups/style-group-schemas.ts`
159
177
  * `STYLE_GROUP_FIELDS`'in kopyası. Parite testi `components.json`'daki gerçek
@@ -170,7 +188,11 @@ export const STYLE_GROUP_FIELDS = {
170
188
  'borderLeft',
171
189
  'shadow',
172
190
  'contentOverflow',
173
- 'opacity'
191
+ 'opacity',
192
+ 'rotate',
193
+ 'scale',
194
+ 'translateX',
195
+ 'translateY'
174
196
  ],
175
197
  typographyStyle: [
176
198
  'textColor',
@@ -220,6 +242,21 @@ export function composeTypedStyle(input, ext) {
220
242
  if (opacity !== undefined && opacity >= 0 && opacity < 100) {
221
243
  groups.opacity = String(opacity / 100);
222
244
  }
245
+ // Döndür / ölçekle / kaydır (ADR 0005): kaydır → döndür → ölçekle, köken merkez;
246
+ // ölçek yüzdedir, nötr değer ve aralık dışı yazılmaz — frontend `composeSurfaceTransform`.
247
+ const transform = [];
248
+ const x = transformValue(surface.translateX, 'translateX') ?? 0;
249
+ const y = transformValue(surface.translateY, 'translateY') ?? 0;
250
+ if (x !== 0 || y !== 0)
251
+ transform.push(`translate(${x}px, ${y}px)`);
252
+ const rotate = transformValue(surface.rotate, 'rotate');
253
+ if (rotate !== undefined && rotate !== 0)
254
+ transform.push(`rotate(${rotate}deg)`);
255
+ const scale = transformValue(surface.scale, 'scale');
256
+ if (scale !== undefined && scale !== 100)
257
+ transform.push(`scale(${scale / 100})`);
258
+ if (transform.length)
259
+ groups.transform = transform.join(' ');
223
260
  // `ROOT_TARGET` (`&`) kökün kendisidir: kendi derleyicisi olmayan kaplarda
224
261
  // yüzey düğüm kutusuna yazılır ve kaydırılan da odur.
225
262
  if (isSet(surface.contentOverflow) && ext?.overflowTarget) {
@@ -251,8 +288,10 @@ export function composeTypedStyle(input, ext) {
251
288
  assign(rules, 'borderColor', hover.borderColor);
252
289
  assign(rules, 'boxShadow', resolveShadow(hover.shadow));
253
290
  const lift = asDimension(hover.lift);
254
- if (lift !== undefined)
255
- rules.transform = `translateY(calc(-1 * ${lift}))`;
291
+ // Kaldırma düğümün kendi transform'unu ezmez, önüne eklenir.
292
+ if (lift !== undefined) {
293
+ rules.transform = `translateY(calc(-1 * ${lift}))${typeof groups.transform === 'string' ? ` ${groups.transform}` : ''}`;
294
+ }
256
295
  if (Object.keys(rules).length) {
257
296
  const duration = asNumber(hover.transitionMs) ?? 160;
258
297
  groups.transition = `background-color ${duration}ms ease, border-color ${duration}ms ease, box-shadow ${duration}ms ease, transform ${duration}ms ease`;
@@ -395,9 +434,7 @@ const STATCARD_FLEX_ALIGN = {
395
434
  left: 'flex-start',
396
435
  center: 'center',
397
436
  right: 'flex-end',
398
- justify: 'stretch',
399
- start: 'flex-start',
400
- end: 'flex-end'
437
+ justify: 'stretch'
401
438
  };
402
439
  function composeStatCardParts(input, root) {
403
440
  const value = input.valueStyle;
@@ -498,18 +535,6 @@ export const TYPED_STYLE_COMPONENTS = {
498
535
  groups: ['surfaceStyle'],
499
536
  ext: { overflowTarget: ROOT_TARGET }
500
537
  },
501
- modal: {
502
- // Panel portal ile düğüm kutusunun DIŞINA çizilir; yüzey panelin KÖKÜNDE
503
- // derlenir, taşma da panelin köküne iner (modal ölçümü, 2026-10-05).
504
- groups: ['surfaceStyle'],
505
- ext: { overflowTarget: ROOT_TARGET }
506
- },
507
- drawer: {
508
- // Panel portal ile düğüm kutusunun DIŞINA çizilir; yüzey panelin KÖKÜNDE
509
- // derlenir, taşma da panelin köküne iner (drawer ölçümü, 2026-10-05).
510
- groups: ['surfaceStyle'],
511
- ext: { overflowTarget: ROOT_TARGET }
512
- },
513
538
  icon: {
514
539
  // Yalnız hover: surface çipin (chipShape/chipColor), typography da boyutun
515
540
  // (size) ve rengin (color) çift kanalı olurdu — görsel kararlar semantik
@@ -531,6 +556,8 @@ export const NODE_SURFACE_TYPES = new Set([
531
556
  'table',
532
557
  'datatable',
533
558
  'collapsible-container',
559
+ 'drawer',
560
+ 'modal',
534
561
  'popover',
535
562
  'tabs',
536
563
  'stepper',
@@ -541,6 +568,13 @@ export const NODE_SURFACE_TYPES = new Set([
541
568
  'qm-content',
542
569
  'qm-sidebar'
543
570
  ]);
571
+ /**
572
+ * `style`'ı kendi içeriğinin CSS'i olarak alan tipler: `html`in `style`'ı uzun metindir ve yazarın
573
+ * işaretlemesine kapsamlı girer — web'de emotion sınıfı (`html.functions.ts` `resolveHtmlStyleClass`),
574
+ * mobilde korumalı belgenin stil bloğu (plans/mobil-plantcare-acigi f-20). "Düz CSS string style"
575
+ * (PAGE-014) ve "ham CSS çizilmez" (MOB-002) uyarıları bu tiplerde yanlıştır.
576
+ */
577
+ export const DOCUMENT_STYLE_TYPES = new Set(['html']);
544
578
  const NODE_SURFACE_EXTENSION = { overflowTarget: ROOT_TARGET };
545
579
  /** Düğüm kutusuna inen yüzey; kap tipi değilse ya da grup boşsa yok. */
546
580
  export function composeNodeSurfaceStyle(type, surfaceStyle) {
@@ -580,7 +614,7 @@ const unwrapProp = (value) => {
580
614
  result[key] = unwrapProp(item);
581
615
  return result;
582
616
  };
583
- const rawProp = (props, name) => {
617
+ export const rawProp = (props, name) => {
584
618
  const prop = props?.[name];
585
619
  // İfadeye bağlı prop'un değeri çalışma anında oluşur, burada çözülemez.
586
620
  return prop && typeof prop === 'object' && 'data' in prop ? unwrapProp(prop.data) : undefined;