جميع حزم المصدر المفتوح
واجهة المستخدمSwift

SwiftUI-Components

عروض SwiftUI جاهزة لـ iOS 17 وmacOS 14، بتحقق صحة النماذج (form validation) وإيماءات متاحة لإمكانية الوصول (accessible gestures)

32النجومآخر إصدار: v2.1.0آخر تحديث: 15 أكتوبر 2026
الأنظمة الأساسية:iOS 17macOS 14

الترخيص: MIT

حزمة Swift بلا اعتماديات من عروض SwiftUI: أزرار، وبطاقات، ورسوم بيانية، وحقول نماذج مع تحقق صحة (validation)، وإيماءات، وقوائم، وطبقات تراكب (overlays)، ومؤشرات تحميل (loaders)، وtoasts. كل مكوّن هو View بسيط يُهيَّأ من خلال مُنشئه (initializer)، بحيث يمكنك استخدام واحد أو اثنين منه دون تبنّي نظام سمات (theme system) كامل. المنطق الذي خلفها، مثل فحوصات أرقام البطاقات، والمُحقِّقات (validators)، وصيغ النماذج من JSON، وتمييز السحب (swipe) والأشكال، مغطّى بحزم اختبارات Swift Testing تعمل على macOS ومحاكي iPhone.

الميزات

  • 223 عرض view، و12 معدِّل view، و5 معدِّلات إيماءة (gesture)، في 14 فئة، مُحصاة من المصادر
  • مُحقِّقات (validators) قابلة للتركيب، وأخطاء تظهر بعد أول تحرير، وفحوصات خادم بتأخير (debounced)، ونماذج متعددة الخطوات
  • نماذج تُرسَم من JSON؛ تعمل أنماط الصيغة (schema patterns) بحد 20 ميلي ثانية لكل مطابقة وموازنة 100 ميلي ثانية لكل فحص
  • السحب (swipe)، وسحب الحافة (edge swipe)، وتسلسلات السحب، وpinch-rotate-drag، ورسم الأشكال، كل منها بإجراء إمكانية وصول (accessibility action)
  • قاعدة كود واحدة لـ iOS وmacOS: تُطابَق تقريبًا كل التفاصيل الخاصة بـ UIKit فقط مع AppKit أو تُحوَّل إلى no-ops في ملف خاص بالمنصة
  • وضع لغة Swift 6، بلا اعتماديات، وأمثلة README مُجمَّعة (compiled) بواسطة التطبيق التوضيحي وهدف الاختبار
  • نسبة وتصنيف تباين WCAG 2 لألوان SwiftUI بواسطة ColorContrast

البدء السريع

swift
1import SwiftUI
2import SwiftUIComponents
3 
4struct ContentView: View {
5 @State private var rating = 3.0
6 
7 var body: some View {
8 VStack(spacing: 20) {
9 Text("Rate this app")
10 .font(.headline)
11 RatingInput(rating: $rating)
12 PrimaryButton("Send rating") {
13 print("Rating: \(rating)")
14 }
15 }
16 .padding()
17 }
18}

التثبيت

Xcode (File › Add Package Dependencies…)

text
1https://github.com/muhittincamdali/SwiftUI-Components.git

Swift Package Manager

swift
1dependencies: [
2 .package(url: "https://github.com/muhittincamdali/SwiftUI-Components.git", from: "2.1.0")
3],
4targets: [
5 .target(name: "YourApp", dependencies: [
6 .product(name: "SwiftUIComponents", package: "SwiftUI-Components")
7 ])
8]

لقطات الشاشة

معرض الأزرار، الوضع الفاتح
معرض الأزرار، الوضع الداكن
معرض البطاقات، الوضع الفاتح
معرض الرسوم البيانية، الوضع الفاتح
معرض المؤشرات، الوضع الفاتح
نموذج تسجيل مع تحقق صحة في التطبيق التوضيحي
نموذج تواصل مُرسوم من JSON في التطبيق التوضيحي
السحب (swipe) وpinch-rotate-drag ورسم الأشكال في التطبيق التوضيحي

الجدول الزمني

  1. افتُتح المستودع؛ وُسم v1.0.0 على أول commit (14 ملف مصدر، iOS 16 وmacOS 13)

  2. تقليص الحزمة: أُزيلت المكوّنات واستُبدلت بكود placeholder (c7b3799)

  3. أُعيد البناء كـ 2.0.0: استُعيدت المكوّنات لـ iOS 17 وmacOS 14 في وضع لغة Swift 6، مع اختبارات وCI وDocC (PR #3)

  4. 2.1.0: تحقق الصحة (validation)، ونماذج JSON، وإيماءات، وفاحص تباين، أُعيدت كتابتها من SwiftUI-Forms-Kit وSwiftUI-Gesture-Library وiOSUIComponents، التي أُرشفت (PR #6)

الروابط

المستودعات المدمجة

مقالة ذات صلة

قراءة المقالة