0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2025-12-25 14:02:40 +00:00
Commit Graph

2217 Commits

Author SHA1 Message Date
Gazook89
8a67e1eccd Merge branch 'Functional-Tag-Editor' into Func-Tag-Editor-Features 2024-09-19 14:54:28 -05:00
Gazook89
7ea1696065 Adjust html structure to handle tags as list
Begin work on setting a better html structure for the component.

Create a .less file for the component, which I may not actually use.
2024-09-19 10:40:09 -05:00
Gazook89
5b4a7c168f Add comma to "submit" buttons
Now comma (`,`) submits a tag, like `Enter`
2024-09-18 23:54:12 -05:00
Gazook89
a54adc1e4b Set new tag input to clear itself after submission
Now whenever a new tag is submitted, the input element is cleared and ready for the next tag.

Whitespace cleanup.
2024-09-18 23:39:26 -05:00
Gazook89
c1288ce4bb Use index to find and remove tags
Fixes issue in last commit, so removing a tag that has duplicate value of other tags only removes the correct one, not the others as well.
2024-09-18 23:24:10 -05:00
Gazook89
c65210b3ed Add 'remove' button and method
New button that triggers `submitTag()` method directly (rather than throw onKeyDown event) and passes `null` as the newValue.  New `if` condition checks for null on newValue and if true, removes the tag that matches the originalValue.

This *does* currently delete all duplicate tags if they match the one you are deleting.  Not sure when you'd ever want duplicate tags, but regardless i'll likely switch this to work via Index, not value.
2024-09-18 23:13:46 -05:00
Gazook89
70a3cb9ef9 Add method for adding new tags
Component now accepts new tags entered in the always-present input field.  Entering a value and hitting Enter submits the tag, and it appears as a new tag.

Updated the tag list keys to be unique (via `index`).

To-Do: empty 'new tag' input after submitting.
2024-09-18 22:46:00 -05:00
Gazook89
d1686c4c8f Add in handlers for TagInput value changes
Now brew metadata is actually updated and preserved across reloads to match updated tag values.  useEffect calls the props.onChange event from the parent component on every change to the valueContext state of this component (right now, after hitting Enter in a tag input).
2024-09-18 22:18:18 -05:00
Gazook89
c5033db336 add editing of input functionality
Currently uses uncontrolled inputs with a `defaultValue` attribute set to the values passed in via props.  The input can then be edited, and when `Enter` is pressed, it updates the stored value state.  Later, this can be updated to be trigger with `Tab` or clicking outside the active input element.
2024-09-18 21:00:24 -05:00
Gazook89
36aa4ea508 Add click handler for readTags to open text input
Clicking on a readTag now converts that tag to a text input, and maintains the tag value.  It also closes any other open text inputs amongst the tags (but leaves the "new tag" input open).
2024-09-17 23:50:59 -05:00
Gazook89
d5c5b4315b Render tags as "write" or "read"
Tags are now either "readTag" or "writeTag", with the former being a div with the tag value and the latter a text input with the value.

Minor class name change in LESS.
2024-09-17 23:28:56 -05:00
Gazook89
d505e4e24c Render element for each value from props
Take an array of values from props, load it into valueContext state with an "editing" boolean for each value.  Then, when rendering the component, take each value in the valueContext array and create a div for each --

at this point, if the value is "being edited", it returns a div with text "editing".  If not being edited, it returns a div with the value as text.

