odoo_view_builder_flutter 1.0.0+1 copy "odoo_view_builder_flutter: ^1.0.0+1" to clipboard
odoo_view_builder_flutter: ^1.0.0+1 copied to clipboard

A professional visual editor for building Odoo XML views via Drag & Drop. Supports Form, Tree and Kanban views with real-time XML preview and export.

Use this package as a library

Depend on it

Run this command:

With Flutter:

 $ flutter pub add odoo_view_builder_flutter

This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):

dependencies:
  odoo_view_builder_flutter: ^1.0.0+1

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

Import it

Now in your Dart code, you can use:

import 'package:odoo_view_builder_flutter/app.dart';
import 'package:odoo_view_builder_flutter/config/app_config.dart';
import 'package:odoo_view_builder_flutter/config/constants.dart';
import 'package:odoo_view_builder_flutter/config/theme.dart';
import 'package:odoo_view_builder_flutter/data/local_storage/local_database_helper.dart';
import 'package:odoo_view_builder_flutter/data/local_storage/shared_preferences_helper.dart';
import 'package:odoo_view_builder_flutter/data/models/odoo_field.dart';
import 'package:odoo_view_builder_flutter/data/models/odoo_form.dart';
import 'package:odoo_view_builder_flutter/data/models/odoo_group.dart';
import 'package:odoo_view_builder_flutter/data/models/odoo_kanban_view.dart';
import 'package:odoo_view_builder_flutter/data/models/odoo_tree_view.dart';
import 'package:odoo_view_builder_flutter/data/models/view_template.dart';
import 'package:odoo_view_builder_flutter/data/repositories/field_repository.dart';
import 'package:odoo_view_builder_flutter/data/repositories/view_repository.dart';
import 'package:odoo_view_builder_flutter/data/repositories/xml_generator_repository.dart';
import 'package:odoo_view_builder_flutter/domain/entities/view_entity.dart';
import 'package:odoo_view_builder_flutter/domain/usecases/create_view_usecase.dart';
import 'package:odoo_view_builder_flutter/domain/usecases/export_xml_usecase.dart';
import 'package:odoo_view_builder_flutter/domain/usecases/import_xml_usecase.dart';
import 'package:odoo_view_builder_flutter/domain/usecases/validate_view_usecase.dart';
import 'package:odoo_view_builder_flutter/main.dart';
import 'package:odoo_view_builder_flutter/presentation/notifiers/editor_notifier.dart';
import 'package:odoo_view_builder_flutter/presentation/notifiers/field_notifier.dart';
import 'package:odoo_view_builder_flutter/presentation/notifiers/view_notifier.dart';
import 'package:odoo_view_builder_flutter/presentation/providers/editor_state_provider.dart';
import 'package:odoo_view_builder_flutter/presentation/providers/field_provider.dart';
import 'package:odoo_view_builder_flutter/presentation/providers/settings_provider.dart';
import 'package:odoo_view_builder_flutter/presentation/providers/view_provider.dart';
import 'package:odoo_view_builder_flutter/presentation/providers/xml_generator_provider.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/editor_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/export_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/form_editor_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/home_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/kanban_editor_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/settings_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/template_library_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/screens/tree_editor_screen.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/common/custom_appbar.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/common/custom_button.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/common/custom_dialog.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/common/custom_textfield.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/canvas_area.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/draggable_field_widget.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/draggable_group_widget.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/drop_target_zone.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/field_palette.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/field_properties_panel.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/group_properties_panel.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/editor/layout_builder_widget.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/kanban/kanban_card_builder.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/kanban/kanban_field_mapper.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/tree_view/column_item_widget.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/tree_view/column_properties_widget.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/xml/xml_highlighter.dart';
import 'package:odoo_view_builder_flutter/presentation/widgets/xml/xml_preview_widget.dart';
import 'package:odoo_view_builder_flutter/services/analytics/analytics_service.dart';
import 'package:odoo_view_builder_flutter/services/analytics/crash_reporter.dart';
import 'package:odoo_view_builder_flutter/services/export/download_service.dart';
import 'package:odoo_view_builder_flutter/services/export/download_service_stub.dart';
import 'package:odoo_view_builder_flutter/services/export/download_service_web.dart';
import 'package:odoo_view_builder_flutter/services/export/export_manager.dart';
import 'package:odoo_view_builder_flutter/services/export/file_handler.dart';
import 'package:odoo_view_builder_flutter/services/odoo/odoo_api_client.dart';
import 'package:odoo_view_builder_flutter/services/odoo/odoo_field_service.dart';
import 'package:odoo_view_builder_flutter/services/odoo/odoo_validation_rules.dart';
import 'package:odoo_view_builder_flutter/services/xml/xml_formatter.dart';
import 'package:odoo_view_builder_flutter/services/xml/xml_generator.dart';
import 'package:odoo_view_builder_flutter/services/xml/xml_parser.dart';
import 'package:odoo_view_builder_flutter/services/xml/xml_validator.dart';
import 'package:odoo_view_builder_flutter/utils/extensions/list_extensions.dart';
import 'package:odoo_view_builder_flutter/utils/extensions/string_extensions.dart';
import 'package:odoo_view_builder_flutter/utils/extensions/widget_extensions.dart';
import 'package:odoo_view_builder_flutter/utils/helpers/field_helper.dart';
import 'package:odoo_view_builder_flutter/utils/helpers/formatting_helper.dart';
import 'package:odoo_view_builder_flutter/utils/helpers/validation_helper.dart';
import 'package:odoo_view_builder_flutter/utils/helpers/xml_helper.dart';
import 'package:odoo_view_builder_flutter/utils/validators/field_name_validator.dart';
import 'package:odoo_view_builder_flutter/utils/validators/odoo_compatibility_validator.dart';
import 'package:odoo_view_builder_flutter/utils/validators/xml_structure_validator.dart';