@atlaskit/editor-plugin-extension 0.4.2 → 0.5.1

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 (307) hide show
  1. package/.eslintrc.js +26 -0
  2. package/CHANGELOG.md +16 -0
  3. package/dist/cjs/actions.js +236 -0
  4. package/dist/cjs/commands.js +122 -0
  5. package/dist/cjs/context-panel.js +269 -0
  6. package/dist/cjs/extension-api.js +266 -0
  7. package/dist/cjs/index.js +8 -1
  8. package/dist/cjs/plugin-factory.js +32 -0
  9. package/dist/cjs/plugin-key.js +8 -0
  10. package/dist/cjs/plugin.js +147 -0
  11. package/dist/cjs/pm-plugins/keymap.js +21 -0
  12. package/dist/cjs/pm-plugins/macro/actions.js +186 -0
  13. package/dist/cjs/pm-plugins/macro/index.js +72 -0
  14. package/dist/cjs/pm-plugins/macro/plugin-key.js +8 -0
  15. package/dist/cjs/pm-plugins/macro/types.js +5 -0
  16. package/dist/cjs/pm-plugins/main.js +323 -0
  17. package/dist/cjs/pm-plugins/unique-id.js +80 -0
  18. package/dist/cjs/pm-plugins/utils.js +75 -0
  19. package/dist/cjs/reducer.js +18 -0
  20. package/dist/cjs/toolbar.js +242 -0
  21. package/dist/cjs/ui/ConfigPanel/ConfigPanel.js +475 -0
  22. package/dist/cjs/ui/ConfigPanel/ConfigPanelFieldsLoader.js +122 -0
  23. package/dist/cjs/ui/ConfigPanel/ConfigPanelLoader.js +23 -0
  24. package/dist/cjs/ui/ConfigPanel/ErrorMessage/ErrorImage.js +76 -0
  25. package/dist/cjs/ui/ConfigPanel/ErrorMessage/index.js +33 -0
  26. package/dist/cjs/ui/ConfigPanel/FieldMessages.js +105 -0
  27. package/dist/cjs/ui/ConfigPanel/Fields/Boolean.js +150 -0
  28. package/dist/cjs/ui/ConfigPanel/Fields/CheckboxGroup.js +101 -0
  29. package/dist/cjs/ui/ConfigPanel/Fields/ColorPicker.js +420 -0
  30. package/dist/cjs/ui/ConfigPanel/Fields/CustomSelect.js +192 -0
  31. package/dist/cjs/ui/ConfigPanel/Fields/Date.js +55 -0
  32. package/dist/cjs/ui/ConfigPanel/Fields/DateRange.js +160 -0
  33. package/dist/cjs/ui/ConfigPanel/Fields/Enum.js +41 -0
  34. package/dist/cjs/ui/ConfigPanel/Fields/Expand.js +88 -0
  35. package/dist/cjs/ui/ConfigPanel/Fields/Fieldset.js +270 -0
  36. package/dist/cjs/ui/ConfigPanel/Fields/Number.js +64 -0
  37. package/dist/cjs/ui/ConfigPanel/Fields/RadioGroup.js +56 -0
  38. package/dist/cjs/ui/ConfigPanel/Fields/Select.js +60 -0
  39. package/dist/cjs/ui/ConfigPanel/Fields/SelectItem.js +53 -0
  40. package/dist/cjs/ui/ConfigPanel/Fields/String.js +75 -0
  41. package/dist/cjs/ui/ConfigPanel/Fields/TabGroup.js +73 -0
  42. package/dist/cjs/ui/ConfigPanel/Fields/UnhandledType.js +19 -0
  43. package/dist/cjs/ui/ConfigPanel/Fields/UserSelect.js +268 -0
  44. package/dist/cjs/ui/ConfigPanel/Fields/common/RequiredIndicator.js +12 -0
  45. package/dist/cjs/ui/ConfigPanel/FormContent.js +231 -0
  46. package/dist/cjs/ui/ConfigPanel/FormErrorBoundary.js +140 -0
  47. package/dist/cjs/ui/ConfigPanel/Header.js +148 -0
  48. package/dist/cjs/ui/ConfigPanel/LoadingState.js +25 -0
  49. package/dist/cjs/ui/ConfigPanel/NestedForms/RemovableField.js +61 -0
  50. package/dist/cjs/ui/ConfigPanel/constants.js +13 -0
  51. package/dist/cjs/ui/ConfigPanel/index.js +9 -0
  52. package/dist/cjs/ui/ConfigPanel/messages.js +99 -0
  53. package/dist/cjs/ui/ConfigPanel/transformers.js +631 -0
  54. package/dist/cjs/ui/ConfigPanel/types.js +15 -0
  55. package/dist/cjs/ui/ConfigPanel/use-abortable-effect/index.js +56 -0
  56. package/dist/cjs/ui/ConfigPanel/use-state-from-promise/index.js +41 -0
  57. package/dist/cjs/ui/ConfigPanel/utils.js +116 -0
  58. package/dist/cjs/ui/SaveIndicator/SaveIndicator.js +79 -0
  59. package/dist/cjs/ui/SaveIndicator/messages.js +14 -0
  60. package/dist/cjs/ui/SaveIndicator/types.js +5 -0
  61. package/dist/cjs/utils.js +73 -0
  62. package/dist/es2019/actions.js +203 -0
  63. package/dist/es2019/commands.js +99 -0
  64. package/dist/es2019/context-panel.js +181 -0
  65. package/dist/es2019/extension-api.js +284 -0
  66. package/dist/es2019/index.js +1 -1
  67. package/dist/es2019/plugin-factory.js +26 -0
  68. package/dist/es2019/plugin-key.js +2 -0
  69. package/dist/es2019/plugin.js +138 -0
  70. package/dist/es2019/pm-plugins/keymap.js +15 -0
  71. package/dist/es2019/pm-plugins/macro/actions.js +152 -0
  72. package/dist/es2019/pm-plugins/macro/index.js +36 -0
  73. package/dist/es2019/pm-plugins/macro/plugin-key.js +2 -0
  74. package/dist/es2019/pm-plugins/macro/types.js +1 -0
  75. package/dist/es2019/pm-plugins/main.js +230 -0
  76. package/dist/es2019/pm-plugins/unique-id.js +69 -0
  77. package/dist/es2019/pm-plugins/utils.js +30 -0
  78. package/dist/es2019/reducer.js +11 -0
  79. package/dist/es2019/toolbar.js +236 -0
  80. package/dist/es2019/ui/ConfigPanel/ConfigPanel.js +415 -0
  81. package/dist/es2019/ui/ConfigPanel/ConfigPanelFieldsLoader.js +100 -0
  82. package/dist/es2019/ui/ConfigPanel/ConfigPanelLoader.js +7 -0
  83. package/dist/es2019/ui/ConfigPanel/ErrorMessage/ErrorImage.js +66 -0
  84. package/dist/es2019/ui/ConfigPanel/ErrorMessage/index.js +25 -0
  85. package/dist/es2019/ui/ConfigPanel/FieldMessages.js +101 -0
  86. package/dist/es2019/ui/ConfigPanel/Fields/Boolean.js +138 -0
  87. package/dist/es2019/ui/ConfigPanel/Fields/CheckboxGroup.js +96 -0
  88. package/dist/es2019/ui/ConfigPanel/Fields/ColorPicker.js +411 -0
  89. package/dist/es2019/ui/ConfigPanel/Fields/CustomSelect.js +132 -0
  90. package/dist/es2019/ui/ConfigPanel/Fields/Date.js +50 -0
  91. package/dist/es2019/ui/ConfigPanel/Fields/DateRange.js +139 -0
  92. package/dist/es2019/ui/ConfigPanel/Fields/Enum.js +35 -0
  93. package/dist/es2019/ui/ConfigPanel/Fields/Expand.js +73 -0
  94. package/dist/es2019/ui/ConfigPanel/Fields/Fieldset.js +227 -0
  95. package/dist/es2019/ui/ConfigPanel/Fields/Number.js +61 -0
  96. package/dist/es2019/ui/ConfigPanel/Fields/RadioGroup.js +40 -0
  97. package/dist/es2019/ui/ConfigPanel/Fields/Select.js +50 -0
  98. package/dist/es2019/ui/ConfigPanel/Fields/SelectItem.js +47 -0
  99. package/dist/es2019/ui/ConfigPanel/Fields/String.js +67 -0
  100. package/dist/es2019/ui/ConfigPanel/Fields/TabGroup.js +57 -0
  101. package/dist/es2019/ui/ConfigPanel/Fields/UnhandledType.js +11 -0
  102. package/dist/es2019/ui/ConfigPanel/Fields/UserSelect.js +194 -0
  103. package/dist/es2019/ui/ConfigPanel/Fields/common/RequiredIndicator.js +5 -0
  104. package/dist/es2019/ui/ConfigPanel/FormContent.js +225 -0
  105. package/dist/es2019/ui/ConfigPanel/FormErrorBoundary.js +100 -0
  106. package/dist/es2019/ui/ConfigPanel/Header.js +140 -0
  107. package/dist/es2019/ui/ConfigPanel/LoadingState.js +15 -0
  108. package/dist/es2019/ui/ConfigPanel/NestedForms/RemovableField.js +52 -0
  109. package/dist/es2019/ui/ConfigPanel/constants.js +7 -0
  110. package/dist/es2019/ui/ConfigPanel/index.js +2 -0
  111. package/dist/es2019/ui/ConfigPanel/messages.js +93 -0
  112. package/dist/es2019/ui/ConfigPanel/transformers.js +367 -0
  113. package/dist/es2019/ui/ConfigPanel/types.js +9 -0
  114. package/dist/es2019/ui/ConfigPanel/use-abortable-effect/index.js +46 -0
  115. package/dist/es2019/ui/ConfigPanel/use-state-from-promise/index.js +30 -0
  116. package/dist/es2019/ui/ConfigPanel/utils.js +86 -0
  117. package/dist/es2019/ui/SaveIndicator/SaveIndicator.js +66 -0
  118. package/dist/es2019/ui/SaveIndicator/messages.js +8 -0
  119. package/dist/es2019/ui/SaveIndicator/types.js +1 -0
  120. package/dist/es2019/utils.js +65 -0
  121. package/dist/esm/actions.js +223 -0
  122. package/dist/esm/commands.js +113 -0
  123. package/dist/esm/context-panel.js +261 -0
  124. package/dist/esm/extension-api.js +259 -0
  125. package/dist/esm/index.js +1 -1
  126. package/dist/esm/plugin-factory.js +25 -0
  127. package/dist/esm/plugin-key.js +2 -0
  128. package/dist/esm/plugin.js +140 -0
  129. package/dist/esm/pm-plugins/keymap.js +15 -0
  130. package/dist/esm/pm-plugins/macro/actions.js +179 -0
  131. package/dist/esm/pm-plugins/macro/index.js +42 -0
  132. package/dist/esm/pm-plugins/macro/plugin-key.js +2 -0
  133. package/dist/esm/pm-plugins/macro/types.js +1 -0
  134. package/dist/esm/pm-plugins/main.js +298 -0
  135. package/dist/esm/pm-plugins/unique-id.js +74 -0
  136. package/dist/esm/pm-plugins/utils.js +68 -0
  137. package/dist/esm/reducer.js +11 -0
  138. package/dist/esm/toolbar.js +235 -0
  139. package/dist/esm/ui/ConfigPanel/ConfigPanel.js +465 -0
  140. package/dist/esm/ui/ConfigPanel/ConfigPanelFieldsLoader.js +112 -0
  141. package/dist/esm/ui/ConfigPanel/ConfigPanelLoader.js +11 -0
  142. package/dist/esm/ui/ConfigPanel/ErrorMessage/ErrorImage.js +68 -0
  143. package/dist/esm/ui/ConfigPanel/ErrorMessage/index.js +26 -0
  144. package/dist/esm/ui/ConfigPanel/FieldMessages.js +97 -0
  145. package/dist/esm/ui/ConfigPanel/Fields/Boolean.js +140 -0
  146. package/dist/esm/ui/ConfigPanel/Fields/CheckboxGroup.js +95 -0
  147. package/dist/esm/ui/ConfigPanel/Fields/ColorPicker.js +414 -0
  148. package/dist/esm/ui/ConfigPanel/Fields/CustomSelect.js +182 -0
  149. package/dist/esm/ui/ConfigPanel/Fields/Date.js +48 -0
  150. package/dist/esm/ui/ConfigPanel/Fields/DateRange.js +154 -0
  151. package/dist/esm/ui/ConfigPanel/Fields/Enum.js +34 -0
  152. package/dist/esm/ui/ConfigPanel/Fields/Expand.js +77 -0
  153. package/dist/esm/ui/ConfigPanel/Fields/Fieldset.js +261 -0
  154. package/dist/esm/ui/ConfigPanel/Fields/Number.js +57 -0
  155. package/dist/esm/ui/ConfigPanel/Fields/RadioGroup.js +46 -0
  156. package/dist/esm/ui/ConfigPanel/Fields/Select.js +50 -0
  157. package/dist/esm/ui/ConfigPanel/Fields/SelectItem.js +45 -0
  158. package/dist/esm/ui/ConfigPanel/Fields/String.js +65 -0
  159. package/dist/esm/ui/ConfigPanel/Fields/TabGroup.js +62 -0
  160. package/dist/esm/ui/ConfigPanel/Fields/UnhandledType.js +10 -0
  161. package/dist/esm/ui/ConfigPanel/Fields/UserSelect.js +258 -0
  162. package/dist/esm/ui/ConfigPanel/Fields/common/RequiredIndicator.js +5 -0
  163. package/dist/esm/ui/ConfigPanel/FormContent.js +223 -0
  164. package/dist/esm/ui/ConfigPanel/FormErrorBoundary.js +133 -0
  165. package/dist/esm/ui/ConfigPanel/Header.js +140 -0
  166. package/dist/esm/ui/ConfigPanel/LoadingState.js +17 -0
  167. package/dist/esm/ui/ConfigPanel/NestedForms/RemovableField.js +53 -0
  168. package/dist/esm/ui/ConfigPanel/constants.js +7 -0
  169. package/dist/esm/ui/ConfigPanel/index.js +2 -0
  170. package/dist/esm/ui/ConfigPanel/messages.js +93 -0
  171. package/dist/esm/ui/ConfigPanel/transformers.js +624 -0
  172. package/dist/esm/ui/ConfigPanel/types.js +9 -0
  173. package/dist/esm/ui/ConfigPanel/use-abortable-effect/index.js +49 -0
  174. package/dist/esm/ui/ConfigPanel/use-state-from-promise/index.js +34 -0
  175. package/dist/esm/ui/ConfigPanel/utils.js +109 -0
  176. package/dist/esm/ui/SaveIndicator/SaveIndicator.js +72 -0
  177. package/dist/esm/ui/SaveIndicator/messages.js +8 -0
  178. package/dist/esm/ui/SaveIndicator/types.js +1 -0
  179. package/dist/esm/utils.js +67 -0
  180. package/dist/types/actions.d.ts +20 -0
  181. package/dist/types/commands.d.ts +15 -0
  182. package/dist/types/context-panel.d.ts +10 -0
  183. package/dist/types/extension-api.d.ts +12 -0
  184. package/dist/types/index.d.ts +2 -1
  185. package/dist/types/plugin-factory.d.ts +4 -0
  186. package/dist/types/plugin-key.d.ts +3 -0
  187. package/dist/types/plugin.d.ts +2 -0
  188. package/dist/types/pm-plugins/keymap.d.ts +3 -0
  189. package/dist/types/pm-plugins/macro/actions.d.ts +9 -0
  190. package/dist/types/pm-plugins/macro/index.d.ts +8 -0
  191. package/dist/types/pm-plugins/macro/plugin-key.d.ts +3 -0
  192. package/dist/types/pm-plugins/macro/types.d.ts +4 -0
  193. package/dist/types/pm-plugins/main.d.ts +25 -0
  194. package/dist/types/pm-plugins/unique-id.d.ts +3 -0
  195. package/dist/types/pm-plugins/utils.d.ts +3 -0
  196. package/dist/types/reducer.d.ts +2 -0
  197. package/dist/types/toolbar.d.ts +44 -0
  198. package/dist/types/types.d.ts +27 -2
  199. package/dist/types/ui/ConfigPanel/ConfigPanel.d.ts +22 -0
  200. package/dist/types/ui/ConfigPanel/ConfigPanelFieldsLoader.d.ts +21 -0
  201. package/dist/types/ui/ConfigPanel/ConfigPanelLoader.d.ts +5 -0
  202. package/dist/types/ui/ConfigPanel/ErrorMessage/ErrorImage.d.ts +4 -0
  203. package/dist/types/ui/ConfigPanel/ErrorMessage/index.d.ts +10 -0
  204. package/dist/types/ui/ConfigPanel/FieldMessages.d.ts +12 -0
  205. package/dist/types/ui/ConfigPanel/Fields/Boolean.d.ts +8 -0
  206. package/dist/types/ui/ConfigPanel/Fields/CheckboxGroup.d.ts +8 -0
  207. package/dist/types/ui/ConfigPanel/Fields/ColorPicker.d.ts +20 -0
  208. package/dist/types/ui/ConfigPanel/Fields/CustomSelect.d.ts +24 -0
  209. package/dist/types/ui/ConfigPanel/Fields/Date.d.ts +20 -0
  210. package/dist/types/ui/ConfigPanel/Fields/DateRange.d.ts +20 -0
  211. package/dist/types/ui/ConfigPanel/Fields/Enum.d.ts +10 -0
  212. package/dist/types/ui/ConfigPanel/Fields/Expand.d.ts +16 -0
  213. package/dist/types/ui/ConfigPanel/Fields/Fieldset.d.ts +19 -0
  214. package/dist/types/ui/ConfigPanel/Fields/Number.d.ts +10 -0
  215. package/dist/types/ui/ConfigPanel/Fields/RadioGroup.d.ts +8 -0
  216. package/dist/types/ui/ConfigPanel/Fields/Select.d.ts +11 -0
  217. package/dist/types/ui/ConfigPanel/Fields/SelectItem.d.ts +5 -0
  218. package/dist/types/ui/ConfigPanel/Fields/String.d.ts +10 -0
  219. package/dist/types/ui/ConfigPanel/Fields/TabGroup.d.ts +14 -0
  220. package/dist/types/ui/ConfigPanel/Fields/UnhandledType.d.ts +6 -0
  221. package/dist/types/ui/ConfigPanel/Fields/UserSelect.d.ts +10 -0
  222. package/dist/types/ui/ConfigPanel/Fields/common/RequiredIndicator.d.ts +1 -0
  223. package/dist/types/ui/ConfigPanel/FormContent.d.ts +4 -0
  224. package/dist/types/ui/ConfigPanel/FormErrorBoundary.d.ts +16 -0
  225. package/dist/types/ui/ConfigPanel/Header.d.ts +23 -0
  226. package/dist/types/ui/ConfigPanel/LoadingState.d.ts +4 -0
  227. package/dist/types/ui/ConfigPanel/NestedForms/RemovableField.d.ts +19 -0
  228. package/dist/types/ui/ConfigPanel/constants.d.ts +2 -0
  229. package/dist/types/ui/ConfigPanel/index.d.ts +2 -0
  230. package/dist/types/ui/ConfigPanel/messages.d.ts +92 -0
  231. package/dist/types/ui/ConfigPanel/transformers.d.ts +9 -0
  232. package/dist/types/ui/ConfigPanel/types.d.ts +36 -0
  233. package/dist/types/ui/ConfigPanel/use-abortable-effect/index.d.ts +16 -0
  234. package/dist/types/ui/ConfigPanel/use-state-from-promise/index.d.ts +15 -0
  235. package/dist/types/ui/ConfigPanel/utils.d.ts +16 -0
  236. package/dist/types/ui/SaveIndicator/SaveIndicator.d.ts +4 -0
  237. package/dist/types/ui/SaveIndicator/messages.d.ts +7 -0
  238. package/dist/types/ui/SaveIndicator/types.d.ts +11 -0
  239. package/dist/types/utils.d.ts +15 -0
  240. package/dist/types-ts4.5/actions.d.ts +20 -0
  241. package/dist/types-ts4.5/commands.d.ts +15 -0
  242. package/dist/types-ts4.5/context-panel.d.ts +10 -0
  243. package/dist/types-ts4.5/extension-api.d.ts +12 -0
  244. package/dist/types-ts4.5/index.d.ts +2 -1
  245. package/dist/types-ts4.5/plugin-factory.d.ts +4 -0
  246. package/dist/types-ts4.5/plugin-key.d.ts +3 -0
  247. package/dist/types-ts4.5/plugin.d.ts +2 -0
  248. package/dist/types-ts4.5/pm-plugins/keymap.d.ts +3 -0
  249. package/dist/types-ts4.5/pm-plugins/macro/actions.d.ts +9 -0
  250. package/dist/types-ts4.5/pm-plugins/macro/index.d.ts +8 -0
  251. package/dist/types-ts4.5/pm-plugins/macro/plugin-key.d.ts +3 -0
  252. package/dist/types-ts4.5/pm-plugins/macro/types.d.ts +4 -0
  253. package/dist/types-ts4.5/pm-plugins/main.d.ts +25 -0
  254. package/dist/types-ts4.5/pm-plugins/unique-id.d.ts +3 -0
  255. package/dist/types-ts4.5/pm-plugins/utils.d.ts +3 -0
  256. package/dist/types-ts4.5/reducer.d.ts +2 -0
  257. package/dist/types-ts4.5/toolbar.d.ts +44 -0
  258. package/dist/types-ts4.5/types.d.ts +27 -2
  259. package/dist/types-ts4.5/ui/ConfigPanel/ConfigPanel.d.ts +22 -0
  260. package/dist/types-ts4.5/ui/ConfigPanel/ConfigPanelFieldsLoader.d.ts +21 -0
  261. package/dist/types-ts4.5/ui/ConfigPanel/ConfigPanelLoader.d.ts +5 -0
  262. package/dist/types-ts4.5/ui/ConfigPanel/ErrorMessage/ErrorImage.d.ts +4 -0
  263. package/dist/types-ts4.5/ui/ConfigPanel/ErrorMessage/index.d.ts +10 -0
  264. package/dist/types-ts4.5/ui/ConfigPanel/FieldMessages.d.ts +12 -0
  265. package/dist/types-ts4.5/ui/ConfigPanel/Fields/Boolean.d.ts +8 -0
  266. package/dist/types-ts4.5/ui/ConfigPanel/Fields/CheckboxGroup.d.ts +8 -0
  267. package/dist/types-ts4.5/ui/ConfigPanel/Fields/ColorPicker.d.ts +20 -0
  268. package/dist/types-ts4.5/ui/ConfigPanel/Fields/CustomSelect.d.ts +24 -0
  269. package/dist/types-ts4.5/ui/ConfigPanel/Fields/Date.d.ts +20 -0
  270. package/dist/types-ts4.5/ui/ConfigPanel/Fields/DateRange.d.ts +20 -0
  271. package/dist/types-ts4.5/ui/ConfigPanel/Fields/Enum.d.ts +10 -0
  272. package/dist/types-ts4.5/ui/ConfigPanel/Fields/Expand.d.ts +16 -0
  273. package/dist/types-ts4.5/ui/ConfigPanel/Fields/Fieldset.d.ts +19 -0
  274. package/dist/types-ts4.5/ui/ConfigPanel/Fields/Number.d.ts +10 -0
  275. package/dist/types-ts4.5/ui/ConfigPanel/Fields/RadioGroup.d.ts +8 -0
  276. package/dist/types-ts4.5/ui/ConfigPanel/Fields/Select.d.ts +11 -0
  277. package/dist/types-ts4.5/ui/ConfigPanel/Fields/SelectItem.d.ts +5 -0
  278. package/dist/types-ts4.5/ui/ConfigPanel/Fields/String.d.ts +10 -0
  279. package/dist/types-ts4.5/ui/ConfigPanel/Fields/TabGroup.d.ts +14 -0
  280. package/dist/types-ts4.5/ui/ConfigPanel/Fields/UnhandledType.d.ts +6 -0
  281. package/dist/types-ts4.5/ui/ConfigPanel/Fields/UserSelect.d.ts +10 -0
  282. package/dist/types-ts4.5/ui/ConfigPanel/Fields/common/RequiredIndicator.d.ts +1 -0
  283. package/dist/types-ts4.5/ui/ConfigPanel/FormContent.d.ts +4 -0
  284. package/dist/types-ts4.5/ui/ConfigPanel/FormErrorBoundary.d.ts +16 -0
  285. package/dist/types-ts4.5/ui/ConfigPanel/Header.d.ts +23 -0
  286. package/dist/types-ts4.5/ui/ConfigPanel/LoadingState.d.ts +4 -0
  287. package/dist/types-ts4.5/ui/ConfigPanel/NestedForms/RemovableField.d.ts +19 -0
  288. package/dist/types-ts4.5/ui/ConfigPanel/constants.d.ts +2 -0
  289. package/dist/types-ts4.5/ui/ConfigPanel/index.d.ts +2 -0
  290. package/dist/types-ts4.5/ui/ConfigPanel/messages.d.ts +92 -0
  291. package/dist/types-ts4.5/ui/ConfigPanel/transformers.d.ts +9 -0
  292. package/dist/types-ts4.5/ui/ConfigPanel/types.d.ts +39 -0
  293. package/dist/types-ts4.5/ui/ConfigPanel/use-abortable-effect/index.d.ts +16 -0
  294. package/dist/types-ts4.5/ui/ConfigPanel/use-state-from-promise/index.d.ts +18 -0
  295. package/dist/types-ts4.5/ui/ConfigPanel/utils.d.ts +16 -0
  296. package/dist/types-ts4.5/ui/SaveIndicator/SaveIndicator.d.ts +4 -0
  297. package/dist/types-ts4.5/ui/SaveIndicator/messages.d.ts +7 -0
  298. package/dist/types-ts4.5/ui/SaveIndicator/types.d.ts +11 -0
  299. package/dist/types-ts4.5/utils.d.ts +15 -0
  300. package/example-utils/config-panel/ConfigPanelWithExtensionPicker.tsx +217 -0
  301. package/example-utils/config-panel/ConfigPanelWithProviders.tsx +51 -0
  302. package/example-utils/config-panel/ExtensionNodePicker.tsx +141 -0
  303. package/example-utils/config-panel/FieldTypePicker.tsx +63 -0
  304. package/example-utils/config-panel/example-manifest-all-fields.ts +86 -0
  305. package/example-utils/config-panel/example-manifest-individual-fields.ts +85 -0
  306. package/example-utils/config-panel/fields.ts +611 -0
  307. package/package.json +49 -7
