This PR includes following changes:
- With latest datasource autosave improvements, we do not save the
datasource immediately but save it on explicit click of save button, so
in case user has not saved any changes and tries to leave the page, we
have added a popup to inform users that they have unsaved changes and
whether they would like to save them or not.
- The issue was in case of postgres and authenticated API datasource,
this popup was getting seen even when the user has not made any changes
in the datasource configuration. This PR solves that issue.
- The unsaved changes popup needs to be shown only when user has made
any new changes in the datasource form
TL;DR
- We have used redux form's isDirty method to check if user has made any
new updates to the form or not. This isDirty compares initial value of
datasource form with current form value and if current form value is
different it shows the unsaved changes popup
- The issue occurred because in case of postgres and authenticated API
datasource, we initialise 1 default pair of host address and port
(postgres), and default pairs of headers and query parameters
(Authenticated API). These initial default changes made the form dirty
and so user used to see the popup even when they have not explicitly
made any changes.
- This PR fixes the issue by setting initial form value with these
defaults so they do not make the form dirty.
Fixes#18962 , #18998https://user-images.githubusercontent.com/30018882/208931098-b570e3c4-10bc-4b76-bd54-531ccf869436.mov
Co-authored-by: “sneha122” <“sneha@appsmith.com”>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
## Description
Building on top of [Command Click](#18326) we are now adding more links
for entities where navigation is possible.
This is mainly JS Objects where function and variable names are part of
the code itself. Clicking on the link will navigate to the JS Object and
set the cursor on the item you clicked on.
We are also enabling this for Form Widget where in `Form1.data.Input1`
the "Input1" link will take you to that widget
> TLDR;
You can now command click on nested properties of an entity
Fixes#18636
This PR contains changes to retain context on the following items,
Leaving and then returning to a page should maintain what api/query was open
Entity explorer should stay as you left it when you left the page (collapse levels)
Widget/explorer tab
Width - Should be the same across all pages of an app
Property Pane width
Complex widgets, multi tier property panes
Co-authored-by: hetunandu <hetunandu@gmail.com>
Co-authored-by: Akash N <akash@codemonk.in>
Co-authored-by: Hetu Nandu <hetu@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
* Aggregate calls to add and remove Appsmith errors
* fix switch type
* Fix entity deletion errors
* Code clean up
* fix cypress tests
* Return early for empty errors in Appsmith debugger
* Remove redundant identifier
* Retain order of debugger logs
* Use push instead of unshift for perf reasons
* redundant commit to retrigger CI
* added multi select back
* (WIP): Complete the dynamc height update logic
* (WIP): Dynamic height logic
* (WIP): Container computation logic, Next steps: Prevent reflow when resize is disabled. Fix logic of widgets randomly changing positions (Debug)
* Fix logic in container computations
* Integrate for PoC
* fixed the no initial load dynamic height updates
* Stop vertical resize and reflow when dynamic height is enabled for a widget
* added another container in text widget
* enabled dynamic height for container widgets
* removed dynamic height feature from list widget
* Fixed Button and Input components height increase
* added an experiment to overflow the content if maxHEight is less
* removed the ref of Textwidget by mistake, added it back
* fixed text widget height overflow problem with a little hack
* added long labels with text
* fixed the table scroll issue
* overflow fixed for json form widget
* added extra 8px height for Switch, Rating and Checkbox Height
* (WIP): Resolve issues
* (WIP): Fix widget padding issue
* added overflow container for Radio and Switch group widgets
* (WIP): Have modals work with dynamic height
* added the overlay and the handles
* added dragging behavior to the dots
* fixed the overlapping with the selection tool
* (WIP): Fix issues reported
* now we can update the property pane values back from overlay handles
* now we can update the property pane values back from overlay handles
* (WIP): Fix table widget
* Fix package.json
* Remove unit tests temporarily
* Fix unit test
* (WIP): Fix modal resize. Fix cursors. Fix border issue on non-resizable widgets
* fetch component heights using the requestAnimationFrame callback
* behavioural changes
* (WIP): Fix issues on the platform
* Update main container size appropriately
* more behavioural changes
* overlay now only be visible when hovering over the dots
* grid showing and widget reselecting
* added onfocus and onblur events to property pane listeners
* added onfocus and onblur events to property pane listeners
* added a range slider for min and max
* added demarcations for slider values
* (WIP): Fix platform workflows for dynamic height
* Fix issues with widgets
* Fix removed import
* - Add missing cypress files
* set the limits
* limit increase on change
* Fix z-index of min max limit indicators. Fix unused-vars warnings
* Fix Table Widget and Text Widget issues
* Fix: all the bugs in the bug master list for DH (#16268)
* changed the zindex for the signifiers
* showing signifiers only when the widget is selected
* made changes suggested by Momcilo
* activate the dots when the fields are active
* created a new centered dot handle
* removed overlays on focus and made the border more like deisgn
* handles on top of other widgets
* hide the overlay when multiple widgets are selected
* added a white border
* added a white border
* bug #15509 resolved
* changed the minDynamicHeightLimit to 2 instead of 4 to fix the Bug #15527
* removed the height auto fix from BaseInputComponent to fix the Bug #15388
* removed the condition to not ccalculate dynamic height when the row difference is less than 2 to fix the bug 15353
* made fixes for the bug #16307
* made fixes for the bug #16308
* made fixes for bug 16310
* made fixes for the bug #16402
* removed some log statements
* made fixes for the bug #16407
* fixed label problem found in the issue #16543
* made fixes for the issue #16547
* made fixes for the bug #16492
* redeploy
* (WIP): Fix to make this branch functional
* imported LabelWithTooltip back from design system
* signifier is now centered
* filled the signifier with primary color
* overlay hidden while dragging
* made the signifier dashed border also draggable
* Fix issue #16590 (#16798)
* set the limits to 4 rows
* replaced the static 40 value
* added signifiers for modal widget
* added signifiers for modal widget
* tried solving the scroll issue for widgets when there are limits
* solved the height problem using ResizeObserver
* (WIP): Fix maxDynamicHeight issue with container widgets:
* made the changes as per the review
* fixed the issue for input widget when label gets out of border
* hide text widget overflow options if auto height is enabled
* (WIP): In view mode, invisible widgets now donot take space (#16920)
* (WIP): In view mode, invisible widgets now donot take space
* (WIP): Enable the feature where invisible widgets in view mode don't take space to all widgets irrespective of the dynamic height feature
* Remove Replay conditional
* removed the scroll container for container type widgets
* removed the scroll container for container type widgets
* updated the hook to set overflow none for text widget
* fixed the should dynamic height logic to respect the min height limit
* Modal widget adheres to dynamic height (#16995)
* Modal widget adheres to dynamic height
* WIP: POC: fix dynamic height issues (#16996)
Fix height less than 4 issue. Fix JSONForm adherence to min and max height
* POC: Dynamic height undo redo issue (#17085)
* Revert debouce timeout
* (WIP): Fix issue with undo-redo in dynamic height
* fix: Dynamic height issue fixes (#17153)
* Dynamic height issue fixes
==
- Fix issue where nested widgets did not ensure parent dynamic height updates
- Fix issue where Modal widget updates came in subsequent renders
- Fix issue where JSONForm collapses
- Fix performance issue for independent updates
* Use functions to get min and max dynamic height
* Fix issue where variable might have been undefined
* added the dynamic container into the deploy mode as well
* added overflow-x hidden when overflow-y is active in the dynamic height container
* fix: Dynamic height Issue fixes (#17204)
Fix preview mode invisible widgets. Fix Tabs widget dynamic height.
* removed a console.log statement
* removed the slider control file
* imported the LabelWithTooltip from the repo rather than ds
* word-break CSS rules added for Switch and Checkbox widget when Dynamic Height is enabled
* abstracted the check for dynamic height with limits enabled as isDynamicHeightWithLimitsEnabledForWidget
* abstracted the static value of 10 in dynamic height overlay to GridDefaults
* abstracted min and max dynamic height limits to getters
* fix: replaced all the refs for simpler widgets (#17353)
* replaced all the refs for simpler widgets
* removed the updateDynamicHeight from componentDidUpdate in BaseWidget
* added back lifecycle methods back to BaseWidget
* removed the contentRef from SwitchGroup and Table
* updating the height from the auto height with limits as well
* some hacks to make the limits work
* working solution
* used setTimeout to send an update to updateDynamicHeight from overlay update
* removed a log
* added requestanimationframe in settimeout
Co-authored-by: Ankur Singhal <ankursinghal@Ankurs-MacBook-Pro-2.local>
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* Fix issues caused during merge
* Remove unneeded derived property
* removed more unnecessary code which should have been removed after removing the ref dependency
* fixed the maxDynamicHeight issue
* Fix issue where property configs were not being sent
* fix: Auto Height Feature - add selectors for tests (#17687)
Add selectors for auto height cypress tests
* fix: removed height auto default theme (#17415)
removed height auto css rule from the default theme
Co-authored-by: Ankur Singhal <ankursinghal@Ankurs-MacBook-Pro-2.local>
* fix: Auto Height Feature - Resolve issues and restructure code (#17686)
* Fix issues in dynamic height. Restructure code and reduce abstraction leaks
* Fix typescript issues
* Update based on review comments. Comment migrations, as a cyclic import is causing the jest tests to fail.
* Remove unused imports
* Decrease code nesting
* added the base styles for the overlay like position and z-index in its styled component css
* used the isDynamicHeightEnabled prop to set the height of SwitchGroup and RadioGroup widgets from 32px to 100% in case of inline mode
* fix: Auto Height - Resolve issues (#17737)
* Fix Tabs Widget showTabs toggle based auto height. Revert removal of BaseWidget code. Remove box-intersect and use a bruteforce algorithm. Add base logic for having containers collapse due to hidden child widgets
* Hide scroll contents and overflow property pane controls when dynamic height is enabled
* Removed the class property expectedHeight from BaseWidget as it is not useful in the overlay logic after some changes
* fixed the left alignment issue of label in the rich text editor by adding some styles applied only when the dynamic height is enabled
* fixed the input field stretching issue in case of Dynamic height by adding some CSS styles when isDynamicHeight is true
* Fix failing modal widget cypress tests
* Fix issue with scrollContents and Tabs Widget defaulTab
* added a little bit padding of 4px to the right of scroll container of dynamic height with limit
* Add test locators for resize handles
* removed the dynamic height logic from the table widget
* fix: Auto-Height invisible widgets (#17849)
* Fix issue where invisible widgets were still taking space
* Make sure to collapse only if dynamic height is enabled
* Fix issues with reflow (not the invisible widgets)
* Fix container min height issues
* Fix reflow with original bottom and top values. Testing needed
* Fix invisible widgets
* fix: enabled dynamic height for stat box widget (#17971)
enabled dynamic height for stat box widget
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: added a min height to rich text editor so that it does not collapse (#17970)
added a min height to rich text editor so that it does not collapse
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* Fix issue with resizing auto height widget
* Add helper text to educate users regarding the scroll disconnect in WYSIWYG
* fix: Auto Height Fixes (#18111)
AUTO HEIGHT FIXES
- Fix JSONForm height discrepancy
- Fix issue where widgets moved below the other
- Fix droptarget height after parent container resize
* fix: sliced up the DynamicHeightOverlay component a little bit (#18100)
* sliced up the DynamicHeightOverlay component a little bit
* more refactoring
* more refactoring
* used release event emitter and refactored more
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: rich text editor center alignment issue (#18142)
* removed the center alignment from rich text editor
* dummy commit
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: old DSL container collapse (#18160)
* Fix issue where old containers from old DSLs used to collapse when auto height was enabled
* Fix issue where old containers don't allow new widgets to be added when auto height is enabled, this is because the shouldScrollContents is undefined
* fix: input widgets issue (#18172)
fixed the auto height not working issue
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: preview deploy mode (#18174)
fixed the preview and deploy mode
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height limits label intersection with handle dot (#18186)
fixed the position of the limits label to the right so that it will not intersect with the handle dot
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height limits rich text editor min height (#18187)
decrease the min height of the RTE so that it does not have the boundary issue with the max limit when auto height with limits is enabled
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: grammatical error in the help text (#18188)
changed react to reacts in the helpText of the dynamic height property in the proeprty pane
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height tabs double scroll (#18210)
solved the issue by disabling the scroll for the child canvas widget in the tabs widget
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: auto height limits resizing (#18213)
* fixed the auto height limits resizing issue
* made the auto height overlay independent of isResizing and used its own property to show the grid
* some more refactoring
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* dummy commit
* fix: old apps container issue (#18255)
filtered out the widgets which are detached from layout
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: fixing auto height in childless containers. (#18263)
fixing auto height in childless containers.
* task: Dynamic height reflow fixes in Branch (#18244)
dynamic height reflow fixes
* fix: compact label issue and min and max limits numeric input (#18282)
fixed compact label issue and turned min and max limits to numeric input
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: LabelWithTooltip help icon fix
* fix: NaN and min limit for min and max (#18284)
* fixed compact label issue and turned min and max limits to numeric input
* fixed NaN and set min to be 4
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: validation issues for min max (#18286)
* fixed compact label issue and turned min and max limits to numeric input
* fixed NaN and set min to be 4
* validations start working min max
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* added a full stop to container scroll helper text
* validations start working min max
* dummy commit
* feat: stop resizing auto height widgets vertically because of Drag n Drop Reflow (#18267)
* reflow fixes
* stop resizing auto height widgets vertically because of Drag n Drop Reflow
* feat: Analytics for Dynamic height (#18279)
* Fix canvas min height issue and invisible widgets issue and remove logs and fix issue where widgets overlapped when coming back from preview mode to edit mode
* Fix issue with containers not respecting auto height and decreasing height
* Fix issue with modal widget not hugging contents, and container widgets never become visible after going invisible
* Fix issue where existing containers don't have correct min height for child canvas
* fix: canvasLevelsReducers test (#18301)
fixed the canvasLevelsReducers test
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: removed auto height min max config from widget features (#18316)
removed auto height min max config from widget features
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: Fixing Modal Height updates (#18317)
Fixing Modal Height updates
* fix: text widget background auto height (#18319)
added background color of Text widget back to the auto height container
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* test: cypress tests for auto height (#17676)
* Added tests for dynamic height
* updated tests for another usecase
* moved locators into commonfile
* updated common method
* added tests for some more widgets
* Added tests for jsonForm / Form widget
* Updated the test
* updated test for multiple text widgets
* updated test with few more usecases
* updated the dsl
* updated tests for text change
* updated tests based on new changes
* updated cypress test fixes
* fix: auto height container merge poc wrt release (#18334)
updated the poc wrt PR already merged in the release regarding the auto height container
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: renamed auto height overlay components and added some tests (#18333)
* renamed auto height overlay components and added some tests
* replaced the 10 value with GridDefaults
* avoiding event to reach drop target
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* updated tests
* Merge all code into one branch
* Fix failing AutoHeightcontainer test
* fix: Fix reflow computations which were causing widget overlap (#18300)
* Fix reflow computations which were causing widget overlap
* Fix issues with parent container height and overlapping widgets
* Remove console logs
* Revert comment
* Fix issues related to reflow of containers
* feat: Making getEffectedBoxes a Recursive function in autoHeight Reflow (#18336)
Making getEffectedBoxes a Recursive function in autoHeight Reflow
* Return null for invisible widgets from withWidgetProps
* Remove duplicate import
Co-authored-by: rahulramesha <71900764+rahulramesha@users.noreply.github.com>
* Remove missed console log
* fix: Label position gets deselected on selecting already selected option (#18298)
* fix: Label position gets deselected on selecting the already selected value
* Added migration for Currency & Phone input widgets
* simplify migration function using a utility
* combine conditions
* Increments LATEST_PAGE_VERSION
* Update DynamicHeight_Visibility_spec.js
updated a check wrt auto height
* Handling Modals for canvas size calculations
* fix: migrate label position test failing issue (#18365)
fixed migrate label postition test failing issue
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* removed the two unwanted imports from DSLMigrations to fix client build
* fix: Auto height zero and limits issue (#18366)
fixed the auto height zero and limits issue
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
* fix: Auto height regression issues (#18367)
* Fix auto height regression issues #18367
* feat: auto height migrations (#18368)
Add auto height migrations
* Increase file caching size
* Use manual array for list of auto height enabled widgets
* Fix cypress test dsl versions
* Revert changes to shouldUpdateHeightDynamically
* Update test results based on code changes
* Marginally increase the workbox file size cache
* review comment incorporated for test spec
* Update container auto height property on drop
* added small wait for validation
Co-authored-by: Ankur Singhal <ankur@appsmith.com>
Co-authored-by: rahulramesha <rahul@appsmith.com>
Co-authored-by: Abhinav Jha <zatanna@Abhinavs-iMac.lan>
Co-authored-by: Ankur Singhal <ankursinghal@Ankurs-MacBook-Pro-2.local>
Co-authored-by: Ankur Singhal <ankurrsinghal@gmail.com>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: rahulramesha <71900764+rahulramesha@users.noreply.github.com>
Co-authored-by: Albin <albin@appsmith.com>
Co-authored-by: Aswath K <aswath.sana@gmail.com>
Co-authored-by: NandanAnantharamu <67676905+NandanAnantharamu@users.noreply.github.com>
Co-authored-by: Apple <nandan@thinkify.io>
* Evaluations and Linting now runs on separate web-workers for a much faster and responsive coding experience on Appsmith.
* Removed worker-loader webpack plugin.
## Description
Fixes#17499
Inside the repo limit modal the repo names are missing when user try to import the 4th private app
### Before

### After

## Type of change
- Bug fix (non-breaking change which fixes an issue)
## How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Provide instructions, so we can reproduce.
> Please also list any relevant details for your test configuration.
- Test A
- Test B
## Checklist:
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
* fix: update UI as per design
* fix: rename disconnect to revoke
* fix: update DISCONNECT to REVOKE
* breaking word with CSS when text is longer than width
Co-authored-by: Ankit Srivastava <ankit@appsmith.com>
This Change includes two parts,
In Debugger Saga, Action is being triggered in a loop, that action is in turn updating Redux State in a loop, This is bad for performance as they end up notifying the all the subscribers of the state. Changed it to update state once rather than doing it individually.
In the Reducer, changed it to ImmerReducer so that only particular object of the local state changes on update rather than updating reference of the entire state.
* initial commit
* props hoc
* changes
* removed ignores and withWidgetProps
* added extra props to canvasStructure
* widget props changes
* list widget changes
* reintroduced widget props hook and other refactors
* remove warnings
* added deepequal for childWidgets selector
* fix global hotkeys and tabs widget jest test
* fix main container test fix
* fixed view mode width
* fix form widget values
* minor fix
* fix skeleton
* form widget validity fix
* jest test fix
* fixed tests: GlobalHotkeys, Tabs, CanvasSelectectionArena and fixed main container rendering
* minor fix
* minor comments
* reverted commented code
* simplified structure, selective redux state updates and other inconsistencies
* fix junit test cases
* stop form widget from force rendering children
* fix test case
* random commit to re run tests
* update isFormValid prop only if it exists
* detangling circular dependency
* fixing cypress tests
* cleaned up code
* clean up man cnavas props and fix jest cases
* fix rendering order of child widgets for canvas
* fix dropdown reset spec
* adding comments
* cleaning up unwanted code
* fix multiselect widget on deploy
* adressing review comments
* addressing minor review comment changes
* destructuring modal widget child and fix test case
* fix communityIssues cypress spec
* rewrite isVisible logic to match previous behaviour
* merging widget props with component props before checking isVisible
* adressing review comments for modal widget's isVisible
Co-authored-by: rahulramesha <rahul@appsmith.com>
As of today, we were supporting only ECDSA keys for GitHub, GitLab, and BitBucket. For Azure, RSA key generation was not available. This PR allows users to generate RSA or ECDSA keys.
As of now we support following key types and version control service providers:
Github: ECDSA
Gitlab: RSA, ECDSA
Bitbucket: RSA, ECDSA
Azure: RSA
Fixes#14382, #14715, #14570
* Client changes 1
* add DSL functionality
* Temp commit for refactoring changes
* Do I even know what I'm doing here?
* chore: Second GS layout
* Update: Visibility conditional outputs for schemas
- Added the output from conditional outputs for schema children too
* Update: Entity selector visibility control
- Added logic for controlling visibility of sub components via the JS expressions system
* Update: Passing disabled prop to toggle button
* Update: Passing disabled prop to toggle btn
* Update: Styled component for toggle button
- Added disabled styles based on the disabled prop sent to the toggle form view JSON button
* Update: configProperty role in Entity Selector
- Removed dependance of the configProperty of the entity selector children to it's parent component
* Update: type of placeholder key
- Made placeholder key from form config JSON to accept either string or an object
- Earlier only string was accepted
- This is for pagination component
* Update: Added placeholder control for pagination
* Client changes 1
* add DSL functionality
* Do I even know what I'm doing here?
* fix: updated uqi forms ui, clubbed JS switch button to ads, updated tooltip design
* fix: updated tooltip component for wrong ui on entity explore
* temp triggers
* fix: updated uqi forms ui, clubbed JS switch button to ads, updated tooltip design (#12395)
* fix: updated uqi forms ui, clubbed JS switch button to ads, updated tooltip design
* fix: updated tooltip component for wrong ui on entity explore
* fix: updated tooltip ui, where condition placement, sort by ui
* temp form data access logic
* fix: updated sorting type width ui
* fix: updated ui for spacing, width and text issues
* Update: Type for tooltip of UQI forms
- Added option to send an object to the tooltipText object.
- This allows for composite components like pagination to have tooltips for each sub component
* Update: tooltip for pagination component
- Added handling to parse the tooltip for multiple components.
- This allows for composite components like pagination to have tooltips for each sub component
* Update: Type cast for tooltip component
- Made the content passed to tooltip component as a string only
* Update: Fixed tooltip component CSS
* Update: Dropdown option component
- Added a tooltip wrapper to each option
- This is to show on hover text like disabled state
* fix: updated ẇhere clause broken ui for condition
* Add: functions to check and extract expressions
- Loop through the formConfig and find any keys that have a value that is bindable
- Used pre defined regex to check if value is a moustache binding
* Add: Types for evaluated form configs
- Added types for the form configs to be evaluated and their output post eval
* Add: Flow to run the form config
- Run the form config and update the result to the redux state
* Update: Name of the type for formconfigs
- Updated since it was clashing with a component of the same name
* Add: Function to enforce config type checks
- This is done so that the improper configs can be weeded out and the rest of the form can be shown
* Add: Function to update evaluated config
- Added option to update the config if it's values needed evaluation
* Add: Type check for schema sections
* Update: Error handling for invalid control type
- We were throwing an exception till now, changed it to a warning text
* Add: Exposed tooltip for dropdown option disabled state
* Update: switch to json mode functionality
- Added logic to convert data to a string rather than an object when the first switch to JSON mode happens
* Update: Added key to tooltip for dropdown options
* Trigger API modification
* Add: function to fetch default trigger URL
* Update: Made URL optional in dynamic trigger config
* Update: Dynamic trigger API call
- Made the API call for dynamic triggers have URL as optional field
- Added type check to the response of the API call
* Update: resp type for trigger APIs
* Update: Moved code to utils folder
- Moved functions for UQI form eval processing to utils file
* Update: passing original controltype to JS switch
* Update: config for JSON editor mode
- Updated the config to have different options for JSON mode depending on the original control type
* Update: Connected line numbers flag to config
* Revert: CSS changes for tooltip
* Refactor: Removed consle
* Add: type for the config of dynamic values
* Add: Feature to evaluate config for triggers
* Refactor: fix type check errors
* fix: dropdown ui width with text alignment
* Update: fixed selector for dynamic values
* Update: selector call for fetchDynamicValues
* Add table header index prop for columns selector
* migration partial commit
* migration partial commit
* Refactor: removed unused import
* Update: reused function for checking dynamic value
* Update: removed unused import
* Fix format JSON issues
* Retrieve binding paths from entity selector components
* Fixes 6 remaining issues with UQI implementation
* Fix dropdown issues
* Fix dropdown height issues and fixes triggering of APIs when option is deselected
* Migration changes
* Fix QA generated UQI issues
* Fix projection component height and route change logic
* Fix multi select dropdown placeholder text issue and json stringify issue with switching view types
* Reset entity type value when command value changes
* Test changes
* Review comments
* Moved migrations around
* Corrected import statement
* Added JSON schema migration
* Updated schema version
* perf improvements and filter dropdown options feature
* Fix Code mirror component config for toggleComponentToJson input fields.
* Fix prettier issues
* fix prettier issues
* Fix style issues as a result of the merged conflicts
* Fix failing test case
* Fixed a few other flows (#14225)
* Fixed a few other flows
* Review comments
* Fix generate CRUD, fix evaluation of dynamic bindings and fix various styling issues.
* More fixes (#14367)
* Factor in the root formconfig parent key.
* Fix flickering issues, and evaluatedFormConfig issues
* fix: Teeny bugs (#14455)
* Teeny bugs
* Added previous functionality as is
* Improvements in the way we fetch dynamic values
* Fix stringiification issue and cyclic dependency issues
* Resolve projection component values deletion
* Resolve merge conflicts and fix prettier issues
* fix: Tsc issues
* Fix property pane connection navigation
* updating ee locator
* updating inputfield locator
* dropdown locator update
* Merge conflict not properly resolved.
* Fix s3 spec
* Fix Mongo Spec
* Fix some more tests
* fix: prevent cyclic dependency when switching to js mode (#14668)
* add delete events for change from array to string in diff
* add test to assert absence of cyclic dependency error when switching to js in switchgroup widget
* Assert that evaluation is not disabled when no cyclic dependency happens
* Cypress test preparations for google sheets and form controls
* Fixed a few test errors (#14874)
* Add: unit tests for uqi UI updates
- view type tests
- conditional output extraction
- processing conditional output to handle view/enabled state of the component
* Add: completed isValidFormConfig test
* Update: improved tests for update config
- These tests cover the functionality to update a section config after it's components are done evaluating
* Fix failing cypress tests and cyclic dependency issue
* Fixes some more tests
* Fixed migration of row objects (#14896)
* Bumped the version of design system package
* Update: reverted change to EE selector
* Fix deletion pointer
* Update: selector for js on load spec
- Synced with changes related to ADS dropdown
* Fix mongoDBShoppingCart spec
* Remove comments
* Fix: mongo shopping cart test failures
* fix: mongo shopping cart spec
* Dummy push to retrigger vercel
* fix: mongo shopping cart spec
* Update MongoDBShoppingCart_spec.js
* fix: removed unused click away
* dummy commit
* Update: moved helper functions to separate file
* Add: added tests for saga functions
- Worked on testing for
- extractFetchDynamicValueFormConfigs
- extractQueueOfValuesToBeFetched
* Add if check for queueOfValuesToBeFetched
* Resolve review comments
* Empty-Commit
Co-authored-by: Irongade <adeoluayangade@yahoo.com>
Co-authored-by: Ayush Pahwa <ayush@appsmith.com>
Co-authored-by: Aman Agarwal <aman@appsmith.com>
Co-authored-by: Ayangade Adeoluwa <37867493+Irongade@users.noreply.github.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: Favour Ohanekwu <fohanekwu@gmail.com>
Co-authored-by: Albin <albin@appsmith.com>
* fix: [WIP] reset meta to default value
* refactor
* fix reset child widget and type in metaReducer
* Fix type and refactor test
* fix multiselect click
* Add jest test for reset widget action
* Add cypress test
* Add comments
* Add more cases as per comment
* remove `only` from test case
* Add default value case of array with values
* MultiSelect spec fix
* fix currencyInput reset
* refactor test code suggested in comments
* fix type
* fix more type
* fix cypress test
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Instead of waiting for the specific `storeValue` action completion, earlier we were waiting for any storeValue action to complete. It means when running multiple storeValue, completion of 1st action will resolve promise for all the storeValue triggered.
Now, we track completion of each storeValue action separately.
1. Fixed on page load actions getting called multiple times.
2. Now Evaluation only happens once we complete the fetching of the page's all entities including js objects and actions, this avoids cases where actions are not defined when ran.
Co-authored-by: Rishabh-Rathod <rishabh.rathod@appsmith.com>
We are changing how we maintain meta values in our architecture,
Earlier metaHOC component state was used to store meta values that were debounced and pushed in batch to metaReducer and trigger evaluation.
We remove the metaHOC state and directly update values to metaReducer and trigger evaluation separately via a debouched function.
As a quick fix to prevent the on-page load actions from firing before the actions are even fetched, we had reverted the changes to make fetch page DSL call parallel in 13587. Unfortunately, theming PR brought back parallelisation and the issue along with it.
This PR ensures that the on-page-load actions are only made after actions are fetched while preserving parallelisation.
* copy paste commit
* class name generator changes
* modal widget fixes change
* addressing review comments
* bug fix for after deleting a widget by undoing action
* additional fix for modal widget
* additional tests for fixes
* Implemented code splitting of some files for SAML integration
* Implemented code splitting of some more files for SAML integration
* updated redirect url component
* fixed an import statement
* fixed a unit test
* updated restart banner tooltip logic
* updated an import statement
* improved the UI for restart banner on admin settings page
* implemented suggestions from PR
* retrying to restart server on button click
* updated colors getting used
* implemented PR suggestions
* fixed cypress test failure
* Revamp datasource form buttons
* Fix issues
* Use default values for individual form plugin
Co-authored-by: Adeoluwa Ayangade <adeoluwaayangade@Adeoluwas-MacBook-Pro.local>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
* Init commit clean urls
* Changes to builder route
* Refactored URLs
* Remove default params from url builder functions.
* Fixed more urls
* Changed selector name
* Minor url correction
* Type fixes
* Jest fixes
* Fixed routing for old published apps
* Fixed url slug replace
* page-1 -> page1 as default page slug name
* Remove application id from init editor calls
* Use default page slug
* Added comments and placeholder values for slug names
* variable rename
* Removed redirection and added back the old routes
* Prevent page slug name recompute
* Fixed home page load in view mode
* Added null checks
* Fixed jest test
* Fixed jest test
* Update URL slugs when app/page name changes
* Added unit tests and updates types
* Removed unused code
* * Removed duplication fetch page call.
* Fixes#11354
* Fixed sign up flow
* Refactored initializeEditorSaga
* Fixed warnings
* Fixed integrations screen URL bugs
* Cypress fixes
* Fixed slug names in copy/move operations and pages screen
* Minor refactor
* Fixed page highlight bug in published apps
* Added new url factory and middleware to store url params
* Changed store to default export and fix unit tests
* Fixed slugs unit test
* Minor fixes
* Fixes#11379
* Fixed set as home page feature
* Updated types
* app id adjustments for cypress
* Fixed bad merge
* Refactored routes to functional component
* * Fixed EE active entity highlight.
* Remove unused code in editor router.
* jest fix
* Mock history to prevent security errors
* constant rename
* Removed console logs
* Fixed page id regex
* Do not check for /pages in url
* Fixed missing pageId on quick edit/deploy clicks
* Missed files from previous commit
* Fixed warnings
* Fixed jest test
* New api integration
* feat: Add applicationVersion property to Application (#11626)
Added a new property to Application object - applicationVersion. This property can be used to identity when there is a breaking change and can not be solved with migration. FE will use this property to detect such conditions. Another API is added to migrate the applicationVersion to latest version when user migrates the breaking changes.
* Added manual upgrade modal.
* Test fix
* Fixed jest test
* function rename
* Fix deploy error
* Added null check
* Changes to persist URL search params when redirecting
* Added updates tooltip
* More unit test cases
* Fixed git url redirection
* Fix warning
* Fixed evaluation on upgrade
* Fixed warnings
* File rename
* Added cypress for clean urls
* Fixed import/export/fork cypress
* Cypress api server fixes
* Fixed mongo spec
* Fixed replay spec
* Fixed comments spec
* More cypress fixes
* Fixed tooltip in update btn
* Text size changes
* Minor fixes
* Jest test fix
* Fixed type error
* Fixed warnings
* Fixed todo comments
* Moved description to constants file
* Fixed cypress CI run crash
* Fixes git cypress failures
* Import/Export cypress test fixes
* Import export fork cypress fixes
* Explorer test fix
* Switch branch test fix
* Added applicationVersion in export app json
* Calls plugin forms in parallel
* Fixed warnings
* Fixed warning
* Import export CI fixes
* Reverts previous changes
* Fixes import export
* Fixed import export cypress URL verification
* Pass applicationVersion when duplicating application
* Cypress fix
* Dummy commit
Co-authored-by: Nayan <nayan@appsmith.com>
* POC
* Closing channels
* WIP
* v1
* get working with JS editor
* autocomplete
* added comments
* try removing an import
* different way of import
* dependency map added to body
* triggers can be part of js editor functions hence
* removed unwanted lines
* new flow chnages
* Resolve conflicts
* small css changes for empty state
* Fix prettier
* Fixes
* flow changes part 2
* Mock web worker for testing
* Throw errors during evaluation
* Action execution should be non blocking on the main thread to evaluation of further actions
* WIP
* Fix build issue
* Fix warnings
* Rename
* Refactor and add tests for worker util
* Fix response flow post refactor
* added settings icon for js editor
* WIP
* WIP
* WIP
* Tests for promises
* settings for each function of js object added
* Error handling
* Error handing action validation
* Update test
* Passing callback data in the eval trigger flow
* log triggers to be executed
* WIP
* confirm before execution
* Remove debugging
* Fix backwards compatibility
* Avoid passing trigger meta around
* fix button loading
* handle error callbacks
* fix tests
* tests
* fix console error when checking for async
* Fix async function check
* Fix async function check again
* fix bad commit
* Add some comments
* added clientSideExecution flag for js functions
* css changes for settings icon
* unsued code removed
* on page load PART 1
* onPageLoad rest iof changes
* corrected async badge
* removed duplicate test cases
* added confirm modal for js functions
* removed unused code
* small chnage
* dependency was not getting created
* Fix confirmation modal
* unused code removed
* replaced new confirmsaga
* confirmaton box changes
* Fixing JSEditor Run butn locator
* corrected property
* dependency map was failing
* changed key for confirmation box
Co-authored-by: hetunandu <hetu@appsmith.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
* updated import application modal design as v2
* updated import flow
* added title, description, uploadIcon on filepicker ads component for custom file picker
* adding modal of add credential for git import
* added "Git Import" modal
* added generating ssh key for importing flow
* fixed issue of merging
* chore: fix import
* chore: show old import modal based on feature flag
* seperated import api from connect
* added datasource list on reconnect credential modal
* chore: minor changes
* chore: move ssh keys to git sync reducer from applications reducer
* chore: minor fixes
* chore: fetch datasource config for import
* for pulling
* for review of displaying of datasource
* added reconnect datasources after git import
* fix: initialize datasource with default values
* fix: initialise redux for after updating datasource with default values
* fixed issue of git connection init when importing
* if there is a datasource config missing in import, reconnect modal should be opened
* updated logic for unconfigured datasources
* commented unnecessary code
* fixed issue of successful import
* updated import app error logic
* Add un-configured datasources to Import via file response
* Add test
* fix
* chore: refactors
* change per review
* fix: reset ssh keys / url
* Fix issue with newly created datasources not sent
* fix
* chore: minor updates
* chore: minor fix
* WIP
* added saas and rest api datasource form
* feat: fixes and updates for file import flow
* chore: close on upload
* Refactor logic ofr finding unconfigured datasources
* fix: minor fixes
* Fix issue with IsPartialImport
* fix
* Add PartialImport flag for ImportExport service
* refactoring of datasource editor form for both of importing app and editing app
* fixed collapse config
* Fix tests
* Handle redirection back to the /applications for oAuth type
* Show reconnect button on the datasources pages if the datasource configuration is skipped
* added analytic events for reconnecting datasource modal
* Fix the repo limit check for git import
* updated test of importing app from json as new work flow
* updated exported app json while testing automatically
* Add isImport flag for handling OAuth redirection in import flow
* WIP
* updated card UI for import from git title and message in import app modal
* chore: cleanup
* chore: lint
* fix: add is import query param to get token for oauth
* fix
* When the user imports the application there should not be any uncommitted changes displayed on the commit icon
* Add flag to identify OAuth redirection for git import
* Update the variable name
* refactoring reconnect datasource modal
* close git import modal when repo limit error responded
* fixed issue of restoring draft data of datasource form without save on reconnect datasource modal
* chore: update query
* updated query name of oauth redirection url
* Fix duplicate name issue in git import
* fixed rest api reconnect issue on reconnect modal
* init datasources and plugins after imported app, updated reconnect modal as new design
* added unconfigured datasource list logic when importing and updated rest api form delete button visible
* removed put default config of datasource and fixed issue on it
* Add logic to check isCOnfugred in datasource API
* Expose API to get un configured datasources for git import
* added fetch unconfigured datasource list api when redirecting form OAuth
* Remove sensitive fields from application json during export
* update put call response to check for datasourceConfig
* chore: use @appsmith for constants/messages
* chore: use download icon and Import for Importing application label
* chore: move import application text up a bit
* Fix bad merge
* chore: update skip to application tooltip text
* fixed tooltip content of skip to application CTA
* init values of datasource when importing
* updated ui of git import modal as figma design
* fixing padding issue of reconnect datasource modal
* fixed cursor issue on import app modal
* Fix issue with datasource config
* chore: make code compile
* chore: sort lines
* fixed save button issue of dbform on reconnecting modal
* fixed style of import application modal
* Fix iisue with wrong value updated to flag
* reverted from reconnection form style
* fix: update design as per slack discussions on 2022.02.23
* fix: move modal close button to the left
* Remove check for the flag and use the one from db
* Set siCOnfigured as true for mockdata sets
* updated creating datasource with isConfigured as false
* Fix NPE while importing
* fixed scrollbar issue and text alignment on reconnect datasource modal
* fixed style of form container in reconnect datasource and redirecting to app if all are configured
* remove unwanted fields from application json
* FIx NPE for file import
* fix: move close button up in import modal
* remove delete button on reconnect datasource modal
* Add isConfigured false while creating datasources
* fix: add a gap and update color
gap between git import dialog title and subtitle
update color of subtext to GREY_800
* fix: use git import feature flag
* fix: do not use older modal
* updated selecting logic of unconfigured datasource in reconnect modal
* cleanup: auto format
* cleanup: refactor react component
* cleanup: refactor some more
* cleanup: autoformat
* Fix reconnect flag for mockdatasource
* During git import set the isConfigured to false for datasources
* Remove decrypted field from the applicationJson file
* Remove decrypted field from the applicationJson file
* Add app slug to remote repo
* fixed cypress test related with git
* updated json while testing
* Changes per review
* Update the method name
* fixed cypress test related with git
* fixed migration cypress test
* set is configured field as true on tour app
* Fix issue with datasource creation for welcome tour
* fixed issue of replay_editor cypress test
Co-authored-by: Rishabh Saxena <rishabh@appsmith.com>
Co-authored-by: Anagh Hegde <anagh@appsmith.com>
Co-authored-by: Anubhav <anubhav@appsmith.com>
Co-authored-by: f0c1s <iamanubhavsaini+git@gmail.com>
* Fixes modal pop up bugs on page load
* send confirmBeforeExecute attribute with page execution order info
(cherry picked from commit 6d3cfdfbdb83b435e67797f3fb27024799d5d579)
Co-authored-by: Sumit Kumar <sumit@appsmith.com>
* <feat> Updated payload for formEvals
- Added datasource and plugin ID to the payload
* <feat> Added IDs to dispatch calls
- Added datasource and plugin IDs to the dispatch calls so they can be used for dynamic query fetch
* <feat> Added type in evaluation saga
- Added datasource ID and plugin ID in the expected type for the eval function
- Updated call type from GET to POST for the dynamic trigger URLs
* <feat> Made params compulsory for editor config
- Params are now compulsory for any config defined in editor JSON for the dynamic value fetching
* <feat> Updated API definition
- Update the definition for the axios function from GET to POST
* <feat> Added configProperty to payload
- Added configProperty to the payload to allow for distinction between different components making a call to the server
* <chroe> Added null check
- Added null check to function call for datasource and plugin IDs in API since they are not compulsory in the type
* <refactor> Remove unused imports
* WIP
* Refactoring HTTP Method & Content Type to be objects instead of arrays
TODO:
1. Set the default content-type for Get request to "None". Currently, it's raw
2. For None content-type, don't send the body field in the API request
* Almost working implementation for the None type
Currently, the body still gets sent in non-GET requests even if the None tab is selected.
* Adding object.freeze to prevent any modifications to HTTP_METHOD_ENUM
* WIP: Using enum & const for ts autocomplete
* working implementation for NONE type, apiContentType prop added to API actions
* WIP
* Refactoring HTTP Method & Content Type to be objects instead of arrays
TODO:
1. Set the default content-type for Get request to "None". Currently, it's raw
2. For None content-type, don't send the body field in the API request
* Almost working implementation for the None type
Currently, the body still gets sent in non-GET requests even if the None tab is selected.
* Adding object.freeze to prevent any modifications to HTTP_METHOD_ENUM
* WIP: Using enum & const for ts autocomplete
* working implementation for NONE type, apiContentType prop added to API actions
* adds apiContentType to actionConfiguration.formData object
* Handling apiContentType property in Rest API formData
* change apiContentType when user types content-type value and switches http method
* makes api editor as similar as possible to postman, project postman.
* Correcting the import in ApiEditorConstants
* Resolved all merge conflicts
* replay DSL functtionality
* removes unneccessary files from worker
* Fixes type declarations, naming e.t.c.
* fix server side merge conflicts
* fix client side merge conflicts
* fix failing cypress tests
Co-authored-by: Irongade <adeoluayangade@yahoo.com>
Co-authored-by: Ayangade Adeoluwa <37867493+Irongade@users.noreply.github.com>
* Rearrange data tree widget factory
* Remove existing handling of default value override
* Altternate way of meta property override
* Fix tests
Co-authored-by: hetunandu <hetu@appsmith.com>
* fixes js object cloning issue
* fix10463- JSObject returning new name of cloned object
Co-authored-by: Irongade <adeoluayangade@yahoo.com>
Co-authored-by: Leo Thomas <leoweb2010@gmail.com>
* resize n reflow rough cut
* removing warnings
* relatively stable changes
* minor bug fix
* reflow relative collision
* working dp cut
* fix for reflow of widgets closer next to each other
* disabling scroll
* Drag with reflow
* reflow fix
* overlap and retracing fix
* On Drop updates.
* bug when no displacement but resize update.
* temp fix for new widget addition.
* reflow bug fixes
* new widget addition bug.
* stop reflow on leave.
* fix corner case overlap
* update bottom row when reflowed widgets go beyond bottom boundary.
* capture mouse positions on enter
* enable container jumps with faster mouse movements.
* reflow only for snap changes.
* restructured reflow Algorithm
* collision check and bug fixes
* undo redo fix for new widget drop
* resizable fix snapRows fix
* directional stability
* self collision fix
* first round of perf fixes
* update bottom row while resizing and resize-reflowing
* performance fix and overlapping fix
* Remove eslint warning
* remove eslint warning
* eslint warning
* can reflowed Drop Indication Stability
* container jumps and force direction on entering canvas
* fixing scroll on resize jitters.
* reflow when jumping into container.
* reflow ux fixes while leaving container
* resizing fixes.
* fixes for edge move.
* restrict container jumps into reflowed containers.
* container jump direction reflow
* checkbox dimensions fix.
* Excess bottom rows not lost post dragging or resizing widgets.
* fixing the after drop css glitch.
* double first move trigger bug fix.
* stop reflow only if reflowing
* stabilize container exit directions
* using acceleration and speed instead of movement covered to restrict reflow.
* fixing modal drops.
* remove warnings.
* reflow resize styles
* moving acceleration and movement logic to a monitoring effect.
* adding beta flag for reflow.
* fixing jest tests
* Adding analytics to beta flag toggle.
* Adding placeholder for reflow beta screens.
* fixing initial load's screen
* few more crashes.
* force close onboarding for the session.
* fixing bugs in reset canvas.
* Beta flag bug fixes.
* fixing bugs.
* restrict reflow screens during onboarding.
* disabling reflow screens in tests.
* code review comments.
* fixing store based specs.
* fixing cypress failures.
* fixing specs.
* code cleanup
* reverting yarn lock changes
* removing onboarding screens.
* more cleanup and function descriptors
* keeping reflow under the hood.
Co-authored-by: rahulramesha <rahul@appsmith.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* Registering new eval types
* Moving code from saga to thread execution
* Added a loading state while thread is working
* Added types and comments
* Code refactor for final render
* Added custom spinner
* Instead of spawning a new thread, working on the same one
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* fix(run-hot-key): added update init action with debounced on change function
* fix(run-hot-key): Adding new action for updating store for isSaving query true
* fix(run-hot-key): updating the action name to preparing_update_action
* fix(run-hot-key): added descriptive comments
* fix(run-hot-key): updated the action name and moved condition to action file
* fix(run-hot-key): updated the action to entity started at global app
* fix(run-hot-key): added entity saving status to show loader
* fix(run-hot-key): fixed cypress test to type in the query rather using set method of code editor
* fix: unread indicator behaviour
* minor fixes
* no need to deep copy the state
* removed state update of show indicator
* refactor to handle delete & insert thread cases and getting rid of unnecessary state
* removing unnecessary updates to store
* with update event if the thread is not there we'll put it in
* fetching the comments when user starts to edit the app
* updated tests
* typo fixed
* using memo to get the unread comments flag
* removed dependency from global state
* storing last updated comment thread id for each application.
* updated a few test cases
* moved constants to a proper files
* added new action constants
* updated websocket reducers and actions
* updated websocket saga to handle proper socket events
* updated initialization
* updated multi pointer arena + realtime app editors components
* minor feedback update
* updated events list by socket level
* removed e.persist
* passing socket obj rather than just id
* setup for skipping the bot comments if user skips the comments tour
* Using the onboarding status api
* removed comments
* fixed typos
* added test cases
* small fixes
* updated the tests
* minor update to a test case
Add Git push API & UI Updates
- Add Global Config fetch in git connection
- Add Success Toast Msg for commit and push API
- Fix generate and fetch SSHKey API
- Fix Close button UI
- Add Tick Icon when SSH Key is copied
- Add Direct Deploy option
- Hide Merge Tab
- Add Commit success and push success msg
- Add the Latest Deploy Preview option
* 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>
* Changes to add js plugin
* routes+reducer+create template
* added debugger to js editor page
* entity explorer changes
* create js function
* added copy, move and delete action
* added js plugin
* added existing js functions to data tree
* removed actionconfig for js collection
* new js function added to data tree and entity as well
* parsing flow added
* changes to data tree
* parse and update js functions
* small changes for def creator for js action
* create delete modified
* small changes for update
* update flow change
* entity properties added
* removed linting errors
* small changes in entity explorer
* changes for update
* move, copy implementation
* conflict resolved
* changes for dependecy map creation
* Only make the variables the binding paths
* Basic eval sync working
* Minor fixes
* removed unwanted code
* entity props and autocomplete
* saving in progress show
* redirection fix after delete js action
* removed unnecessary line
* Fixing merge conflict
* added sample body
* removed dummy data and added plugin Type
* few PR comments fixed
* automplete fix
* few more PR comments fix
* PR commnets fix
* move and copy api change
* js colleciton name refactor & 'move to page' changes & search
* view changes
* autocomplete added for js collections
* removing till async is implemented
* small changes
* separate js pane response view
* Executing functions
* js collection to js objects
* entity explorer issue and resolve action on page switch
* removed unused line
* small color fix
* js file icon added
* added js action to property pane
* Property pane changes for actions
* property pane changes for js functions
* showing syntax error for now
* actions sorted in response tab
* added js objects to slash and recent entitties
* enabling this to be used inside of function
* eval fix
* feature flag changes for entity explorer and property pane
* debugger changes
* copy bug fix
* small changes for eval
* debugger bug fix
* chnaged any to specific types
* error in console fix
* icons update
* fixed test case
* test case fix
* non empty check for functions
* evaluate test case fix
* added new icons
* text change
* updated time for debounce for trial
* after release mereg
* changed icon
* after merge
* PR comments simple
* fixed PR comments - redux form, settings remove
* js object interface changes
* name refactor
* export default change
* delete resolve actions chnage
* after merge
* adding execute fn as 3rd option and removed create new js function
* issue 7054 fixed - app crash
* execute function on response tab changes
* refactor function name part 1
* refactor of js function name
* try catch added refactor
* test fix
* not used line removed
* test cases locator fixed
Co-authored-by: Nidhi <nidhi.nair93@gmail.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
Users should be able to look up relevant snippets based on where they trigger snippets from, narrow down the filter results based on entities, customize the snippet with custom data, evaluate and see its real time value.
* 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
CRUD Info modal which pops up on successful CRUD generation, will now have dynamic data for each CRUD template.
Modal success `message` and `Image` to explain the working of the CRUD template is fetched from the backend.
Co-authored-by: Abhijeet <ABHI.NAGARNAIK@GMAIL.COM>
* Added a new type of UIComponent for DB editor forms
* Added a new state for UQI evals and connected it to the rendering form
* Added sagas to init and run the UQI eval
* Exporting fetch function as a selector
* Moved selector code to the formSelector file
* Added type to state config holder, removed custom diff function and fixed imports
* Fixed path, added the type for plugin in selector
* Created new enum, abstracted function for render and fixed var names
Co-authored-by: Apeksha Bhosale <7846888+ApekshaBhosale@users.noreply.github.com>
* Cut copy paste first cut
* removed different parent groups logic
* mouseup on the outer canvas removes selections.
* bug fix
* remove unwanted dead code.
* Adding tests
* build fix
* min height fixes
* fixing specs.
* fixing specs.
* fix merge conflcits
* fix border positioning
* fix canvas widgets incorrect bouding box
* fix bounding box position issue
* fix bounding box position issue
* fix
* border issue fix
* update test case
* add colors in theme
* use layers + use click capture on actions
* add icon for grouping
* fix overflow issue in contextmenu in containers
* fix context menu display issue
* update position of context menu
* fix container box-shadow issue
* fix container box-shadow issue
* revert container box shadow
* stop opening of property pane on shift clicking a widget
* remove console.log
* fix multiselect box issue
* add container on copy
* add analytics middleware
* refactor paste widget saga
* change flash element to accept array + revert refactor
* add logic to create containers from selected widgets
* update positions of grouped widgets
* fix comments + remove console
* update flashElementbyId to flashElementsById
* remove analytics middleware + remove unecessary imports
* add shorcut for grouping
* fix position issue when pasting
* allow grouping only when multi widgets are selected
* fix ux issues with widget grouping
* fix help text for grouping actions
* filter out the modal widget when calculting next row
* fix delete issue when grouping
* persist positin when grouping if there is no collision
* fix typo for new position
* changes for review comments
* changes for review comments
* fix position issue when pasting
* fix new container position issue
* move utils function to utils
* fix import issue
* fix the composite widget grouping issue
* fix table name bug
* remove repeated code
* move copied groups existence check;
* fix copied group check
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
- [x] Draw to select from outside of the editor.
- [x] Cmd + A to select child widgets inside containers, forms, list, tabs, and modals.
Fixes#5995Fixes#6102
* Add s3 support for generate CRUD
- Dropdown enhancement to open options on initial load
- Hide column selection option for s3
* Refactor the prop name
* Dropdown enchancement & Fix small issues
* Add fetch all sheets query
* Fix issues related to dropdown
* Add hooks to fetch sheets and spreadsheets
* Resolve warnings
* complete gheets basic support
* Add UI changes for Gsheet column names
- Fix Page Scroll issue
* Add debounce to avoid to many API calls
* Add request object formation via plugin config
* Resolve comments & remove executingDatasourceQuery
* Send sheetName in the tableName key.
* Add loader and Column name UI Fix
* Add Column Headers Label
* Fix logic to show comma separator btn column names
- Make "Column Header Fetched" text Bold
* Add tooltip info for searchable column
* Add value prop to TextInput
- Fix Table header Index Invalid Input issue
* Hotfix validator logic
* Added support for showing realtime app editors
* emitting an event only when socket is connected
* added a tooltip to show username/email
* using proper selector
* using theme
* created the separate component for listing editors
* created a separate hook for app collab events
* moved collab user type to /entities
* moved user visible strings to message constants
* Revert "moved user visible strings to message constants"
This reverts commit 04ac18a188b0117dd364ad764a4e0103bfd28ef6.
* made provision to reset the concurrent editors list
* 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
- Add Generate CRUD page feature
- Modify the Datasource card UI in the `INTEGRATION.ACTIVE` tab to directly delete and edit.
- Add `renderOption` , `errorMsg`, `isLoading` props in Dropdown component.
If `renderOption` prop is not defined, it will show default option UI.
- Add getDatasourcesStructure [new entity Selector]
( This will provide all fetched structure of datasources)
> Commit Messages ⬇️
* Show disabled GenPage Button for unsupported DS
* Add Icon in Select Table and Column dropdown
* Add Error message when datasource config has error
* Fix the continous loading state issue
* Add Not supported datasource in select Table
* Add ignoreCache when fetching DS struct
* Go to generate page if initiator=generate-page
* Fix connect new datasource button disabled
* Modify error message for invalid datasource struct
* Add snowflake to supported plugin for template
* Fix Show More option width
* Fix incorrect error msg for valid dS config
* Generate page UI improvements
* Refactor navigation
* Fix Datasource Card UX
* Remove semi-colon from Icon loader
* Refactor contants
* Add executeDatasourceQuery & fetchPluginForm API
- WIP google sheet form UI and functionality
- Implemented fetch all spreadsheet with mock data
* disable S3 and google sheet for generate page
* Update yarn.lock
* Resolve review comments
- Add Messages to `constants/messages`
- Add default value for `fetchActionsForPage` 2nd param
- Add comment
- Remove `onFinishCallback` from `handleFetchedPage`
* move string literal to constants/messages
* Remove hardcoded pluginId implementation
* Refactor getGenerateCRUDEnabledPluginMap selector
* Fix CreateAppInFirstListedOrg test command
* Add getIsGeneratePageInitiator helper func
* Fix Entity explorer Edit option test
* Fix CreateAppForOrg test command
- Add click on build from scratch in generatePage
* Fix deleteDatasource command test
- Click on Datasource Name to Edit, Datasource Card handles the click
* Fix DynamicLayout spec test issue
* Fix pageLoadSpec test
* Disable google plugin & Refactor
- Add useDatasourceOptions hook
* Add datasourceCardMenu in DatasourceEditor.json
* Fix issues
- Add Icon hover clickable control
- Auth API click handler
* Fix Createpage test command
* Add cypress test for generate page flow
* Fix cypress test
* Add Analytics
* Add comments in CloseEditor
* Rename initiator to isGeneratePageMode
* Disable S3 for generate CRUD page
* Fix generate page from existing datasource issue
* Enhance test to verify if data is fetched properly
* Wait for get Actions before execute actions
* Change the cypress route for excute api
Co-authored-by: Pranav Kanade <pranav@appsmith.com>
* 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>
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
* -added API to and template for unsubscribe comment thread
* -changed public API url to make it sepratate from client public pages
-included the unsubscribe link to email body
* -made unsubscribe email notification API to private
* -added unsubscribe page
* -removed unused code
* Update app/client/cypress/integration/Smoke_TestSuite/ClientSideTests/Comments/UnsubscribeEmail_spec.js
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
* Update app/client/src/pages/common/UnsubscribeEmail.tsx
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
* Update app/client/src/pages/common/UnsubscribeEmail.tsx
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
* Update app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/BaseAppsmithRepositoryImpl.java
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
* -updated text as per lint error
* -updated text as per lint error
* -moved unsubscribe screen texts to messages.ts
Co-authored-by: Arpit Mohan <mohanarpit@users.noreply.github.com>
* Call cloud services to fetch mock datasets
* Call cloud services to fetch mock datasets
* Change the MockData Config,
* Remove unused import statements and fix small indentation issues
* 1. Moved the mock data creation and fetching to a separate class
2. Added plugin type to mockdata class
3. Used pluginName to identify the db type
4. Removed the block call mock data creating method
5. Added unit tests for the mockdata
* 1. Removed unused field from contract and
2. Updated the url to cloud service
* 1. renamed the field of mockdata contract
2. Updated the test cases
* using new mock datasources apis
* 1. Added the Cloud Service release end point to env variable
Co-authored-by: Pranav Kanade <pranav@appsmith.com>
* temp commit
* using onsubmit to continue using action on form
* added recaptcha site key to env example file
* moved the recaptcha lib loading logic to signup page
* removed unnecessary edit
* handle the case where the recaptcha token is not provided as env var
* added proper env var config for client
* recaptcha config for ansible
* recaptcha config for heroku
* recaptcha config for k8s
* updated app.json
* fixed the typos
* added more description for env vars
* removed api key
* minor typo fix
* added new integration button
* updated the add int default link
* added active and create new tabs
* added the empty components to tabs. will control the section manually.
* added proper grid for integrations page
* added vertical tabs
* Added secondary tabs to integrations page
* added separate page for new apis
* classname changes
* added new components for active queries, new queries etc.
* added a separate component for data source list
* adding screen component conditionally, to be showing upon user's choice
* 1. Added grid styling to datasource home
2. Added connect buttons to em
* fixed data source security banner
* updated the styling for new api page
* added tertiary menu for active integrations
* updated styling for active connections
* updated collapse component to work properly
* added show more option to active data sources
* Slash commands feature init commit
* Added more commands
* Introduced JSX to render custom commands
* Merge conflict fix
* Spacing changes
* removed apis/db tabs and replaced em with integrations tab
* removed the unnecessary + integrations btn
* Added slash commands button
* Adjust styles for better ui
* Ordered the action entries under integrations
* Added new datasource command
* updated the getURL with proper params
* updated the link of create datasource btn
* updated the back btn link from data source editor
* Show connect data cta in property pane
* Styling fixes
* Fix margin
* added scrollable content to create new
* added on click scroll to create new page
* fixed a bug, creating new datasource twice
* added new action creator for integrations.
* Minor changes to add new bindings command.
Changed ui behaviour of / button
* UI style change
* updated the query editor to match the over all theme
* updated the query editor tabs
* Added the run btn to empty response screens
* minor fix
* updated the bg color of api type drop down
* updated the url being visited after delete api/query
* removed log
* Insert binding command UI change
* More UI changes
* removed unnecessary junk from integrations editor index
* clean up, removed unnecessary files
* removed useless routes
* for debugger only checking if integrations editor
* Removed all the links for api/query home pages
* Move command actions to a saga
Added support to binding the data back to the widget when are new API is created from widget
* Added reverse binding for DB queries
* Show / button only on hover
* not routing to integrations on create query/api
* Hide actions from suggestions in action pages
* removed the query/datasource/api home pages
* Changes widget.data to widget in slash commands
* Show dependencies in property pane
* Fix warning
* fixed scrolling issue
* will show a list of queries and apis for action picker
* showing icons for each action under integrations
* Fix dropdown not showing up
* Minor refactoring.
Changed commands
* added a way to list data sources in action creators
* Update query page url
* cam show icons for datasources
* Removed unused code
* Feature/slash commands (#5002)
* Slash commands feature init commit
* Added more commands
* Introduced JSX to render custom commands
* Merge conflict fix
* Spacing changes
* Added slash commands button
* Adjust styles for better ui
* Added new datasource command
* Minor changes to add new bindings command.
Changed ui behaviour of / button
* UI style change
* Insert binding command UI change
* More UI changes
* Move command actions to a saga
Added support to binding the data back to the widget when are new API is created from widget
* Added reverse binding for DB queries
* Show / button only on hover
* Hide actions from suggestions in action pages
* Changes widget.data to widget in slash commands
* Minor refactoring.
Changed commands
* Removed unused code
* remove more unusued code
* Added support to generate new api from a datasource in quick commands
* Code correction to use types
* Refactored commands code
* Minor bug fixes
* Remove new integrations command for actions.
Fixed autocomplete not showing up
* Changes to prevent autocomplete trigger for navigation commands
* Prevent hinter execution when show hint is open already.
* Show hinter on focus
* Update text to be called in the omnibar
* updated the copy for empty active datasources
* Update url
* Fix text decoration
* updated the redirection for back btns
* Use themes
* Add cypress test
* fixed back btn nav
* fetching form configs for datasources
* a callback fixed
* Fix slash command not executed on click (#5540)
* Replace the value if not a string else append
* Log commands menu events
* updated mock data base navigation
* updated mock data base navigation
* updated the close editors and back buttons
* All back btns from editors will go back to data sources and back from data source will go back to canvas
* fixed bg colors
* minor styled updates
* removed margin from header of generic datasource
* warnings fixes
* If user is already on the location not redirecting em
* when editing, will check if the coming from data source and redirect accordingly
* updated redirection for newly created api/queries
* updated back btn for newly created datasources
* back for new curl goes to data sources
* Revert "[Fix] revert new nav (#5533)"
This reverts commit 1647815d
* remaining original reverted chagnes
* fixed the width of incoming/outgoing entity bar in property pane
* removing residue from resolved merge conflicts
* Fix widget icons not visible in dropdown menu
* minor fix to use proper integration URL
* updated the URLs for unified datasources
* converted back and close to btns from banners
* on accessing data source from sidebar, it'll always go to view mode
* updated the edit path for saas editors
* Added saved state for google sheet
* on google sheet delete redirecting to create new
* minor fix
* fixed the redirection call on saving a datasource
* removed save and test cmd as it wasn't needed
* Removing test cases to be fixed by Arun
* commenting more tests to be fixed by Arun
* updated call api cy command
* Fix extra margin issue
* fixed the update datasource saga
* fixed video spec
* Revert "commenting more tests to be fixed by Arun"
This reverts commit 42087a95ad77107401a1619e4c2d4c541a81d6c3.
* Revert "Removing test cases to be fixed by Arun"
This reverts commit f6fad67e558d22045114a90409428ef9b737478f.
* fixed the entity explorer query datasource spec
* cautious fix
* update widget locators
* fixed leave org test
* fixes for FormWidgets
* updated the image spec
* Use memo
* Fix debugger url checks
* for copy and delete widget pointing directly to svgs
* Fix entity text
* Fix styling and show tooltip for property pane dependencies
* removed the unnecessary callback
* added a separate saga to to redirect to new integrations using onSuccess
* Bug Fixes - New nav (#5629)
* will show scrollbar only on hover
* made mock data cards clickable
* fixed the grid view
* fixed the cursor position when clicking on / btn
* updated the hint for `/` command
* binding prompt will close on focus change
* hiding / command for api body
* hiding / command for query pane
* Added 2 new icons
* Fix cursor position on selecting a binding and clicking on the slash menu button
* trying out fix to copyWidget cy command
* removing zero width space characters from the property pane text
Co-authored-by: arunvjn <arun@appsmith.com>
Co-authored-by: Akash N <akash@codemonk.in>
Co-authored-by: arunvjn <32433245+arunvjn@users.noreply.github.com>
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
* temp commit
* using onsubmit to continue using action on form
* added recaptcha site key to env example file
* moved the recaptcha lib loading logic to signup page
* removed unnecessary edit
* handle the case where the recaptcha token is not provided as env var
* added proper env var config for client
* recaptcha config for ansible
* recaptcha config for heroku
* recaptcha config for k8s
* updated app.json
* fixed the typos
* added more description for env vars
* removed api key
* minor typo fix
* added new integration button
* updated the add int default link
* added active and create new tabs
* added the empty components to tabs. will control the section manually.
* added proper grid for integrations page
* added vertical tabs
* Added secondary tabs to integrations page
* added separate page for new apis
* classname changes
* added new components for active queries, new queries etc.
* added a separate component for data source list
* adding screen component conditionally, to be showing upon user's choice
* 1. Added grid styling to datasource home
2. Added connect buttons to em
* fixed data source security banner
* updated the styling for new api page
* added tertiary menu for active integrations
* updated styling for active connections
* updated collapse component to work properly
* added show more option to active data sources
* removed apis/db tabs and replaced em with integrations tab
* removed the unnecessary + integrations btn
* Ordered the action entries under integrations
* updated the getURL with proper params
* updated the link of create datasource btn
* updated the back btn link from data source editor
* added scrollable content to create new
* added on click scroll to create new page
* fixed a bug, creating new datasource twice
* added new action creator for integrations.
* updated the query editor to match the over all theme
* updated the query editor tabs
* Added the run btn to empty response screens
* minor fix
* updated the bg color of api type drop down
* updated the url being visited after delete api/query
* removed log
* removed unnecessary junk from integrations editor index
* clean up, removed unnecessary files
* removed useless routes
* for debugger only checking if integrations editor
* Removed all the links for api/query home pages
* not routing to integrations on create query/api
* removed the query/datasource/api home pages
* fixed scrolling issue
* will show a list of queries and apis for action picker
* showing icons for each action under integrations
* added a way to list data sources in action creators
* cam show icons for datasources
* linked integration tab movement to URL
* fixed the create new query bug
* removed search
* added the auto redirection mode
* added new mode to support showing mock data bases
* on click show more works properly
* removed extra padding
* removed height
* showing all the data sources on active tab
* fixed the creation of google sheet
* updated the proper routing for curl
* fixed page height
* removed loader
* added a spinner for creating a new api
* will be showing edit/add query permanantly
* updated the redirection on save and delete datasource
* fixed the redirection logic on delete
* will not show security banner
* added empty state for active data sources
* updated the hover state
* minor fix to redirect on delete from entity pane
* fixed a cy command to create new api
* fixed a command to select api/query from lightning menu
* updated the navigate to data source editor
* removed add btns for new int creation
* updated the testSaveDeleteDatasource command
* fixed bind table text pagination spec
* more test case fixes for deleting a query using context menu
* update curl test
* updated curl post import spec
* fixed click from apis to integrations
* updated execute db query command + updated delete query mech
* updated CreationOfUniqueAPIcheck command
* updated query datasource spec
* fixed an action creator bug.
* fixed curl api creation bug
* removed irrelavent part of the test
* fixed the button colors
* updated back link from datasource page
* Revert url validation changes for the debugger since this is used to check whether we are on a query or an api and show its dependencies
* updated a test case to open integrations option in action selectors
* Update app/client/src/pages/Editor/IntegrationEditor/DatasourceCard.tsx
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
* separated msg
* styling fixes for collapse component
* renamed a file
* declared a new const in theme
* updated border
* removed a faint line from collapse card
* removed unnecessary condition
* updated component name
* log removed
* split action creator file
* updated the icon usage in action creators
* can properly fetch mock data sources
* can show mock databases in create new
* can use mock db sources
* fixed the scrollbars
* updated the api icon for both global search + action creator
* updated integrations name in datasources
* added a back to canvas ribbon
* updated query and api editor to show back to canvas ribbon
* added a ribbon to go back
* updated button styles
* updated the action creator and test commands/classes
* updates to show the proper mock databases
* added proper type for mock datasources
* removed unnecessary log
* updated a test case to work with new nav
* minor updates for tests
* updated a command to properly delete a datasource
* minor redirection fix
* made the mock db api call unblocking
* fixed scroll bars all over
* fixed bg colors for back ribbons
* declared a constant for thin scrollbar
* removed unnecessary action.
Co-authored-by: Akash N <akash@codemonk.in>
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
* Added export option to app menu. TODO: call api to download app file
* Added checkbox component and removed unused code
* Added import app without filepicker. Opens modal
* added ability to fetch the exported app
* can download exported application as a json file
* Updated the file picker component to accept other file formats
* WIP import app
* Added functionality to import application json file
* minor fixes
* Made the file type prop mandatory for file picker
* added a test suite for export app
* Test added to check if on import application click, it open a modal
* added a dummy application file for cypress testing
* Added end to end integration test suite
to verify import app feature
* added test to verify the export api status and download file.
* added a linked btn to carry exporting.
- according to latest BE changes
* Removed old redux and saga mechanism for app export
* updated cypress test to validate new flow
* fixed minor linting errors
* updated test case title
* updated the test cases for import/export app feat
* review changes
* added prop to facilitate delayed upload
* added new application file to fixtures. Minor fix to take care of loading state.
* Removed export app modal. Added one click action, to download the file.
* Updated File picker to work with all other files acc to the design.
* Updated the import modal
* updated the import application test
* Added remove upload tooltip
* updated the icons for import/export actions
* removed unused logs
* added hard coded feature flag to hide/show import export feature
Co-authored-by: Pranav Kanade <pranav@appsmith.com>
* [Issue #4572]-Added API to leave organisation by any user
[Issue #4572]-Add option for organization admins to leave an organization
* -add option to leave organization in frontend for non-admin users
* -updated the leave org endpoint path and HTTP method as per PR review
* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
* Update app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
* -add cypress test and some minor changes as per PR comment
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
* Initial scaffolding for comments CRUD APIs
* add actions
* add assets
* state management for existing comments and creating new
* add ui components
* add overlay comments wrapper to baseWidget
* add toggle comment mode button at editor header
* trigger tests
* Disallow commenting as someone else
* Add applicationId for comments
* lint
* Add overlay blacklist to prevent component interaction while adding comments
* Comment thread style updates
* Placeholder comment context menu
* Controlled comment thread visibility for making new comments visible by default
* Update comment type description
* Reset input on save
* Resolve comment thread button ui
* fix close on esc key, dont create new comment on outside click
* Submit on enter
* add emoji picker
* Attempt at adding a websocket server in Java
* CRUD APIs for comment threads
* Add API for getting all threads in application
* Move types to a separate file
* Initial commit for real time server (RTS)
* Add script to start RTS
* Fix position property
* Use create comment thread API
* Use add comment to thread API
* Add custom cursor
* Dispatch logout init on 401 errors
* Allow CORS for real time connection
* Add more logs to RTS
* Fix construction of MongoClient
* WIP: Real time comments
* Enable comments
* Minor updates
* Read backend API base URL from environment
* Escape to reset comments mode
* Set popover position as auto and boundary as scroll parent
* Disable warning
* Added permissions for comment threads
* Add resolved API for comment threads
* Migration to set commenting permission on existing apps
* Fix updates bringing the RTS down
* Show view latest button, scroll to bottom on creating a new comment
* Cleanup comment reducer
* Move to typescript for RTS
* Add missing server.ts and tsconfig files
* Resolve / unresolve comment
* Scaffold app comments
* Minor fixes: comment on top of all widgets, add toggle button at viewer header
* Reconnect socket on creating a new app, set connected status in store
* Retry socket connection flow
* Integration tests for comments with api mocks using msw
* Fix circular depependency
* rm file
* Minor cleanup and comments
* Minor refactors: move isScrolledToBottom to common hooks, decouple prevent interactions overlay from comments wrapper
* Use policies when pushing updates in RTS
* ENV var to set if comments are enabled
* Fix: check if editor/viewer is initialised before waiting for init action
* Add tests for comments reducer
* Revert "ENV var to set if comments are enabled"
This reverts commit 988efeaa69d378d943a387e1e73510334958adc5.
* Enable comments for users with appsmith email
* lint
* fix
* Try running a socket.io server inside backend
* Update comment reducer tests
* Init mentions within comments
* Fix comment thread updates with email rooms
* Minor fixes
* Refactors / review suggestions
* lint
* increase cache limit for builds
* Comment out tests for feature that's under development
* Add Dockerfile for RTS
* Fix policies missing for first comment in threads
* Use draftJS for comments input with mentions support
* fix fixtures
* Use thread's policies when querying for threads
* Update socket.io to v4
* Add support for richer body with mentions
* Update comment body type to RawDraftContentState
* fix stale method
* Fix mentions search
* Minor cleanups
* Comment context menu and thread UI updates
* revert: Scaffold app comments
* Yarn dependencies
* Delete comment using id api added
* Init app comments
* Add test for creating thread
* Api for delete comment with id
* Test comment creation response and policies
* Copy comment links
* Fix reset editor state
* Delete valid comment testcase added
* Delete comment TC : code refactor
* Don't allow creating comments with an empty body
* Pin comments WIP[]
* Ignore dependency-reduced-pom.xml files from VCS
* Cleanup of some dev-only files, for review
* Delete comment
* Update socket.io to v4 in RTS
* Pin and resolve comment thread object added in commentThread
* Pin and resolve comment thread object added in commentThread
* Update comment thread API
* Added creationTime and updationTime in comment thread response
* Added creationTime and updationTime in comment thread response
* Added human readable id to comment threads, fallback to username for null name in user document
* Refactor
* lint
* fix test, rm duplicate selector
* comment out saga used for dev
* CommentThread viewed status, username fallback for getName=null, username field added in pin & resolve status
* lint
* trigger tests
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>