yuno_page_template 1.0.67 copy "yuno_page_template: ^1.0.67" to clipboard
yuno_page_template: ^1.0.67 copied to clipboard

Flutter UI kit for Yuno Learning: responsive course, batch, and instructor widgets; V4 + legacy API models/adapters; share widgets; and ready-to-use pages for web, iOS, and Android.

1.0.67 #

Improvements #

  • refineBatches: format batch date and time from start_end.display_start (no fallback to start_date / class_time)

1.0.66 #

Added #

  • V4CourseInstructorAvailabilitySummary: week strip, grouped hours, and Available/Unavailable legend for usual instructor hours
  • Availability helpers: AvailabilityDaySummary, consecutive-day grouping, sparse-hours detection, and “usual hours” helper copy
  • V4CourseDetailPageShell: optional availabilityDaySummaries passed through to the availability sheet

Improvements #

  • getPriceForPersonalization: maps GROUP / 1-to-1 × online / in-person via based_on keys; does not fall back to another teaching mode
  • V4CourseInstructorAvailabilitySheet: close control, instructor subtitle; shows summary for regular hours and the slot grid only when hours are sparse
  • V4CourseBatchesSection: hide “see more batches” when the current list is empty

1.0.65 #

Added #

  • Theming contract: dual-theme test helper (pumpV4Widget) so shells track ColorScheme.primary instead of brand hex
  • Shared primitives: V4EmptyState, V4BottomSheetScaffold, V4SelectableChip, V4DayChips, V4TimeSlotGrid, V4RangeSliderRow
  • Pre-login shells: V4OnboardingPageShell, V4ExplorePageShell, V4CourseSearchShell, V4LetterAvatarListShell, V4GuestProfileShell, V4DocumentPageShell, V4ShareSheet
  • Listing filters: V4LevelSheet, V4AvailabilitySheet
  • Post-login shells: V4MyCoursesPageShell, V4MyCourseProgressCard, V4LoggedInProfileShell, V4SettingsListShell, V4FeedbackFlowShell
  • V4CourseDetailPageShell: optional onShareTarget and share action that opens V4ShareSheet

Improvements #

  • V4CourseCard: Figma listing layout (mode badge, primary price + GST, duration, full-width Book a Demo Class)
  • V4LocationCourseCard: filled Book a Demo CTA; outline uses colorScheme.outlineVariant
  • V4CategoryCoursesPageShell: "N courses found" heading
  • V4CategoryCoursesFilterSheet / V4CategoryCoursesFilterPanel: Level + Your availability quick chips; days of week enabled
  • V4CourseDetailPriceCta: "Starts at" label; price uses colorScheme.primary
  • V4ClassDetailsWidget: Absent badge uses colorScheme tokens instead of hardcoded hex
  • Place hours parsing: Address / Place / TimeSlot / WorkingHour tolerate open_hours from GET v4/places/{id}
  • Media lifecycle: pause pod_player on leave/background; blank practice-test WebView on dispose; CORS-safe course hero images

1.0.64 #

Added #

  • V4CourseCancellationSection / V4CourseDetailPageShell: optional cancellation policy URL + open callback with "View refund and cancellation policy" link
  • V4CourseCarouselSection: "All" filter pill alongside category filters for academy carousels
  • V4CorsSafeNetworkImage: web-friendly network image using HTML <img> so third-party avatars (e.g. Google profile photos) work without CORS

Improvements #

  • PracticeTestCard: hide "Be first to take this test" when nobody has taken the test
  • V4CourseDetailBanner: show instructor count with correct singular/plural label
  • Instructor avatars (V4CourseDetailBanner, V4CourseInstructorCard, V4CourseInstructorIdentityRow): use V4CorsSafeNetworkImage instead of CachedNetworkImage for reliable web rendering
  • Top course filters parsing: tolerate items/title filter payload shapes and safer id parsing

1.0.63 #

Fixes #

  • V4CourseInstructorAvailabilitySheet: rebuild the open sheet when availability fetch completes so loading → empty/grid/error states appear correctly

1.0.62 #

Added #

  • CourseCard: dynamic Online / In-person teaching-mode chips from per-course flags (hasOnline / hasInPerson)
  • OldCourse: hasOnline and hasInPerson fields for listing cards

Improvements #

  • Instructor availability sheet/grid: show an empty state when the instructor has no working hours instead of an all-unchecked grid

1.0.61 #

