@atlaskit/jql-editor 4.0.0

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 (750) hide show
  1. package/CHANGELOG.md +1048 -0
  2. package/LICENSE.md +13 -0
  3. package/README.md +3 -0
  4. package/dist/cjs/accessibility/index.js +12 -0
  5. package/dist/cjs/accessibility/styled.js +12 -0
  6. package/dist/cjs/analytics/constants.js +27 -0
  7. package/dist/cjs/analytics/index.js +57 -0
  8. package/dist/cjs/analytics/listener/analytics-web-client-wrapper.js +77 -0
  9. package/dist/cjs/analytics/listener/handle-event.js +21 -0
  10. package/dist/cjs/analytics/listener/helpers/logger.js +89 -0
  11. package/dist/cjs/analytics/listener/index.js +13 -0
  12. package/dist/cjs/analytics/listener/jql-editor-analytics-listener.js +52 -0
  13. package/dist/cjs/analytics/listener/process-event-payload.js +44 -0
  14. package/dist/cjs/analytics/listener/types.js +5 -0
  15. package/dist/cjs/analytics/types.js +5 -0
  16. package/dist/cjs/analytics/util.js +10 -0
  17. package/dist/cjs/async.js +34 -0
  18. package/dist/cjs/commands/select-error-command/index.js +30 -0
  19. package/dist/cjs/common/constants.js +11 -0
  20. package/dist/cjs/common/messages.js +14 -0
  21. package/dist/cjs/common/styled.js +15 -0
  22. package/dist/cjs/hooks/use-editor-theme/index.js +53 -0
  23. package/dist/cjs/hooks/use-editor-view-has-infos/index.js +16 -0
  24. package/dist/cjs/hooks/use-editor-view-has-warnings/index.js +19 -0
  25. package/dist/cjs/hooks/use-editor-view-is-invalid/index.js +52 -0
  26. package/dist/cjs/i18n/cs.js +68 -0
  27. package/dist/cjs/i18n/da.js +68 -0
  28. package/dist/cjs/i18n/de.js +68 -0
  29. package/dist/cjs/i18n/en.js +68 -0
  30. package/dist/cjs/i18n/en_GB.js +68 -0
  31. package/dist/cjs/i18n/en_ZZ.js +68 -0
  32. package/dist/cjs/i18n/es.js +68 -0
  33. package/dist/cjs/i18n/et.js +14 -0
  34. package/dist/cjs/i18n/fi.js +68 -0
  35. package/dist/cjs/i18n/fr.js +68 -0
  36. package/dist/cjs/i18n/hu.js +68 -0
  37. package/dist/cjs/i18n/index.js +132 -0
  38. package/dist/cjs/i18n/it.js +68 -0
  39. package/dist/cjs/i18n/ja.js +68 -0
  40. package/dist/cjs/i18n/ko.js +68 -0
  41. package/dist/cjs/i18n/nb.js +68 -0
  42. package/dist/cjs/i18n/nl.js +68 -0
  43. package/dist/cjs/i18n/pl.js +68 -0
  44. package/dist/cjs/i18n/pt_BR.js +68 -0
  45. package/dist/cjs/i18n/pt_PT.js +14 -0
  46. package/dist/cjs/i18n/ru.js +68 -0
  47. package/dist/cjs/i18n/sk.js +14 -0
  48. package/dist/cjs/i18n/sv.js +68 -0
  49. package/dist/cjs/i18n/th.js +68 -0
  50. package/dist/cjs/i18n/tr.js +68 -0
  51. package/dist/cjs/i18n/uk.js +68 -0
  52. package/dist/cjs/i18n/vi.js +68 -0
  53. package/dist/cjs/i18n/zh.js +68 -0
  54. package/dist/cjs/i18n/zh_TW.js +68 -0
  55. package/dist/cjs/index.js +52 -0
  56. package/dist/cjs/plugins/autocomplete/components/autocomplete/index.js +48 -0
  57. package/dist/cjs/plugins/autocomplete/components/autocomplete-dropdown/index.js +278 -0
  58. package/dist/cjs/plugins/autocomplete/components/autocomplete-dropdown/styled.js +22 -0
  59. package/dist/cjs/plugins/autocomplete/components/autocomplete-option/glyphs.js +104 -0
  60. package/dist/cjs/plugins/autocomplete/components/autocomplete-option/index.js +175 -0
  61. package/dist/cjs/plugins/autocomplete/components/autocomplete-option/messages.js +19 -0
  62. package/dist/cjs/plugins/autocomplete/components/autocomplete-option/styled.js +26 -0
  63. package/dist/cjs/plugins/autocomplete/components/types.js +5 -0
  64. package/dist/cjs/plugins/autocomplete/constants.js +35 -0
  65. package/dist/cjs/plugins/autocomplete/index.js +37 -0
  66. package/dist/cjs/plugins/autocomplete/messages.js +14 -0
  67. package/dist/cjs/plugins/autocomplete/types.js +5 -0
  68. package/dist/cjs/plugins/autocomplete/view.js +125 -0
  69. package/dist/cjs/plugins/common/get-document-position/index.js +99 -0
  70. package/dist/cjs/plugins/common/plugin-keymap.js +50 -0
  71. package/dist/cjs/plugins/common/react-plugin-view.js +93 -0
  72. package/dist/cjs/plugins/index.js +41 -0
  73. package/dist/cjs/plugins/jql-ast/JQLEditorErrorStrategy.js +218 -0
  74. package/dist/cjs/plugins/jql-ast/constants.js +15 -0
  75. package/dist/cjs/plugins/jql-ast/error-handlers/CustomFieldRuleErrorHandler.js +13 -0
  76. package/dist/cjs/plugins/jql-ast/error-handlers/ExpectedTokensErrorHandler.js +62 -0
  77. package/dist/cjs/plugins/jql-ast/error-handlers/FieldPropertyIdErrorHandler.js +17 -0
  78. package/dist/cjs/plugins/jql-ast/error-handlers/FieldRuleErrorHandler.js +20 -0
  79. package/dist/cjs/plugins/jql-ast/error-handlers/FunctionArgumentRuleErrorHandler.js +17 -0
  80. package/dist/cjs/plugins/jql-ast/error-handlers/OperandRuleErrorHandler.js +66 -0
  81. package/dist/cjs/plugins/jql-ast/error-handlers/OperatorRuleErrorHandler.js +18 -0
  82. package/dist/cjs/plugins/jql-ast/index.js +46 -0
  83. package/dist/cjs/plugins/jql-ast/messages.js +179 -0
  84. package/dist/cjs/plugins/jql-ast/utils.js +23 -0
  85. package/dist/cjs/plugins/jql-syntax-highlighting/index.js +69 -0
  86. package/dist/cjs/plugins/jql-syntax-highlighting/types.js +5 -0
  87. package/dist/cjs/plugins/jql-syntax-highlighting/visitor.js +89 -0
  88. package/dist/cjs/plugins/rich-inline-nodes/constants.js +9 -0
  89. package/dist/cjs/plugins/rich-inline-nodes/index.js +63 -0
  90. package/dist/cjs/plugins/rich-inline-nodes/nodes/index.js +10 -0
  91. package/dist/cjs/plugins/rich-inline-nodes/nodes/types.js +5 -0
  92. package/dist/cjs/plugins/rich-inline-nodes/nodes/user/index.js +41 -0
  93. package/dist/cjs/plugins/rich-inline-nodes/nodes/user/styled.js +35 -0
  94. package/dist/cjs/plugins/rich-inline-nodes/types.js +5 -0
  95. package/dist/cjs/plugins/rich-inline-nodes/util/create-node-spec.js +37 -0
  96. package/dist/cjs/plugins/rich-inline-nodes/util/react-node-view.js +129 -0
  97. package/dist/cjs/plugins/rich-inline-nodes/util/replace-nodes-transaction.js +138 -0
  98. package/dist/cjs/plugins/types.js +5 -0
  99. package/dist/cjs/plugins/validation-tooltip/constants.js +11 -0
  100. package/dist/cjs/plugins/validation-tooltip/index.js +58 -0
  101. package/dist/cjs/plugins/validation-tooltip/view.js +74 -0
  102. package/dist/cjs/schema/index.js +137 -0
  103. package/dist/cjs/state/analytics/index.js +56 -0
  104. package/dist/cjs/state/autocomplete/index.js +23 -0
  105. package/dist/cjs/state/hydration/index.js +92 -0
  106. package/dist/cjs/state/hydration/util.js +89 -0
  107. package/dist/cjs/state/index.js +997 -0
  108. package/dist/cjs/state/types.js +5 -0
  109. package/dist/cjs/state/util.js +176 -0
  110. package/dist/cjs/types.js +5 -0
  111. package/dist/cjs/ui/error-boundary/index.js +81 -0
  112. package/dist/cjs/ui/index.js +11 -0
  113. package/dist/cjs/ui/intl-provider/index.js +23 -0
  114. package/dist/cjs/ui/jql-editor/index.js +75 -0
  115. package/dist/cjs/ui/jql-editor/types.js +5 -0
  116. package/dist/cjs/ui/jql-editor-controls-content/base-expand-toggle/index.js +55 -0
  117. package/dist/cjs/ui/jql-editor-controls-content/base-expand-toggle/styled.js +12 -0
  118. package/dist/cjs/ui/jql-editor-controls-content/base-search/index.js +44 -0
  119. package/dist/cjs/ui/jql-editor-controls-content/base-syntax-help/index.js +33 -0
  120. package/dist/cjs/ui/jql-editor-controls-content/base-syntax-help/styled.js +12 -0
  121. package/dist/cjs/ui/jql-editor-controls-content/expand-toggle/index.js +67 -0
  122. package/dist/cjs/ui/jql-editor-controls-content/expand-toggle/messages.js +24 -0
  123. package/dist/cjs/ui/jql-editor-controls-content/index.js +17 -0
  124. package/dist/cjs/ui/jql-editor-controls-content/read-only-controls-content/index.js +38 -0
  125. package/dist/cjs/ui/jql-editor-controls-content/search/index.js +40 -0
  126. package/dist/cjs/ui/jql-editor-controls-content/search/messages.js +14 -0
  127. package/dist/cjs/ui/jql-editor-controls-content/syntax-help/index.js +62 -0
  128. package/dist/cjs/ui/jql-editor-controls-content/syntax-help/messages.js +19 -0
  129. package/dist/cjs/ui/jql-editor-footer-content/index.js +34 -0
  130. package/dist/cjs/ui/jql-editor-footer-content/jql-editor-help/index.js +42 -0
  131. package/dist/cjs/ui/jql-editor-footer-content/jql-editor-help/messages.js +24 -0
  132. package/dist/cjs/ui/jql-editor-footer-content/jql-editor-help/styled.js +15 -0
  133. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/errors/index.js +70 -0
  134. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/errors/messages.js +14 -0
  135. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/format/index.js +34 -0
  136. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/format/styled.js +14 -0
  137. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/index.js +26 -0
  138. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/infos/index.js +41 -0
  139. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/warnings/index.js +110 -0
  140. package/dist/cjs/ui/jql-editor-footer-content/jql-messages/warnings/messages.js +24 -0
  141. package/dist/cjs/ui/jql-editor-layout/index.js +104 -0
  142. package/dist/cjs/ui/jql-editor-layout/styled.js +61 -0
  143. package/dist/cjs/ui/jql-editor-portal-provider/context.js +17 -0
  144. package/dist/cjs/ui/jql-editor-portal-provider/index.js +116 -0
  145. package/dist/cjs/ui/jql-editor-portal-provider/types.js +5 -0
  146. package/dist/cjs/ui/jql-editor-view/index.js +198 -0
  147. package/dist/cjs/ui/messages.js +14 -0
  148. package/dist/cjs/ui/tooltip-tag/index.js +19 -0
  149. package/dist/cjs/ui/tooltip-tag/styled.js +11 -0
  150. package/dist/cjs/ui/types.js +5 -0
  151. package/dist/cjs/utils/document-text/index.js +43 -0
  152. package/dist/cjs/utils/split-text-by-new-line/index.js +12 -0
  153. package/dist/es2019/accessibility/index.js +1 -0
  154. package/dist/es2019/accessibility/styled.js +5 -0
  155. package/dist/es2019/analytics/constants.js +21 -0
  156. package/dist/es2019/analytics/index.js +5 -0
  157. package/dist/es2019/analytics/listener/analytics-web-client-wrapper.js +57 -0
  158. package/dist/es2019/analytics/listener/handle-event.js +15 -0
  159. package/dist/es2019/analytics/listener/helpers/logger.js +49 -0
  160. package/dist/es2019/analytics/listener/index.js +7 -0
  161. package/dist/es2019/analytics/listener/jql-editor-analytics-listener.js +30 -0
  162. package/dist/es2019/analytics/listener/process-event-payload.js +29 -0
  163. package/dist/es2019/analytics/listener/types.js +1 -0
  164. package/dist/es2019/analytics/types.js +1 -0
  165. package/dist/es2019/analytics/util.js +4 -0
  166. package/dist/es2019/async.js +19 -0
  167. package/dist/es2019/commands/select-error-command/index.js +23 -0
  168. package/dist/es2019/common/constants.js +5 -0
  169. package/dist/es2019/common/messages.js +8 -0
  170. package/dist/es2019/common/styled.js +19 -0
  171. package/dist/es2019/hooks/use-editor-theme/index.js +33 -0
  172. package/dist/es2019/hooks/use-editor-view-has-infos/index.js +8 -0
  173. package/dist/es2019/hooks/use-editor-view-has-warnings/index.js +9 -0
  174. package/dist/es2019/hooks/use-editor-view-is-invalid/index.js +38 -0
  175. package/dist/es2019/i18n/cs.js +62 -0
  176. package/dist/es2019/i18n/da.js +62 -0
  177. package/dist/es2019/i18n/de.js +62 -0
  178. package/dist/es2019/i18n/en.js +62 -0
  179. package/dist/es2019/i18n/en_GB.js +62 -0
  180. package/dist/es2019/i18n/en_ZZ.js +62 -0
  181. package/dist/es2019/i18n/es.js +62 -0
  182. package/dist/es2019/i18n/et.js +8 -0
  183. package/dist/es2019/i18n/fi.js +62 -0
  184. package/dist/es2019/i18n/fr.js +62 -0
  185. package/dist/es2019/i18n/hu.js +62 -0
  186. package/dist/es2019/i18n/index.js +24 -0
  187. package/dist/es2019/i18n/it.js +62 -0
  188. package/dist/es2019/i18n/ja.js +62 -0
  189. package/dist/es2019/i18n/ko.js +62 -0
  190. package/dist/es2019/i18n/nb.js +62 -0
  191. package/dist/es2019/i18n/nl.js +62 -0
  192. package/dist/es2019/i18n/pl.js +62 -0
  193. package/dist/es2019/i18n/pt_BR.js +62 -0
  194. package/dist/es2019/i18n/pt_PT.js +8 -0
  195. package/dist/es2019/i18n/ru.js +62 -0
  196. package/dist/es2019/i18n/sk.js +8 -0
  197. package/dist/es2019/i18n/sv.js +62 -0
  198. package/dist/es2019/i18n/th.js +62 -0
  199. package/dist/es2019/i18n/tr.js +62 -0
  200. package/dist/es2019/i18n/uk.js +62 -0
  201. package/dist/es2019/i18n/vi.js +62 -0
  202. package/dist/es2019/i18n/zh.js +62 -0
  203. package/dist/es2019/i18n/zh_TW.js +62 -0
  204. package/dist/es2019/index.js +4 -0
  205. package/dist/es2019/plugins/autocomplete/components/autocomplete/index.js +33 -0
  206. package/dist/es2019/plugins/autocomplete/components/autocomplete-dropdown/index.js +245 -0
  207. package/dist/es2019/plugins/autocomplete/components/autocomplete-dropdown/styled.js +46 -0
  208. package/dist/es2019/plugins/autocomplete/components/autocomplete-option/glyphs.js +80 -0
  209. package/dist/es2019/plugins/autocomplete/components/autocomplete-option/index.js +159 -0
  210. package/dist/es2019/plugins/autocomplete/components/autocomplete-option/messages.js +13 -0
  211. package/dist/es2019/plugins/autocomplete/components/autocomplete-option/styled.js +51 -0
  212. package/dist/es2019/plugins/autocomplete/components/types.js +1 -0
  213. package/dist/es2019/plugins/autocomplete/constants.js +21 -0
  214. package/dist/es2019/plugins/autocomplete/index.js +36 -0
  215. package/dist/es2019/plugins/autocomplete/messages.js +8 -0
  216. package/dist/es2019/plugins/autocomplete/types.js +1 -0
  217. package/dist/es2019/plugins/autocomplete/view.js +102 -0
  218. package/dist/es2019/plugins/common/get-document-position/index.js +92 -0
  219. package/dist/es2019/plugins/common/plugin-keymap.js +30 -0
  220. package/dist/es2019/plugins/common/react-plugin-view.js +67 -0
  221. package/dist/es2019/plugins/index.js +5 -0
  222. package/dist/es2019/plugins/jql-ast/JQLEditorErrorStrategy.js +183 -0
  223. package/dist/es2019/plugins/jql-ast/constants.js +9 -0
  224. package/dist/es2019/plugins/jql-ast/error-handlers/CustomFieldRuleErrorHandler.js +8 -0
  225. package/dist/es2019/plugins/jql-ast/error-handlers/ExpectedTokensErrorHandler.js +53 -0
  226. package/dist/es2019/plugins/jql-ast/error-handlers/FieldPropertyIdErrorHandler.js +12 -0
  227. package/dist/es2019/plugins/jql-ast/error-handlers/FieldRuleErrorHandler.js +15 -0
  228. package/dist/es2019/plugins/jql-ast/error-handlers/FunctionArgumentRuleErrorHandler.js +12 -0
  229. package/dist/es2019/plugins/jql-ast/error-handlers/OperandRuleErrorHandler.js +61 -0
  230. package/dist/es2019/plugins/jql-ast/error-handlers/OperatorRuleErrorHandler.js +13 -0
  231. package/dist/es2019/plugins/jql-ast/index.js +40 -0
  232. package/dist/es2019/plugins/jql-ast/messages.js +173 -0
  233. package/dist/es2019/plugins/jql-ast/utils.js +13 -0
  234. package/dist/es2019/plugins/jql-syntax-highlighting/index.js +59 -0
  235. package/dist/es2019/plugins/jql-syntax-highlighting/types.js +1 -0
  236. package/dist/es2019/plugins/jql-syntax-highlighting/visitor.js +55 -0
  237. package/dist/es2019/plugins/rich-inline-nodes/constants.js +3 -0
  238. package/dist/es2019/plugins/rich-inline-nodes/index.js +48 -0
  239. package/dist/es2019/plugins/rich-inline-nodes/nodes/index.js +4 -0
  240. package/dist/es2019/plugins/rich-inline-nodes/nodes/types.js +1 -0
  241. package/dist/es2019/plugins/rich-inline-nodes/nodes/user/index.js +32 -0
  242. package/dist/es2019/plugins/rich-inline-nodes/nodes/user/styled.js +77 -0
  243. package/dist/es2019/plugins/rich-inline-nodes/types.js +1 -0
  244. package/dist/es2019/plugins/rich-inline-nodes/util/create-node-spec.js +26 -0
  245. package/dist/es2019/plugins/rich-inline-nodes/util/react-node-view.js +101 -0
  246. package/dist/es2019/plugins/rich-inline-nodes/util/replace-nodes-transaction.js +104 -0
  247. package/dist/es2019/plugins/types.js +1 -0
  248. package/dist/es2019/plugins/validation-tooltip/constants.js +5 -0
  249. package/dist/es2019/plugins/validation-tooltip/index.js +52 -0
  250. package/dist/es2019/plugins/validation-tooltip/view.js +55 -0
  251. package/dist/es2019/schema/index.js +117 -0
  252. package/dist/es2019/state/analytics/index.js +49 -0
  253. package/dist/es2019/state/autocomplete/index.js +15 -0
  254. package/dist/es2019/state/hydration/index.js +63 -0
  255. package/dist/es2019/state/hydration/util.js +57 -0
  256. package/dist/es2019/state/index.js +968 -0
  257. package/dist/es2019/state/types.js +1 -0
  258. package/dist/es2019/state/util.js +144 -0
  259. package/dist/es2019/types.js +1 -0
  260. package/dist/es2019/ui/error-boundary/index.js +55 -0
  261. package/dist/es2019/ui/index.js +4 -0
  262. package/dist/es2019/ui/intl-provider/index.js +16 -0
  263. package/dist/es2019/ui/jql-editor/index.js +63 -0
  264. package/dist/es2019/ui/jql-editor/types.js +1 -0
  265. package/dist/es2019/ui/jql-editor-controls-content/base-expand-toggle/index.js +48 -0
  266. package/dist/es2019/ui/jql-editor-controls-content/base-expand-toggle/styled.js +20 -0
  267. package/dist/es2019/ui/jql-editor-controls-content/base-search/index.js +35 -0
  268. package/dist/es2019/ui/jql-editor-controls-content/base-syntax-help/index.js +27 -0
  269. package/dist/es2019/ui/jql-editor-controls-content/base-syntax-help/styled.js +29 -0
  270. package/dist/es2019/ui/jql-editor-controls-content/expand-toggle/index.js +51 -0
  271. package/dist/es2019/ui/jql-editor-controls-content/expand-toggle/messages.js +18 -0
  272. package/dist/es2019/ui/jql-editor-controls-content/index.js +11 -0
  273. package/dist/es2019/ui/jql-editor-controls-content/read-only-controls-content/index.js +29 -0
  274. package/dist/es2019/ui/jql-editor-controls-content/search/index.js +26 -0
  275. package/dist/es2019/ui/jql-editor-controls-content/search/messages.js +8 -0
  276. package/dist/es2019/ui/jql-editor-controls-content/syntax-help/index.js +44 -0
  277. package/dist/es2019/ui/jql-editor-controls-content/syntax-help/messages.js +13 -0
  278. package/dist/es2019/ui/jql-editor-footer-content/index.js +28 -0
  279. package/dist/es2019/ui/jql-editor-footer-content/jql-editor-help/index.js +27 -0
  280. package/dist/es2019/ui/jql-editor-footer-content/jql-editor-help/messages.js +18 -0
  281. package/dist/es2019/ui/jql-editor-footer-content/jql-editor-help/styled.js +23 -0
  282. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/errors/index.js +55 -0
  283. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/errors/messages.js +8 -0
  284. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/format/index.js +29 -0
  285. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/format/styled.js +8 -0
  286. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/index.js +3 -0
  287. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/infos/index.js +30 -0
  288. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/warnings/index.js +84 -0
  289. package/dist/es2019/ui/jql-editor-footer-content/jql-messages/warnings/messages.js +18 -0
  290. package/dist/es2019/ui/jql-editor-layout/index.js +100 -0
  291. package/dist/es2019/ui/jql-editor-layout/styled.js +223 -0
  292. package/dist/es2019/ui/jql-editor-portal-provider/context.js +8 -0
  293. package/dist/es2019/ui/jql-editor-portal-provider/index.js +99 -0
  294. package/dist/es2019/ui/jql-editor-portal-provider/types.js +1 -0
  295. package/dist/es2019/ui/jql-editor-view/index.js +167 -0
  296. package/dist/es2019/ui/messages.js +8 -0
  297. package/dist/es2019/ui/tooltip-tag/index.js +8 -0
  298. package/dist/es2019/ui/tooltip-tag/styled.js +4 -0
  299. package/dist/es2019/ui/types.js +1 -0
  300. package/dist/es2019/utils/document-text/index.js +37 -0
  301. package/dist/es2019/utils/split-text-by-new-line/index.js +4 -0
  302. package/dist/esm/accessibility/index.js +1 -0
  303. package/dist/esm/accessibility/styled.js +5 -0
  304. package/dist/esm/analytics/constants.js +21 -0
  305. package/dist/esm/analytics/index.js +5 -0
  306. package/dist/esm/analytics/listener/analytics-web-client-wrapper.js +70 -0
  307. package/dist/esm/analytics/listener/handle-event.js +15 -0
  308. package/dist/esm/analytics/listener/helpers/logger.js +83 -0
  309. package/dist/esm/analytics/listener/index.js +7 -0
  310. package/dist/esm/analytics/listener/jql-editor-analytics-listener.js +48 -0
  311. package/dist/esm/analytics/listener/process-event-payload.js +39 -0
  312. package/dist/esm/analytics/listener/types.js +1 -0
  313. package/dist/esm/analytics/types.js +1 -0
  314. package/dist/esm/analytics/util.js +4 -0
  315. package/dist/esm/async.js +22 -0
  316. package/dist/esm/commands/select-error-command/index.js +23 -0
  317. package/dist/esm/common/constants.js +5 -0
  318. package/dist/esm/common/messages.js +8 -0
  319. package/dist/esm/common/styled.js +9 -0
  320. package/dist/esm/hooks/use-editor-theme/index.js +46 -0
  321. package/dist/esm/hooks/use-editor-view-has-infos/index.js +9 -0
  322. package/dist/esm/hooks/use-editor-view-has-warnings/index.js +12 -0
  323. package/dist/esm/hooks/use-editor-view-is-invalid/index.js +46 -0
  324. package/dist/esm/i18n/cs.js +62 -0
  325. package/dist/esm/i18n/da.js +62 -0
  326. package/dist/esm/i18n/de.js +62 -0
  327. package/dist/esm/i18n/en.js +62 -0
  328. package/dist/esm/i18n/en_GB.js +62 -0
  329. package/dist/esm/i18n/en_ZZ.js +62 -0
  330. package/dist/esm/i18n/es.js +62 -0
  331. package/dist/esm/i18n/et.js +8 -0
  332. package/dist/esm/i18n/fi.js +62 -0
  333. package/dist/esm/i18n/fr.js +62 -0
  334. package/dist/esm/i18n/hu.js +62 -0
  335. package/dist/esm/i18n/index.js +24 -0
  336. package/dist/esm/i18n/it.js +62 -0
  337. package/dist/esm/i18n/ja.js +62 -0
  338. package/dist/esm/i18n/ko.js +62 -0
  339. package/dist/esm/i18n/nb.js +62 -0
  340. package/dist/esm/i18n/nl.js +62 -0
  341. package/dist/esm/i18n/pl.js +62 -0
  342. package/dist/esm/i18n/pt_BR.js +62 -0
  343. package/dist/esm/i18n/pt_PT.js +8 -0
  344. package/dist/esm/i18n/ru.js +62 -0
  345. package/dist/esm/i18n/sk.js +8 -0
  346. package/dist/esm/i18n/sv.js +62 -0
  347. package/dist/esm/i18n/th.js +62 -0
  348. package/dist/esm/i18n/tr.js +62 -0
  349. package/dist/esm/i18n/uk.js +62 -0
  350. package/dist/esm/i18n/vi.js +62 -0
  351. package/dist/esm/i18n/zh.js +62 -0
  352. package/dist/esm/i18n/zh_TW.js +62 -0
  353. package/dist/esm/index.js +4 -0
  354. package/dist/esm/plugins/autocomplete/components/autocomplete/index.js +38 -0
  355. package/dist/esm/plugins/autocomplete/components/autocomplete-dropdown/index.js +268 -0
  356. package/dist/esm/plugins/autocomplete/components/autocomplete-dropdown/styled.js +16 -0
  357. package/dist/esm/plugins/autocomplete/components/autocomplete-option/glyphs.js +98 -0
  358. package/dist/esm/plugins/autocomplete/components/autocomplete-option/index.js +165 -0
  359. package/dist/esm/plugins/autocomplete/components/autocomplete-option/messages.js +13 -0
  360. package/dist/esm/plugins/autocomplete/components/autocomplete-option/styled.js +21 -0
  361. package/dist/esm/plugins/autocomplete/components/types.js +1 -0
  362. package/dist/esm/plugins/autocomplete/constants.js +29 -0
  363. package/dist/esm/plugins/autocomplete/index.js +30 -0
  364. package/dist/esm/plugins/autocomplete/messages.js +8 -0
  365. package/dist/esm/plugins/autocomplete/types.js +1 -0
  366. package/dist/esm/plugins/autocomplete/view.js +120 -0
  367. package/dist/esm/plugins/common/get-document-position/index.js +93 -0
  368. package/dist/esm/plugins/common/plugin-keymap.js +43 -0
  369. package/dist/esm/plugins/common/react-plugin-view.js +84 -0
  370. package/dist/esm/plugins/index.js +5 -0
  371. package/dist/esm/plugins/jql-ast/JQLEditorErrorStrategy.js +212 -0
  372. package/dist/esm/plugins/jql-ast/constants.js +9 -0
  373. package/dist/esm/plugins/jql-ast/error-handlers/CustomFieldRuleErrorHandler.js +8 -0
  374. package/dist/esm/plugins/jql-ast/error-handlers/ExpectedTokensErrorHandler.js +57 -0
  375. package/dist/esm/plugins/jql-ast/error-handlers/FieldPropertyIdErrorHandler.js +12 -0
  376. package/dist/esm/plugins/jql-ast/error-handlers/FieldRuleErrorHandler.js +15 -0
  377. package/dist/esm/plugins/jql-ast/error-handlers/FunctionArgumentRuleErrorHandler.js +12 -0
  378. package/dist/esm/plugins/jql-ast/error-handlers/OperandRuleErrorHandler.js +61 -0
  379. package/dist/esm/plugins/jql-ast/error-handlers/OperatorRuleErrorHandler.js +13 -0
  380. package/dist/esm/plugins/jql-ast/index.js +39 -0
  381. package/dist/esm/plugins/jql-ast/messages.js +173 -0
  382. package/dist/esm/plugins/jql-ast/utils.js +17 -0
  383. package/dist/esm/plugins/jql-syntax-highlighting/index.js +62 -0
  384. package/dist/esm/plugins/jql-syntax-highlighting/types.js +1 -0
  385. package/dist/esm/plugins/jql-syntax-highlighting/visitor.js +82 -0
  386. package/dist/esm/plugins/rich-inline-nodes/constants.js +3 -0
  387. package/dist/esm/plugins/rich-inline-nodes/index.js +56 -0
  388. package/dist/esm/plugins/rich-inline-nodes/nodes/index.js +4 -0
  389. package/dist/esm/plugins/rich-inline-nodes/nodes/types.js +1 -0
  390. package/dist/esm/plugins/rich-inline-nodes/nodes/user/index.js +34 -0
  391. package/dist/esm/plugins/rich-inline-nodes/nodes/user/styled.js +28 -0
  392. package/dist/esm/plugins/rich-inline-nodes/types.js +1 -0
  393. package/dist/esm/plugins/rich-inline-nodes/util/create-node-spec.js +30 -0
  394. package/dist/esm/plugins/rich-inline-nodes/util/react-node-view.js +119 -0
  395. package/dist/esm/plugins/rich-inline-nodes/util/replace-nodes-transaction.js +131 -0
  396. package/dist/esm/plugins/types.js +1 -0
  397. package/dist/esm/plugins/validation-tooltip/constants.js +5 -0
  398. package/dist/esm/plugins/validation-tooltip/index.js +52 -0
  399. package/dist/esm/plugins/validation-tooltip/view.js +67 -0
  400. package/dist/esm/schema/index.js +129 -0
  401. package/dist/esm/state/analytics/index.js +50 -0
  402. package/dist/esm/state/autocomplete/index.js +17 -0
  403. package/dist/esm/state/hydration/index.js +85 -0
  404. package/dist/esm/state/hydration/util.js +83 -0
  405. package/dist/esm/state/index.js +991 -0
  406. package/dist/esm/state/types.js +1 -0
  407. package/dist/esm/state/util.js +169 -0
  408. package/dist/esm/types.js +1 -0
  409. package/dist/esm/ui/error-boundary/index.js +73 -0
  410. package/dist/esm/ui/index.js +4 -0
  411. package/dist/esm/ui/intl-provider/index.js +16 -0
  412. package/dist/esm/ui/jql-editor/index.js +63 -0
  413. package/dist/esm/ui/jql-editor/types.js +1 -0
  414. package/dist/esm/ui/jql-editor-controls-content/base-expand-toggle/index.js +49 -0
  415. package/dist/esm/ui/jql-editor-controls-content/base-expand-toggle/styled.js +5 -0
  416. package/dist/esm/ui/jql-editor-controls-content/base-search/index.js +34 -0
  417. package/dist/esm/ui/jql-editor-controls-content/base-syntax-help/index.js +26 -0
  418. package/dist/esm/ui/jql-editor-controls-content/base-syntax-help/styled.js +5 -0
  419. package/dist/esm/ui/jql-editor-controls-content/expand-toggle/index.js +55 -0
  420. package/dist/esm/ui/jql-editor-controls-content/expand-toggle/messages.js +18 -0
  421. package/dist/esm/ui/jql-editor-controls-content/index.js +10 -0
  422. package/dist/esm/ui/jql-editor-controls-content/read-only-controls-content/index.js +28 -0
  423. package/dist/esm/ui/jql-editor-controls-content/search/index.js +31 -0
  424. package/dist/esm/ui/jql-editor-controls-content/search/messages.js +8 -0
  425. package/dist/esm/ui/jql-editor-controls-content/syntax-help/index.js +50 -0
  426. package/dist/esm/ui/jql-editor-controls-content/syntax-help/messages.js +13 -0
  427. package/dist/esm/ui/jql-editor-footer-content/index.js +28 -0
  428. package/dist/esm/ui/jql-editor-footer-content/jql-editor-help/index.js +35 -0
  429. package/dist/esm/ui/jql-editor-footer-content/jql-editor-help/messages.js +18 -0
  430. package/dist/esm/ui/jql-editor-footer-content/jql-editor-help/styled.js +8 -0
  431. package/dist/esm/ui/jql-editor-footer-content/jql-messages/errors/index.js +60 -0
  432. package/dist/esm/ui/jql-editor-footer-content/jql-messages/errors/messages.js +8 -0
  433. package/dist/esm/ui/jql-editor-footer-content/jql-messages/format/index.js +28 -0
  434. package/dist/esm/ui/jql-editor-footer-content/jql-messages/format/styled.js +7 -0
  435. package/dist/esm/ui/jql-editor-footer-content/jql-messages/index.js +3 -0
  436. package/dist/esm/ui/jql-editor-footer-content/jql-messages/infos/index.js +31 -0
  437. package/dist/esm/ui/jql-editor-footer-content/jql-messages/warnings/index.js +100 -0
  438. package/dist/esm/ui/jql-editor-footer-content/jql-messages/warnings/messages.js +18 -0
  439. package/dist/esm/ui/jql-editor-layout/index.js +98 -0
  440. package/dist/esm/ui/jql-editor-layout/styled.js +56 -0
  441. package/dist/esm/ui/jql-editor-portal-provider/context.js +10 -0
  442. package/dist/esm/ui/jql-editor-portal-provider/index.js +107 -0
  443. package/dist/esm/ui/jql-editor-portal-provider/types.js +1 -0
  444. package/dist/esm/ui/jql-editor-view/index.js +190 -0
  445. package/dist/esm/ui/messages.js +8 -0
  446. package/dist/esm/ui/tooltip-tag/index.js +10 -0
  447. package/dist/esm/ui/tooltip-tag/styled.js +4 -0
  448. package/dist/esm/ui/types.js +1 -0
  449. package/dist/esm/utils/document-text/index.js +37 -0
  450. package/dist/esm/utils/split-text-by-new-line/index.js +6 -0
  451. package/dist/types/accessibility/index.d.ts +1 -0
  452. package/dist/types/accessibility/styled.d.ts +2 -0
  453. package/dist/types/analytics/constants.d.ts +18 -0
  454. package/dist/types/analytics/index.d.ts +7 -0
  455. package/dist/types/analytics/listener/analytics-web-client-wrapper.d.ts +9 -0
  456. package/dist/types/analytics/listener/handle-event.d.ts +9 -0
  457. package/dist/types/analytics/listener/helpers/logger.d.ts +24 -0
  458. package/dist/types/analytics/listener/index.d.ts +7 -0
  459. package/dist/types/analytics/listener/jql-editor-analytics-listener.d.ts +20 -0
  460. package/dist/types/analytics/listener/process-event-payload.d.ts +8 -0
  461. package/dist/types/analytics/listener/types.d.ts +7 -0
  462. package/dist/types/analytics/types.d.ts +3 -0
  463. package/dist/types/analytics/util.d.ts +4 -0
  464. package/dist/types/async.d.ts +3 -0
  465. package/dist/types/commands/select-error-command/index.d.ts +5 -0
  466. package/dist/types/common/constants.d.ts +5 -0
  467. package/dist/types/common/messages.d.ts +7 -0
  468. package/dist/types/common/styled.d.ts +3 -0
  469. package/dist/types/hooks/use-editor-theme/index.d.ts +38 -0
  470. package/dist/types/hooks/use-editor-view-has-infos/index.d.ts +1 -0
  471. package/dist/types/hooks/use-editor-view-has-warnings/index.d.ts +1 -0
  472. package/dist/types/hooks/use-editor-view-is-invalid/index.d.ts +11 -0
  473. package/dist/types/i18n/cs.d.ts +61 -0
  474. package/dist/types/i18n/da.d.ts +61 -0
  475. package/dist/types/i18n/de.d.ts +61 -0
  476. package/dist/types/i18n/en.d.ts +61 -0
  477. package/dist/types/i18n/en_GB.d.ts +61 -0
  478. package/dist/types/i18n/en_ZZ.d.ts +61 -0
  479. package/dist/types/i18n/es.d.ts +61 -0
  480. package/dist/types/i18n/et.d.ts +8 -0
  481. package/dist/types/i18n/fi.d.ts +61 -0
  482. package/dist/types/i18n/fr.d.ts +61 -0
  483. package/dist/types/i18n/hu.d.ts +61 -0
  484. package/dist/types/i18n/index.d.ts +24 -0
  485. package/dist/types/i18n/it.d.ts +61 -0
  486. package/dist/types/i18n/ja.d.ts +61 -0
  487. package/dist/types/i18n/ko.d.ts +61 -0
  488. package/dist/types/i18n/nb.d.ts +61 -0
  489. package/dist/types/i18n/nl.d.ts +61 -0
  490. package/dist/types/i18n/pl.d.ts +61 -0
  491. package/dist/types/i18n/pt_BR.d.ts +61 -0
  492. package/dist/types/i18n/pt_PT.d.ts +8 -0
  493. package/dist/types/i18n/ru.d.ts +61 -0
  494. package/dist/types/i18n/sk.d.ts +8 -0
  495. package/dist/types/i18n/sv.d.ts +61 -0
  496. package/dist/types/i18n/th.d.ts +61 -0
  497. package/dist/types/i18n/tr.d.ts +61 -0
  498. package/dist/types/i18n/uk.d.ts +61 -0
  499. package/dist/types/i18n/vi.d.ts +61 -0
  500. package/dist/types/i18n/zh.d.ts +61 -0
  501. package/dist/types/i18n/zh_TW.d.ts +61 -0
  502. package/dist/types/index.d.ts +5 -0
  503. package/dist/types/plugins/autocomplete/components/autocomplete/index.d.ts +4 -0
  504. package/dist/types/plugins/autocomplete/components/autocomplete-dropdown/index.d.ts +11 -0
  505. package/dist/types/plugins/autocomplete/components/autocomplete-dropdown/styled.d.ts +9 -0
  506. package/dist/types/plugins/autocomplete/components/autocomplete-option/glyphs.d.ts +10 -0
  507. package/dist/types/plugins/autocomplete/components/autocomplete-option/index.d.ts +10 -0
  508. package/dist/types/plugins/autocomplete/components/autocomplete-option/messages.d.ts +12 -0
  509. package/dist/types/plugins/autocomplete/components/autocomplete-option/styled.d.ts +11 -0
  510. package/dist/types/plugins/autocomplete/components/types.d.ts +38 -0
  511. package/dist/types/plugins/autocomplete/constants.d.ts +14 -0
  512. package/dist/types/plugins/autocomplete/index.d.ts +4 -0
  513. package/dist/types/plugins/autocomplete/messages.d.ts +7 -0
  514. package/dist/types/plugins/autocomplete/types.d.ts +1 -0
  515. package/dist/types/plugins/autocomplete/view.d.ts +19 -0
  516. package/dist/types/plugins/common/get-document-position/index.d.ts +9 -0
  517. package/dist/types/plugins/common/plugin-keymap.d.ts +7 -0
  518. package/dist/types/plugins/common/react-plugin-view.d.ts +48 -0
  519. package/dist/types/plugins/index.d.ts +5 -0
  520. package/dist/types/plugins/jql-ast/JQLEditorErrorStrategy.d.ts +17 -0
  521. package/dist/types/plugins/jql-ast/constants.d.ts +3 -0
  522. package/dist/types/plugins/jql-ast/error-handlers/CustomFieldRuleErrorHandler.d.ts +5 -0
  523. package/dist/types/plugins/jql-ast/error-handlers/ExpectedTokensErrorHandler.d.ts +11 -0
  524. package/dist/types/plugins/jql-ast/error-handlers/FieldPropertyIdErrorHandler.d.ts +6 -0
  525. package/dist/types/plugins/jql-ast/error-handlers/FieldRuleErrorHandler.d.ts +6 -0
  526. package/dist/types/plugins/jql-ast/error-handlers/FunctionArgumentRuleErrorHandler.d.ts +6 -0
  527. package/dist/types/plugins/jql-ast/error-handlers/OperandRuleErrorHandler.d.ts +9 -0
  528. package/dist/types/plugins/jql-ast/error-handlers/OperatorRuleErrorHandler.d.ts +6 -0
  529. package/dist/types/plugins/jql-ast/index.d.ts +7 -0
  530. package/dist/types/plugins/jql-ast/messages.d.ts +172 -0
  531. package/dist/types/plugins/jql-ast/utils.d.ts +4 -0
  532. package/dist/types/plugins/jql-syntax-highlighting/index.d.ts +4 -0
  533. package/dist/types/plugins/jql-syntax-highlighting/types.d.ts +5 -0
  534. package/dist/types/plugins/jql-syntax-highlighting/visitor.d.ts +19 -0
  535. package/dist/types/plugins/rich-inline-nodes/constants.d.ts +3 -0
  536. package/dist/types/plugins/rich-inline-nodes/index.d.ts +4 -0
  537. package/dist/types/plugins/rich-inline-nodes/nodes/index.d.ts +3 -0
  538. package/dist/types/plugins/rich-inline-nodes/nodes/types.d.ts +9 -0
  539. package/dist/types/plugins/rich-inline-nodes/nodes/user/index.d.ts +7 -0
  540. package/dist/types/plugins/rich-inline-nodes/nodes/user/styled.d.ts +7 -0
  541. package/dist/types/plugins/rich-inline-nodes/types.d.ts +2 -0
  542. package/dist/types/plugins/rich-inline-nodes/util/create-node-spec.d.ts +4 -0
  543. package/dist/types/plugins/rich-inline-nodes/util/react-node-view.d.ts +24 -0
  544. package/dist/types/plugins/rich-inline-nodes/util/replace-nodes-transaction.d.ts +3 -0
  545. package/dist/types/plugins/types.d.ts +16 -0
  546. package/dist/types/plugins/validation-tooltip/constants.d.ts +5 -0
  547. package/dist/types/plugins/validation-tooltip/index.d.ts +3 -0
  548. package/dist/types/plugins/validation-tooltip/view.d.ts +18 -0
  549. package/dist/types/schema/index.d.ts +28 -0
  550. package/dist/types/state/analytics/index.d.ts +9 -0
  551. package/dist/types/state/autocomplete/index.d.ts +4 -0
  552. package/dist/types/state/hydration/index.d.ts +3 -0
  553. package/dist/types/state/hydration/util.d.ts +23 -0
  554. package/dist/types/state/index.d.ts +796 -0
  555. package/dist/types/state/types.d.ts +242 -0
  556. package/dist/types/state/util.d.ts +16 -0
  557. package/dist/types/types.d.ts +5 -0
  558. package/dist/types/ui/error-boundary/index.d.ts +25 -0
  559. package/dist/types/ui/index.d.ts +4 -0
  560. package/dist/types/ui/intl-provider/index.d.ts +10 -0
  561. package/dist/types/ui/jql-editor/index.d.ts +13 -0
  562. package/dist/types/ui/jql-editor/types.d.ts +101 -0
  563. package/dist/types/ui/jql-editor-controls-content/base-expand-toggle/index.d.ts +10 -0
  564. package/dist/types/ui/jql-editor-controls-content/base-expand-toggle/styled.d.ts +2 -0
  565. package/dist/types/ui/jql-editor-controls-content/base-search/index.d.ts +9 -0
  566. package/dist/types/ui/jql-editor-controls-content/base-syntax-help/index.d.ts +9 -0
  567. package/dist/types/ui/jql-editor-controls-content/base-syntax-help/styled.d.ts +2 -0
  568. package/dist/types/ui/jql-editor-controls-content/expand-toggle/index.d.ts +2 -0
  569. package/dist/types/ui/jql-editor-controls-content/expand-toggle/messages.d.ts +17 -0
  570. package/dist/types/ui/jql-editor-controls-content/index.d.ts +2 -0
  571. package/dist/types/ui/jql-editor-controls-content/read-only-controls-content/index.d.ts +2 -0
  572. package/dist/types/ui/jql-editor-controls-content/search/index.d.ts +2 -0
  573. package/dist/types/ui/jql-editor-controls-content/search/messages.d.ts +7 -0
  574. package/dist/types/ui/jql-editor-controls-content/syntax-help/index.d.ts +2 -0
  575. package/dist/types/ui/jql-editor-controls-content/syntax-help/messages.d.ts +12 -0
  576. package/dist/types/ui/jql-editor-footer-content/index.d.ts +6 -0
  577. package/dist/types/ui/jql-editor-footer-content/jql-editor-help/index.d.ts +2 -0
  578. package/dist/types/ui/jql-editor-footer-content/jql-editor-help/messages.d.ts +17 -0
  579. package/dist/types/ui/jql-editor-footer-content/jql-editor-help/styled.d.ts +6 -0
  580. package/dist/types/ui/jql-editor-footer-content/jql-messages/errors/index.d.ts +2 -0
  581. package/dist/types/ui/jql-editor-footer-content/jql-messages/errors/messages.d.ts +7 -0
  582. package/dist/types/ui/jql-editor-footer-content/jql-messages/format/index.d.ts +8 -0
  583. package/dist/types/ui/jql-editor-footer-content/jql-messages/format/styled.d.ts +5 -0
  584. package/dist/types/ui/jql-editor-footer-content/jql-messages/index.d.ts +3 -0
  585. package/dist/types/ui/jql-editor-footer-content/jql-messages/infos/index.d.ts +3 -0
  586. package/dist/types/ui/jql-editor-footer-content/jql-messages/warnings/index.d.ts +3 -0
  587. package/dist/types/ui/jql-editor-footer-content/jql-messages/warnings/messages.d.ts +17 -0
  588. package/dist/types/ui/jql-editor-layout/index.d.ts +64 -0
  589. package/dist/types/ui/jql-editor-layout/styled.d.ts +65 -0
  590. package/dist/types/ui/jql-editor-portal-provider/context.d.ts +4 -0
  591. package/dist/types/ui/jql-editor-portal-provider/index.d.ts +7 -0
  592. package/dist/types/ui/jql-editor-portal-provider/types.d.ts +38 -0
  593. package/dist/types/ui/jql-editor-view/index.d.ts +10 -0
  594. package/dist/types/ui/messages.d.ts +7 -0
  595. package/dist/types/ui/tooltip-tag/index.d.ts +2 -0
  596. package/dist/types/ui/tooltip-tag/styled.d.ts +2 -0
  597. package/dist/types/ui/types.d.ts +9 -0
  598. package/dist/types/utils/document-text/index.d.ts +9 -0
  599. package/dist/types/utils/split-text-by-new-line/index.d.ts +4 -0
  600. package/dist/types-ts4.5/accessibility/index.d.ts +1 -0
  601. package/dist/types-ts4.5/accessibility/styled.d.ts +2 -0
  602. package/dist/types-ts4.5/analytics/constants.d.ts +18 -0
  603. package/dist/types-ts4.5/analytics/index.d.ts +7 -0
  604. package/dist/types-ts4.5/analytics/listener/analytics-web-client-wrapper.d.ts +9 -0
  605. package/dist/types-ts4.5/analytics/listener/handle-event.d.ts +9 -0
  606. package/dist/types-ts4.5/analytics/listener/helpers/logger.d.ts +24 -0
  607. package/dist/types-ts4.5/analytics/listener/index.d.ts +7 -0
  608. package/dist/types-ts4.5/analytics/listener/jql-editor-analytics-listener.d.ts +20 -0
  609. package/dist/types-ts4.5/analytics/listener/process-event-payload.d.ts +8 -0
  610. package/dist/types-ts4.5/analytics/listener/types.d.ts +7 -0
  611. package/dist/types-ts4.5/analytics/types.d.ts +3 -0
  612. package/dist/types-ts4.5/analytics/util.d.ts +4 -0
  613. package/dist/types-ts4.5/async.d.ts +3 -0
  614. package/dist/types-ts4.5/commands/select-error-command/index.d.ts +5 -0
  615. package/dist/types-ts4.5/common/constants.d.ts +5 -0
  616. package/dist/types-ts4.5/common/messages.d.ts +7 -0
  617. package/dist/types-ts4.5/common/styled.d.ts +3 -0
  618. package/dist/types-ts4.5/hooks/use-editor-theme/index.d.ts +38 -0
  619. package/dist/types-ts4.5/hooks/use-editor-view-has-infos/index.d.ts +1 -0
  620. package/dist/types-ts4.5/hooks/use-editor-view-has-warnings/index.d.ts +1 -0
  621. package/dist/types-ts4.5/hooks/use-editor-view-is-invalid/index.d.ts +11 -0
  622. package/dist/types-ts4.5/i18n/cs.d.ts +61 -0
  623. package/dist/types-ts4.5/i18n/da.d.ts +61 -0
  624. package/dist/types-ts4.5/i18n/de.d.ts +61 -0
  625. package/dist/types-ts4.5/i18n/en.d.ts +61 -0
  626. package/dist/types-ts4.5/i18n/en_GB.d.ts +61 -0
  627. package/dist/types-ts4.5/i18n/en_ZZ.d.ts +61 -0
  628. package/dist/types-ts4.5/i18n/es.d.ts +61 -0
  629. package/dist/types-ts4.5/i18n/et.d.ts +8 -0
  630. package/dist/types-ts4.5/i18n/fi.d.ts +61 -0
  631. package/dist/types-ts4.5/i18n/fr.d.ts +61 -0
  632. package/dist/types-ts4.5/i18n/hu.d.ts +61 -0
  633. package/dist/types-ts4.5/i18n/index.d.ts +24 -0
  634. package/dist/types-ts4.5/i18n/it.d.ts +61 -0
  635. package/dist/types-ts4.5/i18n/ja.d.ts +61 -0
  636. package/dist/types-ts4.5/i18n/ko.d.ts +61 -0
  637. package/dist/types-ts4.5/i18n/nb.d.ts +61 -0
  638. package/dist/types-ts4.5/i18n/nl.d.ts +61 -0
  639. package/dist/types-ts4.5/i18n/pl.d.ts +61 -0
  640. package/dist/types-ts4.5/i18n/pt_BR.d.ts +61 -0
  641. package/dist/types-ts4.5/i18n/pt_PT.d.ts +8 -0
  642. package/dist/types-ts4.5/i18n/ru.d.ts +61 -0
  643. package/dist/types-ts4.5/i18n/sk.d.ts +8 -0
  644. package/dist/types-ts4.5/i18n/sv.d.ts +61 -0
  645. package/dist/types-ts4.5/i18n/th.d.ts +61 -0
  646. package/dist/types-ts4.5/i18n/tr.d.ts +61 -0
  647. package/dist/types-ts4.5/i18n/uk.d.ts +61 -0
  648. package/dist/types-ts4.5/i18n/vi.d.ts +61 -0
  649. package/dist/types-ts4.5/i18n/zh.d.ts +61 -0
  650. package/dist/types-ts4.5/i18n/zh_TW.d.ts +61 -0
  651. package/dist/types-ts4.5/index.d.ts +5 -0
  652. package/dist/types-ts4.5/plugins/autocomplete/components/autocomplete/index.d.ts +4 -0
  653. package/dist/types-ts4.5/plugins/autocomplete/components/autocomplete-dropdown/index.d.ts +11 -0
  654. package/dist/types-ts4.5/plugins/autocomplete/components/autocomplete-dropdown/styled.d.ts +9 -0
  655. package/dist/types-ts4.5/plugins/autocomplete/components/autocomplete-option/glyphs.d.ts +10 -0
  656. package/dist/types-ts4.5/plugins/autocomplete/components/autocomplete-option/index.d.ts +10 -0
  657. package/dist/types-ts4.5/plugins/autocomplete/components/autocomplete-option/messages.d.ts +12 -0
  658. package/dist/types-ts4.5/plugins/autocomplete/components/autocomplete-option/styled.d.ts +11 -0
  659. package/dist/types-ts4.5/plugins/autocomplete/components/types.d.ts +38 -0
  660. package/dist/types-ts4.5/plugins/autocomplete/constants.d.ts +14 -0
  661. package/dist/types-ts4.5/plugins/autocomplete/index.d.ts +4 -0
  662. package/dist/types-ts4.5/plugins/autocomplete/messages.d.ts +7 -0
  663. package/dist/types-ts4.5/plugins/autocomplete/types.d.ts +1 -0
  664. package/dist/types-ts4.5/plugins/autocomplete/view.d.ts +19 -0
  665. package/dist/types-ts4.5/plugins/common/get-document-position/index.d.ts +9 -0
  666. package/dist/types-ts4.5/plugins/common/plugin-keymap.d.ts +7 -0
  667. package/dist/types-ts4.5/plugins/common/react-plugin-view.d.ts +48 -0
  668. package/dist/types-ts4.5/plugins/index.d.ts +5 -0
  669. package/dist/types-ts4.5/plugins/jql-ast/JQLEditorErrorStrategy.d.ts +17 -0
  670. package/dist/types-ts4.5/plugins/jql-ast/constants.d.ts +3 -0
  671. package/dist/types-ts4.5/plugins/jql-ast/error-handlers/CustomFieldRuleErrorHandler.d.ts +5 -0
  672. package/dist/types-ts4.5/plugins/jql-ast/error-handlers/ExpectedTokensErrorHandler.d.ts +11 -0
  673. package/dist/types-ts4.5/plugins/jql-ast/error-handlers/FieldPropertyIdErrorHandler.d.ts +6 -0
  674. package/dist/types-ts4.5/plugins/jql-ast/error-handlers/FieldRuleErrorHandler.d.ts +6 -0
  675. package/dist/types-ts4.5/plugins/jql-ast/error-handlers/FunctionArgumentRuleErrorHandler.d.ts +6 -0
  676. package/dist/types-ts4.5/plugins/jql-ast/error-handlers/OperandRuleErrorHandler.d.ts +9 -0
  677. package/dist/types-ts4.5/plugins/jql-ast/error-handlers/OperatorRuleErrorHandler.d.ts +6 -0
  678. package/dist/types-ts4.5/plugins/jql-ast/index.d.ts +7 -0
  679. package/dist/types-ts4.5/plugins/jql-ast/messages.d.ts +172 -0
  680. package/dist/types-ts4.5/plugins/jql-ast/utils.d.ts +4 -0
  681. package/dist/types-ts4.5/plugins/jql-syntax-highlighting/index.d.ts +4 -0
  682. package/dist/types-ts4.5/plugins/jql-syntax-highlighting/types.d.ts +5 -0
  683. package/dist/types-ts4.5/plugins/jql-syntax-highlighting/visitor.d.ts +19 -0
  684. package/dist/types-ts4.5/plugins/rich-inline-nodes/constants.d.ts +3 -0
  685. package/dist/types-ts4.5/plugins/rich-inline-nodes/index.d.ts +4 -0
  686. package/dist/types-ts4.5/plugins/rich-inline-nodes/nodes/index.d.ts +3 -0
  687. package/dist/types-ts4.5/plugins/rich-inline-nodes/nodes/types.d.ts +9 -0
  688. package/dist/types-ts4.5/plugins/rich-inline-nodes/nodes/user/index.d.ts +7 -0
  689. package/dist/types-ts4.5/plugins/rich-inline-nodes/nodes/user/styled.d.ts +7 -0
  690. package/dist/types-ts4.5/plugins/rich-inline-nodes/types.d.ts +2 -0
  691. package/dist/types-ts4.5/plugins/rich-inline-nodes/util/create-node-spec.d.ts +4 -0
  692. package/dist/types-ts4.5/plugins/rich-inline-nodes/util/react-node-view.d.ts +24 -0
  693. package/dist/types-ts4.5/plugins/rich-inline-nodes/util/replace-nodes-transaction.d.ts +3 -0
  694. package/dist/types-ts4.5/plugins/types.d.ts +16 -0
  695. package/dist/types-ts4.5/plugins/validation-tooltip/constants.d.ts +5 -0
  696. package/dist/types-ts4.5/plugins/validation-tooltip/index.d.ts +3 -0
  697. package/dist/types-ts4.5/plugins/validation-tooltip/view.d.ts +18 -0
  698. package/dist/types-ts4.5/schema/index.d.ts +28 -0
  699. package/dist/types-ts4.5/state/analytics/index.d.ts +9 -0
  700. package/dist/types-ts4.5/state/autocomplete/index.d.ts +4 -0
  701. package/dist/types-ts4.5/state/hydration/index.d.ts +3 -0
  702. package/dist/types-ts4.5/state/hydration/util.d.ts +23 -0
  703. package/dist/types-ts4.5/state/index.d.ts +796 -0
  704. package/dist/types-ts4.5/state/types.d.ts +242 -0
  705. package/dist/types-ts4.5/state/util.d.ts +16 -0
  706. package/dist/types-ts4.5/types.d.ts +5 -0
  707. package/dist/types-ts4.5/ui/error-boundary/index.d.ts +25 -0
  708. package/dist/types-ts4.5/ui/index.d.ts +4 -0
  709. package/dist/types-ts4.5/ui/intl-provider/index.d.ts +10 -0
  710. package/dist/types-ts4.5/ui/jql-editor/index.d.ts +13 -0
  711. package/dist/types-ts4.5/ui/jql-editor/types.d.ts +101 -0
  712. package/dist/types-ts4.5/ui/jql-editor-controls-content/base-expand-toggle/index.d.ts +10 -0
  713. package/dist/types-ts4.5/ui/jql-editor-controls-content/base-expand-toggle/styled.d.ts +2 -0
  714. package/dist/types-ts4.5/ui/jql-editor-controls-content/base-search/index.d.ts +9 -0
  715. package/dist/types-ts4.5/ui/jql-editor-controls-content/base-syntax-help/index.d.ts +9 -0
  716. package/dist/types-ts4.5/ui/jql-editor-controls-content/base-syntax-help/styled.d.ts +2 -0
  717. package/dist/types-ts4.5/ui/jql-editor-controls-content/expand-toggle/index.d.ts +2 -0
  718. package/dist/types-ts4.5/ui/jql-editor-controls-content/expand-toggle/messages.d.ts +17 -0
  719. package/dist/types-ts4.5/ui/jql-editor-controls-content/index.d.ts +2 -0
  720. package/dist/types-ts4.5/ui/jql-editor-controls-content/read-only-controls-content/index.d.ts +2 -0
  721. package/dist/types-ts4.5/ui/jql-editor-controls-content/search/index.d.ts +2 -0
  722. package/dist/types-ts4.5/ui/jql-editor-controls-content/search/messages.d.ts +7 -0
  723. package/dist/types-ts4.5/ui/jql-editor-controls-content/syntax-help/index.d.ts +2 -0
  724. package/dist/types-ts4.5/ui/jql-editor-controls-content/syntax-help/messages.d.ts +12 -0
  725. package/dist/types-ts4.5/ui/jql-editor-footer-content/index.d.ts +6 -0
  726. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-editor-help/index.d.ts +2 -0
  727. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-editor-help/messages.d.ts +17 -0
  728. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-editor-help/styled.d.ts +6 -0
  729. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/errors/index.d.ts +2 -0
  730. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/errors/messages.d.ts +7 -0
  731. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/format/index.d.ts +8 -0
  732. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/format/styled.d.ts +5 -0
  733. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/index.d.ts +3 -0
  734. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/infos/index.d.ts +3 -0
  735. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/warnings/index.d.ts +3 -0
  736. package/dist/types-ts4.5/ui/jql-editor-footer-content/jql-messages/warnings/messages.d.ts +17 -0
  737. package/dist/types-ts4.5/ui/jql-editor-layout/index.d.ts +64 -0
  738. package/dist/types-ts4.5/ui/jql-editor-layout/styled.d.ts +65 -0
  739. package/dist/types-ts4.5/ui/jql-editor-portal-provider/context.d.ts +4 -0
  740. package/dist/types-ts4.5/ui/jql-editor-portal-provider/index.d.ts +7 -0
  741. package/dist/types-ts4.5/ui/jql-editor-portal-provider/types.d.ts +38 -0
  742. package/dist/types-ts4.5/ui/jql-editor-view/index.d.ts +10 -0
  743. package/dist/types-ts4.5/ui/messages.d.ts +7 -0
  744. package/dist/types-ts4.5/ui/tooltip-tag/index.d.ts +2 -0
  745. package/dist/types-ts4.5/ui/tooltip-tag/styled.d.ts +2 -0
  746. package/dist/types-ts4.5/ui/types.d.ts +9 -0
  747. package/dist/types-ts4.5/utils/document-text/index.d.ts +9 -0
  748. package/dist/types-ts4.5/utils/split-text-by-new-line/index.d.ts +4 -0
  749. package/i18n/package.json +15 -0
  750. package/package.json +127 -0
