modern-idoc 0.6.19 → 0.6.20
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/index.cjs +10 -5
- package/dist/index.d.cts +3 -1
- package/dist/index.d.mts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +2 -2
- package/dist/index.mjs +10 -6
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -903,11 +903,12 @@ function getDeclarations(constructor) {
|
|
|
903
903
|
function defineProperty(constructor, key, declaration = {}) {
|
|
904
904
|
getDeclarations(constructor).set(key, declaration);
|
|
905
905
|
const {
|
|
906
|
-
default:
|
|
907
|
-
alias
|
|
906
|
+
default: _default,
|
|
907
|
+
alias,
|
|
908
|
+
protected: _protected
|
|
908
909
|
} = declaration;
|
|
909
910
|
const internalKey = Symbol.for(String(key));
|
|
910
|
-
const getDefaultValue = () => typeof
|
|
911
|
+
const getDefaultValue = () => typeof _default === "function" ? _default() : _default;
|
|
911
912
|
const descriptor = Object.getOwnPropertyDescriptor(constructor.prototype, key) || {
|
|
912
913
|
get() {
|
|
913
914
|
if (alias && alias !== key) {
|
|
@@ -917,7 +918,7 @@ function defineProperty(constructor, key, declaration = {}) {
|
|
|
917
918
|
return this[alias];
|
|
918
919
|
}
|
|
919
920
|
} else {
|
|
920
|
-
if (typeof key === "string" && this.offsetGet) {
|
|
921
|
+
if (!_protected && typeof key === "string" && this.offsetGet) {
|
|
921
922
|
return this.offsetGet(key);
|
|
922
923
|
} else {
|
|
923
924
|
return this[internalKey];
|
|
@@ -932,7 +933,7 @@ function defineProperty(constructor, key, declaration = {}) {
|
|
|
932
933
|
this[alias] = value;
|
|
933
934
|
}
|
|
934
935
|
} else {
|
|
935
|
-
if (typeof key === "string" && this.offsetSet) {
|
|
936
|
+
if (!_protected && typeof key === "string" && this.offsetSet) {
|
|
936
937
|
this.offsetSet(key, value);
|
|
937
938
|
} else {
|
|
938
939
|
this[internalKey] = value;
|
|
@@ -968,6 +969,9 @@ function property(options) {
|
|
|
968
969
|
defineProperty(proto.constructor, name, options);
|
|
969
970
|
};
|
|
970
971
|
}
|
|
972
|
+
function protectedProperty(options) {
|
|
973
|
+
return property({ ...options, protected: true });
|
|
974
|
+
}
|
|
971
975
|
|
|
972
976
|
function getDefaultInnerShadow() {
|
|
973
977
|
return {
|
|
@@ -1481,6 +1485,7 @@ exports.parseColor = parseColor;
|
|
|
1481
1485
|
exports.parseGradient = parseGradient;
|
|
1482
1486
|
exports.pick = pick;
|
|
1483
1487
|
exports.property = property;
|
|
1488
|
+
exports.protectedProperty = protectedProperty;
|
|
1484
1489
|
exports.round = round;
|
|
1485
1490
|
exports.setNestedValue = setNestedValue;
|
|
1486
1491
|
exports.setObjectValueByPath = setObjectValueByPath;
|
package/dist/index.d.cts
CHANGED
|
@@ -324,10 +324,12 @@ interface PropertyDeclaration {
|
|
|
324
324
|
readonly [key: string]: any;
|
|
325
325
|
readonly default?: any | (() => any);
|
|
326
326
|
readonly alias?: string | symbol;
|
|
327
|
+
readonly protected?: boolean;
|
|
327
328
|
}
|
|
328
329
|
declare function getDeclarations(constructor: any): Map<PropertyKey, PropertyDeclaration>;
|
|
329
330
|
declare function defineProperty(constructor: any, key: PropertyKey, declaration?: PropertyDeclaration): void;
|
|
330
331
|
declare function property(options?: PropertyDeclaration): PropertyDecorator;
|
|
332
|
+
declare function protectedProperty(options?: Omit<PropertyDeclaration, 'protected'>): PropertyDecorator;
|
|
331
333
|
|
|
332
334
|
interface NormalizedInnerShadow {
|
|
333
335
|
color: NormalizedColor;
|
|
@@ -777,5 +779,5 @@ declare class RawWeakMap<K extends WeakKey = WeakKey, V = any> {
|
|
|
777
779
|
set(key: K, value: V): this;
|
|
778
780
|
}
|
|
779
781
|
|
|
780
|
-
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|
|
782
|
+
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, protectedProperty, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|
|
781
783
|
export type { Align, AngularNode, Audio, Background, BackgroundObject, BackgroundSize, BorderStyle, BoxShadow, BoxSizing, CmykColor, CmykaColor, Color, ColorFill, ColorFillObject, ColorStop, ColorStopNode, DefaultRadialNode, Definable, Direction, DirectionalNode, Display, Document, Effect, EffectObject, Element, EmNode, ExtentKeywordNode, Fill, FillObject, FillRule, FlatTextContent, FlexDirection, FlexWrap, FontKerning, FontStyle, FontWeight, Foreground, ForegroundObject, FragmentObject, GradientFill, GradientFillObject, GradientNode, HeadEnd, Hex8Color, HexNode, HighlightColormap, HighlightImage, HighlightLine, HighlightReferImage, HighlightSize, HighlightThickness, HslColor, HslaColor, HsvColor, HsvaColor, HwbColor, HwbaColor, ImageFill, ImageFillCropRect, ImageFillObject, ImageFillStretchRect, ImageFillTile, InnerShadow, InnerShadowObject, Justify, LabColor, LabaColor, LchColor, LchaColor, LineEndSize, LineEndType, LinearGradient, LinearGradientNode, LinearGradientWithType, ListStyleColormap, ListStyleImage, ListStylePosition, ListStyleSize, ListStyleType, LiteralNode, Meta, Node, None, NormalizedAudio, NormalizedBackground, NormalizedBaseBackground, NormalizedBaseForeground, NormalizedBaseOuterShadow, NormalizedBaseOutline, NormalizedColor, NormalizedColorFill, NormalizedDocument, NormalizedEffect, NormalizedElement, NormalizedElementStyle, NormalizedFill, NormalizedForeground, NormalizedGradientFill, NormalizedHighlight, NormalizedHighlightStyle, NormalizedImageFill, NormalizedInnerShadow, NormalizedLayoutStyle, NormalizedListStyle, NormalizedListStyleStyle, NormalizedOuterShadow, NormalizedOutline, NormalizedPresetFill, NormalizedShadow, NormalizedShadowStyle, NormalizedShape, NormalizedSoftEdge, NormalizedStyle, NormalizedText, NormalizedTextContent, NormalizedTextDrawStyle, NormalizedTextInlineStyle, NormalizedTextLineStyle, NormalizedTextStyle, NormalizedTransformStyle, NormalizedVideo, ObjectColor, OuterShadow, OuterShadowObject, Outline, OutlineObject, OutlineStyle, Overflow, ParagraphObject, PercentNode, PointerEvents, Position, PositionKeywordNode, PositionNode, PresetFill, PresetFillObject, PropertyDeclaration, PxNode, RadialGradient, RadialGradientNode, RadialGradientWithType, RepeatingLinearGradientNode, RepeatingRadialGradientNode, RgbColor, RgbNode, RgbaColor, RgbaNode, SVGPathData, Shadow, ShadowObject, Shape, ShapeNode, ShapePath, ShapePathStyle, SoftEdge, StrokeLinecap, StrokeLinejoin, Style, StyleObject, StyleUnit, TailEnd, Text, TextAlign, TextContent, TextDecoration, TextOrientation, TextTransform, TextWrap, Uint32Color, VerticalAlign, Video, Visibility, WithNone, WithStyleNone, WritingMode, XyzColor, XyzaColor };
|
package/dist/index.d.mts
CHANGED
|
@@ -324,10 +324,12 @@ interface PropertyDeclaration {
|
|
|
324
324
|
readonly [key: string]: any;
|
|
325
325
|
readonly default?: any | (() => any);
|
|
326
326
|
readonly alias?: string | symbol;
|
|
327
|
+
readonly protected?: boolean;
|
|
327
328
|
}
|
|
328
329
|
declare function getDeclarations(constructor: any): Map<PropertyKey, PropertyDeclaration>;
|
|
329
330
|
declare function defineProperty(constructor: any, key: PropertyKey, declaration?: PropertyDeclaration): void;
|
|
330
331
|
declare function property(options?: PropertyDeclaration): PropertyDecorator;
|
|
332
|
+
declare function protectedProperty(options?: Omit<PropertyDeclaration, 'protected'>): PropertyDecorator;
|
|
331
333
|
|
|
332
334
|
interface NormalizedInnerShadow {
|
|
333
335
|
color: NormalizedColor;
|
|
@@ -777,5 +779,5 @@ declare class RawWeakMap<K extends WeakKey = WeakKey, V = any> {
|
|
|
777
779
|
set(key: K, value: V): this;
|
|
778
780
|
}
|
|
779
781
|
|
|
780
|
-
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|
|
782
|
+
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, protectedProperty, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|
|
781
783
|
export type { Align, AngularNode, Audio, Background, BackgroundObject, BackgroundSize, BorderStyle, BoxShadow, BoxSizing, CmykColor, CmykaColor, Color, ColorFill, ColorFillObject, ColorStop, ColorStopNode, DefaultRadialNode, Definable, Direction, DirectionalNode, Display, Document, Effect, EffectObject, Element, EmNode, ExtentKeywordNode, Fill, FillObject, FillRule, FlatTextContent, FlexDirection, FlexWrap, FontKerning, FontStyle, FontWeight, Foreground, ForegroundObject, FragmentObject, GradientFill, GradientFillObject, GradientNode, HeadEnd, Hex8Color, HexNode, HighlightColormap, HighlightImage, HighlightLine, HighlightReferImage, HighlightSize, HighlightThickness, HslColor, HslaColor, HsvColor, HsvaColor, HwbColor, HwbaColor, ImageFill, ImageFillCropRect, ImageFillObject, ImageFillStretchRect, ImageFillTile, InnerShadow, InnerShadowObject, Justify, LabColor, LabaColor, LchColor, LchaColor, LineEndSize, LineEndType, LinearGradient, LinearGradientNode, LinearGradientWithType, ListStyleColormap, ListStyleImage, ListStylePosition, ListStyleSize, ListStyleType, LiteralNode, Meta, Node, None, NormalizedAudio, NormalizedBackground, NormalizedBaseBackground, NormalizedBaseForeground, NormalizedBaseOuterShadow, NormalizedBaseOutline, NormalizedColor, NormalizedColorFill, NormalizedDocument, NormalizedEffect, NormalizedElement, NormalizedElementStyle, NormalizedFill, NormalizedForeground, NormalizedGradientFill, NormalizedHighlight, NormalizedHighlightStyle, NormalizedImageFill, NormalizedInnerShadow, NormalizedLayoutStyle, NormalizedListStyle, NormalizedListStyleStyle, NormalizedOuterShadow, NormalizedOutline, NormalizedPresetFill, NormalizedShadow, NormalizedShadowStyle, NormalizedShape, NormalizedSoftEdge, NormalizedStyle, NormalizedText, NormalizedTextContent, NormalizedTextDrawStyle, NormalizedTextInlineStyle, NormalizedTextLineStyle, NormalizedTextStyle, NormalizedTransformStyle, NormalizedVideo, ObjectColor, OuterShadow, OuterShadowObject, Outline, OutlineObject, OutlineStyle, Overflow, ParagraphObject, PercentNode, PointerEvents, Position, PositionKeywordNode, PositionNode, PresetFill, PresetFillObject, PropertyDeclaration, PxNode, RadialGradient, RadialGradientNode, RadialGradientWithType, RepeatingLinearGradientNode, RepeatingRadialGradientNode, RgbColor, RgbNode, RgbaColor, RgbaNode, SVGPathData, Shadow, ShadowObject, Shape, ShapeNode, ShapePath, ShapePathStyle, SoftEdge, StrokeLinecap, StrokeLinejoin, Style, StyleObject, StyleUnit, TailEnd, Text, TextAlign, TextContent, TextDecoration, TextOrientation, TextTransform, TextWrap, Uint32Color, VerticalAlign, Video, Visibility, WithNone, WithStyleNone, WritingMode, XyzColor, XyzaColor };
|
package/dist/index.d.ts
CHANGED
|
@@ -324,10 +324,12 @@ interface PropertyDeclaration {
|
|
|
324
324
|
readonly [key: string]: any;
|
|
325
325
|
readonly default?: any | (() => any);
|
|
326
326
|
readonly alias?: string | symbol;
|
|
327
|
+
readonly protected?: boolean;
|
|
327
328
|
}
|
|
328
329
|
declare function getDeclarations(constructor: any): Map<PropertyKey, PropertyDeclaration>;
|
|
329
330
|
declare function defineProperty(constructor: any, key: PropertyKey, declaration?: PropertyDeclaration): void;
|
|
330
331
|
declare function property(options?: PropertyDeclaration): PropertyDecorator;
|
|
332
|
+
declare function protectedProperty(options?: Omit<PropertyDeclaration, 'protected'>): PropertyDecorator;
|
|
331
333
|
|
|
332
334
|
interface NormalizedInnerShadow {
|
|
333
335
|
color: NormalizedColor;
|
|
@@ -777,5 +779,5 @@ declare class RawWeakMap<K extends WeakKey = WeakKey, V = any> {
|
|
|
777
779
|
set(key: K, value: V): this;
|
|
778
780
|
}
|
|
779
781
|
|
|
780
|
-
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|
|
782
|
+
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, protectedProperty, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|
|
781
783
|
export type { Align, AngularNode, Audio, Background, BackgroundObject, BackgroundSize, BorderStyle, BoxShadow, BoxSizing, CmykColor, CmykaColor, Color, ColorFill, ColorFillObject, ColorStop, ColorStopNode, DefaultRadialNode, Definable, Direction, DirectionalNode, Display, Document, Effect, EffectObject, Element, EmNode, ExtentKeywordNode, Fill, FillObject, FillRule, FlatTextContent, FlexDirection, FlexWrap, FontKerning, FontStyle, FontWeight, Foreground, ForegroundObject, FragmentObject, GradientFill, GradientFillObject, GradientNode, HeadEnd, Hex8Color, HexNode, HighlightColormap, HighlightImage, HighlightLine, HighlightReferImage, HighlightSize, HighlightThickness, HslColor, HslaColor, HsvColor, HsvaColor, HwbColor, HwbaColor, ImageFill, ImageFillCropRect, ImageFillObject, ImageFillStretchRect, ImageFillTile, InnerShadow, InnerShadowObject, Justify, LabColor, LabaColor, LchColor, LchaColor, LineEndSize, LineEndType, LinearGradient, LinearGradientNode, LinearGradientWithType, ListStyleColormap, ListStyleImage, ListStylePosition, ListStyleSize, ListStyleType, LiteralNode, Meta, Node, None, NormalizedAudio, NormalizedBackground, NormalizedBaseBackground, NormalizedBaseForeground, NormalizedBaseOuterShadow, NormalizedBaseOutline, NormalizedColor, NormalizedColorFill, NormalizedDocument, NormalizedEffect, NormalizedElement, NormalizedElementStyle, NormalizedFill, NormalizedForeground, NormalizedGradientFill, NormalizedHighlight, NormalizedHighlightStyle, NormalizedImageFill, NormalizedInnerShadow, NormalizedLayoutStyle, NormalizedListStyle, NormalizedListStyleStyle, NormalizedOuterShadow, NormalizedOutline, NormalizedPresetFill, NormalizedShadow, NormalizedShadowStyle, NormalizedShape, NormalizedSoftEdge, NormalizedStyle, NormalizedText, NormalizedTextContent, NormalizedTextDrawStyle, NormalizedTextInlineStyle, NormalizedTextLineStyle, NormalizedTextStyle, NormalizedTransformStyle, NormalizedVideo, ObjectColor, OuterShadow, OuterShadowObject, Outline, OutlineObject, OutlineStyle, Overflow, ParagraphObject, PercentNode, PointerEvents, Position, PositionKeywordNode, PositionNode, PresetFill, PresetFillObject, PropertyDeclaration, PxNode, RadialGradient, RadialGradientNode, RadialGradientWithType, RepeatingLinearGradientNode, RepeatingRadialGradientNode, RgbColor, RgbNode, RgbaColor, RgbaNode, SVGPathData, Shadow, ShadowObject, Shape, ShapeNode, ShapePath, ShapePathStyle, SoftEdge, StrokeLinecap, StrokeLinejoin, Style, StyleObject, StyleUnit, TailEnd, Text, TextAlign, TextContent, TextDecoration, TextOrientation, TextTransform, TextWrap, Uint32Color, VerticalAlign, Video, Visibility, WithNone, WithStyleNone, WritingMode, XyzColor, XyzaColor };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(o,E){typeof exports=="object"&&typeof module<"u"?E(exports):typeof define=="function"&&define.amd?define(["exports"],E):(o=typeof globalThis<"u"?globalThis:o||self,E(o.modernIdoc={}))})(this,function(o){"use strict";function E(t){return typeof t=="string"?{src:t}:t}var ce={grad:.9,turn:360,rad:360/(2*Math.PI)},_=function(t){return typeof t=="string"?t.length>0:typeof t=="number"},m=function(t,e,n){return e===void 0&&(e=0),n===void 0&&(n=Math.pow(10,e)),Math.round(n*t)/n+0},S=function(t,e,n){return e===void 0&&(e=0),n===void 0&&(n=1),t>n?n:t>e?t:e},at=function(t){return(t=isFinite(t)?t%360:0)>0?t:t+360},ut=function(t){return{r:S(t.r,0,255),g:S(t.g,0,255),b:S(t.b,0,255),a:S(t.a)}},x=function(t){return{r:m(t.r),g:m(t.g),b:m(t.b),a:m(t.a,3)}},fe=/^#([0-9a-f]{3,8})$/i,A=function(t){var e=t.toString(16);return e.length<2?"0"+e:e},lt=function(t){var e=t.r,n=t.g,r=t.b,i=t.a,f=Math.max(e,n,r),s=f-Math.min(e,n,r),l=s?f===e?(n-r)/s:f===n?2+(r-e)/s:4+(e-n)/s:0;return{h:60*(l<0?l+6:l),s:f?s/f*100:0,v:f/255*100,a:i}},st=function(t){var e=t.h,n=t.s,r=t.v,i=t.a;e=e/360*6,n/=100,r/=100;var f=Math.floor(e),s=r*(1-n),l=r*(1-(e-f)*n),c=r*(1-(1-e+f)*n),h=f%6;return{r:255*[r,l,s,s,c,r][h],g:255*[c,r,r,l,s,s][h],b:255*[s,s,c,r,r,l][h],a:i}},ct=function(t){return{h:at(t.h),s:S(t.s,0,100),l:S(t.l,0,100),a:S(t.a)}},ft=function(t){return{h:m(t.h),s:m(t.s),l:m(t.l),a:m(t.a,3)}},dt=function(t){return st((n=(e=t).s,{h:e.h,s:(n*=((r=e.l)<50?r:100-r)/100)>0?2*n/(r+n)*100:0,v:r+n,a:e.a}));var e,n,r},G=function(t){return{h:(e=lt(t)).h,s:(i=(200-(n=e.s))*(r=e.v)/100)>0&&i<200?n*r/100/(i<=100?i:200-i)*100:0,l:i/2,a:e.a};var e,n,r,i},de=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,ge=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,he=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,ve=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,gt={string:[[function(t){var e=fe.exec(t);return e?(t=e[1]).length<=4?{r:parseInt(t[0]+t[0],16),g:parseInt(t[1]+t[1],16),b:parseInt(t[2]+t[2],16),a:t.length===4?m(parseInt(t[3]+t[3],16)/255,2):1}:t.length===6||t.length===8?{r:parseInt(t.substr(0,2),16),g:parseInt(t.substr(2,2),16),b:parseInt(t.substr(4,2),16),a:t.length===8?m(parseInt(t.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(t){var e=he.exec(t)||ve.exec(t);return e?e[2]!==e[4]||e[4]!==e[6]?null:ut({r:Number(e[1])/(e[2]?100/255:1),g:Number(e[3])/(e[4]?100/255:1),b:Number(e[5])/(e[6]?100/255:1),a:e[7]===void 0?1:Number(e[7])/(e[8]?100:1)}):null},"rgb"],[function(t){var e=de.exec(t)||ge.exec(t);if(!e)return null;var n,r,i=ct({h:(n=e[1],r=e[2],r===void 0&&(r="deg"),Number(n)*(ce[r]||1)),s:Number(e[3]),l:Number(e[4]),a:e[5]===void 0?1:Number(e[5])/(e[6]?100:1)});return dt(i)},"hsl"]],object:[[function(t){var e=t.r,n=t.g,r=t.b,i=t.a,f=i===void 0?1:i;return _(e)&&_(n)&&_(r)?ut({r:Number(e),g:Number(n),b:Number(r),a:Number(f)}):null},"rgb"],[function(t){var e=t.h,n=t.s,r=t.l,i=t.a,f=i===void 0?1:i;if(!_(e)||!_(n)||!_(r))return null;var s=ct({h:Number(e),s:Number(n),l:Number(r),a:Number(f)});return dt(s)},"hsl"],[function(t){var e=t.h,n=t.s,r=t.v,i=t.a,f=i===void 0?1:i;if(!_(e)||!_(n)||!_(r))return null;var s=function(l){return{h:at(l.h),s:S(l.s,0,100),v:S(l.v,0,100),a:S(l.a)}}({h:Number(e),s:Number(n),v:Number(r),a:Number(f)});return st(s)},"hsv"]]},ht=function(t,e){for(var n=0;n<e.length;n++){var r=e[n][0](t);if(r)return[r,e[n][1]]}return[null,void 0]},me=function(t){return typeof t=="string"?ht(t.trim(),gt.string):typeof t=="object"&&t!==null?ht(t,gt.object):[null,void 0]},K=function(t,e){var n=G(t);return{h:n.h,s:S(n.s+100*e,0,100),l:n.l,a:n.a}},X=function(t){return(299*t.r+587*t.g+114*t.b)/1e3/255},vt=function(t,e){var n=G(t);return{h:n.h,s:n.s,l:S(n.l+100*e,0,100),a:n.a}},mt=function(){function t(e){this.parsed=me(e)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return t.prototype.isValid=function(){return this.parsed!==null},t.prototype.brightness=function(){return m(X(this.rgba),2)},t.prototype.isDark=function(){return X(this.rgba)<.5},t.prototype.isLight=function(){return X(this.rgba)>=.5},t.prototype.toHex=function(){return e=x(this.rgba),n=e.r,r=e.g,i=e.b,s=(f=e.a)<1?A(m(255*f)):"","#"+A(n)+A(r)+A(i)+s;var e,n,r,i,f,s},t.prototype.toRgb=function(){return x(this.rgba)},t.prototype.toRgbString=function(){return e=x(this.rgba),n=e.r,r=e.g,i=e.b,(f=e.a)<1?"rgba("+n+", "+r+", "+i+", "+f+")":"rgb("+n+", "+r+", "+i+")";var e,n,r,i,f},t.prototype.toHsl=function(){return ft(G(this.rgba))},t.prototype.toHslString=function(){return e=ft(G(this.rgba)),n=e.h,r=e.s,i=e.l,(f=e.a)<1?"hsla("+n+", "+r+"%, "+i+"%, "+f+")":"hsl("+n+", "+r+"%, "+i+"%)";var e,n,r,i,f},t.prototype.toHsv=function(){return e=lt(this.rgba),{h:m(e.h),s:m(e.s),v:m(e.v),a:m(e.a,3)};var e},t.prototype.invert=function(){return w({r:255-(e=this.rgba).r,g:255-e.g,b:255-e.b,a:e.a});var e},t.prototype.saturate=function(e){return e===void 0&&(e=.1),w(K(this.rgba,e))},t.prototype.desaturate=function(e){return e===void 0&&(e=.1),w(K(this.rgba,-e))},t.prototype.grayscale=function(){return w(K(this.rgba,-1))},t.prototype.lighten=function(e){return e===void 0&&(e=.1),w(vt(this.rgba,e))},t.prototype.darken=function(e){return e===void 0&&(e=.1),w(vt(this.rgba,-e))},t.prototype.rotate=function(e){return e===void 0&&(e=15),this.hue(this.hue()+e)},t.prototype.alpha=function(e){return typeof e=="number"?w({r:(n=this.rgba).r,g:n.g,b:n.b,a:e}):m(this.rgba.a,3);var n},t.prototype.hue=function(e){var n=G(this.rgba);return typeof e=="number"?w({h:e,s:n.s,l:n.l,a:n.a}):m(n.h)},t.prototype.isEqual=function(e){return this.toHex()===w(e).toHex()},t}(),w=function(t){return t instanceof mt?t:new mt(t)};function g(t){return t==null||t==="none"}function N(t,e=0,n=10**e){return Math.round(n*t)/n+0}function O(t,e=!1){if(typeof t!="object"||!t)return t;if(Array.isArray(t))return e?t.map(r=>O(r,e)):t;const n={};for(const r in t){const i=t[r];i!=null&&(e?n[r]=O(i,e):n[r]=i)}return n}function M(t,e){const n={};return e.forEach(r=>{r in t&&(n[r]=t[r])}),n}function pt(t,e,n){const r=e.length-1;if(r<0)return t===void 0?n:t;for(let i=0;i<r;i++){if(t==null)return n;t=t[e[i]]}return t==null||t[e[r]]===void 0?n:t[e[r]]}function bt(t,e,n){const r=e.length-1;for(let i=0;i<r;i++)typeof t[e[i]]!="object"&&(t[e[i]]={}),t=t[e[i]];t[e[r]]=n}function yt(t,e,n){return t==null||!e||typeof e!="string"?n:t[e]!==void 0?t[e]:(e=e.replace(/\[(\w+)\]/g,".$1"),e=e.replace(/^\./,""),pt(t,e.split("."),n))}function St(t,e,n){if(!(typeof t!="object"||!e))return e=e.replace(/\[(\w+)\]/g,".$1"),e=e.replace(/^\./,""),bt(t,e.split("."),n)}class Ct{_map=new WeakMap;_toRaw(e){if(e&&typeof e=="object"){const n=e.__v_raw;n&&(e=this._toRaw(n))}return e}delete(e){return this._map.delete(this._toRaw(e))}get(e){return this._map.get(this._toRaw(e))}has(e){return this._map.has(this._toRaw(e))}set(e,n){return this._map.set(this._toRaw(e),this._toRaw(n)),this}}function Y(t){let e;return typeof t=="number"?e={r:t>>24&255,g:t>>16&255,b:t>>8&255,a:(t&255)/255}:e=t,w(e)}function pe(t){return{r:N(t.r),g:N(t.g),b:N(t.b),a:N(t.a,3)}}function T(t){const e=t.toString(16);return e.length<2?`0${e}`:e}const k="#000000FF";function wt(t){return Y(t).isValid()}function b(t,e=!1){const n=Y(t);if(!n.isValid()){if(typeof t=="string")return t;const l=`Failed to normalizeColor ${t}`;if(e)throw new Error(l);return console.warn(l),k}const{r,g:i,b:f,a:s}=pe(n.rgba);return`#${T(r)}${T(i)}${T(f)}${T(N(s*255))}`}var $=$||{};$.parse=function(){const t={linearGradient:/^(-(webkit|o|ms|moz)-)?(linear-gradient)/i,repeatingLinearGradient:/^(-(webkit|o|ms|moz)-)?(repeating-linear-gradient)/i,radialGradient:/^(-(webkit|o|ms|moz)-)?(radial-gradient)/i,repeatingRadialGradient:/^(-(webkit|o|ms|moz)-)?(repeating-radial-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest-side|closest-corner|farthest-side|farthest-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?((\d*\.\d+)|(\d+\.?)))px/,percentageValue:/^(-?((\d*\.\d+)|(\d+\.?)))%/,emValue:/^(-?((\d*\.\d+)|(\d+\.?)))em/,angleValue:/^(-?((\d*\.\d+)|(\d+\.?)))deg/,radianValue:/^(-?((\d*\.\d+)|(\d+\.?)))rad/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^#([0-9a-f]+)/i,literalColor:/^([a-z]+)/i,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,varColor:/^var/i,calcValue:/^calc/i,variableName:/^(--[a-z0-9-,\s#]+)/i,number:/^((\d*\.\d+)|(\d+\.?))/,hslColor:/^hsl/i,hslaColor:/^hsla/i};let e="";function n(a){const u=new Error(`${e}: ${a}`);throw u.source=e,u}function r(){const a=i();return e.length>0&&n("Invalid input not EOF"),a}function i(){return B(f)}function f(){return s("linear-gradient",t.linearGradient,c)||s("repeating-linear-gradient",t.repeatingLinearGradient,c)||s("radial-gradient",t.radialGradient,z)||s("repeating-radial-gradient",t.repeatingRadialGradient,z)}function s(a,u,d){return l(u,p=>{const R=d();return R&&(v(t.comma)||n("Missing comma before color stops")),{type:a,orientation:R,colorStops:B(Ee)}})}function l(a,u){const d=v(a);if(d){v(t.startCall)||n("Missing (");const p=u(d);return v(t.endCall)||n("Missing )"),p}}function c(){const a=h();if(a)return a;const u=y("position-keyword",t.positionKeywords,1);return u?{type:"directional",value:u.value}:C()}function h(){return y("directional",t.sideOrCorner,1)}function C(){return y("angular",t.angleValue,1)||y("angular",t.radianValue,1)}function z(){let a,u=L(),d;return u&&(a=[],a.push(u),d=e,v(t.comma)&&(u=L(),u?a.push(u):e=d)),a}function L(){let a=et()||Oe();if(a)a.at=rt();else{const u=nt();if(u){a=u;const d=rt();d&&(a.at=d)}else{const d=rt();if(d)a={type:"default-radial",at:d};else{const p=it();p&&(a={type:"default-radial",at:p})}}}return a}function et(){const a=y("shape",/^(circle)/i,0);return a&&(a.style=se()||nt()),a}function Oe(){const a=y("shape",/^(ellipse)/i,0);return a&&(a.style=it()||j()||nt()),a}function nt(){return y("extent-keyword",t.extentKeywords,1)}function rt(){if(y("position",/^at/,0)){const a=it();return a||n("Missing positioning value"),a}}function it(){const a=Re();if(a.x||a.y)return{type:"position",value:a}}function Re(){return{x:j(),y:j()}}function B(a){let u=a();const d=[];if(u)for(d.push(u);v(t.comma);)u=a(),u?d.push(u):n("One extra comma");return d}function Ee(){const a=De();return a||n("Expected color definition"),a.length=j(),a}function De(){return Ge()||Ae()||Pe()||Ie()||ke()||Ve()||Le()}function Le(){return y("literal",t.literalColor,0)}function Ge(){return y("hex",t.hexColor,1)}function ke(){return l(t.rgbColor,()=>({type:"rgb",value:B(P)}))}function Ie(){return l(t.rgbaColor,()=>({type:"rgba",value:B(P)}))}function Ve(){return l(t.varColor,()=>({type:"var",value:Me()}))}function Pe(){return l(t.hslColor,()=>{v(t.percentageValue)&&n("HSL hue value must be a number in degrees (0-360) or normalized (-360 to 360), not a percentage");const u=P();v(t.comma);let d=v(t.percentageValue);const p=d?d[1]:null;v(t.comma),d=v(t.percentageValue);const R=d?d[1]:null;return(!p||!R)&&n("Expected percentage value for saturation and lightness in HSL"),{type:"hsl",value:[u,p,R]}})}function Ae(){return l(t.hslaColor,()=>{const a=P();v(t.comma);let u=v(t.percentageValue);const d=u?u[1]:null;v(t.comma),u=v(t.percentageValue);const p=u?u[1]:null;v(t.comma);const R=P();return(!d||!p)&&n("Expected percentage value for saturation and lightness in HSLA"),{type:"hsla",value:[a,d,p,R]}})}function Me(){return v(t.variableName)[1]}function P(){return v(t.number)[1]}function j(){return y("%",t.percentageValue,1)||Te()||$e()||se()}function Te(){return y("position-keyword",t.positionKeywords,1)}function $e(){return l(t.calcValue,()=>{let a=1,u=0;for(;a>0&&u<e.length;){const p=e.charAt(u);p==="("?a++:p===")"&&a--,u++}a>0&&n("Missing closing parenthesis in calc() expression");const d=e.substring(0,u-1);return ot(u-1),{type:"calc",value:d}})}function se(){return y("px",t.pixelValue,1)||y("em",t.emValue,1)}function y(a,u,d){const p=v(u);if(p)return{type:a,value:p[d]}}function v(a){let u,d;return d=/^\s+/.exec(e),d&&ot(d[0].length),u=a.exec(e),u&&ot(u[0].length),u}function ot(a){e=e.substr(a)}return function(a){return e=a.toString().trim(),e.endsWith(";")&&(e=e.slice(0,-1)),r()}}();const zt=$.parse.bind($);var H=H||{};H.stringify=function(){var t={"visit_linear-gradient":function(e){return t.visit_gradient(e)},"visit_repeating-linear-gradient":function(e){return t.visit_gradient(e)},"visit_radial-gradient":function(e){return t.visit_gradient(e)},"visit_repeating-radial-gradient":function(e){return t.visit_gradient(e)},visit_gradient:function(e){var n=t.visit(e.orientation);return n&&(n+=", "),e.type+"("+n+t.visit(e.colorStops)+")"},visit_shape:function(e){var n=e.value,r=t.visit(e.at),i=t.visit(e.style);return i&&(n+=" "+i),r&&(n+=" at "+r),n},"visit_default-radial":function(e){var n="",r=t.visit(e.at);return r&&(n+=r),n},"visit_extent-keyword":function(e){var n=e.value,r=t.visit(e.at);return r&&(n+=" at "+r),n},"visit_position-keyword":function(e){return e.value},visit_position:function(e){return t.visit(e.value.x)+" "+t.visit(e.value.y)},"visit_%":function(e){return e.value+"%"},visit_em:function(e){return e.value+"em"},visit_px:function(e){return e.value+"px"},visit_calc:function(e){return"calc("+e.value+")"},visit_literal:function(e){return t.visit_color(e.value,e)},visit_hex:function(e){return t.visit_color("#"+e.value,e)},visit_rgb:function(e){return t.visit_color("rgb("+e.value.join(", ")+")",e)},visit_rgba:function(e){return t.visit_color("rgba("+e.value.join(", ")+")",e)},visit_hsl:function(e){return t.visit_color("hsl("+e.value[0]+", "+e.value[1]+"%, "+e.value[2]+"%)",e)},visit_hsla:function(e){return t.visit_color("hsla("+e.value[0]+", "+e.value[1]+"%, "+e.value[2]+"%, "+e.value[3]+")",e)},visit_var:function(e){return t.visit_color("var("+e.value+")",e)},visit_color:function(e,n){var r=e,i=t.visit(n.length);return i&&(r+=" "+i),r},visit_angular:function(e){return e.value+"deg"},visit_directional:function(e){return"to "+e.value},visit_array:function(e){var n="",r=e.length;return e.forEach(function(i,f){n+=t.visit(i),f<r-1&&(n+=", ")}),n},visit_object:function(e){return e.width&&e.height?t.visit(e.width)+" "+t.visit(e.height):""},visit:function(e){if(!e)return"";if(e instanceof Array)return t.visit_array(e);if(typeof e=="object"&&!e.type)return t.visit_object(e);if(e.type){var n=t["visit_"+e.type];if(n)return n(e);throw Error("Missing visitor visit_"+e.type)}else throw Error("Invalid node.")}};return function(e){return t.visit(e)}}();const be=H.stringify.bind(H);function _t(t){const e=t.length-1;return t.map((n,r)=>{const i=n.value;let f=N(r/e,3),s="#00000000";switch(n.type){case"rgb":s=b({r:Number(i[0]??0),g:Number(i[1]??0),b:Number(i[2]??0)});break;case"rgba":s=b({r:Number(i[0]??0),g:Number(i[1]??0),b:Number(i[2]??0),a:Number(i[3]??0)});break;case"literal":s=b(n.value);break;case"hex":s=b(`#${n.value}`);break}switch(n.length?.type){case"%":f=Number(n.length.value)/100;break}return{offset:f,color:s}})}function Ft(t){let e=0;switch(t.orientation?.type){case"angular":e=Number(t.orientation.value);break}return{type:"linear-gradient",angle:e,stops:_t(t.colorStops)}}function Nt(t){return t.orientation?.map(e=>{switch(e?.type){case"shape":case"default-radial":case"extent-keyword":default:return null}}),{type:"radial-gradient",stops:_t(t.colorStops)}}function I(t){return t.startsWith("linear-gradient(")||t.startsWith("radial-gradient(")}function Ot(t){return zt(t).map(e=>{switch(e?.type){case"linear-gradient":return Ft(e);case"repeating-linear-gradient":return{...Ft(e),repeat:!0};case"radial-gradient":return Nt(e);case"repeating-radial-gradient":return{...Nt(e),repeat:!0};default:return}}).filter(Boolean)}function Rt(t){let e;return typeof t=="string"?e={color:t}:e=t,{color:b(e.color)}}function Et(t){let e;if(typeof t=="string"?e={image:t}:e=t,e.image){const{type:n,...r}=Ot(e.image)[0]??{};switch(n){case"radial-gradient":return{radialGradient:r};case"linear-gradient":return{linearGradient:r}}}return e}function Dt(t){let e;return typeof t=="string"?e={image:t}:e=t,e}function Lt(t){let e;return typeof t=="string"?e={preset:t}:e=t,{preset:e.preset,foregroundColor:g(e.foregroundColor)?void 0:b(e.foregroundColor),backgroundColor:g(e.backgroundColor)?void 0:b(e.backgroundColor)}}function Gt(t){return!g(t.color)}function kt(t){return typeof t=="string"?wt(t):Gt(t)}function It(t){return!g(t.image)&&I(t.image)||!!t.linearGradient||!!t.radialGradient}function Vt(t){return typeof t=="string"?I(t):It(t)}function Pt(t){return!g(t.image)&&!I(t.image)}function At(t){return typeof t=="string"?!I(t):Pt(t)}function Mt(t){return!g(t.preset)}function Tt(t){return typeof t=="string"?!1:Mt(t)}function F(t){return kt(t)?Rt(t):Vt(t)?Et(t):At(t)?Dt(t):Tt(t)?Lt(t):{}}function $t(t){return typeof t=="string"?{...F(t)}:{...F(t),...M(t,["fillWithShape"])}}const Ht=new Ct;function q(t){let e=Ht.get(t);if(!e){const n=Object.getPrototypeOf(t);e=new Map(n?q(n):void 0),Ht.set(t,e)}return e}function Wt(t,e,n={}){q(t).set(e,n);const{default:r,alias:i}=n,f=Symbol.for(String(e)),s=()=>typeof r=="function"?r():r,l=Object.getOwnPropertyDescriptor(t.prototype,e)||{get(){return i&&i!==e?typeof i=="string"?yt(this,i):this[i]:typeof e=="string"&&this.offsetGet?this.offsetGet(e):this[f]},set(c){i&&i!==e?typeof i=="string"?St(this,i,c):this[i]=c:typeof e=="string"&&this.offsetSet?this.offsetSet(e,c):this[f]=c}};Object.defineProperty(t.prototype,e,{get(){let c=l.get?.call(this);return c===void 0&&(c=s(),c!==void 0&&l.set?.call(this,c)),c},set(c){let h=l.get?.call(this);h===void 0&&(h=s()),l.set?.call(this,c),this.requestUpdate?.(e,c,h,n)},configurable:!0,enumerable:!0})}function ye(t){return function(e,n){Wt(e.constructor,n,t)}}function U(){return{color:k,offsetX:0,offsetY:0,blurRadius:1}}function Z(t){return{...U(),...O({...t,color:g(t.color)?k:b(t.color)})}}function Bt(){return{...U(),scaleX:1,scaleY:1}}function jt(t){return{...Bt(),...Z(t)}}function Se(t){return t}function xt(t){return O({...t,softEdge:g(t.softEdge)?void 0:t.softEdge,outerShadow:g(t.outerShadow)?void 0:jt(t.outerShadow),innerShadow:g(t.innerShadow)?void 0:Z(t.innerShadow)})}function Kt(t){return typeof t=="string"?{...F(t)}:{...F(t),...M(t,["fillWithShape"])}}function Xt(t){return typeof t=="string"?{...F(t)}:{...F(t),...M(t,["width","style","headEnd","tailEnd"])}}function Yt(t){return typeof t=="string"?{color:b(t)}:{...t,color:g(t.color)?k:b(t.color)}}function qt(){return{boxShadow:"none"}}function Ut(t){return typeof t=="string"?t.startsWith("<svg")?{svg:t}:{paths:[{data:t}]}:Array.isArray(t)?{paths:t.map(e=>typeof e=="string"?{data:e}:e)}:t}function Zt(){return{overflow:"visible",direction:void 0,display:void 0,boxSizing:void 0,width:void 0,height:void 0,maxHeight:void 0,maxWidth:void 0,minHeight:void 0,minWidth:void 0,position:void 0,left:0,top:0,right:void 0,bottom:void 0,borderTop:void 0,borderLeft:void 0,borderRight:void 0,borderBottom:void 0,borderWidth:0,border:void 0,flex:void 0,flexBasis:void 0,flexDirection:void 0,flexGrow:void 0,flexShrink:void 0,flexWrap:void 0,justifyContent:void 0,gap:void 0,alignContent:void 0,alignItems:void 0,alignSelf:void 0,marginTop:void 0,marginLeft:void 0,marginRight:void 0,marginBottom:void 0,margin:void 0,paddingTop:void 0,paddingLeft:void 0,paddingRight:void 0,paddingBottom:void 0,padding:void 0}}function Jt(){return{rotate:0,scaleX:1,scaleY:1,skewX:0,skewY:0,translateX:0,translateY:0,transform:"none",transformOrigin:"center"}}function Qt(){return{...Zt(),...Jt(),...qt(),backgroundImage:"none",backgroundSize:"auto, auto",backgroundColor:"none",backgroundColormap:"none",borderRadius:0,borderColor:"none",borderStyle:"solid",outlineWidth:0,outlineOffset:0,outlineColor:"rgb(0, 0, 0)",outlineStyle:"none",visibility:"visible",filter:"none",opacity:1,pointerEvents:"auto",maskImage:"none"}}function te(){return{highlight:{},highlightImage:"none",highlightReferImage:"none",highlightColormap:"none",highlightLine:"none",highlightSize:"cover",highlightThickness:"100%"}}function ee(){return{listStyle:{},listStyleType:"none",listStyleImage:"none",listStyleColormap:"none",listStyleSize:"cover",listStylePosition:"outside"}}function ne(){return{...te(),color:"rgb(0, 0, 0)",verticalAlign:"baseline",letterSpacing:0,wordSpacing:0,fontSize:14,fontWeight:"normal",fontFamily:"",fontStyle:"normal",fontKerning:"normal",textTransform:"none",textOrientation:"mixed",textDecoration:"none"}}function re(){return{...ee(),writingMode:"horizontal-tb",textWrap:"wrap",textAlign:"start",textIndent:0,lineHeight:1.2}}function ie(){return{...re(),...ne(),textStrokeWidth:0,textStrokeColor:"rgb(0, 0, 0)"}}function D(t){return O({...t,color:g(t.color)?void 0:b(t.color),backgroundColor:g(t.backgroundColor)?void 0:b(t.backgroundColor),borderColor:g(t.borderColor)?void 0:b(t.borderColor),outlineColor:g(t.outlineColor)?void 0:b(t.outlineColor),shadowColor:g(t.shadowColor)?void 0:b(t.shadowColor)})}function Ce(){return{...Qt(),...ie()}}const J=/\r\n|\n\r|\n|\r/,we=new RegExp(`${J.source}|<br\\/>`,"g"),ze=new RegExp(`^(${J.source})$`),W=`
|
|
2
|
-
`;function
|
|
1
|
+
(function(o,E){typeof exports=="object"&&typeof module<"u"?E(exports):typeof define=="function"&&define.amd?define(["exports"],E):(o=typeof globalThis<"u"?globalThis:o||self,E(o.modernIdoc={}))})(this,function(o){"use strict";function E(t){return typeof t=="string"?{src:t}:t}var fe={grad:.9,turn:360,rad:360/(2*Math.PI)},z=function(t){return typeof t=="string"?t.length>0:typeof t=="number"},m=function(t,e,n){return e===void 0&&(e=0),n===void 0&&(n=Math.pow(10,e)),Math.round(n*t)/n+0},C=function(t,e,n){return e===void 0&&(e=0),n===void 0&&(n=1),t>n?n:t>e?t:e},at=function(t){return(t=isFinite(t)?t%360:0)>0?t:t+360},ut=function(t){return{r:C(t.r,0,255),g:C(t.g,0,255),b:C(t.b,0,255),a:C(t.a)}},x=function(t){return{r:m(t.r),g:m(t.g),b:m(t.b),a:m(t.a,3)}},de=/^#([0-9a-f]{3,8})$/i,A=function(t){var e=t.toString(16);return e.length<2?"0"+e:e},lt=function(t){var e=t.r,n=t.g,r=t.b,i=t.a,c=Math.max(e,n,r),s=c-Math.min(e,n,r),l=s?c===e?(n-r)/s:c===n?2+(r-e)/s:4+(e-n)/s:0;return{h:60*(l<0?l+6:l),s:c?s/c*100:0,v:c/255*100,a:i}},st=function(t){var e=t.h,n=t.s,r=t.v,i=t.a;e=e/360*6,n/=100,r/=100;var c=Math.floor(e),s=r*(1-n),l=r*(1-(e-c)*n),d=r*(1-(1-e+c)*n),g=c%6;return{r:255*[r,l,s,s,d,r][g],g:255*[d,r,r,l,s,s][g],b:255*[s,s,d,r,r,l][g],a:i}},ct=function(t){return{h:at(t.h),s:C(t.s,0,100),l:C(t.l,0,100),a:C(t.a)}},ft=function(t){return{h:m(t.h),s:m(t.s),l:m(t.l),a:m(t.a,3)}},dt=function(t){return st((n=(e=t).s,{h:e.h,s:(n*=((r=e.l)<50?r:100-r)/100)>0?2*n/(r+n)*100:0,v:r+n,a:e.a}));var e,n,r},G=function(t){return{h:(e=lt(t)).h,s:(i=(200-(n=e.s))*(r=e.v)/100)>0&&i<200?n*r/100/(i<=100?i:200-i)*100:0,l:i/2,a:e.a};var e,n,r,i},ge=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,he=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,ve=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,me=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,gt={string:[[function(t){var e=de.exec(t);return e?(t=e[1]).length<=4?{r:parseInt(t[0]+t[0],16),g:parseInt(t[1]+t[1],16),b:parseInt(t[2]+t[2],16),a:t.length===4?m(parseInt(t[3]+t[3],16)/255,2):1}:t.length===6||t.length===8?{r:parseInt(t.substr(0,2),16),g:parseInt(t.substr(2,2),16),b:parseInt(t.substr(4,2),16),a:t.length===8?m(parseInt(t.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(t){var e=ve.exec(t)||me.exec(t);return e?e[2]!==e[4]||e[4]!==e[6]?null:ut({r:Number(e[1])/(e[2]?100/255:1),g:Number(e[3])/(e[4]?100/255:1),b:Number(e[5])/(e[6]?100/255:1),a:e[7]===void 0?1:Number(e[7])/(e[8]?100:1)}):null},"rgb"],[function(t){var e=ge.exec(t)||he.exec(t);if(!e)return null;var n,r,i=ct({h:(n=e[1],r=e[2],r===void 0&&(r="deg"),Number(n)*(fe[r]||1)),s:Number(e[3]),l:Number(e[4]),a:e[5]===void 0?1:Number(e[5])/(e[6]?100:1)});return dt(i)},"hsl"]],object:[[function(t){var e=t.r,n=t.g,r=t.b,i=t.a,c=i===void 0?1:i;return z(e)&&z(n)&&z(r)?ut({r:Number(e),g:Number(n),b:Number(r),a:Number(c)}):null},"rgb"],[function(t){var e=t.h,n=t.s,r=t.l,i=t.a,c=i===void 0?1:i;if(!z(e)||!z(n)||!z(r))return null;var s=ct({h:Number(e),s:Number(n),l:Number(r),a:Number(c)});return dt(s)},"hsl"],[function(t){var e=t.h,n=t.s,r=t.v,i=t.a,c=i===void 0?1:i;if(!z(e)||!z(n)||!z(r))return null;var s=function(l){return{h:at(l.h),s:C(l.s,0,100),v:C(l.v,0,100),a:C(l.a)}}({h:Number(e),s:Number(n),v:Number(r),a:Number(c)});return st(s)},"hsv"]]},ht=function(t,e){for(var n=0;n<e.length;n++){var r=e[n][0](t);if(r)return[r,e[n][1]]}return[null,void 0]},pe=function(t){return typeof t=="string"?ht(t.trim(),gt.string):typeof t=="object"&&t!==null?ht(t,gt.object):[null,void 0]},K=function(t,e){var n=G(t);return{h:n.h,s:C(n.s+100*e,0,100),l:n.l,a:n.a}},X=function(t){return(299*t.r+587*t.g+114*t.b)/1e3/255},vt=function(t,e){var n=G(t);return{h:n.h,s:n.s,l:C(n.l+100*e,0,100),a:n.a}},mt=function(){function t(e){this.parsed=pe(e)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return t.prototype.isValid=function(){return this.parsed!==null},t.prototype.brightness=function(){return m(X(this.rgba),2)},t.prototype.isDark=function(){return X(this.rgba)<.5},t.prototype.isLight=function(){return X(this.rgba)>=.5},t.prototype.toHex=function(){return e=x(this.rgba),n=e.r,r=e.g,i=e.b,s=(c=e.a)<1?A(m(255*c)):"","#"+A(n)+A(r)+A(i)+s;var e,n,r,i,c,s},t.prototype.toRgb=function(){return x(this.rgba)},t.prototype.toRgbString=function(){return e=x(this.rgba),n=e.r,r=e.g,i=e.b,(c=e.a)<1?"rgba("+n+", "+r+", "+i+", "+c+")":"rgb("+n+", "+r+", "+i+")";var e,n,r,i,c},t.prototype.toHsl=function(){return ft(G(this.rgba))},t.prototype.toHslString=function(){return e=ft(G(this.rgba)),n=e.h,r=e.s,i=e.l,(c=e.a)<1?"hsla("+n+", "+r+"%, "+i+"%, "+c+")":"hsl("+n+", "+r+"%, "+i+"%)";var e,n,r,i,c},t.prototype.toHsv=function(){return e=lt(this.rgba),{h:m(e.h),s:m(e.s),v:m(e.v),a:m(e.a,3)};var e},t.prototype.invert=function(){return w({r:255-(e=this.rgba).r,g:255-e.g,b:255-e.b,a:e.a});var e},t.prototype.saturate=function(e){return e===void 0&&(e=.1),w(K(this.rgba,e))},t.prototype.desaturate=function(e){return e===void 0&&(e=.1),w(K(this.rgba,-e))},t.prototype.grayscale=function(){return w(K(this.rgba,-1))},t.prototype.lighten=function(e){return e===void 0&&(e=.1),w(vt(this.rgba,e))},t.prototype.darken=function(e){return e===void 0&&(e=.1),w(vt(this.rgba,-e))},t.prototype.rotate=function(e){return e===void 0&&(e=15),this.hue(this.hue()+e)},t.prototype.alpha=function(e){return typeof e=="number"?w({r:(n=this.rgba).r,g:n.g,b:n.b,a:e}):m(this.rgba.a,3);var n},t.prototype.hue=function(e){var n=G(this.rgba);return typeof e=="number"?w({h:e,s:n.s,l:n.l,a:n.a}):m(n.h)},t.prototype.isEqual=function(e){return this.toHex()===w(e).toHex()},t}(),w=function(t){return t instanceof mt?t:new mt(t)};function h(t){return t==null||t==="none"}function N(t,e=0,n=10**e){return Math.round(n*t)/n+0}function O(t,e=!1){if(typeof t!="object"||!t)return t;if(Array.isArray(t))return e?t.map(r=>O(r,e)):t;const n={};for(const r in t){const i=t[r];i!=null&&(e?n[r]=O(i,e):n[r]=i)}return n}function M(t,e){const n={};return e.forEach(r=>{r in t&&(n[r]=t[r])}),n}function pt(t,e,n){const r=e.length-1;if(r<0)return t===void 0?n:t;for(let i=0;i<r;i++){if(t==null)return n;t=t[e[i]]}return t==null||t[e[r]]===void 0?n:t[e[r]]}function bt(t,e,n){const r=e.length-1;for(let i=0;i<r;i++)typeof t[e[i]]!="object"&&(t[e[i]]={}),t=t[e[i]];t[e[r]]=n}function yt(t,e,n){return t==null||!e||typeof e!="string"?n:t[e]!==void 0?t[e]:(e=e.replace(/\[(\w+)\]/g,".$1"),e=e.replace(/^\./,""),pt(t,e.split("."),n))}function St(t,e,n){if(!(typeof t!="object"||!e))return e=e.replace(/\[(\w+)\]/g,".$1"),e=e.replace(/^\./,""),bt(t,e.split("."),n)}class Ct{_map=new WeakMap;_toRaw(e){if(e&&typeof e=="object"){const n=e.__v_raw;n&&(e=this._toRaw(n))}return e}delete(e){return this._map.delete(this._toRaw(e))}get(e){return this._map.get(this._toRaw(e))}has(e){return this._map.has(this._toRaw(e))}set(e,n){return this._map.set(this._toRaw(e),this._toRaw(n)),this}}function Y(t){let e;return typeof t=="number"?e={r:t>>24&255,g:t>>16&255,b:t>>8&255,a:(t&255)/255}:e=t,w(e)}function be(t){return{r:N(t.r),g:N(t.g),b:N(t.b),a:N(t.a,3)}}function T(t){const e=t.toString(16);return e.length<2?`0${e}`:e}const k="#000000FF";function wt(t){return Y(t).isValid()}function b(t,e=!1){const n=Y(t);if(!n.isValid()){if(typeof t=="string")return t;const l=`Failed to normalizeColor ${t}`;if(e)throw new Error(l);return console.warn(l),k}const{r,g:i,b:c,a:s}=be(n.rgba);return`#${T(r)}${T(i)}${T(c)}${T(N(s*255))}`}var $=$||{};$.parse=function(){const t={linearGradient:/^(-(webkit|o|ms|moz)-)?(linear-gradient)/i,repeatingLinearGradient:/^(-(webkit|o|ms|moz)-)?(repeating-linear-gradient)/i,radialGradient:/^(-(webkit|o|ms|moz)-)?(radial-gradient)/i,repeatingRadialGradient:/^(-(webkit|o|ms|moz)-)?(repeating-radial-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest-side|closest-corner|farthest-side|farthest-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?((\d*\.\d+)|(\d+\.?)))px/,percentageValue:/^(-?((\d*\.\d+)|(\d+\.?)))%/,emValue:/^(-?((\d*\.\d+)|(\d+\.?)))em/,angleValue:/^(-?((\d*\.\d+)|(\d+\.?)))deg/,radianValue:/^(-?((\d*\.\d+)|(\d+\.?)))rad/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^#([0-9a-f]+)/i,literalColor:/^([a-z]+)/i,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,varColor:/^var/i,calcValue:/^calc/i,variableName:/^(--[a-z0-9-,\s#]+)/i,number:/^((\d*\.\d+)|(\d+\.?))/,hslColor:/^hsl/i,hslaColor:/^hsla/i};let e="";function n(a){const u=new Error(`${e}: ${a}`);throw u.source=e,u}function r(){const a=i();return e.length>0&&n("Invalid input not EOF"),a}function i(){return B(c)}function c(){return s("linear-gradient",t.linearGradient,d)||s("repeating-linear-gradient",t.repeatingLinearGradient,d)||s("radial-gradient",t.radialGradient,_)||s("repeating-radial-gradient",t.repeatingRadialGradient,_)}function s(a,u,f){return l(u,p=>{const R=f();return R&&(v(t.comma)||n("Missing comma before color stops")),{type:a,orientation:R,colorStops:B(De)}})}function l(a,u){const f=v(a);if(f){v(t.startCall)||n("Missing (");const p=u(f);return v(t.endCall)||n("Missing )"),p}}function d(){const a=g();if(a)return a;const u=S("position-keyword",t.positionKeywords,1);return u?{type:"directional",value:u.value}:y()}function g(){return S("directional",t.sideOrCorner,1)}function y(){return S("angular",t.angleValue,1)||S("angular",t.radianValue,1)}function _(){let a,u=L(),f;return u&&(a=[],a.push(u),f=e,v(t.comma)&&(u=L(),u?a.push(u):e=f)),a}function L(){let a=et()||Re();if(a)a.at=rt();else{const u=nt();if(u){a=u;const f=rt();f&&(a.at=f)}else{const f=rt();if(f)a={type:"default-radial",at:f};else{const p=it();p&&(a={type:"default-radial",at:p})}}}return a}function et(){const a=S("shape",/^(circle)/i,0);return a&&(a.style=ce()||nt()),a}function Re(){const a=S("shape",/^(ellipse)/i,0);return a&&(a.style=it()||j()||nt()),a}function nt(){return S("extent-keyword",t.extentKeywords,1)}function rt(){if(S("position",/^at/,0)){const a=it();return a||n("Missing positioning value"),a}}function it(){const a=Ee();if(a.x||a.y)return{type:"position",value:a}}function Ee(){return{x:j(),y:j()}}function B(a){let u=a();const f=[];if(u)for(f.push(u);v(t.comma);)u=a(),u?f.push(u):n("One extra comma");return f}function De(){const a=Le();return a||n("Expected color definition"),a.length=j(),a}function Le(){return ke()||Me()||Ae()||Ve()||Ie()||Pe()||Ge()}function Ge(){return S("literal",t.literalColor,0)}function ke(){return S("hex",t.hexColor,1)}function Ie(){return l(t.rgbColor,()=>({type:"rgb",value:B(P)}))}function Ve(){return l(t.rgbaColor,()=>({type:"rgba",value:B(P)}))}function Pe(){return l(t.varColor,()=>({type:"var",value:Te()}))}function Ae(){return l(t.hslColor,()=>{v(t.percentageValue)&&n("HSL hue value must be a number in degrees (0-360) or normalized (-360 to 360), not a percentage");const u=P();v(t.comma);let f=v(t.percentageValue);const p=f?f[1]:null;v(t.comma),f=v(t.percentageValue);const R=f?f[1]:null;return(!p||!R)&&n("Expected percentage value for saturation and lightness in HSL"),{type:"hsl",value:[u,p,R]}})}function Me(){return l(t.hslaColor,()=>{const a=P();v(t.comma);let u=v(t.percentageValue);const f=u?u[1]:null;v(t.comma),u=v(t.percentageValue);const p=u?u[1]:null;v(t.comma);const R=P();return(!f||!p)&&n("Expected percentage value for saturation and lightness in HSLA"),{type:"hsla",value:[a,f,p,R]}})}function Te(){return v(t.variableName)[1]}function P(){return v(t.number)[1]}function j(){return S("%",t.percentageValue,1)||$e()||He()||ce()}function $e(){return S("position-keyword",t.positionKeywords,1)}function He(){return l(t.calcValue,()=>{let a=1,u=0;for(;a>0&&u<e.length;){const p=e.charAt(u);p==="("?a++:p===")"&&a--,u++}a>0&&n("Missing closing parenthesis in calc() expression");const f=e.substring(0,u-1);return ot(u-1),{type:"calc",value:f}})}function ce(){return S("px",t.pixelValue,1)||S("em",t.emValue,1)}function S(a,u,f){const p=v(u);if(p)return{type:a,value:p[f]}}function v(a){let u,f;return f=/^\s+/.exec(e),f&&ot(f[0].length),u=a.exec(e),u&&ot(u[0].length),u}function ot(a){e=e.substr(a)}return function(a){return e=a.toString().trim(),e.endsWith(";")&&(e=e.slice(0,-1)),r()}}();const _t=$.parse.bind($);var H=H||{};H.stringify=function(){var t={"visit_linear-gradient":function(e){return t.visit_gradient(e)},"visit_repeating-linear-gradient":function(e){return t.visit_gradient(e)},"visit_radial-gradient":function(e){return t.visit_gradient(e)},"visit_repeating-radial-gradient":function(e){return t.visit_gradient(e)},visit_gradient:function(e){var n=t.visit(e.orientation);return n&&(n+=", "),e.type+"("+n+t.visit(e.colorStops)+")"},visit_shape:function(e){var n=e.value,r=t.visit(e.at),i=t.visit(e.style);return i&&(n+=" "+i),r&&(n+=" at "+r),n},"visit_default-radial":function(e){var n="",r=t.visit(e.at);return r&&(n+=r),n},"visit_extent-keyword":function(e){var n=e.value,r=t.visit(e.at);return r&&(n+=" at "+r),n},"visit_position-keyword":function(e){return e.value},visit_position:function(e){return t.visit(e.value.x)+" "+t.visit(e.value.y)},"visit_%":function(e){return e.value+"%"},visit_em:function(e){return e.value+"em"},visit_px:function(e){return e.value+"px"},visit_calc:function(e){return"calc("+e.value+")"},visit_literal:function(e){return t.visit_color(e.value,e)},visit_hex:function(e){return t.visit_color("#"+e.value,e)},visit_rgb:function(e){return t.visit_color("rgb("+e.value.join(", ")+")",e)},visit_rgba:function(e){return t.visit_color("rgba("+e.value.join(", ")+")",e)},visit_hsl:function(e){return t.visit_color("hsl("+e.value[0]+", "+e.value[1]+"%, "+e.value[2]+"%)",e)},visit_hsla:function(e){return t.visit_color("hsla("+e.value[0]+", "+e.value[1]+"%, "+e.value[2]+"%, "+e.value[3]+")",e)},visit_var:function(e){return t.visit_color("var("+e.value+")",e)},visit_color:function(e,n){var r=e,i=t.visit(n.length);return i&&(r+=" "+i),r},visit_angular:function(e){return e.value+"deg"},visit_directional:function(e){return"to "+e.value},visit_array:function(e){var n="",r=e.length;return e.forEach(function(i,c){n+=t.visit(i),c<r-1&&(n+=", ")}),n},visit_object:function(e){return e.width&&e.height?t.visit(e.width)+" "+t.visit(e.height):""},visit:function(e){if(!e)return"";if(e instanceof Array)return t.visit_array(e);if(typeof e=="object"&&!e.type)return t.visit_object(e);if(e.type){var n=t["visit_"+e.type];if(n)return n(e);throw Error("Missing visitor visit_"+e.type)}else throw Error("Invalid node.")}};return function(e){return t.visit(e)}}();const ye=H.stringify.bind(H);function zt(t){const e=t.length-1;return t.map((n,r)=>{const i=n.value;let c=N(r/e,3),s="#00000000";switch(n.type){case"rgb":s=b({r:Number(i[0]??0),g:Number(i[1]??0),b:Number(i[2]??0)});break;case"rgba":s=b({r:Number(i[0]??0),g:Number(i[1]??0),b:Number(i[2]??0),a:Number(i[3]??0)});break;case"literal":s=b(n.value);break;case"hex":s=b(`#${n.value}`);break}switch(n.length?.type){case"%":c=Number(n.length.value)/100;break}return{offset:c,color:s}})}function Ft(t){let e=0;switch(t.orientation?.type){case"angular":e=Number(t.orientation.value);break}return{type:"linear-gradient",angle:e,stops:zt(t.colorStops)}}function Nt(t){return t.orientation?.map(e=>{switch(e?.type){case"shape":case"default-radial":case"extent-keyword":default:return null}}),{type:"radial-gradient",stops:zt(t.colorStops)}}function I(t){return t.startsWith("linear-gradient(")||t.startsWith("radial-gradient(")}function Ot(t){return _t(t).map(e=>{switch(e?.type){case"linear-gradient":return Ft(e);case"repeating-linear-gradient":return{...Ft(e),repeat:!0};case"radial-gradient":return Nt(e);case"repeating-radial-gradient":return{...Nt(e),repeat:!0};default:return}}).filter(Boolean)}function Rt(t){let e;return typeof t=="string"?e={color:t}:e=t,{color:b(e.color)}}function Et(t){let e;if(typeof t=="string"?e={image:t}:e=t,e.image){const{type:n,...r}=Ot(e.image)[0]??{};switch(n){case"radial-gradient":return{radialGradient:r};case"linear-gradient":return{linearGradient:r}}}return e}function Dt(t){let e;return typeof t=="string"?e={image:t}:e=t,e}function Lt(t){let e;return typeof t=="string"?e={preset:t}:e=t,{preset:e.preset,foregroundColor:h(e.foregroundColor)?void 0:b(e.foregroundColor),backgroundColor:h(e.backgroundColor)?void 0:b(e.backgroundColor)}}function Gt(t){return!h(t.color)}function kt(t){return typeof t=="string"?wt(t):Gt(t)}function It(t){return!h(t.image)&&I(t.image)||!!t.linearGradient||!!t.radialGradient}function Vt(t){return typeof t=="string"?I(t):It(t)}function Pt(t){return!h(t.image)&&!I(t.image)}function At(t){return typeof t=="string"?!I(t):Pt(t)}function Mt(t){return!h(t.preset)}function Tt(t){return typeof t=="string"?!1:Mt(t)}function F(t){return kt(t)?Rt(t):Vt(t)?Et(t):At(t)?Dt(t):Tt(t)?Lt(t):{}}function $t(t){return typeof t=="string"?{...F(t)}:{...F(t),...M(t,["fillWithShape"])}}const Ht=new Ct;function q(t){let e=Ht.get(t);if(!e){const n=Object.getPrototypeOf(t);e=new Map(n?q(n):void 0),Ht.set(t,e)}return e}function Wt(t,e,n={}){q(t).set(e,n);const{default:r,alias:i,protected:c}=n,s=Symbol.for(String(e)),l=()=>typeof r=="function"?r():r,d=Object.getOwnPropertyDescriptor(t.prototype,e)||{get(){return i&&i!==e?typeof i=="string"?yt(this,i):this[i]:!c&&typeof e=="string"&&this.offsetGet?this.offsetGet(e):this[s]},set(g){i&&i!==e?typeof i=="string"?St(this,i,g):this[i]=g:!c&&typeof e=="string"&&this.offsetSet?this.offsetSet(e,g):this[s]=g}};Object.defineProperty(t.prototype,e,{get(){let g=d.get?.call(this);return g===void 0&&(g=l(),g!==void 0&&d.set?.call(this,g)),g},set(g){let y=d.get?.call(this);y===void 0&&(y=l()),d.set?.call(this,g),this.requestUpdate?.(e,g,y,n)},configurable:!0,enumerable:!0})}function Bt(t){return function(e,n){Wt(e.constructor,n,t)}}function Se(t){return Bt({...t,protected:!0})}function U(){return{color:k,offsetX:0,offsetY:0,blurRadius:1}}function Z(t){return{...U(),...O({...t,color:h(t.color)?k:b(t.color)})}}function jt(){return{...U(),scaleX:1,scaleY:1}}function xt(t){return{...jt(),...Z(t)}}function Ce(t){return t}function Kt(t){return O({...t,softEdge:h(t.softEdge)?void 0:t.softEdge,outerShadow:h(t.outerShadow)?void 0:xt(t.outerShadow),innerShadow:h(t.innerShadow)?void 0:Z(t.innerShadow)})}function Xt(t){return typeof t=="string"?{...F(t)}:{...F(t),...M(t,["fillWithShape"])}}function Yt(t){return typeof t=="string"?{...F(t)}:{...F(t),...M(t,["width","style","headEnd","tailEnd"])}}function qt(t){return typeof t=="string"?{color:b(t)}:{...t,color:h(t.color)?k:b(t.color)}}function Ut(){return{boxShadow:"none"}}function Zt(t){return typeof t=="string"?t.startsWith("<svg")?{svg:t}:{paths:[{data:t}]}:Array.isArray(t)?{paths:t.map(e=>typeof e=="string"?{data:e}:e)}:t}function Jt(){return{overflow:"visible",direction:void 0,display:void 0,boxSizing:void 0,width:void 0,height:void 0,maxHeight:void 0,maxWidth:void 0,minHeight:void 0,minWidth:void 0,position:void 0,left:0,top:0,right:void 0,bottom:void 0,borderTop:void 0,borderLeft:void 0,borderRight:void 0,borderBottom:void 0,borderWidth:0,border:void 0,flex:void 0,flexBasis:void 0,flexDirection:void 0,flexGrow:void 0,flexShrink:void 0,flexWrap:void 0,justifyContent:void 0,gap:void 0,alignContent:void 0,alignItems:void 0,alignSelf:void 0,marginTop:void 0,marginLeft:void 0,marginRight:void 0,marginBottom:void 0,margin:void 0,paddingTop:void 0,paddingLeft:void 0,paddingRight:void 0,paddingBottom:void 0,padding:void 0}}function Qt(){return{rotate:0,scaleX:1,scaleY:1,skewX:0,skewY:0,translateX:0,translateY:0,transform:"none",transformOrigin:"center"}}function te(){return{...Jt(),...Qt(),...Ut(),backgroundImage:"none",backgroundSize:"auto, auto",backgroundColor:"none",backgroundColormap:"none",borderRadius:0,borderColor:"none",borderStyle:"solid",outlineWidth:0,outlineOffset:0,outlineColor:"rgb(0, 0, 0)",outlineStyle:"none",visibility:"visible",filter:"none",opacity:1,pointerEvents:"auto",maskImage:"none"}}function ee(){return{highlight:{},highlightImage:"none",highlightReferImage:"none",highlightColormap:"none",highlightLine:"none",highlightSize:"cover",highlightThickness:"100%"}}function ne(){return{listStyle:{},listStyleType:"none",listStyleImage:"none",listStyleColormap:"none",listStyleSize:"cover",listStylePosition:"outside"}}function re(){return{...ee(),color:"rgb(0, 0, 0)",verticalAlign:"baseline",letterSpacing:0,wordSpacing:0,fontSize:14,fontWeight:"normal",fontFamily:"",fontStyle:"normal",fontKerning:"normal",textTransform:"none",textOrientation:"mixed",textDecoration:"none"}}function ie(){return{...ne(),writingMode:"horizontal-tb",textWrap:"wrap",textAlign:"start",textIndent:0,lineHeight:1.2}}function oe(){return{...ie(),...re(),textStrokeWidth:0,textStrokeColor:"rgb(0, 0, 0)"}}function D(t){return O({...t,color:h(t.color)?void 0:b(t.color),backgroundColor:h(t.backgroundColor)?void 0:b(t.backgroundColor),borderColor:h(t.borderColor)?void 0:b(t.borderColor),outlineColor:h(t.outlineColor)?void 0:b(t.outlineColor),shadowColor:h(t.shadowColor)?void 0:b(t.shadowColor)})}function we(){return{...te(),...oe()}}const J=/\r\n|\n\r|\n|\r/,_e=new RegExp(`${J.source}|<br\\/>`,"g"),ze=new RegExp(`^(${J.source})$`),W=`
|
|
2
|
+
`;function Fe(t){return J.test(t)}function Q(t){return ze.test(t)}function ae(t){return t.replace(_e,W)}function ue(t,e){const n=Array.from(new Set([...Object.keys(t),...Object.keys(e)]));return!n.length||n.every(r=>t[r]===e[r])}function V(t){const e=[];function n(){return e[e.length-1]}function r(l={}){let d=e[e.length-1];return d?.fragments.length===0?(d={...l,fragments:[]},e[e.length-1]=d):(d={...l,fragments:[]},e.push(d)),d}function i(l="",d={}){Array.from(l).forEach(g=>{if(Q(g)){const{fragments:y,..._}=n()||r();y.length||y.push({...d,content:W}),r(_)}else{const y=n()||r(),_=y.fragments[y.fragments.length-1];if(_){const{content:L,...et}=_;if(ue(d,et)){_.content=`${L}${g}`;return}}y.fragments.push({...d,content:g})}})}(Array.isArray(t)?t:[t]).forEach(l=>{if(typeof l=="string")r(),i(l);else if("content"in l){const{content:d,...g}=l;r(D(g)),i(d)}else if("fragments"in l){const{fragments:d,...g}=l;r(D(g)),d.forEach(y=>{const{content:_,...L}=y;i(_,D(L))})}else Array.isArray(l)?(r(),l.forEach(d=>{if(typeof d=="string")i(d);else{const{content:g,...y}=d;i(g,D(y))}})):console.warn("Failed to parse text content",l)});const s=n();return s&&!s.fragments.length&&s.fragments.push({content:W}),e}function le(t){return typeof t=="string"?{content:V(t)}:"content"in t?{...t,content:V(t.content)}:{content:V(t)}}function Ne(t){return V(t).map(e=>{const n=ae(e.fragments.flatMap(r=>r.content).join(""));return Q(n)?"":n}).join(W)}function se(t){return typeof t=="string"?{src:t}:t}function tt(t){return O({...t,style:h(t.style)?void 0:D(t.style),text:h(t.text)?void 0:le(t.text),background:h(t.background)?void 0:$t(t.background),shape:h(t.shape)?void 0:Zt(t.shape),fill:h(t.fill)?void 0:F(t.fill),outline:h(t.outline)?void 0:Yt(t.outline),foreground:h(t.foreground)?void 0:Xt(t.foreground),shadow:h(t.shadow)?void 0:qt(t.shadow),video:h(t.video)?void 0:se(t.video),audio:h(t.audio)?void 0:E(t.audio),effect:h(t.effect)?void 0:Kt(t.effect),children:t.children?.map(e=>tt(e))})}function Oe(t){return tt(t)}o.RawWeakMap=Ct,o.clearUndef=O,o.defaultColor=k,o.defineProperty=Wt,o.getDeclarations=q,o.getDefaultElementStyle=te,o.getDefaultHighlightStyle=ee,o.getDefaultInnerShadow=U,o.getDefaultLayoutStyle=Jt,o.getDefaultListStyleStyle=ne,o.getDefaultOuterShadow=jt,o.getDefaultShadowStyle=Ut,o.getDefaultStyle=we,o.getDefaultTextInlineStyle=re,o.getDefaultTextLineStyle=ie,o.getDefaultTextStyle=oe,o.getDefaultTransformStyle=Qt,o.getNestedValue=pt,o.getObjectValueByPath=yt,o.hasCRLF=Fe,o.isCRLF=Q,o.isColor=wt,o.isColorFill=kt,o.isColorFillObject=Gt,o.isEqualStyle=ue,o.isGradient=I,o.isGradientFill=Vt,o.isGradientFillObject=It,o.isImageFill=At,o.isImageFillObject=Pt,o.isNone=h,o.isPresetFill=Tt,o.isPresetFillObject=Mt,o.normalizeAudio=E,o.normalizeBackground=$t,o.normalizeCRLF=ae,o.normalizeColor=b,o.normalizeColorFill=Rt,o.normalizeDocument=Oe,o.normalizeEffect=Kt,o.normalizeElement=tt,o.normalizeFill=F,o.normalizeForeground=Xt,o.normalizeGradient=Ot,o.normalizeGradientFill=Et,o.normalizeImageFill=Dt,o.normalizeInnerShadow=Z,o.normalizeOuterShadow=xt,o.normalizeOutline=Yt,o.normalizePresetFill=Lt,o.normalizeShadow=qt,o.normalizeShape=Zt,o.normalizeSoftEdge=Ce,o.normalizeStyle=D,o.normalizeText=le,o.normalizeTextContent=V,o.normalizeVideo=se,o.parseColor=Y,o.parseGradient=_t,o.pick=M,o.property=Bt,o.protectedProperty=Se,o.round=N,o.setNestedValue=bt,o.setObjectValueByPath=St,o.stringifyGradient=ye,o.textContentToString=Ne,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
|
package/dist/index.mjs
CHANGED
|
@@ -901,11 +901,12 @@ function getDeclarations(constructor) {
|
|
|
901
901
|
function defineProperty(constructor, key, declaration = {}) {
|
|
902
902
|
getDeclarations(constructor).set(key, declaration);
|
|
903
903
|
const {
|
|
904
|
-
default:
|
|
905
|
-
alias
|
|
904
|
+
default: _default,
|
|
905
|
+
alias,
|
|
906
|
+
protected: _protected
|
|
906
907
|
} = declaration;
|
|
907
908
|
const internalKey = Symbol.for(String(key));
|
|
908
|
-
const getDefaultValue = () => typeof
|
|
909
|
+
const getDefaultValue = () => typeof _default === "function" ? _default() : _default;
|
|
909
910
|
const descriptor = Object.getOwnPropertyDescriptor(constructor.prototype, key) || {
|
|
910
911
|
get() {
|
|
911
912
|
if (alias && alias !== key) {
|
|
@@ -915,7 +916,7 @@ function defineProperty(constructor, key, declaration = {}) {
|
|
|
915
916
|
return this[alias];
|
|
916
917
|
}
|
|
917
918
|
} else {
|
|
918
|
-
if (typeof key === "string" && this.offsetGet) {
|
|
919
|
+
if (!_protected && typeof key === "string" && this.offsetGet) {
|
|
919
920
|
return this.offsetGet(key);
|
|
920
921
|
} else {
|
|
921
922
|
return this[internalKey];
|
|
@@ -930,7 +931,7 @@ function defineProperty(constructor, key, declaration = {}) {
|
|
|
930
931
|
this[alias] = value;
|
|
931
932
|
}
|
|
932
933
|
} else {
|
|
933
|
-
if (typeof key === "string" && this.offsetSet) {
|
|
934
|
+
if (!_protected && typeof key === "string" && this.offsetSet) {
|
|
934
935
|
this.offsetSet(key, value);
|
|
935
936
|
} else {
|
|
936
937
|
this[internalKey] = value;
|
|
@@ -966,6 +967,9 @@ function property(options) {
|
|
|
966
967
|
defineProperty(proto.constructor, name, options);
|
|
967
968
|
};
|
|
968
969
|
}
|
|
970
|
+
function protectedProperty(options) {
|
|
971
|
+
return property({ ...options, protected: true });
|
|
972
|
+
}
|
|
969
973
|
|
|
970
974
|
function getDefaultInnerShadow() {
|
|
971
975
|
return {
|
|
@@ -1418,4 +1422,4 @@ function normalizeDocument(doc) {
|
|
|
1418
1422
|
return normalizeElement(doc);
|
|
1419
1423
|
}
|
|
1420
1424
|
|
|
1421
|
-
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|
|
1425
|
+
export { RawWeakMap, clearUndef, defaultColor, defineProperty, getDeclarations, getDefaultElementStyle, getDefaultHighlightStyle, getDefaultInnerShadow, getDefaultLayoutStyle, getDefaultListStyleStyle, getDefaultOuterShadow, getDefaultShadowStyle, getDefaultStyle, getDefaultTextInlineStyle, getDefaultTextLineStyle, getDefaultTextStyle, getDefaultTransformStyle, getNestedValue, getObjectValueByPath, hasCRLF, isCRLF, isColor, isColorFill, isColorFillObject, isEqualStyle, isGradient, isGradientFill, isGradientFillObject, isImageFill, isImageFillObject, isNone, isPresetFill, isPresetFillObject, normalizeAudio, normalizeBackground, normalizeCRLF, normalizeColor, normalizeColorFill, normalizeDocument, normalizeEffect, normalizeElement, normalizeFill, normalizeForeground, normalizeGradient, normalizeGradientFill, normalizeImageFill, normalizeInnerShadow, normalizeOuterShadow, normalizeOutline, normalizePresetFill, normalizeShadow, normalizeShape, normalizeSoftEdge, normalizeStyle, normalizeText, normalizeTextContent, normalizeVideo, parseColor, parseGradient, pick, property, protectedProperty, round, setNestedValue, setObjectValueByPath, stringifyGradient, textContentToString };
|