tinacms 0.0.0-c72bb45-20241118014035 → 0.0.0-c852462-20250131014229

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.
package/dist/index.mjs CHANGED
@@ -6,8 +6,8 @@ var __publicField = (obj, key, value) => {
6
6
  };
7
7
  import { z } from "zod";
8
8
  import * as React from "react";
9
- import React__default, { useState, useCallback, useEffect, useRef, createContext, forwardRef, useContext, useMemo, startTransition, createElement, Component } from "react";
10
- import { createPortal, findDOMNode } from "react-dom";
9
+ import React__default, { useState, useCallback, useEffect, useRef, createContext, forwardRef, useContext, useMemo, startTransition } from "react";
10
+ import { createPortal } from "react-dom";
11
11
  import { withRef, cn as cn$1, withVariants, withProps, withCn, createPrimitiveElement } from "@udecode/cn";
12
12
  import { toggleList, ELEMENT_UL, ELEMENT_OL, ELEMENT_H1 as ELEMENT_H1$1, ELEMENT_H2 as ELEMENT_H2$1, ELEMENT_H3 as ELEMENT_H3$1, ELEMENT_H4, ELEMENT_H5, ELEMENT_H6, ELEMENT_PARAGRAPH, ELEMENT_BLOCKQUOTE, ELEMENT_CODE_BLOCK, ELEMENT_CODE_LINE, ELEMENT_CODE_SYNTAX, ELEMENT_LI, ELEMENT_LINK, MARK_CODE, MARK_UNDERLINE, MARK_STRIKETHROUGH, MARK_ITALIC, MARK_BOLD, ELEMENT_HR, ELEMENT_TABLE, ELEMENT_TR, ELEMENT_TD, ELEMENT_TH, unwrapList, ELEMENT_TODO_LI, createTrailingBlockPlugin, createAutoformatPlugin, createExitBreakPlugin, KEYS_HEADING, createResetNodePlugin, createHeadingPlugin, createParagraphPlugin, createBlockquotePlugin, createBoldPlugin, createItalicPlugin, createUnderlinePlugin, createCodePlugin, createListPlugin, createIndentListPlugin, createHorizontalRulePlugin, createNodeIdPlugin, createTablePlugin, getListItemEntry, useListToolbarButtonState, useListToolbarButton } from "@udecode/plate";
13
13
  import { PlateElement, isCollapsed, findNodePath, getPointAfter, insertNodes, ELEMENT_DEFAULT, focusEditor, getPointBefore, setNodes, isElement, PlateLeaf, createPluginFactory, useComposedRef, useEditorRef, createPointRef, insertText, moveSelection, toggleNodeType, useElement, useRemoveNodeButton, useEditorSelector, isSelectionExpanded, withHOC, normalizeEditor, getBlockAbove, queryNode, getParentNode, isType, someNode, isSelectionAtBlockStart, setElements, insertNode, getPluginType, isBlock, isBlockAboveEmpty, findNode, PlateContent, getNodeEntries, useEditorState, collapseSelection, useMarkToolbarButtonState, useMarkToolbarButton, insertEmptyElement, usePlateSelectors, useEventEditorSelectors, PortalBody, useFormInputProps, createPlugins, Plate } from "@udecode/plate-common";
@@ -889,13 +889,23 @@ const FieldDescription = ({
889
889
  className,
890
890
  ...props
891
891
  }) => {
892
+ if (typeof children === "string") {
893
+ return /* @__PURE__ */ React.createElement(
894
+ "span",
895
+ {
896
+ className: `block font-sans text-xs italic font-light text-gray-400 pt-0.5 whitespace-normal m-0 ${className}`,
897
+ ...props,
898
+ dangerouslySetInnerHTML: { __html: children }
899
+ }
900
+ );
901
+ }
892
902
  return /* @__PURE__ */ React.createElement(
893
903
  "span",
894
904
  {
895
905
  className: `block font-sans text-xs italic font-light text-gray-400 pt-0.5 whitespace-normal m-0 ${className}`,
896
- ...props,
897
- dangerouslySetInnerHTML: { __html: children }
898
- }
906
+ ...props
907
+ },
908
+ children
899
909
  );
900
910
  };