Added #

  • CourseCard: optional showAcademy (default true) to hide the academy logo/name row

1.0.60 #

Added #

  • V4CourseCarouselSection: responsive, scroll-aware carousel navigation arrows for tablet and desktop
  • LocationCourseCardModel: instructor badges with image and initials fallback

Improvements #

  • Course detail carousels: screenshot-style cards with image, instructor badges, and bottom-aligned starting price
  • Similar course queries: optional academy scoping and academy-only result normalization

1.0.59 #

Added #

  • V4CourseDetailPriceCta / V4CourseDetailPageShell: optional showBookDemo (defaults to showPrice) so Book Demo can show independently of price
  • V4CourseDetailDesktopRail: sticky conversion rail for desktop/web (media, price, Book Demo, See Availability)
  • V4CourseDetailPageShell: responsive desktop two-column layout; availability section scroll key; desktop instructor availability dialog
  • V4CourseDetailBanner: optional showHeroMedia for desktop layouts that move media into the rail
  • V4CourseDetailPageSkeleton: desktop two-column loading skeleton (isDesktop)
  • OldCourse: bookDemoTeachingMode and organizationId fields
  • CourseSearchResult / LocationCourseCardModel: featuredMedia / imageUrl for carousel thumbnails
  • V4LocationCourseCard: carousel-mode course image header

Improvements #

  • V4CourseBatchesSection: clearer batch list layout and CTA presentation on course detail

1.0.58 #

Added #

  • CourseCard / V4CourseCard: optional showSeeAvailability (default true) to hide the See Availability CTA

1.0.57 #

Added #

  • CourseCard / V4CourseCard: optional showPricePerHour (default true) to hide the per-hour price line while keeping total price

1.0.56 #

Fixes #

  • V4PastClassDetailsDrawer: fix back button overlapping the "Past Classes" title
  • V4PastClassDetailsDrawer: play private Vimeo recordings in-app via flutter_inappwebview with allowlisted base URL https://www.yunolearning.com/ (domain privacy)
  • V4PastClassDetailsDrawer: keep PodPlayer for direct HLS/MP4/YouTube; web still uses iframe embed
  • V4PastClassLearnerCard / V4PastClassDetailsDrawer: hide Attendance row and progress bar on past classes

1.0.55 #

Improvements #

  • OldLearnerCourse parsing: coerces string/int numeric fields, tolerates missing lists and instructor payloads, and avoids crashes on malformed API data
  • V4ClassDetailsWidget: formats upcoming and past class start times in the class timezone (aligned with learner cards)

1.0.54 #

Improvements #

  • ProfileEditPageWidget: optional isUpdating flag disables fields and shows a loading spinner on Update
  • V4 Course model: tolerates empty academy arrays, non-map category/academy payloads, and skips malformed instructor entries
  • V4CategoryCoursesPageShell: shows a skeleton for the results heading while the page is loading
  • V4ClassesSchedule: optional physics parameter for nested scroll views (defaults to AlwaysScrollableScrollPhysics)

1.0.53 #

Added #

  • Course detail (v4): V4CourseDetailPageShell with banner, price CTA, schedule, batches, instructors, carousels, academy, and cancellation sections
  • Course detail logic: pricing, batch list/query helpers, carousel builders, and instructor availability utilities
  • Course detail models: CourseVariant, CourseDetailInstructor, AcademyDetail, CourseDetailErrorKind
  • V4CourseDetailPageSkeleton: loading skeleton for the course detail page

1.0.52 #

Added #

  • V4LocationCourseCard: online/in-person location course card with compact and carousel layouts
  • normalizeLocationCourse: maps API course data to location card models with price, duration, and GST formatting

Improvements #

  • V4 class cards: refactored learner/instructor cards onto shared v4_class_card_primitives
  • V4 classes schedule: improved mobile date header and filter layout
  • V4 models: richer parsing for Course, Category, CourseSearchResult, CoursePrice, and Academy
  • V4CourseCard: short description support after price display
  • timezone: bumped to ^0.10.0

1.0.51 #

Added #

  • Category courses (v4): CourseSearchState, category landing context, filter state/chip logic, resource card builder
  • Category courses UI: V4CategoryCoursesPageShell with filter panel/sheet, applied chips, hero, paginator, resource cards
  • YunoFilter: optional currency field for price slider bounds

1.0.50 #

