Commit graph

305 commits

Author SHA1 Message Date
kriks7iitk
1994ca651b fixed for admin setup 2024-06-13 10:47:18 +05:30
kriks7iitk
2e22a59462 fixed for resource function 2024-06-12 14:29:53 +05:30
kriks7iitk
0af5f94180 merged latest 2024-06-11 11:48:12 +05:30
kriks7iitk
6acd403e2b Adding user group permissions ability factory 2024-06-10 16:27:55 +05:30
kriks7iitk
8abb5dfa56 Merge branch 'revamp/users-and-groups-frontend' of github.com:ToolJet/ToolJet into group-revamp-2 2024-05-30 05:49:52 +05:30
kriks7iitk
826293b0f8 Added response type for getAll Users 2024-05-29 11:28:14 +05:30
kriks7iitk
7b2d637374 revamp casl and permission module 2024-05-29 05:16:46 +05:30
kriks7iitk
a3d3dfb16f completed group permission service 2024-05-23 15:08:09 +05:30
kriks7iitk
525404c4a4 Add granular permissions api 2024-05-20 22:57:23 +05:30
Akshay Sasidharan
e1342ca933 handle foreign key violation error 2024-05-09 03:03:01 +05:30
Ganesh Kumar
5643b4a8ef
fix: extended error customization support for referenced tables (#9654) 2024-05-08 21:17:16 +05:30
Syed Abdul Rahman
609360e775
feat : Foreign key feature in ToolJet database (#9544)
* feat: added support for creating primarykey and unique constraint while creating new table

* feat : primary key with unique constraint

* feat : able to create primary key on table creation

* minor changes for backend

* checked and added constraints for primary key

* Added tooltips for primary key columns and added a fix for autofocus for last focussable element in focustrap

* Added a new component named TableSchema so that we can use this same component in both create table and edit table

* fix: fetching tjdb table metadata query has been updated to support unique constraint

* feat : primary key in edit table

* mariadb library update

* atleast one primarky should be mandatory for each field

* fix: list tjdb table data api due to id column sort by default

* fix: tjdb dashboard table column datatype icon and name was missing when primary key feature was added and table header content component refactored

* fix: tjdb create row operation made compatible with Primary key

* fix: add column operation will now suport serail and unique constraint

* fix: Edit column operation support unique constraints

* fix: added primary key icon is tjdb dashboard table

* feat : foreign key drawer ui

* fix: dynamic tooltip text in table for serial datatype and primarykey

* fix: cell edit menu should not open for primary key column and serial datatype column

* fix: cell edit menu save flow and boolean toggle update flow will now execute based on primary key

* minor ui change in nested drawer for foreign key relation

* fix: edit row operation now supports and works based on primary key for updates

* fix: add row operation refetch query works based on primary key

* Added foreign key active state icon

* feat: API to edit table schema

* Added fixes for primary constraints

* fix: edit table allows to add new columns and delete old columns as well

* fixes related to primary key

* fix: primary key mandatory check on edit table API

* fix: moved table rename inside db transaction

* fix: on editing a primary key column it will not remove primary key constraint

* changes and fixes in primary key integration

* edit table api integration

* fix: primary key mandatory validation was wrongly placed in edit table api in tooljetdb

* fix: edit tooljetdb table dto validation modified

* edit table api integration

* edit table success toast update message

* Added tooltip for serial datatype defaultvalue and design change of Add more columns button

* added scrollbar to tableschema and added a hover effect to column which has foreign key relation

* feat: Foreign key creation support in create table Inprogress

* fix: code review comments for backend fix inprogress

* fix: in edit table operation in tooljetdb for serial datatype default values can't be edited

* fix: edit table payload naming convention changed

* fix : review comments and ui fixes

* fix : undefined check error in renameTable function

* fix: unique constraint will be false by default on version less than 2.30.0

* added primary key icon in edit column header

* fix: unable to change single primary key to composite primary key when a column has duplicate values

* added regex check for serial datatype's default value

* feat : in edit table the primary columns should be group together and in top of the schema

* fix: custom exception filter for tooljetdb and optimized cell edit save flow by reducing a refetch api call

* fix: primarykey column default value of character varying datatype is in wrong format

* fix: tjdb exception filter is added at controller level and it can group multiple exceptions altogther

* fix: on a exception postgrest error message has been sent as response

* fix: edit-table api payload details were mis-matching

* fix: on editing serial datatype column default value is not necessary

* fix: in create and  edit table drawer datatype dropdown selection was wrong in serial datatype scenario

* fix: multiple exceptions can be handled together

* removed the code comments

* fix : primary key columns should in top of the order in edit table and edit row

* revert back the changes of primary key column group together in edit table

* Add null value for default value when we change the datatype in edit table flow

* fix: feature to create foreign key while creating a new table

* integrated source table details and source column details

* fix : serial data type cause error in default value when there is more than one serial data type

* feat: tooljet database table metadata api now includes foreign key details

* feat : foreign key designs for create and edit table

* fix : view table api error issue

* feat : foreign key designs for create and edit column

* feat: added support for creating foreign key in add column api

* feat: api to create edit and delete foreign key has been added to tooljet database

* feat : foreign key designs in create and edit row as well as cell edit and in dashboard

* fix : cell click issue in cell edit for boolean type

* feat: added support to select specific columns in the postgrest query

* feat: added foreign key referenced table id in metadata details

* fix: naming convention changed for foriegn key apis

* fix: updated DTO to check on-delete and on-update operation of foreign key details

* completed api integration and remaining ui popups for delete and change in foreign key and customized tooltip

* added routing logic for navigate to reference table from source table

* implemented infinite scroll logic for cell edit foreign key column values

* moved scroll logic to selectBox component

* fix: removed the scroll for column schema section in create and edit table drawer

* fix : major bugs

* fix: added support to delete FK in Edit Column API

* feat: Join FK columns auto populate on query manager

* feat : allowing to create multiple foreign keys in single table

* feat: auto suggestion on joins

* fix: foreign key column must be rearranged to top of the list

* fix : major bugs

* fix : bugs list

* fix: foreignkey details on tjdb context were not updated properly

* fix : bugs in calling selectQuery api

* completed missed routing logic in cell edit dropdown

* fix: cell edit menu on clicking search closes

* fix : bugs list

* fix: cellEdit drop down menu provides wrong values for FK

* fix: fk values is made to default onClosing CellEditMenu

* fix: on table cell click foreign key details are made to default state

* fix : bugs in edit row and in all dropdown which is showing reference table's column values

* fix: infinite scroll for listing foreign key drop down

* fix: infinite scroll in FK data dropdown goes unresponsive

* fix : width of tooltip in showing foreign key relation and throwing error when opening a default value dropdown in create table and create column

* fix : the search api needs to hit only for the referenced column names values in dropdown

* fix: basic lint fixes

* fix : default value preselect value is passing as empty in create row and in create table for the
 edit part added delete functionality and fixed editing foreign keys in create table and fix in edit table api fixed bugs related to forein key edit

* fix : create row sort logic and fix for edit foreign key relation

* fix : merge conflict stylings collapsed

* feat: implemented infinite scrolling for listing down FK data in cell edit menu drop in tooljetdatabase

* fix: in edit column while we create a new foreign key it was not reflected on edit ccolumn view

* fix: join query when auto populated with columns table name was missing

* fix: Not able to edit a table when a column has been referenced for foreign key-the issue has been fixed

* fix: serial data-type column will have placeholder as auto-generated

* fix : bugs from design review

* fix : icon mismatch in source and target column

* Feature: Import Export revison for TJDB relations (#9597)

* make create table infer serial data type

* make import/export backward compatible

* fix column type check

* fix: cell edit drop down search issue and drop down misses the values on second load and fixed the edit primary key column issue

* fix : disabling serial type in source column and removing strict rule of unique constraint for serial type and fix of bugs which is related to foreign keys

* fix : validation issue for save changes button in foreign key drawer

* disabled creation of foreign key from create and edit column and enabled support for bigint with integer in foreign key relation

* fix : edit column foreign key relation is becomes false when we close the foreign key drawer

* fix: composite primary key columns cannot be mapped to foreign key

* fix : create column and edit column : previous column values are populated in foreign key drawer and fixes of bugs which is related to foreign key relation in create and edit column

* fix : Unable to see the column menu icon when column name has 32 characters

* fix : edit column delete is not working when we chnage the foreign key toggle to false

* fix bulk upload for case sensitive columns

* fix : while selecting different table in target table, the target column should be empty

* Fix : Bugs from Foreign key feature (#9552)

* Added tooltip when add relation button is disabled

* Set the values to no actions by default for action dropdowns

* Added tootip for add relation button when disabled

* Updated the UI of dropdowns in the actions section of foreign key drawer

* Disable the add relation button when less than 2 table are  present in edit mode and less than 1 in create mode

* Updated the logic to render option description in actions dropdown and highlight table names

* Adding conditional chaining to avoid app getting crashed

* Avoding showing toast message for crating foreign key in create column and table mode

* Updated tooltip description for add relation button

Added full stops to descriptions of options in actions dropdown

* Show tooltip on read docs regarding fk for column and table operations

* Updated description of foreign key relation text in create/edit table drawer

* Updated description of foreign key relation text in create/edit column drawer

* Type error fixed

* Show unuqie constaint info UI update

* Added copyrights for foreign keys

* fix: When we create a FK relation, and then if we change a source column name, when we open default drop down throws error in create column

* Feature: Add setup to standardise TJDB error handling (#9629)

* add wip error handling setup

* make errors thrown as TooljetDatabaseError

* fix types

* handle query manager errors

* make error logging better

* add comment

* remove redundant logger

* fix: add column api dto validation updated

* return records to throw errors from postgrest

* fix type

* Chore: Primary key backward compatibility migration (#9636)

* recreate pk constraints for existing tables for backward compatibility

* fix comment

* handle unique name error on table create

* Fix : Bug fixes from foreign key feature (#9637)

* Removed create table and column info to add foreign key message

* Added tooltip when at least one column is not filled

Enable the add relation buttton when at least one column is present and filled otherwise disabled

* fix : placeholder text in foreign key drawer and error handleing text as well

---------

Co-authored-by: Ganesh Kumar <ganesh8056234@gmail.com>
Co-authored-by: Akshay <akshaysasidharan93@gmail.com>
Co-authored-by: Manish Kushare <37823141+manishkushare@users.noreply.github.com>
2024-05-08 13:47:11 +05:30
kriks7iitk
ce2d72d4bb Add user role service in permissions module 2024-05-06 07:56:48 +05:30
kriks7iitk
ac6bc8d16f Add apis for group permissions 2024-05-06 07:54:47 +05:30
Adish M
c59b682287
Merge pull request #8896 from ToolJet/invite-flow-part1/platform14
[Revamp] Simplify workspace invite flow
2024-05-02 15:26:44 +05:30
Akshay
bc9990d081
Hotfix: TJDB connection on feature disabled flag (#9579)
* fix TJDB deps for feature flag

* support async loading of db connection

* conditionally init TJDB connection on boot

* bump to v2.39.1
2024-05-01 23:24:50 +05:30
Muhsin Shah
ce5808b366 Merge branch 'main' into invite-flow-part1/platform14 2024-05-01 15:32:57 +05:30
Midhun G S
eef2a49fa9
Release Platform v17 (v2.39.0) (#9502)
* bump version

* Sample data source (#9501)

* Added sample data populating script

* added expand-collapse  in add data soure menu

* Sample database

* Design changes

* Added CTA to buttons and added design changes

* Added code sanity fix for some services

* changed configration for create sampke db and code sanity fix

* Removed logs

* Added xlsx in dependency

* added migration for sample db

* Added loggin for testing

* Added await in migration

* Replace excel sheet with JSON files

* reverted package-lock file

* Fixed issues

* dependecy deletion

* Added schedular

* Added changes for bug fixes and typeorm query for creating sample db

* Removed color.scss file import

* Add logo in sample application

* add documentation link for sample db

* fixed migration issue for data queries creation

* removed sample db intergration

* bump version

* Remove .env file and code sanity

* deleted migration file

---------

Co-authored-by: Kritagya <kriks.iitk@.com>
Co-authored-by: Kritagya Kumar <kritagyakumar@192.168.1.6>
Co-authored-by: kriks7raptor <kritagya@raptorx.ai>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>

* Add data-cy for drag drop empty canvas card (#9513)

* Add sample db condition on all components (#9516)

* Add sample db condition on all components

* Changed empty state for container

* Condiiton on sample data source

---------

Co-authored-by: kriks7raptor <kritagya@raptorx.ai>

* Release fix: subpath (#9535)

* Add sample db condition on all components

* Changed empty state for container

* Condiiton on sample data source

* fixed subpath issue for workspace setting and folders

* Folder change handler in subpath

---------

Co-authored-by: kriks7raptor <kritagya@raptorx.ai>

* fixed version

* fixed version

* fixed version

* update server version

* Bump version to v2.39.0

---------

Co-authored-by: kriks7iitk <34170719+kriks7iitk@users.noreply.github.com>
Co-authored-by: Kritagya <kriks.iitk@.com>
Co-authored-by: Kritagya Kumar <kritagyakumar@192.168.1.6>
Co-authored-by: kriks7raptor <kritagya@raptorx.ai>
Co-authored-by: Ajith KV <ajith.jaban@gmail.com>
Co-authored-by: kriks7iitk <kriks.iitk@gmail.com>
Co-authored-by: Adish M <44204658+adishM98@users.noreply.github.com>
Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
2024-04-30 21:49:37 +05:30
Muhsin Shah
1eaea70886 Merge branch 'main' into invite-flow-part1/platform14 2024-04-29 18:15:18 +05:30
kriks7raptor
461a05208a Added services for granular and group permissions 2024-04-29 11:36:43 +05:30
kriks7raptor
cc6a7d02d6 added skeleton for user graoup revamp 2024-04-25 12:19:26 +05:30
Akshay Sasidharan
8bb39b5099 fix tjdb dependency error 2024-04-24 17:42:31 +05:30
Akshay
6c6cad8bc8
Add ability to run TJDB queries from public apps (#9134)
* add ability to run TJDB queries from public apps

* make TJDB query run similar to other datasources

* add result key for backward compatibility

* throw query error on postgrest request failures
2024-04-24 01:48:21 +05:30
Midhun G S
46923463af
Added app edit privilege for clone app (#9314)
* added app edit privilege for clone app

* fix

* fix

* added privilege check in front end for clone app
2024-04-16 13:33:28 +05:30
Muhsin Shah
5b6480b961 fixed sso blank page issue while signing up 2024-03-16 08:29:39 +05:30
Muhsin Shah
0a4346dcaa fix: changed organization id to slug 2024-03-14 11:09:32 +05:30
Muhsin Shah
d2bc9dd1e5 Merge branch 'main' into invite-flow-part1/platform14 2024-03-14 09:49:54 +05:30
Anantshree Chandola
c8c03d7050
Corrected app redirection flow to workspace login (#8995) 2024-03-13 13:05:44 +05:30
Muhsin Shah
48ff7b2c14 fixed some edge cases 2024-03-12 11:09:34 +05:30
Muhsin Shah
e725f7b0b5 redirect to the workspace login page if the login option is different 2024-03-11 20:53:34 +05:30
Muhsin Shah
65886bfba8 Changed invitation url login to organization login 2024-03-09 17:12:13 +05:30
Muhsin Shah C P
57d7a75814
[Enhancement] Improve Workspace Invitation Flow (#8873)
* Started working on invite flow changes - new backend api

* Worked on decoupling routes logic from private route

* Changed invite flow

* Removed VerificationSuccessInfoScreen component from organization invite process

* Added sso invite user signup

* working on signup revamp - handling instance and organization signups

* working on signup bugs

* Refactor signup process and handle error messages consistently

* resolved login bug

* bug-fix: Redirection issue after org accepting invite

* Replaced signup/org-id to org-slug

* Fixed bugs: SSO redirection, logout and login redirection.

* Added incorrect email input error

* Refactored inviteSessionPayload and activateAccountWithToken functions

* Bugfix: back to login button wasn't working

* bugfix: redirection after switch workspace API

* added: auto password setup, sso signup errors

* Removed console logs

* fixed personal workspace bug, workspace signup route fixes

* fix: user already invited but tried to signup through signup url

* sso incorrect email check

* updated error messages

* Added non-existed workspace login url error redirection
2024-02-22 15:09:11 +05:30
Akshay Sasidharan
a2b891d692 Merge branch 'develop' into release/marketplace-1.6 2024-02-08 12:34:12 +05:30
Akshay
8b10c8007f
Feature: Nullable fields (#8427)
* Added Edit column functionality in ToolJet Database Table

* feat: null constraint support for create_table add_column edit_column

* fix: default data-type validation has been added

* completed column header revamp

* feat: added not null toggle in create new table drawer

* feat: on toggle not null constraint value will be persisted

* fix: loads label for not null toggle dynamically

* feat: add new column to tjdb null constraint support

* new datatype dropdown design implemented

* added new icon for delete column

* added delete icon for column

* added delete icon for column

* fix: when table name is empty create button will be disabled

* fix: datatype dropdown height fix

* fix: datatype drop down issue fix

* fix: datatype dropdown alignment fix

* fix: delete icon changed to new theme

* fix: delete icon changed to new one

* fix: create new column column name and datatype mandatory validation added

* fixed styling issues

* Added 2 space indentation for css

* inline css moved to css files as well as added 2 space indentation

* fix: createTable addColumn editColumn api payload structure change to incorporate constraint changes

* fix: error handling added for editColumn api

* added 2 space indentation

* fix: create table API payload structure changes

* added 2 space indentation and applied styles for dark mode as well

* disabled the existing column's dataType

* fix: create new column payload updated

* renamed columnIndex to columnSelection and fixed the plus column creator button position issue

* renamed columnIndex to columnSelection and added text visiblity for dropdown in dark and light mode

* moved the react-select's new styles to constants.js file as function

* react select's css moved to constants.js file

* fix: review comments has been fixed

* added edit column warning UI

* completed edit column new flow

* remove Please wait for ToolJet to update..this line from edit column warning message

* increased height for add column + button

* fix: create table will not accept empty values for mandatory fields like tablename column_name datatype

* fix: custom error message for tjdb add row operation

* new design implemented for creating a new row in ToolJet database

* added darkmode design as well for the create row disabled fields

* added hover effects for disabled fields

* added text color for disabled state

* added toast message for handling errors

* added some changes in edit row file

* added some changes in create row file

* added styles for the edit row fields according to new design

* added stylings for react select in edit row

* disabled create button

* disabled save button

* added null tag inside the input field

* add versioned transformations for tjdb import dto

* update view table query

* update tjdb forms for constraints changes

* added all operators list in constants file

* fix primary key check

* added sticky style for column and row creator

* added null tag inside the cell if the value is null

* resolved bugs in nullable fields

* added functionality for allowing empty string for datatype character only for edit row and create row

* added functionality for allowing empty string for datatype character only for edit row and create row

* removed console logs

* fixed bugs

* fixed bugs in editrow

* fix: create table datatype dropdown tick icon for respective datatype selected

* fix: default value is not updating while edit a column after change it to null constraint

* fix: create-row and edit-row boolean field toggle on default value selection color was missing

* fixed bugs

* wip sticky button

* added styles for sticky column creator and row creator

---------

Co-authored-by: Abd-Rahman-1999 <s.rahmanabd1999@gmail.com>
Co-authored-by: Ganesh Kumar <ganesh8056234@gmail.com>
2024-01-22 20:29:51 +05:30
vjaris42
980328e063
Revamp users table and edit organization users drawer (#8329)
* setup user tables and edit user drawer

* fix states on user edit and ui fixes

* fixes

* fix: user update

* remove: disable editing of full name while editing user

* bug fixes

* bug fixes
2024-01-19 16:53:40 +05:30
vjaris42
6815522b26
Rearranges crucial entry points for navigation inside editor and dasbhoard (#8540)
* fixed sentence case for form component #7799 (#8465)

* revamp: navigation and dashboard

* change ds icon

* fix: design reveiws

* fix layout header border

* bug fixes

* bug fixes

* cleanup

---------

Co-authored-by: Sufiyan <84285133+Sufiyan-dev@users.noreply.github.com>
Co-authored-by: Akshay <akshaysasidharan93@gmail.com>
2024-01-17 16:15:30 +05:30
Akshay Sasidharan
d773777686 Merge branch 'develop' into release/marketplace-1.5 2023-11-16 12:08:00 +05:30
Arpit
f0a403e619
Release : Appbuilder - appdefinition architecture revamp (#7448)
* importing service: updated

* import service, categorize and update events with associations

* fix: deleting events associated with pages on page delete

* handle app version: creation, updates, switching versions from app builder

* on version switch: no updates should be triggeted to server

* versioning for query events

* fixes: new components db transaction fails for newly created pages

* fixes: query chaining with events

* map older query ids to new for event action: run query

* fixes: multi-editor support

* fixes/multi-editor: users should be able to edit different version of the app at real time without sync

* minor fixes

* fixes: undo/redo savings with latest app def updates

* fixes: execution of page switch action

* fixes: csa events

* fixes: csa selection dropdown

* fixes: on csa action changed, the action params should also be updated correctly

* fixes: event rendering actions

* fixes: table event - row hovered

* fixes: table event - on search

* fixes: table event - onNewRowsAdded

* fixes: table event - onBulkUpdate

* fixes: table column updates

* fixes: table column updates to component definition

* re-order events

* handle adding widgets to sub containers

* fixes: csa for modals

* fixes: deletes children components on deleting parent

* fixes: components with default children

* fixed events for imported app

* gs- crash fix

* fixes: global settings UI

* fixes: header and user

* fixes: page switch event

* fixes: adapts to new event manager ui

* import app

* add event index for creating app versions

* fixes: table rendering on viewer

* fixes: event execution for viewer

* fixes: loading app with slug

* fixes: Page side bar is not rendered in viewer

* fixes: version manager ui for released versions

* fixes: tabs default children saving

* fixes: app resource mapping for parent-child components

* fixes: duplicate pages

* fixes: page load events for viewer

* fixes: enable and disable pages

* fixes: hide and show pages

* fixes: on maintaince toggle button

* fixes: new version child components are not tied to its parent

* fixes: redo breaks- on deleting a component and undo then redo (editor)

* new export schema and handling apps impport with new and older schemas

* table events: column and actions events

* fixes: query confirmations popup

* fixes: copy/paste

* fixes: cut/paste

* fixes: event mapping for newer versions for new components, pages and queries id

* fixes: app resource mapping for imported apps

* fixes: cascade events for table actions and colulmns

* Migrates the existing JSON-based app definition schema to a structured table-based architecture. This enhancement introduces component and page-specific permissions, improves data organization, and enables fine-grained access control. Additionally, it adds the 'globalSettings' column to the 'appVersion' table.

* cleanup

* fixes: enable and disable pages

* fixes: hide/show page and set saving state for cloning pages

* cleanup

* fixes: page disable menu

* fixes: migrations for data query events

* fixes: switching app version from version creation modal results in editor loading state

* fixes: setting up the page title

* fixes: Page duplication has same page handler name.

* fixes: updating general styles of a component

* fixes: delete component should trigger confirmations box for one widget and for multiple should process deletion

* fixes: CSA for button(component) does not work for page event handler.

* fixes: component name update [calendar]

* fixes: Duplicating pages do not create child components

* improves copy-paste mechanism of widgets

* fix: calendar subcontainer components comes out of the parent container on copy/paste

* fix:Form properties, no option for selecting submit button.

* fixes: Dark mode issue with event handler.

* fixes: display preferences for components

* fixes:have to select the selected version again to create a new

* fixes: Pages menu is not getting disabled when enabled and vice-versa

* fixes: correct naming of duplicating pages

* fixes: 2 action button even with no event attached to one, it gets attached to both.

* fixes: event deletion for action btn removal

* fixes: Keyboard action to move component is not saving

* reduce outbound calls when widget re-positioned with keyboard

* fixes: Not able to delete component from Inspector

* fixes: cloning of widgets

* fixes: Request confirmation before query run toggle is not visible on viewer mode. (can't run query if confirmation toggle is on)

* fixes: event sorting

* fixes: events mapping for versioning: queries and components

* fixes: importing app bug - query running issue when importing apps

* [appdef-2.0] fixes: event action linking for imported apps (#7627)

* fixes: event action linking for imported apps

* cleanup

* fixes: Toggling display preferences is not saving for components. (#7629)

* fixes: dnd issue for mobile view (#7632)

* default page menu settings should be true

* [appdef-2] event manager selector bug (#7631)

* fixes: on selecting query - 3 outbound calls are done to the server, and event manager re-renders 3times resulting in flikering ui

* reduces outbound calls for updating csa actions to 1

* [appdef] - copy associated events for cloned components (#7634)

* fixes: Copying  component is not coping the events associated with the component.

* cleanup

* [appdef-2] : Fixes frontend issues (#7636)

* Fix UI issues

* Fix Scrollbar is not available after we pin the inspector.

* Fix button  jumping places if switched from extended monitor to laptop.

* Fix white background around canvas

* fixes: Component inspector go blank after switching to different pages after dropping components (#7637)

* fixes: general properties of widgets are not getting saved (#7638)

* fixes: selecting the components via selecto (#7653)

* fixes: multiple undo-redo simlut. (#7656)

* fixes: copy associated events for cloned queries (#7657)

* Fixes not able toggle of Listview pagination toggle (#7701)

* Fix UI issues

* Fix Scrollbar is not available after we pin the inspector.

* Fix button  jumping places if switched from extended monitor to laptop.

* fix enable pagination not getting toggled in listview

* Fix form children not being displayed

* fixes: dnd fix for widgets dropped inside subcontainer (#7691)

* [Appdef-2] copy-paste, cut and  clone fix for widgets (#7687)

* fixes: copy/cut/paste and cloning of widgets

* cleanup

* can copy/paste-clone in listview

* fixes: on mulit-widget selected via mouse area selection: widget manager should be rendered (#7688)

* fixes: on deleting tabs widgets should delete its children (#7692)

* fixes: column data generated from restapi does not render correct columns in viewer (#7695)

* [appdef-2] fixes: multiple query confirmations trigger (#7704)

* fixes: multiple query confirmations trigger

* fixes: multiple outbound calls in the inital load, run queries on app load with confirmations:editor&viewer

* fixes: correct confirmations list to the stote

* [appdef-2] fixes:Event handler are running twice for page load (#7705)

* fixes:Event handler are running twice for page load(eg- add 2 show alert and change the page).

* fixes: for viewer page events

* fixes: container widget is not getting saved on drop (#7718)

* fixes: Create app version from is empty if we delete another version. (#7720)

* [appdef-2] fixes: on versioned app (switching or creating) version, the componet layout is wrongly updated to the container dnd (#7721)

* fixes: on versioned app (switching or creating) version, the component layout is wrongly updated to the container dnd

* fixes: container widget is not saving

* fixes: triggering confirmation box for every query with on load trigger (#7728)

* Fixes canvas background and go to app crashing (#7725)

* Fix UI issues

* Fix Scrollbar is not available after we pin the inspector.

* Fix button  jumping places if switched from extended monitor to laptop.

* fix enable pagination not getting toggled in listview

* Fix form children not being displayed

* Fix Go to app is crashing the application.

* Fix fx for canvas background color is not working.

* fixes: cloned/copied table with actions (#7758)

* fixes: calendar and form widgets (#7735)

* fixes: rendering of components in viewer for mobile (#7759)

* fixes: toggling, resizing, dropping widgets in both display preferences (#7760)

* fixes: page switch action via runjs actions (#7762)

* fixes: component validations do not get saved (#7766)

* [appdef-2] subcontainer dnd height outbound fix (#7767)

* fixes: listview children can be dragged outside its outbound limit

* cleanup

* fixes: widget inspector going to empty component (#7768)

* fixes: goToApp not running from runjs in viewer mode (#7770)

* fixes: multi-components cloning or copy/paste have same name (#7761)

* Fix disabled page is being displayed on switch page event dropdown (#7769)

* Fix kanban rendering leading to infinite look

* Fix disabled page is being displayed on switch page event dropdown

* Fix Kanban widget getting into infinite loop (#7808)

* Fix kanban rendering leading to infinite look

* Fix disabled page is being displayed on switch page event dropdown

* Fix kanban getting into infinite loop

* adds support of constants to current state of the ediotr (#7821)

* removes loader added for testing (#7822)

* [appdef] fixes - dnd container cloning edge cases (#7820)

* fixes: copy/pasting components updating wrong display preferences

* fixes: copy/pasting tabs and cloning components inside tabs

* fixes: duplication of calendar component bug

* if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication

* if components in subcontainer(children) are selected via selecto along with its parent, children should not be going through duplication

* fixes: Resolving App Version and Timestamp Update Challenges (#7863)

* Fixes query confirmation issue on viewer (#7862)

* [appdef ]fixes: components copied from template app to a new page or app do not render in canvas (#7867)

* fixes: components copied from template app to a new page or app does not render in canvas

* fixes: table crash on coping from other pages with columns

* adds the column exists check

* fixes: tables crash for imported apps with auto generated cols

* appdefinition refactor/cleanup (#7872)

* cleanup controllers and request calls from frontend

* removing unwanted console logs and unused variables

* revering v1 apis og

* adding length validation for page dto

* adding dtos for components

* updated dtos for components and pages

* added dto for event handlers

* fixes event handler dto

* fixes: page dto

* adds/fixes event handlers creating dtp

* fixes: event handler service and dtos

* [appdef] fixes: Creating page not changing the slug (#7873)

* fixes: Creating page not changing the slug

* removes extra whitespace

* [appdef] fixes: on importing a exported app child components are not present in the parent component (#7864)

* fixes: on importing a exported app child components are not present in the parent component

* handles parent component mapping for tabs and calendar component

* handles parent component mapping for tabs and calendar component for new versions

* [appdef] api endpoint fixes (#7888)

* fixes: moved fetching app version to v2 api

* fixes: app slug api

* Fixes CurrentUser & Mode not present in globals in inspector (#7812)

* Fix current user not being present in inspector

* Add Mode in globas in inspector

* Fix creating page not changing the slug.

* Revert "Fix creating page not changing the slug."

This reverts commit 0ff9c18ab8.

* Fixes  on adding query params in event handler, breaking the app (#7889)

* Fix on version change if left sidebar is open canvas not scrolling right

* Fix on adding query params in event handler, breaking the app

* Fix

* Fix on version change if left sidebar is open canvas not scrolling right (#7884)

* fixes: fixes on on app load switch page action via run queires (#7858)

* fixes: fixes on on app load switch page action via run queires

* Fix

* refactor

* Fix on load event not appearing on viewer

---------

Co-authored-by: Nakul Nagargade <nakul@tooljet.com>

* [appdef] fixes: event actions mapping for import-export (#7895)

* fixes: event actions mapping for import-export

* fixes: updates organisation id

* fixes: templates event mapping

* do not app again for not normalized apps

* [appdef]migrations fix (#7910)

* fixes: page attributes

* fixes: table action and column events for imported apps (prev) and app migrations

* adds processDataInBatches

* fixes: app data migrations

* create a new queryBuilder instance for each batch to ensure that there's no interference between batches

* fix: app migration

* cleanup

* cleanup

* fixes: table column data not updated on boxes changes in container (#7919)

* fixes: creating all pages from all versions (#7905)

* Fix state not changing in chart (#7900)

* Fix in chart, toggles are not working

* Update Chart.jsx

---------

Co-authored-by: Arpit <arpitnath42@gmail.com>

* fix event param not updating (#7902)

* [appdef] Pages attributes are missing on versioning or imported app (#7904)

* fixes: on creating new version pages attributes are not copied

* fixes: on importing apps with  pages attributes are not copied

* fixes: component double duplication issues

* fixes: deleting children components via selecto (#7915)

* fixes: component deletion fixes

* fixes: cloning components to a new version should also create associated events

* fixes: creating components on cloning with general styles or properties

* fixes: creatinng general properties on version

* fixes: imported app

* fixes added to app migrations

* fixes: mobile view

* fixes: Created a new version with multiple pages from second page, the new version shows the homepage with second page URL

* fixes: table crash due to columnDeletionHistory saved as an object instead of an array

* fixes: on creating new version, data_queries should be created (#7975)

* [appdef] fixes: migrations  (#7951)

* refactor migrations with batching

* event actions: switch page should be mapped to correct new page id

* fixes: importing json-schema app with multiple version: same components do not get render in the canvas

* fixes: import/export of legecy apps

* event actions mapping to correct page ids: migrations

* fixes: migrations  children not rendered in subcontainer components

* adapts to main/viewer changes

* fixes: viewer with #6698

* fixes: viewer route

* fixes: page switch via validateRoutes

* fixes: on delete version fetchApp fails

* handle error on saving changes

* skip name opts

* typo fix

* Instead of relying on the schema, we choose to use the Tooljet version as the determining factor for decoupling import flows

* fixes: slug updates from global settings

* fixes: slug app link (#8008)

* fixes: on version changed the preview link should also update (#8009)

* fixes: on cut and paste events should not cascade (#8010)

* fixes: query options to new mapped ids

* [appdef] fixes: cloning apps (#8012)

* fixes: cloning apps

* fixes: slug status from share modal

* fixes: query confirmations list on viewer (#8017)

* undo-fix

* fixes: updates current state with page data on creating new page

* Fix failing specs (#8031)

* [appdef] fixes : ghost child components are being created on imported/cloned apps and while migrating (#8026)

* fixes: ignore ghost components while importing

* added the fix in migrations

* fixes: adding other components

* fixes: table column resizes

* updates layout dto

* update component dto

* fixes: tabs children are not rendered as the are not in their repsective parent container (#8036)

* moving editorFunc to Editor.jsx

* cleanup

* fixes: e2e test for clone

* cleanup

* fixes: toggle maintaince

* bumping version

* multi-edit: ymap-fix-1

* Revert "multi-edit: ymap-fix-1"

This reverts commit 8b799c3c51.

* [appdef] fixes: viewer route: keeps on reloading for private apps (#8051)

* fixes: viewer route: keeps on reloading for pribate apps

* should return the response

* test: ymap updates-1

* fixes: v1 apps with dq queries resuts in app crash

* Updated import spec

* Revert "Updated import spec"

This reverts commit 802136cdc3.

* Fixed failed platform test cases for app desinition re-design (#8053)

* Fix failed platform test cases

* Modify user permission test cases

* fixes: trial-5: fixing vanishing of components

* Revert "fixes: trial-5: fixing vanishing of components"

This reverts commit a22aec12c7.

* fixes: trail-6: fix

* fixes: trail-7: fix

* Revert "fixes: trail-7: fix"

This reverts commit 08f373c415.

* Revert "fixes: trail-6: fix"

This reverts commit c4e19b5d05.

* multi-edit: ymap-fix

* Revert "multi-edit: ymap-fix"

This reverts commit 92f49c0cde.

* fixes: multi-user updates: adding or removing

* event handlers sycned for multi-user

* should take slug instead of appid if slug is present

* updating adding ymap logic

* versioning with multi-user

* fixes: saving issue

* dont skip ymap

* adds delay to ymap

* ymap-update-order-fixed

* ymap-update-order-fixed-1.1

* ymap-update-order-fixed-1.2

* test=fix

* Updated import spec (#8061)

* cleanup

* lint fixed

* fixes: cloning apps with tabs

* veiwer on event should return

* fixes: event should map with show/hide modal component id

* Fix failing appbuilder specs (#8117)

* cherrypicked ee/00195c064

* bumping version to v2.24.0

* fixed modal actionid typo

* fixes: slugs issues for released an public apps (#8119)

* Fix failed test cases (#8121)

* reverting global slug input

* fixes: versioning with cloned page and ghost components (#8122)

---------

Co-authored-by: Nakul Nagargade <133095394+nakulnagargade@users.noreply.github.com>
Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>
Co-authored-by: Nakul Nagargade <nakul@tooljet.com>
Co-authored-by: Midhun Kumar E <midhun752@gmail.com>
Co-authored-by: nandinisaha13 <nandinisaha13@gmail.com>
Co-authored-by: Mekhla Asopa <dadhichmekhla@gmail.com>
Co-authored-by: Ajith KV <ajith.jaban@gmail.com>
Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-11-08 11:09:47 +05:30
Akshay
ea1b54a6cd
Merge pull request #7954 from ToolJet/fix/postgres-proxy-init
chore: remove unused postgrest proxy provider in import export module
2023-11-03 11:34:41 +05:30
Akshay Sasidharan
1bf1e561c5 remove unused postgrest proxy provider in import export module 2023-10-18 15:10:24 +05:30
Muhsin Shah C P
3ea8d6e3ca
[feature] Make workspace urls more readable (#6698)
* working on replacing workspace id with workspace name

* experimenting with zustand

* added slug column to workspace table

* working on workspace url

* working on backward compatibility

* fixing bugs

* added not found error

* fixed workspace switching issue

* fix: switching b/w workspaces

* fix: workspace login

* changed workspace login url link

* resolved conflicts

* added create organization design

* added backend validation

* fixed constraint errors issue

* fixed: creating new workspace

* fixed: update workspace

* fixed: update workspace bugs

* fixed: auto created slug bugs

* fixed: login slug

* design changes

* added folder slug

* fixed: lint error

* fixed: invite and first user issues

* fixed: login page redirection

* fixed: redirect path

* added reserved word check

* fix: edit workspace design

* fix: folder query issue

* fix: create and edit workspace modal validation issues

* fixing failed test cases

* fixing failed test cases - app.e2e

* fixed organizations specs

* fixed public app issue

* working on app slug

* Added app slug design to the general settings

* Working on appId -> slug changes
- Handling appId cases
- Fixing issues

* Worked on share modal design change
- replaced slug functionality
- Fixed backend slug issues
- Fixed page handle issues

* changed switch label

* replace version param with query param

* fix: possible uuid bug

* fix: login app slug redirection issue

* Worked on unique app slug

* moved all apps related api calls to apps.service.js file

* refactoring the code and fixing minor issues

* Refactored and fixed some bugs

* Fixed bugs: redirect cookie issue

* Fixed dark-mode issues

* removed duplicate code

* Worked on develop branch conflicts

* Moved handle app access check to private route

* Added fix for navigate

* Refactored the code. Added slug to failed sso login redirection path

* again some redirect url fixes

* onbaord navbar tj-icon onclick

* Fix: viewer version id undefined issue

* fix: multi-pages, invalid workspace slug

* fix: removing the version search param while switching the pages

* fix-sso: redirecting to prev tab's login organization slug

* fix-sso: google signup

* fix: preivew permission issue

* Fixing merge issues

* Fixed tjdb issues

* dark mode fix of manage users button

* fix: extra slash in url, tj-logo on click wrong org id

* subpath workspace login url

* resolved lint issue

* fix: cannot clone apps

* fixed switch workspace issue

* fix: login page flashing issue

* fix: back button issue

* fix: private endless redirection

* Update the modal with new UX

* fixed all ui issues

* fixed placeholder translation issues

* fix: sso multi-request issues

* fix: multi-pages crash while promoting a version

* fix: error text msg delay

* added default slug to the first workspace in the instance

* subpath-fix: slug preview url

* fix: same value check

* fixed switch page query params issue

* fix: folder query

* fix: manage app users ui responsive issue

* Backend PR changes

---------

Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
2023-10-18 13:00:17 +05:30
Akshay
f86c6f53d0
Release v2.20.0: New Templates (#7805)
* [docs] SAML (#7577)

* added saml doc

* added saml in 2.19

* minor changes

* minor updates

* update new quickstart guide link on canvas (#7733)

* Template: Supply chain management (#7453)

* add setup to create template from new exports

Co-authored-by: abhinabaadhikari <abhinabaadhikari2014@gmail.com>

* Add new templates and update an existing template (#7765)

* Add new templates and update an existing template

* Add two more templates

* fix lead management system template definition

* fix lead management system template definition - handle null values

* Template: Supply chain management (#7453)

* add setup to create template from new exports

Co-authored-by: abhinabaadhikari <abhinabaadhikari2014@gmail.com>

* Add new templates and update an existing template (#7765)

* Add new templates and update an existing template

* Add two more templates

* fix lead management system template definition

* fix lead management system template definition - handle null values

* bump to v2.20.0

* fix e2e test

* fix app name

* handle template import based on the tooljet version

---------

Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>
Co-authored-by: Shubhendra Singh Chauhan <withshubh@gmail.com>
Co-authored-by: Karan Rathod <karan.altcampus@gmail.com>
Co-authored-by: abhinabaadhikari <abhinabaadhikari2014@gmail.com>
Co-authored-by: Abhinaba Adhikari <79746925+abhinabaadhikari@users.noreply.github.com>
2023-10-12 11:56:29 +05:30
Akshay
3c4954ae4d
Feature: Bulk csv upload for TJDB (#7421)
* add wip ui components for csv upload

* add backend support for csv bulk upload

* add missing type information

* add wip ui setup for bulk upload

* update bulk upload drawer to handle errors

* update error message

* move export table from navbar to popover

* revise navbar buttons

* remove unrelated changes

* Fixed UI issues

* remove redundant counter increment

* remove console.log

* explicitly add express import

* fix undefined toast error

* Fixed button UI issues

* rename button

* remove unused solid icon

* fix row count check

* handle null values

* add max row count at lib options

* check NaN for parsed numbers

* skip columns for null values to insert default

* reuse declared set

* only validate datatype conversion but pass original string

* fix content type on requests

* remove filter/sort applied by text

* reset query and sort filters after upload

* add padding for filter/sort buttons

* make error on max rows explicit

* handle stream errors through events

* fix bulk upload to be disabled after drawer close

* fix lint

* update bulk upload success toast

* scroll lock bulk upload drawer

* update icon for export

* order default by id desc

* Fixed hover state issue for download button in bulk upload section

* added focusTrapoption's initial focus as false in FocusTrap

* Updated data-cy for export option (#7545)

* Updated export data-cy

* Updated cypess database spec (#7547)

---------

Co-authored-by: Abd-Rahman-1999 <s.rahmanabd1999@gmail.com>
Co-authored-by: Mekhla Asopa <59684099+Mekhla-Asopa@users.noreply.github.com>
2023-09-28 21:42:00 +05:30
Ganesh Kumar
72147a0fda
Feature: Tooljetdb join operations (#7263)
* basic and static join query executed

* tooljetDB Join operation flow - work inprogress

* complete flow for tooljetdb join pending testing and minor changes

* updated constructHavingStatement method logic to support aggregation function and added comments

* worki in progress tooljetDB Join

* feat: added basic layout for tjdb join fields

* feat: dropdown support for icons

* feat: working on where condition ui in join

* feat: added base layout for filter and sort in tooljetdb join

* feat: added multi select support and minor style changes

* feat: support default value for selectbox

* feat: dd select styling added

* style: override vanilla  dd select styles with tj styles

* fix: fixed minor UI issues in select box

* feat: added select section layout

* feat: added hooks state for join options

* feat: load all added tables columns

* feat: working on where section logic

* feat: join constraints UI

* feat: filter condition dropdowns added

* feat: join widget for join query op in tjdb

* feat: sort section base UI

* feat: select widget for join query in tjdb

* feat: filter section add option and delete option done

* feat: update filter condition logic added

* feat: added onchange event for operator and rhs values update

* feat: added sort dropdown for tjdb join

* feat: base logic for Filters in join query

* fix: removed comments and added validation for fetching table details

* feat: add limit option logic

* feat: backend api has been integrated for tooljetdb joins

* added icons to solid icons

* fix: jsconfig auto save lint fix

* fix: update from table when selected table changes

* feat: added from to join table options in tjdb dq

* fix: added fetching tables list for JSON in backend

* fix: fixed json data for join query

* fix: temp fix for fields with empty object

* feat: added icon support for dd select

* fix: added default state to avoid error in conditionlist

* fix: limit tables selection to already joined tables in tjdb join

* fix: empty values to orderBy, filters and limit will remove the option from json

* fix: in json first level empty value scenario has been handled

* fix: select in tooljetdb join query can have multiple columns with same name handled by adding prefix tablename_ to the column name

* fix: restrict selectable tables in join contraints

* feat: reset join constraints when invlaid joins added

* fix: empty values will not be allowed UI validation

* fix: codehinter border has been removed

* fix: recalculate join data when join tables change

* fix: corrected options length calc for showing search box

* fix: filter table dropdown must contain only selected tables from join section

* fix: empty values validation has been removed

* fix: add from attribute to join options

* fix: alias is added to all the table column

* feat: selected option in Select section will be at the top

* fix: reset joins when selected table changed

* fix: drop down focus ui

* feat: autoselect all columns by defualt for join select

* feat: restrict column selection to same datatype

* fix: removed blank table names from select

* feat: added tooltip for info

* fix: removed duplicate tooltip

* fix: add button in table dropdown

* fix: added from table object back

* feat: tjdb join select dropdown select all cols by default

* fix: add new table button name corrected

* feat: no table selected error message

* feat: add select style for select dropdown

* style: updated dropdown select style to match new theme

* feat: added alert modal for deleting joins

* feat: hardcode operator since once one option available at the moment

* style: fix icon styles for dropdown

* feat: created reusable confirm dialogue

* fix: fixed bug for nested dropdowns

* fix; cache select components to prevent unnecessory rerenders

* feat: reused the common popup on updating the tables

* fix: info popup will trigger only if table is already exists

* fix: fixed bug that caused edit to break for tjdb join

* style: fixed spacing for tjdb join components

* fix: select section all options cant be deselected issue fixed

* fix: add info icon for empty filter and sort component

* feat: offset fature for joins has been added

* fix: layout fixed to incorporate filter dropdown with text

* fix: basic validation in UI for mandatory and non-mandatory fields

* feat: more options added for filter in joins

* fix: added filter option for regular expression

* fix: fixed wrong autoupdate of join fields

* style: updated badge color w.r.t theme

* fix: removed the commented code

* style fixes

* refactor: changed tooljetdb join logic based on tableId instead of name

* fix: joins table value is not been shown after save

* fix: CSS design fix and removed not required commented codes

* feat: tableid to table name mapping in error

* fix: errors will be shown in the debugger for tooljetdb join

* stylefix: container for join sort and select made full width

* stylefix: changed CTA test in popup spacing issue adjusted

* fix: few PR review comments to refactor has been done

* fix:random id generator has been removed and uuid has been used

* feat: Select all functionality in Select Drop down has been added

* fix: first time AND operator has been removed

* fix:Sort Section - Removed table were listed in the drop down

* fix: add more in join section deleting newly created joins

* fix: select section total selected count was wrong

* stylefix: dropdown menu height has been reduced

* fix: sort section on join query will have prefix table name along with column name

* feat: changed the select drop down with add new table option

* fix: center align text only for join operator drop down

* fix join icons to be centred

* reduce chevron icon size

* fix:error handling by status code

* feat: added placeholder for empty select box

* fix: fixed the PR comments

---------

Co-authored-by: Johnson Cherian <johnsonc.dev@gmail.com>
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
2023-09-28 19:58:47 +05:30
Akshay
c6fe0aa45e
Feature: Import export tjdb schema (#5752)
* add ability to import export app and tjdb schema

* init

* feat ::global settings popover new ui

* feat :: ui for version export modal

* fix :: import export modal

* cleanup

* ui updates

* header footer style fixes

* closing settings modal while showing export modal

* style fix header

* feat :: added button to download table schema

* fix :: styling for fx

* add ability to import and export apps with tjdb schema

* handle duplicate table in workspace

* fix table rename

* fix selected table on edit and delete

* fix invalid toast on table delete

* fix column default value

* handle exports to strip '::' and quotes

* make import/export backward compatible

* handle page redirects based on resource import

* handle import without tjdb schema

* fix column delete and addition

* make data migrations to be run per organizations

* wip

* update migration

* fix credentials to be included

* fix specific version export

* make use of apps ability for import export resource

* fix import navigation

* fix lint

* fix failing tests

* fix lint

* enable tjdb for public apps

* update export error message on tjdb table blank

* fix table not selected after creation

* fix :: styling for imp exp modal , and functionality bug fixes after dev merge

* fixes blank slate and columns selection

* fix table delete

* fix invalid toast on table edit

* fix column information missing tjdb query manager

* make ds imports to either reuse global or create

* export only unique table ids

* create default datasources if not present in export data

* reuse existing table on imports

* add timestamp to table name if name already exists

* add ability to clone with tjdb

* make imports work with marketplace plugin

* skip dataqueries for which plugins are not installed

* fix filter input width

* fix failing spec

* fix marketplace plugin installation in diff workspaces

* fix check for plugin installed in workspace

* fix export when table name is empty

---------

Co-authored-by: stepinfwd <stepinfwd@gmail.com>
2023-08-28 21:23:15 +05:30
Arpit
ee79b2015a
Feature - Workspace environment constants (#6810)
* init--

* org constants: controllers, services, module and api for creating new constants

* read operation: all constants from all envs and all constants from a env

* update and delete operation

* updated delete msg

* encrypt constant value before saving and decrypt before sending back to controller

* adds group permission for org constants and required migrations

* adds ability to create constant

* adds group permissions and fixes migrations

* adds workspace constant permission to workspace settings UI

* ToolJetUI - componenst, ref: ee/5c92dc9c03b73d7006562d71d639fe4eb1971dee

* Org constants UI

* UI updates: display constant value as per enviroment

* Added client side pagination

* groups without create/edit/delete permission can only view the the constants

* group permission: Create and Edit - UI updates

* create/update/date flow - UI

* extending api support to create constant in multiple environments

* UI - add constant for multiple envs

* disable name input for update operation

* UI fixes and updates

* adds deprecating banner to variables dashboard

* removes update/create from UI --variables

* adding depricating soon alert in codehinter when workspace vars are used

* extra check to display the banner in preview of cdehinter

* resolves constants for admin in client-side

* resolves constants client-side and server side for queries

* include grp permission for create/delete for org constants

* resolves org constants in runJS and runPY

* cleanup

* updated the tab UI

* fixed: constant pagination footer

* fixes client side pagination bug

* adds docs link

* ui updates and fixes ui flickering on closing the drawer

* refactor updating table data

* adds error state to constant forms

* remove the alert from runJS and runPY after 5s

* added max length constraint for constant value

* refactor: component form

* delete only constant as per environment

* remove unwanted logs

* resolves constants in gds connection forms

* resolve gds source options for testConnections, preview and runQuery

* UI style fixes: banner

* remove alert banner for runJS and runPY

* input text color fixed

* style fixes for disabled inputs

* Edit constant- Until value is changed- CTA should be disabled

* adds tooltip for table name and value

* adds tooltip for disbaled input in edit drawer

* updated the tooltip position

* handle input height on type for large strings

* added empty state

* adds new badge for workspace constants

* substring should be different for viewers

* resolve constants in viewer

* add support to resolve constants for widgets and queires in public apps

* changed the api endpoint for org constant for env

* bugfix: handle org constants for encrypted value from source options

* add support to resolve app variables and constants in a single single

* fixes: multiple multiline and same line variables

* refactor

* cleanup

* remove encryption for ce

* remove group permission from permission dashboard

* text transform for badge

* added padding for each table row

* updated alert banner padding

* updated alert banner padding

* updates width for empty banner

* refactor

* adds tests for constant api

* added validations for constant name

* updates textare dynamic form

* updates the resolvers for constants

* removes decryptiong for source options in services

* refactor - frontend

* resolved conflicts

* fixes: typo-1 ~ workspace variables alert

* fixes: inconsistency in alert info icon

* fixes: naming convention consistency

* fixes: dark theme for confirm box

* disable create button for  add constant with same name,

* adds error state for updating constant with same value

* fixes: error message typo

* fixes: error message typo

* fixes position of tooltip

* fixes frontend lint issues

* update lock file

* UI updates and typos

* cleanup-refactor

* checking error state before creating

* should check all error states

* resolving multiple constants and app variables in a single line

* reafactore

* fixed: depricating icon : codehinter preview box

* remove log

* remove repeated logic for deleteOrgEnvironmentConstant

* only return status code for delete request for org constants

* Add data-cy for workspace constants elements (#7251)

* updates contants doc link

---------

Co-authored-by: Ajith KV <ajith.jaban@gmail.com>
2023-08-14 14:28:51 +05:30
Arpit
38b92e27f5
Adds guards to plugins API endpoints based on env (#6579)
* Add guards to plugins API endpoints based on environment variable

* clean up
2023-05-30 20:08:40 +05:30
Arpit
2ddbd3309e
Feature - ToolJet Copilot 🚀 (#6074)
* add support for Copilot assistance

* clean up

* fixes workspace settings crash

* refactor and resolved review comments

* api endpoint should be inferred from env

* copilot style fixes

* copilot style fixed

* beta tag fro copilot settings: workspace

* fire toast for unauthorised recommendation request

* include the previous code with the newly generated response

* scoping apikeys to orgs

* controller updates for copilot

* copilot org key updated

* disable toggle for new workspaces

* disable toggle for new workspaces

* fixes: multi-workspace toggle updates

* uninstall unsued packages

* fixes button state for copilot in transformations

* updated the urls
2023-05-11 15:04:48 +05:30
Muhsin Shah C P
6c1c692b12
fix: conflict b/w yjs auth_token and session token (#5962) 2023-04-07 13:10:43 +05:30
vjaris42
542aa5b278
API Support for getting data source options under a datasource (#5948)
* feature: multi env support for datasources

* revert: datasources by env id api

* revert: datasources by env id api:frontend

* lint fixes

---------

Co-authored-by: Midhun G S <gsmithun4@gmail.com>
2023-04-06 17:52:28 +05:30
Muhsin Shah C P
32740743e1
[Improvement] URLs scoped with workspace id (#5487)
* add: new URL prefix

* fix: working on home page

* add: profile path

* playing with rxjs

* removed context part

* working on path changes

* changing routes
- TODO: replace the workspaceId with actual id

* redo: public apps path

* initial commit

* added authorize API

* remove privileges from auth response

* fixed some api issue
- added subscriptions

* fix: redirect url workspace-id null issue

* fix: switch workspace

* fix: organization list mapping
- menu item paths

* fix: preview url
- editor, viewer permission mapping

* jwt fix

* fix: some url issue
- permission mappings
- workspace login

* fixed some issues
- user invite workspace-id
- org settings menu item default selected item issue

* app viewer fixes

* fixing workspace login issues

* fix

* fixing issues
- tooljet db
- path issues
- refatoring the code

* fix: workspace vars permissions

* fix: multi-page handle

* fix: create app from template

* fix: bulk user upload

* fix: import app
- clone app
- upload profile image

* fix: onboarding

* fix: log out

* fixed multi-workspace logout issue

* fix: launch btn

* fix: oauth2

* fixes

* fix: sso login

* fix: workspace sso login

* fixing sso issues

* fix: moved list of orgs to rxjs
- fixed switching issues

* reverting some changes

* fixed some minor bugs

* fixing sso redirect url issues

* fix: switching network timing issues

* fix: back to workspace-id

* fix: tj-database
- refactored the code - removed org id from some pages
- will get the org id from the service file only

* fix: multi-pages

* fix: infinite loop issue

* fixing workspace switching issue

* fixes
- comment link
- logout & private route redirect url

* fix: wrong uuid error

* fixing subpath
- fixed most of the places
- need to test & fix workspace login, sso, new account

* fix: subpath workspace login

* fix: rxjs handle bug

* Revert "fix: tj-database"

This reverts commit 9632ec2ff0.

* fix: reverted tj-db changes

* fix: subpath sso

* typo fix

* fix: existing session issues

* new: switch workspace page

* fix: modal dark-mode

* added default sso support

* fixes
- subpath workspace switching
- handle wrong routes

* fix: manager user button
- refactored the code

* removed SINGLE Workspace feature

* rebase

* add: change modal text

* fix: added validation

* fixed private app 401 issue

* initial commit

* fix: logged out session multi-tab issue

* refactoring the code

* fix: redirect url issue

* added auth-token in cookies

* Fix: failing e2e specs

* added session API

* fix: backend session guard

* fix: removing user details from local storage

* fix: null wid

* undo and redo

* fix: login page

* fix: viewer login redirection

* fix: login page redirection

* fix: public apps logout issue

* added session storage and scheduler

* added profile api

* fix: sso login
- switch workspace
- login page
- setup admin

* working on fixes

* fix: socket issue

* fix: setup admin api

* connected profile & logout apis

* fix: malfunctioned auth token case

* fix: realtime avatar

* fix: profile avatar

* fix: Realtime cursors avatar

* setting max age for auth token cookie

* add: Go to login page if logout api returns 401

* fix: subpath login

* fix

* fix: app logout [viewer]

* fix: authorize page

* remove expiry from jwt

* fix: integrations route
- session api

* small fix

* fix: updated profile

* fix: workspace login [logged user]

* fix: oauth and another workspace page issue

* fixed app preview logout issue

* subpath fix

* fix: subpath app id

* fix: selected state didnt change for apps page [subpath]

* fix

* add cookie parser to test app

* specs added

* increased user session expiry time

* test: session & new apis

* working on test cases

* fix: onboarding issue

* fixing specs

* fix: test cases

* fix: removing profile api calls

* some fixes

* fixing rebase issues

* fix: global ds issues

* fix: app is crashing

* fix: back to text

* fix: oauth test cases

* fix: test-helper

* fix: onboarding test cases

* fix: tests again

* refactoring the code

* latest develop merging precautions
- fixed a minor null issue

* fix: typo

* fix :menu issues due to the merging

* fix: - clicking on tooljet logo didnt redirect to login page for public apps
- private app preview doesnt load after login

* subpath fixes

* fixed back to issue

* PR changes

* fix: spec fixes for EE

* doc: URL scoped for workspace

---------

Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
Co-authored-by: Shubhendra <withshubh@gmail.com>
2023-04-06 16:42:58 +05:30
vjaris42
bb9a211e55
[Feature] :: Global datasources (#5504)
* add: columns and migrations for data queries and sources

* add: migrations for app environments

* fix: datasources and queries api

* fix: import apis

* add: radixui colors

* create: global datasource page

* fix: version creation not including global datasources queries

* fix: version deletion failure

* fix: ui and other bugs

* add: check for abilities on global ds

* fix: bugs

* fix: existing test cases

* fix: migration and bugs

* fix: rest api oauthorize bugs

* hide: add button for local ds

* fix: query bugs

* fix: new organization environment creation

* fix: local ds label showing for new apps

* fix: on page load queries for preview app and published app

* fix: import bugs from v1

* fix: merge conflicts

* fix: import apis

* fix: apss with mulit envs

* fix: ui bugs

* fix: environments not being created on db:seed

* fix: ui bugs

* fix: route settings for global datasources

* fix: customer dashboard template

* fix: local ds queries not being saved

* fix: runpy issues

* changes: ui

* fix: migration issues

* fix: ui

* hide datasources when no local datasources

* fix: test cases

* fix: unit test cases and global queries on app import/export

* cleanup

* add: package-lock file

* undo: migration rename

* cleanup

* fix: ui bugs

* migration fixes

* fix: dark mode issues

* fix: change datasource failing on query create mode

* fix: workspace selector issues

* fix: clickoutside for change scope option

* migration changes

* fix: open api issue

* reverting configs changes

* [Fix] Global datasources & Environment Id issue (#5830)

* fix: oauth env id issue

* code changes

---------

Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
2023-03-24 21:41:21 +05:30
Muhsin Shah C P
7f020ef296
[bug-fix] The public app is redirecting to the login page if the user token expired. (#5461)
* fix: public app issue
- removed auth guard from metadata api

* add: removed auth token from metadata apis

* PR changes

* redo: auth guard

* reverting some changes
2023-02-24 09:32:09 +05:30
Muhsin Shah C P
1230551988
[bug-fix] Public app is redirecting to login page [Subpath] (#5338)
* fix: sub path issue

* fix: preview app login issue
2023-01-19 20:56:34 +05:30
Kiran Ashok
d3df7c3123
Bugfix :: Onboarded data saved to telemetry (#5205)
* feat :: onboarded data forwarded to telemetry

* fix :: called temeltry api on setup sucees

* revert merge

* update endpoints for new onboarding data

* adding try catch

* added try catch for APIs

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
2023-01-09 17:33:50 +05:30
Arpit
bfceb37da9
[Improvement] Internal storage - table validations (#5034)
* adds dto for create and rename tables, renametable service

* adds constraints for psql reserved keyword for column name

* validations for column default value
2022-12-26 17:06:25 +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
Kiran Ashok
b66d38cf45
Feature :: onboarding self hosted users (#4933)
* fix :: keystroke not taken initially

* fix :: trim company name

* fix :: setting autocomplete to off

* removing redirectsso and confirmation page as its unused now

* few ui corrections , laoding states

* Fixed organization login sso issue

* Add db transaction wrap

* refactoring the code

* flow changes

* Added db tranxn wrap to auth services

* adding accept invite screen

* added verify organization token route

* fixes

* adding disable_multiworkspace to default config

* cleanup

* intermediate commit :: revamping organization page , api integration

* fixes

* feat :: organization token send in invite from org account setup

* fix :: making orgtoken conditional and ui changes / functional updates organization invte

* removed unwanted code

* fix :: login/account setup for sso user in single workspace flow

* fixes

* fix :: CTA loader misaligned

* fix :: sso login single workspace

* fix

* fix :: role check db

* fix :: role check DB

* fix :: setting fallback screen for organizational invite

* feat :: org signup

* fix :: loading states bug

* fix :: loading bug

* fixes

* added password length validation

* fixes

* fix: sub path for static asset serve (#4665)

* fix: sub path for static asset serve

* fix: sub path for static asset serve

* fix: sub path for static asset serve (#4668)

* Bugfix :: Sort event fired on sort removal (#4542)

* onsort applied on sort removal

* bugcheck

* removing unused toast

* Feature :: Table image column type addition (#4547)

* feat :: adding column type image

* feat :: adding image fit property

* Fix :: Closing of textarea ontype Table widget (#4549)

* fix :: closing of textarea ontype

* fix :: bug not able to clear value

* bug fixed : generate file in text is not supported (#4346)

* add eslintignore for frontend (#4669)

* [cypress] Fix failing manage SSO spec in single workspace #4390 (#4509)

* added  [data-cy=login-page-logo] also removed one dropdown of same name

* Revert command.js

* call loginpagelogo

* Fixed toast test case

* updated text

* remove timer

* revert linting

* Github text fixed

* Replaced the woocommerce connection screenshot from dark to light one (#4654)

Signed-off-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>

Signed-off-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>

* gifs for Keyboard Shortcuts Added (#4643)

* Fix. Image to button group docs (#4630) (#4631)

* Add. Image to button group docs (#4630)

* Update docs/docs/widgets/button-group.md

Co-authored-by: Shubhendra Singh Chauhan <withshubh@gmail.com>

* [added] Translated global strings in french #4169 (#4232)

* [added] Translated global strings in french 

Added global strings translated to French language , Issue: #4169

* [localization ] Fixed the Proposed Changes in French Translation

* [localization ] Fixed the Remaining Proposed Changes in French Translation v2

* Update selectHost

Co-authored-by: roiLeo <medina.leo42@gmail.com>

Co-authored-by: Shubhendra Singh Chauhan <withshubh@gmail.com>
Co-authored-by: roiLeo <medina.leo42@gmail.com>

* [localization] issue-4188 added spanish keys for card app (#4229)

* issue-4188 added spanish keys for card app

* IT-4188 fixed PR

* Improve toast message shortcut on component deletion (#4513)

* Improve toast message shortcut

* Improved user agent check

Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>

* Improved user agent check

Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>

* feat: Add DTO for organization create (#4651)

* feat: Add DTO for organization create

* chore: fix eslint error

* chore: eslint ...

* Fixed failing manage SSO spec in multi workspace (#4658)

* Fixed failing manage SSO spec in multi workspace

* github to gitHib

* persist data without saving the query (#4649)

* Fixed failing dashboard specs (#4667)

* Add and modify data-cy

* Fix failing manage users spec in multiworkspace

* Fix failing user permission spec in multi workspace

* Fix failing dashboard spec

* Fix failing manage group spec

* Fix failing manage users spec in single workspace

* Fix failing user permission spec in single workspace

* indentation changes

* Remove wait

* [Marketplace] AWS S3 (#4670)

* fix: sub path for static asset serve (#4665)

* fix: sub path for static asset serve

* fix: sub path for static asset serve

* marketplace: s3

* rename operations file to query_operations

* fix: crash on click of existing plugin

* remove unused console

* adds missing async await

* add isoptional for repo

* plugin card ui style fixes

* update plugin name

Co-authored-by: Gandharv <gandharvkumargarg@gmail.com>

* fix: Added a modal with warning message on disabling password (#4552)

* Copy to clipboard (#4588)

* Update EventManager.jsx

* Update EventManager.jsx

* Update EventManager.jsx

* fix :: adding sso configs based on org id

* loader and password check

* multiworkspace invite flow updated

* restrict only active users

* fix

* added error message for password length check

* fix :: password trim

* fix :: all happy flows tested , single and multi exept sso

* fix: message on invalid password

* revert: package-lock.json file

* feat :: changing ui for user present for org invite in  multi workspace

* fix :: remove password check for existing user multiworkspace

* fix :: added fallback

* fix :: typo

* fix :: adding checks

* fix

* feat :: for single workspace user logged in directly

* fix :: code meaning fix

* fix

* fixes

* fix

* fix

* fix

* fix :: sso fix and bug updates

* fix :: json resolution for only single workspace

* token :: app level

* fix

* fix

* fixes

* fix

* ui fixes , removed loading and added checks

* showing sso options

* fix :: back to

* fix single workspace

* adding sso check ui

* sso single workspace fix

* code refactoring

* fix :: bugfix on click enter submit in signup and signin

* qa fix :: typo

* fix for sending welcome email on invite

* bug fixes

* fix

* qa bug fixes and translations

* switch workspace fixes

* fix :: company name taking empty spaces

* adding some more translations

* making all screens center aligned

* fix :: login page not loading

* fix :: singup conditional

* fixes

* typo fix

* fix :: for diabled cases of sso , password login , disabled signup

* fix

* fix :: added max input length for workspace name

* fix

* fix :: missing validation on edit email

* fix :: all screens vertically aligned

* fix :: alignment link expiry screen

* fix

* fix :: styling terms and condition

* fix :: for redirect url loginto workspace fixed according to new design

* typo

* feat :: removed onboarding modal , redundant

* typo fix

* fix

* name is now mandatory for sign up

* fix for password retry count not updating

* showing onboarding questions for sign up users

* fix :: spaces in password in diff screens

* fix :: darkmode initial

* fix for accept organization invite success message

* fix :: dark mode

* fix :: dark mode

* feat :: updating all dark mode images

* bugfix img

* bugfix ::img

* dark mode :: improvements

* single workspace signup fix

* updating images

* stylefix

* self review :: bugfixes

* sign up page fix

* fix for asking password for single ws activation

* or separator fix for signup page

* fix

* feat :: updating cta images

* fix :: loader bugs

* hiding sso options in org invite, sign in via sso

* fix :: dark mode img

* bugfixes :: cta changed

* Fix :: onboarding styles fixes (#4773)

* fix: styling in authWrappers

* cleanup

Co-authored-by: Vijaykant Yadav <vjy239@gmail.com>

* fix :: conflicting styles

* fix :: loaders , and added header to link expired screen , style fixes

* fix :: mobile onboarding btn

* fix :: loading onboarding completion

* fix :: subpath not taking img path

* fix :: path

* fix :: removing trailing img / for subpath

* fix :: cta img

* fix :: remove scrollbar

* last name as undefined in comments

* fixed loading bug and cursor of company input onboard form

* comments fixes

* fix :: removing verify email screen on org invite

* comments fix

* fix :: no login methods

* fix :: bug in expired  org invite verification link

* fix :: edge case name being empty when user types multiple spaces

* fix :: comments breaking

* fix :: notification breaking

* fix :: user groups table lastname

* fix for sso redirection

* fix :: empty first and last name during org invite

* bug fixed :On updating any permissions under permission tab, currentTab switches to app tab (#4734)

* fix: popout editor closing for tables (#4674)

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

* Added default value for backgroundColor In NumberInput (#4378)

* fix: added background styles for number input

* fix: removed additional f from the background color property

* fix: added backgroundColor property from styles

* fixes: default bg color for dark mode

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

* Added the hover effects on datasources (#4303)

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

* Added Background Color to Text Input (#4194)

* Added Background Color to Text Input

* Added Default Value for Background Color

* added default value and make background of text input consistent with the dark theme

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

* feat: Add update version button on installable plugin (#4766)

* feat: Add update version button on installable plugin

* use id from update method

* removes redundant check

* use plugin id for fetching files from s3

* fetch latest plugins once updated

* disable update and remove buttons while update in progress

* replace href with link-span cx + send body in patch request

* fix: Dark mode on table's `Striped` and `Striped & Bordered` table type mode (#4611)

* [ Hotfix ] :: Hard to resize table columns  (#4438)

* fix :: hard to resize , scrollbar should not be visible

* fix :: resizer not working in pewview

* Enhancement : [RangeSlider widget] Bind onChange event (#4192)

* add onChange event and its handler

* add handler for slider change as well

* fix lint

* added onChange fire event when slider value is changed

Co-authored-by: manishkushare <kushare.manish9@gmail.com>

* Added data-cy for table widget elements (#4792)

* Add data-cy to tooltip label

* Add data-cy to table filter pop-over

* Add data-cy to table elements

* Add review changes

* [docs] Widget updates (#4793)

* widget updates

* minor update

* Update README.md (#4784)

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Fixed grammatical errors in localization doc (#4800)

* [docs] widget property updates (#4806)

* fixes

* added resend invite API

* Onboarding revamp test cases (#4770)

* fix: test cases for oauth

* fix: app controller test cases

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: single workspace test cases

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: test cases for oauth

* fix: single workspace test cases

* add: test cases for invitation links

* add: test cases for sso

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: test cases for oauth

* fix: single workspace test cases

* add: test cases for invitation links

* fix: test cases for oauth

* fix: app controller test cases

* chore: PR fixes and cleanup

* add: test cases for sso

* fix: app test cases

* fix: linting in files

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: test cases for oauth

* fix: single workspace test cases

* add: test cases for invitation links

* fix: test cases for oauth

* fix: app controller test cases

* chore: PR fixes and cleanup

* add: test cases for sso

* fix: app test cases

* fix: test cases for oauth

* fix: linting in files

* rebase: from feature/onboarding-revamp

Co-authored-by: Vijaykant Yadav <vjy239@gmail.com>

* feat :: api update resend invite

* loading state resend mail

* adding loading state

* checkpoints shown only till tablet

* fix: failing test cases for sso

* pr:: changes changed all imports and removed unwanted fragments

* pr changes

* fix :: naming images

* fix :: style organized for onboarding

* fix for user seed issue

* removing unwanted styles

* Setting darkmode from props :: onboarding (#4885)

* passing darkmode as props to components

* error toast

* Review comment :: rename env variable

* Pr :: changes , code cleanup onborading form

* develop merge

* init :: CE setup page

* pr changes ::form splitted to components

* admin , worspace ui :: init save

* password warning added

* chore :: lint folder renaming

* chore :: lint fix

* review comments

* fixes

* fix for test cases failure

* changes :: removed empty divs

* cleanup

* feat :: onboarding setup completed

* updates

* first-user setup account

* fixes

* add guard for first user sign up api

* validation changes

* feat :: api integration

* workspace is mandatory for first user

* fix :: code cleanup , darkmode

* feat :: signup not enable info card

* fix code cleanup

* Fixed all e2e test cases

* Fixed an issue

* added style changes , signup status

* deisgn review style changes

* self review :: code improvements

* pr review changes

* removed unwanted state

* typo fixes

* feat :: improved ux on form , autofocus and enter key support, removing warnings

* pr review changes :: common constants and helpers moved

Signed-off-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>
Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
Co-authored-by: Gandharv <gandharvkumargarg@gmail.com>
Co-authored-by: Manish Kushare <kushare.manish9@gmail.com>
Co-authored-by: Akshay <akshaysasidharan93@gmail.com>
Co-authored-by: alammoiz <moixalam@gmail.com>
Co-authored-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>
Co-authored-by: Akhilesh Kumar Mishra <79476272+iamakhileshmishra@users.noreply.github.com>
Co-authored-by: Hemanth Kumar <49117799+Hemanthhari2000@users.noreply.github.com>
Co-authored-by: Shubhendra Singh Chauhan <withshubh@gmail.com>
Co-authored-by: akk312000 <akk312000@gmail.com>
Co-authored-by: roiLeo <medina.leo42@gmail.com>
Co-authored-by: Jose Morales <jmoralesmnz@gmail.com>
Co-authored-by: 3t8 <62209650+3t8@users.noreply.github.com>
Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>
Co-authored-by: Santosh Bhandari <bsantosh909@gmail.com>
Co-authored-by: Arpit <arpitnath42@gmail.com>
Co-authored-by: Ajith KV <ajith.jaban@gmail.com>
Co-authored-by: Akarsh Jain <72064462+akarsh-jain-790@users.noreply.github.com>
Co-authored-by: Utsav Paul <91927689+Smartmind12@users.noreply.github.com>
Co-authored-by: Vijaykant Yadav <vjaris42@Vijaykants-MacBook-Pro.local>
Co-authored-by: Vijaykant Yadav <vjy239@gmail.com>
Co-authored-by: geisterfurz007 <geisterfurz007@users.noreply.github.com>
Co-authored-by: Kavin Venkatachalam <kavin.saratha@gmail.com>
Co-authored-by: Abhushan Gautam <carefreeav09@gmail.com>
Co-authored-by: Syed Ansar <82027712+Syed-Ansar@users.noreply.github.com>
Co-authored-by: Rahul Sunil <rahulsunil2@gmail.com>
Co-authored-by: Srisuma Atluri <40341173+Srisuma13@users.noreply.github.com>
Co-authored-by: Midhun Kumar E <midhun752@gmail.com>
Co-authored-by: Navaneeth Pk <navaneeth@tooljet.io>
Co-authored-by: Akasshhg <91525166+gogoiakash2311@users.noreply.github.com>
2022-12-21 00:13:18 +05:30
Muhsin Shah C P
44d450725a
[fix] Redirect URL didn't work for preview apps (#4997)
* Fixed redirect URL Issue
- refactored the code
- added intercepter (valid app check)

* fixed another code

* code refactoring
2022-12-20 14:53:59 +05:30
Midhun G S
487252c5ea
Feature - Multi Environment support (#4833)
* initial commit

* multi env changes

* multi-env changes

* entity fixes

* data query changes

* fix

* trying to avoid conflict with EE

* moved version creation to app creation function

* fixing some issues

* execution of data query

* revert options changes

* changed migration

* fixed some migration issues: testing migration

* multi env support

* app import export fix

* fixes

* migration fixes

* removed plugins from data query

* fixing some migration issues

* fixes

* remove console log

* fix

* front end api changes

* backward compatibility for app import

* Fixed a bug

* correcting some mistakes

* Added constraints and fixed some issues

* changes

* fix for data source listing

* fixing version operation issues

* remove kind from data query

* removed kind from data query

* fixes

* fixes

* fix for version creation

* migration fixes

* Fixed preview and run query issues

* Fix: new version and event query id issue

* fixed rest api oauth issue
- next test refresh token

* import export changes

* fixes for app import

* import fix

* added await for for loops

* fix

* fix for migration

* Fixed backend oauth-envId issue

* import export changes

* migration fixes

* fix

* fix

* fix for app import from 0.9.0

* test case fixes

* test case fixes

* making app name mandatory for import

* adding type for options

* fix: imported apps query linking issues

* review changes

* lint issue fixes

* added on delete cascade

Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
2022-12-09 20:23:42 +05:30
Kiran Ashok
d390bd413b
Feature :: Onboarding revamp (#4044)
* typo

* password length check , ui fixes

* fixing typos

* fixing navbar ui

* updated icon , changed history to Link

* fix :: repopulating data

* fix :: key added for non sso logins

* ui improvements , added loading states , bugfixes

* changing folder names

* fix :: removing scroll and fixing to 100%

* fix :: all spell mistakes corrected

* fix :: bug on password show/hide

* fix :: bug in button animation state

* fix :: added loader states for all onboarding buttons

* fix :: imports

* feat :: centering ui for signup and login pages

* bugfixes :: minor

* feat :: added mediaquery for mobile screens

* fix :: typo spell check

* PR changes
- instance configs
- reused jwt payload

* fix :: loading bugfix

* feat :: added loader for verification sucess screen

* styles :: loader

* fix :: typo corrections

* fix :: image path

* fix :: darmode & enter press in onboard

* Fixed organization name issue

* fix :: keystroke not taken initially

* fix :: trim company name

* fix :: setting autocomplete to off

* removing redirectsso and confirmation page as its unused now

* few ui corrections , laoding states

* Fixed organization login sso issue

* Add db transaction wrap

* refactoring the code

* flow changes

* Added db tranxn wrap to auth services

* adding accept invite screen

* added verify organization token route

* fixes

* adding disable_multiworkspace to default config

* cleanup

* intermediate commit :: revamping organization page , api integration

* fixes

* feat :: organization token send in invite from org account setup

* fix :: making orgtoken conditional and ui changes / functional updates organization invte

* removed unwanted code

* fix :: login/account setup for sso user in single workspace flow

* fixes

* fix :: CTA loader misaligned

* fix :: sso login single workspace

* fix

* fix :: role check db

* fix :: role check DB

* fix :: setting fallback screen for organizational invite

* feat :: org signup

* fix :: loading states bug

* fix :: loading bug

* fixes

* added password length validation

* fixes

* fix: sub path for static asset serve (#4665)

* fix: sub path for static asset serve

* fix: sub path for static asset serve

* fix: sub path for static asset serve (#4668)

* Bugfix :: Sort event fired on sort removal (#4542)

* onsort applied on sort removal

* bugcheck

* removing unused toast

* Feature :: Table image column type addition (#4547)

* feat :: adding column type image

* feat :: adding image fit property

* Fix :: Closing of textarea ontype Table widget (#4549)

* fix :: closing of textarea ontype

* fix :: bug not able to clear value

* bug fixed : generate file in text is not supported (#4346)

* add eslintignore for frontend (#4669)

* [cypress] Fix failing manage SSO spec in single workspace #4390 (#4509)

* added  [data-cy=login-page-logo] also removed one dropdown of same name

* Revert command.js

* call loginpagelogo

* Fixed toast test case

* updated text

* remove timer

* revert linting

* Github text fixed

* Replaced the woocommerce connection screenshot from dark to light one (#4654)

Signed-off-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>

Signed-off-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>

* gifs for Keyboard Shortcuts Added (#4643)

* Fix. Image to button group docs (#4630) (#4631)

* Add. Image to button group docs (#4630)

* Update docs/docs/widgets/button-group.md

Co-authored-by: Shubhendra Singh Chauhan <withshubh@gmail.com>

* [added] Translated global strings in french #4169 (#4232)

* [added] Translated global strings in french 

Added global strings translated to French language , Issue: #4169

* [localization ] Fixed the Proposed Changes in French Translation

* [localization ] Fixed the Remaining Proposed Changes in French Translation v2

* Update selectHost

Co-authored-by: roiLeo <medina.leo42@gmail.com>

Co-authored-by: Shubhendra Singh Chauhan <withshubh@gmail.com>
Co-authored-by: roiLeo <medina.leo42@gmail.com>

* [localization] issue-4188 added spanish keys for card app (#4229)

* issue-4188 added spanish keys for card app

* IT-4188 fixed PR

* Improve toast message shortcut on component deletion (#4513)

* Improve toast message shortcut

* Improved user agent check

Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>

* Improved user agent check

Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>

* feat: Add DTO for organization create (#4651)

* feat: Add DTO for organization create

* chore: fix eslint error

* chore: eslint ...

* Fixed failing manage SSO spec in multi workspace (#4658)

* Fixed failing manage SSO spec in multi workspace

* github to gitHib

* persist data without saving the query (#4649)

* Fixed failing dashboard specs (#4667)

* Add and modify data-cy

* Fix failing manage users spec in multiworkspace

* Fix failing user permission spec in multi workspace

* Fix failing dashboard spec

* Fix failing manage group spec

* Fix failing manage users spec in single workspace

* Fix failing user permission spec in single workspace

* indentation changes

* Remove wait

* [Marketplace] AWS S3 (#4670)

* fix: sub path for static asset serve (#4665)

* fix: sub path for static asset serve

* fix: sub path for static asset serve

* marketplace: s3

* rename operations file to query_operations

* fix: crash on click of existing plugin

* remove unused console

* adds missing async await

* add isoptional for repo

* plugin card ui style fixes

* update plugin name

Co-authored-by: Gandharv <gandharvkumargarg@gmail.com>

* fix: Added a modal with warning message on disabling password (#4552)

* Copy to clipboard (#4588)

* Update EventManager.jsx

* Update EventManager.jsx

* Update EventManager.jsx

* fix :: adding sso configs based on org id

* loader and password check

* multiworkspace invite flow updated

* restrict only active users

* fix

* added error message for password length check

* fix :: password trim

* fix :: all happy flows tested , single and multi exept sso

* fix: message on invalid password

* revert: package-lock.json file

* feat :: changing ui for user present for org invite in  multi workspace

* fix :: remove password check for existing user multiworkspace

* fix :: added fallback

* fix :: typo

* fix :: adding checks

* fix

* feat :: for single workspace user logged in directly

* fix :: code meaning fix

* fix

* fixes

* fix

* fix

* fix

* fix :: sso fix and bug updates

* fix :: json resolution for only single workspace

* token :: app level

* fix

* fix

* fixes

* fix

* ui fixes , removed loading and added checks

* showing sso options

* fix :: back to

* fix single workspace

* adding sso check ui

* sso single workspace fix

* code refactoring

* fix :: bugfix on click enter submit in signup and signin

* qa fix :: typo

* fix for sending welcome email on invite

* bug fixes

* fix

* qa bug fixes and translations

* switch workspace fixes

* fix :: company name taking empty spaces

* adding some more translations

* making all screens center aligned

* fix :: login page not loading

* fix :: singup conditional

* fixes

* typo fix

* fix :: for diabled cases of sso , password login , disabled signup

* fix

* fix :: added max input length for workspace name

* fix

* fix :: missing validation on edit email

* fix :: all screens vertically aligned

* fix :: alignment link expiry screen

* fix

* fix :: styling terms and condition

* fix :: for redirect url loginto workspace fixed according to new design

* typo

* feat :: removed onboarding modal , redundant

* typo fix

* fix

* name is now mandatory for sign up

* fix for password retry count not updating

* showing onboarding questions for sign up users

* fix :: spaces in password in diff screens

* fix :: darkmode initial

* fix for accept organization invite success message

* fix :: dark mode

* fix :: dark mode

* feat :: updating all dark mode images

* bugfix img

* bugfix ::img

* dark mode :: improvements

* single workspace signup fix

* updating images

* stylefix

* self review :: bugfixes

* sign up page fix

* fix for asking password for single ws activation

* or separator fix for signup page

* fix

* feat :: updating cta images

* fix :: loader bugs

* hiding sso options in org invite, sign in via sso

* fix :: dark mode img

* bugfixes :: cta changed

* Fix :: onboarding styles fixes (#4773)

* fix: styling in authWrappers

* cleanup

Co-authored-by: Vijaykant Yadav <vjy239@gmail.com>

* fix :: conflicting styles

* fix :: loaders , and added header to link expired screen , style fixes

* fix :: mobile onboarding btn

* fix :: loading onboarding completion

* fix :: subpath not taking img path

* fix :: path

* fix :: removing trailing img / for subpath

* fix :: cta img

* fix :: remove scrollbar

* last name as undefined in comments

* fixed loading bug and cursor of company input onboard form

* comments fixes

* fix :: removing verify email screen on org invite

* comments fix

* fix :: no login methods

* fix :: bug in expired  org invite verification link

* fix :: edge case name being empty when user types multiple spaces

* fix :: comments breaking

* fix :: notification breaking

* fix :: user groups table lastname

* fix for sso redirection

* fix :: empty first and last name during org invite

* bug fixed :On updating any permissions under permission tab, currentTab switches to app tab (#4734)

* fix: popout editor closing for tables (#4674)

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

* Added default value for backgroundColor In NumberInput (#4378)

* fix: added background styles for number input

* fix: removed additional f from the background color property

* fix: added backgroundColor property from styles

* fixes: default bg color for dark mode

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

* Added the hover effects on datasources (#4303)

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

* Added Background Color to Text Input (#4194)

* Added Background Color to Text Input

* Added Default Value for Background Color

* added default value and make background of text input consistent with the dark theme

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

* feat: Add update version button on installable plugin (#4766)

* feat: Add update version button on installable plugin

* use id from update method

* removes redundant check

* use plugin id for fetching files from s3

* fetch latest plugins once updated

* disable update and remove buttons while update in progress

* replace href with link-span cx + send body in patch request

* fix: Dark mode on table's `Striped` and `Striped & Bordered` table type mode (#4611)

* [ Hotfix ] :: Hard to resize table columns  (#4438)

* fix :: hard to resize , scrollbar should not be visible

* fix :: resizer not working in pewview

* Enhancement : [RangeSlider widget] Bind onChange event (#4192)

* add onChange event and its handler

* add handler for slider change as well

* fix lint

* added onChange fire event when slider value is changed

Co-authored-by: manishkushare <kushare.manish9@gmail.com>

* Added data-cy for table widget elements (#4792)

* Add data-cy to tooltip label

* Add data-cy to table filter pop-over

* Add data-cy to table elements

* Add review changes

* [docs] Widget updates (#4793)

* widget updates

* minor update

* Update README.md (#4784)

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Fixed grammatical errors in localization doc (#4800)

* [docs] widget property updates (#4806)

* fixes

* added resend invite API

* Onboarding revamp test cases (#4770)

* fix: test cases for oauth

* fix: app controller test cases

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: single workspace test cases

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: test cases for oauth

* fix: single workspace test cases

* add: test cases for invitation links

* add: test cases for sso

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: test cases for oauth

* fix: single workspace test cases

* add: test cases for invitation links

* fix: test cases for oauth

* fix: app controller test cases

* chore: PR fixes and cleanup

* add: test cases for sso

* fix: app test cases

* fix: linting in files

* fix: test cases for oauth

* fix: app controller test cases

* remove: unused vars

* chore: PR fixes and cleanup

* fix: test cases for oauth

* fix: single workspace test cases

* add: test cases for invitation links

* fix: test cases for oauth

* fix: app controller test cases

* chore: PR fixes and cleanup

* add: test cases for sso

* fix: app test cases

* fix: test cases for oauth

* fix: linting in files

* rebase: from feature/onboarding-revamp

Co-authored-by: Vijaykant Yadav <vjy239@gmail.com>

* feat :: api update resend invite

* loading state resend mail

* adding loading state

* checkpoints shown only till tablet

* fix: failing test cases for sso

* pr:: changes changed all imports and removed unwanted fragments

* pr changes

* fix :: naming images

* fix :: style organized for onboarding

* fix for user seed issue

* removing unwanted styles

* Setting darkmode from props :: onboarding (#4885)

* passing darkmode as props to components

* error toast

* Review comment :: rename env variable

* Pr :: changes , code cleanup onborading form

* develop merge

* pr changes ::form splitted to components

* password warning added

* chore :: lint folder renaming

* review comments

* fixes

* fix for test cases failure

* changes :: removed empty divs

* cleanup

Signed-off-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>
Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
Co-authored-by: Gandharv <gandharvkumargarg@gmail.com>
Co-authored-by: Manish Kushare <kushare.manish9@gmail.com>
Co-authored-by: Akshay <akshaysasidharan93@gmail.com>
Co-authored-by: alammoiz <moixalam@gmail.com>
Co-authored-by: Pakeetharan Balasubramaniam <bpakee@gmail.com>
Co-authored-by: Akhilesh Kumar Mishra <79476272+iamakhileshmishra@users.noreply.github.com>
Co-authored-by: Hemanth Kumar <49117799+Hemanthhari2000@users.noreply.github.com>
Co-authored-by: Shubhendra Singh Chauhan <withshubh@gmail.com>
Co-authored-by: akk312000 <akk312000@gmail.com>
Co-authored-by: roiLeo <medina.leo42@gmail.com>
Co-authored-by: Jose Morales <jmoralesmnz@gmail.com>
Co-authored-by: 3t8 <62209650+3t8@users.noreply.github.com>
Co-authored-by: Kavin Venkatachalam <50441969+kavinvenkatachalam@users.noreply.github.com>
Co-authored-by: Santosh Bhandari <bsantosh909@gmail.com>
Co-authored-by: Arpit <arpitnath42@gmail.com>
Co-authored-by: Ajith KV <ajith.jaban@gmail.com>
Co-authored-by: Akarsh Jain <72064462+akarsh-jain-790@users.noreply.github.com>
Co-authored-by: Utsav Paul <91927689+Smartmind12@users.noreply.github.com>
Co-authored-by: Vijaykant Yadav <vjaris42@Vijaykants-MacBook-Pro.local>
Co-authored-by: Vijaykant Yadav <vjy239@gmail.com>
Co-authored-by: geisterfurz007 <geisterfurz007@users.noreply.github.com>
Co-authored-by: Kavin Venkatachalam <kavin.saratha@gmail.com>
Co-authored-by: Abhushan Gautam <carefreeav09@gmail.com>
Co-authored-by: Syed Ansar <82027712+Syed-Ansar@users.noreply.github.com>
Co-authored-by: Rahul Sunil <rahulsunil2@gmail.com>
Co-authored-by: Srisuma Atluri <40341173+Srisuma13@users.noreply.github.com>
Co-authored-by: Midhun Kumar E <midhun752@gmail.com>
Co-authored-by: Navaneeth Pk <navaneeth@tooljet.io>
Co-authored-by: Akasshhg <91525166+gogoiakash2311@users.noreply.github.com>
2022-12-08 13:24:31 +05:30
Akshay
cc516b9ddc
Feature: Versioned exports (#4140)
* add ability to export app versions

* remove console.log

* add spec

* [ Enhancement ]: Ability to export versioned apps ( frontend ) (#4271)

* added basic UI and functionality

* added functionality to export all versions or selected versions of app

* added UI

* refactored the code

* refactored code

* use custom hook for checking if component is mounted or not and accessing  darkMode from props

* showing current version first

* added spacing between container and input tag and input tag and text

* added cursor pointer on the version container

* removed use mount to avoid extra re-rendering component

* fixed typo request

* update permissions

* fix permissions

Co-authored-by: Manish Kushare <kushare.manish9@gmail.com>
2022-12-02 14:13:28 +05:30
Muhsin Shah C P
fb41192e1d
[enahancement] Added app loader page (#4389)
* Working on an issue

* Added loader skeletons

* Working on skeletons

* Completed basic app loader design
- dark theme

* Added switch organization function

* cleaning code

* Added loader to viewer page

* Fixed svg size

* style fix

* added loader

* have added try-cath

* added redirect path for sso login

* handle json parse error

* Fixed edit app issue

* Code refactoring
- fixed some issues

* fix

* Worked and tested some sub_path cases

Co-authored-by: Midhun G S <gsmithun4@gmail.com>
2022-11-14 12:07:47 +05:30
Akshay
6b3916c2ef
Fix: Login redirect on subpath (#4607)
* fix login redirect for subpath

* hardcode login for subpath path as basename is not picked

* fix broken links

* fix google sso link

* remove invalid condition
2022-11-02 11:37:17 +05:30
Gandharv
a1fd1fc301
[Feature] Make plugins installable (#3069)
* feat: add user avatar

* update: @nest/platform-express from 8.0.0 to 8.4.4

* add avatar_id in login response

* add user avatar upload in frontend

* align cross divider with layout icons'

* generate nest model - extensions

* Add extensions module

* Add extension to datasouce

* add not implemented check

* create extension

* refactor

* cleanup

* fix tests

* reduce the avatar size on homepage

* poc: run js code from string

* resolve conflicts

* fix conflicts

* add globals

* add new route

* add icon, manifest file upload

* complete user flow

* add flow for data queries

* add dynamic manifest instead of local datasource types

* add version attr

* remove unused code

* add version

* rename extension(s) -> plugins(s)

* add test connection method

* feat: add marketplace listing page

* Add install plugin cmd + missing attrs {name, repo, desc} to plugin

* add missing icon

* - Add npm workspaces for marketplace monorepo
- Added cassandra datasource plugin
- Created upload to s3 script
- Created plugins.json entry file

* install plugin from s3 bucket

* cleanup

* update pkg locks

* fix icon render

* cleanup

* marketplace changes

* ui changes

* operations file load fix + revert vm2

* update module from string to 3.2.1

* load plugins.json from local file instead of remote

* install plugin from local file if not production environment

* add sqlite

* feat: add plivo api plugin

* exp: add heroku 22 stack

* update assets include path

* Revert "exp: add heroku 22 stack"

This reverts commit a8926b36e1.

* add integrations link

* Add casl ability for plugin

* load host from env else fallback to default

* update imports

* remove sqlite

* typo

* add marketplace flag to cli command

* move ts and ncc to devDep

* add hygen templates for marketplace

* cli tree-node path fix

* template indent fix

* TOOLJET_URL -> MARKETPLACE_TOOLJET_URL

* add tests

* refactor: move to plugins.helper for get-service helper utility

* fix; typo

* update package-lock.json

* review changes

* remove a href

* remove bg color + redirect issue due to href

* add test url

* fix crash on search

* remove extra slash

* feat: allow plugin to be installed from github repository

* remove unwanted args from cli command

* add repo attr while save

* feat: add feature toggle for marketplace feature

* fix: make default config as false

* chore: remove hyperlink

* fix: failing build

* chore: update s3 url to point to prod

* fix failing test

* fix test

* fix: test case

* update module from string pkg

* update env

* fix test

* fix test

* add readme file

* Update README.md

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
2022-10-27 16:59:43 +05:30
Muhsin Shah C P
638fcf7223
[Feature] Now multiple users can login through RestAPI-Oauth 🚀 (#4052)
* Implemented multiple access token feature
- working on refresh token case

* worked on refresh token flow

* added multiple token ability to openapi plugin too
- fixed some bugs

* changed tokenData to token_data
- fixed some issues

* added user type with user id

* changed user type

* Rewrote some function
- added switch for enabling and disable multi auth
- fixed some bugs
- refactored the code

* fixed view app issue

* Fixed public app issue

* cleaning some code

* (public_app) add a check to avoid oauth login redirect when there is no access token

* reverted all changes of openapi (temporary)
- will add multi token functionality once done with restapi

* fixed a bug

* fixed a bug

* refactored some code

* changed the switch text

* pr changes

* changed token_data back to tokenData

* cleaning code

* removed token data from datasources query

* removed some lines

* added a comment
2022-09-19 20:27:37 +05:30
Muhsin Shah C P
fa4c8fc909
[feature] Added pagination and filtering features to users page (#3921)
* added pagination and filtering in backend

* added pagination
    - created a seperate component for users table
    - added pagination

* Added filter UI

* temporary css fix for pagination footer

* fixed pagination width issue

* now result will also clear when user clicks on clear icon

* Added seperate api for comment mentions

* Now we can search mentions by email, first and last names

* Fixed a bug
- email didn't send for comment mentions

* refactoring the code

* resolved PR changes

* Added isAdmin guard

* adding some checks

* fixed lint errors

* added wild card search

* Added no result found text

* fixed failing test case

* Working on PR changes

* Now users table avatars will load image too

* replaced skeleton classes with skeleton library component

* Completed PR changes

* added orderby

* Fixed some issues

* fixed failed test case

* have fixed some css issues

* replaced query with quersrting package

* fixed minor width issue

* Fixed some css issues

* fixed darkMode issue

* implemented on enter press search

* Refactored the code

* fixed white space issue

* refactored the code

* fixed overlapping issue

* refactored the code

* fixing some issues

* fixes

* removed guard

* code cleanup

* comments notification fix

* fixed conflict issues

* fixed css height issue

Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
2022-09-16 10:42:53 +05:30
Sherfin Shamsudeen
ecc4e0646b Merge branch 'main' into develop 2022-07-26 16:23:25 +05:30
Muhsin Shah C P
7595b74519
[hotfix] Public apps are redirecting to login page while using environment variables inside an app (#3635)
* Fixed env vars 404 error while opening public apps

* Resolved the PR changes
- Replaced currentUser with isPublic
- Added a new guard to check if the current app is not public or not

* Refactored some code

* Removed orga variable dependency from org module

* Resolved all PR changes

Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
2022-07-25 16:18:12 +05:30
Gandharv
b5850a4694
feat: trigger mail when user is mentioned in comment (#3443)
* feat: trigger mail when user is mentioned in comment

* reset email service

* fix backspace issue

* open comment on view comment clicked from email

* add helper to highlight user in mail

* reset mentioned input value when value turns empty in parent

* fix test

* use where condition + throw error

* add userId

* feat: add notification center (#3484)

* remove commented code
2022-07-25 11:14:59 +05:30
Midhun G S
3297fdb68a
Instance level SSO for Multi-Workpsace (#3441)
* changes

* changes

* e2e testcases

* fixes

* fix

* changes

* e2e fixes

* test cases

* clean up

* redirection changes

* style changes

* test cases

* testcases fix

* added test cases

* doc changes

* doc changes

* invitation token fix

* SSO General settings page changes

* added sso button to signup pages

* added helper text

* fix

* test case fixes

* fix
2022-07-18 11:40:52 +05:30
Muhsin Shah C P
dc8f69e4b2
[Feature] Organisation level environment variables 🚀 (#3068)
* Added new page for env vars

* Changed a field name

* Added some backend files
- Entity, Dto, services

* Started working with api endpoints
- implmented create
- added ability

* Added fields validation
- Added env variables into module

* Added update, delete, get apis
- Also implemented delete feature in frontend

* Implemented update operation on frontend
- Solved an api problem

* Added encryption

* Added encryption to update operation
- Exposed env vars to editor
- working on viewer

* Exposed env vars in viewer also
- Resolved a bug

* Updated edit & delete icon sizes

* Added specs
- Resolved issues that occurred while testing

* removed logout code

* Changed api endpoint

* splitted page into 3 different parts, Form & table

* Now, non-admin users can see all org env vars

* Resolved divider missing issue

* Added variable_type field

* Now secret server values will be shown as 'SecureValue'

* Now you can't update variable_type

* Now server will resolve the secret env values

* Resolved variable name issue

* Added unique constraints

* Resolved some frontend bugs

* Changed error text

* Fixed failing specs

* Added group permissions for org env vars

* Added permission checking in the backend

* Implemented permission checking in the frontend

* Edited spec for new changes

* Changed some specs and fixed failing specs

* Resolved failing case that showed up after merging with the latest develop

* Added default admin seed permissions

* Refactored some code

* Changed value to organization_id

* Fixed a bug

* Resolved a failing case

* Resolved PR changes
- Changed permission name
- Changed column type to enum
- Fixed some errors
- Refactored the code

* minor code change

* added scope

* Fixed: hide table when 0 no of vars available

* Fixed table dark theme issues

* Fixed encryption switch style

* Fixed failing cases and updated a spec

* Added %% for environment variables

* Added code to resolve single variable

* Fixed multi-variable usage

* resolved an issue

* removed extra divider

* Suggestions will also show up for %% too

* now, suggestions dropdown will only show env variables results

* env vars suggestions will not be included  in js search results

* You can't resolve env variables from js code
- Also, we can't resolve js code from env variable enclosures

* added an info text

* Resolved variables issue

* fixed Viewer issue

* Resolved a bug
- client variable was not working on query preview and run actions

* Update error message while using server variable on canvas

* Revert "Update error message while using server variable on canvas"

This reverts commit 081e1c9e29.

* Resolved all PR changes
- removed prefix 'environmentVariable'
- redefined variable evaluation
- removed environmentVariable object from inspector
- fixed a small bug

* Fixed a server side issue

Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
2022-07-01 16:20:37 +05:30
Muhsin Shah C P
2fdcfcc117
[Feature] Added ability to update and delete app folders (#3132)
* Added migration to add forder_delete column

* Added new group permission

* Added deleteFolder ability

* Added delete folder api

* Added menu icon

* Added new defualt permissions of admin

* Implemented folder menu and delete action

* Implemented update folder name in frontend

* Added folder name update feature

* Refactoring code

* Added specs for update and delete apis
- Updated test-helper function with new permissions

* Resolved failing specs

* corrected method name & add count checking to delete spec

* added organizationId scope

* Changed toast and modal texts

* Resolved a mistake

* Added a check box for update permission

* Now, an user can only delete folders, if he has the permission to view all apps

* Edited update and delete spec cases

* Added error toasts

* Refactored code

* Resolved PR changes
- Changed permission name in the frontend
- Refactored the code

* capitalized all toasts
- Changed error message

* Fixed new user permission issue

* Update a spec

Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
2022-06-16 19:41:38 +05:30
Midhun G S
b2be27c68c
Invited user should be able to login and activate account using SSO (#3164)
* SSO login flow changes

* changes

* Fix

* added more testcases

* testcase fixes

* changes

* documentations

* flow changes

* doc changes

* reviewed docs - user lifecycle and general settings

* Fixes

* docs changes

Co-authored-by: Shubhendra <withshubh@gmail.com>
2022-06-14 14:05:38 +05:30
Gandharv
5dbe795d73
feat: add user avatar (#2920)
* feat: add user avatar

* update: @nest/platform-express from 8.0.0 to 8.4.4

* add avatar_id in login response

* add user avatar upload in frontend

* align cross divider with layout icons'

* generate nest model - extensions

* cleanup

* fix tests

* reduce the avatar size on homepage

* fix review comments

* import Express

* add blob to csp
2022-06-02 12:19:49 +05:30
Akshay
fd89a0f242
Fix: Show sign up form for single organization when no org present (#3107)
* show sign up form for single organization when no org present

* update spec

* fix spec
2022-05-24 22:16:01 +05:30
Midhun G S
e656ea9259
Relabelling organization with workspace (#2992)
* Relabelling organization with workspace

* placeholder fix

* Bug fixes

* fix

* firefox issue fix
2022-05-11 16:30:25 +05:30
Midhun G S
0545528504
Support for multiple workspaces 🚀 (#2778)
* multi org changes

* Initial changes

* changes

* manage sso page

* Multi-organization changes

* Multi organization changes

* multi-org changes

* multi-org changes

* multi-org changes

* multi-org fixes

* env variables app.json changes

* multi-org-fix

* user invitation token fix

* multi-org group permission fix

* multi-org app privilege

* google oauth fix

* Remove enable signup for form login

* Multi organization fixes

* multi-org user invite flow changes

* multi-org sign up fix

* rebase and multi-org fixes

* revert testing logs

* test logs revert

* migration changes

* migration file fix

* error message changes

* git login for private email fix

* dropdown fix

* test cases

* e2e test cases added

* test cases fix

* documentation changes

* testcases fix

* testcases added

* replace findOne with findOneOrFail

* accept invite testcases

* login page fixes

* added encrypted tag

* review comments

* migration fixes

* improvements

* manage sso loading fix

* review comments

* migration file changes

* new organization creation bug fix

* added e2e testcases

* added testcases

* Update data_sources.controller.ts
2022-05-05 12:38:42 +05:30
Muhsin Shah C P
722a701b22
[Feature] option to delete a data source 🚀 (#2790)
* Implemented frontend
- icon and confirmation modal
- delete fn in services

* Implemented backend Endpoint
- Changed confirmation modal msg

* Added unit test for delete operation

* Changed the modal msg again

* Fixed delete btn alignment issue

* Resolved a bug

* changed popover width

* Now delete endpoint will only return the status

* Added a new spec to test delete a data-source from a specific version

* Added deleteDataSource ability

* Removed commented code

* Added BadRequestException in else case

* Resolved an error

* Changed confirmation modal
2022-05-02 18:42:14 +05:30
Akshay
8bfd814b3a
Feature: Version deletion (#2492)
* add ability to delete versions

* add specs for version delete

* add check for preventing released version deletion
2022-03-11 01:44:37 +05:30
Akshay
59cf3b1931
Fix: Googlesheets OAuth refresh token flow (#2118)
* implement google sheet oauh token refresh flow

* format lint

* make use of constructor name as instanceof fails

* remove unused import

* force consent to get refresh token on googlesheets ds
2022-02-05 07:09:40 +05:30
Midhun G S
5000f745b1
Github OAuth integration (#1837)
* Initial commit

* git auth

* git sso

* Git sso

* Git Oauth rebase

* review comments

* added email validation

* improvement

* Package lock revert

* E2E test case fix

* fix data population in migration

* Supress initial error thrown by google

* Fix

* e2e test cases

* added e2e test cases

* isValidDomain improvement

* e2e test cases fix

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
2022-01-27 15:21:17 +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
Midhun G S
1e103ad4b7
[Home Page Design Changes] Update icon API (#1787)
* Feature-1786 Update Icon API

* Update Folders.jsx
2022-01-12 18:04:39 +05:30
Akshay
783ed2133c
Fix: Archived user cannot login or perform authenticated actions (#1749)
* archived user cannot login or perform authenticated actions

* fix spec

* invalidate invite token on archive
2022-01-07 14:46:23 +05:30
Sherfin Shamsudeen
7a79695af7
Feature/disable password login (#1585)
* Add option to disable login/signup via username/password

* Add documentation for disabling login via username/password
2021-12-15 22:53:07 +05:30
Akshay
bf13cf5e1c
Feature: library apps with templates (#1529) 2021-12-07 18:55:41 +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
Akshay
a7f36f77f6
Chore: Revise and add specs for folders (#1391)
* revise and add specs for folders

* Feature: Folder create permission (#1394)

* add migration for folder create permission

* add backfill migration for folder create permission on admin group

* adds permission for folder creation

* refactor function

* select distinct folders
2021-11-15 11:43:48 +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
Akshay
a958b37cef
Feature: Group level permissions and related fixes (#1204)
* add column app_create to group_permissions table

* add app create column to group permission entity

* backfill app_create permission as true for admin group

* add app delete permissions to group permissions

* update group permissions entity for app delete

* add ability to set group level permission for app creation

* refactor and fix app clone and imports

* fix created by user on homepage

* fix spinner on import

* update seeds service to set group level permission

* fix rollback query

* fix imported/cloned app timestamps

* honor logged in user permissions at UI

* remove console log

* fix data query id being replaced on import

* replace data query id within app versions on import
2021-10-25 14:05:32 +05:30
Akshay
b0208c553a
Feature: Add ability to import and export apps (#1138)
* add ability to import and export apps

* copy credentials on imports if it already exists

* authorize exports for public apps with only authenticated users

* remove app auth guard for export

* make import as a separate button

* update import button styling

* handle prexisting slug while import

* set file input as null when file has been read

* add fix for slug updation on import
2021-10-19 16:52:00 +05:30
Akshay
047ad1bfe7
fix equality checks and data query run guard (#1086) 2021-10-16 08:40:56 +05:30
Akshay
799bef0138
fix public app view and data query run (#1082) 2021-10-15 14:35:11 +05:30
Akshay
7023f72d1d
Feature: User access management 🔥 (#918)
* create migrations for group permissions setup

* define new entities and relationships

* revise migrations

* rename columns

* add migration to populate permission groups for existing users

* Feature: User access permission group usage (#883)

* create migrations for group permissions setup

* define new entities and relationships

* revise migrations

* rename columns

* add migration to populate permission groups for existing users

* revise migrations

* hide roles usage

* setup group permissions for apps and users

* fix defaultChecked

* fix update permission checkbox

* fix casl ability check to have params passed

* fix casl apps abilities to check with app specific permission

* add ability to delete groups

* conditionally render edit and delete options for all and admin users

* fix user role to group migration

* revise group management pages to disallow updating default group

* move manage users and groups to navbar dropdown

* show only addable apps and users on dropdowns

* rename header as profile settings

* scope addable apps and users by organization

* scope viewable apps on homepage

* hide manage groups link from non admins

* make permissions to be used with radio input

* add loading state for add apps/users buttons

* revise unit tests

* revise migrations

* fix e2e tests

* comment out dead code

* fix seeds script

* handle folder count

* captalize error toast

* hide manage users dropdown for non admins

* show fobidden error on blank homepage

* fix folder app count

* fix invalid state set

* make group name clickable for edit instead

* users with edit permission can deploy apps

* not show edit link on homepage if user dont have update permission

* remove unused entity from merge

* remove roles usage from manage org users page

* fix folder count and blank slate on homepage

* disable add buttons if there is no selections

* humanize default groups on view

* make app added onto groups have read permission by default

* not show app menu if user is not admin

* remove admin users from group user addition dropdown

* create default permissions for app cloned

* fix querying index page without page params

* fix admin scoped out from group add

* remove apps from header

* fix invitation url not shown

* scope admin deletion check by org

* scope public apps by organization

* add specs for group permissions e2e

* removed unused entity and add group permissions spec

* remove console logs

* remove unused permission

* scope public app count by org

* remove console log

* refactor manage group permission resources component

* update group permssion in org scope
2021-10-11 20:45:58 +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
Akshay
52cbec3d4c
Add ability to clone from existing apps (#743)
* add ability to clone from existing apps

* make use of clone ability to authorize clone requests

* refactor to use seperate service for cloning apps
2021-09-15 21:17:44 +05:30
Akshay
762773770c
Fixes app creation authorization (#757) 2021-09-15 21:12:04 +05:30
Akshay
f637a80fd6
Feature: data query deletion (#734)
* add feature for data query deletion

* fix after query deletion default query selection is not being done

* move delete option and hide option unless mouse is hovered on query

* show dialog box confirmation before query deletion
2021-09-13 22:54:47 +05:30
Arpit
04e7f8eaad
Fixes the path in query auth to run queries for public apps (#729) 2021-09-12 09:51:30 +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
Akshay
6bd08608ad
Feature: Client fetches public config from server (#713)
* add /api/config endpoint to serve public config

* client requests public config before app render

* update default public config for whitelist
2021-09-09 21:38:07 +05:30
Akshay
24685a127f
fixes server error when inviting new user (#679) 2021-09-03 09:52:07 +05:30
Sherfin Shamsudeen
f4cb29ff69
Feature: Profile page for users (#501)
* Add endpoint to update user first and last name, password

* Add settings page that allows editing user details

* Respond with first and last name when user is updated

* Add 'Settings' item in the drop-down down for user

* Add newline for index.js of settings page

* Supply missing newlines

* Ask for current password inorder to change password

* Add end-point to change password

This commit also adds a Guard to ensure that the user reenters
existing valid password.

* Add e2e test for change_password endpoint

* Copy change for the toast presenting misentered current password while changing password

* Change password when enter key is pressed from 'new password' box

* Add newline and the end of password-revalidate.guard.ts
2021-08-12 21:03:52 +05:30
Sherfin Shamsudeen
5e266f9606
Delete 'AppUser's before App is deleted (#490)
* Delete 'AppUser's before App is deleted

This commit ensures that all the corresponding entries of AppUser
are deleted before an App is deleted. This is done so to prevent
pre-existing foreign keys from halting the deletion.

* Delete all One-To-Many associated entities when app is deleted

This commit makes the App service's delete action delete all the
related entities of types: FolderApps, DataSources, DataQueries,
AppUsers and AppVersions, before deleting the app itself.

* Set currentVersionId to null before deleting app
2021-08-11 15:36:28 +05:30
Sherfin Shamsudeen
54a40176ea
Feature: Ability to delete apps (#486)
* Add end-point that deletes an application

Deleting an application will also delete its corresponding
data sources, data queries and app versions.

* Add unit test for app deletion end-point

* Additional e2e test for delete app end-point

This test ensures that non-admin user cannot delete apps.
2021-08-10 19:36:37 +05:30
navaneeth
05073f45b8 Fix for 401 issue of public apps 2021-08-10 17:27:17 +05:30
navaneeth
aaeee9d2e0 Merge branch 'feature/nest-server' of github.com:ToolJet/ToolJet into feature/nest-server 2021-08-03 10:37:24 +05:30
navaneeth
1db065a50c Connection caching for pg, mysql & mssql 2021-08-03 10:36:56 +05:30
Akshay Sasidharan
2779ea24e8 setup database seed 2021-08-03 09:41:39 +05:30
navaneeth
ac1865280e Feature: Check for updates 2021-07-26 22:44:14 +05:30
navaneeth
ce1555ee7f Feature: Invitation email for new organization users 2021-07-26 20:10:32 +05:30
navaneeth
42acf760e5 Feature: Nodemailer integration, welcome emails 2021-07-26 20:00:12 +05:30
navaneeth
8afdb4917a Feature: Switch folders on dashboard 2021-07-26 18:15:10 +05:30
navaneeth
41dfad3651 Policies and tests for OAuth endpoint 2021-07-25 23:16:44 +05:30
navaneeth
116fc1f9f3 Feature: OAuth support for REST API sources 2021-07-25 22:50:19 +05:30
navaneeth
50ef839c8b Auto-load plugins from plugins directory 2021-07-25 11:39:34 +05:30
navaneeth
a73b039114 Policies and tests for datasource endpoints 2021-07-25 00:14:44 +05:30
navaneeth
35388d8930 Policies and tests for query endpoints 2021-07-24 23:39:25 +05:30
navaneeth
ec2662c124 Airtable integration 2021-07-24 18:35:08 +05:30
navaneeth
dd19f31b37 Google sheets integration 2021-07-24 17:36:56 +05:30
navaneeth
fae1fa7272 Policies and tests for running queries 2021-07-24 11:43:21 +05:30
navaneeth
3c24d8a6c5 Endpoints for app viewer 2021-07-24 09:43:45 +05:30
navaneeth
59e0cd62c2 Endpoint for saving app versions 2021-07-23 22:27:59 +05:30
navaneeth
d5dda41c79 Endpoint to create app versions 2021-07-23 21:29:01 +05:30
navaneeth
70546845be Endpoint for fetching app versions 2021-07-23 20:21:24 +05:30
navaneeth
a003d24e97 Endpoint to create app users 2021-07-23 12:13:50 +05:30
navaneeth
41cca1e60c App users endpoint & e2e tests 2021-07-23 11:02:49 +05:30
navaneeth
ad3e627b9c Endpoint for updating app params 2021-07-22 19:54:18 +05:30
navaneeth
c37289f1cd Policies and tests for org user invitation 2021-07-22 15:11:50 +05:30
navaneeth
6634bcfc3b Policies and tests for organization user actions 2021-07-22 12:55:29 +05:30
navaneeth
7745e4e460 Set up CASL abilities 2021-07-21 22:27:04 +05:30
Akshay Sasidharan
c0ef4a738a make configService to load values based on app env 2021-07-21 18:49:32 +05:30
navaneeth
f6745a178b Setup aliases for modules 2021-07-19 17:00:40 +05:30
navaneeth
70ad958d98 Endpoint for creating new organization users 2021-07-19 15:06:34 +05:30
navaneeth
1d9d1a833c Endpoint to archive org users 2021-07-19 14:27:57 +05:30
navaneeth
8ac4508ed8 Endpoint to fetch organization users 2021-07-19 13:30:42 +05:30
navaneeth
95ebbcb8f5 Endpoint to set password from invitation token 2021-07-19 12:21:21 +05:30
navaneeth
65ce0b0555 Endpoint: user signup 2021-07-19 11:12:16 +05:30
navaneeth
85cd96dfbc Redis datasource 2021-07-18 19:56:05 +05:30
navaneeth
85f97e5e63 Testing datasource connections 2021-07-18 12:28:05 +05:30
navaneeth
1ae00756a8 Endpoint to fetch oauth auth url 2021-07-17 23:24:14 +05:30
navaneeth
cc25042420 Login should expire only after 30 days 2021-07-17 19:48:08 +05:30
navaneeth
8af54b1a15 Implement getConnection for query services 2021-07-17 13:29:28 +05:30
navaneeth
13c49135be Error handling for queries 2021-07-17 10:11:02 +05:30
navaneeth
52253f26ad Feature: update data source connection options 2021-07-16 20:33:20 +05:30
navaneeth
bb67ed569a PostgreSQL integration without connection pooling 2021-07-14 23:23:00 +05:30
navaneeth
b2adb9144e Running queries + firestore query service 🚀 2021-07-14 19:44:35 +05:30
navaneeth
f0ead25571 Endpoint: create datasource with encrypted credentials 2021-07-12 16:06:53 +05:30
navaneeth
49a7a7451b endpoint for app data sources 2021-07-11 14:09:25 +05:30
navaneeth
facf757371 Endpoint to fetch data queries for a specific app 2021-07-11 14:02:06 +05:30
navaneeth
aa74cd9b65 Data queries entity 2021-07-11 13:52:05 +05:30
navaneeth
df6f704072 Add app versions to apps 2021-07-11 12:49:31 +05:30
navaneeth
e537b6073f Move app module to modules folder 2021-07-11 11:11:45 +05:30
navaneeth
e6361ce49e Organise modules, controllers & services 2021-07-11 11:09:55 +05:30