Commit graph

64 commits

Author SHA1 Message Date
Krzysztof Wolski
238f2b5d01
Cache query cursors for the product feed and support s3 (#478)
* Cache query cursors for the product feed

* Fix missing first page of products

* Add S3 upload

* Explain sze limit on multipart upload

* Change the name of function

* Update the dependencies

* Revert api response size override

* Fix multi part upload

* Remove duplicated code

* Add channel name to the file URL
2023-05-22 12:22:28 +02:00
Lukasz Ostrowski
4801803ea0
Sentry missing config (#481)
* Add Sentry config to Emails & Messages app

* Add Sentry config to Product Feed app

* Add Sentry config to CRM app

* ADd changeset

* Clean up sentry boilderplate
2023-05-21 18:28:17 +02:00
Lukasz Ostrowski
5e903aed00
Metadata Migrations script (#453)
* Create a package

* wip

* wip

* wip

* wip

* Move migration script to invoices

* Add migration script

* Update SDK to fix getAll method

* Add restoring migration script

* Add migrations consts

* Add changesets

* cr fixes
2023-05-18 14:55:52 +02:00
Lukasz Ostrowski
7c9a9a2890 Add debug logs for CMS 2023-05-18 10:49:44 +02:00
Adrian Pilarczyk
ba7c3de471
feat: add basic breadcrumbs component (#470)
* feat:  add empty packages/ui

* feat: ⚗️ move taxes app-grid to packages/ui

* build: ⬆️ upgrade macaw-ui in packages/ui

* add app sdk

* feat:  add basic breadcrumbs component

* refactor: ♻️ simplify breadcrumbs api

* Update packages/ui/src/breadcrumbs.tsx

Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>

* refactor: 🔥 next-env.d.ts

* refactor: ♻️ address breadcrumbs feedback

* chore: 🔥 remove eslint disable

* build: 👷 add changeset

---------

Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>
2023-05-18 09:37:51 +02:00
Lukasz Ostrowski
c4063188ca
Update app-sdk to 0.38.0 (#464) 2023-05-17 18:57:09 +02:00
Lukasz Ostrowski
24615cf7c1
Add SemanticChip shared component (#471)
* feat:  add empty packages/ui

* feat: ⚗️ move taxes app-grid to packages/ui

* build: ⬆️ upgrade macaw-ui in packages/ui

* build: ⬆️ upgrade macaw even harder

* add app sdk

* Fix app-sdk version

* Add SemanticChip

* update lock

---------

Co-authored-by: Adrian Pilarczyk <adrianpilarczyk314@gmail.com>
2023-05-16 20:41:52 +02:00
Adrian Pilarczyk
403bcf87ec
Add packages/ui shared package - root branch (#467)
* feat:  add empty packages/ui

* feat: ⚗️ move taxes app-grid to packages/ui

* build: ⬆️ upgrade macaw-ui in packages/ui

* build: ⬆️ upgrade macaw even harder

* add app sdk

* Fix app-sdk version

* refactor: 🔥 remove usage in taxes

* refactor: 🔥 remove changes in turbo.json

* refactor: ♻️ address feedback

* build: ⬆️ unify next macaw-ui version in apps (#472)

* build: ⬆️ unify next macaw-ui version in apps

* Create tricky-islands-remember.md

---------

Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>

---------

Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>
2023-05-16 19:36:53 +02:00
Lukasz Ostrowski
8b22b1c1f8
Fix logs (#452)
* Add pino and pino-pretty to every package, to fix logger failing

* Fix taxes child logger

* Fix Search child logger

* Update examples .env

* changeset
2023-05-10 16:57:20 +02:00
Lukasz Ostrowski
1b3680465f
Invoices redesign to Macaw Next (#445)
* Removed old macaw and material

* Add trpc router that fetches shop address info

* Config page layout with header and address

* display default addres

* Draft channels list

* add v2 config model

* Render address overrides

* Render address overrides ui

* connect address form

* reset address form

* implement removing conifg

* connect dashboard sites

* update webhook

* Add ConfigV1 to ConfigV2 transformer

* Cleanup v1 router, abstract v2

* Implement runtime migrations

* Implement migration service in controllers

* test for configuration service

* test for app cofnig

* draft test for router

* refactor webhook

* Unify Address schema to single one

* Extractr data fetching from form
2023-05-09 12:17:54 +02:00
Lukasz Ostrowski
830cfe92ce
Extract logger (#439)
* Extract logger

* Replace logger with shared one

* Replace CRM logger with shared one

* Replace E&M logger with shared one

* Replace invoices logger with shared one

* Replace Products Feed logger with shared one

* Replace Search logger with shared one

* Replace Taxes logger with shared one

* Uninstall pino from apps direct dependency

* Update docs

* Update changeset

* Bumped Klaviyo typescript version to hopefully unblock the build

* Change packageManager field to pnpm 8.2.0

* removed package manager field from klaviyo package.json
2023-05-05 08:15:47 +02:00
Lukasz Ostrowski
40bed99316
Webhooks optimization (#434)
* Disable webhooks in manifest and create graphql operations

* Add webhook enabler service

* Add webhooks to subscription events

* Disable webhooks when webhok operation fail

* display webhooks status

* Display failed deliveries

* Use react query in webhooks-status, refetch it when configu updated

* Extracted main instructons

* Better webhook instructions

* Optimize webhooks fetching from subscription

* Test for WebhooksAcivityToggler

* Changeset

* Test for webhook status handler WIP

* Test wip

* Rewrite test
2023-04-29 11:30:48 +02:00
Lukasz Ostrowski
112bed4a0b
Add test for CUSTOMER_CREATED webhook in CRM app (#422)
* Add test for CUSTOMER_CREATED webhook in CRM app

* remove log
2023-04-25 18:57:17 +02:00
Lukasz Ostrowski
fc7a70f598
Search redesign to Macaw 2.0 (#420)
* Redesign

* Better form

* Remove searchKey

* Update macaw

* Test setup

* fix build

* Create curly-jars-doubt.md

* Unify vitest to (hopefully) fix build

* fix lock

* update macaw and review fixes

* fix build
2023-04-25 18:20:20 +02:00
Dawid
a3636f73ef
Fix CMS app issues (#386)
* Fix CMS app visual issues

* Add provider configuration instance ping status

* Skip update webhooks processing if issuing principal is this CMS app

* Fix provider configuration form validation

* Create old-dingos-hide.md
2023-04-18 18:46:28 +02:00
Adrian Pilarczyk
453baf78a1
feat: finalize order process (#355)
* feat:  add dummy order-created

* refactor: 🔥 unused private-providers-configuration-service

* feat:  add dummy order-fulfilled

* refactor: 🚚 move provider-config

* refactor: 🚚 crudSettingsConfigurator -> crudSettingsManager

* refactor: ♻️ [tax-provider].ts -> [tax-provider]-webhook.service.ts

* feat:  add dummy createOrder

* refactor: ♻️ distinguish between salesOrder and salesInvoice in avatax

* refactor: 🚚 [provider]-calculate.ts to [provider]-transform.ts

* refactor: 🚚 ResponseTaxPayload to tax-provider-webhook.ts

* refactor: 🚚 ResponseTaxPayload -> CalculateTaxesResponse

* refactor: ♻️ webhooks with active-tax-provider.service.ts

* feat:  add skeleton orderCreate functionality

* refactor: ♻️ [provider]-transform.ts -> [provider]-[webhook]-transform.ts

* feat:  add order-fulfilled with avatax call

* refactor: ♻️ move getActiveTaxProvider to active-tax-provider

* refactor: 🏷️ export types for [provider]-client function args

* refactor: 🚚 UpdateAppMetadata -> UpdateMetadata

* feat:  fulfill order with id from metadata

* build: ⬆️ upgrade avatax

* feat:  commit transaction on fulfill in avatax

* fix: 🐛 return of webhooks to ensure valid retry behavior

* refactor: 🚚 [provider]-[webhook]-transform -> [provider]-[webhook]-map

* refactor: 🏷️ export types of avatax-calculate-taxes mapPayload

* refactor: ♻️ extract address-map to separate function

* refactor: ♻️ remove schema.ts

* refactor: ♻️ move addressSchema to channels-config.ts

* feat:  add tests & placeholder tests for avatax & taxjar maps

* refactor: ♻️ throw error if no metadata

* refactor: ♻️ change EXTERNAL_ID_KEY to PROVIDER_ORDER_ID_KEY

add comments

* refactor: ♻️ comments -> it.todo in tests

* refactor: 💡 add comment about shipping_item_code

* refactor:  add todo items for tests

* refactor: ♻️ remove export and add sumLines to taxJarOrderCreated

* refactor: ♻️ address-map with avatarAddressFactory

* docs: 💡 add comment about MOCKED_SALEOR_PAYLOAD

* refactor: ♻️ remove export of mapLines and add to avataxCalculateTaxes

* style: 🎨 add newline-after-var warn to eslint-config-saleor

* style: 🎨 autofix newline-after-var in taxes

* test:  restructure tests according to new naming in address-map

* refactor: ♻️ add shippingItemCode to avataxCalculateTaxes wrapper object

* refactor: 🚚 payloadProps -> payloadArgs

* refactor: ♻️ add Maps suffix to map wrapper objects

* refactor: ♻️ remove data: null from ActiveTaxProviderResult

* refactor: ♻️ maintain the object hierarchy in tests

* refactor: ♻️ refactor webhook responses with WebhookResponseFactory

* build: ⬆️ vitest

* test:  add tests for get-app-config-test

* test:  add tests for getActiveTaxProvider

* refactor: ♻️ use address fragment for taxBase and order

* refactor: ♻️ rename WebhookResponseFactory -> WebhookResponse

* style: 👷 add multiline-comment-style

* fix: 🐛 dummy test in get-app-config.test.ts

* refactor: ♻️ rename AddressFragment -> Address

* refactor: ♻️ use debug instead of error in webhook-response noRetry

* refactor: ♻️ refactor as variables in mutation

* build: 👷 add changeset

* refactor: ♻️ split changesets in two

* build: ⬆️ vite

* build: ⬆️ vite && vitest in all apps
2023-04-17 13:58:21 +02:00
Lukasz Ostrowski
1fef68b49e
Improves how Saleor version is validated during installation (Invoices) (#390)
* Extract SaleorVersionCompatibilityValidator + tests

* Use SaleorVersionCompatibilityValidtor in register handler

* Replace coerce with includePrerelease in saleor version matching

* Changelogs
2023-04-17 12:39:13 +02:00
Lukasz Ostrowski
74174c4763
Update app-sdk to 0.37.3 (#375)
* Update app-sdk to 0.37.3

* update app-sdk to 0.37.3 latest
2023-04-14 12:33:22 +02:00
Lukasz Ostrowski
e167e72408
Update next to 13.3.0 (#388)
* Update next to 13.3.0

* Fix cms next version
2023-04-14 11:27:25 +02:00
Dawid
246b94360e
Provider configurations UI fixes (#374)
* Provider configurations UI fixes

* Create .changeset/nice-donkeys-stare.md
2023-04-13 13:27:06 +02:00
Lukasz Ostrowski
7ff2d7cfa7
Change turborepo config to use local turbo.json (#353)
* Change turborepo config to use local turbo.json

* update lock to 6.0

Update turbo to 1.9.0

Move global envs to build script envs
2023-04-13 12:44:27 +02:00
Lukasz Ostrowski
1da51639fa
Improve CMS app UX & UI (#349)
* Install apps-shared, render null if app is loading in the iframe

Redesign the app

Add notification toasts and imrpve instructions

Change channels list to select

Replace lists with select

* fix build

* Fix build
2023-04-06 12:56:44 +02:00
Lukasz Ostrowski
3acc1553a8
Introduce CRM App (#292)
* Add template

Cleanup

Update queries

Basic mailchimp client

Add Oauth flow

remove next auth

* Auth flow, mailchimp button

* Basic layouts

* session saver for appbridge

* ideas drop

* basic iframe flow

* iframe flow - with post message

* saving token in backend

* saving token in backend

* Extracted settings manager

* Refactor audience router

* Remove old macaw ui

* Nav and layout

* display lists and wip add customer

* Metadata updater

* Allow iframe to NOT have app layout

* Add segment coming soon

* App layout

* Add removing config button

* Add iframe

* Fix postmessages

* Display lists

* webhook settings

* Connect webhook

* remove comment

* batch customer adding client

* Update macaw

* Fetching customers component

* Add bulk sync

* add temp ts-ignore until macaw is fixed

* Improve ui

* redesign

* Extract sections

* Redesign mailchimp login

* Refactor sections

* Extract mailchimp list picker

* Add name mapping

* WIP tags, extracted colocated queries to folders

* Wip - not working CustomerUpdated subs

* Add instructions

* Fix webhook config state

* Add external links

* envs

* Protected Oauth handler

* Fix instructions

* Squash some todos

* Instructions update with gql

* empty trygger

* Add env validation

* Fix error message

* Update macaw and remove todos

* Add metadata manager test

* Replace Mailchimp enum to lowercase

* Update oauth routes

* Fix typo

* Add loader to removing config box

* Update labeler to include CRM app

* Apply suggestions from CR

* Fix linter
2023-04-06 09:26:56 +02:00
Lukasz Ostrowski
eca52ad058
Replace export default with named exports (#352)
* Update eslint config to prevent default exports

* exlucde vitest config from banned default exports

* Remove default exports from Monitoring App

* Replace default exports with named exports

* Fix klaviyo import path

* Replace default exports in CMS
2023-04-05 20:27:23 +02:00
Lukasz Ostrowski
907e618a5e
Setup Sentry for Taxes App (#343)
* Setup Sentry for Taxes App

* Remove sample_error page from Sentry in Taxes

* Fix next.config.js that fixes a build
2023-03-29 12:32:34 +02:00
Krzysztof Wolski
f58043f72b
Add Google Category Mapping for the feed (#325)
* Add Google Category Mapping for the feed

* Update the link href
2023-03-24 15:02:40 +01:00
Dawid
ab0dec5814
CMS providers update (#309)
* CMS providers update

* Strapi provider update

* Add channel listing update issue note to readme

* Update provider operations logs

* Update contribution guide and fields instructions

* Fix external links opening
2023-03-20 12:21:19 +01:00
Lukasz Ostrowski
b80df176e5
CMS: Add Sentry setup (#311) 2023-03-20 10:25:36 +01:00
Lukasz Ostrowski
7cb3b892c4
Author field in manifests (#299)
* Update app-sdk to 0.37.0

* Add author field to manifest handler

* Fix build by fixing AppPermission in tRPC (use Permission instead) and replace domain with saleorApiUrl (compat with 0.37.1 sdk)

* Update app-sdk to 0.37.1
2023-03-16 19:09:26 +01:00
Dawid
ec067b9699
CMS setup tests fix (#294) 2023-03-16 12:13:16 +01:00
Dawid
a07f337992
Add CMS hub app (#262)
* Add CMS hub app

* Cleanup

* Refactor CMS product variants webhooks

* Test utils 1

* Remove legacy code

* Add .env example

* Update types

* Remove unused code

* Fix cms client opertions settings test

* Fix pnpm-lock file

* Bump typescript to 4.9, support satisfies expressions
2023-03-16 11:17:00 +01:00
Krzysztof Wolski
e93a4dc1c8
Update the GraphQL Code Generator version (#291)
* Add missing plugin

* Update GraphQL Code Generator
2023-03-16 10:22:33 +01:00
Lukasz Ostrowski
dab0f937dd
Invoices: Add debug logs and better temp pdf location (#265)
* Invoices: Add debug logs and better temp pdf location

* Fix test

* maybe fix test

* log debug test

* set local dirname

* wip

* wip

* wip
2023-03-15 09:38:13 +01:00
Lukasz Ostrowski
749941a58a
Update dependencies and fix eslint config (#255) 2023-03-09 14:01:18 +01:00
Krzysztof Wolski
1af3996e39
Add emails and messages app (#236)
* Add emails and messages app
2023-03-09 09:14:29 +01:00
Lukasz Ostrowski
dca82bb93c
Update app-sdk in apps to 0.34.0 and rewrite SaleorAsyncWebhook to modern api (#238)
* Data importer: disable sentry if not in env

* All packages: update app sdk to 0.34.0 version and update api
2023-03-07 16:21:46 +01:00
Adrian Pilarczyk
d136463ce6 build: ⬆️
upgrade sdk to 0.34.1
2023-03-07 13:00:39 +01:00
Adrian Pilarczyk
d63e88bdb6 build: ⬆️ app-sdk to 0.34.0 2023-03-07 11:46:21 +01:00
Adrian Pilarczyk
0d75d3a311 build: ⬆️ upgrade app-sdk 2023-03-07 11:08:00 +01:00
Adrian Pilarczyk
9f0dd813a4
feat: add taxes app (#223)
* feat:  add taxes app

* chore: 🔥 remove files, use monorepo ones instead

* chore:  add all env vars to .env.example

* refactor: 🔧 use saleor eslint config

* build: ⬆️ app-sdk, remove vercel from apl

* refactor: ♻️ remove providers/index, infer taxProviders from providerConfig

* refactor: ♻️ use tuples to use objects

* refactor: 🚚 move types to taxes module

* refactor: ♻️ tax-prepare-data -> tax-line-resolver

* refactor: get isInFrame from apps-shared

* build: ⬆️ next

* feat:  add appRegister allowlist

* Update apps/taxes/src/pages/api/manifest.ts

Co-authored-by: Krzysztof Wolski <krzysztof.k.wolski@gmail.com>

* Update apps/taxes/src/pages/api/manifest.ts

Co-authored-by: Krzysztof Wolski <krzysztof.k.wolski@gmail.com>

* chore: 💡 improve comments

* refactor: 🔥 app-dashboard-link

* docs: 📝 add taxes to readme

* refactor: 🔥 app-main-bar

* refactor: ♻️ align saleor-app.ts with the rest

* refactor: ♻️ use defaultValues

* chore: ♻️ misc

---------

Co-authored-by: Krzysztof Wolski <krzysztof.k.wolski@gmail.com>
2023-03-02 12:01:17 +01:00
Lukasz Ostrowski
3e612cad1c
Add Sentry to data-importer (#226) 2023-03-01 15:24:16 +01:00
Lukasz Ostrowski
5efe136ab7
Invoices: Bump sdk to 0.33 and update register handler errors (#222) 2023-02-28 14:12:31 +01:00
Lukasz Ostrowski
55c8f1afcb
Invoices: validate Saleor version and fail if lower than declared (#220)
* Invoices: validate Saleor version and fail if lower than decalred

* Fix package lock

* Replace tiny-invariant error to custom one to get explicit error message
2023-02-28 12:56:48 +01:00
Lukasz Ostrowski
63275866a1
Inverting colors dark mode in Data Importer (#202) 2023-02-27 09:28:46 +01:00
Lukasz Ostrowski
1da5be3be1
Prepare app for production (#145)
Prepare data importer for production

---------

Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>

Fix prod resolving

Add icon

Improve styles
2023-02-23 07:22:37 +00:00
Przemysław Łada
b33bfd35af
Add Saleor Monitoring app (#189)
* initial commit

* Remove pre-commit-config

* Update gitignore

* Update README

* Add better config for monitoring app (#190)

---------

Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>
2023-02-22 12:23:04 +01:00
Lukasz Ostrowski
5fc88ed6b7
Update UI to match new dashboard style (#138)
* Extract macaw theme palette to shared package

* Use MacawThemeProvider from shared package

* Fix maca theme provider props

* Update invoices app ui

* Add noSSRwrapper to packages shared

* Use external theme provider in data importer

* Use external theme provider in slack

* Improve margin in TitleBar

* Update colors in Klaviyo

* revert search to use local theme provider

* revert slack to use local theme provider

* Rewrite TitleBar to css modules

* Add unique jss classes prefix for Klaviyo

* Update apps/search/src/pages/_app.tsx

Co-authored-by: Krzysztof Wolski <krzysztof.k.wolski@gmail.com>

* Update shy-gorillas-shop.md

---------

Co-authored-by: Krzysztof Wolski <krzysztof.k.wolski@gmail.com>
2023-02-21 11:34:30 +01:00
Lukasz Ostrowski
ca3a0305f2
Add products feed app (#161)
* Add products feed app from another repo

* Improve codebase

* Create sweet-ears-tease.md

* Apply cr changes
2023-02-17 14:27:43 +01:00
Lukasz Ostrowski
b874d1065b
Update sdk (#160) 2023-02-15 13:01:19 +01:00
Lukasz Ostrowski
081d15e168
Add prettier on pre-commit & reformat codebase (#137)
* Run prettier on project

* Install lint-staged

* Add Husky
2023-02-10 11:13:59 +01:00