くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

Dart

Dart/FlutterのDioで認証をいい感じにする

Dioを使ってAPIリクエストをする際、 APIトークンやJWTなどを自動で設定したいなと思い、 いろいろ調べたときの備忘録(*´ω`*) dio | Dart package Interceptorというrequest/response/errorをinterceptする 機能があるっぽいので、そこで追加するようにすれ…

OpenAPIからDartを生成するパッケージ(swagger_parser/swagger_dart_code_generator)

前回の記事でopenapi.yamlからdartコードを生成できたけど、 OpenAPITools/openapi-generatorが吐くコードは、Dart2だったりとあんまりだった。。 TypeSpec(OpenAPI)でTypeScriptとDartのモデルを共通化する - くらげになりたい。 他にもなにかいいのがない…

MelosでFlutter/Dartをモノレポ運用する

Flutter/Dartでもモノレポで運用したいなと思って、 いろいろ調べたときの備忘録(*´ω`*) DartではMelosというCLIツールを使えばいいっぽい melos.invertase.dev FlutterFireやFlameなどでも使われている。 FlutterFire CLIなどでおなじみのInvertase社製。 …

TypeSpec(OpenAPI)でTypeScriptとDartのモデルを共通化する

Firestoreを使ってアプリとサーバを開発していて、 FlutterとCloud FunctionsやNitro Serverでモデルを共通化したいなと思い、 いろいろ調べてみたときの備忘録(*´ω`*) TypeSpecでOpenAPIの定義を書いて、 それぞれの言語で生成するのがいいかもしれない。 …

Dart/Flutterの独自パッケージを非公開で扱う

npmはGitHub Packagesでprivateなライブラリとして扱えるけど、 Dart/Flutterの場合はどうしようかなと、いろいろ調べてみたときの備忘録(*´ω`*) 公式ドキュメントをみると、Git packagesが使えるっぽい。 Package dependencies | Dart # ブランチ省略 depe…

DartのDurationをいい感じにフォーマットする

DartのDurationにHH:mm:ss.SSみたいにフォーマットしたかったので、 いろいろ調べてみたときの備忘録(*´ω`*) Formatterはないっぽく、自前で整形しないといけないっぽい。。 整形する関数 HH:mm:ss.SSっぽくするのはこんな感じ。 String formatDuration(Dur…

Flutterで特定のプラットフォームのときだけimportを切り替える(Conditional Import)

Flutterでdart:htmlなど特定のプラットフォームでしか動かないパッケージを 使いたいなと思ったときにいろいろ調べたときの備忘録(*´ω`*) Conditional Import(条件付きインポート)という機能があるらしい。 Conditionally importing and exporting library …

Flutterのcollectionパッケージが便利だった

dartでこんな感じの 「条件に一致した最初の要素を取得する」 みたいなことをしたかった。 final item = items.firstWhere((v) => v.id == 1); 見つからないときはnullが返ってきてほしいけど、 条件に合うものがないと、StateErrorがthrowされる。。 orElse…

BrickHub/masonで動的な質問を扱う(最終確認の例)

前回、前々回の続き。BrickHub/masonでいろいろ試したときの備忘録(*´ω`*) 前回: BrickHub/masonでテンプレート(bricks)を作ってみる - くらげになりたい。 前々回: BrickHub/masonでコード生成をしてみる - くらげになりたい。 前回まででとりあえずの作り…

BrickHub/masonでテンプレート(bricks)を作ってみる

前回の続き。オレオレテンプレートの作り方をみてみる(*´ω`*) BrickHub/masonでコード生成をしてみる - くらげになりたい。 公式ドキュメントだとこのあたり。 Creating Bricks | BrickHub Docs 雛形の作成 $ mason new example ✓ Generated 5 file(s). (34…

BrickHub/masonでコード生成をしてみる

FlutterのYouTubeを見てたらこんなのが(*´ω`*) ドキュメントはこれが公式っぽい。 BrickHub Docs GitHubのTemplateリポジトリを使ってたけど、 アプリ名とかを変えるのがすこしめんどくさい。。 これなら、変数で指定できるので、だいぶ楽になりそう(*´ω`*…