@tinacms/app 0.0.0-7339bd1-20241208234244 → 0.0.0-7346dc9-20250523033238

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/CHANGELOG.md CHANGED
@@ -1,11 +1,127 @@
1
1
  # @tinacms/app
2
2
 
3
- ## 0.0.0-7339bd1-20241208234244
3
+ ## 0.0.0-7346dc9-20250523033238
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`5e36123`](https://github.com/tinacms/tinacms/commit/5e361239a372e21dda624d17b4ff274bab23ce90), [`7346dc9`](https://github.com/tinacms/tinacms/commit/7346dc996fd81ecb395b62f373976512e8224c21)]:
8
+ - tinacms@0.0.0-7346dc9-20250523033238
9
+ - @tinacms/mdx@1.6.2
10
+
11
+ ## 2.2.7
12
+
13
+ ### Patch Changes
14
+
15
+ - [#5607](https://github.com/tinacms/tinacms/pull/5607) [`1965236`](https://github.com/tinacms/tinacms/commit/19652363784e48b065ec1924a9cd9611c8e79cae) Thanks [@jeffsee55](https://github.com/jeffsee55)! - Specify react and react-dom as peer deps
16
+
17
+ - Updated dependencies [[`1965236`](https://github.com/tinacms/tinacms/commit/19652363784e48b065ec1924a9cd9611c8e79cae)]:
18
+ - tinacms@2.7.7
19
+
20
+ ## 2.2.6
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies [[`65cee5d`](https://github.com/tinacms/tinacms/commit/65cee5d6ae16c7320a4a14f0d9a82dc5f9103e34)]:
25
+ - tinacms@2.7.6
26
+
27
+ ## 2.2.5
28
+
29
+ ### Patch Changes
30
+
31
+ - [#5602](https://github.com/tinacms/tinacms/pull/5602) [`ab43169`](https://github.com/tinacms/tinacms/commit/ab43169af5a95f31fa27bb0236623a031883a1fd) Thanks [@wicksipedia](https://github.com/wicksipedia)! - fix naming of TinaCloud
32
+
33
+ - [#5588](https://github.com/tinacms/tinacms/pull/5588) [`fd664d8`](https://github.com/tinacms/tinacms/commit/fd664d8f4e83941ed1b1f234668ab6341a6178f8) Thanks [@JackDevAU](https://github.com/JackDevAU)! - - Fix server-side branch queries by storing the active branch in a cookie and passing it via the x-branch header.
34
+ - Ensure GraphQL playground correctly updates when switching branches.
35
+ - Updated dependencies [[`921f235`](https://github.com/tinacms/tinacms/commit/921f2356e4615d532d02eefa7103fdb70f83b97a), [`ab43169`](https://github.com/tinacms/tinacms/commit/ab43169af5a95f31fa27bb0236623a031883a1fd), [`b551232`](https://github.com/tinacms/tinacms/commit/b5512326ad0ad9855bc75e2073a3ab2a8ec4c064), [`ea204c9`](https://github.com/tinacms/tinacms/commit/ea204c9045451f3ebea04f503e6158d2016613e4), [`fd664d8`](https://github.com/tinacms/tinacms/commit/fd664d8f4e83941ed1b1f234668ab6341a6178f8)]:
36
+ - tinacms@2.7.5
37
+ - @tinacms/mdx@1.6.2
38
+
39
+ ## 2.2.3
40
+
41
+ ### Patch Changes
42
+
43
+ - Updated dependencies [[`991db1f`](https://github.com/tinacms/tinacms/commit/991db1f10c1f9cf9211d7e82bd56658cdcce24c7)]:
44
+ - tinacms@2.7.3
45
+
46
+ ## 2.2.2
47
+
48
+ ### Patch Changes
49
+
50
+ - Updated dependencies [[`619e601`](https://github.com/tinacms/tinacms/commit/619e6010d6f95d893e980952bef64f747808c956), [`602b4d0`](https://github.com/tinacms/tinacms/commit/602b4d07f94de4c10d5bb059a5edc49546a2031c)]:
51
+ - tinacms@2.7.2
52
+ - @tinacms/mdx@1.6.1
53
+
54
+ ## 2.2.1
55
+
56
+ ### Patch Changes
57
+
58
+ - Updated dependencies [[`74513b3`](https://github.com/tinacms/tinacms/commit/74513b357aa27165aa86f7b3218c697c663539e8), [`06c1716`](https://github.com/tinacms/tinacms/commit/06c17163b558a96275b0ef66c746b005a6f90d13)]:
59
+ - tinacms@2.7.1
60
+
61
+ ## 2.2.0
62
+
63
+ ### Minor Changes
64
+
65
+ - [#5503](https://github.com/tinacms/tinacms/pull/5503) [`99bb59f`](https://github.com/tinacms/tinacms/commit/99bb59ff7b9f3cf27a1382b91826eb81831ecb95) Thanks [@JackDevAU](https://github.com/JackDevAU)! - feat: add experimental user form select to the useTina hook
66
+
67
+ ### Patch Changes
68
+
69
+ - [#5486](https://github.com/tinacms/tinacms/pull/5486) [`d7c5ec1`](https://github.com/tinacms/tinacms/commit/d7c5ec1b174419dcc6ddba3cfb3684dd469da571) Thanks [@JackDevAU](https://github.com/JackDevAU)! - Update dependencies across packages
70
+
71
+ - Updated dependencies [[`3974aa7`](https://github.com/tinacms/tinacms/commit/3974aa759192713140733b99ee0254a1a056e124), [`7541614`](https://github.com/tinacms/tinacms/commit/7541614527a02268ea453b23ce84637f978dcf2d), [`d7c5ec1`](https://github.com/tinacms/tinacms/commit/d7c5ec1b174419dcc6ddba3cfb3684dd469da571), [`99bb59f`](https://github.com/tinacms/tinacms/commit/99bb59ff7b9f3cf27a1382b91826eb81831ecb95)]:
72
+ - tinacms@2.7.0
73
+ - @tinacms/mdx@1.6.0
74
+
75
+ ## 2.1.19
76
+
77
+ ### Patch Changes
78
+
79
+ - Updated dependencies []:
80
+ - tinacms@2.6.4
81
+
82
+ ## 2.1.18
83
+
84
+ ### Patch Changes
85
+
86
+ - Updated dependencies [[`05ba069`](https://github.com/tinacms/tinacms/commit/05ba0692a7e990fbb671177829562869d517e7c1), [`42daaf7`](https://github.com/tinacms/tinacms/commit/42daaf7af125da265d2c5998168e9c7345dc0a59), [`bc986dd`](https://github.com/tinacms/tinacms/commit/bc986dd48f9a7da264281b55926ec51ce1068bb7), [`3af2354`](https://github.com/tinacms/tinacms/commit/3af23542b984c10e138d0cf10a165d50b99bb0e9)]:
87
+ - tinacms@2.6.3
88
+
89
+ ## 2.1.17
90
+
91
+ ### Patch Changes
92
+
93
+ - Updated dependencies []:
94
+ - tinacms@2.6.2
95
+
96
+ ## 2.1.16
97
+
98
+ ### Patch Changes
99
+
100
+ - Updated dependencies [[`61c45f4`](https://github.com/tinacms/tinacms/commit/61c45f49a2abe82336b661dedbbe2a15d0f3da05)]:
101
+ - tinacms@2.6.1
102
+
103
+ ## 2.1.15
104
+
105
+ ### Patch Changes
106
+
107
+ - Updated dependencies [[`9931d5a`](https://github.com/tinacms/tinacms/commit/9931d5a0d7e5e9e5165170047cf5653041bddd7a), [`4aadf3e`](https://github.com/tinacms/tinacms/commit/4aadf3ee0b5e7ba6614baee9507a3b51abc92053), [`92b683b`](https://github.com/tinacms/tinacms/commit/92b683bd3d73b47271eee5b8ff648ed4dcde51e3), [`82b0039`](https://github.com/tinacms/tinacms/commit/82b00393da8bbcc2cf357fbbb546904f07e8d89c), [`877699d`](https://github.com/tinacms/tinacms/commit/877699d08b3e2c2470742a3acf25d02a95e440b3)]:
108
+ - tinacms@2.6.0
109
+ - @tinacms/mdx@1.5.4
110
+
111
+ ## 2.1.14
112
+
113
+ ### Patch Changes
114
+
115
+ - Updated dependencies [[`b54b303`](https://github.com/tinacms/tinacms/commit/b54b303a8290528230dc83d8fb1b7535df7199f6), [`0345852`](https://github.com/tinacms/tinacms/commit/0345852e3a7568b61a1417cd037715ab0d0dca01)]:
116
+ - tinacms@2.5.2
117
+ - @tinacms/mdx@1.5.3
118
+
119
+ ## 2.1.13
4
120
 
5
121
  ### Patch Changes
6
122
 
7
123
  - Updated dependencies [[`bbfd415`](https://github.com/tinacms/tinacms/commit/bbfd415762a8b2c62b7653b497b94d67aaa8501a), [`83a25cf`](https://github.com/tinacms/tinacms/commit/83a25cf61b736e1867d37bee37f7514d349e4427)]:
8
- - tinacms@0.0.0-7339bd1-20241208234244
124
+ - tinacms@2.5.1
9
125
 
10
126
  ## 2.1.12
11
127
 
@@ -381,7 +497,7 @@
381
497
 
382
498
  fix: Use clean page-sizes on media manager (to make pagination more obvious)
383
499
 
384
- Fix issue with uploading media in a folder with tina cloud
500
+ Fix issue with uploading media in a folder with TinaCloud
385
501
 
386
502
  - Updated dependencies [9c27087fb]
387
503
  - Updated dependencies [65d0a701f]
@@ -704,7 +820,7 @@
704
820
  > NOTE: Relative paths are fine to use here, but make sure it's relative to the `.tina/config` file
705
821
 
706
822
  ```ts
707
- localContentPath: process.env.REMOTE_ROOT_PATH // eg. '../../my-content-repo'
823
+ localContentPath: process.env.REMOTE_ROOT_PATH; // eg. '../../my-content-repo'
708
824
  ```
709
825
 
710
826
  ### Production workflow
@@ -748,18 +864,18 @@
748
864
  EX:
749
865
 
750
866
  ```ts
751
- import { defineConfig } from 'tinacms'
867
+ import { defineConfig } from "tinacms";
752
868
 
753
869
  export default defineConfig({
754
870
  admin: {
755
871
  auth: {
756
872
  onLogin: () => {
757
- console.log('On Log in!')
873
+ console.log("On Log in!");
758
874
  },
759
875
  },
760
876
  },
761
877
  /// ...
762
- })
878
+ });
763
879
  ```
764
880
 
765
881
  - 9d4943a82: Fix issue resolving alias fields when passing through the `useTina` hook
@@ -982,13 +1098,13 @@
982
1098
 
983
1099
  ```ts
984
1100
  // .tina/config.ts
985
- import schema from './schema'
1101
+ import schema from "./schema";
986
1102
 
987
1103
  export default defineConfig({
988
1104
  schema: schema,
989
1105
  //.. Everything from define config in `schema.ts`
990
1106
  //.. Everything from `schema.config`
991
- })
1107
+ });
992
1108
  ```
993
1109
 
994
1110
  2. Add Build config
package/package.json CHANGED
@@ -1,28 +1,30 @@
1
1
  {
2
2
  "name": "@tinacms/app",
3
- "version": "0.0.0-7339bd1-20241208234244",
3
+ "version": "0.0.0-7346dc9-20250523033238",
4
4
  "main": "src/main.tsx",
5
5
  "license": "Apache-2.0",
6
6
  "devDependencies": {
7
- "@types/react": "^18.3.12",
8
- "@types/react-dom": "^18.3.1",
9
- "typescript": "^5.6.3"
7
+ "@types/react": "^18.3.18",
8
+ "@types/react-dom": "^18.3.5",
9
+ "typescript": "^5.7.3"
10
+ },
11
+ "peerDependencies": {
12
+ "react": ">=18.3.1 <20.0.0",
13
+ "react-dom": ">=18.3.1 <20.0.0"
10
14
  },
11
15
  "dependencies": {
12
16
  "@graphiql/toolkit": "0.8.4",
13
17
  "@headlessui/react": "2.1.8",
14
18
  "@heroicons/react": "^1.0.6",
15
- "@monaco-editor/react": "4.4.5",
19
+ "@monaco-editor/react": "4.7.0-rc.0",
16
20
  "final-form": "4.20.10",
17
21
  "graphiql": "3.0.0-alpha.1",
18
22
  "graphql": "15.8.0",
19
23
  "monaco-editor": "0.31.0",
20
- "react": "^18.3.1",
21
- "react-dom": "^18.3.1",
22
24
  "react-router-dom": "6.3.0",
23
- "typescript": "^5.6.3",
24
- "zod": "^3.23.8",
25
- "@tinacms/mdx": "1.5.2",
26
- "tinacms": "0.0.0-7339bd1-20241208234244"
25
+ "typescript": "^5.7.3",
26
+ "zod": "^3.24.2",
27
+ "@tinacms/mdx": "1.6.2",
28
+ "tinacms": "0.0.0-7346dc9-20250523033238"
27
29
  }
28
30
  }
package/src/App.tsx CHANGED
@@ -1,20 +1,20 @@
1
- import React, { Suspense } from 'react'
2
- import TinaCMS, { TinaAdmin, useCMS, MdxFieldPluginExtendible } from 'tinacms'
3
- import { Preview } from './preview'
4
- import Playground from './Playground'
1
+ import React, { Suspense } from 'react';
2
+ import TinaCMS, { TinaAdmin, useCMS, MdxFieldPluginExtendible } from 'tinacms';
3
+ import { Preview } from './preview';
4
+ import Playground from './Playground';
5
5
 
6
6
  // TODO: Resolve this to local file in tsconfig.json
7
7
  // @ts-expect-error
8
- import config from 'TINA_IMPORT'
8
+ import config from 'TINA_IMPORT';
9
9
  // @ts-expect-error
10
- import schemaJson from 'SCHEMA_IMPORT'
10
+ import schemaJson from 'SCHEMA_IMPORT';
11
11
  // @ts-expect-error
12
- import staticMedia from 'STATIC_MEDIA_IMPORT'
12
+ import staticMedia from 'STATIC_MEDIA_IMPORT';
13
13
 
14
- const RawEditor = React.lazy(() => import('./fields/rich-text'))
14
+ const RawEditor = React.lazy(() => import('./fields/rich-text'));
15
15
 
16
16
  const Editor = (props) => {
17
- const [rawMode, setRawMode] = React.useState(false)
17
+ const [rawMode, setRawMode] = React.useState(false);
18
18
  return (
19
19
  <MdxFieldPluginExtendible.Component
20
20
  rawMode={rawMode}
@@ -26,32 +26,32 @@ const Editor = (props) => {
26
26
  </Suspense>
27
27
  }
28
28
  />
29
- )
30
- }
29
+ );
30
+ };
31
31
 
32
32
  const SetPreview = () => {
33
- const cms = useCMS()
33
+ const cms = useCMS();
34
34
  React.useEffect(() => {
35
35
  // Override original 'rich-text' field with one that has raw mode support
36
36
  cms.fields.add({
37
37
  ...MdxFieldPluginExtendible,
38
38
  Component: Editor,
39
- })
40
- const basePath = __BASE_PATH__.replace(/^\/|\/$/g, '')
41
- cms.flags.set('tina-basepath', basePath)
39
+ });
40
+ const basePath = __BASE_PATH__.replace(/^\/|\/$/g, '');
41
+ cms.flags.set('tina-basepath', basePath);
42
42
  cms.flags.set(
43
43
  'tina-preview',
44
44
  `${basePath ? `${basePath}/` : ''}${config.build.outputFolder.replace(
45
45
  /^\/|\/$/g,
46
46
  ''
47
47
  )}`
48
- )
49
- }, [])
50
- return null
51
- }
48
+ );
49
+ }, []);
50
+ return null;
51
+ };
52
52
 
53
53
  export const TinaAdminWrapper = () => {
54
- const schema = { ...config?.schema, config }
54
+ const schema = { ...config?.schema, config };
55
55
  return (
56
56
  // @ts-ignore JSX element type 'TinaCMS' does not have any construct or call signatures.ts(2604)
57
57
  <TinaCMS
@@ -70,10 +70,10 @@ export const TinaAdminWrapper = () => {
70
70
  schemaJson={schemaJson}
71
71
  />
72
72
  </TinaCMS>
73
- )
74
- }
73
+ );
74
+ };
75
75
 
76
76
  function App() {
77
- return <TinaAdminWrapper />
77
+ return <TinaAdminWrapper />;
78
78
  }
79
- export default App
79
+ export default App;
@@ -1,28 +1,28 @@
1
- import { createGraphiQLFetcher } from '@graphiql/toolkit'
2
- import { GraphiQL } from 'graphiql'
3
- import { parse, print } from 'graphql'
4
- import React from 'react'
5
- import { useCMS } from 'tinacms'
6
- import { FolderIcon } from '@heroicons/react/outline'
7
- import { queries } from 'CLIENT_IMPORT'
1
+ import { createGraphiQLFetcher } from '@graphiql/toolkit';
2
+ import { FolderIcon } from '@heroicons/react/outline';
3
+ import { queries } from 'CLIENT_IMPORT';
4
+ import { GraphiQL } from 'graphiql';
5
+ import { parse, print } from 'graphql';
6
+ import React from 'react';
7
+ import { useCMS } from 'tinacms';
8
8
 
9
- import 'graphiql/graphiql.min.css'
9
+ import 'graphiql/graphiql.min.css';
10
10
 
11
11
  const Playground = () => {
12
- const cms = useCMS()
13
- const [query, setQuery] = React.useState('')
14
- const [variables, setVariables] = React.useState('')
15
- const [autoQueries, setAutoQueries] = React.useState()
12
+ const cms = useCMS();
13
+ const [query, setQuery] = React.useState('');
14
+ const [variables, setVariables] = React.useState('');
15
+ const [autoQueries, setAutoQueries] = React.useState();
16
16
  const [collectionInfo, setCollectionInfo] = React.useState<{
17
17
  collections: {
18
- name: string
19
- documents: { edges: { node: { _sys: { relativePath: string } } }[] }
20
- }[]
21
- }>()
18
+ name: string;
19
+ documents: { edges: { node: { _sys: { relativePath: string } } }[] };
20
+ }[];
21
+ }>();
22
22
  React.useEffect(() => {
23
23
  const run = async () => {
24
24
  if (queries) {
25
- const q = queries({ request: async () => query })
25
+ const q = queries({ request: async () => query });
26
26
  setCollectionInfo(
27
27
  await cms.api.tina.request(
28
28
  `
@@ -45,52 +45,52 @@ const Playground = () => {
45
45
  `,
46
46
  { variables: {} }
47
47
  )
48
- )
49
- setAutoQueries(q)
48
+ );
49
+ setAutoQueries(q);
50
50
  } else {
51
- setAutoQueries({})
51
+ setAutoQueries({});
52
52
  }
53
- }
54
- run()
55
- }, [])
53
+ };
54
+ run();
55
+ }, []);
56
56
 
57
- const ref = React.useRef()
57
+ const ref = React.useRef();
58
58
 
59
59
  const getToken = () => {
60
- return JSON.parse(localStorage.getItem('tinacms-auth') || '{}')?.id_token
61
- }
60
+ return JSON.parse(localStorage.getItem('tinacms-auth') || '{}')?.id_token;
61
+ };
62
62
 
63
63
  if (!autoQueries) {
64
- return null
64
+ return null;
65
65
  }
66
66
 
67
67
  const Plugin = () => {
68
- const noAutoQueries = Object.keys(autoQueries).length === 0
68
+ const noAutoQueries = Object.keys(autoQueries).length === 0;
69
69
  return (
70
70
  <div>
71
- <div className="graphiql-doc-explorer-title">Queries</div>
72
- <div className="graphiql-doc-explorer-content">
73
- <div className="graphiql-markdown-description">
71
+ <div className='graphiql-doc-explorer-title'>Queries</div>
72
+ <div className='graphiql-doc-explorer-content'>
73
+ <div className='graphiql-markdown-description'>
74
74
  {noAutoQueries
75
75
  ? 'No auto-generated queries found, the Tina config is likely set to client.skip = true'
76
76
  : "Tina's auto-generated queries can be found here as well as any queries you may have defined yourself."}{' '}
77
- <a href="https://tina.io/docs/data-fetching/custom-queries/">
77
+ <a href='https://tina.io/docs/data-fetching/custom-queries/'>
78
78
  Learn more here
79
79
  </a>
80
80
  </div>
81
- <nav className="space-y-1" aria-label="Sidebar">
81
+ <nav className='space-y-1' aria-label='Sidebar'>
82
82
  <ul>
83
83
  {Object.entries(autoQueries).map(([key, value]) => {
84
84
  const collection = collectionInfo?.collections.find(
85
85
  ({ name }) => name === key
86
- )
87
- let variables = ''
88
- let relativePath = ''
86
+ );
87
+ let variables = '';
88
+ let relativePath = '';
89
89
  if (collection) {
90
90
  relativePath =
91
91
  collection?.documents?.edges[0]?.node?._sys.relativePath ||
92
- ''
93
- variables = JSON.stringify({ relativePath }, null, 2)
92
+ '';
93
+ variables = JSON.stringify({ relativePath }, null, 2);
94
94
  }
95
95
  return (
96
96
  <li>
@@ -104,43 +104,43 @@ const Playground = () => {
104
104
  )}
105
105
  onClick={async () => {
106
106
  if (typeof value === 'function') {
107
- const v = await value({})
108
- const ast = parse(v.query)
109
- setVariables(variables)
110
- setQuery(print(ast))
107
+ const v = await value({});
108
+ const ast = parse(v.query);
109
+ setVariables(variables);
110
+ setQuery(print(ast));
111
111
  }
112
112
  }}
113
113
  >
114
- <span className="truncate">
114
+ <span className='truncate'>
115
115
  {key}{' '}
116
116
  {relativePath && (
117
- <span className="pl-2 text-sm text-gray-300">
117
+ <span className='pl-2 text-sm text-gray-300'>
118
118
  ({relativePath})
119
119
  </span>
120
120
  )}{' '}
121
121
  </span>
122
122
  </button>
123
123
  </li>
124
- )
124
+ );
125
125
  })}
126
126
  </ul>
127
127
  </nav>
128
128
  </div>
129
129
  </div>
130
- )
131
- }
130
+ );
131
+ };
132
132
  return (
133
133
  <div style={{ height: '100vh' }}>
134
134
  <GraphiQL
135
135
  fetcher={async (params, options) => {
136
136
  const fetcher = createGraphiQLFetcher({
137
- url: __API_URL__,
137
+ url: cms.api.tina.contentApiUrl || __API_URL__,
138
138
  headers: { Authorization: `Bearer ${getToken()}` },
139
- })
140
- return fetcher(params, options)
139
+ });
140
+ return fetcher(params, options);
141
141
  }}
142
142
  query={query}
143
- defaultEditorToolsVisibility="variables"
143
+ defaultEditorToolsVisibility='variables'
144
144
  isHeadersEditorEnabled={false}
145
145
  defaultTabs={[]}
146
146
  plugins={[
@@ -153,11 +153,11 @@ const Playground = () => {
153
153
  variables={variables}
154
154
  ></GraphiQL>
155
155
  </div>
156
- )
157
- }
156
+ );
157
+ };
158
158
 
159
- export default Playground
159
+ export default Playground;
160
160
 
161
161
  function classNames(...classes: string[]) {
162
- return classes.filter(Boolean).join(' ')
162
+ return classes.filter(Boolean).join(' ');
163
163
  }
@@ -1 +1 @@
1
- export const queries = false
1
+ export const queries = false;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
 
3
3
  */
4
- import RawEditor from './monaco'
4
+ import RawEditor from './monaco';
5
5
 
6
- export default RawEditor
6
+ export default RawEditor;