AppFlowy/frontend/appflowy_flutter/pubspec.yaml
Alex Wallen 8dfbfe3c42
feat: Dynamically Load Themes in AppFlowy (#2670)
* feat: dynamic theme plugin (init)

* feat: provide fallback color if plugin becomes out of date (transparent)

* feat: use applicationDocumentsDirectory to store plugins

* chore: remove json files

* fix: add toJson to resolve analyzer errors

* fix: analyzer (unused imports)

* feat: add code generation scripts for freezed files (call recursively in packages)

* fix: revert changes to dry generation

* feat: call directly into script

* refactor: scripts try to be stateless :)

* fix: path to code generation in toml

* fix: generate script permissions

* fix: path not correct in generate.sh

* feat: modify execution permissions before executing scripts

* chore: switch order of build_runner and easy_localizations

* fix: fs is not valid duckscript cmd

* chore: clean build_runner before executing

* chore: upgrade freezed and build_runner attempt to resolve InvalidType error

* fix: use exec cmd.exe to chmod

* feat: add task to generate all files

* chore: remove redundant task (Code Gen)

* chore: remove json_annoation to dev_dependencies

* fix: dropped & between commands

* chore: rename file and class to FlowyDynamicPlugin

* fix: dependency hell

* fix: json annotation in colorscheme

* fix: analyzer warnings

* fix: duckscript runner for code generator

* fix: try without setting file permissions

* chore: move file picker to infra

* chore: restructure project directory

* feat: add BLoC components for consumers

* chore: update dependencies in pubspec.yaml file

* fix: file picker imports

* feat: add new translations for features

* feat: add new widgets to render upload

* fix: import

* feat: add text overflow

* feat: use animated switcher

* chore: export FileType

* fix: directory was not created, only files were copied

* chore: separate some logic

* feat: add saveFile to FilePickerService

* fix: analyzer error with unused imports

* feat: add translations for uploading

* feat: add builtins property to apptheme

* feat: add theme preview widget

* fix: upload widgets need to fill whole space and account for overflow

* refactor: do not watch file system for changes

* feat: add deletion confirmation dialog

* feat: add form factor resolution for dyanmic layout

* feat: trigger rebuild only when plugins are loaded

* feat: make all methods static

* chore: remove TODO comment, requires further design

* chore: move models to subfolder

* fix: references to plugin service instance

* fix: rebase errors

* fix: more rebasing errors

* feat: remove multiple themes from one plugin

* refactor: use pattern to resolve widget in settings_appearance_view

* refactor: remove commented code

* feat: add translations

* fix: import error

* refactor: separate concerns a bit more

* fix: bug in toJson serialization code

* feat: add package to use represent memory files

* fix: analyzer warnings

* chore: add translation

* chore: remove unused exceptions

* chore: use join

* chore: add documentation

* feat: add tests on theme

* fix: fix scripts for macOS

* feat: use appFlowyDocumentDirectory

* fix: remove unused import

* fix: imports

* feat: allow plugin service to be passed

* fix: theme tests

* feat: separate themes by built-in and plugin

* fix: rebase change name of appFlowyDocumentDirectory

* chore: add test to check that initial state falls back to initial theme

* chore: theme upload preview widget

* chore: rename to brightness setting

* refactor: appearance for settings appearance view

* feat: change show dialog api and use it

* fix: handle plugin compilation exception when incorrect format supplied

* fix: style of theme upload

* fix: always change state so that ui updates

* chore: style of loading widget

* fix: analyzer errors

* feat: add learn more button to documentation

---------

Co-authored-by: Yijing Huang <hyj891204@gmail.com>
Co-authored-by: nathan <nathan@appflowy.io>
2023-07-03 22:07:11 +08:00

187 lines
5.8 KiB
YAML

