Commit graph

18 commits

Author SHA1 Message Date
Leon Mika 5088009672 ucl: added more resultset functions 2025-05-19 22:14:22 +10:00
Leon Mika e37b8099a3 Fixed a glaring error where the user cannot close the column selector
Some checks failed
ci / build (push) Has been cancelled
Cause of this was that the close event type was also being used by the related overlay, and the event was being caught by that even though the overlay was hidden.

Also started working on changing the sort order within the column selector by pressing S.
2024-04-02 23:00:19 +11:00
Leon Mika 7ca0cf6982
Converted scripting language Tamarin to Risor (#55)
- Converted Tamarin script language to Risor
- Added a "find" and "merge" method to the result set script type.
- Added the ability to copy the table of results to the pasteboard by pressing C
- Added the -q flag, which will run a query and display the results as a CSV file on the command line
- Upgraded Go to 1.21 in Github actions
- Fix issue with missing limits
- Added the '-where' switch to the mark
- Added the 'marked' function to the query expression.
- Added a sampled time and count on the right-side of the mode line
- Added the 'M' key binding to toggle the marked items
- Started working on tab completion for 'sa' and 'da' commands
- Added count and sample time to the right-side of the mode line
- Added Ctrl+V to the prompt to paste the text of the pasteboard with all whitespace characters trimmed
- Fixed failing unit tests
2023-10-06 15:27:06 +11:00
Leon Mika ed53173a1d
Added the "export -all" switch (#54)
Extended the "export" command with an "-all" flag. When included, all rows of the table matching the query will be exported to CSV.
2023-07-31 20:59:05 +10:00
Leon Mika ad1a77a257
Added paging and the ability to specify the table in query script method (#44)
* paging: added controller for paging through results
* paging: added command and key binding for going to the next page
* paging: added the ability to specify the table in the query script method
* paging: have got exclusive start key written to backstack
2023-01-23 21:23:46 +11:00
Leon Mika c89b09447c
Initial version of scripting (#40)
* scripting: added service and controller for scripting

* scripting: have got prompts working

Scripts are now running in a separate go-routine.  When a prompt is encountered, the
script is paused and the user is prompted for input.  This means that the script no
longer needs to worry about synchronisation issues.

* scripting: started working on the session methods

* scripting: added methods to get items and attributes

* scripting: have got loading of scripts working

These act more like plugins and allow defining new commands.

* scripting: have got script scheduling working

Scripts are now executed on a dedicated goroutine and only one script can run at any one time.

* scripting: added session.set_result_set(rs)

* scripting: upgraded tamarin to 0.14

* scripting: started working on set_value

* tamarin: replaced ad-hoc path with query expressions

* scripting: changed value() and set_value() to attr() and set_attr()

Also added 'delete_attr()'

* scripting: added os.exec()

This method is controlled by permissions which govern whether shellouts are allowed
Also fixed a resizing bug with the status window which was not properly handling status messages with newlines

* scripting: added the session.current_item() method

* scripting: added placeholders to query expressions

* scripting: added support for setting and deleteing items with placeholders

Also refactored the dot AST type so that it support placeholders.  Placeholders are not yet supported
for subrefs yet, they need to be identifiers.

* scripting: made setting the result-set push the current result-set to the backstack

* scripting: started working on byte encoding of attribute values

* scripting: finished attrcodec

* scripting: integrated codec into expression

* scripting: added equals and hashcode to queryexpr

This finally finishes the work required to store queries in the backstack

* scripting: fixed some bugs with the back-stack

* scripting: upgraded Tamarin

* scripting: removed some commented out code
2023-01-10 22:27:13 +11:00
Leon Mika 721d3abe5e backstack: added saving of backstack to workspace 2022-08-11 22:23:39 +10:00
Leon Mika 0f0bf70d01 Changed set-attr to support changing attributes of marked items 2022-07-17 22:01:25 +10:00
Leon Mika eadf8d1720 Fixed styling of the other tools 2022-06-27 16:05:59 +10:00
Leon Mika 809f9adfea Added mode line
Also rescanning will maintain the current query
2022-06-22 11:57:12 +10:00
Leon Mika 174bab36c3 put-items: started adding some basic commands for putting items 2022-05-26 09:01:39 +10:00
Leon Mika 798150a403 ssm-browse: added mark, filtering and delete items 2022-03-30 21:55:16 +11:00
Leon Mika c49f3913a8 ssm-browse: added mark and delete in dynamo-browse 2022-03-30 21:04:30 +11:00
Leon Mika 5a69e6c954 sqs-browse: remove assumption regarding table keys
Table keys are now retrieved from describe
2022-03-25 08:17:52 +11:00
Leon Mika 3428bd2a8a sqs-browse: fixed assumption regarding table keys 2022-03-25 08:13:43 +11:00
Leon Mika cecdbafabb sqs-browse: started working on put commands 2022-03-24 12:54:32 +11:00
Leon Mika 43680000a8 sqs-browse: started working on tests for controllers 2022-03-24 08:49:09 +11:00
Leon Mika 1969504611 sqs-browse: Added dynamo-browse
Added another tool for browsing DynamoDB tables
2022-03-23 11:56:33 +11:00