@logosphere-ui/core 0.0.0-alpha.35 → 0.0.0-alpha.39
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/AGENTS.md +20 -15
- package/dist/AGENTS.md +20 -15
- package/dist/atoms/Checkbox/checkbox.d.ts +2 -1
- package/dist/{badge-BJqUgXZD.js → badge-DsDxWEHx.js} +1 -1
- package/dist/{badge-COTtd1jh.cjs → badge-DvaKpUHe.cjs} +1 -1
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{calendar-DtpJBtpq.cjs → calendar-CIgyrv3U.cjs} +1 -1
- package/dist/{calendar-B7bSuIt4.js → calendar-CZ_IN2TF.js} +1 -1
- package/dist/calendar.cjs +1 -1
- package/dist/calendar.js +1 -1
- package/dist/{card-BD8FkSTi.cjs → card-BOCW7gad.cjs} +1 -1
- package/dist/{card-CAAhjIjf.js → card-MDwFGplY.js} +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/{chatbot-8etAVHNx.cjs → chatbot-B-NiZIYK.cjs} +1 -1
- package/dist/{chatbot-p4CmxSdZ.js → chatbot-CHgiUY4h.js} +3 -3
- package/dist/chatbot.cjs +1 -1
- package/dist/chatbot.js +1 -1
- package/dist/checkbox-CX0LgsWP.js +148 -0
- package/dist/checkbox-DpbKHANK.cjs +53 -0
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/chip-group-BUL2H8rr.js +89 -0
- package/dist/chip-group-CpcjGoRm.cjs +26 -0
- package/dist/chip-group.cjs +1 -0
- package/dist/chip-group.js +4 -0
- package/dist/{combobox-BV4AKTqp.cjs → combobox-BmIFPk8X.cjs} +29 -23
- package/dist/{combobox-CTqEZUg6.js → combobox-jak7Ac1m.js} +192 -142
- package/dist/combobox.cjs +1 -1
- package/dist/combobox.js +1 -1
- package/dist/{datepicker-tJbIvNpy.js → datepicker-BgysIOZI.js} +2 -2
- package/dist/{datepicker-BCNJROwD.cjs → datepicker-DOBmbxlo.cjs} +1 -1
- package/dist/datepicker.cjs +1 -1
- package/dist/datepicker.js +1 -1
- package/dist/{drawer-g6mHdpjF.cjs → drawer-3nyjAkcS.cjs} +2 -2
- package/dist/{drawer-CRB8UUAo.js → drawer-CE9zzllI.js} +2 -2
- package/dist/drawer.cjs +1 -1
- package/dist/drawer.js +1 -1
- package/dist/index.cjs +11 -7
- package/dist/index.d.ts +2 -0
- package/dist/index.js +182 -118
- package/dist/index.umd.js +137 -85
- package/dist/{input-Tkm7VBBl.cjs → input-CQS0LzF-.cjs} +1 -1
- package/dist/{input-BUX_2G5m.js → input-CeF3YJk-.js} +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/left-menu.cjs +1 -1
- package/dist/left-menu.js +1 -1
- package/dist/{leftmenu-Cf2gC2J0.js → leftmenu-CmWvnA6L.js} +3 -3
- package/dist/{leftmenu-D0sRExqr.cjs → leftmenu-p9aR2QTy.cjs} +1 -1
- package/dist/{modal-Cfa0imdF.js → modal-DUIv_yoo.js} +2 -2
- package/dist/{modal-DFnpqdWX.cjs → modal-dUnnHe8u.cjs} +2 -2
- package/dist/modal.cjs +1 -1
- package/dist/modal.js +1 -1
- package/dist/molecules/Chip/chip-group.d.ts +29 -0
- package/dist/molecules/Chip/index.d.ts +2 -0
- package/dist/molecules/InputGroup/index.d.ts +1 -0
- package/dist/molecules/InputGroup/input-group.d.ts +40 -0
- package/dist/organisms/Combobox/combobox.d.ts +11 -0
- package/dist/organisms/Tab/tab.d.ts +13 -1
- package/dist/{pagination-BLNrwUSO.js → pagination-B7jknoOz.js} +2 -2
- package/dist/{pagination-AclB9qi1.cjs → pagination-BkqbWBOn.cjs} +1 -1
- package/dist/pagination.cjs +1 -1
- package/dist/pagination.js +1 -1
- package/dist/{popover-DhEvLuOo.cjs → popover-CYDoeLKp.cjs} +1 -1
- package/dist/{popover-BSfKsQni.js → popover-DDaG8MSj.js} +27 -27
- package/dist/popover.cjs +1 -1
- package/dist/popover.js +1 -1
- package/dist/tab-CDMcFHvP.cjs +41 -0
- package/dist/tab-CuBCFGoO.js +204 -0
- package/dist/tab.cjs +1 -1
- package/dist/tab.js +1 -1
- package/dist/{text-area-coWx4Xn-.js → text-area-C73JxnqH.js} +1 -1
- package/dist/{text-area-DCBCDtJw.cjs → text-area-Cprb-azV.cjs} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{timepicker-WxA2Uo66.cjs → timepicker-CLJKWWGm.cjs} +1 -1
- package/dist/{timepicker-rNyKCfN3.js → timepicker-DMzGYd0p.js} +2 -2
- package/dist/timepicker.cjs +1 -1
- package/dist/timepicker.js +1 -1
- package/dist/{toast-container-B9E_mVk6.cjs → toast-container-6t6yEP9Y.cjs} +2 -2
- package/dist/{toast-container-Cb0MduXt.js → toast-container-B5v74b_5.js} +2 -2
- package/dist/toast.cjs +1 -1
- package/dist/toast.js +1 -1
- package/dist/{tree-menu-CufITiv_.js → tree-menu-CkOPxr-W.js} +1 -1
- package/dist/{tree-menu-DuJuy5pp.cjs → tree-menu-WNwZMreD.cjs} +1 -1
- package/dist/tree-menu.cjs +1 -1
- package/dist/tree-menu.js +1 -1
- package/dist/ui-icon-BMJNdIOq.js +71 -0
- package/dist/ui-icon-DIucAQC_.cjs +22 -0
- package/package.json +11 -1
- package/dist/checkbox-CdDTRdKV.cjs +0 -37
- package/dist/checkbox-g6kl2jGR.js +0 -119
- package/dist/tab-BmrITzOL.cjs +0 -40
- package/dist/tab-Ca_OyNqQ.js +0 -176
- package/dist/ui-icon-Ctn4nGFa.js +0 -70
- package/dist/ui-icon-jKyMV1zp.cjs +0 -22
package/AGENTS.md
CHANGED
|
@@ -112,7 +112,7 @@ Etiket/chip bileşeni; kapatılabilir veya yuvarlak.
|
|
|
112
112
|
|
|
113
113
|
### `<logosphere-checkbox>`
|
|
114
114
|
|
|
115
|
-
Onay kutusu veya
|
|
115
|
+
Onay kutusu, toggle switch veya radio buton.
|
|
116
116
|
|
|
117
117
|
**Properties**
|
|
118
118
|
|
|
@@ -121,7 +121,7 @@ Onay kutusu veya toggle switch.
|
|
|
121
121
|
| `label` | `string` | `""` | Etiket metni |
|
|
122
122
|
| `value` | `string` | `""` | Form değeri |
|
|
123
123
|
| `checked` | `boolean` | `false` | İşaretli mi |
|
|
124
|
-
| `type` | `"checkbox" \| "switch"` | `"checkbox"` | Görünüm tipi |
|
|
124
|
+
| `type` | `"checkbox" \| "switch" \| "radio"` | `"checkbox"` | Görünüm tipi |
|
|
125
125
|
| `disabled` | `boolean` | `false` | Devre dışı |
|
|
126
126
|
| `indeterminate` | `boolean` | `false` | Belirsiz durum |
|
|
127
127
|
|
|
@@ -133,6 +133,11 @@ Onay kutusu veya toggle switch.
|
|
|
133
133
|
<!-- Switch görünümü -->
|
|
134
134
|
<logosphere-checkbox type="switch" label="Bildirimleri etkinleştir" checked></logosphere-checkbox>
|
|
135
135
|
|
|
136
|
+
<!-- Radio görünümü: tıklanınca işaretlenir, tekrar tıklamayla kapanmaz.
|
|
137
|
+
Grup davranışı consumer'da yönetilir (lgsChange ile diğerlerinin checked'i kapatılır) -->
|
|
138
|
+
<logosphere-checkbox type="radio" label="Seçenek 1" value="1" checked></logosphere-checkbox>
|
|
139
|
+
<logosphere-checkbox type="radio" label="Seçenek 2" value="2"></logosphere-checkbox>
|
|
140
|
+
|
|
136
141
|
<!-- Event dinleme -->
|
|
137
142
|
<script>
|
|
138
143
|
document.querySelector("logosphere-checkbox")
|
|
@@ -343,7 +348,7 @@ Başlık, içerik ve ayak bölümü olan kart.
|
|
|
343
348
|
|
|
344
349
|
| Property | Tip | Varsayılan | Açıklama |
|
|
345
350
|
|----------|-----|-----------|---------|
|
|
346
|
-
| `title` | `string` | `""` | Kart başlığı |
|
|
351
|
+
| `title` | `string` | `""` | Kart başlığı (attribute: `card-title`) |
|
|
347
352
|
| `description` | `string` | `""` | Başlık altı açıklama |
|
|
348
353
|
| `header` | `boolean` | `true` | Başlık bölümünü göster |
|
|
349
354
|
| `footer` | `boolean` | `true` | Ayak bölümünü göster |
|
|
@@ -358,13 +363,13 @@ Başlık, içerik ve ayak bölümü olan kart.
|
|
|
358
363
|
|
|
359
364
|
```html
|
|
360
365
|
<!-- Temel kart -->
|
|
361
|
-
<logosphere-card title="Kullanıcı Bilgileri" description="Profil bilgilerinizi güncelleyin">
|
|
366
|
+
<logosphere-card card-title="Kullanıcı Bilgileri" description="Profil bilgilerinizi güncelleyin">
|
|
362
367
|
<logosphere-input label="Ad" placeholder="Adınızı girin"></logosphere-input>
|
|
363
368
|
<logosphere-input label="E-posta" type="email"></logosphere-input>
|
|
364
369
|
</logosphere-card>
|
|
365
370
|
|
|
366
371
|
<!-- Onay diyaloğu gibi -->
|
|
367
|
-
<logosphere-card title="Emin misiniz?" okLabel="Evet, Sil" cancelLabel="Hayır">
|
|
372
|
+
<logosphere-card card-title="Emin misiniz?" okLabel="Evet, Sil" cancelLabel="Hayır">
|
|
368
373
|
Bu işlem geri alınamaz.
|
|
369
374
|
</logosphere-card>
|
|
370
375
|
|
|
@@ -384,7 +389,7 @@ Tetikleyici elemana konumlanmış açılır panel.
|
|
|
384
389
|
|
|
385
390
|
| Property | Tip | Varsayılan | Açıklama |
|
|
386
391
|
|----------|-----|-----------|---------|
|
|
387
|
-
| `title` | `string` | `""` | Popover başlığı |
|
|
392
|
+
| `title` | `string` | `""` | Popover başlığı (attribute: `popover-title`) |
|
|
388
393
|
| `trigger` | `"click" \| "hover"` | `"click"` | Açılma tetikleyicisi |
|
|
389
394
|
| `placement` | Popper Placement | `"bottom"` | Konum (`"top"`, `"bottom"`, `"left"`, `"right"`, `"bottom-start"` vb.) |
|
|
390
395
|
| `offset` | `number` | `8` | Tetikleyiciden mesafe (px) |
|
|
@@ -396,7 +401,7 @@ Tetikleyici elemana konumlanmış açılır panel.
|
|
|
396
401
|
**Slots:** `trigger` (tetikleyici element), varsayılan (panel içeriği)
|
|
397
402
|
|
|
398
403
|
```html
|
|
399
|
-
<logosphere-popover title="Yardım">
|
|
404
|
+
<logosphere-popover popover-title="Yardım">
|
|
400
405
|
<logosphere-button slot="trigger" variant="outline">?</logosphere-button>
|
|
401
406
|
Bu alan, kullanıcının tam adını içermelidir.
|
|
402
407
|
</logosphere-popover>
|
|
@@ -600,7 +605,7 @@ Tam ekran arka planlı modal diyalog.
|
|
|
600
605
|
| Property | Tip | Varsayılan | Açıklama |
|
|
601
606
|
|----------|-----|-----------|---------|
|
|
602
607
|
| `open` | `boolean` | `false` | Açık mı (reflect) |
|
|
603
|
-
| `title` | `string` | `""` | Modal başlığı |
|
|
608
|
+
| `title` | `string` | `""` | Modal başlığı (attribute: `modal-title`) |
|
|
604
609
|
| `closeOnEsc` | `boolean` | `true` | Esc ile kapat |
|
|
605
610
|
| `closeOnBackdrop` | `boolean` | `true` | Arka plana tıklayınca kapat |
|
|
606
611
|
| `showBack` | `boolean` | `false` | Geri butonu göster |
|
|
@@ -613,7 +618,7 @@ Tam ekran arka planlı modal diyalog.
|
|
|
613
618
|
**Slots:** `header`, varsayılan (gövde), `footer`
|
|
614
619
|
|
|
615
620
|
```html
|
|
616
|
-
<logosphere-modal id="my-modal" title="Düzenle" showClose>
|
|
621
|
+
<logosphere-modal id="my-modal" modal-title="Düzenle" showClose>
|
|
617
622
|
<logosphere-input label="Ad"></logosphere-input>
|
|
618
623
|
<div slot="footer">
|
|
619
624
|
<logosphere-button variant="outline" id="cancel-btn">İptal</logosphere-button>
|
|
@@ -637,7 +642,7 @@ Yan panel; sağdan veya soldan açılır.
|
|
|
637
642
|
| Property | Tip | Varsayılan | Açıklama |
|
|
638
643
|
|----------|-----|-----------|---------|
|
|
639
644
|
| `open` | `boolean` | `false` | Açık mı (reflect) |
|
|
640
|
-
| `title` | `string` | `""` | Panel başlığı |
|
|
645
|
+
| `title` | `string` | `""` | Panel başlığı (attribute: `drawer-title`) |
|
|
641
646
|
| `position` | `"left" \| "right"` | `"right"` | Hangi taraftan açılsın |
|
|
642
647
|
| `width` | `number` | `360` | Genişlik (px) |
|
|
643
648
|
| `closeOnEsc` | `boolean` | `true` | Esc ile kapat |
|
|
@@ -650,7 +655,7 @@ Yan panel; sağdan veya soldan açılır.
|
|
|
650
655
|
**Slots:** `trigger` (açma butonu), varsayılan (panel gövdesi)
|
|
651
656
|
|
|
652
657
|
```html
|
|
653
|
-
<logosphere-drawer title="Filtreler" position="right" width="400">
|
|
658
|
+
<logosphere-drawer drawer-title="Filtreler" position="right" width="400">
|
|
654
659
|
<logosphere-button slot="trigger" variant="outline">
|
|
655
660
|
Filtreleri Aç
|
|
656
661
|
</logosphere-button>
|
|
@@ -672,7 +677,7 @@ Bildirim mesajı. Genellikle doğrudan kullanmak yerine `ToastService` kullanıl
|
|
|
672
677
|
| Property | Tip | Varsayılan | Açıklama |
|
|
673
678
|
|----------|-----|-----------|---------|
|
|
674
679
|
| `type` | `"info" \| "success" \| "warning" \| "danger"` | `"info"` | Ikon/renk tipi |
|
|
675
|
-
| `title` | `string` | `""` | Başlık |
|
|
680
|
+
| `title` | `string` | `""` | Başlık (attribute: `toast-title`) |
|
|
676
681
|
| `text` | `string` | `""` | Açıklama metni |
|
|
677
682
|
| `icon` | `string` | `""` | Özel ikon adı |
|
|
678
683
|
| `closeable` | `boolean` | `true` | Manuel kapatma butonu |
|
|
@@ -912,7 +917,7 @@ SVG ikon bileşeni. `icon-map.ts`'deki kayıtlı ikonları isimle render eder.
|
|
|
912
917
|
|
|
913
918
|
```html
|
|
914
919
|
<div style="min-height:100vh; display:flex; align-items:center; justify-content:center; background:var(--color-body-bg)">
|
|
915
|
-
<logosphere-card title="Giriş Yap" description="Hesabınıza erişin" style="width:400px">
|
|
920
|
+
<logosphere-card card-title="Giriş Yap" description="Hesabınıza erişin" style="width:400px">
|
|
916
921
|
<div style="display:flex; flex-direction:column; gap:16px">
|
|
917
922
|
<logosphere-input
|
|
918
923
|
type="email"
|
|
@@ -946,7 +951,7 @@ SVG ikon bileşeni. `icon-map.ts`'deki kayıtlı ikonları isimle render eder.
|
|
|
946
951
|
<ui-icon slot="prefix" name="uil-search" size="16"></ui-icon>
|
|
947
952
|
</logosphere-input>
|
|
948
953
|
|
|
949
|
-
<logosphere-drawer title="Filtreler" position="right">
|
|
954
|
+
<logosphere-drawer drawer-title="Filtreler" position="right">
|
|
950
955
|
<logosphere-button slot="trigger" variant="outline">Filtre</logosphere-button>
|
|
951
956
|
|
|
952
957
|
<div style="display:flex; flex-direction:column; gap:12px; padding:16px">
|
|
@@ -1036,7 +1041,7 @@ SVG ikon bileşeni. `icon-map.ts`'deki kayıtlı ikonları isimle render eder.
|
|
|
1036
1041
|
### Silme Onay Modalı
|
|
1037
1042
|
|
|
1038
1043
|
```html
|
|
1039
|
-
<logosphere-modal id="delete-modal" title="Kaydı Sil" showClose closeOnEsc>
|
|
1044
|
+
<logosphere-modal id="delete-modal" modal-title="Kaydı Sil" showClose closeOnEsc>
|
|
1040
1045
|
<p>Bu kaydı silmek istediğinizden emin misiniz? Bu işlem geri alınamaz.</p>
|
|
1041
1046
|
|
|
1042
1047
|
<div slot="footer" style="display:flex; gap:8px; justify-content:flex-end">
|
package/dist/AGENTS.md
CHANGED
|
@@ -112,7 +112,7 @@ Etiket/chip bileşeni; kapatılabilir veya yuvarlak.
|
|
|
112
112
|
|
|
113
113
|
### `<logosphere-checkbox>`
|
|
114
114
|
|
|
115
|
-
Onay kutusu veya
|
|
115
|
+
Onay kutusu, toggle switch veya radio buton.
|
|
116
116
|
|
|
117
117
|
**Properties**
|
|
118
118
|
|
|
@@ -121,7 +121,7 @@ Onay kutusu veya toggle switch.
|
|
|
121
121
|
| `label` | `string` | `""` | Etiket metni |
|
|
122
122
|
| `value` | `string` | `""` | Form değeri |
|
|
123
123
|
| `checked` | `boolean` | `false` | İşaretli mi |
|
|
124
|
-
| `type` | `"checkbox" \| "switch"` | `"checkbox"` | Görünüm tipi |
|
|
124
|
+
| `type` | `"checkbox" \| "switch" \| "radio"` | `"checkbox"` | Görünüm tipi |
|
|
125
125
|
| `disabled` | `boolean` | `false` | Devre dışı |
|
|
126
126
|
| `indeterminate` | `boolean` | `false` | Belirsiz durum |
|
|
127
127
|
|
|
@@ -133,6 +133,11 @@ Onay kutusu veya toggle switch.
|
|
|
133
133
|
<!-- Switch görünümü -->
|
|
134
134
|
<logosphere-checkbox type="switch" label="Bildirimleri etkinleştir" checked></logosphere-checkbox>
|
|
135
135
|
|
|
136
|
+
<!-- Radio görünümü: tıklanınca işaretlenir, tekrar tıklamayla kapanmaz.
|
|
137
|
+
Grup davranışı consumer'da yönetilir (lgsChange ile diğerlerinin checked'i kapatılır) -->
|
|
138
|
+
<logosphere-checkbox type="radio" label="Seçenek 1" value="1" checked></logosphere-checkbox>
|
|
139
|
+
<logosphere-checkbox type="radio" label="Seçenek 2" value="2"></logosphere-checkbox>
|
|
140
|
+
|
|
136
141
|
<!-- Event dinleme -->
|
|
137
142
|
<script>
|
|
138
143
|
document.querySelector("logosphere-checkbox")
|
|
@@ -343,7 +348,7 @@ Başlık, içerik ve ayak bölümü olan kart.
|
|
|
343
348
|
|
|
344
349
|
| Property | Tip | Varsayılan | Açıklama |
|
|
345
350
|
|----------|-----|-----------|---------|
|
|
346
|
-
| `title` | `string` | `""` | Kart başlığı |
|
|
351
|
+
| `title` | `string` | `""` | Kart başlığı (attribute: `card-title`) |
|
|
347
352
|
| `description` | `string` | `""` | Başlık altı açıklama |
|
|
348
353
|
| `header` | `boolean` | `true` | Başlık bölümünü göster |
|
|
349
354
|
| `footer` | `boolean` | `true` | Ayak bölümünü göster |
|
|
@@ -358,13 +363,13 @@ Başlık, içerik ve ayak bölümü olan kart.
|
|
|
358
363
|
|
|
359
364
|
```html
|
|
360
365
|
<!-- Temel kart -->
|
|
361
|
-
<logosphere-card title="Kullanıcı Bilgileri" description="Profil bilgilerinizi güncelleyin">
|
|
366
|
+
<logosphere-card card-title="Kullanıcı Bilgileri" description="Profil bilgilerinizi güncelleyin">
|
|
362
367
|
<logosphere-input label="Ad" placeholder="Adınızı girin"></logosphere-input>
|
|
363
368
|
<logosphere-input label="E-posta" type="email"></logosphere-input>
|
|
364
369
|
</logosphere-card>
|
|
365
370
|
|
|
366
371
|
<!-- Onay diyaloğu gibi -->
|
|
367
|
-
<logosphere-card title="Emin misiniz?" okLabel="Evet, Sil" cancelLabel="Hayır">
|
|
372
|
+
<logosphere-card card-title="Emin misiniz?" okLabel="Evet, Sil" cancelLabel="Hayır">
|
|
368
373
|
Bu işlem geri alınamaz.
|
|
369
374
|
</logosphere-card>
|
|
370
375
|
|
|
@@ -384,7 +389,7 @@ Tetikleyici elemana konumlanmış açılır panel.
|
|
|
384
389
|
|
|
385
390
|
| Property | Tip | Varsayılan | Açıklama |
|
|
386
391
|
|----------|-----|-----------|---------|
|
|
387
|
-
| `title` | `string` | `""` | Popover başlığı |
|
|
392
|
+
| `title` | `string` | `""` | Popover başlığı (attribute: `popover-title`) |
|
|
388
393
|
| `trigger` | `"click" \| "hover"` | `"click"` | Açılma tetikleyicisi |
|
|
389
394
|
| `placement` | Popper Placement | `"bottom"` | Konum (`"top"`, `"bottom"`, `"left"`, `"right"`, `"bottom-start"` vb.) |
|
|
390
395
|
| `offset` | `number` | `8` | Tetikleyiciden mesafe (px) |
|
|
@@ -396,7 +401,7 @@ Tetikleyici elemana konumlanmış açılır panel.
|
|
|
396
401
|
**Slots:** `trigger` (tetikleyici element), varsayılan (panel içeriği)
|
|
397
402
|
|
|
398
403
|
```html
|
|
399
|
-
<logosphere-popover title="Yardım">
|
|
404
|
+
<logosphere-popover popover-title="Yardım">
|
|
400
405
|
<logosphere-button slot="trigger" variant="outline">?</logosphere-button>
|
|
401
406
|
Bu alan, kullanıcının tam adını içermelidir.
|
|
402
407
|
</logosphere-popover>
|
|
@@ -600,7 +605,7 @@ Tam ekran arka planlı modal diyalog.
|
|
|
600
605
|
| Property | Tip | Varsayılan | Açıklama |
|
|
601
606
|
|----------|-----|-----------|---------|
|
|
602
607
|
| `open` | `boolean` | `false` | Açık mı (reflect) |
|
|
603
|
-
| `title` | `string` | `""` | Modal başlığı |
|
|
608
|
+
| `title` | `string` | `""` | Modal başlığı (attribute: `modal-title`) |
|
|
604
609
|
| `closeOnEsc` | `boolean` | `true` | Esc ile kapat |
|
|
605
610
|
| `closeOnBackdrop` | `boolean` | `true` | Arka plana tıklayınca kapat |
|
|
606
611
|
| `showBack` | `boolean` | `false` | Geri butonu göster |
|
|
@@ -613,7 +618,7 @@ Tam ekran arka planlı modal diyalog.
|
|
|
613
618
|
**Slots:** `header`, varsayılan (gövde), `footer`
|
|
614
619
|
|
|
615
620
|
```html
|
|
616
|
-
<logosphere-modal id="my-modal" title="Düzenle" showClose>
|
|
621
|
+
<logosphere-modal id="my-modal" modal-title="Düzenle" showClose>
|
|
617
622
|
<logosphere-input label="Ad"></logosphere-input>
|
|
618
623
|
<div slot="footer">
|
|
619
624
|
<logosphere-button variant="outline" id="cancel-btn">İptal</logosphere-button>
|
|
@@ -637,7 +642,7 @@ Yan panel; sağdan veya soldan açılır.
|
|
|
637
642
|
| Property | Tip | Varsayılan | Açıklama |
|
|
638
643
|
|----------|-----|-----------|---------|
|
|
639
644
|
| `open` | `boolean` | `false` | Açık mı (reflect) |
|
|
640
|
-
| `title` | `string` | `""` | Panel başlığı |
|
|
645
|
+
| `title` | `string` | `""` | Panel başlığı (attribute: `drawer-title`) |
|
|
641
646
|
| `position` | `"left" \| "right"` | `"right"` | Hangi taraftan açılsın |
|
|
642
647
|
| `width` | `number` | `360` | Genişlik (px) |
|
|
643
648
|
| `closeOnEsc` | `boolean` | `true` | Esc ile kapat |
|
|
@@ -650,7 +655,7 @@ Yan panel; sağdan veya soldan açılır.
|
|
|
650
655
|
**Slots:** `trigger` (açma butonu), varsayılan (panel gövdesi)
|
|
651
656
|
|
|
652
657
|
```html
|
|
653
|
-
<logosphere-drawer title="Filtreler" position="right" width="400">
|
|
658
|
+
<logosphere-drawer drawer-title="Filtreler" position="right" width="400">
|
|
654
659
|
<logosphere-button slot="trigger" variant="outline">
|
|
655
660
|
Filtreleri Aç
|
|
656
661
|
</logosphere-button>
|
|
@@ -672,7 +677,7 @@ Bildirim mesajı. Genellikle doğrudan kullanmak yerine `ToastService` kullanıl
|
|
|
672
677
|
| Property | Tip | Varsayılan | Açıklama |
|
|
673
678
|
|----------|-----|-----------|---------|
|
|
674
679
|
| `type` | `"info" \| "success" \| "warning" \| "danger"` | `"info"` | Ikon/renk tipi |
|
|
675
|
-
| `title` | `string` | `""` | Başlık |
|
|
680
|
+
| `title` | `string` | `""` | Başlık (attribute: `toast-title`) |
|
|
676
681
|
| `text` | `string` | `""` | Açıklama metni |
|
|
677
682
|
| `icon` | `string` | `""` | Özel ikon adı |
|
|
678
683
|
| `closeable` | `boolean` | `true` | Manuel kapatma butonu |
|
|
@@ -912,7 +917,7 @@ SVG ikon bileşeni. `icon-map.ts`'deki kayıtlı ikonları isimle render eder.
|
|
|
912
917
|
|
|
913
918
|
```html
|
|
914
919
|
<div style="min-height:100vh; display:flex; align-items:center; justify-content:center; background:var(--color-body-bg)">
|
|
915
|
-
<logosphere-card title="Giriş Yap" description="Hesabınıza erişin" style="width:400px">
|
|
920
|
+
<logosphere-card card-title="Giriş Yap" description="Hesabınıza erişin" style="width:400px">
|
|
916
921
|
<div style="display:flex; flex-direction:column; gap:16px">
|
|
917
922
|
<logosphere-input
|
|
918
923
|
type="email"
|
|
@@ -946,7 +951,7 @@ SVG ikon bileşeni. `icon-map.ts`'deki kayıtlı ikonları isimle render eder.
|
|
|
946
951
|
<ui-icon slot="prefix" name="uil-search" size="16"></ui-icon>
|
|
947
952
|
</logosphere-input>
|
|
948
953
|
|
|
949
|
-
<logosphere-drawer title="Filtreler" position="right">
|
|
954
|
+
<logosphere-drawer drawer-title="Filtreler" position="right">
|
|
950
955
|
<logosphere-button slot="trigger" variant="outline">Filtre</logosphere-button>
|
|
951
956
|
|
|
952
957
|
<div style="display:flex; flex-direction:column; gap:12px; padding:16px">
|
|
@@ -1036,7 +1041,7 @@ SVG ikon bileşeni. `icon-map.ts`'deki kayıtlı ikonları isimle render eder.
|
|
|
1036
1041
|
### Silme Onay Modalı
|
|
1037
1042
|
|
|
1038
1043
|
```html
|
|
1039
|
-
<logosphere-modal id="delete-modal" title="Kaydı Sil" showClose closeOnEsc>
|
|
1044
|
+
<logosphere-modal id="delete-modal" modal-title="Kaydı Sil" showClose closeOnEsc>
|
|
1040
1045
|
<p>Bu kaydı silmek istediğinizden emin misiniz? Bu işlem geri alınamaz.</p>
|
|
1041
1046
|
|
|
1042
1047
|
<div slot="footer" style="display:flex; gap:8px; justify-content:flex-end">
|
|
@@ -4,7 +4,7 @@ export declare class Checkbox extends LitElement {
|
|
|
4
4
|
label: string;
|
|
5
5
|
value: string;
|
|
6
6
|
checked: boolean;
|
|
7
|
-
type: "checkbox" | "switch";
|
|
7
|
+
type: "checkbox" | "switch" | "radio";
|
|
8
8
|
disabled: boolean;
|
|
9
9
|
indeterminate: boolean;
|
|
10
10
|
private internalChecked;
|
|
@@ -15,6 +15,7 @@ export declare class Checkbox extends LitElement {
|
|
|
15
15
|
private setIndeterminate;
|
|
16
16
|
private toggleChecked;
|
|
17
17
|
private renderCheckbox;
|
|
18
|
+
private renderRadio;
|
|
18
19
|
private renderSwitch;
|
|
19
20
|
render(): import("lit-html").TemplateResult<1>;
|
|
20
21
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { unsafeCSS as p, css as u, LitElement as b, nothing as d, html as g } from "lit";
|
|
2
2
|
import { property as a, customElement as h } from "lit/decorators.js";
|
|
3
|
-
import "./ui-icon-
|
|
3
|
+
import "./ui-icon-BMJNdIOq.js";
|
|
4
4
|
const f = ".badge{display:inline-flex;align-items:center;gap:var(--spacing-1);font-family:var(--font-family-base);font-size:11px;font-weight:var(--font-weight-medium);line-height:1rem;letter-spacing:-.11px;border-radius:var(--radius-base);white-space:nowrap;-webkit-user-select:none;user-select:none}.badge--default-size{min-height:24px;max-height:24px;padding:var(--spacing-0) var(--spacing-2)}.badge--small{min-height:16px;max-height:16px;padding:0 var(--spacing-2)}.badge--round{border-radius:var(--radius-full)}.badge--primary{background-color:var(--color-primary);color:var(--color-secondary-color, #ffffff)}.badge--default{background-color:var(--color-light-bg-2);color:var(--color-secondary)}.badge--warning{background-color:var( --color-warning-subtle);color:var(--color-warning-emphasis)}.badge--success{background-color:var(--color-success-subtle);color:var(--color-success-emphasis)}.badge--danger{background-color:var(--color-danger-subtle);color:var(--color-danger)}.badge--info{background-color:var(--color-info-subtle);color:var(--color-info-emphasis)}.badge--purple{background-color:var(--color-commercial-subtle);color:var(--color-commercial-emphasis)}.badge__close{display:inline-flex;align-items:center;justify-content:center;margin-left:var(--spacing-1);padding:0;background:none;border:none;cursor:pointer;color:inherit;opacity:.75;transition:opacity var(--transition-speed-fast) var(--transition-timing);line-height:1}.badge__close:hover{opacity:1}.badge__close:focus{outline:none;opacity:1}";
|
|
5
5
|
var m = Object.defineProperty, v = Object.getOwnPropertyDescriptor, r = (s, t, n, i) => {
|
|
6
6
|
for (var o = i > 1 ? void 0 : i ? v(t, n) : t, l = s.length - 1, c; l >= 0; l--)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const e=require("lit"),a=require("lit/decorators.js");require("./ui-icon-
|
|
1
|
+
"use strict";const e=require("lit"),a=require("lit/decorators.js");require("./ui-icon-DIucAQC_.cjs");const g=".badge{display:inline-flex;align-items:center;gap:var(--spacing-1);font-family:var(--font-family-base);font-size:11px;font-weight:var(--font-weight-medium);line-height:1rem;letter-spacing:-.11px;border-radius:var(--radius-base);white-space:nowrap;-webkit-user-select:none;user-select:none}.badge--default-size{min-height:24px;max-height:24px;padding:var(--spacing-0) var(--spacing-2)}.badge--small{min-height:16px;max-height:16px;padding:0 var(--spacing-2)}.badge--round{border-radius:var(--radius-full)}.badge--primary{background-color:var(--color-primary);color:var(--color-secondary-color, #ffffff)}.badge--default{background-color:var(--color-light-bg-2);color:var(--color-secondary)}.badge--warning{background-color:var( --color-warning-subtle);color:var(--color-warning-emphasis)}.badge--success{background-color:var(--color-success-subtle);color:var(--color-success-emphasis)}.badge--danger{background-color:var(--color-danger-subtle);color:var(--color-danger)}.badge--info{background-color:var(--color-info-subtle);color:var(--color-info-emphasis)}.badge--purple{background-color:var(--color-commercial-subtle);color:var(--color-commercial-emphasis)}.badge__close{display:inline-flex;align-items:center;justify-content:center;margin-left:var(--spacing-1);padding:0;background:none;border:none;cursor:pointer;color:inherit;opacity:.75;transition:opacity var(--transition-speed-fast) var(--transition-timing);line-height:1}.badge__close:hover{opacity:1}.badge__close:focus{outline:none;opacity:1}";var p=Object.defineProperty,d=Object.getOwnPropertyDescriptor,s=(i,o,n,t)=>{for(var r=t>1?void 0:t?d(o,n):o,l=i.length-1,c;l>=0;l--)(c=i[l])&&(r=(t?c(o,n,r):c(r))||r);return t&&r&&p(o,n,r),r};exports.LogosphereBadge=class extends e.LitElement{constructor(){super(...arguments),this.variant="default",this.size="default",this.text="",this.closeable=!1,this.isRound=!1}handleClose(){this.onClose&&this.onClose(),this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0}))}getBadgeClasses(){const o=["badge",`badge--${this.variant}`,this.size==="small"?"badge--small":"badge--default-size"];return this.isRound&&o.push("badge--round"),o.join(" ")}render(){return e.html`
|
|
2
2
|
<div class="${this.getBadgeClasses()}">
|
|
3
3
|
<slot></slot>
|
|
4
4
|
${this.text?e.html`<span>${this.text}</span>`:e.nothing}
|
package/dist/badge.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./badge-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./badge-DvaKpUHe.cjs");Object.defineProperty(exports,"LogosphereBadge",{enumerable:!0,get:()=>e.LogosphereBadge});
|
package/dist/badge.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const Y=require("lit"),y=require("lit/decorators.js");require("./ui-icon-jKyMV1zp.cjs");const m=require("dayjs"),we=':host{display:block;font-family:var(--font-family-base)}.dp__calendar{display:block}.dp__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-3)}.dp__nav-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-2);border:none;background:none;border-radius:var(--radius-base);cursor:pointer;color:var(--color-body-text);transition:background-color var(--transition-speed-fast) var(--transition-timing)}.dp__nav-btn:hover{background-color:var(--color-light)}.dp__header-label{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:-.025em;-webkit-user-select:none;user-select:none;cursor:pointer;color:var(--color-body-text);transition:color var(--transition-speed-fast) var(--transition-timing)}.dp__header-label:hover{color:var(--color-primary)}.dp__weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:var(--font-size-sm);color:var(--color-tertiary);margin-bottom:var(--spacing-1);-webkit-user-select:none;user-select:none}.dp__weekday{padding:var(--spacing-1) 0}.dp__grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px;outline:none}.dp__day{position:relative;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;padding:0;min-width:0;border-radius:0;color:var(--color-body-text);font-family:var(--font-family-base)}.dp__day-num{position:relative;z-index:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-size:var(--font-size-sm);flex-shrink:0;transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__day--range-start:before,.dp__day--range-end:before,.dp__day--range-between:before{content:"";position:absolute;top:2px;bottom:2px;background-color:color-mix(in srgb,var(--color-primary) 15%,transparent);z-index:0;pointer-events:none}.dp__day--range-start:before{left:50%;right:0}.dp__day--range-end:before{left:0;right:50%}.dp__day--range-between:before{left:0;right:0}.dp__day--out-of-month{opacity:.4}.dp__day--focused .dp__day-num{background-color:var(--color-light)}.dp__day--disabled{cursor:not-allowed;pointer-events:none}.dp__day--disabled .dp__day-num{color:var(--color-gray-300);background-color:var(--color-gray-50)}.dp__day--disabled-weekday{cursor:not-allowed;pointer-events:none}.dp__day--disabled-weekday .dp__day-num{color:var(--color-gray-300)}.dp__day--today .dp__day-num{background-color:var(--color-gray-200);color:var(--color-gray-800)}.dp__day--selected .dp__day-num{background-color:var(--color-primary);color:#fff}.dp__day--default:hover .dp__day-num{background-color:var(--color-light)}.dp__day--range-pending .dp__day-num,.dp__day--range-start .dp__day-num,.dp__day--range-end .dp__day-num{background-color:var(--color-primary);color:#fff}.dp__day--range-between .dp__day-num{color:var(--color-primary);background:transparent}.dp__month-grid,.dp__year-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);gap:10px;margin-top:var(--spacing-3)}.dp__month-btn,.dp__year-btn{height:48px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);cursor:pointer;background:none;color:var(--color-body-text);transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__month-btn:hover:not(.dp__month-btn--selected),.dp__year-btn:hover:not(.dp__year-btn--selected){background-color:var(--color-light)}.dp__month-btn--selected,.dp__year-btn--selected{background-color:var(--color-primary);color:#fff}.dp__month-btn--current:not(.dp__month-btn--selected),.dp__year-btn--current:not(.dp__year-btn--selected){background-color:var(--color-gray-200);color:var(--color-gray-800)}.dp__footer{display:flex;align-items:center;justify-content:space-evenly;margin-top:var(--spacing-4);padding-bottom:var(--spacing-3)}.dp__footer-btn{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-tertiary);border:none;border-radius:var(--radius-sm);background:none;cursor:pointer;font-family:var(--font-family-base);transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__footer-btn:hover{background-color:var(--color-light);color:var(--color-body-text)}';function q(p){return p&&p.__esModule&&Object.prototype.hasOwnProperty.call(p,"default")?p.default:p}var N={exports:{}},Ye=N.exports,le;function ke(){return le||(le=1,(function(p,e){(function(r,t){p.exports=t()})(Ye,(function(){var r={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(t,n,f){var o=n.prototype,l=o.format;f.en.formats=r,o.format=function(d){d===void 0&&(d="YYYY-MM-DDTHH:mm:ssZ");var v=this.$locale().formats,u=(function(s,i){return s.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(S,j,x){var a=x&&x.toUpperCase();return j||i[x]||r[x]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(c,_,h){return _||h.slice(1)}))}))})(d,v===void 0?{}:v);return l.call(this,u)}}}))})(N)),N.exports}var De=ke();const Se=q(De);var W={exports:{}},xe=W.exports,ce;function Le(){return ce||(ce=1,(function(p,e){(function(r,t){p.exports=t()})(xe,(function(){var r={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d/,f=/\d\d/,o=/\d\d?/,l=/\d*[^-_:/,()\s\d]+/,d={},v=function(a){return(a=+a)+(a>68?1900:2e3)},u=function(a){return function(c){this[a]=+c}},s=[/[+-]\d\d:?(\d\d)?|Z/,function(a){(this.zone||(this.zone={})).offset=(function(c){if(!c||c==="Z")return 0;var _=c.match(/([+-]|\d\d)/g),h=60*_[1]+(+_[2]||0);return h===0?0:_[0]==="+"?-h:h})(a)}],i=function(a){var c=d[a];return c&&(c.indexOf?c:c.s.concat(c.f))},S=function(a,c){var _,h=d.meridiem;if(h){for(var k=1;k<=24;k+=1)if(a.indexOf(h(k,0,c))>-1){_=k>12;break}}else _=a===(c?"pm":"PM");return _},j={A:[l,function(a){this.afternoon=S(a,!1)}],a:[l,function(a){this.afternoon=S(a,!0)}],Q:[n,function(a){this.month=3*(a-1)+1}],S:[n,function(a){this.milliseconds=100*+a}],SS:[f,function(a){this.milliseconds=10*+a}],SSS:[/\d{3}/,function(a){this.milliseconds=+a}],s:[o,u("seconds")],ss:[o,u("seconds")],m:[o,u("minutes")],mm:[o,u("minutes")],H:[o,u("hours")],h:[o,u("hours")],HH:[o,u("hours")],hh:[o,u("hours")],D:[o,u("day")],DD:[f,u("day")],Do:[l,function(a){var c=d.ordinal,_=a.match(/\d+/);if(this.day=_[0],c)for(var h=1;h<=31;h+=1)c(h).replace(/\[|\]/g,"")===a&&(this.day=h)}],w:[o,u("week")],ww:[f,u("week")],M:[o,u("month")],MM:[f,u("month")],MMM:[l,function(a){var c=i("months"),_=(i("monthsShort")||c.map((function(h){return h.slice(0,3)}))).indexOf(a)+1;if(_<1)throw new Error;this.month=_%12||_}],MMMM:[l,function(a){var c=i("months").indexOf(a)+1;if(c<1)throw new Error;this.month=c%12||c}],Y:[/[+-]?\d+/,u("year")],YY:[f,function(a){this.year=v(a)}],YYYY:[/\d{4}/,u("year")],Z:s,ZZ:s};function x(a){var c,_;c=a,_=d&&d.formats;for(var h=(a=c.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(B,E,L){var D=L&&L.toUpperCase();return E||_[L]||r[L]||_[D].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(A,z,H){return z||H.slice(1)}))}))).match(t),k=h.length,M=0;M<k;M+=1){var O=h[M],P=j[O],$=P&&P[0],C=P&&P[1];h[M]=C?{regex:$,parser:C}:O.replace(/^\[|\]$/g,"")}return function(B){for(var E={},L=0,D=0;L<k;L+=1){var A=h[L];if(typeof A=="string")D+=A.length;else{var z=A.regex,H=A.parser,R=B.slice(D),F=z.exec(R)[0];H.call(E,F),B=B.replace(F,"")}}return(function(T){var G=T.afternoon;if(G!==void 0){var w=T.hours;G?w<12&&(T.hours+=12):w===12&&(T.hours=0),delete T.afternoon}})(E),E}}return function(a,c,_){_.p.customParseFormat=!0,a&&a.parseTwoDigitYear&&(v=a.parseTwoDigitYear);var h=c.prototype,k=h.parse;h.parse=function(M){var O=M.date,P=M.utc,$=M.args;this.$u=P;var C=$[1];if(typeof C=="string"){var B=$[2]===!0,E=$[3]===!0,L=B||E,D=$[2];E&&(D=$[2]),d=this.$locale(),!B&&D&&(d=_.Ls[D]),this.$d=(function(R,F,T,G){try{if(["x","X"].indexOf(F)>-1)return new Date((F==="X"?1e3:1)*R);var w=x(F)(R),J=w.year,U=w.month,ye=w.day,ge=w.hours,ve=w.minutes,be=w.seconds,Me=w.milliseconds,ie=w.zone,de=w.week,ee=new Date,re=ye||(J||U?1:ee.getDate()),te=J||ee.getFullYear(),Z=0;J&&!U||(Z=U>0?U-1:ee.getMonth());var K,ae=ge||0,ne=ve||0,oe=be||0,se=Me||0;return ie?new Date(Date.UTC(te,Z,re,ae,ne,oe,se+60*ie.offset*1e3)):T?new Date(Date.UTC(te,Z,re,ae,ne,oe,se)):(K=new Date(te,Z,re,ae,ne,oe,se),de&&(K=G(K).week(de).toDate()),K)}catch{return new Date("")}})(O,C,P,_),this.init(),D&&D!==!0&&(this.$L=this.locale(D).$L),L&&O!=this.format(C)&&(this.$d=new Date("")),d={}}else if(C instanceof Array)for(var A=C.length,z=1;z<=A;z+=1){$[1]=C[z-1];var H=_.apply(this,$);if(H.isValid()){this.$d=H.$d,this.$L=H.$L,this.init();break}z===A&&(this.$d=new Date(""))}else k.call(this,M)}}}))})(W)),W.exports}var $e=Le();const Ce=q($e);var I={exports:{}},Ee=I.exports,ue;function Ae(){return ue||(ue=1,(function(p,e){(function(r,t){p.exports=t()})(Ee,(function(){return function(r,t,n){t.prototype.isBetween=function(f,o,l,d){var v=n(f),u=n(o),s=(d=d||"()")[0]==="(",i=d[1]===")";return(s?this.isAfter(v,l):!this.isBefore(v,l))&&(i?this.isBefore(u,l):!this.isAfter(u,l))||(s?this.isBefore(v,l):!this.isAfter(v,l))&&(i?this.isAfter(u,l):!this.isBefore(u,l))}}}))})(I)),I.exports}var ze=Ae();const Oe=q(ze);var V={exports:{}},Pe=V.exports,he;function Be(){return he||(he=1,(function(p,e){(function(r,t){p.exports=t()})(Pe,(function(){var r="week",t="year";return function(n,f,o){var l=f.prototype;l.week=function(d){if(d===void 0&&(d=null),d!==null)return this.add(7*(d-this.week()),"day");var v=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var u=o(this).startOf(t).add(1,t).date(v),s=o(this).endOf(r);if(u.isBefore(s))return 1}var i=o(this).startOf(t).date(v).startOf(r).subtract(1,"millisecond"),S=this.diff(i,r,!0);return S<0?o(this).startOf("week").week():Math.ceil(S)},l.weeks=function(d){return d===void 0&&(d=null),this.week(d)}}}))})(V)),V.exports}var He=Be();const Te=q(He);var Q={exports:{}},je=Q.exports,_e;function Fe(){return _e||(_e=1,(function(p,e){(function(r,t){p.exports=t()})(je,(function(){return function(r,t,n){var f=t.prototype,o=function(s){return s&&(s.indexOf?s:s.s)},l=function(s,i,S,j,x){var a=s.name?s:s.$locale(),c=o(a[i]),_=o(a[S]),h=c||_.map((function(M){return M.slice(0,j)}));if(!x)return h;var k=a.weekStart;return h.map((function(M,O){return h[(O+(k||0))%7]}))},d=function(){return n.Ls[n.locale()]},v=function(s,i){return s.formats[i]||(function(S){return S.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(j,x,a){return x||a.slice(1)}))})(s.formats[i.toUpperCase()])},u=function(){var s=this;return{months:function(i){return i?i.format("MMMM"):l(s,"months")},monthsShort:function(i){return i?i.format("MMM"):l(s,"monthsShort","months",3)},firstDayOfWeek:function(){return s.$locale().weekStart||0},weekdays:function(i){return i?i.format("dddd"):l(s,"weekdays")},weekdaysMin:function(i){return i?i.format("dd"):l(s,"weekdaysMin","weekdays",2)},weekdaysShort:function(i){return i?i.format("ddd"):l(s,"weekdaysShort","weekdays",3)},longDateFormat:function(i){return v(s.$locale(),i)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};f.localeData=function(){return u.bind(this)()},n.localeData=function(){var s=d();return{firstDayOfWeek:function(){return s.weekStart||0},weekdays:function(){return n.weekdays()},weekdaysShort:function(){return n.weekdaysShort()},weekdaysMin:function(){return n.weekdaysMin()},months:function(){return n.months()},monthsShort:function(){return n.monthsShort()},longDateFormat:function(i){return v(s,i)},meridiem:s.meridiem,ordinal:s.ordinal}},n.months=function(){return l(d(),"months")},n.monthsShort=function(){return l(d(),"monthsShort","months",3)},n.weekdays=function(s){return l(d(),"weekdays",null,null,s)},n.weekdaysShort=function(s){return l(d(),"weekdaysShort","weekdays",3,s)},n.weekdaysMin=function(s){return l(d(),"weekdaysMin","weekdays",2,s)}}}))})(Q)),Q.exports}var qe=Fe();const Re=q(qe);var X={exports:{}},Ge=X.exports,pe;function Ue(){return pe||(pe=1,(function(p,e){(function(r,t){p.exports=t(m)})(Ge,(function(r){function t(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var n=t(r),f={name:"tr",weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekStart:1,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(o){return o+"."}};return n.default.locale(f,null,!0),f}))})(X)),X.exports}Ue();m.extend(Se);m.extend(Ce);m.extend(Oe);m.extend(Te);m.extend(Re);m.locale("tr");const me=["DD/MM/YYYY","DD.MM.YYYY","DD MM YYYY","DD-MM-YYYY","DD/MM/YY","DD.MM.YY","DD MM YY","DD-MM-YY","YYYY-MM-DD","YYYY/MM/DD","YYYY.MM.DD","YYYY MM DD"],fe=m.weekdaysShort(),Ze=m.months(),Ke=[...fe.slice(1),fe[0]];function b(p){if(!p)return null;for(const r of me){const t=m(p,r,!0);if(t.isValid())return t}const e=m(p);return e.isValid()?e:null}var Ne=Object.defineProperty,We=Object.getOwnPropertyDescriptor,g=(p,e,r,t)=>{for(var n=t>1?void 0:t?We(e,r):e,f=p.length-1,o;f>=0;f--)(o=p[f])&&(n=(t?o(e,r,n):o(n))||n);return t&&n&&Ne(e,r,n),n};exports.LogosphereCalendar=class extends Y.LitElement{constructor(){super(...arguments),this.value=null,this.min=null,this.max=null,this.disabled=!1,this.rangeMode=!1,this.disabledDays=[],this.rangeStart=null,this.rangeEnd=null,this.closable=!1,this._cursor=m(),this._rangeStart=null,this._rangeEnd=null,this._hoverDate=null,this._viewMode="calendar",this._clear=()=>{this._emitChange(null),this.rangeMode&&(this._rangeStart=null,this._rangeEnd=null,this._emitStateChange())},this._today=()=>{const e=m();this._withinBounds(e)&&this._select(e)},this._navigatePrevious=()=>{switch(this._viewMode){case"calendar":this._cursor=this._cursor.subtract(1,"month");break;case"month":this._cursor=this._cursor.subtract(1,"year");break;case"year":this._cursor=this._cursor.subtract(12,"year");break}},this._navigateNext=()=>{switch(this._viewMode){case"calendar":this._cursor=this._cursor.add(1,"month");break;case"month":this._cursor=this._cursor.add(1,"year");break;case"year":this._cursor=this._cursor.add(12,"year");break}},this._handleHeaderClick=()=>{this._viewMode==="calendar"?this._viewMode="month":this._viewMode==="month"&&(this._viewMode="year")}}willUpdate(e){if(e.has("value")&&!this.rangeMode){const r=b(this.value);r&&(this._cursor=r)}e.has("rangeStart")&&(this._rangeStart=this.rangeStart),e.has("rangeEnd")&&(this._rangeEnd=this.rangeEnd),(e.has("rangeStart")||e.has("rangeEnd"))&&this.rangeMode&&(this._cursor=b(this.rangeEnd)?.clone()??b(this.rangeStart)?.clone()??this._cursor)}focusGrid(){this.renderRoot.querySelector("#grid")?.focus()}_emitStateChange(){this.dispatchEvent(new CustomEvent("calendar-state-change",{detail:{rangeStart:this._rangeStart,rangeEnd:this._rangeEnd}}))}_emitChange(e){this.value=e,this.dispatchEvent(new CustomEvent("change",{detail:{value:e}})),this.onChange?.(e)}_emitRangeChange(){if(!this._rangeStart||!this._rangeEnd)return;const e={start:this._rangeStart,end:this._rangeEnd};this.dispatchEvent(new CustomEvent("rangeChange",{detail:e})),this.onRangeChange?.(e)}_withinBounds(e){const r=b(this.min),t=b(this.max);return!(r&&e.isBefore(r,"day")||t&&e.isAfter(t,"day")||this.disabledDays.includes(e.day()))}_getYears(){const e=this._cursor.year()-6;return Array.from({length:12},(r,t)=>e+t)}_getHeaderLabel(){switch(this._viewMode){case"calendar":return this._cursor.format("MMMM YYYY");case"month":return this._cursor.format("YYYY");case"year":{const e=this._getYears();return`${e[0]}-${e[e.length-1]}`}}}_daysInGrid(){const e=this._cursor.startOf("month"),r=e.subtract((e.day()+6)%7,"day");return Array.from({length:42},(t,n)=>r.add(n,"day"))}_isInRange(e){if(!this.rangeMode||!this._rangeStart||!this._rangeEnd)return null;const r=b(this._rangeStart),t=b(this._rangeEnd);return!r||!t?null:e.isSame(r,"day")?"start":e.isSame(t,"day")?"end":e.isBetween(r,t,"day","[]")?"between":null}_getHoverPreview(e){if(!this.rangeMode||!this._rangeStart||this._rangeEnd||!this._hoverDate)return null;const r=b(this._rangeStart);if(!r)return null;const t=this._hoverDate,n=t.isAfter(r,"day"),f=n?r:t,o=n?t:r;return e.isSame(r,"day")?"preview-start":e.isSame(t,"day")?"preview-end":e.isAfter(f,"day")&&e.isBefore(o,"day")?"preview-between":null}_getDayClasses(e){const r=["dp__day"];if(!this._withinBounds(e))return r.push(this.disabledDays.includes(e.day())?"dp__day--disabled-weekday":"dp__day--disabled"),r.join(" ");const t=this._isInRange(e);if(t==="start")return r.push("dp__day--range-start"),r.join(" ");if(t==="end")return r.push("dp__day--range-end"),r.join(" ");if(t==="between")return r.push("dp__day--range-between"),r.join(" ");const n=this._getHoverPreview(e);return n==="preview-start"?(r.push("dp__day--range-start"),r.join(" ")):n==="preview-end"?(r.push("dp__day--range-end"),r.join(" ")):n==="preview-between"?(r.push("dp__day--range-between"),r.join(" ")):this.rangeMode&&this._rangeStart&&!this._rangeEnd&&e.isSame(b(this._rangeStart),"day")?(r.push("dp__day--range-pending"),r.join(" ")):(e.isSame(b(this.value),"day")?r.push("dp__day--selected"):e.isSame(m(),"day")?r.push("dp__day--today"):r.push("dp__day--default"),r.join(" "))}_select(e){if(!(this.disabled||!this._withinBounds(e))){if(this.rangeMode){if(!this._rangeStart){this._rangeStart=e.format("YYYY-MM-DD"),this._cursor=e,this._emitStateChange();return}if(!this._rangeEnd){const r=b(this._rangeStart);r&&e.isBefore(r,"day")?(this._rangeEnd=this._rangeStart,this._rangeStart=e.format("YYYY-MM-DD")):this._rangeEnd=e.format("YYYY-MM-DD"),this._cursor=e,this._viewMode="calendar",this._emitStateChange(),this._emitRangeChange();return}this._rangeStart=e.format("YYYY-MM-DD"),this._rangeEnd=null,this._cursor=e,this._emitStateChange();return}this._emitChange(e.format("YYYY-MM-DD")),this._cursor=e,this._viewMode="calendar"}}_selectMonth(e){this._cursor=this._cursor.month(e),this._viewMode="calendar"}_selectYear(e){this._cursor=this._cursor.year(e),this._viewMode="month"}_keydownGrid(e){const r={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7};e.key in r?(e.preventDefault(),this._cursor=this._cursor.add(r[e.key],"day")):e.key==="Enter"||e.key===" "?(e.preventDefault(),this._select(this._cursor)):e.key==="Escape"&&this.closable?(e.preventDefault(),this.dispatchEvent(new CustomEvent("close-request"))):e.key==="PageUp"?(e.preventDefault(),this._cursor=e.shiftKey?this._cursor.subtract(1,"year"):this._cursor.subtract(1,"month")):e.key==="PageDown"?(e.preventDefault(),this._cursor=e.shiftKey?this._cursor.add(1,"year"):this._cursor.add(1,"month")):e.key==="Home"?(e.preventDefault(),this._cursor=this._cursor.startOf("month")):e.key==="End"&&(e.preventDefault(),this._cursor=this._cursor.endOf("month"))}_renderCalendar(e){const r=this._daysInGrid();return Y.html`
|
|
1
|
+
"use strict";const Y=require("lit"),y=require("lit/decorators.js");require("./ui-icon-DIucAQC_.cjs");const m=require("dayjs"),we=':host{display:block;font-family:var(--font-family-base)}.dp__calendar{display:block}.dp__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-3)}.dp__nav-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-2);border:none;background:none;border-radius:var(--radius-base);cursor:pointer;color:var(--color-body-text);transition:background-color var(--transition-speed-fast) var(--transition-timing)}.dp__nav-btn:hover{background-color:var(--color-light)}.dp__header-label{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:-.025em;-webkit-user-select:none;user-select:none;cursor:pointer;color:var(--color-body-text);transition:color var(--transition-speed-fast) var(--transition-timing)}.dp__header-label:hover{color:var(--color-primary)}.dp__weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:var(--font-size-sm);color:var(--color-tertiary);margin-bottom:var(--spacing-1);-webkit-user-select:none;user-select:none}.dp__weekday{padding:var(--spacing-1) 0}.dp__grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px;outline:none}.dp__day{position:relative;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;padding:0;min-width:0;border-radius:0;color:var(--color-body-text);font-family:var(--font-family-base)}.dp__day-num{position:relative;z-index:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-size:var(--font-size-sm);flex-shrink:0;transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__day--range-start:before,.dp__day--range-end:before,.dp__day--range-between:before{content:"";position:absolute;top:2px;bottom:2px;background-color:color-mix(in srgb,var(--color-primary) 15%,transparent);z-index:0;pointer-events:none}.dp__day--range-start:before{left:50%;right:0}.dp__day--range-end:before{left:0;right:50%}.dp__day--range-between:before{left:0;right:0}.dp__day--out-of-month{opacity:.4}.dp__day--focused .dp__day-num{background-color:var(--color-light)}.dp__day--disabled{cursor:not-allowed;pointer-events:none}.dp__day--disabled .dp__day-num{color:var(--color-gray-300);background-color:var(--color-gray-50)}.dp__day--disabled-weekday{cursor:not-allowed;pointer-events:none}.dp__day--disabled-weekday .dp__day-num{color:var(--color-gray-300)}.dp__day--today .dp__day-num{background-color:var(--color-gray-200);color:var(--color-gray-800)}.dp__day--selected .dp__day-num{background-color:var(--color-primary);color:#fff}.dp__day--default:hover .dp__day-num{background-color:var(--color-light)}.dp__day--range-pending .dp__day-num,.dp__day--range-start .dp__day-num,.dp__day--range-end .dp__day-num{background-color:var(--color-primary);color:#fff}.dp__day--range-between .dp__day-num{color:var(--color-primary);background:transparent}.dp__month-grid,.dp__year-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);gap:10px;margin-top:var(--spacing-3)}.dp__month-btn,.dp__year-btn{height:48px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);cursor:pointer;background:none;color:var(--color-body-text);transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__month-btn:hover:not(.dp__month-btn--selected),.dp__year-btn:hover:not(.dp__year-btn--selected){background-color:var(--color-light)}.dp__month-btn--selected,.dp__year-btn--selected{background-color:var(--color-primary);color:#fff}.dp__month-btn--current:not(.dp__month-btn--selected),.dp__year-btn--current:not(.dp__year-btn--selected){background-color:var(--color-gray-200);color:var(--color-gray-800)}.dp__footer{display:flex;align-items:center;justify-content:space-evenly;margin-top:var(--spacing-4);padding-bottom:var(--spacing-3)}.dp__footer-btn{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-tertiary);border:none;border-radius:var(--radius-sm);background:none;cursor:pointer;font-family:var(--font-family-base);transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__footer-btn:hover{background-color:var(--color-light);color:var(--color-body-text)}';function q(p){return p&&p.__esModule&&Object.prototype.hasOwnProperty.call(p,"default")?p.default:p}var N={exports:{}},Ye=N.exports,le;function ke(){return le||(le=1,(function(p,e){(function(r,t){p.exports=t()})(Ye,(function(){var r={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(t,n,f){var o=n.prototype,l=o.format;f.en.formats=r,o.format=function(d){d===void 0&&(d="YYYY-MM-DDTHH:mm:ssZ");var v=this.$locale().formats,u=(function(s,i){return s.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(S,j,x){var a=x&&x.toUpperCase();return j||i[x]||r[x]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(c,_,h){return _||h.slice(1)}))}))})(d,v===void 0?{}:v);return l.call(this,u)}}}))})(N)),N.exports}var De=ke();const Se=q(De);var W={exports:{}},xe=W.exports,ce;function Le(){return ce||(ce=1,(function(p,e){(function(r,t){p.exports=t()})(xe,(function(){var r={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d/,f=/\d\d/,o=/\d\d?/,l=/\d*[^-_:/,()\s\d]+/,d={},v=function(a){return(a=+a)+(a>68?1900:2e3)},u=function(a){return function(c){this[a]=+c}},s=[/[+-]\d\d:?(\d\d)?|Z/,function(a){(this.zone||(this.zone={})).offset=(function(c){if(!c||c==="Z")return 0;var _=c.match(/([+-]|\d\d)/g),h=60*_[1]+(+_[2]||0);return h===0?0:_[0]==="+"?-h:h})(a)}],i=function(a){var c=d[a];return c&&(c.indexOf?c:c.s.concat(c.f))},S=function(a,c){var _,h=d.meridiem;if(h){for(var k=1;k<=24;k+=1)if(a.indexOf(h(k,0,c))>-1){_=k>12;break}}else _=a===(c?"pm":"PM");return _},j={A:[l,function(a){this.afternoon=S(a,!1)}],a:[l,function(a){this.afternoon=S(a,!0)}],Q:[n,function(a){this.month=3*(a-1)+1}],S:[n,function(a){this.milliseconds=100*+a}],SS:[f,function(a){this.milliseconds=10*+a}],SSS:[/\d{3}/,function(a){this.milliseconds=+a}],s:[o,u("seconds")],ss:[o,u("seconds")],m:[o,u("minutes")],mm:[o,u("minutes")],H:[o,u("hours")],h:[o,u("hours")],HH:[o,u("hours")],hh:[o,u("hours")],D:[o,u("day")],DD:[f,u("day")],Do:[l,function(a){var c=d.ordinal,_=a.match(/\d+/);if(this.day=_[0],c)for(var h=1;h<=31;h+=1)c(h).replace(/\[|\]/g,"")===a&&(this.day=h)}],w:[o,u("week")],ww:[f,u("week")],M:[o,u("month")],MM:[f,u("month")],MMM:[l,function(a){var c=i("months"),_=(i("monthsShort")||c.map((function(h){return h.slice(0,3)}))).indexOf(a)+1;if(_<1)throw new Error;this.month=_%12||_}],MMMM:[l,function(a){var c=i("months").indexOf(a)+1;if(c<1)throw new Error;this.month=c%12||c}],Y:[/[+-]?\d+/,u("year")],YY:[f,function(a){this.year=v(a)}],YYYY:[/\d{4}/,u("year")],Z:s,ZZ:s};function x(a){var c,_;c=a,_=d&&d.formats;for(var h=(a=c.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(B,E,L){var D=L&&L.toUpperCase();return E||_[L]||r[L]||_[D].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(A,z,H){return z||H.slice(1)}))}))).match(t),k=h.length,M=0;M<k;M+=1){var O=h[M],P=j[O],$=P&&P[0],C=P&&P[1];h[M]=C?{regex:$,parser:C}:O.replace(/^\[|\]$/g,"")}return function(B){for(var E={},L=0,D=0;L<k;L+=1){var A=h[L];if(typeof A=="string")D+=A.length;else{var z=A.regex,H=A.parser,R=B.slice(D),F=z.exec(R)[0];H.call(E,F),B=B.replace(F,"")}}return(function(T){var G=T.afternoon;if(G!==void 0){var w=T.hours;G?w<12&&(T.hours+=12):w===12&&(T.hours=0),delete T.afternoon}})(E),E}}return function(a,c,_){_.p.customParseFormat=!0,a&&a.parseTwoDigitYear&&(v=a.parseTwoDigitYear);var h=c.prototype,k=h.parse;h.parse=function(M){var O=M.date,P=M.utc,$=M.args;this.$u=P;var C=$[1];if(typeof C=="string"){var B=$[2]===!0,E=$[3]===!0,L=B||E,D=$[2];E&&(D=$[2]),d=this.$locale(),!B&&D&&(d=_.Ls[D]),this.$d=(function(R,F,T,G){try{if(["x","X"].indexOf(F)>-1)return new Date((F==="X"?1e3:1)*R);var w=x(F)(R),J=w.year,U=w.month,ye=w.day,ge=w.hours,ve=w.minutes,be=w.seconds,Me=w.milliseconds,ie=w.zone,de=w.week,ee=new Date,re=ye||(J||U?1:ee.getDate()),te=J||ee.getFullYear(),Z=0;J&&!U||(Z=U>0?U-1:ee.getMonth());var K,ae=ge||0,ne=ve||0,oe=be||0,se=Me||0;return ie?new Date(Date.UTC(te,Z,re,ae,ne,oe,se+60*ie.offset*1e3)):T?new Date(Date.UTC(te,Z,re,ae,ne,oe,se)):(K=new Date(te,Z,re,ae,ne,oe,se),de&&(K=G(K).week(de).toDate()),K)}catch{return new Date("")}})(O,C,P,_),this.init(),D&&D!==!0&&(this.$L=this.locale(D).$L),L&&O!=this.format(C)&&(this.$d=new Date("")),d={}}else if(C instanceof Array)for(var A=C.length,z=1;z<=A;z+=1){$[1]=C[z-1];var H=_.apply(this,$);if(H.isValid()){this.$d=H.$d,this.$L=H.$L,this.init();break}z===A&&(this.$d=new Date(""))}else k.call(this,M)}}}))})(W)),W.exports}var $e=Le();const Ce=q($e);var I={exports:{}},Ee=I.exports,ue;function Ae(){return ue||(ue=1,(function(p,e){(function(r,t){p.exports=t()})(Ee,(function(){return function(r,t,n){t.prototype.isBetween=function(f,o,l,d){var v=n(f),u=n(o),s=(d=d||"()")[0]==="(",i=d[1]===")";return(s?this.isAfter(v,l):!this.isBefore(v,l))&&(i?this.isBefore(u,l):!this.isAfter(u,l))||(s?this.isBefore(v,l):!this.isAfter(v,l))&&(i?this.isAfter(u,l):!this.isBefore(u,l))}}}))})(I)),I.exports}var ze=Ae();const Oe=q(ze);var V={exports:{}},Pe=V.exports,he;function Be(){return he||(he=1,(function(p,e){(function(r,t){p.exports=t()})(Pe,(function(){var r="week",t="year";return function(n,f,o){var l=f.prototype;l.week=function(d){if(d===void 0&&(d=null),d!==null)return this.add(7*(d-this.week()),"day");var v=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var u=o(this).startOf(t).add(1,t).date(v),s=o(this).endOf(r);if(u.isBefore(s))return 1}var i=o(this).startOf(t).date(v).startOf(r).subtract(1,"millisecond"),S=this.diff(i,r,!0);return S<0?o(this).startOf("week").week():Math.ceil(S)},l.weeks=function(d){return d===void 0&&(d=null),this.week(d)}}}))})(V)),V.exports}var He=Be();const Te=q(He);var Q={exports:{}},je=Q.exports,_e;function Fe(){return _e||(_e=1,(function(p,e){(function(r,t){p.exports=t()})(je,(function(){return function(r,t,n){var f=t.prototype,o=function(s){return s&&(s.indexOf?s:s.s)},l=function(s,i,S,j,x){var a=s.name?s:s.$locale(),c=o(a[i]),_=o(a[S]),h=c||_.map((function(M){return M.slice(0,j)}));if(!x)return h;var k=a.weekStart;return h.map((function(M,O){return h[(O+(k||0))%7]}))},d=function(){return n.Ls[n.locale()]},v=function(s,i){return s.formats[i]||(function(S){return S.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(j,x,a){return x||a.slice(1)}))})(s.formats[i.toUpperCase()])},u=function(){var s=this;return{months:function(i){return i?i.format("MMMM"):l(s,"months")},monthsShort:function(i){return i?i.format("MMM"):l(s,"monthsShort","months",3)},firstDayOfWeek:function(){return s.$locale().weekStart||0},weekdays:function(i){return i?i.format("dddd"):l(s,"weekdays")},weekdaysMin:function(i){return i?i.format("dd"):l(s,"weekdaysMin","weekdays",2)},weekdaysShort:function(i){return i?i.format("ddd"):l(s,"weekdaysShort","weekdays",3)},longDateFormat:function(i){return v(s.$locale(),i)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};f.localeData=function(){return u.bind(this)()},n.localeData=function(){var s=d();return{firstDayOfWeek:function(){return s.weekStart||0},weekdays:function(){return n.weekdays()},weekdaysShort:function(){return n.weekdaysShort()},weekdaysMin:function(){return n.weekdaysMin()},months:function(){return n.months()},monthsShort:function(){return n.monthsShort()},longDateFormat:function(i){return v(s,i)},meridiem:s.meridiem,ordinal:s.ordinal}},n.months=function(){return l(d(),"months")},n.monthsShort=function(){return l(d(),"monthsShort","months",3)},n.weekdays=function(s){return l(d(),"weekdays",null,null,s)},n.weekdaysShort=function(s){return l(d(),"weekdaysShort","weekdays",3,s)},n.weekdaysMin=function(s){return l(d(),"weekdaysMin","weekdays",2,s)}}}))})(Q)),Q.exports}var qe=Fe();const Re=q(qe);var X={exports:{}},Ge=X.exports,pe;function Ue(){return pe||(pe=1,(function(p,e){(function(r,t){p.exports=t(m)})(Ge,(function(r){function t(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var n=t(r),f={name:"tr",weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekStart:1,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(o){return o+"."}};return n.default.locale(f,null,!0),f}))})(X)),X.exports}Ue();m.extend(Se);m.extend(Ce);m.extend(Oe);m.extend(Te);m.extend(Re);m.locale("tr");const me=["DD/MM/YYYY","DD.MM.YYYY","DD MM YYYY","DD-MM-YYYY","DD/MM/YY","DD.MM.YY","DD MM YY","DD-MM-YY","YYYY-MM-DD","YYYY/MM/DD","YYYY.MM.DD","YYYY MM DD"],fe=m.weekdaysShort(),Ze=m.months(),Ke=[...fe.slice(1),fe[0]];function b(p){if(!p)return null;for(const r of me){const t=m(p,r,!0);if(t.isValid())return t}const e=m(p);return e.isValid()?e:null}var Ne=Object.defineProperty,We=Object.getOwnPropertyDescriptor,g=(p,e,r,t)=>{for(var n=t>1?void 0:t?We(e,r):e,f=p.length-1,o;f>=0;f--)(o=p[f])&&(n=(t?o(e,r,n):o(n))||n);return t&&n&&Ne(e,r,n),n};exports.LogosphereCalendar=class extends Y.LitElement{constructor(){super(...arguments),this.value=null,this.min=null,this.max=null,this.disabled=!1,this.rangeMode=!1,this.disabledDays=[],this.rangeStart=null,this.rangeEnd=null,this.closable=!1,this._cursor=m(),this._rangeStart=null,this._rangeEnd=null,this._hoverDate=null,this._viewMode="calendar",this._clear=()=>{this._emitChange(null),this.rangeMode&&(this._rangeStart=null,this._rangeEnd=null,this._emitStateChange())},this._today=()=>{const e=m();this._withinBounds(e)&&this._select(e)},this._navigatePrevious=()=>{switch(this._viewMode){case"calendar":this._cursor=this._cursor.subtract(1,"month");break;case"month":this._cursor=this._cursor.subtract(1,"year");break;case"year":this._cursor=this._cursor.subtract(12,"year");break}},this._navigateNext=()=>{switch(this._viewMode){case"calendar":this._cursor=this._cursor.add(1,"month");break;case"month":this._cursor=this._cursor.add(1,"year");break;case"year":this._cursor=this._cursor.add(12,"year");break}},this._handleHeaderClick=()=>{this._viewMode==="calendar"?this._viewMode="month":this._viewMode==="month"&&(this._viewMode="year")}}willUpdate(e){if(e.has("value")&&!this.rangeMode){const r=b(this.value);r&&(this._cursor=r)}e.has("rangeStart")&&(this._rangeStart=this.rangeStart),e.has("rangeEnd")&&(this._rangeEnd=this.rangeEnd),(e.has("rangeStart")||e.has("rangeEnd"))&&this.rangeMode&&(this._cursor=b(this.rangeEnd)?.clone()??b(this.rangeStart)?.clone()??this._cursor)}focusGrid(){this.renderRoot.querySelector("#grid")?.focus()}_emitStateChange(){this.dispatchEvent(new CustomEvent("calendar-state-change",{detail:{rangeStart:this._rangeStart,rangeEnd:this._rangeEnd}}))}_emitChange(e){this.value=e,this.dispatchEvent(new CustomEvent("change",{detail:{value:e}})),this.onChange?.(e)}_emitRangeChange(){if(!this._rangeStart||!this._rangeEnd)return;const e={start:this._rangeStart,end:this._rangeEnd};this.dispatchEvent(new CustomEvent("rangeChange",{detail:e})),this.onRangeChange?.(e)}_withinBounds(e){const r=b(this.min),t=b(this.max);return!(r&&e.isBefore(r,"day")||t&&e.isAfter(t,"day")||this.disabledDays.includes(e.day()))}_getYears(){const e=this._cursor.year()-6;return Array.from({length:12},(r,t)=>e+t)}_getHeaderLabel(){switch(this._viewMode){case"calendar":return this._cursor.format("MMMM YYYY");case"month":return this._cursor.format("YYYY");case"year":{const e=this._getYears();return`${e[0]}-${e[e.length-1]}`}}}_daysInGrid(){const e=this._cursor.startOf("month"),r=e.subtract((e.day()+6)%7,"day");return Array.from({length:42},(t,n)=>r.add(n,"day"))}_isInRange(e){if(!this.rangeMode||!this._rangeStart||!this._rangeEnd)return null;const r=b(this._rangeStart),t=b(this._rangeEnd);return!r||!t?null:e.isSame(r,"day")?"start":e.isSame(t,"day")?"end":e.isBetween(r,t,"day","[]")?"between":null}_getHoverPreview(e){if(!this.rangeMode||!this._rangeStart||this._rangeEnd||!this._hoverDate)return null;const r=b(this._rangeStart);if(!r)return null;const t=this._hoverDate,n=t.isAfter(r,"day"),f=n?r:t,o=n?t:r;return e.isSame(r,"day")?"preview-start":e.isSame(t,"day")?"preview-end":e.isAfter(f,"day")&&e.isBefore(o,"day")?"preview-between":null}_getDayClasses(e){const r=["dp__day"];if(!this._withinBounds(e))return r.push(this.disabledDays.includes(e.day())?"dp__day--disabled-weekday":"dp__day--disabled"),r.join(" ");const t=this._isInRange(e);if(t==="start")return r.push("dp__day--range-start"),r.join(" ");if(t==="end")return r.push("dp__day--range-end"),r.join(" ");if(t==="between")return r.push("dp__day--range-between"),r.join(" ");const n=this._getHoverPreview(e);return n==="preview-start"?(r.push("dp__day--range-start"),r.join(" ")):n==="preview-end"?(r.push("dp__day--range-end"),r.join(" ")):n==="preview-between"?(r.push("dp__day--range-between"),r.join(" ")):this.rangeMode&&this._rangeStart&&!this._rangeEnd&&e.isSame(b(this._rangeStart),"day")?(r.push("dp__day--range-pending"),r.join(" ")):(e.isSame(b(this.value),"day")?r.push("dp__day--selected"):e.isSame(m(),"day")?r.push("dp__day--today"):r.push("dp__day--default"),r.join(" "))}_select(e){if(!(this.disabled||!this._withinBounds(e))){if(this.rangeMode){if(!this._rangeStart){this._rangeStart=e.format("YYYY-MM-DD"),this._cursor=e,this._emitStateChange();return}if(!this._rangeEnd){const r=b(this._rangeStart);r&&e.isBefore(r,"day")?(this._rangeEnd=this._rangeStart,this._rangeStart=e.format("YYYY-MM-DD")):this._rangeEnd=e.format("YYYY-MM-DD"),this._cursor=e,this._viewMode="calendar",this._emitStateChange(),this._emitRangeChange();return}this._rangeStart=e.format("YYYY-MM-DD"),this._rangeEnd=null,this._cursor=e,this._emitStateChange();return}this._emitChange(e.format("YYYY-MM-DD")),this._cursor=e,this._viewMode="calendar"}}_selectMonth(e){this._cursor=this._cursor.month(e),this._viewMode="calendar"}_selectYear(e){this._cursor=this._cursor.year(e),this._viewMode="month"}_keydownGrid(e){const r={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7};e.key in r?(e.preventDefault(),this._cursor=this._cursor.add(r[e.key],"day")):e.key==="Enter"||e.key===" "?(e.preventDefault(),this._select(this._cursor)):e.key==="Escape"&&this.closable?(e.preventDefault(),this.dispatchEvent(new CustomEvent("close-request"))):e.key==="PageUp"?(e.preventDefault(),this._cursor=e.shiftKey?this._cursor.subtract(1,"year"):this._cursor.subtract(1,"month")):e.key==="PageDown"?(e.preventDefault(),this._cursor=e.shiftKey?this._cursor.add(1,"year"):this._cursor.add(1,"month")):e.key==="Home"?(e.preventDefault(),this._cursor=this._cursor.startOf("month")):e.key==="End"&&(e.preventDefault(),this._cursor=this._cursor.endOf("month"))}_renderCalendar(e){const r=this._daysInGrid();return Y.html`
|
|
2
2
|
<div class="dp__weekdays" role="row">
|
|
3
3
|
${Ke.map(t=>Y.html`<div class="dp__weekday" role="columnheader" aria-label=${t}>${t}</div>`)}
|
|
4
4
|
</div>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { unsafeCSS as Ye, css as ke, LitElement as De, html as C } from "lit";
|
|
2
2
|
import { property as D, state as q, customElement as Se } from "lit/decorators.js";
|
|
3
|
-
import "./ui-icon-
|
|
3
|
+
import "./ui-icon-BMJNdIOq.js";
|
|
4
4
|
import y from "dayjs";
|
|
5
5
|
const xe = ':host{display:block;font-family:var(--font-family-base)}.dp__calendar{display:block}.dp__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-3)}.dp__nav-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-2);border:none;background:none;border-radius:var(--radius-base);cursor:pointer;color:var(--color-body-text);transition:background-color var(--transition-speed-fast) var(--transition-timing)}.dp__nav-btn:hover{background-color:var(--color-light)}.dp__header-label{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:-.025em;-webkit-user-select:none;user-select:none;cursor:pointer;color:var(--color-body-text);transition:color var(--transition-speed-fast) var(--transition-timing)}.dp__header-label:hover{color:var(--color-primary)}.dp__weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:var(--font-size-sm);color:var(--color-tertiary);margin-bottom:var(--spacing-1);-webkit-user-select:none;user-select:none}.dp__weekday{padding:var(--spacing-1) 0}.dp__grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px;outline:none}.dp__day{position:relative;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;padding:0;min-width:0;border-radius:0;color:var(--color-body-text);font-family:var(--font-family-base)}.dp__day-num{position:relative;z-index:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-size:var(--font-size-sm);flex-shrink:0;transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__day--range-start:before,.dp__day--range-end:before,.dp__day--range-between:before{content:"";position:absolute;top:2px;bottom:2px;background-color:color-mix(in srgb,var(--color-primary) 15%,transparent);z-index:0;pointer-events:none}.dp__day--range-start:before{left:50%;right:0}.dp__day--range-end:before{left:0;right:50%}.dp__day--range-between:before{left:0;right:0}.dp__day--out-of-month{opacity:.4}.dp__day--focused .dp__day-num{background-color:var(--color-light)}.dp__day--disabled{cursor:not-allowed;pointer-events:none}.dp__day--disabled .dp__day-num{color:var(--color-gray-300);background-color:var(--color-gray-50)}.dp__day--disabled-weekday{cursor:not-allowed;pointer-events:none}.dp__day--disabled-weekday .dp__day-num{color:var(--color-gray-300)}.dp__day--today .dp__day-num{background-color:var(--color-gray-200);color:var(--color-gray-800)}.dp__day--selected .dp__day-num{background-color:var(--color-primary);color:#fff}.dp__day--default:hover .dp__day-num{background-color:var(--color-light)}.dp__day--range-pending .dp__day-num,.dp__day--range-start .dp__day-num,.dp__day--range-end .dp__day-num{background-color:var(--color-primary);color:#fff}.dp__day--range-between .dp__day-num{color:var(--color-primary);background:transparent}.dp__month-grid,.dp__year-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);gap:10px;margin-top:var(--spacing-3)}.dp__month-btn,.dp__year-btn{height:48px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);cursor:pointer;background:none;color:var(--color-body-text);transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__month-btn:hover:not(.dp__month-btn--selected),.dp__year-btn:hover:not(.dp__year-btn--selected){background-color:var(--color-light)}.dp__month-btn--selected,.dp__year-btn--selected{background-color:var(--color-primary);color:#fff}.dp__month-btn--current:not(.dp__month-btn--selected),.dp__year-btn--current:not(.dp__year-btn--selected){background-color:var(--color-gray-200);color:var(--color-gray-800)}.dp__footer{display:flex;align-items:center;justify-content:space-evenly;margin-top:var(--spacing-4);padding-bottom:var(--spacing-3)}.dp__footer-btn{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-tertiary);border:none;border-radius:var(--radius-sm);background:none;cursor:pointer;font-family:var(--font-family-base);transition:background-color var(--transition-speed-fast) var(--transition-timing),color var(--transition-speed-fast) var(--transition-timing)}.dp__footer-btn:hover{background-color:var(--color-light);color:var(--color-body-text)}';
|
|
6
6
|
function G(e) {
|
package/dist/calendar.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./calendar-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./calendar-CIgyrv3U.cjs");Object.defineProperty(exports,"LogosphereCalendar",{enumerable:!0,get:()=>e.LogosphereCalendar});
|
package/dist/calendar.js
CHANGED
|
@@ -40,4 +40,4 @@
|
|
|
40
40
|
</div>
|
|
41
41
|
`}};exports.Card.styles=[t.css`
|
|
42
42
|
${t.unsafeCSS(p)}
|
|
43
|
-
`];r([e.property({type:String})],exports.Card.prototype,"title",2);r([e.property({type:String})],exports.Card.prototype,"description",2);r([e.property({type:Boolean})],exports.Card.prototype,"header",2);r([e.property({type:Boolean})],exports.Card.prototype,"footer",2);r([e.property({attribute:!1})],exports.Card.prototype,"onOk",2);r([e.property({attribute:!1})],exports.Card.prototype,"onCancel",2);r([e.property({type:String})],exports.Card.prototype,"okLabel",2);r([e.property({type:String})],exports.Card.prototype,"cancelLabel",2);exports.Card=r([e.customElement("logosphere-card")],exports.Card);
|
|
43
|
+
`];r([e.property({type:String,attribute:"card-title"})],exports.Card.prototype,"title",2);r([e.property({type:String})],exports.Card.prototype,"description",2);r([e.property({type:Boolean})],exports.Card.prototype,"header",2);r([e.property({type:Boolean})],exports.Card.prototype,"footer",2);r([e.property({attribute:!1})],exports.Card.prototype,"onOk",2);r([e.property({attribute:!1})],exports.Card.prototype,"onCancel",2);r([e.property({type:String})],exports.Card.prototype,"okLabel",2);r([e.property({type:String})],exports.Card.prototype,"cancelLabel",2);exports.Card=r([e.customElement("logosphere-card")],exports.Card);
|
package/dist/card.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./card-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./card-BOCW7gad.cjs");Object.defineProperty(exports,"Card",{enumerable:!0,get:()=>e.Card});
|
package/dist/card.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const n=require("lit"),r=require("lit/decorators.js"),y=require("lit/directives/unsafe-html.js");require("./combobox-BV4AKTqp.cjs");require("./button-DRZ4sG4T.cjs");require("./input-Tkm7VBBl.cjs");require("./ui-icon-jKyMV1zp.cjs");const w=":host{display:block;z-index:9999}.chatbot{font-family:var(--font-family-base)}.chatbot__overlay{position:fixed;inset:0;background-color:#0003;z-index:var(--z-index-modal-backdrop)}.chatbot__launcher{position:fixed;z-index:var(--z-index-modal);display:flex;align-items:center;gap:var(--spacing-4);padding-left:var(--spacing-4);padding-right:var(--spacing-4);height:66px;color:#fff;border-radius:var(--radius-xl);cursor:pointer;box-shadow:var(--shadow-md);background-color:var(--color-body-bg);overflow:hidden;transition:box-shadow var(--transition-speed-fast) var(--transition-timing)}.chatbot__launcher:hover{box-shadow:var(--shadow-md)}.chatbot__launcher--draggable{cursor:move}.chatbot__launcher--hidden{visibility:hidden;width:72px;height:66px;justify-content:center;padding:0}.chatbot__launcher-icon{width:40px;height:34px;flex-shrink:0}.chatbot__launcher-text{display:flex;flex-direction:column}.chatbot__launcher-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-xl);margin:0;line-height:24px;white-space:nowrap;color:var(--color-body-color)}.chatbot__launcher-subtitle{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);margin:0;line-height:20px;white-space:nowrap;color:var(--color-tertiary)}.chatbot__window{position:fixed;z-index:var(--z-index-modal);display:flex;flex-direction:column;box-shadow:var(--shadow-xl);border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-body-bg)}.chatbot__window--hidden{display:none}.chatbot__window--fullscreen{inset:80px 50px;width:auto;height:auto}.chatbot__resize-top{position:absolute;top:0;left:0;right:0;height:8px;cursor:ns-resize;z-index:50;transition:background-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__resize-top:hover{background-color:#0000000d}.chatbot__resize-side{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:50;transition:background-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__resize-side:hover{background-color:#0000000d}.chatbot__resize-side--left{left:0}.chatbot__resize-side--right{right:0}.chatbot__resize-corner{position:absolute;top:0;width:16px;height:16px;z-index:50;transition:background-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__resize-corner:hover{background-color:#0000001a}.chatbot__resize-corner--nwse{left:0;cursor:nwse-resize}.chatbot__resize-corner--nesw{right:0;cursor:nesw-resize}.chatbot__header{height:74px;display:flex;align-items:center;justify-content:space-between;padding-left:var(--spacing-5);padding-right:var(--spacing-4);gap:var(--spacing-4);flex-shrink:0;background-color:var(--color-body-bg);border-bottom:1px solid var(--color-border)}.chatbot__header-info{display:flex;align-items:center;gap:var(--spacing-4)}.chatbot__header-logo{width:50px;height:41px}.chatbot__header-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-xl);margin:0;line-height:24px;color:var(--color-body-text)}.chatbot__header-subtitle{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);margin:0;line-height:20px;color:var(--color-tertiary)}.chatbot__header-actions{display:flex;align-items:center;gap:var(--spacing-2)}.chatbot__body{flex:1;display:flex;flex-direction:column;background-color:var(--color-body-bg);position:relative;overflow:hidden}.chatbot__product{padding:var(--spacing-3);padding-bottom:0;flex-shrink:0;margin:0 var(--spacing-3)}.chatbot__messages{flex:1;display:flex;flex-direction:column;gap:var(--spacing-3);margin-top:var(--spacing-4);padding:var(--spacing-4);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.chatbot__messages::-webkit-scrollbar{display:none}.chatbot__messages-wrapper{position:relative;flex:1;display:flex;flex-direction:column;overflow:hidden}.chatbot__scroll-down{position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:36px;height:36px;border-radius:var(--radius-full);background-color:var(--color-body-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-body-text);z-index:10;transition:background-color var(--transition-speed-fast) var(--transition-timing),box-shadow var(--transition-speed-fast) var(--transition-timing);padding:0}.chatbot__scroll-down:hover{background-color:var(--color-light);box-shadow:var(--shadow-lg)}.chatbot__message{display:flex}.chatbot__message--user{justify-content:flex-end}.chatbot__message--assistant{display:block}.chatbot__message--system{justify-content:flex-start}.chatbot__bubble{position:relative;color:var(--color-body-text);max-width:85%;border-radius:var(--radius-md);padding:var(--spacing-4);font-size:var(--font-size-sm);line-height:20px;font-weight:var(--font-weight-medium)}.chatbot__bubble--user{background-color:var(--color-primary);color:#fff;border-bottom-right-radius:0;border-top-right-radius:var(--radius-xl);border-top-left-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.chatbot__bubble--user a{color:#ffffffe6}.chatbot__bubble--assistant,.chatbot__bubble--system{background-color:var(--color-light);border-bottom-left-radius:0;border-top-right-radius:var(--radius-xl);border-top-left-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl)}.chatbot__message-content p{margin:0}.chatbot__message-content ol{list-style-type:decimal;margin:0;padding-left:var(--spacing-5)}.chatbot__message-content ul{list-style-type:disc;margin:0;padding-left:var(--spacing-5)}.chatbot__message-content li>ol,.chatbot__message-content li>ul{margin-top:var(--spacing-1);margin-bottom:var(--spacing-1)}.chatbot__message-content ol ol{list-style-type:lower-alpha}.chatbot__message-content ol ol ol{list-style-type:lower-roman}.chatbot__message-content ul ul{list-style-type:circle}.chatbot__message-content ul ul ul{list-style-type:square}.chatbot__message-content li{padding-left:var(--spacing-1)}.chatbot__message-content a{color:var(--color-primary);text-decoration:underline;transition:color var(--transition-speed-fast) var(--transition-timing)}.chatbot__message-content a:hover{color:var(--color-primary-hover)}.chatbot__feedback{display:flex;align-items:center;gap:var(--spacing-2);padding-top:var(--spacing-2)}.chatbot__typing-wrapper{display:flex;justify-content:flex-start}.chatbot__typing{background-color:var(--color-light);padding:var(--spacing-3);border-radius:var(--radius-xl);border-bottom-left-radius:0;display:inline-flex;align-items:center;gap:2px}.chatbot__typing-dot{display:inline-block;width:6px;height:6px;background-color:var(--color-gray-300);border-radius:var(--radius-full);animation:chatbot-typing 1.4s infinite ease-in-out both;margin:0 2px}.chatbot__typing-dot:nth-child(1){animation-delay:-.32s}.chatbot__typing-dot:nth-child(2){animation-delay:-.16s}@keyframes chatbot-typing{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chatbot__input-area{padding:var(--spacing-4);padding-top:var(--spacing-2);padding-bottom:var(--spacing-1);background-color:var(--color-body-bg)}.chatbot__input-wrapper{position:relative;display:flex;align-items:center;gap:var(--spacing-2);background-color:var(--color-light);border-radius:var(--radius-md);padding:var(--spacing-2);border:1px solid transparent;transition:background-color var(--transition-speed-fast) var(--transition-timing),border-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__input-wrapper:focus-within{background-color:var(--color-body-bg);border-color:var(--color-border)}.chatbot__input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-family-base);font-size:var(--font-size-sm);color:var(--color-body-text)}.chatbot__input::placeholder{color:var(--color-tertiary)}.chatbot__input:disabled{opacity:.5;cursor:not-allowed}.chatbot__footer{display:flex;align-items:center;justify-content:center;padding-bottom:var(--spacing-2)}.chatbot__footer-text{margin:0;padding:0;color:var(--color-secondary);font-size:var(--font-size-xs);font-family:var(--font-family-base)}.chatbot__product-selector{padding:var(--spacing-3) var(--spacing-3) 0;flex-shrink:0}.chatbot__product-input{display:block;width:100%;height:24px;padding-left:var(--spacing-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:transparent;color:var(--color-body-color);font-size:var(--font-size-md);outline:none}";var x=Object.defineProperty,C=Object.getOwnPropertyDescriptor,a=(h,t,e,i)=>{for(var o=i>1?void 0:i?C(t,e):t,s=h.length-1,l;s>=0;s--)(l=h[s])&&(o=(i?l(t,e,o):l(o))||o);return i&&o&&x(t,e,o),o};exports.LogosphereChatBot=class extends n.LitElement{constructor(){super(...arguments),this.returnUri="",this.questionPrompt="",this.minimizedIconOnly=!1,this.draggable=!1,this.resizable=!1,this.products=[],this.openInitially=!1,this.showFeedbackButtons=!1,this.open=!1,this.fullscreen=!1,this.messages=[],this.isLoading=!1,this.inputText="",this.selectedProductId="",this.windowWidth=440,this.windowHeight=700,this.position={right:20,bottom:20},this.isDragging=!1,this.screenWidth=1024,this.userAtBottom=!0,this.showScrollDown=!1,this.dragStartPos={x:0,y:0},this.initialPosition={right:0,bottom:0},this.isResizing=!1,this.resizeDirection="horizontal",this.resizeStartWidth=0,this.resizeStartHeight=0,this.onWindowResize=()=>{this.screenWidth=window.innerWidth;const t=window.innerHeight-40;this.windowHeight>t&&(this.windowHeight=t)},this.onToggle=()=>{this.open=!this.open,this.open&&this.scrollToBottom(!0)},this.onClose=()=>{this.open=!1,this.fullscreen=!1},this.onToggleFullscreen=()=>{this.fullscreen=!this.fullscreen},this.onMouseMove=t=>{if(this.isDragging){const e=this.dragStartPos.x-t.clientX,i=this.dragStartPos.y-t.clientY,s=this.shadowRoot?.querySelector(".chatbot__launcher")?.getBoundingClientRect(),l=s?.width||72,g=s?.height||66;this.position={right:Math.max(0,Math.min(window.innerWidth-l,this.initialPosition.right+e)),bottom:Math.max(0,Math.min(window.innerHeight-g,this.initialPosition.bottom+i))}}else if(this.isResizing){const e=this.dragStartPos.x-t.clientX,i=this.dragStartPos.y-t.clientY;if(this.resizeDirection==="horizontal"||this.resizeDirection==="both"){const o=this.position.right<this.screenWidth/2;this.windowWidth=Math.max(300,this.resizeStartWidth+(o?e:-e))}(this.resizeDirection==="vertical"||this.resizeDirection==="both")&&(this.windowHeight=Math.max(400,this.resizeStartHeight+i))}},this.onMouseUp=t=>{this.isDragging?(this.isDragging=!1,window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onMouseUp),Math.hypot(t.clientX-this.dragStartPos.x,t.clientY-this.dragStartPos.y)<5&&this.onToggle()):this.isResizing&&(this.isResizing=!1,window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onMouseUp))},this.handleKeyDown=t=>{t.key==="Enter"&&!t.shiftKey&&(t.preventDefault(),this.sendMessage())},this.onInput=t=>{const e=t.target;this.inputText=e?e.value:t.detail},this.onChatScroll=()=>{const t=this.isNearBottom();this.userAtBottom=t,t&&(this.showScrollDown=!1)},this.onScrollToBottomClick=()=>{this.scrollToBottom(!0)},this.onRate=async(t,e)=>{if(!(!t.eventId||t.rating===e))try{await this.rateMessage(t.eventId,e),this.messages=this.messages.map(i=>i===t?{...i,rating:e}:i)}catch{}},this.onCopyMessage=t=>{navigator.clipboard.writeText(t)}}connectedCallback(){super.connectedCallback(),!n.isServer&&(this.screenWidth=window.innerWidth,this.windowHeight=Math.min(700,window.innerHeight-40),window.addEventListener("resize",this.onWindowResize))}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("resize",this.onWindowResize),window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onMouseUp)}async firstUpdated(){this.selectedProductId=this._resolveInitialProduct(),this.open=this.openInitially,this.open&&await this.initConversation()}updated(t){t.has("products")&&this.handleProductUpdate(),t.has("messages")&&this.scrollToBottom(),t.has("open")&&this.open&&!this.conversationId&&this.initConversation()}_resolveInitialProduct(){if(!this.products.length)return"";const t=this.products.find(e=>e.selected);return t?t.id:this.products.length===1?this.products[0].id:""}handleProductUpdate(){if(!this.products.length)return;const t=this.products.find(i=>i.selected),e=this.products.some(i=>i.id===this.selectedProductId);t&&t.id!==this.selectedProductId?(this.selectedProductId=t.id,this.messages=[],this.conversationId=void 0,this.open&&this.initConversation()):e||(this.selectedProductId=this._resolveInitialProduct(),this.messages=[],this.conversationId=void 0,this.open&&this.initConversation()),requestAnimationFrame(()=>this.updateComboboxItems())}updateComboboxItems(){const t=this.productEl;if(!t||this.products?.length<=1)return;const e=this.products.map(o=>({value:o.id,label:o.name}));if(t.items=e,(t.selectedItems?.()||[])[0]?.value!==this.selectedProductId){const o=e.find(s=>s.value===this.selectedProductId);t.setSelected&&t.setSelected(o?[o]:[])}}async onProductChange(t){const e=t.detail?.selected?.[0]?.value;e&&e!==this.selectedProductId&&(this.selectedProductId=e)}onMouseDown(t){this.draggable&&(t.preventDefault(),this.isDragging=!0,this.dragStartPos={x:t.clientX,y:t.clientY},this.initialPosition={...this.position},window.addEventListener("mousemove",this.onMouseMove),window.addEventListener("mouseup",this.onMouseUp))}startResize(t,e){this.resizable&&(t.preventDefault(),t.stopPropagation(),this.isResizing=!0,this.resizeDirection=e,this.dragStartPos={x:t.clientX,y:t.clientY},this.resizeStartWidth=this.windowWidth,this.resizeStartHeight=this.windowHeight,window.addEventListener("mousemove",this.onMouseMove),window.addEventListener("mouseup",this.onMouseUp))}async ensureToken(t=!1){const e="logosphere_chatbot_token";if(t&&(this.assertionToken=void 0,localStorage.removeItem(e)),!t){const s=localStorage.getItem(e);if(s){this.assertionToken=s;return}}const o=await(await fetch(`${this.returnUri}/api/chat/start`)).json();if(!o.Success||!o.Data?.Token)throw new Error("Token alınamadı");this.assertionToken=o.Data.Token,localStorage.setItem(e,this.assertionToken)}async postChat(t){await this.ensureToken();const e=`${this.returnUri}/api/chat/completions`,i=()=>fetch(e,{method:"POST",headers:{"Content-Type":"application/json",client_assertion:this.assertionToken,client_assertion_type:"urn:ietf:params:oauth:client-assertion-type:jwt-bearer"},body:JSON.stringify(t)});let o=await i();if(o.status===401&&(await this.ensureToken(!0),o=await i()),!o.ok)throw new Error(`HTTP ${o.status}`);return o.json()}async initConversation(){if(!this.isLoading){this.isLoading=!0;try{await this.ensureToken();const t=await this.postChat({ChatCompletionType:"NewConversation",Context:this.selectedProductId,QuestionPrompt:this.questionPrompt});this.conversationId=t.Data.ConversationId;const e=t.Data.Choices?.[0]?.Message?.Content;e&&this.addMessage(e,"assistant",void 0,!0)}catch{this.addMessage("Bir hata oluştu, lütfen tekrar deneyiniz.","system")}finally{this.isLoading=!1}}}async sendMessage(){const t=this.inputText.trim();if(!(!t||!this.conversationId||this.isLoading)){if(!this.selectedProductId){this.addMessage("Lütfen önce bir ürün seçiniz.","system");return}this.addMessage(t,"user"),this.inputText="",this.scrollToBottom(),this.isLoading=!0;try{const e=await this.postChat({ChatCompletionType:"ConversationUpdate",Content:t,Context:this.selectedProductId,ConversationId:this.conversationId,QuestionPrompt:this.questionPrompt}),i=e.Data?.Choices?.[0]?.Message?.Content,o=e.Data?.EventId;this.addMessage(i||"Cevap alınamadı.","assistant",o)}catch{this.addMessage("Bağlantı hatası.","system")}finally{this.isLoading=!1}}}addMessage(t,e,i,o=!1){this.messages=[...this.messages,{content:t,role:e,timestamp:Date.now(),eventId:i,isWelcome:o}]}isNearBottom(t=50){const e=this.chatContainer;return e?e.scrollHeight-e.scrollTop-e.clientHeight<=t:!0}scrollToBottom(t=!1){if(!t&&!this.userAtBottom){this.showScrollDown=!0;return}setTimeout(()=>{this.chatContainer&&(this.chatContainer.scrollTop=this.chatContainer.scrollHeight,this.showScrollDown=!1,this.userAtBottom=!0)},0)}async rateMessage(t,e,i=null){await this.ensureToken();const o=`${this.returnUri}/api/chat/completion/rate`;await fetch(o,{method:"POST",headers:{"Content-Type":"application/json",client_assertion:this.assertionToken,client_assertion_type:"urn:ietf:params:oauth:client-assertion-type:jwt-bearer"},body:JSON.stringify({EventId:t,Rate:e,Comment:i})})}formatContent(t){if(!t)return"";const i=t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").split(`
|
|
1
|
+
"use strict";const n=require("lit"),r=require("lit/decorators.js"),y=require("lit/directives/unsafe-html.js");require("./combobox-BmIFPk8X.cjs");require("./button-DRZ4sG4T.cjs");require("./input-CQS0LzF-.cjs");require("./ui-icon-DIucAQC_.cjs");const w=":host{display:block;z-index:9999}.chatbot{font-family:var(--font-family-base)}.chatbot__overlay{position:fixed;inset:0;background-color:#0003;z-index:var(--z-index-modal-backdrop)}.chatbot__launcher{position:fixed;z-index:var(--z-index-modal);display:flex;align-items:center;gap:var(--spacing-4);padding-left:var(--spacing-4);padding-right:var(--spacing-4);height:66px;color:#fff;border-radius:var(--radius-xl);cursor:pointer;box-shadow:var(--shadow-md);background-color:var(--color-body-bg);overflow:hidden;transition:box-shadow var(--transition-speed-fast) var(--transition-timing)}.chatbot__launcher:hover{box-shadow:var(--shadow-md)}.chatbot__launcher--draggable{cursor:move}.chatbot__launcher--hidden{visibility:hidden;width:72px;height:66px;justify-content:center;padding:0}.chatbot__launcher-icon{width:40px;height:34px;flex-shrink:0}.chatbot__launcher-text{display:flex;flex-direction:column}.chatbot__launcher-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-xl);margin:0;line-height:24px;white-space:nowrap;color:var(--color-body-color)}.chatbot__launcher-subtitle{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);margin:0;line-height:20px;white-space:nowrap;color:var(--color-tertiary)}.chatbot__window{position:fixed;z-index:var(--z-index-modal);display:flex;flex-direction:column;box-shadow:var(--shadow-xl);border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-body-bg)}.chatbot__window--hidden{display:none}.chatbot__window--fullscreen{inset:80px 50px;width:auto;height:auto}.chatbot__resize-top{position:absolute;top:0;left:0;right:0;height:8px;cursor:ns-resize;z-index:50;transition:background-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__resize-top:hover{background-color:#0000000d}.chatbot__resize-side{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:50;transition:background-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__resize-side:hover{background-color:#0000000d}.chatbot__resize-side--left{left:0}.chatbot__resize-side--right{right:0}.chatbot__resize-corner{position:absolute;top:0;width:16px;height:16px;z-index:50;transition:background-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__resize-corner:hover{background-color:#0000001a}.chatbot__resize-corner--nwse{left:0;cursor:nwse-resize}.chatbot__resize-corner--nesw{right:0;cursor:nesw-resize}.chatbot__header{height:74px;display:flex;align-items:center;justify-content:space-between;padding-left:var(--spacing-5);padding-right:var(--spacing-4);gap:var(--spacing-4);flex-shrink:0;background-color:var(--color-body-bg);border-bottom:1px solid var(--color-border)}.chatbot__header-info{display:flex;align-items:center;gap:var(--spacing-4)}.chatbot__header-logo{width:50px;height:41px}.chatbot__header-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-xl);margin:0;line-height:24px;color:var(--color-body-text)}.chatbot__header-subtitle{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);margin:0;line-height:20px;color:var(--color-tertiary)}.chatbot__header-actions{display:flex;align-items:center;gap:var(--spacing-2)}.chatbot__body{flex:1;display:flex;flex-direction:column;background-color:var(--color-body-bg);position:relative;overflow:hidden}.chatbot__product{padding:var(--spacing-3);padding-bottom:0;flex-shrink:0;margin:0 var(--spacing-3)}.chatbot__messages{flex:1;display:flex;flex-direction:column;gap:var(--spacing-3);margin-top:var(--spacing-4);padding:var(--spacing-4);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.chatbot__messages::-webkit-scrollbar{display:none}.chatbot__messages-wrapper{position:relative;flex:1;display:flex;flex-direction:column;overflow:hidden}.chatbot__scroll-down{position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:36px;height:36px;border-radius:var(--radius-full);background-color:var(--color-body-bg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-body-text);z-index:10;transition:background-color var(--transition-speed-fast) var(--transition-timing),box-shadow var(--transition-speed-fast) var(--transition-timing);padding:0}.chatbot__scroll-down:hover{background-color:var(--color-light);box-shadow:var(--shadow-lg)}.chatbot__message{display:flex}.chatbot__message--user{justify-content:flex-end}.chatbot__message--assistant{display:block}.chatbot__message--system{justify-content:flex-start}.chatbot__bubble{position:relative;color:var(--color-body-text);max-width:85%;border-radius:var(--radius-md);padding:var(--spacing-4);font-size:var(--font-size-sm);line-height:20px;font-weight:var(--font-weight-medium)}.chatbot__bubble--user{background-color:var(--color-primary);color:#fff;border-bottom-right-radius:0;border-top-right-radius:var(--radius-xl);border-top-left-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.chatbot__bubble--user a{color:#ffffffe6}.chatbot__bubble--assistant,.chatbot__bubble--system{background-color:var(--color-light);border-bottom-left-radius:0;border-top-right-radius:var(--radius-xl);border-top-left-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl)}.chatbot__message-content p{margin:0}.chatbot__message-content ol{list-style-type:decimal;margin:0;padding-left:var(--spacing-5)}.chatbot__message-content ul{list-style-type:disc;margin:0;padding-left:var(--spacing-5)}.chatbot__message-content li>ol,.chatbot__message-content li>ul{margin-top:var(--spacing-1);margin-bottom:var(--spacing-1)}.chatbot__message-content ol ol{list-style-type:lower-alpha}.chatbot__message-content ol ol ol{list-style-type:lower-roman}.chatbot__message-content ul ul{list-style-type:circle}.chatbot__message-content ul ul ul{list-style-type:square}.chatbot__message-content li{padding-left:var(--spacing-1)}.chatbot__message-content a{color:var(--color-primary);text-decoration:underline;transition:color var(--transition-speed-fast) var(--transition-timing)}.chatbot__message-content a:hover{color:var(--color-primary-hover)}.chatbot__feedback{display:flex;align-items:center;gap:var(--spacing-2);padding-top:var(--spacing-2)}.chatbot__typing-wrapper{display:flex;justify-content:flex-start}.chatbot__typing{background-color:var(--color-light);padding:var(--spacing-3);border-radius:var(--radius-xl);border-bottom-left-radius:0;display:inline-flex;align-items:center;gap:2px}.chatbot__typing-dot{display:inline-block;width:6px;height:6px;background-color:var(--color-gray-300);border-radius:var(--radius-full);animation:chatbot-typing 1.4s infinite ease-in-out both;margin:0 2px}.chatbot__typing-dot:nth-child(1){animation-delay:-.32s}.chatbot__typing-dot:nth-child(2){animation-delay:-.16s}@keyframes chatbot-typing{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chatbot__input-area{padding:var(--spacing-4);padding-top:var(--spacing-2);padding-bottom:var(--spacing-1);background-color:var(--color-body-bg)}.chatbot__input-wrapper{position:relative;display:flex;align-items:center;gap:var(--spacing-2);background-color:var(--color-light);border-radius:var(--radius-md);padding:var(--spacing-2);border:1px solid transparent;transition:background-color var(--transition-speed-fast) var(--transition-timing),border-color var(--transition-speed-fast) var(--transition-timing)}.chatbot__input-wrapper:focus-within{background-color:var(--color-body-bg);border-color:var(--color-border)}.chatbot__input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-family-base);font-size:var(--font-size-sm);color:var(--color-body-text)}.chatbot__input::placeholder{color:var(--color-tertiary)}.chatbot__input:disabled{opacity:.5;cursor:not-allowed}.chatbot__footer{display:flex;align-items:center;justify-content:center;padding-bottom:var(--spacing-2)}.chatbot__footer-text{margin:0;padding:0;color:var(--color-secondary);font-size:var(--font-size-xs);font-family:var(--font-family-base)}.chatbot__product-selector{padding:var(--spacing-3) var(--spacing-3) 0;flex-shrink:0}.chatbot__product-input{display:block;width:100%;height:24px;padding-left:var(--spacing-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:transparent;color:var(--color-body-color);font-size:var(--font-size-md);outline:none}";var x=Object.defineProperty,C=Object.getOwnPropertyDescriptor,a=(h,t,e,i)=>{for(var o=i>1?void 0:i?C(t,e):t,s=h.length-1,l;s>=0;s--)(l=h[s])&&(o=(i?l(t,e,o):l(o))||o);return i&&o&&x(t,e,o),o};exports.LogosphereChatBot=class extends n.LitElement{constructor(){super(...arguments),this.returnUri="",this.questionPrompt="",this.minimizedIconOnly=!1,this.draggable=!1,this.resizable=!1,this.products=[],this.openInitially=!1,this.showFeedbackButtons=!1,this.open=!1,this.fullscreen=!1,this.messages=[],this.isLoading=!1,this.inputText="",this.selectedProductId="",this.windowWidth=440,this.windowHeight=700,this.position={right:20,bottom:20},this.isDragging=!1,this.screenWidth=1024,this.userAtBottom=!0,this.showScrollDown=!1,this.dragStartPos={x:0,y:0},this.initialPosition={right:0,bottom:0},this.isResizing=!1,this.resizeDirection="horizontal",this.resizeStartWidth=0,this.resizeStartHeight=0,this.onWindowResize=()=>{this.screenWidth=window.innerWidth;const t=window.innerHeight-40;this.windowHeight>t&&(this.windowHeight=t)},this.onToggle=()=>{this.open=!this.open,this.open&&this.scrollToBottom(!0)},this.onClose=()=>{this.open=!1,this.fullscreen=!1},this.onToggleFullscreen=()=>{this.fullscreen=!this.fullscreen},this.onMouseMove=t=>{if(this.isDragging){const e=this.dragStartPos.x-t.clientX,i=this.dragStartPos.y-t.clientY,s=this.shadowRoot?.querySelector(".chatbot__launcher")?.getBoundingClientRect(),l=s?.width||72,g=s?.height||66;this.position={right:Math.max(0,Math.min(window.innerWidth-l,this.initialPosition.right+e)),bottom:Math.max(0,Math.min(window.innerHeight-g,this.initialPosition.bottom+i))}}else if(this.isResizing){const e=this.dragStartPos.x-t.clientX,i=this.dragStartPos.y-t.clientY;if(this.resizeDirection==="horizontal"||this.resizeDirection==="both"){const o=this.position.right<this.screenWidth/2;this.windowWidth=Math.max(300,this.resizeStartWidth+(o?e:-e))}(this.resizeDirection==="vertical"||this.resizeDirection==="both")&&(this.windowHeight=Math.max(400,this.resizeStartHeight+i))}},this.onMouseUp=t=>{this.isDragging?(this.isDragging=!1,window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onMouseUp),Math.hypot(t.clientX-this.dragStartPos.x,t.clientY-this.dragStartPos.y)<5&&this.onToggle()):this.isResizing&&(this.isResizing=!1,window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onMouseUp))},this.handleKeyDown=t=>{t.key==="Enter"&&!t.shiftKey&&(t.preventDefault(),this.sendMessage())},this.onInput=t=>{const e=t.target;this.inputText=e?e.value:t.detail},this.onChatScroll=()=>{const t=this.isNearBottom();this.userAtBottom=t,t&&(this.showScrollDown=!1)},this.onScrollToBottomClick=()=>{this.scrollToBottom(!0)},this.onRate=async(t,e)=>{if(!(!t.eventId||t.rating===e))try{await this.rateMessage(t.eventId,e),this.messages=this.messages.map(i=>i===t?{...i,rating:e}:i)}catch{}},this.onCopyMessage=t=>{navigator.clipboard.writeText(t)}}connectedCallback(){super.connectedCallback(),!n.isServer&&(this.screenWidth=window.innerWidth,this.windowHeight=Math.min(700,window.innerHeight-40),window.addEventListener("resize",this.onWindowResize))}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("resize",this.onWindowResize),window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onMouseUp)}async firstUpdated(){this.selectedProductId=this._resolveInitialProduct(),this.open=this.openInitially,this.open&&await this.initConversation()}updated(t){t.has("products")&&this.handleProductUpdate(),t.has("messages")&&this.scrollToBottom(),t.has("open")&&this.open&&!this.conversationId&&this.initConversation()}_resolveInitialProduct(){if(!this.products.length)return"";const t=this.products.find(e=>e.selected);return t?t.id:this.products.length===1?this.products[0].id:""}handleProductUpdate(){if(!this.products.length)return;const t=this.products.find(i=>i.selected),e=this.products.some(i=>i.id===this.selectedProductId);t&&t.id!==this.selectedProductId?(this.selectedProductId=t.id,this.messages=[],this.conversationId=void 0,this.open&&this.initConversation()):e||(this.selectedProductId=this._resolveInitialProduct(),this.messages=[],this.conversationId=void 0,this.open&&this.initConversation()),requestAnimationFrame(()=>this.updateComboboxItems())}updateComboboxItems(){const t=this.productEl;if(!t||this.products?.length<=1)return;const e=this.products.map(o=>({value:o.id,label:o.name}));if(t.items=e,(t.selectedItems?.()||[])[0]?.value!==this.selectedProductId){const o=e.find(s=>s.value===this.selectedProductId);t.setSelected&&t.setSelected(o?[o]:[])}}async onProductChange(t){const e=t.detail?.selected?.[0]?.value;e&&e!==this.selectedProductId&&(this.selectedProductId=e)}onMouseDown(t){this.draggable&&(t.preventDefault(),this.isDragging=!0,this.dragStartPos={x:t.clientX,y:t.clientY},this.initialPosition={...this.position},window.addEventListener("mousemove",this.onMouseMove),window.addEventListener("mouseup",this.onMouseUp))}startResize(t,e){this.resizable&&(t.preventDefault(),t.stopPropagation(),this.isResizing=!0,this.resizeDirection=e,this.dragStartPos={x:t.clientX,y:t.clientY},this.resizeStartWidth=this.windowWidth,this.resizeStartHeight=this.windowHeight,window.addEventListener("mousemove",this.onMouseMove),window.addEventListener("mouseup",this.onMouseUp))}async ensureToken(t=!1){const e="logosphere_chatbot_token";if(t&&(this.assertionToken=void 0,localStorage.removeItem(e)),!t){const s=localStorage.getItem(e);if(s){this.assertionToken=s;return}}const o=await(await fetch(`${this.returnUri}/api/chat/start`)).json();if(!o.Success||!o.Data?.Token)throw new Error("Token alınamadı");this.assertionToken=o.Data.Token,localStorage.setItem(e,this.assertionToken)}async postChat(t){await this.ensureToken();const e=`${this.returnUri}/api/chat/completions`,i=()=>fetch(e,{method:"POST",headers:{"Content-Type":"application/json",client_assertion:this.assertionToken,client_assertion_type:"urn:ietf:params:oauth:client-assertion-type:jwt-bearer"},body:JSON.stringify(t)});let o=await i();if(o.status===401&&(await this.ensureToken(!0),o=await i()),!o.ok)throw new Error(`HTTP ${o.status}`);return o.json()}async initConversation(){if(!this.isLoading){this.isLoading=!0;try{await this.ensureToken();const t=await this.postChat({ChatCompletionType:"NewConversation",Context:this.selectedProductId,QuestionPrompt:this.questionPrompt});this.conversationId=t.Data.ConversationId;const e=t.Data.Choices?.[0]?.Message?.Content;e&&this.addMessage(e,"assistant",void 0,!0)}catch{this.addMessage("Bir hata oluştu, lütfen tekrar deneyiniz.","system")}finally{this.isLoading=!1}}}async sendMessage(){const t=this.inputText.trim();if(!(!t||!this.conversationId||this.isLoading)){if(!this.selectedProductId){this.addMessage("Lütfen önce bir ürün seçiniz.","system");return}this.addMessage(t,"user"),this.inputText="",this.scrollToBottom(),this.isLoading=!0;try{const e=await this.postChat({ChatCompletionType:"ConversationUpdate",Content:t,Context:this.selectedProductId,ConversationId:this.conversationId,QuestionPrompt:this.questionPrompt}),i=e.Data?.Choices?.[0]?.Message?.Content,o=e.Data?.EventId;this.addMessage(i||"Cevap alınamadı.","assistant",o)}catch{this.addMessage("Bağlantı hatası.","system")}finally{this.isLoading=!1}}}addMessage(t,e,i,o=!1){this.messages=[...this.messages,{content:t,role:e,timestamp:Date.now(),eventId:i,isWelcome:o}]}isNearBottom(t=50){const e=this.chatContainer;return e?e.scrollHeight-e.scrollTop-e.clientHeight<=t:!0}scrollToBottom(t=!1){if(!t&&!this.userAtBottom){this.showScrollDown=!0;return}setTimeout(()=>{this.chatContainer&&(this.chatContainer.scrollTop=this.chatContainer.scrollHeight,this.showScrollDown=!1,this.userAtBottom=!0)},0)}async rateMessage(t,e,i=null){await this.ensureToken();const o=`${this.returnUri}/api/chat/completion/rate`;await fetch(o,{method:"POST",headers:{"Content-Type":"application/json",client_assertion:this.assertionToken,client_assertion_type:"urn:ietf:params:oauth:client-assertion-type:jwt-bearer"},body:JSON.stringify({EventId:t,Rate:e,Comment:i})})}formatContent(t){if(!t)return"";const i=t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").split(`
|
|
2
2
|
`);let o="";const s=[];let l=!1;const g=()=>{l&&(o+="</li>",l=!1)},f=d=>{for(;s.length>0&&s[s.length-1].indent>=d;)g(),o+=`</${s.pop().type}>`,s.length>0&&(l=!0)},b=()=>f(-1);for(const d of i){const p=d.match(/^(\s*)\d+\.\s+(.*)/),m=d.match(/^(\s*)[-*]\s+(.*)/);if(p||m){const c=(p?p[1]:m[1]).length,u=p?"ol":"ul",_=p?p[2]:m[2];if(s.length===0)o+=`<${u}>`,s.push({type:u,indent:c});else{const v=s[s.length-1];c>v.indent?(o+=`<${u}>`,s.push({type:u,indent:c})):c===v.indent?g():(f(c+1),s.length>0&&s[s.length-1].indent===c?g():(b(),o+=`<${u}>`,s.push({type:u,indent:c})))}o+=`<li>${_}`,l=!0}else d.trim()===""?s.length===0&&(o+="<br>"):(b(),o+=`<p>${d}</p>`)}return b(),o.replace(/\*\*(.*?)\*\*/g,"<strong>$1</strong>").replace(/\*(.*?)\*/g,"<em>$1</em>").replace(/\[([^\]]+)\]\(([^)]+)\)/g,'<a href="$2" target="_blank" rel="noopener noreferrer">$1</a>')}render(){const t=this.position.right<this.screenWidth/2;return n.html`
|
|
3
3
|
<div class="chatbot">
|
|
4
4
|
${this.renderOverlay()}
|