@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,34 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import { useCallback, useState } from 'react';
4
+ import { useAbortableEffect } from '../use-abortable-effect';
5
+ /**
6
+ * Similar to useState but deals with async values.
7
+ * Simply pass a promise and it will set the state when it resolves. It won't try to set if
8
+ * the component unmounts
9
+ *
10
+ * Note: This hook follows the signature of useEffect so it can be linted if enabled through the
11
+ * `additionalHooks` config.
12
+ *
13
+ * @param callback
14
+ * @param deps
15
+ */
16
+ export function useStateFromPromise(callback, deps, initialValue) {
17
+ // AFP-2511 TODO: Fix automatic suppressions below
18
+ // eslint-disable-next-line react-hooks/exhaustive-deps
19
+ var fn = useCallback(callback, deps);
20
+ var _useState = useState(initialValue),
21
+ _useState2 = _slicedToArray(_useState, 2),
22
+ value = _useState2[0],
23
+ setValue = _useState2[1];
24
+ useAbortableEffect(function (signal) {
25
+ Promise.resolve(fn()).then(function (result) {
26
+ if (signal.aborted) {
27
+ return;
28
+ }
29
+ setValue(result);
30
+ });
31
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
32
+ _toConsumableArray(deps));
33
+ return [value, setValue];
34
+ }
@@ -0,0 +1,109 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ import { isOptionsGrouped } from '@atlaskit/select';
5
+ import { ALLOWED_LOGGED_MACRO_PARAMS, ALLOWED_PARAM_TYPES } from './constants';
6
+ import { ValidationError } from './types';
7
+ export var validate = function validate(field, value) {
8
+ return validateRequired(field, value);
9
+ };
10
+ var isEmptyString = function isEmptyString(value) {
11
+ return typeof value === 'string' && value === '';
12
+ };
13
+ var isEmptyArray = function isEmptyArray(value) {
14
+ return Array.isArray(value) && value.length === 0;
15
+ };
16
+ var getUngroupedOptions = function getUngroupedOptions(groupedOptions) {
17
+ return groupedOptions.flatMap(function (option) {
18
+ return option.options;
19
+ });
20
+ };
21
+ export var validateRequired = function validateRequired(_ref, value) {
22
+ var isRequired = _ref.isRequired,
23
+ isMultiple = _ref.isMultiple;
24
+ if (isRequired) {
25
+ var isUndefined = typeof value === 'undefined';
26
+ var isEmpty = isEmptyString(value) || isMultiple && isEmptyArray(value) || false;
27
+ return isUndefined || isEmpty ? ValidationError.Required : undefined;
28
+ }
29
+ return undefined;
30
+ };
31
+ export var getOptionFromValue = function getOptionFromValue(options, value) {
32
+ if (!Array.isArray(options) || options.length === 0) {
33
+ return undefined;
34
+ }
35
+ if (Array.isArray(value)) {
36
+ if (isOptionsGrouped(options)) {
37
+ return getUngroupedOptions(options).filter(function (option) {
38
+ return value.includes(option.value);
39
+ });
40
+ }
41
+ return options.filter(function (option) {
42
+ return value.includes(option.value);
43
+ });
44
+ }
45
+ if (isOptionsGrouped(options)) {
46
+ return getUngroupedOptions(options).find(function (option) {
47
+ return value === option.value;
48
+ });
49
+ }
50
+ return options.find(function (option) {
51
+ return value === option.value;
52
+ });
53
+ };
54
+
55
+ // Atlaskit uses final-form to power the form.
56
+ // Final-form will create nesting in the tree if a dot (.) is used in the name of the field.
57
+ // A parent is provided from a <Fieldset /> and is appended to the name here for simplicity
58
+ export var getSafeParentedName = function getSafeParentedName(name, parentName) {
59
+ if (parentName && name.indexOf("".concat(parentName, ".")) === -1) {
60
+ return "".concat(parentName, ".").concat(name);
61
+ }
62
+ return name;
63
+ };
64
+ var duplicateFieldRegex = /:[0-9]+$/;
65
+ export var isDuplicateField = function isDuplicateField(key) {
66
+ return duplicateFieldRegex.test(key);
67
+ };
68
+ export var getNameFromDuplicateField = function getNameFromDuplicateField(key) {
69
+ return key.replace(duplicateFieldRegex, '');
70
+ };
71
+
72
+ // An overly cautious parser for sanitizing configuration parameters of UGC
73
+ export var parseParamType = function parseParamType(paramValue, paramField) {
74
+ if (paramValue && paramField) {
75
+ if (paramField.type === 'string') {
76
+ if (paramField.name === 'types') {
77
+ // Parse types field as an array of valid content types
78
+ var contentTypes = ['page', 'blogpost', 'comment', 'attachment'];
79
+ return paramValue && paramValue.split(',').map(function (type) {
80
+ return type.trim();
81
+ }).filter(function (type) {
82
+ return contentTypes.includes(type);
83
+ });
84
+ }
85
+ if (paramField.name === 'width') {
86
+ return parseFloat(paramValue);
87
+ }
88
+ // Strings are very risky - return empty string in case anything slips through
89
+ return '';
90
+ }
91
+ if (ALLOWED_PARAM_TYPES.includes(paramField.type)) {
92
+ // The param types defined here are already parsed and safe to log
93
+ return paramValue;
94
+ }
95
+ }
96
+ // Safety net
97
+ return null;
98
+ };
99
+ export var getLoggedParameters = function getLoggedParameters(macroKey, currentParams, macroFields) {
100
+ // Get the parameters only defined in the allowlist of logged macro/parameter keys
101
+ return Object.keys(currentParams).filter(function (paramKey) {
102
+ var _ALLOWED_LOGGED_MACRO;
103
+ return (_ALLOWED_LOGGED_MACRO = ALLOWED_LOGGED_MACRO_PARAMS[macroKey]) === null || _ALLOWED_LOGGED_MACRO === void 0 ? void 0 : _ALLOWED_LOGGED_MACRO.includes(paramKey);
104
+ }).reduce(function (obj, param) {
105
+ return _objectSpread(_objectSpread({}, obj), {}, _defineProperty({}, param, parseParamType(currentParams[param], macroFields === null || macroFields === void 0 ? void 0 : macroFields.find(function (field) {
106
+ return field.name === param;
107
+ }))));
108
+ }, {});
109
+ };
@@ -0,0 +1,72 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ /** @jsx jsx */
3
+
4
+ import { Fragment, useCallback, useEffect, useRef, useState } from 'react';
5
+ import { css, jsx } from '@emotion/react';
6
+ import { FormattedMessage } from 'react-intl-next';
7
+ import CheckCircleIcon from '@atlaskit/icon/glyph/check-circle';
8
+ import { G300, N0 } from '@atlaskit/theme/colors';
9
+ import { messages } from './messages';
10
+ var noop = function noop() {};
11
+ var saveIndicatorWrapperStyles = css({
12
+ display: 'flex',
13
+ justifyContent: 'center'
14
+ });
15
+ var saveIndicatorContentStyles = css({
16
+ position: 'fixed',
17
+ width: '256px',
18
+ bottom: "var(--ds-space-250, 20px)",
19
+ display: 'flex',
20
+ flexDirection: 'row',
21
+ alignItems: 'center',
22
+ padding: "var(--ds-space-075, 6px)".concat(" ", "var(--ds-space-150, 12px)"),
23
+ background: "var(--ds-surface-overlay, ".concat(N0, ")"),
24
+ /* E300 */
25
+ boxShadow: "var(--ds-shadow-overlay, ".concat("0px 8px 12px rgba(9, 30, 66, 0.15), 0px 0px 1px rgba(9, 30, 66, 0.31)", ")"),
26
+ borderRadius: '16px'
27
+ });
28
+ var saveIndicatorTextStyles = css({
29
+ paddingLeft: "var(--ds-space-075, 6px)"
30
+ });
31
+ export var SaveIndicator = function SaveIndicator(_ref) {
32
+ var children = _ref.children,
33
+ duration = _ref.duration,
34
+ _ref$visible = _ref.visible,
35
+ visible = _ref$visible === void 0 ? true : _ref$visible;
36
+ var _useState = useState(false),
37
+ _useState2 = _slicedToArray(_useState, 2),
38
+ saving = _useState2[0],
39
+ setSaving = _useState2[1];
40
+ var shown = useRef(false);
41
+ var onSaveStarted = useCallback(function () {
42
+ if (!shown.current) {
43
+ setSaving(true);
44
+ shown.current = true;
45
+ }
46
+ }, []);
47
+ useEffect(function () {
48
+ if (saving) {
49
+ var handleId = setTimeout(function () {
50
+ setSaving(false);
51
+ }, duration);
52
+ return function () {
53
+ return clearTimeout(handleId);
54
+ };
55
+ }
56
+ }, [saving, duration]);
57
+ return jsx(Fragment, null, jsx("div", null, children({
58
+ onSaveStarted: onSaveStarted,
59
+ onSaveEnded: noop
60
+ })), visible && saving && jsx("div", {
61
+ css: saveIndicatorWrapperStyles
62
+ }, jsx("div", {
63
+ css: saveIndicatorContentStyles,
64
+ "data-testid": "save-indicator-content"
65
+ }, jsx(CheckCircleIcon, {
66
+ label: "Saving",
67
+ primaryColor: "var(--ds-icon-success, ".concat(G300, ")"),
68
+ size: "small"
69
+ }), jsx("span", {
70
+ css: saveIndicatorTextStyles
71
+ }, jsx(FormattedMessage, messages.saveIndicator)))));
72
+ };
@@ -0,0 +1,8 @@
1
+ import { defineMessages } from 'react-intl-next';
2
+ export var messages = defineMessages({
3
+ saveIndicator: {
4
+ id: 'fabric.editor.extensions.config-panel.save-indicator',
5
+ defaultMessage: 'All changes are always autosaved',
6
+ description: 'Message shown to the user to notify to them that we save the changes automatically.'
7
+ }
8
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,67 @@
1
+ import { closestElement, findNodePosByLocalIds } from '@atlaskit/editor-common/utils';
2
+ import { findDomRefAtPos, findParentNodeOfType, findSelectedNodeOfType } from '@atlaskit/editor-prosemirror/utils';
3
+ export var getSelectedExtension = function getSelectedExtension(state) {
4
+ var searchParent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
5
+ var _state$schema$nodes = state.schema.nodes,
6
+ inlineExtension = _state$schema$nodes.inlineExtension,
7
+ extension = _state$schema$nodes.extension,
8
+ bodiedExtension = _state$schema$nodes.bodiedExtension,
9
+ multiBodiedExtension = _state$schema$nodes.multiBodiedExtension;
10
+ var nodeTypes = [extension, bodiedExtension, inlineExtension, multiBodiedExtension];
11
+ return findSelectedNodeOfType(nodeTypes)(state.selection) || searchParent && findParentNodeOfType(nodeTypes)(state.selection) || undefined;
12
+ };
13
+ export var findExtensionWithLocalId = function findExtensionWithLocalId(state, localId) {
14
+ var selectedExtension = getSelectedExtension(state, true);
15
+ if (!localId) {
16
+ return selectedExtension;
17
+ }
18
+ if (selectedExtension && selectedExtension.node.attrs.localId === localId) {
19
+ return selectedExtension;
20
+ }
21
+ var _state$schema$nodes2 = state.schema.nodes,
22
+ inlineExtension = _state$schema$nodes2.inlineExtension,
23
+ extension = _state$schema$nodes2.extension,
24
+ bodiedExtension = _state$schema$nodes2.bodiedExtension,
25
+ multiBodiedExtension = _state$schema$nodes2.multiBodiedExtension;
26
+ var nodeTypes = [extension, bodiedExtension, inlineExtension, multiBodiedExtension];
27
+ var matched;
28
+ state.doc.descendants(function (node, pos) {
29
+ if (nodeTypes.includes(node.type) && node.attrs.localId === localId) {
30
+ matched = {
31
+ node: node,
32
+ pos: pos
33
+ };
34
+ }
35
+ });
36
+ return matched;
37
+ };
38
+ export var getSelectedDomElement = function getSelectedDomElement(schema, domAtPos, selectedExtensionNode) {
39
+ var selectedExtensionDomNode = findDomRefAtPos(selectedExtensionNode.pos, domAtPos);
40
+ var isContentExtension = selectedExtensionNode.node.type !== schema.nodes.bodiedExtension;
41
+ return (
42
+ // Content extension can be nested in bodied-extension, the following check is necessary for that case
43
+ (isContentExtension ?
44
+ // Search down
45
+ selectedExtensionDomNode.querySelector('.extension-container') :
46
+ // Try searching up and then down
47
+ closestElement(selectedExtensionDomNode, '.extension-container') || selectedExtensionDomNode.querySelector('.extension-container')) || selectedExtensionDomNode
48
+ );
49
+ };
50
+ export var getDataConsumerMark = function getDataConsumerMark(newNode) {
51
+ var _newNode$marks;
52
+ return (_newNode$marks = newNode.marks) === null || _newNode$marks === void 0 ? void 0 : _newNode$marks.find(function (mark) {
53
+ return mark.type.name === 'dataConsumer';
54
+ });
55
+ };
56
+ export var getNodeTypesReferenced = function getNodeTypesReferenced(ids, state) {
57
+ return findNodePosByLocalIds(state, ids, {
58
+ includeDocNode: true
59
+ }).map(function (_ref) {
60
+ var node = _ref.node;
61
+ return node.type.name;
62
+ });
63
+ };
64
+ export var findNodePosWithLocalId = function findNodePosWithLocalId(state, localId) {
65
+ var nodes = findNodePosByLocalIds(state, [localId]);
66
+ return nodes.length >= 1 ? nodes[0] : undefined;
67
+ };
@@ -0,0 +1,20 @@
1
+ export { transformSliceToRemoveOpenBodiedExtension } from '@atlaskit/editor-common/transforms';
2
+ import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
3
+ import type { UpdateExtension } from '@atlaskit/editor-common/extensions';
4
+ import type { MacroProvider } from '@atlaskit/editor-common/provider-factory';
5
+ import type { Command } from '@atlaskit/editor-common/types';
6
+ import type { ApplyChangeHandler } from '@atlaskit/editor-plugin-context-panel';
7
+ import type { Fragment, Mark, Node as PmNode, Schema } from '@atlaskit/editor-prosemirror/model';
8
+ import type { EditorView } from '@atlaskit/editor-prosemirror/view';
9
+ export declare const buildExtensionNode: <S extends Schema<any, any>>(type: 'inlineExtension' | 'extension' | 'bodiedExtension', schema: S, attrs: object, content?: Fragment, marks?: readonly Mark[]) => PmNode;
10
+ export declare const performNodeUpdate: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined) => (type: 'inlineExtension' | 'extension' | 'bodiedExtension', newAttrs: object, content: Fragment, marks: readonly Mark[], shouldScrollIntoView: boolean) => Command;
11
+ interface EditorActions {
12
+ _privateGetEditorView: () => EditorView | undefined;
13
+ }
14
+ export declare const editSelectedExtension: (editorActions: EditorActions) => boolean;
15
+ export declare const editExtension: (macroProvider: MacroProvider | null | undefined, applyChangeToContextPanel: ApplyChangeHandler | undefined, editorAnalyticsAPI: EditorAnalyticsAPI | undefined, updateExtension?: Promise<UpdateExtension<object> | void>) => Command;
16
+ type Props = {
17
+ editorViewRef: Record<'current', EditorView | null>;
18
+ editorAnalyticsAPI: EditorAnalyticsAPI | undefined;
19
+ };
20
+ export declare const createEditSelectedExtensionAction: ({ editorViewRef, editorAnalyticsAPI }: Props) => () => boolean;
@@ -0,0 +1,15 @@
1
+ import type { ExtensionLayout } from '@atlaskit/adf-schema';
2
+ import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
3
+ import type { Parameters, TransformAfter, TransformBefore } from '@atlaskit/editor-common/extensions';
4
+ import type { ApplyChangeHandler } from '@atlaskit/editor-plugin-context-panel';
5
+ import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
6
+ import type { EditorState, Transaction } from '@atlaskit/editor-prosemirror/state';
7
+ import type { ExtensionState, RejectSave } from './types';
8
+ export declare function updateState(state: Partial<ExtensionState>): import("@atlaskit/editor-common/types").Command;
9
+ export declare function setEditingContextToContextPanel<T extends Parameters = Parameters>(processParametersBefore: TransformBefore<T>, processParametersAfter: TransformAfter<T>, applyChangeToContextPanel: ApplyChangeHandler | undefined): import("@atlaskit/editor-common/types").Command;
10
+ export declare const clearEditingContext: (applyChangeToContextPanel: ApplyChangeHandler | undefined) => import("@atlaskit/editor-common/types").Command;
11
+ export declare const forceAutoSave: (applyChangeToContextPanel: ApplyChangeHandler | undefined) => (resolve: () => void, reject?: RejectSave) => import("@atlaskit/editor-common/types").Command;
12
+ export declare const updateExtensionLayout: (layout: ExtensionLayout) => import("@atlaskit/editor-common/types").Command;
13
+ export declare const removeExtension: (editorAnalyticsAPI?: EditorAnalyticsAPI) => import("@atlaskit/editor-common/types").Command;
14
+ export declare const removeDescendantNodes: (sourceNode?: PMNode) => import("@atlaskit/editor-common/types").Command;
15
+ export declare const checkAndRemoveExtensionNode: (state: EditorState, tr: Transaction, analyticsApi?: EditorAnalyticsAPI) => Transaction;
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import type { FeatureFlags } from '@atlaskit/editor-common/types';
3
+ import type { ApplyChangeHandler } from '@atlaskit/editor-plugin-context-panel';
4
+ import type { Node } from '@atlaskit/editor-prosemirror/model';
5
+ import type { EditorState, Selection } from '@atlaskit/editor-prosemirror/state';
6
+ import type { ContentNodeWithPos } from '@atlaskit/editor-prosemirror/utils';
7
+ import type { EditorView } from '@atlaskit/editor-prosemirror/view';
8
+ export declare const duplicateSelection: (selectionToDuplicate: Selection, doc: Node) => Selection | undefined;
9
+ export declare const getContextPanel: (getEditorView?: () => EditorView | undefined) => (allowAutoSave?: boolean, featureFlags?: FeatureFlags, applyChange?: ApplyChangeHandler) => (state: EditorState) => JSX.Element | undefined;
10
+ export declare function onChangeAction(editorView: EditorView, updatedParameters: object | undefined, oldParameters: object | undefined, nodeWithPos: ContentNodeWithPos, onSaving?: () => void): Promise<void>;
@@ -0,0 +1,12 @@
1
+ import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
2
+ import type { MacroProvider } from '@atlaskit/editor-common/provider-factory';
3
+ import type { EditorView } from '@atlaskit/editor-prosemirror/view';
4
+ import type { CreateExtensionAPI } from './types';
5
+ interface EditInLegacyMacroBrowserArgs {
6
+ view: EditorView;
7
+ editorAnalyticsAPI: EditorAnalyticsAPI | undefined;
8
+ macroProvider?: MacroProvider;
9
+ }
10
+ export declare const getEditInLegacyMacroBrowser: ({ view, macroProvider, editorAnalyticsAPI, }: EditInLegacyMacroBrowserArgs) => () => void;
11
+ export declare const createExtensionAPI: CreateExtensionAPI;
12
+ export {};
@@ -1 +1,2 @@
1
- export type { CreateExtensionAPI, ExtensionPlugin, ExtensionPluginOptions, RunMacroAutoConvert, } from './types';
1
+ export type { CreateExtensionAPI, ExtensionPlugin, ExtensionPluginOptions, RunMacroAutoConvert, RejectSave, } from './types';
2
+ export { extensionPlugin } from './plugin';
@@ -0,0 +1,4 @@
1
+ import type { ExtensionState } from './types';
2
+ export declare const createPluginState: (dispatch: import("@atlaskit/editor-common/event-dispatcher").Dispatch<any>, initialState: ExtensionState<import("@atlaskit/editor-common/extensions").Parameters> | ((state: import("prosemirror-state").EditorState) => ExtensionState<import("@atlaskit/editor-common/extensions").Parameters>)) => import("prosemirror-state").SafeStateField<ExtensionState<import("@atlaskit/editor-common/extensions").Parameters>>;
3
+ export declare const createCommand: <A = import("./types").ExtensionAction<import("@atlaskit/editor-common/extensions").Parameters>>(action: A | ((state: Readonly<import("prosemirror-state").EditorState>) => false | A), transform?: ((tr: import("prosemirror-state").Transaction, state: import("prosemirror-state").EditorState) => import("prosemirror-state").Transaction) | undefined) => import("@atlaskit/editor-common/types").Command;
4
+ export declare const getPluginState: (state: import("prosemirror-state").EditorState) => ExtensionState<import("@atlaskit/editor-common/extensions").Parameters>;
@@ -0,0 +1,3 @@
1
+ import { PluginKey } from '@atlaskit/editor-prosemirror/state';
2
+ import type { ExtensionState } from './types';
3
+ export declare const pluginKey: PluginKey<ExtensionState<import("@atlaskit/editor-common/extensions").Parameters>>;
@@ -0,0 +1,2 @@
1
+ import type { ExtensionPlugin } from './types';
2
+ export declare const extensionPlugin: ExtensionPlugin;
@@ -0,0 +1,3 @@
1
+ import type { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
+ import type { ApplyChangeHandler } from '@atlaskit/editor-plugin-context-panel';
3
+ export default function keymapPlugin(applyChange: ApplyChangeHandler | undefined): SafePlugin;
@@ -0,0 +1,9 @@
1
+ import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
2
+ import type { MacroAttributes, MacroProvider, Providers } from '@atlaskit/editor-common/provider-factory';
3
+ import type { Node as PmNode } from '@atlaskit/editor-prosemirror/model';
4
+ import type { EditorState } from '@atlaskit/editor-prosemirror/state';
5
+ import type { EditorView } from '@atlaskit/editor-prosemirror/view';
6
+ export declare const insertMacroFromMacroBrowser: (editorAnalyticsAPI: EditorAnalyticsAPI | undefined) => (macroProvider: MacroProvider, macroNode?: PmNode, isEditing?: boolean) => (view: EditorView) => Promise<boolean>;
7
+ export declare const resolveMacro: (macro?: MacroAttributes, state?: EditorState, optionalAttrs?: object) => PmNode | null;
8
+ export declare const runMacroAutoConvert: (state: EditorState, text: string) => PmNode | null;
9
+ export declare const setMacroProvider: (provider: Providers['macroProvider']) => (view: EditorView) => Promise<boolean>;
@@ -0,0 +1,8 @@
1
+ import type { Dispatch } from '@atlaskit/editor-common/event-dispatcher';
2
+ import type { ProviderFactory } from '@atlaskit/editor-common/provider-factory';
3
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
4
+ import type { MacroState } from './types';
5
+ export type { MacroProvider, MacroAttributes, ExtensionType, } from '@atlaskit/editor-common/provider-factory';
6
+ export { insertMacroFromMacroBrowser, resolveMacro, runMacroAutoConvert, setMacroProvider, } from './actions';
7
+ export type { MacroState };
8
+ export declare const createPlugin: (dispatch: Dispatch, providerFactory: ProviderFactory) => SafePlugin<any>;
@@ -0,0 +1,3 @@
1
+ import { PluginKey } from '@atlaskit/editor-prosemirror/state';
2
+ import type { MacroState } from './types';
3
+ export declare const pluginKey: PluginKey<MacroState>;
@@ -0,0 +1,4 @@
1
+ import type { MacroProvider } from '@atlaskit/editor-common/provider-factory';
2
+ export type MacroState = {
3
+ macroProvider: MacroProvider | null;
4
+ };
@@ -0,0 +1,25 @@
1
+ import type { Dispatch, EventDispatcher } from '@atlaskit/editor-common/event-dispatcher';
2
+ import type { ExtensionHandlers, ExtensionProvider } from '@atlaskit/editor-common/extensions';
3
+ import type { PortalProviderAPI } from '@atlaskit/editor-common/portal-provider';
4
+ import type { ContextIdentifierProvider, ProviderFactory } from '@atlaskit/editor-common/provider-factory';
5
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
6
+ import type { EditorAppearance, ExtractInjectionAPI } from '@atlaskit/editor-common/types';
7
+ import type { ApplyChangeHandler } from '@atlaskit/editor-plugin-context-panel';
8
+ import type { EditorState } from '@atlaskit/editor-prosemirror/state';
9
+ import type { EditorView } from '@atlaskit/editor-prosemirror/view';
10
+ import { createCommand, getPluginState } from '../plugin-factory';
11
+ import { pluginKey } from '../plugin-key';
12
+ import type { ExtensionPlugin } from '../types';
13
+ export declare const createExtensionProviderHandler: (view: EditorView) => (name: string, provider?: Promise<ExtensionProvider>) => Promise<void>;
14
+ export declare const createContextIdentifierProviderHandler: (view: EditorView) => (name: string, provider?: Promise<ContextIdentifierProvider>) => Promise<void>;
15
+ export declare const handleUpdate: ({ view, prevState, domAtPos, extensionHandlers, applyChange, }: {
16
+ view: EditorView;
17
+ prevState: EditorState;
18
+ domAtPos: EditorView['domAtPos'];
19
+ extensionHandlers: ExtensionHandlers;
20
+ applyChange: ApplyChangeHandler | undefined;
21
+ }) => true | undefined;
22
+ declare const createPlugin: (dispatch: Dispatch, providerFactory: ProviderFactory, extensionHandlers: ExtensionHandlers, portalProviderAPI: PortalProviderAPI, eventDispatcher: EventDispatcher, pluginInjectionApi: ExtractInjectionAPI<ExtensionPlugin> | undefined, useLongPressSelection?: boolean, options?: {
23
+ appearance?: EditorAppearance;
24
+ }) => SafePlugin<import("../types").ExtensionState<import("@atlaskit/editor-common/extensions").Parameters>>;
25
+ export { pluginKey, createPlugin, createCommand, getPluginState };
@@ -0,0 +1,3 @@
1
+ import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
2
+ declare const createPlugin: () => SafePlugin<any>;
3
+ export { createPlugin };
@@ -0,0 +1,3 @@
1
+ import type { ExtensionProvider } from '@atlaskit/editor-common/extensions';
2
+ import type { EditorView } from '@atlaskit/editor-prosemirror/view';
3
+ export declare const updateEditButton: (view: EditorView, extensionProvider: ExtensionProvider) => Promise<import("@atlaskit/editor-common/extensions").UpdateExtension<any> | undefined>;
@@ -0,0 +1,2 @@
1
+ import type { ExtensionAction, ExtensionState } from './types';
2
+ export default function (pluginState: ExtensionState, action: ExtensionAction): ExtensionState;
@@ -0,0 +1,44 @@
1
+ import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
2
+ import type { FloatingToolbarHandler } from '@atlaskit/editor-common/types';
3
+ import type { ApplyChangeHandler } from '@atlaskit/editor-plugin-context-panel';
4
+ import type { HoverDecorationHandler } from '@atlaskit/editor-plugin-decorations';
5
+ export declare const messages: {
6
+ edit: {
7
+ id: string;
8
+ defaultMessage: string;
9
+ description: string;
10
+ };
11
+ deleteElementTitle: {
12
+ id: string;
13
+ defaultMessage: string;
14
+ description: string;
15
+ };
16
+ unnamedSource: {
17
+ id: string;
18
+ defaultMessage: string;
19
+ description: string;
20
+ };
21
+ confirmDeleteLinkedModalOKButton: {
22
+ id: string;
23
+ defaultMessage: string;
24
+ description: string;
25
+ };
26
+ confirmDeleteLinkedModalMessage: {
27
+ id: string;
28
+ defaultMessage: string;
29
+ description: string;
30
+ };
31
+ confirmModalCheckboxLabel: {
32
+ id: string;
33
+ defaultMessage: string;
34
+ description: string;
35
+ };
36
+ };
37
+ interface GetToolbarConfigProps {
38
+ breakoutEnabled: boolean | undefined;
39
+ hoverDecoration: HoverDecorationHandler | undefined;
40
+ applyChangeToContextPanel: ApplyChangeHandler | undefined;
41
+ editorAnalyticsAPI: EditorAnalyticsAPI | undefined;
42
+ }
43
+ export declare const getToolbarConfig: ({ breakoutEnabled, hoverDecoration, applyChangeToContextPanel, editorAnalyticsAPI, }: GetToolbarConfigProps) => FloatingToolbarHandler;
44
+ export {};
@@ -1,6 +1,6 @@
1
1
  import type { EditorAnalyticsAPI } from '@atlaskit/editor-common/analytics';
2
- import type { ExtensionAPI, ExtensionHandlers } from '@atlaskit/editor-common/extensions';
3
- import type { MacroProvider } from '@atlaskit/editor-common/provider-factory';
2
+ import type { ExtensionAPI, ExtensionHandlers, ExtensionProvider, Parameters, TransformAfter, TransformBefore, UpdateExtension } from '@atlaskit/editor-common/extensions';
3
+ import type { ContextIdentifierProvider, MacroProvider } from '@atlaskit/editor-common/provider-factory';
4
4
  import type { EditorAppearance, LongPressSelectionPluginOptions, NextEditorPlugin, OptionalPlugin } from '@atlaskit/editor-common/types';
5
5
  import type { AnalyticsPlugin } from '@atlaskit/editor-plugin-analytics';
6
6
  import type { ApplyChangeHandler, ContextPanelPlugin } from '@atlaskit/editor-plugin-context-panel';
@@ -10,6 +10,27 @@ import type { WidthPlugin } from '@atlaskit/editor-plugin-width';
10
10
  import type { Node as PmNode } from '@atlaskit/editor-prosemirror/model';
11
11
  import type { EditorState } from '@atlaskit/editor-prosemirror/state';
12
12
  import type { EditorView } from '@atlaskit/editor-prosemirror/view';
13
+ import type { forceAutoSave } from './commands';
14
+ export type RejectSave = (reason?: any) => void;
15
+ export type ExtensionState<T extends Parameters = Parameters> = {
16
+ localId?: string;
17
+ autoSaveResolve?: () => void;
18
+ autoSaveReject?: RejectSave;
19
+ showEditButton: boolean;
20
+ showContextPanel: boolean;
21
+ updateExtension?: Promise<UpdateExtension<T> | void>;
22
+ element?: HTMLElement;
23
+ extensionProvider?: ExtensionProvider<T>;
24
+ contextIdentifierProvider?: ContextIdentifierProvider;
25
+ processParametersBefore?: TransformBefore<T>;
26
+ processParametersAfter?: TransformAfter<T>;
27
+ positions?: Record<number, number>;
28
+ applyChangeToContextPanel: ApplyChangeHandler | undefined;
29
+ };
30
+ export type ExtensionAction<T extends Parameters = Parameters> = {
31
+ type: 'UPDATE_STATE';
32
+ data: Partial<ExtensionState<T>>;
33
+ };
13
34
  interface CreateExtensionAPIOptions {
14
35
  editorView: EditorView;
15
36
  applyChange: ApplyChangeHandler | undefined;
@@ -34,11 +55,15 @@ export type ExtensionPlugin = NextEditorPlugin<'extension', {
34
55
  DecorationsPlugin,
35
56
  OptionalPlugin<ContextPanelPlugin>
36
57
  ];
58
+ sharedState: {
59
+ showContextPanel: boolean | undefined;
60
+ } | undefined;
37
61
  actions: {
38
62
  editSelectedExtension: () => boolean;
39
63
  api: () => ExtensionAPI;
40
64
  insertMacroFromMacroBrowser: InsertMacroFromMacroBrowser;
41
65
  runMacroAutoConvert: RunMacroAutoConvert;
66
+ forceAutoSave: typeof forceAutoSave;
42
67
  };
43
68
  }>;
44
69
  export {};
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ import type { WithAnalyticsEventsProps } from '@atlaskit/analytics-next';
3
+ import type { ExtensionManifest, FieldDefinition, OnSaveCallback, Parameters } from '@atlaskit/editor-common/extensions';
4
+ import type { FeatureFlags } from '@atlaskit/editor-common/types';
5
+ import type { RejectSave } from '../../types';
6
+ type Props = {
7
+ extensionManifest?: ExtensionManifest;
8
+ fields?: FieldDefinition[];
9
+ parameters?: Parameters;
10
+ autoSave?: boolean;
11
+ autoSaveTrigger?: () => void;
12
+ autoSaveReject?: RejectSave;
13
+ showHeader?: boolean;
14
+ closeOnEsc?: boolean;
15
+ onChange: OnSaveCallback;
16
+ onCancel: () => void;
17
+ errorMessage: string | null;
18
+ isLoading?: boolean;
19
+ featureFlags?: FeatureFlags;
20
+ } & WithAnalyticsEventsProps;
21
+ declare const _default: React.ForwardRefExoticComponent<Pick<Omit<Props, keyof WithAnalyticsEventsProps> & React.RefAttributes<any> & import("@atlaskit/analytics-next").WithContextProps, "featureFlags" | "autoSaveReject" | "key" | "parameters" | "autoSave" | "onChange" | "errorMessage" | "analyticsContext" | "fields" | "extensionManifest" | "isLoading" | "onCancel" | "autoSaveTrigger" | "showHeader" | "closeOnEsc"> & React.RefAttributes<any>>;
22
+ export default _default;
@@ -0,0 +1,21 @@
1
+ /// <reference types="react" />
2
+ import type { ExtensionKey, ExtensionProvider, ExtensionType, Parameters } from '@atlaskit/editor-common/extensions';
3
+ import type { FeatureFlags } from '@atlaskit/editor-common/types';
4
+ import type { RejectSave } from '../../types';
5
+ export type PublicProps = {
6
+ extensionProvider: ExtensionProvider;
7
+ extensionType: ExtensionType;
8
+ extensionKey: ExtensionKey;
9
+ nodeKey: string;
10
+ extensionParameters?: Parameters;
11
+ parameters?: Parameters;
12
+ autoSave?: boolean;
13
+ autoSaveTrigger?: () => void;
14
+ autoSaveReject?: RejectSave;
15
+ closeOnEsc?: boolean;
16
+ showHeader?: boolean;
17
+ featureFlags?: FeatureFlags;
18
+ onChange: (data: Parameters) => void;
19
+ onCancel: () => void;
20
+ };
21
+ export default function FieldsLoader({ extensionType, extensionKey, nodeKey, extensionProvider, extensionParameters, parameters, autoSave, autoSaveTrigger, autoSaveReject, closeOnEsc, showHeader, featureFlags, onChange, onCancel, }: PublicProps): JSX.Element;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import Loadable from 'react-loadable';
3
+ import type { PublicProps } from './ConfigPanelFieldsLoader';
4
+ declare const _default: import("react").ComponentType<PublicProps> & Loadable.LoadableComponent;
5
+ export default _default;
@@ -0,0 +1,4 @@
1
+ /** @jsx jsx */
2
+ import React from 'react';
3
+ declare const ErrorImage: React.FunctionComponent;
4
+ export default ErrorImage;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { WrappedComponentProps } from 'react-intl-next';
3
+ declare const _default: React.FC<import("react-intl-next").WithIntlProps<{
4
+ errorMessage: string;
5
+ } & WrappedComponentProps<"intl">>> & {
6
+ WrappedComponent: React.ComponentType<{
7
+ errorMessage: string;
8
+ } & WrappedComponentProps<"intl">>;
9
+ };
10
+ export default _default;