feat(dashboard): Product create from - details (#7121)

**What**
- First part of the product creation form.
- New components:
  - ChipInput - Allows users to input chips into a input field. Chips are created by hitting the `,` or `Enter / Return` keys. Deleting a chip is done by hitting `Backspace` when the cursor is next to chip, or clicking the `X` button in the chip. Used for inputting option values.
  - SortableList - A sortable drag-n-drop list that allows the user to re-arrange the order of items. Used for re-arranging the ranking of variants.
  - ChipGroup - New re-usable component that is used to render a group of values as Chips. This should be used for SplitView form items.
  - CategoryCombobox - (WIP) Nested Combobox component for selecting multiple categories a product should be associated with.
- New hooks:
  - useComboboxData - Hook for easily managing the state of comboboxes.
  - useDebouncedSearch - Hook for managing debounced search queries.
This commit is contained in:
Kasper Fabricius Kristensen authored and GitHub committed 2024-05-03 10:37:36 +00:00
1 parent e42308557e
commit fdee748eed
84 files changed
+2837 -1588

No files matched your search

+95 -45
View File
@@ -4340,6 +4340,55 @@ __metadata:
languageName: node
linkType: hard
"@dnd-kit/accessibility@npm:^3.1.0":
version: 3.1.0
resolution: "@dnd-kit/accessibility@npm:3.1.0"
dependencies:
tslib: ^2.0.0
peerDependencies:
react: ">=16.8.0"
checksum: 4f9d24e801d66d4fbb551ec389ed90424dd4c5bbdf527000a618e9abb9833cbd84d9a79e362f470ccbccfbd6d00217a9212c92f3cef66e01c951c7f79625b9d7
languageName: node
linkType: hard
"@dnd-kit/core@npm:^6.1.0":
version: 6.1.0
resolution: "@dnd-kit/core@npm:6.1.0"
dependencies:
"@dnd-kit/accessibility": ^3.1.0
"@dnd-kit/utilities": ^3.2.2
tslib: ^2.0.0
peerDependencies:
react: ">=16.8.0"
react-dom: ">=16.8.0"
checksum: c793eb97cb59285ca8937ebcdfcd27cff09d750ae06722e36ca5ed07925e41abc36a38cff98f9f6056f7a07810878d76909826142a2968330e7e22060e6be584
languageName: node
linkType: hard
"@dnd-kit/sortable@npm:^8.0.0":
version: 8.0.0
resolution: "@dnd-kit/sortable@npm:8.0.0"
dependencies:
"@dnd-kit/utilities": ^3.2.2
tslib: ^2.0.0
peerDependencies:
"@dnd-kit/core": ^6.1.0
react: ">=16.8.0"
checksum: a6066c652b892c6a11320c7d8f5c18fdf723e721e8eea37f4ab657dee1ac5e7ca710ac32ce0712a57fe968bc07c13bcea5d5599d90dfdd95619e162befd4d2fb
languageName: node
linkType: hard
"@dnd-kit/utilities@npm:^3.2.2":
version: 3.2.2
resolution: "@dnd-kit/utilities@npm:3.2.2"
dependencies:
tslib: ^2.0.0
peerDependencies:
react: ">=16.8.0"
checksum: 9aa90526f3e3fd567b5acc1b625a63177b9e8d00e7e50b2bd0e08fa2bf4dba7e19529777e001fdb8f89a7ce69f30b190c8364d390212634e0afdfa8c395e85a0
languageName: node
linkType: hard
"@emotion/is-prop-valid@npm:1.2.1":
version: 1.2.1
resolution: "@emotion/is-prop-valid@npm:1.2.1"
@@ -6828,6 +6877,8 @@ __metadata:
resolution: "@medusajs/dashboard@workspace:packages/admin-next/dashboard"
dependencies:
"@ariakit/react": ^0.4.1
"@dnd-kit/core": ^6.1.0
"@dnd-kit/sortable": ^8.0.0
"@hookform/resolvers": 3.3.2
"@medusajs/icons": "workspace:^"
"@medusajs/medusa": "workspace:^"
@@ -6841,8 +6892,8 @@ __metadata:
"@tanstack/react-table": 8.10.7
"@tanstack/react-virtual": ^3.0.4
"@types/node": ^20.11.15
"@types/react": 18.2.43
"@types/react-dom": 18.2.17
"@types/react": ^18.2.79
"@types/react-dom": ^18.2.25
"@uiw/react-json-view": ^2.0.0-alpha.17
"@vitejs/plugin-react": 4.2.1
autoprefixer: ^10.4.17
@@ -6857,10 +6908,10 @@ __metadata:
postcss: ^8.4.33
prettier: ^3.1.1
qs: ^6.12.0
react: 18.2.0
react: ^18.2.0
react-country-flag: ^3.1.0
react-currency-input-field: ^3.6.11
react-dom: 18.2.0
react-dom: ^18.2.0
react-hook-form: 7.49.1
react-i18next: 13.5.0
react-jwt: ^1.2.0
@@ -14791,15 +14842,6 @@ __metadata:
languageName: node
linkType: hard
"@types/react-dom@npm:18.2.17":
version: 18.2.17
resolution: "@types/react-dom@npm:18.2.17"
dependencies:
"@types/react": "*"
checksum: 33b53078ed7e9e0cfc4dc691e938f7db1cc06353bc345947b41b581c3efe2b980c9e4eb6460dbf5ddc521dd91959194c970221a2bd4bfad9d23ebce338e12938
languageName: node
linkType: hard
"@types/react-dom@npm:^17.0.18":
version: 17.0.20
resolution: "@types/react-dom@npm:17.0.20"
@@ -14827,6 +14869,15 @@ __metadata:
languageName: node
linkType: hard
"@types/react-dom@npm:^18.2.25":
version: 18.3.0
resolution: "@types/react-dom@npm:18.3.0"
dependencies:
"@types/react": "*"
checksum: 6c90d2ed72c5a0e440d2c75d99287e4b5df3e7b011838cdc03ae5cd518ab52164d86990e73246b9d812eaf02ec351d74e3b4f5bd325bf341e13bf980392fd53b
languageName: node
linkType: hard
"@types/react@npm:*":
version: 18.2.14
resolution: "@types/react@npm:18.2.14"
@@ -14838,17 +14889,6 @@ __metadata:
languageName: node
linkType: hard
"@types/react@npm:18.2.43":
version: 18.2.43
resolution: "@types/react@npm:18.2.43"
dependencies:
"@types/prop-types": "*"
"@types/scheduler": "*"
csstype: ^3.0.2
checksum: 10477a50fbd3c0cc5b8a2ade679f442717f68fb27c8460b2aa1d3256cd18c48f742bbe5b9ee37a8c4c5f832ffa37b3a23c09fd96dd880a8e3182d8929c05e803
languageName: node
linkType: hard
"@types/react@npm:>=16, @types/react@npm:^18.2.0, @types/react@npm:^18.2.14":
version: 18.2.31
resolution: "@types/react@npm:18.2.31"
@@ -14871,6 +14911,16 @@ __metadata:
languageName: node
linkType: hard
"@types/react@npm:^18.2.79":
version: 18.2.79
resolution: "@types/react@npm:18.2.79"
dependencies:
"@types/prop-types": "*"
csstype: ^3.0.2
checksum: c8a8a005d8830a48cc1ef93c3510c4935a2a03e5557dbecaa8f1038450cbfcb18eb206fa7fba7077d54b8da21faeb25577e897a333392770a7797f625b62c78a
languageName: node
linkType: hard
"@types/resolve@npm:1.17.1":
version: 1.17.1
resolution: "@types/resolve@npm:1.17.1"
@@ -35579,18 +35629,6 @@ __metadata:
languageName: node
linkType: hard
"react-dom@npm:18.2.0, react-dom@npm:^18.2.0":
version: 18.2.0
resolution: "react-dom@npm:18.2.0"
dependencies:
loose-envify: ^1.1.0
scheduler: ^0.23.0
peerDependencies:
react: ^18.2.0
checksum: 66dfc5f93e13d0674e78ef41f92ed21dfb80f9c4ac4ac25a4b51046d41d4d2186abc915b897f69d3d0ebbffe6184e7c5876f2af26bfa956f179225d921be713a
languageName: node
linkType: hard
"react-dom@npm:^17.0.1, react-dom@npm:^17.0.2":
version: 17.0.2
resolution: "react-dom@npm:17.0.2"
@@ -35604,6 +35642,18 @@ __metadata:
languageName: node
linkType: hard
"react-dom@npm:^18.2.0":
version: 18.2.0
resolution: "react-dom@npm:18.2.0"
dependencies:
loose-envify: ^1.1.0
scheduler: ^0.23.0
peerDependencies:
react: ^18.2.0
checksum: 66dfc5f93e13d0674e78ef41f92ed21dfb80f9c4ac4ac25a4b51046d41d4d2186abc915b897f69d3d0ebbffe6184e7c5876f2af26bfa956f179225d921be713a
languageName: node
linkType: hard
"react-element-to-jsx-string@npm:^14.3.4":
version: 14.3.4
resolution: "react-element-to-jsx-string@npm:14.3.4"
@@ -35900,15 +35950,6 @@ __metadata:
languageName: node
linkType: hard
"react@npm:18.2.0, react@npm:^18.2.0":
version: 18.2.0
resolution: "react@npm:18.2.0"
dependencies:
loose-envify: ^1.1.0
checksum: b562d9b569b0cb315e44b48099f7712283d93df36b19a39a67c254c6686479d3980b7f013dc931f4a5a3ae7645eae6386b4aa5eea933baa54ecd0f9acb0902b8
languageName: node
linkType: hard
"react@npm:^17.0.1, react@npm:^17.0.2":
version: 17.0.2
resolution: "react@npm:17.0.2"
@@ -35919,6 +35960,15 @@ __metadata:
languageName: node
linkType: hard
"react@npm:^18.2.0":
version: 18.2.0
resolution: "react@npm:18.2.0"
dependencies:
loose-envify: ^1.1.0
checksum: b562d9b569b0cb315e44b48099f7712283d93df36b19a39a67c254c6686479d3980b7f013dc931f4a5a3ae7645eae6386b4aa5eea933baa54ecd0f9acb0902b8
languageName: node
linkType: hard
"read-cache@npm:^1.0.0":
version: 1.0.0
resolution: "read-cache@npm:1.0.0"