@@ -0,0 +1,411 @@
1
+ /** @jsx jsx */
2
+ import { Fragment } from 'react';
3
+ import { css, jsx } from '@emotion/react';
4
+ import { chartsColorPaletteTooltipMessages, DEFAULT_BORDER_COLOR } from '@atlaskit/editor-common/ui-color';
5
+ import { ColorPickerButton } from '@atlaskit/editor-common/ui-menu';
6
+ import { Field } from '@atlaskit/form';
7
+ import { headingSizes } from '@atlaskit/theme/typography';
8
+ import FieldMessages from '../FieldMessages';
9
+ import { validate } from '../utils';
10
+ import { requiredIndicator } from './common/RequiredIndicator';
11
+ /*
12
+ NOTE: color used here are not yet in atlaskit code
13
+ this is part of extended color pack from ADG, which is yet to be release
14
+ at the time of writing this.
15
+
16
+ Colour sequence source: https://product-fabric.atlassian.net/browse/ED-12650?focusedCommentId=204875
17
+ */
18
+
19
+ export const colorPalette = [{
20
+ label: 'Light Blue',
21
+ value: "var(--ds-background-accent-blue-subtle, #7AB2FF)"
22
+ },
23
+ // 400
24
+ {
25
+ label: 'Light Green',
26
+ value: "var(--ds-background-accent-green-subtle, #6BE1B0)"
27
+ },
28
+ // 400
29
+ {
30
+ label: 'Light Yellow',
31
+ value: "var(--ds-background-accent-yellow-subtle, #FFDB57)"
32
+ },
33
+ // 400
34
+ {
35
+ label: 'Light Red',
36
+ value: "var(--ds-background-accent-red-subtle, #FF8F73)"
37
+ },
38
+ // 400
39
+ {
40
+ label: 'Light Purple',
41
+ value: "var(--ds-background-accent-purple-subtle, #B5A7FB)"
42
+ },
43
+ // 400
44
+
45
+ {
46
+ label: 'Blue',
47
+ value: "var(--ds-chart-blue-bold, #247FFF)"
48
+ },
49
+ // 600
50
+ {
51
+ label: 'Green',
52
+ value: "var(--ds-chart-green-bold, #23A971)"
53
+ },
54
+ // 600
55
+ {
56
+ label: 'Yellow',
57
+ value: "var(--ds-chart-yellow-bold, #FFBE33)"
58
+ },
59
+ // 600
60
+ {
61
+ label: 'Red',
62
+ value: "var(--ds-chart-red-bold, #FC552C)"
63
+ },
64
+ // 600
65
+ {
66
+ label: 'Purple',
67
+ value: "var(--ds-chart-purple-bold, #8B77EE)"
68
+ },
69
+ // 600
70
+
71
+ {
72
+ label: 'Dark Blue',
73
+ value: "var(--ds-chart-blue-bolder, #0055CC)"
74
+ },
75
+ // 800
76
+ {
77
+ label: 'Dark Green',
78
+ value: "var(--ds-chart-green-bolder, #177D52)"
79
+ },
80
+ // 800
81
+ {
82
+ label: 'Dark Yellow',
83
+ value: "var(--ds-chart-yellow-bolder, #FF9D00)"
84
+ },
85
+ // 800
86
+ {
87
+ label: 'Dark Red',
88
+ value: "var(--ds-chart-red-bolder, #D32D03)"
89
+ },
90
+ // 800
91
+ {
92
+ label: 'Dark Purple',
93
+ value: "var(--ds-chart-purple-bolder, #5A43D0)"
94
+ },
95
+ // 800
96
+
97
+ {
98
+ label: 'Darker Blue',
99
+ value: "var(--ds-chart-blue-boldest, #003884)"
100
+ },
101
+ // 1000
102
+ {
103
+ label: 'Darker Green',
104
+ value: "var(--ds-chart-green-boldest, #055C3F)"
105
+ },
106
+ // 1000
107
+ {
108
+ label: 'Darker Yellow',
109
+ value: "var(--ds-chart-yellow-boldest, #946104)"
110
+ },
111
+ // 1000
112
+ {
113
+ label: 'Darker Red',
114
+ value: "var(--ds-chart-red-boldest, #A32000)"
115
+ },
116
+ // 1000
117
+ {
118
+ label: 'Darker Purple',
119
+ value: "var(--ds-chart-purple-boldest, #44368B)"
120
+ } // 1000
121
+ ].map(color => ({
122
+ ...color,
123
+ border: DEFAULT_BORDER_COLOR
124
+ }));
125
+
126
+ /**
127
+ * Extended chart colors.
128
+ * Decided here https://product-fabric.atlassian.net/wiki/spaces/EUXQ/pages/3477245015/Tokenising+table+charts+color
129
+ */
130
+ export const extendedColorPalette = [{
131
+ label: 'Darker Blue',
132
+ value: "var(--ds-chart-blue-boldest, #003884)"
133
+ },
134
+ // 1000
135
+ {
136
+ label: 'Darker Teal',
137
+ value: "var(--ds-chart-teal-boldest, #206B74)"
138
+ },
139
+ // 1000
140
+ {
141
+ label: 'Darker Green',
142
+ value: "var(--ds-chart-green-boldest, #055C3F)"
143
+ },
144
+ // 1000
145
+ {
146
+ label: 'Darker Yellow',
147
+ value: "var(--ds-chart-yellow-boldest, #946104)"
148
+ },
149
+ // 1000
150
+ {
151
+ label: 'Darker Orange',
152
+ value: "var(--ds-chart-orange-boldest, #974F0C)"
153
+ },
154
+ // 1000
155
+ {
156
+ label: 'Darker Red',
157
+ value: "var(--ds-chart-red-boldest, #A32000)"
158
+ },
159
+ // 1000
160
+ {
161
+ label: 'Darker Magenta',
162
+ value: "var(--ds-chart-magenta-boldest, #943D73)"
163
+ },
164
+ // 1000
165
+ {
166
+ label: 'Darker Purple',
167
+ value: "var(--ds-chart-purple-boldest, #44368B)"
168
+ },
169
+ // 1000
170
+ {
171
+ label: 'Darker Gray',
172
+ value: "var(--ds-chart-gray-boldest, #44546F)"
173
+ },
174
+ // 1000
175
+
176
+ {
177
+ label: 'Dark Blue',
178
+ value: "var(--ds-chart-blue-bolder, #0055CC)"
179
+ },
180
+ // 800
181
+ {
182
+ label: 'Dark Teal',
183
+ value: "var(--ds-chart-teal-bolder, #1D7F8C)"
184
+ },
185
+ // 800
186
+ {
187
+ label: 'Dark Green',
188
+ value: "var(--ds-chart-green-bolder, #177D52)"
189
+ },
190
+ // 800
191
+ {
192
+ label: 'Dark Yellow',
193
+ value: "var(--ds-chart-yellow-bolder, #FF9D00)"
194
+ },
195
+ // 800
196
+ {
197
+ label: 'Dark Orange',
198
+ value: "var(--ds-chart-orange-bolder, #B65C02)"
199
+ },
200
+ // 800
201
+ {
202
+ label: 'Dark Red',
203
+ value: "var(--ds-chart-red-bolder, #D32D03)"
204
+ },
205
+ // 800
206
+ {
207
+ label: 'Dark Magenta',
208
+ value: "var(--ds-chart-magenta-bolder, #CD519D)"
209
+ },
210
+ // 800
211
+ {
212
+ label: 'Dark Purple',
213
+ value: "var(--ds-chart-purple-bolder, #5A43D0)"
214
+ },
215
+ // 800
216
+ {
217
+ label: 'Dark Gray',
218
+ value: "var(--ds-chart-gray-bolder, #758195)"
219
+ },
220
+ // 800
221
+
222
+ {
223
+ label: 'Blue',
224
+ value: "var(--ds-chart-blue-bold, #247FFF)"
225
+ },
226
+ // 600
227
+ {
228
+ label: 'Teal',
229
+ value: "var(--ds-chart-teal-bold, #1D9AAA)"
230
+ },
231
+ // 600
232
+ {
233
+ label: 'Green',
234
+ value: "var(--ds-chart-green-bold, #23A971)"
235
+ },
236
+ // 600
237
+ {
238
+ label: 'Yellow',
239
+ value: "var(--ds-chart-yellow-bold, #FFBE33)"
240
+ },
241
+ // 600
242
+ {
243
+ label: 'Orange',
244
+ value: "var(--ds-chart-orange-bold, #D97008)"
245
+ },
246
+ // 600
247
+ {
248
+ label: 'Red',
249
+ value: "var(--ds-chart-red-bold, #FC552C)"
250
+ },
251
+ // 600
252
+ {
253
+ label: 'Magenta',
254
+ value: "var(--ds-chart-magenta-bold, #DA62AC)"
255
+ },
256
+ // 600
257
+ {
258
+ label: 'Purple',
259
+ value: "var(--ds-chart-purple-bold, #8B77EE)"
260
+ },
261
+ // 600
262
+ {
263
+ label: 'Gray',
264
+ value: "var(--ds-chart-gray-bold, #8590A2)"
265
+ },
266
+ // 600
267
+
268
+ {
269
+ label: 'Light Blue',
270
+ value: "var(--ds-background-accent-blue-subtle, #7AB2FF)"
271
+ },
272
+ // 400
273
+ {
274
+ label: 'Light Teal',
275
+ value: "var(--ds-background-accent-teal-subtle, #60C6D2)"
276
+ },
277
+ // 400
278
+ {
279
+ label: 'Light Green',
280
+ value: "var(--ds-background-accent-green-subtle, #6BE1B0)"
281
+ },
282
+ // 400
283
+ {
284
+ label: 'Light Yellow',
285
+ value: "var(--ds-background-accent-yellow-subtle, #FFDB57)"
286
+ },
287
+ // 400
288
+ {
289
+ label: 'Light Orange',
290
+ value: "var(--ds-background-accent-orange-subtle, #FAA53D)"
291
+ },
292
+ // 400
293
+ {
294
+ label: 'Light Red',
295
+ value: "var(--ds-background-accent-red-subtle, #FF8F73)"
296
+ },
297
+ // 400
298
+ {
299
+ label: 'Light Magenta',
300
+ value: "var(--ds-background-accent-magenta-subtle, #E774BB)"
301
+ },
302
+ // 400
303
+ {
304
+ label: 'Light Purple',
305
+ value: "var(--ds-background-accent-purple-subtle, #B5A7FB)"
306
+ },
307
+ // 400
308
+ {
309
+ label: 'Light Gray',
310
+ value: "var(--ds-background-accent-gray-subtle, #8993A5)"
311
+ } // 400
312
+ ].map(color => ({
313
+ ...color,
314
+ border: DEFAULT_BORDER_COLOR
315
+ }));
316
+ const colorPickerWrapperStyles = css({
317
+ display: 'flex',
318
+ justifyContent: 'space-between',
319
+ alignItems: 'center',
320
+ height: "var(--ds-space-400, 32px)",
321
+ paddingRight: "var(--ds-space-100, 8px)"
322
+ });
323
+ const colorPickerLabelStyles = css({
324
+ fontSize: `${headingSizes.h400.size}px`,
325
+ marginTop: 0
326
+ });
327
+ export const EXPANDED_COLOR_PICKER_COLUMNS = 9;
328
+ export const ORIGINAL_COLOR_PICKER_COLUMNS = 5;
329
+ const ColorPicker = props => {
330
+ const {
331
+ name,
332
+ title,
333
+ currentColor,
334
+ onChange,
335
+ onFieldChange
336
+ } = props;
337
+ const onColorChange = color => {
338
+ const colorValue = color.value;
339
+ onChange(colorValue);
340
+ onFieldChange(name, currentColor !== colorValue);
341
+ };
342
+ return jsx(ColorPickerButton, {
343
+ title: title,
344
+ currentColor: currentColor,
345
+ onChange: onColorChange,
346
+ colorPalette: extendedColorPalette,
347
+ paletteColorTooltipMessages: chartsColorPaletteTooltipMessages,
348
+ cols: EXPANDED_COLOR_PICKER_COLUMNS,
349
+ alignX: "right",
350
+ placement: "ConfigPanel",
351
+ size: {
352
+ width: "var(--ds-space-300, 24px)",
353
+ height: "var(--ds-space-300, 24px)"
354
+ }
355
+ /* ED-18288 We align the palette to the right edge which is 1.5rem spacing away to avoid
356
+ excess overflow on left. Additional 1 is to mitigate 1px added by floating toolbar. */,
357
+ absoluteOffset: {
358
+ right: Number(-1.5 * getCurrentRemSize() - 1)
359
+ }
360
+ });
361
+ };
362
+ const ColorPickerField = ({
363
+ name,
364
+ field,
365
+ onFieldChange,
366
+ featureFlags
367
+ }) => {
368
+ const {
369
+ label,
370
+ defaultValue,
371
+ isRequired
372
+ } = field;
373
+ return jsx(Field, {
374
+ name: name,
375
+ isRequired: isRequired,
376
+ defaultValue: defaultValue,
377
+ testId: `config-panel-color-picker-${name}`,
378
+ validate: value => validate(field, value || '')
379
+ }, ({
380
+ fieldProps,
381
+ error
382
+ }) => jsx(Fragment, null, jsx("div", {
383
+ css: colorPickerWrapperStyles
384
+ }, jsx("label", {
385
+ css: colorPickerLabelStyles
386
+ }, label, isRequired &&
387
+ // eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage
388
+ jsx("span", {
389
+ css: requiredIndicator,
390
+ "aria-hidden": "true"
391
+ }, "*")), jsx(ColorPicker, {
392
+ name: name,
393
+ title: label,
394
+ currentColor: fieldProps.value,
395
+ onChange: fieldProps.onChange,
396
+ onFieldChange: onFieldChange,
397
+ featureFlags: featureFlags
398
+ })), error && jsx(FieldMessages, {
399
+ error: error,
400
+ description: ""
401
+ })));
402
+ };
403
+ const getCurrentRemSize = () => {
404
+ const fallback = 16; // 16px is the default rem size for most browsers
405
+ if (typeof document === 'undefined' || typeof getComputedStyle === 'undefined') {
406
+ return fallback;
407
+ }
408
+ const value = parseFloat(getComputedStyle(document.documentElement).fontSize);
409
+ return value || fallback;
410
+ };
411
+ export default ColorPickerField;
@@ -0,0 +1,132 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { useEffect, useState } from 'react';
3
+ import { injectIntl } from 'react-intl-next';
4
+ import { getCustomFieldResolver } from '@atlaskit/editor-common/extensions';
5
+ import { Field } from '@atlaskit/form';
6
+ import { AsyncCreatableSelect } from '@atlaskit/select';
7
+ import FieldMessages from '../FieldMessages';
8
+ import { messages } from '../messages';
9
+ import { validate } from '../utils';
10
+ import { formatOptionLabel } from './SelectItem';
11
+ import UnhandledType from './UnhandledType';
12
+ function FieldError({
13
+ name,
14
+ field
15
+ }) {
16
+ const {
17
+ type
18
+ } = field.options.resolver;
19
+ return /*#__PURE__*/React.createElement(UnhandledType, {
20
+ key: name,
21
+ field: field,
22
+ errorMessage: `Field "${name}" can't be rendered. Missing resolver for "${type}".`
23
+ });
24
+ }
25
+ function CustomSelect({
26
+ name,
27
+ autoFocus,
28
+ extensionManifest,
29
+ placeholder,
30
+ field,
31
+ onFieldChange,
32
+ parameters,
33
+ intl
34
+ }) {
35
+ const {
36
+ defaultValue: fieldDefaultValue,
37
+ description,
38
+ isMultiple,
39
+ isRequired,
40
+ label,
41
+ options
42
+ } = field;
43
+ const [loading, setLoading] = useState(true);
44
+ const [resolver, setResolver] = useState(null);
45
+ const [defaultOptions, setDefaultOptions] = useState([]);
46
+ const [defaultValue, setDefaultValue] = useState(undefined);
47
+ useEffect(() => {
48
+ let cancel = false;
49
+ async function fetchResolver() {
50
+ setLoading(true);
51
+ try {
52
+ const resolver = await getCustomFieldResolver(extensionManifest, field.options.resolver);
53
+ if (cancel) {
54
+ return;
55
+ }
56
+ setResolver(() => resolver);
57
+
58
+ // fetch the default values
59
+ const options = await resolver(undefined, fieldDefaultValue, parameters);
60
+ setDefaultOptions(options);
61
+ if (cancel) {
62
+ return;
63
+ }
64
+
65
+ // filter returned values to match the defaultValue
66
+ if (fieldDefaultValue && isMultiple) {
67
+ setDefaultValue(options.filter(option => fieldDefaultValue.includes(option.value)));
68
+ }
69
+ if (fieldDefaultValue && !isMultiple) {
70
+ setDefaultValue(options.find(option => fieldDefaultValue === option.value));
71
+ }
72
+ } catch (e) {
73
+ // eslint-disable-next-line no-console
74
+ console.error(e);
75
+ }
76
+ setLoading(false);
77
+ }
78
+ fetchResolver();
79
+ return () => {
80
+ cancel = true;
81
+ };
82
+ }, [extensionManifest, field.options.resolver, fieldDefaultValue, isMultiple, parameters]);
83
+ function formatCreateLabel(value) {
84
+ if (!value) {
85
+ return null;
86
+ }
87
+ const message = intl.formatMessage(messages.createOption);
88
+ return `${message} "${value}"`;
89
+ }
90
+ const {
91
+ isCreatable
92
+ } = options;
93
+ return /*#__PURE__*/React.createElement(Field, {
94
+ name: name,
95
+ label: label,
96
+ isRequired: isRequired,
97
+ defaultValue: defaultValue,
98
+ validate: value => validate(field, value),
99
+ testId: `config-panel-custom-select-${name}`
100
+ }, ({
101
+ fieldProps,
102
+ error
103
+ }) => /*#__PURE__*/React.createElement(React.Fragment, null, resolver && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(AsyncCreatableSelect, _extends({}, fieldProps, {
104
+ onChange: value => {
105
+ fieldProps.onChange(value);
106
+ // We assume onChange is called whenever values actually changed
107
+ // for isDirty
108
+ onFieldChange(name, true);
109
+ }
110
+ // add type cast to avoid adding a "IsMulti" generic prop (TODO: ED-12072)
111
+ ,
112
+ isMulti: isMultiple || false,
113
+ isClearable: true,
114
+ isValidNewOption: value => !!(isCreatable && value),
115
+ validationState: error ? 'error' : 'default',
116
+ defaultOptions: defaultOptions,
117
+ formatCreateLabel: value => formatCreateLabel(value),
118
+ formatOptionLabel: formatOptionLabel,
119
+ loadOptions: searchTerm => {
120
+ return resolver(searchTerm, fieldDefaultValue, parameters);
121
+ },
122
+ autoFocus: autoFocus,
123
+ placeholder: placeholder
124
+ })), /*#__PURE__*/React.createElement(FieldMessages, {
125
+ error: error,
126
+ description: description
127
+ })), !loading && !resolver && /*#__PURE__*/React.createElement(FieldError, {
128
+ name: name,
129
+ field: field
130
+ })));
131
+ }
132
+ export default injectIntl(CustomSelect);
@@ -0,0 +1,50 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React from 'react';
3
+ import { injectIntl } from 'react-intl-next';
4
+ import { DatePicker } from '@atlaskit/datetime-picker';
5
+ import { Field } from '@atlaskit/form';
6
+ import FieldMessages from '../FieldMessages';
7
+ import { validate } from '../utils';
8
+ function Date({
9
+ name,
10
+ field,
11
+ autoFocus,
12
+ onFieldChange,
13
+ placeholder,
14
+ intl
15
+ }) {
16
+ const {
17
+ label,
18
+ description,
19
+ defaultValue,
20
+ isRequired
21
+ } = field;
22
+ return /*#__PURE__*/React.createElement(Field, {
23
+ name: name,
24
+ label: label,
25
+ defaultValue: defaultValue,
26
+ isRequired: isRequired,
27
+ validate: value => validate(field, value),
28
+ testId: `config-panel-date-picker-${name}`
29
+ }, ({
30
+ fieldProps,
31
+ error
32
+ }) => {
33
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DatePicker, _extends({}, fieldProps, {
34
+ autoFocus: autoFocus,
35
+ onBlur: () => {
36
+ fieldProps.onBlur();
37
+ },
38
+ onChange: value => {
39
+ fieldProps.onChange(value);
40
+ onFieldChange(name, true);
41
+ },
42
+ locale: intl.locale,
43
+ placeholder: placeholder
44
+ })), /*#__PURE__*/React.createElement(FieldMessages, {
45
+ error: error,
46
+ description: description
47
+ }));
48
+ });
49
+ }
50
+ export default injectIntl(Date);