901
911
  const FieldError = ({
@@ -1348,8 +1358,8 @@ const ListElementVariants = withVariants(PlateElement, listVariants, [
1348
1358
  ]);
1349
1359
  const ListElement = withRef(
1350
1360
  ({ children, variant = "ul", ...props }, ref) => {
1351
- const Component2 = variant;
1352
- return /* @__PURE__ */ React__default.createElement(ListElementVariants, { asChild: true, ref, variant, ...props }, /* @__PURE__ */ React__default.createElement(Component2, null, children));
1361
+ const Component = variant;
1362
+ return /* @__PURE__ */ React__default.createElement(ListElementVariants, { asChild: true, ref, variant, ...props }, /* @__PURE__ */ React__default.createElement(Component, null, children));
1353
1363
  }
1354
1364
  );
1355
1365
  const ELEMENT_MERMAID = "mermaid";
@@ -3669,7 +3679,7 @@ function TinaForm({ form, children }) {
3669
3679
  }));
3670
3680
  }
3671
3681
  function TinaField({
3672
- Component: Component2,
3682
+ Component,
3673
3683
  children,
3674
3684
  ...fieldProps
3675
3685
  }) {
@@ -3677,7 +3687,7 @@ function TinaField({
3677
3687
  if (!isEditing)
3678
3688
  return children || null;
3679
3689
  return /* @__PURE__ */ React.createElement(Field, { ...fieldProps }, ({ input, meta }) => {
3680
- return /* @__PURE__ */ React.createElement(Component2, { input, meta, ...fieldProps });
3690
+ return /* @__PURE__ */ React.createElement(Component, { input, meta, ...fieldProps });
3681
3691
  });
3682
3692
  }
3683
3693
  TinaField.propTypes = {
@@ -3847,7 +3857,7 @@ var _excluded = ["attr", "size", "title"];
3847
3857
  function _objectWithoutProperties(source, excluded) {
3848
3858
  if (source == null)
3849
3859
  return {};
3850
- var target = _objectWithoutPropertiesLoose$1(source, excluded);
3860
+ var target = _objectWithoutPropertiesLoose(source, excluded);
3851
3861
  var key, i;
3852
3862
  if (Object.getOwnPropertySymbols) {
3853
3863
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
@@ -3862,7 +3872,7 @@ function _objectWithoutProperties(source, excluded) {
3862
3872
  }
3863
3873
  return target;
3864
3874
  }
3865
- function _objectWithoutPropertiesLoose$1(source, excluded) {
3875
+ function _objectWithoutPropertiesLoose(source, excluded) {
3866
3876
  if (source == null)
3867
3877
  return {};
3868
3878
  var target = {};
@@ -4952,7 +4962,28 @@ const NumberInput = ({
4952
4962
  onChange,
4953
4963
  value,
4954
4964
  step
4955
- }) => /* @__PURE__ */ React.createElement(Input, { type: "number", step, value, onChange });
4965
+ }) => /* @__PURE__ */ React.createElement(
4966
+ Input,
4967
+ {
4968
+ type: "number",
4969
+ step,
4970
+ value,
4971
+ onChange: (event) => {
4972
+ const inputValue = event.target.value;
4973
+ const newValue = inputValue === "" ? void 0 : inputValue;
4974
+ if (onChange) {
4975
+ const syntheticEvent = {
4976
+ ...event,
4977
+ target: {
4978
+ ...event.target,
4979
+ value: newValue
4980
+ }
4981
+ };
4982
+ onChange(syntheticEvent);
4983
+ }
4984
+ }
4985
+ }
4986
+ );
4956
4987
  function useCMS() {
4957
4988
  return useCMS$1();
4958
4989
  }
@@ -7205,244 +7236,65 @@ function pad(type, value) {
7205
7236
  str = "0" + str;
7206
7237
  return str;
7207
7238
  }
7208
- function _inheritsLoose(subClass, superClass) {
7209
- subClass.prototype = Object.create(superClass.prototype);
7210
- subClass.prototype.constructor = subClass;
7211
- _setPrototypeOf(subClass, superClass);
7212
- }
7213
- function _setPrototypeOf(o, p) {
7214
- _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf2(o2, p2) {
7215
- o2.__proto__ = p2;
7216
- return o2;
7217
- };
7218
- return _setPrototypeOf(o, p);
7219
- }
7220
- function _objectWithoutPropertiesLoose(source, excluded) {
7221
- if (source == null)
7222
- return {};
7223
- var target = {};
7224
- var sourceKeys = Object.keys(source);
7225
- var key, i;
7226
- for (i = 0; i < sourceKeys.length; i++) {
7227
- key = sourceKeys[i];
7228
- if (excluded.indexOf(key) >= 0)
7229
- continue;
7230
- target[key] = source[key];
7231
- }
7232
- return target;
7233
- }
7234
- function _assertThisInitialized(self) {
7235
- if (self === void 0) {
7236
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
7237
- }
7238
- return self;
7239
- }
7240
- function isNodeFound(current, componentNode, ignoreClass) {
7241
- if (current === componentNode) {
7242
- return true;
7243
- }
7244
- if (current.correspondingElement) {
7245
- return current.correspondingElement.classList.contains(ignoreClass);
7246
- }
7247
- return current.classList.contains(ignoreClass);
7248
- }
7249
- function findHighest(current, componentNode, ignoreClass) {
7250
- if (current === componentNode) {
7251
- return true;
7239
+ var useClickAway$1 = {};
7240
+ var util = {};
7241
+ Object.defineProperty(util, "__esModule", { value: true });
7242
+ util.isNavigator = util.isBrowser = util.off = util.on = util.noop = void 0;
7243
+ var noop = function() {
7244
+ };
7245
+ util.noop = noop;
7246
+ function on(obj) {
7247
+ var args = [];
7248
+ for (var _i = 1; _i < arguments.length; _i++) {
7249
+ args[_i - 1] = arguments[_i];
7252
7250
  }
7253
- while (current.parentNode || current.host) {
7254
- if (current.parentNode && isNodeFound(current, componentNode, ignoreClass)) {
7255
- return true;
7256
- }
7257
- current = current.parentNode || current.host;
7251
+ if (obj && obj.addEventListener) {
7252
+ obj.addEventListener.apply(obj, args);
7258
7253
  }
7259
- return current;
7260
- }
7261
- function clickedScrollbar(evt) {
7262
- return document.documentElement.clientWidth <= evt.clientX || document.documentElement.clientHeight <= evt.clientY;
7263
7254
  }
7264
- var testPassiveEventSupport = function testPassiveEventSupport2() {
7265
- if (typeof window === "undefined" || typeof window.addEventListener !== "function") {
7266
- return;
7255
+ util.on = on;
7256
+ function off(obj) {
7257
+ var args = [];
7258
+ for (var _i = 1; _i < arguments.length; _i++) {
7259
+ args[_i - 1] = arguments[_i];
7267
7260
  }
7268
- var passive = false;
7269
- var options = Object.defineProperty({}, "passive", {
7270
- get: function get2() {
7271
- passive = true;
7272
- }
7273
- });
7274
- var noop = function noop2() {
7275
- };
7276
- window.addEventListener("testPassiveEventSupport", noop, options);
7277
- window.removeEventListener("testPassiveEventSupport", noop, options);
7278
- return passive;
7279
- };
7280
- function autoInc(seed) {
7281
- if (seed === void 0) {
7282
- seed = 0;
7261
+ if (obj && obj.removeEventListener) {
7262
+ obj.removeEventListener.apply(obj, args);
7283
7263
  }
7284
- return function() {
7285
- return ++seed;
7286
- };
7287
7264
  }
7288
- var uid = autoInc();
7289
- var passiveEventSupport;
7290
- var handlersMap = {};
7291
- var enabledInstances = {};
7292
- var touchEvents = ["touchstart", "touchmove"];
7293
- var IGNORE_CLASS_NAME = "ignore-react-onclickoutside";
7294
- function getEventHandlerOptions(instance, eventName) {
7295
- var handlerOptions = {};
7296
- var isTouchEvent = touchEvents.indexOf(eventName) !== -1;
7297
- if (isTouchEvent && passiveEventSupport) {
7298
- handlerOptions.passive = !instance.props.preventDefault;
7299
- }
7300
- return handlerOptions;
7301
- }
7302
- function onClickOutsideHOC(WrappedComponent, config) {
7303
- var _class, _temp;
7304
- var componentName = WrappedComponent.displayName || WrappedComponent.name || "Component";
7305
- return _temp = _class = /* @__PURE__ */ function(_Component) {
7306
- _inheritsLoose(onClickOutside, _Component);
7307
- function onClickOutside(props) {
7308
- var _this;
7309
- _this = _Component.call(this, props) || this;
7310
- _this.__outsideClickHandler = function(event) {
7311
- if (typeof _this.__clickOutsideHandlerProp === "function") {
7312
- _this.__clickOutsideHandlerProp(event);
7313
- return;
7314
- }
7315
- var instance = _this.getInstance();
7316
- if (typeof instance.props.handleClickOutside === "function") {
7317
- instance.props.handleClickOutside(event);
7318
- return;
7319
- }
7320
- if (typeof instance.handleClickOutside === "function") {
7321
- instance.handleClickOutside(event);
7322
- return;
7323
- }
7324
- throw new Error("WrappedComponent: " + componentName + " lacks a handleClickOutside(event) function for processing outside click events.");
7325
- };
7326
- _this.__getComponentNode = function() {
7327
- var instance = _this.getInstance();
7328
- if (config && typeof config.setClickOutsideRef === "function") {
7329
- return config.setClickOutsideRef()(instance);
7330
- }
7331
- if (typeof instance.setClickOutsideRef === "function") {
7332
- return instance.setClickOutsideRef();
7333
- }
7334
- return findDOMNode(instance);
7335
- };
7336
- _this.enableOnClickOutside = function() {
7337
- if (typeof document === "undefined" || enabledInstances[_this._uid]) {
7338
- return;
7339
- }
7340
- if (typeof passiveEventSupport === "undefined") {
7341
- passiveEventSupport = testPassiveEventSupport();
7342
- }
7343
- enabledInstances[_this._uid] = true;
7344
- var events = _this.props.eventTypes;
7345
- if (!events.forEach) {
7346
- events = [events];
7347
- }
7348
- handlersMap[_this._uid] = function(event) {
7349
- if (_this.componentNode === null)
7350
- return;
7351
- if (_this.initTimeStamp > event.timeStamp)
7352
- return;
7353
- if (_this.props.preventDefault) {
7354
- event.preventDefault();
7355
- }
7356
- if (_this.props.stopPropagation) {
7357
- event.stopPropagation();
7358
- }
7359
- if (_this.props.excludeScrollbar && clickedScrollbar(event))
7360
- return;
7361
- var current = event.composed && event.composedPath && event.composedPath().shift() || event.target;
7362
- if (findHighest(current, _this.componentNode, _this.props.outsideClickIgnoreClass) !== document) {
7363
- return;
7364
- }
7365
- _this.__outsideClickHandler(event);
7366
- };
7367
- events.forEach(function(eventName) {
7368
- document.addEventListener(eventName, handlersMap[_this._uid], getEventHandlerOptions(_assertThisInitialized(_this), eventName));
7369
- });
7370
- };
7371
- _this.disableOnClickOutside = function() {
7372
- delete enabledInstances[_this._uid];
7373
- var fn = handlersMap[_this._uid];
7374
- if (fn && typeof document !== "undefined") {
7375
- var events = _this.props.eventTypes;
7376
- if (!events.forEach) {
7377
- events = [events];
7378
- }
7379
- events.forEach(function(eventName) {
7380
- return document.removeEventListener(eventName, fn, getEventHandlerOptions(_assertThisInitialized(_this), eventName));
7381
- });
7382
- delete handlersMap[_this._uid];
7383
- }
7384
- };
7385
- _this.getRef = function(ref) {
7386
- return _this.instanceRef = ref;
7387
- };
7388
- _this._uid = uid();
7389
- _this.initTimeStamp = performance.now();
7390
- return _this;
7391
- }
7392
- var _proto = onClickOutside.prototype;
7393
- _proto.getInstance = function getInstance() {
7394
- if (WrappedComponent.prototype && !WrappedComponent.prototype.isReactComponent) {
7395
- return this;
7396
- }
7397
- var ref = this.instanceRef;
7398
- return ref.getInstance ? ref.getInstance() : ref;
7399
- };
7400
- _proto.componentDidMount = function componentDidMount() {
7401
- if (typeof document === "undefined" || !document.createElement) {
7402
- return;
7403
- }
7404
- var instance = this.getInstance();
7405
- if (config && typeof config.handleClickOutside === "function") {
7406
- this.__clickOutsideHandlerProp = config.handleClickOutside(instance);
7407
- if (typeof this.__clickOutsideHandlerProp !== "function") {
7408
- throw new Error("WrappedComponent: " + componentName + " lacks a function for processing outside click events specified by the handleClickOutside config option.");
7409
- }
7410
- }
7411
- this.componentNode = this.__getComponentNode();
7412
- if (this.props.disableOnClickOutside)
7413
- return;
7414
- this.enableOnClickOutside();
7265
+ util.off = off;
7266
+ util.isBrowser = typeof window !== "undefined";
7267
+ util.isNavigator = typeof navigator !== "undefined";
7268
+ Object.defineProperty(useClickAway$1, "__esModule", { value: true });
7269
+ var react_1 = React__default;
7270
+ var util_1 = util;
7271
+ var defaultEvents = ["mousedown", "touchstart"];
7272
+ var useClickAway = function(ref, onClickAway, events) {
7273
+ if (events === void 0) {
7274
+ events = defaultEvents;
7275
+ }
7276
+ var savedCallback = react_1.useRef(onClickAway);
7277
+ react_1.useEffect(function() {
7278
+ savedCallback.current = onClickAway;
7279
+ }, [onClickAway]);
7280
+ react_1.useEffect(function() {
7281
+ var handler = function(event) {
7282
+ var el = ref.current;
7283
+ el && !el.contains(event.target) && savedCallback.current(event);
7415
7284
  };
7416
- _proto.componentDidUpdate = function componentDidUpdate() {
7417
- this.componentNode = this.__getComponentNode();
7418
- };
7419
- _proto.componentWillUnmount = function componentWillUnmount() {
7420
- this.disableOnClickOutside();
7421
- };
7422
- _proto.render = function render() {
7423
- var _this$props = this.props;
7424
- _this$props.excludeScrollbar;
7425
- var props = _objectWithoutPropertiesLoose(_this$props, ["excludeScrollbar"]);
7426
- if (WrappedComponent.prototype && WrappedComponent.prototype.isReactComponent) {
7427
- props.ref = this.getRef;
7428
- } else {
7429
- props.wrappedRef = this.getRef;
7285
+ for (var _i = 0, events_1 = events; _i < events_1.length; _i++) {
7286
+ var eventName = events_1[_i];
7287
+ util_1.on(document, eventName, handler);
7288
+ }
7289
+ return function() {
7290
+ for (var _i2 = 0, events_2 = events; _i2 < events_2.length; _i2++) {
7291
+ var eventName2 = events_2[_i2];
7292
+ util_1.off(document, eventName2, handler);
7430
7293
  }
7431
- props.disableOnClickOutside = this.disableOnClickOutside;
7432
- props.enableOnClickOutside = this.enableOnClickOutside;
7433
- return createElement(WrappedComponent, props);
7434
7294
  };
7435
- return onClickOutside;
7436
- }(Component), _class.displayName = "OnClickOutside(" + componentName + ")", _class.defaultProps = {
7437
- eventTypes: ["mousedown", "touchstart"],
7438
- excludeScrollbar: config && config.excludeScrollbar || false,
7439
- outsideClickIgnoreClass: IGNORE_CLASS_NAME,
7440
- preventDefault: false,
7441
- stopPropagation: false
7442
- }, _class.getClass = function() {
7443
- return WrappedComponent.getClass ? WrappedComponent.getClass() : WrappedComponent;
7444
- }, _temp;
7445
- }
7295
+ }, [events, ref]);
7296
+ };
7297
+ var _default = useClickAway$1.default = useClickAway;
7446
7298
  const viewModes = {
7447
7299
  YEARS: "years",
7448
7300
  MONTHS: "months",
@@ -7971,22 +7823,13 @@ function log(message, method) {
7971
7823
  }
7972
7824
  con[method]("***react-datetime:" + message);
7973
7825
  }
7974
- class ClickOutBase extends React__default.Component {
7975
- constructor() {
7976
- super(...arguments);
7977
- __publicField(this, "container", React__default.createRef());
7978
- }
7979
- render() {
7980
- return /* @__PURE__ */ React__default.createElement("div", { className: this.props.className, ref: this.container }, this.props.children);
7981
- }
7982
- handleClickOutside(e) {
7983
- this.props.onClickOut(e);
7984
- }
7985
- setClickOutsideRef() {
7986
- return this.container.current;
7987
- }
7826
+ function ClickableWrapper({ className, onClickOut, children }) {
7827
+ const containerRef = useRef(null);
7828
+ _default(containerRef, (event) => {
7829
+ onClickOut(event);
7830
+ });
7831
+ return /* @__PURE__ */ React__default.createElement("div", { className, ref: containerRef }, children);
7988
7832
  }
7989
- const ClickableWrapper = onClickOutsideHOC(ClickOutBase);
7990
7833
  const DEFAULT_DATE_DISPLAY_FORMAT = "MMM DD, YYYY";
7991
7834
  const DEFAULT_TIME_DISPLAY_FORMAT = "h:mm A";
7992
7835
  const format$1 = (val, _name, field) => {
@@ -8029,7 +7872,10 @@ const DateField = wrapFieldsWithMeta(
8029
7872
  ReactDateTimeWithStyles,
8030
7873
  {
8031
7874
  value: input.value,
8032
- onChange: input.onChange,
7875
+ onChange: (value) => {
7876
+ const newValue = value === "" ? void 0 : value;
7877
+ input.onChange(newValue);
7878
+ },
8033
7879
  dateFormat: dateFormat || DEFAULT_DATE_DISPLAY_FORMAT,
8034
7880
  timeFormat: timeFormat || false,
8035
7881
  inputProps: { className: textFieldClasses },
@@ -9481,6 +9327,20 @@ class TinaMediaStore {
9481
9327
  }
9482
9328
  }
9483
9329
  }
9330
+ const encodeUrlIfNeeded = (url) => {
9331
+ if (url) {
9332
+ try {
9333
+ const parsed = new URL(url);
9334
+ parsed.pathname = parsed.pathname.split("/").filter((part) => part !== "").map(encodeURIComponent).join("/");
9335
+ return parsed.toString();
9336
+ } catch (e) {
9337
+ console.error("Failed to parse URL:", e);
9338
+ return url;
9339
+ }
9340
+ } else {
9341
+ return url;
9342
+ }
9343
+ };
9484
9344
  let MediaManager$1 = class MediaManager {
9485
9345
  constructor(store, events) {
9486
9346
  this.store = store;
@@ -9553,6 +9413,20 @@ let MediaManager$1 = class MediaManager {
9553
9413
  try {
9554
9414
  this.events.dispatch({ type: "media:list:start", ...options });
9555
9415
  const media = await this.store.list(options);
9416
+ media.items = media.items.map((item) => {
9417
+ if (item.type === "dir") {
9418
+ return item;
9419
+ }
9420
+ if (item.thumbnails) {
9421
+ for (const [size, src] of Object.entries(item.thumbnails)) {
9422
+ item.thumbnails[size] = encodeUrlIfNeeded(src);
9423
+ }
9424
+ }
9425
+ return {
9426
+ ...item,
9427
+ src: encodeUrlIfNeeded(item.src)
9428
+ };
9429
+ });
9556
9430
  this.events.dispatch({ type: "media:list:success", ...options, media });
9557
9431
  return media;
9558
9432
  } catch (error) {
@@ -9840,7 +9714,7 @@ class SidebarState {
9840
9714
  }
9841
9715
  }
9842
9716
  function createScreen({
9843
- Component: Component2,
9717
+ Component,
9844
9718
  props,
9845
9719
  ...options
9846
9720
  }) {
@@ -9849,7 +9723,7 @@ function createScreen({
9849
9723
  layout: "popup",
9850
9724
  ...options,
9851
9725
  Component(screenProps) {
9852
- return /* @__PURE__ */ React__default.createElement(Component2, { ...screenProps, ...props });
9726
+ return /* @__PURE__ */ React__default.createElement(Component, { ...screenProps, ...props });
9853
9727
  }
9854
9728
  };
9855
9729
  }
@@ -10360,7 +10234,7 @@ const SyncStatus = ({ cms, setEventsOpen }) => {
10360
10234
  "Event Log"
10361
10235
  ));
10362
10236
  };
10363
- const version = "2.4.0";
10237
+ const version = "2.6.2";
10364
10238
  const Nav = ({
10365
10239
  isLocalMode,
10366
10240
  className = "",
@@ -13289,9 +13163,9 @@ const EllipsisIcon = ({ title }) => {
13289
13163
  ));
13290
13164
  };
13291
13165
  const Wrapper$1 = ({ inline, children }) => {
13292
- const Component2 = inline ? "span" : "div";
13166
+ const Component = inline ? "span" : "div";
13293
13167
  return /* @__PURE__ */ React__default.createElement(
13294
- Component2,
13168
+ Component,
13295
13169
  {
13296
13170
  contentEditable: false,
13297
13171
  style: { userSelect: "none" },
@@ -14079,13 +13953,13 @@ const TooltipContent = withCn(
14079
13953
  }),
14080
13954
  "z-[9999] overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md"
14081
13955
  );
14082
- function withTooltip(Component2) {
13956
+ function withTooltip(Component) {
14083
13957
  return React__default.forwardRef(function ExtendComponent({ tooltip, tooltipContentProps, tooltipProps, ...props }, ref) {
14084
13958
  const [mounted, setMounted] = React__default.useState(false);
14085
13959
  React__default.useEffect(() => {
14086
13960
  setMounted(true);
14087
13961
  }, []);
14088
- const component = /* @__PURE__ */ React__default.createElement(Component2, { ref, ...props });
13962
+ const component = /* @__PURE__ */ React__default.createElement(Component, { ref, ...props });
14089
13963
  if (tooltip && mounted) {
14090
13964
  return /* @__PURE__ */ React__default.createElement(Tooltip, { ...tooltipProps }, /* @__PURE__ */ React__default.createElement(TooltipTrigger, { asChild: true }, component), /* @__PURE__ */ React__default.createElement(TooltipPortal, null, /* @__PURE__ */ React__default.createElement(TooltipContent, { ...tooltipContentProps }, tooltip)));
14091
13965
  }
@@ -14680,7 +14554,7 @@ const EmbedButton = ({ editor, templates }) => {
14680
14554
  key: template.name,
14681
14555
  onMouseDown: (e) => {
14682
14556
  e.preventDefault();
14683
- close();
14557
+ setOpen(false);
14684
14558
  insertMDX(editor, template);
14685
14559
  },
14686
14560
  className: ""
@@ -14766,7 +14640,12 @@ function FixedToolbarButtons() {
14766
14640
  const [itemsShown, setItemsShown] = React__default.useState(11);
14767
14641
  const { overrides, templates } = useToolbarContext();
14768
14642
  const showEmbedButton = templates.length > 0;
14769
- let items2 = overrides === void 0 ? Object.values(toolbarItems) : overrides.map((item) => toolbarItems[item]).filter((item) => item !== void 0);
14643
+ let items2 = [];
14644
+ if (Array.isArray(overrides)) {
14645
+ items2 = overrides === void 0 ? Object.values(toolbarItems) : overrides.map((item) => toolbarItems[item]).filter((item) => item !== void 0);
14646
+ } else {
14647
+ items2 = (overrides == null ? void 0 : overrides.toolbar) === void 0 ? Object.values(toolbarItems) : overrides.toolbar.map((item) => toolbarItems[item]).filter((item) => item !== void 0);
14648
+ }
14770
14649
  if (!showEmbedButton) {
14771
14650
  items2 = items2.filter((item) => item.label !== toolbarItems.embed.label);
14772
14651
  }
@@ -15094,6 +14973,9 @@ const isUrl = (string) => {
15094
14973
  if (typeof string !== "string") {
15095
14974
  return false;
15096
14975
  }
14976
+ if (string.startsWith("#")) {
14977
+ return true;
14978
+ }
15097
14979
  const generalMatch = string.match(protocolAndDomainRE);
15098
14980
  const emailLinkMatch = string.match(emailLintRE);
15099
14981
  const localUrlMatch = string.match(localUrlRE);
@@ -15115,12 +14997,12 @@ const isUrl = (string) => {
15115
14997
  }
15116
14998
  return localhostDomainRE.test(everythingAfterProtocol) || nonLocalhostDomainRE.test(everythingAfterProtocol);
15117
14999
  };
15118
- const RichEditor = (props) => {
15000
+ const RichEditor = ({ input, tinaForm, field }) => {
15119
15001
  var _a;
15120
15002
  const initialValue = React__default.useMemo(
15121
15003
  () => {
15122
15004
  var _a2, _b;
15123
- return ((_b = (_a2 = props.input.value) == null ? void 0 : _a2.children) == null ? void 0 : _b.length) ? props.input.value.children.map(helpers.normalize) : [{ type: "p", children: [{ type: "text", text: "" }] }];
15005
+ return ((_b = (_a2 = input.value) == null ? void 0 : _a2.children) == null ? void 0 : _b.length) ? input.value.children.map(helpers.normalize) : [{ type: "p", children: [{ type: "text", text: "" }] }];
15124
15006
  },
15125
15007
  []
15126
15008
  );
@@ -15148,7 +15030,7 @@ const RichEditor = (props) => {
15148
15030
  ),
15149
15031
  []
15150
15032
  );
15151
- const tempId = [props.tinaForm.id, props.input.name].join(".");
15033
+ const tempId = [tinaForm.id, input.name].join(".");
15152
15034
  const id = React__default.useMemo(() => uuid() + tempId, [tempId]);
15153
15035
  const ref = React__default.useRef(null);
15154
15036
  React__default.useEffect(() => {
@@ -15158,13 +15040,13 @@ const RichEditor = (props) => {
15158
15040
  const plateElement = (_a2 = ref.current) == null ? void 0 : _a2.querySelector(
15159
15041
  '[role="textbox"]'
15160
15042
  );
15161
- if (props.field.experimental_focusIntent && plateElement) {
15043
+ if (field.experimental_focusIntent && plateElement) {
15162
15044
  if (plateElement)
15163
15045
  plateElement.focus();
15164
15046
  }
15165
15047
  }, 100);
15166
15048
  }
15167
- }, [props.field.experimental_focusIntent, ref]);
15049
+ }, [field.experimental_focusIntent, ref]);
15168
15050
  return /* @__PURE__ */ React__default.createElement("div", { ref }, /* @__PURE__ */ React__default.createElement(
15169
15051
  Plate,
15170
15052
  {
@@ -15172,21 +15054,22 @@ const RichEditor = (props) => {
15172
15054
  initialValue,
15173
15055
  plugins: plugins$2,
15174
15056
  onChange: (value) => {
15175
- props.input.onChange({
15057
+ input.onChange({
15176
15058
  type: "root",
15177
- children: value
15059
+ children: value,
15060
+ embedCode: input.value.embedCode
15178
15061
  });
15179
15062
  }
15180
15063
  },
15181
15064
  /* @__PURE__ */ React__default.createElement(TooltipProvider, null, /* @__PURE__ */ React__default.createElement(
15182
15065
  ToolbarProvider,
15183
15066
  {
15184
- tinaForm: props.tinaForm,
15185
- templates: props.field.templates,
15186
- overrides: (_a = props.field) == null ? void 0 : _a.toolbarOverride
15067
+ tinaForm,
15068
+ templates: field.templates,
15069
+ overrides: (field == null ? void 0 : field.toolbarOverride) ? field.toolbarOverride : field.overrides
15187
15070
  },
15188
15071
  /* @__PURE__ */ React__default.createElement(FixedToolbar, null, /* @__PURE__ */ React__default.createElement(FixedToolbarButtons, null)),
15189
- /* @__PURE__ */ React__default.createElement(FloatingToolbar, null, /* @__PURE__ */ React__default.createElement(FloatingToolbarButtons, null))
15072
+ ((_a = field == null ? void 0 : field.overrides) == null ? void 0 : _a.showFloatingToolbar) !== false ? /* @__PURE__ */ React__default.createElement(FloatingToolbar, null, /* @__PURE__ */ React__default.createElement(FloatingToolbarButtons, null)) : null
15190
15073
  ), /* @__PURE__ */ React__default.createElement(Editor, null))
15191
15074
  ));
15192
15075
  };