Commit Graph

10 Commits

Author SHA1 Message Date
35f45513aa Initialize ID for PF2e imported monsters to prevent SQLite exceptions 2026-09-22 21:58:09 -07:00
a5bf6639e8 Updates ios targets to 17.0. 2026-09-22 18:41:53 -07:00
9dd5c7e627 Add EntityImporter protocol (from t_a150f356) 2026-09-22 16:23:49 -07:00
9a38c6d98f Add BinderExporter iOS implementation with tests 2026-09-22 16:22:55 -07:00
9c1e27d473 Document build/test verification for t_b72560e5
Records what was verified without the full xcodebuild pipeline (valid pbxproj,
correct 3-package SPM graph, MarkdownUI 2.x String-init call-site migration
type-checked) and the one blocker (Xcode license acceptance needs a human
sudo, headless-blocked) with the exact commands to finish the build+test run.
No code regressions found in the version bumps.
2026-09-22 16:00:29 -07:00
bd933ca671 t_a6ad7840: Update third-party dependencies to latest compatible versions
Migrate MarkdownUI 0.5.1 -> 2.4.1 (upToNextMajorVersion). This single
direct-upgrade collapses the 7-package resolved graph to 3 packages,
dropping four archived/retired transitive dependencies:

  Dropped (was pulled in by MarkdownUI 0.5.1):
    - AttributedText 0.3.0        (archived 2023-01)
    - SwiftCommonMark 0.1.1       (archived 2023-01)
    - combine-schedulers 0.4.1    (Point-Free; iOS 16+ requirement)
    - xctest-dynamic-overlay 0.1.0 (unused in source; superseded by
                                    swift-issue-reporting; no longer
                                    needed as MarkdownUI test-only)
    - SwiftDocOrg/swift-cmark 0.29.0 (archived; replaced by
                                    swiftlang/swift-cmark 0.8.0)

  Pinned (MarkdownUI 2.4.1 transitive graph):
    - MarkdownUI 2.4.1            (gonzalezreal/MarkdownUI @ 5f61335)
    - NetworkImage 6.0.1          (gonzalezreal/NetworkImage @ 2849f53)
      replaces NetworkImage 2.1.0 (iOS 14 baseline, compatible with
      the iOS 15.0 target set by t_fe859d8e)
    - swift-cmark 0.8.0           (swiftlang/swift-cmark @ 924936d)

Call-site migration (MarkdownUI 0.5.1 -> 2.x):
  MarkdownUI 2.x replaced 'Markdown(Document(_:))' (a CommonMark
  Document) with 'Markdown(_ string:)' / 'Markdown(_ content:
  MarkdownContent)'. Two call-sites in MonsterDetailView.swift
  updated to pass the rendered Markdown string directly.

Package.resolved regenerated against the resolved graph (version 2
format). Verified clean SPM resolution and that the call-site
pattern compiles against MarkdownUI 2.4.1 on swift 6.3.3.

No changes to Xcode project-level settings (delegated to t_fe859d8e).
2026-09-22 16:00:29 -07:00
70d549f929 t_fe859d8e: Xcode project settings migration — objectVersion 52→58, SWIFT_LANGUAGE_VERSION=6, IPHONEOS_DEPLOYMENT_TARGET=15.0, upgrade/swift-checks→2700 2026-09-22 16:00:29 -07:00
c674e2c27a Add BinderImporter + import models + unit tests
- BinderImportModels.swift: Codable data models for Binder (TRPG platform) card format. Matches Android Monster.java field names.
- BinderImporter.swift: EntityImporter implementation detecting binder schema or collections, parsing full export or single-card, mapping all monster fields (name, type, size via abbrv, alignment, AC/armor, HP/hitDice, speeds, ability scores, saves, skills, damage immunities, languages/senses, challenge rating, traits by actionSection grouping).
- MonsterImportHelper.fromJSON: Updated to register BinderImporter.
- BinderImporterTest.swift: XCTest suite with canImport detection tests and parse round-trip tests validating all fields.

Acceptance criteria:
1. ✅ Conforms to EntityImporter protocol
2. ✅ Unit test validates field roundtrips
3. ✅ MonsterImportHelper.fromJSON includes BinderImporter entry
4. ✅ No Android imports present (iOS-native only)
5. ✅ Follows naming/style conventions from DnDBeyondImporter and MonsterJsonImporter
2026-09-22 16:00:29 -07:00
Tom Hicks
2a963cea0a Cleans up monorepo documentation. 2025-07-06 19:25:13 -07:00
Tom Hicks
48f71d1a3a Add 'iOS/' from commit '938f0fb75860d3637b998bdd0c27dcffd9fc9451'
git-subtree-dir: iOS
git-subtree-mainline: c4bb775af4
git-subtree-split: 938f0fb758
2025-06-30 12:55:22 -07:00