restage_codegen 1.2.0 copy "restage_codegen: ^1.2.0" to clipboard
restage_codegen: ^1.2.0 copied to clipboard

Write your UI as real Flutter widgets — your own design system, not a dialect — and restage_codegen compiles it into the blobs the Restage SDK ships over the air.

Changelog #

1.2.0 #

  • Compile customer @RestageWidget code into a standalone A2UI catalog: the customer-only builder emits an A2UI document + generated Dart for the app's own widgets, alongside the built-in catalog.
  • Carry producer-facing metadata into generated A2UI catalogs: widget and property descriptions, plus the new optional usage steering text, emit into the document's system-prompt fragments.
  • Support general-delivery flows: @FlowSource(delivery: FlowDeliveryMode.general) generates flows with untyped Map results, checked by build-time validators.
  • Add message and survey screen/flow builders: flow and screen codegen is now surface-parameterized, so message and survey surfaces reuse the onboarding builders.
  • Encode opaque lists of structured values in the customer catalog (pairs with rfw_catalog_schema 1.1.0 / rfw_catalog_compiler 1.1.0).

1.1.0 #

  • Emit the customer widget catalog (catalog.json) so registered custom widgets resolve in authored surfaces.
  • Additive codegen support for upcoming surface work; no breaking changes.

1.0.4 #

  • Carry each component's full data schema in the standalone A2UI catalog document, not only the component discriminator, so a consumer reading the document alone (without the generated Dart) sees every component's fields and can generate rich payloads against it.
  • Suppress unused_element in the generated A2UI catalog so a catalog that references only some of the shared helpers analyzes clean in the consumer's project.

1.0.3 #

  • Emit a rich A2UI catalog for a customer @RestageWidget whose property is typed as a data class: nested data classes, lists of objects, String-keyed maps, and named records each generate a genui schema that reconstructs and renders the value, with a fail-safe on a missing required value.
  • Infer a structured property's required-ness from the widget's default constructor, so a value the constructor requires is marked required even when the annotation omits it.
  • Exclude a customer widget carrying a structured property from the RFW catalog/factory build (a non-fatal, logged exclusion) — it renders via the A2UI emit target; native (RFW) rendering of custom structured data is a tracked future capability.

1.0.2 #

  • Lower the analyzer ceiling to >=10.0.0 <13.0.0. NamedExpression was removed and ArgumentList.arguments changed to NodeList<Argument> in analyzer 13.0.0 (not 14.0.0 as the 1.0.1 note stated), so the previous <14.0.0 constraint admitted analyzer 13.x, which this package's argument-list lowering does not compile against. The build_runner toolchain resolves analyzer 12.x anyway, so this matches what consumers actually use.

1.0.1 #

  • Widen the analyzer dependency constraint to >=10.0.0 <14.0.0: raise the floor to a verified-compiling version and admit analyzer 13.x. The ceiling stays below 14.0.0 because analyzer 14 removed NamedExpression and reshaped argument lists, which this package's lowering relies on; the build_runner toolchain (build) likewise does not yet support analyzer 14.
  • Add an example.

1.0.0 #

  • Initial release of the Restage build-time code generator: the build_runner builders that compile Flutter-authored surfaces (annotated source classes and hand-authored .rfwtxt) into .rfwtxt / .rfw blobs, capability manifests, flow documents, and generated screen/flow descriptors. Includes structured-type decomposition, constant folding, theme-binding lowering, capability derivation, and the optional A2UI (genui) emit target.
1
likes
145
points
637
downloads

Documentation

API reference

Publisher

verified publisherrestage.dev

Weekly Downloads

Write your UI as real Flutter widgets — your own design system, not a dialect — and restage_codegen compiles it into the blobs the Restage SDK ships over the air.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#server-driven-ui #remote-ui #flutter

License

FSL-1.1-ALv2 (license)

Dependencies

analyzer, build, collection, dart_style, glob, meta, package_config, path, restage_shared, rfw_catalog_compiler, rfw_catalog_schema

More

Packages that depend on restage_codegen