@risali/react 0.8.2 → 0.8.5
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/dist/image.d.ts +2 -2
- package/dist/image.d.ts.map +1 -1
- package/dist/image.js +5 -0
- package/dist/image.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/page.d.ts.map +1 -1
- package/dist/page.js +27 -3
- package/dist/page.js.map +1 -1
- package/dist/sections/blocks.d.ts.map +1 -1
- package/dist/sections/blocks.js +4 -2
- package/dist/sections/blocks.js.map +1 -1
- package/dist/style.d.ts +28 -1
- package/dist/style.d.ts.map +1 -1
- package/dist/style.js +172 -1
- package/dist/style.js.map +1 -1
- package/dist/types.d.ts +32 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/image.d.ts
CHANGED
|
@@ -12,10 +12,10 @@ export type RisaliImageProps = Omit<ImgHTMLAttributes<HTMLImageElement>, "src" |
|
|
|
12
12
|
export declare function RisaliImage(props: RisaliImageProps): Promise<import("react").DetailedReactHTMLElement<{
|
|
13
13
|
src: string;
|
|
14
14
|
alt: string;
|
|
15
|
+
style: CSSProperties | undefined;
|
|
15
16
|
"data-risali-key": string;
|
|
16
17
|
children?: import("react").ReactNode;
|
|
17
18
|
className?: string | undefined | undefined;
|
|
18
|
-
style?: CSSProperties;
|
|
19
19
|
hidden?: boolean | undefined | undefined;
|
|
20
20
|
color?: string | undefined | undefined;
|
|
21
21
|
height?: number | string | undefined | undefined;
|
|
@@ -28,6 +28,7 @@ export declare function RisaliImage(props: RisaliImageProps): Promise<import("re
|
|
|
28
28
|
__html: string | TrustedHTML;
|
|
29
29
|
} | undefined | undefined;
|
|
30
30
|
fetchPriority?: "high" | "low" | "auto" | undefined | undefined;
|
|
31
|
+
translate?: "yes" | "no" | undefined | undefined;
|
|
31
32
|
slot?: string | undefined | undefined;
|
|
32
33
|
defaultChecked?: boolean | undefined | undefined;
|
|
33
34
|
defaultValue?: string | number | readonly string[] | undefined;
|
|
@@ -45,7 +46,6 @@ export declare function RisaliImage(props: RisaliImageProps): Promise<import("re
|
|
|
45
46
|
nonce?: string | undefined | undefined;
|
|
46
47
|
spellCheck?: (boolean | "false" | "true") | undefined;
|
|
47
48
|
tabIndex?: number | undefined | undefined;
|
|
48
|
-
translate?: "yes" | "no" | undefined | undefined;
|
|
49
49
|
radioGroup?: string | undefined | undefined;
|
|
50
50
|
role?: import("react").AriaRole | undefined;
|
|
51
51
|
about?: string | undefined | undefined;
|
package/dist/image.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../src/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../src/image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI9D,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,YAAY,CAAC;AAIlE,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,iBAAiB,CAAC,gBAAgB,CAAC,EACnC,KAAK,GAAG,KAAK,CACd,GAAG;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB,CAAC;AAOF,wBAAsB,WAAW,CAAC,KAAK,EAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuCxD"}
|
package/dist/image.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createElement } from "react";
|
|
2
2
|
import { findBlock, getRisaliContent } from "./content.js";
|
|
3
|
+
import { imageLayoutStyle } from "./style.js";
|
|
3
4
|
const SAFE_SRC_RE = /^(https?:\/\/|\/)/;
|
|
4
5
|
function safeSrc(value, fallback) {
|
|
5
6
|
if (typeof value !== "string" || !value)
|
|
@@ -19,10 +20,14 @@ export async function RisaliImage(props) {
|
|
|
19
20
|
const alt = typeof value.alt === "string" && value.alt
|
|
20
21
|
? value.alt
|
|
21
22
|
: (defaultAlt ?? "");
|
|
23
|
+
// Full editor PR 8 — width/height + focal (object-position) merged onto any
|
|
24
|
+
// caller-supplied style. Omitted entirely when the block sets no layout.
|
|
25
|
+
const style = imageLayoutStyle(rest.style, value);
|
|
22
26
|
return createElement("img", {
|
|
23
27
|
...rest,
|
|
24
28
|
src,
|
|
25
29
|
alt,
|
|
30
|
+
style,
|
|
26
31
|
"data-risali-key": pageKey,
|
|
27
32
|
});
|
|
28
33
|
}
|
package/dist/image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.js","sourceRoot":"","sources":["../src/image.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"image.js","sourceRoot":"","sources":["../src/image.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG9C,MAAM,WAAW,GAAG,mBAAmB,CAAC;AAexC,SAAS,OAAO,CAAC,KAAc,EAAE,QAAgB;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC;IACzD,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAuB;IACvD,MAAM,EACJ,OAAO,EACP,UAAU,EACV,UAAU,EACV,IAAI,EACJ,OAAO,EAAE,eAAe,EACxB,QAAQ,EACR,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,OAAO,GACX,eAAe,KAAK,SAAS;QAC3B,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,MAAM,gBAAgB,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAExD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,KAAK,GACT,KAAK,EAAE,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QACvE,CAAC,CAAE,KAAK,CAAC,KAA0B;QACnC,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC3C,MAAM,GAAG,GACP,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG;QACxC,CAAC,CAAC,KAAK,CAAC,GAAG;QACX,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;IAEzB,4EAA4E;IAC5E,yEAAyE;IACzE,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAElD,OAAO,aAAa,CAAC,KAAK,EAAE;QAC1B,GAAG,IAAI;QACP,GAAG;QACH,GAAG;QACH,KAAK;QACL,iBAAiB,EAAE,OAAO;KAC3B,CAAC,CAAC;AACL,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { getRisaliContent, findBlock, getBlockValue, getBlockImage, getBlockRichText, getBlockStyleOverrides, } from "./content.js";
|
|
2
2
|
export type { GetRisaliContentOptions } from "./content.js";
|
|
3
|
-
export { applyStyleOverrides } from "./style.js";
|
|
3
|
+
export { applyStyleOverrides, imageLayoutStyle, buildBlockStateCss, buildPageStateCss, } from "./style.js";
|
|
4
4
|
export { RisaliText } from "./text.js";
|
|
5
5
|
export type { RisaliTextProps } from "./text.js";
|
|
6
6
|
export { RisaliImage } from "./image.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EACV,WAAW,EACX,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,IAAI,kBAAkB,EACpC,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAGnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,YAAY,EACV,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { getRisaliContent, findBlock, getBlockValue, getBlockImage, getBlockRichText, getBlockStyleOverrides, } from "./content.js";
|
|
2
|
-
export { applyStyleOverrides } from "./style.js";
|
|
2
|
+
export { applyStyleOverrides, imageLayoutStyle, buildBlockStateCss, buildPageStateCss, } from "./style.js";
|
|
3
3
|
export { RisaliText } from "./text.js";
|
|
4
4
|
export { RisaliImage } from "./image.js";
|
|
5
5
|
export { RisaliRichText } from "./rich-text.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AASjD,kCAAkC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAS9B,iCAAiC;AACjC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAQnB,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,wCAAwC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAKxD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzD,kCAAkC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/page.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../src/page.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../src/page.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EAAE,aAAa,EAAwB,MAAM,YAAY,CAAC;AAEtE,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACxD,gEAAgE;IAChE,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAsB,UAAU,CAAC,KAAK,EAAE,eAAe,+PA+FtD"}
|
package/dist/page.js
CHANGED
|
@@ -15,6 +15,7 @@ import { getRisaliContent } from "./content.js";
|
|
|
15
15
|
import { RISALI_SECTION_COMPONENTS, sectionWrapperStyle, } from "./sections/index.js";
|
|
16
16
|
import { sortByPosition } from "./sections/blocks.js";
|
|
17
17
|
import { fontCssUrlForId, fontBaseFromCssUrl, extractCatalogFontIds } from "./fonts.js";
|
|
18
|
+
import { buildPageStateCss } from "./style.js";
|
|
18
19
|
export async function RisaliPage(props) {
|
|
19
20
|
const { path, siteSlug, content: providedContent, customSections, notFound } = props;
|
|
20
21
|
const content = providedContent !== undefined
|
|
@@ -35,10 +36,23 @@ export async function RisaliPage(props) {
|
|
|
35
36
|
const fontBase = fontBaseFromCssUrl(fonts?.heading?.css_url) ??
|
|
36
37
|
fontBaseFromCssUrl(fonts?.body?.css_url);
|
|
37
38
|
const usedFontIds = new Set();
|
|
38
|
-
|
|
39
|
-
const id =
|
|
39
|
+
const addFont = (slice) => {
|
|
40
|
+
const id = slice?.font_family;
|
|
40
41
|
if (typeof id === "string")
|
|
41
42
|
usedFontIds.add(id);
|
|
43
|
+
};
|
|
44
|
+
for (const b of content.blocks) {
|
|
45
|
+
addFont(b.style_overrides);
|
|
46
|
+
// Per-element fonts can also live in the PR 11 hover / responsive slices —
|
|
47
|
+
// collect those too so their stylesheet loads (the generated state CSS sets
|
|
48
|
+
// font-family from the same catalog).
|
|
49
|
+
addFont(b.style_overrides?.hover);
|
|
50
|
+
const resp = b.style_overrides?.responsive;
|
|
51
|
+
if (resp) {
|
|
52
|
+
addFont(resp.mobile);
|
|
53
|
+
addFont(resp.tablet);
|
|
54
|
+
addFont(resp.desktop);
|
|
55
|
+
}
|
|
42
56
|
// Per-range fonts (PR 9b) live inline in rich_text/html markup, not in
|
|
43
57
|
// style_overrides — scan the value so their stylesheet loads too.
|
|
44
58
|
if ((b.type === "rich_text" || b.type === "html") && typeof b.value === "string") {
|
|
@@ -52,7 +66,17 @@ export async function RisaliPage(props) {
|
|
|
52
66
|
if (url && !fontLinks.includes(url))
|
|
53
67
|
fontLinks.push(url);
|
|
54
68
|
}
|
|
55
|
-
|
|
69
|
+
// PR 11 — hover + responsive overrides can't be inline, so emit one
|
|
70
|
+
// page-level <style> built from every block's stateful overrides (keyed on
|
|
71
|
+
// data-risali-key). Values are pre-validated, so the body is safe to inject.
|
|
72
|
+
const stateCss = buildPageStateCss(content.blocks);
|
|
73
|
+
return createElement(Fragment, null, fontLinks.map((href) => createElement("link", { key: href, rel: "stylesheet", href })), stateCss
|
|
74
|
+
? createElement("style", {
|
|
75
|
+
key: "risali-block-state-css",
|
|
76
|
+
"data-risali-blockcss": "1",
|
|
77
|
+
dangerouslySetInnerHTML: { __html: stateCss },
|
|
78
|
+
})
|
|
79
|
+
: null, sections.map((section) => {
|
|
56
80
|
const Component = customSections?.[section.type] ?? RISALI_SECTION_COMPONENTS[section.type];
|
|
57
81
|
// Unknown type (e.g. a signature section whose component is missing
|
|
58
82
|
// from this deploy) — skip rather than crash the whole page.
|
package/dist/page.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.js","sourceRoot":"","sources":["../src/page.tsx"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,EAAE;AACF,4CAA4C;AAC5C,EAAE;AACF,qDAAqD;AACrD,wDAAwD;AACxD,+DAA+D;AAC/D,MAAM;AACN,EAAE;AACF,uEAAuE;AACvE,yEAAyE;AACzE,yEAAyE;AAGzE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GAEpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"page.js","sourceRoot":"","sources":["../src/page.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../src/sections/blocks.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAItD,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,aAAa,CAAC;AAWpF,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAK3D;AAED,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EACnE,KAAK,EAAE,SAAS,CAAC,EAAE,GAClB,CAAC,EAAE,CAML;AAED,4DAA4D;AAC5D,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAE1D;AAuDD,uEAAuE;AACvE,MAAM,MAAM,eAAe,GAAG;IAC5B,4DAA4D;IAC5D,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,uDAAuD;IACvD,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,4EAA4E;IAC5E,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../src/sections/blocks.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAItD,OAAO,KAAK,EAAE,WAAW,EAAuC,MAAM,aAAa,CAAC;AAWpF,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAK3D;AAED,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EACnE,KAAK,EAAE,SAAS,CAAC,EAAE,GAClB,CAAC,EAAE,CAML;AAED,4DAA4D;AAC5D,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAE1D;AAuDD,uEAAuE;AACvE,MAAM,MAAM,eAAe,GAAG;IAC5B,4DAA4D;IAC5D,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,uDAAuD;IACvD,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,4EAA4E;IAC5E,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,SAAS,CAqHjF;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,CAMtE"}
|
package/dist/sections/blocks.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
// client's per-block color / font-size always wins.
|
|
15
15
|
import { createElement, Fragment } from "react";
|
|
16
16
|
import { sanitiseRichText } from "../sanitize.js";
|
|
17
|
-
import { applyStyleOverrides } from "../style.js";
|
|
17
|
+
import { applyStyleOverrides, imageLayoutStyle } from "../style.js";
|
|
18
18
|
import { BORDER } from "./tokens.js";
|
|
19
19
|
const SAFE_SRC_RE = /^(https?:\/\/|\/)/;
|
|
20
20
|
// Mirror of src/lib/editor/href.ts on the dashboard side — buttons accept
|
|
@@ -130,7 +130,9 @@ export function renderBlock(block, opts) {
|
|
|
130
130
|
src,
|
|
131
131
|
alt: typeof value.alt === "string" ? value.alt : "",
|
|
132
132
|
loading: "lazy",
|
|
133
|
-
|
|
133
|
+
// Full editor PR 8 — block width/height + focal override the section's
|
|
134
|
+
// default IMG_STYLE.
|
|
135
|
+
style: imageLayoutStyle({ ...IMG_STYLE, ...opts?.imageStyle }, value),
|
|
134
136
|
});
|
|
135
137
|
}
|
|
136
138
|
case "button": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocks.js","sourceRoot":"","sources":["../../src/sections/blocks.tsx"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,EAAE;AACF,2EAA2E;AAC3E,2DAA2D;AAC3D,2EAA2E;AAC3E,qEAAqE;AACrE,kDAAkD;AAClD,EAAE;AACF,2EAA2E;AAC3E,yEAAyE;AACzE,2EAA2E;AAC3E,gEAAgE;AAChE,0EAA0E;AAC1E,oDAAoD;AAGpD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"blocks.js","sourceRoot":"","sources":["../../src/sections/blocks.tsx"],"names":[],"mappings":"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"}
|
package/dist/style.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CSSProperties } from "react";
|
|
2
|
-
import type { RisaliStyleOverrides } from "./types.js";
|
|
2
|
+
import type { RisaliImageValue, RisaliStyleOverrides } from "./types.js";
|
|
3
3
|
export declare function safeColor(value: unknown): string | undefined;
|
|
4
4
|
/**
|
|
5
5
|
* Like safeColor but also accepts an 8-digit hex (alpha) and the "transparent"
|
|
@@ -16,5 +16,32 @@ export declare function safeColorAlpha(value: unknown): string | undefined;
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function readableForeground(value: unknown, dark?: string, light?: string): string | undefined;
|
|
18
18
|
export declare function safeFontSizeMultiplier(value: unknown): number | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Build the inline layout style for an image block from its value
|
|
21
|
+
* (full editor PR 8): `width`/`height` in px and a non-destructive `focal`
|
|
22
|
+
* crop rendered as `object-position` + `object-fit: cover`. `object-fit:cover`
|
|
23
|
+
* is applied only when a focal point is set, so plain resizing keeps the
|
|
24
|
+
* default fit. Returns `base` unchanged when nothing applies.
|
|
25
|
+
*/
|
|
26
|
+
export declare function imageLayoutStyle(base: CSSProperties | undefined, value: RisaliImageValue | null | undefined): CSSProperties | undefined;
|
|
19
27
|
export declare function applyStyleOverrides(base: CSSProperties | undefined, overrides: RisaliStyleOverrides | null | undefined): CSSProperties | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Build the generated CSS for one block's hover + responsive overrides
|
|
30
|
+
* (PR 11), keyed on its `data-risali-key`. Returns "" when the key is invalid
|
|
31
|
+
* or no stateful override is set. The output is a concatenation of:
|
|
32
|
+
* `[data-risali-key="K"]:hover{…}`
|
|
33
|
+
* `@media (max-width:640px){[data-risali-key="K"]{…}}` (and tablet/desktop)
|
|
34
|
+
* Every value was validated by applyStyleOverrides, and the key by
|
|
35
|
+
* {@link BLOCK_KEY_RE}, so the string is safe to inject verbatim.
|
|
36
|
+
*/
|
|
37
|
+
export declare function buildBlockStateCss(blockKey: string, overrides: RisaliStyleOverrides | null | undefined): string;
|
|
38
|
+
/**
|
|
39
|
+
* Collect the generated stateful CSS for every block on a page (PR 11),
|
|
40
|
+
* concatenated into one stylesheet body. Empty when no block has hover /
|
|
41
|
+
* responsive overrides.
|
|
42
|
+
*/
|
|
43
|
+
export declare function buildPageStateCss(blocks: ReadonlyArray<{
|
|
44
|
+
key: string;
|
|
45
|
+
style_overrides?: RisaliStyleOverrides | null;
|
|
46
|
+
}>): string;
|
|
20
47
|
//# sourceMappingURL=style.d.ts.map
|
package/dist/style.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAMzE,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAG5D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAKjE;AAiCD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,IAAI,SAAY,EAChB,KAAK,SAAY,GAChB,MAAM,GAAG,SAAS,CAYpB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAKzE;AAoBD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,KAAK,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GACzC,aAAa,GAAG,SAAS,CAkB3B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,SAAS,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GACjD,aAAa,GAAG,SAAS,CA0C3B;AAwDD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GACjD,MAAM,CAmBR;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,aAAa,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAA;CAAE,CAAC,GACpF,MAAM,CAOR"}
|
package/dist/style.js
CHANGED
|
@@ -28,6 +28,22 @@ const BLOCK_PADDING_PX = {
|
|
|
28
28
|
spacious: "48px",
|
|
29
29
|
};
|
|
30
30
|
const TEXT_ALIGNS = new Set(["left", "center", "right"]);
|
|
31
|
+
// PR 10 effects — defense-in-depth re-validation of the already-canonical
|
|
32
|
+
// server output (sanitizeBorder/BoxShadow/Transform). Anchored patterns: only
|
|
33
|
+
// digits, a `solid` keyword and a hex/rgba-free colour token can appear, so no
|
|
34
|
+
// `url()`/`var()`/`;}` breakout survives the API payload.
|
|
35
|
+
const BORDER_RE = /^(?:[1-9]|1[0-2])px solid (?:#[0-9a-f]{6}(?:[0-9a-f]{2})?|transparent)$/;
|
|
36
|
+
const BOX_SHADOW_RE = /^-?\d{1,3}px -?\d{1,3}px \d{1,3}px (?:#[0-9a-f]{6}(?:[0-9a-f]{2})?|transparent)$/;
|
|
37
|
+
const TRANSFORM_RE = /^(?:rotate\(-?\d{1,3}(?:\.\d+)?deg\)(?: scale\(\d(?:\.\d+)?\))?|scale\(\d(?:\.\d+)?\))$/;
|
|
38
|
+
function safeBorder(value) {
|
|
39
|
+
return typeof value === "string" && BORDER_RE.test(value) ? value : undefined;
|
|
40
|
+
}
|
|
41
|
+
function safeBoxShadow(value) {
|
|
42
|
+
return typeof value === "string" && BOX_SHADOW_RE.test(value) ? value : undefined;
|
|
43
|
+
}
|
|
44
|
+
function safeTransform(value) {
|
|
45
|
+
return typeof value === "string" && TRANSFORM_RE.test(value) ? value : undefined;
|
|
46
|
+
}
|
|
31
47
|
/**
|
|
32
48
|
* Picks a readable foreground (near-black or white) for a brand color using
|
|
33
49
|
* WCAG relative luminance — so brand-tinted surfaces (a primary button, an
|
|
@@ -56,6 +72,52 @@ export function safeFontSizeMultiplier(value) {
|
|
|
56
72
|
return undefined;
|
|
57
73
|
return value;
|
|
58
74
|
}
|
|
75
|
+
// Image layout (full editor PR 8). Defense-in-depth clamps mirror the server
|
|
76
|
+
// sanitizer (sanitizeImageValue) — the value was already validated, but the API
|
|
77
|
+
// payload is never trusted verbatim before it becomes inline CSS.
|
|
78
|
+
const MAX_IMAGE_DIMENSION_PX = 4000;
|
|
79
|
+
function safeImageDimension(value) {
|
|
80
|
+
if (typeof value !== "number" || !Number.isFinite(value))
|
|
81
|
+
return undefined;
|
|
82
|
+
const n = Math.round(value);
|
|
83
|
+
if (n < 1)
|
|
84
|
+
return undefined;
|
|
85
|
+
return n > MAX_IMAGE_DIMENSION_PX ? MAX_IMAGE_DIMENSION_PX : n;
|
|
86
|
+
}
|
|
87
|
+
function safeFocalPct(value) {
|
|
88
|
+
if (typeof value !== "number" || !Number.isFinite(value))
|
|
89
|
+
return undefined;
|
|
90
|
+
const c = value < 0 ? 0 : value > 1 ? 1 : value;
|
|
91
|
+
return Math.round(c * 1000) / 10; // 0–100, one decimal
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Build the inline layout style for an image block from its value
|
|
95
|
+
* (full editor PR 8): `width`/`height` in px and a non-destructive `focal`
|
|
96
|
+
* crop rendered as `object-position` + `object-fit: cover`. `object-fit:cover`
|
|
97
|
+
* is applied only when a focal point is set, so plain resizing keeps the
|
|
98
|
+
* default fit. Returns `base` unchanged when nothing applies.
|
|
99
|
+
*/
|
|
100
|
+
export function imageLayoutStyle(base, value) {
|
|
101
|
+
if (!value || typeof value !== "object")
|
|
102
|
+
return base;
|
|
103
|
+
const width = safeImageDimension(value.width);
|
|
104
|
+
const height = safeImageDimension(value.height);
|
|
105
|
+
const fx = value.focal ? safeFocalPct(value.focal.x) : undefined;
|
|
106
|
+
const fy = value.focal ? safeFocalPct(value.focal.y) : undefined;
|
|
107
|
+
const hasFocal = fx !== undefined && fy !== undefined;
|
|
108
|
+
if (width === undefined && height === undefined && !hasFocal)
|
|
109
|
+
return base;
|
|
110
|
+
const next = { ...(base || {}) };
|
|
111
|
+
if (width !== undefined)
|
|
112
|
+
next.width = width;
|
|
113
|
+
if (height !== undefined)
|
|
114
|
+
next.height = height;
|
|
115
|
+
if (hasFocal) {
|
|
116
|
+
next.objectFit = "cover";
|
|
117
|
+
next.objectPosition = `${fx}% ${fy}%`;
|
|
118
|
+
}
|
|
119
|
+
return next;
|
|
120
|
+
}
|
|
59
121
|
export function applyStyleOverrides(base, overrides) {
|
|
60
122
|
if (!overrides)
|
|
61
123
|
return base;
|
|
@@ -69,7 +131,18 @@ export function applyStyleOverrides(base, overrides) {
|
|
|
69
131
|
const padding = typeof overrides.padding === "string"
|
|
70
132
|
? BLOCK_PADDING_PX[overrides.padding]
|
|
71
133
|
: undefined;
|
|
72
|
-
|
|
134
|
+
const border = safeBorder(overrides.border);
|
|
135
|
+
const boxShadow = safeBoxShadow(overrides.box_shadow);
|
|
136
|
+
const transform = safeTransform(overrides.transform);
|
|
137
|
+
if (!color &&
|
|
138
|
+
!bg &&
|
|
139
|
+
!mult &&
|
|
140
|
+
!fontStack &&
|
|
141
|
+
!align &&
|
|
142
|
+
padding === undefined &&
|
|
143
|
+
!border &&
|
|
144
|
+
!boxShadow &&
|
|
145
|
+
!transform) {
|
|
73
146
|
return base;
|
|
74
147
|
}
|
|
75
148
|
const next = { ...(base || {}) };
|
|
@@ -85,6 +158,104 @@ export function applyStyleOverrides(base, overrides) {
|
|
|
85
158
|
next.textAlign = align;
|
|
86
159
|
if (padding !== undefined)
|
|
87
160
|
next.padding = padding;
|
|
161
|
+
if (border)
|
|
162
|
+
next.border = border;
|
|
163
|
+
if (boxShadow)
|
|
164
|
+
next.boxShadow = boxShadow;
|
|
165
|
+
if (transform)
|
|
166
|
+
next.transform = transform;
|
|
88
167
|
return next;
|
|
89
168
|
}
|
|
169
|
+
// ---------------------------------------------------------------------------
|
|
170
|
+
// PR 11 — stateful styles (hover + responsive breakpoints).
|
|
171
|
+
//
|
|
172
|
+
// These two layers CANNOT be expressed inline (PR 1–10 were inline-only), so
|
|
173
|
+
// the renderers emit a generated <style> keyed on data-risali-key. The base
|
|
174
|
+
// fields stay inline; only :hover and @media overrides go through here.
|
|
175
|
+
// Declarations carry `!important` so they beat the element's (non-important)
|
|
176
|
+
// inline base styles at the matching state/breakpoint.
|
|
177
|
+
// ---------------------------------------------------------------------------
|
|
178
|
+
// Only validated keys reach the selector; anything else can never be a block
|
|
179
|
+
// key, so an attribute-selector / </style> breakout is impossible.
|
|
180
|
+
const BLOCK_KEY_RE = /^[A-Za-z0-9_-]+$/;
|
|
181
|
+
// CSSProperties (camelCase) → CSS declaration property (kebab). Closed set —
|
|
182
|
+
// exactly the keys applyStyleOverrides can ever set.
|
|
183
|
+
const CSS_DECL_PROP = {
|
|
184
|
+
color: "color",
|
|
185
|
+
backgroundColor: "background-color",
|
|
186
|
+
fontSize: "font-size",
|
|
187
|
+
fontFamily: "font-family",
|
|
188
|
+
textAlign: "text-align",
|
|
189
|
+
padding: "padding",
|
|
190
|
+
border: "border",
|
|
191
|
+
boxShadow: "box-shadow",
|
|
192
|
+
transform: "transform",
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Turn a single override slice into a `prop:val !important;…` declaration block
|
|
196
|
+
* by running it through applyStyleOverrides (which already validates every
|
|
197
|
+
* field) and serialising the resulting CSSProperties. Returns "" when nothing
|
|
198
|
+
* valid is set — the caller then skips the rule entirely.
|
|
199
|
+
*/
|
|
200
|
+
function declarationsFor(slice) {
|
|
201
|
+
const css = applyStyleOverrides(undefined, slice);
|
|
202
|
+
if (!css)
|
|
203
|
+
return "";
|
|
204
|
+
const parts = [];
|
|
205
|
+
for (const [k, v] of Object.entries(css)) {
|
|
206
|
+
const prop = CSS_DECL_PROP[k];
|
|
207
|
+
if (prop && v !== undefined && v !== null && v !== "") {
|
|
208
|
+
parts.push(`${prop}:${v} !important`);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return parts.join(";");
|
|
212
|
+
}
|
|
213
|
+
/** Media query bounds per breakpoint (mobile ≤640 / tablet 641–1024 / desktop ≥1025). */
|
|
214
|
+
const BREAKPOINT_MEDIA = {
|
|
215
|
+
mobile: "(max-width:640px)",
|
|
216
|
+
tablet: "(min-width:641px) and (max-width:1024px)",
|
|
217
|
+
desktop: "(min-width:1025px)",
|
|
218
|
+
};
|
|
219
|
+
/**
|
|
220
|
+
* Build the generated CSS for one block's hover + responsive overrides
|
|
221
|
+
* (PR 11), keyed on its `data-risali-key`. Returns "" when the key is invalid
|
|
222
|
+
* or no stateful override is set. The output is a concatenation of:
|
|
223
|
+
* `[data-risali-key="K"]:hover{…}`
|
|
224
|
+
* `@media (max-width:640px){[data-risali-key="K"]{…}}` (and tablet/desktop)
|
|
225
|
+
* Every value was validated by applyStyleOverrides, and the key by
|
|
226
|
+
* {@link BLOCK_KEY_RE}, so the string is safe to inject verbatim.
|
|
227
|
+
*/
|
|
228
|
+
export function buildBlockStateCss(blockKey, overrides) {
|
|
229
|
+
if (!overrides || typeof blockKey !== "string" || !BLOCK_KEY_RE.test(blockKey)) {
|
|
230
|
+
return "";
|
|
231
|
+
}
|
|
232
|
+
const sel = `[data-risali-key="${blockKey}"]`;
|
|
233
|
+
const out = [];
|
|
234
|
+
const hover = declarationsFor(overrides.hover);
|
|
235
|
+
if (hover)
|
|
236
|
+
out.push(`${sel}:hover{${hover}}`);
|
|
237
|
+
const responsive = overrides.responsive;
|
|
238
|
+
if (responsive && typeof responsive === "object") {
|
|
239
|
+
for (const bp of ["mobile", "tablet", "desktop"]) {
|
|
240
|
+
const decls = declarationsFor(responsive[bp]);
|
|
241
|
+
if (decls)
|
|
242
|
+
out.push(`@media ${BREAKPOINT_MEDIA[bp]}{${sel}{${decls}}}`);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
return out.join("");
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Collect the generated stateful CSS for every block on a page (PR 11),
|
|
249
|
+
* concatenated into one stylesheet body. Empty when no block has hover /
|
|
250
|
+
* responsive overrides.
|
|
251
|
+
*/
|
|
252
|
+
export function buildPageStateCss(blocks) {
|
|
253
|
+
const parts = [];
|
|
254
|
+
for (const b of blocks) {
|
|
255
|
+
const css = buildBlockStateCss(b.key, b.style_overrides);
|
|
256
|
+
if (css)
|
|
257
|
+
parts.push(css);
|
|
258
|
+
}
|
|
259
|
+
return parts.join("");
|
|
260
|
+
}
|
|
90
261
|
//# sourceMappingURL=style.js.map
|
package/dist/style.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.js","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"style.js","sourceRoot":"","sources":["../src/style.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -8,6 +8,26 @@ export type RisaliStyleOverrides = {
|
|
|
8
8
|
font_size_multiplier?: number;
|
|
9
9
|
text_align?: "left" | "center" | "right" | string;
|
|
10
10
|
padding?: "none" | "compact" | "normal" | "spacious" | string;
|
|
11
|
+
/** Block border — canonical `"<1..12>px solid <color>"` (full editor PR 10). */
|
|
12
|
+
border?: string;
|
|
13
|
+
/** Block box-shadow — canonical `"<x>px <y>px <blur>px <color>"` (PR 10). */
|
|
14
|
+
box_shadow?: string;
|
|
15
|
+
/** Block transform — `"rotate(<deg>deg)"` and/or `"scale(<n>)"` (PR 10). */
|
|
16
|
+
transform?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Hover-state overrides (full editor PR 11) — emitted as a generated
|
|
19
|
+
* `[data-risali-key]:hover { … }` rule (not inline). Base fields only.
|
|
20
|
+
*/
|
|
21
|
+
hover?: RisaliStyleOverrides;
|
|
22
|
+
/**
|
|
23
|
+
* Per-breakpoint overrides (full editor PR 11) — emitted inside `@media`
|
|
24
|
+
* queries (mobile ≤640px / tablet 641–1024px / desktop ≥1025px).
|
|
25
|
+
*/
|
|
26
|
+
responsive?: {
|
|
27
|
+
mobile?: RisaliStyleOverrides;
|
|
28
|
+
tablet?: RisaliStyleOverrides;
|
|
29
|
+
desktop?: RisaliStyleOverrides;
|
|
30
|
+
};
|
|
11
31
|
};
|
|
12
32
|
export type RisaliBlock = {
|
|
13
33
|
key: string;
|
|
@@ -72,6 +92,18 @@ export type RisaliContent = {
|
|
|
72
92
|
export type RisaliImageValue = {
|
|
73
93
|
src?: string;
|
|
74
94
|
alt?: string;
|
|
95
|
+
/** Display width in px (full editor PR 8); rendered as inline `width`. */
|
|
96
|
+
width?: number;
|
|
97
|
+
/** Display height in px (full editor PR 8); rendered as inline `height`. */
|
|
98
|
+
height?: number;
|
|
99
|
+
/**
|
|
100
|
+
* Non-destructive crop anchor (full editor PR 8). Each axis 0–1 (0.5 = centre);
|
|
101
|
+
* rendered as `object-position: {x*100}% {y*100}%` + `object-fit: cover`.
|
|
102
|
+
*/
|
|
103
|
+
focal?: {
|
|
104
|
+
x?: number;
|
|
105
|
+
y?: number;
|
|
106
|
+
};
|
|
75
107
|
};
|
|
76
108
|
export type RisaliButtonValue = {
|
|
77
109
|
text?: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,OAAO,GACP,WAAW,GACX,MAAM,GACN,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAClD,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED