tinacms 2.2.4 → 2.2.6
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/README.md +78 -3
- package/dist/admin/pages/CollectionCreatePage.d.ts +2 -1
- package/dist/admin/pages/CollectionListPage.d.ts +2 -2
- package/dist/cache/node-cache.d.ts +1 -1
- package/dist/client.js +60 -3
- package/dist/client.mjs +16 -3
- package/dist/index.js +718 -301
- package/dist/index.mjs +721 -304
- package/dist/node-cache-2267a9e4.mjs +43 -0
- package/dist/toolkit/fields/plugins/blocks-field-plugin/block-selector-big.d.ts +1 -1
- package/dist/toolkit/fields/plugins/blocks-field-plugin/block-selector.d.ts +1 -1
- package/dist/toolkit/react-sidebar/components/nav.d.ts +1 -1
- package/dist/toolkit/react-sidebar/components/sidebar.d.ts +1 -6
- package/dist/unifiedClient/index.d.ts +3 -0
- package/package.json +24 -20
- package/dist/cache.js +0 -36
- package/dist/cache.mjs +0 -32
package/dist/index.mjs
CHANGED
|
@@ -6,21 +6,21 @@ 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, createContext, forwardRef, useContext, useEffect, useMemo, startTransition,
|
|
9
|
+
import React__default, { useState, useCallback, createContext, forwardRef, useContext, useEffect, useMemo, startTransition, useRef, createElement, Component } from "react";
|
|
10
10
|
import { createPortal, findDOMNode } from "react-dom";
|
|
11
11
|
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, unwrapList, ELEMENT_TODO_LI, createTrailingBlockPlugin, createAutoformatPlugin, createExitBreakPlugin, KEYS_HEADING, createResetNodePlugin, createHeadingPlugin, createParagraphPlugin, createBlockquotePlugin, createBoldPlugin, createItalicPlugin, createUnderlinePlugin, createCodePlugin, createListPlugin, createIndentPlugin, createIndentListPlugin, createHorizontalRulePlugin, createNodeIdPlugin, getListItemEntry, useListToolbarButtonState, useListToolbarButton } from "@udecode/plate";
|
|
12
12
|
import { useSelected, ReactEditor } from "slate-react";
|
|
13
13
|
import { ELEMENT_SLASH_INPUT, createSlashPlugin } from "@udecode/plate-slash-command";
|
|
14
14
|
import { cn as cn$1, withRef, withVariants, withProps, withCn, createPrimitiveElement } from "@udecode/cn";
|
|
15
15
|
import { useComposedRef, useEditorRef, findNodePath, getPointBefore, createPointRef, insertText, moveSelection, PlateElement, toggleNodeType, PlateLeaf, isCollapsed, getPointAfter, insertNodes, ELEMENT_DEFAULT, focusEditor, setNodes, isElement, createPluginFactory, normalizeEditor, getBlockAbove, queryNode, getParentNode, isType, someNode, isSelectionAtBlockStart, setElements, insertNode, getPluginType, isBlock, isBlockAboveEmpty, findNode, PlateContent, useMarkToolbarButtonState, useMarkToolbarButton, useEditorState, useEditorSelector, getNodeEntries, collapseSelection, usePlateSelectors, useEventEditorSelectors, PortalBody, useFormInputProps, createPlugins, Plate } from "@udecode/plate-common";
|
|
16
|
-
import { ELEMENT_H1, ELEMENT_H2, ELEMENT_H3, ELEMENT_H4 as ELEMENT_H4$1, ELEMENT_H5 as ELEMENT_H5$1 } from "@udecode/plate-heading";
|
|
16
|
+
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";
|
|
17
17
|
import { cva } from "class-variance-authority";
|
|
18
18
|
import { 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, Eye, Moon, SunMedium, Twitter } from "lucide-react";
|
|
19
19
|
import { useComboboxContext, Combobox, useComboboxStore, ComboboxProvider, Portal, ComboboxPopover, ComboboxItem } from "@ariakit/react";
|
|
20
20
|
import { useHTMLInputCursorState, useComboboxInput, filterWords } from "@udecode/plate-combobox";
|
|
21
21
|
import { useCodeSyntaxLeaf, useCodeBlockElementState, ELEMENT_CODE_BLOCK as ELEMENT_CODE_BLOCK$1 } from "@udecode/plate-code-block";
|
|
22
22
|
import MonacoEditor, { loader, useMonaco } from "@monaco-editor/react";
|
|
23
|
-
import { Combobox as Combobox$1, Transition, Popover as Popover$2, Disclosure, Menu } from "@headlessui/react";
|
|
23
|
+
import { Combobox as Combobox$1, ComboboxInput, ComboboxButton, Transition, ComboboxOptions, ComboboxOption, Popover as Popover$2, PopoverButton, PopoverPanel, TransitionChild, Disclosure, DisclosureButton, DisclosurePanel, Menu, MenuButton, MenuItems, MenuItem } from "@headlessui/react";
|
|
24
24
|
import arrayMutators from "final-form-arrays";
|
|
25
25
|
import setFieldData from "final-form-set-field-data";
|
|
26
26
|
import { FORM_ERROR, createForm, getIn } from "final-form";
|
|
@@ -1865,14 +1865,14 @@ const Autocomplete = ({
|
|
|
1865
1865
|
className: "relative inline-block text-left z-20"
|
|
1866
1866
|
},
|
|
1867
1867
|
/* @__PURE__ */ React__default.createElement("div", { className: "mt-1" }, /* @__PURE__ */ React__default.createElement("div", { className: "relative w-full cursor-default overflow-hidden rounded-lg bg-white text-left shadow-md sm:text-sm" }, /* @__PURE__ */ React__default.createElement(
|
|
1868
|
-
|
|
1868
|
+
ComboboxInput,
|
|
1869
1869
|
{
|
|
1870
1870
|
className: "w-full border-none py-2 pl-3 pr-10 text-sm leading-5 text-gray-900 focus:ring-0 focus:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-opacity-75 focus-visible:ring-offset-2 focus-visible:ring-offset-teal-300",
|
|
1871
1871
|
displayValue: (item) => (item == null ? void 0 : item.label) ?? "Plain Text",
|
|
1872
1872
|
onChange: (event) => setQuery(event.target.value),
|
|
1873
1873
|
onClick: (ev) => ev.stopPropagation()
|
|
1874
1874
|
}
|
|
1875
|
-
), /* @__PURE__ */ React__default.createElement(
|
|
1875
|
+
), /* @__PURE__ */ React__default.createElement(ComboboxButton, { className: "absolute inset-y-0 right-0 flex items-center pr-2" }, /* @__PURE__ */ React__default.createElement(
|
|
1876
1876
|
ChevronDownIcon$1,
|
|
1877
1877
|
{
|
|
1878
1878
|
className: "h-5 w-5 text-gray-400",
|
|
@@ -1882,7 +1882,6 @@ const Autocomplete = ({
|
|
|
1882
1882
|
/* @__PURE__ */ React__default.createElement(
|
|
1883
1883
|
Transition,
|
|
1884
1884
|
{
|
|
1885
|
-
as: Fragment,
|
|
1886
1885
|
enter: "transition ease-out duration-100",
|
|
1887
1886
|
enterFrom: "transform opacity-0 scale-95",
|
|
1888
1887
|
enterTo: "transform opacity-100 scale-100",
|
|
@@ -1890,11 +1889,11 @@ const Autocomplete = ({
|
|
|
1890
1889
|
leaveFrom: "transform opacity-100 scale-100",
|
|
1891
1890
|
leaveTo: "transform opacity-0 scale-95"
|
|
1892
1891
|
},
|
|
1893
|
-
/* @__PURE__ */ React__default.createElement(
|
|
1892
|
+
/* @__PURE__ */ React__default.createElement(ComboboxOptions, { className: "origin-top-right absolute right-0 mt-1 w-full max-h-[300px] overflow-y-auto rounded-md shadow-lg bg-white ring-1 ring-black ring-opacity-5 focus:outline-none" }, filteredItems.map((item) => /* @__PURE__ */ React__default.createElement(ComboboxOption, { key: item.key, value: item }, ({ focus }) => /* @__PURE__ */ React__default.createElement(
|
|
1894
1893
|
"button",
|
|
1895
1894
|
{
|
|
1896
1895
|
className: classNames$1(
|
|
1897
|
-
|
|
1896
|
+
focus ? "bg-gray-100 text-gray-900" : "text-gray-700",
|
|
1898
1897
|
"block px-4 py-2 text-xs w-full text-right"
|
|
1899
1898
|
)
|
|
1900
1899
|
},
|
|
@@ -3371,6 +3370,9 @@ function BiCopyAlt(props) {
|
|
|
3371
3370
|
function BiCopy(props) {
|
|
3372
3371
|
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24" }, "child": [{ "tag": "path", "attr": { "d": "M20 2H10c-1.103 0-2 .897-2 2v4H4c-1.103 0-2 .897-2 2v10c0 1.103.897 2 2 2h10c1.103 0 2-.897 2-2v-4h4c1.103 0 2-.897 2-2V4c0-1.103-.897-2-2-2zM4 20V10h10l.002 10H4zm16-6h-4v-4c0-1.103-.897-2-2-2h-4V4h10v10z" }, "child": [] }] })(props);
|
|
3373
3372
|
}
|
|
3373
|
+
function BiDotsVertical(props) {
|
|
3374
|
+
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24" }, "child": [{ "tag": "path", "attr": { "d": "M10 10h4v4h-4zm0-6h4v4h-4zm0 12h4v4h-4z" }, "child": [] }] })(props);
|
|
3375
|
+
}
|
|
3374
3376
|
function BiEdit(props) {
|
|
3375
3377
|
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24" }, "child": [{ "tag": "path", "attr": { "d": "m7 17.013 4.413-.015 9.632-9.54c.378-.378.586-.88.586-1.414s-.208-1.036-.586-1.414l-1.586-1.586c-.756-.756-2.075-.752-2.825-.003L7 12.583v4.43zM18.045 4.458l1.589 1.583-1.597 1.582-1.586-1.585 1.594-1.58zM9 13.417l6.03-5.973 1.586 1.586-6.029 5.971L9 15.006v-1.589z" }, "child": [] }, { "tag": "path", "attr": { "d": "M5 21h14c1.103 0 2-.897 2-2v-8.668l-2 2V19H8.158c-.026 0-.053.01-.079.01-.033 0-.066-.009-.1-.01H5V5h6.847l2-2H5c-1.103 0-2 .897-2 2v14c0 1.103.897 2 2 2z" }, "child": [] }] })(props);
|
|
3376
3378
|
}
|
|
@@ -5130,7 +5132,7 @@ const BlockSelector = ({
|
|
|
5130
5132
|
return template.label ? template.label.toLowerCase().includes(filter.toLowerCase()) || name.toLowerCase().includes(filter.toLowerCase()) : name.toLowerCase().includes(filter.toLowerCase());
|
|
5131
5133
|
});
|
|
5132
5134
|
}, [filter]);
|
|
5133
|
-
return /* @__PURE__ */ React.createElement(Popover$2, null, ({ open: open2 }) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
|
|
5135
|
+
return /* @__PURE__ */ React.createElement(Popover$2, null, ({ open: open2 }) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(PopoverButton, { as: "span" }, /* @__PURE__ */ React.createElement(
|
|
5134
5136
|
IconButton,
|
|
5135
5137
|
{
|
|
5136
5138
|
variant: open2 ? "secondary" : "primary",
|
|
@@ -5148,7 +5150,7 @@ const BlockSelector = ({
|
|
|
5148
5150
|
leaveFrom: "transform opacity-100 translate-y-0",
|
|
5149
5151
|
leaveTo: "transform opacity-0 -translate-y-2"
|
|
5150
5152
|
},
|
|
5151
|
-
/* @__PURE__ */ React.createElement(
|
|
5153
|
+
/* @__PURE__ */ React.createElement(PopoverPanel, { className: "relative overflow-hidden rounded-lg shadow-lg bg-white border border-gray-100" }, ({ close: close2 }) => /* @__PURE__ */ React.createElement("div", { className: "min-w-[192px] max-h-[24rem] overflow-y-auto flex flex-col w-full h-full" }, showFilter && /* @__PURE__ */ React.createElement("div", { className: "sticky top-0 bg-gray-50 p-2 border-b border-gray-100 z-10" }, /* @__PURE__ */ React.createElement(
|
|
5152
5154
|
"input",
|
|
5153
5155
|
{
|
|
5154
5156
|
type: "text",
|
|
@@ -5321,14 +5323,13 @@ const BlockSelectorBig = ({
|
|
|
5321
5323
|
{
|
|
5322
5324
|
variant: pickerIsOpen ? "secondary" : "primary",
|
|
5323
5325
|
size: "small",
|
|
5324
|
-
className: `${pickerIsOpen ?
|
|
5326
|
+
className: `${pickerIsOpen ? "rotate-45 pointer-events-none" : ""}`,
|
|
5325
5327
|
onClick: () => setPickerIsOpen(!pickerIsOpen)
|
|
5326
5328
|
},
|
|
5327
5329
|
/* @__PURE__ */ React.createElement(AddIcon, { className: "w-5/6 h-auto" })
|
|
5328
5330
|
), /* @__PURE__ */ React.createElement(FormPortal, null, ({ zIndexShift }) => /* @__PURE__ */ React.createElement(Transition, { show: pickerIsOpen }, /* @__PURE__ */ React.createElement(
|
|
5329
|
-
|
|
5331
|
+
TransitionChild,
|
|
5330
5332
|
{
|
|
5331
|
-
as: React.Fragment,
|
|
5332
5333
|
enter: "transform transition-all ease-out duration-200",
|
|
5333
5334
|
enterFrom: "opacity-0 -translate-x-1/2",
|
|
5334
5335
|
enterTo: "opacity-100 translate-x-0",
|
|
@@ -5421,7 +5422,7 @@ const BlockGroup = ({ category, templates, close: close2, isLast = false }) => {
|
|
|
5421
5422
|
className: `left-0 right-0 relative`
|
|
5422
5423
|
},
|
|
5423
5424
|
({ open: open2 }) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
|
|
5424
|
-
|
|
5425
|
+
DisclosureButton,
|
|
5425
5426
|
{
|
|
5426
5427
|
className: `relative block group text-left w-full text-base font-bold tracking-wide py-2 truncate ${templates.length === 0 ? `pointer-events-none` : ``} ${!isLast && (!open2 || templates.length === 0) && `border-b border-gray-100`}`
|
|
5427
5428
|
},
|
|
@@ -5448,7 +5449,15 @@ const BlockGroup = ({ category, templates, close: close2, isLast = false }) => {
|
|
|
5448
5449
|
leaveFrom: "transform scale-100 opacity-100",
|
|
5449
5450
|
leaveTo: "transform scale-95 opacity-0"
|
|
5450
5451
|
},
|
|
5451
|
-
/* @__PURE__ */ React.createElement(
|
|
5452
|
+
/* @__PURE__ */ React.createElement(DisclosurePanel, null, templates.length > 0 && /* @__PURE__ */ React.createElement(CardColumns, null, templates.map(([name, template], index) => /* @__PURE__ */ React.createElement(
|
|
5453
|
+
BlockCard,
|
|
5454
|
+
{
|
|
5455
|
+
key: index,
|
|
5456
|
+
close: close2,
|
|
5457
|
+
name,
|
|
5458
|
+
template
|
|
5459
|
+
}
|
|
5460
|
+
))))
|
|
5452
5461
|
))
|
|
5453
5462
|
);
|
|
5454
5463
|
};
|
|
@@ -9258,11 +9267,12 @@ const FormListItem = ({
|
|
|
9258
9267
|
};
|
|
9259
9268
|
const FormLists = (props) => {
|
|
9260
9269
|
const cms = useCMS();
|
|
9261
|
-
return /* @__PURE__ */ React.createElement(
|
|
9270
|
+
return /* @__PURE__ */ React.createElement(
|
|
9262
9271
|
Transition,
|
|
9263
9272
|
{
|
|
9264
9273
|
appear: true,
|
|
9265
9274
|
show: true,
|
|
9275
|
+
as: "div",
|
|
9266
9276
|
enter: "transition-all ease-out duration-150",
|
|
9267
9277
|
enterFrom: "opacity-0 -translate-x-1/2",
|
|
9268
9278
|
enterTo: "opacity-100",
|
|
@@ -9280,7 +9290,7 @@ const FormLists = (props) => {
|
|
|
9280
9290
|
formList
|
|
9281
9291
|
}
|
|
9282
9292
|
)))
|
|
9283
|
-
)
|
|
9293
|
+
);
|
|
9284
9294
|
};
|
|
9285
9295
|
const FormList = (props) => {
|
|
9286
9296
|
const cms = useCMS();
|
|
@@ -9312,7 +9322,7 @@ const FormList = (props) => {
|
|
|
9312
9322
|
}
|
|
9313
9323
|
return [...topItems, ...orderedListItems, ...extra];
|
|
9314
9324
|
}, [JSON.stringify(props.formList.items)]);
|
|
9315
|
-
return /* @__PURE__ */ React.createElement("ul", null, /* @__PURE__ */ React.createElement("li", { className:
|
|
9325
|
+
return /* @__PURE__ */ React.createElement("ul", null, /* @__PURE__ */ React.createElement("li", { className: "divide-y divide-gray-200" }, listItems.map((item, index) => {
|
|
9316
9326
|
if (item.type === "list") {
|
|
9317
9327
|
return /* @__PURE__ */ React.createElement(
|
|
9318
9328
|
"div",
|
|
@@ -9403,19 +9413,46 @@ const MultiformFormHeader = ({
|
|
|
9403
9413
|
}
|
|
9404
9414
|
}
|
|
9405
9415
|
},
|
|
9416
|
+
/* @__PURE__ */ React.createElement(BiDotsVertical, { className: "h-auto w-5 inline-block opacity-70" })
|
|
9417
|
+
), /* @__PURE__ */ React.createElement(
|
|
9418
|
+
"button",
|
|
9419
|
+
{
|
|
9420
|
+
type: "button",
|
|
9421
|
+
className: "pointer-events-auto text-xs text-blue-400 hover:text-blue-500 hover:underline transition-all ease-out duration-150",
|
|
9422
|
+
onClick: () => {
|
|
9423
|
+
const collectionName = cms.api.tina.schema.getCollectionByFullPath(
|
|
9424
|
+
cms.state.activeFormId
|
|
9425
|
+
).name;
|
|
9426
|
+
window.location.href = `${new URL(window.location.href).pathname}#/collections/${collectionName}/~`;
|
|
9427
|
+
}
|
|
9428
|
+
},
|
|
9406
9429
|
/* @__PURE__ */ React.createElement(BiHomeAlt, { className: "h-auto w-5 inline-block opacity-70" })
|
|
9407
9430
|
), /* @__PURE__ */ React.createElement("span", { className: "opacity-30 text-sm leading-tight whitespace-nowrap flex-0" }, "/"), /* @__PURE__ */ React.createElement("span", { className: "block w-full text-sm leading-tight whitespace-nowrap truncate" }, activeForm.tinaForm.label || activeForm.tinaForm.id), /* @__PURE__ */ React.createElement(FormStatus, { pristine: formIsPristine }))
|
|
9408
9431
|
);
|
|
9409
9432
|
};
|
|
9410
9433
|
const FormHeader = ({ activeForm }) => {
|
|
9411
9434
|
const { formIsPristine } = React.useContext(SidebarContext);
|
|
9435
|
+
const cms = useCMS$1();
|
|
9412
9436
|
const shortFormLabel = activeForm.tinaForm.label ? activeForm.tinaForm.label.replace(/^.*[\\\/]/, "") : false;
|
|
9413
9437
|
return /* @__PURE__ */ React.createElement(
|
|
9414
9438
|
"div",
|
|
9415
9439
|
{
|
|
9416
9440
|
className: "pt-18 pb-4 px-6 border-b border-gray-200 bg-gradient-to-t from-white to-gray-50"
|
|
9417
9441
|
},
|
|
9418
|
-
/* @__PURE__ */ React.createElement("div", { className: "max-w-form mx-auto flex gap-2 justify-between items-center" },
|
|
9442
|
+
/* @__PURE__ */ React.createElement("div", { className: "max-w-form mx-auto flex gap-2 justify-between items-center" }, /* @__PURE__ */ React.createElement(
|
|
9443
|
+
"button",
|
|
9444
|
+
{
|
|
9445
|
+
type: "button",
|
|
9446
|
+
className: "pointer-events-auto text-xs text-blue-400 hover:text-blue-500 hover:underline transition-all ease-out duration-150",
|
|
9447
|
+
onClick: () => {
|
|
9448
|
+
const collectionName = cms.api.tina.schema.getCollectionByFullPath(
|
|
9449
|
+
cms.state.activeFormId
|
|
9450
|
+
).name;
|
|
9451
|
+
window.location.href = `${new URL(window.location.href).pathname}#/collections/${collectionName}/~`;
|
|
9452
|
+
}
|
|
9453
|
+
},
|
|
9454
|
+
/* @__PURE__ */ React.createElement(BiHomeAlt, { className: "h-auto w-5 inline-block opacity-70" })
|
|
9455
|
+
), shortFormLabel && /* @__PURE__ */ React.createElement("span", { className: "block w-full text-sm leading-tight whitespace-nowrap truncate" }, shortFormLabel), /* @__PURE__ */ React.createElement(FormStatus, { pristine: formIsPristine }))
|
|
9419
9456
|
);
|
|
9420
9457
|
};
|
|
9421
9458
|
function ImFilesEmpty(props) {
|
|
@@ -9660,6 +9697,7 @@ const SyncStatus = ({ cms, setEventsOpen }) => {
|
|
|
9660
9697
|
"Event Log"
|
|
9661
9698
|
));
|
|
9662
9699
|
};
|
|
9700
|
+
const version = "2.2.6";
|
|
9663
9701
|
const Nav = ({
|
|
9664
9702
|
isLocalMode,
|
|
9665
9703
|
className = "",
|
|
@@ -9710,13 +9748,13 @@ const Nav = ({
|
|
|
9710
9748
|
"div",
|
|
9711
9749
|
{
|
|
9712
9750
|
className: `relative z-30 flex flex-col bg-white border-r border-gray-200 w-96 h-full ${className}`,
|
|
9713
|
-
style: { maxWidth: sidebarWidth
|
|
9751
|
+
style: { maxWidth: `${sidebarWidth}px` },
|
|
9714
9752
|
...props
|
|
9715
9753
|
},
|
|
9716
9754
|
/* @__PURE__ */ React.createElement("div", { className: "border-b border-gray-200" }, /* @__PURE__ */ React.createElement(Menu, { as: "div", className: "relative block" }, ({ open: open2 }) => /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(
|
|
9717
|
-
|
|
9755
|
+
MenuButton,
|
|
9718
9756
|
{
|
|
9719
|
-
className: `group w-full px-6 py-3 gap-2 flex justify-between items-center transition-colors duration-150 ease-out ${open2 ?
|
|
9757
|
+
className: `group w-full px-6 py-3 gap-2 flex justify-between items-center transition-colors duration-150 ease-out ${open2 ? "bg-gray-50" : "bg-transparent"}`
|
|
9720
9758
|
},
|
|
9721
9759
|
/* @__PURE__ */ React.createElement("span", { className: "text-left inline-flex items-center text-xl tracking-wide text-gray-800 flex-1 gap-1 opacity-80 group-hover:opacity-100 transition-opacity duration-150 ease-out" }, /* @__PURE__ */ React.createElement(
|
|
9722
9760
|
"svg",
|
|
@@ -9733,7 +9771,7 @@ const Nav = ({
|
|
|
9733
9771
|
/* @__PURE__ */ React.createElement(
|
|
9734
9772
|
FiMoreVertical,
|
|
9735
9773
|
{
|
|
9736
|
-
className: `flex-0 w-6 h-full inline-block group-hover:opacity-80 transition-all duration-300 ease-in-out transform ${open2 ?
|
|
9774
|
+
className: `flex-0 w-6 h-full inline-block group-hover:opacity-80 transition-all duration-300 ease-in-out transform ${open2 ? "opacity-100 text-blue-400" : "text-gray-400 opacity-50 hover:opacity-70"}`
|
|
9737
9775
|
}
|
|
9738
9776
|
)
|
|
9739
9777
|
), /* @__PURE__ */ React.createElement("div", { className: "transform translate-y-full absolute bottom-3 right-5 z-50" }, /* @__PURE__ */ React.createElement(
|
|
@@ -9746,7 +9784,7 @@ const Nav = ({
|
|
|
9746
9784
|
leaveFrom: "transform opacity-100 translate-y-0",
|
|
9747
9785
|
leaveTo: "transform opacity-0 -translate-y-2"
|
|
9748
9786
|
},
|
|
9749
|
-
/* @__PURE__ */ React.createElement(
|
|
9787
|
+
/* @__PURE__ */ React.createElement(MenuItems, { className: "bg-white border border-gray-150 rounded-lg shadow-lg flex flex-col items-stretch overflow-hidden" }, /* @__PURE__ */ React.createElement(MenuItem, null, /* @__PURE__ */ React.createElement(
|
|
9750
9788
|
"button",
|
|
9751
9789
|
{
|
|
9752
9790
|
className: `text-lg px-4 py-2 first:pt-3 last:pb-3 tracking-wide whitespace-nowrap flex items-center opacity-80 text-gray-600 hover:text-blue-400 hover:bg-gray-50 hover:opacity-100`,
|
|
@@ -9779,7 +9817,7 @@ const Nav = ({
|
|
|
9779
9817
|
},
|
|
9780
9818
|
/* @__PURE__ */ React.createElement(BiExit, { className: "w-6 h-auto mr-2 text-blue-400" }),
|
|
9781
9819
|
" Log Out"
|
|
9782
|
-
)), /* @__PURE__ */ React.createElement(
|
|
9820
|
+
)), /* @__PURE__ */ React.createElement(MenuItem, null, /* @__PURE__ */ React.createElement(
|
|
9783
9821
|
WrappedSyncStatus,
|
|
9784
9822
|
{
|
|
9785
9823
|
cms,
|
|
@@ -9789,7 +9827,7 @@ const Nav = ({
|
|
|
9789
9827
|
))))),
|
|
9790
9828
|
eventsOpen && /* @__PURE__ */ React.createElement(SyncStatusModal, { cms, closeEventsModal }),
|
|
9791
9829
|
children,
|
|
9792
|
-
/* @__PURE__ */ React.createElement("div", { className: "px-6 flex-1 overflow-auto" }, showCollections && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h4", { className: "flex space-x-1 justify-items-start uppercase font-sans font-bold text-sm mb-3 mt-8 text-gray-700" }, /* @__PURE__ */ React.createElement("span", null, "Collections"), isLocalMode && /* @__PURE__ */ React.createElement("span", { className: "flex items-center" }, /* @__PURE__ */ React.createElement(
|
|
9830
|
+
/* @__PURE__ */ React.createElement("div", { className: "flex flex-col px-6 flex-1 overflow-auto" }, showCollections && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h4", { className: "flex space-x-1 justify-items-start uppercase font-sans font-bold text-sm mb-3 mt-8 text-gray-700" }, /* @__PURE__ */ React.createElement("span", null, "Collections"), isLocalMode && /* @__PURE__ */ React.createElement("span", { className: "flex items-center" }, /* @__PURE__ */ React.createElement(
|
|
9793
9831
|
"a",
|
|
9794
9832
|
{
|
|
9795
9833
|
href: "https://tina.io/docs/schema/#defining-collections",
|
|
@@ -9820,7 +9858,7 @@ const Nav = ({
|
|
|
9820
9858
|
}
|
|
9821
9859
|
}), !!(cloudConfigs == null ? void 0 : cloudConfigs.length) && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h4", { className: "uppercase font-sans font-bold text-sm mb-3 mt-8 text-gray-700" }, "Cloud"), /* @__PURE__ */ React.createElement("ul", { className: "flex flex-col gap-4" }, cloudConfigs.map((config) => {
|
|
9822
9860
|
return /* @__PURE__ */ React.createElement("li", { key: `nav-site-${config.name}` }, /* @__PURE__ */ React.createElement(RenderNavCloud, { config }));
|
|
9823
|
-
}))))
|
|
9861
|
+
}))), /* @__PURE__ */ React.createElement("div", { className: "grow" }), /* @__PURE__ */ React.createElement("span", { className: "font-sans font-light text-xs mb-3 mt-8 text-gray-500" }, "v", version))
|
|
9824
9862
|
);
|
|
9825
9863
|
};
|
|
9826
9864
|
const CollectionsList = ({
|
|
@@ -10125,10 +10163,9 @@ const Sidebar$1 = ({
|
|
|
10125
10163
|
screen: activeScreen,
|
|
10126
10164
|
close: () => setActiveView(null)
|
|
10127
10165
|
}
|
|
10128
|
-
)), /* @__PURE__ */ React.createElement(ResizeHandle, null)), renderMobileNav && /* @__PURE__ */ React.createElement(Transition, { show: menuIsOpen }, /* @__PURE__ */ React.createElement(
|
|
10129
|
-
|
|
10166
|
+
)), /* @__PURE__ */ React.createElement(ResizeHandle, null)), renderMobileNav && /* @__PURE__ */ React.createElement(Transition, { show: menuIsOpen, as: "div" }, /* @__PURE__ */ React.createElement(
|
|
10167
|
+
TransitionChild,
|
|
10130
10168
|
{
|
|
10131
|
-
as: React.Fragment,
|
|
10132
10169
|
enter: "transform transition-all ease-out duration-300",
|
|
10133
10170
|
enterFrom: "opacity-0 -translate-x-full",
|
|
10134
10171
|
enterTo: "opacity-100 translate-x-0",
|
|
@@ -10186,15 +10223,14 @@ const Sidebar$1 = ({
|
|
|
10186
10223
|
onClick: () => {
|
|
10187
10224
|
setMenuIsOpen(false);
|
|
10188
10225
|
},
|
|
10189
|
-
className:
|
|
10226
|
+
className: "transition-opacity duration-150 ease-out"
|
|
10190
10227
|
},
|
|
10191
10228
|
/* @__PURE__ */ React.createElement(IoMdClose, { className: "h-5 w-auto text-blue-500" })
|
|
10192
10229
|
))
|
|
10193
10230
|
))
|
|
10194
10231
|
), /* @__PURE__ */ React.createElement(
|
|
10195
|
-
|
|
10232
|
+
TransitionChild,
|
|
10196
10233
|
{
|
|
10197
|
-
as: React.Fragment,
|
|
10198
10234
|
enter: "ease-out duration-300",
|
|
10199
10235
|
enterFrom: "opacity-0",
|
|
10200
10236
|
enterTo: "opacity-80",
|
|
@@ -10230,7 +10266,7 @@ const updateBodyDisplacement = ({
|
|
|
10230
10266
|
sidebarWidth,
|
|
10231
10267
|
windowWidth - minPreviewWidth
|
|
10232
10268
|
);
|
|
10233
|
-
body.style.paddingLeft = bodyDisplacement
|
|
10269
|
+
body.style.paddingLeft = `${bodyDisplacement}px`;
|
|
10234
10270
|
} else {
|
|
10235
10271
|
body.style.paddingLeft = "0";
|
|
10236
10272
|
}
|
|
@@ -10276,7 +10312,7 @@ const SidebarHeader = ({
|
|
|
10276
10312
|
)), /* @__PURE__ */ React.createElement(
|
|
10277
10313
|
"div",
|
|
10278
10314
|
{
|
|
10279
|
-
className:
|
|
10315
|
+
className: "flex items-center pointer-events-auto transition-opacity duration-150 ease-in-out -mr-px"
|
|
10280
10316
|
},
|
|
10281
10317
|
/* @__PURE__ */ React.createElement(
|
|
10282
10318
|
Button$1,
|
|
@@ -10375,14 +10411,14 @@ const SidebarWrapper = ({ children }) => {
|
|
|
10375
10411
|
return /* @__PURE__ */ React.createElement(
|
|
10376
10412
|
"div",
|
|
10377
10413
|
{
|
|
10378
|
-
className: `fixed top-0 left-0 h-dvh z-base ${displayState === "closed" ?
|
|
10414
|
+
className: `fixed top-0 left-0 h-dvh z-base ${displayState === "closed" ? "pointer-events-none" : ""}`
|
|
10379
10415
|
},
|
|
10380
10416
|
/* @__PURE__ */ React.createElement(
|
|
10381
10417
|
"div",
|
|
10382
10418
|
{
|
|
10383
|
-
className: `relative h-dvh transform flex ${displayState !== "closed" ?
|
|
10419
|
+
className: `relative h-dvh transform flex ${displayState !== "closed" ? "" : "-translate-x-full"} ${resizingSidebar ? "transition-none" : displayState === "closed" ? "transition-all duration-300 ease-in" : displayState === "fullscreen" ? "transition-all duration-150 ease-out" : "transition-all duration-300 ease-out"}`,
|
|
10384
10420
|
style: {
|
|
10385
|
-
width: displayState === "fullscreen" ? "100vw" : sidebarWidth
|
|
10421
|
+
width: displayState === "fullscreen" ? "100vw" : `${sidebarWidth}px`,
|
|
10386
10422
|
maxWidth: displayState === "fullscreen" ? "100vw" : "calc(100vw - 8px)",
|
|
10387
10423
|
minWidth: "360px"
|
|
10388
10424
|
}
|
|
@@ -10395,7 +10431,7 @@ const SidebarBody = ({ children }) => {
|
|
|
10395
10431
|
return /* @__PURE__ */ React.createElement(
|
|
10396
10432
|
"div",
|
|
10397
10433
|
{
|
|
10398
|
-
className:
|
|
10434
|
+
className: "relative left-0 w-full h-full flex flex-col items-stretch bg-white border-r border-gray-200 overflow-hidden"
|
|
10399
10435
|
},
|
|
10400
10436
|
children
|
|
10401
10437
|
);
|
|
@@ -12729,7 +12765,7 @@ const EmbedNestedForm = ({
|
|
|
12729
12765
|
};
|
|
12730
12766
|
const DotMenu = ({ onOpen, onRemove }) => {
|
|
12731
12767
|
return /* @__PURE__ */ React__default.createElement(Popover$2, { as: "span", className: "-ml-px relative block" }, /* @__PURE__ */ React__default.createElement(
|
|
12732
|
-
|
|
12768
|
+
PopoverButton,
|
|
12733
12769
|
{
|
|
12734
12770
|
as: "span",
|
|
12735
12771
|
className: "cursor-pointer h-full relative inline-flex items-center px-1 py-0.5 rounded-r-md border border-gray-200 bg-white text-gray-500 hover:bg-gray-50 focus:outline-none focus:ring-1 focus:ring-blue-500 focus:border-blue-500"
|
|
@@ -12738,7 +12774,6 @@ const DotMenu = ({ onOpen, onRemove }) => {
|
|
|
12738
12774
|
), /* @__PURE__ */ React__default.createElement(
|
|
12739
12775
|
Transition,
|
|
12740
12776
|
{
|
|
12741
|
-
as: React__default.Fragment,
|
|
12742
12777
|
enter: "transition ease-out duration-100",
|
|
12743
12778
|
enterFrom: "transform opacity-0 scale-95",
|
|
12744
12779
|
enterTo: "transform opacity-100 scale-100",
|
|
@@ -12746,7 +12781,7 @@ const DotMenu = ({ onOpen, onRemove }) => {
|
|
|
12746
12781
|
leaveFrom: "transform opacity-100 scale-100",
|
|
12747
12782
|
leaveTo: "transform opacity-0 scale-95"
|
|
12748
12783
|
},
|
|
12749
|
-
/* @__PURE__ */ React__default.createElement(
|
|
12784
|
+
/* @__PURE__ */ React__default.createElement(PopoverPanel, { className: "z-30 absolute origin-top-right right-0" }, /* @__PURE__ */ React__default.createElement("div", { className: "mt-2 -mr-1 rounded-md shadow-lg bg-white ring-1 ring-black ring-opacity-5 focus:outline-none" }, /* @__PURE__ */ React__default.createElement("div", { className: "py-1" }, /* @__PURE__ */ React__default.createElement(
|
|
12750
12785
|
"span",
|
|
12751
12786
|
{
|
|
12752
12787
|
onClick: onOpen,
|
|
@@ -13683,6 +13718,12 @@ const items$1 = [
|
|
|
13683
13718
|
icon: Icons.h5,
|
|
13684
13719
|
label: "Heading 5",
|
|
13685
13720
|
value: ELEMENT_H5$1
|
|
13721
|
+
},
|
|
13722
|
+
{
|
|
13723
|
+
description: "Heading 6",
|
|
13724
|
+
icon: Icons.h6,
|
|
13725
|
+
label: "Heading 6",
|
|
13726
|
+
value: ELEMENT_H6$1
|
|
13686
13727
|
}
|
|
13687
13728
|
];
|
|
13688
13729
|
const defaultItem$1 = items$1.find((item) => item.value === ELEMENT_PARAGRAPH$1) || items$1[0];
|
|
@@ -13881,12 +13922,29 @@ function TemplatesToolbarButton() {
|
|
|
13881
13922
|
}
|
|
13882
13923
|
const EmbedButton = ({ editor, templates }) => {
|
|
13883
13924
|
const [open2, setOpen] = useState(false);
|
|
13925
|
+
const [filteredTemplates, setFilteredTemplates] = useState(templates);
|
|
13926
|
+
const filterChange = (e) => {
|
|
13927
|
+
const filterText = e.target.value.toLowerCase();
|
|
13928
|
+
setFilteredTemplates(
|
|
13929
|
+
templates.filter(
|
|
13930
|
+
(template) => template.name.toLowerCase().includes(filterText)
|
|
13931
|
+
)
|
|
13932
|
+
);
|
|
13933
|
+
};
|
|
13884
13934
|
return /* @__PURE__ */ React__default.createElement(DropdownMenu, { open: open2, onOpenChange: setOpen }, /* @__PURE__ */ React__default.createElement(DropdownMenuTrigger, { className: "inline-flex items-center rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg:not([data-icon])]:size-5 h-9 px-2 bg-transparent hover:bg-muted hover:text-muted-foreground aria-checked:bg-accent aria-checked:text-accent-foreground my-1 justify-between pr-1" }, /* @__PURE__ */ React__default.createElement("span", { className: "flex" }, "Embed"), /* @__PURE__ */ React__default.createElement(
|
|
13885
13935
|
PlusIcon,
|
|
13886
13936
|
{
|
|
13887
13937
|
className: `origin-center transition-all ease-out duration-150 ${open2 ? "rotate-45" : ""}`
|
|
13888
13938
|
}
|
|
13889
|
-
)), /* @__PURE__ */ React__default.createElement(DropdownMenuContent,
|
|
13939
|
+
)), /* @__PURE__ */ React__default.createElement(DropdownMenuContent, { className: "max-h-48 overflow-y-auto" }, templates.length > 10 && /* @__PURE__ */ React__default.createElement(
|
|
13940
|
+
"input",
|
|
13941
|
+
{
|
|
13942
|
+
type: "text",
|
|
13943
|
+
placeholder: "Filter templates...",
|
|
13944
|
+
className: "w-full p-2 border border-gray-300 rounded-md",
|
|
13945
|
+
onChange: filterChange
|
|
13946
|
+
}
|
|
13947
|
+
), /* @__PURE__ */ React__default.createElement(DropdownMenuSeparator, null), filteredTemplates.map((template) => /* @__PURE__ */ React__default.createElement(
|
|
13890
13948
|
DropdownMenuItem,
|
|
13891
13949
|
{
|
|
13892
13950
|
key: template.name,
|
|
@@ -14084,6 +14142,12 @@ const items = [
|
|
|
14084
14142
|
icon: Icons.h5,
|
|
14085
14143
|
label: "Heading 5",
|
|
14086
14144
|
value: ELEMENT_H5$1
|
|
14145
|
+
},
|
|
14146
|
+
{
|
|
14147
|
+
description: "Heading 6",
|
|
14148
|
+
icon: Icons.h6,
|
|
14149
|
+
label: "Heading 6",
|
|
14150
|
+
value: ELEMENT_H6$1
|
|
14087
14151
|
}
|
|
14088
14152
|
];
|
|
14089
14153
|
const defaultItem = items.find((item) => item.value === ELEMENT_PARAGRAPH$1);
|
|
@@ -16838,120 +16902,176 @@ const ces = [
|
|
|
16838
16902
|
"že"
|
|
16839
16903
|
];
|
|
16840
16904
|
const dan = [
|
|
16841
|
-
"
|
|
16842
|
-
"
|
|
16905
|
+
"ad",
|
|
16906
|
+
"af",
|
|
16907
|
+
"aldrig",
|
|
16908
|
+
"alle",
|
|
16909
|
+
"alt",
|
|
16910
|
+
"anden",
|
|
16911
|
+
"andet",
|
|
16912
|
+
"andre",
|
|
16913
|
+
"at",
|
|
16914
|
+
"bare",
|
|
16915
|
+
"begge",
|
|
16916
|
+
"blev",
|
|
16917
|
+
"blive",
|
|
16918
|
+
"bliver",
|
|
16919
|
+
"da",
|
|
16920
|
+
"de",
|
|
16921
|
+
"dem",
|
|
16922
|
+
"den",
|
|
16923
|
+
"denne",
|
|
16924
|
+
"der",
|
|
16925
|
+
"deres",
|
|
16843
16926
|
"det",
|
|
16927
|
+
"dette",
|
|
16928
|
+
"dig",
|
|
16929
|
+
"din",
|
|
16930
|
+
"dine",
|
|
16931
|
+
"disse",
|
|
16932
|
+
"dit",
|
|
16933
|
+
"dog",
|
|
16844
16934
|
"du",
|
|
16845
|
-
"
|
|
16846
|
-
"
|
|
16847
|
-
"
|
|
16935
|
+
"efter",
|
|
16936
|
+
"ej",
|
|
16937
|
+
"eller",
|
|
16848
16938
|
"en",
|
|
16849
|
-
"
|
|
16850
|
-
"
|
|
16851
|
-
"
|
|
16852
|
-
"
|
|
16853
|
-
"
|
|
16854
|
-
"
|
|
16855
|
-
"
|
|
16856
|
-
"
|
|
16857
|
-
"
|
|
16939
|
+
"end",
|
|
16940
|
+
"ene",
|
|
16941
|
+
"eneste",
|
|
16942
|
+
"enhver",
|
|
16943
|
+
"er",
|
|
16944
|
+
"et",
|
|
16945
|
+
"far",
|
|
16946
|
+
"fem",
|
|
16947
|
+
"fik",
|
|
16948
|
+
"fire",
|
|
16949
|
+
"flere",
|
|
16950
|
+
"fleste",
|
|
16858
16951
|
"for",
|
|
16859
|
-
"
|
|
16860
|
-
"
|
|
16861
|
-
"
|
|
16862
|
-
"
|
|
16952
|
+
"fordi",
|
|
16953
|
+
"forrige",
|
|
16954
|
+
"fra",
|
|
16955
|
+
"få",
|
|
16956
|
+
"får",
|
|
16957
|
+
"før",
|
|
16958
|
+
"god",
|
|
16959
|
+
"godt",
|
|
16960
|
+
"ham",
|
|
16863
16961
|
"han",
|
|
16864
|
-
"
|
|
16865
|
-
"
|
|
16866
|
-
"
|
|
16867
|
-
"
|
|
16962
|
+
"hans",
|
|
16963
|
+
"har",
|
|
16964
|
+
"havde",
|
|
16965
|
+
"have",
|
|
16966
|
+
"hej",
|
|
16967
|
+
"helt",
|
|
16968
|
+
"hende",
|
|
16969
|
+
"hendes",
|
|
16868
16970
|
"her",
|
|
16869
|
-
"
|
|
16870
|
-
"skal",
|
|
16871
|
-
"ved",
|
|
16872
|
-
"nu",
|
|
16873
|
-
"men",
|
|
16874
|
-
"om",
|
|
16875
|
-
"ja",
|
|
16876
|
-
"som",
|
|
16877
|
-
"nej",
|
|
16878
|
-
"min",
|
|
16879
|
-
"noget",
|
|
16880
|
-
"ham",
|
|
16971
|
+
"hos",
|
|
16881
16972
|
"hun",
|
|
16882
|
-
"
|
|
16883
|
-
"
|
|
16884
|
-
"
|
|
16885
|
-
"
|
|
16886
|
-
"hvor",
|
|
16887
|
-
"dem",
|
|
16888
|
-
"ud",
|
|
16889
|
-
"os",
|
|
16973
|
+
"hvad",
|
|
16974
|
+
"hvem",
|
|
16975
|
+
"hver",
|
|
16976
|
+
"hvilken",
|
|
16890
16977
|
"hvis",
|
|
16891
|
-
"
|
|
16892
|
-
"se",
|
|
16893
|
-
"godt",
|
|
16894
|
-
"have",
|
|
16895
|
-
"fra",
|
|
16896
|
-
"ville",
|
|
16897
|
-
"okay",
|
|
16898
|
-
"lige",
|
|
16899
|
-
"op",
|
|
16900
|
-
"alle",
|
|
16901
|
-
"lad",
|
|
16902
|
-
"hvorfor",
|
|
16903
|
-
"sig",
|
|
16978
|
+
"hvor",
|
|
16904
16979
|
"hvordan",
|
|
16905
|
-
"
|
|
16906
|
-
"
|
|
16907
|
-
"
|
|
16908
|
-
"
|
|
16909
|
-
"
|
|
16910
|
-
"bliver",
|
|
16911
|
-
"havde",
|
|
16912
|
-
"da",
|
|
16980
|
+
"hvorfor",
|
|
16981
|
+
"hvornår",
|
|
16982
|
+
"i",
|
|
16983
|
+
"ikke",
|
|
16984
|
+
"ind",
|
|
16913
16985
|
"ingen",
|
|
16914
|
-
"
|
|
16915
|
-
"
|
|
16916
|
-
"
|
|
16986
|
+
"intet",
|
|
16987
|
+
"ja",
|
|
16988
|
+
"jeg",
|
|
16989
|
+
"jer",
|
|
16990
|
+
"jeres",
|
|
16917
16991
|
"jo",
|
|
16918
|
-
"
|
|
16919
|
-
"
|
|
16920
|
-
"
|
|
16921
|
-
"
|
|
16922
|
-
"
|
|
16992
|
+
"kan",
|
|
16993
|
+
"kom",
|
|
16994
|
+
"komme",
|
|
16995
|
+
"kommer",
|
|
16996
|
+
"kun",
|
|
16997
|
+
"kunne",
|
|
16998
|
+
"lad",
|
|
16999
|
+
"lav",
|
|
16923
17000
|
"lidt",
|
|
17001
|
+
"lige",
|
|
17002
|
+
"lille",
|
|
17003
|
+
"man",
|
|
17004
|
+
"mand",
|
|
17005
|
+
"mange",
|
|
17006
|
+
"med",
|
|
17007
|
+
"meget",
|
|
17008
|
+
"men",
|
|
17009
|
+
"mens",
|
|
17010
|
+
"mere",
|
|
17011
|
+
"mig",
|
|
17012
|
+
"min",
|
|
17013
|
+
"mine",
|
|
17014
|
+
"mit",
|
|
17015
|
+
"mod",
|
|
17016
|
+
"må",
|
|
17017
|
+
"ned",
|
|
17018
|
+
"nej",
|
|
17019
|
+
"ni",
|
|
16924
17020
|
"nogen",
|
|
16925
|
-
"
|
|
17021
|
+
"noget",
|
|
17022
|
+
"nogle",
|
|
17023
|
+
"nu",
|
|
17024
|
+
"ny",
|
|
17025
|
+
"nyt",
|
|
17026
|
+
"når",
|
|
17027
|
+
"nær",
|
|
17028
|
+
"næste",
|
|
17029
|
+
"næsten",
|
|
17030
|
+
"og",
|
|
16926
17031
|
"også",
|
|
16927
|
-
"
|
|
16928
|
-
"
|
|
16929
|
-
"
|
|
17032
|
+
"okay",
|
|
17033
|
+
"om",
|
|
17034
|
+
"op",
|
|
17035
|
+
"os",
|
|
17036
|
+
"otte",
|
|
17037
|
+
"over",
|
|
17038
|
+
"på",
|
|
17039
|
+
"se",
|
|
17040
|
+
"seks",
|
|
16930
17041
|
"selv",
|
|
16931
|
-
"får",
|
|
16932
|
-
"hans",
|
|
16933
17042
|
"ser",
|
|
16934
|
-
"
|
|
16935
|
-
"
|
|
16936
|
-
"sådan",
|
|
16937
|
-
"dit",
|
|
16938
|
-
"kun",
|
|
16939
|
-
"deres",
|
|
16940
|
-
"ned",
|
|
16941
|
-
"mine",
|
|
16942
|
-
"komme",
|
|
16943
|
-
"tage",
|
|
16944
|
-
"denne",
|
|
17043
|
+
"ses",
|
|
17044
|
+
"sig",
|
|
16945
17045
|
"sige",
|
|
16946
|
-
"
|
|
16947
|
-
"
|
|
16948
|
-
"
|
|
16949
|
-
"
|
|
16950
|
-
"
|
|
17046
|
+
"sin",
|
|
17047
|
+
"sine",
|
|
17048
|
+
"sit",
|
|
17049
|
+
"skal",
|
|
17050
|
+
"skulle",
|
|
17051
|
+
"som",
|
|
17052
|
+
"stor",
|
|
17053
|
+
"store",
|
|
17054
|
+
"syv",
|
|
17055
|
+
"så",
|
|
17056
|
+
"sådan",
|
|
16951
17057
|
"tag",
|
|
16952
|
-
"
|
|
16953
|
-
"
|
|
16954
|
-
"
|
|
17058
|
+
"tage",
|
|
17059
|
+
"thi",
|
|
17060
|
+
"ti",
|
|
17061
|
+
"til",
|
|
17062
|
+
"to",
|
|
17063
|
+
"tre",
|
|
17064
|
+
"ud",
|
|
17065
|
+
"under",
|
|
17066
|
+
"var",
|
|
17067
|
+
"ved",
|
|
17068
|
+
"vi",
|
|
17069
|
+
"vil",
|
|
17070
|
+
"ville",
|
|
17071
|
+
"vor",
|
|
17072
|
+
"vores",
|
|
17073
|
+
"være",
|
|
17074
|
+
"været"
|
|
16955
17075
|
];
|
|
16956
17076
|
const nld = [
|
|
16957
17077
|
"aan",
|
|
@@ -19335,7 +19455,7 @@ const hun = [
|
|
|
19335
19455
|
"alóluk",
|
|
19336
19456
|
"alólunk",
|
|
19337
19457
|
"amely",
|
|
19338
|
-
"
|
|
19458
|
+
"amelyből",
|
|
19339
19459
|
"amelyek",
|
|
19340
19460
|
"amelyekben",
|
|
19341
19461
|
"amelyeket",
|
|
@@ -26378,125 +26498,424 @@ const swa = [
|
|
|
26378
26498
|
"upande"
|
|
26379
26499
|
];
|
|
26380
26500
|
const swe = [
|
|
26381
|
-
"
|
|
26501
|
+
"aderton",
|
|
26502
|
+
"adertonde",
|
|
26503
|
+
"adjö",
|
|
26504
|
+
"aldrig",
|
|
26505
|
+
"alla",
|
|
26506
|
+
"allas",
|
|
26507
|
+
"allt",
|
|
26508
|
+
"alltid",
|
|
26509
|
+
"alltså",
|
|
26510
|
+
"andra",
|
|
26511
|
+
"andras",
|
|
26512
|
+
"annan",
|
|
26513
|
+
"annat",
|
|
26514
|
+
"artonde",
|
|
26515
|
+
"artonn",
|
|
26516
|
+
"att",
|
|
26517
|
+
"av",
|
|
26518
|
+
"bakom",
|
|
26519
|
+
"bara",
|
|
26520
|
+
"behöva",
|
|
26521
|
+
"behövas",
|
|
26522
|
+
"behövde",
|
|
26523
|
+
"behövt",
|
|
26524
|
+
"beslut",
|
|
26525
|
+
"beslutat",
|
|
26526
|
+
"beslutit",
|
|
26527
|
+
"bland",
|
|
26528
|
+
"blev",
|
|
26529
|
+
"bli",
|
|
26530
|
+
"blir",
|
|
26531
|
+
"blivit",
|
|
26532
|
+
"bort",
|
|
26533
|
+
"borta",
|
|
26534
|
+
"bra",
|
|
26535
|
+
"bäst",
|
|
26536
|
+
"bättre",
|
|
26537
|
+
"båda",
|
|
26538
|
+
"bådas",
|
|
26539
|
+
"dag",
|
|
26540
|
+
"dagar",
|
|
26541
|
+
"dagarna",
|
|
26542
|
+
"dagen",
|
|
26543
|
+
"de",
|
|
26544
|
+
"del",
|
|
26545
|
+
"delen",
|
|
26546
|
+
"dem",
|
|
26547
|
+
"den",
|
|
26548
|
+
"denna",
|
|
26549
|
+
"deras",
|
|
26550
|
+
"dess",
|
|
26551
|
+
"dessa",
|
|
26382
26552
|
"det",
|
|
26383
|
-
"
|
|
26553
|
+
"detta",
|
|
26554
|
+
"dig",
|
|
26555
|
+
"din",
|
|
26556
|
+
"dina",
|
|
26557
|
+
"dit",
|
|
26558
|
+
"ditt",
|
|
26559
|
+
"dock",
|
|
26560
|
+
"dom",
|
|
26384
26561
|
"du",
|
|
26385
|
-
"
|
|
26386
|
-
"
|
|
26562
|
+
"där",
|
|
26563
|
+
"därför",
|
|
26564
|
+
"då",
|
|
26565
|
+
"e",
|
|
26566
|
+
"efter",
|
|
26567
|
+
"eftersom",
|
|
26568
|
+
"ej",
|
|
26569
|
+
"elfte",
|
|
26570
|
+
"eller",
|
|
26571
|
+
"elva",
|
|
26572
|
+
"emot",
|
|
26387
26573
|
"en",
|
|
26388
|
-
"
|
|
26389
|
-
"
|
|
26390
|
-
"
|
|
26391
|
-
"
|
|
26392
|
-
"
|
|
26574
|
+
"enkel",
|
|
26575
|
+
"enkelt",
|
|
26576
|
+
"enkla",
|
|
26577
|
+
"enligt",
|
|
26578
|
+
"ens",
|
|
26579
|
+
"er",
|
|
26580
|
+
"era",
|
|
26581
|
+
"ers",
|
|
26582
|
+
"ert",
|
|
26583
|
+
"ett",
|
|
26584
|
+
"ettusen",
|
|
26585
|
+
"fanns",
|
|
26586
|
+
"fem",
|
|
26587
|
+
"femte",
|
|
26588
|
+
"femtio",
|
|
26589
|
+
"femtionde",
|
|
26590
|
+
"femton",
|
|
26591
|
+
"femtonde",
|
|
26592
|
+
"fick",
|
|
26593
|
+
"fin",
|
|
26594
|
+
"finnas",
|
|
26595
|
+
"finns",
|
|
26596
|
+
"fjorton",
|
|
26597
|
+
"fjortonde",
|
|
26598
|
+
"fjärde",
|
|
26599
|
+
"fler",
|
|
26600
|
+
"flera",
|
|
26601
|
+
"flesta",
|
|
26602
|
+
"fram",
|
|
26603
|
+
"framför",
|
|
26604
|
+
"från",
|
|
26605
|
+
"fyra",
|
|
26606
|
+
"fyrtio",
|
|
26607
|
+
"fyrtionde",
|
|
26608
|
+
"få",
|
|
26609
|
+
"får",
|
|
26610
|
+
"fått",
|
|
26611
|
+
"följande",
|
|
26393
26612
|
"för",
|
|
26613
|
+
"före",
|
|
26614
|
+
"förlåt",
|
|
26615
|
+
"förra",
|
|
26616
|
+
"första",
|
|
26617
|
+
"genast",
|
|
26618
|
+
"genom",
|
|
26619
|
+
"gick",
|
|
26620
|
+
"gjorde",
|
|
26621
|
+
"gjort",
|
|
26622
|
+
"god",
|
|
26623
|
+
"goda",
|
|
26624
|
+
"godare",
|
|
26625
|
+
"godast",
|
|
26626
|
+
"gott",
|
|
26627
|
+
"gälla",
|
|
26628
|
+
"gäller",
|
|
26629
|
+
"gällt",
|
|
26630
|
+
"gärna",
|
|
26631
|
+
"gå",
|
|
26632
|
+
"går",
|
|
26633
|
+
"gått",
|
|
26634
|
+
"gör",
|
|
26635
|
+
"göra",
|
|
26636
|
+
"ha",
|
|
26637
|
+
"hade",
|
|
26638
|
+
"haft",
|
|
26394
26639
|
"han",
|
|
26395
|
-
"
|
|
26396
|
-
"
|
|
26397
|
-
"
|
|
26398
|
-
"
|
|
26640
|
+
"hans",
|
|
26641
|
+
"har",
|
|
26642
|
+
"heller",
|
|
26643
|
+
"hellre",
|
|
26644
|
+
"helst",
|
|
26645
|
+
"helt",
|
|
26646
|
+
"henne",
|
|
26647
|
+
"hennes",
|
|
26648
|
+
"hit",
|
|
26649
|
+
"hon",
|
|
26650
|
+
"honom",
|
|
26651
|
+
"hundra",
|
|
26652
|
+
"hundraen",
|
|
26653
|
+
"hundraett",
|
|
26654
|
+
"hur",
|
|
26399
26655
|
"här",
|
|
26400
|
-
"
|
|
26401
|
-
"
|
|
26402
|
-
"
|
|
26403
|
-
"
|
|
26404
|
-
"
|
|
26405
|
-
"
|
|
26656
|
+
"hög",
|
|
26657
|
+
"höger",
|
|
26658
|
+
"högre",
|
|
26659
|
+
"högst",
|
|
26660
|
+
"i",
|
|
26661
|
+
"ibland",
|
|
26662
|
+
"icke",
|
|
26663
|
+
"idag",
|
|
26664
|
+
"igen",
|
|
26665
|
+
"igår",
|
|
26666
|
+
"imorgon",
|
|
26667
|
+
"in",
|
|
26668
|
+
"inför",
|
|
26669
|
+
"inga",
|
|
26670
|
+
"ingen",
|
|
26671
|
+
"ingenting",
|
|
26672
|
+
"inget",
|
|
26673
|
+
"innan",
|
|
26674
|
+
"inne",
|
|
26675
|
+
"inom",
|
|
26676
|
+
"inte",
|
|
26677
|
+
"inuti",
|
|
26678
|
+
"ja",
|
|
26679
|
+
"jag",
|
|
26680
|
+
"jo",
|
|
26681
|
+
"ju",
|
|
26682
|
+
"just",
|
|
26683
|
+
"jämfört",
|
|
26406
26684
|
"kan",
|
|
26407
|
-
"
|
|
26408
|
-
"
|
|
26409
|
-
"
|
|
26410
|
-
"
|
|
26685
|
+
"kanske",
|
|
26686
|
+
"knappast",
|
|
26687
|
+
"kom",
|
|
26688
|
+
"komma",
|
|
26689
|
+
"kommer",
|
|
26690
|
+
"kommit",
|
|
26691
|
+
"kr",
|
|
26692
|
+
"kunde",
|
|
26693
|
+
"kunna",
|
|
26694
|
+
"kunnat",
|
|
26695
|
+
"kvar",
|
|
26696
|
+
"legat",
|
|
26697
|
+
"ligga",
|
|
26698
|
+
"ligger",
|
|
26699
|
+
"lika",
|
|
26700
|
+
"likställd",
|
|
26701
|
+
"likställda",
|
|
26702
|
+
"lilla",
|
|
26703
|
+
"lite",
|
|
26704
|
+
"liten",
|
|
26705
|
+
"litet",
|
|
26706
|
+
"länge",
|
|
26707
|
+
"längre",
|
|
26708
|
+
"längst",
|
|
26709
|
+
"lätt",
|
|
26710
|
+
"lättare",
|
|
26711
|
+
"lättast",
|
|
26712
|
+
"långsam",
|
|
26713
|
+
"långsammare",
|
|
26714
|
+
"långsammast",
|
|
26715
|
+
"långsamt",
|
|
26716
|
+
"långt",
|
|
26717
|
+
"låt",
|
|
26718
|
+
"man",
|
|
26719
|
+
"med",
|
|
26720
|
+
"mej",
|
|
26721
|
+
"mellan",
|
|
26411
26722
|
"men",
|
|
26412
|
-
"
|
|
26413
|
-
"
|
|
26414
|
-
"
|
|
26415
|
-
"
|
|
26416
|
-
"nej",
|
|
26417
|
-
"bara",
|
|
26418
|
-
"hon",
|
|
26419
|
-
"hur",
|
|
26723
|
+
"mer",
|
|
26724
|
+
"mera",
|
|
26725
|
+
"mest",
|
|
26726
|
+
"mig",
|
|
26420
26727
|
"min",
|
|
26421
|
-
"
|
|
26422
|
-
"
|
|
26423
|
-
"
|
|
26424
|
-
"
|
|
26425
|
-
"
|
|
26728
|
+
"mina",
|
|
26729
|
+
"mindre",
|
|
26730
|
+
"minst",
|
|
26731
|
+
"mitt",
|
|
26732
|
+
"mittemot",
|
|
26733
|
+
"mot",
|
|
26734
|
+
"mycket",
|
|
26735
|
+
"många",
|
|
26736
|
+
"måste",
|
|
26737
|
+
"möjlig",
|
|
26738
|
+
"möjligen",
|
|
26739
|
+
"möjligt",
|
|
26740
|
+
"möjligtvis",
|
|
26741
|
+
"ned",
|
|
26742
|
+
"nederst",
|
|
26743
|
+
"nedersta",
|
|
26744
|
+
"nedre",
|
|
26745
|
+
"nej",
|
|
26746
|
+
"ner",
|
|
26747
|
+
"ni",
|
|
26748
|
+
"nio",
|
|
26749
|
+
"nionde",
|
|
26750
|
+
"nittio",
|
|
26751
|
+
"nittionde",
|
|
26752
|
+
"nitton",
|
|
26753
|
+
"nittonde",
|
|
26754
|
+
"nog",
|
|
26755
|
+
"noll",
|
|
26756
|
+
"nr",
|
|
26757
|
+
"nu",
|
|
26758
|
+
"nummer",
|
|
26426
26759
|
"när",
|
|
26427
|
-
"
|
|
26428
|
-
"
|
|
26429
|
-
"
|
|
26430
|
-
"
|
|
26431
|
-
"
|
|
26432
|
-
"
|
|
26433
|
-
"
|
|
26760
|
+
"nästa",
|
|
26761
|
+
"någon",
|
|
26762
|
+
"någonting",
|
|
26763
|
+
"något",
|
|
26764
|
+
"några",
|
|
26765
|
+
"nån",
|
|
26766
|
+
"nånting",
|
|
26767
|
+
"nåt",
|
|
26768
|
+
"nödvändig",
|
|
26769
|
+
"nödvändiga",
|
|
26770
|
+
"nödvändigt",
|
|
26771
|
+
"nödvändigtvis",
|
|
26772
|
+
"och",
|
|
26773
|
+
"också",
|
|
26774
|
+
"ofta",
|
|
26775
|
+
"oftast",
|
|
26776
|
+
"olika",
|
|
26777
|
+
"olikt",
|
|
26778
|
+
"om",
|
|
26434
26779
|
"oss",
|
|
26435
|
-
"
|
|
26436
|
-
"
|
|
26437
|
-
"
|
|
26438
|
-
"
|
|
26439
|
-
"från",
|
|
26440
|
-
"upp",
|
|
26441
|
-
"igen",
|
|
26780
|
+
"på",
|
|
26781
|
+
"rakt",
|
|
26782
|
+
"redan",
|
|
26783
|
+
"rätt",
|
|
26442
26784
|
"sa",
|
|
26443
|
-
"
|
|
26444
|
-
"
|
|
26445
|
-
"
|
|
26785
|
+
"sade",
|
|
26786
|
+
"sagt",
|
|
26787
|
+
"samma",
|
|
26788
|
+
"sedan",
|
|
26789
|
+
"senare",
|
|
26790
|
+
"senast",
|
|
26791
|
+
"sent",
|
|
26792
|
+
"sex",
|
|
26793
|
+
"sextio",
|
|
26794
|
+
"sextionde",
|
|
26795
|
+
"sexton",
|
|
26796
|
+
"sextonde",
|
|
26446
26797
|
"sig",
|
|
26447
|
-
"
|
|
26448
|
-
"
|
|
26449
|
-
"
|
|
26450
|
-
"
|
|
26451
|
-
"
|
|
26452
|
-
"
|
|
26453
|
-
"
|
|
26454
|
-
"
|
|
26455
|
-
"
|
|
26456
|
-
"
|
|
26798
|
+
"sin",
|
|
26799
|
+
"sina",
|
|
26800
|
+
"sist",
|
|
26801
|
+
"sista",
|
|
26802
|
+
"siste",
|
|
26803
|
+
"sitt",
|
|
26804
|
+
"sitta",
|
|
26805
|
+
"sju",
|
|
26806
|
+
"sjunde",
|
|
26807
|
+
"sjuttio",
|
|
26808
|
+
"sjuttionde",
|
|
26809
|
+
"sjutton",
|
|
26810
|
+
"sjuttonde",
|
|
26811
|
+
"själv",
|
|
26812
|
+
"sjätte",
|
|
26813
|
+
"ska",
|
|
26814
|
+
"skall",
|
|
26815
|
+
"skulle",
|
|
26816
|
+
"slutligen",
|
|
26817
|
+
"små",
|
|
26818
|
+
"smått",
|
|
26819
|
+
"snart",
|
|
26820
|
+
"som",
|
|
26821
|
+
"stor",
|
|
26822
|
+
"stora",
|
|
26823
|
+
"stort",
|
|
26824
|
+
"större",
|
|
26825
|
+
"störst",
|
|
26826
|
+
"säga",
|
|
26827
|
+
"säger",
|
|
26828
|
+
"sämre",
|
|
26829
|
+
"sämst",
|
|
26830
|
+
"så",
|
|
26831
|
+
"sådan",
|
|
26832
|
+
"sådana",
|
|
26833
|
+
"sådant",
|
|
26834
|
+
"ta",
|
|
26835
|
+
"tack",
|
|
26457
26836
|
"tar",
|
|
26458
|
-
"
|
|
26459
|
-
"
|
|
26460
|
-
"
|
|
26461
|
-
"
|
|
26462
|
-
"
|
|
26463
|
-
"
|
|
26464
|
-
"
|
|
26465
|
-
"
|
|
26466
|
-
"
|
|
26837
|
+
"tidig",
|
|
26838
|
+
"tidigare",
|
|
26839
|
+
"tidigast",
|
|
26840
|
+
"tidigt",
|
|
26841
|
+
"till",
|
|
26842
|
+
"tills",
|
|
26843
|
+
"tillsammans",
|
|
26844
|
+
"tio",
|
|
26845
|
+
"tionde",
|
|
26846
|
+
"tjugo",
|
|
26847
|
+
"tjugoen",
|
|
26848
|
+
"tjugoett",
|
|
26849
|
+
"tjugonde",
|
|
26850
|
+
"tjugotre",
|
|
26851
|
+
"tjugotvå",
|
|
26852
|
+
"tjungo",
|
|
26853
|
+
"tolfte",
|
|
26854
|
+
"tolv",
|
|
26855
|
+
"tre",
|
|
26856
|
+
"tredje",
|
|
26857
|
+
"trettio",
|
|
26858
|
+
"trettionde",
|
|
26859
|
+
"tretton",
|
|
26860
|
+
"trettonde",
|
|
26861
|
+
"två",
|
|
26862
|
+
"tvåhundra",
|
|
26863
|
+
"under",
|
|
26864
|
+
"upp",
|
|
26865
|
+
"ur",
|
|
26866
|
+
"ursäkt",
|
|
26867
|
+
"ut",
|
|
26868
|
+
"utan",
|
|
26869
|
+
"utanför",
|
|
26870
|
+
"ute",
|
|
26467
26871
|
"va",
|
|
26468
|
-
"
|
|
26469
|
-
"
|
|
26470
|
-
"
|
|
26471
|
-
"
|
|
26472
|
-
"
|
|
26473
|
-
"
|
|
26474
|
-
"
|
|
26872
|
+
"vad",
|
|
26873
|
+
"var",
|
|
26874
|
+
"vara",
|
|
26875
|
+
"varför",
|
|
26876
|
+
"varifrån",
|
|
26877
|
+
"varit",
|
|
26878
|
+
"varje",
|
|
26879
|
+
"varken",
|
|
26880
|
+
"vars",
|
|
26881
|
+
"varsågod",
|
|
26475
26882
|
"vart",
|
|
26883
|
+
"vem",
|
|
26884
|
+
"vems",
|
|
26885
|
+
"verkligen",
|
|
26886
|
+
"vi",
|
|
26887
|
+
"vid",
|
|
26888
|
+
"vidare",
|
|
26889
|
+
"viktig",
|
|
26890
|
+
"viktigare",
|
|
26891
|
+
"viktigast",
|
|
26892
|
+
"viktigt",
|
|
26893
|
+
"vilka",
|
|
26894
|
+
"vilkas",
|
|
26476
26895
|
"vilken",
|
|
26477
|
-
"ur",
|
|
26478
|
-
"ens",
|
|
26479
|
-
"sitt",
|
|
26480
|
-
"e",
|
|
26481
|
-
"jo",
|
|
26482
|
-
"era",
|
|
26483
|
-
"deras",
|
|
26484
|
-
"fem",
|
|
26485
|
-
"sex",
|
|
26486
|
-
"denna",
|
|
26487
26896
|
"vilket",
|
|
26488
|
-
"
|
|
26897
|
+
"vill",
|
|
26898
|
+
"väl",
|
|
26899
|
+
"vänster",
|
|
26900
|
+
"vänstra",
|
|
26901
|
+
"värre",
|
|
26902
|
+
"vår",
|
|
26903
|
+
"våra",
|
|
26489
26904
|
"vårt",
|
|
26490
|
-
"
|
|
26491
|
-
"
|
|
26492
|
-
"
|
|
26493
|
-
"
|
|
26905
|
+
"än",
|
|
26906
|
+
"ännu",
|
|
26907
|
+
"är",
|
|
26908
|
+
"även",
|
|
26909
|
+
"åt",
|
|
26910
|
+
"åtminstone",
|
|
26494
26911
|
"åtta",
|
|
26495
|
-
"
|
|
26496
|
-
"
|
|
26497
|
-
"
|
|
26498
|
-
"
|
|
26499
|
-
"
|
|
26912
|
+
"åttio",
|
|
26913
|
+
"åttionde",
|
|
26914
|
+
"åttonde",
|
|
26915
|
+
"över",
|
|
26916
|
+
"övermorgon",
|
|
26917
|
+
"överst",
|
|
26918
|
+
"övre"
|
|
26500
26919
|
];
|
|
26501
26920
|
const tha = [
|
|
26502
26921
|
"กล่าว",
|
|
@@ -27817,15 +28236,11 @@ const zul = [
|
|
|
27817
28236
|
"kwakukhona",
|
|
27818
28237
|
"ngelinye"
|
|
27819
28238
|
];
|
|
27820
|
-
const
|
|
27821
|
-
|
|
27822
|
-
stopwords = stopwords || defaultStopwords;
|
|
27823
|
-
if (typeof tokens !== "object" || typeof stopwords !== "object") {
|
|
28239
|
+
const removeStopwords = (tokens, stopwords = eng) => {
|
|
28240
|
+
if (!Array.isArray(tokens) || !Array.isArray(stopwords)) {
|
|
27824
28241
|
throw new Error("expected Arrays try: removeStopwords(Array[, Array])");
|
|
27825
28242
|
}
|
|
27826
|
-
return tokens.filter(
|
|
27827
|
-
return stopwords.indexOf(value.toLowerCase()) === -1;
|
|
27828
|
-
});
|
|
28243
|
+
return tokens.filter((x) => !stopwords.includes(x.toLowerCase()));
|
|
27829
28244
|
};
|
|
27830
28245
|
const sw = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
27831
28246
|
__proto__: null,
|
|
@@ -30151,9 +30566,8 @@ const Sidebar = ({ cms }) => {
|
|
|
30151
30566
|
)
|
|
30152
30567
|
}
|
|
30153
30568
|
), !renderDesktopNav && /* @__PURE__ */ React__default.createElement(Transition, { show: menuIsOpen }, /* @__PURE__ */ React__default.createElement(
|
|
30154
|
-
|
|
30569
|
+
TransitionChild,
|
|
30155
30570
|
{
|
|
30156
|
-
as: React__default.Fragment,
|
|
30157
30571
|
enter: "transform transition-all ease-out duration-300",
|
|
30158
30572
|
enterFrom: "opacity-0 -translate-x-full",
|
|
30159
30573
|
enterTo: "opacity-100 translate-x-0",
|
|
@@ -30221,9 +30635,8 @@ const Sidebar = ({ cms }) => {
|
|
|
30221
30635
|
))
|
|
30222
30636
|
))
|
|
30223
30637
|
), /* @__PURE__ */ React__default.createElement(
|
|
30224
|
-
|
|
30638
|
+
TransitionChild,
|
|
30225
30639
|
{
|
|
30226
|
-
as: React__default.Fragment,
|
|
30227
30640
|
enter: "ease-out duration-300",
|
|
30228
30641
|
enterFrom: "opacity-0",
|
|
30229
30642
|
enterTo: "opacity-80",
|
|
@@ -30249,7 +30662,7 @@ const Sidebar = ({ cms }) => {
|
|
|
30249
30662
|
onClick: () => {
|
|
30250
30663
|
setMenuIsOpen(true);
|
|
30251
30664
|
},
|
|
30252
|
-
className: `pointer-events-auto -ml-px absolute left-0 z-50 ${isLocalMode ?
|
|
30665
|
+
className: `pointer-events-auto -ml-px absolute left-0 z-50 ${isLocalMode ? "top-10" : "top-4"}`
|
|
30253
30666
|
},
|
|
30254
30667
|
/* @__PURE__ */ React__default.createElement(BiMenu, { className: "h-7 w-auto" })
|
|
30255
30668
|
));
|
|
@@ -30676,10 +31089,9 @@ const TemplateMenu = ({
|
|
|
30676
31089
|
folder,
|
|
30677
31090
|
collectionName
|
|
30678
31091
|
}) => {
|
|
30679
|
-
return /* @__PURE__ */ React__default.createElement(Menu, { as: "div", className: "relative inline-block text-left" }, () => /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(
|
|
31092
|
+
return /* @__PURE__ */ React__default.createElement(Menu, { as: "div", className: "relative inline-block text-left" }, () => /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement(MenuButton, { className: "icon-parent inline-flex items-center font-medium focus:outline-none focus:ring-2 focus:shadow-outline text-center rounded-full justify-center transition-all duration-150 ease-out shadow text-white bg-blue-500 hover:bg-blue-600 focus:ring-blue-500 text-sm h-10 px-6" }, "Create New ", /* @__PURE__ */ React__default.createElement(BiPlus, { className: "w-5 h-full ml-1 opacity-70" }))), /* @__PURE__ */ React__default.createElement(
|
|
30680
31093
|
Transition,
|
|
30681
31094
|
{
|
|
30682
|
-
as: Fragment,
|
|
30683
31095
|
enter: "transition ease-out duration-100",
|
|
30684
31096
|
enterFrom: "transform opacity-0 scale-95",
|
|
30685
31097
|
enterTo: "transform opacity-100 scale-100",
|
|
@@ -30687,7 +31099,7 @@ const TemplateMenu = ({
|
|
|
30687
31099
|
leaveFrom: "transform opacity-100 scale-100",
|
|
30688
31100
|
leaveTo: "transform opacity-0 scale-95"
|
|
30689
31101
|
},
|
|
30690
|
-
/* @__PURE__ */ React__default.createElement(
|
|
31102
|
+
/* @__PURE__ */ React__default.createElement(MenuItems, { className: "origin-top-right absolute right-0 mt-2 z-menu w-56 rounded-md shadow-lg bg-white ring-1 ring-black ring-opacity-5 focus:outline-none" }, /* @__PURE__ */ React__default.createElement("div", { className: "py-1" }, templates.map((template) => /* @__PURE__ */ React__default.createElement(MenuItem, { key: `${template.label}-${template.name}` }, ({ focus }) => /* @__PURE__ */ React__default.createElement(
|
|
30691
31103
|
Link,
|
|
30692
31104
|
{
|
|
30693
31105
|
to: `/${folder.fullyQualifiedName ? [
|
|
@@ -30703,7 +31115,7 @@ const TemplateMenu = ({
|
|
|
30703
31115
|
collectionName,
|
|
30704
31116
|
template.name
|
|
30705
31117
|
].join("/")}`,
|
|
30706
|
-
className: `w-full text-md px-4 py-2 tracking-wide flex items-center transition ease-out duration-100 ${
|
|
31118
|
+
className: `w-full text-md px-4 py-2 tracking-wide flex items-center transition ease-out duration-100 ${focus ? "text-blue-600 opacity-100 bg-gray-50" : "opacity-80 text-gray-600"}`
|
|
30707
31119
|
},
|
|
30708
31120
|
template.label
|
|
30709
31121
|
)))))
|
|
@@ -30876,7 +31288,7 @@ const CollectionListPage = () => {
|
|
|
30876
31288
|
CreateBranchModel,
|
|
30877
31289
|
{
|
|
30878
31290
|
crudType: "delete",
|
|
30879
|
-
relativePath: collectionExtra.path
|
|
31291
|
+
relativePath: `${collectionExtra.path}/${vars.relativePath}`,
|
|
30880
31292
|
values: vars,
|
|
30881
31293
|
close: () => setDeleteModalOpen(false),
|
|
30882
31294
|
safeSubmit: async () => {
|
|
@@ -30983,7 +31395,7 @@ const CollectionListPage = () => {
|
|
|
30983
31395
|
name: ""
|
|
30984
31396
|
})
|
|
30985
31397
|
},
|
|
30986
|
-
...fields.
|
|
31398
|
+
...fields.flatMap((x) => [
|
|
30987
31399
|
{
|
|
30988
31400
|
label: (x.label || x.name) + (x.type === "datetime" ? " (Oldest First)" : " (Ascending)"),
|
|
30989
31401
|
value: JSON.stringify({
|
|
@@ -30998,7 +31410,7 @@ const CollectionListPage = () => {
|
|
|
30998
31410
|
order: "desc"
|
|
30999
31411
|
})
|
|
31000
31412
|
}
|
|
31001
|
-
])
|
|
31413
|
+
])
|
|
31002
31414
|
],
|
|
31003
31415
|
input: {
|
|
31004
31416
|
id: "sort",
|
|
@@ -31594,7 +32006,7 @@ const RenderForm$1 = ({
|
|
|
31594
32006
|
mutationInfo,
|
|
31595
32007
|
customDefaults
|
|
31596
32008
|
}) => {
|
|
31597
|
-
var _a, _b, _c, _d, _e, _f;
|
|
32009
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
|
|
31598
32010
|
const navigate = useNavigate();
|
|
31599
32011
|
const [formIsPristine, setFormIsPristine] = useState(true);
|
|
31600
32012
|
const schema = cms.api.tina.schema;
|
|
@@ -31624,8 +32036,53 @@ const RenderForm$1 = ({
|
|
|
31624
32036
|
const defaultItem2 = customDefaults || // @ts-ignore internal types aren't up to date
|
|
31625
32037
|
((_d = template.ui) == null ? void 0 : _d.defaultItem) || // @ts-ignore
|
|
31626
32038
|
(template == null ? void 0 : template.defaultItem) || {};
|
|
32039
|
+
const filenameField = {
|
|
32040
|
+
name: "filename",
|
|
32041
|
+
label: "Filename",
|
|
32042
|
+
component: slugFunction ? wrapFieldsWithMeta(({ field, input, meta }) => {
|
|
32043
|
+
var _a2, _b2;
|
|
32044
|
+
return /* @__PURE__ */ React__default.createElement(
|
|
32045
|
+
FilenameInput,
|
|
32046
|
+
{
|
|
32047
|
+
readOnly: (_b2 = (_a2 = schemaCollection == null ? void 0 : schemaCollection.ui) == null ? void 0 : _a2.filename) == null ? void 0 : _b2.readonly,
|
|
32048
|
+
...input
|
|
32049
|
+
}
|
|
32050
|
+
);
|
|
32051
|
+
}) : "text",
|
|
32052
|
+
disabled: (_f = (_e = schemaCollection == null ? void 0 : schemaCollection.ui) == null ? void 0 : _e.filename) == null ? void 0 : _f.readonly,
|
|
32053
|
+
description: ((_h = (_g = collection.ui) == null ? void 0 : _g.filename) == null ? void 0 : _h.description) ? /* @__PURE__ */ React__default.createElement(
|
|
32054
|
+
"span",
|
|
32055
|
+
{
|
|
32056
|
+
dangerouslySetInnerHTML: { __html: collection.ui.filename.description }
|
|
32057
|
+
}
|
|
32058
|
+
) : /* @__PURE__ */ React__default.createElement("span", null, "A unique filename for the content.", /* @__PURE__ */ React__default.createElement("br", null), "Examples: ", /* @__PURE__ */ React__default.createElement("code", null, "My_Document"), ", ", /* @__PURE__ */ React__default.createElement("code", null, "My_Document.en"), ",", " ", /* @__PURE__ */ React__default.createElement("code", null, "sub-folder/My_Document")),
|
|
32059
|
+
placeholder: "My_Document",
|
|
32060
|
+
validate: (value, allValues, meta) => {
|
|
32061
|
+
var _a2, _b2;
|
|
32062
|
+
if (!value) {
|
|
32063
|
+
if (meta.dirty) {
|
|
32064
|
+
return "Required";
|
|
32065
|
+
}
|
|
32066
|
+
return true;
|
|
32067
|
+
}
|
|
32068
|
+
const isValid = /[\.\-_\/a-zA-Z0-9]*$/.test(value);
|
|
32069
|
+
if (value && !isValid) {
|
|
32070
|
+
return "Must contain only a-z, A-Z, 0-9, -, _, ., or /.";
|
|
32071
|
+
}
|
|
32072
|
+
if (((_a2 = schemaCollection.match) == null ? void 0 : _a2.exclude) || ((_b2 = schemaCollection.match) == null ? void 0 : _b2.include)) {
|
|
32073
|
+
const filePath = `${normalizePath(schemaCollection.path)}/${value}.${schemaCollection.format || "md"}`;
|
|
32074
|
+
const match = schema == null ? void 0 : schema.matchFiles({
|
|
32075
|
+
files: [filePath],
|
|
32076
|
+
collection: schemaCollection
|
|
32077
|
+
});
|
|
32078
|
+
if ((match == null ? void 0 : match.length) === 0) {
|
|
32079
|
+
return `The filename "${value}" is not allowed for this collection.`;
|
|
32080
|
+
}
|
|
32081
|
+
}
|
|
32082
|
+
}
|
|
32083
|
+
};
|
|
31627
32084
|
const form = useMemo(() => {
|
|
31628
|
-
var _a2, _b2;
|
|
32085
|
+
var _a2, _b2, _c2, _d2;
|
|
31629
32086
|
const folderName = folder.fullyQualifiedName ? folder.name : "";
|
|
31630
32087
|
return new Form({
|
|
31631
32088
|
crudType: "create",
|
|
@@ -31649,50 +32106,10 @@ const RenderForm$1 = ({
|
|
|
31649
32106
|
id: schemaCollection.path + folderName + `/new-post.${schemaCollection.format || "md"}`,
|
|
31650
32107
|
label: "form",
|
|
31651
32108
|
fields: [
|
|
32109
|
+
((_b2 = (_a2 = collection.ui) == null ? void 0 : _a2.filename) == null ? void 0 : _b2.showFirst) && filenameField,
|
|
31652
32110
|
...formInfo.fields,
|
|
31653
|
-
|
|
31654
|
-
|
|
31655
|
-
label: "Filename",
|
|
31656
|
-
component: slugFunction ? wrapFieldsWithMeta(({ field, input, meta }) => {
|
|
31657
|
-
var _a3, _b3;
|
|
31658
|
-
return /* @__PURE__ */ React__default.createElement(
|
|
31659
|
-
FilenameInput,
|
|
31660
|
-
{
|
|
31661
|
-
readOnly: (_b3 = (_a3 = schemaCollection == null ? void 0 : schemaCollection.ui) == null ? void 0 : _a3.filename) == null ? void 0 : _b3.readonly,
|
|
31662
|
-
...input
|
|
31663
|
-
}
|
|
31664
|
-
);
|
|
31665
|
-
}) : "text",
|
|
31666
|
-
disabled: (_b2 = (_a2 = schemaCollection == null ? void 0 : schemaCollection.ui) == null ? void 0 : _a2.filename) == null ? void 0 : _b2.readonly,
|
|
31667
|
-
description: /* @__PURE__ */ React__default.createElement("span", null, "A unique filename for the content.", /* @__PURE__ */ React__default.createElement("br", null), "Examples: ", /* @__PURE__ */ React__default.createElement("code", null, "My_Document"), ", ", /* @__PURE__ */ React__default.createElement("code", null, "My_Document.en"), ",", " ", /* @__PURE__ */ React__default.createElement("code", null, "sub-folder/My_Document")),
|
|
31668
|
-
placeholder: "My_Document",
|
|
31669
|
-
validate: (value, allValues, meta) => {
|
|
31670
|
-
var _a3, _b3;
|
|
31671
|
-
if (!value) {
|
|
31672
|
-
if (meta.dirty) {
|
|
31673
|
-
return "Required";
|
|
31674
|
-
}
|
|
31675
|
-
return true;
|
|
31676
|
-
}
|
|
31677
|
-
const isValid = /[\.\-_\/a-zA-Z0-9]*$/.test(value);
|
|
31678
|
-
if (value && !isValid) {
|
|
31679
|
-
return "Must contain only a-z, A-Z, 0-9, -, _, ., or /.";
|
|
31680
|
-
}
|
|
31681
|
-
if (((_a3 = schemaCollection.match) == null ? void 0 : _a3.exclude) || ((_b3 = schemaCollection.match) == null ? void 0 : _b3.include)) {
|
|
31682
|
-
const filePath = `${normalizePath(
|
|
31683
|
-
schemaCollection.path
|
|
31684
|
-
)}/${value}.${schemaCollection.format || "md"}`;
|
|
31685
|
-
const match = schema == null ? void 0 : schema.matchFiles({
|
|
31686
|
-
files: [filePath],
|
|
31687
|
-
collection: schemaCollection
|
|
31688
|
-
});
|
|
31689
|
-
if ((match == null ? void 0 : match.length) === 0) {
|
|
31690
|
-
return `The filename "${value}" is not allowed for this collection.`;
|
|
31691
|
-
}
|
|
31692
|
-
}
|
|
31693
|
-
}
|
|
31694
|
-
}
|
|
31695
|
-
],
|
|
32111
|
+
!((_d2 = (_c2 = collection.ui) == null ? void 0 : _c2.filename) == null ? void 0 : _d2.showFirst) && filenameField
|
|
32112
|
+
].filter((x) => !!x),
|
|
31696
32113
|
onSubmit: async (values) => {
|
|
31697
32114
|
try {
|
|
31698
32115
|
const folderName2 = folder.fullyQualifiedName ? folder.name : "";
|
|
@@ -31747,7 +32164,7 @@ const RenderForm$1 = ({
|
|
|
31747
32164
|
const activeForm = cms.state.forms.find(
|
|
31748
32165
|
({ tinaForm }) => tinaForm.id === form.id
|
|
31749
32166
|
);
|
|
31750
|
-
return /* @__PURE__ */ React__default.createElement(PageWrapper, null, /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, ((
|
|
32167
|
+
return /* @__PURE__ */ React__default.createElement(PageWrapper, null, /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, ((_j = (_i = cms == null ? void 0 : cms.api) == null ? void 0 : _i.tina) == null ? void 0 : _j.isLocalMode) ? /* @__PURE__ */ React__default.createElement(LocalWarning, null) : /* @__PURE__ */ React__default.createElement(BillingWarning, null), /* @__PURE__ */ React__default.createElement(
|
|
31751
32168
|
"div",
|
|
31752
32169
|
{
|
|
31753
32170
|
className: `pt-10 xl:pt-3 pb-10 xl:pb-4 px-20 xl:px-12 border-b border-gray-200 bg-white w-full grow-0 shrink basis-0 flex justify-center`
|