tinacms 0.0.0-de1bef5-20250124020627 → 0.0.0-df15996-20250420014759

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +1 -1
  2. package/dist/admin/api.d.ts +1 -0
  3. package/dist/admin/components/GetCollection.d.ts +2 -2
  4. package/dist/auth/TinaCloudProvider.d.ts +1 -1
  5. package/dist/auth/authenticate.d.ts +1 -1
  6. package/dist/client.d.ts +1 -4
  7. package/dist/client.js +10 -1
  8. package/dist/client.mjs +10 -1
  9. package/dist/hooks/create-page-plugin.d.ts +1 -1
  10. package/dist/index.d.ts +1 -61
  11. package/dist/index.js +2395 -1065
  12. package/dist/index.mjs +2403 -1073
  13. package/dist/internalClient/authProvider.d.ts +2 -0
  14. package/dist/internalClient/index.d.ts +3 -3
  15. package/dist/react.d.ts +1 -33
  16. package/dist/react.js +13 -1
  17. package/dist/react.mjs +13 -1
  18. package/dist/rich-text/index.d.ts +1 -142
  19. package/dist/rich-text/prism.d.ts +1 -10
  20. package/dist/toolkit/components/media/media-manager.d.ts +1 -1
  21. package/dist/toolkit/fields/components/reference/reference-select.d.ts +2 -2
  22. package/dist/toolkit/fields/plugins/mdx-field-plugin/plate/components/plate-ui/indent-list-toolbar-button.d.ts +17 -5
  23. package/dist/toolkit/fields/plugins/mdx-field-plugin/plate/components/plate-ui/mark-toolbar-button.d.ts +4 -18
  24. package/dist/toolkit/fields/plugins/mdx-field-plugin/plate/plugins/ui/components.d.ts +6 -11
  25. package/dist/toolkit/fields/plugins/mdx-field-plugin/plate/toolbar/toolbar-overrides.d.ts +1 -1
  26. package/dist/toolkit/plugin-branch-switcher/branch-switcher-legacy.d.ts +1 -1
  27. package/dist/toolkit/plugin-branch-switcher/branch-switcher.d.ts +1 -1
  28. package/dist/toolkit/react-cloud-config/cloud-config-plugin.d.ts +3 -3
  29. package/dist/toolkit/react-sidebar/components/sidebar-body.d.ts +5 -4
  30. package/dist/toolkit/react-sidebar/components/sidebar-loading-placeholder.d.ts +2 -0
  31. package/dist/toolkit/react-sidebar/components/sidebar-no-forms-placeholder.d.ts +2 -0
  32. package/dist/toolkit/react-sidebar/sidebar.d.ts +2 -2
  33. package/dist/toolkit/tina-state.d.ts +4 -0
  34. package/dist/unifiedClient/index.d.ts +1 -1
  35. package/package.json +34 -34
  36. package/dist/toolkit/react-sidebar/components/no-forms-placeholder.d.ts +0 -8
@@ -33,6 +33,7 @@ export declare class TinaCloudAuthProvider extends AbstractAuthProvider {
33
33
  clientId: string;
34
34
  identityApiUrl: string;
35
35
  frontendUrl: string;
36
+ oauth2: boolean;
36
37
  token: string;
37
38
  setToken: (_token: TokenObject) => void;
38
39
  getToken: () => Promise<TokenObject>;
@@ -42,6 +43,7 @@ export declare class TinaCloudAuthProvider extends AbstractAuthProvider {
42
43
  tokenStorage?: 'MEMORY' | 'LOCAL_STORAGE' | 'CUSTOM';
43
44
  getTokenFn?: () => Promise<TokenObject>;
44
45
  frontendUrl: string;
46
+ oauth2?: boolean;
45
47
  });
46
48
  authenticate(): Promise<TokenObject>;
47
49
  getUser(): Promise<any>;
@@ -1,10 +1,10 @@
1
- import { TokenObject } from '../auth/authenticate';
2
1
  import { BranchData, EventBus } from '@tinacms/toolkit';
3
2
  import { DocumentNode, GraphQLSchema } from 'graphql';
