1345 Commits

Author SHA1 Message Date
Daniel Biegler
c893b9fa65 Add public registration (#22125)
* WIP: add new register dummy-route

* fix notice on register route

* WIP register form

* WIP: registering ui and controller for testing

* fix lint ordering problem

* wip: users service

* add migration, initial style for fields in settings

* redo how emails will be filtered

* WIP add filter in the register handler

* conditionally render register link depending on settings

* WIP: add email validation

* wip add email sending

* make clicking the email link work

* rm console log

* update controller

* dont send emails for existing emails

* add translation

* only show register link when unauthenticated

* add different redirects

* only allow selecting non-admin roles

* redirect to users page

* update translation

* move logic from controller to usersservice

* rm remnant of logic from controller

* add stall time to registration

* update translation

* rm comments

* rm unused var

* add changeset

* update translation for success

* remove sso related stuff from registration

* also allow setting first and last name

* update error check

* add @directus/errors to app

* replace error strings with enum

* rename to public_registration

* rename to public_registration_verify_email

* add notes to fields

* add types package to changeset

* dont stall if no work is being done

* allow null-role and resending of reg. email

* add public registration env vars, rm RATE_LIMITER_GLOBAL_STORE

RATE_LIMITER_GLOBAL_STORE wasnt being used. Lets just stick to RATE_LIMITER_STORE for all rate limiters. TODO: also remove from docs!

* use ratelimiter for registration, use stall time env var

* add registration limiter docs, rm global store variable from docs

* update changeset

* add ignore-notice

Co-authored-by: Hannes Küttner <4376726+hanneskuettner@users.noreply.github.com>

* use and document new `EMAIL_VERIFICATION_TOKEN_TTL`, also doc `REGISTER_STALL_TIME`

* change variable name

Co-authored-by: ian <licitdev@gmail.com>

* apply variable rename to usage

* change backticks to single quote

Co-authored-by: ian <licitdev@gmail.com>

* inline variables

* add fields to server info, update types

- The other ratelimiters also expose points and duration, done
- Add `public_registration_verify_email` so that we can render different success messages

* tiny wording tweak of registration mail

* add new user status 'unverified' and check for it

* add unverified status translation

* decouple email verification and validation

* enable register rate limiter by default and up its config

* add autocomplete=new-password on the registration form

* added sdk functions

* add gql query for new fields

* added register api reference

* updated verify sdk function name

* added reference block for email verify endpoint

* updated reference examples

* WIP: add gql resolvers

* add ratelimiter to mutation

* remove ratelimiter registration point+duration info

* rm points and duration from gql

* Update docs/reference/system/users.md

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

---------

Co-authored-by: Hannes Küttner <4376726+hanneskuettner@users.noreply.github.com>
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Brainslug <tim@brainslug.nl>
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-05-07 23:20:24 +02:00
dependabot[bot]
9ae3f175ab Bump vue from 3.4.26 to 3.4.27 (#22406)
Bumps [vue](https://github.com/vuejs/core) from 3.4.26 to 3.4.27.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.4.26...v3.4.27)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-07 07:27:38 +02:00
Rijk van Zanten
ec2604f913 Don't require KEY or SECRET to be set on startup (#22320)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-05-06 13:00:10 +00:00
ian
df254cc093 Add falsy fallback condition to search query (#22342)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Hannes Küttner <4376726+hanneskuettner@users.noreply.github.com>
2024-04-30 11:02:57 +02:00
Pascal Jufer
160b982928 Patch Tuesday 🐸 (#22063)
Co-authored-by: Hannes Küttner <4376726+hanneskuettner@users.noreply.github.com>
2024-04-30 10:49:20 +02:00
Hannes Küttner
31d73c6fa7 [Docs] Prevent icon translation in components and markdown sources (#22313)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-04-25 12:54:47 +00:00
Alex van der Valk
57a39d54f1 docs - add cache auto purge to compose (#22305)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-04-24 09:45:23 +00:00
Brainslug
f4c4457c17 updated credentials (#22257) 2024-04-19 14:06:40 +02:00
Alex van der Valk
5398180c03 add warning in webhooks docs page (#22242) 2024-04-18 15:08:27 +02:00
José Varela
476a2482ad Api: Clear system cache only if specified on /utils/cache/clear (#22234)
* Clear system cache only if specified

* Add changeset

---------

Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2024-04-17 17:07:10 -04:00
José Varela
bf47a19428 API: Prevent endless loop on get-schema (#22230)
* Prevent endless loop on `get-schema`

* Make magic value configurable

* Fix linter warning

* Add changeset

---------

Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2024-04-17 15:50:27 -04:00
dependabot[bot]
37b053e174 Bump vue from 3.4.22 to 3.4.23 (#22218)
Bumps [vue](https://github.com/vuejs/core) from 3.4.22 to 3.4.23.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.4.22...v3.4.23)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-17 08:09:10 +02:00
dependabot[bot]
509fed7c4d Bump vue from 3.3.8 to 3.4.22 (#22202)
Bumps [vue](https://github.com/vuejs/core) from 3.3.8 to 3.4.22.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.3.8...v3.4.22)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-16 09:46:12 +02:00
José Varela
75c03bdd99 Api / Graphql : Allow version as singleton argument on singleton (#22184)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-04-12 10:50:32 +00:00
Bryant Gillespie
4638147591 Update reusable-components.md (#22170) 2024-04-11 13:04:51 +00:00
Nico
b983d1fcf0 Add env variables to configure PM2 log paths + documentation (#22155)
* Add env variables to configure PM2 log paths + documentation

* Sign Contributor License Agreement

* Run prettier fix

* Add changeset

---------

Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2024-04-10 11:01:45 -04:00
Kimia Abtahi
80187aef13 Fix wrong trigger type hook to correct event in flows.md (#22141) 2024-04-09 16:31:13 +02:00
ian
cea3ea9bc6 Remove v-image deprecation notice (#22106) 2024-04-05 16:17:45 +02:00
dependabot[bot]
aaaf509188 Bump typedoc from 0.25.10 to 0.25.12 (#22058)
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.25.10 to 0.25.12.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.25.10...v0.25.12)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-03 08:16:18 +02:00
ian
91e17f9252 Update Twilio hook guide to use the errors package (#22037)
Co-authored-by: Pascal Jufer <paescuj@users.noreply.github.com>
2024-04-01 14:49:54 +02:00
Aprilia
6e435c6300 Fix code in react real-time chat guide (#22035) 2024-04-01 09:35:26 +02:00
Brainslug
988bc8762e [App] Migrate authentication and refreshing to the SDK (#21938)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-03-31 14:28:11 +02:00
daedalus
aa5f13063f docs(email templates): incorrect sample path (#22022) 2024-03-29 22:34:10 +01:00
José Varela
dbf6667850 Docs / SSO: Fix docs about session cookie on Seamless mode (#21983)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-03-26 16:47:34 +00:00
Brainslug
0950fe9472 Docs update content version description (#21905) 2024-03-20 12:45:26 +01:00
dependabot[bot]
43fc9ce797 Bump eslint-plugin-react from 7.34.0 to 7.34.1 (#21899)
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.34.0 to 7.34.1.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/v7.34.1/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.0...v7.34.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-19 11:37:53 +01:00
Brainslug
75c6e2b092 SDK Custom Endpoint Helper (#21850)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-03-14 17:19:13 +01:00
Pascal Jufer
4fcc053d2a Move @directus/format-title into the monorepo (#21847) 2024-03-14 10:33:47 -04:00
dependabot[bot]
16d1554d85 Bump marked from 12.0.0 to 12.0.1 (#21841)
Bumps [marked](https://github.com/markedjs/marked) from 12.0.0 to 12.0.1.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v12.0.0...v12.0.1)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-14 01:07:30 +00:00
daedalus
7bea23b7f5 Add the ability to configure the error, bug and feature URLs (#21174)
* add report url fields

* update field template to be agnostic

* add changeset

* various fixes

* rename handler to load path level

* add translations

* updated docs

* fix tests

* add placeholder support for system-display-template

* refactor project to report and move to their own settings section

* example urls should be more concrete

Co-Authored-By: Pascal Jufer <5363448+paescuj@users.noreply.github.com>

* move hardcoded default report urls to constants

Co-Authored-By: Pascal Jufer <5363448+paescuj@users.noreply.github.com>

* Make nav reactive, so URL changes are immediate

* change order of report urls

* change icon to feedback

* move composable to top level

* remove ref, use from prop

* Update .changeset/tender-timers-develop.md

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* rm select_a_collection_or_tree_fields translation key

---------

Co-authored-by: Pascal Jufer <5363448+paescuj@users.noreply.github.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
2024-03-13 15:04:25 +01:00
Pascal Jufer
747503b7f8 Add breaking change note for Send Email operation (#21804) 2024-03-13 10:48:39 +01:00
Pascal Jufer
76306ae953 Optimize error messages in docs newsletter form (#21791) 2024-03-13 10:48:11 +01:00
Rijk van Zanten
f0e910ee58 Add LRU cache to GraphQLSchema generation (#21783)
* Install mnemonist

* Add LRU cache for graphql schema

* Add changeset

* Update api/src/services/graphql/index.ts

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* Add env var to /env and docs

---------

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-03-11 17:23:34 -04:00
Rijk van Zanten
c24dc0079a Add REDIS_ENABLED env var (#21809)
* Add REDIS_ENABLED env var

* Add changeset

* Remove previous attempt
2024-03-11 17:08:50 -04:00
Pascal Jufer
c9cfda4fdb Update docker guide docs to persist extensions volume (#21725) 2024-03-08 17:51:54 -05:00
Joël Kuijper
5c1f3d441e docs: broken link on home page (#21759) 2024-03-08 17:58:11 +01:00
Pascal Jufer
0ef1f3dd3e Fix loading of Sandbox Operation Extensions (#21751) 2024-03-08 09:24:02 +01:00
Rijk van Zanten
839fdb10bd Add missing var 2024-03-07 17:29:11 -05:00
Rijk van Zanten
3072a1aa57 Document max limit 2024-03-07 14:48:12 -05:00
Rijk van Zanten
5aa949bcfc Soften note language 2024-03-06 16:24:40 -05:00
Rijk van Zanten
bd168545d0 Add support for EMAIL_TEMPLATES_PATH (#21729)
* Load custom templates from templates path

* Fix name

* Add changeset

* Fix missing env vars in tests

* Fix name typo

* Move email templates to self hosted section

* Add breaking change note

* Add redirect for old file
2024-03-06 15:48:21 -05:00
Kevin Lewis
740b7ca48b Docs: Move Migrations out of Extensions (#21719)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-03-06 13:14:40 +00:00
dependabot[bot]
d4be67e6ab Bump eslint-plugin-react from 7.33.2 to 7.34.0 (#21708)
Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.33.2 to 7.34.0.
- [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases)
- [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.33.2...v7.34.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-react
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-06 10:16:36 +01:00
Pascal Jufer
6a4b9ba942 Remove outdated hint about npm in marketplace docs (#21705) 2024-03-05 16:48:46 -05:00
Kevin Lewis
d12b7c9033 Clarified that extension type subdirectories must be removed (#21696)
* Clarified that extension type subdirectories must be removed

* Update docs/releases/breaking-changes.md

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* Improve language on extensions type breaking change

* Add changeset

---------

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2024-03-05 15:34:32 -05:00
Pascal Jufer
82b23a57d4 Add the Directus Marketplace (#21674)
* Add support for MIGRATIONS_PATH (#20627)

* Deprecate "local" extension types (#20624)

* No longer resolve local non-package extensions

* Remove local extensions from watcher

* Install fs-extra for app dev

* Replace usage of get-extensions

* Rename create functions to match behavior

* Drop extensions prefix from cli create

* Drop name requirement from cli add

* Drop extensions name regex checks

* Don't rely on regex for extension identification

* Add changeset

* Fix build for @directus/extensions

* Don't ensure nested dirs

* Load npm dependency by name prefix

* Throw more helpful error when pkg json is missing

* Fix dependency loading paths

* Only load local extensions if extensions path exists

* Fix merge conflict

* Remove unused fs-extra

* Only sync extensions if location is defined

* `extensions` -> `localExtensions`

* Fix resolving of package extensions

- consistent usage of term "package extensions"
- enhance error messages

* Fix syncing extension from storage

* Revert-revert change from #20627

---------

Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* Add back `MIGRATIONS_PATH` to `@directus/env` (#21053)

* Setup browse endpoint for browsing Directus extensions (#21033)

* Rename tag directus-custom to directus-extension

* Devil's in the details

* [WIP] Start on search lib

* Setup extensions-registry package

* Update pnpm lock

* Move registry search fn to new package

* Squash bugs

* Remove unused deps

* Remove unused dep in `extensions`

* Add tests for validate-limit

* Finish test coverage

* Remove unused constant

* Add back lodash-es 😇

* Install extensions-registry

* Add default keywords

* Expose registry endpoint in rest api

* Add describe module

* Reinstal pnpm

* Drop reliance on author field

The problem is that there's no requirement for it to be a valid(ated) user. Publisher is the only field we can rely on being an existing NPM user.

* Update convertSearchResult test after author change

* Format

* Allow anything after the route

To support packages with scopes

* Add test for describe

* Add more tests

* Throw unprocessablecontenterror instead of error

* Install errors pkg

* Finish test coverage

* Don't require description

* Don't wrap individual keywords

* Run formatter

* Add changeset

* Update packages/extensions-registry/src/modules/search/utils/validate-text.ts

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* Return sandbox information

* Drop support for directus-custom keyword

* Set type to null for multiple tags

* Restart api for new registry

* Add version utility

* Add out-of-date error

* Add assertion for api versions

* Finish new list method

* Add describe

* Use updated registry functions

* Fix controller usage

* Return output in data flag to be consistent

* Add tests for the describe module

* Add tests for list module

* Finish tests for extensions-registry package

* Remove vscode shenanigans

---------

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* Project Forum: Browse UX (#21276)

* Render marketplace route in-app

* Update api list integration

* Add support for limit/offset in list

* Boilerplate route for drawer

* Render extension readme in drawer

* Render extension detail as separate page

* Setup markup for extension banner

* Render readme with markdown styling

* Boilerplate metadata block

* Use v-list for extension metadata metrics

* Render compatibility metric

* Show downloads and publish date

* Refactor to individual files

* Fix missing import

* Add size metric

* Show author on metadat

* Show verified badge

* Finish metadata

* Run formatter

* Style forum detail banner (#21290)

* Style banner contents

* Add background art

* Add banner styles to default dark mode theme

* Undo base style change to avoid conflict

* Add beta chip badge to settings nav (#21296)

* Add layout styling for detail page (#21297)

* Render metadata as grid if size allows

* Finish layout for detail page

* Fix alignment of count

* Fix search-input active state

* Finalize forum header

* Add marketplace banner

* Style registry filter

* Change v-list-item height to min-height

Allows rows for forum registry to grow

* Finalize styling for extension list item

* Finalize styling for registry

* Don't rely on format util

* Forum account detail page (#21299)

* Add support for author describe endpoint

* Boilerplate author page

* Add author endpoint

* Update naming to account

* Render github name on registry list

* Render user's name + avatar on detail

* Load account data on account page

* Restructure module

* Render account banner on account page

* Render account metadata

* Finish account detail page

* Run formatter

* Add sidebar info detail sections

* install extensions from registry (#21070)

* added an endpoint to install extensions from registries

* add changeset

* Revert format/lint scripts

* Update pnpm-lock

* Remove unused dependency

* Add download module to extensions-registry abstraction

* Download from extension registry instead of direct npm

* Throw on error

* Install based on version ID rather than name

* Install based on ID in body

Allows us to extend it in the future if need be

* Download to tmp path instead of extensions

* Save to extensions manager flattened

* Use const for package folder name

* Run more in try/catch to avoid server exit

* Remove changeset

* Undo docs updates

We'll do all docs in a single PR :)

---------

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>

* Manage extensions by directus_extensions primary key instead of npm package name (#21300)

* Add marketplace migration

* Include bundle info

* Rename name to folder

* Store name as folder

* [WIP] Change name to ID

* Update API to use UUIDs for extensions

* Update app to use extensions id

* Run formatter

* Add changeset

* Update generate-app-entrypoint to use updated format

* Fix graphql usage

* Format

* Add forum uninstall endpoint (#21301)

* Bootstrap uninstall

* Finish uninstall endpoint

* Use shared extensions store state for managing extensions in settings (#21317)

* Use extensionsstore for extensions management

* Use shared store for extensions state and modification

* Remove unused emit

* Adds install/uninstall GUI elements for project forum (#21319)

* Use warning color for incompatible

* Styling tweaks

* Transition optional background color

* Add keys for installing

* Add install button to extension detail

* Finish install button

* Add uninstall option to extensions item

* Empty local cached extensions on start

* Add (hopefully) temporary hack to await reload

* Add install / uninstall buttons

* Update lockfile

* Fix bundle entries not rendering properly

* Clean up spinner styling

* Properly wait for reload to be done

* Run formatter

* Fix registry name

* Fix local extension loading

* Render location/company in byline

* Rearchitect metadata to unstyled listitems

* Add max-width to page container

* Only allow admins to install/uninstall extensions

* Remove unused link

* Disable eslint for map use

* Run formatter

* Add no-results indicator (#21389)

* Add no-results indicator

* add error state as well

* Standardize trailing slash

* Standardize pk check

* Resolve unnecessary check

* Move all deps to dev deps in app

* Optimize exec order

* Pull data from top level package

* Redesign filter bar

* Reset page count on filter change

* Use default padding on top of page

Feels weird now, but there's a theme-update coming that'll make this make sense :)

* Show first/last in pagination

* Auto-format package name

* Use updated registry api return names

* Add sorting by total downloads

* Add sparkline for downloads

* Add a bit of padding

* Finalize sparkline styling

* Run formatterg

* Add sandbox flag in list call

* Add MARKETPLACE_TRUST env var

* Set sandbox requirement on download

* Render list item badge

* Fix padding

* Show license in gui

* Add support for multiple maintainers

* Add activity tracking for install

* Make incompatibility notice friendlier

* Tweak margin of sparkline

* Update default CSP headers to include github content

* Make extension readme selectable

* Consistent icon, add tooltips

* Reduce size of install button

* Run formatter

* Render readme anchors with target blank

* Add min width to v-select components

* Fix background on search input

* Reduce padding on marketplace pages

* Fix showing no results

* Be consistent

* Render type filter menu in full height

* Clean up compatibility notice

* Hide count result when search count is 0

* Use v-show instead

* Bump no results notice down a bit

* Cleanup size of install buttons

* Use buttons for install / author

* Fix sparkline rendering

* Add better loading state for extension detail page

* Add spinners

* Render proper error message in case readme is missing

* Use heart logo for marketplace

* Add image border shadow

* Add loading banner on account page

* Show reload warning as persistent notification

* Only show one notification

* Update snapshot

* Add padding to verified icon

* Base extensions id on package id, show installed badge

* Sync pagination / search / filter with URL

Special shoutout to Tim

* Next max ext (#21541)

* Add limit exceeded error

* Add limit exceeded translation

* Add extensions_limit env var

* Load extensions limit in app

* Don't allow installing unknown versions

* Don't require installed flag

* Return bundled entries in describe

* Update chip to match style

* Prevent install on limit reached

* Run formatter

* Fix bundle loading

* Resolve npm extensions by package manifest (#21478)

* Merge main into next (#21669)

* Clean-up deps

* Don't export type (as long as not used anywhere)

* Update semver to latest

* Relax compatibility notice

* Use more suitable icon for version

* Re-render download charts on color-scheme change

* Link extensions to marketplace

---------

Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Mahendra Kumar <22556323+mahendraHegde@users.noreply.github.com>
2024-03-04 14:34:59 -05:00
Azri Kahar
a9b628baa6 Deep merge relational fields in content versions (#21386)
* deep merge content version saves

* update content version graphql

* moved version merging to its own middleware

* added query param to request the unmodified version

* make sure the App uses the raw version format

* prettier

* removed unused middleware

* initial recursive version merging

* use loop instead of spreading

* cleanup

* accept boolean strings as versionRaw query value

* added middleware sanity check

* initial mergeVersionsRaw tests

* initial mergeVersionsRaw tests

* started merge tests

* initial m2o tests

* initial tests

* fixed logic for initial tests

* prettier

* more tests

* fixed brought up by tests

* first level relational tests

* testing nested relations

* fixed recursiveness

* more prettier

* namin consistency

* the prettiest

* Create chilled-icons-provide.md

* Add breaking change note

* updated graphql for version merging

* prettier

* added new sdk query param

* implemented judds feedback

* Enable singleton

* Slightly reformat/reword breaking change

Thanks @w0kyj!

* Clarify comment about primitive type substitution

Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com>

* replaced for in loops

* applied isObject check

* prettier

* Short issue link

* Update changeset

* added sso guide warning

* pretttier

* update sso guide instead of warning

* prettier

* reverted SSO guide from other PR, nothing to see here

* Added cloneDeep to be safe

* removed snake case

---------

Co-authored-by: Brainslug <tim@brainslug.nl>
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com>
2024-03-04 11:57:51 -05:00
Brainslug
37a63bd9ea Added redirect allow list note (#21679)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2024-03-04 14:34:15 +00:00
Brainslug
0be4703c7f updated SSO docs for the new session token (#21677) 2024-03-04 15:29:40 +01:00
Kevin Lewis
5c312f8bee Removed sections (#21676) 2024-03-04 11:48:03 +00:00