tinacms 0.0.0-ac2003f-20241101002635 → 0.0.0-ad9a889-20250218035304
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/admin/types.d.ts +3 -0
- package/dist/client.js +72 -45
- package/dist/client.mjs +49 -35
- package/dist/index.d.ts +1 -1
- package/dist/index.js +236 -312
- package/dist/index.mjs +252 -328
- package/dist/{node-cache-4c336858.mjs → node-cache-5e8db9f0.mjs} +23 -10
- package/dist/react.d.ts +1 -0
- package/dist/react.js +10 -1
- package/dist/react.mjs +10 -1
- package/dist/toolkit/fields/components/reference/reference-select.d.ts +2 -2
- package/dist/toolkit/fields/plugins/mdx-field-plugin/index.d.ts +4 -1
- package/dist/toolkit/fields/plugins/mdx-field-plugin/plate/index.d.ts +1 -1
- package/dist/toolkit/fields/plugins/mdx-field-plugin/plate/toolbar/toolbar-overrides.d.ts +4 -0
- package/dist/toolkit/fields/plugins/mdx-field-plugin/plate/toolbar/toolbar-provider.d.ts +2 -2
- package/dist/unifiedClient/index.d.ts +8 -1
- package/package.json +27 -27
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
|
|
10
|
-
import { createPortal
|
|
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";
|
|
@@ -15,12 +15,12 @@ import { ELEMENT_SLASH_INPUT, createSlashPlugin } from "@udecode/plate-slash-com
|
|
|
15
15
|
import { useSelected, useReadOnly, ReactEditor } from "slate-react";
|
|
16
16
|
import { useCodeBlockElementState, useCodeSyntaxLeaf, ELEMENT_CODE_BLOCK as ELEMENT_CODE_BLOCK$1 } from "@udecode/plate-code-block";
|
|
17
17
|
import MonacoEditor, { loader, useMonaco } from "@monaco-editor/react";
|
|
18
|
-
import { Combobox, ComboboxInput, ComboboxButton, Transition, ComboboxOptions, ComboboxOption, Popover as Popover$3, PopoverButton, PopoverPanel, TransitionChild, Disclosure, DisclosureButton, DisclosurePanel, Menu, MenuButton, MenuItems, MenuItem } from "@headlessui/react";
|
|
18
|
+
import { Combobox as Combobox$1, ComboboxInput, ComboboxButton, Transition, ComboboxOptions, ComboboxOption, Popover as Popover$3, PopoverButton, PopoverPanel, TransitionChild, Disclosure, DisclosureButton, DisclosurePanel, Menu, MenuButton, MenuItems, MenuItem } from "@headlessui/react";
|
|
19
19
|
import { cva } from "class-variance-authority";
|
|
20
20
|
import { Eye, SquarePen, Plus, AlignCenter as AlignCenter$1, AlignJustify, AlignLeft as AlignLeft$1, AlignRight as AlignRight$1, ChevronDown, PaintBucket, Quote, Check, ChevronRight, ChevronsUpDown, X, FileCode, Baseline, RectangleVertical, Combine, Ungroup, MessageSquare, MessageSquarePlus, Trash, GripVertical, Edit2, Smile, ExternalLink, Heading1, Heading2, Heading3, Heading4, Heading5, Heading6, Indent, Keyboard, WrapText, Minus, MoreHorizontal, Outdent, Pilcrow, RotateCcw, RectangleHorizontal, Search, Settings, Strikethrough, Subscript, Superscript, Table, Text, Underline, Link2Off, Moon, SunMedium, Twitter } from "lucide-react";
|
|
21
21
|
import mermaid from "mermaid";
|
|
22
22
|
import { ELEMENT_H1, ELEMENT_H2, ELEMENT_H3, ELEMENT_H4 as ELEMENT_H4$1, ELEMENT_H5 as ELEMENT_H5$1, ELEMENT_H6 as ELEMENT_H6$1 } from "@udecode/plate-heading";
|
|
23
|
-
import { useComboboxContext, Combobox as Combobox$
|
|
23
|
+
import { useComboboxContext, Combobox as Combobox$2, useComboboxStore, ComboboxProvider, Portal, ComboboxPopover, ComboboxItem } from "@ariakit/react";
|
|
24
24
|
import { useHTMLInputCursorState, useComboboxInput, filterWords } from "@udecode/plate-combobox";
|
|
25
25
|
import { useTableCellElementState, useTableCellElement, useTableCellElementResizableState, useTableCellElementResizable, useTableBordersDropdownMenuContentState, useTableMergeState, TableProvider, useTableElementState, useTableElement, mergeTableCells, unmergeTableCells, ELEMENT_TABLE as ELEMENT_TABLE$1, getTableColumnCount, insertTable, deleteTable, insertTableColumn, deleteColumn, insertTableRow, deleteRow } from "@udecode/plate-table";
|
|
26
26
|
import { ResizeHandle as ResizeHandle$1 } from "@udecode/plate-resizable";
|
|
@@ -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
|
-
|
|
898
|
-
|
|
906
|
+
...props
|
|
907
|
+
},
|
|
908
|
+
children
|
|
899
909
|
);
|
|
900
910
|
};
|
|
901
911
|
const FieldError = ({
|
|
@@ -982,7 +992,7 @@ const Autocomplete = ({
|
|
|
982
992
|
}
|
|
983
993
|
}, [items2, query]);
|
|
984
994
|
return /* @__PURE__ */ React__default.createElement(
|
|
985
|
-
Combobox,
|
|
995
|
+
Combobox$1,
|
|
986
996
|
{
|
|
987
997
|
value,
|
|
988
998
|
onChange,
|
|
@@ -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
|
|
1352
|
-
return /* @__PURE__ */ React__default.createElement(ListElementVariants, { asChild: true, ref, variant, ...props }, /* @__PURE__ */ React__default.createElement(
|
|
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";
|
|
@@ -2163,7 +2173,7 @@ const InlineComboboxInput = forwardRef(({ className, ...props }, propRef) => {
|
|
|
2163
2173
|
},
|
|
2164
2174
|
value || ""
|
|
2165
2175
|
), /* @__PURE__ */ React__default.createElement(
|
|
2166
|
-
Combobox$
|
|
2176
|
+
Combobox$2,
|
|
2167
2177
|
{
|
|
2168
2178
|
autoSelect: true,
|
|
2169
2179
|
className: cn$1(
|
|
@@ -3669,7 +3679,7 @@ function TinaForm({ form, children }) {
|
|
|
3669
3679
|
}));
|
|
3670
3680
|
}
|
|
3671
3681
|
function TinaField({
|
|
3672
|
-
Component
|
|
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(
|
|
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
|
|
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
|
|
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(
|
|
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
|
}
|
|
@@ -5193,7 +5224,7 @@ const PopoverContent = React.forwardRef(({ className, align = "center", sideOffs
|
|
|
5193
5224
|
side: "bottom",
|
|
5194
5225
|
className: cn(
|
|
5195
5226
|
"rounded-md border bg-white p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
5196
|
-
"max-h-[30vh] max-w-[
|
|
5227
|
+
"max-h-[30vh] max-w-[30vw] overflow-y-auto",
|
|
5197
5228
|
className
|
|
5198
5229
|
),
|
|
5199
5230
|
...props
|
|
@@ -5285,11 +5316,7 @@ const getFilename = (optionSets, value) => {
|
|
|
5285
5316
|
const node = nodes.find((node2) => node2.id === value);
|
|
5286
5317
|
return node ? node._internalSys.filename : null;
|
|
5287
5318
|
};
|
|
5288
|
-
const
|
|
5289
|
-
cms,
|
|
5290
|
-
input,
|
|
5291
|
-
field
|
|
5292
|
-
}) => {
|
|
5319
|
+
const Combobox = ({ cms, input, field }) => {
|
|
5293
5320
|
const [open2, setOpen] = React.useState(false);
|
|
5294
5321
|
const [value, setValue] = React.useState(input.value);
|
|
5295
5322
|
const [displayText, setDisplayText] = React.useState(null);
|
|
@@ -5313,17 +5340,17 @@ const ComboboxDemo = ({
|
|
|
5313
5340
|
if (loading === true) {
|
|
5314
5341
|
return /* @__PURE__ */ React.createElement(LoadingDots, { color: "var(--tina-color-primary)" });
|
|
5315
5342
|
}
|
|
5316
|
-
return /* @__PURE__ */ React.createElement(
|
|
5343
|
+
return /* @__PURE__ */ React.createElement(Popover, { open: open2, onOpenChange: setOpen }, /* @__PURE__ */ React.createElement(PopoverTrigger, { asChild: true }, /* @__PURE__ */ React.createElement(
|
|
5317
5344
|
Button,
|
|
5318
5345
|
{
|
|
5319
5346
|
variant: "outline",
|
|
5320
5347
|
role: "combobox",
|
|
5321
5348
|
"aria-expanded": open2,
|
|
5322
|
-
className: "w-
|
|
5349
|
+
className: "w-full justify-between"
|
|
5323
5350
|
},
|
|
5324
5351
|
/* @__PURE__ */ React.createElement("p", { className: "truncate" }, displayText ?? "Choose an option..."),
|
|
5325
5352
|
open2 ? /* @__PURE__ */ React.createElement(IoMdArrowDropup, { size: 20 }) : /* @__PURE__ */ React.createElement(IoMdArrowDropdown, { size: 20 })
|
|
5326
|
-
)), /* @__PURE__ */ React.createElement(PopoverContent, { className: "p-0 relative" }, /* @__PURE__ */ React.createElement(
|
|
5353
|
+
)), /* @__PURE__ */ React.createElement(PopoverContent, { className: "p-0 relative min-w-[var(--radix-popover-trigger-width)]" }, /* @__PURE__ */ React.createElement(
|
|
5327
5354
|
Command,
|
|
5328
5355
|
{
|
|
5329
5356
|
shouldFilter: !field.experimental___filter,
|
|
@@ -5347,32 +5374,25 @@ const ComboboxDemo = ({
|
|
|
5347
5374
|
}
|
|
5348
5375
|
),
|
|
5349
5376
|
/* @__PURE__ */ React.createElement(CommandEmpty, null, "No reference found"),
|
|
5350
|
-
/* @__PURE__ */ React.createElement(CommandList, null, filteredOptionsList.length > 0 && (filteredOptionsList == null ? void 0 : filteredOptionsList.map(({ collection, edges }) => /* @__PURE__ */ React.createElement(
|
|
5351
|
-
|
|
5352
|
-
|
|
5353
|
-
|
|
5354
|
-
|
|
5355
|
-
|
|
5356
|
-
|
|
5357
|
-
|
|
5358
|
-
|
|
5359
|
-
|
|
5360
|
-
|
|
5361
|
-
|
|
5362
|
-
|
|
5363
|
-
|
|
5364
|
-
field,
|
|
5365
|
-
_values,
|
|
5366
|
-
node,
|
|
5367
|
-
onSelect: (currentValue) => {
|
|
5368
|
-
setValue(currentValue);
|
|
5369
|
-
setOpen(false);
|
|
5370
|
-
}
|
|
5377
|
+
/* @__PURE__ */ React.createElement(CommandList, null, filteredOptionsList.length > 0 && (filteredOptionsList == null ? void 0 : filteredOptionsList.map(({ collection, edges }) => /* @__PURE__ */ React.createElement(CommandGroup, { key: `${collection}-group`, heading: collection }, /* @__PURE__ */ React.createElement(CommandList, null, edges == null ? void 0 : edges.map(({ node }) => {
|
|
5378
|
+
const { id, _values } = node;
|
|
5379
|
+
return /* @__PURE__ */ React.createElement(
|
|
5380
|
+
OptionComponent,
|
|
5381
|
+
{
|
|
5382
|
+
id,
|
|
5383
|
+
key: id,
|
|
5384
|
+
value,
|
|
5385
|
+
field,
|
|
5386
|
+
_values,
|
|
5387
|
+
node,
|
|
5388
|
+
onSelect: (currentValue) => {
|
|
5389
|
+
setValue(currentValue);
|
|
5390
|
+
setOpen(false);
|
|
5371
5391
|
}
|
|
5372
|
-
|
|
5373
|
-
|
|
5374
|
-
))))
|
|
5375
|
-
)))
|
|
5392
|
+
}
|
|
5393
|
+
);
|
|
5394
|
+
}))))))
|
|
5395
|
+
)));
|
|
5376
5396
|
};
|
|
5377
5397
|
const useGetNode = (cms, id) => {
|
|
5378
5398
|
const [document2, setDocument] = React.useState(
|
|
@@ -5445,7 +5465,7 @@ const ReferenceLink = ({ cms, input }) => {
|
|
|
5445
5465
|
};
|
|
5446
5466
|
const Reference = ({ input, field }) => {
|
|
5447
5467
|
const cms = useCMS();
|
|
5448
|
-
return /* @__PURE__ */ React.createElement(
|
|
5468
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: "relative group" }, /* @__PURE__ */ React.createElement(Combobox, { cms, input, field })), /* @__PURE__ */ React.createElement(ReferenceLink, { cms, input }));
|
|
5449
5469
|
};
|
|
5450
5470
|
const ButtonToggle = ({
|
|
5451
5471
|
input,
|
|
@@ -5753,10 +5773,11 @@ const ItemDeleteButton = ({ onClick, disabled = false }) => {
|
|
|
5753
5773
|
return /* @__PURE__ */ React__default.createElement(
|
|
5754
5774
|
"button",
|
|
5755
5775
|
{
|
|
5756
|
-
|
|
5776
|
+
type: "button",
|
|
5777
|
+
className: `w-8 px-1 py-2.5 flex items-center justify-center text-gray-200 hover:opacity-100 opacity-30 hover:bg-gray-50 ${disabled && "pointer-events-none opacity-30 cursor-not-allowed"}`,
|
|
5757
5778
|
onClick
|
|
5758
5779
|
},
|
|
5759
|
-
/* @__PURE__ */ React__default.createElement(TrashIcon, { className: "fill-current transition-colors ease-out
|
|
5780
|
+
/* @__PURE__ */ React__default.createElement(TrashIcon, { className: "h-5 w-auto fill-current text-red-500 transition-colors duration-150 ease-out" })
|
|
5760
5781
|
);
|
|
5761
5782
|
};
|
|
5762
5783
|
const DragHandle = ({ isDragging }) => {
|
|
@@ -7204,244 +7225,65 @@ function pad(type, value) {
|
|
|
7204
7225
|
str = "0" + str;
|
|
7205
7226
|
return str;
|
|
7206
7227
|
}
|
|
7207
|
-
|
|
7208
|
-
|
|
7209
|
-
|
|
7210
|
-
|
|
7211
|
-
|
|
7212
|
-
|
|
7213
|
-
|
|
7214
|
-
|
|
7215
|
-
|
|
7216
|
-
|
|
7217
|
-
|
|
7218
|
-
}
|
|
7219
|
-
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
7220
|
-
if (source == null)
|
|
7221
|
-
return {};
|
|
7222
|
-
var target = {};
|
|
7223
|
-
var sourceKeys = Object.keys(source);
|
|
7224
|
-
var key, i;
|
|
7225
|
-
for (i = 0; i < sourceKeys.length; i++) {
|
|
7226
|
-
key = sourceKeys[i];
|
|
7227
|
-
if (excluded.indexOf(key) >= 0)
|
|
7228
|
-
continue;
|
|
7229
|
-
target[key] = source[key];
|
|
7230
|
-
}
|
|
7231
|
-
return target;
|
|
7232
|
-
}
|
|
7233
|
-
function _assertThisInitialized(self) {
|
|
7234
|
-
if (self === void 0) {
|
|
7235
|
-
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
7236
|
-
}
|
|
7237
|
-
return self;
|
|
7238
|
-
}
|
|
7239
|
-
function isNodeFound(current, componentNode, ignoreClass) {
|
|
7240
|
-
if (current === componentNode) {
|
|
7241
|
-
return true;
|
|
7228
|
+
var useClickAway$1 = {};
|
|
7229
|
+
var util = {};
|
|
7230
|
+
Object.defineProperty(util, "__esModule", { value: true });
|
|
7231
|
+
util.isNavigator = util.isBrowser = util.off = util.on = util.noop = void 0;
|
|
7232
|
+
var noop = function() {
|
|
7233
|
+
};
|
|
7234
|
+
util.noop = noop;
|
|
7235
|
+
function on(obj) {
|
|
7236
|
+
var args = [];
|
|
7237
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
7238
|
+
args[_i - 1] = arguments[_i];
|
|
7242
7239
|
}
|
|
7243
|
-
if (
|
|
7244
|
-
|
|
7240
|
+
if (obj && obj.addEventListener) {
|
|
7241
|
+
obj.addEventListener.apply(obj, args);
|
|
7245
7242
|
}
|
|
7246
|
-
return current.classList.contains(ignoreClass);
|
|
7247
7243
|
}
|
|
7248
|
-
|
|
7249
|
-
|
|
7250
|
-
|
|
7244
|
+
util.on = on;
|
|
7245
|
+
function off(obj) {
|
|
7246
|
+
var args = [];
|
|
7247
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
7248
|
+
args[_i - 1] = arguments[_i];
|
|
7251
7249
|
}
|
|
7252
|
-
|
|
7253
|
-
|
|
7254
|
-
return true;
|
|
7255
|
-
}
|
|
7256
|
-
current = current.parentNode || current.host;
|
|
7250
|
+
if (obj && obj.removeEventListener) {
|
|
7251
|
+
obj.removeEventListener.apply(obj, args);
|
|
7257
7252
|
}
|
|
7258
|
-
return current;
|
|
7259
7253
|
}
|
|
7260
|
-
|
|
7261
|
-
|
|
7262
|
-
|
|
7263
|
-
|
|
7264
|
-
|
|
7265
|
-
|
|
7266
|
-
|
|
7267
|
-
|
|
7268
|
-
|
|
7269
|
-
|
|
7270
|
-
|
|
7271
|
-
|
|
7272
|
-
|
|
7273
|
-
|
|
7274
|
-
};
|
|
7275
|
-
|
|
7276
|
-
|
|
7277
|
-
|
|
7278
|
-
|
|
7279
|
-
function autoInc(seed) {
|
|
7280
|
-
if (seed === void 0) {
|
|
7281
|
-
seed = 0;
|
|
7282
|
-
}
|
|
7283
|
-
return function() {
|
|
7284
|
-
return ++seed;
|
|
7285
|
-
};
|
|
7286
|
-
}
|
|
7287
|
-
var uid = autoInc();
|
|
7288
|
-
var passiveEventSupport;
|
|
7289
|
-
var handlersMap = {};
|
|
7290
|
-
var enabledInstances = {};
|
|
7291
|
-
var touchEvents = ["touchstart", "touchmove"];
|
|
7292
|
-
var IGNORE_CLASS_NAME = "ignore-react-onclickoutside";
|
|
7293
|
-
function getEventHandlerOptions(instance, eventName) {
|
|
7294
|
-
var handlerOptions = {};
|
|
7295
|
-
var isTouchEvent = touchEvents.indexOf(eventName) !== -1;
|
|
7296
|
-
if (isTouchEvent && passiveEventSupport) {
|
|
7297
|
-
handlerOptions.passive = !instance.props.preventDefault;
|
|
7298
|
-
}
|
|
7299
|
-
return handlerOptions;
|
|
7300
|
-
}
|
|
7301
|
-
function onClickOutsideHOC(WrappedComponent, config) {
|
|
7302
|
-
var _class, _temp;
|
|
7303
|
-
var componentName = WrappedComponent.displayName || WrappedComponent.name || "Component";
|
|
7304
|
-
return _temp = _class = /* @__PURE__ */ function(_Component) {
|
|
7305
|
-
_inheritsLoose(onClickOutside, _Component);
|
|
7306
|
-
function onClickOutside(props) {
|
|
7307
|
-
var _this;
|
|
7308
|
-
_this = _Component.call(this, props) || this;
|
|
7309
|
-
_this.__outsideClickHandler = function(event) {
|
|
7310
|
-
if (typeof _this.__clickOutsideHandlerProp === "function") {
|
|
7311
|
-
_this.__clickOutsideHandlerProp(event);
|
|
7312
|
-
return;
|
|
7313
|
-
}
|
|
7314
|
-
var instance = _this.getInstance();
|
|
7315
|
-
if (typeof instance.props.handleClickOutside === "function") {
|
|
7316
|
-
instance.props.handleClickOutside(event);
|
|
7317
|
-
return;
|
|
7318
|
-
}
|
|
7319
|
-
if (typeof instance.handleClickOutside === "function") {
|
|
7320
|
-
instance.handleClickOutside(event);
|
|
7321
|
-
return;
|
|
7322
|
-
}
|
|
7323
|
-
throw new Error("WrappedComponent: " + componentName + " lacks a handleClickOutside(event) function for processing outside click events.");
|
|
7324
|
-
};
|
|
7325
|
-
_this.__getComponentNode = function() {
|
|
7326
|
-
var instance = _this.getInstance();
|
|
7327
|
-
if (config && typeof config.setClickOutsideRef === "function") {
|
|
7328
|
-
return config.setClickOutsideRef()(instance);
|
|
7329
|
-
}
|
|
7330
|
-
if (typeof instance.setClickOutsideRef === "function") {
|
|
7331
|
-
return instance.setClickOutsideRef();
|
|
7332
|
-
}
|
|
7333
|
-
return findDOMNode(instance);
|
|
7334
|
-
};
|
|
7335
|
-
_this.enableOnClickOutside = function() {
|
|
7336
|
-
if (typeof document === "undefined" || enabledInstances[_this._uid]) {
|
|
7337
|
-
return;
|
|
7338
|
-
}
|
|
7339
|
-
if (typeof passiveEventSupport === "undefined") {
|
|
7340
|
-
passiveEventSupport = testPassiveEventSupport();
|
|
7341
|
-
}
|
|
7342
|
-
enabledInstances[_this._uid] = true;
|
|
7343
|
-
var events = _this.props.eventTypes;
|
|
7344
|
-
if (!events.forEach) {
|
|
7345
|
-
events = [events];
|
|
7346
|
-
}
|
|
7347
|
-
handlersMap[_this._uid] = function(event) {
|
|
7348
|
-
if (_this.componentNode === null)
|
|
7349
|
-
return;
|
|
7350
|
-
if (_this.initTimeStamp > event.timeStamp)
|
|
7351
|
-
return;
|
|
7352
|
-
if (_this.props.preventDefault) {
|
|
7353
|
-
event.preventDefault();
|
|
7354
|
-
}
|
|
7355
|
-
if (_this.props.stopPropagation) {
|
|
7356
|
-
event.stopPropagation();
|
|
7357
|
-
}
|
|
7358
|
-
if (_this.props.excludeScrollbar && clickedScrollbar(event))
|
|
7359
|
-
return;
|
|
7360
|
-
var current = event.composed && event.composedPath && event.composedPath().shift() || event.target;
|
|
7361
|
-
if (findHighest(current, _this.componentNode, _this.props.outsideClickIgnoreClass) !== document) {
|
|
7362
|
-
return;
|
|
7363
|
-
}
|
|
7364
|
-
_this.__outsideClickHandler(event);
|
|
7365
|
-
};
|
|
7366
|
-
events.forEach(function(eventName) {
|
|
7367
|
-
document.addEventListener(eventName, handlersMap[_this._uid], getEventHandlerOptions(_assertThisInitialized(_this), eventName));
|
|
7368
|
-
});
|
|
7369
|
-
};
|
|
7370
|
-
_this.disableOnClickOutside = function() {
|
|
7371
|
-
delete enabledInstances[_this._uid];
|
|
7372
|
-
var fn = handlersMap[_this._uid];
|
|
7373
|
-
if (fn && typeof document !== "undefined") {
|
|
7374
|
-
var events = _this.props.eventTypes;
|
|
7375
|
-
if (!events.forEach) {
|
|
7376
|
-
events = [events];
|
|
7377
|
-
}
|
|
7378
|
-
events.forEach(function(eventName) {
|
|
7379
|
-
return document.removeEventListener(eventName, fn, getEventHandlerOptions(_assertThisInitialized(_this), eventName));
|
|
7380
|
-
});
|
|
7381
|
-
delete handlersMap[_this._uid];
|
|
7382
|
-
}
|
|
7383
|
-
};
|
|
7384
|
-
_this.getRef = function(ref) {
|
|
7385
|
-
return _this.instanceRef = ref;
|
|
7386
|
-
};
|
|
7387
|
-
_this._uid = uid();
|
|
7388
|
-
_this.initTimeStamp = performance.now();
|
|
7389
|
-
return _this;
|
|
7390
|
-
}
|
|
7391
|
-
var _proto = onClickOutside.prototype;
|
|
7392
|
-
_proto.getInstance = function getInstance() {
|
|
7393
|
-
if (WrappedComponent.prototype && !WrappedComponent.prototype.isReactComponent) {
|
|
7394
|
-
return this;
|
|
7395
|
-
}
|
|
7396
|
-
var ref = this.instanceRef;
|
|
7397
|
-
return ref.getInstance ? ref.getInstance() : ref;
|
|
7398
|
-
};
|
|
7399
|
-
_proto.componentDidMount = function componentDidMount() {
|
|
7400
|
-
if (typeof document === "undefined" || !document.createElement) {
|
|
7401
|
-
return;
|
|
7402
|
-
}
|
|
7403
|
-
var instance = this.getInstance();
|
|
7404
|
-
if (config && typeof config.handleClickOutside === "function") {
|
|
7405
|
-
this.__clickOutsideHandlerProp = config.handleClickOutside(instance);
|
|
7406
|
-
if (typeof this.__clickOutsideHandlerProp !== "function") {
|
|
7407
|
-
throw new Error("WrappedComponent: " + componentName + " lacks a function for processing outside click events specified by the handleClickOutside config option.");
|
|
7408
|
-
}
|
|
7409
|
-
}
|
|
7410
|
-
this.componentNode = this.__getComponentNode();
|
|
7411
|
-
if (this.props.disableOnClickOutside)
|
|
7412
|
-
return;
|
|
7413
|
-
this.enableOnClickOutside();
|
|
7254
|
+
util.off = off;
|
|
7255
|
+
util.isBrowser = typeof window !== "undefined";
|
|
7256
|
+
util.isNavigator = typeof navigator !== "undefined";
|
|
7257
|
+
Object.defineProperty(useClickAway$1, "__esModule", { value: true });
|
|
7258
|
+
var react_1 = React__default;
|
|
7259
|
+
var util_1 = util;
|
|
7260
|
+
var defaultEvents = ["mousedown", "touchstart"];
|
|
7261
|
+
var useClickAway = function(ref, onClickAway, events) {
|
|
7262
|
+
if (events === void 0) {
|
|
7263
|
+
events = defaultEvents;
|
|
7264
|
+
}
|
|
7265
|
+
var savedCallback = react_1.useRef(onClickAway);
|
|
7266
|
+
react_1.useEffect(function() {
|
|
7267
|
+
savedCallback.current = onClickAway;
|
|
7268
|
+
}, [onClickAway]);
|
|
7269
|
+
react_1.useEffect(function() {
|
|
7270
|
+
var handler = function(event) {
|
|
7271
|
+
var el = ref.current;
|
|
7272
|
+
el && !el.contains(event.target) && savedCallback.current(event);
|
|
7414
7273
|
};
|
|
7415
|
-
|
|
7416
|
-
|
|
7417
|
-
|
|
7418
|
-
|
|
7419
|
-
|
|
7420
|
-
|
|
7421
|
-
|
|
7422
|
-
|
|
7423
|
-
_this$props.excludeScrollbar;
|
|
7424
|
-
var props = _objectWithoutPropertiesLoose(_this$props, ["excludeScrollbar"]);
|
|
7425
|
-
if (WrappedComponent.prototype && WrappedComponent.prototype.isReactComponent) {
|
|
7426
|
-
props.ref = this.getRef;
|
|
7427
|
-
} else {
|
|
7428
|
-
props.wrappedRef = this.getRef;
|
|
7274
|
+
for (var _i = 0, events_1 = events; _i < events_1.length; _i++) {
|
|
7275
|
+
var eventName = events_1[_i];
|
|
7276
|
+
util_1.on(document, eventName, handler);
|
|
7277
|
+
}
|
|
7278
|
+
return function() {
|
|
7279
|
+
for (var _i2 = 0, events_2 = events; _i2 < events_2.length; _i2++) {
|
|
7280
|
+
var eventName2 = events_2[_i2];
|
|
7281
|
+
util_1.off(document, eventName2, handler);
|
|
7429
7282
|
}
|
|
7430
|
-
props.disableOnClickOutside = this.disableOnClickOutside;
|
|
7431
|
-
props.enableOnClickOutside = this.enableOnClickOutside;
|
|
7432
|
-
return createElement(WrappedComponent, props);
|
|
7433
7283
|
};
|
|
7434
|
-
|
|
7435
|
-
|
|
7436
|
-
|
|
7437
|
-
excludeScrollbar: config && config.excludeScrollbar || false,
|
|
7438
|
-
outsideClickIgnoreClass: IGNORE_CLASS_NAME,
|
|
7439
|
-
preventDefault: false,
|
|
7440
|
-
stopPropagation: false
|
|
7441
|
-
}, _class.getClass = function() {
|
|
7442
|
-
return WrappedComponent.getClass ? WrappedComponent.getClass() : WrappedComponent;
|
|
7443
|
-
}, _temp;
|
|
7444
|
-
}
|
|
7284
|
+
}, [events, ref]);
|
|
7285
|
+
};
|
|
7286
|
+
var _default = useClickAway$1.default = useClickAway;
|
|
7445
7287
|
const viewModes = {
|
|
7446
7288
|
YEARS: "years",
|
|
7447
7289
|
MONTHS: "months",
|
|
@@ -7970,22 +7812,13 @@ function log(message, method) {
|
|
|
7970
7812
|
}
|
|
7971
7813
|
con[method]("***react-datetime:" + message);
|
|
7972
7814
|
}
|
|
7973
|
-
|
|
7974
|
-
|
|
7975
|
-
|
|
7976
|
-
|
|
7977
|
-
}
|
|
7978
|
-
|
|
7979
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: this.props.className, ref: this.container }, this.props.children);
|
|
7980
|
-
}
|
|
7981
|
-
handleClickOutside(e) {
|
|
7982
|
-
this.props.onClickOut(e);
|
|
7983
|
-
}
|
|
7984
|
-
setClickOutsideRef() {
|
|
7985
|
-
return this.container.current;
|
|
7986
|
-
}
|
|
7815
|
+
function ClickableWrapper({ className, onClickOut, children }) {
|
|
7816
|
+
const containerRef = useRef(null);
|
|
7817
|
+
_default(containerRef, (event) => {
|
|
7818
|
+
onClickOut(event);
|
|
7819
|
+
});
|
|
7820
|
+
return /* @__PURE__ */ React__default.createElement("div", { className, ref: containerRef }, children);
|
|
7987
7821
|
}
|
|
7988
|
-
const ClickableWrapper = onClickOutsideHOC(ClickOutBase);
|
|
7989
7822
|
const DEFAULT_DATE_DISPLAY_FORMAT = "MMM DD, YYYY";
|
|
7990
7823
|
const DEFAULT_TIME_DISPLAY_FORMAT = "h:mm A";
|
|
7991
7824
|
const format$1 = (val, _name, field) => {
|
|
@@ -8028,7 +7861,10 @@ const DateField = wrapFieldsWithMeta(
|
|
|
8028
7861
|
ReactDateTimeWithStyles,
|
|
8029
7862
|
{
|
|
8030
7863
|
value: input.value,
|
|
8031
|
-
onChange:
|
|
7864
|
+
onChange: (value) => {
|
|
7865
|
+
const newValue = value === "" ? void 0 : value;
|
|
7866
|
+
input.onChange(newValue);
|
|
7867
|
+
},
|
|
8032
7868
|
dateFormat: dateFormat || DEFAULT_DATE_DISPLAY_FORMAT,
|
|
8033
7869
|
timeFormat: timeFormat || false,
|
|
8034
7870
|
inputProps: { className: textFieldClasses },
|
|
@@ -9480,6 +9316,19 @@ class TinaMediaStore {
|
|
|
9480
9316
|
}
|
|
9481
9317
|
}
|
|
9482
9318
|
}
|
|
9319
|
+
const encodeUrlIfNeeded = (url) => {
|
|
9320
|
+
if (url) {
|
|
9321
|
+
try {
|
|
9322
|
+
const parsed = new URL(url);
|
|
9323
|
+
parsed.pathname = parsed.pathname.split("/").filter((part) => part !== "").map(encodeURIComponent).join("/");
|
|
9324
|
+
return parsed.toString();
|
|
9325
|
+
} catch (e) {
|
|
9326
|
+
return url;
|
|
9327
|
+
}
|
|
9328
|
+
} else {
|
|
9329
|
+
return url;
|
|
9330
|
+
}
|
|
9331
|
+
};
|
|
9483
9332
|
let MediaManager$1 = class MediaManager {
|
|
9484
9333
|
constructor(store, events) {
|
|
9485
9334
|
this.store = store;
|
|
@@ -9552,6 +9401,20 @@ let MediaManager$1 = class MediaManager {
|
|
|
9552
9401
|
try {
|
|
9553
9402
|
this.events.dispatch({ type: "media:list:start", ...options });
|
|
9554
9403
|
const media = await this.store.list(options);
|
|
9404
|
+
media.items = media.items.map((item) => {
|
|
9405
|
+
if (item.type === "dir") {
|
|
9406
|
+
return item;
|
|
9407
|
+
}
|
|
9408
|
+
if (item.thumbnails) {
|
|
9409
|
+
for (const [size, src] of Object.entries(item.thumbnails)) {
|
|
9410
|
+
item.thumbnails[size] = encodeUrlIfNeeded(src);
|
|
9411
|
+
}
|
|
9412
|
+
}
|
|
9413
|
+
return {
|
|
9414
|
+
...item,
|
|
9415
|
+
src: encodeUrlIfNeeded(item.src)
|
|
9416
|
+
};
|
|
9417
|
+
});
|
|
9555
9418
|
this.events.dispatch({ type: "media:list:success", ...options, media });
|
|
9556
9419
|
return media;
|
|
9557
9420
|
} catch (error) {
|
|
@@ -9839,7 +9702,7 @@ class SidebarState {
|
|
|
9839
9702
|
}
|
|
9840
9703
|
}
|
|
9841
9704
|
function createScreen({
|
|
9842
|
-
Component
|
|
9705
|
+
Component,
|
|
9843
9706
|
props,
|
|
9844
9707
|
...options
|
|
9845
9708
|
}) {
|
|
@@ -9848,7 +9711,7 @@ function createScreen({
|
|
|
9848
9711
|
layout: "popup",
|
|
9849
9712
|
...options,
|
|
9850
9713
|
Component(screenProps) {
|
|
9851
|
-
return /* @__PURE__ */ React__default.createElement(
|
|
9714
|
+
return /* @__PURE__ */ React__default.createElement(Component, { ...screenProps, ...props });
|
|
9852
9715
|
}
|
|
9853
9716
|
};
|
|
9854
9717
|
}
|
|
@@ -10359,7 +10222,7 @@ const SyncStatus = ({ cms, setEventsOpen }) => {
|
|
|
10359
10222
|
"Event Log"
|
|
10360
10223
|
));
|
|
10361
10224
|
};
|
|
10362
|
-
const version = "2.4
|
|
10225
|
+
const version = "2.6.4";
|
|
10363
10226
|
const Nav = ({
|
|
10364
10227
|
isLocalMode,
|
|
10365
10228
|
className = "",
|
|
@@ -13288,9 +13151,9 @@ const EllipsisIcon = ({ title }) => {
|
|
|
13288
13151
|
));
|
|
13289
13152
|
};
|
|
13290
13153
|
const Wrapper$1 = ({ inline, children }) => {
|
|
13291
|
-
const
|
|
13154
|
+
const Component = inline ? "span" : "div";
|
|
13292
13155
|
return /* @__PURE__ */ React__default.createElement(
|
|
13293
|
-
|
|
13156
|
+
Component,
|
|
13294
13157
|
{
|
|
13295
13158
|
contentEditable: false,
|
|
13296
13159
|
style: { userSelect: "none" },
|
|
@@ -14078,13 +13941,13 @@ const TooltipContent = withCn(
|
|
|
14078
13941
|
}),
|
|
14079
13942
|
"z-[9999] overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md"
|
|
14080
13943
|
);
|
|
14081
|
-
function withTooltip(
|
|
13944
|
+
function withTooltip(Component) {
|
|
14082
13945
|
return React__default.forwardRef(function ExtendComponent({ tooltip, tooltipContentProps, tooltipProps, ...props }, ref) {
|
|
14083
13946
|
const [mounted, setMounted] = React__default.useState(false);
|
|
14084
13947
|
React__default.useEffect(() => {
|
|
14085
13948
|
setMounted(true);
|
|
14086
13949
|
}, []);
|
|
14087
|
-
const component = /* @__PURE__ */ React__default.createElement(
|
|
13950
|
+
const component = /* @__PURE__ */ React__default.createElement(Component, { ref, ...props });
|
|
14088
13951
|
if (tooltip && mounted) {
|
|
14089
13952
|
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)));
|
|
14090
13953
|
}
|
|
@@ -14679,7 +14542,7 @@ const EmbedButton = ({ editor, templates }) => {
|
|
|
14679
14542
|
key: template.name,
|
|
14680
14543
|
onMouseDown: (e) => {
|
|
14681
14544
|
e.preventDefault();
|
|
14682
|
-
|
|
14545
|
+
setOpen(false);
|
|
14683
14546
|
insertMDX(editor, template);
|
|
14684
14547
|
},
|
|
14685
14548
|
className: ""
|
|
@@ -14765,7 +14628,12 @@ function FixedToolbarButtons() {
|
|
|
14765
14628
|
const [itemsShown, setItemsShown] = React__default.useState(11);
|
|
14766
14629
|
const { overrides, templates } = useToolbarContext();
|
|
14767
14630
|
const showEmbedButton = templates.length > 0;
|
|
14768
|
-
let items2 =
|
|
14631
|
+
let items2 = [];
|
|
14632
|
+
if (Array.isArray(overrides)) {
|
|
14633
|
+
items2 = overrides === void 0 ? Object.values(toolbarItems) : overrides.map((item) => toolbarItems[item]).filter((item) => item !== void 0);
|
|
14634
|
+
} else {
|
|
14635
|
+
items2 = (overrides == null ? void 0 : overrides.toolbar) === void 0 ? Object.values(toolbarItems) : overrides.toolbar.map((item) => toolbarItems[item]).filter((item) => item !== void 0);
|
|
14636
|
+
}
|
|
14769
14637
|
if (!showEmbedButton) {
|
|
14770
14638
|
items2 = items2.filter((item) => item.label !== toolbarItems.embed.label);
|
|
14771
14639
|
}
|
|
@@ -15093,6 +14961,9 @@ const isUrl = (string) => {
|
|
|
15093
14961
|
if (typeof string !== "string") {
|
|
15094
14962
|
return false;
|
|
15095
14963
|
}
|
|
14964
|
+
if (string.startsWith("#")) {
|
|
14965
|
+
return true;
|
|
14966
|
+
}
|
|
15096
14967
|
const generalMatch = string.match(protocolAndDomainRE);
|
|
15097
14968
|
const emailLinkMatch = string.match(emailLintRE);
|
|
15098
14969
|
const localUrlMatch = string.match(localUrlRE);
|
|
@@ -15114,12 +14985,12 @@ const isUrl = (string) => {
|
|
|
15114
14985
|
}
|
|
15115
14986
|
return localhostDomainRE.test(everythingAfterProtocol) || nonLocalhostDomainRE.test(everythingAfterProtocol);
|
|
15116
14987
|
};
|
|
15117
|
-
const RichEditor = (
|
|
14988
|
+
const RichEditor = ({ input, tinaForm, field }) => {
|
|
15118
14989
|
var _a;
|
|
15119
14990
|
const initialValue = React__default.useMemo(
|
|
15120
14991
|
() => {
|
|
15121
14992
|
var _a2, _b;
|
|
15122
|
-
return ((_b = (_a2 =
|
|
14993
|
+
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: "" }] }];
|
|
15123
14994
|
},
|
|
15124
14995
|
[]
|
|
15125
14996
|
);
|
|
@@ -15147,7 +15018,7 @@ const RichEditor = (props) => {
|
|
|
15147
15018
|
),
|
|
15148
15019
|
[]
|
|
15149
15020
|
);
|
|
15150
|
-
const tempId = [
|
|
15021
|
+
const tempId = [tinaForm.id, input.name].join(".");
|
|
15151
15022
|
const id = React__default.useMemo(() => uuid() + tempId, [tempId]);
|
|
15152
15023
|
const ref = React__default.useRef(null);
|
|
15153
15024
|
React__default.useEffect(() => {
|
|
@@ -15157,13 +15028,13 @@ const RichEditor = (props) => {
|
|
|
15157
15028
|
const plateElement = (_a2 = ref.current) == null ? void 0 : _a2.querySelector(
|
|
15158
15029
|
'[role="textbox"]'
|
|
15159
15030
|
);
|
|
15160
|
-
if (
|
|
15031
|
+
if (field.experimental_focusIntent && plateElement) {
|
|
15161
15032
|
if (plateElement)
|
|
15162
15033
|
plateElement.focus();
|
|
15163
15034
|
}
|
|
15164
15035
|
}, 100);
|
|
15165
15036
|
}
|
|
15166
|
-
}, [
|
|
15037
|
+
}, [field.experimental_focusIntent, ref]);
|
|
15167
15038
|
return /* @__PURE__ */ React__default.createElement("div", { ref }, /* @__PURE__ */ React__default.createElement(
|
|
15168
15039
|
Plate,
|
|
15169
15040
|
{
|
|
@@ -15171,7 +15042,7 @@ const RichEditor = (props) => {
|
|
|
15171
15042
|
initialValue,
|
|
15172
15043
|
plugins: plugins$2,
|
|
15173
15044
|
onChange: (value) => {
|
|
15174
|
-
|
|
15045
|
+
input.onChange({
|
|
15175
15046
|
type: "root",
|
|
15176
15047
|
children: value
|
|
15177
15048
|
});
|
|
@@ -15180,12 +15051,12 @@ const RichEditor = (props) => {
|
|
|
15180
15051
|
/* @__PURE__ */ React__default.createElement(TooltipProvider, null, /* @__PURE__ */ React__default.createElement(
|
|
15181
15052
|
ToolbarProvider,
|
|
15182
15053
|
{
|
|
15183
|
-
tinaForm
|
|
15184
|
-
templates:
|
|
15185
|
-
overrides: (
|
|
15054
|
+
tinaForm,
|
|
15055
|
+
templates: field.templates,
|
|
15056
|
+
overrides: (field == null ? void 0 : field.toolbarOverride) ? field.toolbarOverride : field.overrides
|
|
15186
15057
|
},
|
|
15187
15058
|
/* @__PURE__ */ React__default.createElement(FixedToolbar, null, /* @__PURE__ */ React__default.createElement(FixedToolbarButtons, null)),
|
|
15188
|
-
/* @__PURE__ */ React__default.createElement(FloatingToolbar, null, /* @__PURE__ */ React__default.createElement(FloatingToolbarButtons, null))
|
|
15059
|
+
((_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
|
|
15189
15060
|
), /* @__PURE__ */ React__default.createElement(Editor, null))
|
|
15190
15061
|
));
|
|
15191
15062
|
};
|
|
@@ -30139,6 +30010,7 @@ class TinaAdminApi {
|
|
|
30139
30010
|
relativePath
|
|
30140
30011
|
filename
|
|
30141
30012
|
extension
|
|
30013
|
+
hasReferences
|
|
30142
30014
|
}
|
|
30143
30015
|
}
|
|
30144
30016
|
}
|
|
@@ -30230,6 +30102,9 @@ class TinaAdminApi {
|
|
|
30230
30102
|
document(collection:$collection, relativePath:$relativePath) {
|
|
30231
30103
|
... on Document {
|
|
30232
30104
|
_values
|
|
30105
|
+
_sys {
|
|
30106
|
+
hasReferences
|
|
30107
|
+
}
|
|
30233
30108
|
}
|
|
30234
30109
|
}
|
|
30235
30110
|
}`;
|
|
@@ -31956,6 +31831,23 @@ const CollectionListPage = () => {
|
|
|
31956
31831
|
DeleteModal,
|
|
31957
31832
|
{
|
|
31958
31833
|
filename: vars.relativePath,
|
|
31834
|
+
checkRefsFunc: async () => {
|
|
31835
|
+
var _a2, _b2;
|
|
31836
|
+
try {
|
|
31837
|
+
const doc = await admin.fetchDocument(
|
|
31838
|
+
collection.name,
|
|
31839
|
+
vars.relativePath,
|
|
31840
|
+
true
|
|
31841
|
+
);
|
|
31842
|
+
return (_b2 = (_a2 = doc == null ? void 0 : doc.document) == null ? void 0 : _a2._sys) == null ? void 0 : _b2.hasReferences;
|
|
31843
|
+
} catch (error) {
|
|
31844
|
+
cms.alerts.error(
|
|
31845
|
+
"Document was not found, ask a developer for help or check the console for an error message"
|
|
31846
|
+
);
|
|
31847
|
+
console.error(error);
|
|
31848
|
+
throw error;
|
|
31849
|
+
}
|
|
31850
|
+
},
|
|
31959
31851
|
deleteFunc: async () => {
|
|
31960
31852
|
try {
|
|
31961
31853
|
await admin.deleteDocument(vars);
|
|
@@ -31964,6 +31856,12 @@ const CollectionListPage = () => {
|
|
|
31964
31856
|
);
|
|
31965
31857
|
reFetchCollection();
|
|
31966
31858
|
} catch (error) {
|
|
31859
|
+
if (error.message.indexOf("has references")) {
|
|
31860
|
+
cms.alerts.error(
|
|
31861
|
+
error.message.split("\n ").filter(Boolean)[1]
|
|
31862
|
+
);
|
|
31863
|
+
return;
|
|
31864
|
+
}
|
|
31967
31865
|
cms.alerts.warn(
|
|
31968
31866
|
"Document was not deleted, ask a developer for help or check the console for an error message"
|
|
31969
31867
|
);
|
|
@@ -32015,6 +31913,12 @@ const CollectionListPage = () => {
|
|
|
32015
31913
|
cms.alerts.info("Document was successfully renamed");
|
|
32016
31914
|
reFetchCollection();
|
|
32017
31915
|
} catch (error) {
|
|
31916
|
+
if (error.message.indexOf("has references")) {
|
|
31917
|
+
cms.alerts.error(
|
|
31918
|
+
error.message.split("\n ").filter(Boolean)[1]
|
|
31919
|
+
);
|
|
31920
|
+
return;
|
|
31921
|
+
}
|
|
32018
31922
|
cms.alerts.warn(
|
|
32019
31923
|
"Document was not renamed, ask a developer for help or check the console for an error message"
|
|
32020
31924
|
);
|
|
@@ -32488,8 +32392,19 @@ const Breadcrumb = ({ folder, navigate, collectionName }) => {
|
|
|
32488
32392
|
const NoDocumentsPlaceholder = () => {
|
|
32489
32393
|
return /* @__PURE__ */ React__default.createElement("div", { className: "text-center px-5 py-3 flex flex-col items-center justify-center shadow border border-gray-100 bg-gray-50 border-b border-gray-200 w-full max-w-full rounded-lg" }, /* @__PURE__ */ React__default.createElement("p", { className: "text-base italic font-medium text-gray-300" }, "No documents found."));
|
|
32490
32394
|
};
|
|
32491
|
-
const DeleteModal = ({
|
|
32492
|
-
|
|
32395
|
+
const DeleteModal = ({
|
|
32396
|
+
close: close2,
|
|
32397
|
+
deleteFunc,
|
|
32398
|
+
checkRefsFunc,
|
|
32399
|
+
filename
|
|
32400
|
+
}) => {
|
|
32401
|
+
const [hasRefs, setHasRefs] = React__default.useState();
|
|
32402
|
+
useEffect(() => {
|
|
32403
|
+
checkRefsFunc().then((result) => {
|
|
32404
|
+
setHasRefs(result);
|
|
32405
|
+
});
|
|
32406
|
+
}, [filename, checkRefsFunc]);
|
|
32407
|
+
return /* @__PURE__ */ React__default.createElement(Modal, null, /* @__PURE__ */ React__default.createElement(PopupModal, null, /* @__PURE__ */ React__default.createElement(ModalHeader, { close: close2 }, "Delete ", filename), /* @__PURE__ */ React__default.createElement(ModalBody, { padded: true }, /* @__PURE__ */ React__default.createElement("p", null, `Are you sure you want to delete ${filename}?${hasRefs ? " References to this document will also be deleted." : ""}`)), /* @__PURE__ */ React__default.createElement(ModalActions, null, /* @__PURE__ */ React__default.createElement(Button$1, { style: { flexGrow: 2 }, onClick: close2 }, "Cancel"), /* @__PURE__ */ React__default.createElement(
|
|
32493
32408
|
Button$1,
|
|
32494
32409
|
{
|
|
32495
32410
|
style: { flexGrow: 3 },
|
|
@@ -33221,15 +33136,24 @@ const IndexingPage = () => {
|
|
|
33221
33136
|
}
|
|
33222
33137
|
}
|
|
33223
33138
|
if (state === "creatingPR") {
|
|
33224
|
-
|
|
33225
|
-
|
|
33226
|
-
|
|
33227
|
-
|
|
33228
|
-
|
|
33229
|
-
|
|
33230
|
-
|
|
33231
|
-
|
|
33232
|
-
|
|
33139
|
+
try {
|
|
33140
|
+
const foo = await tinaApi.createPullRequest({
|
|
33141
|
+
baseBranch,
|
|
33142
|
+
branch,
|
|
33143
|
+
title: `${branch.replace("tina/", "").replace("-", " ")} (PR from TinaCMS)`
|
|
33144
|
+
});
|
|
33145
|
+
console.log("PR created", foo);
|
|
33146
|
+
cms.alerts.success("Pull request created.");
|
|
33147
|
+
localStorage.setItem("tina.createBranchState", "done");
|
|
33148
|
+
setState("done");
|
|
33149
|
+
} catch (e) {
|
|
33150
|
+
console.error(e);
|
|
33151
|
+
cms.alerts.error("Failed to create PR");
|
|
33152
|
+
setErrorMessage(
|
|
33153
|
+
"Failed to create PR, please try again. If the problem persists please contact support."
|
|
33154
|
+
);
|
|
33155
|
+
setState("error");
|
|
33156
|
+
}
|
|
33233
33157
|
}
|
|
33234
33158
|
if (state === "done") {
|
|
33235
33159
|
window.location.href = back;
|