@dnaproje/identity 0.0.0-stage → 0.1.0

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.
@@ -0,0 +1,9 @@
1
+ // ÜRETİLMİŞTİR: scripts/build.mjs, kaynak identity/tokens.json v1.0.0. Elle düzenlemeyin; identity/ altında değiştirip `npm run build` çalıştırın.
2
+ export type DNATokens = {"version":"1.0.0","updated":"2026-10-29","sources":{"palette":"identity/spec/00-kimlik.md (Palet v3 FINAL, 1 Eylül 2026; ana renkler DNA_Logo (1).pdf ile birebir)","measures":"plugins/dna-document/skills/dna-doc/SKILL.md §3–7 (identity/spec/10-12)","company":"identity/README.md karar 12 (29.10.2026)","standardTexts":"Gerçek teklifler (identity/reference/real) ve CRM Config:CRM:Proposal varsayılanları"},"color":{"brand":{"orange":{"hex":"#EA643B","pantone":"2026 C","cmyk":[3,75,84,0],"role":"Aksan: buton, vurgu, adım no, ince şerit. Asla durum rengi, asla gövde metni, asla geniş dolgu (baskıda spot hariç). Üzerinde yalnız #FFFFFF ≥18.5px/600."},"navy":{"hex":"#425D78","pantone":"2374 C","cmyk":[80,60,35,15],"role":"Marka mavisi: koyu yüzey, tablo başlığı metni, başlık numarası, display başlık, monokrom logo, bölüm ayracı zemini."},"grey":{"hex":"#B4BBBF","pantone":"Cool Gray 4 C","cmyk":[30,20,20,0],"role":"Yalnız zemin, çizgi, şerit; metin taşımaz."},"ink":{"hex":"#2E3236","pantone":"447 C","cmyk":[68,58,50,45],"role":"Gövde ve arayüz metni; baskıda %100 K."},"ivory":{"hex":"#FAF9F5","pantone":null,"cmyk":[0,1,3,1],"role":"Ana zemin (kağıt); mürekkeple basılmaz."},"warmNeutral":{"hex":"#E7E4DC","pantone":"Warm Gray 1 C","cmyk":[4,4,9,2],"role":"Vurgu zemini, kart önü, özet kutusu, tablo başlığı zemini (HTML)."}},"support":{"panel":{"hex":"#F1EFE9","role":"Panel, tablo başlığı ve zebra zemini (Office)."},"divider":{"hex":"#DBDFE6","role":"Ayraç (ekran)."},"iconMuted":{"hex":"#8291A9","role":"İkon, pasif öğe."},"textSecondary":{"hex":"#66718C","role":"İkincil metin, altbilgi; YALNIZ beyaz/ivory zeminde."},"textSecondaryOnColor":{"hex":"#35455C","role":"Renkli zeminde ikincil metin; vurgu paneli metni."},"link":{"hex":"#C2451D","role":"Bağlantı."},"linkHover":{"hex":"#EA643B","role":"Bağlantı üzerine gelince."}},"status":{"success":{"hex":"#2E7D4E","role":"Başarı / Tamamlandı (yalnız metin rengi)."},"warning":{"hex":"#8A6400","role":"Uyarı / Devam (yalnız metin rengi)."},"danger":{"hex":"#A32C39","role":"Hata / Risk (yalnız metin rengi)."},"info":{"hex":"#31708F","role":"Bilgi."}},"chart":{"series":["#EA643B","#4E7E9B","#425D78","#6C8A64","#B08A3E","#8A6E80"],"seriesRule":"Sıra sabit; turuncu her zaman 1. seri. Tek seride turuncu en önemli değere, diğerleri navy.","status":["#2E7D4E","#8A6400","#A32C39"],"axis":"#B4BBBF","muted":"#B4BBBF"},"darkPreview":{"note":"Yalnız e-posta imzası önizlemesi için: istemcinin koyu mod çevirisini taklit eder. Kopyalanan HTML her zaman açık mod değerlerini taşır.","background":"#1F2326","ink":"#E8E6E3","navy":"#B7BDC2","textSecondary":"#9AA1A7","link":"#F09071"}},"font":{"heading":{"family":"Archivo","weights":[600,700],"fallback":["Segoe UI","Helvetica","Calibri","Arial","sans-serif"],"files":{"regular":"Archivo-Regular.ttf","bold":"Archivo-Bold.ttf"}},"body":{"family":"Source Sans 3","weights":[400,600],"fallback":["Segoe UI","Helvetica","Calibri","Arial","sans-serif"],"files":{"regular":"SourceSans3-Regular.ttf","bold":"SourceSans3-Bold.ttf"}},"mono":{"family":"Source Code Pro","weights":[400,600],"fallback":["Consolas","Menlo","monospace"],"files":{"regular":"SourceCodePro-Regular.ttf","bold":"SourceCodePro-Bold.ttf"}},"email":{"family":"Segoe UI","fallback":["Helvetica","Arial","sans-serif"],"note":"E-posta istemcileri web font yüklemez."},"office":{"excel":{"family":"Calibri","fallback":["Carlito","Arial","sans-serif"],"note":"Excel yazı tipi gömmez; .xlsx her makinede bulunan Office gövde yazı tipiyle yazılır (başlık, etiket, kod dahil). Word ve PowerPoint DNA yazı tiplerini gömer."}},"googleFontsCss":"https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700&family=Source+Sans+3:ital,wght@0,400;0,600;0,700;1,400&family=Source+Code+Pro:wght@400;600&display=swap","license":"SIL Open Font License 1.1"},"type":{"screenScalePx":[11,13,16,20,25,31,39,49],"screenRatio":1.25,"lineHeightGridPx":8,"print":{"bodyPt":[11,16],"tablePt":[9.5,12],"footnotePt":[9,12]},"slideMinPx":24,"kicker":{"weight":600,"letterSpacingEm":0.08,"transform":"uppercase"},"lang":{"tr":"tr-TR","en":"en-US"},"numberFormat":{"money":"#,##0.00\" ₺\"","effort":"#,##0\" s\"","date":"dd.mm.yyyy","percent":"0%","locale":"tr-TR"}},"space":{"scalePx":[8,16,24,32,48,64,96,128],"radiusPx":[0,4],"rules":"Katman ayrımı boşluk + zemin değişimiyle; çizgi, kutu, gölge yok. Başlık üstü boşluk ≥ 2× başlık altı."},"logo":{"mark":{"svg":"assets/svg/dna-mark.svg","viewBox":[1000,910],"ratio":1.0989},"markWhite":{"svg":"assets/svg/dna-mark-white.svg","viewBox":[1000,910],"ratio":1.0989},"wordmark":{"svg":"assets/svg/dna-wordmark.svg","viewBox":[1400,693],"ratio":2.0202},"webMarkUrl":"https://dna.com.tr/assets/dna-mark-flat.png","noLockup":"Wordmark ve pervane aynı yüzeyde yan yana kullanılmaz; geniş yüzeyde karşıt köşe (aralık ≥ 4× pervane genişliği) istisna.","backgroundMatrix":{"white":"full","ivory":"full","otherLight":"mono-navy","dark":"negative-ivory","orange":"negative-ivory","photo":"forbidden"},"minSize":{"markPx":16,"markMm":5,"wordmarkHeightPx":12,"wordmarkHeightMm":4,"markOnlyBelowPx":20},"clearSpace":{"mark":"P/4 (P = pervane yüksekliği)","wordmark":"H/2 (H = harf yüksekliği)"},"gradientMinPx":48},"company":{"name":"DNA Proje ve Yazılım A.Ş.","nameUpper":"DNA PROJE VE YAZILIM A.Ş.","address":"Barbaros Mah. Begonya Sokak No:3 Nidakule Ataşehir Kuzey Kat:14 No:140 Ataşehir/İstanbul","addressShort":"Begonya Sok. No:3 Nidakule Ataşehir Kuzey Kat:14 No:140, Ataşehir/İstanbul","taxOffice":"Kozyatağı","taxNo":"302 131 4723","phone":"+90 216 455 33 62","email":"bilgi@dna.com.tr","supportEmail":"destek@dna.com.tr","emailDomain":"dna.com.tr","web":"dna.com.tr","webUrl":"https://www.dna.com.tr/","city":{"tr":"İstanbul","en":"Istanbul"},"tagline":{"tr":"DNA'nıza Uygun Kurumsal Çözümler","en":"Enterprise Solutions That Fit Your DNA"},"copyright":{"tr":"© {year} DNA Proje ve Yazılım A.Ş. | Tüm Hakları Saklıdır.","en":"© {year} DNA Proje ve Yazılım A.Ş. | All rights reserved."}},"documentCodes":{"owner":"CRM (DNA.API.CRMModule); kural orada üretilir, burası hizalama için taşır","format":"{type}-{yyyy}-{nnnnn}","example":"TKF-2026-00051","types":{"TKF":{"tr":"Teklif","en":"Proposal"},"RPR":{"tr":"Rapor","en":"Report"},"ANZ":{"tr":"Analiz","en":"Analysis"},"TTN":{"tr":"Tutanak","en":"Minutes"},"YZI":{"tr":"Resmi yazı","en":"Letter"},"SRT":{"tr":"Şartname","en":"Specification"}},"noCode":["sunum","dashboard","design","eposta-imzasi"],"legacy":["DNA-TKF-YYYY-NNN (dna-doc skill)","DNA-<TÜR>-<YIL>-<SIRA> (dna-kimlik)","DNA-UMUR-2026-001","20260520-UMUR-001","YYYYAA00000000NN (Mitochondrion Word dosya adı)"]},"office":{"word":{"page":{"widthTwips":11906,"heightTwips":16838,"size":"A4"},"marginTwips":{"top":2268,"right":1701,"bottom":1701,"left":1985,"header":851,"footer":709},"docDefaults":{"font":"Source Sans 3","sizeHalfPt":22,"color":"2E3236","afterTwips":160,"lineTwips":320,"lineRule":"atLeast"},"header":{"strip":{"emu":[216000,10692000],"pos":[0,0],"png":"dna-serit.png","pngPx":[120,5940]},"rule":{"emu":[6480000,21600],"posX":540000,"posYAntet":1110653,"posYRapor":1039366,"color":"B4BBBF"},"wordmarkEmu":{"antet":[1080000,534600],"rapor":[936000,463320]}},"coverMarkEmu":[936000,851760],"footerPt":8},"pptx":{"slideEmu":[12192000,6858000],"canvasPx":[1920,1080],"emuPerPx":6350,"theme":{"dk1":"2E3236","lt1":"FFFFFF","dk2":"425D78","lt2":"FAF9F5","accent1":"EA643B","accent2":"425D78","accent3":"B4BBBF","accent4":"66718C","accent5":"8291A9","accent6":"E7E4DC","hlink":"C2451D","folHlink":"66718C"},"masterStripEmu":[216000,2286000],"wordmark":{"emu":[1080000,534600],"pos":[10654800,274638]},"sectionDivider":{"background":"425D78","titleColor":"FAF9F5","markWhiteEmu":[1200000,1092000],"markWhitePos":[10292000,4958000]}},"xlsx":{"band":{"rows":4,"rowHeightsPx":[30,36,24,10],"stripColumnWidth":1.6,"gapColumnWidth":2,"markPx":[88,80],"wordmarkPx":[96,48]},"headerRow":6,"freezeRow":6,"rowHeightPx":{"header":28,"data":26},"gridLines":false,"borders":"none (yalnız bant alt çizgisi B4BBBF)"}},"standardTexts":{"tr":{"salutationKnown":"Sayın {company} Yetkilileri,","salutationUnknown":"Sayın Yetkili,","regards":"Saygılarımızla,","proposalCoverLetter":["Şirketiniz ile yaptığımız görüşmelerde belirlediğimiz esaslar çerçevesinde hazırladığımız teklif görüş ve incelemelerinize sunulmuştur.","Teklifte yer alan tüm bilgiler gizlilik içermekte olup yalnızca firmanızın değerlendirme amaçlarına yönelik olarak kullanılmasını ve gizliliğine özen gösterilmesini rica ederiz.","Bu vesile ile şirketimize gösterdiğiniz ilgi ve güven için teşekkür ederiz."],"proposalIntroShort":"Talebiniz doğrultusunda hazırladığımız teklifimizi bilgilerinize sunarız. İhtiyaçlarınıza en uygun çözümü sağlamak için ekibimiz her aşamada yanınızda olacaktır.","proposalClosing":"Teklifimizi değerlendirdiğiniz için teşekkür eder, birlikte çalışmayı dileriz.","aboutTitle":"DNA Proje ve Yazılım Hakkında","about":["DNA Proje, işletmelerin iş uygulamalarına yön verecek şekilde ve ERP standartlarıyla uyumlu bir biçimde danışmanlık hizmetleri sunmaktadır. Yapılan iş analizi, ihtiyaçların belirlenmesi, yazılımın uyarlanması, veri aktarımı, kullanıcı eğitimi ve desteği gibi tüm hizmetler kapsamlı bir şekilde sunulmaktadır. Logo ERP ürünlerine yönelik danışmanlık hizmetlerinde tecrübeli, bilgi birikimi yüksek, birçok farklı sektörde ve projede görev almış danışmanlar çalışmaktadır. Müşteri memnuniyeti ve çözüm odaklı hizmet anlayışı ile firmalara rekabet avantajı sağlayacak, verimliliklerini artıracak ve maliyetlerini azaltacak özel çözümler sunulmaktadır.","DNA Proje, dijital dönüşüm danışmanlık hizmeti kapsamında, tüm departmanlarınızın mevcut durum analizini gerçekleştirerek şirketinizi hedeflerine ulaştıracak dijitalleşme stratejilerinin ve projelerinin belirlendiği dijital dönüşüm yol haritasını oluşturmaktadır. Ayrıca şirket hedefleri göz önünde bulundurularak, tüm departmanlar için operasyonel verimliliği artıracak iyileştirme noktaları tespit edilmektedir.","DNA Proje, farklı sektörlerde yer alan müşterilerinin farklı talepleri için sektörel deneyim ve süreç analizi yetenekleriyle uygun ve gerekli olan fonksiyonları kullanarak özel çözümler geliştirmekte, iş akış süreçlerini standartlaştırarak elektronik ortama taşımaktadır."],"nextSteps":[{"title":"Teklifin Onaylanması","text":"Teklifin tarafınızca değerlendirilip onaylanması ve sipariş bildirimi."},{"title":"Sözleşme ve Planlama","text":"Sözleşmenin imzalanması, proje ekibinin ataması ve kickoff toplantısı."},{"title":"Analiz ve Geliştirme","text":"Detay analiz, geliştirme, test ve devreye alma adımlarının yürütülmesi."}],"vatNote":"Belirtilen tutarlara yasal KDV oranı eklenecektir.","vatExcluded":"Fiyatlara KDV dahil değildir.","currencyNote":"Belirtilen fiyatlar Türk Lirası (TRY) cinsindendir ve fiyatlara KDV dahil değildir.","paymentUpfront":"Fatura bedeli peşin olarak tahsil edilir.","validUntil":"Teklifimiz {date} tarihine kadar geçerlidir.","defaultValidity":"15 İş Günü","manDayNotes":["1 İnsan/Gün karşılığında carinize 8 saat tahakkuk edilecektir.","Tarafınıza tahsis edilen günlerin kullanım süresi, teklifin onaylandığı tarihten itibaren 1 (bir) yıl ile sınırlıdır. Tahsis edilen gün paketi bir bütün olarak değerlendirilir ve bölünemez."],"confidentiality":"Bu Teklif Mektubu ve eklerindeki tüm bilgi ve belgeler gizli bilgidir ve ifşa yasağına tabidir.","discountLabels":["Kampanya İskontosu","Sadakat İndirimi","Özel İskonto","Özel İndirim"]},"en":{"salutationKnown":"Dear {company} team,","salutationUnknown":"Dear Sir or Madam,","regards":"Kind regards,"}}}
3
+ export type DNAColorName = "orange" | "navy" | "grey" | "ink" | "ivory" | "warmNeutral" | "panel" | "divider" | "iconMuted" | "textSecondary" | "textSecondaryOnColor" | "link" | "linkHover" | "success" | "warning" | "danger" | "info"
4
+ export declare const tokens: DNATokens
5
+ export declare const color: Record<DNAColorName, string>
6
+ export declare const chartSeries: DNATokens['color']['chart']['series']
7
+ export declare const company: DNATokens['company']
8
+ export declare const standardTexts: DNATokens['standardTexts']
9
+ export default tokens
package/dist/tokens.js ADDED
@@ -0,0 +1,638 @@
1
+ // ÜRETİLMİŞTİR: scripts/build.mjs, kaynak identity/tokens.json v1.0.0. Elle düzenlemeyin; identity/ altında değiştirip `npm run build` çalıştırın.
2
+ const tokens = {
3
+ "version": "1.0.0",
4
+ "updated": "2026-10-29",
5
+ "sources": {
6
+ "palette": "identity/spec/00-kimlik.md (Palet v3 FINAL, 1 Eylül 2026; ana renkler DNA_Logo (1).pdf ile birebir)",
7
+ "measures": "plugins/dna-document/skills/dna-doc/SKILL.md §3–7 (identity/spec/10-12)",
8
+ "company": "identity/README.md karar 12 (29.10.2026)",
9
+ "standardTexts": "Gerçek teklifler (identity/reference/real) ve CRM Config:CRM:Proposal varsayılanları"
10
+ },
11
+ "color": {
12
+ "brand": {
13
+ "orange": {
14
+ "hex": "#EA643B",
15
+ "pantone": "2026 C",
16
+ "cmyk": [
17
+ 3,
18
+ 75,
19
+ 84,
20
+ 0
21
+ ],
22
+ "role": "Aksan: buton, vurgu, adım no, ince şerit. Asla durum rengi, asla gövde metni, asla geniş dolgu (baskıda spot hariç). Üzerinde yalnız #FFFFFF ≥18.5px/600."
23
+ },
24
+ "navy": {
25
+ "hex": "#425D78",
26
+ "pantone": "2374 C",
27
+ "cmyk": [
28
+ 80,
29
+ 60,
30
+ 35,
31
+ 15
32
+ ],
33
+ "role": "Marka mavisi: koyu yüzey, tablo başlığı metni, başlık numarası, display başlık, monokrom logo, bölüm ayracı zemini."
34
+ },
35
+ "grey": {
36
+ "hex": "#B4BBBF",
37
+ "pantone": "Cool Gray 4 C",
38
+ "cmyk": [
39
+ 30,
40
+ 20,
41
+ 20,
42
+ 0
43
+ ],
44
+ "role": "Yalnız zemin, çizgi, şerit; metin taşımaz."
45
+ },
46
+ "ink": {
47
+ "hex": "#2E3236",
48
+ "pantone": "447 C",
49
+ "cmyk": [
50
+ 68,
51
+ 58,
52
+ 50,
53
+ 45
54
+ ],
55
+ "role": "Gövde ve arayüz metni; baskıda %100 K."
56
+ },
57
+ "ivory": {
58
+ "hex": "#FAF9F5",
59
+ "pantone": null,
60
+ "cmyk": [
61
+ 0,
62
+ 1,
63
+ 3,
64
+ 1
65
+ ],
66
+ "role": "Ana zemin (kağıt); mürekkeple basılmaz."
67
+ },
68
+ "warmNeutral": {
69
+ "hex": "#E7E4DC",
70
+ "pantone": "Warm Gray 1 C",
71
+ "cmyk": [
72
+ 4,
73
+ 4,
74
+ 9,
75
+ 2
76
+ ],
77
+ "role": "Vurgu zemini, kart önü, özet kutusu, tablo başlığı zemini (HTML)."
78
+ }
79
+ },
80
+ "support": {
81
+ "panel": {
82
+ "hex": "#F1EFE9",
83
+ "role": "Panel, tablo başlığı ve zebra zemini (Office)."
84
+ },
85
+ "divider": {
86
+ "hex": "#DBDFE6",
87
+ "role": "Ayraç (ekran)."
88
+ },
89
+ "iconMuted": {
90
+ "hex": "#8291A9",
91
+ "role": "İkon, pasif öğe."
92
+ },
93
+ "textSecondary": {
94
+ "hex": "#66718C",
95
+ "role": "İkincil metin, altbilgi; YALNIZ beyaz/ivory zeminde."
96
+ },
97
+ "textSecondaryOnColor": {
98
+ "hex": "#35455C",
99
+ "role": "Renkli zeminde ikincil metin; vurgu paneli metni."
100
+ },
101
+ "link": {
102
+ "hex": "#C2451D",
103
+ "role": "Bağlantı."
104
+ },
105
+ "linkHover": {
106
+ "hex": "#EA643B",
107
+ "role": "Bağlantı üzerine gelince."
108
+ }
109
+ },
110
+ "status": {
111
+ "success": {
112
+ "hex": "#2E7D4E",
113
+ "role": "Başarı / Tamamlandı (yalnız metin rengi)."
114
+ },
115
+ "warning": {
116
+ "hex": "#8A6400",
117
+ "role": "Uyarı / Devam (yalnız metin rengi)."
118
+ },
119
+ "danger": {
120
+ "hex": "#A32C39",
121
+ "role": "Hata / Risk (yalnız metin rengi)."
122
+ },
123
+ "info": {
124
+ "hex": "#31708F",
125
+ "role": "Bilgi."
126
+ }
127
+ },
128
+ "chart": {
129
+ "series": [
130
+ "#EA643B",
131
+ "#4E7E9B",
132
+ "#425D78",
133
+ "#6C8A64",
134
+ "#B08A3E",
135
+ "#8A6E80"
136
+ ],
137
+ "seriesRule": "Sıra sabit; turuncu her zaman 1. seri. Tek seride turuncu en önemli değere, diğerleri navy.",
138
+ "status": [
139
+ "#2E7D4E",
140
+ "#8A6400",
141
+ "#A32C39"
142
+ ],
143
+ "axis": "#B4BBBF",
144
+ "muted": "#B4BBBF"
145
+ },
146
+ "darkPreview": {
147
+ "note": "Yalnız e-posta imzası önizlemesi için: istemcinin koyu mod çevirisini taklit eder. Kopyalanan HTML her zaman açık mod değerlerini taşır.",
148
+ "background": "#1F2326",
149
+ "ink": "#E8E6E3",
150
+ "navy": "#B7BDC2",
151
+ "textSecondary": "#9AA1A7",
152
+ "link": "#F09071"
153
+ }
154
+ },
155
+ "font": {
156
+ "heading": {
157
+ "family": "Archivo",
158
+ "weights": [
159
+ 600,
160
+ 700
161
+ ],
162
+ "fallback": [
163
+ "Segoe UI",
164
+ "Helvetica",
165
+ "Calibri",
166
+ "Arial",
167
+ "sans-serif"
168
+ ],
169
+ "files": {
170
+ "regular": "Archivo-Regular.ttf",
171
+ "bold": "Archivo-Bold.ttf"
172
+ }
173
+ },
174
+ "body": {
175
+ "family": "Source Sans 3",
176
+ "weights": [
177
+ 400,
178
+ 600
179
+ ],
180
+ "fallback": [
181
+ "Segoe UI",
182
+ "Helvetica",
183
+ "Calibri",
184
+ "Arial",
185
+ "sans-serif"
186
+ ],
187
+ "files": {
188
+ "regular": "SourceSans3-Regular.ttf",
189
+ "bold": "SourceSans3-Bold.ttf"
190
+ }
191
+ },
192
+ "mono": {
193
+ "family": "Source Code Pro",
194
+ "weights": [
195
+ 400,
196
+ 600
197
+ ],
198
+ "fallback": [
199
+ "Consolas",
200
+ "Menlo",
201
+ "monospace"
202
+ ],
203
+ "files": {
204
+ "regular": "SourceCodePro-Regular.ttf",
205
+ "bold": "SourceCodePro-Bold.ttf"
206
+ }
207
+ },
208
+ "email": {
209
+ "family": "Segoe UI",
210
+ "fallback": [
211
+ "Helvetica",
212
+ "Arial",
213
+ "sans-serif"
214
+ ],
215
+ "note": "E-posta istemcileri web font yüklemez."
216
+ },
217
+ "office": {
218
+ "excel": {
219
+ "family": "Calibri",
220
+ "fallback": [
221
+ "Carlito",
222
+ "Arial",
223
+ "sans-serif"
224
+ ],
225
+ "note": "Excel yazı tipi gömmez; .xlsx her makinede bulunan Office gövde yazı tipiyle yazılır (başlık, etiket, kod dahil). Word ve PowerPoint DNA yazı tiplerini gömer."
226
+ }
227
+ },
228
+ "googleFontsCss": "https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700&family=Source+Sans+3:ital,wght@0,400;0,600;0,700;1,400&family=Source+Code+Pro:wght@400;600&display=swap",
229
+ "license": "SIL Open Font License 1.1"
230
+ },
231
+ "type": {
232
+ "screenScalePx": [
233
+ 11,
234
+ 13,
235
+ 16,
236
+ 20,
237
+ 25,
238
+ 31,
239
+ 39,
240
+ 49
241
+ ],
242
+ "screenRatio": 1.25,
243
+ "lineHeightGridPx": 8,
244
+ "print": {
245
+ "bodyPt": [
246
+ 11,
247
+ 16
248
+ ],
249
+ "tablePt": [
250
+ 9.5,
251
+ 12
252
+ ],
253
+ "footnotePt": [
254
+ 9,
255
+ 12
256
+ ]
257
+ },
258
+ "slideMinPx": 24,
259
+ "kicker": {
260
+ "weight": 600,
261
+ "letterSpacingEm": 0.08,
262
+ "transform": "uppercase"
263
+ },
264
+ "lang": {
265
+ "tr": "tr-TR",
266
+ "en": "en-US"
267
+ },
268
+ "numberFormat": {
269
+ "money": "#,##0.00\" ₺\"",
270
+ "effort": "#,##0\" s\"",
271
+ "date": "dd.mm.yyyy",
272
+ "percent": "0%",
273
+ "locale": "tr-TR"
274
+ }
275
+ },
276
+ "space": {
277
+ "scalePx": [
278
+ 8,
279
+ 16,
280
+ 24,
281
+ 32,
282
+ 48,
283
+ 64,
284
+ 96,
285
+ 128
286
+ ],
287
+ "radiusPx": [
288
+ 0,
289
+ 4
290
+ ],
291
+ "rules": "Katman ayrımı boşluk + zemin değişimiyle; çizgi, kutu, gölge yok. Başlık üstü boşluk ≥ 2× başlık altı."
292
+ },
293
+ "logo": {
294
+ "mark": {
295
+ "svg": "assets/svg/dna-mark.svg",
296
+ "viewBox": [
297
+ 1000,
298
+ 910
299
+ ],
300
+ "ratio": 1.0989
301
+ },
302
+ "markWhite": {
303
+ "svg": "assets/svg/dna-mark-white.svg",
304
+ "viewBox": [
305
+ 1000,
306
+ 910
307
+ ],
308
+ "ratio": 1.0989
309
+ },
310
+ "wordmark": {
311
+ "svg": "assets/svg/dna-wordmark.svg",
312
+ "viewBox": [
313
+ 1400,
314
+ 693
315
+ ],
316
+ "ratio": 2.0202
317
+ },
318
+ "webMarkUrl": "https://dna.com.tr/assets/dna-mark-flat.png",
319
+ "noLockup": "Wordmark ve pervane aynı yüzeyde yan yana kullanılmaz; geniş yüzeyde karşıt köşe (aralık ≥ 4× pervane genişliği) istisna.",
320
+ "backgroundMatrix": {
321
+ "white": "full",
322
+ "ivory": "full",
323
+ "otherLight": "mono-navy",
324
+ "dark": "negative-ivory",
325
+ "orange": "negative-ivory",
326
+ "photo": "forbidden"
327
+ },
328
+ "minSize": {
329
+ "markPx": 16,
330
+ "markMm": 5,
331
+ "wordmarkHeightPx": 12,
332
+ "wordmarkHeightMm": 4,
333
+ "markOnlyBelowPx": 20
334
+ },
335
+ "clearSpace": {
336
+ "mark": "P/4 (P = pervane yüksekliği)",
337
+ "wordmark": "H/2 (H = harf yüksekliği)"
338
+ },
339
+ "gradientMinPx": 48
340
+ },
341
+ "company": {
342
+ "name": "DNA Proje ve Yazılım A.Ş.",
343
+ "nameUpper": "DNA PROJE VE YAZILIM A.Ş.",
344
+ "address": "Barbaros Mah. Begonya Sokak No:3 Nidakule Ataşehir Kuzey Kat:14 No:140 Ataşehir/İstanbul",
345
+ "addressShort": "Begonya Sok. No:3 Nidakule Ataşehir Kuzey Kat:14 No:140, Ataşehir/İstanbul",
346
+ "taxOffice": "Kozyatağı",
347
+ "taxNo": "302 131 4723",
348
+ "phone": "+90 216 455 33 62",
349
+ "email": "bilgi@dna.com.tr",
350
+ "supportEmail": "destek@dna.com.tr",
351
+ "emailDomain": "dna.com.tr",
352
+ "web": "dna.com.tr",
353
+ "webUrl": "https://www.dna.com.tr/",
354
+ "city": {
355
+ "tr": "İstanbul",
356
+ "en": "Istanbul"
357
+ },
358
+ "tagline": {
359
+ "tr": "DNA'nıza Uygun Kurumsal Çözümler",
360
+ "en": "Enterprise Solutions That Fit Your DNA"
361
+ },
362
+ "copyright": {
363
+ "tr": "© {year} DNA Proje ve Yazılım A.Ş. | Tüm Hakları Saklıdır.",
364
+ "en": "© {year} DNA Proje ve Yazılım A.Ş. | All rights reserved."
365
+ }
366
+ },
367
+ "documentCodes": {
368
+ "owner": "CRM (DNA.API.CRMModule); kural orada üretilir, burası hizalama için taşır",
369
+ "format": "{type}-{yyyy}-{nnnnn}",
370
+ "example": "TKF-2026-00051",
371
+ "types": {
372
+ "TKF": {
373
+ "tr": "Teklif",
374
+ "en": "Proposal"
375
+ },
376
+ "RPR": {
377
+ "tr": "Rapor",
378
+ "en": "Report"
379
+ },
380
+ "ANZ": {
381
+ "tr": "Analiz",
382
+ "en": "Analysis"
383
+ },
384
+ "TTN": {
385
+ "tr": "Tutanak",
386
+ "en": "Minutes"
387
+ },
388
+ "YZI": {
389
+ "tr": "Resmi yazı",
390
+ "en": "Letter"
391
+ },
392
+ "SRT": {
393
+ "tr": "Şartname",
394
+ "en": "Specification"
395
+ }
396
+ },
397
+ "noCode": [
398
+ "sunum",
399
+ "dashboard",
400
+ "design",
401
+ "eposta-imzasi"
402
+ ],
403
+ "legacy": [
404
+ "DNA-TKF-YYYY-NNN (dna-doc skill)",
405
+ "DNA-<TÜR>-<YIL>-<SIRA> (dna-kimlik)",
406
+ "DNA-UMUR-2026-001",
407
+ "20260520-UMUR-001",
408
+ "YYYYAA00000000NN (Mitochondrion Word dosya adı)"
409
+ ]
410
+ },
411
+ "office": {
412
+ "word": {
413
+ "page": {
414
+ "widthTwips": 11906,
415
+ "heightTwips": 16838,
416
+ "size": "A4"
417
+ },
418
+ "marginTwips": {
419
+ "top": 2268,
420
+ "right": 1701,
421
+ "bottom": 1701,
422
+ "left": 1985,
423
+ "header": 851,
424
+ "footer": 709
425
+ },
426
+ "docDefaults": {
427
+ "font": "Source Sans 3",
428
+ "sizeHalfPt": 22,
429
+ "color": "2E3236",
430
+ "afterTwips": 160,
431
+ "lineTwips": 320,
432
+ "lineRule": "atLeast"
433
+ },
434
+ "header": {
435
+ "strip": {
436
+ "emu": [
437
+ 216000,
438
+ 10692000
439
+ ],
440
+ "pos": [
441
+ 0,
442
+ 0
443
+ ],
444
+ "png": "dna-serit.png",
445
+ "pngPx": [
446
+ 120,
447
+ 5940
448
+ ]
449
+ },
450
+ "rule": {
451
+ "emu": [
452
+ 6480000,
453
+ 21600
454
+ ],
455
+ "posX": 540000,
456
+ "posYAntet": 1110653,
457
+ "posYRapor": 1039366,
458
+ "color": "B4BBBF"
459
+ },
460
+ "wordmarkEmu": {
461
+ "antet": [
462
+ 1080000,
463
+ 534600
464
+ ],
465
+ "rapor": [
466
+ 936000,
467
+ 463320
468
+ ]
469
+ }
470
+ },
471
+ "coverMarkEmu": [
472
+ 936000,
473
+ 851760
474
+ ],
475
+ "footerPt": 8
476
+ },
477
+ "pptx": {
478
+ "slideEmu": [
479
+ 12192000,
480
+ 6858000
481
+ ],
482
+ "canvasPx": [
483
+ 1920,
484
+ 1080
485
+ ],
486
+ "emuPerPx": 6350,
487
+ "theme": {
488
+ "dk1": "2E3236",
489
+ "lt1": "FFFFFF",
490
+ "dk2": "425D78",
491
+ "lt2": "FAF9F5",
492
+ "accent1": "EA643B",
493
+ "accent2": "425D78",
494
+ "accent3": "B4BBBF",
495
+ "accent4": "66718C",
496
+ "accent5": "8291A9",
497
+ "accent6": "E7E4DC",
498
+ "hlink": "C2451D",
499
+ "folHlink": "66718C"
500
+ },
501
+ "masterStripEmu": [
502
+ 216000,
503
+ 2286000
504
+ ],
505
+ "wordmark": {
506
+ "emu": [
507
+ 1080000,
508
+ 534600
509
+ ],
510
+ "pos": [
511
+ 10654800,
512
+ 274638
513
+ ]
514
+ },
515
+ "sectionDivider": {
516
+ "background": "425D78",
517
+ "titleColor": "FAF9F5",
518
+ "markWhiteEmu": [
519
+ 1200000,
520
+ 1092000
521
+ ],
522
+ "markWhitePos": [
523
+ 10292000,
524
+ 4958000
525
+ ]
526
+ }
527
+ },
528
+ "xlsx": {
529
+ "band": {
530
+ "rows": 4,
531
+ "rowHeightsPx": [
532
+ 30,
533
+ 36,
534
+ 24,
535
+ 10
536
+ ],
537
+ "stripColumnWidth": 1.6,
538
+ "gapColumnWidth": 2,
539
+ "markPx": [
540
+ 88,
541
+ 80
542
+ ],
543
+ "wordmarkPx": [
544
+ 96,
545
+ 48
546
+ ]
547
+ },
548
+ "headerRow": 6,
549
+ "freezeRow": 6,
550
+ "rowHeightPx": {
551
+ "header": 28,
552
+ "data": 26
553
+ },
554
+ "gridLines": false,
555
+ "borders": "none (yalnız bant alt çizgisi B4BBBF)"
556
+ }
557
+ },
558
+ "standardTexts": {
559
+ "tr": {
560
+ "salutationKnown": "Sayın {company} Yetkilileri,",
561
+ "salutationUnknown": "Sayın Yetkili,",
562
+ "regards": "Saygılarımızla,",
563
+ "proposalCoverLetter": [
564
+ "Şirketiniz ile yaptığımız görüşmelerde belirlediğimiz esaslar çerçevesinde hazırladığımız teklif görüş ve incelemelerinize sunulmuştur.",
565
+ "Teklifte yer alan tüm bilgiler gizlilik içermekte olup yalnızca firmanızın değerlendirme amaçlarına yönelik olarak kullanılmasını ve gizliliğine özen gösterilmesini rica ederiz.",
566
+ "Bu vesile ile şirketimize gösterdiğiniz ilgi ve güven için teşekkür ederiz."
567
+ ],
568
+ "proposalIntroShort": "Talebiniz doğrultusunda hazırladığımız teklifimizi bilgilerinize sunarız. İhtiyaçlarınıza en uygun çözümü sağlamak için ekibimiz her aşamada yanınızda olacaktır.",
569
+ "proposalClosing": "Teklifimizi değerlendirdiğiniz için teşekkür eder, birlikte çalışmayı dileriz.",
570
+ "aboutTitle": "DNA Proje ve Yazılım Hakkında",
571
+ "about": [
572
+ "DNA Proje, işletmelerin iş uygulamalarına yön verecek şekilde ve ERP standartlarıyla uyumlu bir biçimde danışmanlık hizmetleri sunmaktadır. Yapılan iş analizi, ihtiyaçların belirlenmesi, yazılımın uyarlanması, veri aktarımı, kullanıcı eğitimi ve desteği gibi tüm hizmetler kapsamlı bir şekilde sunulmaktadır. Logo ERP ürünlerine yönelik danışmanlık hizmetlerinde tecrübeli, bilgi birikimi yüksek, birçok farklı sektörde ve projede görev almış danışmanlar çalışmaktadır. Müşteri memnuniyeti ve çözüm odaklı hizmet anlayışı ile firmalara rekabet avantajı sağlayacak, verimliliklerini artıracak ve maliyetlerini azaltacak özel çözümler sunulmaktadır.",
573
+ "DNA Proje, dijital dönüşüm danışmanlık hizmeti kapsamında, tüm departmanlarınızın mevcut durum analizini gerçekleştirerek şirketinizi hedeflerine ulaştıracak dijitalleşme stratejilerinin ve projelerinin belirlendiği dijital dönüşüm yol haritasını oluşturmaktadır. Ayrıca şirket hedefleri göz önünde bulundurularak, tüm departmanlar için operasyonel verimliliği artıracak iyileştirme noktaları tespit edilmektedir.",
574
+ "DNA Proje, farklı sektörlerde yer alan müşterilerinin farklı talepleri için sektörel deneyim ve süreç analizi yetenekleriyle uygun ve gerekli olan fonksiyonları kullanarak özel çözümler geliştirmekte, iş akış süreçlerini standartlaştırarak elektronik ortama taşımaktadır."
575
+ ],
576
+ "nextSteps": [
577
+ {
578
+ "title": "Teklifin Onaylanması",
579
+ "text": "Teklifin tarafınızca değerlendirilip onaylanması ve sipariş bildirimi."
580
+ },
581
+ {
582
+ "title": "Sözleşme ve Planlama",
583
+ "text": "Sözleşmenin imzalanması, proje ekibinin ataması ve kickoff toplantısı."
584
+ },
585
+ {
586
+ "title": "Analiz ve Geliştirme",
587
+ "text": "Detay analiz, geliştirme, test ve devreye alma adımlarının yürütülmesi."
588
+ }
589
+ ],
590
+ "vatNote": "Belirtilen tutarlara yasal KDV oranı eklenecektir.",
591
+ "vatExcluded": "Fiyatlara KDV dahil değildir.",
592
+ "currencyNote": "Belirtilen fiyatlar Türk Lirası (TRY) cinsindendir ve fiyatlara KDV dahil değildir.",
593
+ "paymentUpfront": "Fatura bedeli peşin olarak tahsil edilir.",
594
+ "validUntil": "Teklifimiz {date} tarihine kadar geçerlidir.",
595
+ "defaultValidity": "15 İş Günü",
596
+ "manDayNotes": [
597
+ "1 İnsan/Gün karşılığında carinize 8 saat tahakkuk edilecektir.",
598
+ "Tarafınıza tahsis edilen günlerin kullanım süresi, teklifin onaylandığı tarihten itibaren 1 (bir) yıl ile sınırlıdır. Tahsis edilen gün paketi bir bütün olarak değerlendirilir ve bölünemez."
599
+ ],
600
+ "confidentiality": "Bu Teklif Mektubu ve eklerindeki tüm bilgi ve belgeler gizli bilgidir ve ifşa yasağına tabidir.",
601
+ "discountLabels": [
602
+ "Kampanya İskontosu",
603
+ "Sadakat İndirimi",
604
+ "Özel İskonto",
605
+ "Özel İndirim"
606
+ ]
607
+ },
608
+ "en": {
609
+ "salutationKnown": "Dear {company} team,",
610
+ "salutationUnknown": "Dear Sir or Madam,",
611
+ "regards": "Kind regards,"
612
+ }
613
+ }
614
+ }
615
+ const color = {
616
+ "orange": "#EA643B",
617
+ "navy": "#425D78",
618
+ "grey": "#B4BBBF",
619
+ "ink": "#2E3236",
620
+ "ivory": "#FAF9F5",
621
+ "warmNeutral": "#E7E4DC",
622
+ "panel": "#F1EFE9",
623
+ "divider": "#DBDFE6",
624
+ "iconMuted": "#8291A9",
625
+ "textSecondary": "#66718C",
626
+ "textSecondaryOnColor": "#35455C",
627
+ "link": "#C2451D",
628
+ "linkHover": "#EA643B",
629
+ "success": "#2E7D4E",
630
+ "warning": "#8A6400",
631
+ "danger": "#A32C39",
632
+ "info": "#31708F"
633
+ }
634
+ const chartSeries = tokens.color.chart.series
635
+ const company = tokens.company
636
+ const standardTexts = tokens.standardTexts
637
+ export { tokens, color, chartSeries, company, standardTexts }
638
+ export default tokens