@jigs.design/host 0.1.0 → 0.1.2
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/README.md +1 -1
- package/dist/guidance.d.ts +1 -1
- package/dist/host.d.ts +3 -3
- package/dist/host.js +2 -2
- package/dist/recipes.d.ts +2 -2
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -32,7 +32,7 @@ export const host = defineHost({
|
|
|
32
32
|
| ----------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
|
|
33
33
|
| `defineHost` | Builds a host from `components`, `procedures`, `recipes`, `imageHosts`, `guidance` and `situations` |
|
|
34
34
|
| `query`, `mutation`, `action` | The three kinds of procedure. An action is handled by the embedding page |
|
|
35
|
-
| `recipe` | A compound component written in
|
|
35
|
+
| `recipe` | A compound component written in Jigs from catalog components |
|
|
36
36
|
| `situation` | Design guidance for when the reader has a given job, with a checked example |
|
|
37
37
|
| `defineCatalog`, `defineComponent` | Build your own catalog |
|
|
38
38
|
| `string`, `number`, `boolean`, `oneOf`, `handler`, `image`, `link`, `list`, `block`, `inline`, `none` | Prop and children builders for components |
|
package/dist/guidance.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export type GuidanceInput = DesignGuidance | string;
|
|
|
22
22
|
* matches.
|
|
23
23
|
*/
|
|
24
24
|
export interface SituationDefinition {
|
|
25
|
-
/**
|
|
25
|
+
/** Jigs the server compiles against the host at startup. */
|
|
26
26
|
example?: string;
|
|
27
27
|
/** How to design for this situation, stating where it differs from the foundations. */
|
|
28
28
|
guidance: string;
|
package/dist/host.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ export interface Host<TProcedures extends Procedures = Procedures, TCatalog exte
|
|
|
10
10
|
guidance: DesignGuidance;
|
|
11
11
|
imageHosts: ReadonlyArray<string>;
|
|
12
12
|
procedures: TProcedures;
|
|
13
|
-
/** Compound components written in
|
|
13
|
+
/** Compound components written in Jigs; the server checks them at startup. */
|
|
14
14
|
recipes: ReadonlyArray<RecipeDefinition>;
|
|
15
15
|
/** The host's situations, or the catalog's when the host sets none. */
|
|
16
16
|
situations: ReadonlyArray<SituationDefinition>;
|
|
@@ -69,13 +69,13 @@ export interface PagePolicy {
|
|
|
69
69
|
* and the frame then refuses to run.
|
|
70
70
|
*/
|
|
71
71
|
appliesTo: (url: string | URL) => boolean;
|
|
72
|
-
/** The page's directives with the ones
|
|
72
|
+
/** The page's directives with the ones Jigs needs merged in. */
|
|
73
73
|
directives: PolicyDirectives;
|
|
74
74
|
/** `directives` as one `Content-Security-Policy` header value. */
|
|
75
75
|
header: string;
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
|
-
* The embedding page's policy: the page's own `directives` plus what
|
|
78
|
+
* The embedding page's policy: the page's own `directives` plus what Jigs
|
|
79
79
|
* needs, `frame-src` for the sandbox frame and `img-src` for the host's image
|
|
80
80
|
* hosts. Send `header` on every response `appliesTo` accepts; the endpoint's
|
|
81
81
|
* frame carries its own policy, and a page policy sent there replaces it.
|
package/dist/host.js
CHANGED
|
@@ -62,7 +62,7 @@ function endpointSource(endpoint) {
|
|
|
62
62
|
return new URL(endpoint).origin;
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
65
|
-
* Where a directive
|
|
65
|
+
* Where a directive Jigs adds takes its sources from when the page has not
|
|
66
66
|
* set it: once the directive exists, the browser stops falling back.
|
|
67
67
|
*/
|
|
68
68
|
const FALLBACKS = /* @__PURE__ */ new Map([["frame-src", ["child-src", "default-src"]], ["img-src", ["default-src"]]]);
|
|
@@ -78,7 +78,7 @@ function mergeDirectives(directives, extra) {
|
|
|
78
78
|
return Object.fromEntries(merged);
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
81
|
-
* The embedding page's policy: the page's own `directives` plus what
|
|
81
|
+
* The embedding page's policy: the page's own `directives` plus what Jigs
|
|
82
82
|
* needs, `frame-src` for the sandbox frame and `img-src` for the host's image
|
|
83
83
|
* hosts. Send `header` on every response `appliesTo` accepts; the endpoint's
|
|
84
84
|
* frame carries its own policy, and a page policy sent there replaces it.
|
package/dist/recipes.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//#region src/recipes.d.ts
|
|
2
2
|
/**
|
|
3
|
-
* A recipe: a compound component the product writes in
|
|
3
|
+
* A recipe: a compound component the product writes in Jigs, from catalog
|
|
4
4
|
* components and other recipes. The model uses it like any tag. Because it is
|
|
5
5
|
* written in catalog tags, it runs on every renderer whose catalog has those
|
|
6
6
|
* tags, and the server checks it against the host at startup.
|
|
@@ -12,7 +12,7 @@ export interface RecipeDefinition {
|
|
|
12
12
|
example?: string;
|
|
13
13
|
/** The name of the `<define>` in `source`. */
|
|
14
14
|
name: string;
|
|
15
|
-
/**
|
|
15
|
+
/** Jigs source with exactly one `<define name="…">`. */
|
|
16
16
|
source: string;
|
|
17
17
|
}
|
|
18
18
|
/** A recipe named by the `<define>` in its source. */
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jigs.design/host",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Define a host: the catalog a spec may draw, the procedures it may call, and the image hosts.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "git+https://github.com/yoamomonstruos/
|
|
8
|
+
"url": "git+https://github.com/yoamomonstruos/jigs.git",
|
|
9
9
|
"directory": "packages/host"
|
|
10
10
|
},
|
|
11
11
|
"type": "module",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@jigs.design/runtime": "0.1.
|
|
28
|
+
"@jigs.design/runtime": "0.1.2"
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
31
31
|
"zod": "^4.0.0"
|