Compare commits

...
35 Commits
Author SHA1 Message Date
Alex van Andel a8a10c0f35 v2.6.6
release.yml / release (push) Canceled after 0s
2023-02-24 18:52:04 +00:00
Alex van Andel 5f7d904349 Fixed href's to go to the right place (#7377) 2023-02-24 11:39:09 -07:00
Alex van Andel abce20824f v2.6.5
release.yml / release (push) Canceled after 0s
2023-02-24 14:24:12 +00:00
Peer Richelsen 76a8c89d33 session with ciaran (#7366) 2023-02-24 15:21:31 +01:00
github-actions[bot]andCrowdin Bot fc9360d99a New Crowdin translations by Github Action (#7356)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-02-24 12:56:50 +01:00
Nafees Nazik a5c21d5e3e fix: primary button loading indicator color (#7364) 2023-02-24 12:55:46 +01:00
github-actions[bot]andCrowdin Bot 3960c8a954 New Crowdin translations by Github Action (#7355)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-02-24 11:51:21 +01:00
github-actions[bot]andCrowdin Bot 0cbcda7430 New Crowdin translations by Github Action (#7352)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-02-24 11:46:10 +01:00
Peer Richelsen ff12e35748 Update SettingsLayout.tsx 2023-02-24 11:43:45 +01:00
Nafees Nazik 15d967b1d2 fix: mobile drawer z-index issue (#7353) 2023-02-24 11:41:25 +01:00
github-actions[bot]andCrowdin Bot b309be1d94 New Crowdin translations by Github Action (#7316)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-02-24 11:20:02 +01:00
alannncandAlex van Andel 94dc2643f2 fix/payment-status-message-on-booking-cancelled (#7260)
Co-authored-by: Alex van Andel <me@alexvanandel.com>
2023-02-24 10:28:14 +05:30
Miguel Nieto 6440d3da6a Fix command to create new app for the app store (#7322) 2023-02-24 09:55:00 +05:30
9e08cf88f4 removed SSR trpc calls instead SPA for logged in pages (#6936)
* removed SSR trpc

* Re added debug endpoint

* Update me.ts

* Fixes unused imports

* Rollback unrelated changes

---------

Co-authored-by: zomars <zomars@me.com>
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
2023-02-23 18:41:57 -07:00
zomars 8b3eb986df Fix shared DB cache 2023-02-23 18:24:07 -07:00
Alex van Andel 8a6a7524cc Prioritise organizer to be the fixed, not lucky (round robin) user (#7317) 2023-02-23 18:22:18 -07:00
Hariom Balhara 1dbdb8a4d4 Remove _metadata.ts files for apps that have config.json (#7188) 2023-02-23 18:21:48 -07:00
Levent DenizandLevent Deniz 4fb0852505 [CAL-1125] Fix app detail page heading size (#7257)
* [CAL-1125] Fix app detail page heading size

* [CAL-1125] Fix margin on back button in shell

* [CAL-1125] Fix shell-margin for mobile

---------

Co-authored-by: Levent Deniz <levent.deniz@check24.de>
2023-02-23 17:19:52 -07:00
Nafees Nazik 0815ab715b fix: slot picker scroll position not consistent (#7282)
* fix: remove old scroll to method

* feat: add scroll into view
2023-02-23 17:19:23 -07:00
Joe Au-Yeung 944ff68463 Fix Outlook & Zoom creating events in UTC (#7283)
* Apply utc offset to time strings

* Zoom, create events in proper time zone
2023-02-23 17:18:49 -07:00
GitStart-Cal.comandgitstart-calcom 676254e96b [CAL-1103] mobile /event-type edit - Move the "Hide from profile" toggle into the dropdown (#7297)
Co-authored-by: gitstart-calcom <gitstart@users.noreply.github.com>
2023-02-23 15:09:10 -07:00
Ben Hybert 207bcb9a97 fix non-admin team preview button (#7301) 2023-02-23 15:03:33 -07:00
github-actions[bot]andCrowdin Bot 4d825672db New Crowdin translations by Github Action (#7303)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-02-23 15:02:12 -07:00
Carina WollendorferandCarinaWolli ba86e7f540 Fixes SMS actions and cal.com branding for premium plan (#7306)
* enable sms actions with premium user name

* allow hide branding when user has premium user name

---------

Co-authored-by: CarinaWolli <wollencarina@gmail.com>
2023-02-23 15:01:51 -07:00
Udit Takkar 3206e4ea12 fix: remove scroll (#7312)
Signed-off-by: Udit Takkar <udit.07814802719@cse.mait.ac.in>
2023-02-23 15:01:09 -07:00
zomars dbcebec31b Update lint.yml 2023-02-23 14:27:43 -07:00
zomars f427c09e88 Update pr.yml 2023-02-23 14:21:15 -07:00
zomars ded838881f Update pr.yml 2023-02-23 14:13:24 -07:00
zomars 08da9d805a Create cache-clean.yml 2023-02-23 14:06:34 -07:00
zomars 7cd0d5c3c3 Squashed commit of the following:
commit db31f2fdf442a7e68b8cdee4990318d30a5a3210
Author: zomars <zomars@me.com>
Date:   Thu Feb 23 11:41:46 2023 -0700

    Update pr.yml

commit 7afa9839e3a3842f2277f54bff703b1eb5740905
Author: zomars <zomars@me.com>
Date:   Thu Feb 23 11:36:49 2023 -0700

    Update nextjs-bundle-analysis.yml

commit 3b68ed19d774ce9540b0729e0b109cccbde65ea4
Author: zomars <zomars@me.com>
Date:   Thu Feb 23 11:28:30 2023 -0700

    Update pr.yml

commit 7c7e5ab65b03f97760481610a71c796611080719
Author: zomars <zomars@me.com>
Date:   Thu Feb 23 10:56:14 2023 -0700

    Update pr.yml

commit d1854cedd2aa19a7c260426ce3b309a40a16315a
Merge: 26568ba69 b018ee34a
Author: zomars <zomars@me.com>
Date:   Thu Feb 23 10:50:32 2023 -0700

    Merge remote-tracking branch 'upstream/main'

commit 26568ba693a2dd456bcd962598b4dddb8d117d1f
Merge: 2c72ac6f0 f5318c6be
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 17:10:10 2023 -0700

    Merge remote-tracking branch 'upstream/main'

commit 2c72ac6f0c0edbedc305eb7366742d31534ea1c2
Author: Peer Richelsen <peeroke@gmail.com>
Date:   Tue Feb 21 23:25:43 2023 +0100

    improved brand colors on booking page (#7269)

commit 65c0d3ffe8a7bd197c99bac3715356ab08669fbd
Author: Alex van Andel <me@alexvanandel.com>
Date:   Tue Feb 21 20:03:52 2023 +0000

    Define CODEOWNERS file (#7245)

    * Start defining CODEOWNERS file

    * Update CODEOWNERS

    ---------

    Co-authored-by: Omar López <zomars@me.com>

commit 29fb81434864634af584228e3bf3ddea1d630ecd
Author: Omar López <zomars@me.com>
Date:   Tue Feb 21 17:06:44 2023 -0700

    Update .github/actions/cache-db/action.yml

commit 92672fe3aa5539a083cbb10f82f87441b9e899d3
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 16:09:20 2023 -0700

    Revert "Revert "Re-enables buildjet""

    This reverts commit a1d78e7c12618d14b23bd50540ee005c6a550e7b.

commit 530e9748d7f2d4826ccffaa40dea2f137f8f17a9
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 15:13:22 2023 -0700

    Fixes build env

commit a1d78e7c12618d14b23bd50540ee005c6a550e7b
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 14:39:09 2023 -0700

    Revert "Re-enables buildjet"

    This reverts commit badd655e1edf8c2942582439f9fd48c00f892c38.

commit 8f67711e5d387ae0cd97d495766ccd06c4a61b0c
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 14:38:41 2023 -0700

    Adds missing build cache to e2e

commit badd655e1edf8c2942582439f9fd48c00f892c38
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 14:27:11 2023 -0700

    Re-enables buildjet

commit c7bdb52e0abfde27dd42494477ffff39cc3e4e19
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 14:10:34 2023 -0700

    Inherit secrets

commit 86b9b48e86e1c3d6e89b931ae8c8ce515c07b866
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 13:58:35 2023 -0700

    Fixes?

commit ebc304b39e815a0ff5c9e760550e4fee8283a567
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 13:42:33 2023 -0700

    Update nextjs-bundle-analysis.yml

commit 7da00d9566d4a56d77e7feb0d1504efa86148cbe
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 13:32:08 2023 -0700

    Update nextjs-bundle-analysis.yml

commit 224cc38fac42434e3a621c81a993798bb4abc773
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 13:21:38 2023 -0700

    Update nextjs-bundle-analysis.yml

commit 8fdd71ae36362290f80b55e8a2996d413d988c05
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 12:50:45 2023 -0700

    Build fixes

commit 6790be6f8fbba98658730266fb3927001066671f
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 12:46:17 2023 -0700

    Upgrades actions/checkout@v3

commit cc85218e0bdbf1f857296836c0026e09c8466ce9
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 12:29:33 2023 -0700

    Update action.yml

commit 380b1c2be4da15bc40113c7651e1595b5613b8b8
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 12:09:00 2023 -0700

    Update action.yml

commit 39b05a4e9bcba2e00b7efe342f7d456b5fba059a
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 11:55:50 2023 -0700

    Update action.yml

commit f4260393da8716c5246a6148d125d12b51993902
Merge: a82e9925f 4adfcb4b6
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 11:48:32 2023 -0700

    Merge remote-tracking branch 'upstream/main'

commit a82e9925f55c4967bad3dbb47566979734608bbc
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 11:46:07 2023 -0700

    Update lint.yml

commit 747ad8513f20767d6f66021cc548a308e18b6326
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 11:27:22 2023 -0700

    Caches DB

commit f5e96ba3f116eeb62f8ac47ca0d08e17f1fb2fdc
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 10:49:05 2023 -0700

    Comments out buildjet

commit aad26223b16c5444b947191c780416f4c8e61a94
Author: zomars <zomars@me.com>
Date:   Tue Feb 21 10:36:59 2023 -0700

    Update pr.yml

commit 7ce463f38cd1296f47cc5bb5cf8f863a6dfef9a7
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 22:07:31 2023 -0700

    Update action.yml

commit f5f57d963280d743cae0d04b6d80a7f49971f9e0
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 22:06:23 2023 -0700

    Adjustments

commit 2f048acbe6374ff6e8d9d750808c8b3e7bf7b333
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 21:47:01 2023 -0700

    WIP

commit dd1d86beb2bae0bd12b14a636398a2e2ce80555d
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 21:44:14 2023 -0700

    Removed required checks

commit 0db2b50ca8d125e1f7b115ae24cd2346fde92ab9
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 21:11:27 2023 -0700

    Fixes

commit bdc46bd5eef5dbb3c3b8dc2e68468bbff6c20aec
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 21:05:01 2023 -0700

    Update pr.yml

commit f6c58252a8e1b8971e70d3cb644b492d2fbad40d
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 21:02:39 2023 -0700

    Fixes

commit 04369405f38f200fece773ab7f9717fd62145fcf
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 20:35:39 2023 -0700

    Fixes

commit 4a60555b2bd2012c18fae8e338b7ef4bb39dc725
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 20:32:37 2023 -0700

    Update yarn-install.yml

commit 3d7749cef00cbbc843316e75d29e60ee68fe818d
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 20:31:53 2023 -0700

    Update yarn-install.yml

commit 374dc68848ee8be331e703fb0ef0cd08483694e5
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 20:28:14 2023 -0700

    Update yarn-install.yml

commit ae13d06ec2ffc759b1f8d9aea29b419e081e7693
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 20:27:31 2023 -0700

    Update check-types.yml

commit 93ad2cc92319bff6783f8633fc5bc1b8347376c4
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 20:26:38 2023 -0700

    Cleanup

commit 26730f7bbcaa07c323692ed76a17fa471f8e4f2e
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 20:05:54 2023 -0700

    Test

commit 76373a91c19fb1e67b050b0f36bb9b562d9024cd
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 19:51:28 2023 -0700

    Update yarn-e2e.yml

commit 0b3d98a4bc0cc3718b8fdb6f0537e824a6ef4204
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 19:51:14 2023 -0700

    Update package.json

commit 978d848b3989755e728353542714915782fc12c0
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 19:37:19 2023 -0700

    Cleanup

commit f2ccee16a73751f9e0bb26619da0ddfddc094907
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 19:18:42 2023 -0700

    Update action.yml

commit cf9cbbc5f08f29c2ba5a4c390129ff46bf8a3cf5
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 18:59:35 2023 -0700

    Update pr.yml

commit e8d39a91a5909674bfe9d4775ca09d814372529d
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 18:57:53 2023 -0700

    Update action.yml

commit eaa1210d1386b2eadd0bb1990ded444f7c307e60
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 18:43:59 2023 -0700

    Anotha one

commit 2958c17ebb28b3a231982a60fc3f3255a0d013e9
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 16:36:39 2023 -0700

    Tests

commit 922c9077b66b061e9f644eedf0022907ac6df161
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 16:02:05 2023 -0700

    Update pr.yml

commit 663b3bf48aa83a19f735badeb126e2968ee73733
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 16:00:49 2023 -0700

    Adds type check

commit 99746ee6e8662e39862ce25b5d9804372adf9fa4
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 15:53:57 2023 -0700

    Update yarn-e2e.yml

commit f82833cfdb17fa4a3da588a92925d3ebd8579357
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 15:53:04 2023 -0700

    Abstract playwright cache

commit e92ad12b54563219708b1e4423e502e1ac1f2197
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 15:41:07 2023 -0700

    Update action.yml

commit 271fe44bf087b19a7d0b1484261eff1cae8cb8b9
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 15:34:38 2023 -0700

    Update action.yml

commit 9a690de1ffd43270973c969c816e7b76a1d50a38
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 15:26:51 2023 -0700

    WIP

commit 5322fc7134bfa9c1061c45033573503023ba05db
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 15:04:03 2023 -0700

    Fixes

commit 3721dae0b45e4bd309f6a7c92db393956e543880
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 14:59:12 2023 -0700

    Update action.yml

commit 1027f058fd1bcbaa680b4297b081dd838f6ea886
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 14:56:51 2023 -0700

    Update action.yml

commit 9d74f9ed7bddf3e5563420c88476b73230c619df
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 14:53:43 2023 -0700

    Fixes

commit 4bfd63afef3b4139bb797ca6e5a9895138092417
Author: zomars <zomars@me.com>
Date:   Mon Feb 20 14:51:46 2023 -0700

    DRY

commit ea6114835dda65b5d6b31a96ad2781938cc8c121
Author: Omar López <zomars@me.com>
Date:   Sat Feb 18 16:38:00 2023 -0700

    Update production-build.yml

commit 8ec2b2c2c505c74b40a8e50a43e41f3d444730dc
Author: Omar López <zomars@me.com>
Date:   Sat Feb 18 16:36:44 2023 -0700

    Update production-build.yml

commit b0a7ccaa753f2fcf1ec571f3af1df9eea228f8b3
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 15:59:25 2023 -0700

    TEST

commit 0d639fdeb95deaa588fd29e63c275ea8b10a25d8
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 15:36:00 2023 -0700

    Revert

commit 5a597644a0a90cd212ff826aa3dda3214ab05334
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 15:32:16 2023 -0700

    Test

commit 7aafa78f1463f5a22576f814fa70db73db1ff89e
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 12:09:58 2023 -0700

    test

commit 81287f963bfcecbb1fd45670043b4e14690f8a6e
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 11:12:56 2023 -0700

    Update pr.yml

commit ef596f53d4614335ce36e084eae4b79efeed057c
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:59:08 2023 -0700

    Update pr.yml

commit 7dbaf1d08deec73c6f4bb53659d4af56282a2c68
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:58:22 2023 -0700

    Update pr.yml

commit 25489edac712e5b343c8f31123415a3cc804d254
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:39:55 2023 -0700

    Update pr.yml

commit 29ae0845b5b179c1493a35c18925f3f3e619d997
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:32:17 2023 -0700

    Update production-build.yml

commit 791492ac9e98046acd9fd5c100d0a3afa54fbbe3
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:28:37 2023 -0700

    Update pr.yml

commit 92597d8d7e4139b8129cd499545c37d1a518c0d0
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:24:15 2023 -0700

    Update pr.yml

commit 9bc85570c758f86079712270a1cc96e5983368a4
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:23:25 2023 -0700

    Update pr.yml

commit ba20dbbb96c95272118ecf5b6eead4ee0e816782
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:15:53 2023 -0700

    Update nextjs-bundle-analysis.yml

commit 35b7cd52d819409516f76d2b0e5849a136f55dc2
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 10:11:02 2023 -0700

    Update pr.yml

commit 8fe421e8d5c227d1cb5e31fe73398776d3b05dbf
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 09:55:49 2023 -0700

    Update pr.yml

commit f96af3f70810555d75ae9f3ba6f16e7e464e1926
Author: zomars <zomars@me.com>
Date:   Sat Feb 18 09:33:34 2023 -0700

    Update production-build.yml

commit 29134a3245e00b94a4b0edc2889ea6e81adf3e9b
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:53:06 2023 -0700

    Tests

commit 4aa8917687ccb28c1c9abfc30441c96db1bc1663
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:38:17 2023 -0700

    Update production-build.yml

commit 7c0884d0b7a45f9e8722547288d3879ee3e82add
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:16:59 2023 -0700

    Update pr.yml

commit b68ccd5ee1502de4f9afed2841cf2ab61309cf0e
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:16:27 2023 -0700

    Update pr.yml

commit 0c15086a7c02513e73821828a9392cdf45af6227
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:13:29 2023 -0700

    Update pr.yml

commit da277ce83bcebd62afc7e2074e82b9e4c64f4c27
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:12:50 2023 -0700

    Update pr.yml

commit fdb170086b70ded1f7109e35e85cce60a2ef7eaf
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:12:19 2023 -0700

    Update pr.yml

commit 1676d9070b2a07bbbf03297aa6c331dd68b7df4f
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 20:12:06 2023 -0700

    Update pr.yml

commit e834b42e87cad2401219b6fae765871f4b5eb7e8
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 19:59:53 2023 -0700

    Update pr.yml

commit e414378d243f3f43f3639127dee2f4bc4ac75633
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 19:57:07 2023 -0700

    Update pr.yml

commit 6904553b627a4896dab6adb8ac909f6e8604e893
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 19:55:47 2023 -0700

    Update pr.yml

commit 4722f0b44ac33f62ac019a4e707005bc7ff22b07
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 19:54:50 2023 -0700

    Update pr.yml

commit 2a9afdc4ac7a90c76f0aa7edbb2f3af0fbd0e7f1
Author: zomars <zomars@me.com>
Date:   Fri Feb 17 19:13:25 2023 -0700

    Testing
2023-02-23 13:44:38 -07:00
Nafees Nazik b018ee34a7 fix: placeholder in custom event name (#7247)
* fix: replace placeholder

* refactor: replace placeholder into a separate function
2023-02-23 15:46:36 +00:00
Peer Richelsen 17345f9326 added danish (#7302) 2023-02-23 16:40:17 +01:00
a1d7b30d51 New Crowdin translations by Github Action (#7273)Co-authored-by: Crowdin Bot <support+bot@crowdin.com> Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* New Crowdin translations by Github Action

* Update apps/web/public/static/locales/es/common.json

* Update apps/web/public/static/locales/ro/common.json

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
2023-02-23 16:38:37 +01:00
Hariom Balhara 87dbfba5df Hotfix/ Fix failing build due to terser missing (#7294)
* No need to use terser

* v1.1.3

* v1.0.5

* v1.0.10
2023-02-23 13:55:02 +01:00
Esaú Morais e5d44d029a Allow user to add as many locations as they want (#7279) 2023-02-23 16:49:28 +05:30
126 changed files with 2254 additions and 830 deletions
+2 -2
View File
@@ -17,8 +17,8 @@ runs:
with:
path: ${{ inputs.path }}
key: ${{ runner.os }}-${{ env.cache-name }}-${{ inputs.path }}-${{ github.sha }}
restore-keys: |
${{ runner.os }}-${{ env.cache-name }}-${{ inputs.path }}-
restore-keys: |
${{ runner.os }}-${{ env.cache-name }}-${{ inputs.path }}-${{ github.sha }}
- name: Postgres Dump Backup
if: steps.cache-db.outputs.cache-hit != 'true'
uses: tj-actions/pg-dump@v2.3
+33
View File
@@ -0,0 +1,33 @@
name: cleanup caches by a branch
on:
pull_request:
types:
- closed
jobs:
cleanup:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Cleanup
run: |
gh extension install actions/gh-actions-cache
REPO=${{ github.repository }}
BRANCH="refs/pull/${{ github.event.pull_request.number }}/merge"
echo "Fetching list of cache key"
cacheKeysForPR=$(gh actions-cache list -R $REPO -B $BRANCH | cut -f 1 )
## Setting this to not fail the workflow while deleting cache keys.
set +e
echo "Deleting caches..."
for cacheKey in $cacheKeysForPR
do
gh actions-cache delete $cacheKey -R $REPO -B $BRANCH --confirm
done
echo "Done"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+1 -1
View File
@@ -3,7 +3,7 @@ on:
workflow_call:
jobs:
lint:
runs-on: buildjet-4vcpu-ubuntu-2204
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
@@ -9,10 +9,12 @@ on:
jobs:
build:
name: Production build
if: ${{ github.event_name == 'push' }}
uses: ./.github/workflows/production-build.yml
secrets: inherit
analyze:
needs: build
if: always()
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
+9
View File
@@ -85,3 +85,12 @@ jobs:
needs: build
uses: ./.github/workflows/nextjs-bundle-analysis.yml
secrets: inherit
required:
needs: [lint, type-check, test, build, e2e]
if: always()
runs-on: ubuntu-latest
steps:
- name: fail if conditional jobs failed
if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'skipped') || contains(needs.*.result, 'cancelled')
run: exit 1
+1 -1
View File
@@ -10,7 +10,7 @@ import NavTabs from "./NavTabs";
const tabs = [
{
name: "profile",
href: "/settings/profile",
href: "/settings/my-account/profile",
icon: FiUser,
},
{
+6 -3
View File
@@ -303,6 +303,11 @@ const Component = ({
);
};
const ShellHeading = () => {
const { t } = useLocale();
return <span className="block py-2">{t("app_store")}</span>;
};
export default function App(props: {
name: string;
description: AppType["description"];
@@ -328,10 +333,8 @@ export default function App(props: {
images?: string[];
isTemplate?: boolean;
}) {
const { t } = useLocale();
return (
<Shell smallHeading isPublic heading={t("app_store")} backPath="/apps" withoutSeo>
<Shell smallHeading isPublic heading={<ShellHeading />} backPath="/apps" withoutSeo>
<HeadSeo
title={props.name}
description={props.description}
+12 -2
View File
@@ -2,11 +2,12 @@ import { useAutoAnimate } from "@formkit/auto-animate/react";
import Link from "next/link";
import { useRouter } from "next/router";
import type { FC } from "react";
import { useEffect, useState } from "react";
import { useEffect, useState, useCallback } from "react";
import type { Dayjs } from "@calcom/dayjs";
import dayjs from "@calcom/dayjs";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import useMediaQuery from "@calcom/lib/hooks/useMediaQuery";
import { TimeFormat } from "@calcom/lib/timeFormat";
import { nameOfDay } from "@calcom/lib/weekday";
import type { Slot } from "@calcom/trpc/server/routers/viewer/slots";
@@ -50,6 +51,15 @@ const AvailableTimes: FC<AvailableTimesProps> = ({
useEffect(() => {
setBrand(getComputedStyle(document.documentElement).getPropertyValue("--brand-color").trim());
}, []);
const isMobile = useMediaQuery("(max-width: 768px)");
const ref = useCallback(
(node: HTMLDivElement) => {
if (isMobile) {
node?.scrollIntoView({ behavior: "smooth" });
}
},
[isMobile]
);
return (
<div ref={slotPickerRef}>
@@ -75,7 +85,7 @@ const AvailableTimes: FC<AvailableTimesProps> = ({
/>
</div>
</div>
<div className="flex-grow overflow-y-auto sm:block md:h-[364px]">
<div ref={ref} className="flex-grow overflow-y-auto sm:block md:h-[364px]">
{slots.length > 0 &&
slots.map((slot) => {
type BookingURL = {
@@ -82,13 +82,14 @@ export const EventAdvancedTab = ({ eventType, team }: Pick<EventTypeSetupProps,
setCustomInputs([...customInputs]);
};
const replaceEventNamePlaceholder = (eventNameObject: EventNameObjectType, previewEventName: string) =>
previewEventName
.replace("{Event type title}", eventNameObject.eventType)
.replace("{Scheduler}", eventNameObject.attendeeName)
.replace("{Organiser}", eventNameObject.host);
const changePreviewText = (eventNameObject: EventNameObjectType, previewEventName: string) => {
setPreviewText(
previewEventName
.replace("{Event type title}", eventNameObject.eventType)
.replace("{Scheduler}", eventNameObject.attendeeName)
.replace("{Organiser}", eventNameObject.host)
);
setPreviewText(replaceEventNamePlaceholder(eventNameObject, previewEventName));
};
useEffect(() => {
@@ -101,6 +102,8 @@ export const EventAdvancedTab = ({ eventType, team }: Pick<EventTypeSetupProps,
}
}, [eventType.customInputs]);
const eventNamePlaceholder = replaceEventNamePlaceholder(eventNameObject, t("meeting_with_user"));
return (
<div className="flex flex-col space-y-8">
{/**
@@ -141,7 +144,7 @@ export const EventAdvancedTab = ({ eventType, team }: Pick<EventTypeSetupProps,
<TextField
label={t("event_name_in_calendar")}
type="text"
placeholder={t("meeting_with_user")}
placeholder={eventNamePlaceholder}
defaultValue={eventType.eventName || ""}
{...formMethods.register("eventName", {
onChange: (e) => {
@@ -413,7 +416,7 @@ export const EventAdvancedTab = ({ eventType, team }: Pick<EventTypeSetupProps,
<TextField
label={t("event_name_in_calendar")}
type="text"
placeholder={t("meeting_with_user")}
placeholder={eventNamePlaceholder}
defaultValue={eventType.eventName || ""}
{...formMethods.register("eventName", {
onChange: (e) => {
@@ -246,7 +246,7 @@ export const EventSetupTab = (
</Trans>
</div>
)}
{validLocations.length > 0 && validLocations.length !== locationOptions.length && (
{validLocations.length > 0 && (
<li>
<Button
data-testid="add-location"
@@ -197,7 +197,7 @@ function EventTypeSingleLayout({
heading={eventType.title}
CTA={
<div className="flex items-center justify-end">
<div className="hidden items-center rounded-md px-2 sm:flex sm:hover:bg-gray-100">
<div className="hidden items-center rounded-md px-2 sm:hover:bg-gray-100 lg:flex">
<Skeleton
as={Label}
htmlFor="hiddenSwitch"
@@ -206,7 +206,7 @@ function EventTypeSingleLayout({
</Skeleton>
<Switch
id="hiddenSwitch"
defaultChecked={formMethods.getValues("hidden")}
checked={formMethods.watch("hidden")}
onCheckedChange={(e) => {
formMethods.setValue("hidden", e);
}}
@@ -261,7 +261,7 @@ function EventTypeSingleLayout({
<DropdownMenuTrigger asChild>
<Button className="lg:hidden" StartIcon={FiMoreHorizontal} variant="icon" color="secondary" />
</DropdownMenuTrigger>
<DropdownMenuContent>
<DropdownMenuContent style={{ minWidth: "200px" }}>
<DropdownMenuItem className="focus:ring-gray-100">
<DropdownItem
target="_blank"
@@ -293,17 +293,17 @@ function EventTypeSingleLayout({
{t("delete")}
</DropdownItem>
</DropdownMenuItem>
<DropdownMenuSeparator className="block sm:hidden" />
<div className="flex items-center rounded-md py-1.5 px-4 sm:hidden sm:hover:bg-gray-100">
<DropdownMenuSeparator />
<div className="flex h-9 flex-row items-center justify-between py-2 px-4 sm:hover:bg-gray-100">
<Skeleton
as={Label}
htmlFor="hiddenSwitch"
className="mt-2 inline cursor-pointer self-center pr-2 sm:hidden">
className="mt-2 inline cursor-pointer self-center pr-2 ">
{t("hide_from_profile")}
</Skeleton>
<Switch
id="hiddenSwitch"
defaultChecked={formMethods.getValues("hidden")}
checked={formMethods.watch("hidden")}
onCheckedChange={(e) => {
formMethods.setValue("hidden", e);
}}
+2 -2
View File
@@ -1,3 +1,3 @@
export function isBrandingHidden(hideBrandingSetting: boolean, belongsToActiveTeam: boolean) {
return belongsToActiveTeam && hideBrandingSetting;
export function isBrandingHidden(hideBrandingSetting: boolean, hasPaidPlan: boolean) {
return hasPaidPlan && hideBrandingSetting;
}
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@calcom/web",
"version": "2.6.4",
"version": "2.6.6",
"private": true,
"scripts": {
"analyze": "ANALYZE=true next build",
+6 -2
View File
@@ -3,6 +3,7 @@ import { z } from "zod";
import type { LocationObject } from "@calcom/app-store/locations";
import { IS_TEAM_BILLING_ENABLED, WEBAPP_URL } from "@calcom/lib/constants";
import hasKeyInMetadata from "@calcom/lib/hasKeyInMetadata";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import type { User } from "@calcom/prisma/client";
@@ -82,6 +83,7 @@ async function getUserPageProps(context: GetStaticPropsContext) {
weekStart: true,
brandColor: true,
darkBrandColor: true,
metadata: true,
eventTypes: {
where: {
// Many-to-many relationship causes inclusion of the team events - cool -
@@ -157,7 +159,7 @@ async function getUserPageProps(context: GetStaticPropsContext) {
locations: privacyFilteredLocations(locations),
descriptionAsSafeHTML: eventType.description ? md.render(eventType.description) : null,
});
// Check if the user you are logging into has any active teams
// Check if the user you are logging into has any active teams or premium user name
const hasActiveTeam =
user.teams.filter((m) => {
if (!IS_TEAM_BILLING_ENABLED) return true;
@@ -166,6 +168,8 @@ async function getUserPageProps(context: GetStaticPropsContext) {
return false;
}).length > 0;
const hasPremiumUserName = hasKeyInMetadata(user, "isPremium");
return {
props: {
eventType: eventTypeObject,
@@ -182,7 +186,7 @@ async function getUserPageProps(context: GetStaticPropsContext) {
away: user?.away,
isDynamic: false,
trpcState: ssg.dehydrate(),
isBrandingHidden: isBrandingHidden(user.hideBranding, hasActiveTeam),
isBrandingHidden: isBrandingHidden(user.hideBranding, hasActiveTeam || hasPremiumUserName),
},
revalidate: 10, // seconds
};
-13
View File
@@ -1,5 +1,4 @@
import { useAutoAnimate } from "@formkit/auto-animate/react";
import type { GetServerSidePropsContext } from "next";
import { NewScheduleButton, ScheduleListItem } from "@calcom/features/schedules";
import Shell from "@calcom/features/shell/Shell";
@@ -14,8 +13,6 @@ import { HttpError } from "@lib/core/http/error";
import SkeletonLoader from "@components/availability/SkeletonLoader";
import { ssrInit } from "@server/lib/ssr";
export function AvailabilityList({ schedules }: RouterOutputs["viewer"]["availability"]["list"]) {
const { t } = useLocale();
const utils = trpc.useContext();
@@ -118,13 +115,3 @@ export default function AvailabilityPage() {
</div>
);
}
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
+13 -11
View File
@@ -442,17 +442,19 @@ export default function Success(props: SuccessProps) {
<div className="mt-3">
<p className="text-gray-600 dark:text-gray-300">{getTitle()}</p>
</div>
{props.paymentStatus && (
<h4>
{!props.paymentStatus.success &&
!props.paymentStatus.refunded &&
t("booking_with_payment_cancelled")}
{props.paymentStatus.success &&
!props.paymentStatus.refunded &&
t("booking_with_payment_cancelled_already_paid")}
{props.paymentStatus.refunded && t("booking_with_payment_cancelled_refunded")}
</h4>
)}
{props.paymentStatus &&
(bookingInfo.status === BookingStatus.CANCELLED ||
bookingInfo.status === BookingStatus.REJECTED) && (
<h4>
{!props.paymentStatus.success &&
!props.paymentStatus.refunded &&
t("booking_with_payment_cancelled")}
{props.paymentStatus.success &&
!props.paymentStatus.refunded &&
t("booking_with_payment_cancelled_already_paid")}
{props.paymentStatus.refunded && t("booking_with_payment_cancelled_refunded")}
</h4>
)}
<div className="border-bookinglightest text-bookingdark dark:border-darkgray-200 mt-8 grid grid-cols-3 border-t pt-8 text-left dark:text-gray-300">
{(isCancelled || reschedule) && cancellationReason && (
+3 -17
View File
@@ -1,5 +1,4 @@
import { useAutoAnimate } from "@formkit/auto-animate/react";
import type { GetServerSidePropsContext } from "next";
import Link from "next/link";
import { useRouter } from "next/router";
import type { FC } from "react";
@@ -60,8 +59,6 @@ import { HttpError } from "@lib/core/http/error";
import { EmbedButton, EmbedDialog } from "@components/Embed";
import SkeletonLoader from "@components/eventtype/SkeletonLoader";
import { ssrInit } from "@server/lib/ssr";
type EventTypeGroups = RouterOutputs["viewer"]["eventTypes"]["getByViewer"]["eventTypeGroups"];
type EventTypeGroupProfile = EventTypeGroups[number]["profile"];
@@ -73,6 +70,7 @@ interface EventTypeListHeadingProps {
type EventTypeGroup = EventTypeGroups[number];
type EventType = EventTypeGroup["eventTypes"][number];
interface EventTypeListProps {
group: EventTypeGroup;
groupIndex: number;
@@ -134,11 +132,9 @@ const Item = ({ type, group, readOnly }: { type: EventType; group: EventTypeGrou
data-testid={"event-type-slug-" + type.id}>
{`/${group.profile.slug}/${type.slug}`}
</small>
) : (
<></>
)}
) : null}
{readOnly && (
<span className="inline items-center rounded-sm bg-gray-100 px-1.5 py-0.5 text-xs font-medium text-gray-800 ltr:ml-2 ltr:mr-2 rtl:ml-2">
<span className="items-center rounded-sm bg-gray-100 px-1.5 py-0.5 text-xs font-medium text-gray-800 ltr:ml-2 ltr:mr-2 rtl:ml-2">
{t("readonly")}
</span>
)}
@@ -695,14 +691,4 @@ const EventTypesPage = () => {
);
};
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default EventTypesPage;
@@ -1,13 +1,9 @@
import type { GetServerSidePropsContext } from "next";
import AdminAppsList from "@calcom/features/apps/AdminAppsList";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { Meta } from "@calcom/ui";
import { getLayout } from "@components/auth/layouts/AdminLayout";
import { ssrInit } from "@server/lib/ssr";
function AdminAppsView() {
const { t } = useLocale();
return (
@@ -20,14 +16,4 @@ function AdminAppsView() {
AdminAppsView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default AdminAppsView;
@@ -1,2 +1 @@
export { getServerSideProps } from "./[category]";
export { default } from "./[category]";
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { signIn } from "next-auth/react";
import { useRef } from "react";
@@ -7,8 +6,6 @@ import { Button, Meta, TextField } from "@calcom/ui";
import { getLayout } from "@components/auth/layouts/AdminLayout";
import { ssrInit } from "@server/lib/ssr";
function AdminView() {
const { t } = useLocale();
const usernameRef = useRef<HTMLInputElement>(null);
@@ -41,14 +38,4 @@ function AdminView() {
AdminView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default AdminView;
-14
View File
@@ -1,11 +1,7 @@
import type { GetServerSidePropsContext } from "next";
import { Meta } from "@calcom/ui";
import { getLayout } from "@components/auth/layouts/AdminLayout";
import { ssrInit } from "@server/lib/ssr";
function AdminAppsView() {
return (
<>
@@ -17,14 +13,4 @@ function AdminAppsView() {
AdminAppsView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default AdminAppsView;
-13
View File
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { useRouter } from "next/router";
import { useState } from "react";
import { HelpScout, useChat } from "react-live-chat-loader";
@@ -10,8 +9,6 @@ import { useLocale } from "@calcom/lib/hooks/useLocale";
import { Button, Meta } from "@calcom/ui";
import { FiExternalLink } from "@calcom/ui/components/icon";
import { ssrInit } from "@server/lib/ssr";
interface CtaRowProps {
title: string;
description: string;
@@ -72,14 +69,4 @@ const BillingView = () => {
BillingView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default BillingView;
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { useState } from "react";
import type { TApiKeys } from "@calcom/ee/api-keys/components/ApiKeyListItem";
@@ -19,8 +18,6 @@ import {
} from "@calcom/ui";
import { FiLink, FiPlus } from "@calcom/ui/components/icon";
import { ssrInit } from "@server/lib/ssr";
const ApiKeysView = () => {
const { t } = useLocale();
@@ -96,14 +93,4 @@ const ApiKeysView = () => {
ApiKeysView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default ApiKeysView;
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { Controller, useForm } from "react-hook-form";
import ThemeLabel from "@calcom/features/settings/ThemeLabel";
@@ -20,8 +19,6 @@ import {
UpgradeTeamsBadge,
} from "@calcom/ui";
import { ssrInit } from "@server/lib/ssr";
const SkeletonLoader = ({ title, description }: { title: string; description: string }) => {
return (
<SkeletonContainer>
@@ -215,14 +212,4 @@ const AppearanceView = () => {
AppearanceView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default AppearanceView;
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { Trans } from "next-i18next";
import Link from "next/link";
import { useRouter } from "next/router";
@@ -30,8 +29,6 @@ import { QueryCell } from "@lib/QueryCell";
import { CalendarSwitch } from "@components/settings/CalendarSwitch";
import { ssrInit } from "@server/lib/ssr";
const SkeletonLoader = () => {
return (
<SkeletonContainer>
@@ -228,14 +225,4 @@ const CalendarsView = () => {
CalendarsView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default CalendarsView;
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { useRouter } from "next/router";
import { useMemo } from "react";
import { Controller, useForm } from "react-hook-form";
@@ -23,8 +22,6 @@ import {
import { withQuery } from "@lib/QueryCell";
import { ssrInit } from "@server/lib/ssr";
const SkeletonLoader = ({ title, description }: { title: string; description: string }) => {
return (
<SkeletonContainer>
@@ -223,14 +220,4 @@ const GeneralView = ({ localeProp, user }: GeneralViewProps) => {
GeneralQueryView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default GeneralQueryView;
@@ -1,7 +1,6 @@
import { IdentityProvider } from "@prisma/client";
import crypto from "crypto";
import MarkdownIt from "markdown-it";
import type { GetServerSidePropsContext } from "next";
import { signOut } from "next-auth/react";
import type { BaseSyntheticEvent } from "react";
import { useRef, useState } from "react";
@@ -42,8 +41,6 @@ import { FiAlertTriangle, FiTrash2 } from "@calcom/ui/components/icon";
import TwoFactor from "@components/auth/TwoFactor";
import { UsernameAvailabilityField } from "@components/ui/UsernameAvailability";
import { ssrInit } from "@server/lib/ssr";
const md = new MarkdownIt("default", { html: true, breaks: true });
const SkeletonLoader = ({ title, description }: { title: string; description: string }) => {
@@ -385,14 +382,4 @@ const ProfileForm = ({
ProfileView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default ProfileView;
@@ -1,5 +1,4 @@
import { IdentityProvider } from "@prisma/client";
import type { GetServerSidePropsContext } from "next";
import { signOut, useSession } from "next-auth/react";
import { useForm } from "react-hook-form";
@@ -10,8 +9,6 @@ import { userMetadata } from "@calcom/prisma/zod-utils";
import { trpc } from "@calcom/trpc/react";
import { Alert, Button, Form, Meta, PasswordField, Select, SettingsToggle, showToast } from "@calcom/ui";
import { ssrInit } from "@server/lib/ssr";
type ChangePasswordSessionFormValues = {
oldPassword: string;
newPassword: string;
@@ -209,14 +206,4 @@ const PasswordView = () => {
PasswordView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default PasswordView;
-14
View File
@@ -1,15 +1 @@
import type { GetServerSidePropsContext } from "next";
import { ssrInit } from "@server/lib/ssr";
export { default } from "@calcom/features/ee/sso/page/user-sso-view";
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { useState } from "react";
import { getLayout } from "@calcom/features/settings/layouts/SettingsLayout";
@@ -9,8 +8,6 @@ import { Badge, Meta, Switch, SkeletonButton, SkeletonContainer, SkeletonText }
import DisableTwoFactorModal from "@components/settings/DisableTwoFactorModal";
import EnableTwoFactorModal from "@components/settings/EnableTwoFactorModal";
import { ssrInit } from "@server/lib/ssr";
const SkeletonLoader = () => {
return (
<SkeletonContainer>
@@ -85,14 +82,4 @@ const TwoFactorAuthView = () => {
TwoFactorAuthView.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default TwoFactorAuthView;
@@ -1,15 +1 @@
import type { GetServerSidePropsContext } from "next";
import { ssrInit } from "@server/lib/ssr";
export { default } from "@calcom/features/ee/teams/pages/team-appearance-view";
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
@@ -1,15 +1 @@
import type { GetServerSidePropsContext } from "next";
import { ssrInit } from "@server/lib/ssr";
export { default } from "@calcom/features/ee/teams/pages/team-billing-view";
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
@@ -1,15 +1 @@
import type { GetServerSidePropsContext } from "next";
import { ssrInit } from "@server/lib/ssr";
export { default } from "@calcom/features/ee/teams/pages/team-members-view";
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
@@ -1,15 +1 @@
import type { GetServerSidePropsContext } from "next";
import { ssrInit } from "@server/lib/ssr";
export { default } from "@calcom/features/ee/teams/pages/team-profile-view";
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
@@ -1,15 +1 @@
import type { GetServerSidePropsContext } from "next";
import { ssrInit } from "@server/lib/ssr";
export { default } from "@calcom/features/ee/sso/page/teams-sso-view";
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
@@ -1,4 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import Head from "next/head";
import { CreateANewTeamForm } from "@calcom/features/ee/teams/components";
@@ -6,8 +5,6 @@ import { useLocale } from "@calcom/lib/hooks/useLocale";
import { getLayout } from "@components/layouts/WizardLayout";
import { ssrInit } from "@server/lib/ssr";
const CreateNewTeamPage = () => {
const { t } = useLocale();
return (
@@ -23,14 +20,4 @@ const CreateNewTeamPage = () => {
CreateNewTeamPage.getLayout = getLayout;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default CreateNewTeamPage;
-14
View File
@@ -1,5 +1,3 @@
import type { GetServerSidePropsContext } from "next";
import { TeamsListing } from "@calcom/features/ee/teams/components";
import Shell from "@calcom/features/shell/Shell";
import { WEBAPP_URL } from "@calcom/lib/constants";
@@ -7,8 +5,6 @@ import { useLocale } from "@calcom/lib/hooks/useLocale";
import { Button } from "@calcom/ui";
import { FiPlus } from "@calcom/ui/components/icon";
import { ssrInit } from "@server/lib/ssr";
function Teams() {
const { t } = useLocale();
return (
@@ -31,14 +27,4 @@ function Teams() {
Teams.requiresLicense = false;
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
export default Teams;
-14
View File
@@ -1,15 +1 @@
import type { GetServerSidePropsContext } from "next";
import { ssrInit } from "@server/lib/ssr";
export { default } from "@calcom/features/ee/workflows/pages/index";
export const getServerSideProps = async (context: GetServerSidePropsContext) => {
const ssr = await ssrInit(context);
return {
props: {
trpcState: ssr.dehydrate(),
},
};
};
@@ -10,7 +10,7 @@ test("Can delete user account", async ({ page, users }) => {
await page.waitForSelector("[data-testid=dashboard-shell]");
await page.goto(`/settings/profile`);
await page.goto(`/settings/my-account/profile`);
await page.click("[data-testid=delete-account]");
if (!user.username) throw Error(`Test user doesn't have a username`);
File diff suppressed because it is too large Load Diff
+121 -1
View File
@@ -7,6 +7,7 @@
"upgrade_now": "Jetzt upgraden",
"accept_invitation": "Einladung annehmen",
"calcom_explained": "{{appName}} stellt die Planungsinfrastruktur für absolut jeden bereit.",
"calcom_explained_new_user": "Beenden Sie die Einrichtung Ihres {{appName}} -Kontos! Sie sind nur ein paar Schritte von der Lösung aller Probleme in der Zeitplanung entfernt.",
"have_any_questions": "Haben Sie Fragen? Wir sind hier um Ihnen zu helfen.",
"reset_password_subject": "{{appName}}: Anleitung zum Zurücksetzen des Passworts",
"event_declined_subject": "Abgelehnt: {{title}} am {{date}}",
@@ -23,6 +24,8 @@
"rejection_reason_description": "Sind Sie sicher, dass Sie die Buchung ablehnen möchten? Wir werden die Person, die versucht hat zu buchen, informieren. Sie können einen Grund angeben.",
"rejection_confirmation": "Buchung ablehnen",
"manage_this_event": "Diesen Termin verwalten",
"invite_team_member": "Teammitglied einladen",
"invite_team_notifcation_badge": "Inv.",
"your_event_has_been_scheduled": "Ihr Termin wurde gebucht",
"your_event_has_been_scheduled_recurring": "Ihr wiederkehrender Termin wurde gebucht",
"accept_our_license": "Akzeptieren Sie unsere Lizenz, indem Sie die .env-Variable <1>NEXT_PUBLIC_LICENSE_CONSENT</1> auf '{{agree}} ' ändern.",
@@ -410,6 +413,8 @@
"password_updated_successfully": "Passwort erfolgreich aktualisiert",
"password_has_been_changed": "Ihr Passwort wurde erfolgreich geändert.",
"error_changing_password": "Fehler beim Ändern des Passworts",
"session_timeout_changed": "Ihre Session Konfiguration wurde erfolgreich aktualisiert.",
"session_timeout_change_error": "Fehler beim Aktualisieren der Session Konfiguration",
"something_went_wrong": "Etwas ist schief gelaufen",
"something_doesnt_look_right": "Irgendwas sieht nicht richtig aus?",
"please_try_again": "Bitte erneut versuchen",
@@ -428,6 +433,7 @@
"password_hint_num": "Enthält mindestens 1 Zahl",
"invalid_password_hint": "Das Passwort muss mindestens {{passwordLength}} Zeichen lang sein und mindestens eine Nummer beinhalten, sowie eine Mischung aus Groß- und Kleinbuchstaben sein",
"incorrect_password": "Passwort ist falsch",
"incorrect_username_password": "Benutzername oder Passwort ist falsch.",
"24_h": "24 Std",
"use_setting": "Benutze Einstellung",
"am_pm": "am/pm",
@@ -455,6 +461,7 @@
"slots_load_fail": "Die verfügbaren Zeitfenster konnten nicht geladen werden.",
"additional_guests": "+ Weitere Gäste",
"your_name": "Ihr Name",
"your_full_name": "Ihr vollständiger Name",
"email_address": "E-Mail Adresse",
"enter_valid_email": "Bitte geben Sie eine gültige Emaildresse ein",
"location": "Ort",
@@ -508,6 +515,8 @@
"admin": "Administrator",
"administrator_user": "Administrator Benutzer",
"lets_create_first_administrator_user": "Lass uns als erstes den Administrator Benutzer anlegen.",
"admin_user_created": "Administrator-Benutzereinstellungen",
"admin_user_created_description": "Sie haben bereits einen Administrator-Benutzer erstellt. Sie können sich nun in Ihr Konto einloggen.",
"new_member": "Neues Mitglied",
"invite": "Einladen",
"add_team_members": "Teammitglieder hinzufügen",
@@ -658,6 +667,7 @@
"edit_availability": "Verfügbarkeit bearbeiten",
"configure_availability": "Konfigurieren Sie die Zeiten, in denen Sie für Buchungen zur Verfügung stehen.",
"copy_times_to": "Zeiten kopieren in",
"copy_times_to_tooltip": "Kopiere Zeiten nach …",
"change_weekly_schedule": "Wöchentliche Termine ändern",
"logo": "Logo",
"error": "Fehler",
@@ -669,6 +679,7 @@
"add_attendees": "Teilnehmende hinzufügen",
"show_advanced_settings": "Erweiterte Einstellungen anzeigen",
"event_name": "Termin-Name",
"event_name_in_calendar": "Ereignisname im Kalender",
"event_name_tooltip": "Der Name, der in Kalendern angezeigt wird",
"meeting_with_user": "Meeting mit {{attendeeName}}",
"additional_inputs": "Zusätzliche Notizen",
@@ -787,6 +798,7 @@
"number_apps_one": "{{count}} Apps",
"number_apps_other": "{{count}} Apps",
"trending_apps": "Angesagte Apps",
"most_popular": "Am beliebtesten",
"explore_apps": "{{category}} Apps",
"installed_apps": "Installierte Apps",
"free_to_use_apps": "Kostenlos",
@@ -797,12 +809,14 @@
"no_category_apps_description_analytics": "Fügen Sie eine Analyse-App für Ihre Buchungsseiten hinzu",
"no_category_apps_description_automation": "Fügen Sie eine Automatisierungs-App hinzu, die verwendet werden soll",
"no_category_apps_description_other": "Füge jede beliebige andere Art von App hinzu, um alle möglichen Dinge zu tun",
"no_category_apps_description_web3": "Fügen Sie eine web3-App für Ihre Buchungsseiten hinzu",
"installed_app_calendar_description": "Legen Sie den/die Kalender in denen nach Konflikten gesucht werden sollen fest, um Doppelbuchungen zu vermeiden.",
"installed_app_conferencing_description": "Fügen Sie Ihre liebsten Videokonferenz-Apps für Ihre Meetings hinzu",
"installed_app_payment_description": "Konfigurieren Sie die Zahlungsdienstleister, welcher bei der Belastung Ihrer Kunden verwendet werden sollen.",
"installed_app_analytics_description": "Konfigurieren Sie, welche Analyse-Apps für Ihre Buchungsseiten verwendet werden sollen",
"installed_app_other_description": "Alle von Ihnen installierten Apps aus anderen Kategorien.",
"installed_app_automation_description": "Konfigurieren Sie, welche Automatisierungs-Apps verwendet werden sollen",
"installed_app_web3_description": "Konfigurieren Sie, welche Web3-Apps für Ihre Buchungsseiten verwendet werden sollen",
"analytics": "Analyse",
"empty_installed_apps_headline": "Keine Apps installiert",
"empty_installed_apps_description": "Apps erlauben es Ihnen, Ihren Arbeitsfluss zu verbessern und Ihre Planung viel besser zu gestalten.",
@@ -930,6 +944,11 @@
"current_location": "Aktueller Ort",
"user_phone": "Ihre Telefonnummer",
"new_location": "Neuer Ort",
"session": "Session",
"session_description": "Verwalten Sie Ihre Account-Session",
"session_timeout_after": "Timeout Session nach",
"session_timeout": "Session Timeout",
"session_timeout_description": "Nach einer bestimmten Zeit die Session löschen.",
"no_location": "Kein Ort definiert",
"set_location": "Ort festlegen",
"update_location": "Ort aktualisieren",
@@ -1073,6 +1092,7 @@
"broken_video_action": "Wir konnten den <1>{{location}}</1> Meeting-Link nicht zu Ihrem geplanten Ereignis hinzufügen. Kontaktieren Sie Ihre Eingeladenen oder aktualisieren Sie Ihr Kalenderereignis, um die Einzelheiten hinzuzufügen. Sie können entweder <3> Ihren Standort im Ereignistyp ändern</3> oder <5>die App entfernen und erneut hinzufügen.</5>",
"broken_calendar_action": "Wir konnten Ihren <1>{{calendar}}</1> nicht aktualisieren. <2> Bitte überprüfen Sie die Kalendereinstellungen oder entfernen Sie Ihren Kalender und fügen Sie Ihren Kalender erneut hinzu </2>",
"attendee_name": "Name des Teilnehmenden",
"scheduler_full_name": "Der vollständige Name der buchenden Person",
"broken_integration": "Defekte Integration",
"problem_adding_video_link": "Beim Hinzufügen eines Video-Links ist ein Problem aufgetreten",
"problem_updating_calendar": "Es gab ein Problem beim Aktualisieren Ihres Kalenders",
@@ -1215,6 +1235,7 @@
"connect_automation_apps": "Automatisierungs-Apps verbinden",
"connect_analytics_apps": "Analyse-Apps verbinden",
"connect_other_apps": "Andere Apps verbinden",
"connect_web3_apps": "Web3-Apps verbinden",
"current_step_of_total": "Schritt {{currentStep}} von {{maxSteps}}",
"add_variable": "Variable hinzufügen",
"custom_phone_number": "Benutzerdefinierte Telefonnummer",
@@ -1231,6 +1252,7 @@
"to": "An",
"workflow_turned_on_successfully": "{{workflowName}} Workflow erfolgreich {{offOn}}geschaltet",
"download_responses": "Antworten herunterladen",
"download_responses_description": "Laden Sie alle Antworten zu Ihrem Formular im CSV-Format herunter.",
"download": "Herunterladen",
"create_your_first_form": "Erstellen Sie Ihr erstes Formular",
"create_your_first_form_description": "Mithilfe von Leitungsformularen können Sie qualifizierende Fragen stellen und zur richtigen Person oder zum richtigen Veranstaltungstyp weiterleiten.",
@@ -1272,6 +1294,8 @@
"routing_forms_send_email_owner": "E-Mail an Eigentümer senden",
"routing_forms_send_email_owner_description": "Sendet eine E-Mail an den Eigentümer, wenn das Formular abgeschickt wird",
"add_new_form": "Neues Formular hinzufügen",
"create_your_first_route": "Erstellen Sie Ihre erste Route",
"route_to_the_right_person": "Route an die richtige Person anhand der Formularantworten",
"form_description": "Erstellen Sie Ihr Formular, um einen Bucher zu anzuleiten",
"copy_link_to_form": "Link in Formular kopieren",
"theme": "Theme",
@@ -1302,6 +1326,7 @@
"password_reset_leading": "Falls Sie nicht bald eine E-Mail erhalten, überprüfen Sie, ob die eingegebene E-Mail-Adresse korrekt ist. Überprüfen Sie außerdem Ihren Spam-Ordner oder wenden Sie sich an den Support, wenn das Problem weiterhin besteht.",
"password_updated": "Passwort aktualisiert!",
"pending_payment": "Zahlung ausstehend",
"pending_invites": "Offene Einladungen",
"confirmation_page_rainbow": "Sperren Sie Ihr Ereignis hinter Tokens oder NFTs auf Ethereum, Polygon und mehr.",
"not_on_cal": "Nicht auf {{appName}}",
"no_calendar_installed": "Kein Kalender installiert",
@@ -1428,6 +1453,9 @@
"disabled_calendar": "Wenn Sie einen anderen Kalender installiert haben, werden neue Buchungen zu dem Kalender hinzugefügt. Verbinden Sie andernfalls einen neuen Kalender, damit Sie keine neuen Buchungen verpassen.",
"enable_apps": "Apps aktivieren",
"enable_apps_description": "Apps aktivieren, die Benutzer mit Cal.com integrieren können",
"purchase_license": "Lizenz kaufen",
"already_have_key": "Ich habe bereits einen Key:",
"already_have_key_suggestion": "Bitte fügen Sie Ihre vorhandene CALCOM_LICENSE_KEY Lizenz hier ein.",
"app_is_enabled": "{{appName}} ist aktiviert",
"app_is_disabled": "{{appName}} ist deaktiviert",
"keys_have_been_saved": "Schlüssel wurden gespeichert",
@@ -1448,6 +1476,7 @@
"individual": "Person",
"all_bookings_filter_label": "Alle Buchungen",
"all_users_filter_label": "Alle Benutzer",
"your_bookings_filter_label": "Ihre Buchungen",
"meeting_url_variable": "Meeting-URL",
"meeting_url_info": "Die URL der Meeting-Konferenz",
"date_overrides": "Datumsüberschreibungen",
@@ -1486,6 +1515,7 @@
"round_robin_hosts": "Round-Robin-Veranstalter",
"minimum_round_robin_hosts_count": "Anzahl der Veranstalter, die teilnehmen müssen",
"hosts": "Veranstalter",
"upgrade_to_enable_feature": "Sie müssen ein Team erstellen, um diese Funktion zu aktivieren. Klicken Sie hier, um ein Team zu erstellen.",
"new_attendee": "Neuer Teilnehmer",
"awaiting_approval": "Wartet auf Genehmigung",
"requires_google_calendar": "Diese App erfordert eine Verbindung mit Google Calendar",
@@ -1494,9 +1524,99 @@
"continue_to_install_google_calendar": "Installation von Google Calender fortsetzen",
"install_google_meet": "Google Meet installieren",
"install_google_calendar": "Google Calendar installieren",
"sender_name": "Absendername",
"already_invited": "Teilnehmer bereits eingeladen",
"no_recordings_found": "Keine Aufzeichnungen gefunden",
"reporting": "Berichte",
"reporting_feature": "Alle Daten anzeigen und als CSV herunterladen",
"teams_plan_required": "Teamplan benötigt",
"routing_forms_are_a_great_way": "Routing-Formulare sind eine gute Möglichkeit, Ihre eingehenden Leads zur richtigen Person zu leiten. Upgrade auf einen Teamplan, um auf diese Funktion zuzugreifen.",
"choose_a_license": "Wählen Sie eine Lizenz",
"choose_license_description": "Cal.com enthält eine kostenlose AGPLv3-Lizenz, die einige Einschränkungen enthält, die jederzeit auf eine Enterprise-Lizenz aktualisiert werden können. Sie können später jederzeit upgraden.",
"license": "Lizenz",
"agplv3_license": "AGPLv3 Lizenz",
"ee_enterprise_license": "„/ee“ Enterprise-Lizenz",
"enterprise_booking_fee": "Ab {{enterprise_booking_fee}}/Monat",
"enterprise_license_includes": "Alles für einen kommerziellen Anwendungsfall",
"no_need_to_keep_your_code_open_source": "Sie müssen Ihren Code nicht Open-Source lassen",
"repackage_rebrand_resell": "Einfaches neuverpacken, rebranding und weiterverkaufen",
"a_vast_suite_of_enterprise_features": "Eine große Auswahl an Enterprise-Funktionen",
"free_license_fee": "0.00€/Monat",
"forever_open_and_free": "Für immer offen & kostenlos",
"required_to_keep_your_code_open_source": "Ihr Code muss Open-Source bleiben",
"cannot_repackage_and_resell": "Kann nicht einfach neu verpackt, gerebrandet und weiterverkauft werden",
"no_enterprise_features": "Keine Enterprise-Funktionen",
"step_enterprise_license": "Enterprise-Lizenz",
"step_enterprise_license_description": "Alles für einen kommerziellen Einsatzfall mit privatem Hosting, Umverpackung, Rebranding, Wiederverkauf und Zugriff auf exklusive Enterprise Komponenten.",
"setup": "Einrichtung",
"setup_description": "Cal.com Instanz einrichten",
"configure": "Konfigurieren",
"sso_configuration": "SAML-Konfiguration",
"sso_configuration_description": "SAML/OIDC SSO konfigurieren und Teammitgliedern erlauben, sich mit einem Identity Provider anzumelden",
"sso_oidc_heading": "SSO mit OIDC",
"sso_oidc_description": "Konfigurieren Sie OIDC SSO mit einem Identity Provider Ihrer Wahl.",
"sso_oidc_configuration_title": "OIDC-Konfiguration",
"sso_oidc_configuration_description": "Konfigurieren Sie die OIDC-Verbindung zu Ihrem Identitätsanbieter. Sie finden die erforderlichen Informationen in Ihrem Identitätsanbieter.",
"sso_oidc_callback_copied": "Callback-URL kopiert",
"sso_saml_heading": "SSO mit SAML",
"sso_saml_description": "Konfigurieren Sie SAML SSO mit Identity Provider Ihrer Wahl.",
"sso_saml_configuration_title": "SAML-Konfiguration",
"sso_saml_configuration_description": "Konfigurieren Sie SAML-Verbindung zu Ihrem Identitätsanbieter. Sie finden die erforderlichen Informationen in Ihrem Identitätsanbieter.",
"sso_saml_acsurl_copied": "ACS-URL kopiert",
"sso_saml_entityid_copied": "Entitäts-ID kopiert",
"sso_connection_created_successfully": "{{connectionType}} Konfiguration erfolgreich erstellt",
"sso_connection_deleted_successfully": "{{connectionType}} Konfiguration erfolgreich gelöscht",
"delete_sso_configuration": "Lösche {{connectionType}} Konfiguration",
"delete_sso_configuration_confirmation": "Ja, {{connectionType}} Konfiguration löschen",
"delete_sso_configuration_confirmation_description": "Sind Sie sicher, dass Sie die {{connectionType}} -Konfiguration löschen möchten? Ihre Teammitglieder, die {{connectionType}} anmelden, werden keinen Zugriff mehr auf Cal.com haben.",
"organizer_timezone": "Zeitzone des Veranstalters",
"email_no_user_cta": "Erstellen Sie Ihr Konto",
"email_user_cta": "Einladung anzeigen",
"email_no_user_invite_heading": "Sie wurden eingeladen dem Team {{appName}} beizutreten",
"email_no_user_invite_subheading": "{{invitedBy}} hat Sie eingeladen, dem Team {{appName}} beizutreten. {{appName}} ist der Event-Planer, der es Ihnen und Ihrem Team ermöglicht, Meetings ohne E-Mail Tennis zu planen.",
"email_no_user_invite_steps_intro": "Wir begleiten Sie durch ein paar Schritte und Sie genießen stressfreie Planung mit Ihrem Team in kürzester Zeit.",
"email_no_user_step_one": "Benutzernamen auswählen",
"email_no_user_step_two": "Kalenderkonto verbinden",
"email_no_user_step_three": "Verfügbarkeit festlegen",
"email_no_user_step_four": "{{teamName}} beitreten",
"email_no_user_signoff": "Glückliche Terminplanung wünscht das {{appName}} Team",
"impersonation_user_tip": "Sie sind dabei einen Benutzer zu identifizieren, was bedeutet, dass Sie Änderungen in ihrem Namen vornehmen können. Bitte seien Sie vorsichtig.",
"scheduler": "{Scheduler}",
"available_variables": "Verfügbare Variablen",
"recommended_next_steps": "Empfohlene nächste Schritte",
"create_a_managed_event": "Erstellen Sie ein verwalteten Ereignistyp",
"meetings_are_better_with_the_right": "Treffen sind besser mit den richtigen Teammitgliedern. Laden Sie sie jetzt ein.",
"collective_or_roundrobin": "Kollektiv oder Round-Robin",
"book_your_team_members": "Buchen Sie Ihre Teammitglieder zusammen mit Kollektivveranstaltungen oder wählen Sie anhand Round-Robin die richtige Person.",
"default_app_link_title": "Standard-App-Link festlegen",
"default_app_link_description": "Mit dem Festlegen eines Standard-App-Links können alle neu erstellten Ereignistypen den App-Link verwenden, den Sie gesetzt haben.",
"change_default_conferencing_app": "Als Standard festlegen",
"booking_confirmation_failed": "Buchungsbestätigung fehlgeschlagen"
"under_maintenance": "Wartungsarbeiten",
"under_maintenance_description": "Das {{appName}} -Team führt geplante Wartungsarbeiten durch. Wenn Sie Fragen haben, wenden Sie sich bitte an den Support.",
"event_type_seats": "{{numberOfSeats}} Sitze",
"booking_with_payment_cancelled": "Zahlung für dieses Ereignis ist nicht mehr möglich",
"booking_with_payment_cancelled_already_paid": "Eine Rückerstattung für diese Buchungszahlung ist auf dem Weg.",
"booking_with_payment_cancelled_refunded": "Diese Buchungszahlung wurde zurückerstattet.",
"booking_confirmation_failed": "Buchungsbestätigung fehlgeschlagen",
"get_started_zapier_templates": "Beginnen Sie mit Zapier-Templates",
"a_routing_form": "Ein Routing-Formular",
"form_description_placeholder": "Formularbeschreibung",
"keep_me_connected_with_form": "Mich mit dem Formular verbunden lassen",
"fields_in_form_duplicated": "Alle Änderungen in Router und Felder des Formulars, die dupliziert werden, werden auch im Duplikat wiedergegeben.",
"form_deleted": "Formular gelöscht",
"delete_form": "Formular löschen",
"delete_form_action": "Ja, Formular löschen",
"delete_form_confirmation": "Sind Sie sicher, dass Sie dieses Formular löschen möchten? Jede Person, mit dem Link kann nicht mehr mit dem Formular buchen. Außerdem wurden alle zugehörigen Antworten gelöscht.",
"typeform_redirect_url_copied": "Typeform Umleitungs-URL kopiert! Sie können die URL in Typeform einstellen.",
"modifications_in_fields_warning": "Änderungen in den Feldern und Routen der folgenden Formulare werden in diesem Formular reflektiert.",
"connected_forms": "Verbundene Formulare",
"form_modifications_warning": "Folgende Formulare wären betroffen, wenn Sie hier Felder oder Routen ändern.",
"responses_collection_waiting_description": "Warten Sie einige Zeit, bis Antworten gesammelt werden. Sie können das Formular auch selbst abschicken.",
"this_is_what_your_users_would_see": "Dies ist, was Ihre Benutzer sehen würden",
"identifies_name_field": "Identifiziert Feld mit diesem Namen.",
"add_1_option_per_line": "1 Option pro Zeile hinzufügen",
"select_a_router": "Router auswählen",
"add_a_new_route": "Neue Route hinzufügen",
"no_responses_yet": "Noch keine Antworten",
"this_will_be_the_placeholder": "Dies wird der Platzhalter sein"
}
+142 -22
View File
@@ -7,6 +7,7 @@
"upgrade_now": "Mettre à niveau maintenant",
"accept_invitation": "Accepter l'invitation",
"calcom_explained": "{{appName}} fournit une infrastructure de planification pour absolument tout le monde.",
"calcom_explained_new_user": "Terminez la configuration de votre compte {{appName}} ! Vous n'êtes qu'à quelques pas de résoudre tous vos problèmes de planification.",
"have_any_questions": "Vous avez des questions ? Nous sommes là pour vous aider.",
"reset_password_subject": "{{appName}} : Instructions de réinitialisation de mot de passe",
"event_declined_subject": "Refusé : {{title}} à {{date}}",
@@ -20,9 +21,11 @@
"cancellation_reason_placeholder": "Pourquoi annulez-vous ?",
"rejection_reason": "Motif de refus",
"rejection_reason_title": "Refuser la demande de réservation ?",
"rejection_reason_description": "Êtes-vous sûr(e) de vouloir refuser la réservation ? Nous informerons la personne qui a tenté de réserver. Vous pouvez fournir un motif ci-dessous.",
"rejection_reason_description": "Voulez-vous vraiment refuser la réservation ? Nous informerons la personne qui a tenté de réserver. Vous pouvez fournir un motif ci-dessous.",
"rejection_confirmation": "Refuser la réservation",
"manage_this_event": "Gérer cet événement",
"invite_team_member": "Inviter un membre d'équipe",
"invite_team_notifcation_badge": "Inv.",
"your_event_has_been_scheduled": "Votre événement a été planifié",
"your_event_has_been_scheduled_recurring": "Votre événement récurrent a été planifié",
"accept_our_license": "Acceptez notre licence en changeant la variable .env <1>NEXT_PUBLIC_LICENSE_CONSENT</1> en « {{agree}} ».",
@@ -108,13 +111,13 @@
"link_expires": "p.s. Il expire dans {{expiresIn}} heures.",
"upgrade_to_per_seat": "Mise à niveau vers la place",
"team_upgrade_seats_details": "Parmi les {{memberCount}} membres de votre équipe, {{unpaidCount}} place(s) sont impayées. À {{seatPrice}} $/mois par place, le coût total estimé de votre abonnement est de {{totalCost}} $/mois.",
"team_upgrade_banner_description": "Merci d'avoir essayé notre nouveau plan d'équipe. Nous avons remarqué que votre équipe « {{teamName}} » doit être mise à niveau.",
"team_upgrade_banner_description": "Merci d'avoir essayé notre nouveau plan Équipes. Nous avons remarqué que votre équipe « {{teamName}} » doit être mise à niveau.",
"team_upgrade_banner_action": "Mettre à niveau",
"team_upgraded_successfully": "Votre équipe a été mise à niveau avec succès !",
"use_link_to_reset_password": "Utilisez le lien ci-dessous pour réinitialiser votre mot de passe",
"hey_there": "Salut,",
"forgot_your_password_calcom": "Mot de passe oublié ? - {{appName}}",
"delete_webhook_confirmation_message": "Êtes-vous sûr(e) de vouloir supprimer ce webhook ? Vous ne recevrez plus les données de rendez-vous de {{appName}} à un lien spécifié, en temps réel, lorsqu'un événement est planifié ou annulé.",
"delete_webhook_confirmation_message": "Voulez-vous vraiment supprimer ce webhook ? Vous ne recevrez plus les données de rendez-vous de {{appName}} à un lien spécifié, en temps réel, lorsqu'un événement est planifié ou annulé.",
"confirm_delete_webhook": "Oui, supprimer le webhook",
"edit_webhook": "Modifier le webhook",
"delete_webhook": "Supprimer le webhook",
@@ -410,6 +413,8 @@
"password_updated_successfully": "Mot de passe mis à jour avec succès",
"password_has_been_changed": "Votre mot de passe a été modifié avec succès.",
"error_changing_password": "Erreur lors de la modification du mot de passe",
"session_timeout_changed": "La configuration de votre session a été mise à jour avec succès.",
"session_timeout_change_error": "Erreur lors de la mise à jour de la configuration de la session",
"something_went_wrong": "Une erreur s'est produite.",
"something_doesnt_look_right": "Quelque chose ne va pas ?",
"please_try_again": "Veuillez réessayer.",
@@ -423,11 +428,12 @@
"forgotten_secret_description": "Vous pouvez modifier ce secret si vous l'avez perdu ou oublié. Soyez cependant conscient que toutes les intégrations l'utilisant devront être mises à jour.",
"current_incorrect_password": "Le mot de passe actuel est incorrect",
"password_hint_caplow": "Mélange de lettres majuscules et minuscules",
"password_hint_min": "Minimum 7 caractères",
"password_hint_min": "7 caractères minimum",
"password_hint_admin_min": "Minimum 15 caractères",
"password_hint_num": "Contient au moins 1 chiffre",
"invalid_password_hint": "Le mot de passe doit contenir au moins {{passwordLength}} caractères, un chiffre et un mélange de lettres, majuscules et minuscules.",
"invalid_password_hint": "Le mot de passe doit contenir au moins {{passwordLength}} caractères, un chiffre et un mélange de lettres majuscules et minuscules.",
"incorrect_password": "Le mot de passe est incorrect.",
"incorrect_username_password": "Le nom d'utilisateur ou le mot de passe est incorrect.",
"24_h": "24 h",
"use_setting": "Utiliser le paramètre",
"am_pm": "AM/PM",
@@ -455,6 +461,7 @@
"slots_load_fail": "Impossible de charger les créneaux disponibles.",
"additional_guests": "Ajouter des invités",
"your_name": "Votre nom",
"your_full_name": "Votre nom complet",
"email_address": "Adresse e-mail",
"enter_valid_email": "Veuillez saisir une adresse e-mail valide",
"location": "Lieu",
@@ -508,6 +515,8 @@
"admin": "Administrateur",
"administrator_user": "Utilisateur administrateur",
"lets_create_first_administrator_user": "Nous allons créer le premier utilisateur administrateur.",
"admin_user_created": "Utilisateur administrateur configuré",
"admin_user_created_description": "Vous avez déjà créé un utilisateur administrateur. Vous pouvez maintenant vous connecter à votre compte.",
"new_member": "Nouveau membre",
"invite": "Inviter",
"add_team_members": "Ajouter des membres d'équipe",
@@ -531,8 +540,8 @@
"confirm": "Confirmer",
"confirm_all": "Confirmer tout",
"disband_team": "Dissoudre l'équipe",
"disband_team_confirmation_message": "Êtes-vous sûr(e) de vouloir dissoudre cette équipe ? Toute personne avec qui vous avez partagé ce lien d'équipe ne pourra plus faire de réservation en l'utilisant.",
"remove_member_confirmation_message": "Êtes-vous sûr de vouloir retirer ce membre de l'équipe ?",
"disband_team_confirmation_message": "Voulez-vous vraiment dissoudre cette équipe ? Toute personne avec qui vous avez partagé ce lien d'équipe ne pourra plus faire de réservation en l'utilisant.",
"remove_member_confirmation_message": "Voulez-vous vraiment supprimer ce membre de l'équipe ?",
"confirm_disband_team": "Oui, dissoudre l'équipe",
"confirm_remove_member": "Oui, retirer le membre",
"remove_member": "Supprimer le membre",
@@ -551,7 +560,7 @@
"copy_link_team": "Copier le lien vers l'équipe",
"leave_team": "Quitter l'équipe",
"confirm_leave_team": "Oui, quitter l'équipe",
"leave_team_confirmation_message": "Êtes-vous sûr(e) de vouloir quitter cette équipe ? Vous ne pourrez plus l'utiliser pour effectuer des réservations.",
"leave_team_confirmation_message": "Voulez-vous vraiment quitter cette équipe ? Vous ne pourrez plus l'utiliser pour effectuer des réservations.",
"user_from_team": "{{user}} de {{team}}",
"preview": "Aperçu",
"link_copied": "Lien copié !",
@@ -658,6 +667,7 @@
"edit_availability": "Modifier les disponibilités",
"configure_availability": "Définissez les moments où vous êtes disponible pour les réservations.",
"copy_times_to": "Copier les créneaux vers",
"copy_times_to_tooltip": "Copier les horaires dans…",
"change_weekly_schedule": "Modifier votre planning hebdomadaire",
"logo": "Logo",
"error": "Erreur",
@@ -669,8 +679,9 @@
"add_attendees": "Ajouter des participants",
"show_advanced_settings": "Afficher les paramètres avancés",
"event_name": "Nom de l'événement",
"event_name_in_calendar": "Nom de l'événement dans le calendrier",
"event_name_tooltip": "Le nom qui apparaîtra dans les calendriers",
"meeting_with_user": "Rendez-vous avec {{attendeeName}}",
"meeting_with_user": "{Event type title} entre {Organiser} et {Scheduler}",
"additional_inputs": "Champs supplémentaires",
"additional_input_description": "Exiger que le planificateur saisisse des champs supplémentaires avant la confirmation de la réservation.",
"label": "Libellé",
@@ -723,12 +734,12 @@
"minimum_booking_notice": "Préavis minimum",
"slot_interval": "Fréquence de créneaux horaires",
"slot_interval_default": "Utiliser la durée de l'événement (par défaut)",
"delete_event_type_description": "Êtes-vous sûr(e) de vouloir supprimer ce type d'événement ? Toute personne avec qui vous avez partagé ce lien ne pourra plus faire de réservation en l'utilisant.",
"delete_event_type_description": "Voulez-vous vraiment supprimer ce type d'événement ? Toute personne avec qui vous avez partagé ce lien ne pourra plus faire de réservation en l'utilisant.",
"delete_event_type": "Supprimer le type d'événement",
"confirm_delete_event_type": "Oui, supprimer le type d'événement",
"delete_account": "Supprimer le compte",
"confirm_delete_account": "Oui, supprimer le compte",
"delete_account_confirmation_message": "Êtes-vous sûr(e) de vouloir supprimer votre compte {{appName}} ? Toute personne avec qui vous avez partagé le lien de votre compte ne pourra plus réserver en utilisant ce lien et toutes les préférences que vous avez sauvegardées seront perdues.",
"delete_account_confirmation_message": "Voulez-vous vraiment supprimer votre compte {{appName}} ? Toute personne avec qui vous avez partagé le lien de votre compte ne pourra plus réserver en utilisant ce lien et toutes les préférences que vous avez sauvegardées seront perdues.",
"integrations": "Intégrations",
"apps": "Applications",
"apps_description": "Vous trouverez ici une liste de vos applications.",
@@ -787,6 +798,7 @@
"number_apps_one": "{{count}} Application",
"number_apps_other": "{{count}} applications",
"trending_apps": "Applications populaires",
"most_popular": "Le plus populaire",
"explore_apps": "Applications {{category}}",
"installed_apps": "Applications installées",
"free_to_use_apps": "Gratuit",
@@ -797,12 +809,14 @@
"no_category_apps_description_analytics": "Ajoutez une application d'analyse pour vos pages de réservation.",
"no_category_apps_description_automation": "Ajoutez une application d'automatisation.",
"no_category_apps_description_other": "Ajoutez n'importe quel autre type d'application pour faire toutes sortes de choses.",
"no_category_apps_description_web3": "Ajoutez une application Web3 pour vos pages de réservation.",
"installed_app_calendar_description": "Définissez les calendriers pour vérifier les conflits afin d'éviter les réservations en double.",
"installed_app_conferencing_description": "Ajoutez vos applications de visioconférence préférées pour vos rendez-vous.",
"installed_app_payment_description": "Configurez les services de traitement de paiement à utiliser lors de la facturation de vos clients.",
"installed_app_analytics_description": "Configurez les applications d'analyse à utiliser pour vos pages de réservation.",
"installed_app_other_description": "Toutes vos applications installées à partir d'autres catégories.",
"installed_app_automation_description": "Configurez les applications d'automatisation à utiliser.",
"installed_app_web3_description": "Configurez les applications Web3 à utiliser pour vos pages de réservation.",
"analytics": "Analytiques",
"empty_installed_apps_headline": "Aucune application installée",
"empty_installed_apps_description": "Les applications vous permettent d'améliorer votre workflow et votre processus de planification de façon significative.",
@@ -829,7 +843,7 @@
"connect_metamask": "Connecter MetaMask",
"create_events_on": "Créer des événements dans :",
"enterprise_license": "Il s'agit d'une fonctionnalité d'entreprise",
"enterprise_license_description": "Pour activer cette fonctionnalité, obtenez une clé de déploiement sur la console {{consoleUrl}} et ajoutez-la à votre fichier .env en tant que CALCOM_LICENSE_KEY. Si votre équipe a déjà une licence, veuillez contacter {{supportMail}} pour obtenir de l'aide.",
"enterprise_license_description": "Pour activer cette fonctionnalité, demandez à un administrateur d'accéder à {{setupUrl}} pour saisir une clé de licence. Si une clé de licence est déjà en place, veuillez contacter {{supportMail}} pour obtenir de l'aide.",
"missing_license": "Licence manquante",
"signup_requires": "Licence commerciale requise",
"signup_requires_description": "{{companyName}} ne propose actuellement pas de version open source gratuite de la page d'inscription. Pour recevoir un accès complet aux composants d'inscription, vous devez acquérir une licence commerciale. Pour un usage personnel, nous recommandons la plateforme de données Prisma ou toute autre interface Postgres pour créer des comptes.",
@@ -930,6 +944,11 @@
"current_location": "Lieu actuel",
"user_phone": "Votre numéro de téléphone",
"new_location": "Nouveau lieu",
"session": "Session",
"session_description": "Contrôlez la session de votre compte.",
"session_timeout_after": "Expiration de la session après",
"session_timeout": "Expiration de la session",
"session_timeout_description": "Invalidez votre session après un certain temps.",
"no_location": "Aucun lieu défini",
"set_location": "Définir le lieu",
"update_location": "Mettre à jour le lieu",
@@ -1010,7 +1029,7 @@
"workflow_name": "Nom du workflow",
"custom_workflow": "Workflow personnalisé",
"workflow_created_successfully": "{{workflowName}} créé avec succès",
"delete_workflow_description": "Êtes-vous sûr(e) de vouloir supprimer ce workflow ?",
"delete_workflow_description": "Voulez-vous vraiment supprimer ce workflow ?",
"delete_workflow": "Supprimer le workflow",
"confirm_delete_workflow": "Oui, supprimer le workflow",
"workflow_deleted_successfully": "Workflow supprimé avec succès",
@@ -1034,7 +1053,7 @@
"trial_expired": "Votre période d'essai a expiré",
"remove_app": "Supprimer l'application",
"yes_remove_app": "Oui, supprimer l'application",
"are_you_sure_you_want_to_remove_this_app": "Êtes-vous sûr(e) de vouloir supprimer cette application ?",
"are_you_sure_you_want_to_remove_this_app": "Voulez-vous vraiment supprimer cette application ?",
"app_removed_successfully": "Application supprimée avec succès",
"error_removing_app": "Erreur lors de la suppression de l'application",
"web_conference": "Visioconférence",
@@ -1073,6 +1092,7 @@
"broken_video_action": "Nous n'avons pas pu ajouter le lien <1>{{location}}</1> à votre événement planifié. Contactez vos invités ou mettez à jour votre événement de calendrier pour ajouter les détails. Vous pouvez <3> changer le lieu sur le type d'événement</3> ou essayer <5>de supprimer et d'ajouter à nouveau l'application.</5>",
"broken_calendar_action": "Nous n'avons pas pu mettre à jour votre <1>{{calendar}}</1>. <2> Veuillez vérifier les paramètres de votre calendrier ou supprimer et ajouter votre calendrier à nouveau </2>",
"attendee_name": "Nom du participant",
"scheduler_full_name": "Le nom complet de la personne qui effectue la réservation",
"broken_integration": "Intégration défaillante",
"problem_adding_video_link": "Un problème est survenu lors de l'ajout d'un lien vidéo",
"problem_updating_calendar": "Un problème est survenu lors de la mise à jour de votre calendrier",
@@ -1098,8 +1118,8 @@
"upgrade_to_access_recordings_title": "Mettez à niveau pour accéder aux enregistrements",
"upgrade_to_access_recordings_description": "Les enregistrements ne sont disponibles que dans le plan d'équipes. Mettez à niveau pour commencer à enregistrer vos appels.",
"recordings_are_part_of_the_teams_plan": "Les enregistrements font partie du plan d'équipes",
"team_feature_teams": "Ceci est une fonctionnalité d'équipe. Mettez à jour vers le plan Team pour voir les disponibilités de votre équipe.",
"team_feature_workflows": "Ceci est une fonctionnalité d'équipe. Mettez à jour vers le plan Team pour automatiser vos notifications et rappels d'événements avec les workflows.",
"team_feature_teams": "Ceci est une fonctionnalité d'équipe. Mettez à jour vers le plan Équipes pour voir les disponibilités de votre équipe.",
"team_feature_workflows": "Ceci est une fonctionnalité d'équipe. Mettez à jour vers le plan Équipes pour automatiser vos notifications et rappels d'événements avec les workflows.",
"show_eventtype_on_profile": "Afficher sur le profil",
"embed": "Intégrer",
"new_username": "Nouveau nom d'utilisateur",
@@ -1123,7 +1143,7 @@
"no_input": "Aucun champ",
"test_workflow_action": "Tester l'action du workflow",
"send_sms": "Envoyer un SMS",
"send_sms_to_number": "Êtes-vous sûr(e) de vouloir envoyer un SMS au {{number}} ?",
"send_sms_to_number": "Voulez-vous vraiment envoyer un SMS au {{number}} ?",
"missing_connected_calendar": "Aucun calendrier par défaut connecté",
"connect_your_calendar_and_link": "Vous pouvez connecter votre calendrier depuis <1>ici</1>.",
"default_calendar_selected": "Calendrier par défaut",
@@ -1152,7 +1172,7 @@
"personal_cal_url": "Mon lien {{appName}} personnel",
"bio_hint": "Quelques mots à propos de vous. Ces informations apparaîtront sur votre page publique.",
"delete_account_modal_title": "Supprimer le compte",
"confirm_delete_account_modal": "Êtes-vous sûr(e) de vouloir supprimer votre compte {{appName}} ?",
"confirm_delete_account_modal": "Voulez-vous vraiment supprimer votre compte {{appName}} ?",
"delete_my_account": "Supprimer mon compte",
"start_of_week": "Début de la semaine",
"recordings_title": "Enregistrements",
@@ -1215,6 +1235,7 @@
"connect_automation_apps": "Connecter des applications d'automatisation",
"connect_analytics_apps": "Connecter des applications analytiques",
"connect_other_apps": "Connecter d'autres applications",
"connect_web3_apps": "Connecter des apps Web3",
"current_step_of_total": "Étape {{currentStep}} sur {{maxSteps}}",
"add_variable": "Ajouter une variable",
"custom_phone_number": "Numéro de téléphone personnalisé",
@@ -1231,6 +1252,7 @@
"to": "À",
"workflow_turned_on_successfully": "Le workflow {{workflowName}} a été {{offOn}} avec succès",
"download_responses": "Télécharger les réponses",
"download_responses_description": "Téléchargez toutes les réponses à votre formulaire au format CSV.",
"download": "Télécharger",
"create_your_first_form": "Créez votre premier formulaire",
"create_your_first_form_description": "Avec les formulaires de routage, vous pouvez poser des questions de qualification et rediriger vers la bonne personne ou le bon type d'événement.",
@@ -1268,10 +1290,12 @@
"exchange_authentication_standard": "Authentification de base",
"exchange_authentication_ntlm": "Authentification NTLM",
"exchange_compression": "Compression GZip",
"routing_forms_description": "Vous pouvez voir tous les formulaires et parcours que vous avez créés ici.",
"routing_forms_description": "Vous pouvez voir tous les formulaires et routes que vous avez créés ici.",
"routing_forms_send_email_owner": "Envoyer un e-mail au propriétaire",
"routing_forms_send_email_owner_description": "Envoie un e-mail au propriétaire lorsque le formulaire est soumis",
"add_new_form": "Ajouter un nouveau formulaire",
"create_your_first_route": "Créez votre première route",
"route_to_the_right_person": "Acheminez vers la bonne personne en fonction des réponses à votre formulaire.",
"form_description": "Créez votre formulaire pour acheminer un organisateur",
"copy_link_to_form": "Copier le lien vers le formulaire",
"theme": "Apparence",
@@ -1302,6 +1326,7 @@
"password_reset_leading": "Si vous ne recevez pas d'e-mail bientôt, vérifiez que l'adresse e-mail que vous avez saisie est correcte, vérifiez vos spams ou contactez l'assistance si le problème persiste.",
"password_updated": "Mot de passe mis à jour !",
"pending_payment": "Paiement en attente",
"pending_invites": "Invitations en attente",
"confirmation_page_rainbow": "Le token protège votre événement avec des tokens ou des NFT sur Ethereum, Polygon et plus encore.",
"not_on_cal": "Pas sur {{appName}}",
"no_calendar_installed": "Aucun calendrier installé",
@@ -1404,7 +1429,7 @@
"sender_id_error_message": "Seules les lettres, chiffres et espaces sont autorisés (max. 11 caractères)",
"test_routing_form": "Tester le formulaire de routage",
"test_preview": "Tester l'aperçu",
"route_to": "Router vers",
"route_to": "Rediriger vers",
"test_preview_description": "Tester votre formulaire de routage sans envoyer de données",
"test_routing": "Tester le routage",
"payment_app_disabled": "Un administrateur a désactivé une application de paiement",
@@ -1428,6 +1453,9 @@
"disabled_calendar": "Si un autre calendrier est installé, les nouvelles réservations y seront ajoutées. Si ce n'est pas le cas, connectez un nouveau calendrier pour ne pas manquer de nouvelles réservations.",
"enable_apps": "Activer les applications",
"enable_apps_description": "Activer les applications que les utilisateurs peuvent intégrer à Cal.com",
"purchase_license": "Acheter une licence",
"already_have_key": "J'ai déjà une clé :",
"already_have_key_suggestion": "Veuillez copier votre variable d'environnement CALCOM_LICENSE_KEY existante ici.",
"app_is_enabled": "{{appName}} est activé",
"app_is_disabled": "{{appName}} est désactivé",
"keys_have_been_saved": "Les clés ont été sauvegardées",
@@ -1448,6 +1476,7 @@
"individual": "Individuel",
"all_bookings_filter_label": "Toutes les réservations",
"all_users_filter_label": "Tous les utilisateurs",
"your_bookings_filter_label": "Vos réservations",
"meeting_url_variable": "Lien du rendez-vous",
"meeting_url_info": "Lien de la visioconférence du rendez-vous",
"date_overrides": "Superpositions de dates",
@@ -1486,7 +1515,7 @@
"round_robin_hosts": "Hôtes round-robin",
"minimum_round_robin_hosts_count": "Nombre d'hôtes requis pour participer",
"hosts": "Hôtes",
"upgrade_to_enable_feature": "Vous devez mettre à niveau pour activer cette fonctionnalité. Cliquez pour mettre à niveau.",
"upgrade_to_enable_feature": "Vous devez créer une équipe pour activer cette fonctionnalité. Cliquez pour créer une équipe.",
"new_attendee": "Nouveau participant",
"awaiting_approval": "En attente de validation",
"requires_google_calendar": "Cette application nécessite une connexion à Google Agenda",
@@ -1495,9 +1524,100 @@
"continue_to_install_google_calendar": "Continuer à installer Google Agenda",
"install_google_meet": "Installer Google Meet",
"install_google_calendar": "Installer Google Agenda",
"sender_name": "Nom de l'expéditeur",
"already_invited": "Participant déjà invité",
"no_recordings_found": "Aucun enregistrement trouvé",
"reporting": "Rapports",
"reporting_feature": "Voir toutes les données entrantes et les télécharger au format CSV.",
"teams_plan_required": "Plan Équipes requis",
"routing_forms_are_a_great_way": "Les formulaires de routage sont un excellent moyen d'acheminer vos prospects entrants vers la bonne personne. Passez au plan Équipes pour accéder à cette fonctionnalité.",
"choose_a_license": "Choisir une licence",
"choose_license_description": "Cal.com est fourni avec licence AGPLv3 accessible et gratuite (avec certaines limitations) qui peut être mis à niveau vers une licence Entreprise à tout moment. Vous pouvez mettre à niveau à tout moment plus tard.",
"license": "Licence",
"agplv3_license": "Licence AGPLv3",
"ee_enterprise_license": "Licence Entreprise « /ee »",
"enterprise_booking_fee": "À partir de {{enterprise_booking_fee}}/mois",
"enterprise_license_includes": "Tout pour un usage commercial",
"no_need_to_keep_your_code_open_source": "Pas besoin de garder votre code open source",
"repackage_rebrand_resell": "Restructurez, changez de marque et revendez facilement",
"a_vast_suite_of_enterprise_features": "Une vaste suite de fonctionnalités d'entreprise",
"free_license_fee": "0,00 $/mois",
"forever_open_and_free": "Ouvert et gratuit pour toujours",
"required_to_keep_your_code_open_source": "Votre code doit rester open source",
"cannot_repackage_and_resell": "Impossible de restructurer, changer de marque et revendre facilement",
"no_enterprise_features": "Aucune fonctionnalité d'entreprise",
"step_enterprise_license": "Licence Entreprise",
"step_enterprise_license_description": "Tout pour une utilisation commerciale avec hébergement privé, restructuration, changement de marque, revente et accès à des composants d'entreprise exclusifs.",
"setup": "Configurer",
"setup_description": "Configurez l'instance Cal.com.",
"configure": "Configurer",
"sso_configuration": "Authentification unique",
"sso_configuration_description": "Configurez le SSO SAML/OIDC et autorisez les membres d'équipe à se connecter à l'aide d'un fournisseur d'identité.",
"sso_oidc_heading": "SSO avec OIDC",
"sso_oidc_description": "Configurez le SSO OIDC avec le fournisseur d'identité de votre choix.",
"sso_oidc_configuration_title": "Configuration OIDC",
"sso_oidc_configuration_description": "Configurez la connexion OIDC à votre fournisseur d'identité. Vous pouvez trouver les informations requises dans votre fournisseur d'identité.",
"sso_oidc_callback_copied": "Lien de rappel copié",
"sso_saml_heading": "SSO avec SAML",
"sso_saml_description": "Configurez le SSO SAML avec le fournisseur d'identité de votre choix.",
"sso_saml_configuration_title": "Configuration SAML",
"sso_saml_configuration_description": "Configurez la connexion SAML à votre fournisseur d'identité. Vous pouvez trouver les informations requises dans votre fournisseur d'identité.",
"sso_saml_acsurl_copied": "Lien ACS copié",
"sso_saml_entityid_copied": "ID d'entité copié",
"sso_connection_created_successfully": "Configuration {{connectionType}} créée avec succès",
"sso_connection_deleted_successfully": "Configuration {{connectionType}} supprimée avec succès",
"delete_sso_configuration": "Supprimer la configuration {{connectionType}}",
"delete_sso_configuration_confirmation": "Oui, supprimer la configuration {{connectionType}}",
"delete_sso_configuration_confirmation_description": "Voulez-vous vraiment supprimer la configuration {{connectionType}} ? Les membres de votre équipe utilisant la connexion {{connectionType}} ne pourront plus accéder à Cal.com.",
"organizer_timezone": "Fuseau horaire de l'organisateur",
"email_no_user_cta": "Créez votre compte",
"email_user_cta": "Voir l'invitation",
"email_no_user_invite_heading": "Vous avez été invité(e) à rejoindre une équipe sur {{appName}}",
"email_no_user_invite_subheading": "{{invitedBy}} a été invité à rejoindre son équipe sur {{appName}}. {{appName}} est le planificateur d'événements qui vous permet, à vous et à votre équipe, de planifier des rendez-vous sans les allers-retours par e-mail.",
"email_no_user_invite_steps_intro": "Nous vous guiderons à travers quelques étapes courtes et vous profiterez d'une planification sans stress avec votre équipe en un rien de temps.",
"email_no_user_step_one": "Choisissez votre nom d'utilisateur",
"email_no_user_step_two": "Connectez votre compte de calendrier",
"email_no_user_step_three": "Définissez vos disponibilités",
"email_no_user_step_four": "Rejoignez {{teamName}}",
"email_no_user_signoff": "Bonne planification de la part de l'équipe {{appName}}",
"impersonation_user_tip": "Vous êtes sur le point d'emprunter l'identité d'un utilisateur, ce qui signifie que vous pouvez effectuer des modifications en son nom. S'il vous plaît, soyez prudent(e).",
"scheduler": "{Scheduler}",
"available_variables": "Variables disponibles",
"recommended_next_steps": "Étapes suivantes recommandées",
"create_a_managed_event": "Créer un type d'événement géré",
"meetings_are_better_with_the_right": "Les rendez-vous sont meilleurs avec les bons membres d'équipe. Invitez-les maintenant.",
"create_a_one_one_template": "Créez un modèle unique pour un type d'événement et distribuez-le à plusieurs membres.",
"collective_or_roundrobin": "Collective ou round-robin",
"book_your_team_members": "Réservez les membres de votre équipe entre eux avec des événements collectifs ou mettez en place un cycle pour obtenir la bonne personne avec le round-robin.",
"default_app_link_title": "Définir un lien d'application par défaut",
"default_app_link_description": "Définir un lien d'application par défaut permet à tous les nouveaux types d'événements d'utiliser le lien d'application que vous avez défini.",
"change_default_conferencing_app": "Définir par défaut",
"booking_confirmation_failed": "Échec de la confirmation de la réservation"
"under_maintenance": "En cours de maintenance",
"under_maintenance_description": "L'équipe {{appName}} effectue une maintenance planifiée. Si vous avez des questions, veuillez contacter l'assistance.",
"event_type_seats": "{{numberOfSeats}} places",
"booking_with_payment_cancelled": "Payer pour cet événement n'est plus possible",
"booking_with_payment_cancelled_already_paid": "Un remboursement pour ce paiement de réservation est en route.",
"booking_with_payment_cancelled_refunded": "Ce paiement de réservation a été remboursé.",
"booking_confirmation_failed": "Échec de la confirmation de la réservation",
"get_started_zapier_templates": "Démarrer avec les modèles Zapier",
"a_routing_form": "Un formulaire de routage",
"form_description_placeholder": "Description du formulaire",
"keep_me_connected_with_form": "Rester connecté avec le formulaire",
"fields_in_form_duplicated": "Toute modification du routeur et des champs du formulaire dupliqué se répercutera dans la duplication.",
"form_deleted": "Formulaire supprimé",
"delete_form": "Supprimer le formulaire",
"delete_form_action": "Oui, supprimer le formulaire",
"delete_form_confirmation": "Voulez-vous vraiment supprimer ce formulaire ? Toute personne avec qui vous avez partagé le lien ne pourra plus passer de réservation en l'utilisant. De plus, toutes les réponses associées seraient supprimées.",
"typeform_redirect_url_copied": "Lien de redirection Typeform copié ! Vous pouvez aller définir le lien dans le formulaire Typeform.",
"modifications_in_fields_warning": "Les modifications dans les champs et les routes des formulaires suivants seront répercutées dans ce formulaire.",
"connected_forms": "Formulaires connectés",
"form_modifications_warning": "Les formulaires suivants seraient affectés lorsque vous modifieriez des champs ou des routes ici.",
"responses_collection_waiting_description": "Attendez un certain temps que les réponses soient collectées. Vous pouvez également envoyer le formulaire vous-même.",
"this_is_what_your_users_would_see": "Voici ce que vos utilisateurs verraient",
"identifies_name_field": "Identifie le champ par ce nom.",
"add_1_option_per_line": "Ajouter une option par ligne",
"select_a_router": "Sélectionner un routeur",
"add_a_new_route": "Ajouter une nouvelle route",
"no_responses_yet": "Aucune réponse pour l'instant",
"this_will_be_the_placeholder": "Ce sera le texte de substitution"
}
+122 -1
View File
@@ -7,6 +7,7 @@
"upgrade_now": "지금 업그레이드",
"accept_invitation": "초대 수락",
"calcom_explained": "{{appName}}은(는) 모든 사람을 위한 일정 관리 인프라를 제공합니다.",
"calcom_explained_new_user": "{{appName}} 계정 설정을 완료하세요! 몇 단계만 거치면 모든 일정 문제를 해결할 수 있습니다.",
"have_any_questions": "질문이 있나요? 도와드릴게요.",
"reset_password_subject": "{{appName}}: 비밀번호 재설정 방법",
"event_declined_subject": "거절됨: {{date}} {{title}}",
@@ -23,6 +24,8 @@
"rejection_reason_description": "예약을 거부하시겠습니까? 예약하려고 시도하셨던 다른 분께 알려드릴 것입니다. 해당 사유는 아래에서 제공하실 수 있습니다.",
"rejection_confirmation": "예약 취소",
"manage_this_event": "이 이벤트 관리",
"invite_team_member": "팀원 초대",
"invite_team_notifcation_badge": "초대",
"your_event_has_been_scheduled": "귀하의 이벤트가 예약되었습니다.",
"your_event_has_been_scheduled_recurring": "되풀이 이벤트가 예약되었습니다",
"accept_our_license": "<1>NEXT_PUBLIC_LICENSE_CONSENT</1> 환경 변수를 '{{agree}}'로 바꾸어 라이선스를 허용해주십시오.",
@@ -410,6 +413,8 @@
"password_updated_successfully": "비밀번호가 성공적으로 업데이트되었습니다.",
"password_has_been_changed": "비밀번호가 성공적으로 변경되었습니다.",
"error_changing_password": "비밀번호 변경 오류",
"session_timeout_changed": "세션 구성이 성공적으로 업데이트되었습니다.",
"session_timeout_change_error": "세션 구성 업데이트 중 오류 발생",
"something_went_wrong": "문제가 발생했습니다.",
"something_doesnt_look_right": "문제가 있습니다.",
"please_try_again": "다시 시도하십시오.",
@@ -428,6 +433,7 @@
"password_hint_num": "1개 이상 숫자 포함",
"invalid_password_hint": "비밀번호는 7자 이상이어야 하고 숫자가 하나 이상 포함되어야 하며 대문자와 소문자가 혼합되어야 합니다",
"incorrect_password": "비밀번호가 잘못되었습니다",
"incorrect_username_password": "사용자 이름 또는 비밀번호가 잘못되었습니다.",
"24_h": "24시간",
"use_setting": "사용 설정",
"am_pm": "am/pm",
@@ -455,6 +461,7 @@
"slots_load_fail": "사용 가능한 시간 슬롯을 로드할 수 없습니다.",
"additional_guests": "게스트 추가",
"your_name": "당신의 이름",
"your_full_name": "본인 성명",
"email_address": "이메일 주소",
"enter_valid_email": "유효한 이메일을 입력하세요",
"location": "위치",
@@ -508,6 +515,8 @@
"admin": "관리",
"administrator_user": "관리자 사용자",
"lets_create_first_administrator_user": "첫 번째 관리자 사용자를 생성해 보겠습니다.",
"admin_user_created": "관리자 사용자 설정",
"admin_user_created_description": "이미 관리자 사용자를 생성하셨습니다. 이제 계정에 로그인할 수 있습니다.",
"new_member": "새 회원",
"invite": "초대",
"add_team_members": "팀원 추가",
@@ -658,6 +667,7 @@
"edit_availability": "가용성 편집",
"configure_availability": "예약 가능한 시간을 구성하십시오.",
"copy_times_to": "횟수 복사:",
"copy_times_to_tooltip": "복사 횟수...",
"change_weekly_schedule": "주간 일정 변경",
"logo": "로고",
"error": "오류",
@@ -669,6 +679,7 @@
"add_attendees": "참석자 추가하기",
"show_advanced_settings": "고급 설정 표시",
"event_name": "이벤트 이름",
"event_name_in_calendar": "캘린더의 이벤트 이름",
"event_name_tooltip": "캘린더에 표시될 이름",
"meeting_with_user": "{{attendeeName}} 님과의 회의",
"additional_inputs": "추가 입력",
@@ -787,6 +798,7 @@
"number_apps_one": "{{count}}개 앱",
"number_apps_other": "앱 {{count}}개",
"trending_apps": "트랜드 앱",
"most_popular": "인기 항목",
"explore_apps": "{{category}} 앱",
"installed_apps": "설치된 앱",
"free_to_use_apps": "무료",
@@ -797,12 +809,14 @@
"no_category_apps_description_analytics": "예약 페이지에 대한 분석 앱 추가",
"no_category_apps_description_automation": "사용할 자동화 앱 추가",
"no_category_apps_description_other": "모든 종류의 작업을 수행하는 다른 유형의 앱을 추가합니다",
"no_category_apps_description_web3": "예약 페이지에 web3 앱 추가",
"installed_app_calendar_description": "중복 예약을 방지하기 위해 충돌을 확인하도록 캘린더를 설정합니다.",
"installed_app_conferencing_description": "회의에 즐겨 사용하는 화상 회의 앱을 추가합니다",
"installed_app_payment_description": "고객에게 요금 청구 시 사용할 결제 처리 서비스를 구성합니다.",
"installed_app_analytics_description": "예약 페이지에 사용할 분석 앱 구성",
"installed_app_other_description": "기타 카테고리에서 설치된 모든 앱.",
"installed_app_automation_description": "사용할 자동화 앱 구성",
"installed_app_web3_description": "예약 페이지에 사용할 web3 앱 구성",
"analytics": "분석",
"empty_installed_apps_headline": "설치된 앱 없음",
"empty_installed_apps_description": "앱을 통해 워크플로를 강화하고 일정 관리 수명을 대폭 향상할 수 있습니다.",
@@ -930,6 +944,11 @@
"current_location": "현재 위치",
"user_phone": "본인 전화 번호",
"new_location": "새 위치",
"session": "세션",
"session_description": "계정 세션 제어",
"session_timeout_after": "시간 초과 세션 시작",
"session_timeout": "세션 시간 초과",
"session_timeout_description": "일정 시간이 지나면 세션을 무효화합니다.",
"no_location": "정의된 위치 없음",
"set_location": "위치 설정",
"update_location": "위치 업데이트",
@@ -1073,6 +1092,7 @@
"broken_video_action": "예약된 이벤트에 <1>{{location}}</1> 회의 링크를 추가할 수 없습니다. 초대받은 사람에게 연락하거나 캘린더 일정을 업데이트하여 세부 정보를 추가하세요. <3> 이벤트 유형에서 위치를 변경</3>하거나 <5>앱을 제거했다가 다시 추가</5>할 수 있습니다.",
"broken_calendar_action": "<1>{{calendar}}</1>을(를) 업데이트를 할 수 없습니다. <2> 캘린더 설정을 확인하거나 캘린더를 제거했다가 다시 추가하세요.</2>",
"attendee_name": "참석자 이름",
"scheduler_full_name": "예약하는 당사자의 성명",
"broken_integration": "단절된 통합",
"problem_adding_video_link": "비디오 링크를 추가하는 중 문제가 발생했습니다",
"problem_updating_calendar": "캘린더를 업데이트하는 중 문제가 발생했습니다",
@@ -1215,6 +1235,7 @@
"connect_automation_apps": "자동화 앱 연결",
"connect_analytics_apps": "분석 앱 연결",
"connect_other_apps": "기타 앱 연결",
"connect_web3_apps": "web3 앱 연결",
"current_step_of_total": "{{maxSteps}} 중 {{currentStep}} 단계",
"add_variable": "변수 추가",
"custom_phone_number": "사용자 정의 전화 번호",
@@ -1231,6 +1252,7 @@
"to": "대상",
"workflow_turned_on_successfully": "{{workflowName}} 워크플로 {{offOn}} 설정 완료",
"download_responses": "다운로드 응답",
"download_responses_description": "양식에 대한 모든 응답을 CSV 형식으로 다운로드합니다.",
"download": "다운로드",
"create_your_first_form": "첫 양식 작성",
"create_your_first_form_description": "라우팅 양식을 사용하면 적격성 질문을 올리고 올바른 사람 또는 이벤트 유형으로 라우팅할 수 있습니다.",
@@ -1272,6 +1294,8 @@
"routing_forms_send_email_owner": "소유자에게 이메일 보내기",
"routing_forms_send_email_owner_description": "양식이 제출되면 소유자에게 이메일을 발송합니다",
"add_new_form": "새 양식 추가",
"create_your_first_route": "첫 번째 경로 작성",
"route_to_the_right_person": "양식에 대한 답변을 토대로 올바른 당사자에게 전달",
"form_description": "예약자를 라우팅할 양식 생성",
"copy_link_to_form": "양식에 링크 복사",
"theme": "테마",
@@ -1302,6 +1326,7 @@
"password_reset_leading": "이메일을 아직 받지 못한 경우 입력한 이메일 주소가 올바른지 확인하고 스팸 폴더를 확인하거나 문제가 지속되면 지원팀에 문의하세요.",
"password_updated": "비밀번호가 업데이트되었습니다!",
"pending_payment": "진행 중인 결제",
"pending_invites": "진행 중 초대 건",
"confirmation_page_rainbow": "이더리움, 폴리곤 등의 토큰 또는 NFT를 사용하여 이벤트를 토큰 게이트합니다.",
"not_on_cal": "{{appName}}에 없음",
"no_calendar_installed": "설치된 캘린더 없음",
@@ -1428,6 +1453,9 @@
"disabled_calendar": "다른 캘린더를 설치한 경우 새 예약이 여기에 추가됩니다. 그렇지 않은 경우 새로운 예약을 놓치지 않도록 새 캘린더를 연결하세요.",
"enable_apps": "앱 활성화",
"enable_apps_description": "사용자가 Cal.com과 통합할 수 있는 앱 활성화",
"purchase_license": "라이선스 구매",
"already_have_key": "이미 키가 있습니다:",
"already_have_key_suggestion": "기존 CALCOM_LICENSE_KEY 환경 변수를 여기에 복사하십시오.",
"app_is_enabled": "{{appName}} 앱이 활성화되었습니다",
"app_is_disabled": "{{appName}} 앱이 비활성화되었습니다",
"keys_have_been_saved": "키가 저장되었습니다",
@@ -1448,6 +1476,7 @@
"individual": "개인",
"all_bookings_filter_label": "모든 예약",
"all_users_filter_label": "모든 사용자",
"your_bookings_filter_label": "내 예약",
"meeting_url_variable": "회의 URL",
"meeting_url_info": "이벤트 회의 컨퍼런스 URL",
"date_overrides": "날짜 재정의",
@@ -1486,6 +1515,7 @@
"round_robin_hosts": "라운드 로빈 호스트",
"minimum_round_robin_hosts_count": "참석에 필요한 호스트 수",
"hosts": "호스트",
"upgrade_to_enable_feature": "이 기능을 사용하려면 팀을 만들어야 합니다. 팀을 만들려면 클릭하세요.",
"new_attendee": "새 참석자",
"awaiting_approval": "승인 기다리는 중",
"requires_google_calendar": "이 앱은 Google Calendar 연결이 필요합니다",
@@ -1494,9 +1524,100 @@
"continue_to_install_google_calendar": "Google Calendar 설치 계속하기",
"install_google_meet": "Google Meet 설치",
"install_google_calendar": "Google Calendar 설치",
"sender_name": "발신자 이름",
"already_invited": "이미 초대된 참석자입니다",
"no_recordings_found": "기록 없음",
"reporting": "보고",
"reporting_feature": "데이터에서 들어오는 모든 것을 확인하고 CSV 파일로 다운로드",
"teams_plan_required": "Teams 플랜 필수",
"routing_forms_are_a_great_way": "라우팅 양식은 들어오는 리드를 올바른 당사자에게 전달하는 좋은 방법입니다. 이 기능에 액세스하려면 Teams 플랜으로 업그레이드하세요.",
"choose_a_license": "라이선스 선택",
"choose_license_description": "Cal.com은 액세스 가능한 무료 AGPLv3 라이선스와 함께 제공되며 일부 제한 사항은 언제든지 Enterprise 라이선스로 업그레이드할 수 있습니다. 나중에 언제든지 업그레이드할 수 있습니다.",
"license": "라이선스",
"agplv3_license": "AGPLv3 라이선스",
"ee_enterprise_license": "“/ee” Enterprise 라이선스",
"enterprise_booking_fee": "시작가 {{enterprise_booking_fee}}/월",
"enterprise_license_includes": "상업용 사용 사례를 위한 것들이 다 있습니다",
"no_need_to_keep_your_code_open_source": "코드를 오픈 소스로 유지할 필요가 없습니다",
"repackage_rebrand_resell": "쉽게 재포장, 리브랜딩 및 재판매",
"a_vast_suite_of_enterprise_features": "방대한 엔터프라이즈 기능 제품군",
"free_license_fee": "$0.00/월",
"forever_open_and_free": "무제한 사용 및 무료",
"required_to_keep_your_code_open_source": "코드를 오픈 소스로 유지 필수",
"cannot_repackage_and_resell": "쉽게 재포장, 리브랜딩 및 재판매 불가",
"no_enterprise_features": "엔터프라이즈 기능 없음",
"step_enterprise_license": "Enterprise 라이선스",
"step_enterprise_license_description": "개인 호스팅, 리패키징, 리브랜딩, 재판매 및 독점 엔터프라이즈 구성 요소에 액세스하는 상업적 사용 사례를 위한 것들이 모두 다 있습니다.",
"setup": "설정",
"setup_description": "Cal.com 인스턴스 설정",
"configure": "구성",
"sso_configuration": "싱글 사인온",
"sso_configuration_description": "SAML/OIDC SSO를 구성하고 팀원이 ID 공급자를 사용하여 로그인하도록 허용",
"sso_oidc_heading": "SSO 및 OIDC",
"sso_oidc_description": "선택한 ID 공급자로 OIDC SSO를 구성합니다.",
"sso_oidc_configuration_title": "OIDC 구성",
"sso_oidc_configuration_description": "ID 공급자에 대한 OIDC 연결을 구성합니다. 필수 정보는 ID 공급자에서 찾을 수 있습니다.",
"sso_oidc_callback_copied": "콜백 URL이 복사되었습니다",
"sso_saml_heading": "SSO 및 SAML",
"sso_saml_description": "선택한 ID 공급자로 SAML SSO를 구성합니다.",
"sso_saml_configuration_title": "SAML 구성",
"sso_saml_configuration_description": "ID 공급자에 대한 SAML 연결을 구성합니다. 필수 정보는 ID 공급자에서 찾을 수 있습니다.",
"sso_saml_acsurl_copied": "ACS URL이 복사되었습니다",
"sso_saml_entityid_copied": "엔터티 ID가 복사되었습니다",
"sso_connection_created_successfully": "{{connectionType}} 구성이 생성되었습니다",
"sso_connection_deleted_successfully": "{{connectionType}} 구성이 삭제되었습니다",
"delete_sso_configuration": "{{connectionType}} 구성 삭제",
"delete_sso_configuration_confirmation": "예, {{connectionType}} 구성을 삭제합니다",
"delete_sso_configuration_confirmation_description": "{{connectionType}} 구성을 삭제하시겠습니까? {{connectionType}} 로그인을 사용하는 팀원은 더 이상 Cal.com에 액세스할 수 없습니다.",
"organizer_timezone": "주최자 시간대",
"email_no_user_cta": "계정 만들기",
"email_user_cta": "초대 보기",
"email_no_user_invite_heading": "{{appName}} 팀에 초대되셨습니다",
"email_no_user_invite_subheading": "{{invitedBy}} 님이 귀하를 {{appName}}에서 자신의 팀에 초대했습니다. {{appName}} 앱은 귀하와 귀하의 팀이 이메일을 주고 받지 않고 회의 일정을 잡을 수 있게 해주는 이벤트 정리 스케줄러입니다.",
"email_no_user_invite_steps_intro": "몇 가지 간단한 단계를 안내해 드릴 것이며 곧 팀과 함께 스트레스 없는 일정 관리를 누리시게 될 것입니다.",
"email_no_user_step_one": "사용자 이름 선택",
"email_no_user_step_two": "캘린더 계정 연결하기",
"email_no_user_step_three": "언제 여유가 있는지 설정하세요",
"email_no_user_step_four": "{{teamName}} 가입",
"email_no_user_signoff": "{{appName}} 팀의 행복한 일정",
"impersonation_user_tip": "사용자를 가장하려고 합니다. 즉, 사용자를 대신하여 변경할 수 있는 것입니다. 조심하세요.",
"scheduler": "{Scheduler}",
"available_variables": "사용 가능 변수",
"recommended_next_steps": "추천 다음 단계",
"create_a_managed_event": "관리형 이벤트 유형 작성",
"meetings_are_better_with_the_right": "회의는 그곳에서 올바른 팀원과 함께 하는 것이 더 낫습니다. 지금 초대하세요.",
"create_a_one_one_template": "이벤트 유형에 대한 일대일 템플릿을 만들어 여러 일원에게 배포하십시오.",
"collective_or_roundrobin": "집단 또는 라운드 로빈",
"book_your_team_members": "집단 이벤트를 통해 팀원을 함께 예약하거나 라운드 로빈으로 적합한 일원을 찾기 위해 차례대로 둘러봅니다.",
"default_app_link_title": "기본 앱 링크 설정",
"default_app_link_description": "기본 앱 링크를 설정하면 새로 생성된 모든 이벤트 유형에서 설정한 앱 링크를 사용할 수 있습니다.",
"change_default_conferencing_app": "기본값으로 설정",
"booking_confirmation_failed": "예약 확인 실패"
"under_maintenance": "아래로 밀어 유지관리",
"under_maintenance_description": "{{appName}} 팀에서 예정된 유지관리를 수행하고 있습니다. 궁금한 점이 있으면 지원팀에 문의하세요.",
"event_type_seats": "{{numberOfSeats}}석",
"booking_with_payment_cancelled": "이 이벤트는 더 이상 결제할 수 없습니다",
"booking_with_payment_cancelled_already_paid": "이 예약 결제에 대한 환불 처리가 진행 중입니다.",
"booking_with_payment_cancelled_refunded": "이 예약 결제는 환불 처리되었습니다.",
"booking_confirmation_failed": "예약 확인 실패",
"get_started_zapier_templates": "Zapier 템플릿 시작하기",
"a_routing_form": "라우팅 양식",
"form_description_placeholder": "양식 설명",
"keep_me_connected_with_form": "양식과 연결 유지",
"fields_in_form_duplicated": "복제되는 양식의 라우터 및 필드의 변경 사항은 복제본에 반영됩니다.",
"form_deleted": "양식 삭제됨",
"delete_form": "양식 삭제",
"delete_form_action": "예, 양식을 삭제하겠습니다",
"delete_form_confirmation": "이 양식을 삭제하시겠습니까? 링크를 공유한 사용자는 더 이상 링크를 사용하여 예약할 수 없습니다. 또한 모든 관련 응답도 삭제됩니다.",
"typeform_redirect_url_copied": "Typeform Redirect URL이 복사되었습니다! Typeform 형식으로 이동하여 URL을 설정할 수 있습니다.",
"modifications_in_fields_warning": "다음 양식의 필드 및 경로 수정은 이 양식에 반영됩니다.",
"connected_forms": "연결된 양식",
"form_modifications_warning": "여기에서 필드 또는 경로를 수정하면 다음 양식이 영향을 받습니다.",
"responses_collection_waiting_description": "응답이 수집될 때까지 잠시 기다리십시오. 직접 가서 양식을 제출할 수도 있습니다.",
"this_is_what_your_users_would_see": "이것은 사용자에게 표시됩니다",
"identifies_name_field": "이 이름으로 필드를 식별합니다.",
"add_1_option_per_line": "한 줄에 옵션 1개 추가",
"select_a_router": "라우터 선택",
"add_a_new_route": "새 경로 추가",
"no_responses_yet": "아직 응답 없음",
"this_will_be_the_placeholder": "이것은 자리 표시자가 됩니다"
}
+122 -1
View File
@@ -7,6 +7,7 @@
"upgrade_now": "Uppgradera nu",
"accept_invitation": "Acceptera inbjudan",
"calcom_explained": "{{appName}} erbjuder en infrastruktur för schemaläggning för alla.",
"calcom_explained_new_user": "Slutför konfigureringen av ditt {{appName}}-konto! Du är bara några steg från att lösa alla dina schemaläggningsproblem.",
"have_any_questions": "Har du frågor? Vi är här för att hjälpa till.",
"reset_password_subject": "{{appName}}: Instruktioner för att återställa ditt lösenord",
"event_declined_subject": "Avvisades: {{title}} kl. {{date}}",
@@ -23,6 +24,8 @@
"rejection_reason_description": "Är du säker på att du vill avböja bokningen? Vi kommer att meddela personen som försökte boka. Du kan ange en anledning nedan.",
"rejection_confirmation": "Avböj bokningen",
"manage_this_event": "Hantera denna bokning",
"invite_team_member": "Bjud in teammedlem",
"invite_team_notifcation_badge": "Inv.",
"your_event_has_been_scheduled": "Din bokning har schemalagts",
"your_event_has_been_scheduled_recurring": "Din återkommande händelseförfrågan har schemalagts",
"accept_our_license": "Acceptera vår licens genom att ändra .env variabeln <1>NEXT_PUBLIC_LICENSE_CONSENT</1> till '{{agree}}'.",
@@ -410,6 +413,8 @@
"password_updated_successfully": "Lösenordet har uppdaterats",
"password_has_been_changed": "Ditt lösenord har ändrats.",
"error_changing_password": "Fel vid ändring av lösenord",
"session_timeout_changed": "Din sessionskonfiguration har uppdaterats.",
"session_timeout_change_error": "Fel vid uppdatering av sessionskonfiguration",
"something_went_wrong": "Något gick snett.",
"something_doesnt_look_right": "Något ser inte rätt ut?",
"please_try_again": "Vänligen försök igen.",
@@ -428,6 +433,7 @@
"password_hint_num": "Innehåller minst 1 siffra",
"invalid_password_hint": "Lösenordet måste innehålla minst {{passwordLength}} tecken och har minst en siffra samt en blandning av versaler och gemener",
"incorrect_password": "Lösenordet är felaktigt.",
"incorrect_username_password": "Felaktigt användarnamn eller lösenord.",
"24_h": "24 timmar",
"use_setting": "Använd inställning",
"am_pm": "am/pm",
@@ -455,6 +461,7 @@
"slots_load_fail": "Det gick inte att ladda tillgängliga tidsluckor.",
"additional_guests": "Lägg till gäster",
"your_name": "Ditt namn",
"your_full_name": "Ditt fullständiga namn",
"email_address": "E-postadress",
"enter_valid_email": "Ange en giltig e-postadress",
"location": "Plats",
@@ -508,6 +515,8 @@
"admin": "Administratör",
"administrator_user": "Administratörsanvändare",
"lets_create_first_administrator_user": "Vi skapar den första administratörsanvändaren.",
"admin_user_created": "Inställning av administratörsanvändare",
"admin_user_created_description": "Du har redan skapat en administratörsanvändare. Du kan nu logga in på ditt konto.",
"new_member": "Ny medlem",
"invite": "Bjud in",
"add_team_members": "Lägg till teammedlemmar",
@@ -658,6 +667,7 @@
"edit_availability": "Redigera tillgänglighet",
"configure_availability": "Ställ in de tider du är tillgänglig för bokningar.",
"copy_times_to": "Kopiera tider till",
"copy_times_to_tooltip": "Kopiera tider till …",
"change_weekly_schedule": "Ändra ditt veckoschema",
"logo": "Logotyp",
"error": "Fel",
@@ -669,6 +679,7 @@
"add_attendees": "Lägg till deltagare",
"show_advanced_settings": "Visa avancerade inställningar",
"event_name": "Händelsenamn",
"event_name_in_calendar": "Händelsenamn i kalender",
"event_name_tooltip": "Namnet som kommer visas i kalendrar",
"meeting_with_user": "Möte med {{attendeeName}}",
"additional_inputs": "Ytterligare inmatningar",
@@ -787,6 +798,7 @@
"number_apps_one": "{{count}} app",
"number_apps_other": "{{count}} appar",
"trending_apps": "Trendande appar",
"most_popular": "Mest populärt",
"explore_apps": "{{category}}-appar",
"installed_apps": "Installerade appar",
"free_to_use_apps": "Gratis",
@@ -797,12 +809,14 @@
"no_category_apps_description_analytics": "Lägg till en analysapp för dina bokningssidor",
"no_category_apps_description_automation": "Lägg till en automationsapp att använda",
"no_category_apps_description_other": "Lägg till en annan typ av app för att göra alla möjliga saker",
"no_category_apps_description_web3": "Lägg itll web3-app för dina bokningssidor",
"installed_app_calendar_description": "Ställ in kalendrar att söka efter konflikter för att undvika dubbelbokningar.",
"installed_app_conferencing_description": "Lägg till dina favoritappar för videokonferenser för dina möten",
"installed_app_payment_description": "Konfigurera vilka betalningstjänster som ska användas när du debiterar dina kunder.",
"installed_app_analytics_description": "Konfigurera vilka analysappar som ska användas för dina bokningssidor",
"installed_app_other_description": "Alla dina installerade appar från andra kategorier.",
"installed_app_automation_description": "Konfigurera vilka automationsappar som ska användas",
"installed_app_web3_description": "Konfigurera vilka web3-appar som ska användas för dina bokningssidor",
"analytics": "Analys",
"empty_installed_apps_headline": "Inga appar installerade",
"empty_installed_apps_description": "Med appar kan du förbättra ditt arbetsflöde och din schemaläggning avsevärt.",
@@ -930,6 +944,11 @@
"current_location": "Nuvarande plats",
"user_phone": "Ditt telefonnummer",
"new_location": "Ny plats",
"session": "Session",
"session_description": "Kontrollera din kontosession",
"session_timeout_after": "Timeout-session efter",
"session_timeout": "Sessions-timeout",
"session_timeout_description": "Ogiltigförklara din session efter en viss tid.",
"no_location": "Ingen plats definierad",
"set_location": "Ställ in plats",
"update_location": "Uppdatera plats",
@@ -1073,6 +1092,7 @@
"broken_video_action": "Det gick inte att lägga till möteslänken <1>{{location}}</1> i din planerade händelse. Kontakta personerna du bjudit in eller uppdatera din kalenderhändelse för att lägga till informationen. Du kan antingen <3>ändra din plats i händelsetypen </3> eller prova <5>att ta bort och lägga till appen igen.</5>",
"broken_calendar_action": "Det gick inte att uppdatera din <1>{{calendar}}</1>. <2> Kontrollera dina kalenderinställningar eller ta bort och lägg till din kalender igen </2>",
"attendee_name": "Deltagarens namn",
"scheduler_full_name": "Fullständigt namn på personen som bokar",
"broken_integration": "Trasig integration",
"problem_adding_video_link": "Det gick inte att lägga till en videolänk",
"problem_updating_calendar": "Det gick inte att uppdatera din kalender",
@@ -1215,6 +1235,7 @@
"connect_automation_apps": "Anslut automationsappar",
"connect_analytics_apps": "Anslut analysappar",
"connect_other_apps": "Anslut andra appar",
"connect_web3_apps": "Anslut web3-appar",
"current_step_of_total": "Steg {{currentStep}} av {{maxSteps}}",
"add_variable": "Lägg till variabel",
"custom_phone_number": "Anpassa telefonnummer",
@@ -1231,6 +1252,7 @@
"to": "Till",
"workflow_turned_on_successfully": "Arbetsflödet {{workflowName}} är {{offOn}}",
"download_responses": "Ladda ned svar",
"download_responses_description": "Ladda ner alla svar till ditt formulär i CSV-format.",
"download": "Ladda ned",
"create_your_first_form": "Skapa ditt första formulär",
"create_your_first_form_description": "Med Dirigeringsformulär kan du ställa kvalificerade frågor och dirigera till rätt person eller händelsetyp.",
@@ -1272,6 +1294,8 @@
"routing_forms_send_email_owner": "Skicka e-post till ägare",
"routing_forms_send_email_owner_description": "Skickar ett e-postmeddelande till ägaren när formuläret skickas",
"add_new_form": "Lägg till nytt formulär",
"create_your_first_route": "Skapa din första rutt",
"route_to_the_right_person": "Skicka vidare till rätt person baserat på svaren i formuläret",
"form_description": "Skapa ditt formulär för att dirigera en bokare",
"copy_link_to_form": "Kopiera länk till formulär",
"theme": "Tema",
@@ -1302,6 +1326,7 @@
"password_reset_leading": "Om du inte fick e-postmeddelandet snart, kontrollera att e-postadressen du angav är korrekt, kontrollera din skräppostmapp eller kontakta kundsupport om problemet kvarstår.",
"password_updated": "Lösenord uppdaterat!",
"pending_payment": "Väntande betalning",
"pending_invites": "Väntande inbjudningar",
"confirmation_page_rainbow": "Tokenskydda din händelse med tokens eller NFT:er på Ethereum, Polygon med mera.",
"not_on_cal": "Inte på {{appName}}",
"no_calendar_installed": "Ingen kalender installerad",
@@ -1428,6 +1453,9 @@
"disabled_calendar": "Om du har en annan kalender installerad läggs nya bokningar till i den. Anslut annars en ny kalender så att du inte missar nya bokningar.",
"enable_apps": "Aktivera appar",
"enable_apps_description": "Aktivera appar som användare kan integrera med Cal.com",
"purchase_license": "Köp en licens",
"already_have_key": "Jag har redan en nyckel:",
"already_have_key_suggestion": "Kopiera din befintliga CALCOM_LICENSE_KEY-miljövariabel här.",
"app_is_enabled": "{{appName}} har aktiverats",
"app_is_disabled": "{{appName}} har inaktiverats",
"keys_have_been_saved": "Nycklar har sparats",
@@ -1448,6 +1476,7 @@
"individual": "Individ",
"all_bookings_filter_label": "Alla bokningar",
"all_users_filter_label": "Alla användare",
"your_bookings_filter_label": "Dina bokningar",
"meeting_url_variable": "Mötes-URL",
"meeting_url_info": "URL till evenemangets möteskonferens",
"date_overrides": "Åsidosättningar av datum",
@@ -1486,6 +1515,7 @@
"round_robin_hosts": "Round Robin-värdar",
"minimum_round_robin_hosts_count": "Antal värdar som krävs för att delta",
"hosts": "Värdar",
"upgrade_to_enable_feature": "Du måste skapa ett team för att aktivera den här funktionen. Klicka för att skapa ett team.",
"new_attendee": "Ny deltagare",
"awaiting_approval": "Väntar på godkännande",
"requires_google_calendar": "Den här appen kräver en Google Kalender-anslutning",
@@ -1494,9 +1524,100 @@
"continue_to_install_google_calendar": "Fortsätt att installera Google Kalender",
"install_google_meet": "Installera Google Meet",
"install_google_calendar": "Installera Google Kalender",
"sender_name": "Avsändarens namn",
"already_invited": "Deltagare redan inbjuden",
"no_recordings_found": "Inga poster hittades",
"reporting": "Rapportering",
"reporting_feature": "Se alla inkommande från data och ladda ner som CSV",
"teams_plan_required": "Teams-abonnemang krävs",
"routing_forms_are_a_great_way": "Omdirigeringsformulär är ett bra sätt att dirigera inkommande leads till rätt person. Uppgradera till ett Teams-abonnemang för att få tillgång till den här funktionen.",
"choose_a_license": "Välj en licens",
"choose_license_description": "Cal.com har en tillgänglig och gratis AGPLv3-licens med vissa begränsningar som när som helst kan uppgraderas till en företagslicens. Du kan uppgradera när som helst senare.",
"license": "Licens",
"agplv3_license": "AGPLv3-licens",
"ee_enterprise_license": "“/ee” företagslicens",
"enterprise_booking_fee": "Från {{enterprise_booking_fee}}/månad",
"enterprise_license_includes": "Allt för ett kommersiellt användarfall",
"no_need_to_keep_your_code_open_source": "Inget behov av att behålla din kod som öppen källkod",
"repackage_rebrand_resell": "Lätt att ompaketera, omprofilera och återsälja",
"a_vast_suite_of_enterprise_features": "En omfattande uppsättning företagsfunktioner",
"free_license_fee": "$0.00/månad",
"forever_open_and_free": "Öppen och gratis för alltid",
"required_to_keep_your_code_open_source": "Behövs för att hålla din kod som öppen källkod",
"cannot_repackage_and_resell": "Det går inte att omförpacka, pmprofilera och återsälja",
"no_enterprise_features": "Inga företagsfunktioner",
"step_enterprise_license": "Företagslicens",
"step_enterprise_license_description": "Allt för kommersiellt bruk med privat hosting, ompaketering, omprofilering och återförsäljning samt tillgång till exklusiva företagskomponenter.",
"setup": "Konfiguration",
"setup_description": "Installera Cal.com-instans",
"configure": "Konfigurera",
"sso_configuration": "Enkel inloggning",
"sso_configuration_description": "Konfigurera SAML/OIDC SSO och låt teammedlemmar logga in med hjälp av en identitetsleverantör",
"sso_oidc_heading": "SSO med OIDC",
"sso_oidc_description": "Konfigurera OIDC SSO med identitetsleverantör som du väljer.",
"sso_oidc_configuration_title": "OIDC-konfiguration",
"sso_oidc_configuration_description": "Konfigurera OIDC-anslutningen till din identitetsleverantör. Du hittar den nödvändiga informationen i din identitetsleverantör.",
"sso_oidc_callback_copied": "URL för återkallelse kopierad",
"sso_saml_heading": "SSO med SAML",
"sso_saml_description": "Konfigurera SAML SSO med identitetsleverantör som du väljer.",
"sso_saml_configuration_title": "SAML-konfiguration",
"sso_saml_configuration_description": "Konfigurera SAML-anslutningen till din identitetsleverantör. Du hittar den nödvändiga informationen i din identitetsleverantör.",
"sso_saml_acsurl_copied": "ACS-URL",
"sso_saml_entityid_copied": "Enhets-ID kopierat",
"sso_connection_created_successfully": "{{connectionType}}-konfiguration har skapats",
"sso_connection_deleted_successfully": "{{connectionType}}-konfiguration togs bort",
"delete_sso_configuration": "Ta bort {{connectionType}}-konfiguration",
"delete_sso_configuration_confirmation": "Ja, ta bort {{connectionType}}-konfiguration",
"delete_sso_configuration_confirmation_description": "Är du säker på att du vill ta bort konfigurationen {{connectionType}}? Dina teammedlemmar som använder {{connectionType}}-inloggning kommer inte längre att kunna komma åt Cal.com.",
"organizer_timezone": "Arrangörens tidszon",
"email_no_user_cta": "Skapa ditt konto",
"email_user_cta": "Visa inbjudan",
"email_no_user_invite_heading": "Du har blivit inbjuden att gå med i ett team på {{appName}}",
"email_no_user_invite_subheading": "{{invitedBy}} har bjudit in dig att gå med i sitt team på {{appName}}. {{appName}} är den jonglerande schemaläggaren som gör det möjligt för dig och ditt team att planera möten utan e-posttennis.",
"email_no_user_invite_steps_intro": "Vi går igenom några korta steg så att du kan njuta av stressfri schemaläggning med ditt team på nolltid.",
"email_no_user_step_one": "Välj ditt användarnamn",
"email_no_user_step_two": "Anslut ditt kalenderkonto",
"email_no_user_step_three": "Ställ in din tillgänglighet",
"email_no_user_step_four": "Gå med i {{teamName}}",
"email_no_user_signoff": "Glad schemaläggning från {{appName}}-teamet",
"impersonation_user_tip": "Du är på väg att uppträda som en användare, vilket innebär att du kan göra ändringar för dennes räkning. Var försiktig.",
"scheduler": "{Scheduler}",
"available_variables": "Tillgängliga variabler",
"recommended_next_steps": "Rekommenderade nästa steg",
"create_a_managed_event": "Skapa en hanterad händelsetyp",
"meetings_are_better_with_the_right": "Mötena blir bättre när rätt gruppmedlemmar är närvarande. Bjud in dem nu.",
"create_a_one_one_template": "Skapa en en-en-mall för en evenemangstyp och distribuera den till flera medlemmar.",
"collective_or_roundrobin": "Kollektiv eller round-robin",
"book_your_team_members": "Boka dina teammedlemmar tillsammans med kollektiva evenemang eller gå igenom för att få rätt person med round-robin.",
"default_app_link_title": "Skapa en standardlänk för appen",
"default_app_link_description": "Om du skapar en standardapplänk kan alla nyss skapade händelsetyper använda den applänk som du har angett.",
"change_default_conferencing_app": "Ange som standard",
"booking_confirmation_failed": "Bokningsbekräftelsen misslyckades"
"under_maintenance": "Nere för underhåll",
"under_maintenance_description": "{{appName}}-teamet utför planerat underhåll. Om du har några frågor kan du kontakta supporten.",
"event_type_seats": "{{numberOfSeats}} platser",
"booking_with_payment_cancelled": "Det går inte längre att betala för det här evenemanget",
"booking_with_payment_cancelled_already_paid": "En återbetalning för den här bokningsbetalningen är på väg.",
"booking_with_payment_cancelled_refunded": "Den här bokningsbetalningen har återbetalats.",
"booking_confirmation_failed": "Bokningsbekräftelsen misslyckades",
"get_started_zapier_templates": "Kom igång med Zapier-mallar",
"a_routing_form": "Ett omdirigeringsformulär",
"form_description_placeholder": "Formulärbeskrivning",
"keep_me_connected_with_form": "Håll mig ansluten med formuläret",
"fields_in_form_duplicated": "Alla ändringar i omdirigering och fält i formuläret som dupliceras återspeglas i duplikatet.",
"form_deleted": "Formulär borttaget",
"delete_form": "Ta bort formulär",
"delete_form_action": "Ja, ta bort formulär",
"delete_form_confirmation": "Är du säker på att du vill ta bort det här formuläret? Alla som du har delat länken med kommer inte längre att kunna boka med hjälp av den. Dessutom raderas alla tillhörande svar.",
"typeform_redirect_url_copied": "Typeform Redirect URL kopierad! Du kan ange URL:n i Typeform-formuläret.",
"modifications_in_fields_warning": "Ändringar i fält och omdirigeringar av följande formulär kommer att återspeglas i detta formulär.",
"connected_forms": "Anslutna formulär",
"form_modifications_warning": "Följande formulär skulle påverkas när du ändrar fält eller omdirigeringar här.",
"responses_collection_waiting_description": "Vänta en stund tills svaren samlas in. Du kan också skicka in formuläret själv.",
"this_is_what_your_users_would_see": "Detta är vad dina användare skulle se",
"identifies_name_field": "Identifierar fält med detta namn.",
"add_1_option_per_line": "Lägg till 1 alternativ per rad",
"select_a_router": "Välj en router",
"add_a_new_route": "Lägg till ny omdirigering",
"no_responses_yet": "Inga svar ännu",
"this_will_be_the_placeholder": "Det här blir platshållaren"
}
@@ -7,6 +7,7 @@
"upgrade_now": "Nâng cấp ngay",
"accept_invitation": "Chấp Nhận Lời Mời",
"calcom_explained": "{{appName}} là Calendly mã nguồn mở, giúp bạn quản lý dữ liệu, ngoại hình và cách làm việc của mình.",
"calcom_explained_new_user": "Hoàn tất thiết lập tài khoản của bạn trong {{appName}}! Bạn chỉ còn vài bước nữa là giải quyết được mọi vấn đề về việc lên lịch kế hoạch.",
"have_any_questions": "Có câu hỏi? Chúng tôi luôn ở đây để giúp bạn.",
"reset_password_subject": "{{appName}}: Hướng dẫn thay đổi mật khẩu",
"event_declined_subject": "Đã từ chối: {{title}} tại {{date}}",
@@ -23,6 +24,8 @@
"rejection_reason_description": "Bạn có chắc bạn muốn từ chối đặt lịch hẹn? Chúng tôi sẽ cho người đặt biết. Bạn có thể cho người dùng biết lý do từ chối dưới đây.",
"rejection_confirmation": "Từ chối lịch hẹn",
"manage_this_event": "Quản lý sự kiện này",
"invite_team_member": "Mời thành viên nhóm",
"invite_team_notifcation_badge": "Mời",
"your_event_has_been_scheduled": "Sự kiện của bạn đã được lên lịch",
"your_event_has_been_scheduled_recurring": "Sự kiện định kỳ của bạn đã được lên lịch",
"accept_our_license": "Chấp nhận giấy phép của chúng tôi bằng cách thay đổi biến .env <1>NEXT_PUBLIC_LICENSE_CONSENT</1> thành '{{agree}}'.",
@@ -410,6 +413,8 @@
"password_updated_successfully": "Đã cập nhật mật khẩu thành công",
"password_has_been_changed": "Mật khẩu của bạn đã được thay đổi thành công.",
"error_changing_password": "Lỗi khi thay đổi mật khẩu",
"session_timeout_changed": "Đã cập nhật thành công cấu hình phiên của bạn.",
"session_timeout_change_error": "Lỗi khi cập nhật cấu hình phiên",
"something_went_wrong": "Đã xảy ra lỗi.",
"something_doesnt_look_right": "Có gì đó không ổn?",
"please_try_again": "Vui lòng thử lại.",
@@ -428,6 +433,7 @@
"password_hint_num": "Chứa ít nhất 1 con số",
"invalid_password_hint": "Mật khẩu phải có tối thiểu {{passwordLength}} ký tự chứa ít nhất một con số và phải kết hợp chữ cái in hoa lẫn in thường",
"incorrect_password": "Mật khẩu không đúng.",
"incorrect_username_password": "Sai tên người dùng hoặc sai mật khẩu.",
"24_h": "24h",
"use_setting": "Sử dụng cài đặt",
"am_pm": "\u001dam/pm",
@@ -455,6 +461,7 @@
"slots_load_fail": "Không thể tải thời gian có thể đặt lịch.",
"additional_guests": "Thêm khách",
"your_name": "Tên của bạn",
"your_full_name": "Tên đầy đủ của bạn",
"email_address": "Địa chỉ email",
"enter_valid_email": "Vui lòng điền vào email hợp lệ",
"location": "Vị trí",
@@ -508,6 +515,8 @@
"admin": "Quản trị viên",
"administrator_user": "Người dùng quản trị viên",
"lets_create_first_administrator_user": "Hãy tạo người dùng đầu tiên ở vai trò quản trị viên.",
"admin_user_created": "Thiết lập người dùng quản trị",
"admin_user_created_description": "Bạn đã tạo một người dùng quản trị. Giờ bạn có thể đăng nhập tài khoản của mình.",
"new_member": "Thành viên mới",
"invite": "Mời",
"add_team_members": "Thêm thành viên nhóm",
@@ -658,6 +667,7 @@
"edit_availability": "Sửa tình trạng trống lịch",
"configure_availability": "Định cấu hình thời gian mà mọi người có thể đặt lịch hẹn.",
"copy_times_to": "Sao chép thời gian đến",
"copy_times_to_tooltip": "Sao chép thời gian đến …",
"change_weekly_schedule": "Thay đổi lịch hàng tuần của bạn",
"logo": "Logo",
"error": "Lỗi",
@@ -669,6 +679,7 @@
"add_attendees": "Thêm người tham dự",
"show_advanced_settings": "Hiển thị cài đặt nâng cao",
"event_name": "Tên sự kiện",
"event_name_in_calendar": "Tên sự kiện trong lịch",
"event_name_tooltip": "Tên sẽ xuất hiện trong lịch",
"meeting_with_user": "Gặp gỡ với {{attendeeName}}",
"additional_inputs": "Trường bổ sung",
@@ -787,6 +798,7 @@
"number_apps_one": "{{count}} ứng dụng",
"number_apps_other": "{{count}} ứng dụng",
"trending_apps": "Ứng dụng thịnh hành",
"most_popular": "Phổ biến nhất",
"explore_apps": "{{category}} ứng dụng",
"installed_apps": "Ứng dụng đã cài đặt",
"free_to_use_apps": "Miễn phí",
@@ -797,12 +809,14 @@
"no_category_apps_description_analytics": "Thêm một ứng dụng phân tích cho những trang lịch hẹn của bạn",
"no_category_apps_description_automation": "Thêm một ứng dụng tự động hoá để sử dụng",
"no_category_apps_description_other": "Thêm loại ứng dụng khác để làm mọi loại công việc",
"no_category_apps_description_web3": "Thêm một ứng dụng web3 cho những trang lịch hẹn của bạn",
"installed_app_calendar_description": "Đặt (các) lịch làm nhiệm vụ kiểm tra xung đột nhằm ngăn tình trạng đặt lịch trùng.",
"installed_app_conferencing_description": "Thêm ứng dụng hội nghị video mà bạn yêu thích để phục vụ cho các cuộc họp",
"installed_app_payment_description": "Cấu hình loại dịch vụ xử lí thanh toán nào sẽ được dùng đến khi thu phí khách hàng.",
"installed_app_analytics_description": "Cấu hình ứng dụng phân tích nào để sử dụng cho những trang lịch hẹn của bạn",
"installed_app_other_description": "Tất cả những ứng dụng bạn đã cài từ những danh mục khác.",
"installed_app_automation_description": "Cấu hình ứng dụng tự động hoá nên dùng",
"installed_app_web3_description": "Cấu hình ứng dụng web3 nào cần để sử dụng cho những trang lịch hẹn của bạn",
"analytics": "Phân tích",
"empty_installed_apps_headline": "Chưa cài ứng dụng nào",
"empty_installed_apps_description": "Ứng dụng cho phép bạn cải thiện tiến độ công việc và cải thiện đáng kể việc sắp xếp tổ chức.",
@@ -930,6 +944,11 @@
"current_location": "Địa điểm hiện tại",
"user_phone": "Số điện thoại của bạn",
"new_location": "Địa điểm mới",
"session": "Phiên",
"session_description": "Kiểm soát phiên tài khoản của bạn",
"session_timeout_after": "Phiên hết hạn sau",
"session_timeout": "Hết hạn phiên",
"session_timeout_description": "Vô hiệu hoá phiên của bạn sau một khoảng thời gian nhất định.",
"no_location": "Chưa xác định địa điểm",
"set_location": "Đặt địa điểm",
"update_location": "Cập nhật địa điểm",
@@ -1073,6 +1092,7 @@
"broken_video_action": "Chúng tôi không thể thêm liên kết cuộc họp ở <1>{{location}}</1> vào sự kiện đã lên lịch của bạn. Hãy liên hệ người được mời hoặc cập nhật sự kiện lịch để thêm chi tiết. Bạn có thể <3>thay đổi vị trí của bạn trên loại sự kiện</3> hoặc thử <5>gỡ và cài lại ứng dụng.</5>",
"broken_calendar_action": "Chúng tôi không thể cập nhật <1>{{calendar}}</1>. <2>Vui lòng kiểm tra thiết lập lịch hoặc gỡ và cài lại lịch </2>",
"attendee_name": "Tên người tham dự",
"scheduler_full_name": "Tên đầy đủ của người đặt hẹn",
"broken_integration": "Tích hợp bị hỏng",
"problem_adding_video_link": "Có vấn đề khi thêm vào một liên kết video",
"problem_updating_calendar": "Có một vấn đề khi cập nhật lịch của bạn",
@@ -1215,6 +1235,7 @@
"connect_automation_apps": "Kết nối các ứng dụng tự động hoá",
"connect_analytics_apps": "Kết nối các ứng dụng phân tích",
"connect_other_apps": "Kết nối các ứng dụng khác",
"connect_web3_apps": "Kết nối các ứng dụng web3",
"current_step_of_total": "Bước {{currentStep}}/{{maxSteps}}",
"add_variable": "Thêm biến số",
"custom_phone_number": "Số điện thoại tùy chỉnh",
@@ -1231,6 +1252,7 @@
"to": "Đến",
"workflow_turned_on_successfully": "Đã {{offOn}} thành công dòng công việc {{workflowName}}",
"download_responses": "Tải xuống Phản hồi",
"download_responses_description": "Tải xuống tất cả phản hồi vào biểu mẫu của bạn ở định dạng CSV.",
"download": "Tải về",
"create_your_first_form": "Tạo biểu mẫu đầu tiên",
"create_your_first_form_description": "Với Biểu mẫu định hướng, bạn có thể hỏi một số câu sơ tuyển và định hướng đến đúng người hay đúng loại sự kiện.",
@@ -1272,6 +1294,8 @@
"routing_forms_send_email_owner": "Gửi email đến chủ sở hữu",
"routing_forms_send_email_owner_description": "Gửi một email đến chủ sở hữu khi biểu mẫu được gửi đi",
"add_new_form": "Thêm biểu mẫu mới",
"create_your_first_route": "Tạo định hướng đầu tiên của bạn",
"route_to_the_right_person": "Định hướng đến người phù hợp dựa trên những câu trả lời cho biểu mẫu của bạn",
"form_description": "Tạo biểu mẫu của bạn để định hướng người đặt lịch hẹn",
"copy_link_to_form": "Sao chép liên kết vào biểu mẫu",
"theme": "Chủ đề",
@@ -1302,6 +1326,7 @@
"password_reset_leading": "Nếu sau một lúc mà bạn không nhận được email, hãy kiểm tra liệu bạn có nhập địa chỉ email chính xác không, kiểm tra thư mục spam hoặc liên hệ nhờ hỗ trợ nếu vẫn còn gặp sự cố.",
"password_updated": "Mật khẩu đã được cập nhật!",
"pending_payment": "Thanh toán đang chờ xử lí",
"pending_invites": "Lời mời đang chờ xử lý",
"confirmation_page_rainbow": "Yêu cầu token để truy cập sự kiện của bạn, với các token hoặc NFT trên Ethereum, Polygon, v.v.",
"not_on_cal": "Không phải trên {{appName}}",
"no_calendar_installed": "Chưa cài đặt lịch nào",
@@ -1428,6 +1453,9 @@
"disabled_calendar": "Nếu bạn có lịch khác được cài đặt, những mục đặt hẹn mới sẽ được thêm vào đó. Nếu không thì hãy kết nối với lịch mới để bạn không bỏ lỡ bất cứ mục đặt hẹn mới nào.",
"enable_apps": "Kích hoạt ứng dụng",
"enable_apps_description": "Kích hoạt những ứng dụng mà người dùng có thể tích hợp với Cal.com",
"purchase_license": "Mua một giấy phép",
"already_have_key": "Tôi đã có một khoá:",
"already_have_key_suggestion": "Vui lòng sao chép biến số môi trường CALCOM_LICENSE_KEY hiện có của bạn tại đây.",
"app_is_enabled": "{{appName}} đã được kích hoạt",
"app_is_disabled": "{{appName}} đã được vô hiệu hoá",
"keys_have_been_saved": "Các khoá đã được lưu lại",
@@ -1448,6 +1476,7 @@
"individual": "Cá nhân",
"all_bookings_filter_label": "Tất cả lịch hẹn",
"all_users_filter_label": "Tất cả người dùng",
"your_bookings_filter_label": "Lịch hẹn của bạn",
"meeting_url_variable": "Url cuộc họp",
"meeting_url_info": "URL hội nghị cuộc họp sự kiện",
"date_overrides": "Ngày ghi đè",
@@ -1486,6 +1515,7 @@
"round_robin_hosts": "Chủ tọa xoay vòng",
"minimum_round_robin_hosts_count": "Số chủ tọa cần thiết để tham dự",
"hosts": "Chủ tọa",
"upgrade_to_enable_feature": "Bạn cần tạo một nhóm để bật tính năng này. Nhấp để tạo một nhóm.",
"new_attendee": "Người tham dự mới",
"awaiting_approval": "Đang chờ duyệt",
"requires_google_calendar": "Ứng dụng này yêu cầu bạn liên kết với Google Calendar",
@@ -1494,6 +1524,16 @@
"continue_to_install_google_calendar": "Tiếp tục kết nối với Google Calendar",
"install_google_meet": "Cài Google Meet",
"install_google_calendar": "Cài Google Calendar",
"sender_name": "Tên người gửi",
"already_invited": "Người tham dự đã được mời",
"no_recordings_found": "Không tìm thấy bản ghi âm nào",
"reporting": "Báo cáo",
"reporting_feature": "Xem tất cả những sự kiện sắp tới từ dữ liệu và tải nó xuống ở dạng CSV",
"teams_plan_required": "Cần có gói Teams",
"routing_forms_are_a_great_way": "Biểu mẫu định hướng là một cách tuyệt hảo để định hướng những người dẫn đầu sắp tới vào đúng người phù hợp. Nâng cấp lên gói Teams để truy cập tính năng này.",
"choose_a_license": "Chọn một giấy phép",
"choose_license_description": "Cal.com đi kèm một giấy phép dễ tiếp cận và miễn phí là AGPLv3 có một số hạn chế mà có thể nâng cấp lên giấy phép Doanh nghiệp vào bất cứ lúc nào. Bạn có thể nâng cấp sau bất cứ lúc nào.",
"license": "Giấy phép",
"configure": "Cấu hình",
"sso_configuration": "Cấu hình Đăng nhập một lần",
"email_no_user_cta": "Tạo tài khoản của bạn",
@@ -3,5 +3,5 @@ import React from "react";
import { AppForm } from "../components/AppCreateUpdateForm";
export default function Create(props: Omit<React.ComponentProps<typeof AppForm>, "action">) {
return <AppForm action="create-template" {...props} />;
return <AppForm action="create" {...props} />;
}
+2 -2
View File
@@ -29,7 +29,7 @@ export default function AppCard({
return (
<div className={`mb-4 mt-2 rounded-md border border-gray-200 ${!app.enabled && "grayscale"}`}>
<div className="p-4 text-sm sm:p-8">
<div className="p-4 text-sm sm:p-6">
<div className="flex w-full flex-col gap-2 sm:flex-row sm:gap-0">
{/* Don't know why but w-[42px] isn't working, started happening when I started using next/dynamic */}
<Link href={"/apps/" + app.slug} className="mr-3 h-auto w-10 rounded-sm">
@@ -37,7 +37,7 @@ export default function AppCard({
</Link>
<div className="flex flex-col">
<span className="text-base font-semibold leading-4 text-black">{app?.name}</span>
<p className="pt-2 text-sm font-normal leading-4 text-gray-600">
<p className="mb-2 pt-2 text-sm font-normal text-gray-600 ltr:pr-2 rtl:pl-2">
{description || app?.description}
</p>
</div>
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "other",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-19
View File
@@ -1,19 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "around",
appData: {
location: {
linkType: "static",
type: "integrations:around_video",
label: "Around Video",
urlRegExp: "^http(s)?:\\/\\/(www\\.)?around.co\\/[a-zA-Z0-9]*",
organizerInputPlaceholder: "https://www.around.co/rick",
},
},
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "caldavcalendar",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-19
View File
@@ -1,19 +0,0 @@
import type { App } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "other",
// FIXME: Currently for an app to be shown as installed, it must have this variable set. Either hardcoded or if it depends on some env variable, that should be checked here
installed: true,
rating: 0,
reviews: 0,
trending: true,
verified: true,
licenseRequired: true,
isProOnly: true,
dirName: "closecom",
...config,
} as App;
export default metadata;
-1
View File
@@ -1,3 +1,2 @@
export * as api from "./api";
export * as lib from "./lib";
export { metadata } from "./_metadata";
@@ -0,0 +1,8 @@
---
items:
- /api/app-store/ee/routing-forms/1.jpg
- /api/app-store/ee/routing-forms/2.jpg
- /api/app-store/ee/routing-forms/3.jpg
---
It would allow a booker to connect with the right person or choose the right event, faster. It would work by taking inputs from the booker and using that data to route to the correct booker/event as configured by Cal user
@@ -1,19 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "other",
// FIXME: Currently for an app to be shown as installed, it must have this variable set. Either hardcoded or if it depends on some env variable, that should be checked here
installed: true,
rating: 0,
reviews: 0,
trending: true,
verified: true,
licenseRequired: true,
isProOnly: true,
dirName: "routing-forms",
...config,
} as AppMeta;
export default metadata;
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 285 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

@@ -1,16 +0,0 @@
import type { App } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "calendar",
installed: true,
rating: 0,
reviews: 0,
trending: true,
verified: true,
dirName: "exchangecalendar",
...config,
} as App;
export default metadata;
@@ -1,3 +1,2 @@
export * as api from "./api";
export * as lib from "./lib";
export { metadata } from "./_metadata";
-11
View File
@@ -1,11 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "analytics",
dirName: "fathom",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "ga4",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-11
View File
@@ -1,11 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "automation",
dirName: "n8n",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
@@ -1,5 +1,6 @@
import type { Calendar as OfficeCalendar, User } from "@microsoft/microsoft-graph-types-beta";
import dayjs from "@calcom/dayjs";
import { getLocation, getRichDescription } from "@calcom/lib/CalEventParser";
import { handleErrorsJson, handleErrorsRaw } from "@calcom/lib/errors";
import logger from "@calcom/lib/logger";
@@ -239,6 +240,7 @@ export default class Office365CalendarService implements Calendar {
};
private translateEvent = (event: CalendarEvent) => {
const utcOffset = dayjs(event.startTime, event.organizer.timeZone).utcOffset() / 60;
return {
subject: event.title,
body: {
@@ -246,11 +248,11 @@ export default class Office365CalendarService implements Calendar {
content: getRichDescription(event),
},
start: {
dateTime: event.startTime,
dateTime: dayjs(event.startTime).utcOffset(utcOffset).format(),
timeZone: event.organizer.timeZone,
},
end: {
dateTime: event.endTime,
dateTime: dayjs(event.endTime).utcOffset(utcOffset).format(),
timeZone: event.organizer.timeZone,
},
attendees: event.attendees.map((attendee) => ({
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "office365video",
...config,
} as AppMeta;
export default metadata;
@@ -1,3 +1,2 @@
export * as api from "./api";
export * as lib from "./lib";
export { metadata } from "./_metadata";
-25
View File
@@ -1,25 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
// FIXME: Currently for an app to be shown as installed, it must have this variable set. Either hardcoded or if it depends on some env variable, that should be checked here
installed: true,
rating: 0,
reviews: 0,
trending: true,
verified: true,
appData: {
location: {
linkType: "static",
type: "integrations:ping_video",
label: "Ping.gg",
organizerInputPlaceholder: "https://www.ping.gg/call/theo",
urlRegExp: "^http(s)?:\\/\\/(www\\.)?ping.gg\\/call\\/[a-zA-Z0-9]*",
},
},
dirName: "ping",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "pipedream",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "analytics",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-11
View File
@@ -1,11 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "other",
dirName: "qr_code",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "rainbow",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-11
View File
@@ -1,11 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "other",
dirName: "raycast",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-25
View File
@@ -1,25 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
// FIXME: Currently for an app to be shown as installed, it must have this variable set. Either hardcoded or if it depends on some env variable, that should be checked here
installed: true,
rating: 0,
reviews: 0,
trending: true,
verified: true,
locationPlaceholder: "https://www.riverside.fm/studio/rick",
appData: {
location: {
label: "Riverside Video",
urlRegExp: "^http(s)?:\\/\\/(www\\.)?riverside.fm\\/studio\\/[a-zA-Z0-9]*",
type: "integrations:riverside_video",
linkType: "static",
},
},
dirName: "riverside",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "salesforce",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,3 +1,2 @@
export * as api from "./api";
export * as lib from "./lib";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "sendgrid",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,3 +1,2 @@
export * as api from "./api";
export * as lib from "./lib";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "signal",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "sirius_video",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
@@ -1 +0,0 @@
export { default as InstallAppButton } from "./InstallAppButton";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
dirName: "telegram",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-11
View File
@@ -1,11 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "other",
dirName: "typeform",
...config,
} as AppMeta;
export default metadata;
-1
View File
@@ -1,2 +1 @@
export * as api from "./api";
export { metadata } from "./_metadata";
-10
View File
@@ -1,10 +0,0 @@
import type { AppMeta } from "@calcom/types/App";
import config from "./config.json";
export const metadata = {
category: "other",
...config,
} as AppMeta;
export default metadata;

Some files were not shown because too many files have changed in this diff Show More