psychedelicious
ace87948dd
perf(ui): disable useInert on modals
...
This hook forcibly updates _all_ portals with `data-hidden=true` when the modal opens - then reverts it when the modal closes. It's intended to help screen readers. Unfortunately, this absolutely tanks performance because we have many portals. React needs to do alot of layout calculations (not re-renders).
IMO this behaviour is a bug in chakra. The modals which generated the portals are hidden by default, so this data attr should really be set by default. Dunno why it isn't.
2024-09-06 22:56:24 +10:00
psychedelicious
89ff9b8b88
perf(ui): optimize all selectors 2
...
Mostly selector optimization. Still a few places to tidy up but I'll get to that later.
2024-09-06 22:56:24 +10:00
psychedelicious
bac0ce1e69
perf(ui): optimize all selectors 1
...
I learned that the inline selector syntax recreates the selector function on every render:
```ts
const val = useAppSelector((s) => s.slice.val)
```
Not good! Better is to create a selector outside the function and use it. Doing that for all selectors now, most of the way through now. Feels snappier.
2024-09-06 22:56:24 +10:00
psychedelicious
d9fe16bab4
feat(ui): split out params/compositing state from canvas rendering state
...
First step to restoring undo/redo - the undoable state must be in its own slice. So params and settings must be isolated.
2024-09-06 22:56:24 +10:00
psychedelicious
20961215e7
chore(ui): eslint
2024-09-06 22:56:24 +10:00
psychedelicious
5dda364b2c
fix(ui): rebase conflicts
2024-09-06 22:56:24 +10:00
psychedelicious
2db7608401
refactor(ui): canvas v2 (wip)
2024-09-06 22:56:24 +10:00
Mary Hipp
4e294f9e3e
disable export button if no non-default presets
2024-08-26 09:23:15 -04:00
psychedelicious
8a2c78f2e1
fix(ui): dynamic prompts not recalculating when deleting or updating a style preset
...
The root cause was the active style preset not being reset when it was deleted, or no longer present in the list of style presets.
- Add extra reducer to `stylePresetSlice` to reset the active preset if it is deleted or otherwise unavailable
- Update the dynamic prompts listener to trigger on delete/update/list of style presets
2024-08-22 21:00:09 +10:00
psychedelicious
4f4ba7b462
tidy(ui): clean up ActiveStylePreset markup
2024-08-21 09:06:41 +10:00
Mary Hipp
2298be0e6b
fix(ui): error handling if unable to convert image URL to blob
2024-08-21 09:06:41 +10:00
Mary Hipp
36a1d39454
fix(ui): handle badge styling when template name is long
2024-08-21 09:06:41 +10:00
Mary Hipp
a6f6d5c400
fix(ui): add loading state to button when creating or updating a style preset
2024-08-21 09:06:41 +10:00
Mary Hipp
d4797e37dc
fix(ui): properly unwrap delete style preset API request so that error is caught
2024-08-19 16:12:39 -04:00
psychedelicious
a85d69ce3d
tidy(ui): getViewModeChunks.tsx -> .ts
2024-08-19 08:25:39 +10:00
psychedelicious
96db006c99
fix(ui): edge case with getViewModeChunks
2024-08-19 08:25:39 +10:00
psychedelicious
8ca57d03d8
tests(ui): add tests for getViewModeChunks
2024-08-19 08:25:39 +10:00
psychedelicious
6c404ce5f8
fix(ui): prompt template preset preview out of order
2024-08-19 08:25:39 +10:00
psychedelicious
584e07182b
fix(ui): use translations for style preset strings
2024-08-17 21:27:53 +10:00
psychedelicious
3fb4e3050c
feat(ui): focus in textarea after inserting placeholder
2024-08-16 10:14:25 +10:00
psychedelicious
39c7ec3cd9
feat(ui): per type fallbacks for templates
2024-08-16 10:11:43 +10:00
psychedelicious
26bfbdec7f
feat(ui): use buttons instead of menu for preset import/export
2024-08-16 09:58:19 +10:00
Mary Hipp
24f298283f
clean up, add context menu to import/download templates
2024-08-15 12:39:55 -04:00
Mary Hipp
68dac6349d
Merge remote-tracking branch 'origin/main' into maryhipp/export-presets
2024-08-15 11:21:56 -04:00
psychedelicious
bd07c86db9
feat(ui): make style preset menu trigger look like button
2024-08-15 09:47:49 -04:00
psychedelicious
bcbf8b6bd8
feat(ui): revert to using {prompt} for prompt template placeholder
2024-08-15 09:47:49 -04:00
psychedelicious
15415c6d85
feat(ui): use dropzone for style preset upload
...
Easier to accept multiple file types and supper drag and drop in the future.
2024-08-15 09:47:49 -04:00
Mary Hipp
76b0380b5f
feat(ui): create component to upload CSV of style presets to import
2024-08-15 09:47:49 -04:00
Mary Hipp
a9014673a0
wip export
2024-08-15 09:00:11 -04:00
psychedelicious
5c37391883
fix(ui): do not show [prompt] in preset preview
2024-08-14 12:29:05 +10:00
psychedelicious
41b2d5d013
fix(ui): prompt preview not working preset starts with [prompt]
2024-08-14 12:21:38 +10:00
Mary Hipp
e0d3927265
feat: add flag for allowPrivateStylePresets that shows a type field when creating a style preset
2024-08-13 14:08:54 -04:00
Mary Hipp
e5f7c2a9b7
add type safety / validation to form data payloads and allow type to be passed through api
2024-08-13 13:00:31 -04:00
Mary Hipp
b0760710d5
add the rest of default style presets, update image service to return default images correctly by name, add tooltip popover to images in UI
2024-08-13 11:33:15 -04:00
Mary Hipp
6a01fce9c1
fix payloads for stringified data
2024-08-12 15:16:22 -04:00
Mary Hipp
b70891c661
update descriptoin of placeholder in modal
2024-08-12 13:37:04 -04:00
Mary Hipp
6c927a9fd4
move mdoal state into nanostore
2024-08-12 12:46:02 -04:00
Mary Hipp
096f001634
ui: add ability to copy template
2024-08-12 12:32:31 -04:00
Mary Hipp
1e547ef912
UI more pr feedback
2024-08-12 11:59:25 -04:00
Mary Hipp
97553a7de2
API/DB updates per PR feedback
2024-08-09 16:27:37 -04:00
Mary Hipp
12ba15bfa9
UI updates per PR feedback
2024-08-09 16:00:13 -04:00
Mary Hipp
8eb5d08499
missed translation
2024-08-08 16:01:16 -04:00
Mary Hipp
9be6acde7d
require name to submit style preset
2024-08-08 15:53:21 -04:00
Mary Hipp
3f9a674d4b
seed default presets and handle them in UI
2024-08-08 15:02:41 -04:00
Mary Hipp
42d68780de
lint
2024-08-08 14:19:33 -04:00
Mary Hipp
28032a2f80
more cleanup
2024-08-08 14:18:05 -04:00
Mary Hipp
e381e021e9
knip lint
2024-08-08 14:00:17 -04:00
Mary Hipp
4cc41e0188
translations and lint fix
2024-08-08 13:56:37 -04:00
Mary Hipp
442fc02429
resize images to 100x100 for style preset images
2024-08-08 12:56:55 -04:00
Mary Hipp
9a4d075074
fix path for style_preset_images, fix png type when converting blobs to files, built view mode components
2024-08-08 12:31:20 -04:00