3
+ import { TokenObject } from '../auth/authenticate';
4
+ import { AuthProvider, Schema, TinaSchema } from '@tinacms/schema-tools';
5
+ import { SearchClient } from '@tinacms/search/dist/index-client';
4
6
  import gql from 'graphql-tag';
5
- import { TinaSchema, Schema, AuthProvider } from '@tinacms/schema-tools';
6
7
  import { TinaCloudProject } from './types';
7
- import { SearchClient } from '@tinacms/search/dist/index-client';
8
8
  export * from './authProvider';
9
9
  export type OnLoginFunc = (args: {
10
10
  token?: TokenObject;
package/dist/react.d.ts CHANGED
@@ -1,33 +1 @@
1
- export declare function useTina<T extends object>(props: {
2
- query: string;
3
- variables: object;
4
- data: T;
5
- }): {
6
- data: T;
7
- isClient: boolean;
8
- };
9
- export declare function useEditState(): {
10
- edit: boolean;
11
- };
12
- /**
13
- * Grab the field name for the given attribute
14
- * to signal to Tina which DOM element the field
15
- * is working with.
16
- */
17
- export declare const tinaField: <T extends (object & {
18
- _content_source?: {
19
- queryId: string;
20
- path: (number | string)[];
21
- };
22
- }) | undefined | null>(object: T, property?: keyof Omit<NonNullable<T>, "__typename" | "_sys">, index?: number) => string;
23
- export declare const addMetadata: <T extends object>(id: string, object: T & {
24
- type?: string;
25
- _content_source?: unknown;
26
- }, path: (string | number)[]) => T;
27
- /**
28
- * This is a pretty rudimentary approach to hashing the query and variables to
29
- * ensure we treat multiple queries on the page uniquely. It's possible
30
- * that we would have collisions, and I'm not sure of the likeliness but seems
31
- * like it'd be rare.
32
- */
33
- export declare const hashFromQuery: (input: string) => string;
1
+ export * from "../src/react"
package/dist/react.js CHANGED
@@ -18,6 +18,9 @@
18
18
  React.useEffect(() => {
19
19
  setIsClient(true);
20
20
  setData(props.data);
21
+ parent.postMessage({
22
+ type: "url-changed"
23
+ });
21
24
  }, [id]);
22
25
  React.useEffect(() => {
23
26
  if (quickEditEnabled) {
@@ -100,7 +103,16 @@
100
103
  }
101
104
  }, [quickEditEnabled, isInTinaIframe]);
102
105
  React.useEffect(() => {
103
- parent.postMessage({ type: "open", ...props, id }, window.location.origin);
106
+ if (props == null ? void 0 : props.experimental___selectFormByFormId) {
107
+ parent.postMessage({
108
+ type: "user-select-form",
109
+ formId: props.experimental___selectFormByFormId()
110
+ });
111
+ }
112
+ }, [id]);
113
+ React.useEffect(() => {
114
+ const { experimental___selectFormByFormId, ...rest } = props;
115
+ parent.postMessage({ type: "open", ...rest, id }, window.location.origin);
104
116
  window.addEventListener("message", (event) => {
105
117
  if (event.data.type === "quickEditEnabled") {
106
118
  setQuickEditEnabled(event.data.value);
package/dist/react.mjs CHANGED
@@ -15,6 +15,9 @@ function useTina(props) {
15
15
  React.useEffect(() => {
16
16
  setIsClient(true);
17
17
  setData(props.data);
18
+ parent.postMessage({
19
+ type: "url-changed"
20
+ });
18
21
  }, [id]);
19
22
  React.useEffect(() => {
20
23
  if (quickEditEnabled) {
@@ -97,7 +100,16 @@ function useTina(props) {
97
100
  }
98
101
  }, [quickEditEnabled, isInTinaIframe]);
99
102
  React.useEffect(() => {
100
- parent.postMessage({ type: "open", ...props, id }, window.location.origin);
103
+ if (props == null ? void 0 : props.experimental___selectFormByFormId) {
104
+ parent.postMessage({
105
+ type: "user-select-form",
106
+ formId: props.experimental___selectFormByFormId()
107
+ });
108
+ }
109
+ }, [id]);
110
+ React.useEffect(() => {
111
+ const { experimental___selectFormByFormId, ...rest } = props;
112
+ parent.postMessage({ type: "open", ...rest, id }, window.location.origin);
101
113
  window.addEventListener("message", (event) => {
102
114
  if (event.data.type === "quickEditEnabled") {
103
115
  setQuickEditEnabled(event.data.value);
@@ -1,142 +1 @@
1
- /**
2
-
3
- */
4
- import React from 'react';
5
- type BaseComponents = {
6
- h1?: {
7
- children: JSX.Element;
8
- };
9
- h2?: {
10
- children: JSX.Element;
11
- };
12
- h3?: {
13
- children: JSX.Element;
14
- };
15
- h4?: {
16
- children: JSX.Element;
17
- };
18
- h5?: {
19
- children: JSX.Element;
20
- };
21
- h6?: {
22
- children: JSX.Element;
23
- };
24
- p?: {
25
- children: JSX.Element;
26
- };
27
- a?: {
28
- url: string;
29
- children: JSX.Element;
30
- };
31
- italic?: {
32
- children: JSX.Element;
33
- };
34
- bold?: {
35
- children: JSX.Element;
36
- };
37
- strikethrough?: {
38
- children: JSX.Element;
39
- };
40
- underline?: {
41
- children: JSX.Element;
42
- };
43
- code?: {
44
- children: JSX.Element;
45
- };
46
- text?: {
47
- children: string;
48
- };
49
- ul?: {
50
- children: JSX.Element;
51
- };
52
- ol?: {
53
- children: JSX.Element;
54
- };
55
- li?: {
56
- children: JSX.Element;
57
- };
58
- lic?: {
59
- children: JSX.Element;
60
- };
61
- block_quote?: {
62
- children: JSX.Element;
63
- };
64
- code_block?: {
65
- lang?: string;
66
- value: string;
67
- };
68
- mermaid?: {
69
- value: string;
70
- };
71
- img?: {
72
- url: string;
73
- caption?: string;
74
- alt?: string;
75
- };
76
- hr?: {};
77
- break?: {};
78
- maybe_mdx?: {
79
- children: JSX.Element;
80
- };
81
- html?: {
82
- value: string;
83
- };
84
- html_inline?: {
85
- value: string;
86
- };
87
- table?: {
88
- align?: ('left' | 'right' | 'center')[];
89
- tableRows: {
90
- tableCells: {
91
- value: TinaMarkdownContent;
92
- }[];
93
- }[];
94
- };
95
- component_missing?: {
96
- name: string;
97
- };
98
- };
99
- type BaseComponentSignature = {
100
- [BK in keyof BaseComponents]: (props: BaseComponents[BK]) => JSX.Element;
101
- };
102
- /**
103
- * Define the allowed components and their props
104
- * ```ts
105
- * const components:
106
- * Components<{
107
- * BlockQuote: {
108
- * children: TinaMarkdownContent;
109
- * authorName: string;
110
- * };
111
- * }> = {
112
- * BlockQuote: (props: {
113
- * children: TinaMarkdownContent;
114
- * authorName: string;
115
- * }) => {
116
- * return (
117
- * <div>
118
- * <blockquote>
119
- * <TinaMarkdown content={props.children} />
120
- * {props.authorName}
121
- * </blockquote>
122
- * </div>
123
- * );
124
- * }
125
- * }
126
- * }
127
- * ```
128
- */
129
- export type Components<ComponentAndProps extends object> = {
130
- [K in keyof ComponentAndProps]: (props: ComponentAndProps[K]) => JSX.Element;
131
- } & BaseComponentSignature;
132
- export type TinaMarkdownContent = {
133
- type: string;
134
- children: TinaMarkdownContent[];
135
- };
136
- export declare const TinaMarkdown: <CustomComponents extends {
137
- [key: string]: object;
138
- } = any>({ content, components, }: {
139
- content: TinaMarkdownContent | TinaMarkdownContent[];
140
- components?: Components<{}> | Components<{ [BK in keyof CustomComponents]: (props: CustomComponents[BK]) => JSX.Element; }>;
141
- }) => React.JSX.Element;
142
- export {};
1
+ export * from "../../src/rich-text/index"
@@ -1,10 +1 @@
1
- /**
2
-
3
- */
4
- import React from 'react';
5
- import { themes } from 'prism-react-renderer';
6
- export declare const Prism: (props: {
7
- value: string;
8
- lang?: string;
9
- theme?: keyof typeof themes;
10
- }) => React.JSX.Element;
1
+ export * from "../../src/rich-text/prism"
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
1
  import { Media } from '../../core';
2
+ import React from 'react';
3
3
  export interface MediaRequest {
4
4
  directory?: string;
5
5
  onSelect?(_media: Media): void;
@@ -7,5 +7,5 @@ interface ReferenceSelectProps {
7
7
  input: any;
8
8
  field: ReferenceFieldProps & Field;
9
9
  }
10
- declare const ComboboxDemo: React.FC<ReferenceSelectProps>;
11
- export default ComboboxDemo;
10
+ declare const Combobox: React.FC<ReferenceSelectProps>;
11
+ export default Combobox;
@@ -1,8 +1,5 @@
1
1
  import React from 'react';
2
- import { type ELEMENT_OL, ELEMENT_UL } from '@udecode/plate';
3
- export declare const IndentListToolbarButton: React.ForwardRefExoticComponent<{
4
- nodeType?: typeof ELEMENT_UL | typeof ELEMENT_OL;
5
- } & Omit<Omit<{
2
+ export declare const UnorderedListToolbarButton: React.ForwardRefExoticComponent<Omit<Omit<{
6
3
  tooltip?: React.ReactNode;
7
4
  tooltipContentProps?: Omit<React.ComponentPropsWithoutRef<React.ForwardRefExoticComponent<import("@radix-ui/react-tooltip").TooltipContentProps & React.RefAttributes<HTMLDivElement>>>, "children">;
8
5
  tooltipProps?: Omit<React.ComponentPropsWithoutRef<React.FC<import("@radix-ui/react-tooltip").TooltipProps>>, "children">;
@@ -16,4 +13,19 @@ export declare const IndentListToolbarButton: React.ForwardRefExoticComponent<{
16
13
  } & import("class-variance-authority/dist/types").ClassProp) => string> & React.RefAttributes<HTMLButtonElement>, "ref">, "value" | "asChild"> & import("class-variance-authority").VariantProps<(props?: {
17
14
  size?: "default" | "sm" | "lg";
18
15
  variant?: "default" | "outline";
19
- } & import("class-variance-authority/dist/types").ClassProp) => string> & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>, "ref">, "nodeType"> & React.RefAttributes<HTMLButtonElement>>;
16
+ } & import("class-variance-authority/dist/types").ClassProp) => string> & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>, "ref">, never> & React.RefAttributes<HTMLButtonElement>>;
17
+ export declare const OrderedListToolbarButton: React.ForwardRefExoticComponent<Omit<Omit<{
18
+ tooltip?: React.ReactNode;
19
+ tooltipContentProps?: Omit<React.ComponentPropsWithoutRef<React.ForwardRefExoticComponent<import("@radix-ui/react-tooltip").TooltipContentProps & React.RefAttributes<HTMLDivElement>>>, "children">;
20
+ tooltipProps?: Omit<React.ComponentPropsWithoutRef<React.FC<import("@radix-ui/react-tooltip").TooltipProps>>, "children">;
21
+ } & Omit<{
22
+ isDropdown?: boolean;
23
+ pressed?: boolean;
24
+ showArrow?: boolean;
25
+ } & Omit<Omit<Omit<import("@radix-ui/react-toolbar").ToolbarToggleItemProps & React.RefAttributes<HTMLButtonElement>, "ref"> & import("class-variance-authority").VariantProps<(props?: {
26
+ size?: "default" | "sm" | "lg";
27
+ variant?: "default" | "outline";
28
+ } & import("class-variance-authority/dist/types").ClassProp) => string> & React.RefAttributes<HTMLButtonElement>, "ref">, "value" | "asChild"> & import("class-variance-authority").VariantProps<(props?: {
29
+ size?: "default" | "sm" | "lg";
30
+ variant?: "default" | "outline";
31
+ } & import("class-variance-authority/dist/types").ClassProp) => string> & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>, "ref">, never> & React.RefAttributes<HTMLButtonElement>>;
@@ -1,19 +1,5 @@
1
1
  import React from 'react';
2
- export declare const MarkToolbarButton: React.ForwardRefExoticComponent<{
3
- clear?: string | string[];
4
- nodeType: string;
5
- } & Omit<Omit<{
6
- tooltip?: React.ReactNode;
7
- tooltipContentProps?: Omit<React.ComponentPropsWithoutRef<React.ForwardRefExoticComponent<import("@radix-ui/react-tooltip").TooltipContentProps & React.RefAttributes<HTMLDivElement>>>, "children">;
8
- tooltipProps?: Omit<React.ComponentPropsWithoutRef<React.FC<import("@radix-ui/react-tooltip").TooltipProps>>, "children">;
9
- } & Omit<{
10
- isDropdown?: boolean;
11
- pressed?: boolean;
12
- showArrow?: boolean;
13
- } & Omit<Omit<Omit<import("@radix-ui/react-toolbar").ToolbarToggleItemProps & React.RefAttributes<HTMLButtonElement>, "ref"> & import("class-variance-authority").VariantProps<(props?: {
14
- size?: "default" | "sm" | "lg";
15
- variant?: "default" | "outline";
16
- } & import("class-variance-authority/dist/types").ClassProp) => string> & React.RefAttributes<HTMLButtonElement>, "ref">, "value" | "asChild"> & import("class-variance-authority").VariantProps<(props?: {
17
- size?: "default" | "sm" | "lg";
18
- variant?: "default" | "outline";
19
- } & import("class-variance-authority/dist/types").ClassProp) => string> & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>, "ref">, "clear" | "nodeType"> & React.RefAttributes<HTMLButtonElement>>;
2
+ export declare const BoldToolbarButton: () => React.JSX.Element;
3
+ export declare const StrikethroughToolbarButton: () => React.JSX.Element;
4
+ export declare const ItalicToolbarButton: () => React.JSX.Element;
5
+ export declare const CodeToolbarButton: () => React.JSX.Element;
@@ -189,17 +189,12 @@ export declare const Components: () => {
189
189
  } & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<any>, "ref"> & {
190
190
  ref?: React.Ref<any>;
191
191
  } & React.RefAttributes<HTMLSpanElement>, "ref"> & React.RefAttributes<any>>;
192
- strikethrough: React.ForwardRefExoticComponent<Omit<{
193
- leafToAttributes?: (leaf: import("@udecode/plate-common").TText) => any;
194
- } & import("@udecode/plate-common").PlateRenderNodeProps<import("@udecode/plate-common").Value, import("@udecode/plate-common").PlateEditor<import("@udecode/plate-common").Value>> & Omit<import("slate-react").RenderLeafProps, "text" | "leaf"> & {
195
- leaf: import("@udecode/plate-common").TText;
196
- text: import("@udecode/plate-common").TText;
197
- } & Omit<{
198
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
199
- asChild?: boolean | undefined;
200
- } & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<any>, "ref"> & {
201
- ref?: React.Ref<any>;
202
- } & React.RefAttributes<HTMLSpanElement>, "ref"> & React.RefAttributes<any>>;
192
+ strikethrough: ({ editor, leaf, text, ...props }: {
193
+ [x: string]: any;
194
+ editor: any;
195
+ leaf: any;
196
+ text: any;
197
+ }) => React.JSX.Element;
203
198
  italic: React.ForwardRefExoticComponent<Omit<{
204
199
  leafToAttributes?: (leaf: import("@udecode/plate-common").TText) => any;
205
200
  } & import("@udecode/plate-common").PlateRenderNodeProps<import("@udecode/plate-common").Value, import("@udecode/plate-common").PlateEditor<import("@udecode/plate-common").Value>> & Omit<import("slate-react").RenderLeafProps, "text" | "leaf"> & {
@@ -1,4 +1,4 @@
1
- export type ToolbarOverrideType = 'heading' | 'link' | 'image' | 'quote' | 'ul' | 'ol' | 'code' | 'codeBlock' | 'bold' | 'italic' | 'mermaid' | 'raw' | 'embed' | 'table';
1
+ export type ToolbarOverrideType = 'heading' | 'link' | 'image' | 'quote' | 'ul' | 'ol' | 'code' | 'codeBlock' | 'bold' | 'strikethrough' | 'italic' | 'mermaid' | 'raw' | 'embed' | 'table';
2
2
  export declare const STANDARD_ICON_WIDTH = 32;
3
3
  export declare const HEADING_ICON_WITH_TEXT = 127;
4
4
  export declare const HEADING_ICON_ONLY = 58;
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { BranchSwitcherProps, Branch } from './types';
2
+ import { Branch, BranchSwitcherProps } from './types';
3
3
  export declare function formatBranchName(str: string): string;
4
4
  export declare const BranchSwitcherLegacy: ({ listBranches, createBranch, chooseBranch, }: BranchSwitcherProps) => React.JSX.Element;
5
5
  export declare const getFilteredBranchList: (branchList: Branch[], filter: string, currentBranchName: string) => Branch[];
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { BranchSwitcherProps, Branch } from './types';
2
+ import { Branch, BranchSwitcherProps } from './types';
3
3
  export declare function formatBranchName(str: string): string;
4
4
  export declare const BranchSwitcher: (props: BranchSwitcherProps) => React.JSX.Element;
5
5
  export declare const EditoralBranchSwitcher: ({ listBranches, createBranch, chooseBranch, setModalTitle, }: BranchSwitcherProps) => React.JSX.Element;
@@ -1,13 +1,13 @@
1
1
  import { Plugin } from '../core';
2
2
  import type { IconType } from 'react-icons';
3
3
  /**
4
- * Represents a Tina Cloud Config that should be accessible via the CMS.
4
+ * Represents a TinaCloud Config that should be accessible via the CMS.
5
5
  *
6
6
  * The purpose of these configs is to give a way to display & edit information
7
- * about TIna Cloud Configuration
7
+ * about TinaCloud Configuration
8
8
  * cases may include:
9
9
  *
10
- * * Tina Cloud Project Configuration
10
+ * * TinaCloud Project Configuration
11
11
  * * User Management
12
12
  */
13
13
  export interface CloudConfigPlugin extends Plugin {
@@ -1,8 +1,9 @@
1
- import * as React from 'react';
2
1
  import type { Form } from '../../forms';
3
- export declare const FormsView: ({ children, }: {
4
- children?: React.ReactChild | React.ReactChild[];
5
- }) => React.JSX.Element;
2
+ import * as React from 'react';
3
+ export interface FormsViewProps {
4
+ loadingPlaceholder?: React.FC;
5
+ }
6
+ export declare const FormsView: ({ loadingPlaceholder }?: FormsViewProps) => React.JSX.Element;
6
7
  export interface MultiformFormHeaderProps {
7
8
  activeForm: {
8
9
  activeFieldName?: string;
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare const SidebarLoadingPlaceholder: () => React.JSX.Element;
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare const SidebarNoFormsPlaceholder: () => React.JSX.Element;
@@ -1,5 +1,5 @@
1
- import { EventBus, Callback } from '../core';
2
1
  import * as React from 'react';
2
+ import { Callback, EventBus } from '../core';
3
3
  export interface SidebarStateOptions {
4
4
  position?: SidebarPosition;
5
5
  buttons?: SidebarButtons;
@@ -22,7 +22,7 @@ export declare type DefaultSidebarState = 'open' | 'closed';
22
22
  export declare class SidebarState {
23
23
  private events;
24
24
  private _isOpen;
25
- placeholder: React.FC;
25
+ loadingPlaceholder: React.FC;
26
26
  defaultState: DefaultSidebarState;
27
27
  position: SidebarPosition;
28
28
  renderNav: boolean;
@@ -58,6 +58,9 @@ export type TinaAction = {
58
58
  } | {
59
59
  type: 'sidebar:set-display-state';
60
60
  value: TinaState['sidebarDisplayState'] | 'openOrFull';
61
+ } | {
62
+ type: 'sidebar:set-loading-state';
63
+ value: boolean;
61
64
  };
62
65
  export interface TinaState {
63
66
  activeFormId: string | null;
@@ -76,6 +79,7 @@ export interface TinaState {
76
79
  }[];
77
80
  formLists: FormList[];
78
81
  editingMode: 'visual' | 'basic';
82
+ isLoadingContent: boolean;
79
83
  quickEditSupported: boolean;
80
84
  sidebarDisplayState: 'closed' | 'open' | 'fullscreen';
81
85
  }
@@ -1,6 +1,6 @@
1
+ import type { Config } from '@tinacms/schema-tools';
1
2
  import AsyncLock from 'async-lock';
2
3
  import type { GraphQLError } from 'graphql';
3
- import type { Config } from '@tinacms/schema-tools';
4
4
  import type { Cache } from '../cache/index';
5
5
  export declare const TINA_HOST = "content.tinajs.io";
6
6
  export interface TinaClientArgs<GenQueries = Record<string, unknown>> {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tinacms",
3
- "version": "0.0.0-de1bef5-20250124020627",
3
+ "version": "0.0.0-df15996-20250420014759",
4
4
  "main": "dist/index.js",
5
5
  "module": "./dist/index.mjs",
6
6
  "exports": {
@@ -60,21 +60,21 @@
60
60
  "typings": "dist/index.d.ts",
61
61
  "license": "Apache-2.0",
62
62
  "dependencies": {
63
- "@ariakit/react": "^0.4.13",
64
- "@floating-ui/dom": "^1.6.12",
63
+ "@ariakit/react": "^0.4.15",
64
+ "@floating-ui/dom": "^1.6.13",
65
65
  "@floating-ui/react-dom": "^2.1.2",
66
- "@graphql-inspector/core": "^6.2.0",
66
+ "@graphql-inspector/core": "^6.2.1",
67
67
  "@headlessui/react": "2.1.8",
68
68
  "@heroicons/react": "^1.0.6",
69
69
  "@monaco-editor/react": "4.4.5",
70
- "@radix-ui/react-checkbox": "^1.1.2",
71
- "@radix-ui/react-dialog": "^1.1.2",
72
- "@radix-ui/react-dropdown-menu": "^2.1.2",
73
- "@radix-ui/react-popover": "^1.1.2",
74
- "@radix-ui/react-separator": "^1.1.0",
75
- "@radix-ui/react-slot": "^1.1.0",
76
- "@radix-ui/react-toolbar": "^1.1.0",
77
- "@radix-ui/react-tooltip": "^1.1.4",
70
+ "@radix-ui/react-checkbox": "^1.1.4",
71
+ "@radix-ui/react-dialog": "^1.1.6",
72
+ "@radix-ui/react-dropdown-menu": "^2.1.6",
73
+ "@radix-ui/react-popover": "^1.1.6",
74
+ "@radix-ui/react-separator": "^1.1.2",
75
+ "@radix-ui/react-slot": "^1.1.2",
76
+ "@radix-ui/react-toolbar": "^1.1.2",
77
+ "@radix-ui/react-tooltip": "^1.1.8",
78
78
  "@react-hook/window-size": "^3.1.1",
79
79
  "@udecode/cn": "^33.0.0",
80
80
  "@udecode/plate": "^36.5.9",
@@ -93,7 +93,7 @@
93
93
  "@udecode/plate-slash-command": "^36.0.0",
94
94
  "@udecode/plate-table": "36.5.8",
95
95
  "async-lock": "^1.4.1",
96
- "class-variance-authority": "^0.7.0",
96
+ "class-variance-authority": "^0.7.1",
97
97
  "clsx": "^2.1.1",
98
98
  "cmdk": "^1.0.4",
99
99
  "color-string": "^1.9.1",
@@ -111,45 +111,45 @@
111
111
  "mermaid": "9.3.0",
112
112
  "moment": "2.29.4",
113
113
  "monaco-editor": "0.31.0",
114
- "prism-react-renderer": "^2.4.0",
114
+ "prism-react-renderer": "^2.4.1",
115
115
  "prop-types": "15.7.2",
116
116
  "react-beautiful-dnd": "^13.1.1",
117
117
  "react-color": "^2.19.3",
118
- "react-datetime": "^3.2.0",
118
+ "react-datetime": "^3.3.1",
119
119
  "react-dropzone": "14.2.3",
120
120
  "react-final-form": "^6.5.9",
121
- "react-icons": "^5.3.0",
121
+ "react-icons": "^5.4.0",
122
122
  "react-router-dom": "6.3.0",
123
123
  "react-use": "^17.6.0",
124
124
  "slate": "^0.103.0",
125
125
  "slate-history": "^0.100.0",
126
126
  "slate-hyperscript": "^0.100.0",
127
127
  "slate-react": "^0.107.1",
128
- "tailwind-merge": "^2.5.4",
128
+ "tailwind-merge": "^2.6.0",
129
129
  "webfontloader": "1.6.28",
130
- "yup": "^1.4.0",
131
- "zod": "^3.23.8",
132
- "@tinacms/mdx": "1.5.4",
133
- "@tinacms/schema-tools": "1.7.0",
134
- "@tinacms/search": "1.0.37"
130
+ "yup": "^1.6.1",
131
+ "zod": "^3.24.2",
132
+ "@tinacms/mdx": "0.0.0-df15996-20250420014759",
133
+ "@tinacms/search": "0.0.0-df15996-20250420014759",
134
+ "@tinacms/schema-tools": "0.0.0-df15996-20250420014759"
135
135
  },
136
136
  "devDependencies": {
137
- "@graphql-tools/utils": "^10.5.6",
137
+ "@graphql-tools/utils": "^10.8.1",
138
138
  "@testing-library/dom": "^10.4.0",
139
139
  "@testing-library/jest-dom": "^6.6.3",
140
- "@testing-library/react": "^16.0.1",
141
- "@testing-library/user-event": "^14.5.2",
140
+ "@testing-library/react": "^16.2.0",
141
+ "@testing-library/user-event": "^14.6.1",
142
142
  "@types/atob": "^2.1.4",
143
143
  "@types/codemirror": "^5.60.15",
144
144
  "@types/color-string": "^1.5.5",
145
145
  "@types/lodash.debounce": "^4.0.9",
146
146
  "@types/lodash.get": "^4.4.9",
147
- "@types/node": "^22.9.0",
148
- "@types/prop-types": "^15.7.13",
149
- "@types/react": "^18.3.12",
147
+ "@types/node": "^22.13.1",
148
+ "@types/prop-types": "^15.7.14",
149
+ "@types/react": "^18.3.18",
150
150
  "@types/react-beautiful-dnd": "^13.1.8",
151
- "@types/react-color": "^3.0.12",
152
- "@types/react-dom": "^18.3.1",
151
+ "@types/react-color": "^3.0.13",
152
+ "@types/react-dom": "^18.3.5",
153
153
  "@types/yup": "^0.32.0",
154
154
  "happy-dom": "15.10.2",
155
155
  "identity-obj-proxy": "^3.0.0",
@@ -161,10 +161,10 @@
161
161
  "react-is": "^18.3.1",
162
162
  "tsc-alias": "^1.8.10",
163
163
  "tslib": "^2.8.1",
164
- "typescript": "^5.6.3",
165
- "vite": "^5.4.11",
166
- "vitest": "^2.1.5",
167
- "@tinacms/scripts": "1.3.1"
164
+ "typescript": "^5.7.3",
165
+ "vite": "^5.4.14",
166
+ "vitest": "^2.1.9",
167
+ "@tinacms/scripts": "1.3.4"
168
168
  },
169
169
  "peerDependencies": {
170
170
  "react": ">=16.14.0",
@@ -1,8 +0,0 @@
1
- /**
2
-
3
-
4
-
5
- */
6
- import * as React from 'react';
7
- export declare const PendingFormsPlaceholder: () => React.JSX.Element;
8
- export declare const NoFormsPlaceholder: () => React.JSX.Element;