@@ -0,0 +1,268 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import React, { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';
4
+ import Spinner from '@atlaskit/spinner';
5
+ import { ScreenReaderText } from '../../../../accessibility';
6
+ import { JQL_EDITOR_AUTOCOMPLETE_ID } from '../../../../common/constants';
7
+ import { useAutocomplete, useAutocompleteIsOpen, useAutocompletePosition, useIntl, useRichInlineNodesEnabled, useScopedId, useStoreActions } from '../../../../state';
8
+ import { ARROW_DOWN_KEY, ARROW_UP_KEY, CMD_ARROW_DOWN_KEY, CMD_ARROW_UP_KEY, END_KEY, ENTER_KEY, ESCAPE_KEY, HOME_KEY, TAB_KEY } from '../../constants';
9
+ import { messages } from '../../messages';
10
+ import AutocompleteOption from '../autocomplete-option';
11
+ import { AutocompleteContainer, AutocompleteLoadingFooter, AutocompleteOptionsContainer, OptionList } from './styled';
12
+ var getPreviousOptionId = function getPreviousOptionId(options, selectedOptionId) {
13
+ if (!selectedOptionId) {
14
+ return options[options.length - 1].id;
15
+ }
16
+ var index = options.findIndex(function (option) {
17
+ return option.id === selectedOptionId;
18
+ });
19
+ if (index === -1) {
20
+ return options[options.length - 1].id;
21
+ }
22
+ if (index > 0) {
23
+ return options[index - 1].id;
24
+ }
25
+ return undefined;
26
+ };
27
+ var getNextOptionId = function getNextOptionId(options, selectedOptionId) {
28
+ if (!selectedOptionId) {
29
+ return options[0].id;
30
+ }
31
+ var index = options.findIndex(function (option) {
32
+ return option.id === selectedOptionId;
33
+ });
34
+ if (index === -1) {
35
+ return options[0].id;
36
+ }
37
+ if (index < options.length - 1) {
38
+ return options[index + 1].id;
39
+ }
40
+ return undefined;
41
+ };
42
+ var AutocompleteDropdown = function AutocompleteDropdown(_ref) {
43
+ var options = _ref.options,
44
+ loading = _ref.loading,
45
+ keymap = _ref.keymap,
46
+ onClick = _ref.onClick;
47
+ var containerRef = useRef(null);
48
+ var scrollContainerRef = useRef(null);
49
+ var selectedItemRef = useRef(null);
50
+ var _useState = useState(false),
51
+ _useState2 = _slicedToArray(_useState, 2),
52
+ navigatingWithKeyboard = _useState2[0],
53
+ setNavigatingWithKeyboard = _useState2[1];
54
+ var _useIntl = useIntl(),
55
+ _useIntl2 = _slicedToArray(_useIntl, 1),
56
+ intl = _useIntl2[0];
57
+ var _useStoreActions = useStoreActions(),
58
+ _useStoreActions2 = _slicedToArray(_useStoreActions, 2),
59
+ _useStoreActions2$ = _useStoreActions2[1],
60
+ onEditorViewFocus = _useStoreActions2$.onEditorViewFocus,
61
+ onEditorViewBlur = _useStoreActions2$.onEditorViewBlur;
62
+ var _useAutocomplete = useAutocomplete(),
63
+ _useAutocomplete2 = _slicedToArray(_useAutocomplete, 2),
64
+ selectedOptionId = _useAutocomplete2[0].selectedOptionId,
65
+ _useAutocomplete2$ = _useAutocomplete2[1],
66
+ closeAutocomplete = _useAutocomplete2$.closeAutocomplete,
67
+ setAutocompleteContainer = _useAutocomplete2$.setAutocompleteContainer,
68
+ setSelectedAutocompleteOptionId = _useAutocomplete2$.setSelectedAutocompleteOptionId;
69
+ var _useAutocompleteIsOpe = useAutocompleteIsOpen(),
70
+ _useAutocompleteIsOpe2 = _slicedToArray(_useAutocompleteIsOpe, 1),
71
+ isAutocompleteOpen = _useAutocompleteIsOpe2[0];
72
+ var _useAutocompletePosit = useAutocompletePosition(),
73
+ _useAutocompletePosit2 = _slicedToArray(_useAutocompletePosit, 1),
74
+ _useAutocompletePosit3 = _useAutocompletePosit2[0],
75
+ top = _useAutocompletePosit3.top,
76
+ left = _useAutocompletePosit3.left;
77
+ var _useRichInlineNodesEn = useRichInlineNodesEnabled(),
78
+ _useRichInlineNodesEn2 = _slicedToArray(_useRichInlineNodesEn, 1),
79
+ areRichInlineNodesEnabled = _useRichInlineNodesEn2[0];
80
+ var _useScopedId = useScopedId(JQL_EDITOR_AUTOCOMPLETE_ID),
81
+ _useScopedId2 = _slicedToArray(_useScopedId, 1),
82
+ autocompleteId = _useScopedId2[0];
83
+ var onContainerRef = useCallback(function (container) {
84
+ containerRef.current = container;
85
+ setAutocompleteContainer(container);
86
+ }, [containerRef, setAutocompleteContainer]);
87
+ var onScrollContainerRef = useCallback(function (container) {
88
+ scrollContainerRef.current = container;
89
+ }, [scrollContainerRef]);
90
+ var handleClick = useCallback(function (option, optionIndex, keyboard) {
91
+ closeAutocomplete();
92
+ onClick(option, {
93
+ keyboard: keyboard,
94
+ numberOfOptions: options.length,
95
+ optionIndex: optionIndex,
96
+ optionType: option.type,
97
+ queryLength: option.matchedText.length,
98
+ nodeType: areRichInlineNodesEnabled && option.valueType !== undefined ? option.valueType : 'text'
99
+ });
100
+ }, [options, onClick, closeAutocomplete, areRichInlineNodesEnabled]);
101
+ var onMouseMove = useCallback(function () {
102
+ if (navigatingWithKeyboard) {
103
+ setNavigatingWithKeyboard(false);
104
+ }
105
+ }, [navigatingWithKeyboard, setNavigatingWithKeyboard]);
106
+ useEffect(function () {
107
+ keymap.bindKey(ARROW_UP_KEY, function () {
108
+ if (!isAutocompleteOpen) {
109
+ return false;
110
+ }
111
+ !navigatingWithKeyboard && setNavigatingWithKeyboard(true);
112
+ var previousOptionId = getPreviousOptionId(options, selectedOptionId);
113
+ setSelectedAutocompleteOptionId(previousOptionId);
114
+ return true;
115
+ });
116
+ keymap.bindKey(ARROW_DOWN_KEY, function () {
117
+ if (!isAutocompleteOpen) {
118
+ return false;
119
+ }
120
+ !navigatingWithKeyboard && setNavigatingWithKeyboard(true);
121
+ var nextOptionId = getNextOptionId(options, selectedOptionId);
122
+ setSelectedAutocompleteOptionId(nextOptionId);
123
+ return true;
124
+ });
125
+ keymap.bindMultipleKeys([ENTER_KEY, TAB_KEY], function () {
126
+ if (!isAutocompleteOpen) {
127
+ return false;
128
+ }
129
+ var selectedOptionIndex = options.findIndex(function (option) {
130
+ return option.id === selectedOptionId;
131
+ });
132
+ if (selectedOptionId && selectedOptionIndex !== -1) {
133
+ if (options[selectedOptionIndex].isDeprecated) {
134
+ return true;
135
+ }
136
+ handleClick(options[selectedOptionIndex], selectedOptionIndex, true);
137
+ return true;
138
+ }
139
+ // Open with no option selected, so we let PM do its stuff (a.k.a. keep inserting new lines)
140
+ return false;
141
+ });
142
+ keymap.bindKey(ESCAPE_KEY, function () {
143
+ if (!isAutocompleteOpen) {
144
+ return false;
145
+ }
146
+ closeAutocomplete();
147
+ return true;
148
+ });
149
+ keymap.bindMultipleKeys([HOME_KEY, CMD_ARROW_UP_KEY], function () {
150
+ var _options$;
151
+ if (!isAutocompleteOpen) {
152
+ return false;
153
+ }
154
+ !navigatingWithKeyboard && setNavigatingWithKeyboard(true);
155
+ setSelectedAutocompleteOptionId((_options$ = options[0]) === null || _options$ === void 0 ? void 0 : _options$.id);
156
+ return true;
157
+ });
158
+ keymap.bindMultipleKeys([END_KEY, CMD_ARROW_DOWN_KEY], function () {
159
+ var _options;
160
+ if (!isAutocompleteOpen) {
161
+ return false;
162
+ }
163
+ !navigatingWithKeyboard && setNavigatingWithKeyboard(true);
164
+ setSelectedAutocompleteOptionId((_options = options[options.length - 1]) === null || _options === void 0 ? void 0 : _options.id);
165
+ return true;
166
+ });
167
+
168
+ // New bindings should also be registered in plugins/autocomplete/index.tsx
169
+
170
+ return function () {
171
+ keymap.unbindKey(ARROW_UP_KEY);
172
+ keymap.unbindKey(ARROW_DOWN_KEY);
173
+ keymap.unbindKey(ENTER_KEY);
174
+ keymap.unbindKey(TAB_KEY);
175
+ keymap.unbindKey(ESCAPE_KEY);
176
+ keymap.unbindKey(HOME_KEY);
177
+ keymap.unbindKey(END_KEY);
178
+ keymap.unbindKey(CMD_ARROW_UP_KEY);
179
+ keymap.unbindKey(CMD_ARROW_DOWN_KEY);
180
+ };
181
+ }, [keymap, isAutocompleteOpen, closeAutocomplete, navigatingWithKeyboard, setNavigatingWithKeyboard, options, selectedOptionId, setSelectedAutocompleteOptionId, handleClick]);
182
+ useEffect(function () {
183
+ // Reset to no selection when:
184
+ // - autocomplete is closed
185
+ // - we get new options and those don't include the currently selected option
186
+ if (!isAutocompleteOpen || !options.some(function (option) {
187
+ return option.id === selectedOptionId;
188
+ })) {
189
+ setSelectedAutocompleteOptionId(undefined);
190
+ }
191
+ }, [isAutocompleteOpen, options, selectedOptionId, setSelectedAutocompleteOptionId]);
192
+ useLayoutEffect(function () {
193
+ requestAnimationFrame(function () {
194
+ if (containerRef.current) {
195
+ containerRef.current.style.top = "".concat(top, "px");
196
+ containerRef.current.style.left = "".concat(left, "px");
197
+ }
198
+ });
199
+ }, [top, left]);
200
+ useLayoutEffect(function () {
201
+ if (navigatingWithKeyboard) {
202
+ var _selectedItemRef$curr;
203
+ (_selectedItemRef$curr = selectedItemRef.current) === null || _selectedItemRef$curr === void 0 || _selectedItemRef$curr.scrollIntoView({
204
+ block: 'nearest'
205
+ });
206
+ }
207
+ }, [navigatingWithKeyboard, selectedOptionId, selectedItemRef]);
208
+ useLayoutEffect(function () {
209
+ var _selectedItemRef$curr2;
210
+ (_selectedItemRef$curr2 = selectedItemRef.current) === null || _selectedItemRef$curr2 === void 0 || _selectedItemRef$curr2.scrollIntoView({
211
+ block: 'nearest'
212
+ });
213
+ }, [options, selectedItemRef]);
214
+ useLayoutEffect(function () {
215
+ if (isAutocompleteOpen && !selectedOptionId && scrollContainerRef.current) {
216
+ scrollContainerRef.current.scrollTop = 0;
217
+ }
218
+ }, [isAutocompleteOpen, selectedOptionId]);
219
+ var announcedMessage = useMemo(function () {
220
+ if (!isAutocompleteOpen || !options.length) {
221
+ return '';
222
+ }
223
+ return intl.formatMessage(messages.optionsFound);
224
+ }, [isAutocompleteOpen, intl, options]);
225
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(AutocompleteContainer, {
226
+ "data-testid": "jql-editor-autocomplete",
227
+ tabIndex: -1,
228
+ ref: onContainerRef,
229
+ isOpen: isAutocompleteOpen,
230
+ onBlur: onEditorViewBlur,
231
+ onFocus: onEditorViewFocus
232
+ }, /*#__PURE__*/React.createElement(AutocompleteOptionsContainer, {
233
+ ref: onScrollContainerRef,
234
+ onMouseMove: onMouseMove
235
+ }, /*#__PURE__*/React.createElement(OptionList, {
236
+ role: "listbox",
237
+ id: autocompleteId
238
+ }, options.map(function (option, index) {
239
+ var isSelected = option.id === selectedOptionId;
240
+ return /*#__PURE__*/React.createElement(AutocompleteOption, _extends({
241
+ key: option.value,
242
+ isSelected: isSelected
243
+ }, isSelected && {
244
+ ref: selectedItemRef
245
+ }, {
246
+ option: option,
247
+ onClick: function onClick() {
248
+ return handleClick(option, index, false);
249
+ },
250
+ onMouseMove: function onMouseMove() {
251
+ var _options$index;
252
+ if (((_options$index = options[index]) === null || _options$index === void 0 ? void 0 : _options$index.id) !== selectedOptionId) {
253
+ var _options$index2;
254
+ setSelectedAutocompleteOptionId((_options$index2 = options[index]) === null || _options$index2 === void 0 ? void 0 : _options$index2.id);
255
+ }
256
+ }
257
+ }));
258
+ }))), loading && /*#__PURE__*/React.createElement(AutocompleteLoadingFooter, {
259
+ "data-testid": "jql-editor-autocomplete-loading",
260
+ hasOptions: !!options.length
261
+ }, /*#__PURE__*/React.createElement(Spinner, {
262
+ size: "small"
263
+ }))), /*#__PURE__*/React.createElement(ScreenReaderText, {
264
+ role: "status",
265
+ "aria-live": "polite"
266
+ }, announcedMessage));
267
+ };
268
+ export default AutocompleteDropdown;
@@ -0,0 +1,16 @@
1
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
3
+ import { css } from '@emotion/react';
4
+ import styled from '@emotion/styled';
5
+ import { N200, N40, N50A, N60A } from '@atlaskit/theme/colors';
6
+ // eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports
7
+ import { gridSize, layers } from '@atlaskit/theme/constants';
8
+ export var AutocompleteContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: absolute;\n background-color: ", ";\n border-radius: ", ";\n will-change: top, left;\n visibility: ", ";\n z-index: ", ";\n box-shadow: ", ";\n padding: ", " 0;\n min-width: ", "px;\n max-width: ", "px;\n\n &:focus {\n outline: none;\n }\n"])), "var(--ds-surface-overlay, white)", "var(--ds-border-radius-100, 3px)", function (props) {
9
+ return props.isOpen ? 'visible' : 'hidden';
10
+ }, layers.dialog, "var(--ds-shadow-overlay, ".concat("0 4px 8px -2px ".concat(N50A, ", 0 0 1px ").concat(N60A), ")"), "var(--ds-space-075, 6px)", 25 * gridSize(), 50 * gridSize());
11
+ export var AutocompleteOptionsContainer = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n max-height: ", "px;\n overflow: auto;\n"])), 36 * gridSize());
12
+ export var OptionList = styled.ul(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n list-style: none;\n margin: 0;\n padding: 0;\n"])));
13
+ export var AutocompleteLoadingFooter = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n justify-content: center;\n color: ", ";\n font-style: italic;\n padding: ", ";\n text-align: center;\n ", ";\n"])), "var(--ds-text-subtlest, ".concat(N200, ")"), "var(--ds-space-150, 12px)", function (props) {
14
+ return props.hasOptions ? // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage
15
+ css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n border-top: solid 1px ", ";\n margin-top: ", ";\n /* 3/2 + 3/4 */\n padding-top: ", "px;\n "])), "var(--ds-border, ".concat(N40, ")"), "var(--ds-space-075, 6px)", 9 / 4 * gridSize()) : '';
16
+ });
@@ -0,0 +1,98 @@
1
+ import React from 'react';
2
+
3
+ // Custom icons not from Atlaskit
4
+
5
+ export var numberGlyph = function numberGlyph() {
6
+ return /*#__PURE__*/React.createElement("svg", {
7
+ viewBox: "0 0 24 24",
8
+ focusable: "false"
9
+ }, /*#__PURE__*/React.createElement("path", {
10
+ d: "M7 4h10a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3zm.417 10.636h1.15V9.141H7.42L6 10.12v1.07l1.348-.93h.069v4.376zm1.923-3.85v.02h1.067v-.024c0-.506.365-.857.898-.857.503 0 .861.313.861.755 0 .357-.194.643-.967 1.397l-1.794 1.756v.803h3.964v-.955h-2.406v-.069l1.05-1.002c.953-.895 1.277-1.409 1.277-2.007 0-.944-.8-1.603-1.947-1.603-1.188 0-2.003.724-2.003 1.786zm5.811 1.466h.682c.617 0 .994.297.994.777 0 .469-.4.792-.975.792-.59 0-.983-.293-1.017-.757h-1.1c.05 1.035.88 1.713 2.106 1.713 1.253 0 2.159-.697 2.159-1.66 0-.724-.472-1.226-1.226-1.31v-.069c.613-.125 1.013-.62 1.013-1.257 0-.864-.811-1.481-1.939-1.481-1.2 0-1.972.655-2.01 1.695H14.9c.03-.476.385-.777.918-.777.537 0 .88.282.88.723 0 .45-.355.754-.876.754h-.67v.857z",
11
+ fill: "currentColor",
12
+ fillRule: "evenodd"
13
+ }));
14
+ };
15
+
16
+ // Following same approach as SWIFT page in Jira Frontend:
17
+ // Most glyphs in the Atlaskit icon package are 20x20 on a 24px canvas, however there are several icons we use which do
18
+ // not match these dimensions. We've copied these icons and standardised them to fit within a 16x16 box on a 24px canvas
19
+ // to remain visually consistent. See jira-frontend/src/packages/project-settings/common/src/glyphs.js for more details.
20
+
21
+ export var checkboxGlyph = function checkboxGlyph() {
22
+ return /*#__PURE__*/React.createElement("svg", {
23
+ viewBox: "0 0 24 24",
24
+ focusable: "false"
25
+ }, /*#__PURE__*/React.createElement("path", {
26
+ d: "M4 5.994C4 4.893 4.895 4 5.994 4h12.012C19.107 4 20 4.895 20 5.994v12.012A1.995 1.995 0 0 1 18.006 20H5.994A1.995 1.995 0 0 1 4 18.006V5.994zm5.707 5.299a1 1 0 1 0-1.414 1.414l2 2a1 1 0 0 0 1.414 0l4-4a1 1 0 1 0-1.414-1.414L11 12.586l-1.293-1.293z",
27
+ fill: "currentColor",
28
+ fillRule: "evenodd"
29
+ }));
30
+ };
31
+ export var dateGlyph = function dateGlyph() {
32
+ return /*#__PURE__*/React.createElement("svg", {
33
+ viewBox: "0 0 24 24",
34
+ focusable: "false"
35
+ }, /*#__PURE__*/React.createElement("path", {
36
+ d: "M8.667 6.167V7A.834.834 0 0 1 7 7V5.333a.834.834 0 0 1 1.667 0v.834zm6.666 0v-.834a.834.834 0 0 1 1.667 0V7a.834.834 0 0 1-1.667 0v-.833zm2.5 0h.005c.918 0 1.662.745 1.662 1.661v10.01c0 .918-.743 1.662-1.662 1.662H6.161A1.663 1.663 0 0 1 4.5 17.838V7.828c0-.917.743-1.661 1.662-1.661h.005V7c0 .927.746 1.667 1.666 1.667C8.76 8.667 9.5 7.92 9.5 7v-.833h5V7c0 .927.746 1.667 1.667 1.667.927 0 1.666-.747 1.666-1.667v-.833zm-10 6.667H9.5v-1.667H7.833v1.667zm0 3.334H9.5V14.5H7.833v1.668zm3.334-3.334h1.666v-1.667h-1.666v1.667zm0 3.334h1.666V14.5h-1.666v1.668zm3.333-3.334h1.667v-1.667H14.5v1.667zm0 3.334h1.667V14.5H14.5v1.668z",
37
+ fill: "currentColor",
38
+ fillRule: "evenodd"
39
+ }));
40
+ };
41
+ export var dropdownGlyph = function dropdownGlyph() {
42
+ return /*#__PURE__*/React.createElement("svg", {
43
+ viewBox: "0 0 24 24",
44
+ focusable: "false"
45
+ }, /*#__PURE__*/React.createElement("path", {
46
+ d: "M12 19.5a7.5 7.5 0 1 1 0-15 7.5 7.5 0 0 1 0 15zm.65-5.268l2.44-2.463a.84.84 0 0 0 0-1.182.822.822 0 0 0-1.17 0l-1.916 1.93-1.922-1.939a.824.824 0 0 0-1.173 0 .842.842 0 0 0 0 1.183l2.45 2.47a.92.92 0 0 0 .649.269.9.9 0 0 0 .641-.268z",
47
+ fill: "currentColor"
48
+ }));
49
+ };
50
+ export var labelGlyph = function labelGlyph() {
51
+ return /*#__PURE__*/React.createElement("svg", {
52
+ viewBox: "0 0 24 24",
53
+ focusable: "false"
54
+ }, /*#__PURE__*/React.createElement("path", {
55
+ d: "M11.433 5.428l-4.207.6a2 2 0 0 0-1.697 1.698l-.601 4.207a1 1 0 0 0 .283.849l6.894 6.894a1 1 0 0 0 1.414 0l5.657-5.657a1 1 0 0 0 0-1.414L12.282 5.71a1 1 0 0 0-.849-.283zm-.647 5.858a1.667 1.667 0 1 1-2.357-2.357 1.667 1.667 0 0 1 2.357 2.357z",
56
+ fill: "currentColor",
57
+ fillRule: "evenodd"
58
+ }));
59
+ };
60
+ export var paragraphGlyph = function paragraphGlyph() {
61
+ return /*#__PURE__*/React.createElement("svg", {
62
+ viewBox: "0 0 24 24",
63
+ focusable: "false"
64
+ }, /*#__PURE__*/React.createElement("path", {
65
+ d: "M7 7h11a1 1 0 0 1 0 2H7a1 1 0 1 1 0-2zm0 4h11a1 1 0 0 1 0 2H7a1 1 0 0 1 0-2zm0 4h6a1 1 0 0 1 0 2H7a1 1 0 0 1 0-2z",
66
+ fill: "currentColor",
67
+ fillRule: "evenodd"
68
+ }));
69
+ };
70
+ export var peopleGlyph = function peopleGlyph() {
71
+ return /*#__PURE__*/React.createElement("svg", {
72
+ viewBox: "0 0 24 24",
73
+ focusable: "false"
74
+ }, /*#__PURE__*/React.createElement("path", {
75
+ d: "M12.12 20.249a8.398 8.398 0 0 1-.39-.003A8.25 8.25 0 0 1 3.75 12 8.25 8.25 0 0 1 12 3.75 8.25 8.25 0 0 1 20.25 12a8.25 8.25 0 0 1-8.13 8.25v-.001zm4.463-3.762A6.396 6.396 0 0 0 18.417 12 6.424 6.424 0 0 0 12 5.583 6.424 6.424 0 0 0 5.583 12c0 1.745.7 3.33 1.834 4.487v-1.27a2.291 2.291 0 0 1 2.292-2.292h4.582a2.292 2.292 0 0 1 2.292 2.291v1.27zM12 12a2.75 2.75 0 1 1 0-5.5 2.75 2.75 0 0 1 0 5.5z",
76
+ fill: "currentColor",
77
+ fillRule: "evenodd"
78
+ }));
79
+ };
80
+ export var shortTextGlyph = function shortTextGlyph() {
81
+ return /*#__PURE__*/React.createElement("svg", {
82
+ viewBox: "0 0 24 24",
83
+ focusable: "false"
84
+ }, /*#__PURE__*/React.createElement("path", {
85
+ d: "M6.72 7.178l-2.93 8.627a.5.5 0 0 0 .473.661h.842a.75.75 0 0 0 .716-.53l.581-1.887h3.425l.58 1.887a.75.75 0 0 0 .717.53h.916a.5.5 0 0 0 .473-.66L9.578 7.177a1 1 0 0 0-.946-.678h-.966a1 1 0 0 0-.947.678zm1.37 1.228h.047l1.25 4.082H6.841l1.25-4.082zm10.187 1.872v-.23a.986.986 0 1 1 1.972 0v5.433a.986.986 0 0 1-1.972 0v-.217h-.08c-.36.802-1.13 1.32-2.217 1.32-1.81 0-2.952-1.479-2.952-3.834 0-2.334 1.149-3.805 2.952-3.805 1.075 0 1.858.546 2.216 1.333h.08zm-.04 2.486c0-1.347-.63-2.203-1.61-2.203-.978 0-1.58.843-1.58 2.203 0 1.368.602 2.196 1.58 2.196.988 0 1.61-.836 1.61-2.196z",
86
+ fill: "currentColor"
87
+ }));
88
+ };
89
+ export var timeStampGlyph = function timeStampGlyph() {
90
+ return /*#__PURE__*/React.createElement("svg", {
91
+ viewBox: "0 0 24 24",
92
+ focusable: "false"
93
+ }, /*#__PURE__*/React.createElement("path", {
94
+ d: "M12 20a8 8 0 1 1 0-16 8 8 0 0 1 0 16zm.787-7.674V8.944c0-.52-.402-.944-.893-.944-.492 0-.894.425-.894.944v3.777c0 .263.104.5.269.672l2.207 2.332a.862.862 0 0 0 1.263 0 .985.985 0 0 0 0-1.336l-1.952-2.063z",
95
+ fill: "currentColor",
96
+ fillRule: "evenodd"
97
+ }));
98
+ };
@@ -0,0 +1,165 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+ import React, { forwardRef, useCallback, useMemo, useState } from 'react';
5
+ import deburr from 'lodash/deburr';
6
+ import noop from 'lodash/noop';
7
+ import Icon from '@atlaskit/icon';
8
+ import InfoIcon from '@atlaskit/icon/glyph/editor/panel';
9
+ import { normaliseJqlString } from '@atlaskit/jql-ast';
10
+ import { N400 } from '@atlaskit/theme/colors';
11
+ import Tooltip from '@atlaskit/tooltip';
12
+ import { useIntl } from '../../../../state';
13
+ import { checkboxGlyph, dateGlyph, dropdownGlyph, labelGlyph, numberGlyph, paragraphGlyph, peopleGlyph, shortTextGlyph, timeStampGlyph } from './glyphs';
14
+ import { messages } from './messages';
15
+ import { DeprecatedOptionContainer, FieldType, FieldTypeIcon, OptionHighlight, OptionListItem, OptionName, TooltipContent } from './styled';
16
+ var ResizedIcon = function ResizedIcon(_ref) {
17
+ var glyph = _ref.glyph;
18
+ return /*#__PURE__*/React.createElement(Icon, {
19
+ glyph: glyph,
20
+ size: "small",
21
+ label: "",
22
+ testId: "jql-editor-field-type-icon"
23
+ });
24
+ };
25
+
26
+ /**
27
+ * List of types with supported icons is derived from GIN
28
+ * Custom SVGs are provisional while we work on making field type icons consistent across Atlassian
29
+ */
30
+ var getFieldTypeIcon = function getFieldTypeIcon(type) {
31
+ switch (type) {
32
+ case 'Checkboxes':
33
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
34
+ glyph: checkboxGlyph
35
+ });
36
+ case 'Date':
37
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
38
+ glyph: dateGlyph
39
+ });
40
+ case 'Dropdown':
41
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
42
+ glyph: dropdownGlyph
43
+ });
44
+ case 'Labels':
45
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
46
+ glyph: labelGlyph
47
+ });
48
+ case 'Number':
49
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
50
+ glyph: numberGlyph
51
+ });
52
+ case 'Paragraph':
53
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
54
+ glyph: paragraphGlyph
55
+ });
56
+ case 'People':
57
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
58
+ glyph: peopleGlyph
59
+ });
60
+ case 'Short text':
61
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
62
+ glyph: shortTextGlyph
63
+ });
64
+ case 'Time stamp':
65
+ return /*#__PURE__*/React.createElement(ResizedIcon, {
66
+ glyph: timeStampGlyph
67
+ });
68
+ default:
69
+ return null;
70
+ }
71
+ };
72
+ var getHighlightPosition = function getHighlightPosition(name, matchedText) {
73
+ var normalizedName = deburr(name).toLowerCase();
74
+ var normalizedMatchedText = deburr(normaliseJqlString(matchedText)).toLowerCase();
75
+ var index = normalizedName.indexOf(normalizedMatchedText);
76
+ if (index === -1) {
77
+ return null;
78
+ }
79
+ return [index, index + normalizedMatchedText.length];
80
+ };
81
+ var getDeprecatedTooltipMessage = function getDeprecatedTooltipMessage(deprecatedSearcherKey) {
82
+ switch (deprecatedSearcherKey) {
83
+ case 'com.pyxis.greenhopper.jira:gh-epic-link-searcher':
84
+ case 'com.atlassian.jpo:jpo-custom-field-parent-searcher':
85
+ return messages.deprecatedFieldTooltipParentReplacementMessage;
86
+ default:
87
+ return messages.deprecatedFieldTooltipDefaultMessage;
88
+ }
89
+ };
90
+ var AutocompleteOption = /*#__PURE__*/forwardRef(function (props, ref) {
91
+ var _props$option = props.option,
92
+ id = _props$option.id,
93
+ name = _props$option.name,
94
+ fieldType = _props$option.fieldType,
95
+ matchedText = _props$option.matchedText,
96
+ _props$option$isDepre = _props$option.isDeprecated,
97
+ isDeprecated = _props$option$isDepre === void 0 ? false : _props$option$isDepre,
98
+ deprecatedSearcherKey = _props$option.deprecatedSearcherKey,
99
+ isSelected = props.isSelected,
100
+ onClick = props.onClick,
101
+ onMouseMove = props.onMouseMove;
102
+ var _useState = useState(false),
103
+ _useState2 = _slicedToArray(_useState, 2),
104
+ overflows = _useState2[0],
105
+ setOverflows = _useState2[1];
106
+ var _useIntl = useIntl(),
107
+ _useIntl2 = _slicedToArray(_useIntl, 1),
108
+ formatMessage = _useIntl2[0].formatMessage;
109
+ var onNameRef = useCallback(function (node) {
110
+ // This ref will be re-invoked after a tooltip is rendered, so we avoid recomputing the overflow in that instance
111
+ // so we don't risk infinite re-renders (which we've observed through production logs).
112
+ if (node != null && !overflows) {
113
+ setOverflows(node.offsetWidth < node.scrollWidth);
114
+ }
115
+ }, [overflows]);
116
+
117
+ // TODO: verify type is i18n'd after integrating with GraphQL API
118
+
119
+ var fieldTypeIcon = fieldType ? getFieldTypeIcon(fieldType) : null;
120
+ var optionName = useMemo(function () {
121
+ var highlightPosition = getHighlightPosition(name, matchedText);
122
+ return highlightPosition ? /*#__PURE__*/React.createElement(OptionName, {
123
+ ref: onNameRef,
124
+ "aria-label": name
125
+ }, name.substring(0, highlightPosition[0]), /*#__PURE__*/React.createElement(OptionHighlight, null, name.substring.apply(name, _toConsumableArray(highlightPosition))), name.substring(highlightPosition[1])) : /*#__PURE__*/React.createElement(OptionName, {
126
+ ref: onNameRef
127
+ }, name);
128
+ }, [onNameRef, name, matchedText]);
129
+ var deprecatedTooltipContent = /*#__PURE__*/React.createElement(TooltipContent, null, formatMessage(getDeprecatedTooltipMessage(deprecatedSearcherKey), {
130
+ b: function b(text) {
131
+ return /*#__PURE__*/React.createElement("b", null, text);
132
+ },
133
+ received: name,
134
+ parentReplacement: 'Parent'
135
+ }));
136
+ var ListItem = /*#__PURE__*/React.createElement(OptionListItem, _extends({
137
+ id: id,
138
+ "data-testid": "jql-editor-autocomplete-option",
139
+ role: "option",
140
+ isSelected: isSelected,
141
+ isDeprecated: isDeprecated,
142
+ onClick: isDeprecated ? noop : onClick,
143
+ onMouseMove: isDeprecated ? noop : onMouseMove
144
+ }, ref && {
145
+ ref: ref
146
+ }, {
147
+ "aria-selected": isSelected
148
+ }), isDeprecated ? /*#__PURE__*/React.createElement(DeprecatedOptionContainer, null, optionName, /*#__PURE__*/React.createElement(Tooltip, {
149
+ content: deprecatedTooltipContent,
150
+ position: 'right'
151
+ }, /*#__PURE__*/React.createElement(InfoIcon, {
152
+ testId: "jql-editor-deprecated-icon",
153
+ label: "",
154
+ primaryColor: "var(--ds-icon, ".concat(N400, ")")
155
+ }))) : optionName, fieldType && /*#__PURE__*/React.createElement(FieldType, null, fieldTypeIcon && /*#__PURE__*/React.createElement(FieldTypeIcon, null, fieldTypeIcon), fieldType));
156
+ var tooltipContent = /*#__PURE__*/React.createElement(TooltipContent, null, name);
157
+ if (overflows) {
158
+ return /*#__PURE__*/React.createElement(Tooltip, {
159
+ content: tooltipContent,
160
+ position: 'right'
161
+ }, ListItem);
162
+ }
163
+ return ListItem;
164
+ });
165
+ export default AutocompleteOption;
@@ -0,0 +1,13 @@
1
+ import { defineMessages } from 'react-intl-next';
2
+ export var messages = defineMessages({
3
+ deprecatedFieldTooltipDefaultMessage: {
4
+ id: 'jql-editor.plugins.autocomplete.autocomplete-option.deprecated-tooltip.default',
5
+ defaultMessage: 'This field has been deprecated and may stop working in the future.',
6
+ description: 'Default tooltip message for a deprecated field.'
7
+ },
8
+ deprecatedFieldTooltipParentReplacementMessage: {
9
+ id: 'jql-editor.plugins.autocomplete.autocomplete-option.deprecated-tooltip.epic-link',
10
+ defaultMessage: "<b>''{received}''</b> will soon be replaced with <b>''{parentReplacement}''</b>. Use the <b>''{parentReplacement}''</b> field instead.",
11
+ description: 'Tooltip message served to user when there is a deprecated field'
12
+ }
13
+ });
@@ -0,0 +1,21 @@
1
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
2
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
3
+ import { css } from '@emotion/react';
4
+ import styled from '@emotion/styled';
5
+ import { N100, N20, N50, N800 } from '@atlaskit/theme/colors';
6
+ import { codeFontFamily, fontFamily,
7
+ // eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports
8
+ gridSize } from '@atlaskit/theme/constants';
9
+ export var TooltipContent = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n font-family: ", ";\n"])), fontFamily);
10
+
11
+ // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage
12
+ export var OptionListItem = styled.li(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n cursor: pointer;\n padding: ", " ", "px;\n font-family: ", ";\n line-height: 24px;\n ", "\n ", "\n"])), "var(--ds-space-075, 6px)", 5 / 4 * gridSize(), codeFontFamily, function (props) {
13
+ return props.isSelected ? css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n background: ", ";\n "])), "var(--ds-background-neutral-subtle-hovered, ".concat(N20, ")")) : '';
14
+ }, function (props) {
15
+ return props.isDeprecated ? css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n cursor: default;\n color: ", ";\n "])), "var(--ds-text-disabled, ".concat(N50, ")")) : '';
16
+ });
17
+ export var OptionName = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n color: ", ";\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n // Added so that overflowed option names do not squish the deprecated info icon\n flex: 1;\n"])), "var(--ds-text, ".concat(N800, ")"));
18
+ export var DeprecatedOptionContainer = styled.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n color: ", ";\n display: flex;\n justify-content: space-between;\n opacity: 0.6;\n"])), "var(--ds-text-disabled, ".concat(N50, ")"));
19
+ export var OptionHighlight = styled.span(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n font-weight: bold;\n"])));
20
+ export var FieldType = styled.div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n margin-top: ", ";\n color: ", ";\n"])), "var(--ds-space-negative-025, -2px)", "var(--ds-text-subtlest, ".concat(N100, ")"));
21
+ export var FieldTypeIcon = styled.span(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n display: flex;\n margin-right: ", ";\n"])), "var(--ds-space-050, 4px)");
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,29 @@
1
+ import { empty } from 'rxjs/observable/empty';
2
+ import { PluginKey } from '@atlaskit/editor-prosemirror/state';
3
+ export var AUTOCOMPLETE_PLUGIN_NAME = 'jql-autocomplete-plugin';
4
+ export var ARROW_UP_KEY = 'ArrowUp';
5
+ export var ARROW_DOWN_KEY = 'ArrowDown';
6
+ export var CMD_ARROW_UP_KEY = 'Cmd-ArrowUp';
7
+ export var CMD_ARROW_DOWN_KEY = 'Cmd-ArrowDown';
8
+ export var HOME_KEY = 'Home'; // === Fn-Left in Mac
9
+ export var END_KEY = 'End'; // === Fn-Right in Mac
10
+ export var ENTER_KEY = 'Enter';
11
+ export var ESCAPE_KEY = 'Escape';
12
+ export var TAB_KEY = 'Tab';
13
+
14
+ // No-op autocomplete provider used when creating the initial state
15
+ export var defaultAutocompleteProvider = {
16
+ onFields: function onFields() {
17
+ return empty();
18
+ },
19
+ onOperators: function onOperators() {
20
+ return empty();
21
+ },
22
+ onValues: function onValues() {
23
+ return empty();
24
+ },
25
+ onFunctions: function onFunctions() {
26
+ return empty();
27
+ }
28
+ };
29
+ export var JQLAutocompletePluginKey = new PluginKey(AUTOCOMPLETE_PLUGIN_NAME);
@@ -0,0 +1,30 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import { keydownHandler } from '@atlaskit/editor-prosemirror/keymap';
3
+ import { Plugin } from '@atlaskit/editor-prosemirror/state';
4
+ import { PluginKeymap } from '../common/plugin-keymap';
5
+ import { ARROW_DOWN_KEY, ARROW_UP_KEY, CMD_ARROW_DOWN_KEY, CMD_ARROW_UP_KEY, END_KEY, ENTER_KEY, ESCAPE_KEY, HOME_KEY, JQLAutocompletePluginKey, TAB_KEY } from './constants';
6
+ import AutocompletePluginView from './view';
7
+ var getKeyHandler = function getKeyHandler(keymap, key) {
8
+ return function (state, dispatch, view) {
9
+ var binding = keymap.getKeyBinding(key);
10
+ return binding ? binding(state, dispatch, view) : false;
11
+ };
12
+ };
13
+ var autocompletePlugin = function autocompletePlugin(portalActions, enableRichInlineNodes) {
14
+ var _keydownHandler;
15
+ // Empty keymap passed down to the React component so it can register key bindings
16
+ var keymap = new PluginKeymap();
17
+ return new Plugin({
18
+ key: JQLAutocompletePluginKey,
19
+ view: function view(editorView) {
20
+ var view = new AutocompletePluginView(editorView, keymap, portalActions, enableRichInlineNodes);
21
+ // Initialise view to mount the react component
22
+ view.init();
23
+ return view;
24
+ },
25
+ props: {
26
+ handleKeyDown: keydownHandler((_keydownHandler = {}, _defineProperty(_keydownHandler, ARROW_UP_KEY, getKeyHandler(keymap, ARROW_UP_KEY)), _defineProperty(_keydownHandler, ARROW_DOWN_KEY, getKeyHandler(keymap, ARROW_DOWN_KEY)), _defineProperty(_keydownHandler, CMD_ARROW_UP_KEY, getKeyHandler(keymap, CMD_ARROW_UP_KEY)), _defineProperty(_keydownHandler, CMD_ARROW_DOWN_KEY, getKeyHandler(keymap, CMD_ARROW_DOWN_KEY)), _defineProperty(_keydownHandler, HOME_KEY, getKeyHandler(keymap, HOME_KEY)), _defineProperty(_keydownHandler, END_KEY, getKeyHandler(keymap, END_KEY)), _defineProperty(_keydownHandler, ESCAPE_KEY, getKeyHandler(keymap, ESCAPE_KEY)), _defineProperty(_keydownHandler, ENTER_KEY, getKeyHandler(keymap, ENTER_KEY)), _defineProperty(_keydownHandler, TAB_KEY, getKeyHandler(keymap, TAB_KEY)), _keydownHandler))
27
+ }
28
+ });
29
+ };
30
+ export default autocompletePlugin;
@@ -0,0 +1,8 @@
1
+ import { defineMessages } from 'react-intl-next';
2
+ export var messages = defineMessages({
3
+ optionsFound: {
4
+ id: 'jql-editor.plugins.autocomplete.options-found',
5
+ defaultMessage: 'Choose from the suggested list of options below.',
6
+ description: 'This message is read by screen readers when autocomplete suggestions are available in the JQL editor.'
7
+ }
8
+ });