@strapi/plugin-color-picker 0.0.0-next.fab38a080023b0850fc7a8ec8605d1ee6970e3c9 → 0.0.0-next.fb92031f3d90f3d2a2d191ba65725b6c8e329a5d

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/LICENSE +34 -12
  2. package/dist/admin/components/ColorPickerIcon.js +31 -0
  3. package/dist/admin/components/ColorPickerIcon.js.map +1 -0
  4. package/dist/admin/components/ColorPickerIcon.mjs +29 -0
  5. package/dist/admin/components/ColorPickerIcon.mjs.map +1 -0
  6. package/dist/admin/components/ColorPickerInput.js +199 -0
  7. package/dist/admin/components/ColorPickerInput.js.map +1 -0
  8. package/dist/admin/components/ColorPickerInput.mjs +178 -0
  9. package/dist/admin/components/ColorPickerInput.mjs.map +1 -0
  10. package/dist/admin/index.js +107 -1
  11. package/dist/admin/index.js.map +1 -1
  12. package/dist/admin/index.mjs +102 -8
  13. package/dist/admin/index.mjs.map +1 -1
  14. package/dist/admin/pluginId.js +6 -0
  15. package/dist/admin/pluginId.js.map +1 -0
  16. package/dist/admin/pluginId.mjs +4 -0
  17. package/dist/admin/pluginId.mjs.map +1 -0
  18. package/dist/admin/src/components/ColorPickerInput.d.ts +7 -0
  19. package/dist/admin/src/components/tests/ColorPickerInput.test.d.ts +1 -0
  20. package/dist/admin/{index.d.ts → src/index.d.ts} +3 -1
  21. package/dist/admin/src/utils/prefixPluginTranslations.d.ts +3 -0
  22. package/dist/admin/translations/cs.json.js +17 -0
  23. package/dist/admin/translations/cs.json.js.map +1 -0
  24. package/dist/admin/translations/cs.json.mjs +15 -0
  25. package/dist/admin/translations/cs.json.mjs.map +1 -0
  26. package/dist/admin/translations/en.json.js +20 -0
  27. package/dist/admin/translations/en.json.js.map +1 -0
  28. package/dist/admin/translations/en.json.mjs +18 -0
  29. package/dist/admin/translations/en.json.mjs.map +1 -0
  30. package/dist/admin/translations/ru.json.js +20 -0
  31. package/dist/admin/translations/ru.json.js.map +1 -0
  32. package/dist/admin/translations/ru.json.mjs +18 -0
  33. package/dist/admin/translations/ru.json.mjs.map +1 -0
  34. package/dist/admin/translations/sv.json.js +17 -0
  35. package/dist/admin/translations/sv.json.js.map +1 -0
  36. package/dist/admin/translations/sv.json.mjs +15 -0
  37. package/dist/admin/translations/sv.json.mjs.map +1 -0
  38. package/dist/admin/translations/tr.json.js +17 -0
  39. package/dist/admin/translations/tr.json.js.map +1 -0
  40. package/dist/admin/translations/tr.json.mjs +15 -0
  41. package/dist/admin/translations/tr.json.mjs.map +1 -0
  42. package/dist/admin/translations/uk.json.js +20 -0
  43. package/dist/admin/translations/uk.json.js.map +1 -0
  44. package/dist/admin/translations/uk.json.mjs +18 -0
  45. package/dist/admin/translations/uk.json.mjs.map +1 -0
  46. package/dist/admin/translations/zh.json.js +17 -0
  47. package/dist/admin/translations/zh.json.js.map +1 -0
  48. package/dist/admin/translations/zh.json.mjs +15 -0
  49. package/dist/admin/translations/zh.json.mjs.map +1 -0
  50. package/dist/admin/utils/getTrad.js +8 -0
  51. package/dist/admin/utils/getTrad.js.map +1 -0
  52. package/dist/admin/utils/getTrad.mjs +6 -0
  53. package/dist/admin/utils/getTrad.mjs.map +1 -0
  54. package/dist/admin/utils/prefixPluginTranslations.js +11 -0
  55. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
  56. package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
  57. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
  58. package/dist/server/index.js +9 -1
  59. package/dist/server/index.js.map +1 -1
  60. package/dist/server/index.mjs +6 -11
  61. package/dist/server/index.mjs.map +1 -1
  62. package/dist/server/register.js +12 -0
  63. package/dist/server/register.js.map +1 -0
  64. package/dist/server/register.mjs +10 -0
  65. package/dist/server/register.mjs.map +1 -0
  66. package/dist/server/{index.d.ts → src/index.d.ts} +1 -0
  67. package/dist/server/src/index.d.ts.map +1 -0
  68. package/dist/server/{register.d.ts → src/register.d.ts} +1 -0
  69. package/dist/server/src/register.d.ts.map +1 -0
  70. package/package.json +33 -37
  71. package/dist/_chunks/ColorPickerInput-1e9c7a15.js +0 -47
  72. package/dist/_chunks/ColorPickerInput-1e9c7a15.js.map +0 -1
  73. package/dist/_chunks/ColorPickerInput-3335ebf5.mjs +0 -168
  74. package/dist/_chunks/ColorPickerInput-3335ebf5.mjs.map +0 -1
  75. package/dist/_chunks/cs-67f98136.js +0 -2
  76. package/dist/_chunks/cs-67f98136.js.map +0 -1
  77. package/dist/_chunks/cs-70e06424.mjs +0 -16
  78. package/dist/_chunks/cs-70e06424.mjs.map +0 -1
  79. package/dist/_chunks/en-096b1095.mjs +0 -19
  80. package/dist/_chunks/en-096b1095.mjs.map +0 -1
  81. package/dist/_chunks/en-32ea9fdb.js +0 -2
  82. package/dist/_chunks/en-32ea9fdb.js.map +0 -1
  83. package/dist/_chunks/index-3cecbc68.js +0 -37
  84. package/dist/_chunks/index-3cecbc68.js.map +0 -1
  85. package/dist/_chunks/index-e75c6fdb.mjs +0 -730
  86. package/dist/_chunks/index-e75c6fdb.mjs.map +0 -1
  87. package/dist/_chunks/ru-05c0aa5b.mjs +0 -19
  88. package/dist/_chunks/ru-05c0aa5b.mjs.map +0 -1
  89. package/dist/_chunks/ru-c5a712be.js +0 -2
  90. package/dist/_chunks/ru-c5a712be.js.map +0 -1
  91. package/dist/_chunks/sv-6ccbf5f0.mjs +0 -16
  92. package/dist/_chunks/sv-6ccbf5f0.mjs.map +0 -1
  93. package/dist/_chunks/sv-e4ea8db8.js +0 -2
  94. package/dist/_chunks/sv-e4ea8db8.js.map +0 -1
  95. package/dist/_chunks/tr-34587a44.mjs +0 -16
  96. package/dist/_chunks/tr-34587a44.mjs.map +0 -1
  97. package/dist/_chunks/tr-fb5cfb93.js +0 -2
  98. package/dist/_chunks/tr-fb5cfb93.js.map +0 -1
  99. package/dist/_chunks/zh-667ba169.mjs +0 -16
  100. package/dist/_chunks/zh-667ba169.mjs.map +0 -1
  101. package/dist/_chunks/zh-b25c84c2.js +0 -2
  102. package/dist/_chunks/zh-b25c84c2.js.map +0 -1
  103. package/dist/admin/components/ColorPickerInput.d.ts +0 -32
  104. package/dist/admin/hooks/useComposeRefs.d.ts +0 -29
  105. package/strapi-server.js +0 -3
  106. /package/dist/admin/{components → src/components}/ColorPickerIcon.d.ts +0 -0
  107. /package/dist/admin/{pluginId.d.ts → src/pluginId.d.ts} +0 -0
  108. /package/dist/admin/{utils → src/utils}/getTrad.d.ts +0 -0
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ var pluginId = require('../pluginId.js');
4
+
5
+ const getTrad = (id)=>`${pluginId.pluginId}.${id}`;
6
+
7
+ exports.getTrad = getTrad;
8
+ //# sourceMappingURL=getTrad.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTrad.js","sources":["../../../admin/src/utils/getTrad.ts"],"sourcesContent":["import { pluginId } from '../pluginId';\n\nexport const getTrad = (id: string) => `${pluginId}.${id}`;\n"],"names":["getTrad","id","pluginId"],"mappings":";;;;AAEO,MAAMA,OAAU,GAAA,CAACC,EAAe,GAAA,CAAC,EAAEC,iBAAAA,CAAS,CAAC,EAAED,EAAG,CAAA;;;;"}
@@ -0,0 +1,6 @@
1
+ import { pluginId } from '../pluginId.mjs';
2
+
3
+ const getTrad = (id)=>`${pluginId}.${id}`;
4
+
5
+ export { getTrad };
6
+ //# sourceMappingURL=getTrad.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTrad.mjs","sources":["../../../admin/src/utils/getTrad.ts"],"sourcesContent":["import { pluginId } from '../pluginId';\n\nexport const getTrad = (id: string) => `${pluginId}.${id}`;\n"],"names":["getTrad","id","pluginId"],"mappings":";;AAEO,MAAMA,OAAU,GAAA,CAACC,EAAe,GAAA,CAAC,EAAEC,QAAAA,CAAS,CAAC,EAAED,EAAG,CAAA;;;;"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ const prefixPluginTranslations = (trad, pluginId)=>{
4
+ return Object.keys(trad).reduce((acc, current)=>{
5
+ acc[`${pluginId}.${current}`] = trad[current];
6
+ return acc;
7
+ }, {});
8
+ };
9
+
10
+ exports.prefixPluginTranslations = prefixPluginTranslations;
11
+ //# sourceMappingURL=prefixPluginTranslations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prefixPluginTranslations.js","sources":["../../../admin/src/utils/prefixPluginTranslations.ts"],"sourcesContent":["type TradOptions = Record<string, string>;\n\nconst prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => {\n if (!pluginId) {\n throw new TypeError(\"pluginId can't be empty\");\n }\n return Object.keys(trad).reduce((acc, current) => {\n acc[`${pluginId}.${current}`] = trad[current];\n return acc;\n }, {} as TradOptions);\n};\n\nexport { prefixPluginTranslations };\n"],"names":["prefixPluginTranslations","trad","pluginId","Object","keys","reduce","acc","current"],"mappings":";;AAEMA,MAAAA,wBAAAA,GAA2B,CAACC,IAAmBC,EAAAA,QAAAA,GAAAA;AAInD,IAAA,OAAOC,OAAOC,IAAI,CAACH,MAAMI,MAAM,CAAC,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;AACpCD,QAAAA,GAAG,CAAC,CAAC,EAAEJ,QAAAA,CAAS,CAAC,EAAEK,OAAQ,CAAA,CAAC,CAAC,GAAGN,IAAI,CAACM,OAAQ,CAAA;QAC7C,OAAOD,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;;;;"}
@@ -0,0 +1,9 @@
1
+ const prefixPluginTranslations = (trad, pluginId)=>{
2
+ return Object.keys(trad).reduce((acc, current)=>{
3
+ acc[`${pluginId}.${current}`] = trad[current];
4
+ return acc;
5
+ }, {});
6
+ };
7
+
8
+ export { prefixPluginTranslations };
9
+ //# sourceMappingURL=prefixPluginTranslations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prefixPluginTranslations.mjs","sources":["../../../admin/src/utils/prefixPluginTranslations.ts"],"sourcesContent":["type TradOptions = Record<string, string>;\n\nconst prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => {\n if (!pluginId) {\n throw new TypeError(\"pluginId can't be empty\");\n }\n return Object.keys(trad).reduce((acc, current) => {\n acc[`${pluginId}.${current}`] = trad[current];\n return acc;\n }, {} as TradOptions);\n};\n\nexport { prefixPluginTranslations };\n"],"names":["prefixPluginTranslations","trad","pluginId","Object","keys","reduce","acc","current"],"mappings":"AAEMA,MAAAA,wBAAAA,GAA2B,CAACC,IAAmBC,EAAAA,QAAAA,GAAAA;AAInD,IAAA,OAAOC,OAAOC,IAAI,CAACH,MAAMI,MAAM,CAAC,CAACC,GAAKC,EAAAA,OAAAA,GAAAA;AACpCD,QAAAA,GAAG,CAAC,CAAC,EAAEJ,QAAAA,CAAS,CAAC,EAAEK,OAAQ,CAAA,CAAC,CAAC,GAAGN,IAAI,CAACM,OAAQ,CAAA;QAC7C,OAAOD,GAAAA;AACT,KAAA,EAAG,EAAC,CAAA;AACN;;;;"}
@@ -1,2 +1,10 @@
1
- "use strict";const r=({strapi:e})=>{e.customFields.register({name:"color",plugin:"color-picker",type:"string"})},s={register:r};module.exports=s;
1
+ 'use strict';
2
+
3
+ var register = require('./register.js');
4
+
5
+ var index = {
6
+ register: register.register
7
+ };
8
+
9
+ module.exports = index;
2
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../server/src/register.ts","../../server/src/index.ts"],"sourcesContent":["export const register = ({ strapi }: any) => {\n strapi.customFields.register({\n name: 'color',\n plugin: 'color-picker',\n type: 'string',\n });\n};\n","import { register } from './register';\n\nexport default {\n register,\n};\n"],"names":["register","strapi","index"],"mappings":"aAAO,MAAMA,EAAW,CAAC,CAAE,OAAAC,KAAkB,CAC3CA,EAAO,aAAa,SAAS,CAC3B,KAAM,QACN,OAAQ,eACR,KAAM,QAAA,CACP,CACH,ECJeC,EAAA,CACb,SAAAF,CACF"}
1
+ {"version":3,"file":"index.js","sources":["../../server/src/index.ts"],"sourcesContent":["import { register } from './register';\n\nexport default {\n register,\n};\n"],"names":["register"],"mappings":";;;;AAEA,YAAe;AACbA,cAAAA;AACF,CAAE;;;;"}
@@ -1,13 +1,8 @@
1
- const r = ({ strapi: e }) => {
2
- e.customFields.register({
3
- name: "color",
4
- plugin: "color-picker",
5
- type: "string"
6
- });
7
- }, t = {
8
- register: r
9
- };
10
- export {
11
- t as default
1
+ import { register } from './register.mjs';
2
+
3
+ var index = {
4
+ register
12
5
  };
6
+
7
+ export { index as default };
13
8
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../server/src/register.ts","../../server/src/index.ts"],"sourcesContent":["export const register = ({ strapi }: any) => {\n strapi.customFields.register({\n name: 'color',\n plugin: 'color-picker',\n type: 'string',\n });\n};\n","import { register } from './register';\n\nexport default {\n register,\n};\n"],"names":["register","strapi","index"],"mappings":"AAAO,MAAMA,IAAW,CAAC,EAAE,QAAAC,QAAkB;AAC3C,EAAAA,EAAO,aAAa,SAAS;AAAA,IAC3B,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,MAAM;AAAA,EAAA,CACP;AACH,GCJeC,IAAA;AAAA,EACb,UAAAF;AACF;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../server/src/index.ts"],"sourcesContent":["import { register } from './register';\n\nexport default {\n register,\n};\n"],"names":["register"],"mappings":";;AAEA,YAAe;AACbA,IAAAA;AACF,CAAE;;;;"}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ const register = ({ strapi })=>{
4
+ strapi.customFields.register({
5
+ name: 'color',
6
+ plugin: 'color-picker',
7
+ type: 'string'
8
+ });
9
+ };
10
+
11
+ exports.register = register;
12
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sources":["../../server/src/register.ts"],"sourcesContent":["export const register = ({ strapi }: any) => {\n strapi.customFields.register({\n name: 'color',\n plugin: 'color-picker',\n type: 'string',\n });\n};\n"],"names":["register","strapi","customFields","name","plugin","type"],"mappings":";;AAAaA,MAAAA,QAAAA,GAAW,CAAC,EAAEC,MAAM,EAAO,GAAA;IACtCA,MAAOC,CAAAA,YAAY,CAACF,QAAQ,CAAC;QAC3BG,IAAM,EAAA,OAAA;QACNC,MAAQ,EAAA,cAAA;QACRC,IAAM,EAAA;AACR,KAAA,CAAA;AACF;;;;"}
@@ -0,0 +1,10 @@
1
+ const register = ({ strapi })=>{
2
+ strapi.customFields.register({
3
+ name: 'color',
4
+ plugin: 'color-picker',
5
+ type: 'string'
6
+ });
7
+ };
8
+
9
+ export { register };
10
+ //# sourceMappingURL=register.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.mjs","sources":["../../server/src/register.ts"],"sourcesContent":["export const register = ({ strapi }: any) => {\n strapi.customFields.register({\n name: 'color',\n plugin: 'color-picker',\n type: 'string',\n });\n};\n"],"names":["register","strapi","customFields","name","plugin","type"],"mappings":"AAAaA,MAAAA,QAAAA,GAAW,CAAC,EAAEC,MAAM,EAAO,GAAA;IACtCA,MAAOC,CAAAA,YAAY,CAACF,QAAQ,CAAC;QAC3BG,IAAM,EAAA,OAAA;QACNC,MAAQ,EAAA,cAAA;QACRC,IAAM,EAAA;AACR,KAAA,CAAA;AACF;;;;"}
@@ -2,3 +2,4 @@ declare const _default: {
2
2
  register: ({ strapi }: any) => void;
3
3
  };