Improvements #

  • CourseDetailsWidget: Simplified course economics display by using the primary (first) economy entry instead of choice chips; added a “Starts at” label and show the lowest listed price (preferring INR when multiple currencies exist), with clearer multi-currency formatting
  • V4 → legacy adapter (v4_course_to_legacy): Improved mapping for demos (book_a_demo), instructors (profile_url, richer mapped_instructors), group vs 1-to-1 flags from personalization names, course economics IDs and price rows (selling vs list tax-inclusive prices, INR ordering, sensible fallbacks), featured media (YouTube detection, thumbnails), invite link and published_at, and what_you_get / expected_time_investment structure
  • V4 Course model: Added enrollmentType, instructorInvitationUrl, and publishedAt; personalization can be populated from variants when the top-level personalization array is absent
  • V4 Instructor / User models: More tolerant JSON—User when the instructor payload is flat or uses nested image; safer parsing of id, role, names, and image_url

1.0.49 #

Improvements #

  • Code quality improvements: Refactored web-only iframe code into a centralized helper (web_iframe_view_factory.dart) with proper conditional exports, eliminating dart:html and avoid_web_libraries_in_flutter warnings from package analysis
  • Linting fixes: Fixed local variable naming convention (_buildCardbuildCard), removed unnecessary imports, and fixed documentation comment formatting
  • Analyzer improvements: Reduced analyzer issues from 47 to 40 by properly isolating web-only code and cleaning up code style issues

1.0.48 #

Fixes #

  • Fixed Android build errors: Resolved build failures caused by web-only APIs (dart:html and dart:ui_web) by adding proper conditional imports and platform guards in CourseDetailsWidget and V4PastClassDetailsDrawer. The package now builds successfully on Android, iOS, and web platforms.

1.0.47 #

Improvements #

  • CourseDetailsWidget: Enhanced YouTube video iframe handling with embed URL validation, failed view type tracking to prevent retry loops, improved iframe configuration, and better debugging support

1.0.46 #

Improvements #

  • CourseDetailsWidget: Improved YouTube video iframe handling with error handling, view type caching to prevent re-registration, and enhanced fallback UI when video embedding fails

1.0.45 #

Improvements #

  • CourseDetailsWidget: Enhanced YouTube video handling with improved video ID extraction from various URL formats, support for embed URLs, and web-specific iframe rendering for better cross-platform compatibility

1.0.44 #

Improvements #

  • Bug fixes

1.0.43 #

Improvements #

  • V4PastClassDetailsDrawer: Added support for video embed HTML with iframe rendering for web platform, with optional fetchVideoDetails callback to fetch video details from API

1.0.42 #

Improvements #

  • InstructorCard: Added optional showAvailability parameter to conditionally show/hide availability button
  • PracticeTestCard: Fixed text overflow issue in learner count display by replacing Wrap with Row and Flexible widget
  • CourseDetailsWidget: Enhanced YouTube video handling with improved URL detection, better error handling, and fallback UI to open videos in browser when player initialization fails
  • V4ClassFiltersPanel: Improved filter panel UI with scrollable content, better spacing, responsive button layout, and enhanced dropdown styling
  • BatchesTabbedSection: Updated to hide availability button in instructor cards

1.0.41 #

Improvements #

  • Fix: Robust JSON parsing for v3/category/practice (prevents "type 'String' is not a subtype of type 'int'")
  • Performance: Reduce image decode/memory cost (no UI change)

1.0.40 #

Improvements #

  • Expanded package description for pub.dev
  • Fixed analyzer warnings: removed unused imports, variables and unnecessary casts
  • Reverted withValues to withOpacity for wider Flutter SDK compatibility
  • Improved README with examples and clearer usage docs

Key Improvements Made #

  • Modern Material Design 3 styling throughout all components
  • Enhanced responsive design for better mobile and desktop experience
  • Improved error handling and fallback mechanisms
  • Better data mapping between V4 and legacy API formats
  • Enhanced user experience with better visual hierarchy and interactions
  • Robust type safety with proper null handling
  • Better performance with optimized layouts and rendering
  • Enhanced accessibility with proper semantic structure

Maintenance #

  • Prepared package for publish (dry-run clean)

1.0.39 #

Features and Fixes #

  • Resolve analyzer warning in legacy adapter to satisfy pub.dev checks
  • Light and Dark mode theme
  • New UI and V4 Classes
  • V4 Course Search
  • Max width and Page Heading

1.0.38 #

Features #

  • V4 Upcoming and Past Classes
  • V4 Course Search

1.0.37 #

