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

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 (283) hide show
  1. package/components.js +6 -33
  2. package/dist/cell/index.js +29 -80
  3. package/dist/exports/components.js +6 -33
  4. package/dist/field/Field.js +15 -66
  5. package/dist/field/features/align/feature.client.js +21 -31
  6. package/dist/field/features/align/feature.server.js +4 -14
  7. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.js +4 -14
  8. package/dist/field/features/blockquote/feature.client.js +20 -30
  9. package/dist/field/features/blockquote/feature.server.js +11 -21
  10. package/dist/field/features/blockquote/markdownTransformer.js +9 -19
  11. package/dist/field/features/blocks/component/BlockContent.js +34 -85
  12. package/dist/field/features/blocks/component/FormSavePlugin.js +7 -17
  13. package/dist/field/features/blocks/component/index.js +25 -76
  14. package/dist/field/features/blocks/drawer/index.js +25 -84
  15. package/dist/field/features/blocks/feature.client.js +15 -25
  16. package/dist/field/features/blocks/feature.server.js +16 -26
  17. package/dist/field/features/blocks/nodes/BlocksNode.d.ts.map +1 -1
  18. package/dist/field/features/blocks/nodes/BlocksNode.js +11 -78
  19. package/dist/field/features/blocks/plugin/commands.js +3 -13
  20. package/dist/field/features/blocks/plugin/index.js +20 -71
  21. package/dist/field/features/blocks/populationPromise.js +6 -16
  22. package/dist/field/features/blocks/validate.js +4 -14
  23. package/dist/field/features/common/floatingSelectToolbarFeaturesButtonsSection/index.js +2 -12
  24. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.js +4 -14
  25. package/dist/field/features/converters/html/converter/converters/linebreak.js +2 -12
  26. package/dist/field/features/converters/html/converter/converters/paragraph.js +4 -14
  27. package/dist/field/features/converters/html/converter/converters/text.js +10 -20
  28. package/dist/field/features/converters/html/converter/defaultConverters.js +8 -18
  29. package/dist/field/features/converters/html/converter/index.js +3 -21
  30. package/dist/field/features/converters/html/converter/types.js +2 -5
  31. package/dist/field/features/converters/html/feature.server.js +2 -12
  32. package/dist/field/features/converters/html/field/index.js +11 -25
  33. package/dist/field/features/createClientComponent.js +6 -14
  34. package/dist/field/features/createFeaturePropComponent.js +5 -15
  35. package/dist/field/features/debug/testrecorder/feature.client.js +5 -15
  36. package/dist/field/features/debug/testrecorder/feature.server.js +4 -14
  37. package/dist/field/features/debug/testrecorder/plugin/index.js +41 -99
  38. package/dist/field/features/debug/treeview/feature.client.js +5 -15
  39. package/dist/field/features/debug/treeview/feature.server.js +4 -14
  40. package/dist/field/features/debug/treeview/plugin/index.js +8 -59
  41. package/dist/field/features/format/bold/feature.client.js +14 -24
  42. package/dist/field/features/format/bold/feature.server.js +8 -18
  43. package/dist/field/features/format/bold/markdownTransformers.js +5 -29
  44. package/dist/field/features/format/common/floatingSelectToolbarSection.js +2 -12
  45. package/dist/field/features/format/inlinecode/feature.client.js +12 -22
  46. package/dist/field/features/format/inlinecode/feature.server.js +6 -16
  47. package/dist/field/features/format/inlinecode/markdownTransformers.js +2 -12
  48. package/dist/field/features/format/italic/feature.client.js +13 -23
  49. package/dist/field/features/format/italic/feature.server.js +7 -17
  50. package/dist/field/features/format/italic/markdownTransformers.js +3 -21
  51. package/dist/field/features/format/strikethrough/feature.client.js +12 -22
  52. package/dist/field/features/format/strikethrough/feature.server.js +6 -16
  53. package/dist/field/features/format/strikethrough/markdownTransformers.js +2 -12
  54. package/dist/field/features/format/subscript/feature.client.js +10 -20
  55. package/dist/field/features/format/subscript/feature.server.js +4 -14
  56. package/dist/field/features/format/superscript/feature.client.js +10 -20
  57. package/dist/field/features/format/superscript/feature.server.js +4 -14
  58. package/dist/field/features/format/underline/feature.client.js +10 -20
  59. package/dist/field/features/format/underline/feature.server.js +4 -14
  60. package/dist/field/features/heading/feature.client.js +28 -37
  61. package/dist/field/features/heading/feature.server.js +12 -22
  62. package/dist/field/features/heading/markdownTransformer.js +8 -18
  63. package/dist/field/features/indent/feature.client.js +13 -23
  64. package/dist/field/features/indent/feature.server.js +4 -14
  65. package/dist/field/features/indent/floatingSelectToolbarIndentSection.js +2 -12
  66. package/dist/field/features/link/drawer/baseFields.js +6 -16
  67. package/dist/field/features/link/drawer/index.js +24 -74
  68. package/dist/field/features/link/drawer/types.js +2 -5
  69. package/dist/field/features/link/feature.client.js +29 -39
  70. package/dist/field/features/link/feature.server.js +22 -32
  71. package/dist/field/features/link/nodes/AutoLinkNode.js +10 -29
  72. package/dist/field/features/link/nodes/LinkNode.js +18 -45
  73. package/dist/field/features/link/nodes/types.js +2 -5
  74. package/dist/field/features/link/plugins/autoLink/index.js +33 -51
  75. package/dist/field/features/link/plugins/clickableLink/index.js +5 -20
  76. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/commands.js +3 -13
  77. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/index.js +64 -114
  78. package/dist/field/features/link/plugins/floatingLinkEditor/index.js +7 -58
  79. package/dist/field/features/link/plugins/floatingLinkEditor/types.js +5 -5
  80. package/dist/field/features/link/plugins/floatingLinkEditor/utilities.js +6 -14
  81. package/dist/field/features/link/plugins/link/index.js +21 -31
  82. package/dist/field/features/link/populationPromise.js +6 -16
  83. package/dist/field/features/lists/checklist/feature.client.js +21 -31
  84. package/dist/field/features/lists/checklist/feature.server.js +12 -22
  85. package/dist/field/features/lists/checklist/markdownTransformers.js +8 -18
  86. package/dist/field/features/lists/checklist/plugin/index.js +5 -20
  87. package/dist/field/features/lists/common/markdown.js +10 -28
  88. package/dist/field/features/lists/htmlConverter.js +9 -27
  89. package/dist/field/features/lists/orderedlist/feature.client.js +19 -29
  90. package/dist/field/features/lists/orderedlist/feature.server.js +12 -22
  91. package/dist/field/features/lists/orderedlist/markdownTransformer.js +8 -18
  92. package/dist/field/features/lists/plugin/index.js +5 -20
  93. package/dist/field/features/lists/unorderedlist/feature.client.js +19 -29
  94. package/dist/field/features/lists/unorderedlist/feature.server.js +12 -22
  95. package/dist/field/features/lists/unorderedlist/markdownTransformer.js +8 -18
  96. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/client.js +4 -14
  97. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js +4 -14
  98. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/index.js +6 -16
  99. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/client.js +4 -14
  100. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js +4 -14
  101. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/index.js +6 -16
  102. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/client.js +4 -14
  103. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js +4 -14
  104. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/index.js +6 -16
  105. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/client.js +4 -14
  106. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js +4 -14
  107. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/index.js +6 -16
  108. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/client.js +4 -14
  109. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js +4 -14
  110. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/index.js +6 -16
  111. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/client.js +4 -14
  112. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js +4 -14
  113. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/index.js +6 -16
  114. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/client.js +4 -14
  115. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js +2 -12
  116. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/index.js +6 -16
  117. package/dist/field/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js +16 -26
  118. package/dist/field/features/migrations/lexicalPluginToLexical/converter/index.js +5 -29
  119. package/dist/field/features/migrations/lexicalPluginToLexical/converter/types.js +2 -5
  120. package/dist/field/features/migrations/lexicalPluginToLexical/feature.client.js +7 -17
  121. package/dist/field/features/migrations/lexicalPluginToLexical/feature.server.js +9 -19
  122. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +5 -20
  123. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -1
  124. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js +10 -73
  125. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/client.js +4 -14
  126. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/converter.js +4 -14
  127. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/index.js +6 -16
  128. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/client.js +4 -14
  129. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/converter.js +4 -14
  130. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/index.js +6 -16
  131. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/client.js +4 -14
  132. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/converter.js +4 -14
  133. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/index.js +6 -16
  134. package/dist/field/features/migrations/slateToLexical/converter/converters/link/client.js +4 -14
  135. package/dist/field/features/migrations/slateToLexical/converter/converters/link/converter.js +4 -14
  136. package/dist/field/features/migrations/slateToLexical/converter/converters/link/index.js +6 -16
  137. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/client.js +4 -14
  138. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/converter.js +4 -14
  139. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/index.js +6 -16
  140. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/client.js +4 -14
  141. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/converter.js +4 -14
  142. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/index.js +6 -16
  143. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/client.js +4 -14
  144. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/converter.js +2 -12
  145. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/index.js +6 -16
  146. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/client.js +4 -14
  147. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/converter.js +4 -14
  148. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/index.js +6 -16
  149. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/client.js +4 -14
  150. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js +4 -14
  151. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/index.js +6 -16
  152. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/client.js +4 -14
  153. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/converter.js +2 -12
  154. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/index.js +6 -16
  155. package/dist/field/features/migrations/slateToLexical/converter/defaultConverters.js +22 -32
  156. package/dist/field/features/migrations/slateToLexical/converter/index.js +14 -41
  157. package/dist/field/features/migrations/slateToLexical/converter/types.js +2 -5
  158. package/dist/field/features/migrations/slateToLexical/feature.client.js +7 -17
  159. package/dist/field/features/migrations/slateToLexical/feature.server.js +9 -19
  160. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js +5 -20
  161. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -1
  162. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js +10 -73
  163. package/dist/field/features/paragraph/feature.client.js +16 -26
  164. package/dist/field/features/paragraph/feature.server.js +4 -14
  165. package/dist/field/features/relationship/drawer/commands.js +3 -13
  166. package/dist/field/features/relationship/drawer/index.js +24 -75
  167. package/dist/field/features/relationship/feature.client.js +15 -25
  168. package/dist/field/features/relationship/feature.server.js +8 -18
  169. package/dist/field/features/relationship/nodes/RelationshipNode.d.ts.map +1 -1
  170. package/dist/field/features/relationship/nodes/RelationshipNode.js +8 -71
  171. package/dist/field/features/relationship/nodes/components/RelationshipComponent.js +35 -86
  172. package/dist/field/features/relationship/plugins/index.js +22 -80
  173. package/dist/field/features/relationship/populationPromise.js +4 -14
  174. package/dist/field/features/relationship/utils/EnabledRelationshipsCondition.js +8 -59
  175. package/dist/field/features/types.js +2 -5
  176. package/dist/field/features/upload/component/ExtraFieldsDrawer/index.js +36 -84
  177. package/dist/field/features/upload/component/index.js +47 -98
  178. package/dist/field/features/upload/drawer/commands.js +3 -13
  179. package/dist/field/features/upload/drawer/index.js +23 -74
  180. package/dist/field/features/upload/feature.client.js +13 -23
  181. package/dist/field/features/upload/feature.server.js +11 -21
  182. package/dist/field/features/upload/nodes/UploadNode.d.ts.map +1 -1
  183. package/dist/field/features/upload/nodes/UploadNode.js +11 -73
  184. package/dist/field/features/upload/plugin/index.js +22 -81
  185. package/dist/field/features/upload/populationPromise.js +6 -16
  186. package/dist/field/features/upload/validate.js +9 -19
  187. package/dist/field/index.d.ts.map +1 -1
  188. package/dist/field/index.js +23 -75
  189. package/dist/field/lexical/EditorPlugin.js +5 -56
  190. package/dist/field/lexical/LexicalEditor.js +39 -94
  191. package/dist/field/lexical/LexicalProvider.js +15 -66
  192. package/dist/field/lexical/config/client/EditorConfigProvider.js +11 -69
  193. package/dist/field/lexical/config/client/default.js +4 -14
  194. package/dist/field/lexical/config/client/loader.js +5 -12
  195. package/dist/field/lexical/config/client/sanitize.js +3 -21
  196. package/dist/field/lexical/config/server/default.js +44 -68
  197. package/dist/field/lexical/config/server/loader.js +3 -21
  198. package/dist/field/lexical/config/server/sanitize.js +5 -23
  199. package/dist/field/lexical/config/types.js +2 -5
  200. package/dist/field/lexical/nodes/index.js +2 -12
  201. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.js +19 -70
  202. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.js +40 -98
  203. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.js +11 -34
  204. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.js +55 -105
  205. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.js +2 -5
  206. package/dist/field/lexical/plugins/MarkdownShortcut/index.js +7 -58
  207. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +39 -64
  208. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +32 -97
  209. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js +3 -21
  210. package/dist/field/lexical/plugins/SlashMenu/index.js +27 -77
  211. package/dist/field/lexical/plugins/SlashMenu/useMenuTriggerMatch.js +8 -16
  212. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.js +35 -84
  213. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/debounce.js +2 -12
  214. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js +2 -12
  215. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getNodeCloseToPoint.js +18 -28
  216. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js +4 -14
  217. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.js +52 -102
  218. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js +8 -18
  219. package/dist/field/lexical/plugins/handles/utils/getCollapsedMargins.js +2 -12
  220. package/dist/field/lexical/plugins/handles/utils/getTopLevelNodeKeys.js +4 -14
  221. package/dist/field/lexical/plugins/handles/utils/isOnHandleElement.js +2 -12
  222. package/dist/field/lexical/plugins/handles/utils/setHandlePosition.js +2 -12
  223. package/dist/field/lexical/theme/EditorTheme.js +3 -13
  224. package/dist/field/lexical/ui/ContentEditable.js +6 -57
  225. package/dist/field/lexical/ui/icons/AI/index.js +7 -22
  226. package/dist/field/lexical/ui/icons/AlignCenter/index.js +6 -21
  227. package/dist/field/lexical/ui/icons/AlignJustify/index.js +6 -21
  228. package/dist/field/lexical/ui/icons/AlignLeft/index.js +6 -21
  229. package/dist/field/lexical/ui/icons/AlignRight/index.js +6 -21
  230. package/dist/field/lexical/ui/icons/Block/index.js +6 -21
  231. package/dist/field/lexical/ui/icons/Blockquote/index.js +4 -19
  232. package/dist/field/lexical/ui/icons/Bold/index.js +4 -19
  233. package/dist/field/lexical/ui/icons/Checklist/index.js +5 -20
  234. package/dist/field/lexical/ui/icons/Code/index.js +5 -20
  235. package/dist/field/lexical/ui/icons/CodeBlock/index.js +5 -20
  236. package/dist/field/lexical/ui/icons/H1/index.js +4 -19
  237. package/dist/field/lexical/ui/icons/H2/index.js +4 -19
  238. package/dist/field/lexical/ui/icons/H3/index.js +4 -19
  239. package/dist/field/lexical/ui/icons/H4/index.js +4 -19
  240. package/dist/field/lexical/ui/icons/H5/index.js +4 -19
  241. package/dist/field/lexical/ui/icons/H6/index.js +4 -19
  242. package/dist/field/lexical/ui/icons/IndentDecrease/index.js +7 -22
  243. package/dist/field/lexical/ui/icons/IndentIncrease/index.js +7 -22
  244. package/dist/field/lexical/ui/icons/Italic/index.js +4 -19
  245. package/dist/field/lexical/ui/icons/Link/index.js +7 -22
  246. package/dist/field/lexical/ui/icons/OrderedList/index.js +8 -23
  247. package/dist/field/lexical/ui/icons/Relationship/index.js +7 -22
  248. package/dist/field/lexical/ui/icons/Strikethrough/index.js +5 -20
  249. package/dist/field/lexical/ui/icons/Subscript/index.js +4 -19
  250. package/dist/field/lexical/ui/icons/Superscript/index.js +4 -19
  251. package/dist/field/lexical/ui/icons/Text/index.js +4 -19
  252. package/dist/field/lexical/ui/icons/Underline/index.js +5 -20
  253. package/dist/field/lexical/ui/icons/UnorderedList/index.js +9 -24
  254. package/dist/field/lexical/ui/icons/Upload/index.js +6 -21
  255. package/dist/field/lexical/utils/canUseDOM.js +2 -12
  256. package/dist/field/lexical/utils/cloneDeep.js +2 -12
  257. package/dist/field/lexical/utils/environment.js +13 -51
  258. package/dist/field/lexical/utils/getDOMRangeRect.js +2 -12
  259. package/dist/field/lexical/utils/getSelectedNode.js +5 -15
  260. package/dist/field/lexical/utils/guard.js +2 -12
  261. package/dist/field/lexical/utils/invariant.js +2 -12
  262. package/dist/field/lexical/utils/joinClasses.js +2 -12
  263. package/dist/field/lexical/utils/markdown/createBlockNode.js +2 -12
  264. package/dist/field/lexical/utils/nodeFormat.js +17 -61
  265. package/dist/field/lexical/utils/point.js +3 -21
  266. package/dist/field/lexical/utils/rect.js +4 -14
  267. package/dist/field/lexical/utils/setFloatingElemPosition.js +5 -12
  268. package/dist/field/lexical/utils/setFloatingElemPositionForLinkEditor.js +2 -12
  269. package/dist/field/lexical/utils/swipe.js +5 -29
  270. package/dist/field/lexical/utils/url.js +3 -21
  271. package/dist/generateComponentMap.js +10 -25
  272. package/dist/generateSchemaMap.js +4 -14
  273. package/dist/index.d.ts.map +1 -1
  274. package/dist/index.js +102 -490
  275. package/dist/populate/defaultValue.js +3 -21
  276. package/dist/populate/populate.js +2 -12
  277. package/dist/populate/recurseNestedFields.js +4 -14
  278. package/dist/populate/richTextRelationshipPromise.js +3 -21
  279. package/dist/types.js +2 -5
  280. package/dist/useLexicalFeature.js +6 -16
  281. package/dist/validate/index.js +6 -16
  282. package/dist/validate/validateNodes.js +2 -12
  283. package/package.json +9 -8
