Add initial configuration, tokens, and widgets for M3E components

- Introduced `.gitignore` and `.metadata` for apps and examples.
- Added Flutter/Dart analysis configurations (`analysis_options.yaml`).
- Implemented foundational tokens and themes for M3E (colors, shapes).
- Created base implementations for `IconButtonM3E` and `SplitButtonM3E`.
- Set up CI workflow (`ci.yaml`) to automate testing and analysis.
This commit is contained in:
Emily Pauli 2025-10-21 22:15:15 +02:00
commit 62ecb86b76
184 changed files with 9872 additions and 0 deletions

View file

@ -0,0 +1,3 @@
# m3e_collection
Single import that re-exports all M3E component packages plus `m3e_design`.

View file

@ -0,0 +1,16 @@
library m3e_collection;
export 'package:app_bar_m3e/app_bar_m3e.dart';
export 'package:button_group_m3e/button_group_m3e.dart';
export 'package:button_m3e/button_m3e.dart';
export 'package:fab_m3e/fab_m3e.dart';
export 'package:icon_button_m3e/icon_button_m3e.dart';
export 'package:loading_indicator_m3e/loading_indicator_m3e.dart';
export 'package:m3e_design/m3e_design.dart';
export 'package:material_new_shapes/material_new_shapes.dart';
export 'package:navigation_bar_m3e/navigation_bar_m3e.dart';
export 'package:navigation_rail_m3e/navigation_rail_m3e.dart';
export 'package:progress_indicator_m3e/progress_indicator_m3e.dart';
export 'package:slider_m3e/slider_m3e.dart';
export 'package:split_button_m3e/split_button_m3e.dart';
export 'package:toolbar_m3e/toolbar_m3e.dart';

View file

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/.idea" />
<excludeFolder url="file://$MODULE_DIR$/.pub" />
<excludeFolder url="file://$MODULE_DIR$/build" />
<excludeFolder url="file://$MODULE_DIR$/example/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/example/.idea" />
<excludeFolder url="file://$MODULE_DIR$/example/.pub" />
<excludeFolder url="file://$MODULE_DIR$/example/build" />
<excludeFolder url="file://$MODULE_DIR$/example/android/.gradle" />
<excludeFolder url="file://$MODULE_DIR$/example/android/.idea" />
<excludeFolder url="file://$MODULE_DIR$/example/ios/Flutter" />
<excludeFolder url="file://$MODULE_DIR$/example/ios/Pods" />
<excludeFolder url="file://$MODULE_DIR$/example/ios/.symlinks" />
<excludeFolder url="file://$MODULE_DIR$/example/macos/Flutter" />
<excludeFolder url="file://$MODULE_DIR$/example/macos/Pods" />
<excludeFolder url="file://$MODULE_DIR$/example/macos/.symlinks" />
</content>
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Dart SDK" level="project" />
<orderEntry type="library" name="Flutter Plugins" level="project" />
<orderEntry type="library" name="Dart Packages" level="project" />
</component>
</module>

View file

@ -0,0 +1,39 @@
name: m3e_collection
description: Aggregated exports of all Material 3 Expressive components for Flutter.
version: 0.1.0
publish_to: none
environment:
sdk: ">=3.5.0 <4.0.0"
dependencies:
flutter:
sdk: flutter
material_new_shapes: ^1.0.0
m3e_design:
path: ../m3e_design
icon_button_m3e:
path: ../icon_button_m3e
split_button_m3e:
path: ../split_button_m3e
button_group_m3e:
path: ../button_group_m3e
app_bar_m3e:
path: ../app_bar_m3e
button_m3e:
path: ../button_m3e
fab_m3e:
path: ../fab_m3e
loading_indicator_m3e:
path: ../loading_indicator_m3e
progress_indicator_m3e:
path: ../progress_indicator_m3e
navigation_bar_m3e:
path: ../navigation_bar_m3e
navigation_rail_m3e:
path: ../navigation_rail_m3e
slider_m3e:
path: ../slider_m3e
toolbar_m3e:
path: ../toolbar_m3e

View file

@ -0,0 +1,29 @@
# melos_managed_dependency_overrides: icon_button_m3e,m3e_design,split_button_m3e,app_bar_m3e,button_m3e,fab_m3e,loading_indicator_m3e,progress_indicator_m3e,navigation_bar_m3e,navigation_rail_m3e,slider_m3e,toolbar_m3e,button_group_m3e
dependency_overrides:
icon_button_m3e:
path: ..\\icon_button_m3e
m3e_design:
path: ..\\m3e_design
split_button_m3e:
path: ..\\split_button_m3e
app_bar_m3e:
path: ..\\app_bar_m3e
button_m3e:
path: ..\\button_m3e
fab_m3e:
path: ..\\fab_m3e
loading_indicator_m3e:
path: ..\\loading_indicator_m3e
progress_indicator_m3e:
path: ..\\progress_indicator_m3e
navigation_bar_m3e:
path: ..\\navigation_bar_m3e
navigation_rail_m3e:
path: ..\\navigation_rail_m3e
slider_m3e:
path: ..\\slider_m3e
toolbar_m3e:
path: ..\\toolbar_m3e
button_group_m3e:
path: ..\\button_group_m3e