Nothing is being edited at this point since that functionality doesn't exist yet.
2024-09-17 23:16:06 -05:00
Gazook89
ea7f18e3b0 Merge branch 'master' into Functional-Tag-Editor 2024-09-17 14:50:31 -05:00
Gazook89
e8e16f4d66 Initial commit: Rename component, set basic structure
No actual functionality implemented yet, just renames the component from "StringArrayEditor" to "TagInput", for brevity at the possible cost of clarity.  For now, the original StringArrayEditor is kept and named "TagInput-class.jsx" so that I can reference it as I work on the functional component.
2024-09-17 14:46:56 -05:00
Víctor Losada Hernández
61d77b4d2d fix 2024-09-17 19:55:50 +02:00
Víctor Losada Hernández
a92b44427d lint 2024-09-16 23:17:12 +02:00
Víctor Losada Hernández
5961e9042a merge from master 2024-09-16 23:11:27 +02:00
G.Ambatte
83a7636b6f Simplify historyExists state logic 2024-09-17 07:41:34 +12:00
G.Ambatte
53c05a3ef6 Remove unused default item 2024-09-17 07:27:52 +12:00
G.Ambatte
8ceb422156 Separate bundled setState calls 2024-09-16 19:40:11 +12:00
G.Ambatte
8315df33ae Change empty slot logic 2024-09-16 19:39:51 +12:00
G.Ambatte
59f6f40ace Add seconds to display options 2024-09-16 19:24:39 +12:00
G.Ambatte
91f9a76af2 Remove spaces from code indentation 2024-09-16 19:20:14 +12:00
G.Ambatte
ae7404eb1f Remove comments 2024-09-16 19:15:16 +12:00
G.Ambatte
7a2fecf502 Set archiveBrew object directly
Co-authored-by: Trevor Buckner <calculuschild@gmail.com>
2024-09-16 19:07:42 +12:00
Trevor Buckner
dfd3b99232 Merge branch 'master' into experimentalLocalStorageHistory 2024-09-16 01:50:54 -04:00
Trevor Buckner
8d479b8cd1 Lint whitespace changes 2024-09-16 01:42:44 -04:00
Trevor Buckner
63675a46e0 Lint more things 2024-09-16 01:42:21 -04:00
Trevor Buckner
5cc5eec619 Lint toolbar and snippetbar 2024-09-16 01:41:46 -04:00
Trevor Buckner
b5490e3a53 Lint editor.jsx 2024-09-16 01:40:21 -04:00
Trevor Buckner
98c5b798a7 Merge branch 'master' into experimentalLocalStorageHistory 2024-09-16 01:03:29 -04:00
Trevor Buckner
48bdc417fa More logic simplification 2024-09-16 00:39:04 -04:00
Trevor Buckner
25a40e31c5 Remove console logs 2024-09-15 22:31:29 -04:00
Trevor Buckner
a353425d07 More cleanup 2024-09-15 22:13:41 -04:00
Trevor Buckner
c07c02f1d9 Remove unused variable 2024-09-15 21:44:02 -04:00
Trevor Buckner
81ab9417d3 Clean up unused code 2024-09-15 21:42:55 -04:00
Trevor Buckner
85401ba71b Fix BrewRenderer scrolling to 0 2024-09-15 21:26:49 -04:00
Trevor Buckner
84c0242eee Put page jump checks in componentDidUpdate
Jump when the current page for brew or editor changes
2024-09-15 00:13:49 -04:00
G.Ambatte
eddc81d051 Merge branch 'master' into experimentalLocalStorageHistory 2024-09-15 14:23:14 +12:00
G.Ambatte
531e6efa5e Get configuration from config files 2024-09-15 14:19:24 +12:00
G.Ambatte
72257dc71b Lint fixes 2024-09-15 14:09:56 +12:00
G.Ambatte
b456bb955a Initial UI functionality 2024-09-15 14:09:47 +12:00
Trevor Buckner
181c6bf65a Update editor.jsx 2024-09-14 19:15:39 -04:00
Trevor Buckner
d4fa5d55d0 Merge branch 'master' into pr/3484 2024-09-14 19:15:12 -04:00
Trevor Buckner
26a126859d Lint 2024-09-14 19:02:55 -04:00
Trevor Buckner
76c9f2ee71 Lint 2024-09-14 18:58:23 -04:00
Trevor Buckner
5c2acf3183 Let Editor pass changes up and inherit values down 2024-09-14 18:52:13 -04:00
Trevor Buckner
fa2874b18f Let brewRenderer pass changes up, and inherit values down 2024-09-14 18:50:38 -04:00
Trevor Buckner
7e776df4d4 Add Current Page states up into editor components, pass down to children 2024-09-14 18:50:09 -04:00
G.Ambatte
7009ef4441 Remove unneeded brew.shareId reference 2024-09-15 00:47:54 +12:00