@valbuild/next 0.138.5 → 0.139.0

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,5 +1,29 @@
1
1
  # @valbuild/next
2
2
 
3
+ ## 0.139.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`3eb5031`](https://github.com/valbuild/val/commit/3eb503167ae466ee586303c95efcc14665129481)]:
8
+ - @valbuild/core@0.139.0
9
+ - @valbuild/shared@0.139.0
10
+ - @valbuild/ui@0.139.0
11
+ - @valbuild/language-server@0.139.0
12
+ - @valbuild/mcp@0.139.0
13
+ - @valbuild/react@0.139.0
14
+ - @valbuild/server@0.139.0
15
+
16
+ ## 0.138.6
17
+
18
+ ### Patch Changes
19
+
20
+ - Updated dependencies [[`9d28775`](https://github.com/valbuild/val/commit/9d287750631b239b70bc7545e3b9fa9011e81db7), [`9d28775`](https://github.com/valbuild/val/commit/9d287750631b239b70bc7545e3b9fa9011e81db7)]:
21
+ - @valbuild/ui@0.138.6
22
+ - @valbuild/server@0.138.6
23
+ - @valbuild/react@0.138.6
24
+ - @valbuild/language-server@0.138.6
25
+ - @valbuild/mcp@0.138.6
26
+
3
27
  ## 0.138.5
4
28
 
5
29
  ### Patch Changes
package/README.md CHANGED
@@ -635,11 +635,12 @@ in source code.
635
635
  > s.code({ language: "typescript" }); // was .render({ as: "code", language })
636
636
  > ```
637
637
  >
638
- > `.render(...)` now takes only `{ as: "inline" }`, on every field alike.
638
+ > `.render(...)` now takes only `{ as: "inline" }`, and only on an array, a
639
+ > record or a keyOf.
639
640
 
640
641
  ### Field rendering
641
642
 
642
- A **render** is how ONE field is laid out in the editor when you are LOOKING at
643
+ A **render** is how a field is laid out in the editor when you are LOOKING at
643
644
  that field. It is static configuration rather than a function, and it is a
644
645
  different thing from a preview: a render is the field's own layout, a preview is
645
646
  how the value shows where it is navigable to. A schema can carry both, and a
@@ -647,24 +648,53 @@ second `.render(...)` replaces the first rather than merging with it.
647
648
 
648
649
  #### Editing list items in place
649
650
 
650
- Every field takes `.render({ as: "inline" })`. On the ITEM of an array or record
651
- it means: edit the item right there in the (sortable) list row, instead of
652
- showing a preview row that navigates into it. This is what a page-builder list is
653
- made of.
651
+ `s.array(...)` and `s.record(...)` take `.render({ as: "inline" })`. It means:
652
+ edit each ITEM right there in its (sortable) list row, instead of showing a
653
+ preview row that navigates into it. This is what a page-builder list is made of.
654
+ The list decides, so the item schema stays reusable, and a tagged union of
655
+ blocks needs nothing on its variants.
654
656
 
655
657
  ```ts
656
- const sectionsSchema = s.array(
657
- s.object({ title: s.string(), body: s.richtext() }).render({ as: "inline" }),
658
- );
658
+ const sectionsSchema = s
659
+ .array(s.object({ title: s.string(), body: s.richtext() }))
660
+ .render({ as: "inline" });
661
+
662
+ const blocksSchema = s
663
+ .array(s.discriminatedUnion("type", heroBlock, textBlock))
664
+ .render({ as: "inline" });
659
665
  ```
660
666
 
667
+ It reaches the direct items only: a list nested inside an inline item keeps its
668
+ own default until it says otherwise. `s.router(...)`, `s.imageset(...)` and
669
+ `s.fileset(...)` do not take a render — pages and media have their own UI — and
670
+ throw if given one.
671
+
672
+ `s.keyOf(...).render({ as: "inline" })` is the one other render, and it means
673
+ something different: the selected entry's content is shown below the selector.
674
+
675
+ > **Breaking.** `.render({ as: "inline" })` moved from the ITEM to the LIST.
676
+ > Every other schema type has lost its `.render(...)` method, so the old
677
+ > placement is a type error. Move it out one level:
678
+ >
679
+ > ```ts
680
+ > // before
681
+ > s.array(s.object({ title: s.string() }).render({ as: "inline" }));
682
+ > // after
683
+ > s.array(s.object({ title: s.string() })).render({ as: "inline" });
684
+ > ```
685
+ >
686
+ > Watch for an array or record that is itself the item of another list: it
687
+ > still compiles, but now means the opposite. `s.record(s.array(s.string()).render(...))`
688
+ > used to draw the record's arrays inline; it now draws each array's strings
689
+ > inline. For the old layout, write `s.record(s.array(s.string())).render(...)`.
690
+
661
691
  > **Breaking.** Strings in arrays are no longer inlined implicitly.
662
692
  > `s.array(s.string())` now renders preview rows and its items are navigation
663
693
  > stops, like every other item type. Add `.render({ as: "inline" })` to the
664
- > string schema for the old behavior:
694
+ > array for the old behavior:
665
695
  >
666
696
  > ```ts
667
- > s.array(s.string().render({ as: "inline" }));
697
+ > s.array(s.string()).render({ as: "inline" });
668
698
  > ```
669
699
 
670
700
  ## RichText
@@ -12,7 +12,7 @@ var NextImage = require('next/image');
12
12
  var jsxRuntime = require('react/jsx-runtime');
13
13
  var ValApp = require('./ValApp-294e5b53.cjs.dev.js');
14
14
  var ValModulesClient = require('./ValModulesClient-4ecabf99.cjs.dev.js');
15
- var version = require('./version-fed8a1c0.cjs.dev.js');
15
+ var version = require('./version-043fe6da.cjs.dev.js');
16
16
  var createForOfIteratorHelper = require('./createForOfIteratorHelper-0445603c.cjs.dev.js');
17
17
  require('./defineProperty-f90345d7.cjs.dev.js');
18
18
  require('./unsupportedIterableToArray-c8ab77c9.cjs.dev.js');
@@ -12,7 +12,7 @@ var NextImage = require('next/image');
12
12
  var jsxRuntime = require('react/jsx-runtime');
13
13
  var ValApp = require('./ValApp-ab8a96fd.cjs.prod.js');
14
14
  var ValModulesClient = require('./ValModulesClient-10c0721c.cjs.prod.js');
15
- var version = require('./version-7832935d.cjs.prod.js');
15
+ var version = require('./version-97392163.cjs.prod.js');
16
16
  var createForOfIteratorHelper = require('./createForOfIteratorHelper-d4afcad8.cjs.prod.js');
17
17
  require('./defineProperty-8951f469.cjs.prod.js');
18
18
  require('./unsupportedIterableToArray-0d2087a2.cjs.prod.js');
@@ -11,7 +11,7 @@ import NextImage from 'next/image';
11
11
  import { jsx } from 'react/jsx-runtime';
12
12
  export { ValApp } from './ValApp-3a70afe1.esm.js';
13
13
  export { ValModulesClient, useRegisterValModules } from './ValModulesClient-0dd601a1.esm.js';
14
- import { V as VERSION } from './version-2a3f5624.esm.js';
14
+ import { V as VERSION } from './version-ad040165.esm.js';
15
15
  import { _ as _createForOfIteratorHelper } from './createForOfIteratorHelper-5758a730.esm.js';
16
16
  import './defineProperty-cca5affa.esm.js';
17
17
  import './unsupportedIterableToArray-5baabfdc.esm.js';
@@ -14,7 +14,7 @@ var packageJson = {
14
14
  "next",
15
15
  "react"
16
16
  ],
17
- version: "0.138.5",
17
+ version: "0.139.0",
18
18
  scripts: {
19
19
  typecheck: "tsc --noEmit",
20
20
  test: "jest"
@@ -14,7 +14,7 @@ var packageJson = {
14
14
  "next",
15
15
  "react"
16
16
  ],
17
- version: "0.138.5",
17
+ version: "0.139.0",
18
18
  scripts: {
19
19
  typecheck: "tsc --noEmit",
20
20
  test: "jest"
@@ -12,7 +12,7 @@ var packageJson = {
12
12
  "next",
13
13
  "react"
14
14
  ],
15
- version: "0.138.5",
15
+ version: "0.139.0",
16
16
  scripts: {
17
17
  typecheck: "tsc --noEmit",
18
18
  test: "jest"
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  "next",
13
13
  "react"
14
14
  ],
15
- "version": "0.138.5",
15
+ "version": "0.139.0",
16
16
  "main": "dist/valbuild-next.cjs.js",
17
17
  "module": "dist/valbuild-next.esm.js",
18
18
  "exports": {
@@ -47,13 +47,13 @@
47
47
  "dependencies": {
48
48
  "client-only": "^0.0.1",
49
49
  "server-only": "^0.0.1",
50
- "@valbuild/mcp": "0.138.5",
51
- "@valbuild/react": "0.138.5",
52
- "@valbuild/server": "0.138.5",
53
- "@valbuild/shared": "0.138.4",
54
- "@valbuild/core": "0.138.2",
55
- "@valbuild/language-server": "0.138.5",
56
- "@valbuild/ui": "0.138.5"
50
+ "@valbuild/core": "0.139.0",
51
+ "@valbuild/language-server": "0.139.0",
52
+ "@valbuild/mcp": "0.139.0",
53
+ "@valbuild/react": "0.139.0",
54
+ "@valbuild/server": "0.139.0",
55
+ "@valbuild/shared": "0.139.0",
56
+ "@valbuild/ui": "0.139.0"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@testing-library/react": "^16.3.3",
@@ -12,7 +12,7 @@ var core = require('@valbuild/core');
12
12
  var React = require('react');
13
13
  var internal = require('@valbuild/shared/internal');
14
14
  var server = require('@valbuild/server');
15
- var version = require('../../dist/version-fed8a1c0.cjs.dev.js');
15
+ var version = require('../../dist/version-043fe6da.cjs.dev.js');
16
16
  require('../../dist/createForOfIteratorHelper-0445603c.cjs.dev.js');
17
17
  require('../../dist/unsupportedIterableToArray-c8ab77c9.cjs.dev.js');
18
18
  require('../../dist/slicedToArray-44036a76.cjs.dev.js');
@@ -12,7 +12,7 @@ var core = require('@valbuild/core');
12
12
  var React = require('react');
13
13
  var internal = require('@valbuild/shared/internal');
14
14
  var server = require('@valbuild/server');
15
- var version = require('../../dist/version-7832935d.cjs.prod.js');
15
+ var version = require('../../dist/version-97392163.cjs.prod.js');
16
16
  require('../../dist/createForOfIteratorHelper-d4afcad8.cjs.prod.js');
17
17
  require('../../dist/unsupportedIterableToArray-0d2087a2.cjs.prod.js');
18
18
  require('../../dist/slicedToArray-ce613de6.cjs.prod.js');
@@ -8,7 +8,7 @@ import { Internal } from '@valbuild/core';
8
8
  import { cache } from 'react';
9
9
  import { VAL_SESSION_COOKIE, memoizePerRequest } from '@valbuild/shared/internal';
10
10
  import { createValServer } from '@valbuild/server';
11
- import { V as VERSION } from '../../dist/version-2a3f5624.esm.js';
11
+ import { V as VERSION } from '../../dist/version-ad040165.esm.js';
12
12
  import '../../dist/createForOfIteratorHelper-5758a730.esm.js';
13
13
  import '../../dist/unsupportedIterableToArray-5baabfdc.esm.js';
14
14
  import '../../dist/slicedToArray-aa291011.esm.js';
@@ -9,7 +9,7 @@ var objectSpread2 = require('../../dist/objectSpread2-58024783.cjs.dev.js');
9
9
  var core = require('@valbuild/core');
10
10
  var server = require('@valbuild/server');
11
11
  var server$1 = require('next/server');
12
- var version = require('../../dist/version-fed8a1c0.cjs.dev.js');
12
+ var version = require('../../dist/version-043fe6da.cjs.dev.js');
13
13
  var mcp = require('@valbuild/mcp');
14
14
  require('../../dist/unsupportedIterableToArray-c8ab77c9.cjs.dev.js');
15
15
  require('../../dist/defineProperty-f90345d7.cjs.dev.js');
@@ -9,7 +9,7 @@ var objectSpread2 = require('../../dist/objectSpread2-13f847a9.cjs.prod.js');
9
9
  var core = require('@valbuild/core');
10
10
  var server = require('@valbuild/server');
11
11
  var server$1 = require('next/server');
12
- var version = require('../../dist/version-7832935d.cjs.prod.js');
12
+ var version = require('../../dist/version-97392163.cjs.prod.js');
13
13
  var mcp = require('@valbuild/mcp');
14
14
  require('../../dist/unsupportedIterableToArray-0d2087a2.cjs.prod.js');
15
15
  require('../../dist/defineProperty-8951f469.cjs.prod.js');
@@ -6,7 +6,7 @@ import { Internal } from '@valbuild/core';
6
6
  import { createValApiRouter, createValServer } from '@valbuild/server';
7
7
  export { createPrettierFormatter } from '@valbuild/server';
8
8
  import { NextResponse } from 'next/server';
9
- import { V as VERSION } from '../../dist/version-2a3f5624.esm.js';
9
+ import { V as VERSION } from '../../dist/version-ad040165.esm.js';
10
10
  import { initValMcp as initValMcp$1 } from '@valbuild/mcp';
11
11
  import '../../dist/unsupportedIterableToArray-5baabfdc.esm.js';
12
12
  import '../../dist/defineProperty-cca5affa.esm.js';