@valbuild/next 0.138.6 → 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 +13 -0
- package/README.md +41 -11
- package/dist/valbuild-next.cjs.dev.js +1 -1
- package/dist/valbuild-next.cjs.prod.js +1 -1
- package/dist/valbuild-next.esm.js +1 -1
- package/dist/{version-0eb75889.cjs.prod.js → version-043fe6da.cjs.dev.js} +1 -1
- package/dist/{version-68e9f68c.cjs.dev.js → version-97392163.cjs.prod.js} +1 -1
- package/dist/{version-790b065d.esm.js → version-ad040165.esm.js} +1 -1
- package/package.json +8 -8
- package/rsc/dist/valbuild-next-rsc.cjs.dev.js +1 -1
- package/rsc/dist/valbuild-next-rsc.cjs.prod.js +1 -1
- package/rsc/dist/valbuild-next-rsc.esm.js +1 -1
- package/server/dist/valbuild-next-server.cjs.dev.js +1 -1
- package/server/dist/valbuild-next-server.cjs.prod.js +1 -1
- package/server/dist/valbuild-next-server.esm.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
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
|
+
|
|
3
16
|
## 0.138.6
|
|
4
17
|
|
|
5
18
|
### 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
|
|
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
|
|
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
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
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
|
|
657
|
-
s.object({ title: s.string(), body: s.richtext() })
|
|
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
|
-
>
|
|
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-
|
|
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-
|
|
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-
|
|
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';
|
package/package.json
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"next",
|
|
13
13
|
"react"
|
|
14
14
|
],
|
|
15
|
-
"version": "0.
|
|
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/core": "0.
|
|
51
|
-
"@valbuild/language-server": "0.
|
|
52
|
-
"@valbuild/
|
|
53
|
-
"@valbuild/
|
|
54
|
-
"@valbuild/
|
|
55
|
-
"@valbuild/shared": "0.
|
|
56
|
-
"@valbuild/ui": "0.
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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';
|