Features #

  • Empty state for batches

1.0.36 #

Features #

  • Added v4 batches into course detail page

Breaking Changes #

  • None - this is a feature addition

Dependencies #

  • No new dependencies added

1.0.34 - 2025-06-10 #

  • course card UI added for v4, course search model added, yuno filter model updated

[1.0.34] - 2025-06-03 #

  • instructor info model updated, in-person model added in upcoming class model, class details page UI updated

1.0.33 - 2025-05-26 #

  • old class details page added for backward compatibility

1.0.32 - 2025-05-23 #

  • course card UI updated, icon color updated

1.0.31 - 2025-05-23 #

  • course card UI updated, icon size updated

1.0.30 - 2025-05-23 #

  • course card UI updated, icon size updated

1.0.29 - 2025-05-23 #

  • course card UI updated, icon color updated

1.0.28 - 2025-05-21 #

  • old category response updated

1.0.27 - 2025-05-21 #

  • model synced with stoplight

1.0.26 - 2025-05-15 #

  • batch card UI updated

1.0.25 - 2025-05-15 #

  • academy instructor response and UI added, event callback added on academy click, course and batch card UI updated

1.0.24 - 2025-05-13 #

  • GoogleMap, Place model and its dependant models updated

1.0.23 - 2025-05-13 #

  • Classroom model updated

1.0.22 - 2025-05-13 #

  • Floor and WorkingHours model updated

1.0.21 - 2025-05-13 #

  • Academy model updated

1.0.20 - 2025-05-09 #

  • Course model and its dependant models updated

1.0.19 - 2025-05-09 #

  • Course model and its dependant models updated

1.0.18 - 2025-05-01 #

  • Organization model and its dependant models updated

1.0.17 - 2025-05-01 #

  • UI updated on instructor and learner past class card

1.0.16 - 2025-04-29 #

  • Category details response updated

1.0.15 - 2025-04-29 #

  • Class Details UI updated

1.0.14 - 2025-04-29 #

  • DateTime object replaced with string

1.0.13 - 2025-04-29 #

  • Class details page bug fixes

1.0.12 - 2025-04-29 #

  • Past class model updated

1.0.11 - 2025-04-29 #

  • Edit/Delete menu added on instructor upcoming class card

1.0.10 - 2025-04-28 #

  • Upcoming, Past and Class Details UI improvement

1.0.9 - 2025-04-25 #

  • Attendance, Availability, ExamResult, Resource, Sub Category model added, some model updated

1.0.8 - 2025-04-24 #

  • Data type issue fixed in past class (actual)

1.0.7 - 2025-04-24 #

  • Multiple model bug fixed for null check

1.0.6 - 2025-04-24 #

  • Batch bug fixed

1.0.5 - 2025-04-24 #

  • Class Title bug fixed

1.0.4 - 2025-04-23 #

  • Bug fixes

1.0.3 - 2025-04-23 #

  • Bug fixes

1.0.2 - 2025-04-23 #

  • Organization model updated

1.0.1 - 2025-04-23 #

  • Organization model updated, filter model added

1.0.0 - 2025-04-23 #

  • Major Change: Updated to Yuno Learning V4 Models

0.1.11 - 2025-04-21 #

  • footer url changed

0.1.10 - 2025-04-14 #

  • study material index issue fixed

0.1.9 - 2025-03-19 #

  • instructor and learner info response updated for v3 api

0.1.8 - 2025-03-06 #

  • short video issue fixed

0.1.7 - 2025-02-28 #

  • academy id and name added in CourseDetailsResponse

0.1.6 - 2025-02-28 #

  • instructor image rounded

0.1.5 - 2025-02-28 #

  • academy id and name added in CoursesListResponse

0.1.4 - 2025-02-11 #

  • writing task card check added

0.1.3 - 2025-02-05 #

  • instructor info model added

0.1.2 - 2025-02-03 #

  • footer updated

0.1.1 - 2025-02-03 #

  • footer and error widget icon dynamic added

0.1.0 - 2025-01-29 #

  • bookmark check added on resources

0.0.49 - 2025-01-20 #

  • image rendering issue fixed

0.0.48 - 2025-01-09 #

  • instructor about page bug fixed

0.0.47 - 2025-01-09 #

  • instructor bottom sheet bug fixed

0.0.46 - 2025-01-08 #

  • fixed course details page bug

0.0.45 - 2024-12-26 #

  • renamed category with YunoCategory

