chore: pre-release 0.1.1 (#3)
This commit is contained in:
parent
7ba3f1dd7d
commit
682e3dce53
88 changed files with 2142 additions and 981 deletions
12
.github/workflows/commit_lint.yml
vendored
Normal file
12
.github/workflows/commit_lint.yml
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
name: Commit messages lint
|
||||||
|
on: [pull_request, push]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
commitlint:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
- uses: wagoid/commitlint-github-action@v4
|
||||||
|
|
||||||
40
.github/workflows/test.yml
vendored
Normal file
40
.github/workflows/test.yml
vendored
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
name: AppFlowyEditor test
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- "main"
|
||||||
|
- "release/*"
|
||||||
|
|
||||||
|
env:
|
||||||
|
FLUTTER_VERSION: "3.7.5"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
tests:
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os: [macos-latest, ubuntu-latest, windows-latest]
|
||||||
|
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: "stable"
|
||||||
|
flutter-version: ${{ env.FLUTTER_VERSION }}
|
||||||
|
cache: true
|
||||||
|
|
||||||
|
- name: Run tests
|
||||||
|
run: |
|
||||||
|
flutter pub get
|
||||||
|
flutter analyze .
|
||||||
|
dart format --set-exit-if-changed .
|
||||||
|
flutter test --coverage
|
||||||
|
|
||||||
|
- uses: codecov/codecov-action@v3
|
||||||
|
with:
|
||||||
|
env_vars: ${{ matrix.os }}
|
||||||
|
fail_ci_if_error: true
|
||||||
|
verbose: true
|
||||||
|
|
@ -1,3 +1,9 @@
|
||||||
|
## 0.1.1
|
||||||
|
* Support Flutter 3.7.5
|
||||||
|
|
||||||
|
## 0.1.0
|
||||||
|
* Support Flutter 3.7.5
|
||||||
|
|
||||||
## 0.0.9
|
## 0.0.9
|
||||||
* Support customize the text color and text background color.
|
* Support customize the text color and text background color.
|
||||||
* Fix some bugs.
|
* Fix some bugs.
|
||||||
|
|
|
||||||
24
README.md
24
README.md
|
|
@ -27,7 +27,7 @@ and the Flutter guide for
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<img src="https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/documentation/images/appflowy_editor_example.mp4?raw=true" width = "700" style = "padding: 100"/>
|
<img src="https://github.com/AppFlowy-IO/appflowy-editor/blob/main/documentation/images/appflowy_editor_example.mp4?raw=true" width = "700" style = "padding: 100"/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
## Key Features
|
## Key Features
|
||||||
|
|
@ -38,7 +38,7 @@ and the Flutter guide for
|
||||||
* shortcut events
|
* shortcut events
|
||||||
* themes
|
* themes
|
||||||
* menu options (**coming soon!**)
|
* menu options (**coming soon!**)
|
||||||
* [Test-coverage](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/documentation/testing.md) and ongoing maintenance by AppFlowy's core team and community of more than 1,000 builders
|
* [Test-coverage](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/documentation/testing.md) and ongoing maintenance by AppFlowy's core team and community of more than 1,000 builders
|
||||||
|
|
||||||
## Getting Started
|
## Getting Started
|
||||||
|
|
||||||
|
|
@ -60,7 +60,7 @@ final editor = AppFlowyEditor(
|
||||||
);
|
);
|
||||||
```
|
```
|
||||||
|
|
||||||
You can also create an editor from a JSON object in order to configure your initial state. Or you can [create an editor from Markdown or Quill Delta](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/documentation/importing.md).
|
You can also create an editor from a JSON object in order to configure your initial state. Or you can [create an editor from Markdown or Quill Delta](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/documentation/importing.md).
|
||||||
|
|
||||||
```dart
|
```dart
|
||||||
final json = ...;
|
final json = ...;
|
||||||
|
|
@ -91,23 +91,23 @@ flutter run
|
||||||
|
|
||||||
### Customizing Components
|
### Customizing Components
|
||||||
|
|
||||||
Please refer to our documentation on customizing AppFlowy for a detailed discussion about [customizing components](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/documentation/customizing.md#customize-a-component).
|
Please refer to our documentation on customizing AppFlowy for a detailed discussion about [customizing components](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/documentation/customizing.md#customize-a-component).
|
||||||
|
|
||||||
Below are some examples of component customizations:
|
Below are some examples of component customizations:
|
||||||
|
|
||||||
* [Checkbox Text](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/lib/src/render/rich_text/checkbox_text.dart) demonstrates how to extend new styles based on existing rich text components
|
* [Checkbox Text](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/lib/src/render/rich_text/checkbox_text.dart) demonstrates how to extend new styles based on existing rich text components
|
||||||
* [Image](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/example/lib/plugin/network_image_node_widget.dart) demonstrates how to extend a new node and render it
|
* [Image](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/example/lib/plugin/network_image_node_widget.dart) demonstrates how to extend a new node and render it
|
||||||
* See further examples of [rich-text plugins](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/lib/src/render/rich_text)
|
* See further examples of [rich-text plugins](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/lib/src/render/rich_text)
|
||||||
|
|
||||||
### Customizing Shortcut Events
|
### Customizing Shortcut Events
|
||||||
|
|
||||||
Please refer to our documentation on customizing AppFlowy for a detailed discussion about [customizing shortcut events](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/documentation/customizing.md#customize-a-shortcut-event).
|
Please refer to our documentation on customizing AppFlowy for a detailed discussion about [customizing shortcut events](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/documentation/customizing.md#customize-a-shortcut-event).
|
||||||
|
|
||||||
Below are some examples of shortcut event customizations:
|
Below are some examples of shortcut event customizations:
|
||||||
|
|
||||||
* [BIUS](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/lib/src/service/internal_key_event_handlers/format_style_handler.dart) demonstrates how to make text bold/italic/underline/strikethrough through shortcut keys
|
* [BIUS](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/lib/src/service/internal_key_event_handlers/format_style_handler.dart) demonstrates how to make text bold/italic/underline/strikethrough through shortcut keys
|
||||||
* [Paste HTML](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/lib/src/service/internal_key_event_handlers/copy_paste_handler.dart) gives you an idea on how to handle pasted styles through shortcut keys
|
* [Paste HTML](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/lib/src/service/internal_key_event_handlers/copy_paste_handler.dart) gives you an idea on how to handle pasted styles through shortcut keys
|
||||||
* Need more examples? Check out [Internal key event handlers](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/lib/src/service/internal_key_event_handlers)
|
* Need more examples? Check out [Internal key event handlers](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/lib/src/service/internal_key_event_handlers)
|
||||||
|
|
||||||
## Glossary
|
## Glossary
|
||||||
Please refer to the API documentation.
|
Please refer to the API documentation.
|
||||||
|
|
@ -120,6 +120,6 @@ Please look at [CONTRIBUTING.md](https://appflowy.gitbook.io/docs/essential-docu
|
||||||
## License
|
## License
|
||||||
All code contributed to the AppFlowy Editor project is dual-licensed, and released under both of the following licenses:
|
All code contributed to the AppFlowy Editor project is dual-licensed, and released under both of the following licenses:
|
||||||
1. The GNU Affero General Public License Version 3
|
1. The GNU Affero General Public License Version 3
|
||||||
2. The Mozilla Public License, Version 2.0 (the “MPL”)
|
2. The Mozilla Public License, Version 2.0 (the “MPL”)
|
||||||
|
|
||||||
See [LICENSE](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/LICENSE) for more information.
|
See [LICENSE](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/LICENSE) for more information.
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ At this point, nothing magic will happen after typing `_xxx_`.
|
||||||
|
|
||||||
To implement our shortcut event we will create a `ShortcutEvent` instance to handle an underscore input.
|
To implement our shortcut event we will create a `ShortcutEvent` instance to handle an underscore input.
|
||||||
|
|
||||||
We need to define `key` and `command` in a ShortCutEvent object to customize hotkeys. We recommend using the description of your event as a key. For example, if the underscore `_` is defined to make text italic, the key can be 'Underscore to italic'.
|
We need to define `key` and `command` in a ShortCutEvent object to customize hotkeys. We recommend using the description of your event as a key. For example, if the underscore `_` is defined to make text italic, the key can be 'Underscore to italic'.
|
||||||
|
|
||||||
> The command, made up of a single keyword such as `underscore` or a combination of keywords using the `+` sign in between to concatenate, is a condition that triggers a user-defined function. To see which keywords are available to define a command, please refer to [key_mapping.dart](../lib/src/service/shortcut_event/key_mapping.dart).
|
> The command, made up of a single keyword such as `underscore` or a combination of keywords using the `+` sign in between to concatenate, is a condition that triggers a user-defined function. To see which keywords are available to define a command, please refer to [key_mapping.dart](../lib/src/service/shortcut_event/key_mapping.dart).
|
||||||
> If more than one commands trigger the same handler, then we use ',' to split them. For example, using CTRL and A or CMD and A to 'select all', we describe it as `cmd+a,ctrl+a`(case-insensitive).
|
> If more than one commands trigger the same handler, then we use ',' to split them. For example, using CTRL and A or CMD and A to 'select all', we describe it as `cmd+a,ctrl+a`(case-insensitive).
|
||||||
|
|
@ -67,10 +67,10 @@ ShortcutEventHandler _underscoreToItalicHandler = (editorState, event) {
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
Now, we deal with handling the underscore.
|
Now, we deal with handling the underscore.
|
||||||
|
|
||||||
Look for the position of the previous underscore and
|
Look for the position of the previous underscore and
|
||||||
1. if one is _not_ found, return without doing anything.
|
1. if one is _not_ found, return without doing anything.
|
||||||
2. if one is found, the text enclosed within the two underscores will be formatted to display in italics.
|
2. if one is found, the text enclosed within the two underscores will be formatted to display in italics.
|
||||||
|
|
||||||
```dart
|
```dart
|
||||||
|
|
@ -136,7 +136,7 @@ Widget build(BuildContext context) {
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Check out the [complete code](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/lib/src/service/internal_key_event_handlers/markdown_syntax_to_styled_text.dart) file of this example.
|
Check out the [complete code](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/lib/src/service/internal_key_event_handlers/markdown_syntax_to_styled_text.dart) file of this example.
|
||||||
|
|
||||||
|
|
||||||
## Customizing a Component
|
## Customizing a Component
|
||||||
|
|
@ -162,7 +162,7 @@ Widget build(BuildContext context) {
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
Next, we will choose a unique string for your custom node's type.
|
Next, we will choose a unique string for your custom node's type.
|
||||||
|
|
||||||
We'll use `network_image` in this case. And we add `network_image_src` to the `attributes` to describe the link of the image.
|
We'll use `network_image` in this case. And we add `network_image_src` to the `attributes` to describe the link of the image.
|
||||||
|
|
||||||
|
|
@ -176,7 +176,7 @@ We'll use `network_image` in this case. And we add `network_image_src` to the `a
|
||||||
```
|
```
|
||||||
|
|
||||||
Then, we create a class that inherits [NodeWidgetBuilder](../lib/src/service/render_plugin_service.dart). As shown in the autoprompt, we need to implement two functions:
|
Then, we create a class that inherits [NodeWidgetBuilder](../lib/src/service/render_plugin_service.dart). As shown in the autoprompt, we need to implement two functions:
|
||||||
1. one returns a widget
|
1. one returns a widget
|
||||||
2. the other verifies the correctness of the [Node](../lib/src/core/document/node.dart).
|
2. the other verifies the correctness of the [Node](../lib/src/core/document/node.dart).
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -273,7 +273,7 @@ class NetworkImageNodeWidgetBuilder extends NodeWidgetBuilder {
|
||||||
```
|
```
|
||||||
|
|
||||||
... and register `NetworkImageNodeWidgetBuilder` in the `AppFlowyEditor`.
|
... and register `NetworkImageNodeWidgetBuilder` in the `AppFlowyEditor`.
|
||||||
|
|
||||||
```dart
|
```dart
|
||||||
final editorState = EditorState(
|
final editorState = EditorState(
|
||||||
document: StateTree.empty()
|
document: StateTree.empty()
|
||||||
|
|
@ -302,7 +302,7 @@ return AppFlowyEditor(
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Check out the [complete code](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/example/lib/plugin/network_image_node_widget.dart) file of this example.
|
Check out the [complete code](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/example/lib/plugin/network_image_node_widget.dart) file of this example.
|
||||||
|
|
||||||
## Customizing a Theme (New Feature in 0.0.7)
|
## Customizing a Theme (New Feature in 0.0.7)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -33,4 +33,4 @@ final editorState = EditorState(
|
||||||
);
|
);
|
||||||
```
|
```
|
||||||
|
|
||||||
For more details, please refer to the function `_importFile` through this [link](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/example/lib/home_page.dart).
|
For more details, please refer to the function `_importFile` through this [link](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/example/lib/home_page.dart).
|
||||||
|
|
@ -58,7 +58,7 @@ Get the node of a defined path. In this case we are getting the first node of th
|
||||||
final firstTextNode = editor.nodeAtPath([0]) as TextNode;
|
final firstTextNode = editor.nodeAtPath([0]) as TextNode;
|
||||||
```
|
```
|
||||||
|
|
||||||
Update the [Selection](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/app_flowy/packages/appflowy_editor/lib/src/document/selection.dart) so that our text "Welcome to Appflowy 😁" is selected. We will start our selection from the beginning of the string.
|
Update the [Selection](https://github.com/AppFlowy-IO/appflowy-editor/blob/main/lib/src/document/selection.dart) so that our text "Welcome to Appflowy 😁" is selected. We will start our selection from the beginning of the string.
|
||||||
|
|
||||||
```dart
|
```dart
|
||||||
await editor.updateSelection(
|
await editor.updateSelection(
|
||||||
|
|
|
||||||
|
|
@ -3,13 +3,13 @@
|
||||||
You can help Appflowy Editor in supporting various languages by contributing. Follow the steps below sequentially to contribute translations.
|
You can help Appflowy Editor in supporting various languages by contributing. Follow the steps below sequentially to contribute translations.
|
||||||
|
|
||||||
## Steps to modify an existing translation
|
## Steps to modify an existing translation
|
||||||
Translation files are located in: `frontend/app_flowy/packages/appflowy_editor/lib/l10n/`
|
Translation files are located in: `lib/l10n/`
|
||||||
1. Install the Visual Studio Code plugin: [Flutter intl](https://marketplace.visualstudio.com/items?itemName=localizely.flutter-intl)
|
1. Install the Visual Studio Code plugin: [Flutter intl](https://marketplace.visualstudio.com/items?itemName=localizely.flutter-intl)
|
||||||
2. Modify the specific translation file.
|
2. Modify the specific translation file.
|
||||||
3. Save the file and the translation will be generated automatically.
|
3. Save the file and the translation will be generated automatically.
|
||||||
|
|
||||||
## Steps to add new language
|
## Steps to add new language
|
||||||
Translation files are located in: `frontend/app_flowy/packages/appflowy_editor/lib/l10n/`
|
Translation files are located in: `lib/l10n/`
|
||||||
1. Install the Visual Studio Code plugin: [Flutter intl](https://marketplace.visualstudio.com/items?itemName=localizely.flutter-intl)
|
1. Install the Visual Studio Code plugin: [Flutter intl](https://marketplace.visualstudio.com/items?itemName=localizely.flutter-intl)
|
||||||
2. Copy the `intl_en.arb` as a base translation and rename the new file to `intl_<new_locale>.arb`
|
2. Copy the `intl_en.arb` as a base translation and rename the new file to `intl_<new_locale>.arb`
|
||||||
3. Modify the new translation file.
|
3. Modify the new translation file.
|
||||||
|
|
|
||||||
|
|
@ -315,7 +315,7 @@ Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC
|
||||||
var jsonString = '';
|
var jsonString = '';
|
||||||
switch (fileType) {
|
switch (fileType) {
|
||||||
case ExportFileType.json:
|
case ExportFileType.json:
|
||||||
jsonString = jsonEncode(plainText);
|
jsonString = plainText;
|
||||||
break;
|
break;
|
||||||
case ExportFileType.markdown:
|
case ExportFileType.markdown:
|
||||||
jsonString = jsonEncode(markdownToDocument(plainText).toJson());
|
jsonString = jsonEncode(markdownToDocument(plainText).toJson());
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,6 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:appflowy_editor/appflowy_editor.dart';
|
import 'package:appflowy_editor/appflowy_editor.dart';
|
||||||
import 'package:example/plugin/AI/continue_to_write.dart';
|
|
||||||
import 'package:example/plugin/AI/auto_completion.dart';
|
|
||||||
import 'package:example/plugin/AI/gpt3.dart';
|
|
||||||
import 'package:example/plugin/AI/smart_edit.dart';
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
class SimpleEditor extends StatelessWidget {
|
class SimpleEditor extends StatelessWidget {
|
||||||
|
|
@ -42,16 +38,6 @@ class SimpleEditor extends StatelessWidget {
|
||||||
editorState: editorState,
|
editorState: editorState,
|
||||||
themeData: themeData,
|
themeData: themeData,
|
||||||
autoFocus: editorState.document.isEmpty,
|
autoFocus: editorState.document.isEmpty,
|
||||||
selectionMenuItems: [
|
|
||||||
// Open AI
|
|
||||||
if (apiKey.isNotEmpty) ...[
|
|
||||||
autoCompletionMenuItem,
|
|
||||||
continueToWriteMenuItem,
|
|
||||||
]
|
|
||||||
],
|
|
||||||
toolbarItems: [
|
|
||||||
smartEditItem,
|
|
||||||
],
|
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
return const Center(
|
return const Center(
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
|
|
||||||
SelectionMenuItem autoCompletionMenuItem = SelectionMenuItem(
|
SelectionMenuItem autoCompletionMenuItem = SelectionMenuItem(
|
||||||
name: () => 'Auto generate content',
|
name: 'Auto generate content',
|
||||||
icon: (editorState, onSelected) => Icon(
|
icon: (editorState, onSelected) => Icon(
|
||||||
Icons.rocket,
|
Icons.rocket,
|
||||||
size: 18.0,
|
size: 18.0,
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import 'package:example/plugin/AI/text_robot.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
SelectionMenuItem continueToWriteMenuItem = SelectionMenuItem(
|
SelectionMenuItem continueToWriteMenuItem = SelectionMenuItem(
|
||||||
name: () => 'Continue To Write',
|
name: 'Continue To Write',
|
||||||
icon: (editorState, onSelected) => Icon(
|
icon: (editorState, onSelected) => Icon(
|
||||||
Icons.print,
|
Icons.print,
|
||||||
size: 18.0,
|
size: 18.0,
|
||||||
|
|
|
||||||
|
|
@ -1,19 +0,0 @@
|
||||||
//
|
|
||||||
// Generated file. Do not edit.
|
|
||||||
//
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
|
|
||||||
#include "generated_plugin_registrant.h"
|
|
||||||
|
|
||||||
#include <rich_clipboard_linux/rich_clipboard_plugin.h>
|
|
||||||
#include <url_launcher_linux/url_launcher_plugin.h>
|
|
||||||
|
|
||||||
void fl_register_plugins(FlPluginRegistry* registry) {
|
|
||||||
g_autoptr(FlPluginRegistrar) rich_clipboard_linux_registrar =
|
|
||||||
fl_plugin_registry_get_registrar_for_plugin(registry, "RichClipboardPlugin");
|
|
||||||
rich_clipboard_plugin_register_with_registrar(rich_clipboard_linux_registrar);
|
|
||||||
g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar =
|
|
||||||
fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin");
|
|
||||||
url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar);
|
|
||||||
}
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
//
|
|
||||||
// Generated file. Do not edit.
|
|
||||||
//
|
|
||||||
|
|
||||||
// clang-format off
|
|
||||||
|
|
||||||
#ifndef GENERATED_PLUGIN_REGISTRANT_
|
|
||||||
#define GENERATED_PLUGIN_REGISTRANT_
|
|
||||||
|
|
||||||
#include <flutter_linux/flutter_linux.h>
|
|
||||||
|
|
||||||
// Registers Flutter plugins.
|
|
||||||
void fl_register_plugins(FlPluginRegistry* registry);
|
|
||||||
|
|
||||||
#endif // GENERATED_PLUGIN_REGISTRANT_
|
|
||||||
|
|
@ -1,25 +0,0 @@
|
||||||
#
|
|
||||||
# Generated file, do not edit.
|
|
||||||
#
|
|
||||||
|
|
||||||
list(APPEND FLUTTER_PLUGIN_LIST
|
|
||||||
rich_clipboard_linux
|
|
||||||
url_launcher_linux
|
|
||||||
)
|
|
||||||
|
|
||||||
list(APPEND FLUTTER_FFI_PLUGIN_LIST
|
|
||||||
)
|
|
||||||
|
|
||||||
set(PLUGIN_BUNDLED_LIBRARIES)
|
|
||||||
|
|
||||||
foreach(plugin ${FLUTTER_PLUGIN_LIST})
|
|
||||||
add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/linux plugins/${plugin})
|
|
||||||
target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin)
|
|
||||||
list(APPEND PLUGIN_BUNDLED_LIBRARIES $<TARGET_FILE:${plugin}_plugin>)
|
|
||||||
list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries})
|
|
||||||
endforeach(plugin)
|
|
||||||
|
|
||||||
foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST})
|
|
||||||
add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/linux plugins/${ffi_plugin})
|
|
||||||
list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries})
|
|
||||||
endforeach(ffi_plugin)
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
//
|
|
||||||
// Generated file. Do not edit.
|
|
||||||
//
|
|
||||||
|
|
||||||
import FlutterMacOS
|
|
||||||
import Foundation
|
|
||||||
|
|
||||||
import path_provider_foundation
|
|
||||||
import rich_clipboard_macos
|
|
||||||
import url_launcher_macos
|
|
||||||
|
|
||||||
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
|
||||||
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
|
|
||||||
RichClipboardPlugin.register(with: registry.registrar(forPlugin: "RichClipboardPlugin"))
|
|
||||||
UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin"))
|
|
||||||
}
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
platform :osx, '10.11'
|
platform :osx, '10.14'
|
||||||
|
|
||||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||||
|
|
|
||||||
|
|
@ -25,11 +25,11 @@ EXTERNAL SOURCES:
|
||||||
:path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos
|
:path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos
|
||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
FlutterMacOS: ae6af50a8ea7d6103d888583d46bd8328a7e9811
|
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
|
||||||
path_provider_foundation: 37748e03f12783f9de2cb2c4eadfaa25fe6d4852
|
path_provider_foundation: c68054786f1b4f3343858c1e1d0caaded73f0be9
|
||||||
rich_clipboard_macos: 43364b66b9dc69d203eb8dd6d758e2d12e02723c
|
rich_clipboard_macos: 43364b66b9dc69d203eb8dd6d758e2d12e02723c
|
||||||
url_launcher_macos: c04e4fa86382d4f94f6b38f14625708be3ae52e2
|
url_launcher_macos: 5335912b679c073563f29d89d33d10d459f95451
|
||||||
|
|
||||||
PODFILE CHECKSUM: 6eac6b3292e5142cfc23bdeb71848a40ec51c14c
|
PODFILE CHECKSUM: 353c8bcc5d5b0994e508d035b5431cfe18c1dea7
|
||||||
|
|
||||||
COCOAPODS: 1.11.3
|
COCOAPODS: 1.11.3
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
archiveVersion = 1;
|
archiveVersion = 1;
|
||||||
classes = {
|
classes = {
|
||||||
};
|
};
|
||||||
objectVersion = 51;
|
objectVersion = 54;
|
||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXAggregateTarget section */
|
/* Begin PBXAggregateTarget section */
|
||||||
|
|
@ -273,6 +273,7 @@
|
||||||
};
|
};
|
||||||
3399D490228B24CF009A79C7 /* ShellScript */ = {
|
3399D490228B24CF009A79C7 /* ShellScript */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
alwaysOutOfDate = 1;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
);
|
);
|
||||||
|
|
@ -404,7 +405,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.11;
|
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
SDKROOT = macosx;
|
SDKROOT = macosx;
|
||||||
SWIFT_COMPILATION_MODE = wholemodule;
|
SWIFT_COMPILATION_MODE = wholemodule;
|
||||||
|
|
@ -483,7 +484,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.11;
|
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||||
MTL_ENABLE_DEBUG_INFO = YES;
|
MTL_ENABLE_DEBUG_INFO = YES;
|
||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
SDKROOT = macosx;
|
SDKROOT = macosx;
|
||||||
|
|
@ -530,7 +531,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.11;
|
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
SDKROOT = macosx;
|
SDKROOT = macosx;
|
||||||
SWIFT_COMPILATION_MODE = wholemodule;
|
SWIFT_COMPILATION_MODE = wholemodule;
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,7 @@ flutter:
|
||||||
|
|
||||||
# To add assets to your application, add an assets section, like this:
|
# To add assets to your application, add an assets section, like this:
|
||||||
assets:
|
assets:
|
||||||
- example.json
|
- assets/example.json
|
||||||
- assets/images/icon.png
|
- assets/images/icon.png
|
||||||
|
|
||||||
# An image asset can refer to one or more resolution-specific "variants", see
|
# An image asset can refer to one or more resolution-specific "variants", see
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue