@devoplus/one-sdk 0.0.0-stage → 0.2.0-next.117
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/CHANGELOG.md +268 -0
- package/README.md +893 -2
- package/bin/accessRequest.d.mts +96 -0
- package/bin/accessRequest.mjs +340 -0
- package/bin/appOps.d.mts +97 -0
- package/bin/appOps.mjs +336 -0
- package/bin/dataCommand.mjs +131 -0
- package/bin/devConfig.mjs +132 -0
- package/bin/one.mjs +341 -0
- package/bin/session.mjs +239 -0
- package/dist/agentInput.d.ts +9 -0
- package/dist/agentInput.d.ts.map +1 -0
- package/dist/agentInput.js +102 -0
- package/dist/agentInput.js.map +1 -0
- package/dist/agentTools.d.ts +83 -0
- package/dist/agentTools.d.ts.map +1 -0
- package/dist/agentTools.js +164 -0
- package/dist/agentTools.js.map +1 -0
- package/dist/ai.d.ts +67 -0
- package/dist/ai.d.ts.map +1 -0
- package/dist/ai.js +129 -0
- package/dist/ai.js.map +1 -0
- package/dist/audit.d.ts +21 -0
- package/dist/audit.d.ts.map +1 -0
- package/dist/audit.js +58 -0
- package/dist/audit.js.map +1 -0
- package/dist/backend.d.ts +27 -0
- package/dist/backend.d.ts.map +1 -0
- package/dist/backend.js +63 -0
- package/dist/backend.js.map +1 -0
- package/dist/cache.d.ts +20 -0
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +84 -0
- package/dist/cache.js.map +1 -0
- package/dist/client.d.ts +147 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +469 -0
- package/dist/client.js.map +1 -0
- package/dist/components.d.ts +235 -0
- package/dist/components.d.ts.map +1 -0
- package/dist/components.js +1491 -0
- package/dist/components.js.map +1 -0
- package/dist/context.d.ts +110 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +126 -0
- package/dist/context.js.map +1 -0
- package/dist/data/crud.d.ts +74 -0
- package/dist/data/crud.d.ts.map +1 -0
- package/dist/data/crud.js +614 -0
- package/dist/data/crud.js.map +1 -0
- package/dist/data/ddl.d.ts +76 -0
- package/dist/data/ddl.d.ts.map +1 -0
- package/dist/data/ddl.js +362 -0
- package/dist/data/ddl.js.map +1 -0
- package/dist/data/fold.d.ts +14 -0
- package/dist/data/fold.d.ts.map +1 -0
- package/dist/data/fold.js +76 -0
- package/dist/data/fold.js.map +1 -0
- package/dist/data/model.d.ts +113 -0
- package/dist/data/model.d.ts.map +1 -0
- package/dist/data/model.js +408 -0
- package/dist/data/model.js.map +1 -0
- package/dist/data/values.d.ts +29 -0
- package/dist/data/values.d.ts.map +1 -0
- package/dist/data/values.js +152 -0
- package/dist/data/values.js.map +1 -0
- package/dist/dexa.d.ts +44 -0
- package/dist/dexa.d.ts.map +1 -0
- package/dist/dexa.js +74 -0
- package/dist/dexa.js.map +1 -0
- package/dist/dexaCommand.d.ts +116 -0
- package/dist/dexaCommand.d.ts.map +1 -0
- package/dist/dexaCommand.js +226 -0
- package/dist/dexaCommand.js.map +1 -0
- package/dist/export/columns.d.ts +62 -0
- package/dist/export/columns.d.ts.map +1 -0
- package/dist/export/columns.js +127 -0
- package/dist/export/columns.js.map +1 -0
- package/dist/export/csv.d.ts +10 -0
- package/dist/export/csv.d.ts.map +1 -0
- package/dist/export/csv.js +30 -0
- package/dist/export/csv.js.map +1 -0
- package/dist/export/report.d.ts +19 -0
- package/dist/export/report.d.ts.map +1 -0
- package/dist/export/report.js +91 -0
- package/dist/export/report.js.map +1 -0
- package/dist/export/response.d.ts +14 -0
- package/dist/export/response.d.ts.map +1 -0
- package/dist/export/response.js +70 -0
- package/dist/export/response.js.map +1 -0
- package/dist/export/xlsx.d.ts +15 -0
- package/dist/export/xlsx.d.ts.map +1 -0
- package/dist/export/xlsx.js +167 -0
- package/dist/export/xlsx.js.map +1 -0
- package/dist/export/zip.d.ts +7 -0
- package/dist/export/zip.d.ts.map +1 -0
- package/dist/export/zip.js +83 -0
- package/dist/export/zip.js.map +1 -0
- package/dist/files.d.ts +52 -0
- package/dist/files.d.ts.map +1 -0
- package/dist/files.js +137 -0
- package/dist/files.js.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -0
- package/dist/jobs.d.ts +57 -0
- package/dist/jobs.d.ts.map +1 -0
- package/dist/jobs.js +157 -0
- package/dist/jobs.js.map +1 -0
- package/dist/log.d.ts +22 -0
- package/dist/log.d.ts.map +1 -0
- package/dist/log.js +107 -0
- package/dist/log.js.map +1 -0
- package/dist/notify.d.ts +41 -0
- package/dist/notify.d.ts.map +1 -0
- package/dist/notify.js +11 -0
- package/dist/notify.js.map +1 -0
- package/dist/org.d.ts +184 -0
- package/dist/org.d.ts.map +1 -0
- package/dist/org.js +114 -0
- package/dist/org.js.map +1 -0
- package/dist/people.d.ts +39 -0
- package/dist/people.d.ts.map +1 -0
- package/dist/people.js +88 -0
- package/dist/people.js.map +1 -0
- package/dist/problem.d.ts +12 -0
- package/dist/problem.d.ts.map +1 -0
- package/dist/problem.js +33 -0
- package/dist/problem.js.map +1 -0
- package/dist/runtime.d.ts +92 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +8 -0
- package/dist/runtime.js.map +1 -0
- package/dist/scenarios.d.ts +125 -0
- package/dist/scenarios.d.ts.map +1 -0
- package/dist/scenarios.js +251 -0
- package/dist/scenarios.js.map +1 -0
- package/package.json +55 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crud.js","sourceRoot":"","sources":["../../src/data/crud.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { type DataEntity, type DataModel, SYSTEM_COLUMNS } from './model.ts';
|
|
2
|
+
/** Anlık görüntü dosyası: `migrations/.one-data-snapshot.json` — son üretimde geçerli olan model. */
|
|
3
|
+
export declare const DATA_SNAPSHOT_FILE = ".one-data-snapshot.json";
|
|
4
|
+
export declare const DATA_MODEL_FILE = "one.data.json";
|
|
5
|
+
export declare const DATA_TYPES_FILE = "src/data/types.ts";
|
|
6
|
+
/** Migration adı: `NNNN_<ad>.sql` (platformun uyguladığı adlandırma). */
|
|
7
|
+
export declare const MIGRATION_NAME_RE: RegExp;
|
|
8
|
+
/** Yeni bir varlığın tablosu + dizinleri. */
|
|
9
|
+
export declare function createEntitySql(e: DataEntity): string[];
|
|
10
|
+
export interface DataChange {
|
|
11
|
+
/** `add-search-column`: eski bir tablodaki metin alanına arama gölgesi eklendi (S15). */
|
|
12
|
+
kind: 'create-table' | 'add-column' | 'add-index' | 'add-search-column';
|
|
13
|
+
entity: string;
|
|
14
|
+
field?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Önceki üretimin veritabanında BIRAKTIĞI izler (anlık görüntüden): eski sürümler seçim alanına CHECK yazıyordu ve
|
|
18
|
+
* arama gölgesi üretmiyordu. Verilmezse güncel üretici varsayılır (gölge var, kısıt yok).
|
|
19
|
+
*/
|
|
20
|
+
export interface DataLegacy {
|
|
21
|
+
/** Önceki üretimin tablolarında metin alanlarının gölge kolonu var mı? (`v: 1` anlık görüntüsünde YOK.) */
|
|
22
|
+
foldColumns: boolean;
|
|
23
|
+
/** Veritabanında CHECK kısıtı taşıyan seçim alanları: `"<varlık>.<alan>"`. */
|
|
24
|
+
choiceChecks: ReadonlySet<string>;
|
|
25
|
+
}
|
|
26
|
+
export interface DataDiff {
|
|
27
|
+
statements: string[];
|
|
28
|
+
changes: DataChange[];
|
|
29
|
+
/** Desteklenmeyen (ekleyici olmayan) değişiklikler — biri bile varsa migration üretilmez. */
|
|
30
|
+
errors: string[];
|
|
31
|
+
}
|
|
32
|
+
/** Önceki model (yoksa `null` = ilk üretim) → yeni model farkı. Yalnız ekleyen ifadeler üretilir. */
|
|
33
|
+
export declare function diffDataModels(prev: DataModel | null, next: DataModel, legacy?: DataLegacy): DataDiff;
|
|
34
|
+
export interface ExistingMigration {
|
|
35
|
+
name: string;
|
|
36
|
+
sql: string;
|
|
37
|
+
}
|
|
38
|
+
export interface DataPlan {
|
|
39
|
+
/** Yazılacak yeni migration (değişiklik yoksa `null`). */
|
|
40
|
+
migration: {
|
|
41
|
+
name: string;
|
|
42
|
+
sql: string;
|
|
43
|
+
} | null;
|
|
44
|
+
/** `src/data/types.ts` içeriği. */
|
|
45
|
+
types: string;
|
|
46
|
+
/** `migrations/.one-data-snapshot.json` içeriği. */
|
|
47
|
+
snapshot: string;
|
|
48
|
+
changes: DataChange[];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Anlık görüntü biçimi. `1`: seçim alanlarında CHECK kısıtı vardı, arama gölgesi yoktu (S14/S15 öncesi). `2`: gölge var,
|
|
52
|
+
* kısıt yalnız `choiceChecks`'te adı geçen (eski sürümden kalan) alanlarda.
|
|
53
|
+
*/
|
|
54
|
+
export declare const DATA_SNAPSHOT_VERSION = 2;
|
|
55
|
+
export interface DataSnapshot {
|
|
56
|
+
model: DataModel;
|
|
57
|
+
legacy: DataLegacy;
|
|
58
|
+
}
|
|
59
|
+
/** Anlık görüntü dosyasını okur (yoksa `null`); bozuksa hata — yanlış farkı üretmektense durulur. */
|
|
60
|
+
export declare function readSnapshot(raw: string | null): DataSnapshot | null;
|
|
61
|
+
export declare function renderSnapshot(model: DataModel, legacy?: DataLegacy): string;
|
|
62
|
+
/** Bir sonraki migration adı: en büyük numara + 1 (D-51: yeni migration uygulanmışların SONUNA sıralanmalı). */
|
|
63
|
+
export declare function nextMigrationName(existing: readonly string[]): string;
|
|
64
|
+
/**
|
|
65
|
+
* Bir üretim turunun planı. `snapshot` önceki anlık görüntü (yoksa ilk üretim), `existing` `migrations/` altındaki
|
|
66
|
+
* `.sql` dosyaları. Desteklenmeyen değişiklik ya da çakışma varsa `DataModelError` fırlatılır ve hiçbir şey yazılmaz.
|
|
67
|
+
*/
|
|
68
|
+
export declare function planDataGeneration(input: {
|
|
69
|
+
model: unknown;
|
|
70
|
+
snapshot: string | null;
|
|
71
|
+
existing: readonly ExistingMigration[];
|
|
72
|
+
}): DataPlan;
|
|
73
|
+
/** `src/data/types.ts` — kayıt ve girdi tipleri + doğrulanmış model sabiti (`createCrudHandler`'a verilir). */
|
|
74
|
+
export declare function renderTypes(model: DataModel): string;
|
|
75
|
+
export { SYSTEM_COLUMNS };
|
|
76
|
+
//# sourceMappingURL=ddl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ddl.d.ts","sourceRoot":"","sources":["../../src/data/ddl.ts"],"names":[],"mappings":"AAsBA,OAAO,EACL,KAAK,UAAU,EAEf,KAAK,SAAS,EAEd,cAAc,EAIf,MAAM,YAAY,CAAA;AAEnB,qGAAqG;AACrG,eAAO,MAAM,kBAAkB,4BAA4B,CAAA;AAC3D,eAAO,MAAM,eAAe,kBAAkB,CAAA;AAC9C,eAAO,MAAM,eAAe,sBAAsB,CAAA;AAClD,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,QAA8B,CAAA;AAsD5D,6CAA6C;AAC7C,wBAAgB,eAAe,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,EAAE,CAqBvD;AAED,MAAM,WAAW,UAAU;IACzB,yFAAyF;IACzF,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,mBAAmB,CAAA;IACvE,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,2GAA2G;IAC3G,WAAW,EAAE,OAAO,CAAA;IACpB,8EAA8E;IAC9E,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAClC;AAID,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,6FAA6F;IAC7F,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,qGAAqG;AACrG,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,GAAE,UAAoB,GAAG,QAAQ,CAyF9G;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,QAAQ;IACvB,0DAA0D;IAC1D,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAC/C,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,UAAU,EAAE,CAAA;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,IAAI,CAAA;AAEtC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,SAAS,CAAA;IAChB,MAAM,EAAE,UAAU,CAAA;CACnB;AAID,qGAAqG;AACrG,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,YAAY,GAAG,IAAI,CA2BpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,GAAE,UAAoB,GAAG,MAAM,CAgBrF;AAED,gHAAgH;AAChH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAQrE;AAWD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAAE,GAAG,QAAQ,CA4BvI;AA8CD,+GAA+G;AAC/G,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CA0BpD;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
|
package/dist/data/ddl.js
ADDED
|
@@ -0,0 +1,362 @@
|
|
|
1
|
+
// Veri modeli → SQL (D-84): tablo kurulumu, yalnız EKLEYEN fark ve TypeScript tipleri. SAF: dosya sistemi yok —
|
|
2
|
+
// `one data generate` (bin/dataCommand.mjs) dosyaları okur/yazar, bu modül yalnız metin üretir (testlenir).
|
|
3
|
+
//
|
|
4
|
+
// Veritabanı SQLite sözdizimlidir. Ölçüldü (yerel SQLite 3.50, 18.10.2026): `ADD COLUMN … NOT NULL` varsayılansız
|
|
5
|
+
// reddedilir · `ADD COLUMN … UNIQUE` reddedilir (tekillik bu yüzden her zaman ayrı `CREATE UNIQUE INDEX`'tir) · CHECK
|
|
6
|
+
// eklenen kolonda var olan satırlara uygulanır (varsayılan seçeneklerde değilse migration düşer) · kısmi dizin
|
|
7
|
+
// (`WHERE "deleted_at" IS NULL`) tekilliği yumuşak silinmiş kayıtları saymaz. Sınırlar (platform belgesi, okundu
|
|
8
|
+
// 18.10.2026): tabloda en çok 100 kolon (6 otomatik + 60 alan sığar), sorguda en çok 100 bağlı parametre.
|
|
9
|
+
//
|
|
10
|
+
// ⛔ Yalnız ekleyen değişiklik üretilir (D-51 süreklilik kapısıyla uyumlu): yeni tablo, yeni kolon, yeni dizin. Silme,
|
|
11
|
+
// tür değişikliği, zorunlu/isteğe bağlı değişikliği, tekillik değişikliği, seçim değeri KALDIRMA algılanırsa HİÇBİR
|
|
12
|
+
// dosya üretilmez ve açık bir Türkçe hata döner — böyle bir değişiklik elle ve bilinçli yazılır.
|
|
13
|
+
//
|
|
14
|
+
// Seçim (choice) alanı (S14, 18.10.2026): veritabanında CHECK kısıtı YAZILMAZ; değerin seçeneklerden biri olduğunu kayıt
|
|
15
|
+
// işlemleri (createCrudHandler) denetler. Bu yüzden yeni bir seçim DEĞERİ eklemek migration gerektirmez — yalnız tipler ve
|
|
16
|
+
// anlık görüntü yenilenir. ⚠️ Eski sürümün ürettiği tablolarda kısıt DURUR (anlık görüntü `v: 1` ya da `choiceChecks`
|
|
17
|
+
// listesi): o alanlara değer eklemek yine reddedilir (kısıtı kaldırmak tabloyu yeniden kurmak demektir — ekleyici değil).
|
|
18
|
+
//
|
|
19
|
+
// Arama gölgesi (S15, `fold.ts`): her metin alanının yanında `<alan>_fold` kolonu. `v: 1` anlık görüntüsünden gelen
|
|
20
|
+
// tablolara bir sonraki üretim gölge kolonları ekler (yalnız ADD COLUMN; var olan satırlar boş kalır, arama boş gölgede
|
|
21
|
+
// katlamayı veritabanında anında uygular).
|
|
22
|
+
import { DataModelError, SYSTEM_COLUMNS, moneyToMinor, parseDataModel, toModelInput, } from './model.js';
|
|
23
|
+
/** Anlık görüntü dosyası: `migrations/.one-data-snapshot.json` — son üretimde geçerli olan model. */
|
|
24
|
+
export const DATA_SNAPSHOT_FILE = '.one-data-snapshot.json';
|
|
25
|
+
export const DATA_MODEL_FILE = 'one.data.json';
|
|
26
|
+
export const DATA_TYPES_FILE = 'src/data/types.ts';
|
|
27
|
+
/** Migration adı: `NNNN_<ad>.sql` (platformun uyguladığı adlandırma). */
|
|
28
|
+
export const MIGRATION_NAME_RE = /^(\d{4})_[a-z0-9_]+\.sql$/;
|
|
29
|
+
const q = (name) => `"${name}"`;
|
|
30
|
+
function sqlType(f) {
|
|
31
|
+
switch (f.type) {
|
|
32
|
+
case 'number':
|
|
33
|
+
return 'REAL';
|
|
34
|
+
case 'money':
|
|
35
|
+
case 'boolean':
|
|
36
|
+
return 'INTEGER';
|
|
37
|
+
default:
|
|
38
|
+
return 'TEXT';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/** SQL değişmezi (yalnız doğrulanmış varsayılanlar ve seçim kodları için). */
|
|
42
|
+
function literal(f, value) {
|
|
43
|
+
if (f.type === 'boolean')
|
|
44
|
+
return value === true ? '1' : '0';
|
|
45
|
+
if (f.type === 'money')
|
|
46
|
+
return String(moneyToMinor(value));
|
|
47
|
+
if (f.type === 'number')
|
|
48
|
+
return String(value);
|
|
49
|
+
return `'${String(value).replace(/'/g, "''")}'`;
|
|
50
|
+
}
|
|
51
|
+
/** Seçim alanında kısıt YOK (S14 — doğrulama kayıt işlemlerinde); evet/hayır alanının 0/1 kısıtı kalır (hiç değişmez). */
|
|
52
|
+
function checkClause(f) {
|
|
53
|
+
if (f.type === 'boolean')
|
|
54
|
+
return ` CHECK (${q(f.column)} IN (0, 1))`;
|
|
55
|
+
return '';
|
|
56
|
+
}
|
|
57
|
+
/** Metin alanının arama gölgesi (S15): kısıtsız, varsayılansız `TEXT` — boş (NULL) gölge aramada katlanarak okunur. */
|
|
58
|
+
function foldColumnDef(f) {
|
|
59
|
+
return f.foldColumn === undefined ? null : `${q(f.foldColumn)} TEXT`;
|
|
60
|
+
}
|
|
61
|
+
function columnDef(f, adding) {
|
|
62
|
+
let sql = `${q(f.column)} ${sqlType(f)}`;
|
|
63
|
+
if (f.required) {
|
|
64
|
+
sql += ' NOT NULL';
|
|
65
|
+
// Var olan satırlar varsayılanı alır; yeni tabloda varsayılanı yazma yolu (SDK) uygular.
|
|
66
|
+
if (adding && f.default !== undefined)
|
|
67
|
+
sql += ` DEFAULT ${literal(f, f.default)}`;
|
|
68
|
+
}
|
|
69
|
+
return sql + checkClause(f);
|
|
70
|
+
}
|
|
71
|
+
const indexName = (kind, entity, field) => `${kind}_${entity}__${field}`;
|
|
72
|
+
function indexSql(e, f) {
|
|
73
|
+
if (f.unique)
|
|
74
|
+
return `CREATE UNIQUE INDEX ${q(indexName('ux', e.name, f.name))} ON ${q(e.name)} (${q(f.column)}) WHERE "deleted_at" IS NULL;`;
|
|
75
|
+
if (f.index)
|
|
76
|
+
return `CREATE INDEX ${q(indexName('ix', e.name, f.name))} ON ${q(e.name)} (${q(f.column)});`;
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
/** Yeni bir varlığın tablosu + dizinleri. */
|
|
80
|
+
export function createEntitySql(e) {
|
|
81
|
+
const cols = [
|
|
82
|
+
'"id" TEXT NOT NULL PRIMARY KEY',
|
|
83
|
+
'"created_at" TEXT NOT NULL',
|
|
84
|
+
'"created_by" TEXT NOT NULL',
|
|
85
|
+
'"updated_at" TEXT NOT NULL',
|
|
86
|
+
'"updated_by" TEXT NOT NULL',
|
|
87
|
+
'"deleted_at" TEXT',
|
|
88
|
+
...e.fields.flatMap((f) => {
|
|
89
|
+
const fold = foldColumnDef(f);
|
|
90
|
+
return fold === null ? [columnDef(f, false)] : [columnDef(f, false), fold];
|
|
91
|
+
}),
|
|
92
|
+
];
|
|
93
|
+
const out = [`CREATE TABLE ${q(e.name)} (\n ${cols.join(',\n ')}\n);`];
|
|
94
|
+
// Varsayılan sıralama (en yeni üstte) ve "silinmemiş" süzgeci için.
|
|
95
|
+
out.push(`CREATE INDEX ${q(`ix_${e.name}__created_at`)} ON ${q(e.name)} ("created_at") WHERE "deleted_at" IS NULL;`);
|
|
96
|
+
for (const f of e.fields) {
|
|
97
|
+
const ix = indexSql(e, f);
|
|
98
|
+
if (ix)
|
|
99
|
+
out.push(ix);
|
|
100
|
+
}
|
|
101
|
+
return out;
|
|
102
|
+
}
|
|
103
|
+
const CURRENT = { foldColumns: true, choiceChecks: new Set() };
|
|
104
|
+
/** Önceki model (yoksa `null` = ilk üretim) → yeni model farkı. Yalnız ekleyen ifadeler üretilir. */
|
|
105
|
+
export function diffDataModels(prev, next, legacy = CURRENT) {
|
|
106
|
+
const statements = [];
|
|
107
|
+
const changes = [];
|
|
108
|
+
const errors = [];
|
|
109
|
+
const prevEntities = new Map((prev?.entities ?? []).map((e) => [e.name, e]));
|
|
110
|
+
const nextNames = new Set(next.entities.map((e) => e.name));
|
|
111
|
+
for (const old of prevEntities.values())
|
|
112
|
+
if (!nextNames.has(old.name))
|
|
113
|
+
errors.push(`"${old.name}" varlığı modelden kaldırılmış. Tablo ve verisi otomatik silinmez; varlığı one.data.json'a geri ekleyin ` +
|
|
114
|
+
'(kullanmıyorsanız ekranlardan kaldırmanız yeterli).');
|
|
115
|
+
for (const e of next.entities) {
|
|
116
|
+
const old = prevEntities.get(e.name);
|
|
117
|
+
if (!old) {
|
|
118
|
+
statements.push(`-- ${e.name}: ${e.title.tr}`, ...createEntitySql(e));
|
|
119
|
+
changes.push({ kind: 'create-table', entity: e.name });
|
|
120
|
+
continue;
|
|
121
|
+
}
|
|
122
|
+
const oldFields = new Map(old.fields.map((f) => [f.name, f]));
|
|
123
|
+
const nextFieldNames = new Set(e.fields.map((f) => f.name));
|
|
124
|
+
for (const of of old.fields)
|
|
125
|
+
if (!nextFieldNames.has(of.name))
|
|
126
|
+
errors.push(`"${e.name}.${of.name}" alanı kaldırılmış ya da adı değiştirilmiş. Kolon ve verisi otomatik silinmez/yeniden ` +
|
|
127
|
+
'adlandırılmaz; alanı geri ekleyin (yeni bir ad gerekiyorsa yeni bir alan açın, eskisini kullanmayı bırakın).');
|
|
128
|
+
const added = [];
|
|
129
|
+
for (const f of e.fields) {
|
|
130
|
+
const of = oldFields.get(f.name);
|
|
131
|
+
const where = `"${e.name}.${f.name}"`;
|
|
132
|
+
if (!of) {
|
|
133
|
+
if (f.required && f.default === undefined)
|
|
134
|
+
errors.push(`${where} zorunlu bir alan olarak eklenmiş ama varsayılanı yok: var olan kayıtlar bu alanı boş bırakamaz. ` +
|
|
135
|
+
'Ya "default" verin ya da alanı isteğe bağlı ekleyin.');
|
|
136
|
+
if (f.unique && f.default !== undefined)
|
|
137
|
+
errors.push(`${where} tekil ve varsayılanlı eklenemez (var olan kayıtlar aynı değeri alırdı).`);
|
|
138
|
+
if (f.unique && f.required)
|
|
139
|
+
errors.push(`${where} var olan bir tabloya tekil VE zorunlu eklenemez; isteğe bağlı tekil ekleyin.`);
|
|
140
|
+
added.push(`ALTER TABLE ${q(e.name)} ADD COLUMN ${columnDef(f, true)};`);
|
|
141
|
+
const fold = foldColumnDef(f);
|
|
142
|
+
if (fold)
|
|
143
|
+
added.push(`ALTER TABLE ${q(e.name)} ADD COLUMN ${fold};`);
|
|
144
|
+
const ix = indexSql(e, f);
|
|
145
|
+
if (ix)
|
|
146
|
+
added.push(ix);
|
|
147
|
+
changes.push({ kind: 'add-column', entity: e.name, field: f.name });
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
if (of.type !== f.type)
|
|
151
|
+
errors.push(`${where} alanının türü "${of.type}" → "${f.type}" değiştirilmiş; tür değişikliği desteklenmez (yeni bir alan açın).`);
|
|
152
|
+
if (of.required !== f.required)
|
|
153
|
+
errors.push(`${where} alanı ${f.required ? 'zorunlu yapılmış' : 'isteğe bağlı yapılmış'}; var olan kolonun bu kuralı değiştirilemez ` +
|
|
154
|
+
'(yeni bir alan açın ya da eski hâle döndürün).');
|
|
155
|
+
if (of.unique !== f.unique)
|
|
156
|
+
errors.push(`${where} alanının tekillik (unique) kuralı değiştirilmiş; var olan kolonda desteklenmez.`);
|
|
157
|
+
if (of.index && !f.index)
|
|
158
|
+
errors.push(`${where} alanının dizini (index) kaldırılmış; dizin silme desteklenmez, "index": true kalmalı.`);
|
|
159
|
+
if (!of.index && f.index && !f.unique) {
|
|
160
|
+
added.push(indexSql(e, f));
|
|
161
|
+
changes.push({ kind: 'add-index', entity: e.name, field: f.name });
|
|
162
|
+
}
|
|
163
|
+
if (of.type === f.type && f.type === 'choice') {
|
|
164
|
+
// Sıra ve görünen ad serbesttir. Yeni değer EKLEMEK serbesttir (S14: kısıt yok, doğrulama kayıt işlemlerinde) —
|
|
165
|
+
// eski sürümün kısıt yazdığı alan hariç. Değer KALDIRMAK reddedilir: var olan kayıtlar o değeri taşıyabilir.
|
|
166
|
+
const nextValues = new Set(f.choices.map((c) => c.value));
|
|
167
|
+
const removed = of.choices.map((c) => c.value).filter((v) => !nextValues.has(v));
|
|
168
|
+
const oldValues = new Set(of.choices.map((c) => c.value));
|
|
169
|
+
const addedValues = f.choices.map((c) => c.value).filter((v) => !oldValues.has(v));
|
|
170
|
+
if (removed.length > 0)
|
|
171
|
+
errors.push(`${where} seçim alanından değer kaldırılmış (${removed.join(', ')}). Var olan kayıtlar bu değeri taşıyabilir; değeri ` +
|
|
172
|
+
'listede bırakın (artık kullanılmayacaksa ekranlardan gizleyin). Yalnız görünen adlar (title) ve sıra değişebilir.');
|
|
173
|
+
else if (addedValues.length > 0 && legacy.choiceChecks.has(`${e.name}.${f.name}`))
|
|
174
|
+
errors.push(`${where} seçim alanına değer eklenmiş (${addedValues.join(', ')}), ama bu alanın tablosu eski bir sürümle ` +
|
|
175
|
+
'kurulmuş ve veritabanında değerleri bir kısıtla sabitlenmiş; kısıt ekleme yapan bir migration ile kaldırılamaz. ' +
|
|
176
|
+
'Yeni değerler için yeni bir seçim alanı açın ya da platform ekibine danışın.');
|
|
177
|
+
}
|
|
178
|
+
if (of.type === f.type && f.foldColumn !== undefined && !legacy.foldColumns) {
|
|
179
|
+
// Eski üreticinin kurduğu tablo: metin alanının arama gölgesi yok — eklenir (var olan satırlar boş kalır).
|
|
180
|
+
added.push(`ALTER TABLE ${q(e.name)} ADD COLUMN ${foldColumnDef(f)};`);
|
|
181
|
+
changes.push({ kind: 'add-search-column', entity: e.name, field: f.name });
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
if (added.length > 0)
|
|
185
|
+
statements.push(`-- ${e.name}: ${e.title.tr}`, ...added);
|
|
186
|
+
}
|
|
187
|
+
return { statements, changes, errors };
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Anlık görüntü biçimi. `1`: seçim alanlarında CHECK kısıtı vardı, arama gölgesi yoktu (S14/S15 öncesi). `2`: gölge var,
|
|
191
|
+
* kısıt yalnız `choiceChecks`'te adı geçen (eski sürümden kalan) alanlarda.
|
|
192
|
+
*/
|
|
193
|
+
export const DATA_SNAPSHOT_VERSION = 2;
|
|
194
|
+
const isLegacyKey = (v) => typeof v === 'string' && /^[a-z][a-z0-9_]*\.[a-z][a-z0-9_]*$/.test(v);
|
|
195
|
+
/** Anlık görüntü dosyasını okur (yoksa `null`); bozuksa hata — yanlış farkı üretmektense durulur. */
|
|
196
|
+
export function readSnapshot(raw) {
|
|
197
|
+
if (raw === null)
|
|
198
|
+
return null;
|
|
199
|
+
const broken = (why) => new DataModelError([`migrations/${DATA_SNAPSHOT_FILE} ${why} — dosya elle düzenlenmez; git'teki son hâline döndürün.`]);
|
|
200
|
+
let json;
|
|
201
|
+
try {
|
|
202
|
+
json = JSON.parse(raw);
|
|
203
|
+
}
|
|
204
|
+
catch {
|
|
205
|
+
throw new DataModelError([`migrations/${DATA_SNAPSHOT_FILE} okunamadı (geçerli JSON değil). Bu dosya elle düzenlenmez; git'teki son hâline döndürün.`]);
|
|
206
|
+
}
|
|
207
|
+
const doc = (json ?? {});
|
|
208
|
+
let model;
|
|
209
|
+
try {
|
|
210
|
+
model = parseDataModel(doc.model);
|
|
211
|
+
}
|
|
212
|
+
catch (e) {
|
|
213
|
+
if (e instanceof DataModelError)
|
|
214
|
+
throw broken(`geçersiz: ${e.issues.join(' · ')}`);
|
|
215
|
+
throw e;
|
|
216
|
+
}
|
|
217
|
+
// `v` yoksa ya da 1 ise eski üretici: her seçim alanı kısıtlı, gölge yok.
|
|
218
|
+
if (doc.v === undefined || doc.v === 1) {
|
|
219
|
+
const checks = new Set();
|
|
220
|
+
for (const e of model.entities)
|
|
221
|
+
for (const f of e.fields)
|
|
222
|
+
if (f.type === 'choice')
|
|
223
|
+
checks.add(`${e.name}.${f.name}`);
|
|
224
|
+
return { model, legacy: { foldColumns: false, choiceChecks: checks } };
|
|
225
|
+
}
|
|
226
|
+
if (doc.v !== DATA_SNAPSHOT_VERSION)
|
|
227
|
+
throw broken(`bu SDK'nın tanımadığı bir sürümde (v: ${JSON.stringify(doc.v)}); SDK'yı güncelleyin`);
|
|
228
|
+
const raw2 = doc.choiceChecks ?? [];
|
|
229
|
+
if (!Array.isArray(raw2) || !raw2.every(isLegacyKey))
|
|
230
|
+
throw broken('geçersiz: "choiceChecks" "<varlık>.<alan>" listesi olmalı');
|
|
231
|
+
return { model, legacy: { foldColumns: true, choiceChecks: new Set(raw2) } };
|
|
232
|
+
}
|
|
233
|
+
export function renderSnapshot(model, legacy = CURRENT) {
|
|
234
|
+
// Kısıtlı alanların listesi taşınır (yalnız modelde hâlâ seçim alanı olanlar; sıralı — dosya kararlı kalsın).
|
|
235
|
+
const present = new Set(model.entities.flatMap((e) => e.fields.filter((f) => f.type === 'choice').map((f) => `${e.name}.${f.name}`)));
|
|
236
|
+
const choiceChecks = [...legacy.choiceChecks].filter((k) => present.has(k)).sort();
|
|
237
|
+
return (JSON.stringify({
|
|
238
|
+
note: 'one data generate tarafından yazılır; elle düzenlemeyin. Bir sonraki üretimin farkı bu modele göre alınır.',
|
|
239
|
+
v: DATA_SNAPSHOT_VERSION,
|
|
240
|
+
...(choiceChecks.length > 0 ? { choiceChecks } : {}),
|
|
241
|
+
model: toModelInput(model),
|
|
242
|
+
}, null, 2) + '\n');
|
|
243
|
+
}
|
|
244
|
+
/** Bir sonraki migration adı: en büyük numara + 1 (D-51: yeni migration uygulanmışların SONUNA sıralanmalı). */
|
|
245
|
+
export function nextMigrationName(existing) {
|
|
246
|
+
let max = 0;
|
|
247
|
+
for (const name of existing) {
|
|
248
|
+
const m = MIGRATION_NAME_RE.exec(name);
|
|
249
|
+
if (m)
|
|
250
|
+
max = Math.max(max, Number(m[1]));
|
|
251
|
+
}
|
|
252
|
+
if (max >= 9999)
|
|
253
|
+
throw new DataModelError(['migrations/ altında 9999 numarasına ulaşılmış; yeni numara verilemiyor.']);
|
|
254
|
+
return `${String(max + 1).padStart(4, '0')}_one_data.sql`;
|
|
255
|
+
}
|
|
256
|
+
/** Elle yazılmış migration'larda aynı adla tablo var mı? (Yorumlar ve tırnaklar kaba biçimde ayıklanır.) */
|
|
257
|
+
function tablesCreatedIn(sql) {
|
|
258
|
+
const text = sql.replace(/--[^\n]*/g, ' ').replace(/\/\*[\s\S]*?\*\//g, ' ');
|
|
259
|
+
const out = new Set();
|
|
260
|
+
const re = /\bcreate\s+(?:temp\s+|temporary\s+|virtual\s+)?table\s+(?:if\s+not\s+exists\s+)?(?:main\s*\.\s*)?["`[]?([A-Za-z0-9_]+)["`\]]?/gi;
|
|
261
|
+
for (const m of text.matchAll(re))
|
|
262
|
+
out.add(m[1].toLowerCase());
|
|
263
|
+
return out;
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Bir üretim turunun planı. `snapshot` önceki anlık görüntü (yoksa ilk üretim), `existing` `migrations/` altındaki
|
|
267
|
+
* `.sql` dosyaları. Desteklenmeyen değişiklik ya da çakışma varsa `DataModelError` fırlatılır ve hiçbir şey yazılmaz.
|
|
268
|
+
*/
|
|
269
|
+
export function planDataGeneration(input) {
|
|
270
|
+
const next = parseDataModel(input.model);
|
|
271
|
+
const prev = readSnapshot(input.snapshot);
|
|
272
|
+
const legacy = prev?.legacy ?? CURRENT;
|
|
273
|
+
const diff = diffDataModels(prev?.model ?? null, next, legacy);
|
|
274
|
+
const issues = [...diff.errors];
|
|
275
|
+
// Anlık görüntü yokken (ilk üretim) ya da yeni tablo açılırken: elle yazılmış bir migration aynı adı kurmuş olabilir.
|
|
276
|
+
const handwritten = new Set();
|
|
277
|
+
for (const m of input.existing)
|
|
278
|
+
for (const t of tablesCreatedIn(m.sql))
|
|
279
|
+
handwritten.add(t);
|
|
280
|
+
for (const c of diff.changes)
|
|
281
|
+
if (c.kind === 'create-table' && handwritten.has(c.entity))
|
|
282
|
+
issues.push(`"${c.entity}" adında bir tablo elle yazılmış bir migration'da zaten kuruluyor; varlığa başka bir ad verin.`);
|
|
283
|
+
if (issues.length > 0)
|
|
284
|
+
throw new DataModelError(issues);
|
|
285
|
+
const migration = diff.statements.length === 0
|
|
286
|
+
? null
|
|
287
|
+
: {
|
|
288
|
+
name: nextMigrationName(input.existing.map((m) => m.name)),
|
|
289
|
+
sql: '-- one data generate tarafından one.data.json\'dan üretildi.\n' +
|
|
290
|
+
'-- ⛔ Uygulandıktan sonra bu dosya DEĞİŞTİRİLMEZ: model değişince bir sonraki numarayla yeni dosya üretilir.\n' +
|
|
291
|
+
'-- Her kurulumun kendi veritabanı vardır; tablolarda portal kolonu yoktur. Kişi = kullanıcı kimliği (sub).\n' +
|
|
292
|
+
diff.statements.join('\n') +
|
|
293
|
+
'\n',
|
|
294
|
+
};
|
|
295
|
+
return { migration, types: renderTypes(next), snapshot: renderSnapshot(next, legacy), changes: diff.changes };
|
|
296
|
+
}
|
|
297
|
+
// ── TypeScript tipleri ───────────────────────────────────────────────────────────────────────────────────────────
|
|
298
|
+
const pascal = (name) => name
|
|
299
|
+
.split('_')
|
|
300
|
+
.filter(Boolean)
|
|
301
|
+
.map((p) => p[0].toUpperCase() + p.slice(1))
|
|
302
|
+
.join('');
|
|
303
|
+
function tsValueType(f) {
|
|
304
|
+
switch (f.type) {
|
|
305
|
+
case 'number':
|
|
306
|
+
return 'number';
|
|
307
|
+
case 'boolean':
|
|
308
|
+
return 'boolean';
|
|
309
|
+
case 'choice':
|
|
310
|
+
return f.choices.map((c) => JSON.stringify(c.value)).join(' | ');
|
|
311
|
+
default:
|
|
312
|
+
return 'string';
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
function tsInputType(f) {
|
|
316
|
+
if (f.type === 'money')
|
|
317
|
+
return 'string | number';
|
|
318
|
+
if (f.type === 'number')
|
|
319
|
+
return 'number | string';
|
|
320
|
+
return tsValueType(f);
|
|
321
|
+
}
|
|
322
|
+
const doc = (f) => {
|
|
323
|
+
const unit = f.type === 'money'
|
|
324
|
+
? ' — tutar, ondalıklı metin ("1234.50")'
|
|
325
|
+
: f.type === 'date'
|
|
326
|
+
? ' — YYYY-AA-GG'
|
|
327
|
+
: f.type === 'datetime'
|
|
328
|
+
? ' — ISO tarih-saat (UTC)'
|
|
329
|
+
: f.type === 'person'
|
|
330
|
+
? ' — kişi (kullanıcı kimliği, sub)'
|
|
331
|
+
: f.type === 'file'
|
|
332
|
+
? ' — dosya anahtarı'
|
|
333
|
+
: '';
|
|
334
|
+
return ` /** ${f.title.tr}${unit} */\n`;
|
|
335
|
+
};
|
|
336
|
+
/** `src/data/types.ts` — kayıt ve girdi tipleri + doğrulanmış model sabiti (`createCrudHandler`'a verilir). */
|
|
337
|
+
export function renderTypes(model) {
|
|
338
|
+
const lines = [
|
|
339
|
+
'// one data generate tarafından one.data.json\'dan üretilir; elle düzenlemeyin (değişiklik one.data.json\'a yazılır).',
|
|
340
|
+
"import type { OneDataModel } from '@devoplus/one-sdk'",
|
|
341
|
+
'',
|
|
342
|
+
`export type EntityName = ${model.entities.length > 0 ? model.entities.map((e) => JSON.stringify(e.name)).join(' | ') : 'never'}`,
|
|
343
|
+
'',
|
|
344
|
+
];
|
|
345
|
+
for (const e of model.entities) {
|
|
346
|
+
const name = pascal(e.name);
|
|
347
|
+
lines.push(`/** ${e.title.tr} — API'nin döndürdüğü kayıt. */`, `export interface ${name}Record {`);
|
|
348
|
+
lines.push(' id: string', ' created_at: string', ' created_by: string', ' updated_at: string', ' updated_by: string');
|
|
349
|
+
for (const f of e.fields)
|
|
350
|
+
lines.push(doc(f).trimEnd(), ` ${f.name}: ${tsValueType(f)}${f.required ? '' : ' | null'}`);
|
|
351
|
+
lines.push('}', '', `/** ${e.title.tr} — kayıt oluştururken gönderilen alanlar (güncellemede hepsi isteğe bağlıdır). */`, `export interface ${name}Input {`);
|
|
352
|
+
for (const f of e.fields) {
|
|
353
|
+
const optional = !f.required || f.default !== undefined;
|
|
354
|
+
lines.push(` ${f.name}${optional ? '?' : ''}: ${tsInputType(f)}${f.required ? '' : ' | null'}`);
|
|
355
|
+
}
|
|
356
|
+
lines.push('}', '');
|
|
357
|
+
}
|
|
358
|
+
lines.push('/** Doğrulanmış veri modeli — createCrudHandler({ model: dataModel, … }) ile kullanılır. */', `export const dataModel: OneDataModel = ${JSON.stringify(toModelInput(model), null, 2)}`, '');
|
|
359
|
+
return lines.join('\n');
|
|
360
|
+
}
|
|
361
|
+
export { SYSTEM_COLUMNS };
|
|
362
|
+
//# sourceMappingURL=ddl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ddl.js","sourceRoot":"","sources":["../../src/data/ddl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Gölge kolon eki: alanın kolonu `ad` ise gölgesi `ad_fold`. Alan adı bu ekle bitemez. */
|
|
2
|
+
export declare const FOLD_COLUMN_SUFFIX = "_fold";
|
|
3
|
+
/** Katlanan Türkçe harfler → karşılığı. Sıra SQL ifadesinin sırasıdır. */
|
|
4
|
+
export declare const FOLD_PAIRS: ReadonlyArray<readonly [string, string]>;
|
|
5
|
+
/** Metni arama için katlar (gölge kolon ve aranan ifade). Önce NFC: ayrık yazılmış "s + ̧" da "ş" sayılır. */
|
|
6
|
+
export declare function foldSearchText(value: string): string;
|
|
7
|
+
/** Gölge kolonun adı. */
|
|
8
|
+
export declare function foldColumnName(column: string): string;
|
|
9
|
+
/**
|
|
10
|
+
* Aynı katlamanın SQL karşılığı (boş gölgede arama için). `column` modelden gelir ve tırnaklanır — değer GİRMEZ.
|
|
11
|
+
* SQLite'ın yerleşik `lower()`'ı yalnız ASCII harfleri küçültür (ICU yoksa); Türkçe harfler önce `replace` ile çevrilir.
|
|
12
|
+
*/
|
|
13
|
+
export declare function foldSqlExpression(column: string): string;
|
|
14
|
+
//# sourceMappingURL=fold.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fold.d.ts","sourceRoot":"","sources":["../../src/data/fold.ts"],"names":[],"mappings":"AAqBA,2FAA2F;AAC3F,eAAO,MAAM,kBAAkB,UAAU,CAAA;AAEzC,0EAA0E;AAC1E,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAmB/D,CAAA;AAKD,8GAA8G;AAC9G,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKpD;AAED,yBAAyB;AACzB,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAYD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAIxD"}
|