@@ -1,56 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "EnabledRelationshipsCondition", {
6
- enumerable: true,
7
- get: function() {
8
- return EnabledRelationshipsCondition;
9
- }
10
- });
11
- const _ui = require("@payloadcms/ui");
12
- const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
13
- function _getRequireWildcardCache(nodeInterop) {
14
- if (typeof WeakMap !== "function") return null;
15
- var cacheBabelInterop = new WeakMap();
16
- var cacheNodeInterop = new WeakMap();
17
- return (_getRequireWildcardCache = function(nodeInterop) {
18
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
19
- })(nodeInterop);
20
- }
21
- function _interop_require_wildcard(obj, nodeInterop) {
22
- if (!nodeInterop && obj && obj.__esModule) {
23
- return obj;
24
- }
25
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
26
- return {
27
- default: obj
28
- };
29
- }
30
- var cache = _getRequireWildcardCache(nodeInterop);
31
- if (cache && cache.has(obj)) {
32
- return cache.get(obj);
33
- }
34
- var newObj = {
35
- __proto__: null
36
- };
37
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
38
- for(var key in obj){
39
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
40
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
41
- if (desc && (desc.get || desc.set)) {
42
- Object.defineProperty(newObj, key, desc);
43
- } else {
44
- newObj[key] = obj[key];
45
- }
46
- }
47
- }
48
- newObj.default = obj;
49
- if (cache) {
50
- cache.set(obj, newObj);
51
- }
52
- return newObj;
53
- }
1
+ import { useAuth, useConfig } from '@payloadcms/ui';
2
+ import * as React from 'react';
54
3
  const filterRichTextCollections = (collections, options)=>{
55
4
  return collections.filter(({ admin: { enableRichTextRelationship, hidden }, upload })=>{
56
5
  if (hidden === true || typeof hidden === 'function' && hidden({
@@ -64,21 +13,21 @@ const filterRichTextCollections = (collections, options)=>{
64
13
  return upload ? false : enableRichTextRelationship;
65
14
  });
66
15
  };
67
- const EnabledRelationshipsCondition = (props)=>{
16
+ export const EnabledRelationshipsCondition = (props)=>{
68
17
  const { children, uploads = false, ...rest } = props;
69
- const { collections } = (0, _ui.useConfig)();
70
- const { user } = (0, _ui.useAuth)();
71
- const [enabledCollectionSlugs] = _react.useState(()=>filterRichTextCollections(collections, {
18
+ const { collections } = useConfig();
19
+ const { user } = useAuth();
20
+ const [enabledCollectionSlugs] = React.useState(()=>filterRichTextCollections(collections, {
72
21
  uploads,
73
22
  user
74
23
  }).map(({ slug })=>slug));
75
24
  if (!enabledCollectionSlugs.length) {
76
25
  return null;
77
26
  }
78
- return /*#__PURE__*/ _react.cloneElement(children, {
27
+ return /*#__PURE__*/ React.cloneElement(children, {
79
28
  ...rest,
80
29
  enabledCollectionSlugs
81
30
  });
82
31
  };
83
32
 
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9yZWxhdGlvbnNoaXAvdXRpbHMvRW5hYmxlZFJlbGF0aW9uc2hpcHNDb25kaXRpb24udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVXNlciB9IGZyb20gJ3BheWxvYWQvYXV0aCdcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IHVzZUF1dGgsIHVzZUNvbmZpZyB9IGZyb20gJ0BwYXlsb2FkY21zL3VpJ1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5cbnR5cGUgb3B0aW9ucyA9IHtcbiAgdXBsb2FkczogYm9vbGVhblxuICB1c2VyOiBVc2VyXG59XG5cbnR5cGUgRmlsdGVyZWRDb2xsZWN0aW9uc1QgPSAoXG4gIGNvbGxlY3Rpb25zOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnW10sXG4gIG9wdGlvbnM/OiBvcHRpb25zLFxuKSA9PiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnW11cbmNvbnN0IGZpbHRlclJpY2hUZXh0Q29sbGVjdGlvbnM6IEZpbHRlcmVkQ29sbGVjdGlvbnNUID0gKGNvbGxlY3Rpb25zLCBvcHRpb25zKSA9PiB7XG4gIHJldHVybiBjb2xsZWN0aW9ucy5maWx0ZXIoKHsgYWRtaW46IHsgZW5hYmxlUmljaFRleHRSZWxhdGlvbnNoaXAsIGhpZGRlbiB9LCB1cGxvYWQgfSkgPT4ge1xuICAgIGlmIChoaWRkZW4gPT09IHRydWUgfHwgKHR5cGVvZiBoaWRkZW4gPT09ICdmdW5jdGlvbicgJiYgaGlkZGVuKHsgdXNlcjogb3B0aW9ucy51c2VyIH0pKSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICAgIGlmIChvcHRpb25zPy51cGxvYWRzKSB7XG4gICAgICByZXR1cm4gZW5hYmxlUmljaFRleHRSZWxhdGlvbnNoaXAgJiYgQm9vbGVhbih1cGxvYWQpID09PSB0cnVlXG4gICAgfVxuXG4gICAgcmV0dXJuIHVwbG9hZCA/IGZhbHNlIDogZW5hYmxlUmljaFRleHRSZWxhdGlvbnNoaXBcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IEVuYWJsZWRSZWxhdGlvbnNoaXBzQ29uZGl0aW9uOiBSZWFjdC5GQzxhbnk+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIHVwbG9hZHMgPSBmYWxzZSwgLi4ucmVzdCB9ID0gcHJvcHNcbiAgY29uc3QgeyBjb2xsZWN0aW9ucyB9ID0gdXNlQ29uZmlnKClcbiAgY29uc3QgeyB1c2VyIH0gPSB1c2VBdXRoKClcbiAgY29uc3QgW2VuYWJsZWRDb2xsZWN0aW9uU2x1Z3NdID0gUmVhY3QudXNlU3RhdGUoKCkgPT5cbiAgICBmaWx0ZXJSaWNoVGV4dENvbGxlY3Rpb25zKGNvbGxlY3Rpb25zLCB7IHVwbG9hZHMsIHVzZXIgfSkubWFwKCh7IHNsdWcgfSkgPT4gc2x1ZyksXG4gIClcblxuICBpZiAoIWVuYWJsZWRDb2xsZWN0aW9uU2x1Z3MubGVuZ3RoKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoY2hpbGRyZW4sIHsgLi4ucmVzdCwgZW5hYmxlZENvbGxlY3Rpb25TbHVncyB9KVxufVxuIl0sIm5hbWVzIjpbIkVuYWJsZWRSZWxhdGlvbnNoaXBzQ29uZGl0aW9uIiwiZmlsdGVyUmljaFRleHRDb2xsZWN0aW9ucyIsImNvbGxlY3Rpb25zIiwib3B0aW9ucyIsImZpbHRlciIsImFkbWluIiwiZW5hYmxlUmljaFRleHRSZWxhdGlvbnNoaXAiLCJoaWRkZW4iLCJ1cGxvYWQiLCJ1c2VyIiwidXBsb2FkcyIsIkJvb2xlYW4iLCJwcm9wcyIsImNoaWxkcmVuIiwicmVzdCIsInVzZUNvbmZpZyIsInVzZUF1dGgiLCJlbmFibGVkQ29sbGVjdGlvblNsdWdzIiwiUmVhY3QiLCJ1c2VTdGF0ZSIsIm1hcCIsInNsdWciLCJsZW5ndGgiLCJjbG9uZUVsZW1lbnQiXSwibWFwcGluZ3MiOiI7Ozs7K0JBNEJhQTs7O2VBQUFBOzs7b0JBekJzQjsrREFDWjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBV3ZCLE1BQU1DLDRCQUFrRCxDQUFDQyxhQUFhQztJQUNwRSxPQUFPRCxZQUFZRSxNQUFNLENBQUMsQ0FBQyxFQUFFQyxPQUFPLEVBQUVDLDBCQUEwQixFQUFFQyxNQUFNLEVBQUUsRUFBRUMsTUFBTSxFQUFFO1FBQ2xGLElBQUlELFdBQVcsUUFBUyxPQUFPQSxXQUFXLGNBQWNBLE9BQU87WUFBRUUsTUFBTU4sUUFBUU0sSUFBSTtRQUFDLElBQUs7WUFDdkYsT0FBTztRQUNUO1FBQ0EsSUFBSU4sU0FBU08sU0FBUztZQUNwQixPQUFPSiw4QkFBOEJLLFFBQVFILFlBQVk7UUFDM0Q7UUFFQSxPQUFPQSxTQUFTLFFBQVFGO0lBQzFCO0FBQ0Y7QUFFTyxNQUFNTixnQ0FBK0MsQ0FBQ1k7SUFDM0QsTUFBTSxFQUFFQyxRQUFRLEVBQUVILFVBQVUsS0FBSyxFQUFFLEdBQUdJLE1BQU0sR0FBR0Y7SUFDL0MsTUFBTSxFQUFFVixXQUFXLEVBQUUsR0FBR2EsSUFBQUEsYUFBUztJQUNqQyxNQUFNLEVBQUVOLElBQUksRUFBRSxHQUFHTyxJQUFBQSxXQUFPO0lBQ3hCLE1BQU0sQ0FBQ0MsdUJBQXVCLEdBQUdDLE9BQU1DLFFBQVEsQ0FBQyxJQUM5Q2xCLDBCQUEwQkMsYUFBYTtZQUFFUTtZQUFTRDtRQUFLLEdBQUdXLEdBQUcsQ0FBQyxDQUFDLEVBQUVDLElBQUksRUFBRSxHQUFLQTtJQUc5RSxJQUFJLENBQUNKLHVCQUF1QkssTUFBTSxFQUFFO1FBQ2xDLE9BQU87SUFDVDtJQUVBLHFCQUFPSixPQUFNSyxZQUFZLENBQUNWLFVBQVU7UUFBRSxHQUFHQyxJQUFJO1FBQUVHO0lBQXVCO0FBQ3hFIn0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9yZWxhdGlvbnNoaXAvdXRpbHMvRW5hYmxlZFJlbGF0aW9uc2hpcHNDb25kaXRpb24udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVXNlciB9IGZyb20gJ3BheWxvYWQvYXV0aCdcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IHVzZUF1dGgsIHVzZUNvbmZpZyB9IGZyb20gJ0BwYXlsb2FkY21zL3VpJ1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5cbnR5cGUgb3B0aW9ucyA9IHtcbiAgdXBsb2FkczogYm9vbGVhblxuICB1c2VyOiBVc2VyXG59XG5cbnR5cGUgRmlsdGVyZWRDb2xsZWN0aW9uc1QgPSAoXG4gIGNvbGxlY3Rpb25zOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnW10sXG4gIG9wdGlvbnM/OiBvcHRpb25zLFxuKSA9PiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnW11cbmNvbnN0IGZpbHRlclJpY2hUZXh0Q29sbGVjdGlvbnM6IEZpbHRlcmVkQ29sbGVjdGlvbnNUID0gKGNvbGxlY3Rpb25zLCBvcHRpb25zKSA9PiB7XG4gIHJldHVybiBjb2xsZWN0aW9ucy5maWx0ZXIoKHsgYWRtaW46IHsgZW5hYmxlUmljaFRleHRSZWxhdGlvbnNoaXAsIGhpZGRlbiB9LCB1cGxvYWQgfSkgPT4ge1xuICAgIGlmIChoaWRkZW4gPT09IHRydWUgfHwgKHR5cGVvZiBoaWRkZW4gPT09ICdmdW5jdGlvbicgJiYgaGlkZGVuKHsgdXNlcjogb3B0aW9ucy51c2VyIH0pKSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICAgIGlmIChvcHRpb25zPy51cGxvYWRzKSB7XG4gICAgICByZXR1cm4gZW5hYmxlUmljaFRleHRSZWxhdGlvbnNoaXAgJiYgQm9vbGVhbih1cGxvYWQpID09PSB0cnVlXG4gICAgfVxuXG4gICAgcmV0dXJuIHVwbG9hZCA/IGZhbHNlIDogZW5hYmxlUmljaFRleHRSZWxhdGlvbnNoaXBcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IEVuYWJsZWRSZWxhdGlvbnNoaXBzQ29uZGl0aW9uOiBSZWFjdC5GQzxhbnk+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIHVwbG9hZHMgPSBmYWxzZSwgLi4ucmVzdCB9ID0gcHJvcHNcbiAgY29uc3QgeyBjb2xsZWN0aW9ucyB9ID0gdXNlQ29uZmlnKClcbiAgY29uc3QgeyB1c2VyIH0gPSB1c2VBdXRoKClcbiAgY29uc3QgW2VuYWJsZWRDb2xsZWN0aW9uU2x1Z3NdID0gUmVhY3QudXNlU3RhdGUoKCkgPT5cbiAgICBmaWx0ZXJSaWNoVGV4dENvbGxlY3Rpb25zKGNvbGxlY3Rpb25zLCB7IHVwbG9hZHMsIHVzZXIgfSkubWFwKCh7IHNsdWcgfSkgPT4gc2x1ZyksXG4gIClcblxuICBpZiAoIWVuYWJsZWRDb2xsZWN0aW9uU2x1Z3MubGVuZ3RoKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoY2hpbGRyZW4sIHsgLi4ucmVzdCwgZW5hYmxlZENvbGxlY3Rpb25TbHVncyB9KVxufVxuIl0sIm5hbWVzIjpbInVzZUF1dGgiLCJ1c2VDb25maWciLCJSZWFjdCIsImZpbHRlclJpY2hUZXh0Q29sbGVjdGlvbnMiLCJjb2xsZWN0aW9ucyIsIm9wdGlvbnMiLCJmaWx0ZXIiLCJhZG1pbiIsImVuYWJsZVJpY2hUZXh0UmVsYXRpb25zaGlwIiwiaGlkZGVuIiwidXBsb2FkIiwidXNlciIsInVwbG9hZHMiLCJCb29sZWFuIiwiRW5hYmxlZFJlbGF0aW9uc2hpcHNDb25kaXRpb24iLCJwcm9wcyIsImNoaWxkcmVuIiwicmVzdCIsImVuYWJsZWRDb2xsZWN0aW9uU2x1Z3MiLCJ1c2VTdGF0ZSIsIm1hcCIsInNsdWciLCJsZW5ndGgiLCJjbG9uZUVsZW1lbnQiXSwibWFwcGluZ3MiOiJBQUdBLFNBQVNBLE9BQU8sRUFBRUMsU0FBUyxRQUFRLGlCQUFnQjtBQUNuRCxZQUFZQyxXQUFXLFFBQU87QUFXOUIsTUFBTUMsNEJBQWtELENBQUNDLGFBQWFDO0lBQ3BFLE9BQU9ELFlBQVlFLE1BQU0sQ0FBQyxDQUFDLEVBQUVDLE9BQU8sRUFBRUMsMEJBQTBCLEVBQUVDLE1BQU0sRUFBRSxFQUFFQyxNQUFNLEVBQUU7UUFDbEYsSUFBSUQsV0FBVyxRQUFTLE9BQU9BLFdBQVcsY0FBY0EsT0FBTztZQUFFRSxNQUFNTixRQUFRTSxJQUFJO1FBQUMsSUFBSztZQUN2RixPQUFPO1FBQ1Q7UUFDQSxJQUFJTixTQUFTTyxTQUFTO1lBQ3BCLE9BQU9KLDhCQUE4QkssUUFBUUgsWUFBWTtRQUMzRDtRQUVBLE9BQU9BLFNBQVMsUUFBUUY7SUFDMUI7QUFDRjtBQUVBLE9BQU8sTUFBTU0sZ0NBQStDLENBQUNDO0lBQzNELE1BQU0sRUFBRUMsUUFBUSxFQUFFSixVQUFVLEtBQUssRUFBRSxHQUFHSyxNQUFNLEdBQUdGO0lBQy9DLE1BQU0sRUFBRVgsV0FBVyxFQUFFLEdBQUdIO0lBQ3hCLE1BQU0sRUFBRVUsSUFBSSxFQUFFLEdBQUdYO0lBQ2pCLE1BQU0sQ0FBQ2tCLHVCQUF1QixHQUFHaEIsTUFBTWlCLFFBQVEsQ0FBQyxJQUM5Q2hCLDBCQUEwQkMsYUFBYTtZQUFFUTtZQUFTRDtRQUFLLEdBQUdTLEdBQUcsQ0FBQyxDQUFDLEVBQUVDLElBQUksRUFBRSxHQUFLQTtJQUc5RSxJQUFJLENBQUNILHVCQUF1QkksTUFBTSxFQUFFO1FBQ2xDLE9BQU87SUFDVDtJQUVBLHFCQUFPcEIsTUFBTXFCLFlBQVksQ0FBQ1AsVUFBVTtRQUFFLEdBQUdDLElBQUk7UUFBRUM7SUFBdUI7QUFDeEUsRUFBQyJ9
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
1
+ export { };
5
2
 
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy90eXBlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnQGxleGljYWwvbWFya2Rvd24nXG5pbXBvcnQgdHlwZSB7IEpTT05TY2hlbWE0IH0gZnJvbSAnanNvbi1zY2hlbWEnXG5pbXBvcnQgdHlwZSB7IEtsYXNzLCBMZXhpY2FsRWRpdG9yLCBMZXhpY2FsTm9kZSwgU2VyaWFsaXplZEVkaXRvclN0YXRlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB0eXBlIHsgU2VyaWFsaXplZExleGljYWxOb2RlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB0eXBlIHsgTGV4aWNhbE5vZGVSZXBsYWNlbWVudCB9IGZyb20gJ2xleGljYWwnXG5pbXBvcnQgdHlwZSB7IFJlcXVlc3RDb250ZXh0IH0gZnJvbSAncGF5bG9hZCdcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29uZmlnIH0gZnJvbSAncGF5bG9hZC9jb25maWcnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBQYXlsb2FkUmVxdWVzdCwgUmljaFRleHRGaWVsZCwgVmFsaWRhdGVPcHRpb25zIH0gZnJvbSAncGF5bG9hZC90eXBlcydcbmltcG9ydCB0eXBlIFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgdHlwZSB7IEFkYXB0ZXJQcm9wcyB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBDbGllbnRFZGl0b3JDb25maWcsIFNlcnZlckVkaXRvckNvbmZpZyB9IGZyb20gJy4uL2xleGljYWwvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBGbG9hdGluZ1Rvb2xiYXJTZWN0aW9uIH0gZnJvbSAnLi4vbGV4aWNhbC9wbHVnaW5zL0Zsb2F0aW5nU2VsZWN0VG9vbGJhci90eXBlcydcbmltcG9ydCB0eXBlIHsgU2xhc2hNZW51R3JvdXAgfSBmcm9tICcuLi9sZXhpY2FsL3BsdWdpbnMvU2xhc2hNZW51L0xleGljYWxUeXBlYWhlYWRNZW51UGx1Z2luL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBIVE1MQ29udmVydGVyIH0gZnJvbSAnLi9jb252ZXJ0ZXJzL2h0bWwvY29udmVydGVyL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSBQb3B1bGF0aW9uUHJvbWlzZTxUIGV4dGVuZHMgU2VyaWFsaXplZExleGljYWxOb2RlID0gU2VyaWFsaXplZExleGljYWxOb2RlPiA9ICh7XG4gIGNvbnRleHQsXG4gIGN1cnJlbnREZXB0aCxcbiAgZGVwdGgsXG4gIGVkaXRvclBvcHVsYXRpb25Qcm9taXNlcyxcbiAgZmllbGQsXG4gIGZpbmRNYW55LFxuICBmbGF0dGVuTG9jYWxlcyxcbiAgbm9kZSxcbiAgb3ZlcnJpZGVBY2Nlc3MsXG4gIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgcmVxLFxuICBzaG93SGlkZGVuRmllbGRzLFxuICBzaWJsaW5nRG9jLFxufToge1xuICBjb250ZXh0OiBSZXF1ZXN0Q29udGV4dFxuICBjdXJyZW50RGVwdGg6IG51bWJlclxuICBkZXB0aDogbnVtYmVyXG4gIC8qKlxuICAgKiBUaGlzIG1hcHMgYWxsIHBvcHVsYXRpb24gcHJvbWlzZXMgdG8gdGhlIG5vZGUgdHlwZVxuICAgKi9cbiAgZWRpdG9yUG9wdWxhdGlvblByb21pc2VzOiBNYXA8c3RyaW5nLCBBcnJheTxQb3B1bGF0aW9uUHJvbWlzZT4+XG4gIGZpZWxkOiBSaWNoVGV4dEZpZWxkPFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZSwgQWRhcHRlclByb3BzPlxuICBmaW5kTWFueTogYm9vbGVhblxuICBmbGF0dGVuTG9jYWxlczogYm9vbGVhblxuICBub2RlOiBUXG4gIG92ZXJyaWRlQWNjZXNzOiBib29sZWFuXG4gIHBvcHVsYXRpb25Qcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkczogYm9vbGVhblxuICBzaWJsaW5nRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxufSkgPT4gUHJvbWlzZTx2b2lkPltdXG5cbmV4cG9ydCB0eXBlIE5vZGVWYWxpZGF0aW9uPFQgZXh0ZW5kcyBTZXJpYWxpemVkTGV4aWNhbE5vZGUgPSBTZXJpYWxpemVkTGV4aWNhbE5vZGU+ID0gKHtcbiAgbm9kZSxcbiAgbm9kZVZhbGlkYXRpb25zLFxuICB2YWxpZGF0aW9uLFxufToge1xuICBub2RlOiBUXG4gIG5vZGVWYWxpZGF0aW9uczogTWFwPHN0cmluZywgQXJyYXk8Tm9kZVZhbGlkYXRpb24+PlxuICB2YWxpZGF0aW9uOiB7XG4gICAgb3B0aW9uczogVmFsaWRhdGVPcHRpb25zPHVua25vd24sIHVua25vd24sIFJpY2hUZXh0RmllbGQ+XG4gICAgdmFsdWU6IFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZVxuICB9XG59KSA9PiBQcm9taXNlPHN0cmluZyB8IHRydWU+IHwgc3RyaW5nIHwgdHJ1ZVxuXG5leHBvcnQgdHlwZSBGZWF0dXJlUHJvdmlkZXJQcm92aWRlclNlcnZlcjxTZXJ2ZXJGZWF0dXJlUHJvcHMsIENsaWVudEZlYXR1cmVQcm9wcz4gPSAoXG4gIHByb3BzPzogU2VydmVyRmVhdHVyZVByb3BzLFxuKSA9PiBGZWF0dXJlUHJvdmlkZXJTZXJ2ZXI8U2VydmVyRmVhdHVyZVByb3BzLCBDbGllbnRGZWF0dXJlUHJvcHM+XG5cbmV4cG9ydCB0eXBlIEZlYXR1cmVQcm92aWRlclNlcnZlcjxTZXJ2ZXJGZWF0dXJlUHJvcHMsIENsaWVudEZlYXR1cmVQcm9wcz4gPSB7XG4gIC8qKiBLZXlzIG9mIGRlcGVuZGVuY2llcyBuZWVkZWQgZm9yIHRoaXMgZmVhdHVyZS4gVGhlc2UgZGVwZW5kZW5jaWVzIGRvIG5vdCBoYXZlIHRvIGJlIGxvYWRlZCBmaXJzdCAqL1xuICBkZXBlbmRlbmNpZXM/OiBzdHJpbmdbXVxuICAvKiogS2V5cyBvZiBwcmlvcml0eSBkZXBlbmRlbmNpZXMgbmVlZGVkIGZvciB0aGlzIGZlYXR1cmUuIFRoZXNlIGRlcGVuZGVuY2llcyBoYXZlIHRvIGJlIGxvYWRlZCBmaXJzdCBhbmQgYXJlIGF2YWlsYWJsZSBpbiB0aGUgYGZlYXR1cmVgIHByb3BlcnR5Ki9cbiAgZGVwZW5kZW5jaWVzUHJpb3JpdHk/OiBzdHJpbmdbXVxuICAvKiogS2V5cyBvZiBzb2Z0LWRlcGVuZGVuY2llcyBuZWVkZWQgZm9yIHRoaXMgZmVhdHVyZS4gVGhlIEZlYXR1cmVQcm92aWRlcnMgZGVwZW5kZW5jaWVzIGFyZSBvcHRpb25hbCwgYnV0IGFyZSBjb25zaWRlcmVkIGFzIGxhc3QtcHJpb3JpdHkgaW4gdGhlIGxvYWRpbmcgcHJvY2VzcyAqL1xuICBkZXBlbmRlbmNpZXNTb2Z0Pzogc3RyaW5nW11cblxuICBmZWF0dXJlOiAocHJvcHM6IHtcbiAgICAvKiogdW5TYW5pdGl6ZWRFZGl0b3JDb25maWcuZmVhdHVyZXMsIGJ1dCBtYXBwZWQgKi9cbiAgICBmZWF0dXJlUHJvdmlkZXJNYXA6IFNlcnZlckZlYXR1cmVQcm92aWRlck1hcFxuICAgIC8vIG90aGVyIHJlc29sdmVkIGZlYXR1cmVzLCB3aGljaCBoYXZlIGJlZW4gbG9hZGVkIGJlZm9yZSB0aGlzIG9uZS4gQWxsIGZlYXR1cmVzIGRlY2xhcmVkIGluICdkZXBlbmRlbmNpZXMnIHNob3VsZCBiZSBhdmFpbGFibGUgaGVyZVxuICAgIHJlc29sdmVkRmVhdHVyZXM6IFJlc29sdmVkU2VydmVyRmVhdHVyZU1hcFxuICAgIC8vIHVuU2FuaXRpemVkIEVkaXRvckNvbmZpZyxcbiAgICB1blNhbml0aXplZEVkaXRvckNvbmZpZzogU2VydmVyRWRpdG9yQ29uZmlnXG4gIH0pID0+IFNlcnZlckZlYXR1cmU8U2VydmVyRmVhdHVyZVByb3BzLCBDbGllbnRGZWF0dXJlUHJvcHM+XG4gIGtleTogc3RyaW5nXG4gIC8qKiBQcm9wcyB3aGljaCB3ZXJlIHBhc3NlZCBpbnRvIHlvdXIgZmVhdHVyZSB3aWxsIGhhdmUgdG8gYmUgcGFzc2VkIGhlcmUuIFRoaXMgd2lsbCBhbGxvdyB0aGVtIHRvIGJlIHVzZWQgLyByZWFkIGluIG90aGVyIHBsYWNlcyBvZiB0aGUgY29kZSwgZS5nLiB3aGVyZXZlciB5b3UgY2FuIHVzZSB1c2VFZGl0b3JDb25maWdDb250ZXh0ICovXG4gIHNlcnZlckZlYXR1cmVQcm9wczogU2VydmVyRmVhdHVyZVByb3BzXG59XG5cbmV4cG9ydCB0eXBlIEZlYXR1cmVQcm92aWRlclByb3ZpZGVyQ2xpZW50PENsaWVudEZlYXR1cmVQcm9wcz4gPSAoXG4gIHByb3BzPzogQ2xpZW50Q29tcG9uZW50UHJvcHM8Q2xpZW50RmVhdHVyZVByb3BzPixcbikgPT4gRmVhdHVyZVByb3ZpZGVyQ2xpZW50PENsaWVudEZlYXR1cmVQcm9wcz5cblxuLyoqXG4gKiBObyBkZXBlbmRlbmNpZXMgPT4gRmVhdHVyZXMgbmVlZCB0byBiZSBzb3J0ZWQgb24gdGhlIHNlcnZlciBmaXJzdCwgdGhlbiBzZW50IHRvIGNsaWVudCBpbiByaWdodCBvcmRlclxuICovXG5leHBvcnQgdHlwZSBGZWF0dXJlUHJvdmlkZXJDbGllbnQ8Q2xpZW50RmVhdHVyZVByb3BzPiA9IHtcbiAgLyoqXG4gICAqIFJldHVybiBwcm9wcywgdG8gbWFrZSBpdCBlYXN5IHRvIHJldHJpZXZlIHBhc3NlZCBpbiBwcm9wcyB0byB0aGlzIEZlYXR1cmUgZm9yIHRoZSBjbGllbnQgaWYgYW55b25lIHdhbnRzIHRvXG4gICAqL1xuICBjbGllbnRGZWF0dXJlUHJvcHM6IENsaWVudENvbXBvbmVudFByb3BzPENsaWVudEZlYXR1cmVQcm9wcz5cbiAgZmVhdHVyZTogKHByb3BzOiB7XG4gICAgY2xpZW50RnVuY3Rpb25zOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICAgLyoqIHVuU2FuaXRpemVkRWRpdG9yQ29uZmlnLmZlYXR1cmVzLCBidXQgbWFwcGVkICovXG4gICAgZmVhdHVyZVByb3ZpZGVyTWFwOiBDbGllbnRGZWF0dXJlUHJvdmlkZXJNYXBcbiAgICAvLyBvdGhlciByZXNvbHZlZCBmZWF0dXJlcywgd2hpY2ggaGF2ZSBiZWVuIGxvYWRlZCBiZWZvcmUgdGhpcyBvbmUuIEFsbCBmZWF0dXJlcyBkZWNsYXJlZCBpbiAnZGVwZW5kZW5jaWVzJyBzaG91bGQgYmUgYXZhaWxhYmxlIGhlcmVcbiAgICByZXNvbHZlZEZlYXR1cmVzOiBSZXNvbHZlZENsaWVudEZlYXR1cmVNYXBcbiAgICAvLyB1blNhbml0aXplZCBFZGl0b3JDb25maWcsXG4gICAgdW5TYW5pdGl6ZWRFZGl0b3JDb25maWc6IENsaWVudEVkaXRvckNvbmZpZ1xuICB9KSA9PiBDbGllbnRGZWF0dXJlPENsaWVudEZlYXR1cmVQcm9wcz5cbn1cblxuZXhwb3J0IHR5cGUgQ2xpZW50RmVhdHVyZTxDbGllbnRGZWF0dXJlUHJvcHM+ID0ge1xuICAvKipcbiAgICogUmV0dXJuIHByb3BzLCB0byBtYWtlIGl0IGVhc3kgdG8gcmV0cmlldmUgcGFzc2VkIGluIHByb3BzIHRvIHRoaXMgRmVhdHVyZSBmb3IgdGhlIGNsaWVudCBpZiBhbnlvbmUgd2FudHMgdG9cbiAgICovXG4gIGNsaWVudEZlYXR1cmVQcm9wczogQ2xpZW50Q29tcG9uZW50UHJvcHM8Q2xpZW50RmVhdHVyZVByb3BzPlxuXG4gIGZsb2F0aW5nU2VsZWN0VG9vbGJhcj86IHtcbiAgICBzZWN0aW9uczogRmxvYXRpbmdUb29sYmFyU2VjdGlvbltdXG4gIH1cbiAgaG9va3M/OiB7XG4gICAgbG9hZD86ICh7XG4gICAgICBpbmNvbWluZ0VkaXRvclN0YXRlLFxuICAgIH06IHtcbiAgICAgIGluY29taW5nRWRpdG9yU3RhdGU6IFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZVxuICAgIH0pID0+IFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZVxuICAgIHNhdmU/OiAoe1xuICAgICAgaW5jb21pbmdFZGl0b3JTdGF0ZSxcbiAgICB9OiB7XG4gICAgICBpbmNvbWluZ0VkaXRvclN0YXRlOiBTZXJpYWxpemVkRWRpdG9yU3RhdGVcbiAgICB9KSA9PiBTZXJpYWxpemVkRWRpdG9yU3RhdGVcbiAgfVxuICBtYXJrZG93blRyYW5zZm9ybWVycz86IFRyYW5zZm9ybWVyW11cbiAgbm9kZXM/OiBBcnJheTxLbGFzczxMZXhpY2FsTm9kZT4gfCBMZXhpY2FsTm9kZVJlcGxhY2VtZW50PlxuICBwbHVnaW5zPzogQXJyYXk8XG4gICAgfCB7XG4gICAgICAgIC8vIHBsdWdpbnMgYXJlIGFueXRoaW5nIHdoaWNoIGlzIG5vdCBkaXJlY3RseSBwYXJ0IG9mIHRoZSBlZGl0b3IuIExpa2UsIGNyZWF0aW5nIGEgY29tbWFuZCB3aGljaCBjcmVhdGVzIGEgbm9kZSwgb3Igb3BlbnMgYSBtb2RhbCwgb3Igc29tZSBvdGhlciBtb3JlIFwib3V0c2lkZVwiIGZ1bmN0aW9uYWxpdHlcbiAgICAgICAgQ29tcG9uZW50OiBSZWFjdC5GQ1xuICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbScgLy8gRGV0ZXJtaW5lcyBhdCB3aGljaCBwb3NpdGlvbiB0aGUgQ29tcG9uZW50IHdpbGwgYmUgYWRkZWQuXG4gICAgICB9XG4gICAgfCB7XG4gICAgICAgIC8vIHBsdWdpbnMgYXJlIGFueXRoaW5nIHdoaWNoIGlzIG5vdCBkaXJlY3RseSBwYXJ0IG9mIHRoZSBlZGl0b3IuIExpa2UsIGNyZWF0aW5nIGEgY29tbWFuZCB3aGljaCBjcmVhdGVzIGEgbm9kZSwgb3Igb3BlbnMgYSBtb2RhbCwgb3Igc29tZSBvdGhlciBtb3JlIFwib3V0c2lkZVwiIGZ1bmN0aW9uYWxpdHlcbiAgICAgICAgQ29tcG9uZW50OiBSZWFjdC5GQ1xuICAgICAgICBwb3NpdGlvbjogJ25vcm1hbCcgLy8gRGV0ZXJtaW5lcyBhdCB3aGljaCBwb3NpdGlvbiB0aGUgQ29tcG9uZW50IHdpbGwgYmUgYWRkZWQuXG4gICAgICB9XG4gICAgfCB7XG4gICAgICAgIC8vIHBsdWdpbnMgYXJlIGFueXRoaW5nIHdoaWNoIGlzIG5vdCBkaXJlY3RseSBwYXJ0IG9mIHRoZSBlZGl0b3IuIExpa2UsIGNyZWF0aW5nIGEgY29tbWFuZCB3aGljaCBjcmVhdGVzIGEgbm9kZSwgb3Igb3BlbnMgYSBtb2RhbCwgb3Igc29tZSBvdGhlciBtb3JlIFwib3V0c2lkZVwiIGZ1bmN0aW9uYWxpdHlcbiAgICAgICAgQ29tcG9uZW50OiBSZWFjdC5GQ1xuICAgICAgICBwb3NpdGlvbjogJ3RvcCcgLy8gRGV0ZXJtaW5lcyBhdCB3aGljaCBwb3NpdGlvbiB0aGUgQ29tcG9uZW50IHdpbGwgYmUgYWRkZWQuXG4gICAgICB9XG4gICAgfCB7XG4gICAgICAgIC8vIHBsdWdpbnMgYXJlIGFueXRoaW5nIHdoaWNoIGlzIG5vdCBkaXJlY3RseSBwYXJ0IG9mIHRoZSBlZGl0b3IuIExpa2UsIGNyZWF0aW5nIGEgY29tbWFuZCB3aGljaCBjcmVhdGVzIGEgbm9kZSwgb3Igb3BlbnMgYSBtb2RhbCwgb3Igc29tZSBvdGhlciBtb3JlIFwib3V0c2lkZVwiIGZ1bmN0aW9uYWxpdHlcbiAgICAgICAgQ29tcG9uZW50OiBSZWFjdC5GQzx7IGFuY2hvckVsZW06IEhUTUxFbGVtZW50IH0+XG4gICAgICAgIHBvc2l0aW9uOiAnZmxvYXRpbmdBbmNob3JFbGVtJyAvLyBEZXRlcm1pbmVzIGF0IHdoaWNoIHBvc2l0aW9uIHRoZSBDb21wb25lbnQgd2lsbCBiZSBhZGRlZC5cbiAgICAgIH1cbiAgPlxuICBzbGFzaE1lbnU/OiB7XG4gICAgZHluYW1pY09wdGlvbnM/OiAoe1xuICAgICAgZWRpdG9yLFxuICAgICAgcXVlcnlTdHJpbmcsXG4gICAgfToge1xuICAgICAgZWRpdG9yOiBMZXhpY2FsRWRpdG9yXG4gICAgICBxdWVyeVN0cmluZzogc3RyaW5nXG4gICAgfSkgPT4gU2xhc2hNZW51R3JvdXBbXVxuICAgIG9wdGlvbnM/OiBTbGFzaE1lbnVHcm91cFtdXG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgQ2xpZW50Q29tcG9uZW50UHJvcHM8Q2xpZW50RmVhdHVyZVByb3BzPiA9IENsaWVudEZlYXR1cmVQcm9wcyAmIHtcbiAgZmVhdHVyZUtleTogc3RyaW5nXG4gIG9yZGVyOiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgU2VydmVyRmVhdHVyZTxTZXJ2ZXJQcm9wcywgQ2xpZW50RmVhdHVyZVByb3BzPiA9IHtcbiAgQ2xpZW50Q29tcG9uZW50PzogUmVhY3QuRkM8Q2xpZW50Q29tcG9uZW50UHJvcHM8Q2xpZW50RmVhdHVyZVByb3BzPj5cbiAgLyoqXG4gICAqIFRoaXMgZGV0ZXJtaW5lcyB3aGF0IHByb3BzIHdpbGwgYmUgYXZhaWxhYmxlIG9uIHRoZSBDbGllbnQuXG4gICAqL1xuICBjbGllbnRGZWF0dXJlUHJvcHM/OiBDbGllbnRGZWF0dXJlUHJvcHNcbiAgZ2VuZXJhdGVDb21wb25lbnRNYXA/OiAoYXJnczoge1xuICAgIGNvbmZpZzogU2FuaXRpemVkQ29uZmlnXG4gICAgcHJvcHM6IFNlcnZlclByb3BzXG4gICAgc2NoZW1hUGF0aDogc3RyaW5nXG4gIH0pID0+IHtcbiAgICBba2V5OiBzdHJpbmddOiBSZWFjdC5GQzx7IGNvbXBvbmVudEtleTogc3RyaW5nOyBmZWF0dXJlS2V5OiBzdHJpbmcgfT5cbiAgfVxuICBnZW5lcmF0ZVNjaGVtYU1hcD86IChhcmdzOiB7XG4gICAgY29uZmlnOiBTYW5pdGl6ZWRDb25maWdcbiAgICBwcm9wczogU2VydmVyUHJvcHNcbiAgICBzY2hlbWFNYXA6IE1hcDxzdHJpbmcsIEZpZWxkW10+XG4gICAgc2NoZW1hUGF0aDogc3RyaW5nXG4gIH0pID0+IHtcbiAgICBba2V5OiBzdHJpbmddOiBGaWVsZFtdXG4gIH1cbiAgZ2VuZXJhdGVkVHlwZXM/OiB7XG4gICAgbW9kaWZ5T3V0cHV0U2NoZW1hOiAoe1xuICAgICAgY3VycmVudFNjaGVtYSxcbiAgICAgIGZpZWxkLFxuICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLFxuICAgICAgaXNSZXF1aXJlZCxcbiAgICB9OiB7XG4gICAgICAvKipcbiAgICAgICAqIEN1cnJlbnQgc2NoZW1hIHdoaWNoIHdpbGwgYmUgbW9kaWZpZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgICAgICAqL1xuICAgICAgY3VycmVudFNjaGVtYTogSlNPTlNjaGVtYTRcbiAgICAgIGZpZWxkOiBSaWNoVGV4dEZpZWxkPFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZSwgQWRhcHRlclByb3BzPlxuICAgICAgLyoqXG4gICAgICAgKiBBbGxvd3MgeW91IHRvIGRlZmluZSBuZXcgdG9wLWxldmVsIGludGVyZmFjZXMgdGhhdCBjYW4gYmUgcmUtdXNlZCBpbiB0aGUgb3V0cHV0IHNjaGVtYS5cbiAgICAgICAqL1xuICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zOiBNYXA8c3RyaW5nLCBKU09OU2NoZW1hND5cbiAgICAgIGlzUmVxdWlyZWQ6IGJvb2xlYW5cbiAgICB9KSA9PiBKU09OU2NoZW1hNFxuICB9XG4gIGhvb2tzPzoge1xuICAgIGFmdGVyUmVhZFByb21pc2U/OiAoe1xuICAgICAgZmllbGQsXG4gICAgICBpbmNvbWluZ0VkaXRvclN0YXRlLFxuICAgICAgc2libGluZ0RvYyxcbiAgICB9OiB7XG4gICAgICBmaWVsZDogUmljaFRleHRGaWVsZDxTZXJpYWxpemVkRWRpdG9yU3RhdGUsIEFkYXB0ZXJQcm9wcz5cbiAgICAgIGluY29taW5nRWRpdG9yU3RhdGU6IFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZVxuICAgICAgc2libGluZ0RvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICB9KSA9PiBQcm9taXNlPHZvaWQ+IHwgbnVsbFxuICB9XG4gIG1hcmtkb3duVHJhbnNmb3JtZXJzPzogVHJhbnNmb3JtZXJbXVxuICBub2Rlcz86IEFycmF5PHtcbiAgICBjb252ZXJ0ZXJzPzoge1xuICAgICAgaHRtbD86IEhUTUxDb252ZXJ0ZXJcbiAgICB9XG4gICAgbm9kZTogS2xhc3M8TGV4aWNhbE5vZGU+IHwgTGV4aWNhbE5vZGVSZXBsYWNlbWVudFxuICAgIHBvcHVsYXRpb25Qcm9taXNlcz86IEFycmF5PFBvcHVsYXRpb25Qcm9taXNlPlxuICAgIHZhbGlkYXRpb25zPzogQXJyYXk8Tm9kZVZhbGlkYXRpb24+XG4gIH0+XG5cbiAgLyoqIFByb3BzIHdoaWNoIHdlcmUgcGFzc2VkIGludG8geW91ciBmZWF0dXJlIHdpbGwgaGF2ZSB0byBiZSBwYXNzZWQgaGVyZS4gVGhpcyB3aWxsIGFsbG93IHRoZW0gdG8gYmUgdXNlZCAvIHJlYWQgaW4gb3RoZXIgcGxhY2VzIG9mIHRoZSBjb2RlLCBlLmcuIHdoZXJldmVyIHlvdSBjYW4gdXNlIHVzZUVkaXRvckNvbmZpZ0NvbnRleHQgKi9cbiAgc2VydmVyRmVhdHVyZVByb3BzOiBTZXJ2ZXJQcm9wc1xufVxuXG5leHBvcnQgdHlwZSBSZXNvbHZlZFNlcnZlckZlYXR1cmU8U2VydmVyUHJvcHMsIENsaWVudEZlYXR1cmVQcm9wcz4gPSBTZXJ2ZXJGZWF0dXJlPFxuICBTZXJ2ZXJQcm9wcyxcbiAgQ2xpZW50RmVhdHVyZVByb3BzXG4+ICZcbiAgUmVxdWlyZWQ8XG4gICAgUGljazxcbiAgICAgIEZlYXR1cmVQcm92aWRlclNlcnZlcjxTZXJ2ZXJQcm9wcywgQ2xpZW50RmVhdHVyZVByb3BzPixcbiAgICAgICdkZXBlbmRlbmNpZXMnIHwgJ2RlcGVuZGVuY2llc1ByaW9yaXR5JyB8ICdkZXBlbmRlbmNpZXNTb2Z0JyB8ICdrZXknXG4gICAgPlxuICA+ICYge1xuICAgIG9yZGVyOiBudW1iZXJcbiAgfVxuXG5leHBvcnQgdHlwZSBSZXNvbHZlZENsaWVudEZlYXR1cmU8Q2xpZW50RmVhdHVyZVByb3BzPiA9IENsaWVudEZlYXR1cmU8Q2xpZW50RmVhdHVyZVByb3BzPiAmIHtcbiAga2V5OiBzdHJpbmdcbiAgb3JkZXI6IG51bWJlclxufVxuXG5leHBvcnQgdHlwZSBSZXNvbHZlZFNlcnZlckZlYXR1cmVNYXAgPSBNYXA8c3RyaW5nLCBSZXNvbHZlZFNlcnZlckZlYXR1cmU8dW5rbm93biwgdW5rbm93bj4+XG5leHBvcnQgdHlwZSBSZXNvbHZlZENsaWVudEZlYXR1cmVNYXAgPSBNYXA8c3RyaW5nLCBSZXNvbHZlZENsaWVudEZlYXR1cmU8dW5rbm93bj4+XG5cbmV4cG9ydCB0eXBlIFNlcnZlckZlYXR1cmVQcm92aWRlck1hcCA9IE1hcDxzdHJpbmcsIEZlYXR1cmVQcm92aWRlclNlcnZlcjx1bmtub3duLCB1bmtub3duPj5cbmV4cG9ydCB0eXBlIENsaWVudEZlYXR1cmVQcm92aWRlck1hcCA9IE1hcDxzdHJpbmcsIEZlYXR1cmVQcm92aWRlckNsaWVudDx1bmtub3duPj5cblxuZXhwb3J0IHR5cGUgU2FuaXRpemVkUGx1Z2luID1cbiAgfCB7XG4gICAgICAvLyBwbHVnaW5zIGFyZSBhbnl0aGluZyB3aGljaCBpcyBub3QgZGlyZWN0bHkgcGFydCBvZiB0aGUgZWRpdG9yLiBMaWtlLCBjcmVhdGluZyBhIGNvbW1hbmQgd2hpY2ggY3JlYXRlcyBhIG5vZGUsIG9yIG9wZW5zIGEgbW9kYWwsIG9yIHNvbWUgb3RoZXIgbW9yZSBcIm91dHNpZGVcIiBmdW5jdGlvbmFsaXR5XG4gICAgICBDb21wb25lbnQ6IFJlYWN0LkZDXG4gICAgICBrZXk6IHN0cmluZ1xuICAgICAgcG9zaXRpb246ICdib3R0b20nIC8vIERldGVybWluZXMgYXQgd2hpY2ggcG9zaXRpb24gdGhlIENvbXBvbmVudCB3aWxsIGJlIGFkZGVkLlxuICAgIH1cbiAgfCB7XG4gICAgICAvLyBwbHVnaW5zIGFyZSBhbnl0aGluZyB3aGljaCBpcyBub3QgZGlyZWN0bHkgcGFydCBvZiB0aGUgZWRpdG9yLiBMaWtlLCBjcmVhdGluZyBhIGNvbW1hbmQgd2hpY2ggY3JlYXRlcyBhIG5vZGUsIG9yIG9wZW5zIGEgbW9kYWwsIG9yIHNvbWUgb3RoZXIgbW9yZSBcIm91dHNpZGVcIiBmdW5jdGlvbmFsaXR5XG4gICAgICBDb21wb25lbnQ6IFJlYWN0LkZDXG4gICAgICBrZXk6IHN0cmluZ1xuICAgICAgcG9zaXRpb246ICdub3JtYWwnIC8vIERldGVybWluZXMgYXQgd2hpY2ggcG9zaXRpb24gdGhlIENvbXBvbmVudCB3aWxsIGJlIGFkZGVkLlxuICAgIH1cbiAgfCB7XG4gICAgICAvLyBwbHVnaW5zIGFyZSBhbnl0aGluZyB3aGljaCBpcyBub3QgZGlyZWN0bHkgcGFydCBvZiB0aGUgZWRpdG9yLiBMaWtlLCBjcmVhdGluZyBhIGNvbW1hbmQgd2hpY2ggY3JlYXRlcyBhIG5vZGUsIG9yIG9wZW5zIGEgbW9kYWwsIG9yIHNvbWUgb3RoZXIgbW9yZSBcIm91dHNpZGVcIiBmdW5jdGlvbmFsaXR5XG4gICAgICBDb21wb25lbnQ6IFJlYWN0LkZDXG4gICAgICBrZXk6IHN0cmluZ1xuICAgICAgcG9zaXRpb246ICd0b3AnIC8vIERldGVybWluZXMgYXQgd2hpY2ggcG9zaXRpb24gdGhlIENvbXBvbmVudCB3aWxsIGJlIGFkZGVkLlxuICAgIH1cbiAgfCB7XG4gICAgICAvLyBwbHVnaW5zIGFyZSBhbnl0aGluZyB3aGljaCBpcyBub3QgZGlyZWN0bHkgcGFydCBvZiB0aGUgZWRpdG9yLiBMaWtlLCBjcmVhdGluZyBhIGNvbW1hbmQgd2hpY2ggY3JlYXRlcyBhIG5vZGUsIG9yIG9wZW5zIGEgbW9kYWwsIG9yIHNvbWUgb3RoZXIgbW9yZSBcIm91dHNpZGVcIiBmdW5jdGlvbmFsaXR5XG4gICAgICBDb21wb25lbnQ6IFJlYWN0LkZDPHsgYW5jaG9yRWxlbTogSFRNTEVsZW1lbnQgfT5cbiAgICAgIGRlc2t0b3BPbmx5PzogYm9vbGVhblxuICAgICAga2V5OiBzdHJpbmdcbiAgICAgIHBvc2l0aW9uOiAnZmxvYXRpbmdBbmNob3JFbGVtJyAvLyBEZXRlcm1pbmVzIGF0IHdoaWNoIHBvc2l0aW9uIHRoZSBDb21wb25lbnQgd2lsbCBiZSBhZGRlZC5cbiAgICB9XG5cbmV4cG9ydCB0eXBlIFNhbml0aXplZFNlcnZlckZlYXR1cmVzID0gUmVxdWlyZWQ8XG4gIFBpY2s8UmVzb2x2ZWRTZXJ2ZXJGZWF0dXJlPHVua25vd24sIHVua25vd24+LCAnbWFya2Rvd25UcmFuc2Zvcm1lcnMnIHwgJ25vZGVzJz5cbj4gJiB7XG4gIC8qKiAgVGhlIG5vZGUgdHlwZXMgbWFwcGVkIHRvIHRoZWlyIGNvbnZlcnRlcnMgKi9cbiAgY29udmVydGVyczoge1xuICAgIGh0bWw6IEhUTUxDb252ZXJ0ZXJbXVxuICB9XG4gIC8qKiBUaGUga2V5cyBvZiBhbGwgZW5hYmxlZCBmZWF0dXJlcyAqL1xuICBlbmFibGVkRmVhdHVyZXM6IHN0cmluZ1tdXG4gIGdlbmVyYXRlZFR5cGVzOiB7XG4gICAgbW9kaWZ5T3V0cHV0U2NoZW1hczogQXJyYXk8XG4gICAgICAoe1xuICAgICAgICBjdXJyZW50U2NoZW1hLFxuICAgICAgICBmaWVsZCxcbiAgICAgICAgaW50ZXJmYWNlTmFtZURlZmluaXRpb25zLFxuICAgICAgICBpc1JlcXVpcmVkLFxuICAgICAgfToge1xuICAgICAgICAvKipcbiAgICAgICAgICogQ3VycmVudCBzY2hlbWEgd2hpY2ggd2lsbCBiZSBtb2RpZmllZCBieSB0aGlzIGZ1bmN0aW9uLlxuICAgICAgICAgKi9cbiAgICAgICAgY3VycmVudFNjaGVtYTogSlNPTlNjaGVtYTRcbiAgICAgICAgZmllbGQ6IFJpY2hUZXh0RmllbGQ8U2VyaWFsaXplZEVkaXRvclN0YXRlLCBBZGFwdGVyUHJvcHM+XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBbGxvd3MgeW91IHRvIGRlZmluZSBuZXcgdG9wLWxldmVsIGludGVyZmFjZXMgdGhhdCBjYW4gYmUgcmUtdXNlZCBpbiB0aGUgb3V0cHV0IHNjaGVtYS5cbiAgICAgICAgICovXG4gICAgICAgIGludGVyZmFjZU5hbWVEZWZpbml0aW9uczogTWFwPHN0cmluZywgSlNPTlNjaGVtYTQ+XG4gICAgICAgIGlzUmVxdWlyZWQ6IGJvb2xlYW5cbiAgICAgIH0pID0+IEpTT05TY2hlbWE0XG4gICAgPlxuICB9XG4gIGhvb2tzOiB7XG4gICAgYWZ0ZXJSZWFkUHJvbWlzZXM6IEFycmF5PFxuICAgICAgKHtcbiAgICAgICAgZmllbGQsXG4gICAgICAgIGluY29taW5nRWRpdG9yU3RhdGUsXG4gICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICB9OiB7XG4gICAgICAgIGZpZWxkOiBSaWNoVGV4dEZpZWxkPFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZSwgQWRhcHRlclByb3BzPlxuICAgICAgICBpbmNvbWluZ0VkaXRvclN0YXRlOiBTZXJpYWxpemVkRWRpdG9yU3RhdGVcbiAgICAgICAgc2libGluZ0RvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgIH0pID0+IFByb21pc2U8dm9pZD4gfCBudWxsXG4gICAgPlxuICB9XG4gIC8qKiAgVGhlIG5vZGUgdHlwZXMgbWFwcGVkIHRvIHRoZWlyIHBvcHVsYXRpb25Qcm9taXNlcyAqL1xuICBwb3B1bGF0aW9uUHJvbWlzZXM6IE1hcDxzdHJpbmcsIEFycmF5PFBvcHVsYXRpb25Qcm9taXNlPj5cbiAgLyoqICBUaGUgbm9kZSB0eXBlcyBtYXBwZWQgdG8gdGhlaXIgdmFsaWRhdGlvbnMgKi9cbiAgdmFsaWRhdGlvbnM6IE1hcDxzdHJpbmcsIEFycmF5PE5vZGVWYWxpZGF0aW9uPj5cbn1cblxuZXhwb3J0IHR5cGUgU2FuaXRpemVkQ2xpZW50RmVhdHVyZXMgPSBSZXF1aXJlZDxcbiAgUGljazxSZXNvbHZlZENsaWVudEZlYXR1cmU8dW5rbm93bj4sICdtYXJrZG93blRyYW5zZm9ybWVycycgfCAnbm9kZXMnPlxuPiAmIHtcbiAgLyoqIFRoZSBrZXlzIG9mIGFsbCBlbmFibGVkIGZlYXR1cmVzICovXG4gIGVuYWJsZWRGZWF0dXJlczogc3RyaW5nW11cbiAgZmxvYXRpbmdTZWxlY3RUb29sYmFyOiB7XG4gICAgc2VjdGlvbnM6IEZsb2F0aW5nVG9vbGJhclNlY3Rpb25bXVxuICB9XG4gIGhvb2tzOiB7XG4gICAgbG9hZDogQXJyYXk8XG4gICAgICAoe1xuICAgICAgICBpbmNvbWluZ0VkaXRvclN0YXRlLFxuICAgICAgfToge1xuICAgICAgICBpbmNvbWluZ0VkaXRvclN0YXRlOiBTZXJpYWxpemVkRWRpdG9yU3RhdGVcbiAgICAgIH0pID0+IFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZVxuICAgID5cbiAgICBzYXZlOiBBcnJheTxcbiAgICAgICh7XG4gICAgICAgIGluY29taW5nRWRpdG9yU3RhdGUsXG4gICAgICB9OiB7XG4gICAgICAgIGluY29taW5nRWRpdG9yU3RhdGU6IFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZVxuICAgICAgfSkgPT4gU2VyaWFsaXplZEVkaXRvclN0YXRlXG4gICAgPlxuICB9XG4gIHBsdWdpbnM/OiBBcnJheTxTYW5pdGl6ZWRQbHVnaW4+XG4gIHNsYXNoTWVudToge1xuICAgIGR5bmFtaWNPcHRpb25zOiBBcnJheTxcbiAgICAgICh7IGVkaXRvciwgcXVlcnlTdHJpbmcgfTogeyBlZGl0b3I6IExleGljYWxFZGl0b3I7IHF1ZXJ5U3RyaW5nOiBzdHJpbmcgfSkgPT4gU2xhc2hNZW51R3JvdXBbXVxuICAgID5cbiAgICBncm91cHNXaXRoT3B0aW9uczogU2xhc2hNZW51R3JvdXBbXVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaVZBLFdBK0JDIn0=
@@ -1,85 +1,37 @@
1
1
  'use client';
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "ExtraFieldsUploadDrawer", {
7
- enumerable: true,
8
- get: function() {
9
- return ExtraFieldsUploadDrawer;
10
- }
11
- });
12
- const _modal = require("@faceless-ui/modal");
13
- const _LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
14
- const _translations = require("@payloadcms/translations");
15
- const _ui = require("@payloadcms/ui");
16
- const _lexical = require("lexical");
17
- const _utilities = require("payload/utilities");
18
- const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
19
- const _uuid = require("uuid");
20
- const _EditorConfigProvider = require("../../../../lexical/config/client/EditorConfigProvider");
21
- function _getRequireWildcardCache(nodeInterop) {
22
- if (typeof WeakMap !== "function") return null;
23
- var cacheBabelInterop = new WeakMap();
24
- var cacheNodeInterop = new WeakMap();
25
- return (_getRequireWildcardCache = function(nodeInterop) {
26
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
27
- })(nodeInterop);
28
- }
29
- function _interop_require_wildcard(obj, nodeInterop) {
30
- if (!nodeInterop && obj && obj.__esModule) {
31
- return obj;
32
- }
33
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
34
- return {
35
- default: obj
36
- };
37
- }
38
- var cache = _getRequireWildcardCache(nodeInterop);
39
- if (cache && cache.has(obj)) {
40
- return cache.get(obj);
41
- }
42
- var newObj = {
43
- __proto__: null
44
- };
45
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
46
- for(var key in obj){
47
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
48
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
49
- if (desc && (desc.get || desc.set)) {
50
- Object.defineProperty(newObj, key, desc);
51
- } else {
52
- newObj[key] = obj[key];
53
- }
54
- }
55
- }
56
- newObj.default = obj;
57
- if (cache) {
58
- cache.set(obj, newObj);
59
- }
60
- return newObj;
61
- }
62
- const ExtraFieldsUploadDrawer = (props)=>{
2
+ import { useModal } from '@faceless-ui/modal';
3
+ import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
4
+ import { getTranslation } from '@payloadcms/translations';
5
+ import { Drawer, FieldPathProvider, Form, FormSubmit, RenderFields, getFormState, useConfig, useDocumentInfo, useFieldPath, useTranslation } from '@payloadcms/ui';
6
+ import { $getNodeByKey } from 'lexical';
7
+ import { deepCopyObject } from 'payload/utilities';
8
+ import React, { useCallback, useEffect, useState } from 'react';
9
+ import { v4 as uuid } from 'uuid';
10
+ import { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider';
11
+ /**
12
+ * This handles the extra fields, e.g. captions or alt text, which are
13
+ * potentially added to the upload feature.
14
+ */ export const ExtraFieldsUploadDrawer = (props)=>{
63
15
  const { data: { fields, relationTo, value }, drawerSlug, nodeKey, relatedCollection } = props;
64
- const [editor] = (0, _LexicalComposerContext.useLexicalComposerContext)();
65
- const { closeModal } = (0, _modal.useModal)();
66
- const { i18n, t } = (0, _ui.useTranslation)();
67
- const { id } = (0, _ui.useDocumentInfo)();
68
- const { schemaPath } = (0, _ui.useFieldPath)();
69
- const config = (0, _ui.useConfig)();
70
- const [initialState, setInitialState] = (0, _react.useState)(false);
71
- const { field: { richTextComponentMap } } = (0, _EditorConfigProvider.useEditorConfigContext)();
16
+ const [editor] = useLexicalComposerContext();
17
+ const { closeModal } = useModal();
18
+ const { i18n, t } = useTranslation();
19
+ const { id } = useDocumentInfo();
20
+ const { schemaPath } = useFieldPath();
21
+ const config = useConfig();
22
+ const [initialState, setInitialState] = useState(false);
23
+ const { field: { richTextComponentMap } } = useEditorConfigContext();
72
24
  const componentMapRenderedFieldsPath = `feature.upload.fields.${relatedCollection.slug}`;
73
25
  const schemaFieldsPath = `${schemaPath}.feature.upload.${relatedCollection.slug}`;
74
26
  const fieldMap = richTextComponentMap.get(componentMapRenderedFieldsPath) // Field Schema
75
27
  ;
76
- (0, _react.useEffect)(()=>{
28
+ useEffect(()=>{
77
29
  const awaitInitialState = async ()=>{
78
- const state = await (0, _ui.getFormState)({
30
+ const state = await getFormState({
79
31
  apiRoute: config.routes.api,
80
32
  body: {
81
33
  id,
82
- data: (0, _utilities.deepCopyObject)(fields || {}),
34
+ data: deepCopyObject(fields || {}),
83
35
  operation: 'update',
84
36
  schemaPath: schemaFieldsPath
85
37
  },
@@ -96,8 +48,8 @@ const ExtraFieldsUploadDrawer = (props)=>{
96
48
  id,
97
49
  fields
98
50
  ]);
99
- const onChange = (0, _react.useCallback)(async ({ formState: prevFormState })=>{
100
- return await (0, _ui.getFormState)({
51
+ const onChange = useCallback(async ({ formState: prevFormState })=>{
52
+ return await getFormState({
101
53
  apiRoute: config.routes.api,
102
54
  body: {
103
55
  id,
@@ -113,10 +65,10 @@ const ExtraFieldsUploadDrawer = (props)=>{
113
65
  schemaFieldsPath,
114
66
  id
115
67
  ]);
116
- const handleUpdateEditData = (0, _react.useCallback)((_, data)=>{
68
+ const handleUpdateEditData = useCallback((_, data)=>{
117
69
  // Update lexical node (with key nodeKey) with new data
118
70
  editor.update(()=>{
119
- const uploadNode = (0, _lexical.$getNodeByKey)(nodeKey);
71
+ const uploadNode = $getNodeByKey(nodeKey);
120
72
  if (uploadNode) {
121
73
  const newData = {
122
74
  ...uploadNode.getData(),
@@ -132,15 +84,15 @@ const ExtraFieldsUploadDrawer = (props)=>{
132
84
  drawerSlug,
133
85
  nodeKey
134
86
  ]);
135
- return /*#__PURE__*/ _react.default.createElement(_ui.Drawer, {
87
+ return /*#__PURE__*/ React.createElement(Drawer, {
136
88
  slug: drawerSlug,
137
89
  title: t('general:editLabel', {
138
- label: (0, _translations.getTranslation)(relatedCollection.labels.singular, i18n)
90
+ label: getTranslation(relatedCollection.labels.singular, i18n)
139
91
  })
140
- }, initialState !== false && /*#__PURE__*/ _react.default.createElement(_ui.FieldPathProvider, {
92
+ }, initialState !== false && /*#__PURE__*/ React.createElement(FieldPathProvider, {
141
93
  path: "",
142
94
  schemaPath: ""
143
- }, /*#__PURE__*/ _react.default.createElement(_ui.Form, {
95
+ }, /*#__PURE__*/ React.createElement(Form, {
144
96
  // @ts-expect-error // TODO: Fix this type. Is this correct?
145
97
  fields: fieldMap,
146
98
  initialState: initialState,
@@ -148,11 +100,11 @@ const ExtraFieldsUploadDrawer = (props)=>{
148
100
  onChange
149
101
  ],
150
102
  onSubmit: handleUpdateEditData,
151
- uuid: (0, _uuid.v4)()
152
- }, /*#__PURE__*/ _react.default.createElement(_ui.RenderFields, {
103
+ uuid: uuid()
104
+ }, /*#__PURE__*/ React.createElement(RenderFields, {
153
105
  fieldMap: Array.isArray(fieldMap) ? fieldMap : [],
154
106
  forceRender: true
155
- }), /*#__PURE__*/ _react.default.createElement(_ui.FormSubmit, null, t('fields:saveChanges')))));
107
+ }), /*#__PURE__*/ React.createElement(FormSubmit, null, t('fields:saveChanges')))));
156
108
  };
157
109
 
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy91cGxvYWQvY29tcG9uZW50L0V4dHJhRmllbGRzRHJhd2VyL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcbmltcG9ydCB0eXBlIHsgRm9ybVN0YXRlLCBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgdXNlTW9kYWwgfSBmcm9tICdAZmFjZWxlc3MtdWkvbW9kYWwnXG5pbXBvcnQgeyB1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IH0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbENvbXBvc2VyQ29udGV4dCdcbmltcG9ydCB7IGdldFRyYW5zbGF0aW9uIH0gZnJvbSAnQHBheWxvYWRjbXMvdHJhbnNsYXRpb25zJ1xuaW1wb3J0IHtcbiAgRHJhd2VyLFxuICBGaWVsZFBhdGhQcm92aWRlcixcbiAgRm9ybSxcbiAgdHlwZSBGb3JtUHJvcHMsXG4gIEZvcm1TdWJtaXQsXG4gIFJlbmRlckZpZWxkcyxcbiAgZ2V0Rm9ybVN0YXRlLFxuICB1c2VDb25maWcsXG4gIHVzZURvY3VtZW50SW5mbyxcbiAgdXNlRmllbGRQYXRoLFxuICB1c2VUcmFuc2xhdGlvbixcbn0gZnJvbSAnQHBheWxvYWRjbXMvdWknXG5pbXBvcnQgeyAkZ2V0Tm9kZUJ5S2V5IH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB7IGRlZXBDb3B5T2JqZWN0IH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5pbXBvcnQgUmVhY3QsIHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJ1xuXG5pbXBvcnQgdHlwZSB7IEVsZW1lbnRQcm9wcyB9IGZyb20gJy4uJ1xuaW1wb3J0IHR5cGUgeyBVcGxvYWREYXRhLCBVcGxvYWROb2RlIH0gZnJvbSAnLi4vLi4vbm9kZXMvVXBsb2FkTm9kZSdcblxuaW1wb3J0IHsgdXNlRWRpdG9yQ29uZmlnQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uLy4uL2xleGljYWwvY29uZmlnL2NsaWVudC9FZGl0b3JDb25maWdQcm92aWRlcidcblxuLyoqXG4gKiBUaGlzIGhhbmRsZXMgdGhlIGV4dHJhIGZpZWxkcywgZS5nLiBjYXB0aW9ucyBvciBhbHQgdGV4dCwgd2hpY2ggYXJlXG4gKiBwb3RlbnRpYWxseSBhZGRlZCB0byB0aGUgdXBsb2FkIGZlYXR1cmUuXG4gKi9cbmV4cG9ydCBjb25zdCBFeHRyYUZpZWxkc1VwbG9hZERyYXdlcjogUmVhY3QuRkM8XG4gIEVsZW1lbnRQcm9wcyAmIHtcbiAgICBkcmF3ZXJTbHVnOiBzdHJpbmdcbiAgICByZWxhdGVkQ29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZ1xuICB9XG4+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBkYXRhOiB7IGZpZWxkcywgcmVsYXRpb25UbywgdmFsdWUgfSxcbiAgICBkcmF3ZXJTbHVnLFxuICAgIG5vZGVLZXksXG4gICAgcmVsYXRlZENvbGxlY3Rpb24sXG4gIH0gPSBwcm9wc1xuXG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpXG5cbiAgY29uc3QgeyBjbG9zZU1vZGFsIH0gPSB1c2VNb2RhbCgpXG5cbiAgY29uc3QgeyBpMThuLCB0IH0gPSB1c2VUcmFuc2xhdGlvbigpXG4gIGNvbnN0IHsgaWQgfSA9IHVzZURvY3VtZW50SW5mbygpXG4gIGNvbnN0IHsgc2NoZW1hUGF0aCB9ID0gdXNlRmllbGRQYXRoKClcbiAgY29uc3QgY29uZmlnID0gdXNlQ29uZmlnKClcbiAgY29uc3QgW2luaXRpYWxTdGF0ZSwgc2V0SW5pdGlhbFN0YXRlXSA9IHVzZVN0YXRlPEZvcm1TdGF0ZSB8IGZhbHNlPihmYWxzZSlcbiAgY29uc3Qge1xuICAgIGZpZWxkOiB7IHJpY2hUZXh0Q29tcG9uZW50TWFwIH0sXG4gIH0gPSB1c2VFZGl0b3JDb25maWdDb250ZXh0KClcblxuICBjb25zdCBjb21wb25lbnRNYXBSZW5kZXJlZEZpZWxkc1BhdGggPSBgZmVhdHVyZS51cGxvYWQuZmllbGRzLiR7cmVsYXRlZENvbGxlY3Rpb24uc2x1Z31gXG4gIGNvbnN0IHNjaGVtYUZpZWxkc1BhdGggPSBgJHtzY2hlbWFQYXRofS5mZWF0dXJlLnVwbG9hZC4ke3JlbGF0ZWRDb2xsZWN0aW9uLnNsdWd9YFxuXG4gIGNvbnN0IGZpZWxkTWFwID0gcmljaFRleHRDb21wb25lbnRNYXAuZ2V0KGNvbXBvbmVudE1hcFJlbmRlcmVkRmllbGRzUGF0aCkgLy8gRmllbGQgU2NoZW1hXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhd2FpdEluaXRpYWxTdGF0ZSA9IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHN0YXRlID0gYXdhaXQgZ2V0Rm9ybVN0YXRlKHtcbiAgICAgICAgYXBpUm91dGU6IGNvbmZpZy5yb3V0ZXMuYXBpLFxuICAgICAgICBib2R5OiB7XG4gICAgICAgICAgaWQsXG4gICAgICAgICAgZGF0YTogZGVlcENvcHlPYmplY3QoZmllbGRzIHx8IHt9KSxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHNjaGVtYVBhdGg6IHNjaGVtYUZpZWxkc1BhdGgsXG4gICAgICAgIH0sXG4gICAgICAgIHNlcnZlclVSTDogY29uZmlnLnNlcnZlclVSTCxcbiAgICAgIH0pIC8vIEZvcm0gU3RhdGVcblxuICAgICAgc2V0SW5pdGlhbFN0YXRlKHN0YXRlKVxuICAgIH1cblxuICAgIHZvaWQgYXdhaXRJbml0aWFsU3RhdGUoKVxuICB9LCBbY29uZmlnLnJvdXRlcy5hcGksIGNvbmZpZy5zZXJ2ZXJVUkwsIHNjaGVtYUZpZWxkc1BhdGgsIGlkLCBmaWVsZHNdKVxuXG4gIGNvbnN0IG9uQ2hhbmdlOiBGb3JtUHJvcHNbJ29uQ2hhbmdlJ11bMF0gPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAoeyBmb3JtU3RhdGU6IHByZXZGb3JtU3RhdGUgfSkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGdldEZvcm1TdGF0ZSh7XG4gICAgICAgIGFwaVJvdXRlOiBjb25maWcucm91dGVzLmFwaSxcbiAgICAgICAgYm9keToge1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIGZvcm1TdGF0ZTogcHJldkZvcm1TdGF0ZSxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHNjaGVtYVBhdGg6IHNjaGVtYUZpZWxkc1BhdGgsXG4gICAgICAgIH0sXG4gICAgICAgIHNlcnZlclVSTDogY29uZmlnLnNlcnZlclVSTCxcbiAgICAgIH0pXG4gICAgfSxcblxuICAgIFtjb25maWcucm91dGVzLmFwaSwgY29uZmlnLnNlcnZlclVSTCwgc2NoZW1hRmllbGRzUGF0aCwgaWRdLFxuICApXG5cbiAgY29uc3QgaGFuZGxlVXBkYXRlRWRpdERhdGEgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgZGF0YSkgPT4ge1xuICAgICAgLy8gVXBkYXRlIGxleGljYWwgbm9kZSAod2l0aCBrZXkgbm9kZUtleSkgd2l0aCBuZXcgZGF0YVxuICAgICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHVwbG9hZE5vZGU6IFVwbG9hZE5vZGUgfCBudWxsID0gJGdldE5vZGVCeUtleShub2RlS2V5KVxuICAgICAgICBpZiAodXBsb2FkTm9kZSkge1xuICAgICAgICAgIGNvbnN0IG5ld0RhdGE6IFVwbG9hZERhdGEgPSB7XG4gICAgICAgICAgICAuLi51cGxvYWROb2RlLmdldERhdGEoKSxcbiAgICAgICAgICAgIGZpZWxkczogZGF0YSxcbiAgICAgICAgICB9XG4gICAgICAgICAgdXBsb2FkTm9kZS5zZXREYXRhKG5ld0RhdGEpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIGNsb3NlTW9kYWwoZHJhd2VyU2x1ZylcbiAgICB9LFxuICAgIFtjbG9zZU1vZGFsLCBlZGl0b3IsIGRyYXdlclNsdWcsIG5vZGVLZXldLFxuICApXG5cbiAgcmV0dXJuIChcbiAgICA8RHJhd2VyXG4gICAgICBzbHVnPXtkcmF3ZXJTbHVnfVxuICAgICAgdGl0bGU9e3QoJ2dlbmVyYWw6ZWRpdExhYmVsJywge1xuICAgICAgICBsYWJlbDogZ2V0VHJhbnNsYXRpb24ocmVsYXRlZENvbGxlY3Rpb24ubGFiZWxzLnNpbmd1bGFyLCBpMThuKSxcbiAgICAgIH0pfVxuICAgID5cbiAgICAgIHtpbml0aWFsU3RhdGUgIT09IGZhbHNlICYmIChcbiAgICAgICAgPEZpZWxkUGF0aFByb3ZpZGVyIHBhdGg9XCJcIiBzY2hlbWFQYXRoPVwiXCI+XG4gICAgICAgICAgPEZvcm1cbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgLy8gVE9ETzogRml4IHRoaXMgdHlwZS4gSXMgdGhpcyBjb3JyZWN0P1xuICAgICAgICAgICAgZmllbGRzPXtmaWVsZE1hcH1cbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZT17aW5pdGlhbFN0YXRlfVxuICAgICAgICAgICAgb25DaGFuZ2U9e1tvbkNoYW5nZV19XG4gICAgICAgICAgICBvblN1Ym1pdD17aGFuZGxlVXBkYXRlRWRpdERhdGF9XG4gICAgICAgICAgICB1dWlkPXt1dWlkKCl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPFJlbmRlckZpZWxkcyBmaWVsZE1hcD17QXJyYXkuaXNBcnJheShmaWVsZE1hcCkgPyBmaWVsZE1hcCA6IFtdfSBmb3JjZVJlbmRlciAvPlxuICAgICAgICAgICAgPEZvcm1TdWJtaXQ+e3QoJ2ZpZWxkczpzYXZlQ2hhbmdlcycpfTwvRm9ybVN1Ym1pdD5cbiAgICAgICAgICA8L0Zvcm0+XG4gICAgICAgIDwvRmllbGRQYXRoUHJvdmlkZXI+XG4gICAgICApfVxuICAgIDwvRHJhd2VyPlxuICApXG59XG4iXSwibmFtZXMiOlsiRXh0cmFGaWVsZHNVcGxvYWREcmF3ZXIiLCJwcm9wcyIsImRhdGEiLCJmaWVsZHMiLCJyZWxhdGlvblRvIiwidmFsdWUiLCJkcmF3ZXJTbHVnIiwibm9kZUtleSIsInJlbGF0ZWRDb2xsZWN0aW9uIiwiZWRpdG9yIiwidXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCIsImNsb3NlTW9kYWwiLCJ1c2VNb2RhbCIsImkxOG4iLCJ0IiwidXNlVHJhbnNsYXRpb24iLCJpZCIsInVzZURvY3VtZW50SW5mbyIsInNjaGVtYVBhdGgiLCJ1c2VGaWVsZFBhdGgiLCJjb25maWciLCJ1c2VDb25maWciLCJpbml0aWFsU3RhdGUiLCJzZXRJbml0aWFsU3RhdGUiLCJ1c2VTdGF0ZSIsImZpZWxkIiwicmljaFRleHRDb21wb25lbnRNYXAiLCJ1c2VFZGl0b3JDb25maWdDb250ZXh0IiwiY29tcG9uZW50TWFwUmVuZGVyZWRGaWVsZHNQYXRoIiwic2x1ZyIsInNjaGVtYUZpZWxkc1BhdGgiLCJmaWVsZE1hcCIsImdldCIsInVzZUVmZmVjdCIsImF3YWl0SW5pdGlhbFN0YXRlIiwic3RhdGUiLCJnZXRGb3JtU3RhdGUiLCJhcGlSb3V0ZSIsInJvdXRlcyIsImFwaSIsImJvZHkiLCJkZWVwQ29weU9iamVjdCIsIm9wZXJhdGlvbiIsInNlcnZlclVSTCIsIm9uQ2hhbmdlIiwidXNlQ2FsbGJhY2siLCJmb3JtU3RhdGUiLCJwcmV2Rm9ybVN0YXRlIiwiaGFuZGxlVXBkYXRlRWRpdERhdGEiLCJfIiwidXBkYXRlIiwidXBsb2FkTm9kZSIsIiRnZXROb2RlQnlLZXkiLCJuZXdEYXRhIiwiZ2V0RGF0YSIsInNldERhdGEiLCJEcmF3ZXIiLCJ0aXRsZSIsImxhYmVsIiwiZ2V0VHJhbnNsYXRpb24iLCJsYWJlbHMiLCJzaW5ndWxhciIsIkZpZWxkUGF0aFByb3ZpZGVyIiwicGF0aCIsIkZvcm0iLCJvblN1Ym1pdCIsInV1aWQiLCJSZW5kZXJGaWVsZHMiLCJBcnJheSIsImlzQXJyYXkiLCJmb3JjZVJlbmRlciIsIkZvcm1TdWJtaXQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OzsrQkFpQ2FBOzs7ZUFBQUE7Ozt1QkE5Qlk7d0NBQ2lCOzhCQUNYO29CQWF4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
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy91cGxvYWQvY29tcG9uZW50L0V4dHJhRmllbGRzRHJhd2VyL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcbmltcG9ydCB0eXBlIHsgRm9ybVN0YXRlLCBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgdXNlTW9kYWwgfSBmcm9tICdAZmFjZWxlc3MtdWkvbW9kYWwnXG5pbXBvcnQgeyB1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IH0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbENvbXBvc2VyQ29udGV4dCdcbmltcG9ydCB7IGdldFRyYW5zbGF0aW9uIH0gZnJvbSAnQHBheWxvYWRjbXMvdHJhbnNsYXRpb25zJ1xuaW1wb3J0IHtcbiAgRHJhd2VyLFxuICBGaWVsZFBhdGhQcm92aWRlcixcbiAgRm9ybSxcbiAgdHlwZSBGb3JtUHJvcHMsXG4gIEZvcm1TdWJtaXQsXG4gIFJlbmRlckZpZWxkcyxcbiAgZ2V0Rm9ybVN0YXRlLFxuICB1c2VDb25maWcsXG4gIHVzZURvY3VtZW50SW5mbyxcbiAgdXNlRmllbGRQYXRoLFxuICB1c2VUcmFuc2xhdGlvbixcbn0gZnJvbSAnQHBheWxvYWRjbXMvdWknXG5pbXBvcnQgeyAkZ2V0Tm9kZUJ5S2V5IH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB7IGRlZXBDb3B5T2JqZWN0IH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5pbXBvcnQgUmVhY3QsIHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJ1xuXG5pbXBvcnQgdHlwZSB7IEVsZW1lbnRQcm9wcyB9IGZyb20gJy4uJ1xuaW1wb3J0IHR5cGUgeyBVcGxvYWREYXRhLCBVcGxvYWROb2RlIH0gZnJvbSAnLi4vLi4vbm9kZXMvVXBsb2FkTm9kZSdcblxuaW1wb3J0IHsgdXNlRWRpdG9yQ29uZmlnQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uLy4uL2xleGljYWwvY29uZmlnL2NsaWVudC9FZGl0b3JDb25maWdQcm92aWRlcidcblxuLyoqXG4gKiBUaGlzIGhhbmRsZXMgdGhlIGV4dHJhIGZpZWxkcywgZS5nLiBjYXB0aW9ucyBvciBhbHQgdGV4dCwgd2hpY2ggYXJlXG4gKiBwb3RlbnRpYWxseSBhZGRlZCB0byB0aGUgdXBsb2FkIGZlYXR1cmUuXG4gKi9cbmV4cG9ydCBjb25zdCBFeHRyYUZpZWxkc1VwbG9hZERyYXdlcjogUmVhY3QuRkM8XG4gIEVsZW1lbnRQcm9wcyAmIHtcbiAgICBkcmF3ZXJTbHVnOiBzdHJpbmdcbiAgICByZWxhdGVkQ29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZ1xuICB9XG4+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBkYXRhOiB7IGZpZWxkcywgcmVsYXRpb25UbywgdmFsdWUgfSxcbiAgICBkcmF3ZXJTbHVnLFxuICAgIG5vZGVLZXksXG4gICAgcmVsYXRlZENvbGxlY3Rpb24sXG4gIH0gPSBwcm9wc1xuXG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpXG5cbiAgY29uc3QgeyBjbG9zZU1vZGFsIH0gPSB1c2VNb2RhbCgpXG5cbiAgY29uc3QgeyBpMThuLCB0IH0gPSB1c2VUcmFuc2xhdGlvbigpXG4gIGNvbnN0IHsgaWQgfSA9IHVzZURvY3VtZW50SW5mbygpXG4gIGNvbnN0IHsgc2NoZW1hUGF0aCB9ID0gdXNlRmllbGRQYXRoKClcbiAgY29uc3QgY29uZmlnID0gdXNlQ29uZmlnKClcbiAgY29uc3QgW2luaXRpYWxTdGF0ZSwgc2V0SW5pdGlhbFN0YXRlXSA9IHVzZVN0YXRlPEZvcm1TdGF0ZSB8IGZhbHNlPihmYWxzZSlcbiAgY29uc3Qge1xuICAgIGZpZWxkOiB7IHJpY2hUZXh0Q29tcG9uZW50TWFwIH0sXG4gIH0gPSB1c2VFZGl0b3JDb25maWdDb250ZXh0KClcblxuICBjb25zdCBjb21wb25lbnRNYXBSZW5kZXJlZEZpZWxkc1BhdGggPSBgZmVhdHVyZS51cGxvYWQuZmllbGRzLiR7cmVsYXRlZENvbGxlY3Rpb24uc2x1Z31gXG4gIGNvbnN0IHNjaGVtYUZpZWxkc1BhdGggPSBgJHtzY2hlbWFQYXRofS5mZWF0dXJlLnVwbG9hZC4ke3JlbGF0ZWRDb2xsZWN0aW9uLnNsdWd9YFxuXG4gIGNvbnN0IGZpZWxkTWFwID0gcmljaFRleHRDb21wb25lbnRNYXAuZ2V0KGNvbXBvbmVudE1hcFJlbmRlcmVkRmllbGRzUGF0aCkgLy8gRmllbGQgU2NoZW1hXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhd2FpdEluaXRpYWxTdGF0ZSA9IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHN0YXRlID0gYXdhaXQgZ2V0Rm9ybVN0YXRlKHtcbiAgICAgICAgYXBpUm91dGU6IGNvbmZpZy5yb3V0ZXMuYXBpLFxuICAgICAgICBib2R5OiB7XG4gICAgICAgICAgaWQsXG4gICAgICAgICAgZGF0YTogZGVlcENvcHlPYmplY3QoZmllbGRzIHx8IHt9KSxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHNjaGVtYVBhdGg6IHNjaGVtYUZpZWxkc1BhdGgsXG4gICAgICAgIH0sXG4gICAgICAgIHNlcnZlclVSTDogY29uZmlnLnNlcnZlclVSTCxcbiAgICAgIH0pIC8vIEZvcm0gU3RhdGVcblxuICAgICAgc2V0SW5pdGlhbFN0YXRlKHN0YXRlKVxuICAgIH1cblxuICAgIHZvaWQgYXdhaXRJbml0aWFsU3RhdGUoKVxuICB9LCBbY29uZmlnLnJvdXRlcy5hcGksIGNvbmZpZy5zZXJ2ZXJVUkwsIHNjaGVtYUZpZWxkc1BhdGgsIGlkLCBmaWVsZHNdKVxuXG4gIGNvbnN0IG9uQ2hhbmdlOiBGb3JtUHJvcHNbJ29uQ2hhbmdlJ11bMF0gPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAoeyBmb3JtU3RhdGU6IHByZXZGb3JtU3RhdGUgfSkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGdldEZvcm1TdGF0ZSh7XG4gICAgICAgIGFwaVJvdXRlOiBjb25maWcucm91dGVzLmFwaSxcbiAgICAgICAgYm9keToge1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIGZvcm1TdGF0ZTogcHJldkZvcm1TdGF0ZSxcbiAgICAgICAgICBvcGVyYXRpb246ICd1cGRhdGUnLFxuICAgICAgICAgIHNjaGVtYVBhdGg6IHNjaGVtYUZpZWxkc1BhdGgsXG4gICAgICAgIH0sXG4gICAgICAgIHNlcnZlclVSTDogY29uZmlnLnNlcnZlclVSTCxcbiAgICAgIH0pXG4gICAgfSxcblxuICAgIFtjb25maWcucm91dGVzLmFwaSwgY29uZmlnLnNlcnZlclVSTCwgc2NoZW1hRmllbGRzUGF0aCwgaWRdLFxuICApXG5cbiAgY29uc3QgaGFuZGxlVXBkYXRlRWRpdERhdGEgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgZGF0YSkgPT4ge1xuICAgICAgLy8gVXBkYXRlIGxleGljYWwgbm9kZSAod2l0aCBrZXkgbm9kZUtleSkgd2l0aCBuZXcgZGF0YVxuICAgICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHVwbG9hZE5vZGU6IFVwbG9hZE5vZGUgfCBudWxsID0gJGdldE5vZGVCeUtleShub2RlS2V5KVxuICAgICAgICBpZiAodXBsb2FkTm9kZSkge1xuICAgICAgICAgIGNvbnN0IG5ld0RhdGE6IFVwbG9hZERhdGEgPSB7XG4gICAgICAgICAgICAuLi51cGxvYWROb2RlLmdldERhdGEoKSxcbiAgICAgICAgICAgIGZpZWxkczogZGF0YSxcbiAgICAgICAgICB9XG4gICAgICAgICAgdXBsb2FkTm9kZS5zZXREYXRhKG5ld0RhdGEpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIGNsb3NlTW9kYWwoZHJhd2VyU2x1ZylcbiAgICB9LFxuICAgIFtjbG9zZU1vZGFsLCBlZGl0b3IsIGRyYXdlclNsdWcsIG5vZGVLZXldLFxuICApXG5cbiAgcmV0dXJuIChcbiAgICA8RHJhd2VyXG4gICAgICBzbHVnPXtkcmF3ZXJTbHVnfVxuICAgICAgdGl0bGU9e3QoJ2dlbmVyYWw6ZWRpdExhYmVsJywge1xuICAgICAgICBsYWJlbDogZ2V0VHJhbnNsYXRpb24ocmVsYXRlZENvbGxlY3Rpb24ubGFiZWxzLnNpbmd1bGFyLCBpMThuKSxcbiAgICAgIH0pfVxuICAgID5cbiAgICAgIHtpbml0aWFsU3RhdGUgIT09IGZhbHNlICYmIChcbiAgICAgICAgPEZpZWxkUGF0aFByb3ZpZGVyIHBhdGg9XCJcIiBzY2hlbWFQYXRoPVwiXCI+XG4gICAgICAgICAgPEZvcm1cbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgLy8gVE9ETzogRml4IHRoaXMgdHlwZS4gSXMgdGhpcyBjb3JyZWN0P1xuICAgICAgICAgICAgZmllbGRzPXtmaWVsZE1hcH1cbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZT17aW5pdGlhbFN0YXRlfVxuICAgICAgICAgICAgb25DaGFuZ2U9e1tvbkNoYW5nZV19XG4gICAgICAgICAgICBvblN1Ym1pdD17aGFuZGxlVXBkYXRlRWRpdERhdGF9XG4gICAgICAgICAgICB1dWlkPXt1dWlkKCl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPFJlbmRlckZpZWxkcyBmaWVsZE1hcD17QXJyYXkuaXNBcnJheShmaWVsZE1hcCkgPyBmaWVsZE1hcCA6IFtdfSBmb3JjZVJlbmRlciAvPlxuICAgICAgICAgICAgPEZvcm1TdWJtaXQ+e3QoJ2ZpZWxkczpzYXZlQ2hhbmdlcycpfTwvRm9ybVN1Ym1pdD5cbiAgICAgICAgICA8L0Zvcm0+XG4gICAgICAgIDwvRmllbGRQYXRoUHJvdmlkZXI+XG4gICAgICApfVxuICAgIDwvRHJhd2VyPlxuICApXG59XG4iXSwibmFtZXMiOlsidXNlTW9kYWwiLCJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiZ2V0VHJhbnNsYXRpb24iLCJEcmF3ZXIiLCJGaWVsZFBhdGhQcm92aWRlciIsIkZvcm0iLCJGb3JtU3VibWl0IiwiUmVuZGVyRmllbGRzIiwiZ2V0Rm9ybVN0YXRlIiwidXNlQ29uZmlnIiwidXNlRG9jdW1lbnRJbmZvIiwidXNlRmllbGRQYXRoIiwidXNlVHJhbnNsYXRpb24iLCIkZ2V0Tm9kZUJ5S2V5IiwiZGVlcENvcHlPYmplY3QiLCJSZWFjdCIsInVzZUNhbGxiYWNrIiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJ2NCIsInV1aWQiLCJ1c2VFZGl0b3JDb25maWdDb250ZXh0IiwiRXh0cmFGaWVsZHNVcGxvYWREcmF3ZXIiLCJwcm9wcyIsImRhdGEiLCJmaWVsZHMiLCJyZWxhdGlvblRvIiwidmFsdWUiLCJkcmF3ZXJTbHVnIiwibm9kZUtleSIsInJlbGF0ZWRDb2xsZWN0aW9uIiwiZWRpdG9yIiwiY2xvc2VNb2RhbCIsImkxOG4iLCJ0IiwiaWQiLCJzY2hlbWFQYXRoIiwiY29uZmlnIiwiaW5pdGlhbFN0YXRlIiwic2V0SW5pdGlhbFN0YXRlIiwiZmllbGQiLCJyaWNoVGV4dENvbXBvbmVudE1hcCIsImNvbXBvbmVudE1hcFJlbmRlcmVkRmllbGRzUGF0aCIsInNsdWciLCJzY2hlbWFGaWVsZHNQYXRoIiwiZmllbGRNYXAiLCJnZXQiLCJhd2FpdEluaXRpYWxTdGF0ZSIsInN0YXRlIiwiYXBpUm91dGUiLCJyb3V0ZXMiLCJhcGkiLCJib2R5Iiwib3BlcmF0aW9uIiwic2VydmVyVVJMIiwib25DaGFuZ2UiLCJmb3JtU3RhdGUiLCJwcmV2Rm9ybVN0YXRlIiwiaGFuZGxlVXBkYXRlRWRpdERhdGEiLCJfIiwidXBkYXRlIiwidXBsb2FkTm9kZSIsIm5ld0RhdGEiLCJnZXREYXRhIiwic2V0RGF0YSIsInRpdGxlIiwibGFiZWwiLCJsYWJlbHMiLCJzaW5ndWxhciIsInBhdGgiLCJvblN1Ym1pdCIsIkFycmF5IiwiaXNBcnJheSIsImZvcmNlUmVuZGVyIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUdBLFNBQVNBLFFBQVEsUUFBUSxxQkFBb0I7QUFDN0Ms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