@kepler.gl/components 3.3.0-alpha.0 → 3.3.0-alpha.2

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 (299) hide show
  1. package/dist/annotations/annotation-node.d.ts +11 -0
  2. package/dist/annotations/annotation-node.js +145 -0
  3. package/dist/annotations/annotation-overlay.d.ts +16 -0
  4. package/dist/annotations/annotation-overlay.js +166 -0
  5. package/dist/annotations/annotation-panel.d.ts +24 -0
  6. package/dist/annotations/annotation-panel.js +362 -0
  7. package/dist/annotations/annotation-text.d.ts +16 -0
  8. package/dist/annotations/annotation-text.js +150 -0
  9. package/dist/annotations/annotation-utils.d.ts +39 -0
  10. package/dist/annotations/annotation-utils.js +156 -0
  11. package/dist/annotations/index.d.ts +7 -0
  12. package/dist/annotations/index.js +53 -0
  13. package/dist/annotations/lexical-editor/clickable-link-plugin.d.ts +3 -0
  14. package/dist/annotations/lexical-editor/clickable-link-plugin.js +71 -0
  15. package/dist/annotations/lexical-editor/floating-link-editor.d.ts +1 -0
  16. package/dist/annotations/lexical-editor/floating-link-editor.js +194 -0
  17. package/dist/annotations/lexical-editor/index.d.ts +7 -0
  18. package/dist/annotations/lexical-editor/index.js +78 -0
  19. package/dist/annotations/lexical-editor/lexical-constants.d.ts +12 -0
  20. package/dist/annotations/lexical-editor/lexical-constants.js +22 -0
  21. package/dist/annotations/lexical-editor/lexical-nodes.d.ts +3 -0
  22. package/dist/annotations/lexical-editor/lexical-nodes.js +13 -0
  23. package/dist/annotations/lexical-editor/lexical-rich-text-editor.d.ts +15 -0
  24. package/dist/annotations/lexical-editor/lexical-rich-text-editor.js +122 -0
  25. package/dist/annotations/lexical-editor/lexical-theme.d.ts +15 -0
  26. package/dist/annotations/lexical-editor/lexical-theme.js +25 -0
  27. package/dist/annotations/lexical-editor/lexical-toolbar.d.ts +7 -0
  28. package/dist/annotations/lexical-editor/lexical-toolbar.js +293 -0
  29. package/dist/annotations/lexical-editor/lexical-utils.d.ts +4 -0
  30. package/dist/annotations/lexical-editor/lexical-utils.js +45 -0
  31. package/dist/annotations/lexical-editor/use-lexical-toolbar.d.ts +36 -0
  32. package/dist/annotations/lexical-editor/use-lexical-toolbar.js +253 -0
  33. package/dist/bottom-widget.d.ts +1 -1
  34. package/dist/bottom-widget.js +12 -6
  35. package/dist/common/action-panel.js +1 -1
  36. package/dist/common/animation-control/animation-control.d.ts +1 -0
  37. package/dist/common/animation-control/animation-control.js +3 -1
  38. package/dist/common/animation-control/animation-controller.js +8 -6
  39. package/dist/common/animation-control/export-video-control.d.ts +9 -0
  40. package/dist/common/animation-control/export-video-control.js +43 -0
  41. package/dist/common/animation-control/playback-controls.d.ts +4 -2
  42. package/dist/common/animation-control/playback-controls.js +7 -4
  43. package/dist/common/checkbox.d.ts +5 -21
  44. package/dist/common/checkbox.js +58 -70
  45. package/dist/common/color-legend.d.ts +1 -1
  46. package/dist/common/color-legend.js +3 -3
  47. package/dist/common/data-table/canvas.d.ts +1 -1
  48. package/dist/common/data-table/index.d.ts +2 -2
  49. package/dist/common/data-table/index.js +3 -3
  50. package/dist/common/dnd-layer-items.d.ts +4 -0
  51. package/dist/common/dnd-layer-items.js +6 -2
  52. package/dist/common/error-boundary.d.ts +1 -1
  53. package/dist/common/file-uploader/file-upload.d.ts +1 -1
  54. package/dist/common/file-uploader/file-upload.js +4 -4
  55. package/dist/common/flex-container.d.ts +15 -7
  56. package/dist/common/histogram-plot.js +102 -53
  57. package/dist/common/icon-button.d.ts +53 -6
  58. package/dist/common/icons/3d-models/airplane.d.ts +14 -0
  59. package/dist/common/icons/3d-models/airplane.js +104 -0
  60. package/dist/common/icons/3d-models/bicycle.d.ts +14 -0
  61. package/dist/common/icons/3d-models/bicycle.js +426 -0
  62. package/dist/common/icons/3d-models/boeing.d.ts +14 -0
  63. package/dist/common/icons/3d-models/boeing.js +119 -0
  64. package/dist/common/icons/3d-models/car.d.ts +14 -0
  65. package/dist/common/icons/3d-models/car.js +110 -0
  66. package/dist/common/icons/3d-models/cargoship.d.ts +14 -0
  67. package/dist/common/icons/3d-models/cargoship.js +246 -0
  68. package/dist/common/icons/3d-models/evtol.d.ts +14 -0
  69. package/dist/common/icons/3d-models/evtol.js +134 -0
  70. package/dist/common/icons/3d-models/glider.d.ts +14 -0
  71. package/dist/common/icons/3d-models/glider.js +62 -0
  72. package/dist/common/icons/3d-models/helicopter.d.ts +14 -0
  73. package/dist/common/icons/3d-models/helicopter.js +110 -0
  74. package/dist/common/icons/3d-models/scooter.d.ts +14 -0
  75. package/dist/common/icons/3d-models/scooter.js +159 -0
  76. package/dist/common/icons/3d-models/semitruck.d.ts +14 -0
  77. package/dist/common/icons/3d-models/semitruck.js +177 -0
  78. package/dist/common/icons/3d-models/truck.d.ts +14 -0
  79. package/dist/common/icons/3d-models/truck.js +122 -0
  80. package/dist/common/icons/anchor_window.d.ts +1 -8
  81. package/dist/common/icons/anchor_window.js +17 -10
  82. package/dist/common/icons/annotation-text.d.ts +9 -0
  83. package/dist/common/icons/annotation-text.js +56 -0
  84. package/dist/common/icons/arrow-down-full.d.ts +2 -1
  85. package/dist/common/icons/arrow-down-full.js +1 -1
  86. package/dist/common/icons/folder.d.ts +10 -0
  87. package/dist/common/icons/folder.js +51 -0
  88. package/dist/common/icons/index.d.ts +2 -0
  89. package/dist/common/icons/index.js +15 -1
  90. package/dist/common/icons/timeline-marker.d.ts +2 -1
  91. package/dist/common/icons/timeline-marker.js +1 -1
  92. package/dist/common/item-selector/chickleted-input.d.ts +1 -1
  93. package/dist/common/item-selector/chickleted-input.js +5 -5
  94. package/dist/common/item-selector/dropdown-list.d.ts +1 -1
  95. package/dist/common/item-selector/dropdown-list.js +1 -1
  96. package/dist/common/item-selector/dropdown-select.d.ts +13 -7
  97. package/dist/common/item-selector/item-selector.d.ts +1 -1
  98. package/dist/common/item-selector/item-selector.js +1 -1
  99. package/dist/common/item-selector/typeahead.d.ts +4 -4
  100. package/dist/common/item-selector/typeahead.js +1 -3
  101. package/dist/common/layout-splitter.d.ts +45 -0
  102. package/dist/common/layout-splitter.js +231 -0
  103. package/dist/common/line-chart.d.ts +10 -3
  104. package/dist/common/line-chart.js +219 -52
  105. package/dist/common/modal.d.ts +11 -5
  106. package/dist/common/modal.js +1 -1
  107. package/dist/common/portaled.d.ts +17 -17
  108. package/dist/common/range-plot.js +4 -2
  109. package/dist/common/range-slider.d.ts +2 -0
  110. package/dist/common/range-slider.js +108 -45
  111. package/dist/common/slider/mouse-event.d.ts +1 -1
  112. package/dist/common/slider/mouse-event.js +1 -2
  113. package/dist/common/slider/slider-bar-handle.d.ts +1 -1
  114. package/dist/common/slider/slider-bar-handle.js +1 -1
  115. package/dist/common/slider/slider-handle.d.ts +3 -3
  116. package/dist/common/slider/slider-handle.js +1 -1
  117. package/dist/common/slider/slider.d.ts +8 -4
  118. package/dist/common/slider/slider.js +78 -35
  119. package/dist/common/styled-components.d.ts +628 -178
  120. package/dist/common/styled-components.js +2 -2
  121. package/dist/common/time-range-slider-time-title.d.ts +1 -1
  122. package/dist/common/time-range-slider-time-title.js +5 -5
  123. package/dist/common/time-range-slider.d.ts +2 -1
  124. package/dist/common/time-range-slider.js +19 -7
  125. package/dist/common/timeline-helpers.d.ts +3 -0
  126. package/dist/common/timeline-helpers.js +57 -0
  127. package/dist/common/timeline-slider.js +21 -12
  128. package/dist/common/toolbar-item.js +5 -5
  129. package/dist/common/toolbar.d.ts +1 -1
  130. package/dist/common/toolbar.js +4 -4
  131. package/dist/common/vertical-toolbar.d.ts +13 -3
  132. package/dist/container.d.ts +3 -2
  133. package/dist/container.js +2 -2
  134. package/dist/context.d.ts +1 -1
  135. package/dist/context.js +1 -1
  136. package/dist/dnd-context.d.ts +4 -3
  137. package/dist/dnd-context.js +64 -9
  138. package/dist/effects/compact-color-picker.d.ts +1 -1
  139. package/dist/effects/effect-configurator.d.ts +5 -6
  140. package/dist/effects/effect-configurator.js +213 -52
  141. package/dist/effects/effect-manager.js +3 -3
  142. package/dist/effects/effect-panel-header.js +34 -17
  143. package/dist/effects/effect-panel.d.ts +4 -4
  144. package/dist/effects/effect-panel.js +61 -86
  145. package/dist/effects/effect-time-configurator.js +10 -10
  146. package/dist/effects/effect-type-dropdown-list.d.ts +1 -0
  147. package/dist/effects/effect-type-dropdown-list.js +1 -1
  148. package/dist/effects/effect-type-list-item.d.ts +2 -1
  149. package/dist/effects/effect-type-list-item.js +23 -7
  150. package/dist/effects/effect-type-selector.d.ts +1 -0
  151. package/dist/effects/effect-type-selector.js +2 -2
  152. package/dist/effects/surface-fog-section.d.ts +14 -0
  153. package/dist/effects/surface-fog-section.js +263 -0
  154. package/dist/filters/components.d.ts +7 -5
  155. package/dist/filters/filter-panels/filter-synced-dataset-panel.d.ts +6 -2
  156. package/dist/filters/index.d.ts +1 -0
  157. package/dist/filters/index.js +8 -1
  158. package/dist/filters/polygon-filter.js +2 -2
  159. package/dist/filters/time-range-filter.js +3 -1
  160. package/dist/filters/time-widget-settings.d.ts +14 -0
  161. package/dist/filters/time-widget-settings.js +312 -0
  162. package/dist/filters/time-widget-top.d.ts +2 -3
  163. package/dist/filters/time-widget-top.js +32 -39
  164. package/dist/filters/time-widget.d.ts +3 -2
  165. package/dist/filters/time-widget.js +285 -9
  166. package/dist/filters/types.d.ts +3 -3
  167. package/dist/filters/types.js +1 -1
  168. package/dist/geocoder/geocoder.d.ts +4 -1
  169. package/dist/geocoder/geocoder.js +61 -14
  170. package/dist/geocoder-panel.d.ts +3 -2
  171. package/dist/geocoder-panel.js +11 -8
  172. package/dist/hooks/use-dnd-layers.d.ts +4 -3
  173. package/dist/hooks/use-dnd-layers.js +103 -42
  174. package/dist/index.d.ts +17 -2
  175. package/dist/index.js +161 -9
  176. package/dist/injector.d.ts +1 -1
  177. package/dist/kepler-gl.d.ts +179 -27
  178. package/dist/kepler-gl.js +91 -12
  179. package/dist/loading-indicator.d.ts +3 -1
  180. package/dist/loading-indicator.js +6 -3
  181. package/dist/map/annotations/annotation-control.d.ts +16 -0
  182. package/dist/map/annotations/annotation-control.js +56 -0
  183. package/dist/map/layer-hover-info.d.ts +7 -3
  184. package/dist/map/layer-hover-info.js +124 -55
  185. package/dist/map/locale-panel.d.ts +1 -1
  186. package/dist/map/locale-panel.js +2 -2
  187. package/dist/map/map-control-panel.js +3 -2
  188. package/dist/map/map-control-toolbar.d.ts +33 -8
  189. package/dist/map/map-control.d.ts +14 -4
  190. package/dist/map/map-control.js +18 -8
  191. package/dist/map/map-draw-panel.d.ts +1 -1
  192. package/dist/map/map-draw-panel.js +7 -4
  193. package/dist/map/map-legend-panel.d.ts +11 -2
  194. package/dist/map/map-legend-panel.js +25 -8
  195. package/dist/map/map-legend.d.ts +20 -3
  196. package/dist/map/map-legend.js +145 -31
  197. package/dist/map/map-navigation-control.d.ts +13 -0
  198. package/dist/map/map-navigation-control.js +143 -0
  199. package/dist/map/map-popover.js +2 -2
  200. package/dist/map/split-map-button.d.ts +6 -1
  201. package/dist/map/split-map-button.js +113 -19
  202. package/dist/map-container.d.ts +13 -3
  203. package/dist/map-container.js +269 -59
  204. package/dist/map-view-state-context.d.ts +1 -0
  205. package/dist/map-view-state-context.js +1 -1
  206. package/dist/maps-layout.d.ts +3 -0
  207. package/dist/maps-layout.js +86 -26
  208. package/dist/modal-container.d.ts +3 -2
  209. package/dist/modal-container.js +28 -6
  210. package/dist/modals/add-map-style-modal.js +173 -200
  211. package/dist/modals/cloud-tile.d.ts +1 -2
  212. package/dist/modals/data-table-modal.d.ts +1 -1
  213. package/dist/modals/data-table-modal.js +146 -194
  214. package/dist/modals/export-data-modal.js +117 -139
  215. package/dist/modals/export-map-modal/components.d.ts +9 -5
  216. package/dist/modals/export-video-modal.d.ts +28 -0
  217. package/dist/modals/export-video-modal.js +371 -0
  218. package/dist/modals/export-video-modal.spec.d.ts +1 -0
  219. package/dist/modals/export-video-modal.spec.js +686 -0
  220. package/dist/modals/fog-height-animation.d.ts +8 -0
  221. package/dist/modals/fog-height-animation.js +97 -0
  222. package/dist/modals/hubble-utils.d.ts +41 -0
  223. package/dist/modals/hubble-utils.js +294 -0
  224. package/dist/modals/hubble-utils.spec.d.ts +1 -0
  225. package/dist/modals/hubble-utils.spec.js +397 -0
  226. package/dist/modals/modal-dialog.d.ts +1 -1
  227. package/dist/modals/share-map-modal.d.ts +2 -4
  228. package/dist/modals/swipe-composite-utils.d.ts +10 -0
  229. package/dist/modals/swipe-composite-utils.js +108 -0
  230. package/dist/modals/swipe-export-settings.d.ts +24 -0
  231. package/dist/modals/swipe-export-settings.js +370 -0
  232. package/dist/modals/swipe-export-video-container.d.ts +122 -0
  233. package/dist/modals/swipe-export-video-container.js +630 -0
  234. package/dist/modals/swipe-export-video-preview.d.ts +68 -0
  235. package/dist/modals/swipe-export-video-preview.js +339 -0
  236. package/dist/modals/tilesets-modals/load-data-footer.js +2 -2
  237. package/dist/modals/tilesets-modals/load-tileset.js +21 -10
  238. package/dist/modals/tilesets-modals/tileset-bitmap-form.d.ts +14 -0
  239. package/dist/modals/tilesets-modals/tileset-bitmap-form.js +284 -0
  240. package/dist/modals/tilesets-modals/tileset-raster-form.js +90 -11
  241. package/dist/modals/tilesets-modals/tileset-tile3d-form.js +3 -2
  242. package/dist/modals/tilesets-modals/tileset-vector-form.js +58 -4
  243. package/dist/modals/tilesets-modals/tileset-wms-form.js +4 -3
  244. package/dist/notification-panel/notification-item.d.ts +1 -53
  245. package/dist/notification-panel/notification-item.js +47 -75
  246. package/dist/notification-panel.d.ts +1 -1
  247. package/dist/notification-panel.js +20 -42
  248. package/dist/plot-container.js +7 -6
  249. package/dist/side-panel/add-by-dataset-button.js +3 -3
  250. package/dist/side-panel/common/dataset-info.js +2 -2
  251. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +7 -3
  252. package/dist/side-panel/interaction-panel/geocoder-config.d.ts +11 -0
  253. package/dist/side-panel/interaction-panel/geocoder-config.js +45 -0
  254. package/dist/side-panel/interaction-panel/interaction-panel.d.ts +3 -2
  255. package/dist/side-panel/interaction-panel/interaction-panel.js +10 -3
  256. package/dist/side-panel/layer-manager.d.ts +5 -4
  257. package/dist/side-panel/layer-manager.js +26 -6
  258. package/dist/side-panel/layer-panel/color-scale-selector.d.ts +1 -1
  259. package/dist/side-panel/layer-panel/color-scale-selector.js +1 -1
  260. package/dist/side-panel/layer-panel/color-selector.d.ts +6 -4
  261. package/dist/side-panel/layer-panel/custom-palette.d.ts +3 -5
  262. package/dist/side-panel/layer-panel/custom-palette.js +5 -5
  263. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +2 -1
  264. package/dist/side-panel/layer-panel/dataset-layer-group.js +1 -1
  265. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +2 -1
  266. package/dist/side-panel/layer-panel/dataset-layer-section.js +19 -3
  267. package/dist/side-panel/layer-panel/layer-config-group.d.ts +5 -11
  268. package/dist/side-panel/layer-panel/layer-configurator.d.ts +4 -2
  269. package/dist/side-panel/layer-panel/layer-configurator.js +450 -76
  270. package/dist/side-panel/layer-panel/layer-group-header.d.ts +15 -0
  271. package/dist/side-panel/layer-panel/layer-group-header.js +179 -0
  272. package/dist/side-panel/layer-panel/layer-list.d.ts +9 -4
  273. package/dist/side-panel/layer-panel/layer-list.js +197 -40
  274. package/dist/side-panel/layer-panel/layer-panel-header.js +2 -2
  275. package/dist/side-panel/layer-panel/raster-tile-layer-configurator.d.ts +1 -1
  276. package/dist/side-panel/layer-panel/raster-tile-layer-configurator.js +127 -27
  277. package/dist/side-panel/layer-panel/scenegraph-model-selector.d.ts +24 -0
  278. package/dist/side-panel/layer-panel/scenegraph-model-selector.js +123 -0
  279. package/dist/side-panel/layer-panel/text-label-panel.d.ts +1 -1
  280. package/dist/side-panel/layer-panel/text-label-panel.js +11 -2
  281. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.d.ts +1 -1
  282. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +2 -10
  283. package/dist/side-panel/layer-panel/vis-config-slider.d.ts +2 -0
  284. package/dist/side-panel/layer-panel/vis-config-slider.js +7 -3
  285. package/dist/side-panel/panel-header.d.ts +1 -0
  286. package/dist/side-panel/panel-header.js +9 -2
  287. package/dist/side-panel/panel-tab.d.ts +2 -4
  288. package/dist/side-panel/panel-tab.js +4 -4
  289. package/dist/side-panel/panel-view-list-toggle.d.ts +4 -4
  290. package/dist/side-panel/side-bar.d.ts +1 -6
  291. package/dist/side-panel.d.ts +1 -1
  292. package/dist/side-panel.js +5 -1
  293. package/dist/types.d.ts +2 -2
  294. package/dist/types.js +1 -1
  295. package/package.json +53 -48
  296. package/dist/map/layer-selector-panel.d.ts +0 -21
  297. package/dist/map/layer-selector-panel.js +0 -85
  298. package/dist/side-panel/layer-panel/radius-by-zoom-input.d.ts +0 -11
  299. package/dist/side-panel/layer-panel/radius-by-zoom-input.js +0 -220
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = FloatingLinkEditorPlugin;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
14
+ var _link = require("@lexical/link");
15
+ var _LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
16
+ var _utils = require("@lexical/utils");
17
+ var _lexical = require("lexical");
18
+ var _lexicalConstants = require("./lexical-constants");
19
+ var _lexicalUtils = require("./lexical-utils");
20
+ var _templateObject, _templateObject2; // SPDX-License-Identifier: MIT
21
+ // Copyright contributors to the kepler.gl project
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
24
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26
+ var StyledLinkEditor = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n width: max-content;\n max-width: 300px;\n min-width: 150px;\n padding: 6px 10px;\n background-color: rgba(30, 33, 40, 0.95);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);\n border-radius: 6px;\n z-index: 20;\n\n .link-input {\n display: flex;\n align-items: center;\n gap: 5px;\n & > a {\n color: rgb(33, 111, 219);\n flex-grow: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 12px;\n white-space: nowrap;\n }\n }\n input {\n &:focus {\n outline: none;\n }\n width: 100%;\n font-size: 12px;\n background: rgba(0, 0, 0, 0.3);\n color: #fff;\n border: 1px solid rgba(255, 255, 255, 0.2);\n padding: 4px 6px;\n border-radius: 4px;\n }\n"])));
27
+ var EditButton = _styledComponents["default"].button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n background: transparent;\n border: none;\n color: rgba(255, 255, 255, 0.7);\n cursor: pointer;\n font-size: 11px;\n padding: 2px 4px;\n border-radius: 3px;\n &:hover {\n color: #fff;\n background: rgba(255, 255, 255, 0.1);\n }\n"])));
28
+ var FloatingLinkEditor = function FloatingLinkEditor(_ref) {
29
+ var editor = _ref.editor,
30
+ isLink = _ref.isLink,
31
+ setIsLink = _ref.setIsLink;
32
+ var inputRef = (0, _react.useRef)(null);
33
+ var _useState = (0, _react.useState)(''),
34
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
35
+ linkUrl = _useState2[0],
36
+ setLinkUrl = _useState2[1];
37
+ var _useState3 = (0, _react.useState)(false),
38
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
39
+ isShown = _useState4[0],
40
+ setShown = _useState4[1];
41
+ var _useState5 = (0, _react.useState)(false),
42
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
43
+ isEditMode = _useState6[0],
44
+ setEditMode = _useState6[1];
45
+ var _useState7 = (0, _react.useState)(null),
46
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
47
+ lastSelection = _useState8[0],
48
+ setLastSelection = _useState8[1];
49
+ var updateLinkEditor = (0, _react.useCallback)(function () {
50
+ function clear() {
51
+ setShown(false);
52
+ setLastSelection(null);
53
+ setEditMode(false);
54
+ setLinkUrl('');
55
+ }
56
+ if (!editor.isEditable()) {
57
+ clear();
58
+ return;
59
+ }
60
+ var selection = (0, _lexical.$getSelection)();
61
+ if ((0, _lexical.$isRangeSelection)(selection)) {
62
+ var node = (0, _lexicalUtils.getSelectedNode)(selection);
63
+ var parent = node.getParent();
64
+ if ((0, _link.$isLinkNode)(parent)) {
65
+ setLinkUrl(parent === null || parent === void 0 ? void 0 : parent.getURL());
66
+ } else if ((0, _link.$isLinkNode)(node)) {
67
+ setLinkUrl(node.getURL());
68
+ } else {
69
+ clear();
70
+ return;
71
+ }
72
+ }
73
+ var nativeSelection = window.getSelection();
74
+ var rootElement = editor.getRootElement();
75
+ if (selection !== null && nativeSelection !== null && rootElement !== null && rootElement.contains(nativeSelection.anchorNode) && editor.isEditable()) {
76
+ setShown(true);
77
+ setLastSelection(selection);
78
+ } else {
79
+ clear();
80
+ }
81
+ return true;
82
+ }, [editor]);
83
+ (0, _react.useEffect)(function () {
84
+ return (0, _utils.mergeRegister)(editor.registerEditableListener(function (editable) {
85
+ if (!editable) {
86
+ updateLinkEditor();
87
+ }
88
+ }), editor.registerUpdateListener(function (_ref2) {
89
+ var editorState = _ref2.editorState;
90
+ editorState.read(function () {
91
+ updateLinkEditor();
92
+ });
93
+ }), editor.registerCommand(_lexical.SELECTION_CHANGE_COMMAND, function () {
94
+ updateLinkEditor();
95
+ return true;
96
+ }, _lexical.COMMAND_PRIORITY_LOW), editor.registerCommand(_lexical.KEY_ESCAPE_COMMAND, function () {
97
+ if (isLink) {
98
+ setIsLink(false);
99
+ return true;
100
+ }
101
+ return false;
102
+ }, _lexical.COMMAND_PRIORITY_HIGH));
103
+ }, [editor, updateLinkEditor, setIsLink, isLink]);
104
+ (0, _react.useEffect)(function () {
105
+ editor.getEditorState().read(function () {
106
+ updateLinkEditor();
107
+ });
108
+ }, [editor, updateLinkEditor]);
109
+ (0, _react.useEffect)(function () {
110
+ if (isEditMode && inputRef.current) {
111
+ inputRef.current.focus();
112
+ }
113
+ }, [isEditMode]);
114
+ return isShown ? /*#__PURE__*/_react["default"].createElement(StyledLinkEditor, {
115
+ className: "link-editor"
116
+ }, isEditMode ? /*#__PURE__*/_react["default"].createElement("input", {
117
+ ref: inputRef,
118
+ className: "link-input",
119
+ value: linkUrl,
120
+ onChange: function onChange(event) {
121
+ setLinkUrl(event.target.value);
122
+ },
123
+ onKeyDown: function onKeyDown(event) {
124
+ if (event.key === 'Enter' || event.key === 'Escape') {
125
+ event.preventDefault();
126
+ event.stopPropagation();
127
+ if (lastSelection !== null) {
128
+ if (linkUrl !== '') {
129
+ editor.dispatchCommand(_link.TOGGLE_LINK_COMMAND, _objectSpread(_objectSpread({}, _lexicalConstants.DEFAULT_LINK_NODE_PROPS), {}, {
130
+ url: (0, _lexicalUtils.sanitizeUrl)(linkUrl)
131
+ }));
132
+ }
133
+ setEditMode(false);
134
+ }
135
+ }
136
+ }
137
+ }) : /*#__PURE__*/_react["default"].createElement("div", {
138
+ className: "link-input"
139
+ }, /*#__PURE__*/_react["default"].createElement("a", {
140
+ href: linkUrl,
141
+ target: "_blank",
142
+ rel: "noopener noreferrer"
143
+ }, linkUrl), /*#__PURE__*/_react["default"].createElement(EditButton, {
144
+ tabIndex: 0,
145
+ onMouseDown: function onMouseDown(event) {
146
+ return event.preventDefault();
147
+ },
148
+ onClick: function onClick() {
149
+ return setEditMode(true);
150
+ }
151
+ }, "\u270E"))) : null;
152
+ };
153
+ function FloatingLinkEditorPlugin() {
154
+ var _useLexicalComposerCo = (0, _LexicalComposerContext.useLexicalComposerContext)(),
155
+ _useLexicalComposerCo2 = (0, _slicedToArray2["default"])(_useLexicalComposerCo, 1),
156
+ editor = _useLexicalComposerCo2[0];
157
+ var _useState9 = (0, _react.useState)(editor),
158
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
159
+ activeEditor = _useState10[0],
160
+ setActiveEditor = _useState10[1];
161
+ var _useState11 = (0, _react.useState)(false),
162
+ _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
163
+ isLink = _useState12[0],
164
+ setIsLink = _useState12[1];
165
+ var updateToolbar = (0, _react.useCallback)(function () {
166
+ var selection = (0, _lexical.$getSelection)();
167
+ if ((0, _lexical.$isRangeSelection)(selection)) {
168
+ var node = (0, _lexicalUtils.getSelectedNode)(selection);
169
+ var linkParent = (0, _utils.$findMatchingParent)(node, _link.$isLinkNode);
170
+ if (linkParent) {
171
+ setIsLink(true);
172
+ } else {
173
+ setIsLink(false);
174
+ }
175
+ }
176
+ }, []);
177
+ (0, _react.useEffect)(function () {
178
+ return (0, _utils.mergeRegister)(editor.registerCommand(_lexical.SELECTION_CHANGE_COMMAND, function (_payload, newEditor) {
179
+ updateToolbar();
180
+ setActiveEditor(newEditor);
181
+ return false;
182
+ }, _lexical.COMMAND_PRIORITY_CRITICAL), editor.registerEditableListener(function (editable) {
183
+ if (!editable) {
184
+ setIsLink(false);
185
+ }
186
+ }));
187
+ }, [editor, updateToolbar]);
188
+ return isLink ? /*#__PURE__*/_react["default"].createElement(FloatingLinkEditor, {
189
+ editor: activeEditor,
190
+ isLink: isLink,
191
+ setIsLink: setIsLink
192
+ }) : null;
193
+ }
194
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfbGluayIsIl9MZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiX3V0aWxzIiwiX2xleGljYWwiLCJfbGV4aWNhbENvbnN0YW50cyIsIl9sZXhpY2FsVXRpbHMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiU3R5bGVkTGlua0VkaXRvciIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwiRWRpdEJ1dHRvbiIsImJ1dHRvbiIsIkZsb2F0aW5nTGlua0VkaXRvciIsIl9yZWYiLCJlZGl0b3IiLCJpc0xpbmsiLCJzZXRJc0xpbmsiLCJpbnB1dFJlZiIsInVzZVJlZiIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImxpbmtVcmwiLCJzZXRMaW5rVXJsIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJpc1Nob3duIiwic2V0U2hvd24iLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsImlzRWRpdE1vZGUiLCJzZXRFZGl0TW9kZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwibGFzdFNlbGVjdGlvbiIsInNldExhc3RTZWxlY3Rpb24iLCJ1cGRhdGVMaW5rRWRpdG9yIiwidXNlQ2FsbGJhY2siLCJjbGVhciIsImlzRWRpdGFibGUiLCJzZWxlY3Rpb24iLCIkZ2V0U2VsZWN0aW9uIiwiJGlzUmFuZ2VTZWxlY3Rpb24iLCJub2RlIiwiZ2V0U2VsZWN0ZWROb2RlIiwicGFyZW50IiwiZ2V0UGFyZW50IiwiJGlzTGlua05vZGUiLCJnZXRVUkwiLCJuYXRpdmVTZWxlY3Rpb24iLCJ3aW5kb3ciLCJnZXRTZWxlY3Rpb24iLCJyb290RWxlbWVudCIsImdldFJvb3RFbGVtZW50IiwiY29udGFpbnMiLCJhbmNob3JOb2RlIiwidXNlRWZmZWN0IiwibWVyZ2VSZWdpc3RlciIsInJlZ2lzdGVyRWRpdGFibGVMaXN0ZW5lciIsImVkaXRhYmxlIiwicmVnaXN0ZXJVcGRhdGVMaXN0ZW5lciIsIl9yZWYyIiwiZWRpdG9yU3RhdGUiLCJyZWFkIiwicmVnaXN0ZXJDb21tYW5kIiwiU0VMRUNUSU9OX0NIQU5HRV9DT01NQU5EIiwiQ09NTUFORF9QUklPUklUWV9MT1ciLCJLRVlfRVNDQVBFX0NPTU1BTkQiLCJDT01NQU5EX1BSSU9SSVRZX0hJR0giLCJnZXRFZGl0b3JTdGF0ZSIsImN1cnJlbnQiLCJmb2N1cyIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJyZWYiLCJ2YWx1ZSIsIm9uQ2hhbmdlIiwiZXZlbnQiLCJ0YXJnZXQiLCJvbktleURvd24iLCJrZXkiLCJwcmV2ZW50RGVmYXVsdCIsInN0b3BQcm9wYWdhdGlvbiIsImRpc3BhdGNoQ29tbWFuZCIsIlRPR0dMRV9MSU5LX0NPTU1BTkQiLCJERUZBVUxUX0xJTktfTk9ERV9QUk9QUyIsInVybCIsInNhbml0aXplVXJsIiwiaHJlZiIsInJlbCIsInRhYkluZGV4Iiwib25Nb3VzZURvd24iLCJvbkNsaWNrIiwiRmxvYXRpbmdMaW5rRWRpdG9yUGx1Z2luIiwiX3VzZUxleGljYWxDb21wb3NlckNvIiwidXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCIsIl91c2VMZXhpY2FsQ29tcG9zZXJDbzIiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMTAiLCJhY3RpdmVFZGl0b3IiLCJzZXRBY3RpdmVFZGl0b3IiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwidXBkYXRlVG9vbGJhciIsImxpbmtQYXJlbnQiLCIkZmluZE1hdGNoaW5nUGFyZW50IiwiX3BheWxvYWQiLCJuZXdFZGl0b3IiLCJDT01NQU5EX1BSSU9SSVRZX0NSSVRJQ0FMIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fubm90YXRpb25zL2xleGljYWwtZWRpdG9yL2Zsb2F0aW5nLWxpbmstZWRpdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtEaXNwYXRjaCwgRkMsIHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHskaXNMaW5rTm9kZSwgVE9HR0xFX0xJTktfQ09NTUFORH0gZnJvbSAnQGxleGljYWwvbGluayc7XG5pbXBvcnQge3VzZUxleGljYWxDb21wb3NlckNvbnRleHR9IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxDb21wb3NlckNvbnRleHQnO1xuaW1wb3J0IHskZmluZE1hdGNoaW5nUGFyZW50LCBtZXJnZVJlZ2lzdGVyfSBmcm9tICdAbGV4aWNhbC91dGlscyc7XG5pbXBvcnQge1xuICAkZ2V0U2VsZWN0aW9uLFxuICAkaXNSYW5nZVNlbGVjdGlvbixcbiAgQ09NTUFORF9QUklPUklUWV9DUklUSUNBTCxcbiAgQ09NTUFORF9QUklPUklUWV9ISUdILFxuICBDT01NQU5EX1BSSU9SSVRZX0xPVyxcbiAgS0VZX0VTQ0FQRV9DT01NQU5ELFxuICBMZXhpY2FsRWRpdG9yLFxuICBTRUxFQ1RJT05fQ0hBTkdFX0NPTU1BTkRcbn0gZnJvbSAnbGV4aWNhbCc7XG5cbmltcG9ydCB7REVGQVVMVF9MSU5LX05PREVfUFJPUFN9IGZyb20gJy4vbGV4aWNhbC1jb25zdGFudHMnO1xuaW1wb3J0IHtnZXRTZWxlY3RlZE5vZGUsIHNhbml0aXplVXJsfSBmcm9tICcuL2xleGljYWwtdXRpbHMnO1xuXG5jb25zdCBTdHlsZWRMaW5rRWRpdG9yID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDRweCk7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgbWluLXdpZHRoOiAxNTBweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzAsIDMzLCA0MCwgMC45NSk7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHotaW5kZXg6IDIwO1xuXG4gIC5saW5rLWlucHV0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA1cHg7XG4gICAgJiA+IGEge1xuICAgICAgY29sb3I6IHJnYigzMywgMTExLCAyMTkpO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbiAgaW5wdXQge1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgcGFkZGluZzogNHB4IDZweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIH1cbmA7XG5cbmNvbnN0IEVkaXRCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIH1cbmA7XG5cbmNvbnN0IEZsb2F0aW5nTGlua0VkaXRvcjogRkM8e1xuICBlZGl0b3I6IExleGljYWxFZGl0b3I7XG4gIGlzTGluazogYm9vbGVhbjtcbiAgc2V0SXNMaW5rOiBEaXNwYXRjaDxib29sZWFuPjtcbn0+ID0gKHtlZGl0b3IsIGlzTGluaywgc2V0SXNMaW5rfSkgPT4ge1xuICBjb25zdCBpbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcbiAgY29uc3QgW2xpbmtVcmwsIHNldExpbmtVcmxdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbaXNTaG93biwgc2V0U2hvd25dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbaXNFZGl0TW9kZSwgc2V0RWRpdE1vZGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbbGFzdFNlbGVjdGlvbiwgc2V0TGFzdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZTxhbnk+KG51bGwpO1xuXG4gIGNvbnN0IHVwZGF0ZUxpbmtFZGl0b3IgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgZnVuY3Rpb24gY2xlYXIoKSB7XG4gICAgICBzZXRTaG93bihmYWxzZSk7XG4gICAgICBzZXRMYXN0U2VsZWN0aW9uKG51bGwpO1xuICAgICAgc2V0RWRpdE1vZGUoZmFsc2UpO1xuICAgICAgc2V0TGlua1VybCgnJyk7XG4gICAgfVxuXG4gICAgaWYgKCFlZGl0b3IuaXNFZGl0YWJsZSgpKSB7XG4gICAgICBjbGVhcigpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBzZWxlY3Rpb24gPSAkZ2V0U2VsZWN0aW9uKCk7XG4gICAgaWYgKCRpc1JhbmdlU2VsZWN0aW9uKHNlbGVjdGlvbikpIHtcbiAgICAgIGNvbnN0IG5vZGUgPSBnZXRTZWxlY3RlZE5vZGUoc2VsZWN0aW9uKTtcbiAgICAgIGNvbnN0IHBhcmVudCA9IG5vZGUuZ2V0UGFyZW50KCk7XG4gICAgICBpZiAoJGlzTGlua05vZGUocGFyZW50KSkge1xuICAgICAgICBzZXRMaW5rVXJsKHBhcmVudD8uZ2V0VVJMKCkpO1xuICAgICAgfSBlbHNlIGlmICgkaXNMaW5rTm9kZShub2RlKSkge1xuICAgICAgICBzZXRMaW5rVXJsKG5vZGUuZ2V0VVJMKCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xlYXIoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IG5hdGl2ZVNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICBjb25zdCByb290RWxlbWVudCA9IGVkaXRvci5nZXRSb290RWxlbWVudCgpO1xuXG4gICAgaWYgKFxuICAgICAgc2VsZWN0aW9uICE9PSBudWxsICYmXG4gICAgICBuYXRpdmVTZWxlY3Rpb24gIT09IG51bGwgJiZcbiAgICAgIHJvb3RFbGVtZW50ICE9PSBudWxsICYmXG4gICAgICByb290RWxlbWVudC5jb250YWlucyhuYXRpdmVTZWxlY3Rpb24uYW5jaG9yTm9kZSkgJiZcbiAgICAgIGVkaXRvci5pc0VkaXRhYmxlKClcbiAgICApIHtcbiAgICAgIHNldFNob3duKHRydWUpO1xuICAgICAgc2V0TGFzdFNlbGVjdGlvbihzZWxlY3Rpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjbGVhcigpO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9LCBbZWRpdG9yXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gbWVyZ2VSZWdpc3RlcihcbiAgICAgIGVkaXRvci5yZWdpc3RlckVkaXRhYmxlTGlzdGVuZXIoZWRpdGFibGUgPT4ge1xuICAgICAgICBpZiAoIWVkaXRhYmxlKSB7XG4gICAgICAgICAgdXBkYXRlTGlua0VkaXRvcigpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIGVkaXRvci5yZWdpc3RlclVwZGF0ZUxpc3RlbmVyKCh7ZWRpdG9yU3RhdGV9KSA9PiB7XG4gICAgICAgIGVkaXRvclN0YXRlLnJlYWQoKCkgPT4ge1xuICAgICAgICAgIHVwZGF0ZUxpbmtFZGl0b3IoKTtcbiAgICAgICAgfSk7XG4gICAgICB9KSxcbiAgICAgIGVkaXRvci5yZWdpc3RlckNvbW1hbmQoXG4gICAgICAgIFNFTEVDVElPTl9DSEFOR0VfQ09NTUFORCxcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIHVwZGF0ZUxpbmtFZGl0b3IoKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfSxcbiAgICAgICAgQ09NTUFORF9QUklPUklUWV9MT1dcbiAgICAgICksXG4gICAgICBlZGl0b3IucmVnaXN0ZXJDb21tYW5kKFxuICAgICAgICBLRVlfRVNDQVBFX0NPTU1BTkQsXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBpZiAoaXNMaW5rKSB7XG4gICAgICAgICAgICBzZXRJc0xpbmsoZmFsc2UpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfSxcbiAgICAgICAgQ09NTUFORF9QUklPUklUWV9ISUdIXG4gICAgICApXG4gICAgKTtcbiAgfSwgW2VkaXRvciwgdXBkYXRlTGlua0VkaXRvciwgc2V0SXNMaW5rLCBpc0xpbmtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGVkaXRvci5nZXRFZGl0b3JTdGF0ZSgpLnJlYWQoKCkgPT4ge1xuICAgICAgdXBkYXRlTGlua0VkaXRvcigpO1xuICAgIH0pO1xuICB9LCBbZWRpdG9yLCB1cGRhdGVMaW5rRWRpdG9yXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNFZGl0TW9kZSAmJiBpbnB1dFJlZi5jdXJyZW50KSB7XG4gICAgICBpbnB1dFJlZi5jdXJyZW50LmZvY3VzKCk7XG4gICAgfVxuICB9LCBbaXNFZGl0TW9kZV0pO1xuXG4gIHJldHVybiBpc1Nob3duID8gKFxuICAgIDxTdHlsZWRMaW5rRWRpdG9yIGNsYXNzTmFtZT1cImxpbmstZWRpdG9yXCI+XG4gICAgICB7aXNFZGl0TW9kZSA/IChcbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgcmVmPXtpbnB1dFJlZn1cbiAgICAgICAgICBjbGFzc05hbWU9XCJsaW5rLWlucHV0XCJcbiAgICAgICAgICB2YWx1ZT17bGlua1VybH1cbiAgICAgICAgICBvbkNoYW5nZT17ZXZlbnQgPT4ge1xuICAgICAgICAgICAgc2V0TGlua1VybChldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgICAgIH19XG4gICAgICAgICAgb25LZXlEb3duPXtldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInIHx8IGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgIGlmIChsYXN0U2VsZWN0aW9uICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgaWYgKGxpbmtVcmwgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICBlZGl0b3IuZGlzcGF0Y2hDb21tYW5kKFRPR0dMRV9MSU5LX0NPTU1BTkQsIHtcbiAgICAgICAgICAgICAgICAgICAgLi4uREVGQVVMVF9MSU5LX05PREVfUFJPUFMsXG4gICAgICAgICAgICAgICAgICAgIHVybDogc2FuaXRpemVVcmwobGlua1VybClcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzZXRFZGl0TW9kZShmYWxzZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsaW5rLWlucHV0XCI+XG4gICAgICAgICAgPGEgaHJlZj17bGlua1VybH0gdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiPlxuICAgICAgICAgICAge2xpbmtVcmx9XG4gICAgICAgICAgPC9hPlxuICAgICAgICAgIDxFZGl0QnV0dG9uXG4gICAgICAgICAgICB0YWJJbmRleD17MH1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXtldmVudCA9PiBldmVudC5wcmV2ZW50RGVmYXVsdCgpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RWRpdE1vZGUodHJ1ZSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAg4pyOXG4gICAgICAgICAgPC9FZGl0QnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgPC9TdHlsZWRMaW5rRWRpdG9yPlxuICApIDogbnVsbDtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEZsb2F0aW5nTGlua0VkaXRvclBsdWdpbigpOiBKU1guRWxlbWVudCB8IG51bGwge1xuICBjb25zdCBbZWRpdG9yXSA9IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQoKTtcbiAgY29uc3QgW2FjdGl2ZUVkaXRvciwgc2V0QWN0aXZlRWRpdG9yXSA9IHVzZVN0YXRlKGVkaXRvcik7XG4gIGNvbnN0IFtpc0xpbmssIHNldElzTGlua10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgdXBkYXRlVG9vbGJhciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCBzZWxlY3Rpb24gPSAkZ2V0U2VsZWN0aW9uKCk7XG4gICAgaWYgKCRpc1JhbmdlU2VsZWN0aW9uKHNlbGVjdGlvbikpIHtcbiAgICAgIGNvbnN0IG5vZGUgPSBnZXRTZWxlY3RlZE5vZGUoc2VsZWN0aW9uKTtcbiAgICAgIGNvbnN0IGxpbmtQYXJlbnQgPSAkZmluZE1hdGNoaW5nUGFyZW50KG5vZGUsICRpc0xpbmtOb2RlKTtcbiAgICAgIGlmIChsaW5rUGFyZW50KSB7XG4gICAgICAgIHNldElzTGluayh0cnVlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldElzTGluayhmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9LCBbXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gbWVyZ2VSZWdpc3RlcihcbiAgICAgIGVkaXRvci5yZWdpc3RlckNvbW1hbmQoXG4gICAgICAgIFNFTEVDVElPTl9DSEFOR0VfQ09NTUFORCxcbiAgICAgICAgKF9wYXlsb2FkLCBuZXdFZGl0b3IpID0+IHtcbiAgICAgICAgICB1cGRhdGVUb29sYmFyKCk7XG4gICAgICAgICAgc2V0QWN0aXZlRWRpdG9yKG5ld0VkaXRvcik7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBDT01NQU5EX1BSSU9SSVRZX0NSSVRJQ0FMXG4gICAgICApLFxuICAgICAgZWRpdG9yLnJlZ2lzdGVyRWRpdGFibGVMaXN0ZW5lcihlZGl0YWJsZSA9PiB7XG4gICAgICAgIGlmICghZWRpdGFibGUpIHtcbiAgICAgICAgICBzZXRJc0xpbmsoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH0sIFtlZGl0b3IsIHVwZGF0ZVRvb2xiYXJdKTtcblxuICByZXR1cm4gaXNMaW5rID8gKFxuICAgIDxGbG9hdGluZ0xpbmtFZGl0b3IgZWRpdG9yPXthY3RpdmVFZGl0b3J9IGlzTGluaz17aXNMaW5rfSBzZXRJc0xpbms9e3NldElzTGlua30gLz5cbiAgKSA6IG51bGw7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLEtBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLHVCQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxNQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxRQUFBLEdBQUFOLE9BQUE7QUFXQSxJQUFBTyxpQkFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsYUFBQSxHQUFBUixPQUFBO0FBQTZELElBQUFTLGVBQUEsRUFBQUMsZ0JBQUEsRUFwQjdEO0FBQ0E7QUFBQSxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQWIsd0JBQUFhLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUcsR0FBQSxDQUFBTixDQUFBLFVBQUFH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
@@ -0,0 +1,7 @@
1
+ export { LexicalRichTextEditor } from './lexical-rich-text-editor';
2
+ export { LexicalToolbar } from './lexical-toolbar';
3
+ export type { LexicalRichTextEditorProps } from './lexical-rich-text-editor';
4
+ export type { LexicalToolbarProps } from './lexical-toolbar';
5
+ export { default as FloatingLinkEditorPlugin } from './floating-link-editor';
6
+ export { default as ClickableLinkPlugin } from './clickable-link-plugin';
7
+ export { FONT_FAMILY_OPTIONS, FONT_SIZE_OPTIONS, DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE, DEFAULT_FONT_COLOR, DEFAULT_BG_COLOR, DEFAULT_LINK_NODE_PROPS } from './lexical-constants';
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "ClickableLinkPlugin", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _clickableLinkPlugin["default"];
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "DEFAULT_BG_COLOR", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _lexicalConstants.DEFAULT_BG_COLOR;
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "DEFAULT_FONT_COLOR", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _lexicalConstants.DEFAULT_FONT_COLOR;
23
+ }
24
+ });
25
+ Object.defineProperty(exports, "DEFAULT_FONT_FAMILY", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _lexicalConstants.DEFAULT_FONT_FAMILY;
29
+ }
30
+ });
31
+ Object.defineProperty(exports, "DEFAULT_FONT_SIZE", {
32
+ enumerable: true,
33
+ get: function get() {
34
+ return _lexicalConstants.DEFAULT_FONT_SIZE;
35
+ }
36
+ });
37
+ Object.defineProperty(exports, "DEFAULT_LINK_NODE_PROPS", {
38
+ enumerable: true,
39
+ get: function get() {
40
+ return _lexicalConstants.DEFAULT_LINK_NODE_PROPS;
41
+ }
42
+ });
43
+ Object.defineProperty(exports, "FONT_FAMILY_OPTIONS", {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _lexicalConstants.FONT_FAMILY_OPTIONS;
47
+ }
48
+ });
49
+ Object.defineProperty(exports, "FONT_SIZE_OPTIONS", {
50
+ enumerable: true,
51
+ get: function get() {
52
+ return _lexicalConstants.FONT_SIZE_OPTIONS;
53
+ }
54
+ });
55
+ Object.defineProperty(exports, "FloatingLinkEditorPlugin", {
56
+ enumerable: true,
57
+ get: function get() {
58
+ return _floatingLinkEditor["default"];
59
+ }
60
+ });
61
+ Object.defineProperty(exports, "LexicalRichTextEditor", {
62
+ enumerable: true,
63
+ get: function get() {
64
+ return _lexicalRichTextEditor.LexicalRichTextEditor;
65
+ }
66
+ });
67
+ Object.defineProperty(exports, "LexicalToolbar", {
68
+ enumerable: true,
69
+ get: function get() {
70
+ return _lexicalToolbar.LexicalToolbar;
71
+ }
72
+ });
73
+ var _lexicalRichTextEditor = require("./lexical-rich-text-editor");
74
+ var _lexicalToolbar = require("./lexical-toolbar");
75
+ var _floatingLinkEditor = _interopRequireDefault(require("./floating-link-editor"));
76
+ var _clickableLinkPlugin = _interopRequireDefault(require("./clickable-link-plugin"));
77
+ var _lexicalConstants = require("./lexical-constants");
78
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGV4aWNhbFJpY2hUZXh0RWRpdG9yIiwicmVxdWlyZSIsIl9sZXhpY2FsVG9vbGJhciIsIl9mbG9hdGluZ0xpbmtFZGl0b3IiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2NsaWNrYWJsZUxpbmtQbHVnaW4iLCJfbGV4aWNhbENvbnN0YW50cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hbm5vdGF0aW9ucy9sZXhpY2FsLWVkaXRvci9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5leHBvcnQge0xleGljYWxSaWNoVGV4dEVkaXRvcn0gZnJvbSAnLi9sZXhpY2FsLXJpY2gtdGV4dC1lZGl0b3InO1xuZXhwb3J0IHtMZXhpY2FsVG9vbGJhcn0gZnJvbSAnLi9sZXhpY2FsLXRvb2xiYXInO1xuZXhwb3J0IHR5cGUge0xleGljYWxSaWNoVGV4dEVkaXRvclByb3BzfSBmcm9tICcuL2xleGljYWwtcmljaC10ZXh0LWVkaXRvcic7XG5leHBvcnQgdHlwZSB7TGV4aWNhbFRvb2xiYXJQcm9wc30gZnJvbSAnLi9sZXhpY2FsLXRvb2xiYXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEZsb2F0aW5nTGlua0VkaXRvclBsdWdpbn0gZnJvbSAnLi9mbG9hdGluZy1saW5rLWVkaXRvcic7XG5leHBvcnQge2RlZmF1bHQgYXMgQ2xpY2thYmxlTGlua1BsdWdpbn0gZnJvbSAnLi9jbGlja2FibGUtbGluay1wbHVnaW4nO1xuZXhwb3J0IHtcbiAgRk9OVF9GQU1JTFlfT1BUSU9OUyxcbiAgRk9OVF9TSVpFX09QVElPTlMsXG4gIERFRkFVTFRfRk9OVF9GQU1JTFksXG4gIERFRkFVTFRfRk9OVF9TSVpFLFxuICBERUZBVUxUX0ZPTlRfQ09MT1IsXG4gIERFRkFVTFRfQkdfQ09MT1IsXG4gIERFRkFVTFRfTElOS19OT0RFX1BST1BTXG59IGZyb20gJy4vbGV4aWNhbC1jb25zdGFudHMnO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxzQkFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsZUFBQSxHQUFBRCxPQUFBO0FBR0EsSUFBQUUsbUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLG9CQUFBLEdBQUFELHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSyxpQkFBQSxHQUFBTCxPQUFBIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,12 @@
1
+ export declare const LOW_PRIORITY_COMMAND = 1;
2
+ export declare const FONT_FAMILY_OPTIONS: string[];
3
+ export declare const DEFAULT_FONT_FAMILY = "Inter";
4
+ export declare const FONT_SIZE_OPTIONS: string[];
5
+ export declare const DEFAULT_FONT_SIZE = "14px";
6
+ export declare const DEFAULT_FONT_COLOR = "#FFFFFF";
7
+ export declare const DEFAULT_BG_COLOR = "transparent";
8
+ export declare const DEFAULT_LINK_NODE_PROPS: {
9
+ url: string;
10
+ target: string;
11
+ rel: string;
12
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.LOW_PRIORITY_COMMAND = exports.FONT_SIZE_OPTIONS = exports.FONT_FAMILY_OPTIONS = exports.DEFAULT_LINK_NODE_PROPS = exports.DEFAULT_FONT_SIZE = exports.DEFAULT_FONT_FAMILY = exports.DEFAULT_FONT_COLOR = exports.DEFAULT_BG_COLOR = void 0;
7
+ // SPDX-License-Identifier: MIT
8
+ // Copyright contributors to the kepler.gl project
9
+
10
+ var LOW_PRIORITY_COMMAND = exports.LOW_PRIORITY_COMMAND = 1;
11
+ var FONT_FAMILY_OPTIONS = exports.FONT_FAMILY_OPTIONS = ['Arial', 'Courier New', 'Georgia', 'Inter', 'Times New Roman', 'Trebuchet MS', 'Verdana'];
12
+ var DEFAULT_FONT_FAMILY = exports.DEFAULT_FONT_FAMILY = 'Inter';
13
+ var FONT_SIZE_OPTIONS = exports.FONT_SIZE_OPTIONS = ['10px', '12px', '14px', '16px', '18px', '20px', '22px', '24px', '28px', '32px'];
14
+ var DEFAULT_FONT_SIZE = exports.DEFAULT_FONT_SIZE = '14px';
15
+ var DEFAULT_FONT_COLOR = exports.DEFAULT_FONT_COLOR = '#FFFFFF';
16
+ var DEFAULT_BG_COLOR = exports.DEFAULT_BG_COLOR = 'transparent';
17
+ var DEFAULT_LINK_NODE_PROPS = exports.DEFAULT_LINK_NODE_PROPS = {
18
+ url: 'https://',
19
+ target: '_blank',
20
+ rel: 'noopener noreferrer'
21
+ };
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMT1dfUFJJT1JJVFlfQ09NTUFORCIsImV4cG9ydHMiLCJGT05UX0ZBTUlMWV9PUFRJT05TIiwiREVGQVVMVF9GT05UX0ZBTUlMWSIsIkZPTlRfU0laRV9PUFRJT05TIiwiREVGQVVMVF9GT05UX1NJWkUiLCJERUZBVUxUX0ZPTlRfQ09MT1IiLCJERUZBVUxUX0JHX0NPTE9SIiwiREVGQVVMVF9MSU5LX05PREVfUFJPUFMiLCJ1cmwiLCJ0YXJnZXQiLCJyZWwiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYW5ub3RhdGlvbnMvbGV4aWNhbC1lZGl0b3IvbGV4aWNhbC1jb25zdGFudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuZXhwb3J0IGNvbnN0IExPV19QUklPUklUWV9DT01NQU5EID0gMTtcblxuZXhwb3J0IGNvbnN0IEZPTlRfRkFNSUxZX09QVElPTlMgPSBbXG4gICdBcmlhbCcsXG4gICdDb3VyaWVyIE5ldycsXG4gICdHZW9yZ2lhJyxcbiAgJ0ludGVyJyxcbiAgJ1RpbWVzIE5ldyBSb21hbicsXG4gICdUcmVidWNoZXQgTVMnLFxuICAnVmVyZGFuYSdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0ZPTlRfRkFNSUxZID0gJ0ludGVyJztcblxuZXhwb3J0IGNvbnN0IEZPTlRfU0laRV9PUFRJT05TID0gW1xuICAnMTBweCcsXG4gICcxMnB4JyxcbiAgJzE0cHgnLFxuICAnMTZweCcsXG4gICcxOHB4JyxcbiAgJzIwcHgnLFxuICAnMjJweCcsXG4gICcyNHB4JyxcbiAgJzI4cHgnLFxuICAnMzJweCdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0ZPTlRfU0laRSA9ICcxNHB4JztcbmV4cG9ydCBjb25zdCBERUZBVUxUX0ZPTlRfQ09MT1IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3QgREVGQVVMVF9CR19DT0xPUiA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9MSU5LX05PREVfUFJPUFMgPSB7XG4gIHVybDogJ2h0dHBzOi8vJyxcbiAgdGFyZ2V0OiAnX2JsYW5rJyxcbiAgcmVsOiAnbm9vcGVuZXIgbm9yZWZlcnJlcidcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7O0FBRU8sSUFBTUEsb0JBQW9CLEdBQUFDLE9BQUEsQ0FBQUQsb0JBQUEsR0FBRyxDQUFDO0FBRTlCLElBQU1FLG1CQUFtQixHQUFBRCxPQUFBLENBQUFDLG1CQUFBLEdBQUcsQ0FDakMsT0FBTyxFQUNQLGFBQWEsRUFDYixTQUFTLEVBQ1QsT0FBTyxFQUNQLGlCQUFpQixFQUNqQixjQUFjLEVBQ2QsU0FBUyxDQUNWO0FBRU0sSUFBTUMsbUJBQW1CLEdBQUFGLE9BQUEsQ0FBQUUsbUJBQUEsR0FBRyxPQUFPO0FBRW5DLElBQU1DLGlCQUFpQixHQUFBSCxPQUFBLENBQUFHLGlCQUFBLEdBQUcsQ0FDL0IsTUFBTSxFQUNOLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sRUFDTixNQUFNLEVBQ04sTUFBTSxDQUNQO0FBRU0sSUFBTUMsaUJBQWlCLEdBQUFKLE9BQUEsQ0FBQUksaUJBQUEsR0FBRyxNQUFNO0FBQ2hDLElBQU1DLGtCQUFrQixHQUFBTCxPQUFBLENBQUFLLGtCQUFBLEdBQUcsU0FBUztBQUNwQyxJQUFNQyxnQkFBZ0IsR0FBQU4sT0FBQSxDQUFBTSxnQkFBQSxHQUFHLGFBQWE7QUFDdEMsSUFBTUMsdUJBQXVCLEdBQUFQLE9BQUEsQ0FBQU8sdUJBQUEsR0FBRztFQUNyQ0MsR0FBRyxFQUFFLFVBQVU7RUFDZkMsTUFBTSxFQUFFLFFBQVE7RUFDaEJDLEdBQUcsRUFBRTtBQUNQLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,3 @@
1
+ import type { Klass, LexicalNode } from 'lexical';
2
+ declare const LexicalNodes: Array<Klass<LexicalNode>>;
3
+ export default LexicalNodes;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _link = require("@lexical/link");
8
+ // SPDX-License-Identifier: MIT
9
+ // Copyright contributors to the kepler.gl project
10
+
11
+ var LexicalNodes = [_link.AutoLinkNode, _link.LinkNode];
12
+ var _default = exports["default"] = LexicalNodes;
13
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGluayIsInJlcXVpcmUiLCJMZXhpY2FsTm9kZXMiLCJBdXRvTGlua05vZGUiLCJMaW5rTm9kZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hbm5vdGF0aW9ucy9sZXhpY2FsLWVkaXRvci9sZXhpY2FsLW5vZGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7QXV0b0xpbmtOb2RlLCBMaW5rTm9kZX0gZnJvbSAnQGxleGljYWwvbGluayc7XG5pbXBvcnQgdHlwZSB7S2xhc3MsIExleGljYWxOb2RlfSBmcm9tICdsZXhpY2FsJztcblxuY29uc3QgTGV4aWNhbE5vZGVzOiBBcnJheTxLbGFzczxMZXhpY2FsTm9kZT4+ID0gW0F1dG9MaW5rTm9kZSwgTGlua05vZGVdO1xuXG5leHBvcnQgZGVmYXVsdCBMZXhpY2FsTm9kZXM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUdBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUhBO0FBQ0E7O0FBS0EsSUFBTUMsWUFBdUMsR0FBRyxDQUFDQyxrQkFBWSxFQUFFQyxjQUFRLENBQUM7QUFBQyxJQUFBQyxRQUFBLEdBQUFDLE9BQUEsY0FFMURKLFlBQVkiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,15 @@
1
+ import { FC, ReactNode } from 'react';
2
+ import { SerializedEditorState } from 'lexical';
3
+ export type LexicalRichTextEditorProps = {
4
+ width?: number;
5
+ height?: number;
6
+ editorState?: SerializedEditorState;
7
+ initialText?: string;
8
+ isEditable: boolean;
9
+ children?: ReactNode;
10
+ onChange: (config: {
11
+ text: string;
12
+ editorState: SerializedEditorState;
13
+ }) => void;
14
+ };
15
+ export declare const LexicalRichTextEditor: FC<LexicalRichTextEditorProps>;
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.LexicalRichTextEditor = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+ var _react = _interopRequireWildcard(require("react"));
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+ var _LexicalComposer = require("@lexical/react/LexicalComposer");
16
+ var _LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
17
+ var _LexicalContentEditable = require("@lexical/react/LexicalContentEditable");
18
+ var _LexicalErrorBoundary = _interopRequireDefault(require("@lexical/react/LexicalErrorBoundary"));
19
+ var _LexicalHistoryPlugin = require("@lexical/react/LexicalHistoryPlugin");
20
+ var _LexicalLinkPlugin = require("@lexical/react/LexicalLinkPlugin");
21
+ var _LexicalOnChangePlugin = require("@lexical/react/LexicalOnChangePlugin");
22
+ var _LexicalRichTextPlugin = require("@lexical/react/LexicalRichTextPlugin");
23
+ var _lexical = require("lexical");
24
+ var _lexicalNodes = _interopRequireDefault(require("./lexical-nodes"));
25
+ var _lexicalTheme = _interopRequireDefault(require("./lexical-theme"));
26
+ var _lexicalUtils = require("./lexical-utils");
27
+ var _clickableLinkPlugin = _interopRequireDefault(require("./clickable-link-plugin"));
28
+ var _floatingLinkEditor = _interopRequireDefault(require("./floating-link-editor"));
29
+ var _templateObject; // SPDX-License-Identifier: MIT
30
+ // Copyright contributors to the kepler.gl project
31
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
32
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
33
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
35
+ var LEXICAL_EDITOR_CONFIG = {
36
+ namespace: 'annotation-editor',
37
+ theme: _lexicalTheme["default"],
38
+ nodes: (0, _toConsumableArray2["default"])(_lexicalNodes["default"]),
39
+ onError: function onError(error) {
40
+ throw error;
41
+ }
42
+ };
43
+ var Container = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n\n .editor-inner {\n ", ";\n ", ";\n border: none;\n display: flex;\n flex-direction: column;\n }\n .editor-input {\n outline: none;\n min-height: 20px;\n }\n .editor-input:focus {\n outline: none;\n }\n .lexical-paragraph {\n margin: 0;\n line-height: 1.4;\n }\n .lexical-text-bold {\n font-weight: bold;\n }\n .lexical-text-italic {\n font-style: italic;\n }\n .lexical-text-underline {\n text-decoration: underline;\n }\n .lexical-text-strikethrough {\n text-decoration: line-through;\n }\n .lexical-text-underline-strikethrough {\n text-decoration: underline line-through;\n }\n .lexical-ltr {\n text-align: left;\n }\n .lexical-rtl {\n text-align: right;\n }\n .lexical-link {\n color: rgb(33, 111, 219);\n }\n"])), function (props) {
44
+ return props.$width ? "width: ".concat(props.$width, "px") : '';
45
+ }, function (props) {
46
+ return props.$height ? "height: ".concat(props.$height, "px") : '';
47
+ });
48
+ var LexicalEditorInner = function LexicalEditorInner(_ref) {
49
+ var isEditable = _ref.isEditable,
50
+ onChange = _ref.onChange;
51
+ var _useLexicalComposerCo = (0, _LexicalComposerContext.useLexicalComposerContext)(),
52
+ _useLexicalComposerCo2 = (0, _slicedToArray2["default"])(_useLexicalComposerCo, 1),
53
+ editor = _useLexicalComposerCo2[0];
54
+ (0, _react.useEffect)(function () {
55
+ editor.setEditable(isEditable);
56
+ if (!isEditable) {
57
+ var rootElement = editor.getRootElement();
58
+ if (rootElement && rootElement.contains(document.activeElement)) {
59
+ var _document$activeEleme;
60
+ (_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 || _document$activeEleme.blur();
61
+ }
62
+ var domSelection = window.getSelection();
63
+ if (domSelection && rootElement && rootElement.contains(domSelection.anchorNode)) {
64
+ domSelection.removeAllRanges();
65
+ }
66
+ }
67
+ }, [editor, isEditable]);
68
+ var handleChange = (0, _react.useCallback)(function (state) {
69
+ state.read(function () {
70
+ var root = (0, _lexical.$getRoot)();
71
+ onChange({
72
+ text: root.getTextContent(),
73
+ editorState: state.toJSON()
74
+ });
75
+ });
76
+ }, [onChange]);
77
+ return /*#__PURE__*/_react["default"].createElement("div", {
78
+ className: "editor-inner"
79
+ }, /*#__PURE__*/_react["default"].createElement(_LexicalRichTextPlugin.RichTextPlugin, {
80
+ contentEditable: /*#__PURE__*/_react["default"].createElement(_LexicalContentEditable.ContentEditable, {
81
+ className: "editor-input"
82
+ }),
83
+ placeholder: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null),
84
+ ErrorBoundary: _LexicalErrorBoundary["default"]
85
+ }), /*#__PURE__*/_react["default"].createElement(_LexicalLinkPlugin.LinkPlugin, null), /*#__PURE__*/_react["default"].createElement(_clickableLinkPlugin["default"], {
86
+ newTab: true
87
+ }), /*#__PURE__*/_react["default"].createElement(_LexicalHistoryPlugin.HistoryPlugin, null), /*#__PURE__*/_react["default"].createElement(_LexicalOnChangePlugin.OnChangePlugin, {
88
+ onChange: handleChange,
89
+ ignoreSelectionChange: true
90
+ }), /*#__PURE__*/_react["default"].createElement(_floatingLinkEditor["default"], null));
91
+ };
92
+ var LexicalRichTextEditor = exports.LexicalRichTextEditor = function LexicalRichTextEditor(props) {
93
+ var width = props.width,
94
+ height = props.height,
95
+ isEditable = props.isEditable,
96
+ _editorState = props.editorState,
97
+ initialText = props.initialText,
98
+ children = props.children;
99
+ var initialConfig = (0, _react.useMemo)(function () {
100
+ return _objectSpread(_objectSpread({}, LEXICAL_EDITOR_CONFIG), {}, {
101
+ editable: isEditable,
102
+ editorState: function editorState(editor) {
103
+ if (_editorState) {
104
+ (0, _lexicalUtils.updateEditorState)(editor, _editorState);
105
+ } else if (initialText) {
106
+ (0, _lexical.$getRoot)().append((0, _lexical.$createParagraphNode)().append((0, _lexical.$createTextNode)(initialText)));
107
+ }
108
+ }
109
+ });
110
+ },
111
+ // Only use initial values
112
+ // eslint-disable-next-line react-hooks/exhaustive-deps
113
+ []);
114
+ return /*#__PURE__*/_react["default"].createElement(_LexicalComposer.LexicalComposer, {
115
+ initialConfig: initialConfig
116
+ }, /*#__PURE__*/_react["default"].createElement(Container, {
117
+ className: "editor-container",
118
+ $width: width,
119
+ $height: height
120
+ }, children, /*#__PURE__*/_react["default"].createElement(LexicalEditorInner, props)));
121
+ };
122
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfTGV4aWNhbENvbXBvc2VyIiwiX0xleGljYWxDb21wb3NlckNvbnRleHQiLCJfTGV4aWNhbENvbnRlbnRFZGl0YWJsZSIsIl9MZXhpY2FsRXJyb3JCb3VuZGFyeSIsIl9MZXhpY2FsSGlzdG9yeVBsdWdpbiIsIl9MZXhpY2FsTGlua1BsdWdpbiIsIl9MZXhpY2FsT25DaGFuZ2VQbHVnaW4iLCJfTGV4aWNhbFJpY2hUZXh0UGx1Z2luIiwiX2xleGljYWwiLCJfbGV4aWNhbE5vZGVzIiwiX2xleGljYWxUaGVtZSIsIl9sZXhpY2FsVXRpbHMiLCJfY2xpY2thYmxlTGlua1BsdWdpbiIsIl9mbG9hdGluZ0xpbmtFZGl0b3IiLCJfdGVtcGxhdGVPYmplY3QiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJMRVhJQ0FMX0VESVRPUl9DT05GSUciLCJuYW1lc3BhY2UiLCJ0aGVtZSIsIkxFWElDQUxfVEhFTUUiLCJub2RlcyIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJMZXhpY2FsTm9kZXMiLCJvbkVycm9yIiwiZXJyb3IiLCJDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwiJHdpZHRoIiwiY29uY2F0IiwiJGhlaWdodCIsIkxleGljYWxFZGl0b3JJbm5lciIsIl9yZWYiLCJpc0VkaXRhYmxlIiwib25DaGFuZ2UiLCJfdXNlTGV4aWNhbENvbXBvc2VyQ28iLCJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiX3VzZUxleGljYWxDb21wb3NlckNvMiIsIl9zbGljZWRUb0FycmF5MiIsImVkaXRvciIsInVzZUVmZmVjdCIsInNldEVkaXRhYmxlIiwicm9vdEVsZW1lbnQiLCJnZXRSb290RWxlbWVudCIsImNvbnRhaW5zIiwiZG9jdW1lbnQiLCJhY3RpdmVFbGVtZW50IiwiX2RvY3VtZW50JGFjdGl2ZUVsZW1lIiwiYmx1ciIsImRvbVNlbGVjdGlvbiIsIndpbmRvdyIsImdldFNlbGVjdGlvbiIsImFuY2hvck5vZGUiLCJyZW1vdmVBbGxSYW5nZXMiLCJoYW5kbGVDaGFuZ2UiLCJ1c2VDYWxsYmFjayIsInN0YXRlIiwicmVhZCIsInJvb3QiLCIkZ2V0Um9vdCIsInRleHQiLCJnZXRUZXh0Q29udGVudCIsImVkaXRvclN0YXRlIiwidG9KU09OIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsIlJpY2hUZXh0UGx1Z2luIiwiY29udGVudEVkaXRhYmxlIiwiQ29udGVudEVkaXRhYmxlIiwicGxhY2Vob2xkZXIiLCJGcmFnbWVudCIsIkVycm9yQm91bmRhcnkiLCJMZXhpY2FsRXJyb3JCb3VuZGFyeSIsIkxpbmtQbHVnaW4iLCJuZXdUYWIiLCJIaXN0b3J5UGx1Z2luIiwiT25DaGFuZ2VQbHVnaW4iLCJpZ25vcmVTZWxlY3Rpb25DaGFuZ2UiLCJMZXhpY2FsUmljaFRleHRFZGl0b3IiLCJleHBvcnRzIiwid2lkdGgiLCJoZWlnaHQiLCJpbml0aWFsVGV4dCIsImNoaWxkcmVuIiwiaW5pdGlhbENvbmZpZyIsInVzZU1lbW8iLCJlZGl0YWJsZSIsInVwZGF0ZUVkaXRvclN0YXRlIiwiYXBwZW5kIiwiJGNyZWF0ZVBhcmFncmFwaE5vZGUiLCIkY3JlYXRlVGV4dE5vZGUiLCJMZXhpY2FsQ29tcG9zZXIiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYW5ub3RhdGlvbnMvbGV4aWNhbC1lZGl0b3IvbGV4aWNhbC1yaWNoLXRleHQtZWRpdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtGQywgUmVhY3ROb2RlLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7TGV4aWNhbENvbXBvc2VyfSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsQ29tcG9zZXInO1xuaW1wb3J0IHt1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0fSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsQ29tcG9zZXJDb250ZXh0JztcbmltcG9ydCB7Q29udGVudEVkaXRhYmxlfSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsQ29udGVudEVkaXRhYmxlJztcbmltcG9ydCBMZXhpY2FsRXJyb3JCb3VuZGFyeSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQge0hpc3RvcnlQbHVnaW59IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxIaXN0b3J5UGx1Z2luJztcbmltcG9ydCB7TGlua1BsdWdpbn0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbExpbmtQbHVnaW4nO1xuaW1wb3J0IHtPbkNoYW5nZVBsdWdpbn0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbE9uQ2hhbmdlUGx1Z2luJztcbmltcG9ydCB7UmljaFRleHRQbHVnaW59IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxSaWNoVGV4dFBsdWdpbic7XG5pbXBvcnQge1xuICAkY3JlYXRlUGFyYWdyYXBoTm9kZSxcbiAgJGNyZWF0ZVRleHROb2RlLFxuICAkZ2V0Um9vdCxcbiAgRWRpdG9yU3RhdGUsXG4gIFNlcmlhbGl6ZWRFZGl0b3JTdGF0ZVxufSBmcm9tICdsZXhpY2FsJztcblxuaW1wb3J0IExleGljYWxOb2RlcyBmcm9tICcuL2xleGljYWwtbm9kZXMnO1xuaW1wb3J0IExFWElDQUxfVEhFTUUgZnJvbSAnLi9sZXhpY2FsLXRoZW1lJztcbmltcG9ydCB7dXBkYXRlRWRpdG9yU3RhdGV9IGZyb20gJy4vbGV4aWNhbC11dGlscyc7XG5pbXBvcnQgQ2xpY2thYmxlTGlua1BsdWdpbiBmcm9tICcuL2NsaWNrYWJsZS1saW5rLXBsdWdpbic7XG5pbXBvcnQgRmxvYXRpbmdMaW5rRWRpdG9yUGx1Z2luIGZyb20gJy4vZmxvYXRpbmctbGluay1lZGl0b3InO1xuXG5leHBvcnQgdHlwZSBMZXhpY2FsUmljaFRleHRFZGl0b3JQcm9wcyA9IHtcbiAgd2lkdGg/OiBudW1iZXI7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgZWRpdG9yU3RhdGU/OiBTZXJpYWxpemVkRWRpdG9yU3RhdGU7XG4gIGluaXRpYWxUZXh0Pzogc3RyaW5nO1xuICBpc0VkaXRhYmxlOiBib29sZWFuO1xuICBjaGlsZHJlbj86IFJlYWN0Tm9kZTtcbiAgb25DaGFuZ2U6IChjb25maWc6IHt0ZXh0OiBzdHJpbmc7IGVkaXRvclN0YXRlOiBTZXJpYWxpemVkRWRpdG9yU3RhdGV9KSA9PiB2b2lkO1xufTtcblxuY29uc3QgTEVYSUNBTF9FRElUT1JfQ09ORklHID0ge1xuICBuYW1lc3BhY2U6ICdhbm5vdGF0aW9uLWVkaXRvcicsXG4gIHRoZW1lOiBMRVhJQ0FMX1RIRU1FLFxuICBub2RlczogWy4uLkxleGljYWxOb2Rlc10sXG4gIG9uRXJyb3IoZXJyb3I6IEVycm9yKSB7XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbnR5cGUgQ29udGFpbmVyUHJvcHMgPSB7XG4gICR3aWR0aD86IG51bWJlcjtcbiAgJGhlaWdodD86IG51bWJlcjtcbn07XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXY8Q29udGFpbmVyUHJvcHM+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC5lZGl0b3ItaW5uZXIge1xuICAgICR7cHJvcHMgPT4gKHByb3BzLiR3aWR0aCA/IGB3aWR0aDogJHtwcm9wcy4kd2lkdGh9cHhgIDogJycpfTtcbiAgICAke3Byb3BzID0+IChwcm9wcy4kaGVpZ2h0ID8gYGhlaWdodDogJHtwcm9wcy4kaGVpZ2h0fXB4YCA6ICcnKX07XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuZWRpdG9yLWlucHV0IHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIH1cbiAgLmVkaXRvci1pbnB1dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICAubGV4aWNhbC1wYXJhZ3JhcGgge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG4gIC5sZXhpY2FsLXRleHQtYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLmxleGljYWwtdGV4dC1pdGFsaWMge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuICAubGV4aWNhbC10ZXh0LXVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLmxleGljYWwtdGV4dC1zdHJpa2V0aHJvdWdoIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgfVxuICAubGV4aWNhbC10ZXh0LXVuZGVybGluZS1zdHJpa2V0aHJvdWdoIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBsaW5lLXRocm91Z2g7XG4gIH1cbiAgLmxleGljYWwtbHRyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5sZXhpY2FsLXJ0bCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLmxleGljYWwtbGluayB7XG4gICAgY29sb3I6IHJnYigzMywgMTExLCAyMTkpO1xuICB9XG5gO1xuXG5jb25zdCBMZXhpY2FsRWRpdG9ySW5uZXI6IEZDPExleGljYWxSaWNoVGV4dEVkaXRvclByb3BzPiA9ICh7aXNFZGl0YWJsZSwgb25DaGFuZ2V9KSA9PiB7XG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZWRpdG9yLnNldEVkaXRhYmxlKGlzRWRpdGFibGUpO1xuICAgIGlmICghaXNFZGl0YWJsZSkge1xuICAgICAgY29uc3Qgcm9vdEVsZW1lbnQgPSBlZGl0b3IuZ2V0Um9vdEVsZW1lbnQoKTtcbiAgICAgIGlmIChyb290RWxlbWVudCAmJiByb290RWxlbWVudC5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSkge1xuICAgICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCk/LmJsdXIoKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGRvbVNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICAgIGlmIChkb21TZWxlY3Rpb24gJiYgcm9vdEVsZW1lbnQgJiYgcm9vdEVsZW1lbnQuY29udGFpbnMoZG9tU2VsZWN0aW9uLmFuY2hvck5vZGUpKSB7XG4gICAgICAgIGRvbVNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtlZGl0b3IsIGlzRWRpdGFibGVdKTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoc3RhdGU6IEVkaXRvclN0YXRlKSA9PiB7XG4gICAgICBzdGF0ZS5yZWFkKCgpID0+IHtcbiAgICAgICAgY29uc3Qgcm9vdCA9ICRnZXRSb290KCk7XG4gICAgICAgIG9uQ2hhbmdlKHt0ZXh0OiByb290LmdldFRleHRDb250ZW50KCksIGVkaXRvclN0YXRlOiBzdGF0ZS50b0pTT04oKX0pO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbb25DaGFuZ2VdXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImVkaXRvci1pbm5lclwiPlxuICAgICAgPFJpY2hUZXh0UGx1Z2luXG4gICAgICAgIGNvbnRlbnRFZGl0YWJsZT17PENvbnRlbnRFZGl0YWJsZSBjbGFzc05hbWU9XCJlZGl0b3ItaW5wdXRcIiAvPn1cbiAgICAgICAgcGxhY2Vob2xkZXI9ezw+PC8+fVxuICAgICAgICBFcnJvckJvdW5kYXJ5PXtMZXhpY2FsRXJyb3JCb3VuZGFyeX1cbiAgICAgIC8+XG4gICAgICA8TGlua1BsdWdpbiAvPlxuICAgICAgPENsaWNrYWJsZUxpbmtQbHVnaW4gbmV3VGFiPXt0cnVlfSAvPlxuICAgICAgPEhpc3RvcnlQbHVnaW4gLz5cbiAgICAgIDxPbkNoYW5nZVBsdWdpbiBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfSBpZ25vcmVTZWxlY3Rpb25DaGFuZ2U9e3RydWV9IC8+XG4gICAgICA8RmxvYXRpbmdMaW5rRWRpdG9yUGx1Z2luIC8+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgTGV4aWNhbFJpY2hUZXh0RWRpdG9yOiBGQzxMZXhpY2FsUmljaFRleHRFZGl0b3JQcm9wcz4gPSBwcm9wcyA9PiB7XG4gIGNvbnN0IHt3aWR0aCwgaGVpZ2h0LCBpc0VkaXRhYmxlLCBlZGl0b3JTdGF0ZSwgaW5pdGlhbFRleHQsIGNoaWxkcmVufSA9IHByb3BzO1xuXG4gIGNvbnN0IGluaXRpYWxDb25maWcgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICAuLi5MRVhJQ0FMX0VESVRPUl9DT05GSUcsXG4gICAgICBlZGl0YWJsZTogaXNFZGl0YWJsZSxcbiAgICAgIGVkaXRvclN0YXRlOiAoZWRpdG9yOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKGVkaXRvclN0YXRlKSB7XG4gICAgICAgICAgdXBkYXRlRWRpdG9yU3RhdGUoZWRpdG9yLCBlZGl0b3JTdGF0ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaW5pdGlhbFRleHQpIHtcbiAgICAgICAgICAkZ2V0Um9vdCgpLmFwcGVuZCgkY3JlYXRlUGFyYWdyYXBoTm9kZSgpLmFwcGVuZCgkY3JlYXRlVGV4dE5vZGUoaW5pdGlhbFRleHQpKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KSxcbiAgICAvLyBPbmx5IHVzZSBpbml0aWFsIHZhbHVlc1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICBbXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPExleGljYWxDb21wb3NlciBpbml0aWFsQ29uZmlnPXtpbml0aWFsQ29uZmlnfT5cbiAgICAgIDxDb250YWluZXIgY2xhc3NOYW1lPVwiZWRpdG9yLWNvbnRhaW5lclwiICR3aWR0aD17d2lkdGh9ICRoZWlnaHQ9e2hlaWdodH0+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPExleGljYWxFZGl0b3JJbm5lciB7Li4ucHJvcHN9IC8+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICA8L0xleGljYWxDb21wb3Nlcj5cbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxnQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksdUJBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLHVCQUFBLEdBQUFMLE9BQUE7QUFDQSxJ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
@@ -0,0 +1,15 @@
1
+ declare const LEXICAL_THEME: {
2
+ ltr: string;
3
+ rtl: string;
4
+ paragraph: string;
5
+ link: string;
6
+ text: {
7
+ bold: string;
8
+ italic: string;
9
+ underline: string;
10
+ strikethrough: string;
11
+ underlineStrikethrough: string;
12
+ code: string;
13
+ };
14
+ };
15
+ export default LEXICAL_THEME;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ // SPDX-License-Identifier: MIT
8
+ // Copyright contributors to the kepler.gl project
9
+
10
+ var LEXICAL_THEME = {
11
+ ltr: 'lexical-ltr',
12
+ rtl: 'lexical-rtl',
13
+ paragraph: 'lexical-paragraph',
14
+ link: 'lexical-link',
15
+ text: {
16
+ bold: 'lexical-text-bold',
17
+ italic: 'lexical-text-italic',
18
+ underline: 'lexical-text-underline',
19
+ strikethrough: 'lexical-text-strikethrough',
20
+ underlineStrikethrough: 'lexical-text-underline-strikethrough',
21
+ code: 'lexical-text-code'
22
+ }
23
+ };
24
+ var _default = exports["default"] = LEXICAL_THEME;
25
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMRVhJQ0FMX1RIRU1FIiwibHRyIiwicnRsIiwicGFyYWdyYXBoIiwibGluayIsInRleHQiLCJib2xkIiwiaXRhbGljIiwidW5kZXJsaW5lIiwic3RyaWtldGhyb3VnaCIsInVuZGVybGluZVN0cmlrZXRocm91Z2giLCJjb2RlIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fubm90YXRpb25zL2xleGljYWwtZWRpdG9yL2xleGljYWwtdGhlbWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuY29uc3QgTEVYSUNBTF9USEVNRSA9IHtcbiAgbHRyOiAnbGV4aWNhbC1sdHInLFxuICBydGw6ICdsZXhpY2FsLXJ0bCcsXG4gIHBhcmFncmFwaDogJ2xleGljYWwtcGFyYWdyYXBoJyxcbiAgbGluazogJ2xleGljYWwtbGluaycsXG4gIHRleHQ6IHtcbiAgICBib2xkOiAnbGV4aWNhbC10ZXh0LWJvbGQnLFxuICAgIGl0YWxpYzogJ2xleGljYWwtdGV4dC1pdGFsaWMnLFxuICAgIHVuZGVybGluZTogJ2xleGljYWwtdGV4dC11bmRlcmxpbmUnLFxuICAgIHN0cmlrZXRocm91Z2g6ICdsZXhpY2FsLXRleHQtc3RyaWtldGhyb3VnaCcsXG4gICAgdW5kZXJsaW5lU3RyaWtldGhyb3VnaDogJ2xleGljYWwtdGV4dC11bmRlcmxpbmUtc3RyaWtldGhyb3VnaCcsXG4gICAgY29kZTogJ2xleGljYWwtdGV4dC1jb2RlJ1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBMRVhJQ0FMX1RIRU1FO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBOztBQUVBLElBQU1BLGFBQWEsR0FBRztFQUNwQkMsR0FBRyxFQUFFLGFBQWE7RUFDbEJDLEdBQUcsRUFBRSxhQUFhO0VBQ2xCQyxTQUFTLEVBQUUsbUJBQW1CO0VBQzlCQyxJQUFJLEVBQUUsY0FBYztFQUNwQkMsSUFBSSxFQUFFO0lBQ0pDLElBQUksRUFBRSxtQkFBbUI7SUFDekJDLE1BQU0sRUFBRSxxQkFBcUI7SUFDN0JDLFNBQVMsRUFBRSx3QkFBd0I7SUFDbkNDLGFBQWEsRUFBRSw0QkFBNEI7SUFDM0NDLHNCQUFzQixFQUFFLHNDQUFzQztJQUM5REMsSUFBSSxFQUFFO0VBQ1I7QUFDRixDQUFDO0FBQUMsSUFBQUMsUUFBQSxHQUFBQyxPQUFBLGNBRWFiLGFBQWEiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ export type LexicalToolbarProps = {
3
+ isEditingText?: boolean;
4
+ textVerticalAlign?: 'top' | 'bottom' | 'middle';
5
+ onChangeTextVerticalAlign?: (value: 'top' | 'bottom' | 'middle') => void;
6
+ };
7
+ export declare const LexicalToolbar: FC<LexicalToolbarProps>;