4
4
  export default _default;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":";;;AAEA,wBAEE"}
@@ -1 +1,2 @@
1
1
  export declare const register: ({ strapi }: any) => void;
2
+ //# sourceMappingURL=register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../server/src/register.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,eAAgB,GAAG,SAMvC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/plugin-color-picker",
3
- "version": "0.0.0-next.fab38a080023b0850fc7a8ec8605d1ee6970e3c9",
3
+ "version": "0.0.0-next.fb92031f3d90f3d2a2d191ba65725b6c8e329a5d",
4
4
  "description": "Strapi maintained Custom Fields",
5
5
  "repository": {
6
6
  "type": "git",
@@ -22,14 +22,14 @@
22
22
  ],
23
23
  "exports": {
24
24
  "./strapi-admin": {
25
- "types": "./dist/admin/index.d.ts",
25
+ "types": "./dist/admin/src/index.d.ts",
26
26
  "source": "./admin/src/index.ts",
27
27
  "import": "./dist/admin/index.mjs",
28
28
  "require": "./dist/admin/index.js",
29
29
  "default": "./dist/admin/index.js"
30
30
  },
31
31
  "./strapi-server": {
32
- "types": "./dist/server/index.d.ts",
32
+ "types": "./dist/server/src/index.d.ts",
33
33
  "source": "./server/src/index.ts",
34
34
  "import": "./dist/server/index.mjs",
35
35
  "require": "./dist/server/index.js",
@@ -38,59 +38,55 @@
38
38
  "./package.json": "./package.json"
39
39
  },
40
40
  "files": [
41
- "./dist",
41
+ "dist/",
42
42
  "strapi-server.js"
43
43
  ],
44
- "strapi": {
45
- "name": "color-picker",
46
- "description": "Color picker custom field",
47
- "kind": "plugin",
48
- "displayName": "Color Picker"
49
- },
50
44
  "scripts": {
51
- "build": "NODE_ENV=production strapi plugin:build --force",
52
- "watch": "run -T tsc -w --preserveWatchOutput",
45
+ "build": "run -T npm-run-all clean --parallel build:code build:types",
46
+ "build:code": "run -T rollup -c",
47
+ "build:types": "run -T run-p build:types:server build:types:admin",
48
+ "build:types:server": "run -T tsc -p server/tsconfig.build.json --emitDeclarationOnly",
49
+ "build:types:admin": "run -T tsc -p admin/tsconfig.build.json --emitDeclarationOnly",
53
50
  "clean": "run -T rimraf ./dist",
54
- "prepublishOnly": "yarn clean && yarn build",
51
+ "lint": "run -T eslint .",
55
52
  "test:front": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js",
56
- "test:front:watch": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js --watchAll",
57
53
  "test:front:ce": "run -T cross-env IS_EE=false jest --config ./jest.config.front.js",
54
+ "test:front:watch": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js --watchAll",
58
55
  "test:front:watch:ce": "run -T cross-env IS_EE=false jest --config ./jest.config.front.js --watchAll",
59
56
  "test:ts:front": "run -T tsc -p admin/tsconfig.json",
60
- "lint": "yarn lint:project && yarn lint:back && yarn lint:front",
61
- "lint:project": "run -T eslint . -c ./.eslintrc.js",
62
- "lint:back": "run -T eslint ./server -c ./server/.eslintrc.js",
63
- "lint:front": "run -T eslint ./admin -c ./admin/.eslintrc.js"
57
+ "watch": "run -T rollup -c -w"
64
58
  },
65
59
  "dependencies": {
66
- "@strapi/design-system": "1.12.0",
67
- "@strapi/helper-plugin": "0.0.0-next.fab38a080023b0850fc7a8ec8605d1ee6970e3c9",
68
- "@strapi/icons": "1.12.0",
69
- "prop-types": "^15.8.1",
60
+ "@strapi/design-system": "2.0.0-rc.23",
61
+ "@strapi/icons": "2.0.0-rc.23",
70
62
  "react-colorful": "5.6.1",
71
- "react-intl": "6.4.1"
63
+ "react-intl": "6.6.2"
72
64
  },
73
65
  "devDependencies": {
74
- "@strapi/strapi": "0.0.0-next.fab38a080023b0850fc7a8ec8605d1ee6970e3c9",
75
- "@testing-library/react": "14.0.0",
76
- "@testing-library/user-event": "14.4.3",
77
- "@types/styled-components": "5.1.26",
78
- "react": "^18.2.0",
79
- "react-dom": "^18.2.0",
80
- "react-router-dom": "5.3.4",
81
- "styled-components": "5.3.3",
82
- "typescript": "5.2.2"
66
+ "@strapi/strapi": "0.0.0-next.fb92031f3d90f3d2a2d191ba65725b6c8e329a5d",
67
+ "@testing-library/react": "15.0.7",
68
+ "@testing-library/user-event": "14.5.2",
69
+ "react": "18.3.1",
70
+ "react-dom": "18.3.1",
71
+ "react-router-dom": "6.22.3",
72
+ "styled-components": "6.1.8",
73
+ "typescript": "5.4.4"
83
74
  },
84
75
  "peerDependencies": {
85
- "@strapi/strapi": "^4.4.0",
76
+ "@strapi/strapi": "^5.0.0",
86
77
  "react": "^17.0.0 || ^18.0.0",
87
78
  "react-dom": "^17.0.0 || ^18.0.0",
88
- "react-router-dom": "5.3.4",
89
- "styled-components": "5.3.3"
79
+ "react-router-dom": "^6.0.0",
80
+ "styled-components": "^6.0.0"
90
81
  },
91
82
  "engines": {
92
- "node": ">=16.0.0 <=20.x.x",
83
+ "node": ">=18.0.0 <=22.x.x",
93
84
  "npm": ">=6.0.0"
94
85
  },
95
- "gitHead": "fab38a080023b0850fc7a8ec8605d1ee6970e3c9"
86
+ "strapi": {
87
+ "name": "color-picker",
88
+ "description": "Color picker custom field",
89
+ "kind": "plugin",
90
+ "displayName": "Color Picker"
91
+ }
96
92
  }
