Files
il/resources/public/js/cljs-runtime/module$node_modules$pixi_DOT_js$lib$scene$text_html$utils$textStyleToCSS.js
2026-07-01 22:38:29 -06:00

33 lines
3.3 KiB
JavaScript

shadow$provide.module$node_modules$pixi_DOT_js$lib$scene$text_html$utils$textStyleToCSS = function(global, require, module, exports) {
function dropShadowToCSS(dropShadowStyle) {
dropShadowStyle = {...dropShadowStyle};
const color = Color.Color.shared.setValue(dropShadowStyle.color).setAlpha(dropShadowStyle.alpha ?? 1).toHexa(), position = `${Math.round(Math.cos(dropShadowStyle.angle) * dropShadowStyle.distance)}px ${Math.round(Math.sin(dropShadowStyle.angle) * dropShadowStyle.distance)}px`;
return 0 < dropShadowStyle.blur ? `text-shadow: ${position} ${dropShadowStyle.blur}px ${color}` : `text-shadow: ${position} ${color}`;
}
function strokeToCSS(stroke) {
const color = Color.Color.shared.setValue(stroke.color).setAlpha(stroke.alpha ?? 1).toHexa();
return [`-webkit-text-stroke-width: ${stroke.width}px`, `-webkit-text-stroke-color: ${color}`, `text-stroke-width: ${stroke.width}px`, `text-stroke-color: ${color}`, "paint-order: stroke"].join(";");
}
var Color = require("module$node_modules$pixi_DOT_js$lib$color$Color"), TextStyle = require("module$node_modules$pixi_DOT_js$lib$scene$text$TextStyle");
"use strict";
const templates = {fontSize:"font-size: {{VALUE}}px", fontFamily:"font-family: {{VALUE}}", fontWeight:"font-weight: {{VALUE}}", fontStyle:"font-style: {{VALUE}}", fontVariant:"font-variant: {{VALUE}}", letterSpacing:"letter-spacing: {{VALUE}}px", align:"text-align: {{VALUE}}", padding:"padding: {{VALUE}}px", whiteSpace:"white-space: {{VALUE}}", lineHeight:"line-height: {{VALUE}}px", wordWrapWidth:"max-width: {{VALUE}}px"}, transform = {fill:value => `color: ${Color.Color.shared.setValue(value).toHexa()}`,
breakWords:value => `word-break: ${value ? "break-all" : "normal"}`, stroke:strokeToCSS, dropShadow:value => !0 === value ? dropShadowToCSS(TextStyle.TextStyle.defaultDropShadow) : value && "object" === typeof value ? dropShadowToCSS({...TextStyle.TextStyle.defaultDropShadow, ...value}) : ""};
exports.textStyleToCSS = function(style) {
var stroke = style._stroke, fill = style._fill;
stroke = [`div { ${[`color: ${Color.Color.shared.setValue(fill.color).setAlpha(fill.alpha ?? 1).toHexa()}`, `font-size: ${style.fontSize}px`, `font-family: ${style.fontFamily}`, `font-weight: ${style.fontWeight}`, `font-style: ${style.fontStyle}`, `font-variant: ${style.fontVariant}`, `letter-spacing: ${style.letterSpacing}px`, `text-align: ${style.align}`, `padding: ${style.padding}px`, `white-space: ${"pre" === style.whiteSpace && style.wordWrap ? "pre-wrap" : style.whiteSpace}`, ...(style.lineHeight ?
[`line-height: ${style.lineHeight}px`] : []), ...(style.wordWrap ? [`word-break: ${style.breakWords ? "break-word" : "normal"}`, `max-width: ${style.wordWrapWidth}px`] : []), ...(stroke ? [strokeToCSS(stroke)] : []), ...(style.dropShadow ? [dropShadowToCSS(style.dropShadow)] : []), ...style.cssOverrides].join(";")} }`];
style = style.tagStyles;
for (const i in style) {
fill = style[i];
const cssTagStyle = [];
for (const j in fill) {
transform[j] ? cssTagStyle.push(transform[j](fill[j])) : templates[j] && cssTagStyle.push(templates[j].replace("{{VALUE}}", fill[j]));
}
stroke.push(`${i} { ${cssTagStyle.join(";")} }`);
}
return stroke.join(" ");
};
};
//# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$scene$text_html$utils$textStyleToCSS.js.map