0.0.44 - 2024-12-18 #

  • video alignment fixed for web

0.0.43 - 2024-12-18 #

  • platform check error fixed

0.0.42 - 2024-12-17 #

  • minor UI improvement

0.0.41 - 2024-12-16 #

  • minor UI improvement

0.0.40 - 2024-12-16 #

  • UI improvement

0.0.39 - 2024-12-16 #

  • UI improvement

0.0.38 - 2024-12-13 #

  • instructor model updated

0.0.37 - 2024-12-13 #

  • instructor past class model and card added

0.0.36 - 2024-12-05 #

  • improvement for model answer

0.0.35 - 2024-12-05 #

  • improvement for model answer

0.0.34 - 2024-12-05 #

  • improvement

0.0.33 - 2024-12-05 #

  • improvement

0.0.32 - 2024-12-05 #

  • space issue fixed on evaluation

0.0.31 - 2024-12-05 #

  • side drawer added for evaluation

0.0.30 - 2024-12-05 #

  • writing task UI flow updated for web

0.0.29 - 2024-12-04 #

  • button visibility check on past class card

0.0.28 - 2024-12-04 #

  • course card updated for free item

0.0.27 - 2024-12-03 #

  • instructor upcoming class card and response added

0.0.26 - 2024-11-26 #

  • resource bug fixed on course details page

0.0.25 - 2024-11-26 #

  • resource bug fixed on course details page

0.0.24 - 2024-11-26 #

  • resource bug fixed on course details page

0.0.23 - 2024-11-25 #

  • batch card improvement

0.0.22 - 2024-11-19 #

  • price check added on batch

0.0.21 - 2024-11-19 #

  • package updates

0.0.20 - 2024-11-19 #

  • bug fixes

0.0.19 - 2024-11-18 #

  • bug fixes

0.0.18 - 2024-11-18 #

  • bug fixes

0.0.17 - 2024-11-18 #

  • more card and model added

0.0.16 - 2024-11-18 #

  • more card and model added

  • [0.0.15] - 2024-11-09 #

  • bug fixed

  • [0.0.14] - 2024-11-09 #

  • bug fixed

0.0.13 - 2024-11-09 #

  • bug fixed

0.0.12 - 2024-11-09 #

  • bug fixed
  • Some extra page added

0.0.11 - 2024-11-07 #

  • bug fixed

0.0.10 - 2024-11-07 #

  • Known issue fixed
  • Extra model added

0.0.9 - 2024-11-06 #

  • Known issue fixed

0.0.8 - 2024-11-06 #

  • Article Details Page
  • eBook Details page
  • Document Details Page
  • Video Details Page
  • Class Details Page
  • Writing Task Page
  • Evaluation Page
  • Course Details
  • Practice Details
  • Collection Details
  • Pdf Viewer Added

0.0.7 - 2024-10-30 #

  • Study material card added
  • Review card added
  • Result card added
  • Active and past course added
  • Instructor short profile added
  • Attendance widget added

0.0.6 - 2024-10-30 #

  • Resource Card updated
  • Past, Upcoming Card updated
  • Study Material Card updated
  • Practice Test Card updated
  • Course Card updated
  • Category card added
  • Batch card added

0.0.5 - 2024-06-27 #

  • Resource Card added
  • Past, Upcoming Card added
  • Study Material Card added
  • Practice Test Card added
  • Course Card added

0.0.4 - 2024-01-19 #

  • Navigation quiz bug fixed

0.0.3 - 2024-01-19 #

  • Course item added
  • Navigation callback added

0.0.2 - 2024-01-17 #

  • Typography and validator added
getTextTheme("fontFamily", ThemeData.light().textTheme);
getTextTheme("fontFamily", ThemeData.dark().textTheme);

0.0.1 - 2024-01-15 #

  • All resources widget added.
3
likes
110
points
1.13k
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Flutter UI kit for Yuno Learning: responsive course, batch, and instructor widgets; V4 + legacy API models/adapters; share widgets; and ready-to-use pages for web, iOS, and Android.

Repository (GitHub)

License

MIT (license)

Dependencies

cached_network_image, expandable, flutter, flutter_html, flutter_inappwebview, flutter_rating_bar, horizontal_list, intl, lottie, path_provider, pdfrx, pod_player, responsive_grid_list, shimmer, side_sheet, timezone, url_launcher, webview_flutter, youtube_player_iframe

More

Packages that depend on yuno_page_template