[{"title":"( 71 个子文件 55KB ) SwiftUI-UDF:SwiftUICombine上的UDF(单向数据流)架构","children":[{"title":"SwiftUI-UDF-master","children":[{"title":".swiftpm","children":[{"title":"xcode","children":[{"title":"package.xcworkspace","children":[{"title":"contents.xcworkspacedata <span style='color:#111;'> 135B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":".build","children":[{"title":"manifest.db <span style='color:#111;'> 24.00KB </span>","children":null,"spread":false}],"spread":true},{"title":"Example","children":[{"title":"UDF","children":[{"title":"Assets.xcassets","children":[{"title":"AppIcon.appiconset","children":[{"title":"Contents.json <span style='color:#111;'> 1.55KB </span>","children":null,"spread":false}],"spread":true},{"title":"Contents.json <span style='color:#111;'> 63B </span>","children":null,"spread":false}],"spread":true},{"title":"Preview Content","children":[{"title":"Preview Assets.xcassets","children":[{"title":"Contents.json <span style='color:#111;'> 63B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"Example","children":[{"title":"Models","children":[{"title":"Item.swift <span style='color:#111;'> 510B </span>","children":null,"spread":false}],"spread":true},{"title":"Storage","children":[{"title":"AllItems.swift <span style='color:#111;'> 871B </span>","children":null,"spread":false}],"spread":true},{"title":"Common.swift <span style='color:#111;'> 116B </span>","children":null,"spread":false},{"title":"Views","children":[{"title":"FavoriteView.swift <span style='color:#111;'> 446B </span>","children":null,"spread":false},{"title":"LoaderView.swift <span style='color:#111;'> 756B </span>","children":null,"spread":false}],"spread":true},{"title":"Modules","children":[{"title":"Root","children":[{"title":"RootContainer.swift <span style='color:#111;'> 560B </span>","children":null,"spread":false},{"title":"RootComponent.swift <span style='color:#111;'> 952B </span>","children":null,"spread":false}],"spread":true},{"title":"ItemDetail","children":[{"title":"ItemMiddleware.swift <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false},{"title":"ItemDetailsContainer.swift <span style='color:#111;'> 934B </span>","children":null,"spread":false},{"title":"ItemDetailsComponent.swift <span style='color:#111;'> 714B </span>","children":null,"spread":false},{"title":"ItemFlow.swift <span style='color:#111;'> 822B </span>","children":null,"spread":false}],"spread":false},{"title":"Login","children":[{"title":"LoginForm.swift <span style='color:#111;'> 846B </span>","children":null,"spread":false},{"title":"LoginComponent.swift <span style='color:#111;'> 1.46KB </span>","children":null,"spread":false},{"title":"LoginFlow.swift <span style='color:#111;'> 603B </span>","children":null,"spread":false},{"title":"LoginContainer.swift <span style='color:#111;'> 1.01KB </span>","children":null,"spread":false},{"title":"LoginMiddleware.swift <span style='color:#111;'> 1.39KB </span>","children":null,"spread":false}],"spread":false},{"title":"Items","children":[{"title":"MainComponent.swift <span style='color:#111;'> 2.38KB </span>","children":null,"spread":false},{"title":"MainContainer.swift <span style='color:#111;'> 1.47KB </span>","children":null,"spread":false},{"title":"ItemsMiddleware.swift <span style='color:#111;'> 2.68KB </span>","children":null,"spread":false},{"title":"ItemsFlow.swift <span style='color:#111;'> 790B </span>","children":null,"spread":false},{"title":"ItemsForm.swift <span style='color:#111;'> 748B </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"AppState","children":[{"title":"AppAction.swift <span style='color:#111;'> 760B </span>","children":null,"spread":false},{"title":"AppState.swift <span style='color:#111;'> 1.23KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"Base.lproj","children":[{"title":"LaunchScreen.storyboard <span style='color:#111;'> 1.63KB </span>","children":null,"spread":false}],"spread":true},{"title":"AppDelegate.swift <span style='color:#111;'> 1.38KB </span>","children":null,"spread":false},{"title":"Info.plist <span style='color:#111;'> 1.83KB </span>","children":null,"spread":false},{"title":"SceneDelegate.swift <span style='color:#111;'> 1.31KB </span>","children":null,"spread":false}],"spread":true},{"title":"UDF.xcodeproj","children":[{"title":"project.xcworkspace","children":[{"title":"contents.xcworkspacedata <span style='color:#111;'> 135B </span>","children":null,"spread":false},{"title":"xcshareddata","children":[{"title":"IDEWorkspaceChecks.plist <span style='color:#111;'> 238B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"project.pbxproj <span style='color:#111;'> 25.06KB </span>","children":null,"spread":false}],"spread":true},{"title":"Tests","children":[{"title":"LinuxMain.swift <span style='color:#111;'> 124B </span>","children":null,"spread":false},{"title":"SwiftUI-UDFTests","children":[{"title":"XCTestManifests.swift <span style='color:#111;'> 161B </span>","children":null,"spread":false},{"title":"SwiftUI_UDFTests.swift <span style='color:#111;'> 418B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"README.md <span style='color:#111;'> 13B </span>","children":null,"spread":false}],"spread":true},{"title":"Sources","children":[{"title":"Store","children":[{"title":"Observer.swift <span style='color:#111;'> 789B </span>","children":null,"spread":false},{"title":"Reducible.swift <span style='color:#111;'> 235B </span>","children":null,"spread":false},{"title":"EnvironmentStore.swift <span style='color:#111;'> 2.26KB </span>","children":null,"spread":false},{"title":"Action","children":[{"title":"Actionable.swift <span style='color:#111;'> 473B </span>","children":null,"spread":false},{"title":"AnyAction.swift <span style='color:#111;'> 1.30KB </span>","children":null,"spread":false},{"title":"ActionGroup.swift <span style='color:#111;'> 1.61KB </span>","children":null,"spread":false},{"title":"Actions.swift <span style='color:#111;'> 3.41KB </span>","children":null,"spread":false}],"spread":true},{"title":"Store.swift <span style='color:#111;'> 2.43KB </span>","children":null,"spread":false},{"title":"Flow","children":[{"title":"Flows.swift <span style='color:#111;'> 287B </span>","children":null,"spread":false},{"title":"IdentifiableFlow.swift <span style='color:#111;'> 340B </span>","children":null,"spread":false},{"title":"Flow.swift <span style='color:#111;'> 139B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"Common","children":[{"title":"Extensions","children":[{"title":"Hashable.swift <span style='color:#111;'> 928B </span>","children":null,"spread":false}],"spread":true},{"title":"OrderedSet.swift <span style='color:#111;'> 3.92KB </span>","children":null,"spread":false},{"title":"Pagination","children":[{"title":"Paginator.swift <span style='color:#111;'> 2.09KB </span>","children":null,"spread":false},{"title":"PaginationPage.swift <span style='color:#111;'> 344B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"View","children":[{"title":"Component.swift <span style='color:#111;'> 279B </span>","children":null,"spread":false},{"title":"Container","children":[{"title":"Container.swift <span style='color:#111;'> 2.91KB </span>","children":null,"spread":false},{"title":"Sheet","children":[{"title":"ItemSheetContainer.swift <span style='color:#111;'> 2.27KB </span>","children":null,"spread":false},{"title":"SheetContainer.swift <span style='color:#111;'> 3.40KB </span>","children":null,"spread":false},{"title":"ModalKind.swift <span style='color:#111;'> 202B </span>","children":null,"spread":false}],"spread":true},{"title":"RenderContainer.swift <span style='color:#111;'> 880B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"Middleware","children":[{"title":"AsyncMiddleware.swift <span style='color:#111;'> 1.62KB </span>","children":null,"spread":false},{"title":"Middleware.swift <span style='color:#111;'> 754B </span>","children":null,"spread":false},{"title":"Middlewareable.swift <span style='color:#111;'> 1.11KB </span>","children":null,"spread":false},{"title":"SyncMiddleware.swift <span style='color:#111;'> 816B </span>","children":null,"spread":false},{"title":"Effect","children":[{"title":"Effect.swift <span style='color:#111;'> 3.77KB </span>","children":null,"spread":false},{"title":"Operators","children":[{"title":"FilterEffect.swift <span style='color:#111;'> 721B </span>","children":null,"spread":false},{"title":"CombineEffect.swift <span style='color:#111;'> 1.35KB </span>","children":null,"spread":false}],"spread":false},{"title":"Effectable.swift <span style='color:#111;'> 786B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true},{"title":"Package.swift <span style='color:#111;'> 528B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 276B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 46B </span>","children":null,"spread":false}],"spread":true}],"spread":true}]