@barefootjs/go-template 0.26.2 → 0.26.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"conformance-pins.d.ts","sourceRoot":"","sources":["../src/conformance-pins.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,eAAO,MAAM,eAAe,EAAE,eA0I7B,CAAA"}
1
+ {"version":3,"file":"conformance-pins.d.ts","sourceRoot":"","sources":["../src/conformance-pins.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,eAAO,MAAM,eAAe,EAAE,eAqL7B,CAAA"}
package/dist/index.js CHANGED
@@ -6181,6 +6181,19 @@ ${children}`;
6181
6181
  var goTemplateAdapter = new GoTemplateAdapter;
6182
6182
  // src/conformance-pins.ts
6183
6183
  var conformancePins = {
6184
+ "filter-typeof-predicate": [{ code: "BF021", severity: "error" }],
6185
+ "map-preamble-branch-body": [{ code: "BF021", severity: "error" }],
6186
+ "map-array-builder-body": [{ code: "BF021", severity: "error" }],
6187
+ "map-array-builder-escaping": [{ code: "BF021", severity: "error" }],
6188
+ "fill-unsupported": [{ code: "BF101", severity: "error" }],
6189
+ "find-typeof-predicate": [{ code: "BF101", severity: "error" }],
6190
+ "some-typeof-predicate": [{ code: "BF101", severity: "error" }],
6191
+ "every-typeof-predicate": [{ code: "BF101", severity: "error" }],
6192
+ "reduce-typeof-body": [{ code: "BF101", severity: "error" }],
6193
+ "reduce-right-typeof-body": [{ code: "BF101", severity: "error" }],
6194
+ "flatmap-typeof-projection": [{ code: "BF101", severity: "error" }],
6195
+ "tag-cloud": [{ code: "BF021", severity: "error" }],
6196
+ "preamble-cells": [{ code: "BF021", severity: "error" }],
6184
6197
  "static-array-from-props": [
6185
6198
  { code: "BF101", severity: "error", issue: "https://github.com/piconic-ai/barefootjs/issues/2321" }
6186
6199
  ],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@barefootjs/go-template",
3
- "version": "0.26.2",
3
+ "version": "0.26.4",
4
4
  "description": "Go html/template adapter for BarefootJS - generates Go template files from IR",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -49,7 +49,7 @@
49
49
  "directory": "packages/adapter-go-template"
50
50
  },
51
51
  "dependencies": {
52
- "@barefootjs/shared": "0.26.2"
52
+ "@barefootjs/shared": "0.26.4"
53
53
  },
54
54
  "peerDependencies": {
55
55
  "@barefootjs/jsx": ">=0.2.0",
@@ -57,6 +57,6 @@
57
57
  },
58
58
  "devDependencies": {
59
59
  "@barefootjs/adapter-tests": "0.1.0",
60
- "@barefootjs/jsx": "0.26.2"
60
+ "@barefootjs/jsx": "0.26.4"
61
61
  }
62
62
  }
@@ -11,6 +11,49 @@
11
11
  import type { ConformancePins } from '@barefootjs/jsx'
12
12
 
13
13
  export const conformancePins: ConformancePins = {
14
+ // Off-subset filter predicate (`typeof`) the compiler can't lower; a
15
+ // JS-runtime target runs it, a DSL adapter surfaces BF021 + `/* @client */`.
16
+ // See spec/callback-fidelity.md.
17
+ 'filter-typeof-predicate': [{ code: 'BF021', severity: 'error' }],
18
+ // A `.map()` body with a `const`/`let` preamble before its branches:
19
+ // a JS runtime folds it, a DSL adapter can't carry the loop-local into a
20
+ // conditional branch template, so it refuses with BF021 + `/* @client */`.
21
+ // See spec/callback-fidelity.md.
22
+ 'map-preamble-branch-body': [{ code: 'BF021', severity: 'error' }],
23
+ 'map-array-builder-body': [{ code: 'BF021', severity: 'error' }],
24
+ 'map-array-builder-escaping': [{ code: 'BF021', severity: 'error' }],
25
+ // `.fill(value)` mutates the receiver in place — no template lowering
26
+ // on any DSL adapter; a JS-runtime target runs it, a DSL adapter
27
+ // surfaces BF101 + `/* @client */`. See spec/callback-fidelity.md.
28
+ 'fill-unsupported': [{ code: 'BF101', severity: 'error' }],
29
+ // Off-subset `.find()` / `.some()` / `.every()` predicate (`typeof`) the
30
+ // compiler can't lower; a JS-runtime target runs it, a DSL adapter
31
+ // surfaces BF101 + `/* @client */`. See spec/callback-fidelity.md.
32
+ 'find-typeof-predicate': [{ code: 'BF101', severity: 'error' }],
33
+ 'some-typeof-predicate': [{ code: 'BF101', severity: 'error' }],
34
+ 'every-typeof-predicate': [{ code: 'BF101', severity: 'error' }],
35
+ // Off-subset `.reduce()` / `.reduceRight()` body / `.flatMap()`
36
+ // projection (`typeof`) the compiler can't lower; a JS-runtime target
37
+ // runs it, a DSL adapter surfaces BF101 + `/* @client */`.
38
+ // See spec/callback-fidelity.md.
39
+ 'reduce-typeof-body': [{ code: 'BF101', severity: 'error' }],
40
+ 'reduce-right-typeof-body': [{ code: 'BF101', severity: 'error' }],
41
+ 'flatmap-typeof-projection': [{ code: 'BF101', severity: 'error' }],
42
+ // JSX-returning `.flatMap()` body carried as structured segments — i.e.
43
+ // one with STATEMENTS (early returns, consts): a JS runtime executes it
44
+ // verbatim; a DSL template runtime can't, so it refuses with BF021 +
45
+ // `/* @client */` (pre-gate this emitted an empty loop body — silent
46
+ // divergence). A pure PROJECTION body (`flatMap(it => it.tags.map(...))`,
47
+ // e.g. the `flatmap-expression-body` fixture) is NOT pinned: it lowers to
48
+ // neutral nested-loop IR this adapter templatizes natively.
49
+ // See spec/callback-fidelity.md.
50
+ 'tag-cloud': [{ code: 'BF021', severity: 'error' }],
51
+ // A keyed `.map()` row body whose preamble builds a JSX leaf from item
52
+ // state (`cells.push(<td>{stateLabel}</td>)`) embedded as `{cells}` — the
53
+ // Stage 3 array-builder carrier, jsRuntime-only: a JS runtime runs it
54
+ // verbatim (and patches the region on same-key updates, #2389), a DSL
55
+ // adapter refuses with BF021 + `/* @client */`. See spec/callback-fidelity.md.
56
+ 'preamble-cells': [{ code: 'BF021', severity: 'error' }],
14
57
  // `style-object-dynamic` / `style-3-signals` no longer pinned — a
15
58
  // `style={{ … }}` object literal now lowers to a CSS string with dynamic
16
59
  // values interpolated (`background-color:{{.Color}};padding:8px`) via