Skip to content

Commit d855907

Browse files
committed
Add note link instead of creating
1 parent fc44040 commit d855907

File tree

9 files changed

+589
-328
lines changed

9 files changed

+589
-328
lines changed

app/android/Gemfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
source "https://rubygems.org"
22

33
gem "fastlane"
4-
gem "screengrab"
4+
gem "screengrab"
5+
gem "abbrev"

app/android/Gemfile.lock

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,13 @@ GEM
55
base64
66
nkf
77
rexml
8+
abbrev (0.1.2)
89
addressable (2.8.7)
910
public_suffix (>= 2.0.2, < 7.0)
1011
artifactory (3.0.17)
1112
atomos (0.1.3)
1213
aws-eventstream (1.3.2)
13-
aws-partitions (1.1077.0)
14+
aws-partitions (1.1082.0)
1415
aws-sdk-core (3.222.1)
1516
aws-eventstream (~> 1, >= 1.3.0)
1617
aws-partitions (~> 1, >= 1.992.0)
@@ -21,7 +22,7 @@ GEM
2122
aws-sdk-kms (1.99.0)
2223
aws-sdk-core (~> 3, >= 3.216.0)
2324
aws-sigv4 (~> 1.5)
24-
aws-sdk-s3 (1.182.0)
25+
aws-sdk-s3 (1.183.0)
2526
aws-sdk-core (~> 3, >= 3.216.0)
2627
aws-sdk-kms (~> 1)
2728
aws-sigv4 (~> 1.5)
@@ -225,8 +226,9 @@ PLATFORMS
225226
x86_64-linux
226227

227228
DEPENDENCIES
229+
abbrev
228230
fastlane
229231
screengrab
230232

231233
BUNDLED WITH
232-
2.6.6
234+
2.6.7

