* Scaffolding for undo-redo
* undo redo working Poc commit
* memory performance improvements by diffing
* dont run update on undo/redo"
* merging widget postion update and canvas bottom row update into one dsl update.
* fix tabs widget
* Visible updates per undo redo action (#6838)
Co-authored-by: Rahul R <rahulramesha@Rahuls-MacBook-Pro.local>
* resize atomic operation
* fix switch control state issue
* disallow undo/redo for snipping and comment mode
* disallow undo/redo for snipping and comment mode
* fix color picker issue in undo/redo
* add test for replayDSL
* option control fix, adding logs
* minor position change undo redo updates
* add test cases for replayHelpers
* property Upade visual change
* remove unused code
* global hot key jest test for undo redo
* Fixing batch updates on property change..
* add tests for toggle control in property pane
* unwanted utils.
* add tests for text control
* add tests for deletion
* add tests for dropping a new widget
* adding jest test for replayUtils
* add move widget tests
* add tests for color picker control
* add analytics for undo/redo
* add analytics for undo/redo
* tab addition atomic
* cypress tests for propertyPane, toasts and radiowidget optionControl
* replayDSL end of redo stack fix
* property update changes
* menu option control debounce input
* color picker empty undo fix
* fix cypress tests
* widget add/remove atomic
* revert alternative approach to handle atomic operations
* update replayDSL test
* add some comments
* addressing review comments
* flash color for property pane controls
* Fixing adding of tabs widget as well.
* code review comments.
* merging widget postion update and canvas bottom row update into one dsl update.
* fix ordering of tabs property control
* meta property update canvas min height.
* fixing failed specs.
* Fixing entity explorer update on deleting tab from entity explorer.
* address review comments and minor property update changes
* fixing failing tests
* merge conflicts
* changes to cater widget api.
* fix suggested widget table issue
* draggable list for undo redo
* fix widget name focus
* excluding canvas updates.
* fixing codeEditor update on propertySection collapse
* fixed failing test case
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: Rahul R <rahulramesha@Rahuls-MacBook-Pro.local>
Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
* Change currency input layout to flex
* fix: styles for normal input
* Increase space b/w icon and text. Add focus color
visual modifications as suggested by Momcilo
* fix: alignment for ISDCodeDropdown
* fix: background color for disabled
* change dropdown focus color as suggested by Momcilo
* remove unwanted conditional height
* makes disabled Numeric input consistent to disabled input
* reverted previous revert
* standardised widget sizes
* Text changes
* changed default input label style to match default text style
* more messaging tweaks
* minor fix
* Removed dot from the text
* minor fix for form widget
* fixed tests
* minor fixes
* fix: Input widget as number type 0 as default value
* added cypress test case
* cypress test fix, force click default text input
* updated input widget validation of number/currency/phone number type
* minor change
* FIX#2587 : added container wrapper component to handle styles, updated test cases
* FIX#2587 : abstract widget style component for common use and wraped on text widget
* updated style boundary and css
* updated cypress test
* fix: accommodate prop pane height change for the test
* removed properties from text widget
* updated container wrapper style to handle border corners, updated migrations for container and form widget
* fixed container overflow
* added testcases for container and text widget
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
* updated widget properties
* updated placeholders
* updated default for date
* lint fix
* Fixed more styles and reverted changes to input widget
* adjusted default sizes of different widgets
* resized image in list widget
* reduced chart default data
* fixed tests
* PR comment fixes
* fixed tests failing
* fix: Fixed failing jest tests because of an error in chart widget propertyConfig object
Co-authored-by: somangshu <somangshu.goswami1508@gmail.com>
Fixing challenge with the valid property as below:
1. Change the valid prop to an input control like regex
2. the valid field prop should be able to accept undefined apart from boolean
3. Change helper text to > ability to control input validity based on a JS expression.
* fix: underline style for text
* fix: add expected structure example
* Revert "fix: add expected structure example"
This reverts commit efd56886a26f87bb18cf6edc53bd246bfeb8e0f1.
* fix: test failing
* fix: widget crashing (#6980)
* fix: update omnibar search string for documentation for actions (#6722)
* [Mongo] Added default values for query for Find, Count and Distinct commands (#6960)
* Added smart defaults for query in Count, Distinct & Find commands
* Added test cases for smart inputs for query and limit for find, and query for count and distinct
* Distinct command output now results a JSON object instead of an array of strings (#6964)
* Fix: Break word when text widget content is long (#6211)
fixes#5319
* fix: widget crashing
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
Co-authored-by: balajisoundar <sbalaji1192@gmail.com>
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
Co-authored-by: balajisoundar <sbalaji1192@gmail.com>
* fix: compact mode
* fix: test
* fix: remove row height visibility
* fix: options label for compactMode
* feat: Add test
* Fix: failing test
* fix: test
* fix: test case.
* fix failing test
* fix: move position of rowHeight prop in property pane
Introducing a new widget: Statbox / Statistic box Widget; This is a composite widget which has text and icon in a certain layout that can be easily changed.
Introduced a new field called as total record count which can be used to disable the pagination controls while having server side pagination. If this value is undefined the conditions will be ignored. The total record count is `total count / page size`, all the parameters need to be bound to the query/API for the functionality to work properly
* made inline comment pins draggable and added wrapper around overlay comments wrapper
* moved drag hook to pin
* can drag on canvas
* Properly updating the thread to be able to properly move the pin
* always passing the ref to container
* updating BE to save the new pins position
* minor fix
* changed a file name
* minor improvement to fix unit test
* fix, updated dragging reducer function to not expect appId
* removing unrelated change
* added drag and drop for comment pins without react dnd
* updated unit tests
* minor fix
* added a grab pointer and minor offset when user moves the pin
* removed unnecessary store states
* moved drop from onDragEnd to onDrop to reset everything.
* using state selector and dispatch hook
* removed use of anchor widget
* removed pointer change from comments wrapper
* verifying if current pin is being dragged
* updated action creator name
* moved dragging in comments reducer.
* using dragging thread id from store itself
* using relative positioning of pointer to predict the location of pin
* unit test cases fixed
* minor fix
* removed the dependency of off set from callback
User now should have access to the table sort column if any through the `{{table.sortOrder}}` API. This will return an object when sort is active > {column: string, order: enum|‘asc’|'desc'}. There should also be a `onSort` action available which can trigger an Event
Added multiple style props to the button widget:
- Button styles
- The background colour can change with a hex code
- elevation (box-shadow & colour)
- There are button variant contained (solid button), outlined (only borders), text (text buttons)
- Button can have an end icon or start icon
- Menu widget needs to show transparent background
- Make background none if user choose no background colour
- Adopt button style options(menu style, variant, box shadow, border radius)
* - Create a clone of the existing filepicker widget
* - If a file is larges than 5MB, don't put it in the dataTree.
Co-authored-by: Satish Gandham <satish@appsmith.com>
* [Feature] Click on widget will no longer open property pane
* fixing test cases
* coverage fixes
* fixing imports.
* fixing build failure.
* fixing new specs
* clear property pane state for any new selection.
Many new input widget enhancement added. The widget now has the capability to have its own label and tooltip as helper. The user can now add Icons inside the input widget and align them as well, The user can allow choose the max allowed length of the input. We have also added the isValid property in tandem to the regex property for additional validations using JS expressions
Introducing a new widget: `Checkbox Group`, Users can now create a group of checkboxes and have an action trigger and also be able to refer the selected values from the internal API.
The multi-select and select now has the capability to handle server side filtering, i.e. an Appsmith dev can now choose to call an api on search or options using the onFilterUpdate action
* fix binding
* fix multiple binding not working issue
* use box shadow inset + fix gap issue
* fix container z index issue
* fix resize ux issue
* update container height
* allow selecting list widget only when the property pane is not visible
* fix resize handle overflow issue
* fix dot issue in current item structure + fix resize issue for template
* fix select widget not workign inside list widget issue
* remove unused keys
* fix jest test
* fix derived.js test
* add undefiend check
* add currentIndex for autocomplete
* revert white color to transparent for list container
* fix pagination wrong calculation
* remove beta tag
* fix issue with cypress test failing
* fix issue with dropdown widget
* fix the boolean value issue
Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
Introducing the **Floating action button / Icon button**. Now you can use this to show small actions as icons. We have added a bunch of styling customisation to this as well. You can bind an onClick action to this and easily trigger an even. The component also automatically resizes within the widget as you scale it while maintaining the right aspect ratio.
* Remove type from COLORS constant
* Remove type from InputTypes in InputWidget
* Remove type from ReduxActionTypes
* Remove type from ReduxErrorActionTypes
* Remove type from SocialLoginTypes
* Fix widget actions issues
* Remove OPEN_SUB_PANE commented redux action
We have now separated the multi-select from the select widget, This has simplified the implementation and helped us resolve any issues we where facing because of the complexity bought by both under the same hood and has also increased the discoverability of the widget for our end users. We have also simultaneously taken up multiple enhancements related to the select and multi-select widget.
-- Add a new meta property for receiving the message from an iframe. Now the user can simply refer to {{iframe.message}} to access the data they receive in an API or widget.
* added sniping mode toggle option to header
* added cover to components on hover in sniping mode
* fixed the transition time
* using filled icon
* Show dependencies in action pane
* Added a wrapper to make a widget snipeable
* removed older parts of sniping from Positioned Container
* removed onclick action from snipeable wrapper
* Showing widget name in different color
* Added a mechanism to send user to sniping mode from successful API screen
* created new property pane saga to bind the data
* Fix datasource list width issue
* Fix sidebar going out of view when the response is a table
* Minor refactor
* Show add widgets section on the sidebar
* Stop showing autocomplete option after adding a widget
* fetching pageId, appId from store
* Get suggested widget from response
* Fix table data not getting evaluated after adding binding
* Fix property pane going below the entity explorer while navigating from query/api pane
* Fix width of sidepane shifting for apis
* Fix vertical margins of connections
* Fix api pane suggested widget showing up for errors
* Fix margins
* can show select in canvas btn in sidebar
* can get the action object at the end to bind the data
* updated saga and action names
* can bind data to table
* Use themes
* Use new image url for Table widget
* Added conditional mapping for sniping mode binding.
* updated the widget name tags and seq of calls to open property pane
* pushed all sniping mode decoration to header
* moved setting sniping mode logic to editor reducer
* Added keyboard short cut to get out of sniping mode
* updated reset sniping mechanism
* removed a divider line
* if there are no relationships, will not show the complete section
* Connect Data will automatically show relevant tab in integrations
* Update list and dropdown image urls
* Remove create table button
* no wrapping bind to text
* minor review considerations
* showing the widget name to left in sniping mode
* can set data to datepicker
* will not show snipe btn if there are no widgets in canvas
* Changes for multiple suggested widgets
* removed dependency of sniping from suggested widgets
* Added analytics events for sniping mode
* logic for binding data to a widget, moved to snipeable component
* changed binding widget func from capture to onClick and took care of sniping from widget wrapper too.
* added tests to check sniping mode for table
* updated test spec
* minor fix
* Fix copy changes
* Update test to use table widget from suggested widget list
* if fails to bind will generate warning and keep user in sniping mode
* in sniping mode will only show name plate if it is under focus
* fixed the test case
* added a comment
* minor fix to capture on click event in sniping mode
* updated text
* Hide connections UI when there are no connections
* Increase width to 90%
* Show placeholder text and back button in sidepane
* Show tooltip on hover
* Add analyitcs events for suggested widgets and connections
* Update label based on whether widgets are there or not
* binding related changes
* renamed the saga file containing sinping mode sagas
* Changes for inspect entity
* Revert "binding related changes" temporarily
This reverts commit 54ae9667fecf24bc3cf9912a5356d06600b25c84.
* Update suggested widgets url
* Update table url
* Fix chart data field not getting evaluated
* a minor fix to show proper tool tip when user hovers on widget name
* Show sidepane when there is output
* Update locators
* Use constants for messages
* Update file name to ApiRightPane
* Remove delay
* Revert "Revert "binding related changes" temporarily"
This reverts commit ee7f75e83218137250b4b9a28fcf63080c185150.
* Fix width
* Fix overlap
Co-authored-by: Akash N <akash@codemonk.in>
Keep date-picker open when selecting time or changing month, year in Table filters, The user before this could not select or change time. We have fixed this by closing the date-picker popover onClick of outside overlay/canvas.
In the date picker widget we now have an option to let the date picker popup remain open until the a positive feedback is given by clicking outside the popup or another widget. In other words the date-picker popup will not close where a date is selected with `closeOnSelection` disabled.
We have also added an option to show date-picker shortcuts to the end user.
Table data was not populating when extra space inside the mustache binding, This is now fixed for list and table widget
* removed return statements from computed values
* list widget responce update
* table data handled return, added migration
* removed unused function
* updatetd rowBinding string generator
* fix failing cypress test
* fix cypress tests
The filter pane in the table widget was fixed to top which would hinder the viewport for the end user. We have now changed the filter pane to a draggable component such that the user can place it anywhere on the canvas while they apply filters to see data change in realtime.
* FEATURE #4088 : added draggable filterpane for table widget
* FEATURE #4088 : update icons, editMode prop and added renderDragBlock support in popper
* FIX#5329: added close button for close filter pane
* FIX#5332 : updated zindex for table filter pane
* fix list widget test
* Fix drag icon position and cypress failing tests
* Fix endsWidth comparator function
Datepicker selected data and formatted date will not be empty on clear and not fallback to default date. This is consistent with other widget behaviour