* init kanban board widget
* kanban board
* reverts to beautifully
* kanban UI updates and dnd fixes
* bugfix: when dropped outside the col, should return back to it inital position
* updates min-width of the column
* container and widget styles
* style fixes: column container onDrag
* adds button for new group
* fixes new card overflow
* add btn for adding cards
* groups and cards updated
* add property definition
* improves draggable card position while drag is active
* handle delete group/col
* handle col/group title updates
* handles editing card title
* style fixes for input cursor
* cleanup
* card popover with codehinter fields
* minor card fixes
* updates exposed variable
* simplify boardData into cols and cards
* adds width and min-width style definations
* build board from queries
* handle draggable rbd-id
* removes add group card and delete group option
* fixes typos
* show empty state message
* fixes typos
* removes card extra border color
* fixes column typi and cards updates issue
* adds enableAddCard property defination
* adds accent color options
* default style accent color
* accent color fix
* revets popover with hinter
* fixes card drag and drop
* removes hook
* fixes: state synced with property defination updates(col and cards data)
* fixes: on re-arranging the card via dnd, update the card content
* handles if card columnId is updated
* adds card container layer
* clean up
* dark theme
* fixes card onDrop issue
* renamed the exposed variable data --> lists
* adds custom resolvers to the popover
* handle widget crash when non iterables are passed
* updates default card and col value
* fixes dnd issues for dynamic card values
* refactor: cleanup
* handles empty and undefined cardData
* fixes Height of widget is changing when popover thing is displayed.
* fixes: updating card data in widget inspector
* fixes: updating column data in widget inspector
* fixes adding cards for newly created groups/columns
* clean up
* Add kanban event onCardAdded and expose lastAddedCard
* Add onCardRemoved action and expsed lastRemovedCard variable
* Add events and variables for card movement and selection
* Add card edit feature for kanban widget
* Rename lastAddedRemoved to lastRemovedCard in kanban
* Rename lists to columns on kanban board
* Set max height of kanban column to respond to widget height
* Have "Add description" link if there is no description for Kanban cards
* kanban docs
* Change text from "add +" to "Add card" on kanban
* Validate card data before update
* Add tip about card id type on kanban documentation
* Add default min width and width for kanban
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
Co-authored-by: Shubhendra <withshubh@gmail.com>
* adding loadingstate and object fit style
* adding zoom functionality
* pan image function
* fixing pan for image
* pan and drag fix image
* library install
* pr changes:: hover button , object fit made dropdown
* fix for old apps
* updated docs
* Initialized OpenApi plugin
* Added definition field to manifest file
* Added an openapi parser
* Implemented JSON/YAML resolver
- Removed swagger parser lib
- Added a field for choosing definition format type
- Implemented a resolver for resolving $ref
* Implemented a basic operations drop down from spec paths
* Added params and body ui
* Now, can view general parameters and servers
* Added an option to override general params
- Resolved a bug
* Implemented basic openapi plugin
- Added got lib
- Tested basic queries
* Added one more method
* Resolved a common bug
* Working on Parsing definition from datasource modal
- Created new form component for openapi
- Populated select array from security array
* Added ui for authentication
* Added bearer & basic plugin code
* Resolved some ui issues of Apikeys auth option
* Added apikey auth
* Resolved an issue
- Also replaced validate btn with auto validation
- Now spec will be added to db from data-source modal
* Added error text to show validation error
* Now spec will load from props for query manager
* Added some padding to operation description
* Added ui for openapi oauth2 auth
* Implemented oauth2
* Fixed a state issue with a temporary hack
* Now we can show multiple same auth types
* added the icon
* Resolved a bug & improved multiple apikeys process
* Resolved some realtime parsing error
* Resolved a bug from options fn
* Resolved PR changes
* Updated documentation with brief details about the open API plugin
* Removed unwanted package
* Changed if-else to switch
* Code changes
* added setLoadingSpec fn to catch section
* Solved typos and error in doc
* Resolved dropdown issue
* Resolved a bug
* updated openapi icon
* feat: add realtime collaboration
* reduce delay in debounce
* feat: add realtime cursors
* feat: add realtime avatars
* add current user to the online users list
* add border color to the avatar
* feat: allow multi user to edit multi-versions simultaneously
* add getOne fn for fetching single api + avatar component
* fix: set appDef from api call
* replace webrtc with ws
* move yjs to separate port (temp)
* run on same port
* fix: update ymap when styles have changed
* - Add static list of colors
- Show the username on hover
* fix: cursors not showing up
* fix: review comments
* remove unused vars
* add new cursor style
* - Run yjs connection on a different path
- Add zindex to cursor such that query editor has precedence
* fix: event emitter bug + position bug
* use shorthand
* cursor style changes
* fix cursor positions
* inc zindex
* change max avatars to 3
* Ported multi-select to react-select lib
* Changed some values
* working on all option select / unselect feature
* All clear event
* Changed exposed values
* Resolved some ui issues
- Changed values height to a fixed size
- Fixed close btn alignment
* Removed 'All' option from selected values section
* Changed some paddings and sizes
* Resolved scroll and label width problem
* Adjusted some margin
* Removed scrolling from container
- scroll only values
* Hide scrollbar
* Resolved indicators alignment
* updated multiselect with searchable select
* Use only multiselect with checkboxes
* Alignment fix for multiselect dropdown
* Make multiselect dropdown adjust according to height
* Add custom rendered for multiselect options
Co-authored-by: stepinfwd <stepinfwd@gmail.com>
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* initial commit
* made datepicker functional
* update date format
* made border-radius and adjusting width and height of the input element to the datepicker container functional
* add year and month selection dropdown & upon enableDate false, only showing time selection
* changed dropdown year display
* adjusted width of the datepicker widget
* added React.forwardRef inside ExampleCustomInput function
* Show month dropdown on mode select for datepicker
* Slight refactoring
* Display default date on load of DatePicker widget
* Apply brand colors for date picker
Co-authored-by: arpitnath <arpitnath42@gmail.com>
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* Added a spinner for show before rendering template images
* Spinner with another lazyload lib
* Added additional property to track img changes
* Changed lazyload with spinner to a reusable component
* Adds walkthrough
* Fixes
* Added a condition for walkthrough
* Changed popup design
* Now walkthough only show after first version is created
* cleaning code
* Minor fixes
Co-authored-by: Muhsin Shah <muhsinshah21@gmail.com>
* added circular progressbar widget
* added a basic documentation about the widget
* added progress attribute
* bounding issue is solved
* edited the widget doc
* Added new style
- Text color
- Text size
* Changed the documentation
* [Chore] eslint fixes (#1704)
* lint fixes
* fixes lint errors
* Use react-select library for dropdown
* Support search event and loading state on dropdown
* Apply brand color to dropdown
* Apply brand coloring to dropdown options
* Remove unnecessary code
* Fix unnecessary firing of onSearchTextChange on dropdown
* Display blank on dropdown if value is undefined
* Fix bug that caused dropdown disable to not work
* If values passed to dropdown are not array, make it array
* Grey out dropdown text for disabled dropdown
Co-authored-by: Arpit <arpitnath42@gmail.com>
* feat: add restore shortcut when component is deleted
* change toast messages to hot toast from toastify
* change toast messages to hot toast from toastify
* change toast messages to hot toast from toastify
* on key press match clear the pressed keys
* add react hotkeys hook and delete use-shortcuts custom hook
* change toast messages to hot toast from toastify
* add immer lib
* applyPatches from immer + add undo redo on appdefination changes
* remove notification on undo
* add can-undo + can-redo checks
* add missing can-redo to handlePatchAdd
* add component versioning on componentDefinitionChanged
* set default value of loading state to interpolated boolean false for table
* set canUndo on initial load to false
* fix last element not getting removed on undo
* Remove console log
* add migration to change loadingState for existing tables
* set loadingstate value based on the previous value
* fix: app crash on inspector opening
* add check for selectedComponentId inside components def
* update template definitions for loadingState
* fix alert for success, error, info for button notifications
* 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>
* Insert required boilerplate code for Calendar widget
* Display basic calendar
* Display events on calendar widget
* Pass JS date object as calendar default event date
* Add resource scheduling to Calendar widget
* Add icon for Calendar widget
* Allow configuration of views and default view for calendar
* Add onEventSelect event to Calendar widget
* Accept date as string for Calendar
* Option to disable/enable toolbar in Calendar
* Add default date to Calendar
* Add support for setting color of calendar events
* Set calendar cell size to 50px
* Allow spacious and compact cell sizes for Calendar
* Add support for "select slots" event for calendar
* Add support for custom event tooltip for Calendar
* Add support to not highlight today and now in Calendar
* Add visible border for Calendar events
* Set 14px font size for calendar toolbar
* Add dark mode styles for calendar
* Make calendar view mode controllable with logic
* Add documentation for calendar widget
* Add additional documentation for calendar events
* Expose default view instead of view for calendar
* Add documentation for changes in calendar
* Style updates to calendar
* Increase padding for calendar events
* 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
* updates NPM package.json script for webpack-dev-server
* open flag removed
* Revert "open flag removed"
This reverts commit f53d4f793a.
* open flag removed
* fix: striped table when element selected is text
* fix: when column type is dropdown fix ui
* fix: when category-type is multiselect
* fix: make overflow-x scroll so that more radio buttons can fit
* fix: when column is editable fix styles
* add text styles: additional
* fix: datepicker + striped table
* multicursor trick if to switch - witchcraft
* fix: add array check in tags component
* fix: action buttons
* merge badge and badges case
* change overflow x to initial - temporary
* fix conflict
* add padding left, right
* Update frontend/src/Editor/Components/Table/Table.jsx
Co-authored-by: Sherfin Shamsudeen <sherfin@tooljet.io>
* increase min height from 35 -> 55
Co-authored-by: Sherfin Shamsudeen <sherfin@tooljet.io>
* 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
* feat: add star rating widget
* add events, properties
* add the number of stars as variable
* fix animation
* add half star logic, properties, definations
* add hover index property
* on dismiss show star outline
* show tooltip on hover + fix half icon display on click
* make text inline
* feat: add import svg as react component
* update star rating component for managing color change
* fix: conflicts
* Delete half-star.svg
* Delete star.svg
* change default color to gold
* fix widget settings events
* add default selection of stars
* change default selection to 5
* css changes
* add star rating onchange fix
* Add QR code scanner widget
This commit adds QR code scanner widget which
* Displays a viewfinder that can be activated or deactivated
* Exposes a variable named lastDetectedValue which holds the
data contained in the last QR code it was able to scan
* Defines an event onDetect which is fired whenever a QR code
is successfully scanned
* Add documentation for QR scanner widget
* Supply missing newline
* Supply missing newline for qrscanner.svg
* Supply missing newlines and semicolons
* Update error modal content
* Remove `active` property from QrScanner
* Add blob: to content security policy
* Disable content security policy
* Add content security policy that allows self, unsafe-eval and blob
* feat: add left sidebar new ui ❇️
* new: add svg spring motion dark mode icons
* - add tooltip
- reduce icon size to 20px h&w
- fix indentation
* remove logs
* fix: typo
* fix: on click of arrow the ref was not captured, react repo has reference to this issue at : https://github.com/facebook/react/issues/20325
* css fixes
* color changes for moon icon
* revert css'
* fix back button not working due to incorrect clean up function
* feat: add use-router hook component
* - make sun svg have a white circle inside
- fix the alignment of darkmode toggle on homepage
* fix: pkg lock after fresh install with 7.20.x
* Cypress tests for Editor
1. Test Navigation Bar elements
* Updated ManageAppUsers.jsx
Removed space from Share text
* update clipboardy package location
moved dependency from root to frontend package.json file
* restored root package.json file
removed clipboardy dependencies.