app/lib/pages/notes/note.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import 'package:flow/cubits/flow.dart';
22
import 'package:flow/widgets/markdown_field.dart';
3+
import 'package:flow_api/models/model.dart';
34
import 'package:flutter/material.dart';
45
import 'package:flutter_bloc/flutter_bloc.dart';
56
import 'package:flow/src/generated/i18n/app_localizations.dart';
@@ -141,7 +142,7 @@ class _NoteDialogState extends State<NoteDialog> {
141142
} else {
142143
await _service?.updateNote(_newNote);
143144
}
144-
navigator.pop(created);
145+
navigator.pop(SourcedModel(_newSource, created));
145146
},
146147
child: Text(create
147148
? AppLocalizations.of(context).create

app/lib/pages/notes/page.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,7 @@ class _NotesBodyViewState extends State<NotesBodyView> {
236236
],
237237
),
238238
floatingActionButton: FloatingActionButton.extended(
239-
onPressed: () => showDialog<Note>(
239+
onPressed: () => showDialog<SourcedModel<Note>>(
240240
context: context,
241241
builder: (context) => NoteDialog(
242242
note: Note(

app/lib/pages/notes/select.dart

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1+
import 'package:flow/pages/notes/note.dart';
12
import 'package:flow/widgets/select.dart';
3+
import 'package:flow_api/models/note/model.dart';
24
import 'package:flutter/material.dart';
35
import 'package:flow/src/generated/i18n/app_localizations.dart';
46
import 'dart:typed_data';
@@ -66,3 +68,36 @@ class LabelSelectDialog extends StatelessWidget {
6668
);
6769
}
6870
}
71+
72+
class NoteSelectDialog extends StatelessWidget {
73+
final String? source;
74+
final SourcedModel<Uint8List>? selected;
75+
76+
const NoteSelectDialog({
77+
super.key,
78+
this.source,
79+
this.selected,
80+
});
81+
82+
@override
83+
Widget build(BuildContext context) {
84+
return SelectDialog(
85+
onFetch: (source, service, search, offset, limit) async =>
86+
service.note?.getNotes(
87+
offset: offset,
88+
limit: limit,
89+
search: search,
90+
),
91+
onCreate: (source) => showDialog<SourcedModel<Note>>(
92+
context: context,
93+
builder: (context) => NoteDialog(
94+
source: source,
95+
note: null,
96+
create: true,
97+
),
98+
),
99+
title: AppLocalizations.of(context).note,
100+
selected: selected,
101+
);
102+
}
103+
}

app/lib/pages/notes/view.dart

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import 'package:flow/pages/notes/select.dart';
12
import 'package:flutter/material.dart';
23
import 'package:flutter_bloc/flutter_bloc.dart';
34
import 'package:flow/src/generated/i18n/app_localizations.dart';
@@ -109,7 +110,7 @@ class _NotesViewState<T extends DescriptiveModel> extends State<NotesView<T>> {
109110
),
110111
),
111112
onTap: () async {
112-
await showDialog<Note>(
113+
await showDialog<SourcedModel<Note>>(
113114
context: context,
114115
builder: (context) => NoteDialog(
115116
source: widget.source,
@@ -132,17 +133,18 @@ class _NotesViewState<T extends DescriptiveModel> extends State<NotesView<T>> {
132133
child: Padding(
133134
padding: const EdgeInsets.all(16.0),
134135
child: FloatingActionButton.extended(
135-
label: Text(AppLocalizations.of(context).create),
136-
icon: const PhosphorIcon(PhosphorIconsLight.plus),
136+
label: Text(AppLocalizations.of(context).link),
137+
icon: const PhosphorIcon(PhosphorIconsLight.link),
137138
onPressed: () async {
138-
final note = await showDialog<Note>(
139+
final note = await showDialog<SourcedModel<Note>>(
139140
context: context,
140-
builder: (context) => NoteDialog(
141+
builder: (context) => NoteSelectDialog(
141142
source: widget.source,
142143
),
143144
);
144145
if (note != null) {
145-
await widget.connector.connect(widget.model.id!, note.id!);
146+
await widget.connector
147+
.connect(widget.model.id!, note.model.id!);
146148
}
147149
_pagingController.refresh();
148150
},

app/pubspec.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -431,10 +431,10 @@ packages:
431431
dependency: "direct main"
432432
description:
433433
name: flutter_markdown
434-
sha256: e7bbc718adc9476aa14cfddc1ef048d2e21e4e8f18311aaac723266db9f9e7b5
434+
sha256: "634622a3a826d67cb05c0e3e576d1812c430fa98404e95b60b131775c73d76ec"
435435
url: "https://pub.dev"
436436
source: hosted
437-
version: "0.7.6+2"
437+
version: "0.7.7"
438438
flutter_native_splash:
439439
dependency: "direct main"
440440
description:
@@ -1257,10 +1257,10 @@ packages:
12571257
dependency: transitive
12581258
description:
12591259
name: url_launcher_ios
1260-
sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626"
1260+
sha256: "7f2022359d4c099eea7df3fdf739f7d3d3b9faf3166fb1dd390775176e0b76cb"
12611261
url: "https://pub.dev"
12621262
source: hosted
1263-
version: "6.3.2"
1263+
version: "6.3.3"
12641264
url_launcher_linux:
12651265
dependency: transitive
12661266
description:

docs/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,23 @@
1111
},
1212
"dependencies": {
1313
"@astrojs/check": "^0.9.4",
14-
"@astrojs/react": "^4.2.2",
14+
"@astrojs/react": "^4.2.3",
1515
"@astrojs/starlight": "^0.32.5",
1616
"@phosphor-icons/react": "^2.1.7",
17-
"@types/react": "^19.0.12",
18-
"@types/react-dom": "^19.0.4",
19-
"astro": "^5.5.5",
17+
"@types/react": "^19.1.0",
18+
"@types/react-dom": "^19.1.1",
19+
"astro": "^5.6.1",
2020
"react": "^19.1.0",
2121
"react-dom": "^19.1.0",
2222
"remark-gemoji": "^8.0.0",
2323
"remark-heading-id": "^1.0.1",
24-
"typescript": "^5.8.2"
24+
"typescript": "^5.8.3"
2525
},
26-
"packageManager": "pnpm@10.7.0",
26+
"packageManager": "pnpm@10.7.1",
2727
"devDependencies": {
2828
"@vite-pwa/astro": "^1.0.0",
29-
"sass": "^1.86.0",
30-
"sharp": "^0.33.5",
29+
"sass": "^1.86.3",
30+
"sharp": "^0.34.0",
3131
"vite-plugin-pwa": "^1.0.0",
3232
"workbox-window": "^7.3.0"
3333
}

0 commit comments

Comments
 (0)