Commit Graph

282 Commits

Author SHA1 Message Date
Pawan Kumar
809a633306
feat: App Theming (#9714)
* fix style bugs

* fix select styles

* test: fix font size issue for cypress tests

* incorporate ashit feedback

* test: addresed review comments for cypress tests

* add analytics events

* height issue in view mode

* incorporate code review feedbacks

* incorporate code review feedbacks

* refactor: addressed review comments; removed border radius and box shadow for text widget; Updated migrations

* feat: Makes shadow and radius controls keyboard accessible (#11547)

* makes shadow and radius controls keyboard accessible

* removes unused imports

* moves options out of render method

* fix: changed the misnomer background property name to the relevant property name

* fix: border radius issue for the map widget

* address qa bugs

* address qa bugs

* fix ux of theming pane when widget is selected

* fix:
* added backgroundColor to the video widget
* restricted pop-over border radius to 0.375rem
* added box shadow for the input group for select widget

* fix: added delete icon in the delete theme modal

* address qa bugs

* change checkbox column size in config

* add js convertible to button color

* remove unused imports

* test: fixed jest tests

* fix primary color typo

* fix: migrations for the theming

* fix:
* Removed background color from MultiTreeSelect and TreeSelect component.
* grouped button's menu button pop over border radius restricting to 0.375rem.

* test: updated Dsl migration UT

* address qa bugs

* address qa bugs

* fix: address qa comments

* address qa bugs

* fix:
* migration issue;
* unit test cases;

* fix rating widget scroll issue

* fix youtube video border radius bug

* fix select widget

* fix select widgets styles

* address qa bugs

* merge conflicts

* makes the reset button keyboard accessible (#12134)

* -resolved merge conflicts

* address qa bugs

* fix: labelTextSize migration fixes

* refactor:
* made changes to the fontSizeUtils function
* fixed the issue related to unit tests

* fix button group widget

* remove unused imports

* fix: fixed the text size migration for the table widget

* refactor: addressed review comments for the table widget theming migration

* fix button group widget

* add init calls for view mode

* json form init theme changes

* fix: added migration for boxShadow, borderRadius and textSizes for table widget

* fix broken fields

* test: fixed unit tests

* wip

* inconsistancy fixes and schemaItem update in updateHook/fieldConfiguration

* feat: init json form migration theming

* json form primaryColor -> accentColor

* update table widget

* update table widget

* object field label styling

* fix: migration related to the JSON form

* fix: fixed labelTextSize migration for JSON form nested widgets

* property control nested stylesheet lookup

* JSONForm label styles form array items

* show label for checkbox field array item

* fix button group widget

* wip

* refactor: addressed table widget review comments

* refactor: addressed ashit review comments;
* added childStylesheet for widgets

* feat: Keyboard navigable Color Picker control (#11797)

* Makes ColorPicker keyboard accessible

* seperate out keyboard and mouse interactions

* fix issue with not focusing back to input

* Adds test for Color picker

* chore: added comment for the boxShadow property

* fix:
* added unit test cases for the widget and property utils
* resolved warning messages

* wip

* theme config update

* fix merge conflicts

* refactor: moved theming migration inside the migrations folder

* fix qa bugs

* fix jest test

* fix: unit test cases

* fix table column creation logic

* refactor: addressed review comments for migrations

* fix: Overriding margin and padding for custom render in the dropdown component (#12875)

* * fix for custom render padding and margin in ADS dropdown

* * fix for removing padding from normal render options

* refactor: moved the boxShadow condition to the variable

* fix qa bugs

* fix: migration QA callouts for audio recorder widget

* refactor: added updated comments for boxShadow migration for table widget

* fix theme binfings for JSONForm fields under Object

* fix table widget theming bug

* fix: addressed code review comments

* fix: unit test cases

* fix: qa migration callouts

* fix table widget theming bug

* fix JSONForm currency input dropdown not submit form

* Added new tests - AppThemingSpec

* fix qa bugs

* fix unit test

* fix JSONForm cellBorderWidth to have default value post migration

* fix unit test

* fix qa bugs

* remove unused imports

* fix qa bugs

* fix JSONForm input height issue

* fix qa bugs

* Updating Theming spec

* * dropdown color fixes (#13249)

* fix caching issue
;

* Fixed Theming tests

* fix tests

* fix tab widget tests

* fix: json form children level migration issue

* fix table widget tests

* Updated test

* updated tests

* updated test

* updated tests

* updated tests

* updated pageload

* fix cypress tests

* remove cypress created files

* fix color picker issues

* Failure fixes

* Fixed some more tests

* fix: cypress test failures

* fix tests

* remove consoles

* fix table tests

* fix qa bugs

* updating snapshots for AppPageLayout_spec as per new UI

* fix rating widget bug

* fix qa bugs

* fix:
* cypress failing tests
* Migration QA callouts
* Removed unused imports

* update constract check algo

* fix color contrast issue

* fix: cypress failure test cases

* update font sizes labels

* fix regression bugs

* fix:
* JSON form labelTextSize issue fix
* Updated comment for the fontSizeUtility function
* migrations issues related to table widget borderRadius and boxShadow

* fix: default labelTextSize issue for the Input and Select families

* fix regression bugs

* fix regression bugs

* PassingParams spec - added wait time

* fix: font family default value issue on JS toggle

* fix js toggle issue in text widget

* fix tests

* fix tests

* fix tests

* fix cypress tests

* fix regression bugs

* fix regression bugs

* fix:
* refactored table widget migration function as per review comments,
* added default value to the widget

* fix: failing unit test cases

* fix theming spec

* fix cypress tests

* test: fixed failed cypress test

* incorporate ashit feedback

* fix cypress tests

* fix: addressed review comments

* comment out table cypress test

* fix merge conflicts

* comment out color picker tests

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
Co-authored-by: keyurparalkar <keyur@appsmith.com>
Co-authored-by: Aswath K <aswath@appsmith.com>
Co-authored-by: Nayan <nayan@appsmith.com>
Co-authored-by: Ashit Rath <ashit@appsmith.com>
Co-authored-by: balajisoundar <balaji@appsmith.com>
Co-authored-by: albinAppsmith <87797149+albinAppsmith@users.noreply.github.com>
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
Co-authored-by: apple <nandan@thinkify.io>
Co-authored-by: Parthvi Goswami <parthvigoswami@Parthvis-MacBook-Pro.local>
2022-05-04 15:15:57 +05:30
Rishabh Rathod
846ba223ea
fix: replace rfdc with klona (#12568)
Co-authored-by: Aishwarya UR <aishwarya@appsmith.com>
2022-04-14 14:19:13 +00:00
f0c1s
736c2e024e
feat: git delete branch (#12681) 2022-04-13 15:33:23 +05:30
Rishabh Rathod
5c7a0105de
fix: react overlay issue (#12742) 2022-04-10 18:02:57 +05:30
dependabot[bot]
b440798dcd
chore(deps): bump node-forge from 1.1.0 to 1.3.0 in /app/client (#12191)
Bumps [node-forge](https://github.com/digitalbazaar/forge) from 1.1.0 to 1.3.0.
- [Release notes](https://github.com/digitalbazaar/forge/releases)
- [Changelog](https://github.com/digitalbazaar/forge/blob/main/CHANGELOG.md)
- [Commits](https://github.com/digitalbazaar/forge/compare/v1.1.0...v1.3.0)

---
updated-dependencies:
- dependency-name: node-forge
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-01 11:54:59 +05:30
Arpit Mohan
8eea57358c
chore: Upgrading mocha dependencies (#12085) 2022-03-24 18:25:24 +05:30
ashit-rath
32fee08c5c
feat: JSON Form widget (#8472)
* initial layout

* updated parser to support nested array

* array field rendering

* changes

* ts fix

* minor revert FormWidget

* modified schema structure

* select and switch fields

* added checkbox field

* added RadioGroupField

* partial DateField and defaults, typing refactoring

* added label and field type change

* minor ts changes

* changes

* modified widget/utils for nested panelConfig, modified schema to object approach

* array/object label support

* hide field configuration when children not present

* added tooltip

* field visibility option

* disabled state

* upgraded tslib, form initial values

* custom field configuration - add/hide/edit

* field configuration - label change

* return input when field configuration reaches max depth

* minor changes

* form - scroll, fixedfooter, enitity defn and other minior changes

* form title

* unregister on unmount

* fixes

* zero state

* fix field padding

* patched updating form values, removed linting warnings

* configured action buttons

* minor fix

* minor change

* property pane - sort fields in field configuration

* refactor include all properties

* checkbox properties

* date properties

* refactor typings and radio group properties

* switch, multselect, select, array, object properties

* minor changes

* default value

* ts fixes

* checkbox field properties implementation

* date field prop implementation

* switch field

* select field and fix deep nested meta properties

* multiselect implementation

* minor change

* input field implementation

* fix position jump on field type change

* initial accordian

* field state property and auto-complete of JSONFormComputeControl

* merge fixes

* renamed FormBuilder to JSONForm

* source data validation minor change

* custom field default value fix

* Editable keys for custom field

* minor fixes

* replaced useFieldArray with custom logic, added widget icon

* array and object accordian with border/background styling

* minor change

* disabled states for array and objects

* default value minor fix

* form level styles

* modified logic for isDisabled for array and object, added disabledWhenInvalid, exposed isValid to fieldState for text input, removed useDisableChildren

* added isValid for all field types

* fixed reset to default values

* debounce form values update

* minor change

* minor change

* fix crash - source data change multi-select to array, fix crash - change of options

* fix positioning

* detect date type in source data

* fix crash - when object is passed to regex input field

* fixed default sourceData path for fields

* accodion keep children mounted on collapse

* jest test for schemaParser

* widget/helper and useRegisterFieldInvalid test

* tests for property config helper and generatePanelPropertyConfig

* fix input field validation not appearing

* fix date field type detection

* rename data -> formData

* handle null/undefined field value change in sourceData

* added null/undefined as valid values for defaultValue text field

* auto detect email field

* set formData default value on initial load

* switch field inline positioning

* field margin fix for row direction

* select full width

* fiex date field default value - out of range

* fix any field type to array

* array default value logic change

* base cypress test changes

* initial json form render cy test

* key sanitization

* fix fieldState update logic

* required design, object/array background color, accordion changes, fix - add new custom field

* minor change

* cypress tests

* fix date formatted value, field state cypress test

* cypress - field properties test and fixes

* rename test file

* fix accessort change to blank value, cypress tests

* fix array field default value for modified accessor

* minor fix

* added animate loading

* fix empty state, add new custom field

* test data fix

* fix warnings

* fix timePrecision visibility

* button styling

* ported input v2

* fix jest tests

* fix cypress tests

* perf changes

* perf improvement

* added comments

* multiselect changes

* input field perf refactor

* array field, object field refactor performance

* checkbox field refactor

* refectored date, radio, select and switch

* fixes

* test fixes

* fixes

* minor fix

* rename field renderer

* remove tracked fieldRenderer field

* cypress test fixes

* cypress changes

* array default value fixes

* arrayfield passedDefaultValue

* auto enabled JS mode for few properties, reverted swith and date property controls

* cypress changes

* added widget sniping mode and fixed object passedDefaultValue

* multiselect v2

* select v2

* fix jest tests

* test fixes

* field limit

* rename field type dropdown texts

* field type changes fixes

* jest fixes

* loading state submit button

* default source data for new widget

* modify limit message

* multiseelct default value changes and cypress fix

* select default value

* keep default value intact on field type change

* TextTable cypress text fix

* review changes

* fixed footer changes

* collapse styles section by default

* fixed footer changes

* form modes

* custom field key rentention

* fixed footer fix in view mode

* non ascii characters

* fix meta merge in dataTreeWidget

* minor fixes

* rename useRegisterFieldInvalid.ts -> useRegisterFieldValidity.ts

* modified dependency injection into evaluated values

* refactored fixedfooter logic

* minor change

* accessor update

* minor change

* fixes

* QA fixes date field, scroll content

* fix phone number field, removed visiblity option from array item

* fix sourceData autocomplete

* reset logic

* fix multiselect reset

* form values hydration on widget drag

* code review changes

* reverted order of merge dataTreeWidget

* fixes

* added button titles, fixed hydration issue

* default value fixes

* upgraded react hook form, modified array-level/field-level default value logic

* fixed select validation

* added icon entity explorer, modified icon align control

* modify accessor validation for mongo db _id

* update email field regex

* review changes

* explicitly handle empty source data validation
2022-03-24 12:43:25 +05:30
Aishwarya-U-R
47fc1443f2
test: Script fixes for flaky tests + Unskipping few skipped tests + Cypress upgraded (#11724)
* AForceMigration started

* Table_GenralProp Background color failure fix

* Adding assertPageSave()

* Flaky fix

* Flake fix

* S3 - upload case uncomment

* Added click aft clear - Table_AddBtn spec

* Unskipping Promises scripts

* Promises fix

* Table_genral fix

* Separating Table_Color spec

* Failure fixes

* JObjtoInput flaky fix

* .wait to .Sleep

* Failure fix

* HSEditor complete replace fix

* small replace

* Update a user's name flaky fix

* EE_CopyQuery spec fix

* UNSkipping select widget test

* Flaky fixes

* viewportHeight updated

* Page Load spec - fixed & unskipping test

* Mongo cy.al failure fix

* Promises.any fix

* Promises.any fix

* List_Spec fix

* LIst_spec fix

* Promises.any fix

* Replay editor- flaky fix

* S3 flaky fix

* expandCollapse flaky click fix
2022-03-19 21:26:53 +05:30
dependabot[bot]
cb016364ca
chore(deps): bump prismjs from 1.25.0 to 1.27.0 in /app/client (#11460)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.25.0 to 1.27.0.
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.25.0...v1.27.0)

---
updated-dependencies:
- dependency-name: prismjs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: hetunandu <hetunandu@gmail.com>
2022-03-17 14:29:43 +05:30
dependabot[bot]
9b62f037b6
chore(deps): bump lodash-es from 4.17.14 to 4.17.21 in /app/client (#11821)
Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.14 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.14...4.17.21)

---
updated-dependencies:
- dependency-name: lodash-es
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: hetunandu <hetunandu@gmail.com>
2022-03-16 21:06:54 +05:30
akash-codemonk
65aee7fd14
feat: Application templates (#10964) 2022-03-03 16:26:53 +05:30
Abhinav Jha
a70763d1c3
Add showdown types package as a dev dependency for the client (#11496) 2022-02-28 18:08:56 +05:30
Pawan Kumar
cc3f98c0f1
chore: Remove chance lib (#11230)
* remove chance

* update yarn.lock

Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
2022-02-24 10:04:17 +00:00
Abhinav Jha
938edd5284
chore: Remove old way of adding feature flags (#11213)
* Remove optimizely, as it isn't being used anymore from the frontend codebase

* Remove optimizely references form netlify config, vercel config, index.html, docker script, nginx templates and example .env file
2022-02-16 19:57:58 +05:30
Favour Ohanekwu
a659cba4ea
chore: upgrade jshint to fix security alert (#11179) 2022-02-15 23:23:19 +05:30
Apeksha Bhosale
980c8cbf57
fix: added new library and reduced function calls for global data (#11001) 2022-02-11 16:22:27 +05:30
Rishabh Rathod
f91f860d1e
Add brotli and gzip compression (#10869) 2022-02-05 01:52:31 +05:30
rahulramesha
1b2295d31f
react spring upgrade (#10427)
Upgrading react-spring
2022-01-21 11:42:46 +05:30
Tolulope Adetula
70cff3c373
fix: Copy and paste (#10422)
* fix: Copy and paste

* fix: test cases

* fix: onPaste action

* Update index.tsx
2022-01-18 19:54:34 +01:00
balajisoundar
02785b90b2
feat: Input, Phone no., Currency input widget (#10259)
* feat: Input, Phone no., Currency Widget

* cypress tests, jest test, QA and CR callouts

* fix tests

* Cypress and jest test fixes
2022-01-18 13:22:24 +05:30
dependabot[bot]
a033cd3a19
chore: bump postcss from 7.0.35 to 8.2.13 in /app/client (#10246)
Bumps [postcss](https://github.com/postcss/postcss) from 7.0.35 to 8.2.13.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/7.0.35...8.2.13)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2022-01-15 12:41:36 +05:30
Snyk bot
4bc56cb99e
chore: [Snyk] Security upgrade node-sass from 7.0.0 to 7.0.1 (#10016)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-ANSIREGEX-1583908

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2022-01-15 04:25:27 +05:30
Aishwarya-U-R
cc426f1455
test: Automated tests for Promises in Typescript + failure fixes (#10288)
* JSObjects scripting

* storeValue Implemented

* Resolve, AsyncAwait script implementation

* Moved ts tests inside already existing folders

* Then & Catch test script implemented

* Promise.race test script implemented + S3 fix

* JSObject_To_ListWidgetSpec.ts failure fix

* S3 flaky test fix

* createOrg flaky fix

* FilePicker_with_fileTypes_spec.js filename fix

* createOrg flaky fix

* createOrg revert

* JSObject_To_ListWidgetSpec.ts added validations

* .then .catch promises script added

* Added script for Promises Maintaining context

* Added WaitUntilEleDisappear()

* JSObj run fix
2022-01-13 05:23:27 +00:00
Snyk bot
c127f98cd3
fix: [Snyk] Security upgrade node-forge from 0.10.0 to 1.0.0 (#10247)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-NODEFORGE-2330875
2022-01-07 18:48:01 +05:30
Paul Li
85d54a7b56
feat: Map Chart widget (#6929)
* 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>
2022-01-07 17:57:45 +08:00
Tolulope Adetula
54bb8bffe0
fix: rich text editor cursor fix (#9889)
* fix: rich text editor cursur fix

* fix: failing tests

* fix: debounce callback

* fix: Throw away any pending invokation

* fix: use SetTimeout for deboucing

* fix: markdown issues

* fix: onTextChange on page load

* fix: failing test
2021-12-30 00:01:45 -08:00
Paul Li
6c8c7b2da8
feat: camera widget (#8069)
* 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
2021-12-24 22:06:59 +08:00
Parthvi12
b82ea06aa3
test: Adding visual tests for layout validation (#9857)
* 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>
2021-12-24 17:47:22 +05:30
dependabot[bot]
f8f230f531
chore: bump prismjs from 1.24.0 to 1.25.0 in /app/client (#7649)
Bumps [prismjs](https://github.com/PrismJS/prism) from 1.24.0 to 1.25.0.
- [Release notes](https://github.com/PrismJS/prism/releases)
- [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PrismJS/prism/compare/v1.24.0...v1.25.0)

---
updated-dependencies:
- dependency-name: prismjs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-12-11 12:31:48 +05:30
Snyk bot
b31d390054
chore: app/client/package.json & app/client/yarn.lock to reduce vulnerabilities (#9447)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-JSONSCHEMA-1920922

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2021-12-10 18:11:35 +00:00
Paul Li
54579a4e6c
feat: Switch Group widget (#7590)
* Feat: Switch Group Widget

-- The first MVP of the widget

* feat: Switch Group Widget

-- Follow the same config and implementation as the other group widgets

* feat: Switch Group Widget

-- Elaborate the help text for defaultSelectedValues

* feat: Switch Group Widget

-- Add a widget icon

* feat: Switch Group Widget

-- Remove unnecessary property control at ItemsControl.tsx
-- Refactor some code snippets for higher code quality
-- Add basic cypress test cases

* fix: icon for the widget optimised & replaced

* feat: Switch Group Widget

-- Add a unit test for defaultSelectedValuesValidation

* feat: Switch Group Widget

-- Make the validation type for defaultSelectedValues property to ValidationTypes.ARRAY
-- Remove original validation function and its unit test

* feat: Switch Group Widget

-- Fix on typo
-- Fix on formatting issue
-- Change the help text for isRequired property

* feat: Switch Group Widget

-- Revert help text for isRequired property to the original one

* feat: Switch Group Widget

-- Set strict property to true on defaultSelectedValues

* feat: Switch group widget

-- Refactor utility function, getCamelCaseString
-- Add the corresponding test case

* feat: Switch group widget

-- Implement options property as a plain JS field
-- Reimplement update logic for selectedValues when options changes
-- Add a new utility function for checking equality of object arrays
-- Add a unit test for the above function
-- Rewrite the corresponding Cypress test cases

* feat: Switch Group Widget

-- Remove isArrayEqual utility function and directly use functions from lodash

* feat: Swtich Group Widget

-- Make selectedValues as a derived property

* feat: Switch Group Widget

-- Replace the widget icon

* feat: Switch Group Widget

-- Rewrite a test case for onSelectionChange property

* feat: Switch Group Widget

-- Remove redundant calls for openPropertyPane

* feat: Switch Group Widget

-- Remove closePropertyPane call from afterEach hook

* feat: Switch Group Widget

-- Change the selector for every switch element in onSelectionChange test case

* feat: Switch Group Widget

-- Fix on failed Cypress test case, adding closePropertyPane command to onSelectionChange

* feat: Switch Group Widget

-- Remove template literal from a selector

* feat: Switch Group Widget

-- Make click on onSelectionChange test case forced

* feat: Switch Group Widget

-- Fix on crash issue when editing on Options property

* feat: Switch Group Widget

-- Add the widget icon to show in entity explorer

* feat: Switch Group Widget

-- Fix on blue color on mouse down
-- Add a new property for alignment

Co-authored-by: somangshu <somangshu.goswami1508@gmail.com>
2021-12-09 20:02:47 +08:00
Snyk bot
ddf1490866
chore: app/client/package.json & app/client/yarn.lock to reduce vulnerabilities (#9630)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-NODESASS-1059081
2021-12-08 13:10:08 +00:00
Anand Srinivasan
4ced0954db
feat: Syntax parsing through AST (#9115)
* ast changes

* ast fix for cyclic dependency

* jest test updates for ast

* feat: Extract references in code with AST (#8617)

Co-authored-by: Nidhi <nidhi@appsmith.com>

* undo debugger changes

* code clean up and comments

* update type checks for literal nodes

* include tests for IIFE and direct object access

* fix - dependency map not updated on IIFE/direct object access

* update tslib

* unescape on AST parsing

Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: Nidhi <nidhi@appsmith.com>
2021-12-02 15:33:43 +05:30
NandanAnantharamu
425a46f34d
test: updated filter tests (#9448)
* Filter Tests

* Test spec added

* updated import

* added some wait

* updated the dependencies

* Added the dependancy files
2021-11-30 20:56:37 +05:30
Bhavin K
6ea90e7c7b
feat: add document viewer widget (#7666)
* created new widget

* new lib for document viewer

* added cypress tests

* updated icon

* handling different url types with viewer

* add to ignore react-documents in jest transformIgnorePatterns

* added jest test, updated comments

* required changes

* updated cypress test

* updated icon svg

* doc viewer new renderers added

* comment as required

* updated test case

* added url / base64 validations

* updated url checking condition for space and updated test case

* cypress selector update

* updated url validations

* Merge branch 'release' into feature/new-document-viewer

* lazy load external lib
2021-11-29 15:37:49 +00:00
Pawan Kumar
8395f5e18f
feat: property pane docking (#7361)
* add tailwindcss

* docked property pane

* uncomment a line

* make entity explorer as drawer on unpin

* remove unused imports

* add pin state in  reducer

* add menu icon in header

* fix widget sidebar

* fix widgets sidebar

* style property pane

* update property pane css

* update icons in property pane

* update property pane header styles

* update spacing

* fix few ui issues

* wip: preview mode

* wip:preview mode

* remove unused import

* comments sidebar in app and edit mode

* fix order of import

* use selected state for property pane

* update scrollbar style

* add classes to sidebar and property pane

* make widgets editor fluid

* make widgets editor fluid and refactor logic

* resize the widgets editor if explorer is pinned

* add shortcut for preview mode

* fix link for tabs in edit mode

* zoom in/zoom out for 0.75

* fix chart widget + table widget crashing

* allow zooming of canvas

* fix weird canvas draw issue + update container for handling zoom

* add actions for is panning

* allow panning with grab cursor

* reset panning + zooming when entering preview mode

* add grabbing cursor when grabbing

* only prevent default when space key is pressed

* dont allow zoom in preview mode

* remove unused imports

* fix dont allow zoom in preview mode

* fix ux of panning on space hit

* make fluid as the default app layout

* chart spec

* fix dropdown_on change spec

* fix add widget table and bind spec

* remove draggable property pane spec

* fix container spec

* fix form widget spec

* fix jest test

* fix the function typo

* remove clicking of close button for property pane in cypress tests

* remove property pane actions test

* fix drag and drop test failing

* add cypress selector id to back button in property pane

* fix toggle js spec

* fix merge conflicts from new design system

* editor header

* fix product updates styles + widget card

* remove all unused imports

* fix dynamic layout spec

* fix entity explorer tab rename test failing

* fix table spec

* fix bind tabletextpagination spec

* fix js object spec

* fix entity explorer rename issue

* fix cypress test

* fix cypress command wrong commit

* fix tab spec

* fix property pane copy tests

* add zoom header

* zoom levels

* make property pane sidebar resizable

* add multi select property pane

* fix widget search bug

* update property pane width in state on drag end

* fix viewer header

* fix editor header

* update editor header + remove zooming

* update small style

* dont allow closing of explorer when resizing

* fix jest test

* fix dropdown widget jest test

* preview test case wip

* add entity explorer pinning tests + preview mode tests

* add tooltip in layout control + add padding bottom in property pane view

* incorporate aakash feedbacks

* fix preview mode margin issue

* remove panning code

* fix cypress failing test

* uncomment jest test

* remove redundant code

* fix maincontainer test

* incorporate review feedbacks

* incorporate aakash feedbacks

* review feedbacks

* incorporate review feedbacks

* incorporate qa feedbacks

* fix dynamic layout spec

* updated test based on latest change

* dsl updated

* Updated dsl

* Updated dsl

* resize deselects widget issue.

* fix canvas height issue

* fix typo

* incorporate qa feedbacks

* incorporate qa feedbacks

* incorporate qa feedbacks

* update color for setting control for widget name

* fix onboarding styles conflicts

* Updated tests

* fix application overflow issue

* updated test method

Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
Co-authored-by: Ashok Kumar M <35134347+marks0351@users.noreply.github.com>
Co-authored-by: Apple <nandan@thinkify.io>
2021-11-23 13:31:46 +05:30
Aswath K
701207718b
fix: Unable to drag disabled button (#8206) 2021-11-18 15:52:04 +05:30
Nidhi
51246a0869 fix: Reverted AST 2021-11-10 20:13:21 +05:30
Rishabh Rathod
bef48e8a79
chore: Config changes (#8564)
Change eslint config for console logging from error to warn
Add babel auto-import resolver to avoid using relative paths
2021-11-05 11:19:19 +05:30
Hetu Nandu
c0d0037ce2
feat: Extract references in code with AST (#8617)
Co-authored-by: Nidhi <nidhi@appsmith.com>
2021-11-03 13:12:31 +05:30
Pranav Kanade
23078215df
fix: unread indicator behaviour (#8290)
* 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
2021-10-19 15:56:56 +05:30
Paul Li
a9e2eac8c3
fix: After using an app with AudioRecorder widget, Appsmith always shows the mic symbol in the tab (#8424)
-- Upgrade underlying package, react-media-recorder to the latest one
2021-10-13 18:10:04 +05:30
albinAppsmith
31cdfe0fe5
feat: Appsmith design system changes (#8125)
Introducing a much improved design system with new components in the Appsmith Design System.
2021-10-04 21:04:37 +05:30
Pranav Kanade
db02756173
fix: upgraded socket.io client package to latest stable version (#7845)
* upgraded socket io client to latest stable version

* auto update enabled

Co-authored-by: Rishabh Saxena  <rishabh.robben@gmail.com>

Co-authored-by: Rishabh Saxena  <rishabh.robben@gmail.com>
2021-09-27 16:59:47 +05:30
Satish Gandham
eb2cbb383d
perf: Optimize list widget renders by memoizing part of renderChildren (#7681)
* - Optimze list widget renders by memoizing part of renderchildren

* - Fix failing tests and add more dependecnies to memo

* - Fix issue with repositioning widgets inside list.

* comment out the moving of widgets test

* Remove stray import

* Fix the failing jest test

Co-authored-by: Satish Gandham <satish@appsmith.com>
2021-09-24 17:00:26 +05:30
rahulramesha
6cefc6dbea
feat: Undo/Redo (#6654)
* 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>
2021-09-21 13:25:56 +05:30
Vinod
2bd324a5aa
feat: address few bug with linting and improve highlighting (#7287)
* show lint errors as warnings

* add initial code

* adjust editor positions

* update pr comments

* mark jshint errors

* reset changes

* remove unused prop

* fix test errors

* remove unused imports

* dont show warning in the error counter

* show yellow if warning

* remove active error functionality

* update linter to use async functionality

* update linter messages

* update binding positions

* fix evaluate tests

* dont show undefined errors in debugger

* move lint code to separate file

* update testes

* remove unused import

* update tests

* address pr comments

* add comment to explain why

* replace proper regex

* fix undefined message error

* Update styling for warnings

* address position issue in the linter

* Fix failing tests

* Merge 'release' on to  'Feature/linting-errors'

* add console as global object

* address lint issues

* fix requested linting erros for release

* fix breaking issue

* remove unwanted code

* revert unrelated changes

* remove unnecessary file

* add extra libraries to jshint data

* import lodash functions that are used

* update jshint settings

* Fix failing test

* don't show lint errors if there is a parsing issue

* update jshint to latest version
2021-09-17 16:01:45 +05:30
Tolulope Adetula
15b26f823e
feat: Tree Select widget (#6271)
* feat: Tree Select

* feat: styling multiselect

* fix: selected values

* fix: remove console statement

* fix: popup position

* fix: selection types

* fix: Form validation using TreeSelect

* feat: Add Label to TreeSelect

* fix: styling

* fix: Dropdown search

* fix: Add Entity Definitions

* fix: Entity Definition

* Feat: Add clear icon

* fix: validation

* fix: options validation

* fix: Styling issues

* fix: build error

* Fix: Separate Tree Select widget

* fix: issues and add validation

* fix: Options Validation

* fix: issues with build

* fix: yarn

* fix: changes

* fix

* Fix: select component

* fix: PR issues

* fix: merge conflicts

* fix: issues

* fix: all issues

* test: added test

* fix: failing test
2021-09-17 02:08:35 -07:00
Abhinav Jha
b49f5097c6
refactor: Widget Development API (#6405) 2021-09-09 20:40:22 +05:30
Paul Li
4c6fb4fcb6
feat: New widget - Audio Recorder widget (#6702)
User can record audio / play it as feedback and then use the data in any API with the help of this new widget
2021-09-08 16:30:36 +05:30