Commit Graph

52 Commits

Author SHA1 Message Date
Favour Olayinka 1adac8e00f
Dc3e4 new matrix field (#484)
* fix password reset bug

* wip: matrix input

* wip: matrix input

* wip: matrix input

* Fixed matric input component logic

* matrix input cleanup

* fix lint errors

* table border and radius

* cleanup, linting

* fix component methos

* wip matrix input

* matrix condition for contains and not contain

* patch matrix input condition logic

* linting

* refactor and cleanup

* fix syntax error

* Polished the matrix input

* Fix linting

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-08-23 15:28:21 +02:00
Chirag Chhatrala 943e906c86
zapier improvements (#532)
* zapier improvements

* Fix test case

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-08-19 15:34:01 +02:00
Julien Nahum 5d3bea030b Fix ZApier integration link 2024-08-12 11:43:00 +02:00
Boris Lepikhin 517bccc695
Zapier integration (#491)
* create zapier app

* install sanctum

* move OAuthProviderController

* make `api-external` middleware

* add zapier endpoints

* add tests

* token management

* zapier event handler

* add policy

* use `slug` instead of `id`

* wip

* check policies

* change api prefix to `external`

* ui tweaks

* validate token abilities

* open zapier URL

* zapier ui tweaks

* update zap

* Fix linting

* Added sample endpoints + minor UI changes

* Run PHP code linter

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-08-12 11:14:02 +02:00
Chirag Chhatrala a2c1757815
Google Sheet integration fix (#493)
* Google Sheet integration fix

* fix testcase

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-07-17 14:22:54 +02:00
Favour Olayinka 90ff91b1e9
Team functionality (#459)
* add api enpoints for adding, removing, updating user to workspace and leaving workspace

* feat: updates client site workspace settings

* refactor and add domain setting ui in modal

* move workspace user functionality to its own component

* adds tests

* fix linting

* updates select input to FlatSelectInput

* moves workspace user role edit to seperated component

* move user adding to its own component

* adds check to usure users exist before checking is admin

* fix loading users

* feat: invite user to team functionality

* fix token coulmn

* fix self host mode changes

* tests for  user invite

* Refactor back-end

* Rename variables

* Improve some styling elements + refactor workspace settings

* More styling

* More UI polishing

* More UI fixes

* PHP linting

* Implemented most of the logic for team-functionnality

* Fix user avatar URL

* WIP remove users on cancellation

* Finished pricing for team functionality

* Fix tests

* Fix linting

* Added pricing_enabled helper

* Fix pricing_enabled shortcut

* Debug CI

* Disable pricing when testing

---------

Co-authored-by: LL-Etiane <lukongleinyuyetiane@gmail.com>
Co-authored-by: Lukong Etiane <83535251+LL-Etiane@users.noreply.github.com>
Co-authored-by: Julien Nahum <julien@nahum.net>
2024-07-04 17:21:36 +02:00
Favour Olayinka f40b95977d
0c9ea page break validation (#455)
* fix password reset bug

* page break precognition validation

* precognition validation tests

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-06-24 11:08:54 +02:00
Favour Olayinka bec8e86b59
2f3fd laravel 11 upgrade (#436)
* fix password reset bug

* upgrade to  laravel 11

* composer.lock

* fix migration issues

* use ValidationRule Contract

* rename password_resets table

* implemented casts as protected function

* update env variables

* fix optional property

* fix validation issues

* use <env> on php unit xml

* fix pint

* cmposer.lock

* composer json fixes

* fix composer dependencies, remove  faker

* remove unused class

* remove test class

* fix default value for mysql migration

* linting

* expression syntax fix

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-06-10 16:10:14 +02:00
Boris Lepikhin 24d33a9ebb
Google Sheet - OAuth "client" powered integrations (#415)
* fix `helpers.php`

* fix `.eslintrc.cjs`

* spreadsheet manager

* fetch providers. set `oauth_id` for integrations

* create spreadsheet on integration create event

* connect OAuth accounts

* display actions. connect account if missing

* cleanup

* handle form field change

* map integration data object to `SpreadsheetData`

* validate request

* wip

* redirect to integrations page

* fix refresh token

* add helper text

* add extra integration info

* refactor

* refresh google token

* fix validation

* add tests

* Fix linting issue

* Update composer lock file

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-06-05 15:35:46 +02:00
Chirag Chhatrala 31455e7c24
confirmation email integration fixes (#434) 2024-06-03 10:14:59 +02:00
Favour Olayinka 68b610bc15
remove branding for subscribed users (#424)
* removebrandingfor subscribed users

* backend  changes, test

* fix test  name

* fix disable branding

* Fix linting

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-05-29 12:03:41 +02:00
Favour Olayinka 6673dff504
Conditioned field validation (#418)
* wip: validation condition input

* form custom validation condition

* Default message on form condition validation

* field validation condition test

* fix linting

* update tests,  add pass test

* Polish UI

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-05-29 11:40:14 +02:00
Favour Olayinka 9f7cdd09fd
fix date validation (#395)
Co-authored-by: Julien Nahum <julien@nahum.net>
2024-05-06 14:16:26 +02:00
Favour Olayinka eeb3ec3b77
re-enable custom scripts while trialing (#383)
* feat: disable custom script for  trial users

* fix: logic error for trial users

* disable trialing check for  custom script

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-04-22 15:59:02 +02:00
Favour Olayinka 8d35fc8b1a
feat: disable custom script for trial users (#371)
* feat: disable custom script for  trial users

* fix: logic error for trial users

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-04-15 16:14:21 +02:00
Chirag Chhatrala 35efd6711d
Remove old code related to notifications (#363)
* Integrations Refactoring - WIP

* integrations list & edit - WIP

* Fix integration store binding issue

* integrations refactor - WIP

* Form integration - WIP

* Form integration Edit - WIP

* Integration Refactor - Slack - WIP

* Integration Refactor - Discord - WIP

* Integration Refactor - Webhook - WIP

* Integration Refactor - Send Submission Confirmation - WIP

* Integration Refactor - Backend handler - WIP

* Form Integration Status field

* Integration Refactor - Backend SubmissionConfirmation - WIP

* IntegrationMigration Command

* skip confirmation email test case

* Small refactoring

* FormIntegration status active/inactive

* formIntegrationData to integrationData

* Rename file name with Integration suffix for integration realted files

* Loader on form integrations

* WIP

* form integration test case

* WIP

* Added Integration card - working on refactoring

* change location for IntegrationCard and update package file

* Form Integration Create/Edit in single Modal

* Remove integration extra pages

* crisp_help_page_slug for integration json

* integration logic as collapse

* UI improvements

* WIP

* Trying to debug vue devtools

* WIP for integrations

* getIntegrationHandler change namespace name

* useForm for integration fields + validation structure

* Integration Test case & apply validation rules

* Apply useform changes to integration other files

* validation rules for FormNotificationsMessageActions fields

* Zapier integration as coming soon

* Update FormCleaner

* set default settings for confirmation integration

* WIP

* Finish validation for all integrations

* Updated purify, added integration formatData

* Fix testcase

* Ran pint; working on integration errors

* Handle integration events

* Remove old code related to notifications

* command for Delete Old Integration Events

* Display Past Events in Modal

* on Integration event create with status error send email to form creator

* Polish styling

* Minor improvements

* Finish badge and integration status

* Fix tests and add an integration event test

* Run linters

---------

Co-authored-by: Forms Dev <chirag+new@notionforms.io>
Co-authored-by: Julien Nahum <julien@nahum.net>
2024-03-28 18:46:29 +01:00
formsdev 6f61faa9ef
Notification & Integrations refactoring (#346)
* Integrations Refactoring - WIP

* integrations list & edit - WIP

* Fix integration store binding issue

* integrations refactor - WIP

* Form integration - WIP

* Form integration Edit - WIP

* Integration Refactor - Slack - WIP

* Integration Refactor - Discord - WIP

* Integration Refactor - Webhook - WIP

* Integration Refactor - Send Submission Confirmation - WIP

* Integration Refactor - Backend handler - WIP

* Form Integration Status field

* Integration Refactor - Backend SubmissionConfirmation - WIP

* IntegrationMigration Command

* skip confirmation email test case

* Small refactoring

* FormIntegration status active/inactive

* formIntegrationData to integrationData

* Rename file name with Integration suffix for integration realted files

* Loader on form integrations

* WIP

* form integration test case

* WIP

* Added Integration card - working on refactoring

* change location for IntegrationCard and update package file

* Form Integration Create/Edit in single Modal

* Remove integration extra pages

* crisp_help_page_slug for integration json

* integration logic as collapse

* UI improvements

* WIP

* Trying to debug vue devtools

* WIP for integrations

* getIntegrationHandler change namespace name

* useForm for integration fields + validation structure

* Integration Test case & apply validation rules

* Apply useform changes to integration other files

* validation rules for FormNotificationsMessageActions fields

* Zapier integration as coming soon

* Update FormCleaner

* set default settings for confirmation integration

* WIP

* Finish validation for all integrations

* Updated purify, added integration formatData

* Fix testcase

* Ran pint; working on integration errors

* Handle integration events

* command for Delete Old Integration Events

* Display Past Events in Modal

* on Integration event create with status error send email to form creator

* Polish styling

* Minor improvements

* Finish badge and integration status

* Fix tests and add an integration event test

* Lint

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-03-28 18:14:30 +01:00
Favour Olayinka 2191f46214
fix loading show form page (#361)
Co-authored-by: Julien Nahum <julien@nahum.net>
2024-03-25 16:05:24 +01:00
Julien Nahum e517cba88a
Fix issue with form analytics for submissions (#362)
* Password not working when Notion embed - Fixed (#360)

* fix tests

---------

Co-authored-by: formsdev <136701234+formsdev@users.noreply.github.com>
2024-03-25 11:30:00 +01:00
formsdev c8628ed840
Separate input type for Rating,Scale,Slider (#351)
* Separate input type for Rating,Scale,Slider

* rating, scale, slider add in test cases

* Allow field type change for new types

* Added options to db factory

* Fix linting

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-03-19 15:27:21 +01:00
formsdev c73fcd226b
extramenu improvement (#353)
* extramenu improvement

* fix test cases
2024-03-19 15:17:23 +01:00
formsdev 26ad93a230
Add S3KeyCleaner (#348) 2024-03-18 16:24:48 +01:00
Julien Nahum 2ac9b96284 Fix file type case sensitive validation 2024-02-29 10:49:55 +01:00
Favour Olayinka 8a067012e5
fix email reply to issue (#326)
* fix email reply to issue

* fix: email  test  issue

* fix: phpunit  file

* style: fix lint
2024-02-27 15:20:50 +01:00
Julien Nahum 62971a2ef4 Lint PHP code psr-12, add GH action 2024-02-23 11:54:12 +01:00
Favour Olayinka ef83ffcf77
3a703 admin edit submission (#305)
* wip: admin submission edit feature

* wip: refresh form submission after update

* wip: connect submissions page data to store

* Fixed the submission loading issue

* test: admin edit submission feature test

* Fix pending submission, editabe submission & more (#306)

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2024-02-03 12:50:57 +01:00
Julien Nahum 80962678c1 Fix tests, added gh action nuxt step 2024-01-14 20:52:14 +01:00
Julien Nahum a18077934c
Cached some model properties and remove useless eager loading (#253)
* Cached some model properties and remove useless eager loading

* Remove ray call

* Remove double loading of forms

* Add disableCache feature when needed
2023-12-02 14:51:08 +01:00
formsdev d65c1be9b5
Create common function for userIsFormOwner & rewrite protected form (#244)
* Create common function for userIsFormOwner & rewrite protected form

* fix testcase
2023-11-28 11:23:04 +01:00
formsdev f7ecd6f233
Phone input prefill country issue fixed (#213)
* fix prefill phone issue

* js phone parse fixes

* revert last change

* fix phone UI

* Code optimize

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2023-10-03 17:50:46 +02:00
formsdev d75975bdec
Fix phone input (#201)
* Fix phone input

* remove extra

* fix factory

* Fix phone input

* Validate phone number rule

* Prefill support for country only

* Fix phone input error

* fix tests

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2023-09-18 15:12:05 +02:00
Sutirtha Bharati Das a53677d2ed
ENH: Phone Input Component (#189)
* #170-ENH: Created custom dropdown phone input

* #170-ENH: Added phone_number rules

* #170-ENH: Added phone_number rules

* #170-ENH: Added separate Rule for phone number input, starting 0 phone number is ignored, added regex to ignore non digit phone input

* #170-ENH: Removed global registration of CountryFlag

* #170-ENH: Using VSelect component for country selection, added prop for dropdown styling

* #170-ENH: Updated phone number rule

* #170-ENH: Added margins to country selector

---------

Co-authored-by: Sutirtha <sdas@republicfinance.com>
Co-authored-by: Julien Nahum <julien@nahum.net>
2023-09-12 10:13:10 +02:00
Chirag Chhatrala 8e47b49e9a
Improve Templates (#183)
* Improve Templates

* Fix test case

* Update AI GenerateTemplate

* update openai client and GPT completer

* composer.lock

* Update types and list json with script

* Template changes

* fix on draft template

* Finish opnform templates

---------

Co-authored-by: Forms Dev <chirag+new@notionforms.io>
Co-authored-by: Julien Nahum <julien@nahum.net>
2023-09-08 13:00:28 +02:00
formsdev 662088e20f
Slack-Discord extra feature (#176)
* Enable Pro plan - WIP

* no pricing page if have no paid plans

* Set pricing ids in env

* views & submissions FREE for all

* extra param for env

* form password FREE for all

* Custom Code is PRO feature

* Replace codeinput prism with codemirror

* Better form Cleaning message

* Added risky user email spam protection

* fix form cleaning

* Custom SEO

* fix custom seo formcleaner

* Better webhooks

* Slack-Discord extra feature

* fix conflict
2023-08-30 14:20:14 +02:00
formsdev 057bfde8b7
Field Logic Error Handling - frontend (#162)
* Field Logic Error Handling - frontend

* Fix test case

* fix expected_type for multi select

* fix variable

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2023-08-30 13:28:52 +02:00
formsdev fb79a5bf3e
Enable pricing (#151)
* Enable Pro plan - WIP

* no pricing page if have no paid plans

* Set pricing ids in env

* views & submissions FREE for all

* extra param for env

* form password FREE for all

* Custom Code is PRO feature

* Replace codeinput prism with codemirror

* Better form Cleaning message

* Added risky user email spam protection

* fix form cleaning

* Pricing page new UI

* form cleaner

* Polish changes

* Fixed tests

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2023-08-30 09:58:29 +02:00
formsdev e47dea7936
Safer slugs (#135)
* Safer slugs

* fix test case for slug
2023-06-19 14:50:31 +02:00
Chirag Chhatrala cd14084d7a
Block Temporary mail addresses (#116)
* Block Temporary mail addresses

* Update vapor, disable cache disposable mail

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
2023-04-28 11:37:39 +02:00
Chirag Chhatrala 825492bf45
Fix logic operator issue (#104)
Co-authored-by: Julien Nahum <julien@nahum.net>
2023-03-15 18:11:25 +01:00
Julien Nahum f3a8ca11fe Fix tests and enable paralell testing 2023-02-23 19:05:17 +01:00
Chirag Chhatrala d6930d0dc2
Form visibility closed (#91) 2023-02-19 13:11:50 +01:00
Chirag 1b15597e0e
Fix logic on hidden, loading on edit submission (#75) 2023-01-25 16:10:33 +01:00
Chirag 0a33581c0a
Editable Submissions (#49)
* Editable Submissions

* refactor some code

* Update composer.lock

Co-authored-by: JhumanJ <julien@nahum.net>
2023-01-10 14:52:14 +01:00
JhumanJ a192ca35f7 Fix test create template 2022-11-16 15:57:10 +01:00
Chirag 0c0a9f1349
fix file name unicode issue (#28) 2022-11-15 11:07:07 +01:00
Chirag d694c4d8ce
Option to block past/future dates (#24) 2022-11-06 12:34:19 +01:00
Chirag 907f78e6ce
D7783 login & register page opnform (#16)
* login & register new UI

* checkbox-input support for label as slot

* test case changes
2022-10-19 10:18:07 +02:00
Chirag bd7d20feb9
Pagination for forms on main page (#9)
* Pagination for forms on main page

* Fix tests

Co-authored-by: Julien Nahum <jhumanj@MacBook-Pro-de-Julien.local>
2022-10-17 09:45:41 +02:00
Chirag 36e038a23b
New feature visibility - public/draft (#10)
* New feature visibility - public/draft

* fix bg for dark mode
2022-10-16 19:27:14 +02:00
Chirag 610c71cb69
Fix logic for multi select (#6)
* Fix logic for multi select

* test case for multi select logic
2022-10-02 20:40:10 +02:00