# refactor: share the file chooser, date and instruction helpers \(\#88\) · gc2-sanity-20260918/gc2-release-20260919

[View on GitCafe](https://staging.git.cafe/gc2-sanity-20260918/gc2-release-20260919/commit/d57eff994f2394de615eb6d054ee8331af00af66)

Repository: [gc2-sanity-20260918/gc2-release-20260919](https://staging.git.cafe/gc2-sanity-20260918/gc2-release-20260919)

Visibility: public

Requested revision: d57eff994f2394de615eb6d054ee8331af00af66

Requested commit: d57eff994f2394de615eb6d054ee8331af00af66

Commit: d57eff994f2394de615eb6d054ee8331af00af66

Tree: 2b0615c466311083ae84137e63e66ce4fd349728

Author: pfg

Committer: GitHub

## Message

```
refactor: share the file chooser, date and instruction helpers (#88)

- Add FileChooser and file_creation to block-editor-plugin, replacing four
  hand-rolled copies in the audio, game module, image and PDF editors.
- Add FileFilter::new so filters no longer map string slices by hand.
- Reuse block-ui's datetime helpers in version_control_data and calendar.
- Move the duplicated instruction formatter into logicgame as Display.


Claude-Session: https://claude.ai/code/session_01V62wS6nuyBDobeqcX4YkMV

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: be3-merge-queue[bot] <332166134+be3-merge-queue[bot]@users.noreply.github.com>
```

## Parents

- [ed20f133f42d62cb55f29ab2d738aa0218362878](https://staging.git.cafe/gc2-sanity-20260918/gc2-release-20260919/commit/ed20f133f42d62cb55f29ab2d738aa0218362878?format=markdown)

[Source at this commit](https://staging.git.cafe/gc2-sanity-20260918/gc2-release-20260919/tree/d57eff994f2394de615eb6d054ee8331af00af66?format=markdown)
