Commit graph

158 commits

Author SHA1 Message Date
Muhsin Shah C P
28b3c09cc7
Replacing react-google-login library (#5658)
* replaced google sign-in btn

* removed npm library

* fix: added nonce
2023-03-15 15:06:13 +05:30
Manish Kushare
ab5fc2c59b
Implementation of bounded box component (#5548) 2023-02-27 11:36:52 +05:30
Kavin Venkatachalam
1efcec9e09
[Feature]: Update Node from 14 to 18 (#5393)
* Updated package.json to support node 18

* Updated package-lock.json with force install

* Updated frontend package.json

* Updated server package.json

* update frontend package-lock.json

* update render dockerfile

* update dockerfiles for node 18

* update node version in actions

* fix setup script for AMI

* install using nvm

* debug

* source bashrc

* change ami os version

* change base ami

* make use of ubuntu focal lts version

* update script

* change branch name

* revert branch name

* update workflow

* node upgrade [plugins] modules updated (#5482)

* modules updated

* adds saphana and oracle package

* adds saphana and oracle package

* eslint rules for -unresolved and resolved properties

---------

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: Arpit <arpitnath42@gmail.com>
2023-02-06 17:38:44 +05:30
Gandharv
f9aa596994
feat: app builder design changes (#5041)
* feat: version manager, realtime avatars + popover addition
2022-12-29 17:18:24 +05:30
Sherfin Shamsudeen
d6a72b50bd Merge develop to v2-beta 2022-12-27 20:10:33 +05:30
Akshay
602b1b4ad3
Feature: Tooljet Database (#4951)
* wip

* internal db per workspace

* fix async query

* feat: add storage layer route

* feat: add drawer component

* feat: add react-table to load data

* feat: add columns form

* feat: add create column form, create row form

* feat: add postgrest js

* add tooljet db controller to proxy requests to postgrest

* util: add postgrest filter builder helper utility

* feat: add filter popover

* use helper utility for building query

* add sortable filters

* add box shadow for filter popup

* use overlay trigger

* use react select

* add new column addition

* add dropdown for table header, table list

* Move filter.jsx

* feat: add sort popover

* feat: add postgrest js .order fn

* setup tooljetdb with restricted grants for users

* make db schemas added loaded dynamically on postgrest server

* fix query

* sign jwt token to auth user at postgrest

* update db schema user with workspace

* chore: add table listing

* update data and columns from api

* feat: add context api for sharing data

* add ability to create table, view tables and add columns

* use columns for sort from context api

* fix ormconfig

* feat: add table listing integration

* feat: add create table integration

* fix for rds deployment

* add internal table translation instead of schema

* remove tooljetdb as a datasource

* wrap placeholder on proxy query

* add active workspace guard

* scope tooljetdb by workspace

* update active workspace guard

* seperate proxy related concerns to different service

* make use of org id param

* rename storage layer to tooljet databse

* update specs

* feat: Update list when new table added

* feat: add create column

* chore: add orgId to url + misc changes

* chore: move popover to separate file

* remove unused var

* rename files

* feat: add multiple columns

* feat: add new row

* removes postgrest-js from pkg lock

* feat: add row data

* feat: add sorting

* feat: allow row deletion

* feat: add search

* feat: add filtering

* feat: add edit mode

* feat: add columns while edit table

* add view table action

* update setup for column constraint

* fix query

* integrate view_table, primary key field

* render toogle for boolean data type

* update view table query for primary key

* fetch metadata refactor

* add capability to set default values

* feat: allow deletion of record based on primary key

* feat: add default value while creating column

* send query from sort & filter component

* css changes

* allow empty data

* add requested changes

* add err message

* add common fn

* allow sort + filter

* remove unwanted defaults key

* css changes

* add more operators

* dark mode fixes

* add drawer footer

* add loader for list tables

* add dashboard design changes

* design changes

* add capability to drop table and delete column

* add breadcrumbs

* design changes

* add profile

* refactor tooljetdb controller

* update routes

* add empty page changes

* delete column fix

* fix delete column

* design changes

* fetch tables post delete

* homepage changes

* hide ellipsis on hover

* add org settings page

* add edit + create org

* add notification center

* fix: group permissions switch issue

* add logo

* remove anchor tag

* fix merge conflicts

* css changes

* add err boundary

* setup query editor

* css changes

* fix: merge conflicts

* add menuPortal prop to filterform and sort form

* fix seed

* fix: build

* design changes

* design changes + refactor code

* fix imports

* fix: drawer issue on delete table

* add search box changes

* fix: tablename max-length 255

* fix: set newly created table as selected item

* remove edit column option

* added badges to enterprise only features

* disable edit column

* table styles

* fix: popover position, placeholder default

* fix: display boolean values in table

* fix: tooljet database default type values

* css changes

* add query manager for tooljet db with create and list row

* dark mode fixes

* remove Header component

* add ability to delete tooljetdb rows from query manager

* add ability to update tooljetdb rows

* dark mode fixes

* css changes

* display actions icon on hover

* folder onclick change

* add empty page styles

* fix proxy requests

* feat: randomize icon creation

* add max items per page prop for pagination

* removes unwanted position attr

* add table name validation + disable submit btn while api fetch

* [Bugfix] internal storage toast  | trigger toasts for running preview db queries (#5019)

* resolves: no toasts are fired when preview query is run for db queries

* fire success toast for created and no content status text for query success

* remove invalid migration

* skip migration if tooljet db already created

* fix: app clone icon param

* fix: show confirmation box if filter options are empty in query (#5021)

* for now: show native confirmation box of the brower to confirm the delete all query

* typo

* Revert "typo"

This reverts commit b5ce5ed889.

* cleaned

* cleaned

* show confirmation box if filter options are empty in query

* [Refactor/Bugfix] database query (#5028)

* refactored list rows operations

* remove unwanted cls

* refactor create row

* reafactored update rows

* refactored delete rows

* padding fix for tj-query

* add static templates

* review changes

* remove unused file

* Chore: tooljetdb render setup (#5033)

* add postgrest for render preview deploy

* pin version

* add healthCheckPath

* remove health check

* handle database url parsing db params

* add defaults for tooljetdb env

* fix hostname

* handle env in migration files

* refactor dbconfig build

* fix pg db usage

* add parsed env context

* add tooljetdb env

* refactor db config utils

Co-authored-by: gandharv <gandharvkumargarg@gmail.com>
Co-authored-by: Shubhendra <withshubh@gmail.com>
Co-authored-by: Arpit <arpitnath42@gmail.com>
2022-12-23 02:09:57 +05:30
Sherfin Shamsudeen
642c5caa71
Feature/multi page applications (Task ID - CU-2h1bfvw) (#4729)
* Add routes for multi-page apps

* Modify Editor, Viewer and Inspector to accept new app structure

* Show a page selector on left side bar

* Align component deletion logic with new app schema

* Make subcontainer work with multi-page apps

* Load components state properly in viewer

* Use UUID instead of handle for pages

* Display sidebar on viewer to switch pages

* Add proper URL suffixing for pages in viewer

* Add action to switch page

* Revert translation file back to its pre-existing linting

* Fix bug that caused modal to not open/close

* Add support for query params in page switch

* Fix the issue that caused navigation to fail while accessed via slug

* Add missing SwitchPage file

* Add support for page level variables

* Add migration to convert existing apps to new schema

* Add rollback for converting multi-page definitions back to single-page

* Fix migration for multi-page apps

* Adapt import/export service for multi-pages

* [improvements] Multi-page applications (#4755)

* UI updates for page selector popup card

* delete page

* delete page check: if only one page exits

* switch to home page if the selected page is removed

* adds and switch to new page

* updating page name

* updates to home page and starting page

* handle updating the home page when home page is deleted

* search box for filtering pages and minor style updates for the page handler card

* header search box style fixes

* for creating a new page, page handle needs to be unique

* seperating into smaller components

* updated pinned icon for page selector styles and settinf styles

* Leftsidebar header ui component

* handle dark theme

* page handle ui and dark theme fixes for page menu

* page handler edit modal

* pinned state and update pinned state for menu options triggered

* dark theme fixes for edit modal

* handle on update should not be empty or prev

* page handler updater

* added loading state for saving

* handles cancels

* fixes slug ui

* fixes crash for older app versions

* updates the query params when handle gets an update

* update homePage to homePageId

* removes console.log

* go back to the popover for modal close

* fixes: Difficult to select page

* fixes: Difficult to select the three-dot menu

* fixes: on visiting the root url, navigate to homepage on viewer

* adds tooltip for url

* updates the page selector sidebar with sync with query manager

* refactor and cleanup

* refactor and cleanup

* Compute component state when page is switched

* modal should not close on click outside

* disable save button if there is not change in the page handle input

* should show/hide page menu when hovered

* page icon

* updates delete icon for disabled state

* query manager should always be on top of page selector

* checks if homePage key exists in pages def

* updates page handler menu

* updates the clear icon

* page handler menu position

* page handler menu position

* handle icon

* alert msg

* global settings handler for updating viewer page navigation

* show/hode page navigation for viewer

* info text for toggle

* Multipages:with sortable list [DnD] (#4783)

* applied sortable list

* on sort updates the definitions

* fixies: app crash for dnd

* viwer: canvas width should be 100% when navigation drawer is disbaled

* fixes: homepage/startpage  reload

* clean up

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>

* Multipage UI viewer (#4801)

* new ui changes for viewer pages

* fixes postions for debugger and datasources popover

* removes console.log

* Multipage : hide page and unhide page feature (#4803)

* adds: ability to hide pages

* hides pages in viewer

* unhide page

* hide icon

* allow accessing hidden pages from url

* add: duplicate page (#4802)

* add: duplicate page

* do not copy the  same references from the original page

* page name and page handler should be unique for duplicate pages too

* Add support for on-page-load events

* Add icon from page settings menu item

* Convert existing templates to multi-page schema

* error logs for page level and app level errors (#4842)

* Adapt comments feature for multi-pages

* [Bugfix] multipage - page menu interactions (#4844)

* fixes: menu popup interaction

* fixes: on modal input focus, we switch the page

* Adapt multi-player to multi-pages

* Add editingPageId to ymap

* Log self, others and editor props in real-time avatar generation

* Save editing page id to appDef

* Add editingPageId to presence in RealtimeCursors

* adds no results ui for empty search results (#4869)

* page icon updated (#4870)

* fixes:Version switching crashes if the target version does not contain the current page (#4868)

* Remove unnecessary setting of editingPageId on ymap

* Remove unnecessary console.log

* [Bugfix] Multipages: widget inspector event popover unmounts (#4887)

* introduced a local state for events

* cleaned up inspector.jsx

* fixes: table widget inspector event accordion

* Do not run switchPage twice when viewer is loaded

* Preview should open the currently editing page

* Properly place navigation and canvas in viewer

* Update app definition whenever event manager changes are made

* Add support for browser back and forward button in multi-pages

* Rename handleBackButton to handlePageSwitchingBasedOnURLparam

* Add support for cut/copy/paste and clone

* Fix the crash caused by boxShadow

* Add support for background colors in viewer in multi-pages

* Run queries to be run on load on viewer, in multi-pages

* Fix issue that caused inspector popovers to collapse

* resolves workspace vars in viewer mode (#4892)

* Multipage : Navigation for Mobile-ui (#4814)

* refactored to components

* burger menu for mobile ui

* merge conflict fix for hidden pages

* hamburger menu positioned in the header

* viewer header reafctored

* viewer mobile page manu styles

* handles dark theme

* mobile menu with dark mode toggle in the footer

* components are moved to page level, handle for mobile layout

* style fixes

* removing unwanted code block

* dark theme fixes

* style fixes

* fixes: events are sortable (#4895)

* fixes: events are sortable

* Remove uneccesarily repeated call of setEvents in EventManager

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>

* renamed settings to Event handlers (#4898)

* updates the page setting title to Page Events

* temp commit

* Add support for setting max width in percentage

* fixes: paramUpdates for boxes: 🙌🏻

* [Bugfix] Multipage - viewer canvas dark theme (#4897)

* fixes: darktheme bg for viewer canvas

* reverts canvas size

* Fix for inspector bouncing back to previous values

* resolves pages variables in pythong and js transformation (#4905)

* csa support to event manager for pages (#4907)

* Add support for setting canvas width in percentages

* Persist page level variables across page switches

* latest definitions is merged with the current appdef (#4914)

* latest definitions is merged with the current appdef

* mutating the local obj

* cleanup

* iterate through pages for new versions are created

Co-authored-by: Arpit <arpitnath42@gmail.com>
2022-12-08 17:51:09 +05:30
Arpit
657e77f404
camelize the source data and decalize the options (#4720) 2022-11-05 18:42:24 +05:30
Arpit
8c4c7249a8
[Improvements] Table: Adds Support for Server side filtering (#4349)
* init

* adds server side filtering ability

* clean up

* fixes: on clearing filters, the event should triggered with latest update

* fixes: handle multi-filters

* debounce the fireEvent
2022-10-11 09:05:40 +05:30
Kavin Venkatachalam
3a78cf6155
[Feature]: Icon Widget (#3936)
* Created Icon Widget

* Installed tabler icons

* Updated visibility logic for icon widget

* Added doc for icon widget

* Updated hidden field & moved hidden logic to cx

* Dark theme for icon widget & updated visibility

* Moved visibility logic to useEffect

* Updated visibility CSA label

* Removed resolveWidgetFieldValuekey usage in the Icon widget

* Moved register action to useEffect

* Removed registerActions on useEffect

* Add setIconVisibility to dependency array of registerAction

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
2022-09-27 11:18:32 +05:30
Kavin Venkatachalam
7f702c1d6b
[Feature]: Added Localisation (#3746)
* Added localisation

* Closed modal after language selection

* updated transaltaion setup

* Updated language tooltip

* Added fallback language support

* Adding english library resource for translation (#3844)

* Adding English dictionary for the widget lists in the inspector

* added leftSideBar object in en.json and implemented it for leftSidebar icon text

* renamed leftSideBar to leftSidebar and added resources for tip in the left side bar

* added english translation resources for leftsidebar debugger

* added english language resources for the global settings

* added english language resources for data sources in left sidebar

* added english language resources for the share button and share modal in the editor

* added english language resources for release button, manageOrgUsers, appVersionManager

* added english language resources for Queries and Please select a widget to inspect in the editor

* added english language resources for data source list , data source manager, and query manager(partially)

* added english language resources for queryManager, transformation, preview

* added english language resources for dark mode toggle in the headers inside homepage

* added fallback message for dark mode toggle

* added resources for language change in the headers inside homepage

* added resources for notification center in the header inside homepage

* added resources for organization and manage users components in header inside homepage

* added resources in manageGroupPermission

* added resources for manageGroupPermissionsResources component

* added resources for manageSSO and generalSettings components

* added resources for google sso

* added resources for github sso

* added resources for environment variables in manageSSO

* added resources for profile and setting page

* added resources for app card and app card menu

* added resources for folder section and app list in homepage

* added resources for header section in the homepage

* added resources for pagination in homepage

* added resources for modals in the homepage

* added resources for blank page

* added resources for login page

* added resources for forgot password page

* added resources for sign up page

* added resources for onBoarding component

* added resources for reset password page

* deleted duplicate key for readDocumentation

* deleted duplicate key for cancel in en.json and added translation for cancel at few places

* removing duplicate copy of save key in en.json

* added translation for CommentActions.jsx components

* deleted duplicate copy of search key in en.json and added resources for create and search queries , select keys

* fix typo errors

* fixed typo errors

* shorten the key for loginAndSignUpAndForgotPassword to loginSignupPage in en.json file and related files

* shorten the key noLoginMethodsEnabledForThisWorkspace to noLoginMethodsEnabled

* shorten the key pleaseCheckYourEmailForConfirmationLink to emailConfirmLink

* shorten the key dontHaveAccountYet to dontHaveAccount

* shorten keys from loginSignupPage key in en.json

* shorten keys of shareModal nested object in en.json

* shorten the key in appVersionManager nested object

* shorten the keys for queryManager nested object in the en.json

* delete duplicate copy of environmentVar and shorten manageEnvironmentVariables,environmentVariables

* shorten keys in the organization nested object

* shorten keys in the homePage nested object in en.json file

* added inspector and eventManager empty object

* added resources to RedirectSSO component

* added resources for OAuth2

* added resources for TemplateCard.jsx

* added resources for TemplateLibraryModal.jsx

* added resources for ConfirmationPage.jsx

* added resources for ConfirmationPage component

* removed translation in App.jsx file

* added resources for Slack.jsx

* added resources for GoogleSheets.jsx

* added resources for CodeBuilder.jsx

* added resources for CommentBody and CommentFooter

* added resources for TestConnection component

* added resources for AllignButton.jsx

* added resources for Openapi and Stripe components

* added resources for ErrorBoundary

* added resources for Viewer.jsx

* Translation for widgets, table

Co-authored-by: Kavin Venkatachalam <kavin.saratha@gmail.com>

* Commented Language selection

* Fixed typos

* Updated fr.json file

Co-authored-by: Manish Kushare <kushare.manish9@gmail.com>
2022-09-14 13:34:49 +05:30
Erfan Naghashlou
473104e1ff
refactor: remove @babel/plugin-proposal-class-properties (2nd PR after CLA problem) (#3959)
* refactor: remove @babel/plugin-proposal-class-properties as plugin

* Remove class properties plugin from babel.config.js, Update frontend package.json, Update frontend,server,plugin package.lock.json
2022-09-05 22:41:03 +05:30
Gandharv
83c66c55cc
refactor: update sentry sdk + add profiler (#3938) 2022-09-05 16:35:58 +05:30
Gandharv
c324ff8d28
chore: move devDeps to deps in package.json (#3916)
* chore: move devDeps -> deps

* change pos of preview-email import

* fix lint
2022-09-01 11:33:23 +05:30
Aashish Upadhyay
b6b0cf6476
Refactors babel-parser (#3882) 2022-08-30 09:19:49 +05:30
Akshay Sasidharan
1ca800a299 Merge branch 'main' into develop 2022-08-27 22:20:29 +05:30
Navaneeth Pk
98bb7519dd
Reverse proxy using base tag (#3889)
* reverse proxy

* reverse proxy

* Fix for yjs

* Fix for ws

* Fixes org switching

* Fixes org creation

* Fixes login logo

* Fixes download icon

* Construct use invite URL from base URI

* Fixes apiUrl if sub path is set

* Remove commented code

* Fix profile link

* invitation url changes

* Fixes dev env

* Use url-join lib to connect urls for goto app and invitation link

* Use useHistory instead of helper to get history for template modal

* Review changes

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
2022-08-27 21:58:24 +05:30
Arpit
c259bf487f
[improvement] handle xlsx parsing for filepicker (#3842)
* featureL handle xlsx parsing for filepicker

* support for xlsx file
2022-08-24 15:44:29 +05:30
Gandharv
00570c216e
fix: heroku build (#3798) 2022-08-18 13:35:42 +05:30
Gandharv
42935b9f68
Optimize webpack bundle output (#3785)
* webpack: split vendor (node_modules) chunk

* perf: add compression

* compression-webpack-plugin devdeps -> deps

* feat: use eslint as bundler

* undo
2022-08-16 12:36:47 +05:30
honoru
9f69f57690
table-datepicker timezone function added (#3724)
* 1. Add moment-timezone
2.table-datepicker timezone function added

* Add missing variable

* Rename "Timezone value" to "Parse in timezone"

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
2022-08-08 16:32:13 +05:30
Kavin Venkatachalam
3932d72d64
[Feature]: Tree Select Widget (#3533)
* Added Tree Select widget

* Updated checkbox-tree package path

* Added checked-path array

* Added checkedpathArray

* Updated docs

* Updated theme file

* Added default values to exposed variables
2022-08-03 19:22:49 +05:30
Kavin Venkatachalam
df11f4b1f6
[Feature]: Area Selection on Drag (#3665)
* Added area selection

* Disable selection while dragging widgets inside subcontainer

* cleanup area selection
2022-08-02 13:36:48 +05:30
Sherfin Shamsudeen
bc93818621
Feature/component property validation (#2782)
* Initial architecture for component property validation

* Coerce to default and log invalid properties

* eslint rule:frontend for  specifying the path to the  @types/

* removes comment for eslint-disable-next-line

* reverts 27946f1 & adding a temporary fix

* Remove incorrect property validations

* Avoid race condiiton in setting state for error logs

* Fix issue where only one error got logged

* Flush out any errors that are logged

* Remove unnecessary console.log

* Add validations for Table properties

* Add support for multiple validations

* Add validation for chart component

* Add validation for modal

* Set default value common to all validation schemas for component properties

* Add validations for password widget

* Add validations for datepicker

* Add information about default value on validation error message

* Remove unwanted console.log

* Do not validate properties on Viewer

* Use meta information from widget config instead of component state to validate

* Do not coerce to default values while validating

* Do not validate existing components

* Update package-lock.json in sync with develop

* Add validation for general properties

* Add support for size validation of component properties and styles

* Add support for min and max spec in size validation

* Support pattern validation for string properties

* Make size validation specifiable along with type specification

* Component validation optimizations

* Remove unnecessary comments

* Remove unnecessary default value param from validation

* Fixed visibility style validation bug

* Added custom validation to PDF & Custom component

* property/style validation statistics

* values changed to string

* validation button group widget

* bugfix

* Added property validation to timeline widget

* Added visibility prop validation to timeline widget

* steps property/style validation

* svg component property validation

* component property validation numberinput

* bugfix

* validation textarea

* validation vertical divider

* property validation html widget

* validation :: checkbox

* image property validation

* validation :: rangeslider widget

* validation :: circular progress bar

* validation spinner

* added props and style validation

* tags validation

* validation :: pagination

* timer :: validation

* validation :: toggle

* validation :: divider

* validation :: radiobutton

* added props and style validation

* validation:: iframe

* validation :: password input

* validation:: code editor

* validation :: listview

* validation :: star rating

* validation :: modal

* validation :: qrscanner

* validation :: datepicker

* multiselect :: validation

* added union validation for border radius

* added props and style validation

* added props and styles validation

* added props and styles validations

* added props and styles validations

* added props and style validations

* added props and styles validations

* added prop and style validations

* added props and styles validations

* Added ID validation to steps widget

* Removed default value

* Added validation key to SVG widget

* Removed default value

* table validations

* table validations

* removing default value

* removing defaultval

* removing default val

* removing default val

* padding validation update

* updating number validation

* updatin number validation

* validation updates

* border validation

* border radius validation

* number input validation

* validation updates

* border radius validation

* validation update

* Updated misspelled schema text

* Updated Tabs validation schema

* Updated tooltip element schema

* Updated validation for multi select

* Updated validation for dropdown

* Updated validation for text widget

* Rectified mispelled validation

* Fixed : validation not working for format

* Added Array validation to chart widget

* format prop bug fix

* draft complete :: table validation

* Fixed misspelled text

* Don't validate properties that are not defined on widgetConfig

Co-authored-by: arpitnath <arpitnath42@gmail.com>
Co-authored-by: Kavin Venkatachalam <kavin.saratha@gmail.com>
Co-authored-by: stepinfwd <stepinfwd@gmail.com>
Co-authored-by: manishkushare <kushare.manish9@gmail.com>
Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>
2022-07-19 18:51:45 +05:30
Arpit
b48fd53ec2
[Feature] Kanban board widget (#3049)
* init kanban board widget

* kanban board

* reverts to beautifully

* kanban UI updates and dnd fixes

* bugfix: when dropped outside the col, should return back to it inital position

* updates min-width of the column

* container and widget styles

* style fixes: column container onDrag

* adds button for new group

* fixes new card overflow

* add btn for adding cards

* groups and cards updated

* add property definition

* improves draggable card position while drag is active

* handle delete group/col

* handle col/group title updates

* handles editing card title

* style fixes for input cursor

* cleanup

* card popover with codehinter fields

* minor card fixes

* updates exposed variable

* simplify boardData into cols and cards

* adds width and min-width style definations

* build board from queries

* handle draggable rbd-id

* removes add group card and delete group option

* fixes typos

* show empty state message

* fixes typos

* removes card extra border color

* fixes column typi and cards updates issue

* adds enableAddCard property defination

* adds accent color options

* default style accent color

* accent color fix

* revets popover with hinter

* fixes card drag and drop

* removes hook

* fixes: state synced with property defination updates(col and cards data)

* fixes: on re-arranging the card via dnd, update the card content

* handles if card columnId is updated

* adds card container layer

* clean up

* dark theme

* fixes card onDrop issue

* renamed the exposed variable data --> lists

* adds custom resolvers to the popover

* handle widget crash when non iterables are passed

* updates default card and col value

* fixes dnd issues for dynamic card values

* refactor: cleanup

* handles empty and undefined cardData

* fixes Height of widget is changing when popover thing is displayed.

* fixes: updating card data in widget inspector

* fixes: updating column data in widget inspector

* fixes adding cards for newly created groups/columns

* clean up

* Add kanban event onCardAdded and expose lastAddedCard

* Add onCardRemoved action and expsed lastRemovedCard variable

* Add events and variables for card movement and selection

* Add card edit feature for kanban widget

* Rename lastAddedRemoved to lastRemovedCard in kanban

* Rename lists to columns on kanban board

* Set max height of kanban column to respond to widget height

* Have "Add description" link if there is no description for Kanban cards

* kanban docs

* Change text from "add +" to "Add card" on kanban

* Validate card data before update

* Add tip about card id type on kanban documentation

* Add default min width and width for kanban

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
Co-authored-by: Shubhendra <withshubh@gmail.com>
2022-06-14 11:06:36 +05:30
Gandharv
292673aa67
fix: re-render when cursor hovered on canvas (#3210)
* fix: re-render when cursor hovered on canvas

* rename

* remove redundant check

* add app_id as yjs docname
2022-06-09 15:36:11 +05:30
Kiran Ashok
e0e8b6f50b
Feature :: Image widget enhancements (#3007)
* adding loadingstate and object fit style

* adding zoom functionality

* pan image function

* fixing pan for image

* pan and drag fix image

* library install

* pr changes:: hover button , object fit made dropdown

* fix for old apps

* updated docs
2022-05-16 14:40:44 +05:30
Kavin Venkatachalam
b16a74dcf1
[Feature]: PDF Widget (#3035)
* Created PDF Widget

* Added color to page number to support dark mode
2022-05-11 18:51:10 +05:30
Kavin Venkatachalam
7c30a830db
[Feature]: Custom Component Widget (#2960)
* Created custom component widget

* Updated the custom component key

* Added doc for custom component

* Update iframe.html

* Installed HTML parse in dependencies

* Updated script source

* Added scripts to CSP

* Added Skypack to CSP

* Fixed Run Query issue in Viewer
2022-05-10 15:09:09 +05:30
Muhsin Shah C P
dcee0885d6
Feature: OpenApi import plugin (#2728)
* Initialized OpenApi plugin

* Added definition field to manifest file

* Added an openapi parser

* Implemented JSON/YAML resolver
- Removed swagger parser lib
- Added a field for choosing definition format type
- Implemented a resolver for resolving $ref

* Implemented a basic operations drop down from spec paths

* Added params and body ui

* Now, can view general parameters and servers

* Added an option to override general params
- Resolved a bug

* Implemented basic openapi plugin
- Added got lib
- Tested basic queries

* Added one more method

* Resolved a common bug

* Working on Parsing definition from datasource modal
- Created new form component for openapi
- Populated select array from security array

* Added ui for authentication

* Added bearer & basic plugin code

* Resolved some ui issues of Apikeys auth option

* Added apikey auth

* Resolved an issue
- Also replaced validate btn with auto validation
- Now spec will be added to db from data-source modal

* Added error text to show validation error

* Now spec will load from props for query manager

* Added some padding to operation description

* Added ui for openapi oauth2 auth

* Implemented oauth2

* Fixed a state issue with a temporary hack

* Now we can show multiple same auth types

* added the icon

* Resolved a bug & improved multiple apikeys process

* Resolved some realtime parsing error

* Resolved a bug from options fn

* Resolved PR changes

* Updated documentation with brief details about the open API plugin

* Removed unwanted package

* Changed if-else to switch

* Code changes

* added setLoadingSpec fn to catch section

* Solved typos and error in doc

* Resolved dropdown issue

* Resolved a bug

* updated openapi icon
2022-04-26 14:14:12 +05:30
Gandharv
40420ee591
feat: Add realtime collaboration (#2517)
* feat: add realtime collaboration

* reduce delay in debounce

* feat: add realtime cursors

* feat: add realtime avatars

* add current user to the online users list

* add border color to the avatar

* feat: allow multi user to edit multi-versions simultaneously

* add getOne fn for fetching single api + avatar component

* fix: set appDef from api call

* replace webrtc with ws

* move yjs to separate port (temp)

* run on same port

* fix: update ymap when styles have changed

* - Add static list of colors
- Show the username on hover

* fix: cursors not showing up

* fix: review comments

* remove unused vars

* add new cursor style

* - Run yjs connection on a different path
- Add zindex to cursor such that query editor has precedence

* fix: event emitter bug + position bug

* use shorthand

* cursor style changes

* fix cursor positions

* inc zindex

* change max avatars to 3
2022-04-19 16:07:39 +05:30
Muhsin Shah C P
f0ed2764fd
Feature: port multi select to react select lib (#2551)
* Ported multi-select to react-select lib

* Changed some values

* working on all option select / unselect feature

* All clear event

* Changed exposed values

* Resolved some ui issues
- Changed values height to a fixed size
- Fixed close btn alignment

* Removed 'All' option from selected values section

* Changed some paddings and sizes

* Resolved scroll and label width problem

* Adjusted some margin

* Removed scrolling from container
- scroll only values

* Hide scrollbar

* Resolved indicators alignment

* updated multiselect with searchable select

* Use only multiselect with checkboxes

* Alignment fix for multiselect dropdown

* Make multiselect dropdown adjust according to height

* Add custom rendered for multiselect options

Co-authored-by: stepinfwd <stepinfwd@gmail.com>
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
2022-03-30 14:51:22 +05:30
Manish Kushare
7c6f8dae74
Adding react-datepicker library instead of react-datetime library in datepicker widget (#2619)
* initial commit

* made datepicker functional

* update date format

* made border-radius and adjusting width and height of the input element to the datepicker container functional

* add year and month selection  dropdown & upon enableDate false, only showing time selection

* changed dropdown year display

* adjusted width of the datepicker widget

* added React.forwardRef inside ExampleCustomInput function

* Show month dropdown on mode select for datepicker

* Slight refactoring

* Display default date on load of DatePicker widget

* Apply brand colors for date picker

Co-authored-by: arpitnath <arpitnath42@gmail.com>
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
2022-03-29 14:51:58 +05:30
Muhsin Shah C P
54562bfa05
Json preview of query pane is slowing down the app (#2434)
* Working on json preview

* Added new json preview lib

* Changed theme background
2022-03-08 14:57:28 +05:30
Muhsin Shah C P
72ca2f5868
Feature/range slider widget (#1919)
* Implemented range slider

* Removed unwanted files and code

* Changed min and max type to number

* Added an icon
2022-03-08 10:02:56 +05:30
Gandharv
184876c913
[tests] add pagination tests (#2417)
* test: add pagination tests

* redo
2022-03-04 07:58:59 +05:30
Maurits Lourens
fb2377c034
Feature: upgrade to webpack-dev-server 4 (#2335)
* upgrade to webpack-dev-server 4

* fix lint issue
2022-02-25 06:55:13 +05:30
Gandharv
f2b0b880f1
Test: add app-util test setup (#2326) 2022-02-23 09:48:05 +05:30
Muhsin Shah C P
2347b1f9e0
Added a spinner to show before rendering template images (#2206)
* Added a spinner for show before rendering template images

* Spinner with another lazyload lib

* Added additional property to track img changes

* Changed lazyload with spinner to a reusable component
2022-02-11 07:07:46 +05:30
Gandharv
87f385d727
Chore: update sentry sdk to 6.17.6 (#2220) 2022-02-10 14:30:43 +05:30
Navaneeth Pk
b1a9af0f2c
Adds guided walkthrough for new users (#2086)
* Adds walkthrough

* Fixes

* Added a condition for walkthrough

* Changed popup design

* Now walkthough only show after first version is created

* cleaning code

* Minor fixes

Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
2022-02-05 07:34:02 +05:30
Gandharv
a22de0b358
Remove react scripts (#1928)
* remove react-scripts

* pkg lock

* add babel runtime

* add loaders

* add babel-eslint
2022-01-27 20:59:07 +05:30
Gandharv
759a800228
Removes unused cypress directory (#1924) 2022-01-24 17:27:04 +05:30
Muhsin Shah C P
0f709706e0
Feature: Circular progressbar (#1887)
* added circular progressbar widget

* added a basic documentation about the widget

* added progress attribute

* bounding issue is solved

* edited the widget doc

* Added new style
- Text color
- Text size

* Changed the documentation
2022-01-22 09:32:37 +05:30
Gandharv
2f3b441c0a
Move plugins to root (#1728)
* feat: move plugins to root

* modify tsconfig

* add .gitignore

* delete old plugins file

* add parcel

* docker compose volume mount

* add gcs

* add typescript to plugins folder

* gcs to ts

* add dynamodb

* add elastic search

* add firestore

* add gsheets

* add graphql

* add mongodb

* mssql

* add mysql

* add postgresql

* add redis

* add s3

* add slack

* add stripe

* remove plugin related packages from pkgjson

* add lib folder

* add gitignore

* remove typescript generated files

* remove generated file

* remove generated files

* add twilio

* add dist to docker compose cache binding

* add dist prefix

* cleanup - 1

* delete dist

* rename to index.ts + add jest config

* add it.todo in tests

* test fixes

* test file changes

* fix type checks

* add @tooljet/plugins to server package json

* esm vs commonjs bug, reduce got to 11.8.2 from 12.0.0

* docker file npm package version fix

* add typesense

* cleaup - 2

* add sendgrid

* add lerna build and clean script for all packages + tsconfig

* cleanup -3

* add plugins build step

* add missing plugins build step in npm run build

* add mssql, mysql & postgres as singleton classes

* add db connection to cache only if datasourceId is available

* client: add data source schema/manifest files

* add query operations files

* logic for wrapping form with schema

* add script to create index file

* add @tooljet/plugins to frontend folder

* cleanup 1 -frontend

* cleanup - 2 // frontend // data queries

* add client and index to gitignore

* update gitignore

* fix lint & test

* update ci

* fix unit, e2e

* cleanup -3

* fix test

* fix tests

* fix indent

* try npm ci

* fix tests

* fix typo

* fix

* rename file for server entry

* heroku fix

* add main and types entry points in pkg json

* move common to root

* cleanup - 4: remove redundant $ sign prefix

* cleanup - 4: remove redundant $ sign prefix

* update options in-sync before DOM is painted

* change type cloud to cloud storage

* update readme

* update ci.yml

* update ci yml

* add pkg-lock.json

* rename index.ts to server.ts

* update lock files

* add server package.lock

* remove unused import

* revert commit: add minio

* add root dep

* import server.ts

* remove plugins build step

* add npm shrinkwrap

* update version - plugins

* add new version - 0.0.8

* upgrade version

* move to symlinked package

* add lock file

* feat: add icon inside package

* add plugin creation docs

* Remove seed

* move icons to plugins folder

* install pg dep

* add react to packages

* add seed cmd

* revert change

* add plugins build in lint, e2e, unit

* e2e, lint use npm ci

* update dockerfile for plugins

* try combining release with web

* limit memory on release

* try executing seed script post transpile

* try executing seed from server directory

* update seed execution

* add minio

* add correct type

* add minio to pkg json

* remove old file

* fix provider key

* add python installable + npm ^7.2.0 (#1752)

* add python installable + npm ^7.2.0

* add py to prod file

* pin npm version to 7.20.0

* pin npm version to 7.20.0

* split into multi stage build and remove python for buildx

* copy plugins from buider stage

* update dependencies

* add freetds dependency

* update server dockerfile

* update client dockerfile

* update dev dockerfile and compose file

* fix entrypoint

* fix server dev dockerfile

* update docker-compose

* remove npm install on root dir on docker build

* fix heroku script

* make lerna prod dependency to enable prod builds

* remove redundant env setup

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: navaneeth <navaneethpk@outlook.com>
2022-01-17 12:38:17 +05:30
Sherfin Shamsudeen
b9676d6e3a Merge branch 'main' into develop 2022-01-05 14:19:33 +05:30
Sherfin Shamsudeen
f416af3563
Bugfix/switch to react select (#1723)
* [Chore] eslint fixes (#1704)

* lint fixes

* fixes lint errors

* Use react-select library for dropdown

* Support search event and loading state on dropdown

* Apply brand color to dropdown

* Apply brand coloring to dropdown options

* Remove unnecessary code

* Fix unnecessary firing of onSearchTextChange on dropdown

* Display blank on dropdown if value is undefined

* Fix bug that caused dropdown disable to not work

* If values passed to dropdown are not array, make it array

* Grey out dropdown text for disabled dropdown

Co-authored-by: Arpit <arpitnath42@gmail.com>
2022-01-05 11:32:52 +05:30
Muhsin Shah C P
af178f59b4
completely replaced react-toastify with react-hot-toast (#1713) 2022-01-03 09:22:41 +05:30
Gandharv
6c90a1667b
Feature: undo/redo for canvas 🔥 (#1446)
* feat: add restore shortcut when component is deleted

* change toast messages to hot toast from toastify

* change toast messages to hot toast from toastify

* change toast messages to hot toast from toastify

* on key press match clear the pressed keys

* add react hotkeys hook and delete use-shortcuts custom hook

* change toast messages to hot toast from toastify

* add immer lib

* applyPatches from immer + add undo redo on appdefination changes

* remove notification on undo

* add can-undo + can-redo checks

* add missing can-redo to handlePatchAdd

* add component versioning on componentDefinitionChanged

* set default value of loading state to interpolated boolean false for table

* set canUndo on initial load to false

* fix last element not getting removed on undo

* Remove console log

* add migration to change loadingState for existing tables

* set loadingstate value based on the previous value

* fix: app crash on inspector opening

* add check for selectedComponentId inside components def

* update template definitions for loadingState

* fix alert for success, error, info for button notifications
2021-12-11 04:41:24 +05:30
Navaneeth Pk
3477f7ff15
Support for running JavaScript as a query ( client-side execution ) (#1507)
* Custom js feature

* Disable transformations

* Fix

* Fix

* Fix

* Icon

* Rename variable OthetSources to OtherSources

* Fix

* Fix

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
2021-12-08 13:03:08 +05:30
Sherfin Shamsudeen
d88139d5b7
Feature/merge google sso to community edition (#1420)
* SSO 🔥 (#2)

* Add rough implementation of google SSO

* Use env variables for storing Google Oauth client id

* Set organization user to active when a new user is created via sso

This commit also fetches first name and last name from the payload
received from google.
Also adds some refactoring.

* Apply proper styles to google login button

* Refactor oauth controller

* Move google specific logic to a separate service

* Fail sign-in if google could not verify idToken

* Refactoring update for GoogleOAuthService

* Change env variable name for google sso client id

* Show Google sign-in button only if client id env variable is given

* Add SSO_GOOGLE_OAUTH2_CLIENT_ID to app.json

* Whitelist apis.google.com in CSP

* Add accounts.google.com to CSP

* Add documentation for Google SSO

* Add e2e tests for Google SSO

* Resolve minor linting issues

* Avoid use of raw query in migration for SSO ID

This commit also adds an index for SSO ID

* Verify domain of user's email id for single sign on

* Add documentation for RESTRICTED_DOMAIN env variable in SSO

* Move SSO controllers and services to ee folder

* Move GoogleLoginButton to ee folder

* Test the restricted domain verification for Google SSO

* Remove unnecessary console.log

* Apply better styles to Sign in with google button

* Remove documentation for Google SSO

This will be added to the community edition repo

* Remove unnecessary static images

* Fetch Google OAuth2 client id from server instead of client env (#3)

* Check for existing email when signing in via SSO (#4)

* hotfix oauth service return type

* hotfix sso user creation

* Allow disabling sign-up via SSO (#5)

* hotfix file input change on import/export

* Align SSO button on login box center (#6)

* Fix: group permission not being set on sso (#7)

* fixes group permission not being set on sso

* update specs for sso

* lint fix

* add user id on login response

* decamelize keys on login response

* fix specs

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: navaneeth <navaneethpk@outlook.com>
2021-11-17 16:51:50 +05:30
Sherfin Shamsudeen
8bbbbfc869
Feature: Calendar widget 🗓 (#1368)
* Insert required boilerplate code for Calendar widget

* Display basic calendar

* Display events on calendar widget

* Pass JS date object as calendar default event date

* Add resource scheduling to Calendar widget

* Add icon for Calendar widget

* Allow configuration of views and default view for calendar

* Add onEventSelect event to Calendar widget

* Accept date as string for Calendar

* Option to disable/enable toolbar in Calendar

* Add default date to Calendar

* Add support for setting color of calendar events

* Set calendar cell size to 50px

* Allow spacious and compact cell sizes for Calendar

* Add support for "select slots" event for calendar

* Add support for custom event tooltip for Calendar

* Add support to not highlight today and now in Calendar

* Add visible border for Calendar events

* Set 14px font size for calendar toolbar

* Add dark mode styles for calendar

* Make calendar view mode controllable with logic

* Add documentation for calendar widget

* Add additional documentation for calendar events

* Expose default view instead of view for calendar

* Add documentation for changes in calendar

* Style updates to calendar

* Increase padding for calendar events
2021-11-04 14:23:50 +05:30
Arpit
a6f99f6fba
Feature: File Picker Widget (#1274)
* File Picker Widget inital commit

* Merged develop

* add file picker icon

* dropzone

* added file picker widget

* does notrequires* babel-import

* fixed styles and removed button to open file selector

* updatedbthe fle picker icon

* style fixes

* added event: onFileSelected

* seperated the concerns and made it more flexible

* fixed handling file types for the picker

* handle - file reject

* file picker description

* text color updates

* Reads contents of the file as a text string

* display list of accepted files

* filepicker docs

* read multiple files-fixed

* style fixes

* added filepicker gif for docs

* typo fixed: docs

* selected files should be inside the widget bound & clear button to clear the selected files

* remove btn for files and selected files should always remain inside the widget bound

* display files bg style and multi-files resolved

* fixed typos
2021-11-04 11:11:10 +05:30
Gandharv
22bce1f4fb
Feature: Collaboration ( realtime comments for canvas ) 🔥 (#810)
* feat: initial commit for collaboration feature

* add dnd to comments

* add positions endpoint

* feat: encapsulate all http common logic in http-client

* segregate sections and transfer responsibility of state

* feat: use-spring to add fade effect 

* fix: open in right

* fix: left-right position css

* add footer for message

* integrate getcomment endpoint

* use fromnow for date ago

* add dnd

* - Add data trasfer object for comment
- Add class-validator package to check the response type from client
- Add comment repository class for persistance layer
- Add comment service with std. http methods
- Update controller with all http methods
- Update comment module
- Fix http-client bug when error is thrown

* fix http client bug when error is thrown

* feat: add entity thread

* feat: add migrations for thread and comment

* update entitites

* add tid to migration

* filter comments by tid(thread_id)

* fix: comment migration, add missing column comment

* feat: integrate in ui

* feat: split comments based on app_id

* fix: dnd to correct position

* package json engines

* engines update

* update npm

* npm 6 to 7

* fix: add user initials to thread

* fix: add firtname lastname to the comments

* - Return user object when save thread called
- Hide password field from user response
- Fix created_at date typo
- Instead of fetch all threads on new thread added, add the response to array of existing threads

* feat: update ui components

* change icon on comments view

* ui fixes

* fix: close icon close the popover

* temp: comment select: false

* use currentUser from localStorage

* fix: on click outside if comment is open, dont hit addThread

* fix: auth token issue in http-client

* on drag hide the comment if open

* add jwt auth

* spec: add test for comment & thread

* cleanup: remove console.log

* feat: add comment actions

* feat: add edit, delete, resolve options

* feat: add mentions component

* feat: add nestjs websockets

* temp

* websocket: establish client-server communication

* ws: add message listner to comments module in ui

* feat: add broadcast method to broadcast new events to all clients 💣

* ws: cleanup 🤙

* fix: remove max height from comment actions

* feat: add user mentions, emoji support

* fix: add static list of users - temp

* update and delete iterations

* - Rename comment, thread to comments, threads
- Add conditional actions
  - Show edit, delete only if he is comment owner
  - Show resolve only if he is thread owner

* reset engines

* move svgr webpack to deps

* fix: ui issues

* remove log stmt

* refactor: move resolved icon to comment-header

* feat: allow comments to be added on top of widgets

* feat: add keyboard shortcut

* scroll to bottom on comment add

* ui fixes

* feat: add react toast for notification display

* feat: add comment badge

* fix: ws connection

* fix: ws

* remove rvrse

* feat: add comment sidebar

* feat: add comment right sidebar

* fix: add missing foreign key elements

* - upgrade typeorm to 0.2.38
- comment sidebar ui
- added filter ui

* feat: on click of right sidebar notificaiton open the comment box

* reset engines

* fix: add organization id to the comment and thread module

* fix: add current version id

* add currentversion id

* disable comments if no id present

* temp:checking for heroku deploy

* fetch app on edit and deploy version

* rename current_version_id to app_versions_id

* ui fixes

* show mentioned user in blue color

* add ui changes

* add authorization for create thread

* change color to blue on click of comment, add auth for other endpoints of thread

* update threads, notifications using socket

* add auth for comments

* remove events spec file

* fix duplicate key error

* fix notificaitons updation on edit, delete, resolve buttons clicked

* update notifications for edit

* feature toggle changes for frontend

* add check for comments server

* add emoji mart package for emoji

* add reply count in comment sidebar

* subtract 1 from count in comment sidebar

* change empty text when no comments available
2021-11-01 12:58:03 +05:30
Arpit
777a7bcdee
Updates NPM package.json script for webpack-dev-server (#917)
* updates NPM package.json script for webpack-dev-server

* open flag removed

* Revert "open flag removed"

This reverts commit f53d4f793a.

* open flag removed
2021-10-06 21:14:31 +05:30
Navaneeth Pk
5dd7cf802e
Update webpack dependencies (#889) 2021-10-05 23:18:21 +05:30
febinsathar
4fae0f979f
migrated webpack v4 to v5 (#873)
* migrated wbpack v4 to v5

* updated to npm 7

Co-authored-by: Febin Sathar <febin.sathar@INKACTXM249.local>
2021-10-02 11:22:02 +05:30
Gandharv
ec4fc4e582
Fixes striped table when element selected is text/dropdown/multiselect/editable/datepicker (#740)
* fix: striped table when element selected is text

* fix: when column type is dropdown fix ui

* fix: when category-type is multiselect

* fix: make overflow-x scroll so that more radio buttons can fit

* fix: when column is editable fix styles

* add text styles: additional

* fix: datepicker + striped table

* multicursor trick if to switch - witchcraft

* fix: add array check in tags component

* fix: action  buttons

* merge badge and badges case

* change overflow x to initial - temporary

* fix conflict

* add padding left, right

* Update frontend/src/Editor/Components/Table/Table.jsx

Co-authored-by: Sherfin Shamsudeen <sherfin@tooljet.io>

* increase min height from 35 -> 55

Co-authored-by: Sherfin Shamsudeen <sherfin@tooljet.io>
2021-09-27 18:27:06 +05:30
Gandharv
0a81065748
Remove unused npm package resizable (#812)
* remove unused package

* remove unused package
2021-09-22 11:57:24 +05:30
Arpit
26c9cc655c
Fix linting errors across the app (#785)
* eslint-setup: rules for frontend and server

* setup pre-commit:hook

* frontend:eslint fixes

* frontend eslint errors and warning fixed

* eslint:fix for ./server

* fix server/test: expectatin string lint/error

* pre-commit:updated

* removed unwanted install cmd from docker file

* recommended settings and extension for vscode

* husky prepare script added

* updated extension recommendations

* added prettier as recommended extension

* added pre-commit to package.json

* remove .prettierrc file

* resolve changes

* resolve changes
2021-09-21 19:18:28 +05:30
Gandharv
f69b56e07e
move babel-plugin-import to dependancies (#771) 2021-09-17 14:22:27 +05:30
Gandharv
a03a575199
Adds console source babel plugin (#761) 2021-09-15 21:43:20 +05:30
Gandharv
7b00423096
Adds tree shaking for lodash (#706) 2021-09-15 21:22:53 +05:30
Akshay
f4af291b6f
Chore: Application monitoring support with sentry (#702)
* setup sentry for server

* setup sentry for client

* update docs for sentry dns

* explicitly specify apm vendor

* add module for sentry

* revise directory struct and make sentry debuggable

* setup csp and trace headers for sentry

* whitelist csp for all sentry urls

* change senrty error sample rate to 50%

* make sentry send all errors from backend
2021-09-09 22:14:34 +05:30
Gandharv
45ec8a83e5
Chore: remove unused package (#698)
This PR removes an unused dev dependancy
2021-09-07 11:07:00 +05:30
Gandharv
64131825d9
Feature: Star rating widget ️ (#535)
* feat: add star rating widget

* add events, properties

* add the number of stars as variable

* fix animation

* add half star logic, properties, definations

* add hover index property

* on dismiss show star outline

* show tooltip on hover + fix half icon display on click

* make text inline

* feat: add import svg as react component

* update star rating component for managing color change

* fix: conflicts

* Delete half-star.svg

* Delete star.svg

* change default color to gold

* fix widget settings events

* add default selection of stars

* change default selection to 5

* css changes

* add star rating onchange fix
2021-08-25 20:44:55 +05:30
Arpit Nath
1fdd9eb765
fixes react-table duplicate column keys (#538)
* fixes react-table duplicate column keys

* uuid for column id

Co-authored-by: Arpit Nath <arpitnath@Arpits-MacBook-Pro.local>
2021-08-19 10:32:46 +05:30
Sherfin Shamsudeen
a53cac24b2
Feature: QR scanner widget (#519)
* Add QR code scanner widget

This commit adds QR code scanner widget which
  * Displays a viewfinder that can be activated or deactivated
  * Exposes a variable named lastDetectedValue which holds the
    data contained in the last QR code it was able to scan
  * Defines an event onDetect which is fired whenever a QR code
    is successfully scanned

* Add documentation for QR scanner widget

* Supply missing newline

* Supply missing newline for qrscanner.svg

* Supply missing newlines and semicolons

* Update error modal content

* Remove `active` property from QrScanner

* Add blob: to content security policy

* Disable content security policy

* Add content security policy that allows self, unsafe-eval and blob
2021-08-18 22:15:43 +05:30
Gandharv
6837104171
Feature: redesign left sidebar 🎉 (#512)
* feat: add left sidebar new ui ❇️

* new: add svg spring motion dark mode icons

* - add tooltip
- reduce icon size to 20px h&w
- fix indentation

* remove logs

* fix: typo

* fix: on click of arrow the ref was not captured, react repo has reference to this issue at : https://github.com/facebook/react/issues/20325

* css fixes

* color changes for moon icon

* revert css'

* fix back button not working due to incorrect clean up function

* feat: add use-router hook component

* - make sun svg have a white circle inside
- fix the alignment of darkmode toggle on homepage

* fix: pkg lock after fresh install with 7.20.x
2021-08-17 11:31:12 +05:30
navaneeth
ac77059ae8 Use semver to match installed and latest versions 2021-08-10 12:11:51 +05:30
Mohini Dahiya
3052ad41e7
Cypress tests for Editor (#439)
* Cypress tests for Editor

1. Test Navigation Bar elements

* Updated ManageAppUsers.jsx

Removed space from Share text

* update clipboardy package location

moved dependency from root to frontend package.json file

* restored root package.json file

removed clipboardy dependencies.
2021-08-03 10:34:48 +05:30
navaneeth
e3e8674b63 Fix production npm dependencies 2021-07-01 20:48:11 +05:30
navaneeth
6ac868d6b5 Fix webpack issue on EC2 2021-07-01 15:05:30 +05:30
navaneeth
672787356a React performance improvement - smaller bundle size 🎉 2021-06-05 20:34:27 +05:30
Navaneeth Pk
725a52b440
Build react app as part of Heroku 1-click deployment (#181)
* heroku

* testing

* Fixes

* fixes

* Fixes

* Fix

* Fix

* Fix

* ff

* ff

* fix

* fix

* Fix

* fix

* Fix

* f

* f

* fix

* Fix

* renamed

* renamed

* Fix

* Fix

* fix

* some fixes

* fix
2021-06-05 13:29:23 +05:30
navaneeth
334fbe0bad Configured cypress to use webpack-dev-server 2021-06-05 09:25:28 +05:30
navaneeth
57df0122e9 Setup cypress for testing the react app 2021-06-04 21:49:12 +05:30
navaneeth
e15f159af7 Dynamic darker hover color for button widget 2021-05-31 09:27:54 +05:30
navaneeth
6bf64aa39b Should be possible to resize in all directions 2021-05-26 10:49:05 +05:30
navaneeth
49edc3cc92 Feature: Maps widget 2021-05-16 10:56:31 +05:30
navaneeth
f59a5dd618 Feature: Chart widget using plotly 🎉 2021-05-15 18:11:57 +05:30
navaneeth
cb58164d91 Feature: Lazy load images 2021-05-07 16:55:20 +05:30
navaneeth
010fb8420d Use DraftJS for rich text editor instead of ckeditor 2021-05-02 11:12:19 +05:30
navaneeth
4c873d11a8 Setup husky and lint-staged 2021-04-30 15:40:48 +05:30
Navaneeth Pk
8b481ae9f4
ESLint fixes (#138)
* ESLint fixes

* Eslinted
2021-04-30 13:40:57 +05:30
navaneeth
7a3e87bea0 ESLint config and a few fixes 2021-04-30 11:44:03 +05:30
navaneeth
3c20814763 Setup docker-compose for local development 2021-04-29 15:29:25 +05:30
navaneeth
8b94d3cfe6 Setup fuse.js search and _ debounce for code builder 2021-04-26 15:07:00 +05:30
navaneeth
3be1f980f2 Setup react-tooltip, added tooltips for icons 2021-04-25 18:32:44 +05:30
navaneeth
bfe6a58d8a Feature: Download table as CSV 2021-04-25 10:44:54 +05:30
navaneeth
2ea0cad371 Use loadash to update nested table data 2021-04-25 00:27:18 +05:30
navaneeth
370b9c5d9c Component: Date range picker 2021-04-12 19:45:30 +05:30
navaneeth
3700e142c4 Component: Date picker 2021-04-12 19:36:54 +05:30
navaneeth
5c53ba98bd Feature: Rich text editor 2021-04-11 17:53:32 +05:30
navaneeth
900302f549 Feature: Resize components using visual editor 2021-04-09 15:09:28 +05:30
navaneeth
d53393b73c Add react-table package 2021-04-09 08:32:30 +05:30
navaneeth
099637ff5f Feature: Loading state for queries & prop for table 2021-04-08 20:49:18 +05:30
navaneeth
8f846e2501 Searchable select component for open API paths 2021-04-08 19:27:24 +05:30
navaneeth
ad50b339cb OpenAPI editor for stripe - initial version 2021-04-08 11:53:39 +05:30
navaneeth
f77803f8d1 Feature: Custom columns for tables 2021-04-05 10:18:58 +05:30