When an user signs up, we store the email in lower case. When user logins with oauth2, we fetch user by email ignoring case. This creates a problem if email from oauth is in upper case. As users are registered with lowercase and we're trying to fetch with upper, users are not found.
This PR fetches user by case insensitive emails during oauth login.
* fix: changed cap default to fix ux issue on js toggle
* fix: hard check on capSide hide
* fix: always show capSide if dynamic capType
* docs: label, help text update
* fix: remove hidden condition
* fix: table column name migration update
* test: added test case for migration
* fix: migration version update
* fix: update latest version logic
* fix: cypress updated
* fix: updated test case
* fix: delay added
* fix: test case update
* fix/ one more custom column added
* 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>
* Fix clone JSObject issue where cloned JSObject gets attached to both parent and cloned page
* Race condition for delete action when trying to delete page with JSObject
* Set published collection to null during fork application
* initial implementation, still WIP
* Cleaning up implementation
* added types for evaluation errors and error handling
* remove unneccessary console.log
* better naming for variables
* add unique identifier for error text
* add unique identifier for error text message
* Added new files for entity selector component
* Add error handling to data fetched via API
* Added init eval for schemas in entity selector
* Extracting conditionalOutput for schema from state and passing it to individual schema
* Removed unnecessary loop
* Fixed CSS of ES, added new Icon
* Minor refactor
* fix: When all the rows are hidden the user must not be displayed with number of records or pages in the Deploy mode
-- Make header options JS convertible
* fix: When all the rows are hidden the user must not be displayed with number of records or pages in the Deploy mode
-- Fix a broken test case accordingly
* 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>
We've added slug for pages. Each page has a slug which is generated from name automatically. In our get pages API /api/v1/pages/application/<app_id>, the slug names were not included in the Page DTO. This PR adds slug name in this API response.
* Added new condition type
* Added new variables to cater to enable/disable conditionals
* Adding functionality to disable the drop down control
* Added ability to enable/disable to dynamic input text fields
* Updated input text control to have enabled/disabled feature
* Added enable/disable functionality to FixedKeyInputControl
* Added enable/disable func to switch control and stanrdasied var name
* Added disable functionality for file picker
* Added enable/disable functionality to QUER_DYNAMIC_TEXT
* Added new state and object for evaluating conditionals
* Connected the output to the final source
* Updating loading state on the final component
* Tied fetched data to the options of dropdown component
* Added declaration to make API call
* Added loading state for dropdown
* Updated types in reducer
* Added implementation to extract API calls from the response and setting the output
* Removed extra variables
* Moved all calculation logic to the class component
* Refactors and added comments
* Added flag to store when the value fetch fails
* Reduced usage of spread operators
* Add `getStructure` implementation for S3 to return a list of accessible buckets.
* Add command templates for S3.
- List files
- Read file
- Create file
- Delete file
* Remove getDatasourceMetadata implementation as getStructure method can be directly used now.
* move away from RSA-SHA1 to ECDSA-SHA2 protocol for key generation
* Add migration to regenerate SSH keys via new protocol
* use 256 bit signature for the keys
* remove unused imports
* Fix error message for key generation
* feat: Tab widget should have navigation arrows when the tabs don't fit
-- Add scroll navigation control
* feat: Tab widget should have navigation arrows when the tabs don't fit
-- Divide tabs navigator control into both sides of contents
* feat: Tab widget should have navigation arrows when the tabs don't fit
-- Implement navigation per slide
* feat: Tab widget should have navigation arrows when the tabs don't fit
-- Refactor on useEffect dependencies and some calculations
-- Introduce if-else statement for readability and consistency
* feat: Tab widget should have navigation arrows when the tabs don't fit
-- Add class names for scroll navigation controls
-- Narrow the width of Tab widget in dsl
-- Add a Cypress test case for checking the presence of scroll navigation controls
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* This PR fixes the page load action execution order when the actions have been set to run on page load explicitly via the settings tab by the user and its data has not been referenced in any other widget or action. e.g.
- create action1 and action2.
- make action2 dependent on action1 by adding {{action1.data}} in action2's body.
- set both action1 and action2 to run on page load via settings tab. Do not reference action1 and action2 data in any other widget or action.
* feat: Checkbox group should have a select all option
-- Add a new property, isSelectAll
-- Implement its functionality
* feat: Checkbox group should have a select all option
-- Set height to auto for select all control
-- Move isInline and isSelectAll properties below isDisabled
-- Set color for options to GREY_9 and GREY_10
-- Add Cypress test cases for handleSelectAllChange
* feat: Checkbox group should have a select all option
-- Fix on misalignment of select all control if isInline is true
-- Refactor the cypress test cases which is affected by adding select all control
* feat: Checkbox group should have a select all option
-- Set white-space to nowrap
* feat: Checkbox group widget should have a select all option
-- Change helpText for isSelectAll property
* feat: Checkbox group should have a select all option
-- Fix on broken test cases for the select all option
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* This PR adds a limit field which sets the batchSize for aggregate command. This way the user can set the number of documents they want in their Mongo query result.
* limit is set to 10 initially. However, for pre-existing Mongo actions, migration has been added to set this field to 101 - which is the default value that has been used by Mongodb in the absence of any user set value. Ref: https://docs.mongodb.com/manual/tutorial/iterate-a-cursor/
Order of execution was not proper because the dynamic parameters embedded inside url without any trailing slashes and query params did not match with url grouping regex to convert the query params to dsl params.
Fixes#10049Fixes#10055
* FEATURE-6314 : Map Chart Widget
-- Scaffold the widget
* FEATURE-6314 : Map Chart Widget
-- Add a new widget icon
-- Proptotype the property pane for the first time
* FEATURE-6314 : Map Chart Widget
-- Install fusionmaps
-- Draw naive world map for the PoC
* FEATURE-6314 : Map Chart Widget
-- Integrate the limited number of FusionMaps into the widget
-- Bind basic properties and a action into the map
* FEATURE-6314 : Map Chart Widget
-- Comment out the console statements for linting error
* FEATURE-6314 : Map Chart Widget
-- Update dependency versioning
* feat: Map Chart Widget
-- Fix on linting errors, including unused variables, console statement
* Feat: Map Chart Widget
-- Install dependencies from scratch
* fix: increased max chink size allowed in the build config
* Feat: Map Chart Widget
-- Refactor code base according to the changed widget structure
-- Add cleanup for removing event listener
-- Eliminate the unnecessary codes, comments
* Feat: Map Chart Widget
-- Remove unnecessary icon
-- Refactor on constants
* Feat: Map Chart Widget
-- Add a cypress test case for map type changes
-- Add a cypress test case for title change
-- Add a cypress test case for toggling show labels
-- Add a cypress test case for onEntityClick event listener
* feat: Map Chart Widget
-- Scaffold the setup for custom map config
* feat: Map Chart Widget
-- Dynamically import map definition files
* feat: Map Chart Widget
-- Eliminate unnecessary comments
* feat: Fusion Maps Widget
-- Update base dependencies
* partial map chart changes.
* feat: Map Chart Widget
-- Refactor entire code base, removing custom configs
-- Disable prefetching on mapCharts chunk
* feat: Map Chart Widget
-- Comment onEntityClick test case out
* feat: Map Chart Widget
-- Fix on onEntityClick test case
* feat: Map Chart Widget
-- Change the widget icon
-- Rename onEnityClick to onDataPointClick
-- Expose selectedDataPoint
-- Add a new Cypress test case for the toast message on onDataPointClick
* feat: Map Chart Widget
-- Add a new property colorRange
-- Add default values for data and colorRange properties
-- Eliminate unnecessary constant colorRange
* feat: Map Chart Widget
-- update selectedDataPoint meta property unconditionally
* feat: Map Chart Widget
-- Update initial map type config to be consistent with the corresponding property
* feat: Map Chart Widget
-- Add widget icon for entity explorer
* feat: Map Chart Widget
-- Make array elements of data, colorRange properties unique
* feat: Map Chart Widget
-- Prevent re-render when disabling color codes and double-clicking on entities
* feat: Map Chart Widget
-- Declare defaultChartConfigs variable inside component class
-- Replace deprecated substr method with substring
* feat: Map Chart widget
-- Complement validation rules for data property
* feat: Map Chart widget
-- Define rows and cols without using GRID_DENSITY_MIGRATION_V1
-- Change updateDataSet hook by replacing switch statement with object mapping
* feat: Map Chart widget
-- Pull out dataSetMapping from the updateDataSet hook
* feat: Map Chart widget
-- Force click events with regard to onDataPointClick test cases
* feat: Map Chart widget
-- Update fusioncharts and fusionmaps npm packages to the latest version
* feat: Map Chart widget
-- Make contents responsive using CSS styles instead of directly changing width, height attributes of the chart
Co-authored-by: somangshu <somangshu.goswami1508@gmail.com>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* added config to support code split
* splitting config
* moved the window declaration in EE file as its dependency will be updated in EE
* CE: Splitting ApiConstants and SocialLogin constants
* CE: split login page
* CE: moved getSocialLoginButtonProps func to EE file as it's dependencies will be updated in EE
* added key icon
* CE: created a factory class to share social auths list
* Minor style fix for social btns
* Updated the third party auth styles
* updated jest config
* updated third party login registry class
* Added new condition type
* Added new variables to cater to enable/disable conditionals
* Adding functionality to disable the drop down control
* Added ability to enable/disable to dynamic input text fields
* Updated input text control to have enabled/disabled feature
* Added enable/disable functionality to FixedKeyInputControl
* Added enable/disable func to switch control and stanrdasied var name
* Added disable functionality for file picker
* Added enable/disable functionality to QUER_DYNAMIC_TEXT
* Added Mono sink calls for git and import application APIs
* TC for import-export
* Update TCs for gitService
* Added git commit and create branch test
* Test added for midway cancellation flow
* 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: added min width to wrap long page names
* fix: adjusted the width on editing for contextMenu
* style: moved the editing style in the contextMenu
* refactor: added custom classes
* Connect drop down control to redux state to fetch options dynamically when needed
* Moved whole selection logic to mapStateToProps
* Removing unused imports
* Added API to generate deploy keys and store them in a collection for import flow
* Add tests for the key generation flow
* Move the key generation to helper class
* changes per review
* changes per review
* Sorting component implementation with testing templates to be removed.
* add dsls implementation
* fixes delete item function, removes test cases
* removes test and unwanted files, adds enum to sorting control
* updated the form control from dropdown to dynamic text
Co-authored-by: Aman Agarwal <aman@appsmith.com>
* feat: support iframe.srcdoc in iframe widget
-- Add a new property srcDoc and its change handler
-- Rename handlers
* feat: Support iframe.srcdoc in iframe widget
-- Show error messages only if there are no both of URL and inline HTML
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
- Run all files in the tests folder in sequence
- Better error handling and saving of screenshots
- Organise and refactor code. WIP
- Improve the summary generator
- Add utility method to import an app
- Add a basic performance test on imported app
Co-authored-by: Satish Gandham <satish@appsmith.com>
* feat: #4141 added truncate support into text widget
* fix: updated truncate show logic, cypress added
* fix: updated ellipsis position
Co-authored-by: bhavin <techbhavin@gmail.com>
* Error handling for git limit
* clear cahe of git limit on connect api
* update per review
* check the repo is public before checking for the limit
* changes per review
* check if the repo is public or private during connect flow
* fix issues with sync branches
* Add sucess error handler
* changes per review
* add missing return statement
* remove unused import statements
* Change recaptcha key and type and add suggestion for recaptchatoken
* Add recaptchaToken property as target for auto completion cypress tests
* Added cypress test to validate recaptcha v2 can be selected in button widget property pane
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* fix:9648 Mongo update All issue-In Progress
* fix: Mongo Multi update query fail fixes
* Added updated testcases that got affected by the code change
* Changes reverted as per review comments
- Checkbox group widget
- MultiSelecttree widget
- Multiselect widget
- dropdown widget
- radio group widget
- single select tree
- switch group widget
* Fix currency number formating and add unit tests
* Fix Input currency type cypress test
* Fix currency number formating and add unit tests
* Fix Input currency type cypress test
* Add comments for utilities formatCurrencyNumber and limitDecimalValue
* Fix currency number formating and add unit tests
* Fix Input currency type cypress test
* Fix Input currency type cypress test
* Add comments for utilities formatCurrencyNumber and limitDecimalValue
* Fix upstep and downstep button action for formated currency input
* remove crendentials from cypress.json
* Fix input currency test flakiness
* Fix cypress test for currency input type
Fix formatCurrencyNumber function and added more unit tests
* Fix cypress test for currency input
Handle group separator and decimal separator when formatting and deformatting input for currency type
* remove console.log
* Handle formatting changes for default text
* Format input widget value for currency to handle default text
* remove unused import
* Add unit tests for getGroupSeparator and getDecimalSeparator functions
* add function to get user locale
* use preventDefault in input increment/decrement button click
* Use getLocale function, use String function
* use Number function for type conversion
* fix number to string type
* Handle 0 value for numbers
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* disable submit button when date is out of bounds
* Remove comment from derived.js function as comments are not allowed for parsing
* Fix table client side search cypress test
* validate date again min/max irrespective of isRequired property
* feat: Camera Widget
-- Scaffold the basic structure of the widget
* feat: Camera Widget
-- Prototype a feature, taking picture
* feat: Camera Widget
-- Add types for MediaRecorder
-- Define media capture status and action types
-- Prototype basic video recording, playing features
* feat: Camera Widget
-- Implement video player
-- Add timer for recording and playing video
-- Add permission and error handling logic
-- Add device selectors
* feat: Camera Widget
-- Place control buttons above device inputs layer
-- Make the widget fully responsive
* feat: Camera Widget
-- Change the color of caret-down icon to white
-- Remove overlaying of web cam and video player
-- Add some padding for device inputs
* feat: Camera Widget
-- Add black background to the container of the widget
* feat: Camera Widget
-- Change the widget icon
* feat: Camera Widget
-- Implement the mute feature of a mic or a camera
* feat: Camera Widget
-- Check media device permissions before getting started
* feat: Camera Widget
-- Add a fullscreen control
* feat: Camera Widget
-- Set error text color to white
-- Change the layout of control panel
* feat: Camera Widget
-- Apply layout change for control panel according to app layout change
* feat: Camera Widget
-- Add a new derived property, videoURL
* feat: Switch Group Widget
-- Adopt theme changes
* feat: Camera Widget
-- Make background grey in case of both error and disabled status
* feat: Camera Widget
-- Update npm dependencies
* feat: Camera Widget
-- Fix on #8788, using muted property
* feat: Camera Widget
-- Show off the microphone setting icon only if the current mode is video
-- Set isMirrored property to true by default
* feat: Camera Widget
-- Add photo viewer
* feat: Camera Widget
-- Add onImageCapture, onRecordingStart, onRecordingStop actions instead of onMediaCapture
* feat: Camera Widget
-- Expose meta properties for the widget
* feat: Camera Widget
-- Fix on responsiveness issue
* feat: Camera Widget
-- Add type definitions for MediaStream recording
* feat: Camera Widget
-- Hide isMirroed property for video mode
* feat: Camera Widget
-- Wrap all the controls with TooltipComponent
* feat: Camera Widget
-- Implement enter, exit full screen feature
* feat: Camera Widget
-- Add a widget icon for entity explorer
* feat: Camera Widget
-- Fix on the typo for the label of onRecordingStop property
* feat: Camera Widget
-- Enable/disable media tracks
* feat: Camera Widget
-- Set the video's height to 100% in fullscreen mode
* feat: Camera Widget
-- Add overlayers on Webcam
* feat: Camera Widget
-- Set position to relative on fullscreen wrapper div
-- Set the photo viewer's height to 100%
* feat: Camera Widget
-- Add image, mediaCaptureStatus, timer meta properties to keep UI states when the widget is dragged
* feat: Camera Widget
-- Refactor code base, eliminating commented code blocks
* feat: Camera Widget
-- Revert all the changes needed for keeping status when the widget is dragged
-- Set mirroed property to false for video mode
* 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
* Adding visual tests for layout validation
* updating screenshot to match CI's screenshot resolution
* updating screenshot as per CI
* setting failure threshold for the image comparision
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
* fix: Table widget's filter pop-up does not collapse on opening a modal
-- Dispatch an action for closing the table filter pane when a modal is opened
* fix: Table widget's filter pop-up does not collapse on opening a modal
-- Add the Cypress test case
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
* Added tests for renaming entities through the entity explorer
* changes made to deletePageFromSideBar function
* adds custom made test cases config
* test cases should be within smoke test suite
* return configuration to run full test suite