@payloadcms/richtext-lexical 0.6.1 → 3.0.0-alpha.18

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 (931) hide show
  1. package/README.md +1 -3
  2. package/components.d.ts +1 -1
  3. package/components.js +5 -5
  4. package/dist/cell/index.d.ts +4 -4
  5. package/dist/cell/index.d.ts.map +1 -1
  6. package/dist/cell/index.js +96 -24
  7. package/dist/exports/components.d.ts +1 -1
  8. package/dist/exports/components.d.ts.map +1 -1
  9. package/dist/exports/components.js +5 -5
  10. package/dist/field/Field.d.ts +8 -3
  11. package/dist/field/Field.d.ts.map +1 -1
  12. package/dist/field/Field.js +19 -38
  13. package/dist/field/features/align/feature.client.d.ts +3 -0
  14. package/dist/field/features/align/feature.client.d.ts.map +1 -0
  15. package/dist/field/features/align/feature.client.js +81 -0
  16. package/dist/field/features/align/feature.server.d.ts +3 -0
  17. package/dist/field/features/align/feature.server.d.ts.map +1 -0
  18. package/dist/field/features/align/feature.server.js +26 -0
  19. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.d.ts.map +1 -1
  20. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.js +5 -44
  21. package/dist/field/features/blockquote/feature.client.d.ts +3 -0
  22. package/dist/field/features/blockquote/feature.client.d.ts.map +1 -0
  23. package/dist/field/features/blockquote/feature.client.js +77 -0
  24. package/dist/field/features/blockquote/feature.server.d.ts +3 -0
  25. package/dist/field/features/blockquote/feature.server.d.ts.map +1 -0
  26. package/dist/field/features/blockquote/feature.server.js +56 -0
  27. package/dist/field/features/blockquote/markdownTransformer.d.ts.map +1 -0
  28. package/dist/field/features/blockquote/markdownTransformer.js +50 -0
  29. package/dist/field/features/blocks/component/BlockContent.d.ts +25 -0
  30. package/dist/field/features/blocks/component/BlockContent.d.ts.map +1 -0
  31. package/dist/field/features/blocks/component/BlockContent.js +214 -0
  32. package/dist/field/features/blocks/component/FormSavePlugin.d.ts +12 -0
  33. package/dist/field/features/blocks/component/FormSavePlugin.d.ts.map +1 -0
  34. package/dist/field/features/blocks/component/FormSavePlugin.js +34 -0
  35. package/dist/field/features/blocks/component/index.d.ts +16 -0
  36. package/dist/field/features/blocks/component/index.d.ts.map +1 -0
  37. package/dist/field/features/blocks/component/index.js +172 -0
  38. package/dist/field/features/blocks/component/index.scss +153 -0
  39. package/dist/field/features/blocks/drawer/index.d.ts.map +1 -0
  40. package/dist/field/features/blocks/drawer/index.js +137 -0
  41. package/dist/field/features/blocks/feature.client.d.ts +7 -0
  42. package/dist/field/features/blocks/feature.client.d.ts.map +1 -0
  43. package/dist/field/features/blocks/feature.client.js +71 -0
  44. package/dist/field/features/blocks/feature.server.d.ts +8 -0
  45. package/dist/field/features/blocks/feature.server.d.ts.map +1 -0
  46. package/dist/field/features/blocks/feature.server.js +96 -0
  47. package/dist/field/features/blocks/nodes/BlocksNode.d.ts.map +1 -0
  48. package/dist/field/features/blocks/nodes/BlocksNode.js +158 -0
  49. package/dist/field/features/blocks/plugin/commands.d.ts.map +1 -0
  50. package/dist/field/features/blocks/plugin/commands.js +14 -0
  51. package/dist/field/features/blocks/plugin/index.d.ts +5 -0
  52. package/dist/field/features/blocks/plugin/index.d.ts.map +1 -0
  53. package/dist/field/features/blocks/plugin/index.js +91 -0
  54. package/dist/field/features/blocks/populationPromise.d.ts +5 -0
  55. package/dist/field/features/blocks/populationPromise.d.ts.map +1 -0
  56. package/dist/field/features/blocks/populationPromise.js +55 -0
  57. package/dist/field/features/blocks/validate.d.ts +5 -0
  58. package/dist/field/features/blocks/validate.d.ts.map +1 -0
  59. package/dist/field/features/blocks/validate.js +59 -0
  60. package/dist/field/features/common/floatingSelectToolbarFeaturesButtonsSection/index.js +3 -3
  61. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.d.ts.map +1 -1
  62. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.js +5 -44
  63. package/dist/field/features/converters/html/converter/converters/paragraph.d.ts.map +1 -1
  64. package/dist/field/features/converters/html/converter/converters/paragraph.js +4 -3
  65. package/dist/field/features/converters/html/converter/index.d.ts +11 -2
  66. package/dist/field/features/converters/html/converter/index.d.ts.map +1 -1
  67. package/dist/field/features/converters/html/converter/index.js +12 -9
  68. package/dist/field/features/converters/html/converter/types.d.ts +6 -1
  69. package/dist/field/features/converters/html/converter/types.d.ts.map +1 -1
  70. package/dist/field/features/converters/html/feature.server.d.ts +9 -0
  71. package/dist/field/features/converters/html/feature.server.d.ts.map +1 -0
  72. package/dist/field/features/converters/html/feature.server.js +24 -0
  73. package/dist/field/features/converters/html/field/index.d.ts +2 -2
  74. package/dist/field/features/converters/html/field/index.d.ts.map +1 -1
  75. package/dist/field/features/converters/html/field/index.js +10 -9
  76. package/dist/field/features/createClientComponent.d.ts +7 -0
  77. package/dist/field/features/createClientComponent.d.ts.map +1 -0
  78. package/dist/field/features/createClientComponent.js +20 -0
  79. package/dist/field/features/createFeaturePropComponent.d.ts +6 -0
  80. package/dist/field/features/createFeaturePropComponent.d.ts.map +1 -0
  81. package/dist/field/features/createFeaturePropComponent.js +24 -0
  82. package/dist/field/features/debug/testrecorder/feature.client.d.ts +3 -0
  83. package/dist/field/features/debug/testrecorder/feature.client.d.ts.map +1 -0
  84. package/dist/field/features/debug/testrecorder/feature.client.js +30 -0
  85. package/dist/field/features/debug/testrecorder/feature.server.d.ts +3 -0
  86. package/dist/field/features/debug/testrecorder/feature.server.d.ts.map +1 -0
  87. package/dist/field/features/debug/testrecorder/feature.server.js +25 -0
  88. package/dist/field/features/debug/testrecorder/plugin/index.d.ts.map +1 -0
  89. package/dist/field/features/debug/testrecorder/plugin/index.js +504 -0
  90. package/dist/field/features/debug/testrecorder/plugin/index.scss +49 -0
  91. package/dist/field/features/debug/treeview/feature.client.d.ts +3 -0
  92. package/dist/field/features/debug/treeview/feature.client.d.ts.map +1 -0
  93. package/dist/field/features/debug/treeview/feature.client.js +30 -0
  94. package/dist/field/features/debug/treeview/feature.server.d.ts +3 -0
  95. package/dist/field/features/debug/treeview/feature.server.d.ts.map +1 -0
  96. package/dist/field/features/debug/treeview/feature.server.js +25 -0
  97. package/dist/field/features/debug/treeview/plugin/index.d.ts +4 -0
  98. package/dist/field/features/debug/treeview/plugin/index.d.ts.map +1 -0
  99. package/dist/field/features/debug/treeview/plugin/index.js +70 -0
  100. package/dist/field/features/format/bold/feature.client.d.ts +3 -0
  101. package/dist/field/features/format/bold/feature.client.d.ts.map +1 -0
  102. package/dist/field/features/format/bold/feature.client.js +57 -0
  103. package/dist/field/features/format/bold/feature.server.d.ts +3 -0
  104. package/dist/field/features/format/bold/feature.server.d.ts.map +1 -0
  105. package/dist/field/features/format/bold/feature.server.js +37 -0
  106. package/dist/field/features/format/bold/markdownTransformers.d.ts.map +1 -0
  107. package/dist/field/features/format/bold/markdownTransformers.js +58 -0
  108. package/dist/field/features/format/common/floatingSelectToolbarSection.js +3 -3
  109. package/dist/field/features/format/inlinecode/feature.client.d.ts +3 -0
  110. package/dist/field/features/format/inlinecode/feature.client.d.ts.map +1 -0
  111. package/dist/field/features/format/inlinecode/feature.client.js +52 -0
  112. package/dist/field/features/format/inlinecode/feature.server.d.ts +3 -0
  113. package/dist/field/features/format/inlinecode/feature.server.d.ts.map +1 -0
  114. package/dist/field/features/format/inlinecode/feature.server.js +29 -0
  115. package/dist/field/features/format/inlinecode/markdownTransformers.d.ts.map +1 -0
  116. package/dist/field/features/format/inlinecode/markdownTransformers.js +19 -0
  117. package/dist/field/features/format/italic/feature.client.d.ts +3 -0
  118. package/dist/field/features/format/italic/feature.client.d.ts.map +1 -0
  119. package/dist/field/features/format/italic/feature.client.js +53 -0
  120. package/dist/field/features/format/italic/feature.server.d.ts +3 -0
  121. package/dist/field/features/format/italic/feature.server.d.ts.map +1 -0
  122. package/dist/field/features/format/italic/feature.server.js +30 -0
  123. package/dist/field/features/format/italic/markdownTransformers.d.ts.map +1 -0
  124. package/dist/field/features/format/italic/markdownTransformers.js +35 -0
  125. package/dist/field/features/format/strikethrough/feature.client.d.ts +3 -0
  126. package/dist/field/features/format/strikethrough/feature.client.d.ts.map +1 -0
  127. package/dist/field/features/format/strikethrough/feature.client.js +52 -0
  128. package/dist/field/features/format/strikethrough/feature.server.d.ts +3 -0
  129. package/dist/field/features/format/strikethrough/feature.server.d.ts.map +1 -0
  130. package/dist/field/features/format/strikethrough/feature.server.js +29 -0
  131. package/dist/field/features/format/strikethrough/markdownTransformers.js +3 -3
  132. package/dist/field/features/format/subscript/feature.client.d.ts +3 -0
  133. package/dist/field/features/format/subscript/feature.client.d.ts.map +1 -0
  134. package/dist/field/features/format/subscript/feature.client.js +48 -0
  135. package/dist/field/features/format/subscript/feature.server.d.ts +3 -0
  136. package/dist/field/features/format/subscript/feature.server.d.ts.map +1 -0
  137. package/dist/field/features/format/subscript/feature.server.js +25 -0
  138. package/dist/field/features/format/superscript/feature.client.d.ts +3 -0
  139. package/dist/field/features/format/superscript/feature.client.d.ts.map +1 -0
  140. package/dist/field/features/format/superscript/feature.client.js +48 -0
  141. package/dist/field/features/format/superscript/feature.server.d.ts +3 -0
  142. package/dist/field/features/format/superscript/feature.server.d.ts.map +1 -0
  143. package/dist/field/features/format/superscript/feature.server.js +25 -0
  144. package/dist/field/features/format/underline/feature.client.d.ts +3 -0
  145. package/dist/field/features/format/underline/feature.client.d.ts.map +1 -0
  146. package/dist/field/features/format/underline/feature.client.js +48 -0
  147. package/dist/field/features/format/underline/feature.server.d.ts +3 -0
  148. package/dist/field/features/format/underline/feature.server.d.ts.map +1 -0
  149. package/dist/field/features/format/underline/feature.server.js +25 -0
  150. package/dist/field/features/heading/feature.client.d.ts +4 -0
  151. package/dist/field/features/heading/feature.client.d.ts.map +1 -0
  152. package/dist/field/features/heading/feature.client.js +104 -0
  153. package/dist/field/features/heading/feature.server.d.ts +7 -0
  154. package/dist/field/features/heading/feature.server.d.ts.map +1 -0
  155. package/dist/field/features/heading/feature.server.js +67 -0
  156. package/dist/field/features/heading/markdownTransformer.d.ts.map +1 -0
  157. package/dist/field/features/heading/markdownTransformer.js +39 -0
  158. package/dist/field/features/indent/feature.client.d.ts +3 -0
  159. package/dist/field/features/indent/feature.client.d.ts.map +1 -0
  160. package/dist/field/features/indent/feature.client.js +67 -0
  161. package/dist/field/features/indent/feature.server.d.ts +3 -0
  162. package/dist/field/features/indent/feature.server.d.ts.map +1 -0
  163. package/dist/field/features/indent/feature.server.js +26 -0
  164. package/dist/field/features/indent/floatingSelectToolbarIndentSection.js +3 -3
  165. package/dist/field/features/link/drawer/baseFields.d.ts.map +1 -0
  166. package/dist/field/features/link/drawer/baseFields.js +128 -0
  167. package/dist/field/features/link/drawer/index.d.ts.map +1 -0
  168. package/dist/field/features/link/drawer/index.js +133 -0
  169. package/dist/field/features/link/drawer/index.scss +50 -0
  170. package/dist/field/features/link/drawer/types.d.ts +8 -0
  171. package/dist/field/features/link/drawer/types.d.ts.map +1 -0
  172. package/dist/field/features/link/feature.client.d.ts +5 -0
  173. package/dist/field/features/link/feature.client.d.ts.map +1 -0
  174. package/dist/field/features/link/feature.client.js +98 -0
  175. package/dist/field/features/link/feature.server.d.ts +33 -0
  176. package/dist/field/features/link/feature.server.d.ts.map +1 -0
  177. package/dist/field/features/link/feature.server.js +108 -0
  178. package/dist/field/features/link/nodes/AutoLinkNode.d.ts +16 -0
  179. package/dist/field/features/link/nodes/AutoLinkNode.d.ts.map +1 -0
  180. package/dist/field/features/link/nodes/AutoLinkNode.js +79 -0
  181. package/dist/field/features/link/nodes/LinkNode.d.ts +35 -0
  182. package/dist/field/features/link/nodes/LinkNode.d.ts.map +1 -0
  183. package/dist/field/features/link/nodes/LinkNode.js +326 -0
  184. package/dist/field/features/link/nodes/types.d.ts +19 -0
  185. package/dist/field/features/link/nodes/types.d.ts.map +1 -0
  186. package/dist/field/features/link/plugins/autoLink/index.d.ts +19 -0
  187. package/dist/field/features/link/plugins/autoLink/index.d.ts.map +1 -0
  188. package/dist/field/features/link/plugins/autoLink/index.js +336 -0
  189. package/dist/field/features/link/plugins/clickableLink/index.d.ts.map +1 -0
  190. package/dist/field/features/link/plugins/clickableLink/index.js +23 -0
  191. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/commands.d.ts.map +1 -0
  192. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/commands.js +14 -0
  193. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/index.d.ts +5 -0
  194. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -0
  195. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/index.js +293 -0
  196. package/dist/field/features/link/plugins/floatingLinkEditor/index.d.ts +6 -0
  197. package/dist/field/features/link/plugins/floatingLinkEditor/index.d.ts.map +1 -0
  198. package/dist/field/features/link/plugins/floatingLinkEditor/index.js +64 -0
  199. package/dist/field/features/link/plugins/floatingLinkEditor/index.scss +78 -0
  200. package/dist/field/features/link/plugins/floatingLinkEditor/types.d.ts +13 -0
  201. package/dist/field/features/link/plugins/floatingLinkEditor/types.d.ts.map +1 -0
  202. package/dist/field/features/link/plugins/floatingLinkEditor/utilities.d.ts +12 -0
  203. package/dist/field/features/link/plugins/floatingLinkEditor/utilities.d.ts.map +1 -0
  204. package/dist/field/features/link/plugins/floatingLinkEditor/utilities.js +45 -0
  205. package/dist/field/features/link/plugins/link/index.d.ts.map +1 -0
  206. package/dist/field/features/link/plugins/link/index.js +69 -0
  207. package/dist/field/features/link/populationPromise.d.ts +5 -0
  208. package/dist/field/features/link/populationPromise.d.ts.map +1 -0
  209. package/dist/field/features/link/populationPromise.js +56 -0
  210. package/dist/field/features/lists/checklist/feature.client.d.ts +3 -0
  211. package/dist/field/features/lists/checklist/feature.client.d.ts.map +1 -0
  212. package/dist/field/features/lists/checklist/feature.client.js +91 -0
  213. package/dist/field/features/lists/checklist/feature.server.d.ts +3 -0
  214. package/dist/field/features/lists/checklist/feature.server.d.ts.map +1 -0
  215. package/dist/field/features/lists/checklist/feature.server.js +45 -0
  216. package/dist/field/features/lists/checklist/markdownTransformers.d.ts.map +1 -0
  217. package/dist/field/features/lists/checklist/markdownTransformers.js +26 -0
  218. package/dist/field/features/lists/checklist/plugin/index.d.ts.map +1 -0
  219. package/dist/field/features/lists/checklist/plugin/index.js +23 -0
  220. package/dist/field/features/lists/common/markdown.js +4 -4
  221. package/dist/field/features/lists/htmlConverter.d.ts.map +1 -1
  222. package/dist/field/features/lists/htmlConverter.js +7 -5
  223. package/dist/field/features/lists/orderedlist/feature.client.d.ts +3 -0
  224. package/dist/field/features/lists/orderedlist/feature.client.d.ts.map +1 -0
  225. package/dist/field/features/lists/orderedlist/feature.client.js +81 -0
  226. package/dist/field/features/lists/orderedlist/feature.server.d.ts +3 -0
  227. package/dist/field/features/lists/orderedlist/feature.server.d.ts.map +1 -0
  228. package/dist/field/features/lists/orderedlist/feature.server.js +45 -0
  229. package/dist/field/features/lists/orderedlist/markdownTransformer.d.ts.map +1 -0
  230. package/dist/field/features/lists/orderedlist/markdownTransformer.js +26 -0
  231. package/dist/field/features/lists/unorderedlist/feature.client.d.ts +3 -0
  232. package/dist/field/features/lists/unorderedlist/feature.client.d.ts.map +1 -0
  233. package/dist/field/features/lists/unorderedlist/feature.client.js +81 -0
  234. package/dist/field/features/lists/unorderedlist/feature.server.d.ts +3 -0
  235. package/dist/field/features/lists/unorderedlist/feature.server.d.ts.map +1 -0
  236. package/dist/field/features/lists/unorderedlist/feature.server.js +45 -0
  237. package/dist/field/features/lists/unorderedlist/markdownTransformer.d.ts.map +1 -0
  238. package/dist/field/features/lists/unorderedlist/markdownTransformer.js +26 -0
  239. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/client.d.ts +6 -0
  240. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/client.d.ts.map +1 -0
  241. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/client.js +16 -0
  242. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.d.ts +3 -0
  243. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.d.ts.map +1 -0
  244. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js +30 -0
  245. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/index.d.ts +3 -0
  246. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/index.d.ts.map +1 -0
  247. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/index.js +18 -0
  248. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/client.d.ts +6 -0
  249. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/client.d.ts.map +1 -0
  250. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/client.js +16 -0
  251. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.d.ts +3 -0
  252. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.d.ts.map +1 -0
  253. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js +41 -0
  254. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/index.d.ts +3 -0
  255. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/index.d.ts.map +1 -0
  256. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/index.js +18 -0
  257. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/client.d.ts +6 -0
  258. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/client.d.ts.map +1 -0
  259. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/client.js +16 -0
  260. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.d.ts +3 -0
  261. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.d.ts.map +1 -0
  262. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js +32 -0
  263. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/index.d.ts +3 -0
  264. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/index.d.ts.map +1 -0
  265. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/index.js +18 -0
  266. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/client.d.ts +6 -0
  267. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/client.d.ts.map +1 -0
  268. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/client.js +16 -0
  269. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.d.ts +3 -0
  270. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.d.ts.map +1 -0
  271. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js +32 -0
  272. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/index.d.ts +3 -0
  273. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/index.d.ts.map +1 -0
  274. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/index.js +18 -0
  275. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/client.d.ts +6 -0
  276. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/client.d.ts.map +1 -0
  277. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/client.js +16 -0
  278. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.d.ts +3 -0
  279. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.d.ts.map +1 -0
  280. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js +30 -0
  281. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/index.d.ts +3 -0
  282. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/index.d.ts.map +1 -0
  283. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/index.js +18 -0
  284. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/client.d.ts +6 -0
  285. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/client.d.ts.map +1 -0
  286. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/client.js +16 -0
  287. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.d.ts +3 -0
  288. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.d.ts.map +1 -0
  289. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js +36 -0
  290. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/index.d.ts +3 -0
  291. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/index.d.ts.map +1 -0
  292. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/index.js +18 -0
  293. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/client.d.ts +6 -0
  294. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/client.d.ts.map +1 -0
  295. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/client.js +16 -0
  296. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.d.ts +3 -0
  297. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.d.ts.map +1 -0
  298. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js +35 -0
  299. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/index.d.ts +3 -0
  300. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/index.d.ts.map +1 -0
  301. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/index.js +18 -0
  302. package/dist/field/features/migrations/lexicalPluginToLexical/converter/defaultConverters.d.ts +3 -0
  303. package/dist/field/features/migrations/lexicalPluginToLexical/converter/defaultConverters.d.ts.map +1 -0
  304. package/dist/field/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js +28 -0
  305. package/dist/field/features/migrations/lexicalPluginToLexical/converter/index.d.ts +17 -0
  306. package/dist/field/features/migrations/lexicalPluginToLexical/converter/index.d.ts.map +1 -0
  307. package/dist/field/features/migrations/lexicalPluginToLexical/converter/index.js +87 -0
  308. package/dist/field/features/migrations/lexicalPluginToLexical/converter/types.d.ts +31 -0
  309. package/dist/field/features/migrations/lexicalPluginToLexical/converter/types.d.ts.map +1 -0
  310. package/dist/field/features/migrations/lexicalPluginToLexical/feature.client.d.ts +3 -0
  311. package/dist/field/features/migrations/lexicalPluginToLexical/feature.client.d.ts.map +1 -0
  312. package/dist/field/features/migrations/lexicalPluginToLexical/feature.client.js +44 -0
  313. package/dist/field/features/migrations/lexicalPluginToLexical/feature.server.d.ts +9 -0
  314. package/dist/field/features/migrations/lexicalPluginToLexical/feature.server.d.ts.map +1 -0
  315. package/dist/field/features/migrations/lexicalPluginToLexical/feature.server.js +57 -0
  316. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.d.ts.map +1 -0
  317. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +23 -0
  318. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -0
  319. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js +131 -0
  320. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.scss +14 -0
  321. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/client.d.ts +6 -0
  322. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/client.d.ts.map +1 -0
  323. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/client.js +16 -0
  324. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/converter.d.ts +3 -0
  325. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/converter.d.ts.map +1 -0
  326. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/converter.js +33 -0
  327. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/index.d.ts +3 -0
  328. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/index.d.ts.map +1 -0
  329. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/index.js +18 -0
  330. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/client.d.ts +6 -0
  331. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/client.d.ts.map +1 -0
  332. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/client.js +16 -0
  333. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/converter.d.ts +3 -0
  334. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/converter.d.ts.map +1 -0
  335. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/converter.js +39 -0
  336. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/index.d.ts +3 -0
  337. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/index.d.ts.map +1 -0
  338. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/index.js +18 -0
  339. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/client.d.ts +6 -0
  340. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/client.d.ts.map +1 -0
  341. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/client.js +16 -0
  342. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/converter.d.ts +3 -0
  343. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/converter.d.ts.map +1 -0
  344. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/converter.js +45 -0
  345. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/index.d.ts +3 -0
  346. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/index.d.ts.map +1 -0
  347. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/index.js +18 -0
  348. package/dist/field/features/migrations/slateToLexical/converter/converters/link/client.d.ts +6 -0
  349. package/dist/field/features/migrations/slateToLexical/converter/converters/link/client.d.ts.map +1 -0
  350. package/dist/field/features/migrations/slateToLexical/converter/converters/link/client.js +16 -0
  351. package/dist/field/features/migrations/slateToLexical/converter/converters/link/converter.d.ts +3 -0
  352. package/dist/field/features/migrations/slateToLexical/converter/converters/link/converter.d.ts.map +1 -0
  353. package/dist/field/features/migrations/slateToLexical/converter/converters/link/converter.js +40 -0
  354. package/dist/field/features/migrations/slateToLexical/converter/converters/link/index.d.ts +3 -0
  355. package/dist/field/features/migrations/slateToLexical/converter/converters/link/index.d.ts.map +1 -0
  356. package/dist/field/features/migrations/slateToLexical/converter/converters/link/index.js +18 -0
  357. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/client.d.ts +6 -0
  358. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/client.d.ts.map +1 -0
  359. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/client.js +16 -0
  360. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/converter.d.ts +3 -0
  361. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/converter.d.ts.map +1 -0
  362. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/converter.js +35 -0
  363. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/index.d.ts +3 -0
  364. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/index.d.ts.map +1 -0
  365. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/index.js +18 -0
  366. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/client.d.ts +6 -0
  367. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/client.d.ts.map +1 -0
  368. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/client.js +16 -0
  369. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/converter.d.ts +3 -0
  370. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/converter.d.ts.map +1 -0
  371. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/converter.js +36 -0
  372. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/index.d.ts +3 -0
  373. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/index.d.ts.map +1 -0
  374. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/index.js +18 -0
  375. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/client.d.ts +6 -0
  376. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/client.d.ts.map +1 -0
  377. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/client.js +16 -0
  378. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/converter.d.ts +3 -0
  379. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/converter.d.ts.map +1 -0
  380. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/converter.js +28 -0
  381. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/index.d.ts +3 -0
  382. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/index.d.ts.map +1 -0
  383. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/index.js +18 -0
  384. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/client.d.ts +6 -0
  385. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/client.d.ts.map +1 -0
  386. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/client.js +16 -0
  387. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/converter.d.ts +3 -0
  388. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/converter.d.ts.map +1 -0
  389. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/converter.js +37 -0
  390. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/index.d.ts +3 -0
  391. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/index.d.ts.map +1 -0
  392. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/index.js +18 -0
  393. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/client.d.ts +6 -0
  394. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/client.d.ts.map +1 -0
  395. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/client.js +16 -0
  396. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/converter.d.ts +3 -0
  397. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/converter.d.ts.map +1 -0
  398. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js +36 -0
  399. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/index.d.ts +3 -0
  400. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/index.d.ts.map +1 -0
  401. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/index.js +18 -0
  402. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/client.d.ts +6 -0
  403. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/client.d.ts.map +1 -0
  404. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/client.js +16 -0
  405. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/converter.d.ts +3 -0
  406. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/converter.d.ts.map +1 -0
  407. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/converter.js +31 -0
  408. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/index.d.ts +3 -0
  409. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/index.d.ts.map +1 -0
  410. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/index.js +18 -0
  411. package/dist/field/features/migrations/slateToLexical/converter/defaultConverters.d.ts +3 -0
  412. package/dist/field/features/migrations/slateToLexical/converter/defaultConverters.d.ts.map +1 -0
  413. package/dist/field/features/migrations/slateToLexical/converter/defaultConverters.js +34 -0
  414. package/dist/field/features/migrations/slateToLexical/converter/index.d.ts +19 -0
  415. package/dist/field/features/migrations/slateToLexical/converter/index.d.ts.map +1 -0
  416. package/dist/field/features/migrations/slateToLexical/converter/index.js +134 -0
  417. package/dist/field/features/migrations/slateToLexical/converter/types.d.ts +25 -0
  418. package/dist/field/features/migrations/slateToLexical/converter/types.d.ts.map +1 -0
  419. package/dist/field/features/migrations/slateToLexical/converter/types.js +6 -0
  420. package/dist/field/features/migrations/slateToLexical/feature.client.d.ts +3 -0
  421. package/dist/field/features/migrations/slateToLexical/feature.client.d.ts.map +1 -0
  422. package/dist/field/features/migrations/slateToLexical/feature.client.js +44 -0
  423. package/dist/field/features/migrations/slateToLexical/feature.server.d.ts +9 -0
  424. package/dist/field/features/migrations/slateToLexical/feature.server.d.ts.map +1 -0
  425. package/dist/field/features/migrations/slateToLexical/feature.server.js +57 -0
  426. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.d.ts.map +1 -0
  427. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js +23 -0
  428. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -0
  429. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js +131 -0
  430. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.scss +14 -0
  431. package/dist/field/features/paragraph/feature.client.d.ts +3 -0
  432. package/dist/field/features/paragraph/feature.client.d.ts.map +1 -0
  433. package/dist/field/features/paragraph/feature.client.js +73 -0
  434. package/dist/field/features/paragraph/feature.server.d.ts +3 -0
  435. package/dist/field/features/paragraph/feature.server.d.ts.map +1 -0
  436. package/dist/field/features/paragraph/feature.server.js +26 -0
  437. package/dist/field/features/relationship/drawer/commands.d.ts.map +1 -0
  438. package/dist/field/features/relationship/drawer/commands.js +14 -0
  439. package/dist/field/features/relationship/drawer/index.d.ts.map +1 -0
  440. package/dist/field/features/relationship/drawer/index.js +130 -0
  441. package/dist/field/features/relationship/feature.client.d.ts +4 -0
  442. package/dist/field/features/relationship/feature.client.d.ts.map +1 -0
  443. package/dist/field/features/relationship/feature.client.js +66 -0
  444. package/dist/field/features/relationship/feature.server.d.ts +18 -0
  445. package/dist/field/features/relationship/feature.server.d.ts.map +1 -0
  446. package/dist/field/features/relationship/feature.server.js +36 -0
  447. package/dist/field/features/relationship/nodes/RelationshipNode.d.ts.map +1 -0
  448. package/dist/field/features/relationship/nodes/RelationshipNode.js +172 -0
  449. package/dist/field/features/relationship/nodes/components/RelationshipComponent.d.ts.map +1 -0
  450. package/dist/field/features/relationship/nodes/components/RelationshipComponent.js +154 -0
  451. package/dist/field/features/relationship/nodes/components/index.scss +97 -0
  452. package/dist/field/features/relationship/plugins/index.d.ts +7 -0
  453. package/dist/field/features/relationship/plugins/index.d.ts.map +1 -0
  454. package/dist/field/features/relationship/plugins/index.js +107 -0
  455. package/dist/field/features/relationship/populationPromise.d.ts.map +1 -0
  456. package/dist/field/features/relationship/populationPromise.js +34 -0
  457. package/dist/field/features/relationship/utils/EnabledRelationshipsCondition.d.ts.map +1 -0
  458. package/dist/field/features/relationship/utils/EnabledRelationshipsCondition.js +84 -0
  459. package/dist/field/features/types.d.ts +139 -70
  460. package/dist/field/features/types.d.ts.map +1 -1
  461. package/dist/field/features/upload/component/ExtraFieldsDrawer/index.d.ts.map +1 -0
  462. package/dist/field/features/upload/component/ExtraFieldsDrawer/index.js +158 -0
  463. package/dist/field/features/upload/component/index.d.ts.map +1 -0
  464. package/dist/field/features/upload/component/index.js +186 -0
  465. package/dist/field/features/upload/component/index.scss +152 -0
  466. package/dist/field/features/upload/drawer/commands.d.ts.map +1 -0
  467. package/dist/field/features/upload/drawer/commands.js +15 -0
  468. package/dist/field/features/upload/drawer/index.d.ts.map +1 -0
  469. package/dist/field/features/upload/drawer/index.js +127 -0
  470. package/dist/field/features/upload/feature.client.d.ts +10 -0
  471. package/dist/field/features/upload/feature.client.d.ts.map +1 -0
  472. package/dist/field/features/upload/feature.client.js +65 -0
  473. package/dist/field/features/upload/feature.server.d.ts +12 -0
  474. package/dist/field/features/upload/feature.server.d.ts.map +1 -0
  475. package/dist/field/features/upload/feature.server.js +113 -0
  476. package/dist/field/features/upload/nodes/UploadNode.d.ts +47 -0
  477. package/dist/field/features/upload/nodes/UploadNode.d.ts.map +1 -0
  478. package/dist/field/features/upload/nodes/UploadNode.js +160 -0
  479. package/dist/field/features/upload/plugin/index.d.ts.map +1 -0
  480. package/dist/field/features/upload/plugin/index.js +111 -0
  481. package/dist/field/features/upload/populationPromise.d.ts +5 -0
  482. package/dist/field/features/upload/populationPromise.d.ts.map +1 -0
  483. package/dist/field/features/upload/populationPromise.js +56 -0
  484. package/dist/field/features/upload/validate.d.ts.map +1 -0
  485. package/dist/field/features/upload/validate.js +29 -0
  486. package/dist/field/index.d.ts +7 -2
  487. package/dist/field/index.d.ts.map +1 -1
  488. package/dist/field/index.js +80 -6
  489. package/dist/field/index.scss +2 -2
  490. package/dist/field/lexical/EditorPlugin.d.ts.map +1 -1
  491. package/dist/field/lexical/EditorPlugin.js +7 -13
  492. package/dist/field/lexical/LexicalEditor.js +5 -3
  493. package/dist/field/lexical/LexicalEditor.scss +1 -3
  494. package/dist/field/lexical/LexicalProvider.d.ts +8 -4
  495. package/dist/field/lexical/LexicalProvider.d.ts.map +1 -1
  496. package/dist/field/lexical/LexicalProvider.js +21 -21
  497. package/dist/field/lexical/config/client/EditorConfigProvider.d.ts +24 -0
  498. package/dist/field/lexical/config/client/EditorConfigProvider.d.ts.map +1 -0
  499. package/dist/field/lexical/config/client/EditorConfigProvider.js +99 -0
  500. package/dist/field/lexical/config/client/default.d.ts +3 -0
  501. package/dist/field/lexical/config/client/default.d.ts.map +1 -0
  502. package/dist/field/lexical/config/client/default.js +18 -0
  503. package/dist/field/lexical/config/client/loader.d.ts +11 -0
  504. package/dist/field/lexical/config/client/loader.d.ts.map +1 -0
  505. package/dist/field/lexical/config/client/loader.js +53 -0
  506. package/dist/field/lexical/config/client/sanitize.d.ts +6 -0
  507. package/dist/field/lexical/config/client/sanitize.d.ts.map +1 -0
  508. package/dist/field/lexical/config/client/sanitize.js +144 -0
  509. package/dist/field/lexical/config/server/default.d.ts +8 -0
  510. package/dist/field/lexical/config/server/default.d.ts.map +1 -0
  511. package/dist/field/lexical/config/server/default.js +75 -0
  512. package/dist/field/lexical/config/server/loader.d.ts +7 -0
  513. package/dist/field/lexical/config/server/loader.d.ts.map +1 -0
  514. package/dist/field/lexical/config/server/loader.js +136 -0
  515. package/dist/field/lexical/config/server/sanitize.d.ts +5 -0
  516. package/dist/field/lexical/config/server/sanitize.d.ts.map +1 -0
  517. package/dist/field/lexical/config/server/sanitize.js +83 -0
  518. package/dist/field/lexical/config/types.d.ts +18 -9
  519. package/dist/field/lexical/config/types.d.ts.map +1 -1
  520. package/dist/field/lexical/nodes/index.d.ts +2 -2
  521. package/dist/field/lexical/nodes/index.d.ts.map +1 -1
  522. package/dist/field/lexical/nodes/index.js +7 -2
  523. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.js +4 -2
  524. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.scss +0 -2
  525. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.d.ts +3 -3
  526. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.d.ts.map +1 -1
  527. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.js +15 -13
  528. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.d.ts.map +1 -1
  529. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.js +12 -60
  530. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.scss +1 -1
  531. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.d.ts.map +1 -1
  532. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.js +11 -29
  533. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.scss +1 -1
  534. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.d.ts +4 -4
  535. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.d.ts.map +1 -1
  536. package/dist/field/lexical/plugins/MarkdownShortcut/index.js +5 -3
  537. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +7 -7
  538. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts +2 -2
  539. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts.map +1 -1
  540. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +10 -15
  541. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts +6 -6
  542. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts.map +1 -1
  543. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js +4 -4
  544. package/dist/field/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
  545. package/dist/field/lexical/plugins/SlashMenu/index.js +9 -14
  546. package/dist/field/lexical/plugins/SlashMenu/index.scss +1 -1
  547. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.d.ts.map +1 -1
  548. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.js +59 -35
  549. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.scss +0 -2
  550. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.js +4 -2
  551. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.scss +0 -2
  552. package/dist/field/lexical/theme/EditorTheme.d.ts.map +1 -1
  553. package/dist/field/lexical/theme/EditorTheme.js +2 -1
  554. package/dist/field/lexical/theme/EditorTheme.scss +0 -2
  555. package/dist/field/lexical/ui/ContentEditable.js +4 -2
  556. package/dist/field/lexical/ui/icons/AlignJustify/index.d.ts +3 -0
  557. package/dist/field/lexical/ui/icons/AlignJustify/index.d.ts.map +1 -0
  558. package/dist/field/lexical/ui/icons/AlignJustify/index.js +40 -0
  559. package/dist/field/lexical/utils/environment.js +15 -15
  560. package/dist/field/lexical/utils/nodeFormat.js +19 -19
  561. package/dist/field/lexical/utils/swipe.js +4 -4
  562. package/dist/generateComponentMap.d.ts +6 -0
  563. package/dist/generateComponentMap.d.ts.map +1 -0
  564. package/dist/generateComponentMap.js +92 -0
  565. package/dist/generateSchemaMap.d.ts +6 -0
  566. package/dist/generateSchemaMap.d.ts.map +1 -0
  567. package/dist/generateSchemaMap.js +37 -0
  568. package/dist/index.d.ts +59 -56
  569. package/dist/index.d.ts.map +1 -1
  570. package/dist/index.js +291 -260
  571. package/dist/populate/defaultValue.js +6 -6
  572. package/dist/populate/recurseNestedFields.d.ts.map +1 -1
  573. package/dist/populate/recurseNestedFields.js +3 -1
  574. package/dist/populate/richTextRelationshipPromise.js +2 -2
  575. package/dist/scss/app.scss +209 -0
  576. package/dist/scss/colors.scss +269 -0
  577. package/dist/scss/custom.css +1 -0
  578. package/dist/scss/fonts.scss +75 -0
  579. package/dist/scss/queries.scss +27 -0
  580. package/dist/scss/resets.scss +17 -0
  581. package/dist/scss/styles.scss +11 -0
  582. package/dist/scss/svg.scss +10 -0
  583. package/dist/scss/toastify.scss +58 -0
  584. package/dist/scss/type.scss +117 -0
  585. package/dist/scss/vars.scss +220 -0
  586. package/dist/scss/z-index.scss +9 -0
  587. package/dist/types.d.ts +8 -2
  588. package/dist/types.d.ts.map +1 -1
  589. package/dist/useLexicalFeature.d.ts +3 -0
  590. package/dist/useLexicalFeature.d.ts.map +1 -0
  591. package/dist/useLexicalFeature.js +19 -0
  592. package/dist/validate/index.d.ts +4 -4
  593. package/dist/validate/index.d.ts.map +1 -1
  594. package/dist/validate/index.js +2 -3
  595. package/dist/validate/validateNodes.d.ts +2 -4
  596. package/dist/validate/validateNodes.d.ts.map +1 -1
  597. package/dist/validate/validateNodes.js +2 -4
  598. package/package.json +25 -19
  599. package/dist/field/features/BlockQuote/index.d.ts +0 -3
  600. package/dist/field/features/BlockQuote/index.d.ts.map +0 -1
  601. package/dist/field/features/BlockQuote/index.js +0 -142
  602. package/dist/field/features/BlockQuote/markdownTransformer.d.ts.map +0 -1
  603. package/dist/field/features/BlockQuote/markdownTransformer.js +0 -50
  604. package/dist/field/features/Blocks/component/BlockContent.d.ts +0 -20
  605. package/dist/field/features/Blocks/component/BlockContent.d.ts.map +0 -1
  606. package/dist/field/features/Blocks/component/BlockContent.js +0 -218
  607. package/dist/field/features/Blocks/component/FormSavePlugin.d.ts +0 -11
  608. package/dist/field/features/Blocks/component/FormSavePlugin.d.ts.map +0 -1
  609. package/dist/field/features/Blocks/component/FormSavePlugin.js +0 -34
  610. package/dist/field/features/Blocks/component/index.d.ts +0 -15
  611. package/dist/field/features/Blocks/component/index.d.ts.map +0 -1
  612. package/dist/field/features/Blocks/component/index.js +0 -148
  613. package/dist/field/features/Blocks/component/index.scss +0 -153
  614. package/dist/field/features/Blocks/drawer/index.d.ts.map +0 -1
  615. package/dist/field/features/Blocks/drawer/index.js +0 -138
  616. package/dist/field/features/Blocks/index.d.ts +0 -7
  617. package/dist/field/features/Blocks/index.d.ts.map +0 -1
  618. package/dist/field/features/Blocks/index.js +0 -145
  619. package/dist/field/features/Blocks/nodes/BlocksNode.d.ts.map +0 -1
  620. package/dist/field/features/Blocks/nodes/BlocksNode.js +0 -171
  621. package/dist/field/features/Blocks/plugin/commands.d.ts.map +0 -1
  622. package/dist/field/features/Blocks/plugin/commands.js +0 -14
  623. package/dist/field/features/Blocks/plugin/index.d.ts +0 -5
  624. package/dist/field/features/Blocks/plugin/index.d.ts.map +0 -1
  625. package/dist/field/features/Blocks/plugin/index.js +0 -88
  626. package/dist/field/features/Blocks/populationPromise.d.ts +0 -5
  627. package/dist/field/features/Blocks/populationPromise.d.ts.map +0 -1
  628. package/dist/field/features/Blocks/populationPromise.js +0 -55
  629. package/dist/field/features/Blocks/utils/transformInputFormData.d.ts +0 -11
  630. package/dist/field/features/Blocks/utils/transformInputFormData.d.ts.map +0 -1
  631. package/dist/field/features/Blocks/utils/transformInputFormData.js +0 -35
  632. package/dist/field/features/Blocks/utils/transformInputFormSchema.d.ts +0 -3
  633. package/dist/field/features/Blocks/utils/transformInputFormSchema.d.ts.map +0 -1
  634. package/dist/field/features/Blocks/utils/transformInputFormSchema.js +0 -43
  635. package/dist/field/features/Blocks/validate.d.ts +0 -5
  636. package/dist/field/features/Blocks/validate.d.ts.map +0 -1
  637. package/dist/field/features/Blocks/validate.js +0 -62
  638. package/dist/field/features/Heading/index.d.ts +0 -8
  639. package/dist/field/features/Heading/index.d.ts.map +0 -1
  640. package/dist/field/features/Heading/index.js +0 -164
  641. package/dist/field/features/Heading/markdownTransformer.d.ts.map +0 -1
  642. package/dist/field/features/Heading/markdownTransformer.js +0 -39
  643. package/dist/field/features/Link/drawer/baseFields.d.ts.map +0 -1
  644. package/dist/field/features/Link/drawer/baseFields.js +0 -128
  645. package/dist/field/features/Link/drawer/index.d.ts.map +0 -1
  646. package/dist/field/features/Link/drawer/index.js +0 -40
  647. package/dist/field/features/Link/drawer/index.scss +0 -50
  648. package/dist/field/features/Link/drawer/types.d.ts +0 -8
  649. package/dist/field/features/Link/drawer/types.d.ts.map +0 -1
  650. package/dist/field/features/Link/index.d.ts +0 -33
  651. package/dist/field/features/Link/index.d.ts.map +0 -1
  652. package/dist/field/features/Link/index.js +0 -199
  653. package/dist/field/features/Link/nodes/AutoLinkNode.d.ts +0 -16
  654. package/dist/field/features/Link/nodes/AutoLinkNode.d.ts.map +0 -1
  655. package/dist/field/features/Link/nodes/AutoLinkNode.js +0 -79
  656. package/dist/field/features/Link/nodes/LinkNode.d.ts +0 -50
  657. package/dist/field/features/Link/nodes/LinkNode.d.ts.map +0 -1
  658. package/dist/field/features/Link/nodes/LinkNode.js +0 -326
  659. package/dist/field/features/Link/plugins/autoLink/index.d.ts +0 -19
  660. package/dist/field/features/Link/plugins/autoLink/index.d.ts.map +0 -1
  661. package/dist/field/features/Link/plugins/autoLink/index.js +0 -335
  662. package/dist/field/features/Link/plugins/clickableLink/index.d.ts.map +0 -1
  663. package/dist/field/features/Link/plugins/clickableLink/index.js +0 -23
  664. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/commands.d.ts.map +0 -1
  665. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/commands.js +0 -14
  666. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts +0 -6
  667. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +0 -1
  668. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.js +0 -310
  669. package/dist/field/features/Link/plugins/floatingLinkEditor/index.d.ts +0 -7
  670. package/dist/field/features/Link/plugins/floatingLinkEditor/index.d.ts.map +0 -1
  671. package/dist/field/features/Link/plugins/floatingLinkEditor/index.js +0 -63
  672. package/dist/field/features/Link/plugins/floatingLinkEditor/index.scss +0 -78
  673. package/dist/field/features/Link/plugins/floatingLinkEditor/types.d.ts +0 -13
  674. package/dist/field/features/Link/plugins/floatingLinkEditor/types.d.ts.map +0 -1
  675. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.d.ts +0 -12
  676. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.d.ts.map +0 -1
  677. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.js +0 -45
  678. package/dist/field/features/Link/plugins/link/index.d.ts.map +0 -1
  679. package/dist/field/features/Link/plugins/link/index.js +0 -69
  680. package/dist/field/features/Link/populationPromise.d.ts +0 -5
  681. package/dist/field/features/Link/populationPromise.d.ts.map +0 -1
  682. package/dist/field/features/Link/populationPromise.js +0 -56
  683. package/dist/field/features/Paragraph/index.d.ts +0 -3
  684. package/dist/field/features/Paragraph/index.d.ts.map +0 -1
  685. package/dist/field/features/Paragraph/index.js +0 -116
  686. package/dist/field/features/Relationship/drawer/commands.d.ts.map +0 -1
  687. package/dist/field/features/Relationship/drawer/commands.js +0 -14
  688. package/dist/field/features/Relationship/drawer/index.d.ts.map +0 -1
  689. package/dist/field/features/Relationship/drawer/index.js +0 -128
  690. package/dist/field/features/Relationship/index.d.ts +0 -18
  691. package/dist/field/features/Relationship/index.d.ts.map +0 -1
  692. package/dist/field/features/Relationship/index.js +0 -113
  693. package/dist/field/features/Relationship/nodes/RelationshipNode.d.ts.map +0 -1
  694. package/dist/field/features/Relationship/nodes/RelationshipNode.js +0 -170
  695. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.d.ts.map +0 -1
  696. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.js +0 -159
  697. package/dist/field/features/Relationship/nodes/components/index.scss +0 -97
  698. package/dist/field/features/Relationship/plugins/index.d.ts +0 -7
  699. package/dist/field/features/Relationship/plugins/index.d.ts.map +0 -1
  700. package/dist/field/features/Relationship/plugins/index.js +0 -104
  701. package/dist/field/features/Relationship/populationPromise.d.ts.map +0 -1
  702. package/dist/field/features/Relationship/populationPromise.js +0 -34
  703. package/dist/field/features/Relationship/utils/EnabledRelationshipsCondition.d.ts.map +0 -1
  704. package/dist/field/features/Relationship/utils/EnabledRelationshipsCondition.js +0 -82
  705. package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.d.ts.map +0 -1
  706. package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.js +0 -146
  707. package/dist/field/features/Upload/component/index.d.ts.map +0 -1
  708. package/dist/field/features/Upload/component/index.js +0 -189
  709. package/dist/field/features/Upload/component/index.scss +0 -152
  710. package/dist/field/features/Upload/drawer/commands.d.ts.map +0 -1
  711. package/dist/field/features/Upload/drawer/commands.js +0 -14
  712. package/dist/field/features/Upload/drawer/index.d.ts.map +0 -1
  713. package/dist/field/features/Upload/drawer/index.js +0 -125
  714. package/dist/field/features/Upload/index.d.ts +0 -11
  715. package/dist/field/features/Upload/index.d.ts.map +0 -1
  716. package/dist/field/features/Upload/index.js +0 -166
  717. package/dist/field/features/Upload/nodes/UploadNode.d.ts +0 -47
  718. package/dist/field/features/Upload/nodes/UploadNode.d.ts.map +0 -1
  719. package/dist/field/features/Upload/nodes/UploadNode.js +0 -158
  720. package/dist/field/features/Upload/plugin/index.d.ts.map +0 -1
  721. package/dist/field/features/Upload/plugin/index.js +0 -108
  722. package/dist/field/features/Upload/populationPromise.d.ts +0 -5
  723. package/dist/field/features/Upload/populationPromise.d.ts.map +0 -1
  724. package/dist/field/features/Upload/populationPromise.js +0 -56
  725. package/dist/field/features/Upload/validate.d.ts.map +0 -1
  726. package/dist/field/features/Upload/validate.js +0 -29
  727. package/dist/field/features/align/index.d.ts +0 -3
  728. package/dist/field/features/align/index.d.ts.map +0 -1
  729. package/dist/field/features/align/index.js +0 -106
  730. package/dist/field/features/converters/html/index.d.ts +0 -13
  731. package/dist/field/features/converters/html/index.d.ts.map +0 -1
  732. package/dist/field/features/converters/html/index.js +0 -25
  733. package/dist/field/features/debug/TestRecorder/index.d.ts +0 -3
  734. package/dist/field/features/debug/TestRecorder/index.d.ts.map +0 -1
  735. package/dist/field/features/debug/TestRecorder/index.js +0 -68
  736. package/dist/field/features/debug/TestRecorder/plugin/index.d.ts.map +0 -1
  737. package/dist/field/features/debug/TestRecorder/plugin/index.js +0 -498
  738. package/dist/field/features/debug/TestRecorder/plugin/index.scss +0 -51
  739. package/dist/field/features/debug/TreeView/index.d.ts +0 -3
  740. package/dist/field/features/debug/TreeView/index.d.ts.map +0 -1
  741. package/dist/field/features/debug/TreeView/index.js +0 -68
  742. package/dist/field/features/debug/TreeView/plugin.d.ts +0 -4
  743. package/dist/field/features/debug/TreeView/plugin.d.ts.map +0 -1
  744. package/dist/field/features/debug/TreeView/plugin.js +0 -68
  745. package/dist/field/features/format/Bold/index.d.ts +0 -3
  746. package/dist/field/features/format/Bold/index.d.ts.map +0 -1
  747. package/dist/field/features/format/Bold/index.js +0 -96
  748. package/dist/field/features/format/Bold/markdownTransformers.d.ts.map +0 -1
  749. package/dist/field/features/format/Bold/markdownTransformers.js +0 -58
  750. package/dist/field/features/format/InlineCode/index.d.ts +0 -3
  751. package/dist/field/features/format/InlineCode/index.d.ts.map +0 -1
  752. package/dist/field/features/format/InlineCode/index.js +0 -88
  753. package/dist/field/features/format/InlineCode/markdownTransformers.d.ts.map +0 -1
  754. package/dist/field/features/format/InlineCode/markdownTransformers.js +0 -19
  755. package/dist/field/features/format/Italic/index.d.ts +0 -3
  756. package/dist/field/features/format/Italic/index.d.ts.map +0 -1
  757. package/dist/field/features/format/Italic/index.js +0 -89
  758. package/dist/field/features/format/Italic/markdownTransformers.d.ts.map +0 -1
  759. package/dist/field/features/format/Italic/markdownTransformers.js +0 -35
  760. package/dist/field/features/format/strikethrough/index.d.ts +0 -3
  761. package/dist/field/features/format/strikethrough/index.d.ts.map +0 -1
  762. package/dist/field/features/format/strikethrough/index.js +0 -88
  763. package/dist/field/features/format/subscript/index.d.ts +0 -3
  764. package/dist/field/features/format/subscript/index.d.ts.map +0 -1
  765. package/dist/field/features/format/subscript/index.js +0 -84
  766. package/dist/field/features/format/superscript/index.d.ts +0 -3
  767. package/dist/field/features/format/superscript/index.d.ts.map +0 -1
  768. package/dist/field/features/format/superscript/index.js +0 -84
  769. package/dist/field/features/format/underline/index.d.ts +0 -3
  770. package/dist/field/features/format/underline/index.d.ts.map +0 -1
  771. package/dist/field/features/format/underline/index.js +0 -84
  772. package/dist/field/features/indent/index.d.ts +0 -3
  773. package/dist/field/features/indent/index.d.ts.map +0 -1
  774. package/dist/field/features/indent/index.js +0 -112
  775. package/dist/field/features/indent/plugin.d.ts +0 -3
  776. package/dist/field/features/indent/plugin.d.ts.map +0 -1
  777. package/dist/field/features/indent/plugin.js +0 -17
  778. package/dist/field/features/lists/CheckList/index.d.ts +0 -3
  779. package/dist/field/features/lists/CheckList/index.d.ts.map +0 -1
  780. package/dist/field/features/lists/CheckList/index.js +0 -133
  781. package/dist/field/features/lists/CheckList/markdownTransformers.d.ts.map +0 -1
  782. package/dist/field/features/lists/CheckList/markdownTransformers.js +0 -26
  783. package/dist/field/features/lists/CheckList/plugin/index.d.ts.map +0 -1
  784. package/dist/field/features/lists/CheckList/plugin/index.js +0 -23
  785. package/dist/field/features/lists/OrderedList/index.d.ts +0 -3
  786. package/dist/field/features/lists/OrderedList/index.d.ts.map +0 -1
  787. package/dist/field/features/lists/OrderedList/index.js +0 -131
  788. package/dist/field/features/lists/OrderedList/markdownTransformer.d.ts.map +0 -1
  789. package/dist/field/features/lists/OrderedList/markdownTransformer.js +0 -26
  790. package/dist/field/features/lists/UnorderedList/index.d.ts +0 -3
  791. package/dist/field/features/lists/UnorderedList/index.d.ts.map +0 -1
  792. package/dist/field/features/lists/UnorderedList/index.js +0 -131
  793. package/dist/field/features/lists/UnorderedList/markdownTransformer.d.ts.map +0 -1
  794. package/dist/field/features/lists/UnorderedList/markdownTransformer.js +0 -26
  795. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/heading.d.ts +0 -3
  796. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/heading.d.ts.map +0 -1
  797. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/heading.js +0 -30
  798. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/link.d.ts +0 -3
  799. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/link.d.ts.map +0 -1
  800. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/link.js +0 -41
  801. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/list.d.ts +0 -3
  802. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/list.d.ts.map +0 -1
  803. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/list.js +0 -32
  804. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/listItem.d.ts +0 -3
  805. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/listItem.d.ts.map +0 -1
  806. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/listItem.js +0 -32
  807. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/quote.d.ts +0 -3
  808. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/quote.d.ts.map +0 -1
  809. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/quote.js +0 -30
  810. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/unknown.d.ts +0 -3
  811. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/unknown.d.ts.map +0 -1
  812. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/unknown.js +0 -36
  813. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/upload.d.ts +0 -3
  814. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/upload.d.ts.map +0 -1
  815. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/upload.js +0 -35
  816. package/dist/field/features/migrations/LexicalPluginToLexical/converter/defaultConverters.d.ts +0 -3
  817. package/dist/field/features/migrations/LexicalPluginToLexical/converter/defaultConverters.d.ts.map +0 -1
  818. package/dist/field/features/migrations/LexicalPluginToLexical/converter/defaultConverters.js +0 -28
  819. package/dist/field/features/migrations/LexicalPluginToLexical/converter/index.d.ts +0 -18
  820. package/dist/field/features/migrations/LexicalPluginToLexical/converter/index.d.ts.map +0 -1
  821. package/dist/field/features/migrations/LexicalPluginToLexical/converter/index.js +0 -90
  822. package/dist/field/features/migrations/LexicalPluginToLexical/converter/types.d.ts +0 -20
  823. package/dist/field/features/migrations/LexicalPluginToLexical/converter/types.d.ts.map +0 -1
  824. package/dist/field/features/migrations/LexicalPluginToLexical/index.d.ts +0 -10
  825. package/dist/field/features/migrations/LexicalPluginToLexical/index.d.ts.map +0 -1
  826. package/dist/field/features/migrations/LexicalPluginToLexical/index.js +0 -50
  827. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/Component.d.ts.map +0 -1
  828. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +0 -23
  829. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/index.d.ts.map +0 -1
  830. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/index.js +0 -129
  831. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/index.scss +0 -16
  832. package/dist/field/features/migrations/SlateToLexical/converter/converters/blockquote.d.ts +0 -3
  833. package/dist/field/features/migrations/SlateToLexical/converter/converters/blockquote.d.ts.map +0 -1
  834. package/dist/field/features/migrations/SlateToLexical/converter/converters/blockquote.js +0 -33
  835. package/dist/field/features/migrations/SlateToLexical/converter/converters/heading.d.ts +0 -3
  836. package/dist/field/features/migrations/SlateToLexical/converter/converters/heading.d.ts.map +0 -1
  837. package/dist/field/features/migrations/SlateToLexical/converter/converters/heading.js +0 -39
  838. package/dist/field/features/migrations/SlateToLexical/converter/converters/indent.d.ts +0 -3
  839. package/dist/field/features/migrations/SlateToLexical/converter/converters/indent.d.ts.map +0 -1
  840. package/dist/field/features/migrations/SlateToLexical/converter/converters/indent.js +0 -57
  841. package/dist/field/features/migrations/SlateToLexical/converter/converters/link.d.ts +0 -3
  842. package/dist/field/features/migrations/SlateToLexical/converter/converters/link.d.ts.map +0 -1
  843. package/dist/field/features/migrations/SlateToLexical/converter/converters/link.js +0 -40
  844. package/dist/field/features/migrations/SlateToLexical/converter/converters/listItem.d.ts +0 -3
  845. package/dist/field/features/migrations/SlateToLexical/converter/converters/listItem.d.ts.map +0 -1
  846. package/dist/field/features/migrations/SlateToLexical/converter/converters/listItem.js +0 -35
  847. package/dist/field/features/migrations/SlateToLexical/converter/converters/orderedList.d.ts +0 -3
  848. package/dist/field/features/migrations/SlateToLexical/converter/converters/orderedList.d.ts.map +0 -1
  849. package/dist/field/features/migrations/SlateToLexical/converter/converters/orderedList.js +0 -36
  850. package/dist/field/features/migrations/SlateToLexical/converter/converters/relationship.d.ts +0 -3
  851. package/dist/field/features/migrations/SlateToLexical/converter/converters/relationship.d.ts.map +0 -1
  852. package/dist/field/features/migrations/SlateToLexical/converter/converters/relationship.js +0 -28
  853. package/dist/field/features/migrations/SlateToLexical/converter/converters/unknown.d.ts +0 -3
  854. package/dist/field/features/migrations/SlateToLexical/converter/converters/unknown.d.ts.map +0 -1
  855. package/dist/field/features/migrations/SlateToLexical/converter/converters/unknown.js +0 -37
  856. package/dist/field/features/migrations/SlateToLexical/converter/converters/unorderedList.d.ts +0 -3
  857. package/dist/field/features/migrations/SlateToLexical/converter/converters/unorderedList.d.ts.map +0 -1
  858. package/dist/field/features/migrations/SlateToLexical/converter/converters/unorderedList.js +0 -36
  859. package/dist/field/features/migrations/SlateToLexical/converter/converters/upload.d.ts +0 -3
  860. package/dist/field/features/migrations/SlateToLexical/converter/converters/upload.d.ts.map +0 -1
  861. package/dist/field/features/migrations/SlateToLexical/converter/converters/upload.js +0 -31
  862. package/dist/field/features/migrations/SlateToLexical/converter/defaultConverters.d.ts +0 -3
  863. package/dist/field/features/migrations/SlateToLexical/converter/defaultConverters.d.ts.map +0 -1
  864. package/dist/field/features/migrations/SlateToLexical/converter/defaultConverters.js +0 -34
  865. package/dist/field/features/migrations/SlateToLexical/converter/index.d.ts +0 -19
  866. package/dist/field/features/migrations/SlateToLexical/converter/index.d.ts.map +0 -1
  867. package/dist/field/features/migrations/SlateToLexical/converter/index.js +0 -131
  868. package/dist/field/features/migrations/SlateToLexical/converter/types.d.ts +0 -16
  869. package/dist/field/features/migrations/SlateToLexical/converter/types.d.ts.map +0 -1
  870. package/dist/field/features/migrations/SlateToLexical/index.d.ts +0 -10
  871. package/dist/field/features/migrations/SlateToLexical/index.d.ts.map +0 -1
  872. package/dist/field/features/migrations/SlateToLexical/index.js +0 -50
  873. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/Component.d.ts.map +0 -1
  874. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/Component.js +0 -23
  875. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/index.d.ts.map +0 -1
  876. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/index.js +0 -129
  877. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/index.scss +0 -16
  878. package/dist/field/lexical/config/EditorConfigProvider.d.ts +0 -16
  879. package/dist/field/lexical/config/EditorConfigProvider.d.ts.map +0 -1
  880. package/dist/field/lexical/config/EditorConfigProvider.js +0 -97
  881. package/dist/field/lexical/config/default.d.ts +0 -6
  882. package/dist/field/lexical/config/default.d.ts.map +0 -1
  883. package/dist/field/lexical/config/default.js +0 -110
  884. package/dist/field/lexical/config/defaultClient.d.ts +0 -3
  885. package/dist/field/lexical/config/defaultClient.d.ts.map +0 -1
  886. package/dist/field/lexical/config/defaultClient.js +0 -17
  887. package/dist/field/lexical/config/loader.d.ts +0 -7
  888. package/dist/field/lexical/config/loader.d.ts.map +0 -1
  889. package/dist/field/lexical/config/loader.js +0 -133
  890. package/dist/field/lexical/config/sanitize.d.ts +0 -5
  891. package/dist/field/lexical/config/sanitize.d.ts.map +0 -1
  892. package/dist/field/lexical/config/sanitize.js +0 -170
  893. /package/dist/field/features/{BlockQuote → blockquote}/markdownTransformer.d.ts +0 -0
  894. /package/dist/field/features/{Blocks → blocks}/drawer/index.d.ts +0 -0
  895. /package/dist/field/features/{Blocks → blocks}/nodes/BlocksNode.d.ts +0 -0
  896. /package/dist/field/features/{Blocks → blocks}/plugin/commands.d.ts +0 -0
  897. /package/dist/field/features/debug/{TestRecorder → testrecorder}/plugin/index.d.ts +0 -0
  898. /package/dist/field/features/debug/{TreeView → treeview/plugin}/index.scss +0 -0
  899. /package/dist/field/features/format/{Bold → bold}/markdownTransformers.d.ts +0 -0
  900. /package/dist/field/features/format/{InlineCode → inlinecode}/markdownTransformers.d.ts +0 -0
  901. /package/dist/field/features/format/{Italic → italic}/markdownTransformers.d.ts +0 -0
  902. /package/dist/field/features/{Heading → heading}/markdownTransformer.d.ts +0 -0
  903. /package/dist/field/features/{Link → link}/drawer/baseFields.d.ts +0 -0
  904. /package/dist/field/features/{Link → link}/drawer/index.d.ts +0 -0
  905. /package/dist/field/features/{Link → link}/drawer/types.js +0 -0
  906. /package/dist/field/features/{Link/plugins/floatingLinkEditor → link/nodes}/types.js +0 -0
  907. /package/dist/field/features/{Link → link}/plugins/clickableLink/index.d.ts +0 -0
  908. /package/dist/field/features/{Link → link}/plugins/floatingLinkEditor/LinkEditor/commands.d.ts +0 -0
  909. /package/dist/field/features/{migrations/LexicalPluginToLexical/converter → link/plugins/floatingLinkEditor}/types.js +0 -0
  910. /package/dist/field/features/{Link → link}/plugins/link/index.d.ts +0 -0
  911. /package/dist/field/features/lists/{CheckList → checklist}/markdownTransformers.d.ts +0 -0
  912. /package/dist/field/features/lists/{CheckList → checklist}/plugin/index.d.ts +0 -0
  913. /package/dist/field/features/lists/{OrderedList → orderedlist}/markdownTransformer.d.ts +0 -0
  914. /package/dist/field/features/lists/{UnorderedList → unorderedlist}/markdownTransformer.d.ts +0 -0
  915. /package/dist/field/features/migrations/{SlateToLexical → lexicalPluginToLexical}/converter/types.js +0 -0
  916. /package/dist/field/features/migrations/{LexicalPluginToLexical → lexicalPluginToLexical}/nodes/unknownConvertedNode/Component.d.ts +0 -0
  917. /package/dist/field/features/migrations/{LexicalPluginToLexical → lexicalPluginToLexical}/nodes/unknownConvertedNode/index.d.ts +0 -0
  918. /package/dist/field/features/migrations/{SlateToLexical → slateToLexical}/nodes/unknownConvertedNode/Component.d.ts +0 -0
  919. /package/dist/field/features/migrations/{SlateToLexical → slateToLexical}/nodes/unknownConvertedNode/index.d.ts +0 -0
  920. /package/dist/field/features/{Relationship → relationship}/drawer/commands.d.ts +0 -0
  921. /package/dist/field/features/{Relationship → relationship}/drawer/index.d.ts +0 -0
  922. /package/dist/field/features/{Relationship → relationship}/nodes/RelationshipNode.d.ts +0 -0
  923. /package/dist/field/features/{Relationship → relationship}/nodes/components/RelationshipComponent.d.ts +0 -0
  924. /package/dist/field/features/{Relationship → relationship}/populationPromise.d.ts +0 -0
  925. /package/dist/field/features/{Relationship → relationship}/utils/EnabledRelationshipsCondition.d.ts +0 -0
  926. /package/dist/field/features/{Upload → upload}/component/ExtraFieldsDrawer/index.d.ts +0 -0
  927. /package/dist/field/features/{Upload → upload}/component/index.d.ts +0 -0
  928. /package/dist/field/features/{Upload → upload}/drawer/commands.d.ts +0 -0
  929. /package/dist/field/features/{Upload → upload}/drawer/index.d.ts +0 -0
  930. /package/dist/field/features/{Upload → upload}/plugin/index.d.ts +0 -0
  931. /package/dist/field/features/{Upload → upload}/validate.d.ts +0 -0