@@ -1,47 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-3cecbc68.js"),y=require("react"),r=require("@strapi/design-system"),C=require("@strapi/icons"),P=require("react-colorful"),T=require("react-intl"),c=require("styled-components");require("@strapi/helper-plugin");function v(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const s in e)if(s!=="default"){const a=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(o,s,a.get?a:{enumerable:!0,get:()=>e[s]})}}return o.default=e,Object.freeze(o)}const l=v(y);function w(e,o){typeof e=="function"?e(o):e!=null&&(e.current=o)}function $(...e){return o=>e.forEach(s=>w(s,o))}function F(...e){return l.useCallback($(...e),e)}const _=c.div`
2
- border-radius: 50%;
3
- width: 20px;
4
- height: 20px;
5
- margin-right: 10px;
6
- background-color: ${e=>e.color};
7
- border: 1px solid rgba(0, 0, 0, 0.1);
8
- `,q=c(P.HexColorPicker)`
9
- && {
10
- width: 100%;
11
- aspect-ratio: 1.5;
12
- }
13
-
14
- .react-colorful__pointer {
15
- width: ${({theme:e})=>e.spaces[3]};
16
- height: ${({theme:e})=>e.spaces[3]};
17
- }
18
-
19
- .react-colorful__saturation {
20
- border-radius: ${({theme:e})=>e.spaces[1]};
21
- border-bottom: none;
22
- }
23
-
24
- .react-colorful__hue {
25
- border-radius: 10px;
26
- height: ${({theme:e})=>e.spaces[3]};
27
- margin-top: ${({theme:e})=>e.spaces[2]};
28
- }
29
- `,S=c(r.BaseButton)`
30
- display: flex;
31
- justify-content: space-between;
32
- align-items: center;
33
-
34
- svg {
35
- width: ${({theme:e})=>e.spaces[2]};
36
- height: ${({theme:e})=>e.spaces[2]};
37
- }
38
-
39
- svg > path {
40
- fill: ${({theme:e})=>e.colors.neutral500};
41
- justify-self: flex-end;
42
- }
43
- `,B=c(r.Popover)`
44
- padding: ${({theme:e})=>e.spaces[2]};
45
- min-height: 270px;
46
- `,I=l.forwardRef(({attribute:e,description:o,disabled:s=!1,error:a,intlLabel:h,labelAction:m,name:u,onChange:f,required:R=!1,value:p=""},b)=>{const[d,x]=l.useState(!1),j=l.useRef(null),{formatMessage:i}=T.useIntl(),g=p||"#000000",E=n=>{n.preventDefault(),n.currentTarget.contains(n.relatedTarget)||x(!1)},k=F(b,j);return t.jsxRuntimeExports.jsx(r.Field,{name:u,id:u,error:a,hint:o&&i(o),required:R,children:t.jsxRuntimeExports.jsxs(r.Flex,{direction:"column",alignItems:"stretch",gap:1,children:[t.jsxRuntimeExports.jsx(r.FieldLabel,{action:m,children:i(h)}),t.jsxRuntimeExports.jsxs(S,{ref:k,"aria-label":i({id:t.getTrad("color-picker.toggle.aria-label"),defaultMessage:"Color picker toggle"}),"aria-controls":"color-picker-value","aria-haspopup":"dialog","aria-expanded":d,"aria-disabled":s,disabled:s,onClick:()=>x(!d),children:[t.jsxRuntimeExports.jsxs(r.Flex,{children:[t.jsxRuntimeExports.jsx(_,{color:g}),t.jsxRuntimeExports.jsx(r.Typography,{style:{textTransform:"uppercase"},textColor:p?void 0:"neutral600",variant:"omega",children:g})]}),t.jsxRuntimeExports.jsx(C.CarretDown,{"aria-hidden":!0})]}),d&&t.jsxRuntimeExports.jsx(B,{onBlur:E,role:"dialog",source:j,spacing:4,children:t.jsxRuntimeExports.jsxs(r.FocusTrap,{onEscape:()=>x(!1),children:[t.jsxRuntimeExports.jsx(q,{color:g,onChange:n=>f({target:{name:u,value:n,type:e.type}})}),t.jsxRuntimeExports.jsxs(r.Flex,{paddingTop:3,paddingLeft:4,justifyContent:"flex-end",children:[t.jsxRuntimeExports.jsx(r.Box,{paddingRight:2,children:t.jsxRuntimeExports.jsx(r.Typography,{variant:"omega",as:"label",textColor:"neutral600",children:i({id:t.getTrad("color-picker.input.format"),defaultMessage:"HEX"})})}),t.jsxRuntimeExports.jsx(r.FieldInput,{id:"color-picker-value","aria-label":i({id:t.getTrad("color-picker.input.aria-label"),defaultMessage:"Color picker input"}),style:{textTransform:"uppercase"},value:p,placeholder:"#000000",onChange:f})]})]})}),t.jsxRuntimeExports.jsx(r.FieldHint,{}),t.jsxRuntimeExports.jsx(r.FieldError,{})]})})});exports.ColorPickerInput=I;
47
- //# sourceMappingURL=ColorPickerInput-1e9c7a15.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ColorPickerInput-1e9c7a15.js","sources":["../../admin/src/hooks/useComposeRefs.ts","../../admin/src/components/ColorPickerInput.tsx"],"sourcesContent":["import * as React from 'react';\n\ntype PossibleRef<T> = React.Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */\nfunction setRef<T>(ref: PossibleRef<T>, value: T) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref !== null && ref !== undefined) {\n (ref as React.MutableRefObject<T>).current = value;\n }\n}\n\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */\nfunction composeRefs<T>(...refs: PossibleRef<T>[]) {\n return (node: T) => refs.forEach((ref) => setRef(ref, node));\n}\n\n/**\n * Takes multiple React like refs either React.Ref or a callback:\n * (node: T) => void and returns a single function that can be\n * passed to a React component as a ref.\n *\n * Example:\n * ```tsx\n * import { useComposedRefs } from '../hooks/useComposedRefs';\n *\n * const Component = React.forwardRef<HTMLInputElement, ComponentProps>((props, forwardedRef) => {\n * const ref = useComposedRefs(internalRef, forwardedRef);\n *\n * React.useEffect(() => {\n * ref.current.focus();\n * }, [ref]);\n *\n * return <input ref={ref} />\n * }\n * ```\n */\nfunction useComposedRefs<T>(...refs: PossibleRef<T>[]) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return React.useCallback(composeRefs(...refs), refs);\n}\n\nexport { composeRefs, useComposedRefs };\n","import * as React from 'react';\n\nimport {\n BaseButton,\n Box,\n Field,\n FieldError,\n FieldHint,\n FieldInput,\n FieldLabel,\n Flex,\n FocusTrap,\n Popover,\n Typography,\n} from '@strapi/design-system';\nimport { CarretDown } from '@strapi/icons';\nimport { HexColorPicker } from 'react-colorful';\nimport { useIntl, MessageDescriptor } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { useComposedRefs } from '../hooks/useComposeRefs';\nimport { getTrad } from '../utils/getTrad';\n\nconst ColorPreview = styled.div`\n border-radius: 50%;\n width: 20px;\n height: 20px;\n margin-right: 10px;\n background-color: ${(props) => props.color};\n border: 1px solid rgba(0, 0, 0, 0.1);\n`;\n\nconst ColorPicker = styled(HexColorPicker)`\n && {\n width: 100%;\n aspect-ratio: 1.5;\n }\n\n .react-colorful__pointer {\n width: ${({ theme }) => theme.spaces[3]};\n height: ${({ theme }) => theme.spaces[3]};\n }\n\n .react-colorful__saturation {\n border-radius: ${({ theme }) => theme.spaces[1]};\n border-bottom: none;\n }\n\n .react-colorful__hue {\n border-radius: 10px;\n height: ${({ theme }) => theme.spaces[3]};\n margin-top: ${({ theme }) => theme.spaces[2]};\n }\n`;\n\nconst ColorPickerToggle = styled(BaseButton)`\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n width: ${({ theme }) => theme.spaces[2]};\n height: ${({ theme }) => theme.spaces[2]};\n }\n\n svg > path {\n fill: ${({ theme }) => theme.colors.neutral500};\n justify-self: flex-end;\n }\n`;\n\nconst ColorPickerPopover = styled(Popover)`\n padding: ${({ theme }) => theme.spaces[2]};\n min-height: 270px;\n`;\n\n/**\n * TODO: A lot of these props should extend `FieldProps`\n */\ninterface ColorPickerInputProps {\n intlLabel: MessageDescriptor;\n /**\n * TODO: this should be extended from `FieldInputProps['onChange']\n * but that conflicts with it's secondary usage in `HexColorPicker`\n */\n onChange: (event: { target: { name: string; value: string; type: string } }) => void;\n attribute: { type: string; [key: string]: unknown };\n name: string;\n description?: MessageDescriptor;\n disabled?: boolean;\n error?: string;\n labelAction?: React.ReactNode;\n required?: boolean;\n value?: string;\n}\n\nexport const ColorPickerInput = React.forwardRef<HTMLButtonElement, ColorPickerInputProps>(\n (\n {\n attribute,\n description,\n disabled = false,\n error,\n intlLabel,\n labelAction,\n name,\n onChange,\n required = false,\n value = '',\n },\n forwardedRef\n ) => {\n const [showColorPicker, setShowColorPicker] = React.useState(false);\n const colorPickerButtonRef = React.useRef<HTMLButtonElement>(null!);\n const { formatMessage } = useIntl();\n const color = value || '#000000';\n\n const handleBlur: React.FocusEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n\n if (!e.currentTarget.contains(e.relatedTarget)) {\n setShowColorPicker(false);\n }\n };\n\n const composedRefs = useComposedRefs(forwardedRef, colorPickerButtonRef);\n\n return (\n <Field\n name={name}\n id={name}\n // GenericInput calls formatMessage and returns a string for the error\n error={error}\n hint={description && formatMessage(description)}\n required={required}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <FieldLabel action={labelAction}>{formatMessage(intlLabel)}</FieldLabel>\n <ColorPickerToggle\n ref={composedRefs}\n aria-label={formatMessage({\n id: getTrad('color-picker.toggle.aria-label'),\n defaultMessage: 'Color picker toggle',\n })}\n aria-controls=\"color-picker-value\"\n aria-haspopup=\"dialog\"\n aria-expanded={showColorPicker}\n aria-disabled={disabled}\n disabled={disabled}\n onClick={() => setShowColorPicker(!showColorPicker)}\n >\n <Flex>\n <ColorPreview color={color} />\n <Typography\n style={{ textTransform: 'uppercase' }}\n textColor={value ? undefined : 'neutral600'}\n variant=\"omega\"\n >\n {color}\n </Typography>\n </Flex>\n <CarretDown aria-hidden />\n </ColorPickerToggle>\n {showColorPicker && (\n <ColorPickerPopover\n onBlur={handleBlur}\n role=\"dialog\"\n source={colorPickerButtonRef}\n spacing={4}\n >\n <FocusTrap onEscape={() => setShowColorPicker(false)}>\n <ColorPicker\n color={color}\n onChange={(hexValue) =>\n onChange({ target: { name, value: hexValue, type: attribute.type } })\n }\n />\n <Flex paddingTop={3} paddingLeft={4} justifyContent=\"flex-end\">\n <Box paddingRight={2}>\n <Typography variant=\"omega\" as=\"label\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('color-picker.input.format'),\n defaultMessage: 'HEX',\n })}\n </Typography>\n </Box>\n <FieldInput\n id=\"color-picker-value\"\n aria-label={formatMessage({\n id: getTrad('color-picker.input.aria-label'),\n defaultMessage: 'Color picker input',\n })}\n style={{ textTransform: 'uppercase' }}\n value={value}\n placeholder=\"#000000\"\n onChange={onChange}\n />\n </Flex>\n </FocusTrap>\n </ColorPickerPopover>\n )}\n <FieldHint />\n <FieldError />\n </Flex>\n </Field>\n );\n }\n);\n"],"names":["setRef","ref","value","composeRefs","refs","node","useComposedRefs","React","ColorPreview","styled","props","ColorPicker","HexColorPicker","theme","ColorPickerToggle","BaseButton","ColorPickerPopover","Popover","ColorPickerInput","attribute","description","disabled","error","intlLabel","labelAction","name","onChange","required","forwardedRef","showColorPicker","setShowColorPicker","colorPickerButtonRef","formatMessage","useIntl","color","handleBlur","e","composedRefs","jsx","Field","Flex","FieldLabel","jsxs","getTrad","Typography","CarretDown","FocusTrap","hexValue","Box","FieldInput","FieldHint","FieldError"],"mappings":"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"}
@@ -1,168 +0,0 @@
1
- import { j as r, g as f } from "./index-e75c6fdb.mjs";
2
- import * as a from "react";
3
- import { BaseButton as w, Popover as R, Field as $, Flex as g, FieldLabel as T, Typography as m, FocusTrap as F, Box as B, FieldInput as _, FieldHint as E, FieldError as I } from "@strapi/design-system";
4
- import { CarretDown as M } from "@strapi/icons";
5
- import { HexColorPicker as H } from "react-colorful";
6
- import { useIntl as D } from "react-intl";
7
- import l from "styled-components";
8
- import "@strapi/helper-plugin";
9
- function L(e, o) {
10
- typeof e == "function" ? e(o) : e != null && (e.current = o);
11
- }
12
- function S(...e) {
13
- return (o) => e.forEach((i) => L(i, o));
14
- }
15
- function X(...e) {
16
- return a.useCallback(S(...e), e);
17
- }
18
- const q = l.div`
19
- border-radius: 50%;
20
- width: 20px;
21
- height: 20px;
22
- margin-right: 10px;
23
- background-color: ${(e) => e.color};
24
- border: 1px solid rgba(0, 0, 0, 0.1);
25
- `, z = l(H)`
26
- && {
27
- width: 100%;
28
- aspect-ratio: 1.5;
29
- }
30
-
31
- .react-colorful__pointer {
32
- width: ${({ theme: e }) => e.spaces[3]};
33
- height: ${({ theme: e }) => e.spaces[3]};
34
- }
35
-
36
- .react-colorful__saturation {
37
- border-radius: ${({ theme: e }) => e.spaces[1]};
38
- border-bottom: none;
39
- }
40
-
41
- .react-colorful__hue {
42
- border-radius: 10px;
43
- height: ${({ theme: e }) => e.spaces[3]};
44
- margin-top: ${({ theme: e }) => e.spaces[2]};
45
- }
46
- `, A = l(w)`
47
- display: flex;
48
- justify-content: space-between;
49
- align-items: center;
50
-
51
- svg {
52
- width: ${({ theme: e }) => e.spaces[2]};
53
- height: ${({ theme: e }) => e.spaces[2]};
54
- }
55
-
56
- svg > path {
57
- fill: ${({ theme: e }) => e.colors.neutral500};
58
- justify-self: flex-end;
59
- }
60
- `, G = l(R)`
61
- padding: ${({ theme: e }) => e.spaces[2]};
62
- min-height: 270px;
63
- `, W = a.forwardRef(
64
- ({
65
- attribute: e,
66
- description: o,
67
- disabled: i = !1,
68
- error: j,
69
- intlLabel: k,
70
- labelAction: C,
71
- name: c,
72
- onChange: h,
73
- required: b = !1,
74
- value: n = ""
75
- }, y) => {
76
- const [p, d] = a.useState(!1), x = a.useRef(null), { formatMessage: t } = D(), u = n || "#000000", v = (s) => {
77
- s.preventDefault(), s.currentTarget.contains(s.relatedTarget) || d(!1);
78
- }, P = X(y, x);
79
- return /* @__PURE__ */ r.jsx(
80
- $,
81
- {
82
- name: c,
83
- id: c,
84
- error: j,
85
- hint: o && t(o),
86
- required: b,
87
- children: /* @__PURE__ */ r.jsxs(g, { direction: "column", alignItems: "stretch", gap: 1, children: [
88
- /* @__PURE__ */ r.jsx(T, { action: C, children: t(k) }),
89
- /* @__PURE__ */ r.jsxs(
90
- A,
91
- {
92
- ref: P,
93
- "aria-label": t({
94
- id: f("color-picker.toggle.aria-label"),
95
- defaultMessage: "Color picker toggle"
96
- }),
97
- "aria-controls": "color-picker-value",
98
- "aria-haspopup": "dialog",
99
- "aria-expanded": p,
100
- "aria-disabled": i,
101
- disabled: i,
102
- onClick: () => d(!p),
103
- children: [
104
- /* @__PURE__ */ r.jsxs(g, { children: [
105
- /* @__PURE__ */ r.jsx(q, { color: u }),
106
- /* @__PURE__ */ r.jsx(
107
- m,
108
- {
109
- style: { textTransform: "uppercase" },
110
- textColor: n ? void 0 : "neutral600",
111
- variant: "omega",
112
- children: u
113
- }
114
- )
115
- ] }),
116
- /* @__PURE__ */ r.jsx(M, { "aria-hidden": !0 })
117
- ]
118
- }
119
- ),
120
- p && /* @__PURE__ */ r.jsx(
121
- G,
122
- {
123
- onBlur: v,
124
- role: "dialog",
125
- source: x,
126
- spacing: 4,
127
- children: /* @__PURE__ */ r.jsxs(F, { onEscape: () => d(!1), children: [
128
- /* @__PURE__ */ r.jsx(
129
- z,
130
- {
131
- color: u,
132
- onChange: (s) => h({ target: { name: c, value: s, type: e.type } })
133
- }
134
- ),
135
- /* @__PURE__ */ r.jsxs(g, { paddingTop: 3, paddingLeft: 4, justifyContent: "flex-end", children: [
136
- /* @__PURE__ */ r.jsx(B, { paddingRight: 2, children: /* @__PURE__ */ r.jsx(m, { variant: "omega", as: "label", textColor: "neutral600", children: t({
137
- id: f("color-picker.input.format"),
138
- defaultMessage: "HEX"
139
- }) }) }),
140
- /* @__PURE__ */ r.jsx(
141
- _,
142
- {
143
- id: "color-picker-value",
144
- "aria-label": t({
145
- id: f("color-picker.input.aria-label"),
146
- defaultMessage: "Color picker input"
147
- }),
148
- style: { textTransform: "uppercase" },
149
- value: n,
150
- placeholder: "#000000",
151
- onChange: h
152
- }
153
- )
154
- ] })
155
- ] })
156
- }
157
- ),
158
- /* @__PURE__ */ r.jsx(E, {}),
159
- /* @__PURE__ */ r.jsx(I, {})
160
- ] })
161
- }
162
- );
163
- }
164
- );
165
- export {
166
- W as ColorPickerInput
167
- };
168
- //# sourceMappingURL=ColorPickerInput-3335ebf5.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ColorPickerInput-3335ebf5.mjs","sources":["../../admin/src/hooks/useComposeRefs.ts","../../admin/src/components/ColorPickerInput.tsx"],"sourcesContent":["import * as React from 'react';\n\ntype PossibleRef<T> = React.Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */\nfunction setRef<T>(ref: PossibleRef<T>, value: T) {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref !== null && ref !== undefined) {\n (ref as React.MutableRefObject<T>).current = value;\n }\n}\n\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */\nfunction composeRefs<T>(...refs: PossibleRef<T>[]) {\n return (node: T) => refs.forEach((ref) => setRef(ref, node));\n}\n\n/**\n * Takes multiple React like refs either React.Ref or a callback:\n * (node: T) => void and returns a single function that can be\n * passed to a React component as a ref.\n *\n * Example:\n * ```tsx\n * import { useComposedRefs } from '../hooks/useComposedRefs';\n *\n * const Component = React.forwardRef<HTMLInputElement, ComponentProps>((props, forwardedRef) => {\n * const ref = useComposedRefs(internalRef, forwardedRef);\n *\n * React.useEffect(() => {\n * ref.current.focus();\n * }, [ref]);\n *\n * return <input ref={ref} />\n * }\n * ```\n */\nfunction useComposedRefs<T>(...refs: PossibleRef<T>[]) {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return React.useCallback(composeRefs(...refs), refs);\n}\n\nexport { composeRefs, useComposedRefs };\n","import * as React from 'react';\n\nimport {\n BaseButton,\n Box,\n Field,\n FieldError,\n FieldHint,\n FieldInput,\n FieldLabel,\n Flex,\n FocusTrap,\n Popover,\n Typography,\n} from '@strapi/design-system';\nimport { CarretDown } from '@strapi/icons';\nimport { HexColorPicker } from 'react-colorful';\nimport { useIntl, MessageDescriptor } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { useComposedRefs } from '../hooks/useComposeRefs';\nimport { getTrad } from '../utils/getTrad';\n\nconst ColorPreview = styled.div`\n border-radius: 50%;\n width: 20px;\n height: 20px;\n margin-right: 10px;\n background-color: ${(props) => props.color};\n border: 1px solid rgba(0, 0, 0, 0.1);\n`;\n\nconst ColorPicker = styled(HexColorPicker)`\n && {\n width: 100%;\n aspect-ratio: 1.5;\n }\n\n .react-colorful__pointer {\n width: ${({ theme }) => theme.spaces[3]};\n height: ${({ theme }) => theme.spaces[3]};\n }\n\n .react-colorful__saturation {\n border-radius: ${({ theme }) => theme.spaces[1]};\n border-bottom: none;\n }\n\n .react-colorful__hue {\n border-radius: 10px;\n height: ${({ theme }) => theme.spaces[3]};\n margin-top: ${({ theme }) => theme.spaces[2]};\n }\n`;\n\nconst ColorPickerToggle = styled(BaseButton)`\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n svg {\n width: ${({ theme }) => theme.spaces[2]};\n height: ${({ theme }) => theme.spaces[2]};\n }\n\n svg > path {\n fill: ${({ theme }) => theme.colors.neutral500};\n justify-self: flex-end;\n }\n`;\n\nconst ColorPickerPopover = styled(Popover)`\n padding: ${({ theme }) => theme.spaces[2]};\n min-height: 270px;\n`;\n\n/**\n * TODO: A lot of these props should extend `FieldProps`\n */\ninterface ColorPickerInputProps {\n intlLabel: MessageDescriptor;\n /**\n * TODO: this should be extended from `FieldInputProps['onChange']\n * but that conflicts with it's secondary usage in `HexColorPicker`\n */\n onChange: (event: { target: { name: string; value: string; type: string } }) => void;\n attribute: { type: string; [key: string]: unknown };\n name: string;\n description?: MessageDescriptor;\n disabled?: boolean;\n error?: string;\n labelAction?: React.ReactNode;\n required?: boolean;\n value?: string;\n}\n\nexport const ColorPickerInput = React.forwardRef<HTMLButtonElement, ColorPickerInputProps>(\n (\n {\n attribute,\n description,\n disabled = false,\n error,\n intlLabel,\n labelAction,\n name,\n onChange,\n required = false,\n value = '',\n },\n forwardedRef\n ) => {\n const [showColorPicker, setShowColorPicker] = React.useState(false);\n const colorPickerButtonRef = React.useRef<HTMLButtonElement>(null!);\n const { formatMessage } = useIntl();\n const color = value || '#000000';\n\n const handleBlur: React.FocusEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n\n if (!e.currentTarget.contains(e.relatedTarget)) {\n setShowColorPicker(false);\n }\n };\n\n const composedRefs = useComposedRefs(forwardedRef, colorPickerButtonRef);\n\n return (\n <Field\n name={name}\n id={name}\n // GenericInput calls formatMessage and returns a string for the error\n error={error}\n hint={description && formatMessage(description)}\n required={required}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <FieldLabel action={labelAction}>{formatMessage(intlLabel)}</FieldLabel>\n <ColorPickerToggle\n ref={composedRefs}\n aria-label={formatMessage({\n id: getTrad('color-picker.toggle.aria-label'),\n defaultMessage: 'Color picker toggle',\n })}\n aria-controls=\"color-picker-value\"\n aria-haspopup=\"dialog\"\n aria-expanded={showColorPicker}\n aria-disabled={disabled}\n disabled={disabled}\n onClick={() => setShowColorPicker(!showColorPicker)}\n >\n <Flex>\n <ColorPreview color={color} />\n <Typography\n style={{ textTransform: 'uppercase' }}\n textColor={value ? undefined : 'neutral600'}\n variant=\"omega\"\n >\n {color}\n </Typography>\n </Flex>\n <CarretDown aria-hidden />\n </ColorPickerToggle>\n {showColorPicker && (\n <ColorPickerPopover\n onBlur={handleBlur}\n role=\"dialog\"\n source={colorPickerButtonRef}\n spacing={4}\n >\n <FocusTrap onEscape={() => setShowColorPicker(false)}>\n <ColorPicker\n color={color}\n onChange={(hexValue) =>\n onChange({ target: { name, value: hexValue, type: attribute.type } })\n }\n />\n <Flex paddingTop={3} paddingLeft={4} justifyContent=\"flex-end\">\n <Box paddingRight={2}>\n <Typography variant=\"omega\" as=\"label\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('color-picker.input.format'),\n defaultMessage: 'HEX',\n })}\n </Typography>\n </Box>\n <FieldInput\n id=\"color-picker-value\"\n aria-label={formatMessage({\n id: getTrad('color-picker.input.aria-label'),\n defaultMessage: 'Color picker input',\n })}\n style={{ textTransform: 'uppercase' }}\n value={value}\n placeholder=\"#000000\"\n onChange={onChange}\n />\n </Flex>\n </FocusTrap>\n </ColorPickerPopover>\n )}\n <FieldHint />\n <FieldError />\n </Flex>\n </Field>\n );\n }\n);\n"],"names":["setRef","ref","value","composeRefs","refs","node","useComposedRefs","React","ColorPreview","styled","props","ColorPicker","HexColorPicker","theme","ColorPickerToggle","BaseButton","ColorPickerPopover","Popover","ColorPickerInput","attribute","description","disabled","error","intlLabel","labelAction","name","onChange","required","forwardedRef","showColorPicker","setShowColorPicker","colorPickerButtonRef","formatMessage","useIntl","color","handleBlur","e","composedRefs","jsx","Field","Flex","FieldLabel","jsxs","getTrad","Typography","CarretDown","FocusTrap","hexValue","Box","FieldInput","FieldHint","FieldError"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={"color-picker.description":"Vyberte libovolnou barvu","color-picker.input.aria-label":"Vstup pro výběr barvy","color-picker.input.format":"HEX","color-picker.label":"Barva","color-picker.options.advanced.regex":"RegExp vzor","color-picker.options.advanced.regex.description":"Zadejte regulární výraz pro ověření hodnoty HEX","color-picker.options.advanced.requiredField":"Povinné pole","color-picker.options.advanced.requiredField.description":"Pokud je toto pole prázdné, nebudete moci vytvořit záznam","color-picker.settings":"Nastavení","color-picker.toggle.aria-label":"Přepínač výběru barvy"};exports.default=e;
2
- //# sourceMappingURL=cs-67f98136.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cs-67f98136.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,16 +0,0 @@
1
- const o = {
2
- "color-picker.description": "Vyberte libovolnou barvu",
3
- "color-picker.input.aria-label": "Vstup pro výběr barvy",
4
- "color-picker.input.format": "HEX",
5
- "color-picker.label": "Barva",
6
- "color-picker.options.advanced.regex": "RegExp vzor",
7
- "color-picker.options.advanced.regex.description": "Zadejte regulární výraz pro ověření hodnoty HEX",
8
- "color-picker.options.advanced.requiredField": "Povinné pole",
9
- "color-picker.options.advanced.requiredField.description": "Pokud je toto pole prázdné, nebudete moci vytvořit záznam",
10
- "color-picker.settings": "Nastavení",
11
- "color-picker.toggle.aria-label": "Přepínač výběru barvy"
12
- };
13
- export {
14
- o as default
15
- };
16
- //# sourceMappingURL=cs-70e06424.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cs-70e06424.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -1,19 +0,0 @@
1
- const e = {
2
- "color-picker.description": "Select any color",
3
- "color-picker.input.aria-label": "Color picker input",
4
- "color-picker.input.format": "HEX",
5
- "color-picker.label": "Color",
6
- "color-picker.options.advanced.regex": "RegExp pattern",
7
- "color-picker.options.advanced.regex.description": "Provide a regular expression to validate the HEX value",
8
- "color-picker.options.advanced.requiredField": "Required field",
9
- "color-picker.options.advanced.requiredField.description": "You won't be able to create an entry if this field is empty",
10
- "color-picker.settings": "Settings",
11
- "color-picker.toggle.aria-label": "Color picker toggle",
12
- "plugin.description.long": "A Strapi-maintained color picker custom field. Use saturation and hue sliders to select a color and save the value as a HEX string.",
13
- "plugin.description.short": "A Strapi-maintained color picker custom field.",
14
- "plugin.name": "Color picker"
15
- };
16
- export {
17
- e as default
18
- };
19
- //# sourceMappingURL=en-096b1095.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-096b1095.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={"color-picker.description":"Select any color","color-picker.input.aria-label":"Color picker input","color-picker.input.format":"HEX","color-picker.label":"Color","color-picker.options.advanced.regex":"RegExp pattern","color-picker.options.advanced.regex.description":"Provide a regular expression to validate the HEX value","color-picker.options.advanced.requiredField":"Required field","color-picker.options.advanced.requiredField.description":"You won't be able to create an entry if this field is empty","color-picker.settings":"Settings","color-picker.toggle.aria-label":"Color picker toggle","plugin.description.long":"A Strapi-maintained color picker custom field. Use saturation and hue sliders to select a color and save the value as a HEX string.","plugin.description.short":"A Strapi-maintained color picker custom field.","plugin.name":"Color picker"};exports.default=e;
2
- //# sourceMappingURL=en-32ea9fdb.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-32ea9fdb.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}