name: appflowy
description: A new Flutter project.
# The following line prevents the package from being accidentally published to
# pub.dev using `flutter pub publish`. This is preferred for private packages.
publish_to: "none" # Remove this line if you wish to publish to pub.dev
# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 0.2.5
environment:
sdk: ">=3.0.0 <4.0.0"
# Dependencies specify other packages that your package needs in order to work.
# To automatically upgrade your package dependencies to the latest versions
# consider running `flutter pub upgrade --major-versions`. Alternatively,
# dependencies can be manually updated by changing the version numbers below to
# the latest version available on pub.dev. To see which dependencies have newer
# versions available, run `flutter pub outdated`.
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
appflowy_backend:
path: packages/appflowy_backend
flowy_infra_ui:
path: packages/flowy_infra_ui
flowy_infra:
path: packages/flowy_infra
appflowy_board:
# path: packages/appflowy_board
git:
url: https://github.com/AppFlowy-IO/appflowy-board.git
ref: a183c57
# appflowy_editor: ^1.0.4
appflowy_editor:
git:
url: https://github.com/AppFlowy-IO/appflowy-editor.git
ref: 572a174
appflowy_popover:
path: packages/appflowy_popover
# third party packages
intl: ^0.18.0
time: ^2.1.3
equatable: ^2.0.5
freezed_annotation: ^2.2.0
get_it: ^7.6.0
flutter_bloc: ^8.1.3
flutter_math_fork:
git:
url: https://github.com/xazin/flutter_math_fork.git
ref: de24059
dartz: ^0.10.1
provider: ^6.0.5
path_provider: ^2.0.15
sized_context: ^1.0.0+4
styled_widget: ^0.4.1
expandable: ^5.0.1
flutter_colorpicker: ^1.0.3
highlight: ^0.7.0
package_info_plus: ^4.0.1
url_launcher: ^6.1.11
clipboard: ^0.1.3
connectivity_plus: ^4.0.1
connectivity_plus_platform_interface: ^1.2.2
easy_localization: ^3.0.2
textfield_tags: ^2.0.2
device_info_plus: ^9.0.1
fluttertoast: ^8.2.2
json_annotation: ^4.8.1
table_calendar: ^3.0.9
reorderables: ^0.6.0
linked_scroll_controller: ^0.2.0
hotkey_manager: ^0.1.7
fixnum: ^1.1.0
protobuf: "2.0.0"
charcode: ^1.3.1
collection: ^1.17.1
bloc: ^8.1.2
shared_preferences: ^2.1.1
google_fonts: ^4.0.5
percent_indicator: ^4.2.3
calendar_view: ^1.0.3
window_manager: ^0.3.4
http: ^1.0.0
path: ^1.8.3
mocktail: ^0.3.0
archive: ^3.3.7
flutter_svg: ^2.0.6
nanoid: ^1.0.0
supabase_flutter: ^1.10.0
envied: ^0.3.0+3
dotted_border: ^2.0.0+3
dev_dependencies:
flutter_lints: ^2.0.1
flutter_test:
sdk: flutter
integration_test:
sdk: flutter
build_runner: ^2.4.4
freezed: ^2.3.4
bloc_test: ^9.1.2
json_serializable: ^6.7.0
envied_generator: ^0.3.0+3
dependency_overrides:
http: ^1.0.0
# The "flutter_lints" package below contains a set of recommended lints to
# encourage good coding practices. The lint set provided by the package is
# activated in the `analysis_options.yaml` file located at the root of your
# package. See that file for information about deactivating specific lint
# rules and activating additional ones.
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter.
flutter:
# Automatic code generation for l10n and i18n
generate: true
# The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in
# the material Icons class.
uses-material-design: true
fonts:
- family: FlowyIconData
fonts:
- asset: assets/fonts/FlowyIconData.ttf
- family: Poppins
fonts:
- asset: assets/google_fonts/Poppins/Poppins-ExtraLight.ttf
weight: 100
- asset: assets/google_fonts/Poppins/Poppins-Thin.ttf
weight: 200
- asset: assets/google_fonts/Poppins/Poppins-Light.ttf
weight: 300
- asset: assets/google_fonts/Poppins/Poppins-Regular.ttf
weight: 400
- asset: assets/google_fonts/Poppins/Poppins-Medium.ttf
weight: 500
- asset: assets/google_fonts/Poppins/Poppins-SemiBold.ttf
weight: 600
- asset: assets/google_fonts/Poppins/Poppins-Bold.ttf
weight: 700
- asset: assets/google_fonts/Poppins/Poppins-Black.ttf
weight: 800
- asset: assets/google_fonts/Poppins/Poppins-ExtraBold.ttf
weight: 900
# To add assets to your application, add an assets section, like this:
assets:
- assets/images/
- assets/images/home/
- assets/images/editor/align/
- assets/images/editor/
- assets/images/grid/
- assets/images/emoji/
- assets/images/grid/field/
- assets/images/common/
- assets/images/login/
- assets/images/grid/setting/
- assets/translations/
# The following assets will be excluded in release.
# BEGIN: EXCLUDE_IN_RELEASE
- assets/test/workspaces/
- assets/template/
- assets/test/workspaces/markdowns/
- assets/test/workspaces/database/
# END: EXCLUDE_IN_RELEASE