14 Commits

Author SHA1 Message Date
Rémi de Juvigny
5e751dbf11
feat: ai generated image metadata (#24422)
* feat: chat

feat: apply changes
feat: integrate with ctb

feat: marker

chore: remove comment

feat: new chat

feat: copy message

feat: upload modal

feat: upload file

feat: errors and stop chat

chore: refactor transforms
chore: format relations

chore: chat title

chore: remove architect dependency

feat: empt state

chore: improve text area focus

* feat: chat imports

feat: resizable text area
fix: re add chat
chore: translations
feat: env vars

fix: minor chat issues

feat: feedback

fix: rebase

feat: import folder

feat: limits

feat: attachments dropzone

chore: file attachments cleanup
chore: track chat id

feat: figma import

fix :token

feat: figma token
fix: attribute status when chat makes updates

feat: image upload

* feat: staging integration

* chore: remove logs

* feat: use tool call result instead of annotation

* fix: invalid component uid

* chore: chat input focus ring

* fix: ui issues

* fix: default draft and publish and do not modify singular name

* fix: minor transforms

* fix: linting

* test(front): update snapshots

* chore: fix misplaced getstarted project schema

* chore: remove unused import

* security: validate exact path of host

* fix: define process better for playwright to work

* fix: process env in vite config for playwright

* chore: use production url

* feat(ctb): Tracking events for AI Chat interaction (#23731)

* feat(content-type-builder): WIP tracking events for chat interactions

* fix: typescript build errors

* fix: event name and build errors

* chore: send ai key with analytics

* chore: actually send licenseKey

* chore: send ailicensekey with groupproperties

* fix: didStartNewChat

* chore: track new chats

* feat: enhance attachment type management in AI chat components

* fix: update chat status handling in ChatProvider component

* feat: add optional aiLicenseKey to Strapi interface

---------

Co-authored-by: Jamie Howard <jhoward1994@gmail.com>

* refactor: remove didusersendmessage tracking event (#23777)

* fix: merge conflict

* fix: send projectId to AI server

* feat: add a enabled config for AI features (#24060)

* feat: add getAiToken endpoint (#24172)

* feat: add getAiToken route

* fix: change route name, remove project id

* fix: type issue and fix schema

* feat: retrieve ai token from frontend (#24226)

---------

Co-authored-by: Jamie Howard <jhoward1994@gmail.com>

* fix: use primary500 for links in ai chat

* chore: migrate to AI SDK v5 (#24252)

* fix: migrate code for v5

* t:wq

* feat: push schemas to ctb

* chore: remove old code

* chore: remove ts-no-check

* chore: fix comment

* fix: ai server logs (#24318)

* test(back): fix error log tests

---------

Co-authored-by: Marc Roig <marc12info@gmail.com>

* fix: configure ai ctb csp middleware without overriding user or default config

* future(upload): generate image metadata on file upload (#24365)

* chore: create aiMetadata service with isEnabled

* chore: extract getAiToken to service

* fix: unit test

* future(upload): generate metadata with ai

* fix: ts build

* fix: only send images to ai server

* test: add unit tests

* fix: unit test

---------

Co-authored-by: markkaylor <mark.kaylor@strapi.io>

* AI media lib bulk update (#24414)

* feat(packages): adding endpoint for bulk update

* feat(packages): linting

* feat(packages): adding tests

* feat(packages): cleanup

* feat: guided tour for ai ctb (#24411)

* feat(upload): adding aiMetadata into settings (#24468)

feat(upload): adding aiMetadata into settings

* feat: add AI upload modal (#24407)

* chore: create aiMetadata service with isEnabled

* chore: extract getAiToken to service

* fix: unit test

* future(upload): generate metadata with ai

* feat: add AI upload modal

* feat: add edit and delete to upload modal

* fix: remove sparkle icon on edit

* fix: add error handling

* chore: refactor ai upload modal reducer

* fix: catch ai token generation error

* chore: add useBulkEdit hook

* feat: connect to bulk edit endpoint

* fix: e2e test

* fix: ci in both ce and ee

---------

Co-authored-by: Rémi de Juvigny <remi.dejuvigny@strapi.io>
Co-authored-by: Rémi de Juvigny <8087692+remidej@users.noreply.github.com>

* feat(upload): applying ai enabled logic for media library (#24486)

feat(upload): applying ai enabled logic for media library

* fix: sparkle icon

* fix: set ai server prod url

* fix: default config to enabled

* fix: cursor moving to the end when editing text

* fix: upload in the right folder

* fix: close modal when deleting last item

* chore: use STRAPI_AI_URL everywhere

* fix: bulk upload from frontend

* fix: restore sparkle icon on inputs

* fix: unit test ci

* feat(upload): generating metadata from thumbnail (#24515)

* feat(upload): generating metadata from thumbnail

* feat(upload): fixing linting issue

* feat(upload): fixing tests and addressiing feedback

* feat(upload): fixing lint

* fix: check for cms-ai entitlement

* fix: tests

* fix: race condition failing front unit tests

---------

Co-authored-by: Marc-Roig <marc12info@gmail.com>
Co-authored-by: Ben Irvin <ben@innerdvations.com>
Co-authored-by: Bassel Kanso <bassel.kanso@strapi.io>
Co-authored-by: Ben Irvin <ben.irvin@strapi.io>
Co-authored-by: Jamie Howard <jhoward1994@gmail.com>
Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com>
Co-authored-by: Bassel Kanso <basselkanso82@gmail.com>
Co-authored-by: Ziyi <daydreamnation@live.com>
Co-authored-by: markkaylor <mark.kaylor@strapi.io>
Co-authored-by: Araksya Gevorgyan <31159659+araksyagevorgyan@users.noreply.github.com>
Co-authored-by: Adrien L <thewebsdoor@gmail.com>
2025-10-07 06:14:34 -04:00
Adrien L
6d264f56ba
feat: key statistics homepage widget (#23938) 2025-07-31 09:36:25 +02:00
Ben Irvin
f3ad685d4b
feat: reordering for polymorphic relations in Content API (#21928)
Co-authored-by: Marc Roig <Marc-Roig@users.noreply.github.com>
Co-authored-by: Marc <marc.roig.campos@strapi.io>
2024-11-08 09:07:22 +01:00
Ben Irvin
1a60292e6f
test(api): enable graphl and upload tests (#21500) 2024-10-01 11:31:13 +02:00
Ben Irvin
5f91e4a18b
fix: allow morphToMany relation ordering in sanitize and validate (#21260)
* fix: allow morphToMany fields in sanitize and validate

* fix: don't create options if it didn't exist

* test: add unit tests for morph relations properties

* chore: comment

* test: media relations

* fix: invalid morphToMany relations

* chore: remove log

* chore: comment

* chore: comment

* revert: replace comment that was removed

* revert: fix missing data

* test: import correct error
2024-09-13 17:00:51 +01:00
Mark Kaylor
94657d7e77 Merge branch 'develop' of github.com:strapi/strapi into chore/merge-develop-to-v5-main 2024-06-06 17:03:30 +02:00
Jean-Sébastien Herbaux
adb9db5660
Fix: Query Validation in Files' Admin API (#20389)
Co-authored-by: Ben Irvin <ben.irvin@strapi.io>
2024-06-05 15:47:11 +02:00
Convly
33413bf56c fix: style 2024-05-30 13:34:00 +02:00
Convly
481550a0d4 Merge branch 'refs/heads/develop' into v5/main
# Conflicts:
#	.github/actions/check-pr-status/package.json
#	docs/docs/docs/01-core/admin/05-features/authentication.md
#	docs/docusaurus.config.js
#	docs/yarn.lock
#	examples/getstarted/package.json
#	examples/kitchensink-ts/package.json
#	examples/kitchensink/package.json
#	examples/plugins/workspace-plugin/package.json
#	lerna.json
#	package.json
#	packages/admin-test-utils/package.json
#	packages/cli/create-strapi-app/package.json
#	packages/cli/create-strapi-starter/package.json
#	packages/cli/create-strapi/package.json
#	packages/core/admin/admin/src/App.tsx
#	packages/core/admin/admin/src/components/AuthenticatedApp.tsx
#	packages/core/admin/admin/src/components/Context.tsx
#	packages/core/admin/admin/src/components/LeftMenu.tsx
#	packages/core/admin/admin/src/components/PrivateRoute.tsx
#	packages/core/admin/admin/src/content-manager/pages/ListSettingsView/index.jsx
#	packages/core/admin/admin/src/content-manager/pages/ListView/components/BulkActions/PublishAction.tsx
#	packages/core/admin/admin/src/content-manager/pages/ListView/components/TableCells/CellContent.tsx
#	packages/core/admin/admin/src/features/Configuration.tsx
#	packages/core/admin/admin/src/index.ts
#	packages/core/admin/admin/src/pages/ProfilePage.tsx
#	packages/core/admin/admin/src/pages/UseCasePage.tsx
#	packages/core/admin/ee/server/src/services/metrics.ts
#	packages/core/admin/package.json
#	packages/core/admin/server/src/bootstrap.ts
#	packages/core/content-manager/package.json
#	packages/core/content-releases/admin/src/components/CMReleasesContainer.tsx
#	packages/core/content-releases/admin/src/components/ReleaseListCell.tsx
#	packages/core/content-releases/admin/src/index.ts
#	packages/core/content-releases/admin/src/pages/ReleaseDetailsPage.tsx
#	packages/core/content-releases/admin/src/pages/tests/ReleaseDetailsPage.test.tsx
#	packages/core/content-releases/admin/src/services/release.ts
#	packages/core/content-releases/package.json
#	packages/core/content-releases/server/src/controllers/release.ts
#	packages/core/content-type-builder/package.json
#	packages/core/core/.gitignore
#	packages/core/data-transfer/package.json
#	packages/core/database/package.json
#	packages/core/database/src/query/helpers/populate/apply.ts
#	packages/core/email/package.json
#	packages/core/helper-plugin/package.json
#	packages/core/permissions/package.json
#	packages/core/strapi/package.json
#	packages/core/types/package.json
#	packages/core/upload/admin/src/components/AssetDialog/BrowseStep/tests/__snapshots__/index.test.jsx.snap
#	packages/core/upload/admin/src/pages/App/ConfigureTheView/components/tests/__snapshots__/Settings.test.jsx.snap
#	packages/core/upload/admin/src/pages/App/ConfigureTheView/tests/__snapshots__/ConfigureTheView.test.jsx.snap
#	packages/core/upload/package.json
#	packages/core/upload/server/services/provider.js
#	packages/core/upload/server/services/upload.js
#	packages/core/upload/server/src/services/image-manipulation.ts
#	packages/core/upload/server/tsconfig.eslint.json
#	packages/core/utils/package.json
#	packages/generators/app/package.json
#	packages/generators/app/src/utils/db-client-dependencies.ts
#	packages/generators/generators/package.json
#	packages/plugins/cloud/package.json
#	packages/plugins/color-picker/package.json
#	packages/plugins/documentation/package.json
#	packages/plugins/graphql/package.json
#	packages/plugins/i18n/admin/src/components/LocaleListCell.tsx
#	packages/plugins/i18n/admin/src/contentReleasesHooks/releaseDetailsView.ts
#	packages/plugins/i18n/admin/src/index.ts
#	packages/plugins/i18n/package.json
#	packages/plugins/sentry/package.json
#	packages/plugins/users-permissions/package.json
#	packages/providers/email-amazon-ses/package.json
#	packages/providers/email-mailgun/package.json
#	packages/providers/email-nodemailer/package.json
#	packages/providers/email-sendgrid/package.json
#	packages/providers/email-sendmail/package.json
#	packages/providers/upload-aws-s3/package.json
#	packages/providers/upload-cloudinary/package.json
#	packages/providers/upload-local/package.json
#	packages/utils/api-tests/package.json
#	packages/utils/eslint-config-custom/package.json
#	packages/utils/logger/package.json
#	packages/utils/tsconfig/package.json
#	packages/utils/typescript/package.json
#	packages/utils/upgrade/LICENSE
#	packages/utils/upgrade/bin/upgrade.js
#	packages/utils/upgrade/package.json
#	packages/utils/upgrade/packup.config.ts
#	scripts/front/package.json
#	tests/e2e/constants.ts
#	tests/e2e/tests/content-releases/releases-page.spec.ts
#	yarn.lock
2024-05-30 13:12:27 +02:00
Ben Irvin
18019758d6
enhancement!: create sends 201 status code 2024-04-15 14:03:47 +02:00
Josh
e188aac623 Merge branch 'develop' into v5/main 2024-04-08 15:21:08 +01:00
Alexandre Bodin
9dfe475e63 chore: add tests 2024-04-03 13:12:36 +02:00
Ben Irvin
2ef71bdf4c Merge branch 'develop' into v5/main 2024-04-02 16:25:24 +02:00
Ben Irvin
cf82c830d8
test: restructure test dirs 2024-04-02 11:19:43 +02:00