TypeScript

GraphQL.js の buildSchema でカスタムScalar型を使う

GraphQL.js の buildSchema でカスタム Scalar 型を利用してみました。 サンプルコードは こちら はじめに GraphQL.js では Scalar 型を GraphQLScalarType のインスタンスとして実装するようになっており、ID (GraphQLID) や Int (GraphQLInt) 等の基本的な…

Elasticsearch で nested の集計

Elasticsearch において 2層の nested 型フィールドで集計してみました。 サンプルのソースコードは http://github.com/fits/try_samples/tree/master/blog/20211127/ はじめに 下記のような 2層のカテゴリ(categories と children は nested 型)を持つド…

Elasticsearch で検索条件に合致した nested の要素だけを抽出

Elasticsearch の nested を用いた検索において、inner_hits を使って検索条件に合致した nested の要素だけを抽出するようにしてみました。 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20211011/ はじめに Elasticsearch では ne…

Jest と Vue Test Utils による Vue コンポーネントのテスト

Vue CLI で作成した TypeScript 用の Vue プロジェクトに対して、Jest と Vue Test Utils(@vue/test-utils) を追加導入し、Vue コンポーネントのテスト(TypeScript で実装)を実施するようにしてみました。 今回は、Vue CLI の vue create 時に、Manually…

CDK と LocalStack でローカルに Lambda と DynamoDB の実行環境を構築

AWS CDK (Cloud Development Kit) を使って、ローカル環境の LocalStack に Lambda 関数と DynamoDB のテーブルを構築してみました。 下記のようなツールを使用し、CDK によるスタックと Lambda 関数ハンドラーは TypeScript で実装しました。 AWS CDK v1.10…

CDK で作った CloudFormation テンプレートをプログラム内からデプロイする

AWS CDK (Cloud Development Kit) では通常 cdk deploy コマンドを使ってデプロイ処理を実施します。 AWS CDK v1.98.0 これを cdk コマンドを使わずにプログラム内から実施できないか、以下の 2通りで試してみました。 (a) AWS CDK の API を利用 (b) AWS SD…

イベントベースで考える在庫管理モデル

従来のイベントソーシングのような手法だと、特定の State(というよりは Entity かも)を永続化するための手段として Event を用いるというような、あくまでも State 中心の発想になると思います。 そこで、ここでは下記のような Event 中心の発想に切り替…

Deno から npm パッケージを使用する(Deno で fp-ts)

下記の方法を用いて Node.js / ブラウザ用 npm パッケージを Deno から利用してみました。 (a) Skypack の使用 (b) Deno Node compatibility の使用 npm パッケージは関数プログラミング用 TypeScript ライブラリの fp-ts を試すことにします。 fp-ts は Com…

TypeScript で funfix を使用 - tsc, FuseBox

funfix は JavaScript, TypeScript, Flow の関数型プログラミング用ライブラリで、Fantasy Land や Static Land ※ に準拠し Scala の Option, Either, Try, Future 等と同等の型が用意されているようです。 ※ JavaScript 用に Monoid や Monad 等の代数的構…