├── .all-contributorsrc
├── .changeset
├── README.md
└── config.json
├── .github
└── workflows
│ ├── dart.yml
│ ├── deploy_web.yml
│ └── publish.yml
├── .gitignore
├── .npmrc
├── .prettierrc.json
├── .run
├── Vyuh Demo.run.xml
└── Vyuh Studio.run.xml
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── _images
├── example-conference.png
├── example-counter.png
├── example-food.png
├── example-misc.png
├── example-puzzle.png
├── example-settings.png
├── example-tmdb.png
├── example-unsplash.png
├── example-wonderous.png
└── logo.png
├── analysis_options.yaml
├── apps
├── content_explorer
│ ├── .env
│ ├── .gitignore
│ ├── README.md
│ ├── lib
│ │ └── main.dart
│ ├── macos
│ │ ├── .gitignore
│ │ ├── Flutter
│ │ │ ├── Flutter-Debug.xcconfig
│ │ │ ├── Flutter-Release.xcconfig
│ │ │ └── GeneratedPluginRegistrant.swift
│ │ ├── Podfile
│ │ ├── Runner.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── IDEWorkspaceChecks.plist
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── Runner.xcscheme
│ │ ├── Runner.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ └── IDEWorkspaceChecks.plist
│ │ ├── Runner
│ │ │ ├── AppDelegate.swift
│ │ │ ├── Assets.xcassets
│ │ │ │ └── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── app_icon_1024.png
│ │ │ │ │ ├── app_icon_128.png
│ │ │ │ │ ├── app_icon_16.png
│ │ │ │ │ ├── app_icon_256.png
│ │ │ │ │ ├── app_icon_32.png
│ │ │ │ │ ├── app_icon_512.png
│ │ │ │ │ └── app_icon_64.png
│ │ │ ├── Base.lproj
│ │ │ │ └── MainMenu.xib
│ │ │ ├── Configs
│ │ │ │ ├── AppInfo.xcconfig
│ │ │ │ ├── Debug.xcconfig
│ │ │ │ ├── Release.xcconfig
│ │ │ │ └── Warnings.xcconfig
│ │ │ ├── DebugProfile.entitlements
│ │ │ ├── Info.plist
│ │ │ ├── MainFlutterWindow.swift
│ │ │ └── Release.entitlements
│ │ └── RunnerTests
│ │ │ └── RunnerTests.swift
│ ├── pubspec.yaml
│ └── web
│ │ ├── favicon.png
│ │ ├── icons
│ │ ├── Icon-192.png
│ │ ├── Icon-512.png
│ │ ├── Icon-maskable-192.png
│ │ └── Icon-maskable-512.png
│ │ ├── index.html
│ │ └── manifest.json
├── content_widget_demo
│ ├── .gitignore
│ ├── README.md
│ ├── android
│ │ ├── .gitignore
│ │ ├── app
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ ├── debug
│ │ │ │ └── AndroidManifest.xml
│ │ │ │ ├── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── kotlin
│ │ │ │ │ └── com
│ │ │ │ │ │ └── example
│ │ │ │ │ │ └── content_widget_demo
│ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ └── res
│ │ │ │ │ ├── drawable-v21
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── drawable
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── values-night
│ │ │ │ │ └── styles.xml
│ │ │ │ │ └── values
│ │ │ │ │ └── styles.xml
│ │ │ │ └── profile
│ │ │ │ └── AndroidManifest.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ └── gradle-wrapper.properties
│ │ └── settings.gradle
│ ├── ios
│ │ ├── .gitignore
│ │ ├── Flutter
│ │ │ ├── AppFrameworkInfo.plist
│ │ │ ├── Debug.xcconfig
│ │ │ └── Release.xcconfig
│ │ ├── Podfile
│ │ ├── Runner.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── Runner.xcscheme
│ │ ├── Runner.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ └── WorkspaceSettings.xcsettings
│ │ ├── Runner
│ │ │ ├── AppDelegate.swift
│ │ │ ├── Assets.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ │ └── LaunchImage.imageset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ ├── LaunchImage.png
│ │ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ │ └── README.md
│ │ │ ├── Base.lproj
│ │ │ │ ├── LaunchScreen.storyboard
│ │ │ │ └── Main.storyboard
│ │ │ ├── Info.plist
│ │ │ └── Runner-Bridging-Header.h
│ │ └── RunnerTests
│ │ │ └── RunnerTests.swift
│ ├── lib
│ │ ├── example.dart
│ │ ├── examples
│ │ │ ├── conferences.dart
│ │ │ ├── custom_widget.dart
│ │ │ ├── hello_world.dart
│ │ │ └── route.dart
│ │ └── main.dart
│ ├── pubspec.yaml
│ ├── test
│ │ └── widget_test.dart
│ └── web
│ │ ├── favicon.png
│ │ ├── icons
│ │ ├── Icon-192.png
│ │ ├── Icon-512.png
│ │ ├── Icon-maskable-192.png
│ │ └── Icon-maskable-512.png
│ │ ├── index.html
│ │ └── manifest.json
├── demo-studio
│ ├── .eslintrc
│ ├── .gitignore
│ ├── README.md
│ ├── package.json
│ ├── sanity.cli.ts
│ ├── sanity.config.ts
│ ├── scripts
│ │ └── sanity-script.ts
│ ├── static
│ │ └── .gitkeep
│ └── tsconfig.json
└── vyuh_demo
│ ├── .gitignore
│ ├── README.md
│ ├── android
│ ├── .gitignore
│ ├── app
│ │ ├── build.gradle
│ │ ├── google-services.json
│ │ └── src
│ │ │ ├── debug
│ │ │ └── AndroidManifest.xml
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── kotlin
│ │ │ │ └── run
│ │ │ │ │ └── vyuh
│ │ │ │ │ └── vyuh_demo
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-hdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-mdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-v21
│ │ │ │ ├── background.png
│ │ │ │ └── launch_background.xml
│ │ │ │ ├── drawable-xhdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable-xxxhdpi
│ │ │ │ └── splash.png
│ │ │ │ ├── drawable
│ │ │ │ ├── background.png
│ │ │ │ └── launch_background.xml
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ └── ic_launcher.png
│ │ │ │ ├── values-night-v31
│ │ │ │ └── styles.xml
│ │ │ │ ├── values-night
│ │ │ │ └── styles.xml
│ │ │ │ ├── values-v31
│ │ │ │ └── styles.xml
│ │ │ │ └── values
│ │ │ │ └── styles.xml
│ │ │ └── profile
│ │ │ └── AndroidManifest.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ └── gradle-wrapper.properties
│ └── settings.gradle
│ ├── assets
│ ├── app-icon.png
│ ├── launchscreen-image.png
│ └── routes
│ │ └── _tab1.json
│ ├── ios
│ ├── .gitignore
│ ├── Flutter
│ │ ├── AppFrameworkInfo.plist
│ │ ├── Debug.xcconfig
│ │ └── Release.xcconfig
│ ├── Podfile
│ ├── Podfile.lock
│ ├── Runner.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ └── WorkspaceSettings.xcsettings
│ │ └── xcshareddata
│ │ │ └── xcschemes
│ │ │ └── Runner.xcscheme
│ ├── Runner.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ └── WorkspaceSettings.xcsettings
│ ├── Runner
│ │ ├── AppDelegate.swift
│ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ ├── Icon-App-50x50@1x.png
│ │ │ │ ├── Icon-App-50x50@2x.png
│ │ │ │ ├── Icon-App-57x57@1x.png
│ │ │ │ ├── Icon-App-57x57@2x.png
│ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ ├── Icon-App-72x72@1x.png
│ │ │ │ ├── Icon-App-72x72@2x.png
│ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ ├── LaunchBackground.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── background.png
│ │ │ └── LaunchImage.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── LaunchImage.png
│ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ └── README.md
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ ├── Info.plist
│ │ └── Runner-Bridging-Header.h
│ ├── RunnerTests
│ │ └── RunnerTests.swift
│ └── fastlane
│ │ ├── Appfile
│ │ ├── Fastfile
│ │ └── README.md
│ ├── lib
│ ├── main.dart
│ └── root_feature.dart
│ ├── mockoon.json
│ ├── pubspec.yaml
│ ├── test
│ └── widget_test.dart
│ └── web
│ ├── favicon.png
│ ├── icons
│ ├── Icon-192.png
│ ├── Icon-512.png
│ ├── Icon-maskable-192.png
│ └── Icon-maskable-512.png
│ ├── index.html
│ ├── manifest.json
│ └── splash
│ └── img
│ ├── dark-1x.png
│ ├── dark-2x.png
│ ├── dark-3x.png
│ ├── dark-4x.png
│ ├── light-1x.png
│ ├── light-2x.png
│ ├── light-3x.png
│ └── light-4x.png
├── examples
├── conference
│ ├── feature_conference
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── api
│ │ │ │ └── conference_api.dart
│ │ │ ├── content
│ │ │ │ ├── conference.dart
│ │ │ │ ├── conference.g.dart
│ │ │ │ ├── edition.dart
│ │ │ │ ├── edition.g.dart
│ │ │ │ ├── room.dart
│ │ │ │ ├── room.g.dart
│ │ │ │ ├── schedule.dart
│ │ │ │ ├── schedule.g.dart
│ │ │ │ ├── session.dart
│ │ │ │ ├── session.g.dart
│ │ │ │ ├── speaker.dart
│ │ │ │ ├── speaker.g.dart
│ │ │ │ ├── sponsor.dart
│ │ │ │ ├── sponsor.g.dart
│ │ │ │ ├── track.dart
│ │ │ │ ├── track.g.dart
│ │ │ │ ├── venue.dart
│ │ │ │ └── venue.g.dart
│ │ │ ├── feature.dart
│ │ │ ├── feature_conference.dart
│ │ │ ├── layouts
│ │ │ │ ├── conference_card_layout.dart
│ │ │ │ ├── conference_card_layout.g.dart
│ │ │ │ ├── conference_layout.dart
│ │ │ │ ├── conference_layout.g.dart
│ │ │ │ ├── edition_layout.dart
│ │ │ │ ├── edition_layout.g.dart
│ │ │ │ ├── edition_summary_layout.dart
│ │ │ │ ├── edition_summary_layout.g.dart
│ │ │ │ ├── room_layout.dart
│ │ │ │ ├── session_layout.dart
│ │ │ │ ├── session_layout.g.dart
│ │ │ │ ├── session_summary_layout.dart
│ │ │ │ ├── session_summary_layout.g.dart
│ │ │ │ ├── speaker_chip_layout.dart
│ │ │ │ ├── speaker_chip_layout.g.dart
│ │ │ │ ├── speaker_layout.dart
│ │ │ │ ├── speaker_layout.g.dart
│ │ │ │ ├── sponsor_layout.dart
│ │ │ │ ├── sponsor_layout.g.dart
│ │ │ │ ├── track_chip_layout.dart
│ │ │ │ ├── track_chip_layout.g.dart
│ │ │ │ ├── track_layout.dart
│ │ │ │ ├── track_layout.g.dart
│ │ │ │ ├── venue_layout.dart
│ │ │ │ └── venue_layout.g.dart
│ │ │ ├── pages
│ │ │ │ ├── conference_detail_page.dart
│ │ │ │ ├── conference_root_page.dart
│ │ │ │ ├── edition_detail_page.dart
│ │ │ │ ├── edition_shell_page.dart
│ │ │ │ ├── session_detail_page.dart
│ │ │ │ ├── sessions_page.dart
│ │ │ │ ├── speaker_detail_page.dart
│ │ │ │ ├── speakers_page.dart
│ │ │ │ ├── track_detail_page.dart
│ │ │ │ └── tracks_page.dart
│ │ │ ├── routes.dart
│ │ │ ├── utils.dart
│ │ │ └── widgets
│ │ │ │ └── conference_route_scaffold.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── feature_conference_test.dart
│ └── schema
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── RELATIONSHIPS.md
│ │ ├── package.json
│ │ ├── src
│ │ ├── documents
│ │ │ ├── conference.ts
│ │ │ ├── edition.ts
│ │ │ ├── session.ts
│ │ │ ├── speaker.ts
│ │ │ ├── sponsor.ts
│ │ │ ├── track.ts
│ │ │ └── venue.ts
│ │ ├── index.ts
│ │ └── objects
│ │ │ ├── room.ts
│ │ │ └── schedule.ts
│ │ ├── tsconfig.json
│ │ └── tsup.config.ts
├── feature_counter
│ ├── .gitignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── build.yaml
│ ├── lib
│ │ ├── feature.dart
│ │ └── feature_counter.dart
│ ├── pubspec.yaml
│ └── test
│ │ └── feature_counter_test.dart
├── food
│ ├── feature_food
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── action
│ │ │ │ ├── select_menu_item.dart
│ │ │ │ └── select_menu_item.g.dart
│ │ │ ├── api.dart
│ │ │ ├── content
│ │ │ │ ├── food_item.dart
│ │ │ │ ├── food_item.g.dart
│ │ │ │ ├── food_item_default_layout.dart
│ │ │ │ ├── selected_food_item.dart
│ │ │ │ └── selected_food_item.g.dart
│ │ │ ├── feature.dart
│ │ │ ├── feature_food.dart
│ │ │ └── routes.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── feature_food_test.dart
│ └── food
│ │ ├── package.json
│ │ ├── pnpm-lock.yaml
│ │ ├── src
│ │ ├── index.ts
│ │ └── menu-item.ts
│ │ └── tsconfig.json
├── misc
│ ├── feature_misc
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── action
│ │ │ │ ├── show_barcode.dart
│ │ │ │ └── show_barcode.g.dart
│ │ │ ├── condition
│ │ │ │ ├── part_of_day.dart
│ │ │ │ └── part_of_day.g.dart
│ │ │ ├── content
│ │ │ │ ├── api
│ │ │ │ │ ├── dummy_json_api_content.dart
│ │ │ │ │ ├── dummy_json_api_content.g.dart
│ │ │ │ │ ├── model.dart
│ │ │ │ │ ├── model.g.dart
│ │ │ │ │ └── widgets.dart
│ │ │ │ ├── card_layout_di_store.dart
│ │ │ │ ├── card_layout_di_store.g.dart
│ │ │ │ ├── live_card.dart
│ │ │ │ ├── live_card.g.dart
│ │ │ │ ├── product
│ │ │ │ │ ├── default_layout.dart
│ │ │ │ │ ├── default_layout.g.dart
│ │ │ │ │ ├── mini_view_layout.dart
│ │ │ │ │ ├── mini_view_layout.g.dart
│ │ │ │ │ ├── product_card.dart
│ │ │ │ │ └── product_card.g.dart
│ │ │ │ ├── score_card.dart
│ │ │ │ └── score_card.g.dart
│ │ │ ├── feature.dart
│ │ │ ├── feature_misc.dart
│ │ │ └── lifecycle_handlers
│ │ │ │ ├── di_registration_lifecycle_handler.dart
│ │ │ │ ├── di_registration_lifecycle_handler.g.dart
│ │ │ │ ├── simulated_delay_lifecycle_handler.dart
│ │ │ │ └── simulated_delay_lifecycle_handler.g.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── feature_misc_test.dart
│ └── misc
│ │ ├── .eslintrc.mjs
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── pnpm-lock.yaml
│ │ ├── src
│ │ ├── action
│ │ │ └── show-barcode.ts
│ │ ├── condition
│ │ │ └── part-of-day.ts
│ │ ├── content
│ │ │ ├── diStore-card-layout.ts
│ │ │ ├── dummy-json-api.ts
│ │ │ ├── live-card.ts
│ │ │ ├── missing.ts
│ │ │ ├── product-card.ts
│ │ │ └── score-card.ts
│ │ ├── index.ts
│ │ └── lifecycle-handlers
│ │ │ ├── diRegistrationLifecycleHandler.ts
│ │ │ └── simulatedDelayLifecycleHandler.ts
│ │ ├── tsconfig.json
│ │ └── tsup.config.ts
├── puzzles
│ ├── feature_puzzles
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── assets
│ │ │ ├── background.jpg
│ │ │ ├── boat.png
│ │ │ ├── clouds.jpg
│ │ │ └── water.jpg
│ │ ├── lib
│ │ │ ├── action
│ │ │ │ ├── select_level.dart
│ │ │ │ └── select_level.g.dart
│ │ │ ├── api
│ │ │ │ ├── model
│ │ │ │ │ ├── level.dart
│ │ │ │ │ └── level.g.dart
│ │ │ │ └── puzzles_client.dart
│ │ │ ├── feature.dart
│ │ │ ├── feature_puzzles.dart
│ │ │ ├── routes.dart
│ │ │ ├── ui
│ │ │ │ ├── content
│ │ │ │ │ ├── level_section.dart
│ │ │ │ │ └── level_section.g.dart
│ │ │ │ ├── layout
│ │ │ │ │ ├── level_layout.dart
│ │ │ │ │ └── level_layout.g.dart
│ │ │ │ ├── loader
│ │ │ │ │ └── level_loader.dart
│ │ │ │ ├── river_level
│ │ │ │ │ ├── dialogs
│ │ │ │ │ │ └── dialogs.dart
│ │ │ │ │ ├── river_engine.dart
│ │ │ │ │ ├── river_level.dart
│ │ │ │ │ ├── river_level_store.dart
│ │ │ │ │ └── widgets
│ │ │ │ │ │ ├── boat_widget.dart
│ │ │ │ │ │ ├── character_widget.dart
│ │ │ │ │ │ ├── ground_widget.dart
│ │ │ │ │ │ ├── level_play_widget.dart
│ │ │ │ │ │ ├── menu_widget.dart
│ │ │ │ │ │ ├── river_widget.dart
│ │ │ │ │ │ └── start_level_widget.dart
│ │ │ │ └── widgets
│ │ │ │ │ ├── animated_heading_text.dart
│ │ │ │ │ ├── puzzle_button.dart
│ │ │ │ │ └── scale_effect_button.dart
│ │ │ └── utils
│ │ │ │ ├── constants.dart
│ │ │ │ └── extensions.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ ├── routes_test.dart
│ │ │ └── ui
│ │ │ └── river_level
│ │ │ └── river_engine_test.dart
│ └── puzzles
│ │ ├── package.json
│ │ ├── pnpm-lock.yaml
│ │ ├── src
│ │ ├── index.ts
│ │ ├── level-action.ts
│ │ ├── level-layout.ts
│ │ ├── puzzle.tsx
│ │ └── section.ts
│ │ └── tsconfig.json
├── settings
│ ├── feature_settings
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── analysis_options.yaml
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── feature_settings.dart
│ │ │ ├── settings.dart
│ │ │ └── settings.g.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── feature_settings_test.dart
│ └── settings-sanity-schema
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.tsx
│ │ ├── package.json
│ │ ├── pnpm-lock.yaml
│ │ └── tsconfig.json
├── shared
│ ├── chakra_shared
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── analysis_options.yaml
│ │ ├── lib
│ │ │ ├── chakra_plugin_auth.dart
│ │ │ ├── chakra_shared.dart
│ │ │ └── ui
│ │ │ │ ├── detail_builder.dart
│ │ │ │ ├── floating_app_bar.dart
│ │ │ │ └── youtube_video_player.dart
│ │ └── pubspec.yaml
│ ├── design_system
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── assets
│ │ │ └── fonts
│ │ │ │ └── poppins
│ │ │ │ ├── Poppins-Black.ttf
│ │ │ │ ├── Poppins-BlackItalic.ttf
│ │ │ │ ├── Poppins-Bold.ttf
│ │ │ │ ├── Poppins-BoldItalic.ttf
│ │ │ │ ├── Poppins-ExtraBold.ttf
│ │ │ │ ├── Poppins-ExtraBoldItalic.ttf
│ │ │ │ ├── Poppins-ExtraLight.ttf
│ │ │ │ ├── Poppins-ExtraLightItalic.ttf
│ │ │ │ ├── Poppins-Italic.ttf
│ │ │ │ ├── Poppins-Light.ttf
│ │ │ │ ├── Poppins-LightItalic.ttf
│ │ │ │ ├── Poppins-Medium.ttf
│ │ │ │ ├── Poppins-MediumItalic.ttf
│ │ │ │ ├── Poppins-Regular.ttf
│ │ │ │ ├── Poppins-SemiBold.ttf
│ │ │ │ ├── Poppins-SemiBoldItalic.ttf
│ │ │ │ ├── Poppins-Thin.ttf
│ │ │ │ └── Poppins-ThinItalic.ttf
│ │ ├── example
│ │ │ └── main.dart
│ │ ├── lib
│ │ │ ├── core
│ │ │ │ ├── aspect_ratio.dart
│ │ │ │ ├── border_radius.dart
│ │ │ │ ├── border_width.dart
│ │ │ │ ├── gap.dart
│ │ │ │ ├── index.dart
│ │ │ │ ├── linear_gradient.dart
│ │ │ │ ├── sizing.dart
│ │ │ │ ├── spacing.dart
│ │ │ │ ├── text_theme.dart
│ │ │ │ └── tmdb_text_theme.dart
│ │ │ ├── design_system.dart
│ │ │ ├── generated
│ │ │ │ └── theme.dart
│ │ │ └── utils
│ │ │ │ └── extensions.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── vyuh_design_system_test.dart
│ └── tmdb_client
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── analysis_options.yaml
│ │ ├── build.yaml
│ │ ├── lib
│ │ ├── model
│ │ │ ├── base.dart
│ │ │ ├── base.g.dart
│ │ │ ├── genre.dart
│ │ │ ├── genre.g.dart
│ │ │ ├── image.dart
│ │ │ ├── image.g.dart
│ │ │ ├── movie.dart
│ │ │ ├── movie.g.dart
│ │ │ ├── person.dart
│ │ │ ├── person.g.dart
│ │ │ ├── review.dart
│ │ │ ├── review.g.dart
│ │ │ ├── series.dart
│ │ │ ├── series.g.dart
│ │ │ ├── trailer.dart
│ │ │ └── trailer.g.dart
│ │ ├── movies_api.dart
│ │ ├── person_api.dart
│ │ ├── person_api.g.dart
│ │ ├── search_api.dart
│ │ ├── series_api.dart
│ │ ├── tmdb_client.dart
│ │ └── util.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ └── tmdb_client_test.dart
├── tmdb
│ ├── feature_tmdb
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── assets
│ │ │ └── images
│ │ │ │ ├── action.png
│ │ │ │ ├── adventure.png
│ │ │ │ ├── animation.png
│ │ │ │ ├── comedy.png
│ │ │ │ ├── crime.png
│ │ │ │ ├── documentary.png
│ │ │ │ ├── drama.png
│ │ │ │ ├── family.png
│ │ │ │ ├── fantasy.png
│ │ │ │ ├── history.png
│ │ │ │ ├── horror.png
│ │ │ │ ├── kids.png
│ │ │ │ ├── music.png
│ │ │ │ ├── mystery.png
│ │ │ │ ├── news.png
│ │ │ │ ├── reality.png
│ │ │ │ ├── romance.png
│ │ │ │ ├── scienceFiction.png
│ │ │ │ ├── soap.png
│ │ │ │ ├── talk.png
│ │ │ │ ├── thriller.png
│ │ │ │ ├── tvMovie.png
│ │ │ │ ├── war.png
│ │ │ │ └── western.png
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── action
│ │ │ │ ├── add_to_watchlist.dart
│ │ │ │ ├── add_to_watchlist.g.dart
│ │ │ │ ├── drop_down_selection.dart
│ │ │ │ └── drop_down_selection.g.dart
│ │ │ ├── content
│ │ │ │ ├── api_config_genres.dart
│ │ │ │ ├── api_config_genres.g.dart
│ │ │ │ ├── api_config_movies.dart
│ │ │ │ ├── api_config_movies.g.dart
│ │ │ │ ├── api_config_series.dart
│ │ │ │ ├── api_config_series.g.dart
│ │ │ │ ├── dropdown_menu.dart
│ │ │ │ ├── dropdown_menu.g.dart
│ │ │ │ ├── enums
│ │ │ │ │ └── config_enum.dart
│ │ │ │ ├── movie_detail_section.dart
│ │ │ │ ├── movie_detail_section.g.dart
│ │ │ │ ├── movie_watchlist_section.dart
│ │ │ │ ├── movie_watchlist_section.g.dart
│ │ │ │ ├── person_detail_section.dart
│ │ │ │ ├── person_detail_section.g.dart
│ │ │ │ ├── search_section.dart
│ │ │ │ ├── search_section.g.dart
│ │ │ │ ├── series_detail_section.dart
│ │ │ │ ├── series_detail_section.g.dart
│ │ │ │ ├── series_watchlist_section.dart
│ │ │ │ ├── series_watchlist_section.g.dart
│ │ │ │ ├── tmdb_list_layout.dart
│ │ │ │ ├── tmdb_list_layout.g.dart
│ │ │ │ ├── tmdb_media_toggle_layout.dart
│ │ │ │ ├── tmdb_media_toggle_layout.g.dart
│ │ │ │ ├── tmdb_single_item_layout.dart
│ │ │ │ ├── tmdb_single_item_layout.g.dart
│ │ │ │ └── watchlist_view.dart
│ │ │ ├── feature.dart
│ │ │ ├── feature_tmdb.dart
│ │ │ ├── routes.dart
│ │ │ ├── store
│ │ │ │ └── tmdb_search_store.dart
│ │ │ ├── tmdb_store.dart
│ │ │ ├── ui
│ │ │ │ ├── collection_view.dart
│ │ │ │ ├── common_widgets
│ │ │ │ │ ├── box_widget.dart
│ │ │ │ │ └── vote_percentage.dart
│ │ │ │ ├── date_and_details_widget.dart
│ │ │ │ ├── formatters.dart
│ │ │ │ ├── movie_details.dart
│ │ │ │ ├── person_details.dart
│ │ │ │ ├── popularity_widget.dart
│ │ │ │ ├── search_screen.dart
│ │ │ │ ├── section_title.dart
│ │ │ │ ├── sections
│ │ │ │ │ ├── footer.dart
│ │ │ │ │ ├── gallery.dart
│ │ │ │ │ ├── hero.dart
│ │ │ │ │ ├── movie_card.dart
│ │ │ │ │ ├── people_card.dart
│ │ │ │ │ ├── preview_list.dart
│ │ │ │ │ ├── provider.dart
│ │ │ │ │ ├── review_card.dart
│ │ │ │ │ ├── series_card.dart
│ │ │ │ │ ├── statistics.dart
│ │ │ │ │ └── trailer.dart
│ │ │ │ ├── series_details.dart
│ │ │ │ ├── widget
│ │ │ │ │ ├── add_to_watchlist_button.dart
│ │ │ │ │ ├── carousel_widget.dart
│ │ │ │ │ ├── circular_carousel.dart
│ │ │ │ │ └── dot_widget.dart
│ │ │ │ └── zoomable_image.dart
│ │ │ └── utils
│ │ │ │ ├── assets.dart
│ │ │ │ ├── constants.dart
│ │ │ │ └── utils.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ ├── content
│ │ │ └── api_config_collection_test.dart
│ │ │ ├── feature_tmdb_test.dart
│ │ │ ├── routes_test.dart
│ │ │ └── routes_test.mocks.dart
│ └── tmdb
│ │ ├── package.json
│ │ ├── pnpm-lock.yaml
│ │ ├── src
│ │ ├── action
│ │ │ ├── addToWatchlist.ts
│ │ │ └── drop-down-action.ts
│ │ ├── api-config
│ │ │ ├── genres-config.ts
│ │ │ ├── movies-config.ts
│ │ │ └── series-config.ts
│ │ ├── dropdown-menu.ts
│ │ ├── index.ts
│ │ ├── movie-section.ts
│ │ ├── movie-watchlist-section.ts
│ │ ├── person-detail-section.ts
│ │ ├── search-section.ts
│ │ ├── series-section.ts
│ │ ├── series-watchlist-section.ts
│ │ ├── tmdb-list-layout.ts
│ │ ├── tmdb-media-toggle-layout.ts
│ │ └── tmdb-single-item-layout.ts
│ │ └── tsconfig.json
├── unsplash
│ └── feature_unsplash
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ ├── feature.dart
│ │ ├── feature_unsplash.dart
│ │ ├── routes.dart
│ │ ├── ui
│ │ │ ├── collection_detail.dart
│ │ │ ├── collection_view.dart
│ │ │ ├── home.dart
│ │ │ ├── photo_card.dart
│ │ │ ├── photo_detail.dart
│ │ │ ├── search_view.dart
│ │ │ └── topic_detail.dart
│ │ └── unsplash_store.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ └── feature_unsplash_test.dart
└── wonderous
│ ├── feature_wonderous
│ ├── .gitignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── build.yaml
│ ├── lib
│ │ ├── api
│ │ │ ├── wonder.dart
│ │ │ ├── wonder.g.dart
│ │ │ └── wonder_client.dart
│ │ ├── content
│ │ │ ├── query_configurations.dart
│ │ │ ├── query_configurations.g.dart
│ │ │ ├── section.dart
│ │ │ ├── section.g.dart
│ │ │ ├── wonder_list_item.dart
│ │ │ └── wonder_list_item.g.dart
│ │ ├── feature.dart
│ │ ├── feature_wonderous.dart
│ │ ├── routes.dart
│ │ └── ui
│ │ │ ├── common.dart
│ │ │ ├── formatters.dart
│ │ │ ├── page_view_layout.dart
│ │ │ ├── page_view_layout.g.dart
│ │ │ └── sections
│ │ │ ├── construction_section.dart
│ │ │ ├── events_section.dart
│ │ │ ├── hero_section.dart
│ │ │ ├── history_section.dart
│ │ │ ├── location_info_section.dart
│ │ │ └── photos_section.dart
│ ├── pubspec.yaml
│ └── test
│ │ └── feature_wonderous_test.dart
│ └── wonderous
│ ├── package.json
│ ├── pnpm-lock.yaml
│ ├── src
│ ├── index.ts
│ ├── page-view-group-layout.ts
│ ├── query-configurations.ts
│ ├── section.ts
│ └── wonder.tsx
│ └── tsconfig.json
├── justfile
├── melos.yaml
├── package.json
├── packages
├── plugins
│ ├── vyuh_plugin_storage_hive
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ ├── hive_storage_plugin.dart
│ │ │ └── vyuh_plugin_storage_hive.dart
│ │ └── pubspec.yaml
│ ├── vyuh_plugin_storage_secure
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example
│ │ │ └── README.md
│ │ ├── lib
│ │ │ ├── secure_storage_plugin.dart
│ │ │ └── vyuh_plugin_storage_secure.dart
│ │ └── pubspec.yaml
│ └── vyuh_plugin_telemetry_provider_console
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ └── vyuh_plugin_telemetry_provider_console.dart
│ │ └── pubspec.yaml
├── sanity
│ ├── flutter_sanity_portable_text
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── example
│ │ │ ├── .gitignore
│ │ │ ├── README.md
│ │ │ ├── android
│ │ │ │ ├── .gitignore
│ │ │ │ ├── app
│ │ │ │ │ ├── build.gradle
│ │ │ │ │ └── src
│ │ │ │ │ │ ├── debug
│ │ │ │ │ │ └── AndroidManifest.xml
│ │ │ │ │ │ ├── main
│ │ │ │ │ │ ├── AndroidManifest.xml
│ │ │ │ │ │ ├── kotlin
│ │ │ │ │ │ │ └── com
│ │ │ │ │ │ │ │ └── example
│ │ │ │ │ │ │ │ └── example
│ │ │ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ │ │ └── res
│ │ │ │ │ │ │ ├── drawable-v21
│ │ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ │ ├── drawable
│ │ │ │ │ │ │ └── launch_background.xml
│ │ │ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ │ │ ├── values-night
│ │ │ │ │ │ │ └── styles.xml
│ │ │ │ │ │ │ └── values
│ │ │ │ │ │ │ └── styles.xml
│ │ │ │ │ │ └── profile
│ │ │ │ │ │ └── AndroidManifest.xml
│ │ │ │ ├── build.gradle
│ │ │ │ ├── gradle.properties
│ │ │ │ ├── gradle
│ │ │ │ │ └── wrapper
│ │ │ │ │ │ └── gradle-wrapper.properties
│ │ │ │ └── settings.gradle
│ │ │ ├── ios
│ │ │ │ ├── .gitignore
│ │ │ │ ├── Flutter
│ │ │ │ │ ├── AppFrameworkInfo.plist
│ │ │ │ │ ├── Debug.xcconfig
│ │ │ │ │ └── Release.xcconfig
│ │ │ │ ├── Runner.xcodeproj
│ │ │ │ │ ├── project.pbxproj
│ │ │ │ │ ├── project.xcworkspace
│ │ │ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ └── xcschemes
│ │ │ │ │ │ └── Runner.xcscheme
│ │ │ │ ├── Runner.xcworkspace
│ │ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ │ └── xcshareddata
│ │ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ │ ├── Runner
│ │ │ │ │ ├── AppDelegate.swift
│ │ │ │ │ ├── Assets.xcassets
│ │ │ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ │ │ ├── Contents.json
│ │ │ │ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ │ │ │ └── LaunchImage.imageset
│ │ │ │ │ │ │ ├── Contents.json
│ │ │ │ │ │ │ ├── LaunchImage.png
│ │ │ │ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ │ │ │ └── README.md
│ │ │ │ │ ├── Base.lproj
│ │ │ │ │ │ ├── LaunchScreen.storyboard
│ │ │ │ │ │ └── Main.storyboard
│ │ │ │ │ ├── Info.plist
│ │ │ │ │ └── Runner-Bridging-Header.h
│ │ │ │ └── RunnerTests
│ │ │ │ │ └── RunnerTests.swift
│ │ │ ├── lib
│ │ │ │ └── main.dart
│ │ │ ├── pubspec.yaml
│ │ │ ├── screenshot.png
│ │ │ └── web
│ │ │ │ ├── favicon.png
│ │ │ │ ├── icons
│ │ │ │ ├── Icon-192.png
│ │ │ │ ├── Icon-512.png
│ │ │ │ ├── Icon-maskable-192.png
│ │ │ │ └── Icon-maskable-512.png
│ │ │ │ ├── index.html
│ │ │ │ └── manifest.json
│ │ ├── lib
│ │ │ ├── flutter_sanity_portable_text.dart
│ │ │ ├── model
│ │ │ │ ├── markdef_descriptor.dart
│ │ │ │ ├── text_block.dart
│ │ │ │ └── text_block.g.dart
│ │ │ └── ui
│ │ │ │ ├── portable_text_block.dart
│ │ │ │ ├── portable_text_config.dart
│ │ │ │ └── portable_text_widget.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ ├── custom_test.dart
│ │ │ ├── default_styles_test.dart
│ │ │ ├── errors_test.dart
│ │ │ ├── fundamentals_test.dart
│ │ │ ├── markdef_test.dart
│ │ │ ├── text_block_test.dart
│ │ │ └── util.dart
│ ├── sanity_client
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── example
│ │ │ ├── .gitignore
│ │ │ ├── README.md
│ │ │ ├── lib
│ │ │ │ ├── example.dart
│ │ │ │ └── live_example.dart
│ │ │ └── pubspec.yaml
│ │ ├── lib
│ │ │ ├── client.dart
│ │ │ ├── config.dart
│ │ │ ├── exceptions.dart
│ │ │ ├── live.dart
│ │ │ ├── response_types.dart
│ │ │ ├── response_types.g.dart
│ │ │ ├── sanity_client.dart
│ │ │ ├── sanity_request.dart
│ │ │ ├── sanity_url_builder.dart
│ │ │ └── types.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ ├── dataset_test.dart
│ │ │ ├── query_test.dart
│ │ │ ├── sanity_config_test.dart
│ │ │ ├── url_builder_test.dart
│ │ │ └── util.dart
│ └── vyuh_plugin_content_provider_sanity
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ ├── exception.dart
│ │ ├── live_provider.dart
│ │ ├── processor.dart
│ │ └── vyuh_plugin_content_provider_sanity.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ └── vyuh_plugin_content_provider_sanity_test.dart
├── system
│ ├── vyuh_cache
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example
│ │ │ └── main.dart
│ │ ├── lib
│ │ │ ├── memory_cache_storage.dart
│ │ │ └── vyuh_cache.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── vyuh_cache_test.dart
│ ├── vyuh_content_widget
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── example
│ │ │ └── README.md
│ │ ├── lib
│ │ │ ├── document.dart
│ │ │ ├── document.g.dart
│ │ │ ├── vyuh_content_binding.dart
│ │ │ ├── vyuh_content_widget.dart
│ │ │ └── widget.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ ├── utils.dart
│ │ │ ├── vyuh_content_binding_test.dart
│ │ │ ├── vyuh_content_widget_builders_test.dart
│ │ │ └── vyuh_content_widget_test.dart
│ ├── vyuh_core
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── asserts.dart
│ │ │ ├── extension.dart
│ │ │ ├── feature_descriptor.dart
│ │ │ ├── plugin
│ │ │ │ ├── analytics
│ │ │ │ │ ├── analytics_plugin.dart
│ │ │ │ │ ├── analytics_provider.dart
│ │ │ │ │ ├── content_extension.dart
│ │ │ │ │ └── noop_analytics_provider.dart
│ │ │ │ ├── auth
│ │ │ │ │ ├── anonymous_auth_plugin.dart
│ │ │ │ │ ├── auth_plugin.dart
│ │ │ │ │ ├── exceptions.dart
│ │ │ │ │ └── user.dart
│ │ │ │ ├── content
│ │ │ │ │ ├── content_item.dart
│ │ │ │ │ ├── content_plugin.dart
│ │ │ │ │ ├── content_provider.dart
│ │ │ │ │ ├── debug_modifier.dart
│ │ │ │ │ ├── live_content_provider.dart
│ │ │ │ │ ├── noop_content_plugin.dart
│ │ │ │ │ ├── noop_content_provider.dart
│ │ │ │ │ ├── reference.dart
│ │ │ │ │ ├── reference.g.dart
│ │ │ │ │ ├── route_base.dart
│ │ │ │ │ ├── route_base.g.dart
│ │ │ │ │ ├── serialization.dart
│ │ │ │ │ ├── type_descriptor.dart
│ │ │ │ │ ├── unknown.dart
│ │ │ │ │ └── unknown.g.dart
│ │ │ │ ├── di
│ │ │ │ │ ├── di_plugin.dart
│ │ │ │ │ └── plugin_di_get_it.dart
│ │ │ │ ├── env
│ │ │ │ │ ├── default_env_plugin.dart
│ │ │ │ │ ├── env_plugin.dart
│ │ │ │ │ └── noop_env_plugin.dart
│ │ │ │ ├── event_plugin.dart
│ │ │ │ ├── feature_flag.dart
│ │ │ │ ├── navigation
│ │ │ │ │ ├── default_navigation_plugin.dart
│ │ │ │ │ ├── fallback_route_page_builder.dart
│ │ │ │ │ └── navigation.dart
│ │ │ │ ├── network
│ │ │ │ │ ├── http_network_plugin.dart
│ │ │ │ │ └── network_plugin.dart
│ │ │ │ ├── plugin.dart
│ │ │ │ ├── plugin_descriptor.dart
│ │ │ │ ├── storage
│ │ │ │ │ ├── in_memory_secure_storage_plugin.dart
│ │ │ │ │ ├── in_memory_storage_plugin.dart
│ │ │ │ │ ├── storage.dart
│ │ │ │ │ └── storage_plugin.dart
│ │ │ │ └── telemetry
│ │ │ │ │ ├── logger.dart
│ │ │ │ │ ├── noop_telemetry_provider.dart
│ │ │ │ │ ├── telemetry_plugin.dart
│ │ │ │ │ └── telemetry_provider.dart
│ │ │ ├── runtime
│ │ │ │ ├── cms_route.dart
│ │ │ │ ├── init_tracker.dart
│ │ │ │ ├── platform
│ │ │ │ │ ├── default_platform.dart
│ │ │ │ │ ├── default_route_loader.dart
│ │ │ │ │ ├── error_view.dart
│ │ │ │ │ ├── events.dart
│ │ │ │ │ ├── framework_init_view.dart
│ │ │ │ │ ├── platform_init_tracker.dart
│ │ │ │ │ ├── powered_by_widget.dart
│ │ │ │ │ ├── uninitialized_platform.dart
│ │ │ │ │ └── vyuh_platform.dart
│ │ │ │ ├── platform_widget_builder.dart
│ │ │ │ ├── run_app.dart
│ │ │ │ └── vyuh_binding.dart
│ │ │ └── vyuh_core.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ ├── event_plugin_test.dart
│ │ │ ├── network_plugin_test.dart
│ │ │ ├── telemetry_plugin_test.dart
│ │ │ └── vyuh_platform_test.dart
│ ├── vyuh_extension_content
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── analysis_options.yaml
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── content
│ │ │ │ ├── action.dart
│ │ │ │ ├── action.g.dart
│ │ │ │ ├── condition.dart
│ │ │ │ ├── condition.g.dart
│ │ │ │ ├── content_builder.dart
│ │ │ │ └── content_descriptor.dart
│ │ │ ├── content_extension_builder.dart
│ │ │ ├── content_extension_descriptor.dart
│ │ │ ├── plugin
│ │ │ │ ├── content_plugin.dart
│ │ │ │ └── extension.dart
│ │ │ ├── preview
│ │ │ │ └── preview_context.dart
│ │ │ ├── ui
│ │ │ │ ├── document_builder.dart
│ │ │ │ ├── document_future_builder.dart
│ │ │ │ ├── document_stream_builder.dart
│ │ │ │ ├── route_builder.dart
│ │ │ │ ├── route_builder_proxy.dart
│ │ │ │ └── scoped_di_widget.dart
│ │ │ └── vyuh_extension_content.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ ├── content_builder_test.dart
│ │ │ ├── content_extension_builder_test.dart
│ │ │ ├── content_modifier_test.dart
│ │ │ ├── content_plugin_test.dart
│ │ │ ├── layout_configuration_test.dart
│ │ │ ├── utils.dart
│ │ │ └── vyuh_extension_content_test.dart
│ ├── vyuh_feature_auth
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── auth_user_card_layout.dart
│ │ │ ├── content
│ │ │ │ ├── email_password_form.dart
│ │ │ │ ├── email_password_form.g.dart
│ │ │ │ ├── email_password_form_layout.dart
│ │ │ │ ├── email_password_form_layout.g.dart
│ │ │ │ ├── forgot_password_form.dart
│ │ │ │ ├── forgot_password_form.g.dart
│ │ │ │ ├── forgot_password_form_layout.dart
│ │ │ │ ├── forgot_password_form_layout.g.dart
│ │ │ │ ├── hint_action_text.dart
│ │ │ │ ├── hint_action_text.g.dart
│ │ │ │ ├── oauth_signin.dart
│ │ │ │ ├── oauth_signin.g.dart
│ │ │ │ ├── oauth_signin_layout.dart
│ │ │ │ ├── oauth_signin_layout.g.dart
│ │ │ │ ├── phone_otp_form.dart
│ │ │ │ ├── phone_otp_form.g.dart
│ │ │ │ ├── phone_otp_form_layout.dart
│ │ │ │ ├── phone_otp_form_layout.g.dart
│ │ │ │ ├── profile_card.dart
│ │ │ │ ├── profile_card.g.dart
│ │ │ │ ├── profile_form_layout.dart
│ │ │ │ └── profile_form_layout.g.dart
│ │ │ ├── feature.dart
│ │ │ ├── ui
│ │ │ │ ├── auth_form_builder.dart
│ │ │ │ ├── auth_state_widget.dart
│ │ │ │ ├── email_password_view.dart
│ │ │ │ ├── forgot_password_view.dart
│ │ │ │ ├── form_fields.dart
│ │ │ │ ├── oauth_sign_in_view.dart
│ │ │ │ ├── phone_otp_view.dart
│ │ │ │ └── social_icons.dart
│ │ │ └── vyuh_feature_auth.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── vyuh_feature_firebase_auth_test.dart
│ ├── vyuh_feature_developer
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example
│ │ │ └── main.dart
│ │ ├── lib
│ │ │ ├── components
│ │ │ │ ├── items.dart
│ │ │ │ ├── route_list.dart
│ │ │ │ ├── standard_plugin_view.dart
│ │ │ │ └── sticky_section.dart
│ │ │ ├── pages
│ │ │ │ ├── analytics_plugin_detail.dart
│ │ │ │ ├── content_extension_detail.dart
│ │ │ │ ├── content_plugin_detail.dart
│ │ │ │ ├── feature_detail.dart
│ │ │ │ ├── playground
│ │ │ │ │ ├── content_playground.dart
│ │ │ │ │ └── widgets
│ │ │ │ │ │ ├── content_list.dart
│ │ │ │ │ │ ├── content_list_item.dart
│ │ │ │ │ │ ├── feature_item.dart
│ │ │ │ │ │ ├── no_preview_card.dart
│ │ │ │ │ │ ├── preview.dart
│ │ │ │ │ │ ├── preview_panel.dart
│ │ │ │ │ │ └── widgets.dart
│ │ │ │ ├── plugin_and_feature_list.dart
│ │ │ │ ├── plugin_detail.dart
│ │ │ │ └── telemetry_plugin_detail.dart
│ │ │ ├── routes.dart
│ │ │ └── vyuh_feature_developer.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── vyuh_feature_developer_test.dart
│ ├── vyuh_feature_onboarding
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── default_layout.dart
│ │ │ ├── default_layout.g.dart
│ │ │ ├── feature.dart
│ │ │ ├── onboarding.dart
│ │ │ ├── onboarding.g.dart
│ │ │ └── vyuh_feature_onboarding.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── vyuh_feature_onboarding_test.dart
│ ├── vyuh_feature_system
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build.yaml
│ │ ├── lib
│ │ │ ├── action
│ │ │ │ ├── alert.dart
│ │ │ │ ├── alert.g.dart
│ │ │ │ ├── conditional_action.dart
│ │ │ │ ├── conditional_action.g.dart
│ │ │ │ ├── delay.dart
│ │ │ │ ├── delay.g.dart
│ │ │ │ ├── drawer.dart
│ │ │ │ ├── drawer.g.dart
│ │ │ │ ├── navigate_back.dart
│ │ │ │ ├── navigate_back.g.dart
│ │ │ │ ├── navigation.dart
│ │ │ │ ├── navigation.g.dart
│ │ │ │ ├── open_in_dialog.dart
│ │ │ │ ├── open_in_dialog.g.dart
│ │ │ │ ├── open_url.dart
│ │ │ │ ├── open_url.g.dart
│ │ │ │ ├── restart.dart
│ │ │ │ ├── restart.g.dart
│ │ │ │ ├── route_refresh.dart
│ │ │ │ ├── route_refresh.g.dart
│ │ │ │ ├── snack_bar.dart
│ │ │ │ ├── snack_bar.g.dart
│ │ │ │ ├── toggle_theme.dart
│ │ │ │ └── toggle_theme.g.dart
│ │ │ ├── api_handler
│ │ │ │ ├── json_path_api_configuration.dart
│ │ │ │ └── json_path_api_configuration.g.dart
│ │ │ ├── condition
│ │ │ │ ├── boolean.dart
│ │ │ │ ├── boolean.g.dart
│ │ │ │ ├── current_platform.dart
│ │ │ │ ├── current_theme_mode.dart
│ │ │ │ ├── feature_flag.dart
│ │ │ │ ├── feature_flag.g.dart
│ │ │ │ ├── screen_size.dart
│ │ │ │ └── user_authenticated.dart
│ │ │ ├── content
│ │ │ │ ├── accordion.dart
│ │ │ │ ├── accordion.g.dart
│ │ │ │ ├── api_content.dart
│ │ │ │ ├── api_content.g.dart
│ │ │ │ ├── card
│ │ │ │ │ ├── button_layout.dart
│ │ │ │ │ ├── button_layout.g.dart
│ │ │ │ │ ├── card.dart
│ │ │ │ │ ├── card.g.dart
│ │ │ │ │ ├── default_layout.dart
│ │ │ │ │ ├── default_layout.g.dart
│ │ │ │ │ ├── list_item_layout.dart
│ │ │ │ │ └── list_item_layout.g.dart
│ │ │ │ ├── conditional.dart
│ │ │ │ ├── conditional.g.dart
│ │ │ │ ├── conditional_route
│ │ │ │ │ ├── conditional_route.dart
│ │ │ │ │ ├── conditional_route.g.dart
│ │ │ │ │ └── default_layout.dart
│ │ │ │ ├── divider.dart
│ │ │ │ ├── divider.g.dart
│ │ │ │ ├── document_view
│ │ │ │ │ ├── document_list.dart
│ │ │ │ │ ├── document_list.g.dart
│ │ │ │ │ ├── document_list_layout.dart
│ │ │ │ │ ├── document_list_layout.g.dart
│ │ │ │ │ ├── document_section.dart
│ │ │ │ │ ├── document_section.g.dart
│ │ │ │ │ ├── document_section_layout.dart
│ │ │ │ │ ├── document_section_layout.g.dart
│ │ │ │ │ ├── document_view.dart
│ │ │ │ │ ├── document_view.g.dart
│ │ │ │ │ └── ui
│ │ │ │ │ │ ├── document_builder.dart
│ │ │ │ │ │ └── document_listview_builder.dart
│ │ │ │ ├── empty.dart
│ │ │ │ ├── empty.g.dart
│ │ │ │ ├── group
│ │ │ │ │ ├── carousel_layout.dart
│ │ │ │ │ ├── carousel_layout.g.dart
│ │ │ │ │ ├── default_layout.dart
│ │ │ │ │ ├── default_layout.g.dart
│ │ │ │ │ ├── grid_layout.dart
│ │ │ │ │ ├── grid_layout.g.dart
│ │ │ │ │ ├── group.dart
│ │ │ │ │ ├── group.g.dart
│ │ │ │ │ ├── list_layout.dart
│ │ │ │ │ └── list_layout.g.dart
│ │ │ │ ├── index.dart
│ │ │ │ ├── portable_text
│ │ │ │ │ ├── invoke_action.dart
│ │ │ │ │ ├── invoke_action.g.dart
│ │ │ │ │ ├── portable_text.dart
│ │ │ │ │ └── portable_text.g.dart
│ │ │ │ ├── route
│ │ │ │ │ ├── default_layout.dart
│ │ │ │ │ ├── default_layout.g.dart
│ │ │ │ │ ├── route.dart
│ │ │ │ │ ├── route.g.dart
│ │ │ │ │ ├── route_type.dart
│ │ │ │ │ ├── route_type.g.dart
│ │ │ │ │ ├── single_item_layout.dart
│ │ │ │ │ ├── single_item_layout.g.dart
│ │ │ │ │ ├── tabs.dart
│ │ │ │ │ └── tabs.g.dart
│ │ │ │ ├── unknown.dart
│ │ │ │ ├── video_player.dart
│ │ │ │ └── video_player.g.dart
│ │ │ ├── content_modifiers
│ │ │ │ ├── theme_modifier.dart
│ │ │ │ └── theme_modifier.g.dart
│ │ │ ├── feature.dart
│ │ │ ├── service
│ │ │ │ ├── breakpoint_service.dart
│ │ │ │ └── theme_service.dart
│ │ │ ├── ui
│ │ │ │ ├── carousel.dart
│ │ │ │ ├── conditional_layout.dart
│ │ │ │ ├── conditional_layout.g.dart
│ │ │ │ ├── content_image.dart
│ │ │ │ ├── content_items_scrollview.dart
│ │ │ │ ├── default_page_route_layout.dart
│ │ │ │ ├── dialog_page.dart
│ │ │ │ ├── press_effect.dart
│ │ │ │ ├── route_scaffold.dart
│ │ │ │ ├── single_item_route_scaffold.dart
│ │ │ │ ├── text.dart
│ │ │ │ └── web_view.dart
│ │ │ └── vyuh_feature_system.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── vyuh_feature_essentials_test.dart
│ ├── vyuh_test
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ ├── ready_check.dart
│ │ │ ├── test_utils.dart
│ │ │ └── vyuh_test.dart
│ │ ├── pubspec.yaml
│ │ └── test
│ │ │ └── vyuh_test_test.dart
│ └── vyuh_widgetbook
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── doc
│ │ └── images
│ │ │ └── widgetbook.png
│ │ ├── example
│ │ └── example.md
│ │ ├── lib
│ │ ├── shell.dart
│ │ ├── ui
│ │ │ └── no_preview_card.dart
│ │ └── vyuh_widgetbook.dart
│ │ └── pubspec.yaml
└── vyuh_cli
│ ├── .gitignore
│ ├── .pubignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── _images
│ ├── vyuh_cli.png
│ └── vyuh_cli_doctor.png
│ ├── bin
│ └── vyuh.dart
│ ├── bricks
│ ├── vyuh_feature
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── __brick__
│ │ │ └── {{ name.snakeCase() }}
│ │ │ │ ├── .gitignore
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── build.yaml
│ │ │ │ ├── lib
│ │ │ │ ├── feature.dart
│ │ │ │ └── {{ name.snakeCase() }}.dart
│ │ │ │ ├── pubspec.yaml
│ │ │ │ └── test
│ │ │ │ └── {{ name.snakeCase() }}_test.dart
│ │ ├── brick.yaml
│ │ └── hooks
│ │ │ ├── post_gen.dart
│ │ │ └── pubspec.yaml
│ ├── vyuh_feature_sanity_schema
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── __brick__
│ │ │ └── {{ name.paramCase() }}
│ │ │ │ ├── .gitignore
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── README.md
│ │ │ │ ├── package.json
│ │ │ │ ├── src
│ │ │ │ ├── index.ts
│ │ │ │ └── simple-content.ts
│ │ │ │ ├── tsconfig.json
│ │ │ │ └── tsup.config.ts
│ │ ├── brick.yaml
│ │ └── hooks
│ │ │ ├── post_gen.dart
│ │ │ └── pubspec.yaml
│ ├── vyuh_item
│ │ ├── README.md
│ │ ├── __brick__
│ │ │ ├── layouts
│ │ │ │ ├── {{item_name.snakeCase()}}_layout.dart
│ │ │ │ └── {{item_name.snakeCase()}}_layout.g.dart
│ │ │ ├── {{item_name.snakeCase()}}.dart
│ │ │ └── {{item_name.snakeCase()}}.g.dart
│ │ └── brick.yaml
│ └── vyuh_project
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── __brick__
│ │ └── {{ name.snakeCase() }}
│ │ │ ├── .gitignore
│ │ │ ├── .npmrc
│ │ │ ├── .prettierrc.json
│ │ │ ├── README.md
│ │ │ ├── analysis_options.yaml
│ │ │ ├── apps
│ │ │ └── README.md
│ │ │ ├── features
│ │ │ ├── README.md
│ │ │ └── counter
│ │ │ │ └── feature_counter
│ │ │ │ ├── .gitignore
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── build.yaml
│ │ │ │ ├── lib
│ │ │ │ ├── feature.dart
│ │ │ │ └── feature_counter.dart
│ │ │ │ ├── pubspec.yaml
│ │ │ │ └── test
│ │ │ │ └── feature_counter_test.dart
│ │ │ ├── justfile
│ │ │ ├── melos.yaml
│ │ │ ├── overrides
│ │ │ ├── .env
│ │ │ ├── assets
│ │ │ │ ├── app-icon.png
│ │ │ │ └── launchscreen-image.png
│ │ │ └── lib
│ │ │ │ └── main.dart
│ │ │ ├── package.json
│ │ │ ├── packages
│ │ │ └── README.md
│ │ │ ├── plugins
│ │ │ └── README.md
│ │ │ ├── pnpm-workspace.yaml
│ │ │ └── pubspec.yaml
│ │ ├── brick.yaml
│ │ └── hooks
│ │ ├── commands
│ │ ├── cli_command.dart
│ │ ├── flutter_command.dart
│ │ ├── melos_command.dart
│ │ ├── preconditions_check_command.dart
│ │ └── sanity_command.dart
│ │ ├── post_gen.dart
│ │ └── pubspec.yaml
│ ├── dart_test.yaml
│ ├── example
│ └── README.md
│ ├── justfile
│ ├── lib
│ ├── command_runner.dart
│ ├── commands
│ │ ├── create
│ │ │ ├── base_create_command.dart
│ │ │ ├── command.dart
│ │ │ ├── feature
│ │ │ │ ├── command.dart
│ │ │ │ ├── template.dart
│ │ │ │ └── vyuh_feature_bundle.dart
│ │ │ ├── item
│ │ │ │ ├── command.dart
│ │ │ │ ├── template.dart
│ │ │ │ └── vyuh_item_bundle.dart
│ │ │ ├── project
│ │ │ │ ├── command.dart
│ │ │ │ ├── template.dart
│ │ │ │ └── vyuh_project_bundle.dart
│ │ │ └── schema
│ │ │ │ ├── command.dart
│ │ │ │ ├── template.dart
│ │ │ │ └── vyuh_feature_sanity_schema_bundle.dart
│ │ ├── doctor
│ │ │ ├── command.dart
│ │ │ └── src
│ │ │ │ ├── doctor.dart
│ │ │ │ ├── utils
│ │ │ │ ├── comand_version_validator.dart
│ │ │ │ ├── doctor_validator.dart
│ │ │ │ ├── user_messages.dart
│ │ │ │ └── utils.dart
│ │ │ │ └── validators
│ │ │ │ ├── dart_validator.dart
│ │ │ │ ├── flutter_validator.dart
│ │ │ │ ├── melos_validator.dart
│ │ │ │ ├── node_validator.dart
│ │ │ │ ├── pnpm_validator.dart
│ │ │ │ ├── sanity_validator.dart
│ │ │ │ └── validators.dart
│ │ └── update
│ │ │ └── command.dart
│ ├── template.dart
│ ├── utils
│ │ ├── logger_extension.dart
│ │ └── utils.dart
│ ├── version.dart
│ └── vyuh_cli.dart
│ ├── pubspec.yaml
│ └── test
│ ├── ensure_build_test.dart
│ └── src
│ ├── command_runner_test.dart
│ └── commands
│ └── update_command_test.dart
├── pnpm-workspace.yaml
├── pubspec.lock
├── pubspec.yaml
├── schemas
├── vyuh-sanity-schema-auth
│ ├── .eslintrc.mjs
│ ├── CHANGELOG.md
│ ├── README.md
│ ├── package.json
│ ├── src
│ │ ├── card.layout.authUser.tsx
│ │ ├── content
│ │ │ ├── email-password-form.ts
│ │ │ ├── forgot-password-form.ts
│ │ │ ├── hint-action-text.ts
│ │ │ ├── oauth-signin.ts
│ │ │ ├── phone-otp-form.ts
│ │ │ └── util.ts
│ │ ├── feature.ts
│ │ └── index.ts
│ ├── tsconfig.json
│ └── tsup.config.ts
└── vyuh-sanity-schema-onboarding
│ ├── .eslintrc.mjs
│ ├── .gitignore
│ ├── .npmignore
│ ├── CHANGELOG.md
│ ├── README.md
│ ├── package.json
│ ├── src
│ ├── index.ts
│ └── onboarding-content.ts
│ ├── tsconfig.json
│ └── tsup.config.ts
└── tools
└── update_version.dart
/.changeset/README.md:
--------------------------------------------------------------------------------
1 | # Changesets
2 |
3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
4 | with multi-package repos, or single-package repos to help you version and publish your code. You can
5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets)
6 |
7 | We have a quick list of common questions to get you started engaging with this project in
8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
9 |
--------------------------------------------------------------------------------
/.changeset/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json",
3 | "changelog": "@changesets/cli/changelog",
4 | "commit": false,
5 | "fixed": [["@vyuh/*"]],
6 | "linked": [],
7 | "access": "public",
8 | "baseBranch": "main",
9 | "updateInternalDependencies": "patch",
10 | "ignore": ["*-sanity-schema", "demo-studio"]
11 | }
12 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | **/node_modules
2 | *.log
3 | build
4 | dist
5 | .sanity
6 | .DS_Store
7 | .idea
8 | coverage
9 | .metadata
10 | .dart_tool
11 | pubspec_overrides.yaml
12 | .flutter-plugins
13 | .flutter-plugins-dependencies
14 | *.iml
15 | mason-lock.json
16 | .mason
17 | *.lock
18 | devtools_options.yaml
19 | pnpm-lock.yaml
20 |
21 | # windsurf rules
22 | .windsurfrules
23 |
--------------------------------------------------------------------------------
/.npmrc:
--------------------------------------------------------------------------------
1 | link-workspace-packages=deep
2 | save-workspace-protocol=false
3 | save-prefix='^'
4 |
--------------------------------------------------------------------------------
/.prettierrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "semi": true,
3 | "printWidth": 80,
4 | "proseWrap": "always",
5 | "bracketSpacing": true,
6 | "singleQuote": true,
7 | "trailingComma": "all"
8 | }
9 |
--------------------------------------------------------------------------------
/.run/Vyuh Demo.run.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.run/Vyuh Studio.run.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Change Log
2 |
3 |
--------------------------------------------------------------------------------
/_images/example-conference.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-conference.png
--------------------------------------------------------------------------------
/_images/example-counter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-counter.png
--------------------------------------------------------------------------------
/_images/example-food.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-food.png
--------------------------------------------------------------------------------
/_images/example-misc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-misc.png
--------------------------------------------------------------------------------
/_images/example-puzzle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-puzzle.png
--------------------------------------------------------------------------------
/_images/example-settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-settings.png
--------------------------------------------------------------------------------
/_images/example-tmdb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-tmdb.png
--------------------------------------------------------------------------------
/_images/example-unsplash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-unsplash.png
--------------------------------------------------------------------------------
/_images/example-wonderous.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/example-wonderous.png
--------------------------------------------------------------------------------
/_images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/_images/logo.png
--------------------------------------------------------------------------------
/analysis_options.yaml:
--------------------------------------------------------------------------------
1 | include: package:flutter_lints/flutter.yaml
2 |
3 | analyzer:
4 | exclude:
5 | - packages/vyuh_cli/bricks/*/__brick__/**
6 |
7 | # Additional information about this file can be found at
8 | # https://dart.dev/guides/language/analysis-options
9 | linter:
10 | rules:
11 | - directives_ordering
12 | - prefer_const_constructors
13 |
14 |
--------------------------------------------------------------------------------
/apps/content_explorer/.env:
--------------------------------------------------------------------------------
1 | TMDB_API_KEY=1ca0bffb4b64c0944655c14ae75402c3
2 | UNSPLASH_ACCESS_KEY=CpKPa1OE3wg5pGA9ubEymr5NcGNAqOv4k-tKJlP-FuM
3 | UNSPLASH_SECRET_KEY=fns-goBATLA8qPDwMoUE9JwKojKOTHH-Um0-fvjyF6k
4 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/.gitignore:
--------------------------------------------------------------------------------
1 | # Flutter-related
2 | **/Flutter/ephemeral/
3 | **/Pods/
4 |
5 | # Xcode-related
6 | **/dgph
7 | **/xcuserdata/
8 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Flutter/Flutter-Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "ephemeral/Flutter-Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Flutter/Flutter-Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "ephemeral/Flutter-Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | @main
5 | class AppDelegate: FlutterAppDelegate {
6 | override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
7 | return true
8 | }
9 |
10 | override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool {
11 | return true
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Configs/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Debug.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Configs/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Release.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/DebugProfile.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 | com.apple.security.cs.allow-jit
8 |
9 | com.apple.security.network.client
10 |
11 | com.apple.security.network.server
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/MainFlutterWindow.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | class MainFlutterWindow: NSWindow {
5 | override func awakeFromNib() {
6 | let flutterViewController = FlutterViewController()
7 | let windowFrame = self.frame
8 | self.contentViewController = flutterViewController
9 | self.setFrame(windowFrame, display: true)
10 |
11 | RegisterGeneratedPlugins(registry: flutterViewController)
12 |
13 | super.awakeFromNib()
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/Runner/Release.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 | com.apple.security.network.client
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/apps/content_explorer/macos/RunnerTests/RunnerTests.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 | import XCTest
4 |
5 | class RunnerTests: XCTestCase {
6 |
7 | func testExample() {
8 | // If you add code to the Runner application, consider adding tests here.
9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest.
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/apps/content_explorer/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/web/favicon.png
--------------------------------------------------------------------------------
/apps/content_explorer/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/apps/content_explorer/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/apps/content_explorer/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/apps/content_explorer/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_explorer/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/to/reference-keystore
11 | key.properties
12 | **/*.keystore
13 | **/*.jks
14 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/kotlin/com/example/content_widget_demo/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.content_widget_demo
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity()
6 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/build.gradle:
--------------------------------------------------------------------------------
1 | allprojects {
2 | repositories {
3 | google()
4 | mavenCentral()
5 | }
6 | }
7 |
8 | rootProject.buildDir = "../build"
9 | subprojects {
10 | project.buildDir = "${rootProject.buildDir}/${project.name}"
11 | }
12 | subprojects {
13 | project.evaluationDependsOn(":app")
14 | }
15 |
16 | tasks.register("clean", Delete) {
17 | delete rootProject.buildDir
18 | }
19 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip
6 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 |
4 | @main
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/ios/RunnerTests/RunnerTests.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 | import XCTest
4 |
5 | class RunnerTests: XCTestCase {
6 |
7 | func testExample() {
8 | // If you add code to the Runner application, consider adding tests here.
9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest.
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/lib/examples/hello_world.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/cupertino.dart';
2 | import 'package:vyuh_content_widget/vyuh_content_widget.dart';
3 |
4 | import '../example.dart';
5 |
6 | final class HelloWorldExample extends ExampleWidget {
7 | const HelloWorldExample({super.key})
8 | : super(
9 | title: 'Hello World',
10 | description:
11 | 'Renders a single document from CMS, using the default document layout',
12 | );
13 |
14 | @override
15 | Widget build(BuildContext context) =>
16 | VyuhContentWidget.fromDocument(identifier: 'hello-world');
17 | }
18 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/test/widget_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/apps/content_widget_demo/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/web/favicon.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/apps/content_widget_demo/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/content_widget_demo/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/apps/demo-studio/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@sanity/eslint-config-studio"
3 | }
4 |
--------------------------------------------------------------------------------
/apps/demo-studio/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # Dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # Compiled Sanity Studio
9 | /dist
10 |
11 | # Temporary Sanity runtime, generated by the CLI on every dev server start
12 | /.sanity
13 |
14 | # Logs
15 | /logs
16 | *.log
17 |
18 | # Coverage directory used by testing tools
19 | /coverage
20 |
21 | # Misc
22 | .DS_Store
23 | *.pem
24 |
25 | # Typescript
26 | *.tsbuildinfo
27 |
28 | # Dotenv and similar local-only files
29 | *.local
30 |
--------------------------------------------------------------------------------
/apps/demo-studio/sanity.cli.ts:
--------------------------------------------------------------------------------
1 | import { defineCliConfig } from 'sanity/cli';
2 |
3 | export default defineCliConfig({
4 | api: {
5 | projectId: '8b76lu9s',
6 | dataset: 'production',
7 | },
8 | studioHost: 'vyuh',
9 | });
10 |
--------------------------------------------------------------------------------
/apps/demo-studio/static/.gitkeep:
--------------------------------------------------------------------------------
1 | Files placed here will be served by the Sanity server under the `/static`-prefix
2 |
--------------------------------------------------------------------------------
/apps/demo-studio/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ES2017",
4 | "lib": ["dom", "dom.iterable", "esnext"],
5 | "allowJs": true,
6 | "skipLibCheck": true,
7 | "strict": true,
8 | "forceConsistentCasingInFileNames": true,
9 | "module": "Preserve",
10 | "moduleDetection": "force",
11 | "isolatedModules": true,
12 | "jsx": "preserve",
13 | "incremental": true
14 | },
15 | "include": ["**/*.ts", "**/*.tsx"],
16 | "exclude": ["node_modules"]
17 | }
18 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
11 | key.properties
12 | **/*.keystore
13 | **/*.jks
14 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/kotlin/run/vyuh/vyuh_demo/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package tech.vyuh.vyuh_demo
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity : FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable-hdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/drawable-hdpi/splash.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable-mdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/drawable-mdpi/splash.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable-v21/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/drawable-v21/background.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 | -
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable-xhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/drawable-xhdpi/splash.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable-xxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/drawable-xxhdpi/splash.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable-xxxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/drawable-xxxhdpi/splash.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/drawable/background.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 | -
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/build.gradle:
--------------------------------------------------------------------------------
1 | allprojects {
2 | repositories {
3 | google()
4 | mavenCentral()
5 | }
6 | }
7 |
8 | rootProject.buildDir = '../build'
9 | subprojects {
10 | project.buildDir = "${rootProject.buildDir}/${project.name}"
11 | }
12 | subprojects {
13 | project.evaluationDependsOn(':app')
14 | }
15 |
16 | tasks.register("clean", Delete) {
17 | delete rootProject.buildDir
18 | }
19 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
6 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/assets/app-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/assets/app-icon.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/assets/launchscreen-image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/assets/launchscreen-image.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 | import GoogleMaps
4 |
5 | @main
6 | @objc class AppDelegate: FlutterAppDelegate {
7 | override func application(
8 | _ application: UIApplication,
9 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
10 | ) -> Bool {
11 | GMSServices.provideAPIKey("AIzaSyD39KAZC-m5S33b0p1UswDjonRDX4199Vw")
12 | GeneratedPluginRegistrant.register(with: self)
13 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchBackground.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "background.png",
5 | "idiom" : "universal",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "author" : "xcode",
19 | "version" : 1
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "LaunchImage.png",
5 | "idiom" : "universal",
6 | "scale" : "1x"
7 | },
8 | {
9 | "filename" : "LaunchImage@2x.png",
10 | "idiom" : "universal",
11 | "scale" : "2x"
12 | },
13 | {
14 | "filename" : "LaunchImage@3x.png",
15 | "idiom" : "universal",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "author" : "xcode",
21 | "version" : 1
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing
4 | the image files in this directory.
5 |
6 | You can also do it by opening your Flutter project's Xcode project with
7 | `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project
8 | Navigator and dropping in the desired images.
9 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/RunnerTests/RunnerTests.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 | import XCTest
4 |
5 | class RunnerTests: XCTestCase {
6 |
7 | func testExample() {
8 | // If you add code to the Runner application, consider adding tests here.
9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest.
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/ios/fastlane/Appfile:
--------------------------------------------------------------------------------
1 | app_identifier "tech.vyuh.chakra" # The bundle identifier of your app
2 | apple_id "pavan@vyuh.tech" # Your Apple Developer Portal username
3 |
4 | # To select a team for App Store Connect use
5 | itc_team_name "Vyuh Technologies Private Limited" # Developer Portal team name
6 | itc_team_id "XUN5W892H4"
7 |
8 | # For more information about the Appfile, see:
9 | # https://docs.fastlane.tools/advanced/#appfile
10 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/test/widget_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/favicon.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/dark-1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/dark-1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/dark-2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/dark-2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/dark-3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/dark-3x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/dark-4x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/dark-4x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/light-1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/light-1x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/light-2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/light-2x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/light-3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/light-3x.png
--------------------------------------------------------------------------------
/apps/vyuh_demo/web/splash/img/light-4x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/apps/vyuh_demo/web/splash/img/light-4x.png
--------------------------------------------------------------------------------
/examples/conference/feature_conference/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/README.md:
--------------------------------------------------------------------------------
1 | # Feature Conference
2 |
3 | Describe your feature in more detail here.
4 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/feature_conference.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'content/conference.dart';
4 | export 'content/edition.dart';
5 | export 'content/session.dart';
6 | export 'content/speaker.dart';
7 | export 'content/sponsor.dart';
8 | export 'content/track.dart';
9 | export 'content/venue.dart';
10 |
11 | export 'feature.dart';
12 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/conference_card_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'conference_card_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | ConferenceCardLayout _$ConferenceCardLayoutFromJson(
10 | Map json) =>
11 | ConferenceCardLayout();
12 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/conference_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'conference_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | ConferenceLayout _$ConferenceLayoutFromJson(Map json) =>
10 | ConferenceLayout();
11 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/edition_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'edition_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | EditionLayout _$EditionLayoutFromJson(Map json) =>
10 | EditionLayout();
11 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/edition_summary_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'edition_summary_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | EditionSummaryLayout _$EditionSummaryLayoutFromJson(
10 | Map json) =>
11 | EditionSummaryLayout();
12 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/session_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'session_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SessionLayout _$SessionLayoutFromJson(Map json) =>
10 | SessionLayout();
11 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/session_summary_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'session_summary_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SessionSummaryLayout _$SessionSummaryLayoutFromJson(
10 | Map json) =>
11 | SessionSummaryLayout();
12 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/speaker_chip_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'speaker_chip_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SpeakerChipLayout _$SpeakerChipLayoutFromJson(Map json) =>
10 | SpeakerChipLayout(
11 | mini: json['mini'] as bool? ?? false,
12 | );
13 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/speaker_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'speaker_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SpeakerLayout _$SpeakerLayoutFromJson(Map json) =>
10 | SpeakerLayout();
11 |
12 | SpeakerProfileCardLayout _$SpeakerProfileCardLayoutFromJson(
13 | Map json) =>
14 | SpeakerProfileCardLayout();
15 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/sponsor_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'sponsor_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SponsorLayout _$SponsorLayoutFromJson(Map json) =>
10 | SponsorLayout();
11 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/track_chip_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'track_chip_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | TrackChipLayout _$TrackChipLayoutFromJson(Map json) =>
10 | TrackChipLayout();
11 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/track_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'track_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | TrackLayout _$TrackLayoutFromJson(Map json) => TrackLayout();
10 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/layouts/venue_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'venue_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | VenueLayout _$VenueLayoutFromJson(Map json) => VenueLayout();
10 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/lib/utils.dart:
--------------------------------------------------------------------------------
1 | import 'package:intl/intl.dart';
2 |
3 | final dayFormat = DateFormat('dd MMM yyyy');
4 |
5 | final timeFormat = DateFormat('HH:mm');
6 |
--------------------------------------------------------------------------------
/examples/conference/feature_conference/test/feature_conference_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/conference/schema/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/examples/conference/schema/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # schema
2 |
--------------------------------------------------------------------------------
/examples/conference/schema/README.md:
--------------------------------------------------------------------------------
1 | # schema
2 |
3 | This package contains the Sanity.io schemas for configuring your feature on the CMS
4 | [Vyuh Framework](https://vyuh.tech).
5 |
6 | ## Getting Started
7 |
8 | ## Reference
9 |
--------------------------------------------------------------------------------
/examples/conference/schema/tsup.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'tsup';
2 |
3 | export default defineConfig({
4 | entry: ['src/index.ts'],
5 | dts: true,
6 | splitting: false,
7 | sourcemap: false,
8 | clean: true,
9 | minify: true,
10 | platform: 'browser',
11 | format: ['esm'],
12 | });
13 |
--------------------------------------------------------------------------------
/examples/feature_counter/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/feature_counter/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/feature_counter/README.md:
--------------------------------------------------------------------------------
1 | # Feature Counter
2 |
3 | Describe your feature in more detail here.
4 |
--------------------------------------------------------------------------------
/examples/feature_counter/lib/feature_counter.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/examples/feature_counter/test/feature_counter_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/food/feature_food/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/food/feature_food/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/food/feature_food/README.md:
--------------------------------------------------------------------------------
1 | # Food
2 |
3 | Food feature to showcase food menu items.
4 |
--------------------------------------------------------------------------------
/examples/food/feature_food/lib/action/select_menu_item.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'select_menu_item.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SelectMenuItem _$SelectMenuItemFromJson(Map json) =>
10 | SelectMenuItem(
11 | menuItem: json['menuItem'] == null
12 | ? null
13 | : ObjectReference.fromJson(json['menuItem'] as Map),
14 | isAwaited: json['isAwaited'] as bool? ?? false,
15 | );
16 |
--------------------------------------------------------------------------------
/examples/food/feature_food/lib/api.dart:
--------------------------------------------------------------------------------
1 | import 'package:feature_food/content/food_item.dart';
2 | import 'package:vyuh_core/vyuh_core.dart';
3 |
4 | final class FoodApiClient {
5 | Future fetchMenuItem(String id) {
6 | return vyuh.content.provider.fetchSingle(
7 | '*[_type == "food.item" && _id == "$id"][0]',
8 | fromJson: FoodMenuItem.fromJson,
9 | );
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/examples/food/feature_food/lib/feature_food.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/examples/food/feature_food/test/feature_food_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/food/food/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "food-sanity-schema",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "src/index.ts",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "private": true,
10 | "dependencies": {
11 | "@vyuh/sanity-schema-core": "^2.0.5",
12 | "@vyuh/sanity-schema-system": "^2.0.5",
13 | "react-icons": "^5.5.0",
14 | "sanity": "^3.91.0"
15 | },
16 | "devDependencies": {
17 | "typescript": "^5.8.3"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/examples/food/food/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ES2017",
4 | "lib": ["dom", "dom.iterable", "esnext"],
5 | "allowJs": true,
6 | "skipLibCheck": true,
7 | "strict": true,
8 | "forceConsistentCasingInFileNames": true,
9 | "noEmit": true,
10 | "module": "preserve",
11 | "moduleDetection": "force",
12 | "isolatedModules": true,
13 | "jsx": "preserve",
14 | "incremental": true
15 | },
16 | "include": ["**/*.ts", "**/*.tsx"],
17 | "exclude": ["node_modules"]
18 | }
19 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/README.md:
--------------------------------------------------------------------------------
1 | # Misc
2 |
3 | Describe your feature in more detail here.
4 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/lib/condition/part_of_day.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'part_of_day.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | PartOfDayCondition _$PartOfDayConditionFromJson(Map json) =>
10 | PartOfDayCondition();
11 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/lib/content/card_layout_di_store.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'card_layout_di_store.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DIStoreCardLayout _$DIStoreCardLayoutFromJson(Map json) =>
10 | DIStoreCardLayout();
11 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/lib/content/product/default_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'default_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DefaultProductCardLayout _$DefaultProductCardLayoutFromJson(
10 | Map json) =>
11 | DefaultProductCardLayout();
12 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/lib/content/product/mini_view_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'mini_view_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | MiniViewProductCardLayout _$MiniViewProductCardLayoutFromJson(
10 | Map json) =>
11 | MiniViewProductCardLayout(
12 | showCategory: json['showCategory'] as bool? ?? true,
13 | );
14 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/lib/feature_misc.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/lib/lifecycle_handlers/di_registration_lifecycle_handler.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'di_registration_lifecycle_handler.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DIRegistrationLifecycleHandler _$DIRegistrationLifecycleHandlerFromJson(
10 | Map json) =>
11 | DIRegistrationLifecycleHandler();
12 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/lib/lifecycle_handlers/simulated_delay_lifecycle_handler.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'simulated_delay_lifecycle_handler.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SimulatedDelayLifecycleHandler _$SimulatedDelayLifecycleHandlerFromJson(
10 | Map json) =>
11 | SimulatedDelayLifecycleHandler(
12 | delay: (json['delay'] as num?)?.toInt() ?? 1,
13 | );
14 |
--------------------------------------------------------------------------------
/examples/misc/feature_misc/test/feature_misc_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/misc/misc/.eslintrc.mjs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/misc/misc/.eslintrc.mjs
--------------------------------------------------------------------------------
/examples/misc/misc/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/misc/misc/.gitignore
--------------------------------------------------------------------------------
/examples/misc/misc/CHANGELOG.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/misc/misc/CHANGELOG.md
--------------------------------------------------------------------------------
/examples/misc/misc/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/misc/misc/README.md
--------------------------------------------------------------------------------
/examples/misc/misc/src/content/diStore-card-layout.ts:
--------------------------------------------------------------------------------
1 | import { defineField, defineType } from 'sanity';
2 | import { FaCode as Icon } from 'react-icons/fa6';
3 |
4 | export const diStoreCardLayout = defineType({
5 | name: 'misc.card.layout.diStore',
6 | title: 'DI Store',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | defineField({
11 | name: 'title',
12 | type: 'string',
13 | title: 'Title',
14 | readOnly: true,
15 | initialValue: 'Card Layout for Scoped DI Store',
16 | }),
17 | ],
18 | });
19 |
--------------------------------------------------------------------------------
/examples/misc/misc/src/lifecycle-handlers/diRegistrationLifecycleHandler.ts:
--------------------------------------------------------------------------------
1 | import { defineField, defineType } from 'sanity';
2 | import { FaCode as Icon } from 'react-icons/fa6';
3 |
4 | export const diRegistrationLifecycleHandler = defineType({
5 | name: 'misc.lifecycleHandler.diRegistration',
6 | title: 'DI Registration',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | defineField({
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | readOnly: true,
15 | initialValue: 'Test DI Registration',
16 | }),
17 | // delay field
18 | ],
19 | });
20 |
--------------------------------------------------------------------------------
/examples/misc/misc/tsup.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'tsup';
2 |
3 | export default defineConfig({
4 | entry: ['src/index.ts'],
5 | dts: true,
6 | splitting: false,
7 | sourcemap: false,
8 | clean: true,
9 | minify: true,
10 | platform: 'browser',
11 | format: ['esm'],
12 | });
13 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 0.0.1
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/README.md:
--------------------------------------------------------------------------------
1 | # Puzzles
2 |
3 | A puzzle game crafted with Vyuh.
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/assets/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/puzzles/feature_puzzles/assets/background.jpg
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/assets/boat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/puzzles/feature_puzzles/assets/boat.png
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/assets/clouds.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/puzzles/feature_puzzles/assets/clouds.jpg
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/assets/water.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/puzzles/feature_puzzles/assets/water.jpg
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/lib/action/select_level.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'select_level.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | SelectLevel _$SelectLevelFromJson(Map json) => SelectLevel(
10 | level: json['puzzleLevel'] == null
11 | ? null
12 | : ObjectReference.fromJson(
13 | json['puzzleLevel'] as Map),
14 | isAwaited: json['isAwaited'] as bool? ?? false,
15 | );
16 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/lib/feature_puzzles.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/lib/ui/layout/level_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'level_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | LevelLayout _$LevelLayoutFromJson(Map json) => LevelLayout();
10 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/lib/utils/constants.dart:
--------------------------------------------------------------------------------
1 | sealed class Assets {
2 | static const String background = 'assets/background.jpg';
3 | static const String water = 'assets/water.jpg';
4 | static const String boat = 'assets/boat.png';
5 | static const String clouds = 'assets/clouds.jpg';
6 | static const String package = 'feature_puzzles';
7 | }
8 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/lib/utils/extensions.dart:
--------------------------------------------------------------------------------
1 | extension IntExtensions on int {
2 | String get toTwoDigits {
3 | if (this >= 10) return "$this";
4 | return "0$this";
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/examples/puzzles/feature_puzzles/test/routes_test.dart:
--------------------------------------------------------------------------------
1 | import 'package:feature_puzzles/routes.dart';
2 | import 'package:flutter_test/flutter_test.dart';
3 |
4 | void main() {
5 | group('puzzlesPathResolver', () {
6 | test('resolves path containing /puzzles/level/:id', () {
7 | final result = puzzlesPathResolver(
8 | '/puzzles/level/1ee5c6a3-d81e-49fa-951b-45edca88cf5c',
9 | );
10 | expect(result, '/puzzles/level');
11 | });
12 |
13 | test('returns original path if no match', () {
14 | final result = puzzlesPathResolver('/other/path');
15 | expect(result, '/other/path');
16 | });
17 | });
18 | }
19 |
--------------------------------------------------------------------------------
/examples/puzzles/puzzles/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "puzzles-sanity-schema",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "src/index.ts",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "private": true,
10 | "dependencies": {
11 | "@vyuh/sanity-schema-core": "^2.0.5",
12 | "@vyuh/sanity-schema-system": "^2.0.5",
13 | "react-icons": "^5.5.0",
14 | "sanity": "^3.91.0"
15 | },
16 | "devDependencies": {
17 | "typescript": "^5.8.3"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/examples/puzzles/puzzles/src/section.ts:
--------------------------------------------------------------------------------
1 | import { defineField, defineType, SchemaTypeDefinition } from 'sanity';
2 | import { GiLevelFour as Icon } from 'react-icons/gi';
3 |
4 | export const levelSection: SchemaTypeDefinition = defineType({
5 | name: 'puzzles.level.section',
6 | title: 'Puzzle Level Section',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | defineField({
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | }),
15 | ],
16 | });
17 |
--------------------------------------------------------------------------------
/examples/puzzles/puzzles/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ES2017",
4 | "lib": [
5 | "dom",
6 | "dom.iterable",
7 | "esnext"
8 | ],
9 | "allowJs": true,
10 | "skipLibCheck": true,
11 | "strict": true,
12 | "forceConsistentCasingInFileNames": true,
13 | "noEmit": true,
14 | "module": "preserve",
15 | "moduleDetection": "force",
16 | "isolatedModules": true,
17 | "jsx": "preserve",
18 | "incremental": true
19 | },
20 | "include": [
21 | "**/*.ts",
22 | "**/*.tsx"
23 | ],
24 | "exclude": [
25 | "node_modules"
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/examples/settings/feature_settings/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 0.0.1
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/settings/feature_settings/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/settings/feature_settings/analysis_options.yaml:
--------------------------------------------------------------------------------
1 | include: package:flutter_lints/flutter.yaml
2 |
3 | # Additional information about this file can be found at
4 | # https://dart.dev/guides/language/analysis-options
5 |
--------------------------------------------------------------------------------
/examples/settings/feature_settings/lib/feature_settings.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'settings.dart';
4 |
--------------------------------------------------------------------------------
/examples/settings/feature_settings/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: feature_settings
2 | description: Handles app-level settings that can be set on Sanity
3 | version: 1.0.0
4 | publish_to: none
5 |
6 | environment:
7 | sdk: '>=3.3.0 <4.0.0'
8 | flutter: '>=3.16.0'
9 |
10 | dependencies:
11 | flutter:
12 | sdk: flutter
13 | go_router: ^15.1.1
14 | json_annotation: ^4.8.1
15 | vyuh_core: ^1.43.4
16 | vyuh_feature_system: ^1.38.4
17 | mobx: ^2.3.0+1
18 | flutter_mobx: ^2.2.0+2
19 |
20 | dev_dependencies:
21 | flutter_test:
22 | sdk: flutter
23 | flutter_lints: ^5.0.0
24 | build_runner: ^2.4.6
25 | json_serializable: ^6.7.1
26 |
--------------------------------------------------------------------------------
/examples/settings/feature_settings/test/feature_settings_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/settings/settings-sanity-schema/README.md:
--------------------------------------------------------------------------------
1 | # sample-schema
2 |
3 | To install dependencies:
4 |
5 | ```bash
6 | bun install
7 | ```
8 |
9 | To run:
10 |
11 | ```bash
12 | bun run index.ts
13 | ```
14 |
15 | This project was created using `bun init` in bun v1.0.2. [Bun](https://bun.sh)
16 | is a fast all-in-one JavaScript runtime.
17 |
--------------------------------------------------------------------------------
/examples/settings/settings-sanity-schema/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "settings-sanity-schema",
3 | "main": "index.tsx",
4 | "private": true,
5 | "dependencies": {
6 | "@vyuh/sanity-schema-core": "^2.0.5",
7 | "@vyuh/sanity-schema-system": "^2.0.5",
8 | "react": "^19.1.0",
9 | "react-icons": "^5.5.0",
10 | "sanity": "^3.91.0"
11 | },
12 | "devDependencies": {
13 | "@types/react": "^19.1.6",
14 | "typescript": "^5.8.3"
15 | },
16 | "version": "1.0.0"
17 | }
18 |
--------------------------------------------------------------------------------
/examples/settings/settings-sanity-schema/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "lib": ["ESNext"],
4 | "module": "esnext",
5 | "target": "esnext",
6 | "moduleResolution": "bundler",
7 | "moduleDetection": "force",
8 | "allowImportingTsExtensions": true,
9 | "noEmit": true,
10 | "composite": true,
11 | "strict": true,
12 | "downlevelIteration": true,
13 | "skipLibCheck": true,
14 | "jsx": "preserve",
15 | "allowSyntheticDefaultImports": true,
16 | "forceConsistentCasingInFileNames": true,
17 | "allowJs": true
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/examples/shared/chakra_shared/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 0.0.1
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/shared/chakra_shared/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/shared/chakra_shared/README.md:
--------------------------------------------------------------------------------
1 | A Package that contains shared code between the Chakra Flutter apps.
2 |
--------------------------------------------------------------------------------
/examples/shared/chakra_shared/analysis_options.yaml:
--------------------------------------------------------------------------------
1 | include: package:flutter_lints/flutter.yaml
2 |
3 | # Additional information about this file can be found at
4 | # https://dart.dev/guides/language/analysis-options
5 |
--------------------------------------------------------------------------------
/examples/shared/chakra_shared/lib/chakra_shared.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'ui/detail_builder.dart';
4 | export 'chakra_plugin_auth.dart';
5 |
--------------------------------------------------------------------------------
/examples/shared/design_system/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | Initial Release
--------------------------------------------------------------------------------
/examples/shared/design_system/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-Black.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-Black.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-BlackItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-BlackItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-Bold.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-BoldItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-BoldItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraBold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraBold.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraBoldItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraBoldItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraLight.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraLight.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraLightItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-ExtraLightItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-Italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-Italic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-Light.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-Light.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-LightItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-LightItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-Medium.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-Medium.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-MediumItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-MediumItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-Regular.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-SemiBold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-SemiBold.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-SemiBoldItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-SemiBoldItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-Thin.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-Thin.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/assets/fonts/poppins/Poppins-ThinItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/shared/design_system/assets/fonts/poppins/Poppins-ThinItalic.ttf
--------------------------------------------------------------------------------
/examples/shared/design_system/lib/core/index.dart:
--------------------------------------------------------------------------------
1 | export 'aspect_ratio.dart';
2 | export 'border_radius.dart';
3 | export 'border_width.dart';
4 | export 'gap.dart';
5 | export 'linear_gradient.dart';
6 | export 'sizing.dart';
7 | export 'spacing.dart';
8 | export 'text_theme.dart';
9 | export 'tmdb_text_theme.dart';
10 |
--------------------------------------------------------------------------------
/examples/shared/design_system/test/vyuh_design_system_test.dart:
--------------------------------------------------------------------------------
1 | void main() {}
2 |
--------------------------------------------------------------------------------
/examples/shared/tmdb_client/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 0.0.1
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/shared/tmdb_client/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/shared/tmdb_client/analysis_options.yaml:
--------------------------------------------------------------------------------
1 | include: package:flutter_lints/flutter.yaml
2 |
3 | # Additional information about this file can be found at
4 | # https://dart.dev/guides/language/analysis-options
5 |
--------------------------------------------------------------------------------
/examples/shared/tmdb_client/lib/model/genre.dart:
--------------------------------------------------------------------------------
1 | import 'package:json_annotation/json_annotation.dart';
2 |
3 | part 'genre.g.dart';
4 |
5 | @JsonSerializable()
6 | final class GenresListResponse {
7 | final List genres;
8 |
9 | GenresListResponse({required this.genres});
10 |
11 | factory GenresListResponse.fromJson(Map json) =>
12 | _$GenresListResponseFromJson(json);
13 | }
14 |
15 | @JsonSerializable()
16 | final class Genre {
17 | final int id;
18 | final String name;
19 |
20 | Genre({required this.id, required this.name});
21 |
22 | factory Genre.fromJson(Map json) => _$GenreFromJson(json);
23 | }
24 |
--------------------------------------------------------------------------------
/examples/shared/tmdb_client/lib/util.dart:
--------------------------------------------------------------------------------
1 | DateTime? dateTimeFromJson(String? value) {
2 | if (value == null || value.isEmpty) {
3 | return null;
4 | }
5 |
6 | return DateTime.tryParse(value);
7 | }
8 |
--------------------------------------------------------------------------------
/examples/shared/tmdb_client/test/tmdb_client_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/README.md:
--------------------------------------------------------------------------------
1 | # TMDB Feature
2 |
3 | Shows list of movies and its details from TMDB API.
4 |
5 | ## Usage
6 |
7 | This feature uses a environment variable to get the api key for TMDB. You can
8 | get a key [here](https://www.themoviedb.org/documentation/api). Once you have an
9 | API Key create a `.env` file in the root of the project and add the following:
10 |
11 | ```bash
12 | TMDB_API_KEY=
13 | ```
14 |
15 | > Ensure the .env is added to your `.gitignore` file
16 |
17 | During the init of this feature, the `TMDB_API_KEY` will be read from the `.env`
18 | file.
19 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/action.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/action.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/adventure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/adventure.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/animation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/animation.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/comedy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/comedy.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/crime.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/crime.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/documentary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/documentary.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/drama.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/drama.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/family.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/family.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/fantasy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/fantasy.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/history.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/history.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/horror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/horror.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/kids.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/kids.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/music.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/music.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/mystery.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/mystery.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/news.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/news.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/reality.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/reality.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/romance.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/romance.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/scienceFiction.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/scienceFiction.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/soap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/soap.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/talk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/talk.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/thriller.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/thriller.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/tvMovie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/tvMovie.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/war.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/war.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/assets/images/western.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/examples/tmdb/feature_tmdb/assets/images/western.png
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/lib/action/add_to_watchlist.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'add_to_watchlist.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | AddToWatchlist _$AddToWatchlistFromJson(Map json) =>
10 | AddToWatchlist(
11 | isAwaited: json['isAwaited'] as bool? ?? false,
12 | );
13 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/lib/action/drop_down_selection.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'drop_down_selection.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DropDownSelection _$DropDownSelectionFromJson(Map json) =>
10 | DropDownSelection(
11 | isAwaited: json['isAwaited'] as bool? ?? false,
12 | );
13 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/lib/content/tmdb_list_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'tmdb_list_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | TmdbListLayout _$TmdbListLayoutFromJson(Map json) =>
10 | TmdbListLayout(
11 | title: json['title'] as String?,
12 | subtitle: json['subtitle'] as String?,
13 | );
14 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/lib/content/tmdb_single_item_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'tmdb_single_item_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | TmdbSingleItemLayout _$TmdbSingleItemLayoutFromJson(
10 | Map json) =>
11 | TmdbSingleItemLayout(
12 | title: json['title'] as String?,
13 | subtitle: json['subtitle'] as String?,
14 | );
15 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/lib/feature_tmdb.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/lib/ui/widget/dot_widget.dart:
--------------------------------------------------------------------------------
1 | import 'package:design_system/design_system.dart';
2 | import 'package:flutter/material.dart';
3 |
4 | class DotWidget extends StatelessWidget {
5 | const DotWidget({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context) {
9 | final theme = Theme.of(context);
10 | return Container(
11 | width: theme.sizing.s2,
12 | height: theme.sizing.s2,
13 | decoration: BoxDecoration(
14 | shape: BoxShape.circle,
15 | color: theme.colorScheme.outline,
16 | ),
17 | );
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/lib/utils/constants.dart:
--------------------------------------------------------------------------------
1 | const int maxCountForViewAll = 5;
2 | const int maxCountForMediaGridView = 4;
3 |
--------------------------------------------------------------------------------
/examples/tmdb/feature_tmdb/test/feature_tmdb_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tmdb-sanity-schema",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "src/index.ts",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "private": true,
10 | "dependencies": {
11 | "@vyuh/sanity-schema-core": "^2.0.5",
12 | "@vyuh/sanity-schema-system": "^2.0.5",
13 | "react-icons": "^5.5.0",
14 | "sanity": "^3.91.0"
15 | },
16 | "devDependencies": {
17 | "typescript": "^5.8.3"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/src/action/addToWatchlist.ts:
--------------------------------------------------------------------------------
1 | import { defineField, defineType } from 'sanity';
2 | import { MdOutlinePlaylistAdd as WatchlistIcon } from 'react-icons/md';
3 |
4 | export const addToWatchlistAction = defineType({
5 | name: 'tmdb.action.addToWatchlist',
6 | title: 'Add to Watchlist',
7 | type: 'object',
8 | icon: WatchlistIcon,
9 | fields: [
10 | defineField({
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | readOnly: true,
15 | initialValue: 'Add to Watchlist',
16 | }),
17 | ],
18 | });
19 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/src/action/drop-down-action.ts:
--------------------------------------------------------------------------------
1 | import { defineField, defineType } from 'sanity';
2 | import { MdOutlinePlaylistAdd as Icon } from 'react-icons/md';
3 |
4 | export const dropDownChangeAction = defineType({
5 | name: 'tmdb.action.dropDownSelection',
6 | title: 'Drop Down Selection ',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | defineField({
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | }),
15 | ],
16 | });
17 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/src/movie-watchlist-section.ts:
--------------------------------------------------------------------------------
1 | import { defineField, defineType } from 'sanity';
2 | import { FaListOl as Icon } from 'react-icons/fa6';
3 |
4 | export const movieWatchlistSection = defineType({
5 | name: 'tmdb.movie.watchlistSection',
6 | title: 'Movie Watchlist Section',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | defineField({
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | readOnly: true,
15 | initialValue: 'Movie Watchlist',
16 | }),
17 | ],
18 | });
19 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/src/series-watchlist-section.ts:
--------------------------------------------------------------------------------
1 | import { defineField, defineType } from 'sanity';
2 | import { FaListOl as Icon } from 'react-icons/fa6';
3 |
4 | export const seriesWatchlistSection = defineType({
5 | name: 'tmdb.series.watchlistSection',
6 | title: 'Series Watchlist Section',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | defineField({
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | readOnly: true,
15 | initialValue: 'Series Watchlist',
16 | }),
17 | ],
18 | });
19 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/src/tmdb-list-layout.ts:
--------------------------------------------------------------------------------
1 | import { defineType, SchemaTypeDefinition } from 'sanity';
2 | import { MdOutlineApps as Icon } from 'react-icons/md';
3 |
4 | export const tmdbListlayout: SchemaTypeDefinition = defineType({
5 | name: 'tmdb.route.layout.list',
6 | title: 'Tmdb List Layout',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | {
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | },
15 |
16 | {
17 | name: 'subtitle',
18 | title: 'Subtitle',
19 | type: 'string',
20 | },
21 | ],
22 | });
23 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/src/tmdb-single-item-layout.ts:
--------------------------------------------------------------------------------
1 | import { defineType, SchemaTypeDefinition } from 'sanity';
2 | import { MdOutlineApps as Icon } from 'react-icons/md';
3 |
4 | export const tmdbSingleItemLayout: SchemaTypeDefinition = defineType({
5 | name: 'tmdb.route.layout.single',
6 | title: 'Tmdb Single Item Layout',
7 | type: 'object',
8 | icon: Icon,
9 | fields: [
10 | {
11 | name: 'title',
12 | title: 'Title',
13 | type: 'string',
14 | },
15 |
16 | {
17 | name: 'subtitle',
18 | title: 'Subtitle',
19 | type: 'string',
20 | },
21 | ],
22 | });
23 |
--------------------------------------------------------------------------------
/examples/tmdb/tmdb/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ES2017",
4 | "lib": ["dom", "dom.iterable", "esnext"],
5 | "allowJs": true,
6 | "skipLibCheck": true,
7 | "strict": true,
8 | "forceConsistentCasingInFileNames": true,
9 | "noEmit": true,
10 | "module": "preserve",
11 | "moduleDetection": "force",
12 | "isolatedModules": true,
13 | "jsx": "preserve",
14 | "incremental": true
15 | },
16 | "include": ["**/*.ts", "**/*.tsx"],
17 | "exclude": ["node_modules"]
18 | }
--------------------------------------------------------------------------------
/examples/unsplash/feature_unsplash/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/unsplash/feature_unsplash/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/unsplash/feature_unsplash/README.md:
--------------------------------------------------------------------------------
1 | # Feature Unsplash
2 |
3 | Describe your feature in more detail here.
4 |
--------------------------------------------------------------------------------
/examples/unsplash/feature_unsplash/lib/feature_unsplash.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/examples/unsplash/feature_unsplash/test/feature_unsplash_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/wonderous/feature_wonderous/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/examples/wonderous/feature_wonderous/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/examples/wonderous/feature_wonderous/README.md:
--------------------------------------------------------------------------------
1 | # Wonderous
2 |
3 | Describe your feature in more detail here.
4 |
--------------------------------------------------------------------------------
/examples/wonderous/feature_wonderous/lib/feature_wonderous.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/examples/wonderous/feature_wonderous/lib/ui/formatters.dart:
--------------------------------------------------------------------------------
1 | extension YearFormat on int {
2 | String get formattedYear {
3 | return this <= 0 ? '${-this} BCE' : '$this CE';
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/examples/wonderous/feature_wonderous/lib/ui/page_view_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'page_view_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | PageViewLayout _$PageViewLayoutFromJson(Map json) =>
10 | PageViewLayout(
11 | showIndicator: json['showIndicator'] as bool,
12 | viewportFraction: (json['viewportFraction'] as num?)?.toDouble() ?? 0.75,
13 | );
14 |
--------------------------------------------------------------------------------
/examples/wonderous/feature_wonderous/test/feature_wonderous_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/examples/wonderous/wonderous/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "wonderous-sanity-schema",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "src/index.ts",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "private": true,
10 | "dependencies": {
11 | "@vyuh/sanity-schema-core": "^2.0.5",
12 | "@vyuh/sanity-schema-system": "^2.0.5",
13 | "react-icons": "^5.5.0",
14 | "sanity": "^3.91.0"
15 | },
16 | "devDependencies": {
17 | "typescript": "^5.8.3"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/examples/wonderous/wonderous/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ES2017",
4 | "lib": ["dom", "dom.iterable", "esnext"],
5 | "allowJs": true,
6 | "skipLibCheck": true,
7 | "strict": true,
8 | "forceConsistentCasingInFileNames": true,
9 | "noEmit": true,
10 | "module": "preserve",
11 | "moduleDetection": "force",
12 | "isolatedModules": true,
13 | "jsx": "preserve",
14 | "incremental": true
15 | },
16 | "include": ["**/*.ts", "**/*.tsx"],
17 | "exclude": ["node_modules"]
18 | }
19 |
--------------------------------------------------------------------------------
/melos.yaml:
--------------------------------------------------------------------------------
1 | name: vyuh
2 | repository: https://github.com/vyuh-tech/vyuh
3 |
4 | packages:
5 | - packages/{sanity,system,plugins,}/*
6 | - packages/{sanity,system,plugins,}/*/example
7 | - examples/*
8 | - examples/*/*
9 | - apps/*
10 |
11 | command:
12 | version:
13 | workspaceChangelog: false
14 | fetchTags: false
15 | updateGitTagRefs: false
16 | includeCommitId: false
17 | linkToCommits: false
18 | hooks:
19 | post: melos run update_version
20 |
21 | ide:
22 | intellij:
23 | moduleNamePrefix: ''
24 |
25 | scripts:
26 | update_version:
27 | run: dart run tools/update_version.dart
28 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vyuh",
3 | "version": "1.0.0",
4 | "description": "",
5 | "scripts": {
6 | "publish-packages": "changeset version && pnpm --recursive --filter \"./schemas/*\" build && changeset publish"
7 | },
8 | "private": true,
9 | "keywords": [],
10 | "author": {
11 | "email": "pavan@vyuh.tech",
12 | "name": "Pavan Podila",
13 | "url": "https://github.com/pavanpodila"
14 | },
15 | "license": "FSL",
16 | "devDependencies": {
17 | "all-contributors-cli": "^6.26.1",
18 | "prettier": "^3.5.3",
19 | "typescript": "^5.8.3"
20 | },
21 | "dependencies": {
22 | "@changesets/cli": "^2.29.4"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/packages/plugins/vyuh_plugin_storage_hive/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.1.5
2 |
3 | - **FIX**: format fixes in readme.
4 |
5 | ## 1.1.4
6 |
7 | - **FIX**: format fixes in readme.
8 |
9 | ## 1.1.3
10 |
11 | - **FIX**: readme updates.
12 |
13 | ## 1.1.2
14 |
15 | - **FIX**: readme updates to make it more consistent.
16 |
17 | ## 1.1.1
18 |
19 | - **FIX**: correcting the api in the readme.
20 | - **FIX**: adding the license file for publishing.
21 |
22 | ## 1.1.0
23 |
24 | - **FEAT**: introducing a hive storage plugin.
25 |
26 |
--------------------------------------------------------------------------------
/packages/plugins/vyuh_plugin_storage_hive/lib/vyuh_plugin_storage_hive.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'hive_storage_plugin.dart';
4 |
--------------------------------------------------------------------------------
/packages/plugins/vyuh_plugin_storage_secure/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.2.0
2 |
3 | - **FEAT**: adding default implementations for storage and secure storage plugins, updated readmes.
4 |
5 | ## 1.1.2
6 |
7 | - **FIX**: adding example and docs, dep versions for better scores.
8 | - **FIX**: adding example for better scores.
9 |
10 | ## 1.1.1
11 |
12 | - **FIX**: tests in sanity client, adding readme for secure storage plugin.
13 |
14 | ## 1.1.0
15 |
16 | - **FEAT**: adding a secure storage plugin.
17 |
18 |
--------------------------------------------------------------------------------
/packages/plugins/vyuh_plugin_storage_secure/lib/vyuh_plugin_storage_secure.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'secure_storage_plugin.dart';
4 |
--------------------------------------------------------------------------------
/packages/plugins/vyuh_plugin_telemetry_provider_console/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.1.3
2 |
3 | - **FIX**: format fixes in readme.
4 |
5 | ## 1.1.2
6 |
7 | - **FIX**: readme updates.
8 |
9 | ## 1.1.1
10 |
11 | - **FIX**: readme updates to make it more consistent.
12 |
13 | ## 1.1.0
14 |
15 | - **FEAT**: moving the navigation observers to analytics plugin, readme updates for packages,.
16 |
17 |
--------------------------------------------------------------------------------
/packages/plugins/vyuh_plugin_telemetry_provider_console/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: vyuh_plugin_telemetry_provider_console
2 | description: Console logger telemetry provider for Vyuh
3 | version: 1.1.3
4 |
5 | environment:
6 | sdk: '>=3.0.0 <4.0.0'
7 | flutter: ">=3.10.0"
8 |
9 | dependencies:
10 | flutter:
11 | sdk: flutter
12 | vyuh_core: ^1.43.4
13 | logger: ^2.5.0
14 |
15 | dev_dependencies:
16 | flutter_test:
17 | sdk: flutter
18 | flutter_lints: ^5.0.0
19 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/build.yaml:
--------------------------------------------------------------------------------
1 | targets:
2 | $default:
3 | builders:
4 | json_serializable:
5 | options:
6 | # Options configure how source code is generated for every
7 | # `@JsonSerializable`-annotated class in the package.
8 | #
9 | # The default value for each is listed.
10 | create_to_json: false
11 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/README.md:
--------------------------------------------------------------------------------
1 | # Example for Flutter Sanity Portable Text
2 |
3 | A simple example to showcase the capabilities of the
4 | `flutter_sanity_portable_text` package. Refer to the `/lib` folder for details.
5 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
11 | key.properties
12 | **/*.keystore
13 | **/*.jks
14 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/kotlin/com/example/example/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.example
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity()
6 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/build.gradle:
--------------------------------------------------------------------------------
1 | allprojects {
2 | repositories {
3 | google()
4 | mavenCentral()
5 | }
6 | }
7 |
8 | rootProject.buildDir = '../build'
9 | subprojects {
10 | project.buildDir = "${rootProject.buildDir}/${project.name}"
11 | }
12 | subprojects {
13 | project.evaluationDependsOn(':app')
14 | }
15 |
16 | tasks.register("clean", Delete) {
17 | delete rootProject.buildDir
18 | }
19 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx4G
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip
6 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @UIApplicationMain
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/ios/RunnerTests/RunnerTests.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 | import XCTest
4 |
5 | class RunnerTests: XCTestCase {
6 |
7 | func testExample() {
8 | // If you add code to the Runner application, consider adding tests here.
9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest.
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: flutter_sanity_portable_text_example
2 | description: A simple Flutter project to show the usage of flutter_sanity_portable_text
3 | publish_to: none
4 | version: 1.0.0+1
5 |
6 | environment:
7 | sdk: '>=3.3.3 <4.0.0'
8 |
9 | dependencies:
10 | flutter:
11 | sdk: flutter
12 | flutter_sanity_portable_text: ^1.6.2
13 |
14 | dev_dependencies:
15 | flutter_test:
16 | sdk: flutter
17 | flutter_lints: ^5.0.0
18 |
19 | flutter:
20 | uses-material-design: true
21 |
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/screenshot.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/web/favicon.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/sanity/flutter_sanity_portable_text/example/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/packages/sanity/sanity_client/example/.gitignore:
--------------------------------------------------------------------------------
1 | # https://dart.dev/guides/libraries/private-files
2 | # Created by `dart pub`
3 | .dart_tool/
4 |
--------------------------------------------------------------------------------
/packages/sanity/sanity_client/example/README.md:
--------------------------------------------------------------------------------
1 | # Example for using the Sanity Client
2 |
--------------------------------------------------------------------------------
/packages/sanity/sanity_client/example/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: sanity_client_example
2 | description: An example for using the sanity_client package
3 | version: 1.0.0
4 | publish_to: none
5 |
6 | environment:
7 | sdk: ^3.3.3
8 |
9 | # Add regular dependencies here.
10 | dependencies:
11 | sanity_client: ^1.8.5
12 |
13 | dev_dependencies:
14 | lints: ^6.0.0
15 |
--------------------------------------------------------------------------------
/packages/sanity/sanity_client/lib/sanity_client.dart:
--------------------------------------------------------------------------------
1 | /// A Native Dart client to connect to Sanity.io and run GROQ queries.
2 | ///
3 | /// It supports all parameters of the query API.
4 | library;
5 |
6 | export 'client.dart';
7 | export 'config.dart';
8 | export 'exceptions.dart';
9 | export 'response_types.dart';
10 | export 'sanity_url_builder.dart';
11 | export 'types.dart';
12 |
--------------------------------------------------------------------------------
/packages/sanity/vyuh_plugin_content_provider_sanity/lib/exception.dart:
--------------------------------------------------------------------------------
1 | import 'package:sanity_client/sanity_client.dart';
2 |
3 | final class InvalidResultTypeException extends SanityException {
4 | final Type expectedType;
5 | final Type actualType;
6 |
7 | InvalidResultTypeException({
8 | required this.expectedType,
9 | required this.actualType,
10 | });
11 |
12 | @override
13 | String toString() =>
14 | 'Invalid result type: $actualType. Was expecting $expectedType';
15 | }
16 |
--------------------------------------------------------------------------------
/packages/sanity/vyuh_plugin_content_provider_sanity/test/vyuh_plugin_content_provider_sanity_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_cache/.gitignore:
--------------------------------------------------------------------------------
1 | # https://dart.dev/guides/libraries/private-files
2 | # Created by `dart pub`
3 | .dart_tool/
4 |
5 | # Avoid committing pubspec.lock for library packages; see
6 | # https://dart.dev/guides/libraries/private-files#pubspeclock.
7 | pubspec.lock
8 |
--------------------------------------------------------------------------------
/packages/system/vyuh_cache/test/vyuh_cache_test.dart:
--------------------------------------------------------------------------------
1 | void main() {}
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_content_widget/lib/vyuh_content_widget.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'document.dart';
4 | export 'vyuh_content_binding.dart';
5 | export 'widget.dart';
6 |
--------------------------------------------------------------------------------
/packages/system/vyuh_core/lib/plugin/auth/anonymous_auth_plugin.dart:
--------------------------------------------------------------------------------
1 | import 'package:vyuh_core/vyuh_core.dart';
2 |
3 | /// An authentication plugin that does not support any authentication methods.
4 | final class UnknownAuthPlugin extends AuthPlugin {
5 | /// Creates an instance of [UnknownAuthPlugin].
6 | UnknownAuthPlugin()
7 | : super(
8 | title: 'Unknown Auth Plugin',
9 | name: 'vyuh.plugin.auth.unknown',
10 | );
11 |
12 | @override
13 | User get currentUser => User.unknown;
14 | }
15 |
--------------------------------------------------------------------------------
/packages/system/vyuh_core/lib/plugin/content/route_base.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'route_base.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | Category _$CategoryFromJson(Map json) => Category(
10 | identifier: json['identifier'] as String,
11 | title: json['title'] as String,
12 | layout: typeFromFirstOfListJson(json['layout']),
13 | modifiers: Category.modifierList(json['modifiers']),
14 | );
15 |
--------------------------------------------------------------------------------
/packages/system/vyuh_core/lib/plugin/content/unknown.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'unknown.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | Unknown _$UnknownFromJson(Map json) => Unknown(
10 | missingSchemaType: json['missingSchemaType'] as String,
11 | description: json['description'] as String,
12 | layout: typeFromFirstOfListJson(json['layout']),
13 | modifiers: ContentItem.modifierList(json['modifiers']),
14 | );
15 |
--------------------------------------------------------------------------------
/packages/system/vyuh_core/lib/plugin/storage/storage.dart:
--------------------------------------------------------------------------------
1 | export 'in_memory_secure_storage_plugin.dart';
2 | export 'in_memory_storage_plugin.dart';
3 | export 'storage_plugin.dart';
4 |
--------------------------------------------------------------------------------
/packages/system/vyuh_core/lib/runtime/platform/events.dart:
--------------------------------------------------------------------------------
1 | import 'package:vyuh_core/plugin/event_plugin.dart';
2 |
3 | /// An event indicating that the system is ready.
4 | ///
5 | /// This event is emitted when the system initialization process is complete
6 | /// and the platform is ready for operation. It can be used by listeners to
7 | /// perform actions that require the system to be fully initialized.
8 | final class SystemReadyEvent extends VyuhEvent {
9 | /// Creates a new [SystemReadyEvent].
10 | SystemReadyEvent() : super(name: 'vyuh.event.systemReady');
11 | }
12 |
--------------------------------------------------------------------------------
/packages/system/vyuh_extension_content/analysis_options.yaml:
--------------------------------------------------------------------------------
1 | include: package:flutter_lints/flutter.yaml
2 |
3 | # Additional information about this file can be found at
4 | # https://dart.dev/guides/language/analysis-options
5 |
--------------------------------------------------------------------------------
/packages/system/vyuh_extension_content/lib/content/action.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'action.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | Action _$ActionFromJson(Map json) => Action(
10 | title: json['title'] as String?,
11 | configurations: Action.configurationList(json['configurations']),
12 | );
13 |
--------------------------------------------------------------------------------
/packages/system/vyuh_extension_content/lib/content/condition.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'condition.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | Condition _$ConditionFromJson(Map json) => Condition(
10 | configuration: typeFromFirstOfListJson(json['configuration']),
11 | );
12 |
--------------------------------------------------------------------------------
/packages/system/vyuh_extension_content/test/vyuh_extension_content_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_auth/lib/content/email_password_form_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'email_password_form_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DefaultEmailPasswordFormLayout _$DefaultEmailPasswordFormLayoutFromJson(
10 | Map json) =>
11 | DefaultEmailPasswordFormLayout();
12 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_auth/lib/content/forgot_password_form_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'forgot_password_form_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | ForgotPasswordFormLayout _$ForgotPasswordFormLayoutFromJson(
10 | Map json) =>
11 | ForgotPasswordFormLayout();
12 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_auth/lib/content/phone_otp_form_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'phone_otp_form_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DefaultPhoneOtpFormLayout _$DefaultPhoneOtpFormLayoutFromJson(
10 | Map json) =>
11 | DefaultPhoneOtpFormLayout();
12 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_auth/lib/content/profile_form_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'profile_form_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | ProfileCardLayout _$ProfileCardLayoutFromJson(Map json) =>
10 | ProfileCardLayout();
11 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_auth/test/vyuh_feature_firebase_auth_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_developer/lib/pages/playground/widgets/feature_item.dart:
--------------------------------------------------------------------------------
1 | import 'package:vyuh_core/vyuh_core.dart';
2 |
3 | /// A data class to represent a feature item.
4 | ///
5 | final class FeatureItem {
6 | /// The title of the feature item.
7 | ///
8 | final String title;
9 |
10 | /// The feature descriptor of the feature item.
11 | ///
12 | final FeatureDescriptor? feature;
13 |
14 | /// Creates a new feature item.
15 | ///
16 | const FeatureItem({
17 | required this.title,
18 | this.feature,
19 | });
20 | }
21 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_developer/lib/pages/playground/widgets/widgets.dart:
--------------------------------------------------------------------------------
1 | export 'content_list.dart';
2 | export 'content_list_item.dart';
3 | export 'feature_item.dart';
4 | export 'no_preview_card.dart';
5 | export 'preview.dart';
6 | export 'preview_panel.dart';
7 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_developer/lib/vyuh_feature_developer.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | import 'package:flutter/material.dart';
4 | import 'package:vyuh_core/vyuh_core.dart';
5 |
6 | import 'routes.dart';
7 |
8 | /// Feature descriptor for the developer tools feature.
9 | ///
10 | final feature = FeatureDescriptor(
11 | name: 'developer',
12 | title: 'Developer Tools',
13 | description: 'See details of all features packaged in your app.',
14 | icon: Icons.code_rounded,
15 | routes: routes,
16 | );
17 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_developer/test/vyuh_feature_developer_test.dart:
--------------------------------------------------------------------------------
1 | void main() {}
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_onboarding/lib/default_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'default_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DefaultOnboardingLayout _$DefaultOnboardingLayoutFromJson(
10 | Map json) =>
11 | DefaultOnboardingLayout();
12 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_onboarding/lib/feature.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:vyuh_core/vyuh_core.dart';
3 | import 'package:vyuh_extension_content/vyuh_extension_content.dart';
4 | import 'package:vyuh_feature_onboarding/onboarding.dart';
5 |
6 | final feature = FeatureDescriptor(
7 | name: 'vyuh_feature_onboarding',
8 | title: 'Vyuh Feature Onboarding',
9 | description: 'Onboarding screens when user first opens the app.',
10 | icon: Icons.checklist,
11 | extensions: [
12 | ContentExtensionDescriptor(
13 | contentBuilders: [OnboardingContentBuilder()],
14 | )
15 | ],
16 | routes: () => [],
17 | );
18 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_onboarding/lib/vyuh_feature_onboarding.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'default_layout.dart';
4 | export 'feature.dart';
5 | export 'onboarding.dart';
6 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_onboarding/test/vyuh_feature_onboarding_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/action/delay.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'delay.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DelayAction _$DelayActionFromJson(Map json) => DelayAction(
10 | milliseconds: (json['milliseconds'] as num?)?.toInt() ?? 0,
11 | message: json['message'] as String? ?? '',
12 | isAwaited: json['isAwaited'] as bool? ?? false,
13 | );
14 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/action/navigate_back.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'navigate_back.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | NavigateBack _$NavigateBackFromJson(Map json) => NavigateBack(
10 | title: json['title'] as String?,
11 | isAwaited: json['isAwaited'] as bool? ?? false,
12 | );
13 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/action/restart.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'restart.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | RestartApplicationAction _$RestartApplicationActionFromJson(
10 | Map json) =>
11 | RestartApplicationAction(
12 | isAwaited: json['isAwaited'] as bool? ?? false,
13 | );
14 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/action/route_refresh.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'route_refresh.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | RouteRefreshAction _$RouteRefreshActionFromJson(Map json) =>
10 | RouteRefreshAction(
11 | title: json['title'] as String?,
12 | isAwaited: json['isAwaited'] as bool? ?? false,
13 | );
14 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/action/toggle_theme.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'toggle_theme.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | ToggleThemeAction _$ToggleThemeActionFromJson(Map json) =>
10 | ToggleThemeAction(
11 | isAwaited: json['isAwaited'] as bool? ?? false,
12 | );
13 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/condition/boolean.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'boolean.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | BooleanCondition _$BooleanConditionFromJson(Map json) =>
10 | BooleanCondition(
11 | value: json['value'] as bool? ?? false,
12 | evaluationDelayInSeconds:
13 | (json['evaluationDelayInSeconds'] as num?)?.toInt() ?? 0,
14 | );
15 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/card/default_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'default_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DefaultCardLayout _$DefaultCardLayoutFromJson(Map json) =>
10 | DefaultCardLayout(
11 | title: json['title'] as String? ?? '',
12 | maxDescriptionLines: (json['maxDescriptionLines'] as num?)?.toInt() ?? 2,
13 | );
14 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/card/list_item_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'list_item_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | ListItemCardLayout _$ListItemCardLayoutFromJson(Map json) =>
10 | ListItemCardLayout(
11 | title: json['title'] as String? ?? '',
12 | );
13 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/empty.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'empty.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | Empty _$EmptyFromJson(Map json) => Empty(
10 | layout: typeFromFirstOfListJson(json['layout']),
11 | modifiers: ContentItem.modifierList(json['modifiers']),
12 | );
13 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/group/carousel_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'carousel_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | CarouselGroupLayout _$CarouselGroupLayoutFromJson(Map json) =>
10 | CarouselGroupLayout(
11 | viewportFraction: (json['viewportFraction'] as num?)?.toDouble() ?? 0.75,
12 | );
13 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/group/default_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'default_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | DefaultGroupLayout _$DefaultGroupLayoutFromJson(Map json) =>
10 | DefaultGroupLayout();
11 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/group/grid_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'grid_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | GridGroupLayout _$GridGroupLayoutFromJson(Map json) =>
10 | GridGroupLayout(
11 | columns: (json['columns'] as num?)?.toInt() ?? 2,
12 | aspectRatio: (json['aspectRatio'] as num?)?.toDouble() ?? 1.0,
13 | scrollable: json['scrollable'] as bool? ?? false,
14 | );
15 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/group/list_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'list_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | ListGroupLayout _$ListGroupLayoutFromJson(Map json) =>
10 | ListGroupLayout(
11 | percentHeight: (json['percentHeight'] as num?)?.toDouble() ?? 0.5,
12 | );
13 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/content/portable_text/invoke_action.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'invoke_action.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | InvokeActionMarkDef _$InvokeActionMarkDefFromJson(Map json) =>
10 | InvokeActionMarkDef(
11 | action: Action.fromJson(json['action'] as Map),
12 | key: json['_key'] as String,
13 | type: json['_type'] as String,
14 | );
15 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/lib/ui/conditional_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'conditional_layout.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | LayoutCaseItem _$LayoutCaseItemFromJson(Map json) =>
10 | LayoutCaseItem(
11 | value: json['value'] as String? ?? '',
12 | item: typeFromFirstOfListJson(json['item']),
13 | );
14 |
--------------------------------------------------------------------------------
/packages/system/vyuh_feature_system/test/vyuh_feature_essentials_test.dart:
--------------------------------------------------------------------------------
1 | void main() {}
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_test/lib/test_utils.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/widgets.dart';
2 | import 'package:mocktail/mocktail.dart';
3 |
4 | class TestBuildContext extends Mock implements BuildContext {}
5 |
--------------------------------------------------------------------------------
/packages/system/vyuh_test/lib/vyuh_test.dart:
--------------------------------------------------------------------------------
1 | /// Test utilities for Vyuh packages
2 | library;
3 |
4 | export 'ready_check.dart';
5 | export 'test_utils.dart';
6 |
--------------------------------------------------------------------------------
/packages/system/vyuh_test/test/vyuh_test_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/packages/system/vyuh_widgetbook/doc/images/widgetbook.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/system/vyuh_widgetbook/doc/images/widgetbook.png
--------------------------------------------------------------------------------
/packages/vyuh_cli/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://www.dartlang.org/guides/libraries/private-files
2 |
3 | # Files and directories created by pub
4 | .dart_tool/
5 | .packages
6 | build/
7 | pubspec.lock
8 |
9 | # Files generated during tests
10 | .test_coverage.dart
11 | coverage/
12 | .test_runner.dart
13 |
14 | # Android studio and IntelliJ
15 | .idea
16 | _test
17 | bricks/**/pnpm-lock.yaml
18 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/.pubignore:
--------------------------------------------------------------------------------
1 | bricks/
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/_images/vyuh_cli.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/vyuh_cli/_images/vyuh_cli.png
--------------------------------------------------------------------------------
/packages/vyuh_cli/_images/vyuh_cli_doctor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/vyuh_cli/_images/vyuh_cli_doctor.png
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # 0.1.0+1
2 |
3 | - TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/README.md:
--------------------------------------------------------------------------------
1 | # vyuh_feature
2 |
3 | Generates a new Feature package for the Vyuh Framework
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/__brick__/{{ name.snakeCase() }}/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/__brick__/{{ name.snakeCase() }}/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/__brick__/{{ name.snakeCase() }}/README.md:
--------------------------------------------------------------------------------
1 | # {{ name.titleCase() }}
2 |
3 | Describe your feature in more detail here.
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/__brick__/{{ name.snakeCase() }}/lib/{{ name.snakeCase() }}.dart:
--------------------------------------------------------------------------------
1 | library {{ name.snakeCase() }};
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/__brick__/{{ name.snakeCase() }}/test/{{ name.snakeCase() }}_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature/hooks/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: mason_hooks
2 |
3 | environment:
4 | sdk: '>=3.0.0 <4.0.0'
5 |
6 | dependencies:
7 | mason: ^0.1.0
8 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature_sanity_schema/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # 1.0.0
2 |
3 | - Initial release of the Brick for generating a sanity schema for feature.
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature_sanity_schema/README.md:
--------------------------------------------------------------------------------
1 | # vyuh_feature_sanity_schema
2 |
3 | Generates a feature package for building Sanity schemas.
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature_sanity_schema/__brick__/{{ name.paramCase() }}/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature_sanity_schema/__brick__/{{ name.paramCase() }}/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # {{ name.paramCase() }}
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature_sanity_schema/__brick__/{{ name.paramCase() }}/README.md:
--------------------------------------------------------------------------------
1 | # {{ name.paramCase() }}
2 |
3 | This package contains the Sanity.io schemas for configuring your feature on the CMS
4 | [Vyuh Framework](https://vyuh.tech).
5 |
6 | ## Getting Started
7 |
8 | ## Reference
9 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature_sanity_schema/__brick__/{{ name.paramCase() }}/tsup.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'tsup';
2 |
3 | export default defineConfig({
4 | entry: ['src/index.ts'],
5 | dts: true,
6 | splitting: false,
7 | sourcemap: false,
8 | clean: true,
9 | minify: true,
10 | platform: 'browser',
11 | format: ['esm'],
12 | });
13 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_feature_sanity_schema/hooks/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: mason_hooks
2 |
3 | environment:
4 | sdk: '>=3.0.0 <4.0.0'
5 |
6 | dependencies:
7 | mason: ^0.1.0
8 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_item/__brick__/layouts/{{item_name.snakeCase()}}_layout.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | // ignore_for_file: unused_element
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_item/__brick__/{{item_name.snakeCase()}}.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | // ignore_for_file: unused_element
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_item/brick.yaml:
--------------------------------------------------------------------------------
1 | name: vyuh_item
2 | description: A Vyuh ContentItem template
3 | version: 0.1.0+1
4 |
5 | environment:
6 | mason: ">=0.1.0-dev <0.1.0"
7 |
8 | vars:
9 | item_name:
10 | type: string
11 | description: The name of the ContentItem
12 | prompt: ContentItem name
13 | feature_name:
14 | type: string
15 | description: The name of the feature
16 | prompt: Feature name
17 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # 1.0.0
2 |
3 | - Initial release for building a Vyuh App
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/.gitignore:
--------------------------------------------------------------------------------
1 | **/node_modules
2 | *.log
3 | build
4 | dist
5 | .sanity
6 | .DS_Store
7 | .idea
8 | coverage
9 | .dart_tool
10 | pubspec_overrides.yaml
11 | .flutter-plugins
12 | .flutter-plugins-dependencies
13 | *.iml
14 | *.lock
15 | mason-lock.json
16 | .mason
17 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/.npmrc:
--------------------------------------------------------------------------------
1 | link-workspace-packages=deep
2 | save-workspace-protocol=false
3 | save-prefix='^'
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/.prettierrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "semi": true,
3 | "printWidth": 80,
4 | "proseWrap": "always",
5 | "bracketSpacing": true,
6 | "singleQuote": true,
7 | "trailingComma": "all"
8 | }
9 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/README.md:
--------------------------------------------------------------------------------
1 | # {{ name.titleCase() }}
2 |
3 | {{ description }}
4 |
5 | > This app is powered by the [Vyuh Framework](https://vyuh.tech).
6 |
7 | ## Technologies at play
8 |
9 | - Dart
10 | - Flutter
11 | - Node.js
12 | - Vyuh Framework
13 |
14 | ## Getting Started
15 |
16 | - All apps are in the `/apps` directory. This includes the Flutter App and the
17 | Sanity Studio (if using the CMS)
18 | - All plugins are in the `/plugins` directory
19 | - All features are in the `/features` directory
20 | - All shared packages are in the `/packages` directory
21 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/analysis_options.yaml:
--------------------------------------------------------------------------------
1 | include: package:flutter_lints/flutter.yaml
2 |
3 | # Additional information about this file can be found at
4 | # https://dart.dev/guides/language/analysis-options
5 | linter:
6 | rules:
7 | - directives_ordering
8 |
9 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/apps/README.md:
--------------------------------------------------------------------------------
1 | # Put all your apps in this folder
2 |
3 | This includes:
4 |
5 | - CMS Studio
6 | - Main Flutter app
7 | - Tools that you may using for your project
8 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/features/README.md:
--------------------------------------------------------------------------------
1 | # Put all your features in this folder
2 |
3 | Let this file be the **Table of Contents** for all the features in your app,
4 | like so:
5 |
6 | ## Features
7 |
8 | - [Feature 1](./feature1/README.md)
9 | - [Feature 2](./feature2/README.md)
10 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/features/counter/feature_counter/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 1.0.0
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/features/counter/feature_counter/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/features/counter/feature_counter/lib/feature_counter.dart:
--------------------------------------------------------------------------------
1 | library feature_counter;
2 |
3 | export 'feature.dart';
4 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/features/counter/feature_counter/test/feature_counter_test.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/melos.yaml:
--------------------------------------------------------------------------------
1 | name: {{ name.snakeCase() }}_workspace
2 | description: {{ description }}
3 |
4 |
5 | packages:
6 | - plugins/*
7 | - features/*
8 | - features/*/*
9 | - packages/*
10 | - apps/*
11 |
12 | command:
13 | version:
14 | workspaceChangelog: false
15 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/overrides/.env:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/overrides/.env
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/overrides/assets/app-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/overrides/assets/app-icon.png
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/overrides/assets/launchscreen-image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vyuh-tech/vyuh/5ea6463ca7a5d72a7bd937e983ca7f1e44c0c560/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/overrides/assets/launchscreen-image.png
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/overrides/lib/main.dart:
--------------------------------------------------------------------------------
1 | import 'package:feature_counter/feature_counter.dart' as counter;
2 | import 'package:vyuh_core/vyuh_core.dart' as vc;
3 | import 'package:vyuh_feature_developer/vyuh_feature_developer.dart'
4 | as developer;
5 | import 'package:vyuh_feature_system/vyuh_feature_system.dart' as system;
6 |
7 | void main() async {
8 | vc.runApp(
9 | initialLocation: '/counter',
10 | features: () => [
11 | system.feature,
12 | developer.feature,
13 | counter.feature,
14 | ],
15 | );
16 | }
17 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "{{ name.paramCase() }}",
3 | "version": "1.0.0",
4 | "description": "{{ description }}",
5 | "scripts": {
6 | "test": "echo \"Error: no test specified\" && exit 1"
7 | },
8 | "private": true,
9 | "keywords": [],
10 | "author": "",
11 | "license": "ISC",
12 | "devDependencies": {
13 | "prettier": "^3.3.3",
14 | "typescript": "^5.6.3"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/packages/README.md:
--------------------------------------------------------------------------------
1 | # Put all your shared packages in this folder
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/plugins/README.md:
--------------------------------------------------------------------------------
1 | # Put all your plugins in this folder
2 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/__brick__/{{ name.snakeCase() }}/pnpm-workspace.yaml:
--------------------------------------------------------------------------------
1 | packages:
2 | - apps/*
3 | - schemas/*
4 | - features/*/*
5 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/hooks/commands/cli_command.dart:
--------------------------------------------------------------------------------
1 | import 'dart:async';
2 |
3 | import 'package:mason/mason.dart';
4 |
5 | abstract base class CliCommand {
6 | Future run(HookContext context) async {}
7 |
8 | Future trackOperation(
9 | HookContext context, {
10 | required String startMessage,
11 | required String endMessage,
12 | required Future Function() operation,
13 | }) async {
14 | final progress = context.logger.progress(startMessage);
15 |
16 | await operation();
17 |
18 | progress.complete(endMessage);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/bricks/vyuh_project/hooks/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: mason_hooks
2 |
3 | environment:
4 | sdk: '>=3.0.0 <4.0.0'
5 |
6 | dependencies:
7 | mason: ^0.1.0
8 | yaml: ^3.1.2
9 | yaml_edit: ^2.2.1
10 | path: ^1.8.0
11 | process_run: ^1.2.1+1
12 | io: ^1.0.5
13 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/dart_test.yaml:
--------------------------------------------------------------------------------
1 | tags:
2 | version-verify:
3 | skip: "Should only be run during pull request. Verifies if version file is updated."
--------------------------------------------------------------------------------
/packages/vyuh_cli/example/README.md:
--------------------------------------------------------------------------------
1 | # Example
2 |
3 | ```sh
4 | # Activate Vyuh CLI
5 | dart pub global activate vyuh_cli
6 |
7 | # See list of available commands
8 | vyuh --help
9 | ```
10 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/lib/commands/doctor/src/utils/utils.dart:
--------------------------------------------------------------------------------
1 | //GENERATED BARREL FILE
2 | export 'comand_version_validator.dart';
3 | export 'doctor_validator.dart';
4 | export 'user_messages.dart';
5 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/lib/commands/doctor/src/validators/node_validator.dart:
--------------------------------------------------------------------------------
1 | import 'package:vyuh_cli/commands/doctor/src/utils/utils.dart';
2 |
3 | class NodeValidator extends DoctorValidator {
4 | NodeValidator() : super('Node');
5 |
6 | @override
7 | String get installHelp => 'https://nodejs.org/en/download';
8 |
9 | @override
10 | Future validate() => commandVersionValidator(
11 | this,
12 | command: 'node',
13 | );
14 |
15 | @override
16 | String extractVersion(String output) {
17 | return output.isEmpty ? 'Unknown' : output;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/lib/commands/doctor/src/validators/pnpm_validator.dart:
--------------------------------------------------------------------------------
1 | import 'package:vyuh_cli/commands/doctor/src/utils/utils.dart';
2 |
3 | class PnPmValidator extends DoctorValidator {
4 | PnPmValidator() : super('PNPM');
5 |
6 | @override
7 | String get installHelp => 'https://pnpm.io/installation';
8 |
9 | @override
10 | Future validate() => commandVersionValidator(
11 | this,
12 | command: 'pnpm',
13 | );
14 |
15 | @override
16 | String extractVersion(String output) {
17 | return output.isEmpty ? 'Unknown' : output;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/lib/commands/doctor/src/validators/validators.dart:
--------------------------------------------------------------------------------
1 | //GENERATED BARREL FILE
2 | export 'dart_validator.dart';
3 | export 'flutter_validator.dart';
4 | export 'melos_validator.dart';
5 | export 'node_validator.dart';
6 | export 'pnpm_validator.dart';
7 | export 'sanity_validator.dart';
8 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/lib/template.dart:
--------------------------------------------------------------------------------
1 | import 'package:mason/mason.dart';
2 | import 'package:universal_io/io.dart';
3 |
4 | abstract class Template {
5 | const Template({
6 | required this.name,
7 | required this.bundle,
8 | required this.help,
9 | });
10 |
11 | final String name;
12 |
13 | final MasonBundle bundle;
14 |
15 | final String help;
16 |
17 | Future onGenerateComplete(Logger logger, Directory outputDir);
18 | }
19 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/lib/version.dart:
--------------------------------------------------------------------------------
1 | // Generated code. Do not modify.
2 | const packageVersion = '0.0.10+5';
3 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/lib/vyuh_cli.dart:
--------------------------------------------------------------------------------
1 | /// vyuh_cli, A Vyuh Flutter project created by Vyuh CLI.
2 | ///
3 | /// ```sh
4 | /// # activate vyuh_cli
5 | /// dart pub global activate vyuh_cli
6 | ///
7 | /// # see usage
8 | /// vyuh --help
9 | /// ```
10 | library;
11 |
--------------------------------------------------------------------------------
/packages/vyuh_cli/test/ensure_build_test.dart:
--------------------------------------------------------------------------------
1 | @Tags(['version-verify'])
2 | library;
3 |
4 | import 'package:build_verify/build_verify.dart';
5 | import 'package:test/test.dart';
6 |
7 | void main() {
8 | test('ensure_build', expectBuildClean);
9 | }
10 |
--------------------------------------------------------------------------------
/pnpm-workspace.yaml:
--------------------------------------------------------------------------------
1 | packages:
2 | - apps/*
3 | - schemas/*
4 | - examples/*/*
5 |
--------------------------------------------------------------------------------
/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: vyuh
2 |
3 | environment:
4 | sdk: '>=3.2.0 <4.0.0'
5 |
6 | dev_dependencies:
7 | flutter_lints: ^5.0.0
8 | melos: ^6.2.0
9 | pubspec_parse: ^1.3.0
10 | mason_logger: ^0.3.1
11 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-auth/.eslintrc.mjs:
--------------------------------------------------------------------------------
1 | export default {
2 | root: true,
3 | env: { browser: true, es2020: true },
4 | extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'],
5 | ignorePatterns: ['dist', '.eslintrc.mjs'],
6 | parser: '@typescript-eslint/parser',
7 | plugins: [],
8 | rules: {},
9 | };
10 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-auth/README.md:
--------------------------------------------------------------------------------
1 | # @vyuh/sanity-schema-auth
2 |
3 | The schema for the authentication module of [Vyuh](https://vyuh.tech).
4 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-auth/src/content/util.ts:
--------------------------------------------------------------------------------
1 | import { defineField } from 'sanity';
2 |
3 | export const showLoginErrorField = () =>
4 | defineField({
5 | name: 'showLoginError',
6 | title: 'Show Login Error',
7 | description: 'Show an error message when login fails',
8 | type: 'boolean',
9 | initialValue: true,
10 | });
11 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-auth/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './feature';
2 | export { EmailPasswordFormDescriptor } from './content/email-password-form';
3 | export { ForgotPasswordFormDescriptor } from './content/forgot-password-form';
4 | export { PhoneOtpFormDescriptor } from './content/phone-otp-form';
5 | export { OAuthSignInDescriptor } from './content/oauth-signin';
6 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-auth/tsup.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'tsup';
2 |
3 | export default defineConfig({
4 | entry: ['src/index.ts'],
5 | dts: true,
6 | splitting: false,
7 | sourcemap: false,
8 | clean: true,
9 | minify: true,
10 | platform: 'browser',
11 | format: ['esm'],
12 | });
13 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-onboarding/.eslintrc.mjs:
--------------------------------------------------------------------------------
1 | export default {
2 | root: true,
3 | env: { browser: true, es2020: true },
4 | extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'],
5 | ignorePatterns: ['dist', '.eslintrc.mjs'],
6 | parser: '@typescript-eslint/parser',
7 | plugins: [],
8 | rules: {},
9 | };
10 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-onboarding/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-onboarding/.npmignore:
--------------------------------------------------------------------------------
1 | src
2 | eslint.config.mjs
3 | tsup.config.ts
4 | tsconfig.json
5 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-onboarding/README.md:
--------------------------------------------------------------------------------
1 | # @vyuh/sanity-schema-onboarding
2 |
3 | This package contains the Sanity.io schemas for Onboarding screens
4 | [Vyuh Framework](https://vyuh.tech).
5 |
--------------------------------------------------------------------------------
/schemas/vyuh-sanity-schema-onboarding/tsup.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'tsup';
2 |
3 | export default defineConfig({
4 | entry: ['src/index.ts'],
5 | dts: true,
6 | splitting: false,
7 | sourcemap: false,
8 | clean: true,
9 | minify: true,
10 | platform: 'browser',
11 | format: ['esm'],
12 | });
13 |
--------------------------------------------------------------------------------