@appaflytech/zeyrek-ai-mcp 0.0.36 → 0.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +15 -0
- package/README.md +5 -5
- package/dist/config.js +37 -0
- package/dist/index.js +2 -0
- package/dist/knowledge/access.js +802 -0
- package/dist/knowledge/backendConstraints.js +18 -1
- package/dist/knowledge/case.js +41 -0
- package/dist/knowledge/componentCatalog.js +524 -53
- package/dist/knowledge/componentEvents.js +132 -7
- package/dist/knowledge/connectDataBind.js +851 -0
- package/dist/knowledge/connectDataDefinition.js +344 -0
- package/dist/knowledge/connectDataExecute.js +93 -0
- package/dist/knowledge/connectDataRules.js +128 -0
- package/dist/knowledge/decision.js +121 -0
- package/dist/knowledge/expressionPrelude.js +60 -0
- package/dist/knowledge/layoutSummary.js +140 -2
- package/dist/knowledge/microserviceParameters.js +58 -0
- package/dist/knowledge/mining.js +94 -0
- package/dist/knowledge/mobileComponentCatalog.js +876 -0
- package/dist/knowledge/mobileComponentEvents.js +259 -0
- package/dist/knowledge/mobileStore.js +396 -0
- package/dist/knowledge/normalize.js +240 -72
- package/dist/knowledge/outlines.js +36 -0
- package/dist/knowledge/platform/lint.js +385 -0
- package/dist/knowledge/platform/mobile.js +142 -0
- package/dist/knowledge/platform/mobileLayoutLint.js +324 -0
- package/dist/knowledge/platform/mobileRules.js +231 -0
- package/dist/knowledge/platform/mobileSpacing.js +82 -0
- package/dist/knowledge/platform/mobileTabs.js +108 -0
- package/dist/knowledge/platform/nativeBoxModel.js +44 -0
- package/dist/knowledge/platform/profile.js +25 -0
- package/dist/knowledge/platform/resolve.js +122 -0
- package/dist/knowledge/platform/web.js +39 -0
- package/dist/knowledge/policy.js +18 -4
- package/dist/knowledge/process.js +510 -0
- package/dist/knowledge/reservedTables.js +79 -0
- package/dist/knowledge/rowFilter.js +43 -0
- package/dist/knowledge/rules.js +485 -22
- package/dist/knowledge/schemaGuard.js +11 -0
- package/dist/knowledge/styleResolve.js +64 -10
- package/dist/knowledge/styleResolveNative.js +529 -0
- package/dist/knowledge/themeResolve.js +3 -3
- package/dist/observability/trace.js +13 -5
- package/dist/platform/argumentAliases.js +128 -0
- package/dist/platform/bodyFile.js +103 -0
- package/dist/platform/capture/actions.js +398 -0
- package/dist/platform/capture/browser.js +1 -0
- package/dist/platform/capture/capture.js +683 -0
- package/dist/platform/capture/console-log.js +122 -0
- package/dist/platform/capture/index.js +11 -0
- package/dist/platform/capture/readiness.js +103 -0
- package/dist/platform/capture/summary.js +77 -0
- package/dist/platform/capture/target.js +5 -0
- package/dist/platform/capture/targets/studio-mobile.js +15 -0
- package/dist/platform/capture/targets/studio-web.js +5 -0
- package/dist/platform/diagnostics.js +10 -4
- package/dist/platform/domSummary.js +1 -1
- package/dist/platform/errors.js +163 -10
- package/dist/platform/http.js +29 -8
- package/dist/platform/impersonation.js +45 -0
- package/dist/platform/jsonArray.js +24 -0
- package/dist/platform/responses.js +39 -5
- package/dist/platform/schemaReadMemory.js +60 -0
- package/dist/platform/secrets.js +68 -2
- package/dist/platform/strictArguments.js +68 -12
- package/dist/platform/tokenVault.js +187 -4
- package/dist/resources/examples/bpm-gorev-kontrol.json +294 -0
- package/dist/resources/examples/bpm-iso-dokuman.json +228 -0
- package/dist/resources/examples/bpm-satinalma.json +376 -0
- package/dist/resources/examples/connect-data-convert-verify.json +107 -0
- package/dist/resources/examples/connect-data-dropdown-roles.json +66 -0
- package/dist/resources/examples/connect-data-edit-m2m.json +73 -0
- package/dist/resources/examples/connect-data-query-params.json +50 -0
- package/dist/resources/examples/connect-data-table-entity.json +147 -0
- package/dist/resources/examples/connect-data-workflow-microservice.json +65 -0
- package/dist/resources/examples/middleware-authenticate.json +1 -1
- package/dist/resources/examples/mobile-app-shell-drawer.json +244 -0
- package/dist/resources/examples/mobile-app-shell-stack.json +157 -0
- package/dist/resources/examples/mobile-app-shell-tab.json +208 -0
- package/dist/resources/examples/mobile-form-screen.json +365 -0
- package/dist/resources/examples/mobile-list-detail-form.json +703 -0
- package/dist/resources/examples/page-detail-profile.json +2 -1
- package/dist/resources/examples/page-dynamic-form.json +3 -2
- package/dist/resources/examples/page-flex-sections.json +1 -1
- package/dist/resources/examples/page-html-embed.json +1 -1
- package/dist/resources/examples/workflow-basic.json +8 -2
- package/dist/resources/guides/access.md +810 -0
- package/dist/resources/guides/bpm.md +691 -0
- package/dist/resources/guides/case.md +153 -0
- package/dist/resources/guides/component.md +92 -5
- package/dist/resources/guides/decision.md +185 -0
- package/dist/resources/guides/entity.md +50 -8
- package/dist/resources/guides/expressions.md +14 -5
- package/dist/resources/guides/functions.md +1 -1
- package/dist/resources/guides/getting-started.md +38 -1
- package/dist/resources/guides/layout.md +11 -7
- package/dist/resources/guides/merge.md +42 -7
- package/dist/resources/guides/microservice.md +88 -3
- package/dist/resources/guides/middleware.md +69 -5
- package/dist/resources/guides/mobile-layout.md +193 -0
- package/dist/resources/guides/mobile-publish.md +148 -0
- package/dist/resources/guides/mobile.md +565 -0
- package/dist/resources/guides/page.md +469 -82
- package/dist/resources/guides/theme.md +8 -2
- package/dist/resources/guides/translation.md +1 -1
- package/dist/resources/guides/workflow.md +58 -1
- package/dist/resources/read.js +41 -0
- package/dist/resources/rules.js +11 -5
- package/dist/resources/schema-fingerprint.json +7 -5
- package/dist/resources/schemas/AccessExplanationDto.json +144 -0
- package/dist/resources/schemas/AccessMatrixDto.json +170 -0
- package/dist/resources/schemas/AccessPermissionDto.json +57 -0
- package/dist/resources/schemas/AccessPolicyDto.json +223 -0
- package/dist/resources/schemas/AccessResourceDto.json +86 -0
- package/dist/resources/schemas/AppSessionDto.json +53 -0
- package/dist/resources/schemas/ConnectDataDescribeDto.json +344 -0
- package/dist/resources/schemas/ConnectDataRequestModel.json +202 -0
- package/dist/resources/schemas/ConnectDataResultDto.json +421 -0
- package/dist/resources/schemas/ConnectorCredentialDto.json +70 -0
- package/dist/resources/schemas/ConvertConnectDataToMicroserviceCommand.json +37 -0
- package/dist/resources/schemas/CreateAccessPolicyCommand.json +209 -0
- package/dist/resources/schemas/CreateDecisionCommand.json +221 -0
- package/dist/resources/schemas/CreateEntityCommand.json +118 -0
- package/dist/resources/schemas/CreateMicroserviceCommand.json +13 -1
- package/dist/resources/schemas/CreateProcessDefinitionCommand.json +1337 -0
- package/dist/resources/schemas/CreateQueryCommand.json +4 -0
- package/dist/resources/schemas/CreateWorkflowCommand.json +146 -1
- package/dist/resources/schemas/DataJobDto.json +6 -1
- package/dist/resources/schemas/DecisionDto.json +302 -0
- package/dist/resources/schemas/DetachConnectDataMicroserviceCommand.json +28 -0
- package/dist/resources/schemas/ExplainAccessQuery.json +33 -0
- package/dist/resources/schemas/GenerateProcessDocumentCommand.json +116 -0
- package/dist/resources/schemas/GlobalFunctionUpdateResultDto.json +24 -0
- package/dist/resources/schemas/MicroserviceDto.json +15 -3
- package/dist/resources/schemas/OrganizationProjectDto.json +343 -0
- package/dist/resources/schemas/OrganizationSchemaDto.json +196 -0
- package/dist/resources/schemas/OrganizationSchemaVersionDto.json +207 -0
- package/dist/resources/schemas/PatchProcessDefinitionCommand.json +76 -0
- package/dist/resources/schemas/PreviewMicroserviceCommand.json +10 -1
- package/dist/resources/schemas/PreviewWorkflowCommand.json +25 -1
- package/dist/resources/schemas/ProcessDefinitionDto.json +1480 -0
- package/dist/resources/schemas/ProcessSimulationDto.json +96 -0
- package/dist/resources/schemas/SaveConnectorCredentialCommand.json +90 -0
- package/dist/resources/schemas/SaveProcessEventSourceCommand.json +61 -0
- package/dist/resources/schemas/SaveProcessMailSourceCommand.json +89 -0
- package/dist/resources/schemas/SignProcessTaskCommand.json +73 -0
- package/dist/resources/schemas/SimulateProcessDefinitionQuery.json +92 -0
- package/dist/resources/schemas/StartMobileBuildCommand.json +54 -0
- package/dist/resources/schemas/StepDto.json +25 -1
- package/dist/resources/schemas/UpdateAccessPolicyCommand.json +209 -0
- package/dist/resources/schemas/UpdateDecisionCommand.json +216 -0
- package/dist/resources/schemas/UpdateEntityCommand.json +118 -0
- package/dist/resources/schemas/UpdateMicroserviceCommand.json +13 -1
- package/dist/resources/schemas/UpdateProcessDefinitionCommand.json +1357 -0
- package/dist/resources/schemas/UpdateQueryCommand.json +4 -0
- package/dist/resources/schemas/UpdateViewCommand.json +0 -2
- package/dist/resources/schemas/UpdateWorkflowCommand.json +146 -1
- package/dist/resources/schemas/UpsertMobileStoreSettingsCommand.json +333 -0
- package/dist/resources/schemas/ValidateProcessDefinitionQuery.json +1339 -0
- package/dist/server.js +31 -1
- package/dist/tools/access.js +369 -2
- package/dist/tools/accessOperations.js +135 -0
- package/dist/tools/accessPolicies.js +170 -0
- package/dist/tools/accessRuntime.js +203 -0
- package/dist/tools/applications.js +63 -3
- package/dist/tools/bpm.js +343 -0
- package/dist/tools/bpmGovernance.js +266 -0
- package/dist/tools/bpmOperations.js +230 -0
- package/dist/tools/bpmReporting.js +154 -0
- package/dist/tools/bpmRouting.js +150 -0
- package/dist/tools/bpmRuntime.js +396 -0
- package/dist/tools/case.js +178 -0
- package/dist/tools/caseRuntime.js +89 -0
- package/dist/tools/common.js +19 -6
- package/dist/tools/components.js +118 -14
- package/dist/tools/connectData.js +450 -0
- package/dist/tools/connectors.js +193 -0
- package/dist/tools/datasources.js +3 -3
- package/dist/tools/decisions.js +206 -0
- package/dist/tools/dependencies.js +1 -1
- package/dist/tools/deployments.js +38 -3
- package/dist/tools/designSchemaPatch.js +34 -9
- package/dist/tools/dtos.js +36 -5
- package/dist/tools/entities.js +79 -12
- package/dist/tools/environments.js +1 -1
- package/dist/tools/externalComponents.js +26 -5
- package/dist/tools/flows.js +119 -13
- package/dist/tools/folders.js +1 -1
- package/dist/tools/imports.js +5 -2
- package/dist/tools/layouts.js +50 -17
- package/dist/tools/merges.js +2 -2
- package/dist/tools/microservices.js +77 -25
- package/dist/tools/mobile.js +280 -0
- package/dist/tools/mobileStore.js +572 -0
- package/dist/tools/modules.js +48 -0
- package/dist/tools/organizationStructure.js +137 -0
- package/dist/tools/pages.js +467 -100
- package/dist/tools/platformInfo.js +28 -8
- package/dist/tools/profileWrite.js +92 -0
- package/dist/tools/projects.js +71 -9
- package/dist/tools/rows.js +69 -13
- package/dist/tools/schemaOps.js +61 -1
- package/dist/tools/screenWrite.js +36 -7
- package/dist/tools/screens.js +95 -5
- package/dist/tools/templates.js +26 -1
- package/dist/tools/translations.js +1 -1
- package/dist/tools/variables.js +11 -5
- package/dist/tools/workflows.js +10 -5
- package/package.json +2 -2
- package/dist/platform/screenshot.js +0 -1162
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_meta": {
|
|
3
|
+
"synthetic": true,
|
|
4
|
+
"note": "Mobil uygulama kabuğu — SEKMELER: layout yığındakiyle AYNI (app-bar + slot); sekmeler layout'ta değil uygulama ayarındadır (properties.mobile.tabs). Çubuk runtime'da cihaz ekranının altında çizilir, kimliği __tabs, öğeleri __tabs__item-<sayfa slug'ı>.",
|
|
5
|
+
"pairsWith": "mobile-app-shell-stack, mobile-list-detail-form",
|
|
6
|
+
"sourceRef": "platform_guide('mobile') §Gezinme; zeyrek-mcp/src/knowledge/platform/mobileTabs.ts (normalizeMobileTabs)"
|
|
7
|
+
},
|
|
8
|
+
"_rules": {
|
|
9
|
+
"flexOnly": "Mobil çizer yalnız flex'tir: blocks boş, sıra dizi indeksi, ölçü appearance ile (MOB-001). Kökte layout prop'u YOK — mobil container şeması onu düşürür.",
|
|
10
|
+
"singleSlot": "TEK slot; sayfa şeması slot'a yerleşir (LAY-002 / LAY-006 web'dekiyle aynı).",
|
|
11
|
+
"appBarTitle": "app-bar.title boşsa çubuk başlıksız çizilir — sayfa adına düşen bir yedek YOKTUR (runtime app-bar yalnız title'ı yazar; koşu 37 S-9, mizanpaj 06 kör koşusu). Sabit başlık için mobile_app_create title'ı, sayfaya göre değişen başlık için title'ı bir değişkene bağlayın ya da başlığı sayfanın içine text olarak koyun. leading 'auto' yığında geri düğmesi, kökte (menuTarget varsa) menü düğmesi çizer.",
|
|
12
|
+
"catalog": "app-bar, slot ve drawer mobil kataloğun Dalga 1 bileşenleridir. component_list mobil uygulamada bunları döndürmüyorsa katalog henüz yazılmamıştır ve layout_create 422 unknown-type alır (MOB-003).",
|
|
13
|
+
"verify": "Kabuğu layout'a bağlı bir sayfada page_screenshot ile doğrula (mobilde varsayılan device: 'phone').",
|
|
14
|
+
"tabsNeedPageIds": "items[].page sayfa ID'sidir (slug değil): sekme ayarı sayfalar KURULDUKTAN SONRA application_update ile yazılır. 1-5 öğe, tekrar yok (MOB-007).",
|
|
15
|
+
"noTabBarNode": "Layout'a ya da sayfaya tab-bar / drawer-menu düğümü koyma — katalog bileşeni değiller, MOB-007 uyarısı alır.",
|
|
16
|
+
"layoutContract": "Mizanpaj sözleşmesi: üst güvenli alan tek yerde, kabukta (app-bar 'safe-area' edges:'top' içinde; sayfa ikinci pay vermez). Ekran kenarı boşluğu tek değer (16) ve tek yerde: slot'un yatay ve üst margin'i — içerik app-bar'ın 16 dp altından başlar, kabuksuz sayfadaki gibi. shell_root 'shrink' ve padding'siz — düz container olduğu için tip yazılmazsa runtime 10 dp padding verir ve app-bar kenardan kopar."
|
|
17
|
+
},
|
|
18
|
+
"mobileAppCreate": {
|
|
19
|
+
"slug": "saha",
|
|
20
|
+
"name": "Saha",
|
|
21
|
+
"pages": [
|
|
22
|
+
{
|
|
23
|
+
"pageSlug": "gorevler",
|
|
24
|
+
"pageName": "Görevler"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"pageSlug": "yeni",
|
|
28
|
+
"pageName": "Yeni görev"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"pageSlug": "profil",
|
|
32
|
+
"pageName": "Profil"
|
|
33
|
+
}
|
|
34
|
+
],
|
|
35
|
+
"tabs": [
|
|
36
|
+
{
|
|
37
|
+
"pageSlug": "gorevler",
|
|
38
|
+
"label": "Görevler",
|
|
39
|
+
"icon": "list"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"pageSlug": "yeni",
|
|
43
|
+
"label": "Yeni",
|
|
44
|
+
"icon": "add"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"pageSlug": "profil",
|
|
48
|
+
"label": "Profil",
|
|
49
|
+
"icon": "user"
|
|
50
|
+
}
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
"layoutCreate": {
|
|
54
|
+
"name": "Mobil kabuk",
|
|
55
|
+
"views": [
|
|
56
|
+
{
|
|
57
|
+
"elementId": "shell_root",
|
|
58
|
+
"name": "shell_root",
|
|
59
|
+
"type": "container",
|
|
60
|
+
"kind": "component",
|
|
61
|
+
"props": {
|
|
62
|
+
"title": {
|
|
63
|
+
"type": "static",
|
|
64
|
+
"ref": null,
|
|
65
|
+
"data": ""
|
|
66
|
+
},
|
|
67
|
+
"direction": {
|
|
68
|
+
"type": "static",
|
|
69
|
+
"ref": null,
|
|
70
|
+
"data": "column"
|
|
71
|
+
},
|
|
72
|
+
"gap": {
|
|
73
|
+
"type": "static",
|
|
74
|
+
"ref": null,
|
|
75
|
+
"data": "none"
|
|
76
|
+
},
|
|
77
|
+
"size": {
|
|
78
|
+
"type": "static",
|
|
79
|
+
"ref": null,
|
|
80
|
+
"data": "shrink"
|
|
81
|
+
},
|
|
82
|
+
"wrap": {
|
|
83
|
+
"type": "static",
|
|
84
|
+
"ref": null,
|
|
85
|
+
"data": false
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
"states": {
|
|
89
|
+
"isDroppable": true,
|
|
90
|
+
"isWrapper": true
|
|
91
|
+
},
|
|
92
|
+
"appearance": {
|
|
93
|
+
"heightType": "fill",
|
|
94
|
+
"widthType": "fill",
|
|
95
|
+
"paddingType": "none"
|
|
96
|
+
},
|
|
97
|
+
"blocks": [],
|
|
98
|
+
"events": [],
|
|
99
|
+
"validations": [],
|
|
100
|
+
"stateBindings": [],
|
|
101
|
+
"children": [
|
|
102
|
+
{
|
|
103
|
+
"elementId": "sa_ust",
|
|
104
|
+
"name": "sa_ust",
|
|
105
|
+
"type": "safe-area",
|
|
106
|
+
"kind": "component",
|
|
107
|
+
"props": {
|
|
108
|
+
"edges": {
|
|
109
|
+
"type": "static",
|
|
110
|
+
"ref": null,
|
|
111
|
+
"data": "top"
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"states": {
|
|
115
|
+
"isDroppable": true
|
|
116
|
+
},
|
|
117
|
+
"appearance": {
|
|
118
|
+
"widthType": "fill"
|
|
119
|
+
},
|
|
120
|
+
"blocks": [],
|
|
121
|
+
"events": [],
|
|
122
|
+
"validations": [],
|
|
123
|
+
"stateBindings": [],
|
|
124
|
+
"children": [
|
|
125
|
+
{
|
|
126
|
+
"elementId": "app_bar",
|
|
127
|
+
"name": "app_bar",
|
|
128
|
+
"type": "app-bar",
|
|
129
|
+
"kind": "component",
|
|
130
|
+
"props": {
|
|
131
|
+
"title": {
|
|
132
|
+
"type": "static",
|
|
133
|
+
"ref": null,
|
|
134
|
+
"data": ""
|
|
135
|
+
},
|
|
136
|
+
"leading": {
|
|
137
|
+
"type": "static",
|
|
138
|
+
"ref": null,
|
|
139
|
+
"data": "auto"
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
"appearance": {
|
|
143
|
+
"widthType": "fill"
|
|
144
|
+
},
|
|
145
|
+
"blocks": [],
|
|
146
|
+
"events": [],
|
|
147
|
+
"validations": [],
|
|
148
|
+
"stateBindings": [],
|
|
149
|
+
"children": []
|
|
150
|
+
}
|
|
151
|
+
]
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"elementId": "page_slot",
|
|
155
|
+
"name": "page_slot",
|
|
156
|
+
"type": "slot",
|
|
157
|
+
"kind": "component",
|
|
158
|
+
"props": {},
|
|
159
|
+
"appearance": {
|
|
160
|
+
"widthType": "fill",
|
|
161
|
+
"heightType": "fill",
|
|
162
|
+
"marginType": "custom",
|
|
163
|
+
"marginValues": {
|
|
164
|
+
"top": 16,
|
|
165
|
+
"right": 16,
|
|
166
|
+
"bottom": 0,
|
|
167
|
+
"left": 16
|
|
168
|
+
}
|
|
169
|
+
},
|
|
170
|
+
"blocks": [],
|
|
171
|
+
"events": [],
|
|
172
|
+
"validations": [],
|
|
173
|
+
"stateBindings": [],
|
|
174
|
+
"children": []
|
|
175
|
+
}
|
|
176
|
+
]
|
|
177
|
+
}
|
|
178
|
+
]
|
|
179
|
+
},
|
|
180
|
+
"applicationUpdate": {
|
|
181
|
+
"properties": {
|
|
182
|
+
"mobile": {
|
|
183
|
+
"tabs": {
|
|
184
|
+
"enabled": true,
|
|
185
|
+
"style": "default",
|
|
186
|
+
"showLabels": true,
|
|
187
|
+
"items": [
|
|
188
|
+
{
|
|
189
|
+
"page": "<gorevler sayfa id'si>",
|
|
190
|
+
"label": "Görevler",
|
|
191
|
+
"icon": "list"
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"page": "<yeni sayfa id'si>",
|
|
195
|
+
"label": "Yeni",
|
|
196
|
+
"icon": "add"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"page": "<profil sayfa id'si>",
|
|
200
|
+
"label": "Profil",
|
|
201
|
+
"icon": "user"
|
|
202
|
+
}
|
|
203
|
+
]
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
@@ -0,0 +1,365 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_meta": {
|
|
3
|
+
"synthetic": true,
|
|
4
|
+
"note": "Mizanpaj sözleşmesinin altın örneği (platform_guide('mobile-layout')): kabuklu bir form ekranı — h2 başlık, yüzeyli bir alan grubu (içinde tooltip'li alan), saydam bir grup ve formun sonunda kaydet düğmesi. Kabuk mobile-app-shell-stack'tir (safe-area içinde app-bar, slot yatay ve üst 16). page_create köke shrink/stretch kurar; buradaki op'lar MOB-015…021'den sıfır bulguyla geçer (test/mobile-layout-lint.test.ts).",
|
|
5
|
+
"pairsWith": "mobile-app-shell-stack (kabuk), mobile-list-detail-form (liste → detay → form akışı)",
|
|
6
|
+
"sourceRef": "platform_guide('mobile-layout') §Sözleşme, §İskelet ağaçları, §Bileşen dizgisi"
|
|
7
|
+
},
|
|
8
|
+
"_rules": {
|
|
9
|
+
"spacing": "Her düğüm marginType:'none' taşır; aralık yalnız ebeveynin gap'inden gelir (bölümler arası large, bölüm içi medium). Gateway yeni düğüme bunu kendisi yazar — burada açıkça duruyor ki örnek tek başına okunabilsin.",
|
|
10
|
+
"surfaceVsTransparent": "kart_temel görünen gruptur: surfaceStyle zemini + radius lg + 16 iç boşluk, içeriği bilerek içeride durur. grp_plan görünmeyen gruptur: paddingType none, içeriği kardeşleriyle aynı kenarda başlar.",
|
|
11
|
+
"tooltip": "tt_ad saydam sarmalayıcıdır: paddingType none + widthType fill. Runtime tooltip'e varsayılan boşluk vermez (2026-09-29); açık değer ondan önce derlenmiş uygulamada da in_ad'ı kardeşleriyle hizada tutar (yoksa 14 dp içeri kayar — MOB-019).",
|
|
12
|
+
"column": "Her grup direction:'column' + horizontalAlign:'stretch' yazar; yönü yazılmamış form/container satırdır (MOB-020).",
|
|
13
|
+
"action": "Kaydet düğmesi formun içinde, akışın sonunda: type:'submit' formun doğrulamasını koşturur. Ekrana sabit düğme (floating-container) gerekirse formun dışında kalır ve formId yolu doğrulamayı ATLAR (bilinen açık) — platform_guide('mobile-layout') §Bileşen dizgisi.",
|
|
14
|
+
"verify": "page_schema_validate: MOB-015…021 bulgusu yok. page_screenshot({ layoutReport: true }): alignment.gutter 16, leftEdges tek küme."
|
|
15
|
+
},
|
|
16
|
+
"pages": [
|
|
17
|
+
{
|
|
18
|
+
"pageCreateArgs": {
|
|
19
|
+
"name": "Yeni ilaç",
|
|
20
|
+
"slug": "ilac-ekle"
|
|
21
|
+
},
|
|
22
|
+
"schemaPatchOps": [
|
|
23
|
+
{
|
|
24
|
+
"op": "add_component",
|
|
25
|
+
"parent": "page_container",
|
|
26
|
+
"component": {
|
|
27
|
+
"elementId": "txt_baslik",
|
|
28
|
+
"name": "txt_baslik",
|
|
29
|
+
"type": "text",
|
|
30
|
+
"kind": "component",
|
|
31
|
+
"props": {
|
|
32
|
+
"content": {
|
|
33
|
+
"type": "static",
|
|
34
|
+
"ref": null,
|
|
35
|
+
"data": "Yeni ilaç"
|
|
36
|
+
},
|
|
37
|
+
"type": {
|
|
38
|
+
"type": "static",
|
|
39
|
+
"ref": null,
|
|
40
|
+
"data": "h2"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"appearance": {
|
|
44
|
+
"marginType": "none",
|
|
45
|
+
"widthType": "fill"
|
|
46
|
+
},
|
|
47
|
+
"blocks": [],
|
|
48
|
+
"events": [],
|
|
49
|
+
"validations": [],
|
|
50
|
+
"stateBindings": [],
|
|
51
|
+
"children": []
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"op": "add_component",
|
|
56
|
+
"parent": "page_container",
|
|
57
|
+
"component": {
|
|
58
|
+
"elementId": "frm_ilac",
|
|
59
|
+
"name": "frm_ilac",
|
|
60
|
+
"type": "form",
|
|
61
|
+
"kind": "component",
|
|
62
|
+
"props": {
|
|
63
|
+
"direction": {
|
|
64
|
+
"type": "static",
|
|
65
|
+
"ref": null,
|
|
66
|
+
"data": "column"
|
|
67
|
+
},
|
|
68
|
+
"horizontalAlign": {
|
|
69
|
+
"type": "static",
|
|
70
|
+
"ref": null,
|
|
71
|
+
"data": "stretch"
|
|
72
|
+
},
|
|
73
|
+
"gap": {
|
|
74
|
+
"type": "static",
|
|
75
|
+
"ref": null,
|
|
76
|
+
"data": "large"
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
"appearance": {
|
|
80
|
+
"marginType": "none",
|
|
81
|
+
"widthType": "fill",
|
|
82
|
+
"paddingType": "none"
|
|
83
|
+
},
|
|
84
|
+
"blocks": [],
|
|
85
|
+
"events": [],
|
|
86
|
+
"validations": [],
|
|
87
|
+
"stateBindings": [],
|
|
88
|
+
"children": [
|
|
89
|
+
{
|
|
90
|
+
"elementId": "kart_temel",
|
|
91
|
+
"name": "kart_temel",
|
|
92
|
+
"type": "container",
|
|
93
|
+
"kind": "component",
|
|
94
|
+
"props": {
|
|
95
|
+
"direction": {
|
|
96
|
+
"type": "static",
|
|
97
|
+
"ref": null,
|
|
98
|
+
"data": "column"
|
|
99
|
+
},
|
|
100
|
+
"horizontalAlign": {
|
|
101
|
+
"type": "static",
|
|
102
|
+
"ref": null,
|
|
103
|
+
"data": "stretch"
|
|
104
|
+
},
|
|
105
|
+
"gap": {
|
|
106
|
+
"type": "static",
|
|
107
|
+
"ref": null,
|
|
108
|
+
"data": "medium"
|
|
109
|
+
},
|
|
110
|
+
"surfaceStyle": {
|
|
111
|
+
"type": "static",
|
|
112
|
+
"ref": null,
|
|
113
|
+
"data": {
|
|
114
|
+
"background": {
|
|
115
|
+
"type": "static",
|
|
116
|
+
"ref": null,
|
|
117
|
+
"data": "var(--ng-background-surface)"
|
|
118
|
+
},
|
|
119
|
+
"radius": {
|
|
120
|
+
"type": "static",
|
|
121
|
+
"ref": null,
|
|
122
|
+
"data": "lg"
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
"appearance": {
|
|
128
|
+
"marginType": "none",
|
|
129
|
+
"widthType": "fill",
|
|
130
|
+
"paddingType": "custom",
|
|
131
|
+
"paddingValue": 16
|
|
132
|
+
},
|
|
133
|
+
"blocks": [],
|
|
134
|
+
"events": [],
|
|
135
|
+
"validations": [],
|
|
136
|
+
"stateBindings": [],
|
|
137
|
+
"children": [
|
|
138
|
+
{
|
|
139
|
+
"elementId": "tt_ad",
|
|
140
|
+
"name": "tt_ad",
|
|
141
|
+
"type": "tooltip",
|
|
142
|
+
"kind": "component",
|
|
143
|
+
"props": {
|
|
144
|
+
"text": {
|
|
145
|
+
"type": "static",
|
|
146
|
+
"ref": null,
|
|
147
|
+
"data": "Kutunun üstündeki ticari ad"
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
"appearance": {
|
|
151
|
+
"marginType": "none",
|
|
152
|
+
"widthType": "fill",
|
|
153
|
+
"paddingType": "none"
|
|
154
|
+
},
|
|
155
|
+
"blocks": [],
|
|
156
|
+
"events": [],
|
|
157
|
+
"validations": [],
|
|
158
|
+
"stateBindings": [],
|
|
159
|
+
"children": [
|
|
160
|
+
{
|
|
161
|
+
"elementId": "in_ad",
|
|
162
|
+
"name": "in_ad",
|
|
163
|
+
"type": "textinput",
|
|
164
|
+
"kind": "component",
|
|
165
|
+
"props": {
|
|
166
|
+
"label": {
|
|
167
|
+
"type": "static",
|
|
168
|
+
"ref": null,
|
|
169
|
+
"data": "İlaç adı"
|
|
170
|
+
},
|
|
171
|
+
"placeholder": {
|
|
172
|
+
"type": "static",
|
|
173
|
+
"ref": null,
|
|
174
|
+
"data": "Ör. Metformin 500 mg"
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
"appearance": {
|
|
178
|
+
"marginType": "none",
|
|
179
|
+
"widthType": "fill"
|
|
180
|
+
},
|
|
181
|
+
"blocks": [],
|
|
182
|
+
"events": [],
|
|
183
|
+
"validations": [],
|
|
184
|
+
"stateBindings": [],
|
|
185
|
+
"children": []
|
|
186
|
+
}
|
|
187
|
+
]
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"elementId": "dd_form",
|
|
191
|
+
"name": "dd_form",
|
|
192
|
+
"type": "dropdown",
|
|
193
|
+
"kind": "component",
|
|
194
|
+
"props": {
|
|
195
|
+
"label": {
|
|
196
|
+
"type": "static",
|
|
197
|
+
"ref": null,
|
|
198
|
+
"data": "İlacın formu"
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"appearance": {
|
|
202
|
+
"marginType": "none",
|
|
203
|
+
"widthType": "fill"
|
|
204
|
+
},
|
|
205
|
+
"blocks": [],
|
|
206
|
+
"events": [],
|
|
207
|
+
"validations": [],
|
|
208
|
+
"stateBindings": [],
|
|
209
|
+
"children": []
|
|
210
|
+
}
|
|
211
|
+
],
|
|
212
|
+
"states": {
|
|
213
|
+
"isDroppable": true
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"elementId": "grp_plan",
|
|
218
|
+
"name": "grp_plan",
|
|
219
|
+
"type": "container",
|
|
220
|
+
"kind": "component",
|
|
221
|
+
"props": {
|
|
222
|
+
"direction": {
|
|
223
|
+
"type": "static",
|
|
224
|
+
"ref": null,
|
|
225
|
+
"data": "column"
|
|
226
|
+
},
|
|
227
|
+
"horizontalAlign": {
|
|
228
|
+
"type": "static",
|
|
229
|
+
"ref": null,
|
|
230
|
+
"data": "stretch"
|
|
231
|
+
},
|
|
232
|
+
"gap": {
|
|
233
|
+
"type": "static",
|
|
234
|
+
"ref": null,
|
|
235
|
+
"data": "medium"
|
|
236
|
+
},
|
|
237
|
+
"title": {
|
|
238
|
+
"type": "static",
|
|
239
|
+
"ref": null,
|
|
240
|
+
"data": ""
|
|
241
|
+
}
|
|
242
|
+
},
|
|
243
|
+
"appearance": {
|
|
244
|
+
"marginType": "none",
|
|
245
|
+
"widthType": "fill",
|
|
246
|
+
"paddingType": "none"
|
|
247
|
+
},
|
|
248
|
+
"blocks": [],
|
|
249
|
+
"events": [],
|
|
250
|
+
"validations": [],
|
|
251
|
+
"stateBindings": [],
|
|
252
|
+
"children": [
|
|
253
|
+
{
|
|
254
|
+
"elementId": "txt_plan",
|
|
255
|
+
"name": "txt_plan",
|
|
256
|
+
"type": "text",
|
|
257
|
+
"kind": "component",
|
|
258
|
+
"props": {
|
|
259
|
+
"content": {
|
|
260
|
+
"type": "static",
|
|
261
|
+
"ref": null,
|
|
262
|
+
"data": "Plan"
|
|
263
|
+
},
|
|
264
|
+
"type": {
|
|
265
|
+
"type": "static",
|
|
266
|
+
"ref": null,
|
|
267
|
+
"data": "h4"
|
|
268
|
+
}
|
|
269
|
+
},
|
|
270
|
+
"appearance": {
|
|
271
|
+
"marginType": "none",
|
|
272
|
+
"widthType": "fill"
|
|
273
|
+
},
|
|
274
|
+
"blocks": [],
|
|
275
|
+
"events": [],
|
|
276
|
+
"validations": [],
|
|
277
|
+
"stateBindings": [],
|
|
278
|
+
"children": []
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"elementId": "dp_bas",
|
|
282
|
+
"name": "dp_bas",
|
|
283
|
+
"type": "datepicker",
|
|
284
|
+
"kind": "component",
|
|
285
|
+
"props": {
|
|
286
|
+
"label": {
|
|
287
|
+
"type": "static",
|
|
288
|
+
"ref": null,
|
|
289
|
+
"data": "Başlangıç"
|
|
290
|
+
}
|
|
291
|
+
},
|
|
292
|
+
"appearance": {
|
|
293
|
+
"marginType": "none",
|
|
294
|
+
"widthType": "fill"
|
|
295
|
+
},
|
|
296
|
+
"blocks": [],
|
|
297
|
+
"events": [],
|
|
298
|
+
"validations": [],
|
|
299
|
+
"stateBindings": [],
|
|
300
|
+
"children": []
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"elementId": "ta_not",
|
|
304
|
+
"name": "ta_not",
|
|
305
|
+
"type": "textarea",
|
|
306
|
+
"kind": "component",
|
|
307
|
+
"props": {
|
|
308
|
+
"label": {
|
|
309
|
+
"type": "static",
|
|
310
|
+
"ref": null,
|
|
311
|
+
"data": "Not"
|
|
312
|
+
}
|
|
313
|
+
},
|
|
314
|
+
"appearance": {
|
|
315
|
+
"marginType": "none",
|
|
316
|
+
"widthType": "fill"
|
|
317
|
+
},
|
|
318
|
+
"blocks": [],
|
|
319
|
+
"events": [],
|
|
320
|
+
"validations": [],
|
|
321
|
+
"stateBindings": [],
|
|
322
|
+
"children": []
|
|
323
|
+
}
|
|
324
|
+
],
|
|
325
|
+
"states": {
|
|
326
|
+
"isDroppable": true
|
|
327
|
+
}
|
|
328
|
+
},
|
|
329
|
+
{
|
|
330
|
+
"elementId": "btn_kaydet",
|
|
331
|
+
"name": "btn_kaydet",
|
|
332
|
+
"type": "button",
|
|
333
|
+
"kind": "component",
|
|
334
|
+
"props": {
|
|
335
|
+
"text": {
|
|
336
|
+
"type": "static",
|
|
337
|
+
"ref": null,
|
|
338
|
+
"data": "Kaydet"
|
|
339
|
+
},
|
|
340
|
+
"type": {
|
|
341
|
+
"type": "static",
|
|
342
|
+
"ref": null,
|
|
343
|
+
"data": "submit"
|
|
344
|
+
}
|
|
345
|
+
},
|
|
346
|
+
"appearance": {
|
|
347
|
+
"marginType": "none",
|
|
348
|
+
"widthType": "fill"
|
|
349
|
+
},
|
|
350
|
+
"blocks": [],
|
|
351
|
+
"events": [],
|
|
352
|
+
"validations": [],
|
|
353
|
+
"stateBindings": [],
|
|
354
|
+
"children": []
|
|
355
|
+
}
|
|
356
|
+
],
|
|
357
|
+
"states": {
|
|
358
|
+
"isDroppable": true
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
]
|
|
363
|
+
}
|
|
364
|
+
]
|
|
365
|
+
}
|