@@ -43,7 +43,9 @@ function _interop_require_wildcard(obj, nodeInterop) {
43
43
  if (cache && cache.has(obj)) {
44
44
  return cache.get(obj);
45
45
  }
46
- var newObj = {};
46
+ var newObj = {
47
+ __proto__: null
48
+ };
47
49
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
48
50
  for(var key in obj){
49
51
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -81,7 +83,6 @@ function getBlockElement(anchorElem, editor, event, useEdgeAsDefault = false, ho
81
83
  const topLevelNodeKeys = (0, _getTopLevelNodeKeys.getTopLevelNodeKeys)(editor);
82
84
  let blockElem = null;
83
85
  let blockNode = null;
84
- let shouldRemove = false;
85
86
  // Return null if matching block element is the first or last node
86
87
  editor.getEditorState().read(()=>{
87
88
  if (useEdgeAsDefault) {
@@ -101,8 +102,7 @@ function getBlockElement(anchorElem, editor, event, useEdgeAsDefault = false, ho
101
102
  }
102
103
  if (blockElem) {
103
104
  return {
104
- blockElem: null,
105
- shouldRemove
105
+ blockElem: null
106
106
  };
107
107
  }
108
108
  }
@@ -130,11 +130,6 @@ function getBlockElement(anchorElem, editor, event, useEdgeAsDefault = false, ho
130
130
  blockElem = elem;
131
131
  blockNode = (0, _lexical.$getNodeByKey)(key);
132
132
  prevIndex = index;
133
- // Check if blockNode is an empty text node
134
- if (!blockNode || blockNode.getType() !== 'paragraph' || blockNode.getTextContent() !== '') {
135
- blockElem = null;
136
- shouldRemove = true;
137
- }
138
133
  break;
139
134
  }
140
135
  if (direction === Indeterminate) {
@@ -151,14 +146,14 @@ function getBlockElement(anchorElem, editor, event, useEdgeAsDefault = false, ho
151
146
  }
152
147
  });
153
148
  return {
154
- blockElem: blockElem,
155
- shouldRemove
149
+ blockElem,
150
+ blockNode
156
151
  };
157
152
  }
158
153
  function useAddBlockHandle(editor, anchorElem, isEditable) {
159
154
  const scrollerElem = anchorElem.parentElement;
160
155
  const menuRef = (0, _react.useRef)(null);
161
- const [emptyBlockElem, setEmptyBlockElem] = (0, _react.useState)(null);
156
+ const [hoveredElement, setHoveredElement] = (0, _react.useState)(null);
162
157
  (0, _react.useEffect)(()=>{
163
158
  function onDocumentMouseMove(event) {
164
159
  const target = event.target;
@@ -175,7 +170,7 @@ function useAddBlockHandle(editor, anchorElem, isEditable) {
175
170
  const adjustedTop = top + window.scrollY;
176
171
  const adjustedBottom = bottom + window.scrollY;
177
172
  if (pageY < adjustedTop - verticalBuffer || pageY > adjustedBottom + verticalBuffer || pageX < left - horizontalBuffer || pageX > right + horizontalBuffer) {
178
- setEmptyBlockElem(null);
173
+ setHoveredElement(null);
179
174
  return;
180
175
  }
181
176
  // This is used to allow the _emptyBlockElem to be found when the mouse is in the
@@ -187,14 +182,17 @@ function useAddBlockHandle(editor, anchorElem, isEditable) {
187
182
  if ((0, _isOnHandleElement.isOnHandleElement)(target, ADD_BLOCK_MENU_CLASSNAME)) {
188
183
  return;
189
184
  }
190
- const { blockElem: _emptyBlockElem, shouldRemove } = getBlockElement(anchorElem, editor, event, false, -distanceFromScrollerElem);
191
- if (!_emptyBlockElem && !shouldRemove) {
185
+ const { blockElem: _emptyBlockElem, blockNode } = getBlockElement(anchorElem, editor, event, false, -distanceFromScrollerElem);
186
+ if (!_emptyBlockElem) {
192
187
  return;
193
188
  }
194
- setEmptyBlockElem(_emptyBlockElem);
189
+ setHoveredElement({
190
+ elem: _emptyBlockElem,
191
+ node: blockNode
192
+ });
195
193
  }
196
194
  // Since the draggableBlockElem is outside the actual editor, we need to listen to the document
197
- // to be able to detect when the mouse is outside the editor and respect a buffer around the
195
+ // to be able to detect when the mouse is outside the editor and respect a buffer around
198
196
  // the scrollerElem to avoid the draggableBlockElem disappearing too early.
199
197
  document?.addEventListener('mousemove', onDocumentMouseMove);
200
198
  return ()=>{
@@ -206,40 +204,66 @@ function useAddBlockHandle(editor, anchorElem, isEditable) {
206
204
  editor
207
205
  ]);
208
206
  (0, _react.useEffect)(()=>{
209
- if (menuRef.current) {
210
- (0, _setHandlePosition.setHandlePosition)(emptyBlockElem, menuRef.current, anchorElem, SPACE);
207
+ if (menuRef.current && hoveredElement?.node) {
208
+ editor.getEditorState().read(()=>{
209
+ // Check if blockNode is an empty text node
210
+ let isEmptyParagraph = true;
211
+ if (hoveredElement.node.getType() !== 'paragraph' || hoveredElement.node.getTextContent() !== '') {
212
+ isEmptyParagraph = false;
213
+ }
214
+ (0, _setHandlePosition.setHandlePosition)(hoveredElement?.elem, menuRef.current, anchorElem, isEmptyParagraph ? SPACE : SPACE - 20);
215
+ });
211
216
  }
212
217
  }, [
213
218
  anchorElem,
214
- emptyBlockElem
219
+ hoveredElement,
220
+ editor
215
221
  ]);
216
222
  const handleAddClick = (0, _react.useCallback)((event)=>{
217
- if (!emptyBlockElem) {
223
+ let hoveredElementToUse = hoveredElement;
224
+ if (!hoveredElementToUse?.node) {
218
225
  return;
219
226
  }
220
- let node;
227
+ // 1. Update hoveredElement.node to a new paragraph node if the hoveredElement.node is not a paragraph node
221
228
  editor.update(()=>{
222
- node = (0, _lexical.$getNearestNodeFromDOMNode)(emptyBlockElem);
223
- if (!node || node.getType() !== 'paragraph') {
224
- return;
229
+ // Check if blockNode is an empty text node
230
+ let isEmptyParagraph = true;
231
+ if (hoveredElementToUse.node.getType() !== 'paragraph' || hoveredElementToUse.node.getTextContent() !== '') {
232
+ isEmptyParagraph = false;
233
+ }
234
+ if (!isEmptyParagraph) {
235
+ const newParagraph = (0, _lexical.$createParagraphNode)();
236
+ hoveredElementToUse.node.insertAfter(newParagraph);
237
+ setTimeout(()=>{
238
+ hoveredElementToUse = {
239
+ elem: editor.getElementByKey(newParagraph.getKey()),
240
+ node: newParagraph
241
+ };
242
+ setHoveredElement(hoveredElementToUse);
243
+ }, 0);
225
244
  }
226
- editor.focus();
227
- node.select();
228
- /*const ns = $createNodeSelection();
229
- ns.add(node.getKey())
230
- $setSelection(ns)*/ });
231
- // Make sure this is called AFTER the editorfocus() event has been processed by the browser
245
+ });
246
+ // 2. Focus on the new paragraph node
247
+ setTimeout(()=>{
248
+ editor.update(()=>{
249
+ editor.focus();
250
+ if (hoveredElementToUse.node && 'select' in hoveredElementToUse.node && typeof hoveredElementToUse.node.select === 'function') {
251
+ hoveredElementToUse.node.select();
252
+ }
253
+ });
254
+ }, 1);
255
+ // Make sure this is called AFTER the focusing has been processed by the browser
232
256
  // Otherwise, this won't work
233
257
  setTimeout(()=>{
234
258
  editor.dispatchCommand(_LexicalTypeaheadMenuPlugin.ENABLE_SLASH_MENU_COMMAND, {
235
- node: node
259
+ node: hoveredElementToUse.node
236
260
  });
237
- }, 0);
261
+ }, 2);
238
262
  event.stopPropagation();
239
263
  event.preventDefault();
240
264
  }, [
241
265
  editor,
242
- emptyBlockElem
266
+ hoveredElement
243
267
  ]);
244
268
  return /*#__PURE__*/ (0, _reactdom.createPortal)(/*#__PURE__*/ _react.createElement(_react.Fragment, null, /*#__PURE__*/ _react.createElement("button", {
245
269
  className: "icon add-block-menu",
@@ -257,4 +281,4 @@ function AddBlockHandlePlugin({ anchorElem = document.body }) {
257
281
  return useAddBlockHandle(editor, anchorElem, editor._editable);
258
282
  }
259
283
 
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3BsdWdpbnMvaGFuZGxlcy9BZGRCbG9ja0hhbmRsZVBsdWdpbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5pbXBvcnQgdHlwZSB7IFBhcmFncmFwaE5vZGUgfSBmcm9tICdsZXhpY2FsJ1xuXG5pbXBvcnQgeyB1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IH0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbENvbXBvc2VyQ29udGV4dCdcbmltcG9ydCB7XG4gICRnZXROZWFyZXN0Tm9kZUZyb21ET01Ob2RlLFxuICAkZ2V0Tm9kZUJ5S2V5LFxuICB0eXBlIExleGljYWxFZGl0b3IsXG4gIHR5cGUgTGV4aWNhbE5vZGUsXG59IGZyb20gJ2xleGljYWwnXG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSdcblxuaW1wb3J0IHsgaXNIVE1MRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2d1YXJkJ1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9wb2ludCdcbmltcG9ydCB7IFJlY3QgfSBmcm9tICcuLi8uLi8uLi91dGlscy9yZWN0J1xuaW1wb3J0IHsgRU5BQkxFX1NMQVNIX01FTlVfQ09NTUFORCB9IGZyb20gJy4uLy4uL1NsYXNoTWVudS9MZXhpY2FsVHlwZWFoZWFkTWVudVBsdWdpbidcbmltcG9ydCB7IGdldENvbGxhcHNlZE1hcmdpbnMgfSBmcm9tICcuLi91dGlscy9nZXRDb2xsYXBzZWRNYXJnaW5zJ1xuaW1wb3J0IHsgZ2V0VG9wTGV2ZWxOb2RlS2V5cyB9IGZyb20gJy4uL3V0aWxzL2dldFRvcExldmVsTm9kZUtleXMnXG5pbXBvcnQgeyBpc09uSGFuZGxlRWxlbWVudCB9IGZyb20gJy4uL3V0aWxzL2lzT25IYW5kbGVFbGVtZW50J1xuaW1wb3J0IHsgc2V0SGFuZGxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscy9zZXRIYW5kbGVQb3NpdGlvbidcbmltcG9ydCAnLi9pbmRleC5zY3NzJ1xuXG5jb25zdCBTUEFDRSA9IC0yNFxuY29uc3QgQUREX0JMT0NLX01FTlVfQ0xBU1NOQU1FID0gJ2FkZC1ibG9jay1tZW51J1xuXG5jb25zdCBEb3dud2FyZCA9IDFcbmNvbnN0IFVwd2FyZCA9IC0xXG5jb25zdCBJbmRldGVybWluYXRlID0gMFxuXG5sZXQgcHJldkluZGV4ID0gSW5maW5pdHlcblxuZnVuY3Rpb24gZ2V0Q3VycmVudEluZGV4KGtleXNMZW5ndGg6IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChrZXlzTGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIEluZmluaXR5XG4gIH1cbiAgaWYgKHByZXZJbmRleCA+PSAwICYmIHByZXZJbmRleCA8IGtleXNMZW5ndGgpIHtcbiAgICByZXR1cm4gcHJldkluZGV4XG4gIH1cblxuICByZXR1cm4gTWF0aC5mbG9vcihrZXlzTGVuZ3RoIC8gMilcbn1cblxuZnVuY3Rpb24gZ2V0QmxvY2tFbGVtZW50KFxuICBhbmNob3JFbGVtOiBIVE1MRWxlbWVudCxcbiAgZWRpdG9yOiBMZXhpY2FsRWRpdG9yLFxuICBldmVudDogTW91c2VFdmVudCxcbiAgdXNlRWRnZUFzRGVmYXVsdCA9IGZhbHNlLFxuICBob3Jpem9udGFsT2Zmc2V0ID0gMCxcbik6IHtcbiAgYmxvY2tFbGVtOiBIVE1MRWxlbWVudCB8IG51bGxcbiAgc2hvdWxkUmVtb3ZlOiBib29sZWFuXG59IHtcbiAgY29uc3QgYW5jaG9yRWxlbWVudFJlY3QgPSBhbmNob3JFbGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gIGNvbnN0IHRvcExldmVsTm9kZUtleXMgPSBnZXRUb3BMZXZlbE5vZGVLZXlzKGVkaXRvcilcblxuICBsZXQgYmxvY2tFbGVtOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsXG4gIGxldCBibG9ja05vZGU6IExleGljYWxOb2RlIHwgbnVsbCA9IG51bGxcbiAgbGV0IHNob3VsZFJlbW92ZSA9IGZhbHNlXG5cbiAgLy8gUmV0dXJuIG51bGwgaWYgbWF0Y2hpbmcgYmxvY2sgZWxlbWVudCBpcyB0aGUgZmlyc3Qgb3IgbGFzdCBub2RlXG4gIGVkaXRvci5nZXRFZGl0b3JTdGF0ZSgpLnJlYWQoKCkgPT4ge1xuICAgIGlmICh1c2VFZGdlQXNEZWZhdWx0KSB7XG4gICAgICBjb25zdCBbZmlyc3ROb2RlLCBsYXN0Tm9kZV0gPSBbXG4gICAgICAgIGVkaXRvci5nZXRFbGVtZW50QnlLZXkodG9wTGV2ZWxOb2RlS2V5c1swXSksXG4gICAgICAgIGVkaXRvci5nZXRFbGVtZW50QnlLZXkodG9wTGV2ZWxOb2RlS2V5c1t0b3BMZXZlbE5vZGVLZXlzLmxlbmd0aCAtIDFdKSxcbiAgICAgIF1cblxuICAgICAgY29uc3QgW2ZpcnN0Tm9kZVJlY3QsIGxhc3ROb2RlUmVjdF0gPSBbXG4gICAgICAgIGZpcnN0Tm9kZT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksXG4gICAgICAgIGxhc3ROb2RlPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICAgIF1cblxuICAgICAgaWYgKGZpcnN0Tm9kZVJlY3QgJiYgbGFzdE5vZGVSZWN0KSB7XG4gICAgICAgIGlmIChldmVudC55IDwgZmlyc3ROb2RlUmVjdC50b3ApIHtcbiAgICAgICAgICBibG9ja0VsZW0gPSBmaXJzdE5vZGVcbiAgICAgICAgfSBlbHNlIGlmIChldmVudC55ID4gbGFzdE5vZGVSZWN0LmJvdHRvbSkge1xuICAgICAgICAgIGJsb2NrRWxlbSA9IGxhc3ROb2RlXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYmxvY2tFbGVtKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGJsb2NrRWxlbTogbnVsbCxcbiAgICAgICAgICAgIHNob3VsZFJlbW92ZSxcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGaW5kIG1hdGNoaW5nIGJsb2NrIGVsZW1lbnRcbiAgICBsZXQgaW5kZXggPSBnZXRDdXJyZW50SW5kZXgodG9wTGV2ZWxOb2RlS2V5cy5sZW5ndGgpXG4gICAgbGV0IGRpcmVjdGlvbiA9IEluZGV0ZXJtaW5hdGVcblxuICAgIHdoaWxlIChpbmRleCA+PSAwICYmIGluZGV4IDwgdG9wTGV2ZWxOb2RlS2V5cy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IGtleSA9IHRvcExldmVsTm9kZUtleXNbaW5kZXhdXG4gICAgICBjb25zdCBlbGVtID0gZWRpdG9yLmdldEVsZW1lbnRCeUtleShrZXkpXG4gICAgICBpZiAoZWxlbSA9PT0gbnVsbCkge1xuICAgICAgICBicmVha1xuICAgICAgfVxuICAgICAgY29uc3QgcG9pbnQgPSBuZXcgUG9pbnQoZXZlbnQueCArIGhvcml6b250YWxPZmZzZXQsIGV2ZW50LnkpXG4gICAgICBjb25zdCBkb21SZWN0ID0gUmVjdC5mcm9tRE9NKGVsZW0pXG4gICAgICBjb25zdCB7IG1hcmdpbkJvdHRvbSwgbWFyZ2luVG9wIH0gPSBnZXRDb2xsYXBzZWRNYXJnaW5zKGVsZW0pXG5cbiAgICAgIGNvbnN0IHJlY3QgPSBkb21SZWN0LmdlbmVyYXRlTmV3UmVjdCh7XG4gICAgICAgIGJvdHRvbTogZG9tUmVjdC5ib3R0b20gKyBtYXJnaW5Cb3R0b20sXG4gICAgICAgIGxlZnQ6IGFuY2hvckVsZW1lbnRSZWN0LmxlZnQsXG4gICAgICAgIHJpZ2h0OiBhbmNob3JFbGVtZW50UmVjdC5yaWdodCxcbiAgICAgICAgdG9wOiBkb21SZWN0LnRvcCAtIG1hcmdpblRvcCxcbiAgICAgIH0pXG5cbiAgICAgIGNvbnN0IHtcbiAgICAgICAgcmVhc29uOiB7IGlzT25Cb3R0b21TaWRlLCBpc09uVG9wU2lkZSB9LFxuICAgICAgICByZXN1bHQsXG4gICAgICB9ID0gcmVjdC5jb250YWlucyhwb2ludClcblxuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICBibG9ja0VsZW0gPSBlbGVtXG4gICAgICAgIGJsb2NrTm9kZSA9ICRnZXROb2RlQnlLZXkoa2V5KVxuICAgICAgICBwcmV2SW5kZXggPSBpbmRleFxuXG4gICAgICAgIC8vIENoZWNrIGlmIGJsb2NrTm9kZSBpcyBhbiBlbXB0eSB0ZXh0IG5vZGVcbiAgICAgICAgaWYgKFxuICAgICAgICAgICFibG9ja05vZGUgfHxcbiAgICAgICAgICBibG9ja05vZGUuZ2V0VHlwZSgpICE9PSAncGFyYWdyYXBoJyB8fFxuICAgICAgICAgIGJsb2NrTm9kZS5nZXRUZXh0Q29udGVudCgpICE9PSAnJ1xuICAgICAgICApIHtcbiAgICAgICAgICBibG9ja0VsZW0gPSBudWxsXG4gICAgICAgICAgc2hvdWxkUmVtb3ZlID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGlmIChkaXJlY3Rpb24gPT09IEluZGV0ZXJtaW5hdGUpIHtcbiAgICAgICAgaWYgKGlzT25Ub3BTaWRlKSB7XG4gICAgICAgICAgZGlyZWN0aW9uID0gVXB3YXJkXG4gICAgICAgIH0gZWxzZSBpZiAoaXNPbkJvdHRvbVNpZGUpIHtcbiAgICAgICAgICBkaXJlY3Rpb24gPSBEb3dud2FyZFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIHN0b3Agc2VhcmNoIGJsb2NrIGVsZW1lbnRcbiAgICAgICAgICBkaXJlY3Rpb24gPSBJbmZpbml0eVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGluZGV4ICs9IGRpcmVjdGlvblxuICAgIH1cbiAgfSlcblxuICByZXR1cm4ge1xuICAgIGJsb2NrRWxlbTogYmxvY2tFbGVtLFxuICAgIHNob3VsZFJlbW92ZSxcbiAgfVxufVxuXG5mdW5jdGlvbiB1c2VBZGRCbG9ja0hhbmRsZShcbiAgZWRpdG9yOiBMZXhpY2FsRWRpdG9yLFxuICBhbmNob3JFbGVtOiBIVE1MRWxlbWVudCxcbiAgaXNFZGl0YWJsZTogYm9vbGVhbixcbik6IEpTWC5FbGVtZW50IHtcbiAgY29uc3Qgc2Nyb2xsZXJFbGVtID0gYW5jaG9yRWxlbS5wYXJlbnRFbGVtZW50XG5cbiAgY29uc3QgbWVudVJlZiA9IHVzZVJlZjxIVE1MQnV0dG9uRWxlbWVudD4obnVsbClcbiAgY29uc3QgW2VtcHR5QmxvY2tFbGVtLCBzZXRFbXB0eUJsb2NrRWxlbV0gPSB1c2VTdGF0ZTxIVE1MRWxlbWVudCB8IG51bGw+KG51bGwpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmdW5jdGlvbiBvbkRvY3VtZW50TW91c2VNb3ZlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXRcbiAgICAgIGlmICghaXNIVE1MRWxlbWVudCh0YXJnZXQpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBsZXQgZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gMFxuICAgICAgLy8gQ2FsY3VsYXRlIGRpc3RhbmNlIGJldHdlZW4gc2Nyb2xsZXJFbGVtIGFuZCB0YXJnZXQgaWYgdGFyZ2V0IGlzIG5vdCBpbiBzY3JvbGxlckVsZW1cbiAgICAgIGlmIChzY3JvbGxlckVsZW0gJiYgIXNjcm9sbGVyRWxlbS5jb250YWlucyh0YXJnZXQpKSB7XG4gICAgICAgIGNvbnN0IHsgYm90dG9tLCBsZWZ0LCByaWdodCwgdG9wIH0gPSBzY3JvbGxlckVsZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgICAgICAgY29uc3QgeyBwYWdlWCwgcGFnZVkgfSA9IGV2ZW50XG4gICAgICAgIGNvbnN0IGhvcml6b250YWxCdWZmZXIgPSA1MFxuICAgICAgICBjb25zdCB2ZXJ0aWNhbEJ1ZmZlciA9IDI1XG4gICAgICAgIGNvbnN0IGFkanVzdGVkVG9wID0gdG9wICsgd2luZG93LnNjcm9sbFlcbiAgICAgICAgY29uc3QgYWRqdXN0ZWRCb3R0b20gPSBib3R0b20gKyB3aW5kb3cuc2Nyb2xsWVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICBwYWdlWSA8IGFkanVzdGVkVG9wIC0gdmVydGljYWxCdWZmZXIgfHxcbiAgICAgICAgICBwYWdlWSA+IGFkanVzdGVkQm90dG9tICsgdmVydGljYWxCdWZmZXIgfHxcbiAgICAgICAgICBwYWdlWCA8IGxlZnQgLSBob3Jpem9udGFsQnVmZmVyIHx8XG4gICAgICAgICAgcGFnZVggPiByaWdodCArIGhvcml6b250YWxCdWZmZXJcbiAgICAgICAgKSB7XG4gICAgICAgICAgc2V0RW1wdHlCbG9ja0VsZW0obnVsbClcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgaXMgdXNlZCB0byBhbGxvdyB0aGUgX2VtcHR5QmxvY2tFbGVtIHRvIGJlIGZvdW5kIHdoZW4gdGhlIG1vdXNlIGlzIGluIHRoZVxuICAgICAgICAvLyBidWZmZXIgem9uZSBhcm91bmQgdGhlIHNjcm9sbGVyRWxlbS5cbiAgICAgICAgaWYgKHBhZ2VYIDwgbGVmdCB8fCBwYWdlWCA+IHJpZ2h0KSB7XG4gICAgICAgICAgZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gcGFnZVggPCBsZWZ0ID8gcGFnZVggLSBsZWZ0IDogcGFnZVggLSByaWdodFxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChpc09uSGFuZGxlRWxlbWVudCh0YXJnZXQsIEFERF9CTE9DS19NRU5VX0NMQVNTTkFNRSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBjb25zdCB7IGJsb2NrRWxlbTogX2VtcHR5QmxvY2tFbGVtLCBzaG91bGRSZW1vdmUgfSA9IGdldEJsb2NrRWxlbWVudChcbiAgICAgICAgYW5jaG9yRWxlbSxcbiAgICAgICAgZWRpdG9yLFxuICAgICAgICBldmVudCxcbiAgICAgICAgZmFsc2UsXG4gICAgICAgIC1kaXN0YW5jZUZyb21TY3JvbGxlckVsZW0sXG4gICAgICApXG4gICAgICBpZiAoIV9lbXB0eUJsb2NrRWxlbSAmJiAhc2hvdWxkUmVtb3ZlKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgc2V0RW1wdHlCbG9ja0VsZW0oX2VtcHR5QmxvY2tFbGVtKVxuICAgIH1cblxuICAgIC8vIFNpbmNlIHRoZSBkcmFnZ2FibGVCbG9ja0VsZW0gaXMgb3V0c2lkZSB0aGUgYWN0dWFsIGVkaXRvciwgd2UgbmVlZCB0byBsaXN0ZW4gdG8gdGhlIGRvY3VtZW50XG4gICAgLy8gdG8gYmUgYWJsZSB0byBkZXRlY3Qgd2hlbiB0aGUgbW91c2UgaXMgb3V0c2lkZSB0aGUgZWRpdG9yIGFuZCByZXNwZWN0IGEgYnVmZmVyIGFyb3VuZCB0aGVcbiAgICAvLyB0aGUgc2Nyb2xsZXJFbGVtIHRvIGF2b2lkIHRoZSBkcmFnZ2FibGVCbG9ja0VsZW0gZGlzYXBwZWFyaW5nIHRvbyBlYXJseS5cbiAgICBkb2N1bWVudD8uYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgb25Eb2N1bWVudE1vdXNlTW92ZSlcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgb25Eb2N1bWVudE1vdXNlTW92ZSlcbiAgICB9XG4gIH0sIFtzY3JvbGxlckVsZW0sIGFuY2hvckVsZW0sIGVkaXRvcl0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobWVudVJlZi5jdXJyZW50KSB7XG4gICAgICBzZXRIYW5kbGVQb3NpdGlvbihlbXB0eUJsb2NrRWxlbSwgbWVudVJlZi5jdXJyZW50LCBhbmNob3JFbGVtLCBTUEFDRSlcbiAgICB9XG4gIH0sIFthbmNob3JFbGVtLCBlbXB0eUJsb2NrRWxlbV0pXG5cbiAgY29uc3QgaGFuZGxlQWRkQ2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIGlmICghZW1wdHlCbG9ja0VsZW0pIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBsZXQgbm9kZTogUGFyYWdyYXBoTm9kZVxuICAgICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICAgIG5vZGUgPSAkZ2V0TmVhcmVzdE5vZGVGcm9tRE9NTm9kZShlbXB0eUJsb2NrRWxlbSkgYXMgUGFyYWdyYXBoTm9kZVxuICAgICAgICBpZiAoIW5vZGUgfHwgbm9kZS5nZXRUeXBlKCkgIT09ICdwYXJhZ3JhcGgnKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgZWRpdG9yLmZvY3VzKClcblxuICAgICAgICBub2RlLnNlbGVjdCgpXG4gICAgICAgIC8qY29uc3QgbnMgPSAkY3JlYXRlTm9kZVNlbGVjdGlvbigpO1xuICAgICAgICBucy5hZGQobm9kZS5nZXRLZXkoKSlcbiAgICAgICAgJHNldFNlbGVjdGlvbihucykqL1xuICAgICAgfSlcblxuICAgICAgLy8gTWFrZSBzdXJlIHRoaXMgaXMgY2FsbGVkIEFGVEVSIHRoZSBlZGl0b3Jmb2N1cygpIGV2ZW50IGhhcyBiZWVuIHByb2Nlc3NlZCBieSB0aGUgYnJvd3NlclxuICAgICAgLy8gT3RoZXJ3aXNlLCB0aGlzIHdvbid0IHdvcmtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBlZGl0b3IuZGlzcGF0Y2hDb21tYW5kKEVOQUJMRV9TTEFTSF9NRU5VX0NPTU1BTkQsIHtcbiAgICAgICAgICBub2RlOiBub2RlLFxuICAgICAgICB9KVxuICAgICAgfSwgMClcblxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICB9LFxuICAgIFtlZGl0b3IsIGVtcHR5QmxvY2tFbGVtXSxcbiAgKVxuXG4gIHJldHVybiBjcmVhdGVQb3J0YWwoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzc05hbWU9XCJpY29uIGFkZC1ibG9jay1tZW51XCJcbiAgICAgICAgb25DbGljaz17KGV2ZW50KSA9PiB7XG4gICAgICAgICAgaGFuZGxlQWRkQ2xpY2soZXZlbnQpXG4gICAgICAgIH19XG4gICAgICAgIHJlZj17bWVudVJlZn1cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtpc0VkaXRhYmxlID8gJ2ljb24nIDogJyd9IC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICBhbmNob3JFbGVtLFxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBBZGRCbG9ja0hhbmRsZVBsdWdpbih7XG4gIGFuY2hvckVsZW0gPSBkb2N1bWVudC5ib2R5LFxufToge1xuICBhbmNob3JFbGVtPzogSFRNTEVsZW1lbnRcbn0pOiBKU1guRWxlbWVudCB7XG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpXG4gIHJldHVybiB1c2VBZGRCbG9ja0hhbmRsZShlZGl0b3IsIGFuY2hvckVsZW0sIGVkaXRvci5fZWRpdGFibGUpXG59XG4iXSwibmFtZXMiOlsiQWRkQmxvY2tIYW5kbGVQbHVnaW4iLCJTUEFDRSIsIkFERF9CTE9DS19NRU5VX0NMQVNTTkFNRSIsIkRvd253YXJkIiwiVXB3YXJkIiwiSW5kZXRlcm1pbmF0ZSIsInByZXZJbmRleCIsIkluZmluaXR5IiwiZ2V0Q3VycmVudEluZGV4Iiwia2V5c0xlbmd0aCIsIk1hdGgiLCJmbG9vciIsImdldEJsb2NrRWxlbWVudCIsImFuY2hvckVsZW0iLCJlZGl0b3IiLCJldmVudCIsInVzZUVkZ2VBc0RlZmF1bHQiLCJob3Jpem9udGFsT2Zmc2V0IiwiYW5jaG9yRWxlbWVudFJlY3QiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJ0b3BMZXZlbE5vZGVLZXlzIiwiZ2V0VG9wTGV2ZWxOb2RlS2V5cyIsImJsb2NrRWxlbSIsImJsb2NrTm9kZSIsInNob3VsZFJlbW92ZSIsImdldEVkaXRvclN0YXRlIiwicmVhZCIsImZpcnN0Tm9kZSIsImxhc3ROb2RlIiwiZ2V0RWxlbWVudEJ5S2V5IiwibGVuZ3RoIiwiZmlyc3ROb2RlUmVjdCIsImxhc3ROb2RlUmVjdCIsInkiLCJ0b3AiLCJib3R0b20iLCJpbmRleCIsImRpcmVjdGlvbiIsImtleSIsImVsZW0iLCJwb2ludCIsIlBvaW50IiwieCIsImRvbVJlY3QiLCJSZWN0IiwiZnJvbURPTSIsIm1hcmdpbkJvdHRvbSIsIm1hcmdpblRvcCIsImdldENvbGxhcHNlZE1hcmdpbnMiLCJyZWN0IiwiZ2VuZXJhdGVOZXdSZWN0IiwibGVmdCIsInJpZ2h0IiwicmVhc29uIiwiaXNPbkJvdHRvbVNpZGUiLCJpc09uVG9wU2lkZSIsInJlc3VsdCIsImNvbnRhaW5zIiwiJGdldE5vZGVCeUtleSIsImdldFR5cGUiLCJnZXRUZXh0Q29udGVudCIsInVzZUFkZEJsb2NrSGFuZGxlIiwiaXNFZGl0YWJsZSIsInNjcm9sbGVyRWxlbSIsInBhcmVudEVsZW1lbnQiLCJtZW51UmVmIiwidXNlUmVmIiwiZW1wdHlCbG9ja0VsZW0iLCJzZXRFbXB0eUJsb2NrRWxlbSIsInVzZVN0YXRlIiwidXNlRWZmZWN0Iiwib25Eb2N1bWVudE1vdXNlTW92ZSIsInRhcmdldCIsImlzSFRNTEVsZW1lbnQiLCJkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0iLCJwYWdlWCIsInBhZ2VZIiwiaG9yaXpvbnRhbEJ1ZmZlciIsInZlcnRpY2FsQnVmZmVyIiwiYWRqdXN0ZWRUb3AiLCJ3aW5kb3ciLCJzY3JvbGxZIiwiYWRqdXN0ZWRCb3R0b20iLCJpc09uSGFuZGxlRWxlbWVudCIsIl9lbXB0eUJsb2NrRWxlbSIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjdXJyZW50Iiwic2V0SGFuZGxlUG9zaXRpb24iLCJoYW5kbGVBZGRDbGljayIsInVzZUNhbGxiYWNrIiwibm9kZSIsInVwZGF0ZSIsIiRnZXROZWFyZXN0Tm9kZUZyb21ET01Ob2RlIiwiZm9jdXMiLCJzZWxlY3QiLCJzZXRUaW1lb3V0IiwiZGlzcGF0Y2hDb21tYW5kIiwiRU5BQkxFX1NMQVNIX01FTlVfQ09NTUFORCIsInN0b3BQcm9wYWdhdGlvbiIsInByZXZlbnREZWZhdWx0IiwiY3JlYXRlUG9ydGFsIiwiUmVhY3QiLCJGcmFnbWVudCIsImJ1dHRvbiIsImNsYXNzTmFtZSIsIm9uQ2xpY2siLCJyZWYiLCJ0eXBlIiwiZGl2IiwiYm9keSIsInVzZUxleGljYWxDb21wb3NlckNvbnRleHQiLCJfZWRpdGFibGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OzsrQkF3UmdCQTs7O2VBQUFBOzs7d0NBclIwQjt5QkFNbkM7K0RBQ2dCOzBCQUVNO3VCQUVDO3VCQUNSO3NCQUNEOzRDQUNxQjtxQ0FDTjtxQ0FDQTttQ0FDRjttQ0FDQTtRQUMzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVQLE1BQU1DLFFBQVEsQ0FBQztBQUNmLE1BQU1DLDJCQUEyQjtBQUVqQyxNQUFNQyxXQUFXO0FBQ2pCLE1BQU1DLFNBQVMsQ0FBQztBQUNoQixNQUFNQyxnQkFBZ0I7QUFFdEIsSUFBSUMsWUFBWUM7QUFFaEIsU0FBU0MsZ0JBQWdCQyxVQUFrQjtJQUN6QyxJQUFJQSxlQUFlLEdBQUc7UUFDcEIsT0FBT0Y7SUFDVDtJQUNBLElBQUlELGFBQWEsS0FBS0EsWUFBWUcsWUFBWTtRQUM1QyxPQUFPSDtJQUNUO0lBRUEsT0FBT0ksS0FBS0MsS0FBSyxDQUFDRixhQUFhO0FBQ2pDO0FBRUEsU0FBU0csZ0JBQ1BDLFVBQXVCLEVBQ3ZCQyxNQUFxQixFQUNyQkMsS0FBaUIsRUFDakJDLG1CQUFtQixLQUFLLEVBQ3hCQyxtQkFBbUIsQ0FBQztJQUtwQixNQUFNQyxvQkFBb0JMLFdBQVdNLHFCQUFxQjtJQUMxRCxNQUFNQyxtQkFBbUJDLElBQUFBLHdDQUFtQixFQUFDUDtJQUU3QyxJQUFJUSxZQUFnQztJQUNwQyxJQUFJQyxZQUFnQztJQUNwQyxJQUFJQyxlQUFlO0lBRW5CLGtFQUFrRTtJQUNsRVYsT0FBT1csY0FBYyxHQUFHQyxJQUFJLENBQUM7UUFDM0IsSUFBSVYsa0JBQWtCO1lBQ3BCLE1BQU0sQ0FBQ1csV0FBV0MsU0FB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
284
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3BsdWdpbnMvaGFuZGxlcy9BZGRCbG9ja0hhbmRsZVBsdWdpbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5pbXBvcnQgdHlwZSB7IFBhcmFncmFwaE5vZGUgfSBmcm9tICdsZXhpY2FsJ1xuXG5pbXBvcnQgeyB1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IH0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbENvbXBvc2VyQ29udGV4dCdcbmltcG9ydCB7ICRjcmVhdGVQYXJhZ3JhcGhOb2RlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB7ICRnZXROb2RlQnlLZXksIHR5cGUgTGV4aWNhbEVkaXRvciwgdHlwZSBMZXhpY2FsTm9kZSB9IGZyb20gJ2xleGljYWwnXG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSdcblxuaW1wb3J0IHsgaXNIVE1MRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2d1YXJkJ1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9wb2ludCdcbmltcG9ydCB7IFJlY3QgfSBmcm9tICcuLi8uLi8uLi91dGlscy9yZWN0J1xuaW1wb3J0IHsgRU5BQkxFX1NMQVNIX01FTlVfQ09NTUFORCB9IGZyb20gJy4uLy4uL1NsYXNoTWVudS9MZXhpY2FsVHlwZWFoZWFkTWVudVBsdWdpbidcbmltcG9ydCB7IGdldENvbGxhcHNlZE1hcmdpbnMgfSBmcm9tICcuLi91dGlscy9nZXRDb2xsYXBzZWRNYXJnaW5zJ1xuaW1wb3J0IHsgZ2V0VG9wTGV2ZWxOb2RlS2V5cyB9IGZyb20gJy4uL3V0aWxzL2dldFRvcExldmVsTm9kZUtleXMnXG5pbXBvcnQgeyBpc09uSGFuZGxlRWxlbWVudCB9IGZyb20gJy4uL3V0aWxzL2lzT25IYW5kbGVFbGVtZW50J1xuaW1wb3J0IHsgc2V0SGFuZGxlUG9zaXRpb24gfSBmcm9tICcuLi91dGlscy9zZXRIYW5kbGVQb3NpdGlvbidcbmltcG9ydCAnLi9pbmRleC5zY3NzJ1xuXG5jb25zdCBTUEFDRSA9IC0yNFxuY29uc3QgQUREX0JMT0NLX01FTlVfQ0xBU1NOQU1FID0gJ2FkZC1ibG9jay1tZW51J1xuXG5jb25zdCBEb3dud2FyZCA9IDFcbmNvbnN0IFVwd2FyZCA9IC0xXG5jb25zdCBJbmRldGVybWluYXRlID0gMFxuXG5sZXQgcHJldkluZGV4ID0gSW5maW5pdHlcblxuZnVuY3Rpb24gZ2V0Q3VycmVudEluZGV4KGtleXNMZW5ndGg6IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChrZXlzTGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIEluZmluaXR5XG4gIH1cbiAgaWYgKHByZXZJbmRleCA+PSAwICYmIHByZXZJbmRleCA8IGtleXNMZW5ndGgpIHtcbiAgICByZXR1cm4gcHJldkluZGV4XG4gIH1cblxuICByZXR1cm4gTWF0aC5mbG9vcihrZXlzTGVuZ3RoIC8gMilcbn1cblxuZnVuY3Rpb24gZ2V0QmxvY2tFbGVtZW50KFxuICBhbmNob3JFbGVtOiBIVE1MRWxlbWVudCxcbiAgZWRpdG9yOiBMZXhpY2FsRWRpdG9yLFxuICBldmVudDogTW91c2VFdmVudCxcbiAgdXNlRWRnZUFzRGVmYXVsdCA9IGZhbHNlLFxuICBob3Jpem9udGFsT2Zmc2V0ID0gMCxcbik6IHtcbiAgYmxvY2tFbGVtOiBIVE1MRWxlbWVudCB8IG51bGxcbiAgYmxvY2tOb2RlOiBMZXhpY2FsTm9kZSB8IG51bGxcbn0ge1xuICBjb25zdCBhbmNob3JFbGVtZW50UmVjdCA9IGFuY2hvckVsZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgY29uc3QgdG9wTGV2ZWxOb2RlS2V5cyA9IGdldFRvcExldmVsTm9kZUtleXMoZWRpdG9yKVxuXG4gIGxldCBibG9ja0VsZW06IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGxcbiAgbGV0IGJsb2NrTm9kZTogTGV4aWNhbE5vZGUgfCBudWxsID0gbnVsbFxuXG4gIC8vIFJldHVybiBudWxsIGlmIG1hdGNoaW5nIGJsb2NrIGVsZW1lbnQgaXMgdGhlIGZpcnN0IG9yIGxhc3Qgbm9kZVxuICBlZGl0b3IuZ2V0RWRpdG9yU3RhdGUoKS5yZWFkKCgpID0+IHtcbiAgICBpZiAodXNlRWRnZUFzRGVmYXVsdCkge1xuICAgICAgY29uc3QgW2ZpcnN0Tm9kZSwgbGFzdE5vZGVdID0gW1xuICAgICAgICBlZGl0b3IuZ2V0RWxlbWVudEJ5S2V5KHRvcExldmVsTm9kZUtleXNbMF0pLFxuICAgICAgICBlZGl0b3IuZ2V0RWxlbWVudEJ5S2V5KHRvcExldmVsTm9kZUtleXNbdG9wTGV2ZWxOb2RlS2V5cy5sZW5ndGggLSAxXSksXG4gICAgICBdXG5cbiAgICAgIGNvbnN0IFtmaXJzdE5vZGVSZWN0LCBsYXN0Tm9kZVJlY3RdID0gW1xuICAgICAgICBmaXJzdE5vZGU/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxuICAgICAgICBsYXN0Tm9kZT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksXG4gICAgICBdXG5cbiAgICAgIGlmIChmaXJzdE5vZGVSZWN0ICYmIGxhc3ROb2RlUmVjdCkge1xuICAgICAgICBpZiAoZXZlbnQueSA8IGZpcnN0Tm9kZVJlY3QudG9wKSB7XG4gICAgICAgICAgYmxvY2tFbGVtID0gZmlyc3ROb2RlXG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQueSA+IGxhc3ROb2RlUmVjdC5ib3R0b20pIHtcbiAgICAgICAgICBibG9ja0VsZW0gPSBsYXN0Tm9kZVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGJsb2NrRWxlbSkge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBibG9ja0VsZW06IG51bGwsXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmluZCBtYXRjaGluZyBibG9jayBlbGVtZW50XG4gICAgbGV0IGluZGV4ID0gZ2V0Q3VycmVudEluZGV4KHRvcExldmVsTm9kZUtleXMubGVuZ3RoKVxuICAgIGxldCBkaXJlY3Rpb24gPSBJbmRldGVybWluYXRlXG5cbiAgICB3aGlsZSAoaW5kZXggPj0gMCAmJiBpbmRleCA8IHRvcExldmVsTm9kZUtleXMubGVuZ3RoKSB7XG4gICAgICBjb25zdCBrZXkgPSB0b3BMZXZlbE5vZGVLZXlzW2luZGV4XVxuICAgICAgY29uc3QgZWxlbSA9IGVkaXRvci5nZXRFbGVtZW50QnlLZXkoa2V5KVxuICAgICAgaWYgKGVsZW0gPT09IG51bGwpIHtcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBvaW50ID0gbmV3IFBvaW50KGV2ZW50LnggKyBob3Jpem9udGFsT2Zmc2V0LCBldmVudC55KVxuICAgICAgY29uc3QgZG9tUmVjdCA9IFJlY3QuZnJvbURPTShlbGVtKVxuICAgICAgY29uc3QgeyBtYXJnaW5Cb3R0b20sIG1hcmdpblRvcCB9ID0gZ2V0Q29sbGFwc2VkTWFyZ2lucyhlbGVtKVxuXG4gICAgICBjb25zdCByZWN0ID0gZG9tUmVjdC5nZW5lcmF0ZU5ld1JlY3Qoe1xuICAgICAgICBib3R0b206IGRvbVJlY3QuYm90dG9tICsgbWFyZ2luQm90dG9tLFxuICAgICAgICBsZWZ0OiBhbmNob3JFbGVtZW50UmVjdC5sZWZ0LFxuICAgICAgICByaWdodDogYW5jaG9yRWxlbWVudFJlY3QucmlnaHQsXG4gICAgICAgIHRvcDogZG9tUmVjdC50b3AgLSBtYXJnaW5Ub3AsXG4gICAgICB9KVxuXG4gICAgICBjb25zdCB7XG4gICAgICAgIHJlYXNvbjogeyBpc09uQm90dG9tU2lkZSwgaXNPblRvcFNpZGUgfSxcbiAgICAgICAgcmVzdWx0LFxuICAgICAgfSA9IHJlY3QuY29udGFpbnMocG9pbnQpXG5cbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgYmxvY2tFbGVtID0gZWxlbVxuICAgICAgICBibG9ja05vZGUgPSAkZ2V0Tm9kZUJ5S2V5KGtleSlcbiAgICAgICAgcHJldkluZGV4ID0gaW5kZXhcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgaWYgKGRpcmVjdGlvbiA9PT0gSW5kZXRlcm1pbmF0ZSkge1xuICAgICAgICBpZiAoaXNPblRvcFNpZGUpIHtcbiAgICAgICAgICBkaXJlY3Rpb24gPSBVcHdhcmRcbiAgICAgICAgfSBlbHNlIGlmIChpc09uQm90dG9tU2lkZSkge1xuICAgICAgICAgIGRpcmVjdGlvbiA9IERvd253YXJkXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gc3RvcCBzZWFyY2ggYmxvY2sgZWxlbWVudFxuICAgICAgICAgIGRpcmVjdGlvbiA9IEluZmluaXR5XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW5kZXggKz0gZGlyZWN0aW9uXG4gICAgfVxuICB9KVxuXG4gIHJldHVybiB7XG4gICAgYmxvY2tFbGVtLFxuICAgIGJsb2NrTm9kZSxcbiAgfVxufVxuXG5mdW5jdGlvbiB1c2VBZGRCbG9ja0hhbmRsZShcbiAgZWRpdG9yOiBMZXhpY2FsRWRpdG9yLFxuICBhbmNob3JFbGVtOiBIVE1MRWxlbWVudCxcbiAgaXNFZGl0YWJsZTogYm9vbGVhbixcbik6IEpTWC5FbGVtZW50IHtcbiAgY29uc3Qgc2Nyb2xsZXJFbGVtID0gYW5jaG9yRWxlbS5wYXJlbnRFbGVtZW50XG5cbiAgY29uc3QgbWVudVJlZiA9IHVzZVJlZjxIVE1MQnV0dG9uRWxlbWVudD4obnVsbClcbiAgY29uc3QgW2hvdmVyZWRFbGVtZW50LCBzZXRIb3ZlcmVkRWxlbWVudF0gPSB1c2VTdGF0ZTx7XG4gICAgZWxlbTogSFRNTEVsZW1lbnRcbiAgICBub2RlOiBMZXhpY2FsTm9kZVxuICB9IHwgbnVsbD4obnVsbClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZ1bmN0aW9uIG9uRG9jdW1lbnRNb3VzZU1vdmUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldFxuICAgICAgaWYgKCFpc0hUTUxFbGVtZW50KHRhcmdldCkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGxldCBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSAwXG4gICAgICAvLyBDYWxjdWxhdGUgZGlzdGFuY2UgYmV0d2VlbiBzY3JvbGxlckVsZW0gYW5kIHRhcmdldCBpZiB0YXJnZXQgaXMgbm90IGluIHNjcm9sbGVyRWxlbVxuICAgICAgaWYgKHNjcm9sbGVyRWxlbSAmJiAhc2Nyb2xsZXJFbGVtLmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgY29uc3QgeyBib3R0b20sIGxlZnQsIHJpZ2h0LCB0b3AgfSA9IHNjcm9sbGVyRWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgICAgICBjb25zdCB7IHBhZ2VYLCBwYWdlWSB9ID0gZXZlbnRcbiAgICAgICAgY29uc3QgaG9yaXpvbnRhbEJ1ZmZlciA9IDUwXG4gICAgICAgIGNvbnN0IHZlcnRpY2FsQnVmZmVyID0gMjVcbiAgICAgICAgY29uc3QgYWRqdXN0ZWRUb3AgPSB0b3AgKyB3aW5kb3cuc2Nyb2xsWVxuICAgICAgICBjb25zdCBhZGp1c3RlZEJvdHRvbSA9IGJvdHRvbSArIHdpbmRvdy5zY3JvbGxZXG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIHBhZ2VZIDwgYWRqdXN0ZWRUb3AgLSB2ZXJ0aWNhbEJ1ZmZlciB8fFxuICAgICAgICAgIHBhZ2VZID4gYWRqdXN0ZWRCb3R0b20gKyB2ZXJ0aWNhbEJ1ZmZlciB8fFxuICAgICAgICAgIHBhZ2VYIDwgbGVmdCAtIGhvcml6b250YWxCdWZmZXIgfHxcbiAgICAgICAgICBwYWdlWCA+IHJpZ2h0ICsgaG9yaXpvbnRhbEJ1ZmZlclxuICAgICAgICApIHtcbiAgICAgICAgICBzZXRIb3ZlcmVkRWxlbWVudChudWxsKVxuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyBpcyB1c2VkIHRvIGFsbG93IHRoZSBfZW1wdHlCbG9ja0VsZW0gdG8gYmUgZm91bmQgd2hlbiB0aGUgbW91c2UgaXMgaW4gdGhlXG4gICAgICAgIC8vIGJ1ZmZlciB6b25lIGFyb3VuZCB0aGUgc2Nyb2xsZXJFbGVtLlxuICAgICAgICBpZiAocGFnZVggPCBsZWZ0IHx8IHBhZ2VYID4gcmlnaHQpIHtcbiAgICAgICAgICBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSBwYWdlWCA8IGxlZnQgPyBwYWdlWCAtIGxlZnQgOiBwYWdlWCAtIHJpZ2h0XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGlzT25IYW5kbGVFbGVtZW50KHRhcmdldCwgQUREX0JMT0NLX01FTlVfQ0xBU1NOQU1FKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGNvbnN0IHsgYmxvY2tFbGVtOiBfZW1wdHlCbG9ja0VsZW0sIGJsb2NrTm9kZSB9ID0gZ2V0QmxvY2tFbGVtZW50KFxuICAgICAgICBhbmNob3JFbGVtLFxuICAgICAgICBlZGl0b3IsXG4gICAgICAgIGV2ZW50LFxuICAgICAgICBmYWxzZSxcbiAgICAgICAgLWRpc3RhbmNlRnJvbVNjcm9sbGVyRWxlbSxcbiAgICAgIClcbiAgICAgIGlmICghX2VtcHR5QmxvY2tFbGVtKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgc2V0SG92ZXJlZEVsZW1lbnQoe1xuICAgICAgICBlbGVtOiBfZW1wdHlCbG9ja0VsZW0sXG4gICAgICAgIG5vZGU6IGJsb2NrTm9kZSxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gU2luY2UgdGhlIGRyYWdnYWJsZUJsb2NrRWxlbSBpcyBvdXRzaWRlIHRoZSBhY3R1YWwgZWRpdG9yLCB3ZSBuZWVkIHRvIGxpc3RlbiB0byB0aGUgZG9jdW1lbnRcbiAgICAvLyB0byBiZSBhYmxlIHRvIGRldGVjdCB3aGVuIHRoZSBtb3VzZSBpcyBvdXRzaWRlIHRoZSBlZGl0b3IgYW5kIHJlc3BlY3QgYSBidWZmZXIgYXJvdW5kXG4gICAgLy8gdGhlIHNjcm9sbGVyRWxlbSB0byBhdm9pZCB0aGUgZHJhZ2dhYmxlQmxvY2tFbGVtIGRpc2FwcGVhcmluZyB0b28gZWFybHkuXG4gICAgZG9jdW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIG9uRG9jdW1lbnRNb3VzZU1vdmUpXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIG9uRG9jdW1lbnRNb3VzZU1vdmUpXG4gICAgfVxuICB9LCBbc2Nyb2xsZXJFbGVtLCBhbmNob3JFbGVtLCBlZGl0b3JdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKG1lbnVSZWYuY3VycmVudCAmJiBob3ZlcmVkRWxlbWVudD8ubm9kZSkge1xuICAgICAgZWRpdG9yLmdldEVkaXRvclN0YXRlKCkucmVhZCgoKSA9PiB7XG4gICAgICAgIC8vIENoZWNrIGlmIGJsb2NrTm9kZSBpcyBhbiBlbXB0eSB0ZXh0IG5vZGVcbiAgICAgICAgbGV0IGlzRW1wdHlQYXJhZ3JhcGggPSB0cnVlXG4gICAgICAgIGlmIChcbiAgICAgICAgICBob3ZlcmVkRWxlbWVudC5ub2RlLmdldFR5cGUoKSAhPT0gJ3BhcmFncmFwaCcgfHxcbiAgICAgICAgICBob3ZlcmVkRWxlbWVudC5ub2RlLmdldFRleHRDb250ZW50KCkgIT09ICcnXG4gICAgICAgICkge1xuICAgICAgICAgIGlzRW1wdHlQYXJhZ3JhcGggPSBmYWxzZVxuICAgICAgICB9XG5cbiAgICAgICAgc2V0SGFuZGxlUG9zaXRpb24oXG4gICAgICAgICAgaG92ZXJlZEVsZW1lbnQ/LmVsZW0sXG4gICAgICAgICAgbWVudVJlZi5jdXJyZW50LFxuICAgICAgICAgIGFuY2hvckVsZW0sXG4gICAgICAgICAgaXNFbXB0eVBhcmFncmFwaCA/IFNQQUNFIDogU1BBQ0UgLSAyMCxcbiAgICAgICAgKVxuICAgICAgfSlcbiAgICB9XG4gIH0sIFthbmNob3JFbGVtLCBob3ZlcmVkRWxlbWVudCwgZWRpdG9yXSlcblxuICBjb25zdCBoYW5kbGVBZGRDbGljayA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgbGV0IGhvdmVyZWRFbGVtZW50VG9Vc2UgPSBob3ZlcmVkRWxlbWVudFxuICAgICAgaWYgKCFob3ZlcmVkRWxlbWVudFRvVXNlPy5ub2RlKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAxLiBVcGRhdGUgaG92ZXJlZEVsZW1lbnQubm9kZSB0byBhIG5ldyBwYXJhZ3JhcGggbm9kZSBpZiB0aGUgaG92ZXJlZEVsZW1lbnQubm9kZSBpcyBub3QgYSBwYXJhZ3JhcGggbm9kZVxuICAgICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICAgIC8vIENoZWNrIGlmIGJsb2NrTm9kZSBpcyBhbiBlbXB0eSB0ZXh0IG5vZGVcbiAgICAgICAgbGV0IGlzRW1wdHlQYXJhZ3JhcGggPSB0cnVlXG4gICAgICAgIGlmIChcbiAgICAgICAgICBob3ZlcmVkRWxlbWVudFRvVXNlLm5vZGUuZ2V0VHlwZSgpICE9PSAncGFyYWdyYXBoJyB8fFxuICAgICAgICAgIGhvdmVyZWRFbGVtZW50VG9Vc2Uubm9kZS5nZXRUZXh0Q29udGVudCgpICE9PSAnJ1xuICAgICAgICApIHtcbiAgICAgICAgICBpc0VtcHR5UGFyYWdyYXBoID0gZmFsc2VcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaXNFbXB0eVBhcmFncmFwaCkge1xuICAgICAgICAgIGNvbnN0IG5ld1BhcmFncmFwaCA9ICRjcmVhdGVQYXJhZ3JhcGhOb2RlKClcbiAgICAgICAgICBob3ZlcmVkRWxlbWVudFRvVXNlLm5vZGUuaW5zZXJ0QWZ0ZXIobmV3UGFyYWdyYXBoKVxuXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBob3ZlcmVkRWxlbWVudFRvVXNlID0ge1xuICAgICAgICAgICAgICBlbGVtOiBlZGl0b3IuZ2V0RWxlbWVudEJ5S2V5KG5ld1BhcmFncmFwaC5nZXRLZXkoKSksXG4gICAgICAgICAgICAgIG5vZGU6IG5ld1BhcmFncmFwaCxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNldEhvdmVyZWRFbGVtZW50KGhvdmVyZWRFbGVtZW50VG9Vc2UpXG4gICAgICAgICAgfSwgMClcbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgICAgLy8gMi4gRm9jdXMgb24gdGhlIG5ldyBwYXJhZ3JhcGggbm9kZVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGVkaXRvci51cGRhdGUoKCkgPT4ge1xuICAgICAgICAgIGVkaXRvci5mb2N1cygpXG5cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBob3ZlcmVkRWxlbWVudFRvVXNlLm5vZGUgJiZcbiAgICAgICAgICAgICdzZWxlY3QnIGluIGhvdmVyZWRFbGVtZW50VG9Vc2Uubm9kZSAmJlxuICAgICAgICAgICAgdHlwZW9mIGhvdmVyZWRFbGVtZW50VG9Vc2Uubm9kZS5zZWxlY3QgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGhvdmVyZWRFbGVtZW50VG9Vc2Uubm9kZS5zZWxlY3QoKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0sIDEpXG5cbiAgICAgIC8vIE1ha2Ugc3VyZSB0aGlzIGlzIGNhbGxlZCBBRlRFUiB0aGUgZm9jdXNpbmcgaGFzIGJlZW4gcHJvY2Vzc2VkIGJ5IHRoZSBicm93c2VyXG4gICAgICAvLyBPdGhlcndpc2UsIHRoaXMgd29uJ3Qgd29ya1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGVkaXRvci5kaXNwYXRjaENvbW1hbmQoRU5BQkxFX1NMQVNIX01FTlVfQ09NTUFORCwge1xuICAgICAgICAgIG5vZGU6IGhvdmVyZWRFbGVtZW50VG9Vc2Uubm9kZSBhcyBQYXJhZ3JhcGhOb2RlLFxuICAgICAgICB9KVxuICAgICAgfSwgMilcblxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICB9LFxuICAgIFtlZGl0b3IsIGhvdmVyZWRFbGVtZW50XSxcbiAgKVxuXG4gIHJldHVybiBjcmVhdGVQb3J0YWwoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzc05hbWU9XCJpY29uIGFkZC1ibG9jay1tZW51XCJcbiAgICAgICAgb25DbGljaz17KGV2ZW50KSA9PiB7XG4gICAgICAgICAgaGFuZGxlQWRkQ2xpY2soZXZlbnQpXG4gICAgICAgIH19XG4gICAgICAgIHJlZj17bWVudVJlZn1cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtpc0VkaXRhYmxlID8gJ2ljb24nIDogJyd9IC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICBhbmNob3JFbGVtLFxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBBZGRCbG9ja0hhbmRsZVBsdWdpbih7XG4gIGFuY2hvckVsZW0gPSBkb2N1bWVudC5ib2R5LFxufToge1xuICBhbmNob3JFbGVtPzogSFRNTEVsZW1lbnRcbn0pOiBKU1guRWxlbWVudCB7XG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpXG4gIHJldHVybiB1c2VBZGRCbG9ja0hhbmRsZShlZGl0b3IsIGFuY2hvckVsZW0sIGVkaXRvci5fZWRpdGFibGUpXG59XG4iXSwibmFtZXMiOlsiQWRkQmxvY2tIYW5kbGVQbHVnaW4iLCJTUEFDRSIsIkFERF9CTE9DS19NRU5VX0NMQVNTTkFNRSIsIkRvd253YXJkIiwiVXB3YXJkIiwiSW5kZXRlcm1pbmF0ZSIsInByZXZJbmRleCIsIkluZmluaXR5IiwiZ2V0Q3VycmVudEluZGV4Iiwia2V5c0xlbmd0aCIsIk1hdGgiLCJmbG9vciIsImdldEJsb2NrRWxlbWVudCIsImFuY2hvckVsZW0iLCJlZGl0b3IiLCJldmVudCIsInVzZUVkZ2VBc0RlZmF1bHQiLCJob3Jpem9udGFsT2Zmc2V0IiwiYW5jaG9yRWxlbWVudFJlY3QiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJ0b3BMZXZlbE5vZGVLZXlzIiwiZ2V0VG9wTGV2ZWxOb2RlS2V5cyIsImJsb2NrRWxlbSIsImJsb2NrTm9kZSIsImdldEVkaXRvclN0YXRlIiwicmVhZCIsImZpcnN0Tm9kZSIsImxhc3ROb2RlIiwiZ2V0RWxlbWVudEJ5S2V5IiwibGVuZ3RoIiwiZmlyc3ROb2RlUmVjdCIsImxhc3ROb2RlUmVjdCIsInkiLCJ0b3AiLCJib3R0b20iLCJpbmRleCIsImRpcmVjdGlvbiIsImtleSIsImVsZW0iLCJwb2ludCIsIlBvaW50IiwieCIsImRvbVJlY3QiLCJSZWN0IiwiZnJvbURPTSIsIm1hcmdpbkJvdHRvbSIsIm1hcmdpblRvcCIsImdldENvbGxhcHNlZE1hcmdpbnMiLCJyZWN0IiwiZ2VuZXJhdGVOZXdSZWN0IiwibGVmdCIsInJpZ2h0IiwicmVhc29uIiwiaXNPbkJvdHRvbVNpZGUiLCJpc09uVG9wU2lkZSIsInJlc3VsdCIsImNvbnRhaW5zIiwiJGdldE5vZGVCeUtleSIsInVzZUFkZEJsb2NrSGFuZGxlIiwiaXNFZGl0YWJsZSIsInNjcm9sbGVyRWxlbSIsInBhcmVudEVsZW1lbnQiLCJtZW51UmVmIiwidXNlUmVmIiwiaG92ZXJlZEVsZW1lbnQiLCJzZXRIb3ZlcmVkRWxlbWVudCIsInVzZVN0YXRlIiwidXNlRWZmZWN0Iiwib25Eb2N1bWVudE1vdXNlTW92ZSIsInRhcmdldCIsImlzSFRNTEVsZW1lbnQiLCJkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0iLCJwYWdlWCIsInBhZ2VZIiwiaG9yaXpvbnRhbEJ1ZmZlciIsInZlcnRpY2FsQnVmZmVyIiwiYWRqdXN0ZWRUb3AiLCJ3aW5kb3ciLCJzY3JvbGxZIiwiYWRqdXN0ZWRCb3R0b20iLCJpc09uSGFuZGxlRWxlbWVudCIsIl9lbXB0eUJsb2NrRWxlbSIsIm5vZGUiLCJkb2N1bWVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiY3VycmVudCIsImlzRW1wdHlQYXJhZ3JhcGgiLCJnZXRUeXBlIiwiZ2V0VGV4dENvbnRlbnQiLCJzZXRIYW5kbGVQb3NpdGlvbiIsImhhbmRsZUFkZENsaWNrIiwidXNlQ2FsbGJhY2siLCJob3ZlcmVkRWxlbWVudFRvVXNlIiwidXBkYXRlIiwibmV3UGFyYWdyYXBoIiwiJGNyZWF0ZVBhcmFncmFwaE5vZGUiLCJpbnNlcnRBZnRlciIsInNldFRpbWVvdXQiLCJnZXRLZXkiLCJmb2N1cyIsInNlbGVjdCIsImRpc3BhdGNoQ29tbWFuZCIsIkVOQUJMRV9TTEFTSF9NRU5VX0NPTU1BTkQiLCJzdG9wUHJvcGFnYXRpb24iLCJwcmV2ZW50RGVmYXVsdCIsImNyZWF0ZVBvcnRhbCIsIlJlYWN0IiwiRnJhZ21lbnQiLCJidXR0b24iLCJjbGFzc05hbWUiLCJvbkNsaWNrIiwicmVmIiwidHlwZSIsImRpdiIsImJvZHkiLCJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiX2VkaXRhYmxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7K0JBMFRnQkE7OztlQUFBQTs7O3dDQXZUMEI7eUJBQ0w7K0RBRWQ7MEJBRU07dUJBRUM7dUJBQ1I7c0JBQ0Q7NENBQ3FCO3FDQUNOO3FDQUNBO21DQUNGO21DQUNBO1FBQzNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFUCxNQUFNQyxRQUFRLENBQUM7QUFDZixNQUFNQywyQkFBMkI7QUFFakMsTUFBTUMsV0FBVztBQUNqQixNQUFNQyxTQUFTLENBQUM7QUFDaEIsTUFBTUMsZ0JBQWdCO0FBRXRCLElBQUlDLFlBQVlDO0FBRWhCLFNBQVNDLGdCQUFnQkMsVUFBa0I7SUFDekMsSUFBSUEsZUFBZSxHQUFHO1FBQ3BCLE9BQU9GO0lBQ1Q7SUFDQSxJQUFJRCxhQUFhLEtBQUtBLFlBQVlHLFlBQVk7UUFDNUMsT0FBT0g7SUFDVDtJQUVBLE9B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
@@ -1,5 +1,3 @@
1
- @import 'payload/scss';
2
-
3
1
  .add-block-menu {
4
2
  all: unset; // reset all default button styles
5
3
  border-radius: 4px;
@@ -44,7 +44,9 @@ function _interop_require_wildcard(obj, nodeInterop) {
44
44
  if (cache && cache.has(obj)) {
45
45
  return cache.get(obj);
46
46
  }
47
- var newObj = {};
47
+ var newObj = {
48
+ __proto__: null
49
+ };
48
50
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
49
51
  for(var key in obj){
50
52
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -336,4 +338,4 @@ function DraggableBlockPlugin({ anchorElem = document.body }) {
336
338
  return useDraggableBlockMenu(editor, anchorElem, editor._editable);
337
339
  }
338
340
 
339
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3BsdWdpbnMvaGFuZGxlcy9EcmFnZ2FibGVCbG9ja1BsdWdpbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5pbXBvcnQgdHlwZSB7IExleGljYWxFZGl0b3IgfSBmcm9tICdsZXhpY2FsJ1xuaW1wb3J0IHR5cGUgeyBEcmFnRXZlbnQgYXMgUmVhY3REcmFnRXZlbnQgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCB9IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxDb21wb3NlckNvbnRleHQnXG5pbXBvcnQgeyBldmVudEZpbGVzIH0gZnJvbSAnQGxleGljYWwvcmljaC10ZXh0J1xuaW1wb3J0IHsgJGdldE5lYXJlc3ROb2RlRnJvbURPTU5vZGUsICRnZXROb2RlQnlLZXkgfSBmcm9tICdsZXhpY2FsJ1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5cbmltcG9ydCB7IGlzSFRNTEVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ndWFyZCdcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvcG9pbnQnXG5pbXBvcnQgeyBnZXRUb3BMZXZlbE5vZGVLZXlzIH0gZnJvbSAnLi4vdXRpbHMvZ2V0VG9wTGV2ZWxOb2RlS2V5cydcbmltcG9ydCB7IGlzT25IYW5kbGVFbGVtZW50IH0gZnJvbSAnLi4vdXRpbHMvaXNPbkhhbmRsZUVsZW1lbnQnXG5pbXBvcnQgeyBzZXRIYW5kbGVQb3NpdGlvbiB9IGZyb20gJy4uL3V0aWxzL3NldEhhbmRsZVBvc2l0aW9uJ1xuaW1wb3J0IHsgZ2V0Qm91bmRpbmdDbGllbnRSZWN0V2l0aG91dFRyYW5zZm9ybSB9IGZyb20gJy4vZ2V0Qm91bmRpbmdSZWN0V2l0aG91dFRyYW5zZm9ybSdcbmltcG9ydCB7IGdldE5vZGVDbG9zZVRvUG9pbnQgfSBmcm9tICcuL2dldE5vZGVDbG9zZVRvUG9pbnQnXG5pbXBvcnQgJy4vaW5kZXguc2NzcydcbmltcG9ydCB7IHNldFRhcmdldExpbmUgfSBmcm9tICcuL3NldFRhcmdldExpbmUnXG5cbmNvbnN0IFNQQUNFID0gLTI0XG5jb25zdCBEUkFHR0FCTEVfQkxPQ0tfTUVOVV9DTEFTU05BTUUgPSAnZHJhZ2dhYmxlLWJsb2NrLW1lbnUnXG5jb25zdCBEUkFHX0RBVEFfRk9STUFUID0gJ2FwcGxpY2F0aW9uL3gtbGV4aWNhbC1kcmFnLWJsb2NrJ1xuXG5sZXQgcHJldkluZGV4ID0gSW5maW5pdHlcblxuZnVuY3Rpb24gZ2V0Q3VycmVudEluZGV4KGtleXNMZW5ndGg6IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChrZXlzTGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIEluZmluaXR5XG4gIH1cbiAgaWYgKHByZXZJbmRleCA+PSAwICYmIHByZXZJbmRleCA8IGtleXNMZW5ndGgpIHtcbiAgICByZXR1cm4gcHJldkluZGV4XG4gIH1cblxuICByZXR1cm4gTWF0aC5mbG9vcihrZXlzTGVuZ3RoIC8gMilcbn1cblxuZnVuY3Rpb24gc2V0RHJhZ0ltYWdlKGRhdGFUcmFuc2ZlcjogRGF0YVRyYW5zZmVyLCBkcmFnZ2FibGVCbG9ja0VsZW06IEhUTUxFbGVtZW50KSB7XG4gIGNvbnN0IHsgdHJhbnNmb3JtIH0gPSBkcmFnZ2FibGVCbG9ja0VsZW0uc3R5bGVcblxuICAvLyBSZW1vdmUgZHJhZ0ltYWdlIGJvcmRlcnNcbiAgZGF0YVRyYW5zZmVyLnNldERyYWdJbWFnZShkcmFnZ2FibGVCbG9ja0VsZW0sIDAsIDApXG5cbiAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgZHJhZ2dhYmxlQmxvY2tFbGVtLnN0eWxlLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxuICB9KVxufVxuXG5mdW5jdGlvbiBoaWRlVGFyZ2V0TGluZShcbiAgdGFyZ2V0TGluZUVsZW06IEhUTUxFbGVtZW50IHwgbnVsbCxcbiAgbGFzdFRhcmdldEJsb2NrRWxlbTogSFRNTEVsZW1lbnQgfCBudWxsLFxuKSB7XG4gIGlmICh0YXJnZXRMaW5lRWxlbSkge1xuICAgIHRhcmdldExpbmVFbGVtLnN0eWxlLm9wYWNpdHkgPSAnMCdcbiAgfVxuICBpZiAobGFzdFRhcmdldEJsb2NrRWxlbSkge1xuICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0uc3R5bGUub3BhY2l0eSA9ICcxJ1xuICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0uc3R5bGUudHJhbnNmb3JtID0gJ3RyYW5zbGF0ZSgwLCAwKSdcbiAgICAvL2xhc3RUYXJnZXRCbG9ja0VsZW0uc3R5bGUuYm9yZGVyID0gJ25vbmUnXG4gIH1cbn1cblxuZnVuY3Rpb24gdXNlRHJhZ2dhYmxlQmxvY2tNZW51KFxuICBlZGl0b3I6IExleGljYWxFZGl0b3IsXG4gIGFuY2hvckVsZW06IEhUTUxFbGVtZW50LFxuICBpc0VkaXRhYmxlOiBib29sZWFuLFxuKTogSlNYLkVsZW1lbnQge1xuICBjb25zdCBzY3JvbGxlckVsZW0gPSBhbmNob3JFbGVtLnBhcmVudEVsZW1lbnRcblxuICBjb25zdCBtZW51UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCB0YXJnZXRMaW5lUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCBkZWJ1Z0hpZ2hsaWdodFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcbiAgY29uc3QgaXNEcmFnZ2luZ0Jsb2NrUmVmID0gdXNlUmVmPGJvb2xlYW4+KGZhbHNlKVxuICBjb25zdCBbZHJhZ2dhYmxlQmxvY2tFbGVtLCBzZXREcmFnZ2FibGVCbG9ja0VsZW1dID0gdXNlU3RhdGU8SFRNTEVsZW1lbnQgfCBudWxsPihudWxsKVxuICBjb25zdCBbbGFzdFRhcmdldEJsb2NrRWxlbSwgc2V0TGFzdFRhcmdldEJsb2NrRWxlbV0gPSB1c2VTdGF0ZTxIVE1MRWxlbWVudCB8IG51bGw+KG51bGwpXG5cbiAgY29uc3QgY2FsY3VsYXRlRGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gdXNlQ2FsbGJhY2soXG4gICAgKFxuICAgICAgcGFnZVg6IG51bWJlcixcbiAgICAgIHBhZ2VZOiBudW1iZXIsXG4gICAgICB0YXJnZXQ6IEhUTUxFbGVtZW50LFxuICAgICAgaG9yaXpvbnRhbEJ1ZmZlcjogbnVtYmVyID0gNTAsXG4gICAgICB2ZXJ0aWNhbEJ1ZmZlcjogbnVtYmVyID0gMjUsXG4gICAgKTogbnVtYmVyID0+IHtcbiAgICAgIGxldCBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSAwXG4gICAgICAvLyBDYWxjdWxhdGUgZGlzdGFuY2UgYmV0d2VlbiBzY3JvbGxlckVsZW0gYW5kIHRhcmdldCBpZiB0YXJnZXQgaXMgbm90IGluIHNjcm9sbGVyRWxlbVxuICAgICAgaWYgKHNjcm9sbGVyRWxlbSAmJiAhc2Nyb2xsZXJFbGVtLmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgY29uc3QgeyBib3R0b20sIGxlZnQsIHJpZ2h0LCB0b3AgfSA9IHNjcm9sbGVyRWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuXG4gICAgICAgIGNvbnN0IGFkanVzdGVkVG9wID0gdG9wICsgd2luZG93LnNjcm9sbFlcbiAgICAgICAgY29uc3QgYWRqdXN0ZWRCb3R0b20gPSBib3R0b20gKyB3aW5kb3cuc2Nyb2xsWVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICBwYWdlWSA8IGFkanVzdGVkVG9wIC0gdmVydGljYWxCdWZmZXIgfHxcbiAgICAgICAgICBwYWdlWSA+IGFkanVzdGVkQm90dG9tICsgdmVydGljYWxCdWZmZXIgfHxcbiAgICAgICAgICBwYWdlWCA8IGxlZnQgLSBob3Jpem9udGFsQnVmZmVyIHx8XG4gICAgICAgICAgcGFnZVggPiByaWdodCArIGhvcml6b250YWxCdWZmZXJcbiAgICAgICAgKSB7XG4gICAgICAgICAgc2V0RHJhZ2dhYmxlQmxvY2tFbGVtKG51bGwpXG4gICAgICAgICAgcmV0dXJuIGRpc3RhbmNlRnJvbVNjcm9sbGVyRWxlbVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyBpcyB1c2VkIHRvIGFsbG93IHRoZSBfZHJhZ2dhYmxlQmxvY2tFbGVtIHRvIGJlIGZvdW5kIHdoZW4gdGhlIG1vdXNlIGlzIGluIHRoZVxuICAgICAgICAvLyBidWZmZXIgem9uZSBhcm91bmQgdGhlIHNjcm9sbGVyRWxlbS5cbiAgICAgICAgaWYgKHBhZ2VYIDwgbGVmdCB8fCBwYWdlWCA+IHJpZ2h0KSB7XG4gICAgICAgICAgZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gcGFnZVggPCBsZWZ0ID8gcGFnZVggLSBsZWZ0IDogcGFnZVggLSByaWdodFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtXG4gICAgfSxcbiAgICBbc2Nyb2xsZXJFbGVtXSxcbiAgKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLyoqXG4gICAgICogSGFuZGxlcyBwb3NpdGlvbmluZyBvZiB0aGUgZHJhZyBoYW5kbGVcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBvbkRvY3VtZW50TW91c2VNb3ZlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXRcbiAgICAgIGlmICghaXNIVE1MRWxlbWVudCh0YXJnZXQpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSBjYWxjdWxhdGVEaXN0YW5jZUZyb21TY3JvbGxlckVsZW0oXG4gICAgICAgIGV2ZW50LnBhZ2VYLFxuICAgICAgICBldmVudC5wYWdlWSxcbiAgICAgICAgdGFyZ2V0LFxuICAgICAgKVxuXG4gICAgICBpZiAoaXNPbkhhbmRsZUVsZW1lbnQodGFyZ2V0LCBEUkFHR0FCTEVfQkxPQ0tfTUVOVV9DTEFTU05BTUUpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCB0b3BMZXZlbE5vZGVLZXlzID0gZ2V0VG9wTGV2ZWxOb2RlS2V5cyhlZGl0b3IpXG4gICAgICBjb25zdCB7XG4gICAgICAgIGJsb2NrRWxlbTogX2RyYWdnYWJsZUJsb2NrRWxlbSxcbiAgICAgICAgZm91bmRBdEluZGV4LFxuICAgICAgICBpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoLFxuICAgICAgfSA9IGdldE5vZGVDbG9zZVRvUG9pbnQoe1xuICAgICAgICBhbmNob3JFbGVtLFxuICAgICAgICBjYWNoZV90cmVzaG9sZDogMCxcbiAgICAgICAgZWRpdG9yLFxuICAgICAgICBob3Jpem9udGFsT2Zmc2V0OiAtZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtLFxuICAgICAgICBwb2ludDogbmV3IFBvaW50KGV2ZW50LngsIGV2ZW50LnkpLFxuICAgICAgICBzdGFydEluZGV4OiBnZXRDdXJyZW50SW5kZXgodG9wTGV2ZWxOb2RlS2V5cy5sZW5ndGgpLFxuICAgICAgICB1c2VFZGdlQXNEZWZhdWx0OiBmYWxzZSxcbiAgICAgIH0pXG4gICAgICAvL2lmIChERUJVRyAmJiBfZHJhZ2dhYmxlQmxvY2tFbGVtKSB7XG4gICAgICAvL3RhcmdldEJsb2NrRWxlbS5zdHlsZS5ib3JkZXIgPSAnM3B4IHNvbGlkIHJlZCdcbiAgICAgIC8vIGhpZ2hsaWdodEVsZW1PcmlnaW5hbFBvc2l0aW9uKGRlYnVnSGlnaGxpZ2h0UmVmLCBfZHJhZ2dhYmxlQmxvY2tFbGVtLCBhbmNob3JFbGVtKVxuICAgICAgLy99XG4gICAgICBwcmV2SW5kZXggPSBmb3VuZEF0SW5kZXhcblxuICAgICAgaWYgKCFfZHJhZ2dhYmxlQmxvY2tFbGVtICYmICFpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBzZXREcmFnZ2FibGVCbG9ja0VsZW0oX2RyYWdnYWJsZUJsb2NrRWxlbSlcbiAgICB9XG5cbiAgICAvLyBTaW5jZSB0aGUgZHJhZ2dhYmxlQmxvY2tFbGVtIGlzIG91dHNpZGUgdGhlIGFjdHVhbCBlZGl0b3IsIHdlIG5lZWQgdG8gbGlzdGVuIHRvIHRoZSBkb2N1bWVudFxuICAgIC8vIHRvIGJlIGFibGUgdG8gZGV0ZWN0IHdoZW4gdGhlIG1vdXNlIGlzIG91dHNpZGUgdGhlIGVkaXRvciBhbmQgcmVzcGVjdCBhIGJ1ZmZlciBhcm91bmQgdGhlXG4gICAgLy8gdGhlIHNjcm9sbGVyRWxlbSB0byBhdm9pZCB0aGUgZHJhZ2dhYmxlQmxvY2tFbGVtIGRpc2FwcGVhcmluZyB0b28gZWFybHkuXG4gICAgZG9jdW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIG9uRG9jdW1lbnRNb3VzZU1vdmUpXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIG9uRG9jdW1lbnRNb3VzZU1vdmUpXG4gICAgfVxuICB9LCBbc2Nyb2xsZXJFbGVtLCBhbmNob3JFbGVtLCBlZGl0b3IsIGNhbGN1bGF0ZURpc3RhbmNlRnJvbVNjcm9sbGVyRWxlbV0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobWVudVJlZi5jdXJyZW50KSB7XG4gICAgICBzZXRIYW5kbGVQb3NpdGlvbihkcmFnZ2FibGVCbG9ja0VsZW0sIG1lbnVSZWYuY3VycmVudCwgYW5jaG9yRWxlbSwgU1BBQ0UpXG4gICAgfVxuICB9LCBbYW5jaG9yRWxlbSwgZHJhZ2dhYmxlQmxvY2tFbGVtXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZ1bmN0aW9uIG9uRHJhZ292ZXIoZXZlbnQ6IERyYWdFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgaWYgKCFpc0RyYWdnaW5nQmxvY2tSZWYuY3VycmVudCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtpc0ZpbGVUcmFuc2Zlcl0gPSBldmVudEZpbGVzKGV2ZW50KVxuICAgICAgaWYgKGlzRmlsZVRyYW5zZmVyKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuXG4gICAgICBjb25zdCB7IHBhZ2VZLCB0YXJnZXQgfSA9IGV2ZW50XG4gICAgICBpZiAoIWlzSFRNTEVsZW1lbnQodGFyZ2V0KSkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gY2FsY3VsYXRlRGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtKFxuICAgICAgICBldmVudC5wYWdlWCxcbiAgICAgICAgZXZlbnQucGFnZVksXG4gICAgICAgIHRhcmdldCxcbiAgICAgICAgMTAwLFxuICAgICAgICA1MCxcbiAgICAgIClcblxuICAgICAgY29uc3QgdG9wTGV2ZWxOb2RlS2V5cyA9IGdldFRvcExldmVsTm9kZUtleXMoZWRpdG9yKVxuXG4gICAgICBjb25zdCB7XG4gICAgICAgIGJsb2NrRWxlbTogdGFyZ2V0QmxvY2tFbGVtLFxuICAgICAgICBmb3VuZEF0SW5kZXgsXG4gICAgICAgIGlzRm91bmROb2RlRW1wdHlQYXJhZ3JhcGgsXG4gICAgICB9ID0gZ2V0Tm9kZUNsb3NlVG9Qb2ludCh7XG4gICAgICAgIGFuY2hvckVsZW0sXG4gICAgICAgIGVkaXRvcixcbiAgICAgICAgZnV6enk6IHRydWUsXG4gICAgICAgIGhvcml6b250YWxPZmZzZXQ6IC1kaXN0YW5jZUZyb21TY3JvbGxlckVsZW0sXG4gICAgICAgIHBvaW50OiBuZXcgUG9pbnQoZXZlbnQueCwgZXZlbnQueSksXG4gICAgICAgIHN0YXJ0SW5kZXg6IGdldEN1cnJlbnRJbmRleCh0b3BMZXZlbE5vZGVLZXlzLmxlbmd0aCksXG4gICAgICAgIHVzZUVkZ2VBc0RlZmF1bHQ6IHRydWUsXG4gICAgICAgIHZlcmJvc2U6IHRydWUsXG4gICAgICB9KVxuICAgICAgcHJldkluZGV4ID0gZm91bmRBdEluZGV4XG5cbiAgICAgIGNvbnN0IHRhcmdldExpbmVFbGVtID0gdGFyZ2V0TGluZVJlZi5jdXJyZW50XG4gICAgICAvLyB0YXJnZXRCbG9ja0VsZW0gPT09IG51bGwgc2hvdWxkbid0IGhhcHBlblxuICAgICAgaWYgKHRhcmdldEJsb2NrRWxlbSA9PT0gbnVsbCB8fCB0YXJnZXRMaW5lRWxlbSA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgaWYgKGRyYWdnYWJsZUJsb2NrRWxlbSAhPT0gdGFyZ2V0QmxvY2tFbGVtKSB7XG4gICAgICAgIHNldFRhcmdldExpbmUoXG4gICAgICAgICAgU1BBQ0UsXG4gICAgICAgICAgdGFyZ2V0TGluZUVsZW0sXG4gICAgICAgICAgdGFyZ2V0QmxvY2tFbGVtLFxuICAgICAgICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0sXG4gICAgICAgICAgcGFnZVksXG4gICAgICAgICAgYW5jaG9yRWxlbSxcbiAgICAgICAgICBldmVudCxcbiAgICAgICAgICBkZWJ1Z0hpZ2hsaWdodFJlZixcbiAgICAgICAgICBpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoLFxuICAgICAgICApXG5cbiAgICAgICAgLy8gUHJldmVudCBkZWZhdWx0IGV2ZW50IHRvIGJlIGFibGUgdG8gdHJpZ2dlciBvbkRyb3AgZXZlbnRzXG4gICAgICAgIC8vIENhbGxpbmcgcHJldmVudERlZmF1bHQoKSBhZGRzIHRoZSBncmVlbiBwbHVzIGljb24gdG8gdGhlIGN1cnNvcixcbiAgICAgICAgLy8gaW5kaWNhdGluZyB0aGF0IHRoZSBkcm9wIGlzIGFsbG93ZWQuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhpZGVUYXJnZXRMaW5lKHRhcmdldExpbmVFbGVtLCBsYXN0VGFyZ2V0QmxvY2tFbGVtKVxuICAgICAgfVxuXG4gICAgICBzZXRMYXN0VGFyZ2V0QmxvY2tFbGVtKHRhcmdldEJsb2NrRWxlbSlcblxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBvbkRyb3AoZXZlbnQ6IERyYWdFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgaWYgKCFpc0RyYWdnaW5nQmxvY2tSZWYuY3VycmVudCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtpc0ZpbGVUcmFuc2Zlcl0gPSBldmVudEZpbGVzKGV2ZW50KVxuICAgICAgaWYgKGlzRmlsZVRyYW5zZmVyKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgICAgY29uc3QgeyBkYXRhVHJhbnNmZXIsIHBhZ2VZLCB0YXJnZXQgfSA9IGV2ZW50XG4gICAgICBjb25zdCBkcmFnRGF0YSA9IGRhdGFUcmFuc2Zlcj8uZ2V0RGF0YShEUkFHX0RBVEFfRk9STUFUKSB8fCAnJ1xuXG4gICAgICBlZGl0b3IudXBkYXRlKCgpID0+IHtcbiAgICAgICAgY29uc3QgZHJhZ2dlZE5vZGUgPSAkZ2V0Tm9kZUJ5S2V5KGRyYWdEYXRhKVxuICAgICAgICBpZiAoIWRyYWdnZWROb2RlKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc0hUTUxFbGVtZW50KHRhcmdldCkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSBjYWxjdWxhdGVEaXN0YW5jZUZyb21TY3JvbGxlckVsZW0oXG4gICAgICAgICAgZXZlbnQucGFnZVgsXG4gICAgICAgICAgZXZlbnQucGFnZVksXG4gICAgICAgICAgdGFyZ2V0LFxuICAgICAgICAgIDEwMCxcbiAgICAgICAgICA1MCxcbiAgICAgICAgKVxuXG4gICAgICAgIGNvbnN0IHsgYmxvY2tFbGVtOiB0YXJnZXRCbG9ja0VsZW0sIGlzRm91bmROb2RlRW1wdHlQYXJhZ3JhcGggfSA9IGdldE5vZGVDbG9zZVRvUG9pbnQoe1xuICAgICAgICAgIGFuY2hvckVsZW0sXG4gICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgIGZ1enp5OiB0cnVlLFxuICAgICAgICAgIGhvcml6b250YWxPZmZzZXQ6IC1kaXN0YW5jZUZyb21TY3JvbGxlckVsZW0sXG4gICAgICAgICAgcG9pbnQ6IG5ldyBQb2ludChldmVudC54LCBldmVudC55KSxcbiAgICAgICAgICB1c2VFZGdlQXNEZWZhdWx0OiB0cnVlLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmICghdGFyZ2V0QmxvY2tFbGVtKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdGFyZ2V0Tm9kZSA9ICRnZXROZWFyZXN0Tm9kZUZyb21ET01Ob2RlKHRhcmdldEJsb2NrRWxlbSlcbiAgICAgICAgaWYgKCF0YXJnZXROb2RlKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRhcmdldE5vZGUgPT09IGRyYWdnZWROb2RlKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgaGVpZ2h0OiB0YXJnZXRCbG9ja0VsZW1IZWlnaHQsIHRvcDogdGFyZ2V0QmxvY2tFbGVtVG9wIH0gPVxuICAgICAgICAgIGdldEJvdW5kaW5nQ2xpZW50UmVjdFdpdGhvdXRUcmFuc2Zvcm0odGFyZ2V0QmxvY2tFbGVtKVxuXG4gICAgICAgIGNvbnN0IG1vdXNlWSA9IHBhZ2VZXG4gICAgICAgIGNvbnN0IGlzQmVsb3cgPSBtb3VzZVkgPj0gdGFyZ2V0QmxvY2tFbGVtVG9wICsgdGFyZ2V0QmxvY2tFbGVtSGVpZ2h0IC8gMiArIHdpbmRvdy5zY3JvbGxZXG5cbiAgICAgICAgaWYgKCFpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoKSB7XG4gICAgICAgICAgaWYgKGlzQmVsb3cpIHtcbiAgICAgICAgICAgIC8vIGJlbG93IHRhcmdldEJsb2NrRWxlbVxuICAgICAgICAgICAgdGFyZ2V0Tm9kZS5pbnNlcnRBZnRlcihkcmFnZ2VkTm9kZSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gYWJvdmUgdGFyZ2V0QmxvY2tFbGVtXG4gICAgICAgICAgICB0YXJnZXROb2RlLmluc2VydEJlZm9yZShkcmFnZ2VkTm9kZSlcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy9cbiAgICAgICAgICB0YXJnZXROb2RlLmluc2VydEJlZm9yZShkcmFnZ2VkTm9kZSlcbiAgICAgICAgICB0YXJnZXROb2RlLnJlbW92ZSgpXG4gICAgICAgIH1cblxuICAgICAgICAvKlxuICAgICAgICBpZiAocGFnZVkgPj0gdGFyZ2V0QmxvY2tFbGVtVG9wICsgdGFyZ2V0QmxvY2tFbGVtSGVpZ2h0IC8gMikge1xuICAgICAgICAgIHRhcmdldE5vZGUuaW5zZXJ0QWZ0ZXIoZHJhZ2dlZE5vZGUpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGFyZ2V0Tm9kZS5pbnNlcnRCZWZvcmUoZHJhZ2dlZE5vZGUpXG4gICAgICAgIH0qL1xuICAgICAgICBzZXREcmFnZ2FibGVCbG9ja0VsZW0obnVsbClcbiAgICAgIH0pXG5cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgLy8gcmVnaXN0ZXIgb25EcmFnb3ZlciBldmVudCBsaXN0ZW5lcnM6XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZHJhZ292ZXInLCBvbkRyYWdvdmVyKVxuICAgIC8vIHJlZ2lzdGVyIG9uRHJvcCBldmVudCBsaXN0ZW5lcnM6XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZHJvcCcsIG9uRHJvcClcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdkcmFnb3ZlcicsIG9uRHJhZ292ZXIpXG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdkcm9wJywgb25Ecm9wKVxuICAgIH1cbiAgfSwgW1xuICAgIGFuY2hvckVsZW0sXG4gICAgZWRpdG9yLFxuICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0sXG4gICAgY2FsY3VsYXRlRGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtLFxuICAgIGRyYWdnYWJsZUJsb2NrRWxlbSxcbiAgXSlcblxuICBmdW5jdGlvbiBvbkRyYWdTdGFydChldmVudDogUmVhY3REcmFnRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KTogdm9pZCB7XG4gICAgY29uc3QgZGF0YVRyYW5zZmVyID0gZXZlbnQuZGF0YVRyYW5zZmVyXG4gICAgaWYgKCFkYXRhVHJhbnNmZXIgfHwgIWRyYWdnYWJsZUJsb2NrRWxlbSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHNldERyYWdJbWFnZShkYXRhVHJhbnNmZXIsIGRyYWdnYWJsZUJsb2NrRWxlbSlcbiAgICBsZXQgbm9kZUtleSA9ICcnXG4gICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICBjb25zdCBub2RlID0gJGdldE5lYXJlc3ROb2RlRnJvbURPTU5vZGUoZHJhZ2dhYmxlQmxvY2tFbGVtKVxuICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgbm9kZUtleSA9IG5vZGUuZ2V0S2V5KClcbiAgICAgIH1cbiAgICB9KVxuICAgIGlzRHJhZ2dpbmdCbG9ja1JlZi5jdXJyZW50ID0gdHJ1ZVxuICAgIGRhdGFUcmFuc2Zlci5zZXREYXRhKERSQUdfREFUQV9GT1JNQVQsIG5vZGVLZXkpXG4gIH1cblxuICBmdW5jdGlvbiBvbkRyYWdFbmQoKTogdm9pZCB7XG4gICAgaXNEcmFnZ2luZ0Jsb2NrUmVmLmN1cnJlbnQgPSBmYWxzZVxuICAgIGhpZGVUYXJnZXRMaW5lKHRhcmdldExpbmVSZWYuY3VycmVudCwgbGFzdFRhcmdldEJsb2NrRWxlbSlcbiAgfVxuXG4gIHJldHVybiBjcmVhdGVQb3J0YWwoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9XCJpY29uIGRyYWdnYWJsZS1ibG9jay1tZW51XCJcbiAgICAgICAgZHJhZ2dhYmxlXG4gICAgICAgIG9uRHJhZ0VuZD17b25EcmFnRW5kfVxuICAgICAgICBvbkRyYWdTdGFydD17b25EcmFnU3RhcnR9XG4gICAgICAgIHJlZj17bWVudVJlZn1cbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2lzRWRpdGFibGUgPyAnaWNvbicgOiAnJ30gLz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJkcmFnZ2FibGUtYmxvY2stdGFyZ2V0LWxpbmVcIiByZWY9e3RhcmdldExpbmVSZWZ9IC8+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImRlYnVnLWhpZ2hsaWdodFwiIHJlZj17ZGVidWdIaWdobGlnaHRSZWZ9IC8+XG4gICAgPC9SZWFjdC5GcmFnbWVudD4sXG4gICAgYW5jaG9yRWxlbSxcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gRHJhZ2dhYmxlQmxvY2tQbHVnaW4oe1xuICBhbmNob3JFbGVtID0gZG9jdW1lbnQuYm9keSxcbn06IHtcbiAgYW5jaG9yRWxlbT86IEhUTUxFbGVtZW50XG59KTogSlNYLkVsZW1lbnQge1xuICBjb25zdCBbZWRpdG9yXSA9IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQoKVxuICByZXR1cm4gdXNlRHJhZ2dhYmxlQmxvY2tNZW51KGVkaXRvciwgYW5jaG9yRWxlbSwgZWRpdG9yLl9lZGl0YWJsZSlcbn1cbiJdLCJuYW1lcyI6WyJEcmFnZ2FibGVCbG9ja1BsdWdpbiIsIlNQQUNFIiwiRFJBR0dBQkxFX0JMT0NLX01FTlVfQ0xBU1NOQU1FIiwiRFJBR19EQVRBX0ZPUk1BVCIsInByZXZJbmRleCIsIkluZmluaXR5IiwiZ2V0Q3VycmVudEluZGV4Iiwia2V5c0xlbmd0aCIsIk1hdGgiLCJmbG9vciIsInNldERyYWdJbWFnZSIsImRhdGFUcmFuc2ZlciIsImRyYWdnYWJsZUJsb2NrRWxlbSIsInRyYW5zZm9ybSIsInN0eWxlIiwic2V0VGltZW91dCIsImhpZGVUYXJnZXRMaW5lIiwidGFyZ2V0TGluZUVsZW0iLCJsYXN0VGFyZ2V0QmxvY2tFbGVtIiwib3BhY2l0eSIsInVzZURyYWdnYWJsZUJsb2NrTWVudSIsImVkaXRvciIsImFuY2hvckVsZW0iLCJpc0VkaXRhYmxlIiwic2Nyb2xsZXJFbGVtIiwicGFyZW50RWxlbWVudCIsIm1lbnVSZWYiLCJ1c2VSZWYiLCJ0YXJnZXRMaW5lUmVmIiwiZGVidWdIaWdobGlnaHRSZWYiLCJpc0RyYWdnaW5nQmxvY2tSZWYiLCJzZXREcmFnZ2FibGVCbG9ja0VsZW0iLCJ1c2VTdGF0ZSIsInNldExhc3RUYXJnZXRCbG9ja0VsZW0iLCJjYWxjdWxhdGVEaXN0YW5jZUZyb21TY3JvbGxlckVsZW0iLCJ1c2VDYWxsYmFjayIsInBhZ2VYIiwicGFnZVkiLCJ0YXJnZXQiLCJob3Jpem9udGFsQnVmZmVyIiwidmVydGljYWxCdWZmZXIiLCJkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0iLCJjb250YWlucyIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsInRvcCIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImFkanVzdGVkVG9wIiwid2luZG93Iiwic2Nyb2xsWSIsImFkanVzdGVkQm90dG9tIiwidXNlRWZmZWN0Iiwib25Eb2N1bWVudE1vdXNlTW92ZSIsImV2ZW50IiwiaXNIVE1MRWxlbWVudCIsImlzT25IYW5kbGVFbGVtZW50IiwidG9wTGV2ZWxOb2RlS2V5cyIsImdldFRvcExldmVsTm9kZUtleXMiLCJibG9ja0VsZW0iLCJfZHJhZ2dhYmxlQmxvY2tFbGVtIiwiZm91bmRBdEluZGV4IiwiaXNGb3VuZE5vZGVFbXB0eVBhcmFncmFwaCIsImdldE5vZGVDbG9zZVRvUG9pbnQiLCJjYWNoZV90cmVzaG9sZCIsImhvcml6b250YWxPZmZzZXQiLCJwb2ludCIsIlBvaW50IiwieCIsInkiLCJzdGFydEluZGV4IiwibGVuZ3RoIiwidXNlRWRnZUFzRGVmYXVsdCIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjdXJyZW50Iiwic2V0SGFuZGxlUG9zaXRpb24iLCJvbkRyYWdvdmVyIiwiaXNGaWxlVHJhbnNmZXIiLCJldmVudEZpbGVzIiwidGFyZ2V0QmxvY2tFbGVtIiwiZnV6enkiLCJ2ZXJib3NlIiwic2V0VGFyZ2V0TGluZSIsInByZXZlbnREZWZhdWx0Iiwib25Ecm9wIiwiZHJhZ0RhdGEiLCJnZXREYXRhIiwidXBkYXRlIiwiZHJhZ2dlZE5vZGUiLCIkZ2V0Tm9kZUJ5S2V5IiwidGFyZ2V0Tm9kZSIsIiRnZXROZWFyZXN0Tm9kZUZyb21ET01Ob2RlIiwiaGVpZ2h0IiwidGFyZ2V0QmxvY2tFbGVtSGVpZ2h0IiwidGFyZ2V0QmxvY2tFbGVtVG9wIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0V2l0aG91dFRyYW5zZm9ybSIsIm1vdXNlWSIsImlzQmVsb3ciLCJpbnNlcnRBZnRlciIsImluc2VydEJlZm9yZSIsInJlbW92ZSIsIm9uRHJhZ1N0YXJ0Iiwibm9kZUtleSIsIm5vZGUiLCJnZXRLZXkiLCJzZXREYXRhIiwib25EcmFnRW5kIiwiY3JlYXRlUG9ydGFsIiwiUmVhY3QiLCJGcmFnbWVudCIsImRpdiIsImNsYXNzTmFtZSIsImRyYWdnYWJsZSIsInJlZiIsImJvZHkiLCJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiX2VkaXRhYmxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7K0JBa1lnQkE7OztlQUFBQTs7O3dDQTlYMEI7MEJBQ2Y7eUJBQytCOytEQUNuQzswQkFFTTt1QkFFQzt1QkFDUjtxQ0FDYzttQ0FDRjttQ0FDQTtpREFDb0I7cUNBQ2xCO1FBQzdCOytCQUN1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU5QixNQUFNQyxRQUFRLENBQUM7QUFDZixNQUFNQyxpQ0FBaUM7QUFDdkMsTUFBTUMsbUJBQW1CO0FBRXpCLElBQUlDLFlBQVlDO0FBRWhCLFNBQVNDLGdCQUFnQkMsVUFBa0I7SUFDekMsSUFBSUEsZUFBZSxHQUFHO1FBQ3BCLE9BQU9GO0lBQ1Q7SUFDQSxJQUFJRCxh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
341
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3BsdWdpbnMvaGFuZGxlcy9EcmFnZ2FibGVCbG9ja1BsdWdpbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5pbXBvcnQgdHlwZSB7IExleGljYWxFZGl0b3IgfSBmcm9tICdsZXhpY2FsJ1xuaW1wb3J0IHR5cGUgeyBEcmFnRXZlbnQgYXMgUmVhY3REcmFnRXZlbnQgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCB9IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxDb21wb3NlckNvbnRleHQnXG5pbXBvcnQgeyBldmVudEZpbGVzIH0gZnJvbSAnQGxleGljYWwvcmljaC10ZXh0J1xuaW1wb3J0IHsgJGdldE5lYXJlc3ROb2RlRnJvbURPTU5vZGUsICRnZXROb2RlQnlLZXkgfSBmcm9tICdsZXhpY2FsJ1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nXG5cbmltcG9ydCB7IGlzSFRNTEVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ndWFyZCdcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvcG9pbnQnXG5pbXBvcnQgeyBnZXRUb3BMZXZlbE5vZGVLZXlzIH0gZnJvbSAnLi4vdXRpbHMvZ2V0VG9wTGV2ZWxOb2RlS2V5cydcbmltcG9ydCB7IGlzT25IYW5kbGVFbGVtZW50IH0gZnJvbSAnLi4vdXRpbHMvaXNPbkhhbmRsZUVsZW1lbnQnXG5pbXBvcnQgeyBzZXRIYW5kbGVQb3NpdGlvbiB9IGZyb20gJy4uL3V0aWxzL3NldEhhbmRsZVBvc2l0aW9uJ1xuaW1wb3J0IHsgZ2V0Qm91bmRpbmdDbGllbnRSZWN0V2l0aG91dFRyYW5zZm9ybSB9IGZyb20gJy4vZ2V0Qm91bmRpbmdSZWN0V2l0aG91dFRyYW5zZm9ybSdcbmltcG9ydCB7IGdldE5vZGVDbG9zZVRvUG9pbnQgfSBmcm9tICcuL2dldE5vZGVDbG9zZVRvUG9pbnQnXG5pbXBvcnQgJy4vaW5kZXguc2NzcydcbmltcG9ydCB7IHNldFRhcmdldExpbmUgfSBmcm9tICcuL3NldFRhcmdldExpbmUnXG5cbmNvbnN0IFNQQUNFID0gLTI0XG5jb25zdCBEUkFHR0FCTEVfQkxPQ0tfTUVOVV9DTEFTU05BTUUgPSAnZHJhZ2dhYmxlLWJsb2NrLW1lbnUnXG5jb25zdCBEUkFHX0RBVEFfRk9STUFUID0gJ2FwcGxpY2F0aW9uL3gtbGV4aWNhbC1kcmFnLWJsb2NrJ1xuXG5sZXQgcHJldkluZGV4ID0gSW5maW5pdHlcblxuZnVuY3Rpb24gZ2V0Q3VycmVudEluZGV4KGtleXNMZW5ndGg6IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChrZXlzTGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIEluZmluaXR5XG4gIH1cbiAgaWYgKHByZXZJbmRleCA+PSAwICYmIHByZXZJbmRleCA8IGtleXNMZW5ndGgpIHtcbiAgICByZXR1cm4gcHJldkluZGV4XG4gIH1cblxuICByZXR1cm4gTWF0aC5mbG9vcihrZXlzTGVuZ3RoIC8gMilcbn1cblxuZnVuY3Rpb24gc2V0RHJhZ0ltYWdlKGRhdGFUcmFuc2ZlcjogRGF0YVRyYW5zZmVyLCBkcmFnZ2FibGVCbG9ja0VsZW06IEhUTUxFbGVtZW50KSB7XG4gIGNvbnN0IHsgdHJhbnNmb3JtIH0gPSBkcmFnZ2FibGVCbG9ja0VsZW0uc3R5bGVcblxuICAvLyBSZW1vdmUgZHJhZ0ltYWdlIGJvcmRlcnNcbiAgZGF0YVRyYW5zZmVyLnNldERyYWdJbWFnZShkcmFnZ2FibGVCbG9ja0VsZW0sIDAsIDApXG5cbiAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgZHJhZ2dhYmxlQmxvY2tFbGVtLnN0eWxlLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxuICB9KVxufVxuXG5mdW5jdGlvbiBoaWRlVGFyZ2V0TGluZShcbiAgdGFyZ2V0TGluZUVsZW06IEhUTUxFbGVtZW50IHwgbnVsbCxcbiAgbGFzdFRhcmdldEJsb2NrRWxlbTogSFRNTEVsZW1lbnQgfCBudWxsLFxuKSB7XG4gIGlmICh0YXJnZXRMaW5lRWxlbSkge1xuICAgIHRhcmdldExpbmVFbGVtLnN0eWxlLm9wYWNpdHkgPSAnMCdcbiAgfVxuICBpZiAobGFzdFRhcmdldEJsb2NrRWxlbSkge1xuICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0uc3R5bGUub3BhY2l0eSA9ICcxJ1xuICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0uc3R5bGUudHJhbnNmb3JtID0gJ3RyYW5zbGF0ZSgwLCAwKSdcbiAgICAvL2xhc3RUYXJnZXRCbG9ja0VsZW0uc3R5bGUuYm9yZGVyID0gJ25vbmUnXG4gIH1cbn1cblxuZnVuY3Rpb24gdXNlRHJhZ2dhYmxlQmxvY2tNZW51KFxuICBlZGl0b3I6IExleGljYWxFZGl0b3IsXG4gIGFuY2hvckVsZW06IEhUTUxFbGVtZW50LFxuICBpc0VkaXRhYmxlOiBib29sZWFuLFxuKTogSlNYLkVsZW1lbnQge1xuICBjb25zdCBzY3JvbGxlckVsZW0gPSBhbmNob3JFbGVtLnBhcmVudEVsZW1lbnRcblxuICBjb25zdCBtZW51UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCB0YXJnZXRMaW5lUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuICBjb25zdCBkZWJ1Z0hpZ2hsaWdodFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbClcbiAgY29uc3QgaXNEcmFnZ2luZ0Jsb2NrUmVmID0gdXNlUmVmPGJvb2xlYW4+KGZhbHNlKVxuICBjb25zdCBbZHJhZ2dhYmxlQmxvY2tFbGVtLCBzZXREcmFnZ2FibGVCbG9ja0VsZW1dID0gdXNlU3RhdGU8SFRNTEVsZW1lbnQgfCBudWxsPihudWxsKVxuICBjb25zdCBbbGFzdFRhcmdldEJsb2NrRWxlbSwgc2V0TGFzdFRhcmdldEJsb2NrRWxlbV0gPSB1c2VTdGF0ZTxIVE1MRWxlbWVudCB8IG51bGw+KG51bGwpXG5cbiAgY29uc3QgY2FsY3VsYXRlRGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gdXNlQ2FsbGJhY2soXG4gICAgKFxuICAgICAgcGFnZVg6IG51bWJlcixcbiAgICAgIHBhZ2VZOiBudW1iZXIsXG4gICAgICB0YXJnZXQ6IEhUTUxFbGVtZW50LFxuICAgICAgaG9yaXpvbnRhbEJ1ZmZlcjogbnVtYmVyID0gNTAsXG4gICAgICB2ZXJ0aWNhbEJ1ZmZlcjogbnVtYmVyID0gMjUsXG4gICAgKTogbnVtYmVyID0+IHtcbiAgICAgIGxldCBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSAwXG4gICAgICAvLyBDYWxjdWxhdGUgZGlzdGFuY2UgYmV0d2VlbiBzY3JvbGxlckVsZW0gYW5kIHRhcmdldCBpZiB0YXJnZXQgaXMgbm90IGluIHNjcm9sbGVyRWxlbVxuICAgICAgaWYgKHNjcm9sbGVyRWxlbSAmJiAhc2Nyb2xsZXJFbGVtLmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICAgICAgY29uc3QgeyBib3R0b20sIGxlZnQsIHJpZ2h0LCB0b3AgfSA9IHNjcm9sbGVyRWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuXG4gICAgICAgIGNvbnN0IGFkanVzdGVkVG9wID0gdG9wICsgd2luZG93LnNjcm9sbFlcbiAgICAgICAgY29uc3QgYWRqdXN0ZWRCb3R0b20gPSBib3R0b20gKyB3aW5kb3cuc2Nyb2xsWVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICBwYWdlWSA8IGFkanVzdGVkVG9wIC0gdmVydGljYWxCdWZmZXIgfHxcbiAgICAgICAgICBwYWdlWSA+IGFkanVzdGVkQm90dG9tICsgdmVydGljYWxCdWZmZXIgfHxcbiAgICAgICAgICBwYWdlWCA8IGxlZnQgLSBob3Jpem9udGFsQnVmZmVyIHx8XG4gICAgICAgICAgcGFnZVggPiByaWdodCArIGhvcml6b250YWxCdWZmZXJcbiAgICAgICAgKSB7XG4gICAgICAgICAgc2V0RHJhZ2dhYmxlQmxvY2tFbGVtKG51bGwpXG4gICAgICAgICAgcmV0dXJuIGRpc3RhbmNlRnJvbVNjcm9sbGVyRWxlbVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyBpcyB1c2VkIHRvIGFsbG93IHRoZSBfZHJhZ2dhYmxlQmxvY2tFbGVtIHRvIGJlIGZvdW5kIHdoZW4gdGhlIG1vdXNlIGlzIGluIHRoZVxuICAgICAgICAvLyBidWZmZXIgem9uZSBhcm91bmQgdGhlIHNjcm9sbGVyRWxlbS5cbiAgICAgICAgaWYgKHBhZ2VYIDwgbGVmdCB8fCBwYWdlWCA+IHJpZ2h0KSB7XG4gICAgICAgICAgZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gcGFnZVggPCBsZWZ0ID8gcGFnZVggLSBsZWZ0IDogcGFnZVggLSByaWdodFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtXG4gICAgfSxcbiAgICBbc2Nyb2xsZXJFbGVtXSxcbiAgKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLyoqXG4gICAgICogSGFuZGxlcyBwb3NpdGlvbmluZyBvZiB0aGUgZHJhZyBoYW5kbGVcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBvbkRvY3VtZW50TW91c2VNb3ZlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXRcbiAgICAgIGlmICghaXNIVE1MRWxlbWVudCh0YXJnZXQpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSBjYWxjdWxhdGVEaXN0YW5jZUZyb21TY3JvbGxlckVsZW0oXG4gICAgICAgIGV2ZW50LnBhZ2VYLFxuICAgICAgICBldmVudC5wYWdlWSxcbiAgICAgICAgdGFyZ2V0LFxuICAgICAgKVxuXG4gICAgICBpZiAoaXNPbkhhbmRsZUVsZW1lbnQodGFyZ2V0LCBEUkFHR0FCTEVfQkxPQ0tfTUVOVV9DTEFTU05BTUUpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCB0b3BMZXZlbE5vZGVLZXlzID0gZ2V0VG9wTGV2ZWxOb2RlS2V5cyhlZGl0b3IpXG4gICAgICBjb25zdCB7XG4gICAgICAgIGJsb2NrRWxlbTogX2RyYWdnYWJsZUJsb2NrRWxlbSxcbiAgICAgICAgZm91bmRBdEluZGV4LFxuICAgICAgICBpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoLFxuICAgICAgfSA9IGdldE5vZGVDbG9zZVRvUG9pbnQoe1xuICAgICAgICBhbmNob3JFbGVtLFxuICAgICAgICBjYWNoZV90cmVzaG9sZDogMCxcbiAgICAgICAgZWRpdG9yLFxuICAgICAgICBob3Jpem9udGFsT2Zmc2V0OiAtZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtLFxuICAgICAgICBwb2ludDogbmV3IFBvaW50KGV2ZW50LngsIGV2ZW50LnkpLFxuICAgICAgICBzdGFydEluZGV4OiBnZXRDdXJyZW50SW5kZXgodG9wTGV2ZWxOb2RlS2V5cy5sZW5ndGgpLFxuICAgICAgICB1c2VFZGdlQXNEZWZhdWx0OiBmYWxzZSxcbiAgICAgIH0pXG4gICAgICAvL2lmIChERUJVRyAmJiBfZHJhZ2dhYmxlQmxvY2tFbGVtKSB7XG4gICAgICAvL3RhcmdldEJsb2NrRWxlbS5zdHlsZS5ib3JkZXIgPSAnM3B4IHNvbGlkIHJlZCdcbiAgICAgIC8vIGhpZ2hsaWdodEVsZW1PcmlnaW5hbFBvc2l0aW9uKGRlYnVnSGlnaGxpZ2h0UmVmLCBfZHJhZ2dhYmxlQmxvY2tFbGVtLCBhbmNob3JFbGVtKVxuICAgICAgLy99XG4gICAgICBwcmV2SW5kZXggPSBmb3VuZEF0SW5kZXhcblxuICAgICAgaWYgKCFfZHJhZ2dhYmxlQmxvY2tFbGVtICYmICFpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBzZXREcmFnZ2FibGVCbG9ja0VsZW0oX2RyYWdnYWJsZUJsb2NrRWxlbSlcbiAgICB9XG5cbiAgICAvLyBTaW5jZSB0aGUgZHJhZ2dhYmxlQmxvY2tFbGVtIGlzIG91dHNpZGUgdGhlIGFjdHVhbCBlZGl0b3IsIHdlIG5lZWQgdG8gbGlzdGVuIHRvIHRoZSBkb2N1bWVudFxuICAgIC8vIHRvIGJlIGFibGUgdG8gZGV0ZWN0IHdoZW4gdGhlIG1vdXNlIGlzIG91dHNpZGUgdGhlIGVkaXRvciBhbmQgcmVzcGVjdCBhIGJ1ZmZlciBhcm91bmQgdGhlXG4gICAgLy8gdGhlIHNjcm9sbGVyRWxlbSB0byBhdm9pZCB0aGUgZHJhZ2dhYmxlQmxvY2tFbGVtIGRpc2FwcGVhcmluZyB0b28gZWFybHkuXG4gICAgZG9jdW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIG9uRG9jdW1lbnRNb3VzZU1vdmUpXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIG9uRG9jdW1lbnRNb3VzZU1vdmUpXG4gICAgfVxuICB9LCBbc2Nyb2xsZXJFbGVtLCBhbmNob3JFbGVtLCBlZGl0b3IsIGNhbGN1bGF0ZURpc3RhbmNlRnJvbVNjcm9sbGVyRWxlbV0pXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobWVudVJlZi5jdXJyZW50KSB7XG4gICAgICBzZXRIYW5kbGVQb3NpdGlvbihkcmFnZ2FibGVCbG9ja0VsZW0sIG1lbnVSZWYuY3VycmVudCwgYW5jaG9yRWxlbSwgU1BBQ0UpXG4gICAgfVxuICB9LCBbYW5jaG9yRWxlbSwgZHJhZ2dhYmxlQmxvY2tFbGVtXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZ1bmN0aW9uIG9uRHJhZ292ZXIoZXZlbnQ6IERyYWdFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgaWYgKCFpc0RyYWdnaW5nQmxvY2tSZWYuY3VycmVudCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtpc0ZpbGVUcmFuc2Zlcl0gPSBldmVudEZpbGVzKGV2ZW50KVxuICAgICAgaWYgKGlzRmlsZVRyYW5zZmVyKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuXG4gICAgICBjb25zdCB7IHBhZ2VZLCB0YXJnZXQgfSA9IGV2ZW50XG4gICAgICBpZiAoIWlzSFRNTEVsZW1lbnQodGFyZ2V0KSkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtID0gY2FsY3VsYXRlRGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtKFxuICAgICAgICBldmVudC5wYWdlWCxcbiAgICAgICAgZXZlbnQucGFnZVksXG4gICAgICAgIHRhcmdldCxcbiAgICAgICAgMTAwLFxuICAgICAgICA1MCxcbiAgICAgIClcblxuICAgICAgY29uc3QgdG9wTGV2ZWxOb2RlS2V5cyA9IGdldFRvcExldmVsTm9kZUtleXMoZWRpdG9yKVxuXG4gICAgICBjb25zdCB7XG4gICAgICAgIGJsb2NrRWxlbTogdGFyZ2V0QmxvY2tFbGVtLFxuICAgICAgICBmb3VuZEF0SW5kZXgsXG4gICAgICAgIGlzRm91bmROb2RlRW1wdHlQYXJhZ3JhcGgsXG4gICAgICB9ID0gZ2V0Tm9kZUNsb3NlVG9Qb2ludCh7XG4gICAgICAgIGFuY2hvckVsZW0sXG4gICAgICAgIGVkaXRvcixcbiAgICAgICAgZnV6enk6IHRydWUsXG4gICAgICAgIGhvcml6b250YWxPZmZzZXQ6IC1kaXN0YW5jZUZyb21TY3JvbGxlckVsZW0sXG4gICAgICAgIHBvaW50OiBuZXcgUG9pbnQoZXZlbnQueCwgZXZlbnQueSksXG4gICAgICAgIHN0YXJ0SW5kZXg6IGdldEN1cnJlbnRJbmRleCh0b3BMZXZlbE5vZGVLZXlzLmxlbmd0aCksXG4gICAgICAgIHVzZUVkZ2VBc0RlZmF1bHQ6IHRydWUsXG4gICAgICAgIHZlcmJvc2U6IHRydWUsXG4gICAgICB9KVxuICAgICAgcHJldkluZGV4ID0gZm91bmRBdEluZGV4XG5cbiAgICAgIGNvbnN0IHRhcmdldExpbmVFbGVtID0gdGFyZ2V0TGluZVJlZi5jdXJyZW50XG4gICAgICAvLyB0YXJnZXRCbG9ja0VsZW0gPT09IG51bGwgc2hvdWxkbid0IGhhcHBlblxuICAgICAgaWYgKHRhcmdldEJsb2NrRWxlbSA9PT0gbnVsbCB8fCB0YXJnZXRMaW5lRWxlbSA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgaWYgKGRyYWdnYWJsZUJsb2NrRWxlbSAhPT0gdGFyZ2V0QmxvY2tFbGVtKSB7XG4gICAgICAgIHNldFRhcmdldExpbmUoXG4gICAgICAgICAgU1BBQ0UsXG4gICAgICAgICAgdGFyZ2V0TGluZUVsZW0sXG4gICAgICAgICAgdGFyZ2V0QmxvY2tFbGVtLFxuICAgICAgICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0sXG4gICAgICAgICAgcGFnZVksXG4gICAgICAgICAgYW5jaG9yRWxlbSxcbiAgICAgICAgICBldmVudCxcbiAgICAgICAgICBkZWJ1Z0hpZ2hsaWdodFJlZixcbiAgICAgICAgICBpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoLFxuICAgICAgICApXG5cbiAgICAgICAgLy8gUHJldmVudCBkZWZhdWx0IGV2ZW50IHRvIGJlIGFibGUgdG8gdHJpZ2dlciBvbkRyb3AgZXZlbnRzXG4gICAgICAgIC8vIENhbGxpbmcgcHJldmVudERlZmF1bHQoKSBhZGRzIHRoZSBncmVlbiBwbHVzIGljb24gdG8gdGhlIGN1cnNvcixcbiAgICAgICAgLy8gaW5kaWNhdGluZyB0aGF0IHRoZSBkcm9wIGlzIGFsbG93ZWQuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhpZGVUYXJnZXRMaW5lKHRhcmdldExpbmVFbGVtLCBsYXN0VGFyZ2V0QmxvY2tFbGVtKVxuICAgICAgfVxuXG4gICAgICBzZXRMYXN0VGFyZ2V0QmxvY2tFbGVtKHRhcmdldEJsb2NrRWxlbSlcblxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBvbkRyb3AoZXZlbnQ6IERyYWdFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgaWYgKCFpc0RyYWdnaW5nQmxvY2tSZWYuY3VycmVudCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICAgIGNvbnN0IFtpc0ZpbGVUcmFuc2Zlcl0gPSBldmVudEZpbGVzKGV2ZW50KVxuICAgICAgaWYgKGlzRmlsZVRyYW5zZmVyKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgICAgY29uc3QgeyBkYXRhVHJhbnNmZXIsIHBhZ2VZLCB0YXJnZXQgfSA9IGV2ZW50XG4gICAgICBjb25zdCBkcmFnRGF0YSA9IGRhdGFUcmFuc2Zlcj8uZ2V0RGF0YShEUkFHX0RBVEFfRk9STUFUKSB8fCAnJ1xuXG4gICAgICBlZGl0b3IudXBkYXRlKCgpID0+IHtcbiAgICAgICAgY29uc3QgZHJhZ2dlZE5vZGUgPSAkZ2V0Tm9kZUJ5S2V5KGRyYWdEYXRhKVxuICAgICAgICBpZiAoIWRyYWdnZWROb2RlKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc0hUTUxFbGVtZW50KHRhcmdldCkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0gPSBjYWxjdWxhdGVEaXN0YW5jZUZyb21TY3JvbGxlckVsZW0oXG4gICAgICAgICAgZXZlbnQucGFnZVgsXG4gICAgICAgICAgZXZlbnQucGFnZVksXG4gICAgICAgICAgdGFyZ2V0LFxuICAgICAgICAgIDEwMCxcbiAgICAgICAgICA1MCxcbiAgICAgICAgKVxuXG4gICAgICAgIGNvbnN0IHsgYmxvY2tFbGVtOiB0YXJnZXRCbG9ja0VsZW0sIGlzRm91bmROb2RlRW1wdHlQYXJhZ3JhcGggfSA9IGdldE5vZGVDbG9zZVRvUG9pbnQoe1xuICAgICAgICAgIGFuY2hvckVsZW0sXG4gICAgICAgICAgZWRpdG9yLFxuICAgICAgICAgIGZ1enp5OiB0cnVlLFxuICAgICAgICAgIGhvcml6b250YWxPZmZzZXQ6IC1kaXN0YW5jZUZyb21TY3JvbGxlckVsZW0sXG4gICAgICAgICAgcG9pbnQ6IG5ldyBQb2ludChldmVudC54LCBldmVudC55KSxcbiAgICAgICAgICB1c2VFZGdlQXNEZWZhdWx0OiB0cnVlLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmICghdGFyZ2V0QmxvY2tFbGVtKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdGFyZ2V0Tm9kZSA9ICRnZXROZWFyZXN0Tm9kZUZyb21ET01Ob2RlKHRhcmdldEJsb2NrRWxlbSlcbiAgICAgICAgaWYgKCF0YXJnZXROb2RlKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRhcmdldE5vZGUgPT09IGRyYWdnZWROb2RlKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgaGVpZ2h0OiB0YXJnZXRCbG9ja0VsZW1IZWlnaHQsIHRvcDogdGFyZ2V0QmxvY2tFbGVtVG9wIH0gPVxuICAgICAgICAgIGdldEJvdW5kaW5nQ2xpZW50UmVjdFdpdGhvdXRUcmFuc2Zvcm0odGFyZ2V0QmxvY2tFbGVtKVxuXG4gICAgICAgIGNvbnN0IG1vdXNlWSA9IHBhZ2VZXG4gICAgICAgIGNvbnN0IGlzQmVsb3cgPSBtb3VzZVkgPj0gdGFyZ2V0QmxvY2tFbGVtVG9wICsgdGFyZ2V0QmxvY2tFbGVtSGVpZ2h0IC8gMiArIHdpbmRvdy5zY3JvbGxZXG5cbiAgICAgICAgaWYgKCFpc0ZvdW5kTm9kZUVtcHR5UGFyYWdyYXBoKSB7XG4gICAgICAgICAgaWYgKGlzQmVsb3cpIHtcbiAgICAgICAgICAgIC8vIGJlbG93IHRhcmdldEJsb2NrRWxlbVxuICAgICAgICAgICAgdGFyZ2V0Tm9kZS5pbnNlcnRBZnRlcihkcmFnZ2VkTm9kZSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gYWJvdmUgdGFyZ2V0QmxvY2tFbGVtXG4gICAgICAgICAgICB0YXJnZXROb2RlLmluc2VydEJlZm9yZShkcmFnZ2VkTm9kZSlcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy9cbiAgICAgICAgICB0YXJnZXROb2RlLmluc2VydEJlZm9yZShkcmFnZ2VkTm9kZSlcbiAgICAgICAgICB0YXJnZXROb2RlLnJlbW92ZSgpXG4gICAgICAgIH1cblxuICAgICAgICAvKlxuICAgICAgICBpZiAocGFnZVkgPj0gdGFyZ2V0QmxvY2tFbGVtVG9wICsgdGFyZ2V0QmxvY2tFbGVtSGVpZ2h0IC8gMikge1xuICAgICAgICAgIHRhcmdldE5vZGUuaW5zZXJ0QWZ0ZXIoZHJhZ2dlZE5vZGUpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGFyZ2V0Tm9kZS5pbnNlcnRCZWZvcmUoZHJhZ2dlZE5vZGUpXG4gICAgICAgIH0qL1xuICAgICAgICBzZXREcmFnZ2FibGVCbG9ja0VsZW0obnVsbClcbiAgICAgIH0pXG5cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgLy8gcmVnaXN0ZXIgb25EcmFnb3ZlciBldmVudCBsaXN0ZW5lcnM6XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZHJhZ292ZXInLCBvbkRyYWdvdmVyKVxuICAgIC8vIHJlZ2lzdGVyIG9uRHJvcCBldmVudCBsaXN0ZW5lcnM6XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZHJvcCcsIG9uRHJvcClcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdkcmFnb3ZlcicsIG9uRHJhZ292ZXIpXG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdkcm9wJywgb25Ecm9wKVxuICAgIH1cbiAgfSwgW1xuICAgIGFuY2hvckVsZW0sXG4gICAgZWRpdG9yLFxuICAgIGxhc3RUYXJnZXRCbG9ja0VsZW0sXG4gICAgY2FsY3VsYXRlRGlzdGFuY2VGcm9tU2Nyb2xsZXJFbGVtLFxuICAgIGRyYWdnYWJsZUJsb2NrRWxlbSxcbiAgXSlcblxuICBmdW5jdGlvbiBvbkRyYWdTdGFydChldmVudDogUmVhY3REcmFnRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KTogdm9pZCB7XG4gICAgY29uc3QgZGF0YVRyYW5zZmVyID0gZXZlbnQuZGF0YVRyYW5zZmVyXG4gICAgaWYgKCFkYXRhVHJhbnNmZXIgfHwgIWRyYWdnYWJsZUJsb2NrRWxlbSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHNldERyYWdJbWFnZShkYXRhVHJhbnNmZXIsIGRyYWdnYWJsZUJsb2NrRWxlbSlcbiAgICBsZXQgbm9kZUtleSA9ICcnXG4gICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICBjb25zdCBub2RlID0gJGdldE5lYXJlc3ROb2RlRnJvbURPTU5vZGUoZHJhZ2dhYmxlQmxvY2tFbGVtKVxuICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgbm9kZUtleSA9IG5vZGUuZ2V0S2V5KClcbiAgICAgIH1cbiAgICB9KVxuICAgIGlzRHJhZ2dpbmdCbG9ja1JlZi5jdXJyZW50ID0gdHJ1ZVxuICAgIGRhdGFUcmFuc2Zlci5zZXREYXRhKERSQUdfREFUQV9GT1JNQVQsIG5vZGVLZXkpXG4gIH1cblxuICBmdW5jdGlvbiBvbkRyYWdFbmQoKTogdm9pZCB7XG4gICAgaXNEcmFnZ2luZ0Jsb2NrUmVmLmN1cnJlbnQgPSBmYWxzZVxuICAgIGhpZGVUYXJnZXRMaW5lKHRhcmdldExpbmVSZWYuY3VycmVudCwgbGFzdFRhcmdldEJsb2NrRWxlbSlcbiAgfVxuXG4gIHJldHVybiBjcmVhdGVQb3J0YWwoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9XCJpY29uIGRyYWdnYWJsZS1ibG9jay1tZW51XCJcbiAgICAgICAgZHJhZ2dhYmxlXG4gICAgICAgIG9uRHJhZ0VuZD17b25EcmFnRW5kfVxuICAgICAgICBvbkRyYWdTdGFydD17b25EcmFnU3RhcnR9XG4gICAgICAgIHJlZj17bWVudVJlZn1cbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2lzRWRpdGFibGUgPyAnaWNvbicgOiAnJ30gLz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJkcmFnZ2FibGUtYmxvY2stdGFyZ2V0LWxpbmVcIiByZWY9e3RhcmdldExpbmVSZWZ9IC8+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImRlYnVnLWhpZ2hsaWdodFwiIHJlZj17ZGVidWdIaWdobGlnaHRSZWZ9IC8+XG4gICAgPC9SZWFjdC5GcmFnbWVudD4sXG4gICAgYW5jaG9yRWxlbSxcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gRHJhZ2dhYmxlQmxvY2tQbHVnaW4oe1xuICBhbmNob3JFbGVtID0gZG9jdW1lbnQuYm9keSxcbn06IHtcbiAgYW5jaG9yRWxlbT86IEhUTUxFbGVtZW50XG59KTogSlNYLkVsZW1lbnQge1xuICBjb25zdCBbZWRpdG9yXSA9IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQoKVxuICByZXR1cm4gdXNlRHJhZ2dhYmxlQmxvY2tNZW51KGVkaXRvciwgYW5jaG9yRWxlbSwgZWRpdG9yLl9lZGl0YWJsZSlcbn1cbiJdLCJuYW1lcyI6WyJEcmFnZ2FibGVCbG9ja1BsdWdpbiIsIlNQQUNFIiwiRFJBR0dBQkxFX0JMT0NLX01FTlVfQ0xBU1NOQU1FIiwiRFJBR19EQVRBX0ZPUk1BVCIsInByZXZJbmRleCIsIkluZmluaXR5IiwiZ2V0Q3VycmVudEluZGV4Iiwia2V5c0xlbmd0aCIsIk1hdGgiLCJmbG9vciIsInNldERyYWdJbWFnZSIsImRhdGFUcmFuc2ZlciIsImRyYWdnYWJsZUJsb2NrRWxlbSIsInRyYW5zZm9ybSIsInN0eWxlIiwic2V0VGltZW91dCIsImhpZGVUYXJnZXRMaW5lIiwidGFyZ2V0TGluZUVsZW0iLCJsYXN0VGFyZ2V0QmxvY2tFbGVtIiwib3BhY2l0eSIsInVzZURyYWdnYWJsZUJsb2NrTWVudSIsImVkaXRvciIsImFuY2hvckVsZW0iLCJpc0VkaXRhYmxlIiwic2Nyb2xsZXJFbGVtIiwicGFyZW50RWxlbWVudCIsIm1lbnVSZWYiLCJ1c2VSZWYiLCJ0YXJnZXRMaW5lUmVmIiwiZGVidWdIaWdobGlnaHRSZWYiLCJpc0RyYWdnaW5nQmxvY2tSZWYiLCJzZXREcmFnZ2FibGVCbG9ja0VsZW0iLCJ1c2VTdGF0ZSIsInNldExhc3RUYXJnZXRCbG9ja0VsZW0iLCJjYWxjdWxhdGVEaXN0YW5jZUZyb21TY3JvbGxlckVsZW0iLCJ1c2VDYWxsYmFjayIsInBhZ2VYIiwicGFnZVkiLCJ0YXJnZXQiLCJob3Jpem9udGFsQnVmZmVyIiwidmVydGljYWxCdWZmZXIiLCJkaXN0YW5jZUZyb21TY3JvbGxlckVsZW0iLCJjb250YWlucyIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsInRvcCIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImFkanVzdGVkVG9wIiwid2luZG93Iiwic2Nyb2xsWSIsImFkanVzdGVkQm90dG9tIiwidXNlRWZmZWN0Iiwib25Eb2N1bWVudE1vdXNlTW92ZSIsImV2ZW50IiwiaXNIVE1MRWxlbWVudCIsImlzT25IYW5kbGVFbGVtZW50IiwidG9wTGV2ZWxOb2RlS2V5cyIsImdldFRvcExldmVsTm9kZUtleXMiLCJibG9ja0VsZW0iLCJfZHJhZ2dhYmxlQmxvY2tFbGVtIiwiZm91bmRBdEluZGV4IiwiaXNGb3VuZE5vZGVFbXB0eVBhcmFncmFwaCIsImdldE5vZGVDbG9zZVRvUG9pbnQiLCJjYWNoZV90cmVzaG9sZCIsImhvcml6b250YWxPZmZzZXQiLCJwb2ludCIsIlBvaW50IiwieCIsInkiLCJzdGFydEluZGV4IiwibGVuZ3RoIiwidXNlRWRnZUFzRGVmYXVsdCIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjdXJyZW50Iiwic2V0SGFuZGxlUG9zaXRpb24iLCJvbkRyYWdvdmVyIiwiaXNGaWxlVHJhbnNmZXIiLCJldmVudEZpbGVzIiwidGFyZ2V0QmxvY2tFbGVtIiwiZnV6enkiLCJ2ZXJib3NlIiwic2V0VGFyZ2V0TGluZSIsInByZXZlbnREZWZhdWx0Iiwib25Ecm9wIiwiZHJhZ0RhdGEiLCJnZXREYXRhIiwidXBkYXRlIiwiZHJhZ2dlZE5vZGUiLCIkZ2V0Tm9kZUJ5S2V5IiwidGFyZ2V0Tm9kZSIsIiRnZXROZWFyZXN0Tm9kZUZyb21ET01Ob2RlIiwiaGVpZ2h0IiwidGFyZ2V0QmxvY2tFbGVtSGVpZ2h0IiwidGFyZ2V0QmxvY2tFbGVtVG9wIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0V2l0aG91dFRyYW5zZm9ybSIsIm1vdXNlWSIsImlzQmVsb3ciLCJpbnNlcnRBZnRlciIsImluc2VydEJlZm9yZSIsInJlbW92ZSIsIm9uRHJhZ1N0YXJ0Iiwibm9kZUtleSIsIm5vZGUiLCJnZXRLZXkiLCJzZXREYXRhIiwib25EcmFnRW5kIiwiY3JlYXRlUG9ydGFsIiwiUmVhY3QiLCJGcmFnbWVudCIsImRpdiIsImNsYXNzTmFtZSIsImRyYWdnYWJsZSIsInJlZiIsImJvZHkiLCJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiX2VkaXRhYmxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7K0JBa1lnQkE7OztlQUFBQTs7O3dDQTlYMEI7MEJBQ2Y7eUJBQytCOytEQUNuQzswQkFFTTt1QkFFQzt1QkFDUjtxQ0FDYzttQ0FDRjttQ0FDQTtpREFDb0I7cUNBQ2xCO1FBQzdCOytCQUN1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTlCLE1BQU1DLFFBQVEsQ0FBQztBQUNmLE1BQU1DLGlDQUFpQztBQUN2QyxNQUFNQyxtQkFBbUI7QUFFekIsSUFBSUMsWUFBWUM7QUFFaEIsU0FBU0MsZ0JBQWdCQyxVQUFrQjtJQUN6QyxJQUFJQSxlQUFlLEdBQUc7UUFDcEIsT0FBT0Y7SUFDVDtJQUNBLElBQUlE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
@@ -1,5 +1,3 @@
1
- @import 'payload/scss';
2
-
3
1
  .draggable-block-menu {
4
2
  border-radius: 4px;
5
3
  padding: 0px;
@@ -1 +1 @@
1
- {"version":3,"file":"EditorTheme.d.ts","sourceRoot":"","sources":["../../../../src/field/lexical/theme/EditorTheme.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAEjD,OAAO,oBAAoB,CAAA;AAE3B,eAAO,MAAM,kBAAkB,EAAE,kBAqGhC,CAAA"}
1
+ {"version":3,"file":"EditorTheme.d.ts","sourceRoot":"","sources":["../../../../src/field/lexical/theme/EditorTheme.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAEjD,OAAO,oBAAoB,CAAA;AAE3B,eAAO,MAAM,kBAAkB,EAAE,kBAsGhC,CAAA"}
@@ -63,6 +63,7 @@ const LexicalEditorTheme = {
63
63
  inlineImage: 'LexicalEditor__inline-image',
64
64
  link: 'LexicalEditorTheme__link',
65
65
  list: {
66
+ checklist: 'LexicalEditorTheme__checklist',
66
67
  listitem: 'LexicalEditorTheme__listItem',
67
68
  listitemChecked: 'LexicalEditorTheme__listItemChecked',
68
69
  listitemUnchecked: 'LexicalEditorTheme__listItemUnchecked',
@@ -112,4 +113,4 @@ const LexicalEditorTheme = {
112
113
  upload: 'editor-upload'
113
114
  };
114
115
 
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3RoZW1lL0VkaXRvclRoZW1lLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVkaXRvclRoZW1lQ2xhc3NlcyB9IGZyb20gJ2xleGljYWwnXG5cbmltcG9ydCAnLi9FZGl0b3JUaGVtZS5zY3NzJ1xuXG5leHBvcnQgY29uc3QgTGV4aWNhbEVkaXRvclRoZW1lOiBFZGl0b3JUaGVtZUNsYXNzZXMgPSB7XG4gIGJsb2NrOiAnTGV4aWNhbEVkaXRvclRoZW1lX19ibG9jaycsXG4gIGJsb2NrQ3Vyc29yOiAnTGV4aWNhbEVkaXRvclRoZW1lX19ibG9ja0N1cnNvcicsXG4gIGNoYXJhY3RlckxpbWl0OiAnTGV4aWNhbEVkaXRvclRoZW1lX19jaGFyYWN0ZXJMaW1pdCcsXG4gIGNvZGU6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2NvZGUnLFxuICBjb2RlSGlnaGxpZ2h0OiB7XG4gICAgYXRydWxlOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkF0dHInLFxuICAgIGF0dHI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuQXR0cicsXG4gICAgYm9vbGVhbjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgYnVpbHRpbjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5TZWxlY3RvcicsXG4gICAgY2RhdGE6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuQ29tbWVudCcsXG4gICAgY2hhcjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5TZWxlY3RvcicsXG4gICAgY2xhc3M6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuRnVuY3Rpb24nLFxuICAgICdjbGFzcy1uYW1lJzogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5GdW5jdGlvbicsXG4gICAgY29tbWVudDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Db21tZW50JyxcbiAgICBjb25zdGFudDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgZGVsZXRlZDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgZG9jdHlwZTogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Db21tZW50JyxcbiAgICBlbnRpdHk6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuT3BlcmF0b3InLFxuICAgIGZ1bmN0aW9uOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkZ1bmN0aW9uJyxcbiAgICBpbXBvcnRhbnQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuVmFyaWFibGUnLFxuICAgIGluc2VydGVkOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblNlbGVjdG9yJyxcbiAgICBrZXl3b3JkOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkF0dHInLFxuICAgIG5hbWVzcGFjZTogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5WYXJpYWJsZScsXG4gICAgbnVtYmVyOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblByb3BlcnR5JyxcbiAgICBvcGVyYXRvcjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5PcGVyYXRvcicsXG4gICAgcHJvbG9nOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkNvbW1lbnQnLFxuICAgIHByb3BlcnR5OiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblByb3BlcnR5JyxcbiAgICBwdW5jdHVhdGlvbjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5QdW5jdHVhdGlvbicsXG4gICAgcmVnZXg6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuVmFyaWFibGUnLFxuICAgIHNlbGVjdG9yOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblNlbGVjdG9yJyxcbiAgICBzdHJpbmc6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuU2VsZWN0b3InLFxuICAgIHN5bWJvbDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgdGFnOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblByb3BlcnR5JyxcbiAgICB1cmw6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuT3BlcmF0b3InLFxuICAgIHZhcmlhYmxlOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblZhcmlhYmxlJyxcbiAgfSxcbiAgZW1iZWRCbG9jazoge1xuICAgIGJhc2U6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2VtYmVkQmxvY2snLFxuICAgIGZvY3VzOiAnTGV4aWNhbEVkaXRvclRoZW1lX19lbWJlZEJsb2NrRm9jdXMnLFxuICB9LFxuICBoYXNodGFnOiAnTGV4aWNhbEVkaXRvclRoZW1lX19oYXNodGFnJyxcbiAgaGVhZGluZzoge1xuICAgIGgxOiAnTGV4aWNhbEVkaXRvclRoZW1lX19oMScsXG4gICAgaDI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2gyJyxcbiAgICBoMzogJ0xleGljYWxFZGl0b3JUaGVtZV9faDMnLFxuICAgIGg0OiAnTGV4aWNhbEVkaXRvclRoZW1lX19oNCcsXG4gICAgaDU6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2g1JyxcbiAgICBoNjogJ0xleGljYWxFZGl0b3JUaGVtZV9faDYnLFxuICB9LFxuICBpbmRlbnQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2luZGVudCcsXG4gIGlubGluZUltYWdlOiAnTGV4aWNhbEVkaXRvcl9faW5saW5lLWltYWdlJyxcbiAgbGluazogJ0xleGljYWxFZGl0b3JUaGVtZV9fbGluaycsXG4gIGxpc3Q6IHtcbiAgICBsaXN0aXRlbTogJ0xleGljYWxFZGl0b3JUaGVtZV9fbGlzdEl0ZW0nLFxuICAgIGxpc3RpdGVtQ2hlY2tlZDogJ0xleGljYWxFZGl0b3JUaGVtZV9fbGlzdEl0ZW1DaGVja2VkJyxcbiAgICBsaXN0aXRlbVVuY2hlY2tlZDogJ0xleGljYWxFZGl0b3JUaGVtZV9fbGlzdEl0ZW1VbmNoZWNrZWQnLFxuICAgIG5lc3RlZDoge1xuICAgICAgbGlzdGl0ZW06ICdMZXhpY2FsRWRpdG9yVGhlbWVfX25lc3RlZExpc3RJdGVtJyxcbiAgICB9LFxuICAgIG9sRGVwdGg6IFtcbiAgICAgICdMZXhpY2FsRWRpdG9yVGhlbWVfX29sMScsXG4gICAgICAnTGV4aWNhbEVkaXRvclRoZW1lX19vbDInLFxuICAgICAgJ0xleGljYWxFZGl0b3JUaGVtZV9fb2wzJyxcbiAgICAgICdMZXhpY2FsRWRpdG9yVGhlbWVfX29sNCcsXG4gICAgICAnTGV4aWNhbEVkaXRvclRoZW1lX19vbDUnLFxuICAgIF0sXG4gICAgdWw6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3VsJyxcbiAgfSxcbiAgbHRyOiAnTGV4aWNhbEVkaXRvclRoZW1lX19sdHInLFxuICBtYXJrOiAnTGV4aWNhbEVkaXRvclRoZW1lX19tYXJrJyxcbiAgbWFya092ZXJsYXA6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX21hcmtPdmVybGFwJyxcbiAgcGFyYWdyYXBoOiAnTGV4aWNhbEVkaXRvclRoZW1lX19wYXJhZ3JhcGgnLFxuICBxdW90ZTogJ0xleGljYWxFZGl0b3JUaGVtZV9fcXVvdGUnLFxuICByZWxhdGlvbnNoaXA6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3JlbGF0aW9uc2hpcCcsXG4gIHJ0bDogJ0xleGljYWxFZGl0b3JUaGVtZV9fcnRsJyxcbiAgdGFibGU6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlJyxcbiAgdGFibGVBZGRDb2x1bW5zOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZUFkZENvbHVtbnMnLFxuICB0YWJsZUFkZFJvd3M6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQWRkUm93cycsXG4gIHRhYmxlQ2VsbDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVDZWxsJyxcbiAgdGFibGVDZWxsQWN0aW9uQnV0dG9uOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZUNlbGxBY3Rpb25CdXR0b24nLFxuICB0YWJsZUNlbGxBY3Rpb25CdXR0b25Db250YWluZXI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbEFjdGlvbkJ1dHRvbkNvbnRhaW5lcicsXG4gIHRhYmxlQ2VsbEVkaXRpbmc6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbEVkaXRpbmcnLFxuICB0YWJsZUNlbGxIZWFkZXI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbEhlYWRlcicsXG4gIHRhYmxlQ2VsbFByaW1hcnlTZWxlY3RlZDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVDZWxsUHJpbWFyeVNlbGVjdGVkJyxcbiAgdGFibGVDZWxsUmVzaXplcjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVDZWxsUmVzaXplcicsXG4gIHRhYmxlQ2VsbFNlbGVjdGVkOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZUNlbGxTZWxlY3RlZCcsXG4gIHRhYmxlQ2VsbFNvcnRlZEluZGljYXRvcjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVDZWxsU29ydGVkSW5kaWNhdG9yJyxcbiAgdGFibGVSZXNpemVSdWxlcjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVDZWxsUmVzaXplUnVsZXInLFxuICB0YWJsZVNlbGVjdGVkOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZVNlbGVjdGVkJyxcbiAgdGV4dDoge1xuICAgIGJvbGQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RleHRCb2xkJyxcbiAgICBjb2RlOiAnTGV4aWNhbEVkaXRvclRoZW1lX190ZXh0Q29kZScsXG4gICAgaXRhbGljOiAnTGV4aWNhbEVkaXRvclRoZW1lX190ZXh0SXRhbGljJyxcbiAgICBzdHJpa2V0aHJvdWdoOiAnTGV4aWNhbEVkaXRvclRoZW1lX190ZXh0U3RyaWtldGhyb3VnaCcsXG4gICAgc3Vic2NyaXB0OiAnTGV4aWNhbEVkaXRvclRoZW1lX190ZXh0U3Vic2NyaXB0JyxcbiAgICBzdXBlcnNjcmlwdDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGV4dFN1cGVyc2NyaXB0JyxcbiAgICB1bmRlcmxpbmU6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RleHRVbmRlcmxpbmUnLFxuICAgIHVuZGVybGluZVN0cmlrZXRocm91Z2g6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RleHRVbmRlcmxpbmVTdHJpa2V0aHJvdWdoJyxcbiAgfSxcbiAgdXBsb2FkOiAnZWRpdG9yLXVwbG9hZCcsXG59XG4iXSwibmFtZXMiOlsiTGV4aWNhbEVkaXRvclRoZW1lIiwiYmxvY2siLCJibG9ja0N1cnNvciIsImNoYXJhY3RlckxpbWl0IiwiY29kZSIsImNvZGVIaWdobGlnaHQiLCJhdHJ1bGUiLCJhdHRyIiwiYm9vbGVhbiIsImJ1aWx0aW4iLCJjZGF0YSIsImNoYXIiLCJjbGFzcyIsImNvbW1lbnQiLCJjb25zdGFudCIsImRlbGV0ZWQiLCJkb2N0eXBlIiwiZW50aXR5IiwiZnVuY3Rpb24iLCJpbXBvcnRhbnQiLCJpbnNlcnRlZCIsImtleXdvcmQiLCJuYW1lc3BhY2UiLCJudW1iZXIiLCJvcGVyYXRvciIsInByb2xvZyIsInByb3BlcnR5IiwicHVuY3R1YXRpb24iLCJyZWdleCIsInNlbGVjdG9yIiwic3RyaW5nIiwic3ltYm9sIiwidGFnIiwidXJsIiwidmFyaWFibGUiLCJlbWJlZEJsb2NrIiwiYmFzZSIsImZvY3VzIiwiaGFzaHRhZyIsImhlYWRpbmciLCJoMSIsImgyIiwiaDMiLCJoNCIsImg1IiwiaDYiLCJpbmRlbnQiLCJpbmxpbmVJbWFnZSIsImxpbmsiLCJsaXN0IiwibGlzdGl0ZW0iLCJsaXN0aXRlbUNoZWNrZWQiLCJsaXN0aXRlbVVuY2hlY2tlZCIsIm5lc3RlZCIsIm9sRGVwdGgiLCJ1bCIsImx0ciIsIm1hcmsiLCJtYXJrT3ZlcmxhcCIsInBhcmFncmFwaCIsInF1b3RlIiwicmVsYXRpb25zaGlwIiwicnRsIiwidGFibGUiLCJ0YWJsZUFkZENvbHVtbnMiLCJ0YWJsZUFkZFJvd3MiLCJ0YWJsZUNlbGwiLCJ0YWJsZUNlbGxBY3Rpb25CdXR0b24iLCJ0YWJsZUNlbGxBY3Rpb25CdXR0b25Db250YWluZXIiLCJ0YWJsZUNlbGxFZGl0aW5nIiwidGFibGVDZWxsSGVhZGVyIiwidGFibGVDZWxsUHJpbWFyeVNlbGVjdGVkIiwidGFibGVDZWxsUmVzaXplciIsInRhYmxlQ2VsbFNlbGVjdGVkIiwidGFibGVDZWxsU29ydGVkSW5kaWNhdG9yIiwidGFibGVSZXNpemVSdWxlciIsInRhYmxlU2VsZWN0ZWQiLCJ0ZXh0IiwiYm9sZCIsIml0YWxpYyIsInN0cmlrZXRocm91Z2giLCJzdWJzY3JpcHQiLCJzdXBlcnNjcmlwdCIsInVuZGVybGluZSIsInVuZGVybGluZVN0cmlrZXRocm91Z2giLCJ1cGxvYWQiXSwibWFwcGluZ3MiOiI7Ozs7K0JBSWFBOzs7ZUFBQUE7OztRQUZOO0FBRUEsTUFBTUEscUJBQXlDO0lBQ3BEQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsZ0JBQWdCO0lBQ2hCQyxNQUFNO0lBQ05DLGVBQWU7UUFDYkMsUUFBUTtRQUNSQyxNQUFNO1FBQ05DLFNBQVM7UUFDVEMsU0FBUztRQUNUQyxPQUFPO1FBQ1BDLE1BQU07UUFDTkMsT0FBTztRQUNQLGNBQWM7UUFDZEMsU0FBUztRQUNUQyxVQUFVO1FBQ1ZDLFNBQVM7UUFDVEMsU0FBUztRQUNUQyxRQUFRO1FBQ1JDLFVBQVU7UUFDVkMsV0FBVztRQUNYQyxVQUFVO1FBQ1ZDLFNBQVM7UUFDVEMsV0FBVztRQUNYQyxRQUFRO1FBQ1JDLFVBQVU7UUFDVkMsUUFBUTtRQUNSQyxVQUFVO1FBQ1ZDLGFBQWE7UUFDYkMsT0FBTztRQUNQQyxVQUFVO1FBQ1ZDLFFBQVE7UUFDUkMsUUFBUTtRQUNSQyxLQUFLO1FBQ0xDLEtBQUs7UUFDTEMsVUFBVTtJQUNaO0lBQ0FDLFlBQVk7UUFDVkMsTUFBTTtRQUNOQyxPQUFPO0lBQ1Q7SUFDQUMsU0FBUztJQUNUQyxTQUFTO1FBQ1BDLElBQUk7UUFDSkMsSUFBSTtRQUNKQyxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsSUFBSTtRQUNKQyxJQUFJO0lBQ047SUFDQUMsUUFBUTtJQUNSQyxhQUFhO0lBQ2JDLE1BQU07SUFDTkMsTUFBTTtRQUNKQyxVQUFVO1FBQ1ZDLGlCQUFpQjtRQUNqQkMsbUJBQW1CO1FBQ25CQyxRQUFRO1lBQ05ILFVBQVU7UUFDWjtRQUNBSSxTQUFTO1lBQ1A7WUFDQTtZQUNBO1lBQ0E7WUFDQTtTQUNEO1FBQ0RDLElBQUk7SUFDTjtJQUNBQyxLQUFLO0lBQ0xDLE1BQU07SUFDTkMsYUFBYTtJQUNiQyxXQUFXO0lBQ1hDLE9BQU87SUFDUEMsY0FBYztJQUNkQyxLQUFLO0lBQ0xDLE9BQU87SUFDUEMsaUJBQWlCO0lBQ2pCQyxjQUFjO0lBQ2RDLFdBQVc7SUFDWEMsdUJBQXVCO0lBQ3ZCQyxnQ0FBZ0M7SUFDaENDLGtCQUFrQjtJQUNsQkMsaUJBQWlCO0lBQ2pCQywwQkFBMEI7SUFDMUJDLGtCQUFrQjtJQUNsQkMsbUJBQW1CO0lBQ25CQywwQkFBMEI7SUFDMUJDLGtCQUFrQjtJQUNsQkMsZUFBZTtJQUNmQyxNQUFNO1FBQ0pDLE1BQU07UUFDTjFFLE1BQU07UUFDTjJFLFFBQVE7UUFDUkMsZUFBZTtRQUNmQyxXQUFXO1FBQ1hDLGFBQWE7UUFDYkMsV0FBVztRQUNYQyx3QkFBd0I7SUFDMUI7SUFDQUMsUUFBUTtBQUNWIn0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3RoZW1lL0VkaXRvclRoZW1lLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVkaXRvclRoZW1lQ2xhc3NlcyB9IGZyb20gJ2xleGljYWwnXG5cbmltcG9ydCAnLi9FZGl0b3JUaGVtZS5zY3NzJ1xuXG5leHBvcnQgY29uc3QgTGV4aWNhbEVkaXRvclRoZW1lOiBFZGl0b3JUaGVtZUNsYXNzZXMgPSB7XG4gIGJsb2NrOiAnTGV4aWNhbEVkaXRvclRoZW1lX19ibG9jaycsXG4gIGJsb2NrQ3Vyc29yOiAnTGV4aWNhbEVkaXRvclRoZW1lX19ibG9ja0N1cnNvcicsXG4gIGNoYXJhY3RlckxpbWl0OiAnTGV4aWNhbEVkaXRvclRoZW1lX19jaGFyYWN0ZXJMaW1pdCcsXG4gIGNvZGU6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2NvZGUnLFxuICBjb2RlSGlnaGxpZ2h0OiB7XG4gICAgYXRydWxlOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkF0dHInLFxuICAgIGF0dHI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuQXR0cicsXG4gICAgYm9vbGVhbjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgYnVpbHRpbjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5TZWxlY3RvcicsXG4gICAgY2RhdGE6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuQ29tbWVudCcsXG4gICAgY2hhcjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5TZWxlY3RvcicsXG4gICAgY2xhc3M6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuRnVuY3Rpb24nLFxuICAgICdjbGFzcy1uYW1lJzogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5GdW5jdGlvbicsXG4gICAgY29tbWVudDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Db21tZW50JyxcbiAgICBjb25zdGFudDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgZGVsZXRlZDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgZG9jdHlwZTogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Db21tZW50JyxcbiAgICBlbnRpdHk6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuT3BlcmF0b3InLFxuICAgIGZ1bmN0aW9uOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkZ1bmN0aW9uJyxcbiAgICBpbXBvcnRhbnQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuVmFyaWFibGUnLFxuICAgIGluc2VydGVkOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblNlbGVjdG9yJyxcbiAgICBrZXl3b3JkOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkF0dHInLFxuICAgIG5hbWVzcGFjZTogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5WYXJpYWJsZScsXG4gICAgbnVtYmVyOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblByb3BlcnR5JyxcbiAgICBvcGVyYXRvcjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5PcGVyYXRvcicsXG4gICAgcHJvbG9nOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlbkNvbW1lbnQnLFxuICAgIHByb3BlcnR5OiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblByb3BlcnR5JyxcbiAgICBwdW5jdHVhdGlvbjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5QdW5jdHVhdGlvbicsXG4gICAgcmVnZXg6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuVmFyaWFibGUnLFxuICAgIHNlbGVjdG9yOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblNlbGVjdG9yJyxcbiAgICBzdHJpbmc6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuU2VsZWN0b3InLFxuICAgIHN5bWJvbDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdG9rZW5Qcm9wZXJ0eScsXG4gICAgdGFnOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblByb3BlcnR5JyxcbiAgICB1cmw6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3Rva2VuT3BlcmF0b3InLFxuICAgIHZhcmlhYmxlOiAnTGV4aWNhbEVkaXRvclRoZW1lX190b2tlblZhcmlhYmxlJyxcbiAgfSxcbiAgZW1iZWRCbG9jazoge1xuICAgIGJhc2U6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2VtYmVkQmxvY2snLFxuICAgIGZvY3VzOiAnTGV4aWNhbEVkaXRvclRoZW1lX19lbWJlZEJsb2NrRm9jdXMnLFxuICB9LFxuICBoYXNodGFnOiAnTGV4aWNhbEVkaXRvclRoZW1lX19oYXNodGFnJyxcbiAgaGVhZGluZzoge1xuICAgIGgxOiAnTGV4aWNhbEVkaXRvclRoZW1lX19oMScsXG4gICAgaDI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2gyJyxcbiAgICBoMzogJ0xleGljYWxFZGl0b3JUaGVtZV9faDMnLFxuICAgIGg0OiAnTGV4aWNhbEVkaXRvclRoZW1lX19oNCcsXG4gICAgaDU6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2g1JyxcbiAgICBoNjogJ0xleGljYWxFZGl0b3JUaGVtZV9faDYnLFxuICB9LFxuICBpbmRlbnQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2luZGVudCcsXG4gIGlubGluZUltYWdlOiAnTGV4aWNhbEVkaXRvcl9faW5saW5lLWltYWdlJyxcbiAgbGluazogJ0xleGljYWxFZGl0b3JUaGVtZV9fbGluaycsXG4gIGxpc3Q6IHtcbiAgICBjaGVja2xpc3Q6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2NoZWNrbGlzdCcsXG4gICAgbGlzdGl0ZW06ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2xpc3RJdGVtJyxcbiAgICBsaXN0aXRlbUNoZWNrZWQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2xpc3RJdGVtQ2hlY2tlZCcsXG4gICAgbGlzdGl0ZW1VbmNoZWNrZWQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX2xpc3RJdGVtVW5jaGVja2VkJyxcbiAgICBuZXN0ZWQ6IHtcbiAgICAgIGxpc3RpdGVtOiAnTGV4aWNhbEVkaXRvclRoZW1lX19uZXN0ZWRMaXN0SXRlbScsXG4gICAgfSxcbiAgICBvbERlcHRoOiBbXG4gICAgICAnTGV4aWNhbEVkaXRvclRoZW1lX19vbDEnLFxuICAgICAgJ0xleGljYWxFZGl0b3JUaGVtZV9fb2wyJyxcbiAgICAgICdMZXhpY2FsRWRpdG9yVGhlbWVfX29sMycsXG4gICAgICAnTGV4aWNhbEVkaXRvclRoZW1lX19vbDQnLFxuICAgICAgJ0xleGljYWxFZGl0b3JUaGVtZV9fb2w1JyxcbiAgICBdLFxuICAgIHVsOiAnTGV4aWNhbEVkaXRvclRoZW1lX191bCcsXG4gIH0sXG4gIGx0cjogJ0xleGljYWxFZGl0b3JUaGVtZV9fbHRyJyxcbiAgbWFyazogJ0xleGljYWxFZGl0b3JUaGVtZV9fbWFyaycsXG4gIG1hcmtPdmVybGFwOiAnTGV4aWNhbEVkaXRvclRoZW1lX19tYXJrT3ZlcmxhcCcsXG4gIHBhcmFncmFwaDogJ0xleGljYWxFZGl0b3JUaGVtZV9fcGFyYWdyYXBoJyxcbiAgcXVvdGU6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3F1b3RlJyxcbiAgcmVsYXRpb25zaGlwOiAnTGV4aWNhbEVkaXRvclRoZW1lX19yZWxhdGlvbnNoaXAnLFxuICBydGw6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3J0bCcsXG4gIHRhYmxlOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZScsXG4gIHRhYmxlQWRkQ29sdW1uczogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVBZGRDb2x1bW5zJyxcbiAgdGFibGVBZGRSb3dzOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZUFkZFJvd3MnLFxuICB0YWJsZUNlbGw6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbCcsXG4gIHRhYmxlQ2VsbEFjdGlvbkJ1dHRvbjogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVDZWxsQWN0aW9uQnV0dG9uJyxcbiAgdGFibGVDZWxsQWN0aW9uQnV0dG9uQ29udGFpbmVyOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZUNlbGxBY3Rpb25CdXR0b25Db250YWluZXInLFxuICB0YWJsZUNlbGxFZGl0aW5nOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZUNlbGxFZGl0aW5nJyxcbiAgdGFibGVDZWxsSGVhZGVyOiAnTGV4aWNhbEVkaXRvclRoZW1lX190YWJsZUNlbGxIZWFkZXInLFxuICB0YWJsZUNlbGxQcmltYXJ5U2VsZWN0ZWQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbFByaW1hcnlTZWxlY3RlZCcsXG4gIHRhYmxlQ2VsbFJlc2l6ZXI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbFJlc2l6ZXInLFxuICB0YWJsZUNlbGxTZWxlY3RlZDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVDZWxsU2VsZWN0ZWQnLFxuICB0YWJsZUNlbGxTb3J0ZWRJbmRpY2F0b3I6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbFNvcnRlZEluZGljYXRvcicsXG4gIHRhYmxlUmVzaXplUnVsZXI6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RhYmxlQ2VsbFJlc2l6ZVJ1bGVyJyxcbiAgdGFibGVTZWxlY3RlZDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGFibGVTZWxlY3RlZCcsXG4gIHRleHQ6IHtcbiAgICBib2xkOiAnTGV4aWNhbEVkaXRvclRoZW1lX190ZXh0Qm9sZCcsXG4gICAgY29kZTogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGV4dENvZGUnLFxuICAgIGl0YWxpYzogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGV4dEl0YWxpYycsXG4gICAgc3RyaWtldGhyb3VnaDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGV4dFN0cmlrZXRocm91Z2gnLFxuICAgIHN1YnNjcmlwdDogJ0xleGljYWxFZGl0b3JUaGVtZV9fdGV4dFN1YnNjcmlwdCcsXG4gICAgc3VwZXJzY3JpcHQ6ICdMZXhpY2FsRWRpdG9yVGhlbWVfX3RleHRTdXBlcnNjcmlwdCcsXG4gICAgdW5kZXJsaW5lOiAnTGV4aWNhbEVkaXRvclRoZW1lX190ZXh0VW5kZXJsaW5lJyxcbiAgICB1bmRlcmxpbmVTdHJpa2V0aHJvdWdoOiAnTGV4aWNhbEVkaXRvclRoZW1lX190ZXh0VW5kZXJsaW5lU3RyaWtldGhyb3VnaCcsXG4gIH0sXG4gIHVwbG9hZDogJ2VkaXRvci11cGxvYWQnLFxufVxuIl0sIm5hbWVzIjpbIkxleGljYWxFZGl0b3JUaGVtZSIsImJsb2NrIiwiYmxvY2tDdXJzb3IiLCJjaGFyYWN0ZXJMaW1pdCIsImNvZGUiLCJjb2RlSGlnaGxpZ2h0IiwiYXRydWxlIiwiYXR0ciIsImJvb2xlYW4iLCJidWlsdGluIiwiY2RhdGEiLCJjaGFyIiwiY2xhc3MiLCJjb21tZW50IiwiY29uc3RhbnQiLCJkZWxldGVkIiwiZG9jdHlwZSIsImVudGl0eSIsImZ1bmN0aW9uIiwiaW1wb3J0YW50IiwiaW5zZXJ0ZWQiLCJrZXl3b3JkIiwibmFtZXNwYWNlIiwibnVtYmVyIiwib3BlcmF0b3IiLCJwcm9sb2ciLCJwcm9wZXJ0eSIsInB1bmN0dWF0aW9uIiwicmVnZXgiLCJzZWxlY3RvciIsInN0cmluZyIsInN5bWJvbCIsInRhZyIsInVybCIsInZhcmlhYmxlIiwiZW1iZWRCbG9jayIsImJhc2UiLCJmb2N1cyIsImhhc2h0YWciLCJoZWFkaW5nIiwiaDEiLCJoMiIsImgzIiwiaDQiLCJoNSIsImg2IiwiaW5kZW50IiwiaW5saW5lSW1hZ2UiLCJsaW5rIiwibGlzdCIsImNoZWNrbGlzdCIsImxpc3RpdGVtIiwibGlzdGl0ZW1DaGVja2VkIiwibGlzdGl0ZW1VbmNoZWNrZWQiLCJuZXN0ZWQiLCJvbERlcHRoIiwidWwiLCJsdHIiLCJtYXJrIiwibWFya092ZXJsYXAiLCJwYXJhZ3JhcGgiLCJxdW90ZSIsInJlbGF0aW9uc2hpcCIsInJ0bCIsInRhYmxlIiwidGFibGVBZGRDb2x1bW5zIiwidGFibGVBZGRSb3dzIiwidGFibGVDZWxsIiwidGFibGVDZWxsQWN0aW9uQnV0dG9uIiwidGFibGVDZWxsQWN0aW9uQnV0dG9uQ29udGFpbmVyIiwidGFibGVDZWxsRWRpdGluZyIsInRhYmxlQ2VsbEhlYWRlciIsInRhYmxlQ2VsbFByaW1hcnlTZWxlY3RlZCIsInRhYmxlQ2VsbFJlc2l6ZXIiLCJ0YWJsZUNlbGxTZWxlY3RlZCIsInRhYmxlQ2VsbFNvcnRlZEluZGljYXRvciIsInRhYmxlUmVzaXplUnVsZXIiLCJ0YWJsZVNlbGVjdGVkIiwidGV4dCIsImJvbGQiLCJpdGFsaWMiLCJzdHJpa2V0aHJvdWdoIiwic3Vic2NyaXB0Iiwic3VwZXJzY3JpcHQiLCJ1bmRlcmxpbmUiLCJ1bmRlcmxpbmVTdHJpa2V0aHJvdWdoIiwidXBsb2FkIl0sIm1hcHBpbmdzIjoiOzs7OytCQUlhQTs7O2VBQUFBOzs7UUFGTjtBQUVBLE1BQU1BLHFCQUF5QztJQUNwREMsT0FBTztJQUNQQyxhQUFhO0lBQ2JDLGdCQUFnQjtJQUNoQkMsTUFBTTtJQUNOQyxlQUFlO1FBQ2JDLFFBQVE7UUFDUkMsTUFBTTtRQUNOQyxTQUFTO1FBQ1RDLFNBQVM7UUFDVEMsT0FBTztRQUNQQyxNQUFNO1FBQ05DLE9BQU87UUFDUCxjQUFjO1FBQ2RDLFNBQVM7UUFDVEMsVUFBVTtRQUNWQyxTQUFTO1FBQ1RDLFNBQVM7UUFDVEMsUUFBUTtRQUNSQyxVQUFVO1FBQ1ZDLFdBQVc7UUFDWEMsVUFBVTtRQUNWQyxTQUFTO1FBQ1RDLFdBQVc7UUFDWEMsUUFBUTtRQUNSQyxVQUFVO1FBQ1ZDLFFBQVE7UUFDUkMsVUFBVTtRQUNWQyxhQUFhO1FBQ2JDLE9BQU87UUFDUEMsVUFBVTtRQUNWQyxRQUFRO1FBQ1JDLFFBQVE7UUFDUkMsS0FBSztRQUNMQyxLQUFLO1FBQ0xDLFVBQVU7SUFDWjtJQUNBQyxZQUFZO1FBQ1ZDLE1BQU07UUFDTkMsT0FBTztJQUNUO0lBQ0FDLFNBQVM7SUFDVEMsU0FBUztRQUNQQyxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsSUFBSTtRQUNKQyxJQUFJO1FBQ0pDLElBQUk7UUFDSkMsSUFBSTtJQUNOO0lBQ0FDLFFBQVE7SUFDUkMsYUFBYTtJQUNiQyxNQUFNO0lBQ05DLE1BQU07UUFDSkMsV0FBVztRQUNYQyxVQUFVO1FBQ1ZDLGlCQUFpQjtRQUNqQkMsbUJBQW1CO1FBQ25CQyxRQUFRO1lBQ05ILFVBQVU7UUFDWjtRQUNBSSxTQUFTO1lBQ1A7WUFDQTtZQUNBO1lBQ0E7WUFDQTtTQUNEO1FBQ0RDLElBQUk7SUFDTjtJQUNBQyxLQUFLO0lBQ0xDLE1BQU07SUFDTkMsYUFBYTtJQUNiQyxXQUFXO0lBQ1hDLE9BQU87SUFDUEMsY0FBYztJQUNkQyxLQUFLO0lBQ0xDLE9BQU87SUFDUEMsaUJBQWlCO0lBQ2pCQyxjQUFjO0lBQ2RDLFdBQVc7SUFDWEMsdUJBQXVCO0lBQ3ZCQyxnQ0FBZ0M7SUFDaENDLGtCQUFrQjtJQUNsQkMsaUJBQWlCO0lBQ2pCQywwQkFBMEI7SUFDMUJDLGtCQUFrQjtJQUNsQkMsbUJBQW1CO0lBQ25CQywwQkFBMEI7SUFDMUJDLGtCQUFrQjtJQUNsQkMsZUFBZTtJQUNmQyxNQUFNO1FBQ0pDLE1BQU07UUFDTjNFLE1BQU07UUFDTjRFLFFBQVE7UUFDUkMsZUFBZTtRQUNmQyxXQUFXO1FBQ1hDLGFBQWE7UUFDYkMsV0FBVztRQUNYQyx3QkFBd0I7SUFDMUI7SUFDQUMsUUFBUTtBQUNWIn0=
@@ -1,5 +1,3 @@
1
- @import 'payload/scss';
2
-
3
1
  .LexicalEditorTheme {
4
2
  &__ltr {
5
3
  text-align: left;
@@ -32,7 +32,9 @@ function _interop_require_wildcard(obj, nodeInterop) {
32
32
  if (cache && cache.has(obj)) {
33
33
  return cache.get(obj);
34
34
  }
35
- var newObj = {};
35
+ var newObj = {
36
+ __proto__: null
37
+ };
36
38
  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
37
39
  for(var key in obj){
38
40
  if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
@@ -56,4 +58,4 @@ function LexicalContentEditable({ className }) {
56
58
  });
57
59
  }
58
60
 
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3VpL0NvbnRlbnRFZGl0YWJsZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudEVkaXRhYmxlIH0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbENvbnRlbnRFZGl0YWJsZSdcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgJy4vQ29udGVudEVkaXRhYmxlLnNjc3MnXG5cbmV4cG9ydCBmdW5jdGlvbiBMZXhpY2FsQ29udGVudEVkaXRhYmxlKHsgY2xhc3NOYW1lIH06IHsgY2xhc3NOYW1lPzogc3RyaW5nIH0pOiBKU1guRWxlbWVudCB7XG4gIHJldHVybiA8Q29udGVudEVkaXRhYmxlIGNsYXNzTmFtZT17Y2xhc3NOYW1lID8/ICdDb250ZW50RWRpdGFibGVfX3Jvb3QnfSAvPlxufVxuIl0sIm5hbWVzIjpbIkxleGljYWxDb250ZW50RWRpdGFibGUiLCJjbGFzc05hbWUiLCJDb250ZW50RWRpdGFibGUiXSwibWFwcGluZ3MiOiI7Ozs7K0JBS2dCQTs7O2VBQUFBOzs7d0NBTGdCOytEQUNUO1FBRWhCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsU0FBU0EsdUJBQXVCLEVBQUVDLFNBQVMsRUFBMEI7SUFDMUUscUJBQU8scUJBQUNDLHVDQUFlO1FBQUNELFdBQVdBLGFBQWE7O0FBQ2xEIn0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3VpL0NvbnRlbnRFZGl0YWJsZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudEVkaXRhYmxlIH0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbENvbnRlbnRFZGl0YWJsZSdcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgJy4vQ29udGVudEVkaXRhYmxlLnNjc3MnXG5cbmV4cG9ydCBmdW5jdGlvbiBMZXhpY2FsQ29udGVudEVkaXRhYmxlKHsgY2xhc3NOYW1lIH06IHsgY2xhc3NOYW1lPzogc3RyaW5nIH0pOiBKU1guRWxlbWVudCB7XG4gIHJldHVybiA8Q29udGVudEVkaXRhYmxlIGNsYXNzTmFtZT17Y2xhc3NOYW1lID8/ICdDb250ZW50RWRpdGFibGVfX3Jvb3QnfSAvPlxufVxuIl0sIm5hbWVzIjpbIkxleGljYWxDb250ZW50RWRpdGFibGUiLCJjbGFzc05hbWUiLCJDb250ZW50RWRpdGFibGUiXSwibWFwcGluZ3MiOiI7Ozs7K0JBS2dCQTs7O2VBQUFBOzs7d0NBTGdCOytEQUNUO1FBRWhCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxTQUFTQSx1QkFBdUIsRUFBRUMsU0FBUyxFQUEwQjtJQUMxRSxxQkFBTyxxQkFBQ0MsdUNBQWU7UUFBQ0QsV0FBV0EsYUFBYTs7QUFDbEQifQ==
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare const AlignJustifyIcon: React.FC;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/field/lexical/ui/icons/AlignJustify/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAepC,CAAA"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "AlignJustifyIcon", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return AlignJustifyIcon;
9
+ }
10
+ });
11
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ const AlignJustifyIcon = ()=>/*#__PURE__*/ _react.default.createElement("svg", {
18
+ "aria-hidden": "true",
19
+ className: "icon",
20
+ fill: "none",
21
+ focusable: "false",
22
+ height: "20",
23
+ viewBox: "0 0 20 20",
24
+ width: "20",
25
+ xmlns: "http://www.w3.org/2000/svg"
26
+ }, /*#__PURE__*/ _react.default.createElement("path", {
27
+ d: "M2.5 5H17.5",
28
+ stroke: "currentColor",
29
+ strokeWidth: "1.5"
30
+ }), /*#__PURE__*/ _react.default.createElement("path", {
31
+ d: "M2.5 10H17.5",
32
+ stroke: "currentColor",
33
+ strokeWidth: "1.5"
34
+ }), /*#__PURE__*/ _react.default.createElement("path", {
35
+ d: "M2.5 15H17.5",
36
+ stroke: "currentColor",
37
+ strokeWidth: "1.5"
38
+ }));
39
+
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9sZXhpY2FsL3VpL2ljb25zL0FsaWduSnVzdGlmeS9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5leHBvcnQgY29uc3QgQWxpZ25KdXN0aWZ5SWNvbjogUmVhY3QuRkMgPSAoKSA9PiAoXG4gIDxzdmdcbiAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgIGNsYXNzTmFtZT1cImljb25cIlxuICAgIGZpbGw9XCJub25lXCJcbiAgICBmb2N1c2FibGU9XCJmYWxzZVwiXG4gICAgaGVpZ2h0PVwiMjBcIlxuICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxuICAgIHdpZHRoPVwiMjBcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBhdGggZD1cIk0yLjUgNUgxNy41XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlV2lkdGg9XCIxLjVcIiAvPlxuICAgIDxwYXRoIGQ9XCJNMi41IDEwSDE3LjVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2VXaWR0aD1cIjEuNVwiIC8+XG4gICAgPHBhdGggZD1cIk0yLjUgMTVIMTcuNVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZVdpZHRoPVwiMS41XCIgLz5cbiAgPC9zdmc+XG4pXG4iXSwibmFtZXMiOlsiQWxpZ25KdXN0aWZ5SWNvbiIsInN2ZyIsImFyaWEtaGlkZGVuIiwiY2xhc3NOYW1lIiwiZmlsbCIsImZvY3VzYWJsZSIsImhlaWdodCIsInZpZXdCb3giLCJ3aWR0aCIsInhtbG5zIiwicGF0aCIsImQiLCJzdHJva2UiLCJzdHJva2VXaWR0aCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFFYUE7OztlQUFBQTs7OzhEQUZLOzs7Ozs7QUFFWCxNQUFNQSxtQkFBNkIsa0JBQ3hDLDZCQUFDQztRQUNDQyxlQUFZO1FBQ1pDLFdBQVU7UUFDVkMsTUFBSztRQUNMQyxXQUFVO1FBQ1ZDLFFBQU87UUFDUEMsU0FBUTtRQUNSQyxPQUFNO1FBQ05DLE9BQU07cUJBRU4sNkJBQUNDO1FBQUtDLEdBQUU7UUFBY0MsUUFBTztRQUFlQyxhQUFZO3NCQUN4RCw2QkFBQ0g7UUFBS0MsR0FBRTtRQUFlQyxRQUFPO1FBQWVDLGFBQVk7c0JBQ3pELDZCQUFDSDtRQUFLQyxHQUFFO1FBQWVDLFFBQU87UUFBZUMsYUFBWSJ9