Tapis.Core.Shared
2.0.20
See the version list below for details.
dotnet add package Tapis.Core.Shared --version 2.0.20
NuGet\Install-Package Tapis.Core.Shared -Version 2.0.20
<PackageReference Include="Tapis.Core.Shared" Version="2.0.20" />
<PackageVersion Include="Tapis.Core.Shared" Version="2.0.20" />
<PackageReference Include="Tapis.Core.Shared" />
paket add Tapis.Core.Shared --version 2.0.20
#r "nuget: Tapis.Core.Shared, 2.0.20"
#:package Tapis.Core.Shared@2.0.20
#addin nuget:?package=Tapis.Core.Shared&version=2.0.20
#tool nuget:?package=Tapis.Core.Shared&version=2.0.20
Tapis.Core.Shared
Tapis.Core.Shared 2.0.4, Tapis Organization uygulamalarında kullanılan ortak .NET çekirdek sözleşmelerini içerir.
Paket; ortak entity yapıları, CustomResponse, kullanıcıya güvenli hata sınıflandırması (PublicFailureClassifier), HTTP context abstractions, printing, WhatsApp/e-posta modelleri ve bearer guard'ları sağlar.
2.0.4 değişiklikleri (breaking)
İyimser eşzamanlılık damgası PostgreSQL'in xmin sistem sütunu oldu
(DevelopmentStandards/backend/PERSISTENCE-STANDARDS.md §8). PostgreSQL tek
hedef motor olduğu için damganın sağlayıcıdan bağımsız olması gerekmiyor; iki
damganın bir satırda yaşaması ise bu kararın engellemek istediği şey.
BaseEntity<TKey>artık damga taşımıyor:Guid VersiyonveIVersiyonluEntitykalıtımı kaldırıldı, arayüz silindi.SistemTanimdamga taşımıyor.BaseDTO<TKey>.Versiyonstring?oldu. Damga istemciye opaktır: olduğu gibi geri gönderilir, ayrıştırılmaz, sıralama için karşılaştırılmaz.RowStateTip RowStateveCustomResponse<T>sözleşmeleri değişmedi.
Yükseltirken: entity'lerdeki Versiyon sütunu düşer ve DbContext xmin
eşlemesine geçer. Ürünler bu pakete Master ve ServiceManagement birlikte
taşınır; HostelManagement kendi turunda gelir ve o zamana kadar Guid Versiyon
ile kalması ihlal değildir.
Kök namespace ve assembly adı: Tapis.Core.Shared.
ASP.NET middleware, EF interceptor, SMTP gönderici ve Meta WhatsApp client'ları ayrı paketlerdedir:
Tapis.Core.InfrastructureTapis.Core.EmailTapis.Core.WhatsAppTapis.Core.Verification
E-posta ve WhatsApp sözleşmeleri (IEmailSender, IWhatsAppSender, modeller) Shared'da kalır; host Application katmanı MailKit/Meta paketini pinlemek zorunda değildir. Uygulamalar Tapis.Core.Email / Tapis.Core.WhatsApp yalnızca gerçek gönderici kaydı için ekler.
Target Framework
- .NET 10
Installation
dotnet add package Tapis.Core.Shared
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Tapis.Core.Shared:
| Package | Downloads |
|---|---|
|
Tapis.Core.Infrastructure
Tapis.Core ASP.NET / EF / Refit altyapısı: middleware, interceptors, HTTP clients, permission attributes. Publicly distributed proprietary software. Usage is subject to LICENSE.txt. |
|
|
Tapis.Core.WhatsApp
Tapis.Core Meta Cloud API WhatsApp gönderici ve admin client. Publicly distributed proprietary software. Usage is subject to LICENSE.txt. |
|
|
Tapis.Core.Email
Tapis.Core SMTP e-posta gönderimi (MailKit). IEmailSender uygulaması. Publicly distributed proprietary software. Usage is subject to LICENSE.txt. |
|
|
Tapis.Core.Reminders
Tapis.Core notlar ve hatırlatıcılar modülü: kişisel notlar, hatırlatıcılar (saat ve erken uyarılar), alarm zamanlayıcı, uygulama içi bildirimler (SignalR) ve ekler. Her ürün kendi veritabanında barındırır. Publicly distributed proprietary software. Usage is subject to LICENSE.txt. |
|
|
Tapis.Core.Portal
Tapis.Core musteri portali modulu: davet kodu ile cihaz baglama, kisa omurlu PortalToken, kayan yenileme oturumu, aydinlatma rizasi ve controller taban siniflari. Her urun kendi veritabaninda barindirir. Publicly distributed proprietary software. Usage is subject to LICENSE.txt. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.22 | 89 | 10/23/2026 |
| 2.0.21 | 53 | 10/22/2026 |
| 2.0.20 | 146 | 10/21/2026 |
| 2.0.19 | 249 | 10/17/2026 |
| 2.0.18 | 192 | 10/14/2026 |
| 2.0.17 | 256 | 10/12/2026 |
| 2.0.16 | 89 | 10/12/2026 |
| 2.0.15 | 343 | 10/8/2026 |
| 2.0.14 | 249 | 10/3/2026 |
| 2.0.13 | 278 | 10/3/2026 |
| 2.0.12 | 91 | 10/3/2026 |
| 2.0.11 | 106 | 10/2/2026 |
| 2.0.10 | 108 | 10/2/2026 |
| 2.0.9 | 137 | 10/2/2026 |
| 2.0.8 | 115 | 10/1/2026 |
| 2.0.7 | 168 | 10/1/2026 |
| 2.0.6 | 155 | 9/30/2026 |
| 2.0.5 | 195 | 9/26/2026 |
| 2.0.4 | 262 | 9/20/2026 |
| 2.0.3 | 564 | 9/5/2026 |
Yazici QR destegi (eklemeli, 2026-10-21): TsplPrintCommandBuilder/ZplPrintCommandBuilder.TekBarkodEtiket(takipNo, qr) 50x30 etiket (QR + barkod + "Portal"), PrintDocument.QrAltYazi (QR altina satirlar), PrintDocument.Qr (barkoddan ayri, string?) ve PrintDocument.KagitGenisligiMm (int?). Qr bos/null iken uc builder cikisi bayt bayt degismez. ESC/POS yazicinin yerel QR komutunu (GS ( k: model 2, hata duzeltme M, modul boyutu 58 mm icin 4, 80 mm ve ustu icin 6) toplam, barkod ve alt nottan sonra fisin sonunda basar; TSPL QRCODE, ZPL ^BQ kullanir; resim/raster yok. Qr yalniz yazdirilabilir ASCII olmali (URL yuzde-kodlanmis), aksi halde builder ArgumentException atar. TSPL/ZPL: Qr doluyken tek-barkod kisayolu yerine belge yolu kullanilir. Destek talebi gorunurlugu (eklemeli, 2026-10-17): yeni enum DestekTalebiGorunurlugu (Kisisel = 1, Isletme = 2; sifir yok, gelmeyen = Kisisel, tanimsiz sayi Master validator 400) ve DestekBildirimGorunurlukSuzgeci (Tumu = 0, Kisisel = 1, Isletme = 2). MasterDestekTalebiOlusturDTO.Gorunurluk (nullable); yeni MasterDestekTalebiGorunurlukDTO (GetirDTO + Gorunurluk + Damga, UrundenGorunurlukDegistir). MasterDestekTalebiOzetDTO/DetayDTO: Gorunurluk, BenimMi (Master hesaplar, acanin kullanici id si tasinmaz), AcanAdi (yalniz Isletme talebinde, aksi null); acan olmayana EkranYolu, KayitId ve Ekler null/bos. MasterDestekTalebiYanitiDTO.YazarAdi (musteri yaniti; destekte null). MasterDestekBildirimListeDTO.Arama (en cok 100), SadeceOkunmamis, Gorunurluk suzgeci; MasterDestekBildirimDTO.Gorunurluk. Master yukumlulukleri: Isletme talebini ayni tenant+uygulamadaki her aktif kullaniciya ac, ek/EkranYolu/KayitId yalniz acan ve destekte; iptal, metin guncelleme, ek ekleme, gorunurluk degistirme yalniz acan, Isletme yalniz acikken; sahip bildirimleri Isletme talebinde tum aktif kullanicilara; Arama>100 ve tanimsiz enum 400. Urunler yeni alanlari kullaniciya aynen iletir, yetkiyi Master uygular. Kalici destek bildirimleri sozlesmesi (eklemeli): DestekBildirimTuru enum, MasterDestekBildirimListeDTO/BildirimDTO/BildirimOkunduDTO/BildirimTalepOkunduDTO. Destek talebi sahip islemleri sozlesmesi (eklemeli, kirici degisiklik yok): DestekTalebiDurum.Iptal = 3; yeni enum DestekTalebiYanitYazari (Destek = 1, Musteri = 2; sifir uyesi yok, bu alandan onceki yanitlar destek yanitidir). MasterDestekTalebiOzetDTO.Damga (sahip yazma uclarinin eszamanlilik damgasi), MasterDestekTalebiYanitiDTO.YazarTuru (yanitlayanin kimligi hala verilmez, yalniz taraf), MasterDestekTalebiEkDTO.SiraNo (ekin kullaniciya gorunen numarasi; musteri yanit metninde "#2" diye anar), MasterDestekTalebiDetayDTO.IptalNedeni ve DestekYanitiVarMi. Yeni istek DTO'lari (hepsi MasterDestekTalebiGetirDTO'dan turer, UygulamaId tasimaz): MasterDestekTalebiIptalDTO, MasterDestekTalebiGuncelleDTO, MasterDestekTalebiSahipYanitiDTO, MasterDestekTalebiEkEkleDTO. Yeni ClientTokenScopes.SupportTicketManage (support.ticket.manage) + ClientTokenPolicies.SupportTicketManage: sahip islemleri support.ticket.write'tan AYRI scope ister, ayri token ile alinir. Yetki, sahiplik ve is kurallari (kapali talebe yanit yok, metin duzenleme yalniz ilk destek yanitina kadar, ek ekleme talep acik oldugu surece, iptal nedeni zorunlu/1000) Master'da uygulanir; bu paket dogrulama tasimaz. Erisim kaldirma scope (eklemeli): yeni ClientTokenScopes.TenantUserRoleRevoke (tenant.user-role.revoke) + ClientTokenPolicies.TenantUserRoleRevoke: urunun (SM/HM) Auth ucunda bir kullanicinin TUM rollerini kaldirir, rol adi tasimaz; yalniz *.Provision sinifi client tasir, ayri token ile istenir (tenant.provision/tenant.migrate istegine eklenmez), TenantUserRoleRead ile ayni aile ama onu ima etmez ve onun tarafindan ima edilmez. Yetki mantigi Master ve urunlerde uygulanir; bu paket yalniz sabiti tasir.