@2digits/eslint-config 5.9.0 → 5.9.1
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.d.mts +24 -20
- package/dist/index.mjs +1 -1
- package/package.json +15 -15
package/dist/index.d.mts
CHANGED
|
@@ -10463,9 +10463,9 @@ type CssSelectorComplexity = [] | [{
|
|
|
10463
10463
|
type CssUseBaseline = [] | [{
|
|
10464
10464
|
available?: (("widely" | "newly") | number);
|
|
10465
10465
|
allowAtRules?: ("position-try" | "keyframes" | "layer" | "charset" | "container" | "counter-style" | "view-transition" | "custom-media" | "font-face" | "font-palette-values" | "font-feature-values" | "function" | "import" | "media" | "namespace" | "page" | "property" | "scope" | "starting-style" | "supports")[];
|
|
10466
|
-
allowFunctions?: ("abs" | "sign" | "alpha" | "anchor" | "anchor-size" | "attr" | "calc" | "calc-size" | "
|
|
10466
|
+
allowFunctions?: ("abs" | "sign" | "alpha" | "anchor" | "anchor-size" | "attr" | "calc" | "calc-size" | "rect" | "color" | "color-mix" | "conic-gradient" | "repeating-conic-gradient" | "contrast-color" | "round" | "superellipse" | "counter" | "counters" | "cross-fade" | "cubic-bezier" | "var" | "dynamic-range-limit-mix" | "element" | "exp" | "hypot" | "log" | "pow" | "sqrt" | "blur" | "brightness" | "contrast" | "drop-shadow" | "grayscale" | "hue-rotate" | "invert" | "opacity" | "saturate" | "sepia" | "filter" | "fit-content" | "url" | "type" | "linear-gradient" | "radial-gradient" | "repeating-linear-gradient" | "repeating-radial-gradient" | "hsl" | "hwb" | "if" | "image" | "image-set" | "lab" | "lch" | "light-dark" | "clamp" | "max" | "min" | "ray" | "oklab" | "oklch" | "paint" | "path" | "progress" | "random" | "xywh" | "rgb" | "mod" | "rem" | "env" | "shape" | "circle" | "ellipse" | "inset" | "polygon" | "sibling-count" | "sibling-index" | "steps" | "symbols" | "matrix" | "rotate" | "scale" | "scaleX" | "scaleY" | "skew" | "skewX" | "skewY" | "translate" | "translateX" | "translateY" | "matrix3d" | "perspective" | "rotate3d" | "rotateX" | "rotateY" | "rotateZ" | "scale3d" | "scaleZ" | "translate3d" | "translateZ" | "acos" | "asin" | "atan" | "atan2" | "cos" | "sin" | "tan" | "cross-origin" | "integrity" | "referrer-policy")[];
|
|
10467
10467
|
allowMediaConditions?: ("color-gamut" | "device-posture" | "device-aspect-ratio" | "device-height" | "device-width" | "display-mode" | "dynamic-range" | "forced-colors" | "any-hover" | "any-pointer" | "hover" | "pointer" | "inverted-colors" | "aspect-ratio" | "calc" | "color" | "color-index" | "grid" | "height" | "monochrome" | "nested-queries" | "orientation" | "width" | "overflow-block" | "overflow-inline" | "prefers-color-scheme" | "prefers-contrast" | "prefers-reduced-data" | "prefers-reduced-motion" | "prefers-reduced-transparency" | "resolution" | "-webkit-device-pixel-ratio" | "-webkit-max-device-pixel-ratio" | "-webkit-min-device-pixel-ratio" | "scripting" | "-webkit-transform-3d" | "update" | "video-dynamic-range" | "horizontal-viewport-segments" | "vertical-viewport-segments")[];
|
|
10468
|
-
allowProperties?: ("accent-color" | "alignment-baseline" | "all" | "anchor-name" | "anchor-scope" | "position-anchor" | "position-area" | "position-try" | "position-try-fallbacks" | "position-try-order" | "position-visibility" | "animation-composition" | "animation" | "animation-delay" | "animation-direction" | "animation-duration" | "animation-fill-mode" | "animation-iteration-count" | "animation-name" | "animation-play-state" | "animation-timing-function" | "appearance" | "aspect-ratio" | "backdrop-filter" | "background" | "background-attachment" | "background-blend-mode" | "background-clip" | "background-color" | "background-image" | "background-origin" | "background-position" | "background-position-x" | "background-position-y" | "background-repeat" | "background-size" | "baseline-shift" | "baseline-source" | "border-image" | "border-image-outset" | "border-image-repeat" | "border-image-slice" | "border-image-source" | "border-image-width" | "border-bottom-left-radius" | "border-bottom-right-radius" | "border-radius" | "border-top-left-radius" | "border-top-right-radius" | "border-shape" | "border" | "border-bottom" | "border-bottom-color" | "border-bottom-style" | "border-bottom-width" | "border-color" | "border-left" | "border-left-color" | "border-left-style" | "border-left-width" | "border-right" | "border-right-color" | "border-right-style" | "border-right-width" | "border-style" | "border-top" | "border-top-color" | "border-top-style" | "border-top-width" | "border-width" | "box-decoration-break" | "box-shadow" | "box-sizing" | "caret-color" | "caret-shape" | "clip" | "clip-path" | "color" | "color-adjust" | "color-scheme" | "column-fill" | "column-span" | "contain" | "contain-intrinsic-block-size" | "contain-intrinsic-height" | "contain-intrinsic-inline-size" | "contain-intrinsic-size" | "contain-intrinsic-width" | "container" | "container-name" | "container-type" | "content" | "content-visibility" | "corner-block-end-shape" | "corner-block-start-shape" | "corner-bottom-left-shape" | "corner-bottom-right-shape" | "corner-bottom-shape" | "corner-end-end-shape" | "corner-end-start-shape" | "corner-inline-end-shape" | "corner-inline-start-shape" | "corner-left-shape" | "corner-right-shape" | "corner-shape" | "corner-start-end-shape" | "corner-start-start-shape" | "corner-top-left-shape" | "corner-top-right-shape" | "corner-top-shape" | "counter-set" | "counter-increment" | "counter-reset" | "custom-property" | "display" | "dominant-baseline" | "dynamic-range-limit" | "field-sizing" | "filter" | "align-content" | "align-items" | "align-self" | "flex" | "flex-basis" | "flex-direction" | "flex-flow" | "flex-grow" | "flex-shrink" | "flex-wrap" | "justify-content" | "justify-items" | "order" | "place-content" | "place-items" | "place-self" | "clear" | "float" | "font-family" | "font-feature-settings" | "font-kerning" | "font-language-override" | "font-optical-sizing" | "font-palette" | "font" | "font-size" | "font-size-adjust" | "font-stretch" | "font-style" | "font-synthesis" | "font-synthesis-position" | "font-synthesis-small-caps" | "font-synthesis-style" | "font-synthesis-weight" | "font-variant" | "font-variant-alternates" | "font-variant-caps" | "font-variant-east-asian" | "font-variant-emoji" | "font-variant-ligatures" | "font-variant-numeric" | "font-variant-position" | "font-variation-settings" | "font-weight" | "font-width" | "forced-color-adjust" | "frame-sizing" | "column-rule-break" | "column-rule-inset" | "column-rule-inset-cap" | "column-rule-inset-cap-end" | "column-rule-inset-cap-start" | "column-rule-inset-end" | "column-rule-inset-junction" | "column-rule-inset-junction-end" | "column-rule-inset-junction-start" | "column-rule-inset-start" | "column-rule-visibility-items" | "row-rule" | "row-rule-break" | "row-rule-color" | "row-rule-inset" | "row-rule-inset-cap" | "row-rule-inset-cap-end" | "row-rule-inset-cap-start" | "row-rule-inset-end" | "row-rule-inset-junction" | "row-rule-inset-junction-end" | "row-rule-inset-junction-start" | "row-rule-inset-start" | "row-rule-style" | "row-rule-visibility-items" | "row-rule-width" | "rule" | "rule-break" | "rule-color" | "rule-inset" | "rule-inset-cap" | "rule-inset-end" | "rule-inset-junction" | "rule-inset-start" | "rule-overlap" | "rule-style" | "rule-visibility-items" | "rule-width" | "glyph-orientation-vertical" | "gap" | "grid" | "grid-area" | "grid-auto-columns" | "grid-auto-flow" | "grid-auto-rows" | "grid-column" | "grid-column-end" | "grid-column-start" | "grid-row" | "grid-row-end" | "grid-row-start" | "grid-template" | "grid-template-areas" | "grid-template-columns" | "grid-template-rows" | "justify-self" | "row-gap" | "hanging-punctuation" | "hyphenate-character" | "hyphenate-limit-chars" | "hyphens" | "image-orientation" | "image-rendering" | "ime-mode" | "rotate" | "scale" | "translate" | "initial-letter" | "interactivity" | "interpolate-size" | "isolation" | "direction" | "unicode-bidi" | "letter-spacing" | "line-break" | "line-clamp" | "line-height" | "list-style" | "list-style-image" | "list-style-position" | "list-style-type" | "block-size" | "border-block" | "border-block-color" | "border-block-end" | "border-block-end-color" | "border-block-end-style" | "border-block-end-width" | "border-block-start" | "border-block-start-color" | "border-block-start-style" | "border-block-start-width" | "border-block-style" | "border-block-width" | "border-end-end-radius" | "border-end-start-radius" | "border-inline" | "border-inline-color" | "border-inline-end" | "border-inline-end-color" | "border-inline-end-style" | "border-inline-end-width" | "border-inline-start" | "border-inline-start-color" | "border-inline-start-style" | "border-inline-start-width" | "border-inline-style" | "border-inline-width" | "border-start-end-radius" | "border-start-start-radius" | "inline-size" | "inset" | "inset-block" | "inset-block-end" | "inset-block-start" | "inset-inline" | "inset-inline-end" | "inset-inline-start" | "margin-block" | "margin-block-end" | "margin-block-start" | "margin-inline" | "margin-inline-end" | "margin-inline-start" | "max-block-size" | "max-inline-size" | "min-block-size" | "min-inline-size" | "overflow-block" | "overflow-inline" | "padding-block" | "padding-block-end" | "padding-block-start" | "padding-inline" | "padding-inline-end" | "padding-inline-start" | "margin" | "margin-bottom" | "margin-left" | "margin-right" | "margin-top" | "margin-trim" | "mask-border" | "mask-border-outset" | "mask-border-repeat" | "mask-border-slice" | "mask-border-source" | "mask-border-width" | "mask-type" | "mask" | "mask-clip" | "mask-composite" | "mask-image" | "mask-mode" | "mask-origin" | "mask-position" | "mask-repeat" | "mask-size" | "math-depth" | "math-shift" | "math-style" | "max-height" | "max-width" | "min-height" | "min-width" | "mix-blend-mode" | "offset" | "offset-anchor" | "offset-distance" | "offset-path" | "offset-position" | "offset-rotate" | "column-count" | "column-gap" | "column-rule" | "column-rule-color" | "column-rule-style" | "column-rule-width" | "column-width" | "columns" | "object-fit" | "object-position" | "object-view-box" | "opacity" | "fill-opacity" | "stroke-opacity" | "outline" | "outline-color" | "outline-offset" | "outline-style" | "outline-width" | "overflow-anchor" | "overflow-clip-margin" | "overflow" | "overflow-x" | "overflow-y" | "overflow-wrap" | "overlay" | "overscroll-behavior" | "overscroll-behavior-block" | "overscroll-behavior-inline" | "overscroll-behavior-x" | "overscroll-behavior-y" | "padding" | "padding-bottom" | "padding-left" | "padding-right" | "padding-top" | "page-break-after" | "page-break-before" | "page-break-inside" | "break-after" | "break-before" | "break-inside" | "page" | "paint-order" | "bottom" | "left" | "right" | "top" | "pointer-events" | "position" | "print-color-adjust" | "quotes" | "reading-flow" | "reading-order" | "resize" | "ruby-align" | "ruby-overhang" | "ruby-position" | "scroll-behavior" | "animation-range" | "animation-range-end" | "animation-range-start" | "animation-timeline" | "scroll-timeline" | "scroll-timeline-axis" | "scroll-timeline-name" | "timeline-scope" | "view-timeline" | "view-timeline-axis" | "view-timeline-inset" | "view-timeline-name" | "scroll-initial-target" | "scroll-marker-group" | "scroll-margin" | "scroll-margin-block" | "scroll-margin-block-end" | "scroll-margin-block-start" | "scroll-margin-bottom" | "scroll-margin-inline" | "scroll-margin-inline-end" | "scroll-margin-inline-start" | "scroll-margin-left" | "scroll-margin-right" | "scroll-margin-top" | "scroll-padding" | "scroll-padding-block" | "scroll-padding-block-end" | "scroll-padding-block-start" | "scroll-padding-bottom" | "scroll-padding-inline" | "scroll-padding-inline-end" | "scroll-padding-inline-start" | "scroll-padding-left" | "scroll-padding-right" | "scroll-padding-top" | "scroll-snap-align" | "scroll-snap-stop" | "scroll-snap-type" | "scroll-target-group" | "scrollbar-color" | "scrollbar-gutter" | "scrollbar-width" | "shape-image-threshold" | "shape-margin" | "shape-outside" | "speak" | "speak-as" | "clip-rule" | "color-interpolation" | "cx" | "cy" | "d" | "fill" | "fill-rule" | "marker" | "marker-end" | "marker-mid" | "marker-start" | "r" | "rx" | "ry" | "shape-rendering" | "stop-color" | "stop-opacity" | "stroke" | "stroke-color" | "stroke-dasharray" | "stroke-dashoffset" | "stroke-linecap" | "stroke-linejoin" | "stroke-miterlimit" | "stroke-width" | "text-anchor" | "text-rendering" | "vector-effect" | "x" | "y" | "color-interpolation-filters" | "flood-color" | "flood-opacity" | "lighting-color" | "tab-size" | "border-collapse" | "border-spacing" | "caption-side" | "empty-cells" | "table-layout" | "text-align" | "text-align-last" | "text-autospace" | "text-box" | "text-box-edge" | "text-box-trim" | "text-combine-upright" | "text-decoration" | "text-decoration-color" | "text-decoration-line" | "text-decoration-style" | "text-decoration-thickness" | "text-decoration-skip-ink" | "text-emphasis" | "text-emphasis-color" | "text-emphasis-position" | "text-emphasis-style" | "text-fit" | "text-indent" | "text-justify" | "text-orientation" | "text-overflow" | "text-shadow" | "text-size-adjust" | "text-spacing-trim" | "-webkit-text-fill-color" | "-webkit-text-stroke" | "-webkit-text-stroke-color" | "-webkit-text-stroke-width" | "text-transform" | "text-underline-offset" | "text-underline-position" | "text-wrap" | "text-wrap-mode" | "text-wrap-style" | "touch-action" | "transform-box" | "transform" | "transform-origin" | "backface-visibility" | "perspective" | "perspective-origin" | "transform-style" | "transition-behavior" | "transition" | "transition-delay" | "transition-duration" | "transition-property" | "transition-timing-function" | "user-select" | "vertical-align" | "view-transition-class" | "view-transition-name" | "view-transition-scope" | "visibility" | "white-space" | "white-space-collapse" | "orphans" | "widows" | "height" | "width" | "will-change" | "window-drag" | "word-break" | "word-spacing" | "writing-mode" | "z-index" | "zoom")[];
|
|
10468
|
+
allowProperties?: ("accent-color" | "alignment-baseline" | "all" | "anchor-name" | "anchor-scope" | "position-anchor" | "position-area" | "position-try" | "position-try-fallbacks" | "position-try-order" | "position-visibility" | "animation-composition" | "animation" | "animation-delay" | "animation-direction" | "animation-duration" | "animation-fill-mode" | "animation-iteration-count" | "animation-name" | "animation-play-state" | "animation-timing-function" | "appearance" | "aspect-ratio" | "backdrop-filter" | "background" | "background-attachment" | "background-blend-mode" | "background-clip" | "background-color" | "background-image" | "background-origin" | "background-position" | "background-position-x" | "background-position-y" | "background-repeat" | "background-size" | "baseline-shift" | "baseline-source" | "border-image" | "border-image-outset" | "border-image-repeat" | "border-image-slice" | "border-image-source" | "border-image-width" | "border-bottom-left-radius" | "border-bottom-right-radius" | "border-radius" | "border-top-left-radius" | "border-top-right-radius" | "border-shape" | "border" | "border-bottom" | "border-bottom-color" | "border-bottom-style" | "border-bottom-width" | "border-color" | "border-left" | "border-left-color" | "border-left-style" | "border-left-width" | "border-right" | "border-right-color" | "border-right-style" | "border-right-width" | "border-style" | "border-top" | "border-top-color" | "border-top-style" | "border-top-width" | "border-width" | "box-decoration-break" | "box-shadow" | "box-sizing" | "caret-color" | "caret-shape" | "clip" | "clip-path" | "color" | "color-adjust" | "color-scheme" | "column-fill" | "column-span" | "contain" | "contain-intrinsic-block-size" | "contain-intrinsic-height" | "contain-intrinsic-inline-size" | "contain-intrinsic-size" | "contain-intrinsic-width" | "container" | "container-name" | "container-type" | "content" | "content-visibility" | "corner-block-end-shape" | "corner-block-start-shape" | "corner-bottom-left-shape" | "corner-bottom-right-shape" | "corner-bottom-shape" | "corner-end-end-shape" | "corner-end-start-shape" | "corner-inline-end-shape" | "corner-inline-start-shape" | "corner-left-shape" | "corner-right-shape" | "corner-shape" | "corner-start-end-shape" | "corner-start-start-shape" | "corner-top-left-shape" | "corner-top-right-shape" | "corner-top-shape" | "counter-set" | "counter-increment" | "counter-reset" | "custom-property" | "display" | "dominant-baseline" | "dynamic-range-limit" | "field-sizing" | "filter" | "align-content" | "align-items" | "align-self" | "flex" | "flex-basis" | "flex-direction" | "flex-flow" | "flex-grow" | "flex-shrink" | "flex-wrap" | "justify-content" | "justify-items" | "order" | "place-content" | "place-items" | "place-self" | "clear" | "float" | "font-family" | "font-feature-settings" | "font-kerning" | "font-language-override" | "font-optical-sizing" | "font-palette" | "font" | "font-size" | "font-size-adjust" | "font-stretch" | "font-style" | "font-synthesis" | "font-synthesis-position" | "font-synthesis-small-caps" | "font-synthesis-style" | "font-synthesis-weight" | "font-variant" | "font-variant-alternates" | "font-variant-caps" | "font-variant-east-asian" | "font-variant-emoji" | "font-variant-ligatures" | "font-variant-numeric" | "font-variant-position" | "font-variation-settings" | "font-weight" | "font-width" | "forced-color-adjust" | "frame-sizing" | "column-rule-break" | "column-rule-inset" | "column-rule-inset-cap" | "column-rule-inset-cap-end" | "column-rule-inset-cap-start" | "column-rule-inset-end" | "column-rule-inset-junction" | "column-rule-inset-junction-end" | "column-rule-inset-junction-start" | "column-rule-inset-start" | "column-rule-visibility-items" | "row-rule" | "row-rule-break" | "row-rule-color" | "row-rule-inset" | "row-rule-inset-cap" | "row-rule-inset-cap-end" | "row-rule-inset-cap-start" | "row-rule-inset-end" | "row-rule-inset-junction" | "row-rule-inset-junction-end" | "row-rule-inset-junction-start" | "row-rule-inset-start" | "row-rule-style" | "row-rule-visibility-items" | "row-rule-width" | "rule" | "rule-break" | "rule-color" | "rule-inset" | "rule-inset-cap" | "rule-inset-end" | "rule-inset-junction" | "rule-inset-start" | "rule-overlap" | "rule-style" | "rule-visibility-items" | "rule-width" | "glyph-orientation-vertical" | "gap" | "grid" | "grid-area" | "grid-auto-columns" | "grid-auto-flow" | "grid-auto-rows" | "grid-column" | "grid-column-end" | "grid-column-start" | "grid-row" | "grid-row-end" | "grid-row-start" | "grid-template" | "grid-template-areas" | "grid-template-columns" | "grid-template-rows" | "justify-self" | "row-gap" | "flow-tolerance" | "hanging-punctuation" | "hyphenate-character" | "hyphenate-limit-chars" | "hyphens" | "image-orientation" | "image-rendering" | "ime-mode" | "rotate" | "scale" | "translate" | "initial-letter" | "interactivity" | "interpolate-size" | "isolation" | "direction" | "unicode-bidi" | "letter-spacing" | "line-break" | "line-clamp" | "line-height" | "link-parameters" | "list-style" | "list-style-image" | "list-style-position" | "list-style-type" | "block-size" | "border-block" | "border-block-color" | "border-block-end" | "border-block-end-color" | "border-block-end-style" | "border-block-end-width" | "border-block-start" | "border-block-start-color" | "border-block-start-style" | "border-block-start-width" | "border-block-style" | "border-block-width" | "border-end-end-radius" | "border-end-start-radius" | "border-inline" | "border-inline-color" | "border-inline-end" | "border-inline-end-color" | "border-inline-end-style" | "border-inline-end-width" | "border-inline-start" | "border-inline-start-color" | "border-inline-start-style" | "border-inline-start-width" | "border-inline-style" | "border-inline-width" | "border-start-end-radius" | "border-start-start-radius" | "inline-size" | "inset" | "inset-block" | "inset-block-end" | "inset-block-start" | "inset-inline" | "inset-inline-end" | "inset-inline-start" | "margin-block" | "margin-block-end" | "margin-block-start" | "margin-inline" | "margin-inline-end" | "margin-inline-start" | "max-block-size" | "max-inline-size" | "min-block-size" | "min-inline-size" | "overflow-block" | "overflow-inline" | "padding-block" | "padding-block-end" | "padding-block-start" | "padding-inline" | "padding-inline-end" | "padding-inline-start" | "margin" | "margin-bottom" | "margin-left" | "margin-right" | "margin-top" | "margin-trim" | "mask-border" | "mask-border-outset" | "mask-border-repeat" | "mask-border-slice" | "mask-border-source" | "mask-border-width" | "mask-type" | "mask" | "mask-clip" | "mask-composite" | "mask-image" | "mask-mode" | "mask-origin" | "mask-position" | "mask-repeat" | "mask-size" | "math-depth" | "math-shift" | "math-style" | "max-height" | "max-width" | "min-height" | "min-width" | "mix-blend-mode" | "offset" | "offset-anchor" | "offset-distance" | "offset-path" | "offset-position" | "offset-rotate" | "column-count" | "column-gap" | "column-rule" | "column-rule-color" | "column-rule-style" | "column-rule-width" | "column-width" | "columns" | "object-fit" | "object-position" | "object-view-box" | "opacity" | "fill-opacity" | "stroke-opacity" | "outline" | "outline-color" | "outline-offset" | "outline-style" | "outline-width" | "overflow-anchor" | "overflow-clip-margin" | "overflow" | "overflow-x" | "overflow-y" | "overflow-wrap" | "overlay" | "overscroll-behavior" | "overscroll-behavior-block" | "overscroll-behavior-inline" | "overscroll-behavior-x" | "overscroll-behavior-y" | "padding" | "padding-bottom" | "padding-left" | "padding-right" | "padding-top" | "page-break-after" | "page-break-before" | "page-break-inside" | "break-after" | "break-before" | "break-inside" | "page" | "paint-order" | "bottom" | "left" | "right" | "top" | "pointer-events" | "position" | "print-color-adjust" | "quotes" | "reading-flow" | "reading-order" | "resize" | "ruby-align" | "ruby-overhang" | "ruby-position" | "scroll-axis-lock" | "scroll-behavior" | "animation-range" | "animation-range-end" | "animation-range-start" | "animation-timeline" | "scroll-timeline" | "scroll-timeline-axis" | "scroll-timeline-name" | "timeline-scope" | "view-timeline" | "view-timeline-axis" | "view-timeline-inset" | "view-timeline-name" | "scroll-initial-target" | "scroll-marker-group" | "scroll-margin" | "scroll-margin-block" | "scroll-margin-block-end" | "scroll-margin-block-start" | "scroll-margin-bottom" | "scroll-margin-inline" | "scroll-margin-inline-end" | "scroll-margin-inline-start" | "scroll-margin-left" | "scroll-margin-right" | "scroll-margin-top" | "scroll-padding" | "scroll-padding-block" | "scroll-padding-block-end" | "scroll-padding-block-start" | "scroll-padding-bottom" | "scroll-padding-inline" | "scroll-padding-inline-end" | "scroll-padding-inline-start" | "scroll-padding-left" | "scroll-padding-right" | "scroll-padding-top" | "scroll-snap-align" | "scroll-snap-stop" | "scroll-snap-type" | "scroll-target-group" | "scrollbar-color" | "scrollbar-gutter" | "scrollbar-width" | "shape-image-threshold" | "shape-margin" | "shape-outside" | "speak" | "speak-as" | "clip-rule" | "color-interpolation" | "cx" | "cy" | "d" | "fill" | "fill-rule" | "marker" | "marker-end" | "marker-mid" | "marker-start" | "r" | "rx" | "ry" | "shape-rendering" | "stop-color" | "stop-opacity" | "stroke" | "stroke-color" | "stroke-dasharray" | "stroke-dashoffset" | "stroke-linecap" | "stroke-linejoin" | "stroke-miterlimit" | "stroke-width" | "text-anchor" | "text-rendering" | "vector-effect" | "x" | "y" | "color-interpolation-filters" | "flood-color" | "flood-opacity" | "lighting-color" | "tab-size" | "border-collapse" | "border-spacing" | "caption-side" | "empty-cells" | "table-layout" | "text-align" | "text-align-last" | "text-autospace" | "text-box" | "text-box-edge" | "text-box-trim" | "text-combine-upright" | "text-decoration" | "text-decoration-color" | "text-decoration-line" | "text-decoration-style" | "text-decoration-thickness" | "text-decoration-skip-ink" | "text-decoration-skip-spaces" | "text-emphasis" | "text-emphasis-color" | "text-emphasis-position" | "text-emphasis-style" | "text-fit" | "text-indent" | "text-justify" | "text-orientation" | "text-overflow" | "text-shadow" | "text-size-adjust" | "text-spacing-trim" | "-webkit-text-fill-color" | "-webkit-text-stroke" | "-webkit-text-stroke-color" | "-webkit-text-stroke-width" | "text-transform" | "text-underline-offset" | "text-underline-position" | "text-wrap" | "text-wrap-mode" | "text-wrap-style" | "touch-action" | "transform-box" | "transform" | "transform-origin" | "backface-visibility" | "perspective" | "perspective-origin" | "transform-style" | "transition-behavior" | "transition" | "transition-delay" | "transition-duration" | "transition-property" | "transition-timing-function" | "user-select" | "vertical-align" | "view-transition-class" | "view-transition-name" | "view-transition-scope" | "visibility" | "white-space" | "white-space-collapse" | "orphans" | "widows" | "height" | "width" | "will-change" | "window-drag" | "word-break" | "word-spacing" | "writing-mode" | "z-index" | "zoom")[];
|
|
10469
10469
|
allowPropertyValues?: {
|
|
10470
10470
|
"accent-color"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "currentColor" | "transparent")[];
|
|
10471
10471
|
"alignment-baseline"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "alphabetic" | "baseline" | "central" | "ideographic" | "mathematical" | "middle" | "text-after-edge" | "text-before-edge")[];
|
|
@@ -10491,7 +10491,7 @@ type CssUseBaseline = [] | [{
|
|
|
10491
10491
|
appearance?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "button" | "checkbox" | "listbox" | "menulist" | "menulist-button" | "meter" | "none" | "progress-bar" | "radio" | "searchfield" | "textarea" | "textfield" | "base-select")[];
|
|
10492
10492
|
"aspect-ratio"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10493
10493
|
"backdrop-filter"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10494
|
-
background?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "local" | "no-repeat" | "none" | "repeat" | "repeat-x" | "repeat-y" | "round" | "scroll" | "space" | "transparent" | "background-clip" | "background-origin" | "background-size" | "currentColor")[];
|
|
10494
|
+
background?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "local" | "no-repeat" | "none" | "repeat" | "repeat-x" | "repeat-y" | "round" | "scroll" | "space" | "transparent" | "background-clip" | "text" | "background-origin" | "background-size" | "currentColor")[];
|
|
10495
10495
|
"background-attachment"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "fixed" | "local" | "scroll")[];
|
|
10496
10496
|
"background-blend-mode"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10497
10497
|
"background-clip"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "border-area" | "text")[];
|
|
@@ -10499,8 +10499,8 @@ type CssUseBaseline = [] | [{
|
|
|
10499
10499
|
"background-image"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none" | "element" | "gradients" | "image-set")[];
|
|
10500
10500
|
"background-origin"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box")[];
|
|
10501
10501
|
"background-position"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "bottom" | "center" | "left" | "right" | "top")[];
|
|
10502
|
-
"background-position-x"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10503
|
-
"background-position-y"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10502
|
+
"background-position-x"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "center" | "left" | "right")[];
|
|
10503
|
+
"background-position-y"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "bottom" | "center" | "top")[];
|
|
10504
10504
|
"background-repeat"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "2-value" | "no-repeat" | "repeat" | "repeat-x" | "repeat-y" | "round" | "space")[];
|
|
10505
10505
|
"background-size"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "contain" | "cover")[];
|
|
10506
10506
|
"baseline-shift"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "sub" | "super")[];
|
|
@@ -10509,7 +10509,7 @@ type CssUseBaseline = [] | [{
|
|
|
10509
10509
|
"border-image-outset"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10510
10510
|
"border-image-repeat"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "repeat" | "round" | "space" | "stretch")[];
|
|
10511
10511
|
"border-image-slice"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10512
|
-
"border-image-source"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10512
|
+
"border-image-source"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none")[];
|
|
10513
10513
|
"border-image-width"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10514
10514
|
"border-bottom-left-radius"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "percentages")[];
|
|
10515
10515
|
"border-bottom-right-radius"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "percentages")[];
|
|
@@ -10543,7 +10543,7 @@ type CssUseBaseline = [] | [{
|
|
|
10543
10543
|
"caret-color"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "currentColor" | "transparent")[];
|
|
10544
10544
|
"caret-shape"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "bar" | "block" | "underscore")[];
|
|
10545
10545
|
clip?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10546
|
-
"clip-path"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "path" | "fill-box" | "stroke-box" | "view-box")[];
|
|
10546
|
+
"clip-path"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none" | "path" | "fill-box" | "stroke-box" | "view-box")[];
|
|
10547
10547
|
color?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "currentColor")[];
|
|
10548
10548
|
"color-adjust"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10549
10549
|
"color-scheme"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "dark" | "light" | "normal" | "only")[];
|
|
@@ -10581,14 +10581,14 @@ type CssUseBaseline = [] | [{
|
|
|
10581
10581
|
"counter-increment"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "list-item" | "none")[];
|
|
10582
10582
|
"counter-reset"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "reversed" | "list-item" | "none")[];
|
|
10583
10583
|
"custom-property"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10584
|
-
display?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "block" | "inline" | "inline-block" | "none" | "contents" | "flow-root" | "list-item" | "ruby" | "ruby-base" | "ruby-base-container" | "ruby-text" | "ruby-text-container" | "inline-table" | "table" | "table-caption" | "table-cell" | "table-column" | "table-column-group" | "table-footer-group" | "table-header-group" | "table-row" | "table-row-group" | "flex" | "inline-flex" | "grid" | "inline-grid" | "math")[];
|
|
10584
|
+
display?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "block" | "inline" | "inline-block" | "none" | "contents" | "flow-root" | "list-item" | "ruby" | "ruby-base" | "ruby-base-container" | "ruby-text" | "ruby-text-container" | "inline-table" | "table" | "table-caption" | "table-cell" | "table-column" | "table-column-group" | "table-footer-group" | "table-header-group" | "table-row" | "table-row-group" | "flex" | "inline-flex" | "grid" | "inline-grid" | "grid-lanes" | "inline-grid-lanes" | "math")[];
|
|
10585
10585
|
"dominant-baseline"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "alphabetic" | "auto" | "central" | "hanging" | "ideographic" | "mathematical" | "middle")[];
|
|
10586
10586
|
"dynamic-range-limit"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "constrained" | "no-limit" | "standard")[];
|
|
10587
10587
|
"field-sizing"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "content" | "fixed")[];
|
|
10588
10588
|
filter?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "blur" | "brightness" | "contrast" | "drop-shadow" | "grayscale" | "hue-rotate" | "invert" | "opacity" | "saturate" | "sepia")[];
|
|
10589
|
-
"align-content"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "normal")[];
|
|
10590
|
-
"align-items"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor-center")[];
|
|
10591
|
-
"align-self"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor-center" | "auto" | "normal" | "stretch")[];
|
|
10589
|
+
"align-content"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "baseline" | "end" | "normal" | "safe" | "space-evenly" | "start" | "stretch" | "unsafe")[];
|
|
10590
|
+
"align-items"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor-center" | "baseline" | "center" | "end" | "safe" | "start" | "unsafe")[];
|
|
10591
|
+
"align-self"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor-center" | "auto" | "baseline" | "end" | "normal" | "safe" | "start" | "stretch" | "unsafe")[];
|
|
10592
10592
|
flex?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none")[];
|
|
10593
10593
|
"flex-basis"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "content" | "fit-content" | "max-content" | "min-content")[];
|
|
10594
10594
|
"flex-direction"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "column" | "column-reverse" | "row" | "row-reverse")[];
|
|
@@ -10611,7 +10611,7 @@ type CssUseBaseline = [] | [{
|
|
|
10611
10611
|
"font-optical-sizing"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "none")[];
|
|
10612
10612
|
"font-palette"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "dark" | "light" | "normal")[];
|
|
10613
10613
|
font?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "caption" | "icon" | "menu" | "message-box" | "small-caption" | "status-bar")[];
|
|
10614
|
-
"font-size"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "xxx-large" | "math")[];
|
|
10614
|
+
"font-size"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "large" | "larger" | "medium" | "small" | "smaller" | "x-large" | "x-small" | "xx-large" | "xx-small" | "xxx-large" | "math")[];
|
|
10615
10615
|
"font-size-adjust"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "from-font" | "none" | "two-values")[];
|
|
10616
10616
|
"font-stretch"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "condensed" | "expanded" | "extra-condensed" | "extra-expanded" | "normal" | "percentage" | "semi-condensed" | "semi-expanded" | "ultra-condensed" | "ultra-expanded")[];
|
|
10617
10617
|
"font-style"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "italic" | "normal" | "oblique" | "oblique-angle")[];
|
|
@@ -10690,6 +10690,7 @@ type CssUseBaseline = [] | [{
|
|
|
10690
10690
|
"grid-template-rows"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "fit-content" | "max-content" | "min-content" | "minmax" | "none" | "repeat" | "animation" | "subgrid")[];
|
|
10691
10691
|
"justify-self"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor-center" | "auto" | "left" | "normal" | "right" | "stretch")[];
|
|
10692
10692
|
"row-gap"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "normal")[];
|
|
10693
|
+
"flow-tolerance"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "infinite" | "normal")[];
|
|
10693
10694
|
"hanging-punctuation"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "allow-end" | "first" | "force-end" | "last" | "none")[];
|
|
10694
10695
|
"hyphenate-character"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10695
10696
|
"hyphenate-limit-chars"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
@@ -10710,10 +10711,11 @@ type CssUseBaseline = [] | [{
|
|
|
10710
10711
|
"line-break"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anywhere" | "auto" | "loose" | "normal" | "strict")[];
|
|
10711
10712
|
"line-clamp"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none")[];
|
|
10712
10713
|
"line-height"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "normal")[];
|
|
10714
|
+
"link-parameters"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none")[];
|
|
10713
10715
|
"list-style"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "inside" | "none" | "outside" | "symbols")[];
|
|
10714
10716
|
"list-style-image"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none")[];
|
|
10715
10717
|
"list-style-position"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "inside" | "outside")[];
|
|
10716
|
-
"list-style-type"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "arabic-indic" | "armenian" | "bengali" | "cambodian" | "circle" | "cjk-decimal" | "cjk-earthly-branch" | "cjk-heavenly-stem" | "cjk-ideographic" | "decimal" | "decimal-leading-zero" | "devanagari" | "disc" | "disclosure-closed" | "disclosure-open" | "ethiopic-numeric" | "georgian" | "gujarati" | "gurmukhi" | "hebrew" | "hiragana" | "hiragana-iroha" | "japanese-formal" | "japanese-informal" | "kannada" | "katakana" | "katakana-iroha" | "khmer" | "korean-hangul-formal" | "korean-hanja-formal" | "korean-hanja-informal" | "lao" | "lower-alpha" | "lower-armenian" | "lower-greek" | "lower-latin" | "lower-roman" | "malayalam" | "mongolian" | "myanmar" | "none" | "oriya" | "persian" | "simp-chinese-formal" | "simp-chinese-informal" | "square" | "string" | "
|
|
10718
|
+
"list-style-type"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "arabic-indic" | "armenian" | "bengali" | "cambodian" | "circle" | "cjk-decimal" | "cjk-earthly-branch" | "cjk-heavenly-stem" | "cjk-ideographic" | "decimal" | "decimal-leading-zero" | "devanagari" | "disc" | "disclosure-closed" | "disclosure-open" | "ethiopic-numeric" | "georgian" | "gujarati" | "gurmukhi" | "hebrew" | "hiragana" | "hiragana-iroha" | "japanese-formal" | "japanese-informal" | "kannada" | "katakana" | "katakana-iroha" | "khmer" | "korean-hangul-formal" | "korean-hanja-formal" | "korean-hanja-informal" | "lao" | "lower-alpha" | "lower-armenian" | "lower-greek" | "lower-latin" | "lower-roman" | "malayalam" | "mongolian" | "myanmar" | "none" | "oriya" | "persian" | "simp-chinese-formal" | "simp-chinese-informal" | "square" | "string" | "tamil" | "telugu" | "thai" | "tibetan" | "trad-chinese-formal" | "trad-chinese-informal" | "upper-alpha" | "upper-armenian" | "upper-latin" | "upper-roman" | "symbols")[];
|
|
10717
10719
|
"block-size"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor-size" | "fit-content" | "max-content" | "min-content")[];
|
|
10718
10720
|
"border-block"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "currentColor" | "dashed" | "dotted" | "double" | "groove" | "hidden" | "inset" | "medium" | "none" | "outset" | "ridge" | "solid" | "thick" | "thin" | "transparent")[];
|
|
10719
10721
|
"border-block-color"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "currentColor" | "transparent")[];
|
|
@@ -10812,14 +10814,14 @@ type CssUseBaseline = [] | [{
|
|
|
10812
10814
|
"column-rule-style"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "hidden" | "inset" | "none" | "outset" | "ridge" | "solid")[];
|
|
10813
10815
|
"column-rule-width"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "medium" | "thick" | "thin")[];
|
|
10814
10816
|
"column-width"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10815
|
-
columns?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10817
|
+
columns?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10816
10818
|
"object-fit"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "contain" | "cover" | "fill" | "none" | "scale-down")[];
|
|
10817
10819
|
"object-position"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10818
10820
|
"object-view-box"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none")[];
|
|
10819
10821
|
opacity?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "percentages")[];
|
|
10820
10822
|
"fill-opacity"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10821
10823
|
"stroke-opacity"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10822
|
-
outline?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "currentColor" | "dashed" | "dotted" | "double" | "groove" | "inset" | "medium" | "none" | "outset" | "ridge" | "solid" | "thick" | "thin" | "transparent")[];
|
|
10824
|
+
outline?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "currentColor" | "dashed" | "dotted" | "double" | "groove" | "inset" | "medium" | "none" | "outset" | "ridge" | "solid" | "thick" | "thin" | "transparent")[];
|
|
10823
10825
|
"outline-color"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "currentColor" | "transparent")[];
|
|
10824
10826
|
"outline-offset"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10825
10827
|
"outline-style"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "dashed" | "dotted" | "double" | "groove" | "inset" | "none" | "outset" | "ridge" | "solid")[];
|
|
@@ -10853,7 +10855,7 @@ type CssUseBaseline = [] | [{
|
|
|
10853
10855
|
left?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor" | "anchor-size" | "auto")[];
|
|
10854
10856
|
right?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor" | "anchor-size" | "auto")[];
|
|
10855
10857
|
top?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "anchor" | "anchor-size" | "auto")[];
|
|
10856
|
-
"pointer-events"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10858
|
+
"pointer-events"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "all" | "auto" | "fill" | "none" | "painted" | "stroke" | "visible")[];
|
|
10857
10859
|
position?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "absolute" | "fixed" | "relative" | "static" | "sticky")[];
|
|
10858
10860
|
"print-color-adjust"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "economy" | "exact")[];
|
|
10859
10861
|
quotes?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "none")[];
|
|
@@ -10863,6 +10865,7 @@ type CssUseBaseline = [] | [{
|
|
|
10863
10865
|
"ruby-align"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "center" | "space-around" | "space-between" | "start")[];
|
|
10864
10866
|
"ruby-overhang"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "none")[];
|
|
10865
10867
|
"ruby-position"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "alternate" | "inter-character" | "over" | "under")[];
|
|
10868
|
+
"scroll-axis-lock"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "none")[];
|
|
10866
10869
|
"scroll-behavior"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "smooth")[];
|
|
10867
10870
|
"animation-range"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10868
10871
|
"animation-range-end"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "normal")[];
|
|
@@ -10913,7 +10916,7 @@ type CssUseBaseline = [] | [{
|
|
|
10913
10916
|
speak?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10914
10917
|
"speak-as"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "digits" | "literal-punctuation" | "no-punctuation" | "normal" | "spell-out")[];
|
|
10915
10918
|
"clip-rule"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "evenodd" | "nonzero")[];
|
|
10916
|
-
"color-interpolation"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "linearGradient" | "sRGB")[];
|
|
10919
|
+
"color-interpolation"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "linearGradient" | "linearRGB" | "sRGB")[];
|
|
10917
10920
|
cx?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10918
10921
|
cy?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10919
10922
|
d?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
@@ -10954,7 +10957,7 @@ type CssUseBaseline = [] | [{
|
|
|
10954
10957
|
"table-layout"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "fixed")[];
|
|
10955
10958
|
"text-align"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "justify" | "left" | "match-parent" | "right" | "start")[];
|
|
10956
10959
|
"text-align-last"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10957
|
-
"text-autospace"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "ideograph-alpha" | "ideograph-numeric" | "insert" | "no-autospace" | "normal"
|
|
10960
|
+
"text-autospace"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "ideograph-alpha" | "ideograph-numeric" | "insert" | "no-autospace" | "normal")[];
|
|
10958
10961
|
"text-box"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "normal")[];
|
|
10959
10962
|
"text-box-edge"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto")[];
|
|
10960
10963
|
"text-box-trim"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none" | "trim-both" | "trim-end" | "trim-start")[];
|
|
@@ -10965,6 +10968,7 @@ type CssUseBaseline = [] | [{
|
|
|
10965
10968
|
"text-decoration-style"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "wavy")[];
|
|
10966
10969
|
"text-decoration-thickness"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "from-font" | "percentage")[];
|
|
10967
10970
|
"text-decoration-skip-ink"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "none" | "all")[];
|
|
10971
|
+
"text-decoration-skip-spaces"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "all" | "end" | "none" | "start")[];
|
|
10968
10972
|
"text-emphasis"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "currentColor" | "transparent")[];
|
|
10969
10973
|
"text-emphasis-color"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "currentColor" | "transparent")[];
|
|
10970
10974
|
"text-emphasis-position"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "left" | "over" | "right" | "under")[];
|
|
@@ -10974,7 +10978,7 @@ type CssUseBaseline = [] | [{
|
|
|
10974
10978
|
"text-justify"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "inter-character" | "inter-word" | "none")[];
|
|
10975
10979
|
"text-orientation"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "mixed" | "sideways" | "upright")[];
|
|
10976
10980
|
"text-overflow"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "string" | "clip" | "ellipsis")[];
|
|
10977
|
-
"text-shadow"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
10981
|
+
"text-shadow"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "none")[];
|
|
10978
10982
|
"text-size-adjust"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "auto" | "none" | "percentages")[];
|
|
10979
10983
|
"text-spacing-trim"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset" | "normal" | "space-all" | "space-first" | "trim-start")[];
|
|
10980
10984
|
"-webkit-text-fill-color"?: ("revert-layer" | "inherit" | "initial" | "revert" | "unset")[];
|
|
@@ -17400,7 +17404,7 @@ type ZodArrayStyle = [] | [{
|
|
|
17400
17404
|
}];
|
|
17401
17405
|
// ----- zod/consistent-import -----
|
|
17402
17406
|
type ZodConsistentImport = [] | [{
|
|
17403
|
-
syntax?: ("namespace" | "named");
|
|
17407
|
+
syntax?: ("namespace" | "named" | "default");
|
|
17404
17408
|
}];
|
|
17405
17409
|
// ----- zod/consistent-import-source -----
|
|
17406
17410
|
type ZodConsistentImportSource = [] | [{
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{FlatConfigComposer as e,renamePluginsInConfigs as t,renamePluginsInRules as n}from"eslint-flat-config-utils";import{getPackageInfo as r,isPackageExists as i}from"local-pkg";import{findWorkspaceDir as a}from"pkg-types";import o from"eslint-plugin-antfu";import s,{configs as c}from"eslint-plugin-de-morgan";import l from"@eslint-community/eslint-plugin-eslint-comments";import u from"@eslint-community/eslint-plugin-eslint-comments/configs";import d from"@eslint/css";import{tailwind3 as f,tailwind4 as p}from"tailwind-csstree";import m from"eslint-plugin-depend";import{fixupPluginRules as h}from"@eslint/compat";import ee,{configs as te}from"eslint-plugin-github-action";import*as g from"yaml-eslint-parser";import _ from"eslint-config-flat-gitignore";import v from"@eslint/js";import ne from"@stylistic/eslint-plugin";import y from"globals";import re from"eslint-plugin-jsdoc";import ie,{configs as b}from"eslint-plugin-jsonc";import*as x from"jsonc-eslint-parser";import S from"@eslint/markdown";import{mergeProcessors as C,processorPassThrough as w}from"eslint-merge-processors";import T from"eslint-plugin-n";import ae,{merge as oe}from"@eslint-react/kit";import{AST_NODE_TYPES as E}from"@typescript-eslint/utils";import se,{configs as ce}from"eslint-plugin-regexp";import le from"eslint-plugin-sonarjs";import{mkdir as ue,writeFile as de}from"node:fs/promises";import D from"node:path";import*as O from"empathic/find";import fe,{configs as pe}from"eslint-plugin-toml";import k from"eslint-plugin-unicorn";import me from"eslint-plugin-yml";const A=`**/*.?([cm])[jt]s?(x)`,j=`**/*.?([cm])ts`,M=`**/*.?([cm])tsx`,N=`.github/workflows/*.y?(a)ml`,P=`**/*.md`,F=`${P}/${A}`,I=/* @__PURE__ */ `**/node_modules,**/dist,**/package-lock.json,**/yarn.lock,**/pnpm-lock.yaml,**/bun.lockb,**/bun.lock,**/output,**/coverage,**/temp,**/.temp,**/tmp,**/.tmp,**/.history,**/.vitepress/cache,**/.nuxt,**/.next,**/.vercel,**/.changeset,**/.idea,**/.cache,**/.output,**/.vite-inspect,**/.yarn,**/CHANGELOG*.md,**/*.min.*,**/LICENSE*,**/__snapshots__,**/auto-import?(s).d.ts,**/components.d.ts`.split(`,`);function L(){return[{files:[A],name:`2digits:antfu`,plugins:{antfu:o},rules:{"antfu/top-level-function":`error`}}]}function R(){return[{files:[A],name:`2digits:boolean`,plugins:{boolean:s},rules:{...c.recommended.rules}}]}const z={"@next/next":`next`,"@eslint-react":`react-extra`,"react-hooks":`react-hooks`,"react-compiler":`react-compiler`,"@stylistic/eslint-plugin":`stylistic`,"@typescript-eslint":`ts`,vitest:`vitest`,node:`node`,"@eslint-community/eslint-comments":`comments`,storybook:`storybook`,turbo:`turbo`,jsdoc:`jsdoc`,unicorn:`unicorn`,tailwindcss:`tailwindcss`,"@tanstack/query":`tanstack-query`,"@tanstack/router":`tanstack-router`,"@2digits":`@2digits`,"@graphql-eslint":`gql`,sonarjs:`sonar`,drizzle:`drizzle`,"de-morgan":`boolean`,antfu:`antfu`,css:`css`,depend:`depend`,"github-action":`github-action`,jsonc:`jsonc`,markdown:`markdown`,pnpm:`pnpm`,regexp:`regexp`,yml:`yml`,zod:`zod`,toml:`toml`},he=[`storybook`,`@storybook/nextjs`,`@storybook/nextjs-vite`,`@storybook/react-vite`,`@storybook/react-webpack5`,`@storybook/react-native-web-vite`],ge=n(u.recommended.rules,z);function _e(){return[{files:[A],name:`2digits:comments`,plugins:{comments:l},rules:{...ge,"comments/disable-enable-pair":[`error`,{allowWholeFile:!0}]}}]}async function ve(e){if(e?.customSyntax){let{customSyntax:t}=e;return t}if(e?.tailwindMajor===3)return f;if(e?.tailwindMajor===4)return p;try{let[e=`0`]=((await r(`tailwindcss`))?.version??``).split(`.`,1),t=Number.parseInt(e,10);if(Number.isFinite(t)&&t>=4)return p}catch{}return f}async function ye(e={}){let t=await ve(e);return[{name:`2digits:css`,files:[`**/*.css`],language:`css/css`,plugins:{css:d},languageOptions:{tolerant:!0,customSyntax:t},rules:{...d.configs.recommended.rules,...e.overrides}}]}function be(){return[{files:[A],name:`2digits:depend`,plugins:{depend:m},rules:{"depend/ban-dependencies":`warn`}}]}async function B(e){let t=await e;return t.default??t}async function xe(e={}){let{overrides:t={},drizzleObjectName:n=[`drizzle`,`db`]}=e,r=await B(import(`eslint-plugin-drizzle`));return[{files:[A],name:`2digits:drizzle`,plugins:{drizzle:h(r)},rules:{"drizzle/enforce-update-with-where":[`error`,{drizzleObjectName:n}],"drizzle/enforce-delete-with-where":[`error`,{drizzleObjectName:n}],...t}}]}const Se=Object.fromEntries(te.recommended.flatMap(({rules:e})=>Object.entries({...e})));function Ce(){return[{name:`2digits:github-actions/setup`,plugins:{"github-action":ee}},{name:`2digits:github-actions/recommended`,files:[N],ignores:[`!**/${N}`],languageOptions:{parser:g},rules:{...Se,"github-action/no-top-level-permissions":[`error`,{allowEmpty:!0}]}}]}async function we(e={}){let{overrides:t={},files:r=[`**/*.graphql`,`**/*.gql`]}=e,[i,a]=await Promise.all([B(import(`@graphql-eslint/eslint-plugin`)),import(`graphql-config`).then(({loadConfig:e})=>e({throwOnEmpty:!1,throwOnMissing:!1}).then(e=>e?.getDefault().schema))]),{configs:o}=i,{"flat/operations-recommended":s}=o,{rules:c}=s,l={};if(a)l=c;else for(let e of Object.keys(c)){let t=e.replace(`@graphql-eslint/`,``);t in i.rules&&(i.rules[t].meta.docs?.requiresSchema||i.rules[t].meta.docs?.requiresSiblings)||(l[e]=c[e])}let u=n(l,z);return[{name:`2digits:graphql`,plugins:{gql:i},languageOptions:{parser:i.parser},files:r,rules:{...u,"gql/naming-convention":[`error`,{allowLeadingUnderscore:!0}],...t}}]}function Te(e={}){let{gitIgnore:t,ignores:n=[]}=e;return[{ignores:[I,n].flat(),name:`2digits:ignores`},_({strict:!1,...t,name:`2digits:gitignore`})]}function Ee(e={}){let{overrides:t={}}=e;return[{files:[A],name:`2digits:javascript`,plugins:{stylistic:ne},languageOptions:{ecmaVersion:2022,globals:{...y.browser,...y.es2021,...y.node,document:`readonly`,navigator:`readonly`,window:`readonly`},parserOptions:{ecmaFeatures:{jsx:!0},ecmaVersion:2022,sourceType:`module`},sourceType:`module`},linterOptions:{reportUnusedDisableDirectives:!0,reportUnusedInlineConfigs:`error`},rules:{...v.configs.recommended.rules,"accessor-pairs":[`error`,{enforceForClassMembers:!0,setWithoutGet:!0}],"array-callback-return":`error`,"block-scoped-var":`error`,"constructor-super":`error`,"default-case-last":`error`,"dot-notation":[`error`,{allowKeywords:!0}],eqeqeq:[`error`,`smart`],"new-cap":[`error`,{capIsNew:!1,newIsCap:!0,properties:!0}],"no-alert":`error`,"no-array-constructor":`error`,"no-async-promise-executor":`error`,"no-caller":`error`,"no-case-declarations":`error`,"no-class-assign":`error`,"no-compare-neg-zero":`error`,"no-cond-assign":[`error`,`always`],"no-const-assign":`error`,"no-control-regex":`error`,"no-debugger":`error`,"no-delete-var":`error`,"no-dupe-args":`error`,"no-dupe-class-members":`error`,"no-dupe-keys":`error`,"no-duplicate-case":`error`,"no-empty":[`error`,{allowEmptyCatch:!0}],"no-empty-character-class":`error`,"no-empty-pattern":`error`,"no-eval":`error`,"no-ex-assign":`error`,"no-extend-native":`error`,"no-extra-bind":`error`,"no-extra-boolean-cast":`error`,"no-fallthrough":`error`,"no-func-assign":`error`,"no-global-assign":`error`,"no-implied-eval":`error`,"no-import-assign":`error`,"no-invalid-regexp":`error`,"no-irregular-whitespace":`error`,"no-iterator":`error`,"no-labels":[`error`,{allowLoop:!1,allowSwitch:!1}],"no-lone-blocks":`error`,"no-loss-of-precision":`error`,"no-misleading-character-class":`error`,"no-multi-str":`error`,"no-new":`error`,"no-new-func":`error`,"no-new-native-nonconstructor":`error`,"no-new-wrappers":`error`,"no-obj-calls":`error`,"no-octal":`error`,"no-octal-escape":`error`,"no-promise-executor-return":`error`,"no-proto":`error`,"no-prototype-builtins":`error`,"no-redeclare":`off`,"no-regex-spaces":`error`,"no-restricted-globals":[`error`,{message:"Use `globalThis` instead.",name:`global`},{message:"Use `globalThis` instead.",name:`self`}],"no-restricted-properties":[`error`,{message:"Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",property:`__proto__`},{message:"Use `Object.defineProperty` instead.",property:`__defineGetter__`},{message:"Use `Object.defineProperty` instead.",property:`__defineSetter__`},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:`__lookupGetter__`},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:`__lookupSetter__`}],"no-restricted-syntax":[`error`,`DebuggerStatement`,`LabeledStatement`,`WithStatement`,`TSEnumDeclaration`,`TSExportAssignment`],"no-self-assign":[`error`,{props:!0}],"no-self-compare":`error`,"no-sequences":`error`,"no-shadow-restricted-names":`error`,"no-sparse-arrays":`error`,"no-template-curly-in-string":`error`,"no-this-before-super":`error`,"no-throw-literal":`error`,"no-undef":`error`,"no-undef-init":`error`,"no-unexpected-multiline":`error`,"no-unmodified-loop-condition":`error`,"no-unneeded-ternary":[`error`,{defaultAssignment:!1}],"no-unreachable":`error`,"no-unreachable-loop":`error`,"no-unsafe-finally":`error`,"no-unsafe-negation":`error`,"no-unused-expressions":[`error`,{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-unused-vars":[`error`,{args:`none`,caughtErrors:`none`,ignoreRestSiblings:!0,vars:`all`}],"no-useless-assignment":`off`,"no-useless-backreference":`error`,"no-useless-call":`error`,"no-useless-catch":`error`,"no-useless-computed-key":`error`,"no-useless-constructor":`error`,"no-useless-rename":`error`,"no-var":`error`,"no-with":`error`,"object-shorthand":[`error`,`always`,{avoidQuotes:!0,ignoreConstructors:!1}],"one-var":[`error`,{initialized:`never`}],"prefer-arrow-callback":[`error`,{allowNamedFunctions:!0,allowUnboundThis:!0}],"prefer-const":[`error`,{destructuring:`all`,ignoreReadBeforeAssign:!0}],"prefer-exponentiation-operator":`error`,"prefer-promise-reject-errors":`error`,"prefer-regex-literals":[`error`,{disallowRedundantWrapping:!0}],"prefer-rest-params":`error`,"prefer-spread":`error`,"prefer-template":`error`,"symbol-description":`error`,"unicode-bom":[`error`,`never`],"use-isnan":[`error`,{enforceForIndexOf:!0,enforceForSwitchCase:!0}],"valid-typeof":[`error`,{requireStringLiterals:!0}],"vars-on-top":`error`,yoda:[`error`,`never`],"stylistic/padding-line-between-statements":[`error`,{blankLine:`always`,prev:[`const`,`let`],next:`*`},{blankLine:`any`,prev:[`const`,`let`],next:[`const`,`let`]},{blankLine:`always`,prev:`*`,next:`return`}],...t}}]}function De(){return[{files:[A],name:`2digits:jsdoc`,plugins:{jsdoc:re},rules:{"jsdoc/check-access":`error`,"jsdoc/check-param-names":`error`,"jsdoc/check-property-names":`error`,"jsdoc/check-tag-names":[`error`,{typed:!0,definedTags:[`effect-codegens`,`effect-diagnostics`,`effect-diagnostics-next-line`,`effect-expect-leaking`,`effect-identifier`,`effect-leakable-service`,`effect-schema-codegenerated`]}],"jsdoc/check-types":`error`,"jsdoc/empty-tags":`error`,"jsdoc/implements-on-classes":`error`,"jsdoc/no-defaults":`error`,"jsdoc/no-multi-asterisks":`error`,"jsdoc/require-param":`error`,"jsdoc/require-param-name":`error`,"jsdoc/require-property":`error`,"jsdoc/require-property-description":`error`,"jsdoc/require-property-name":`error`,"jsdoc/require-returns-check":`error`,"jsdoc/require-returns-description":`error`,"jsdoc/require-yields":`error`,"jsdoc/require-yields-check":`error`}}]}function Oe(){return[...b[`flat/base`].map(e=>({...e,name:`2digits:jsonc/base`})),{name:`2digits:jsonc/json`,files:[`**/*.json`],...V,rules:{...H(b[`flat/recommended-with-json`])}},{name:`2digits:jsonc/jsonc`,files:[`**/*.jsonc`],...V,rules:{...H(b[`flat/recommended-with-jsonc`])}},{name:`2digits:jsonc/json5`,files:[`**/*.json5`],...V,rules:{...H(b[`flat/recommended-with-json5`])}},{name:`2digits:jsonc/package.json`,...V,files:[`**/package.json`],rules:{"jsonc/sort-array-values":[`error`,{order:{type:`asc`},pathPattern:`^files$`}],"jsonc/sort-keys":[`error`,{order:{type:`asc`},pathPattern:`^(?:dev|peer|optional|bundled)?[Dd]ependencies(Meta)?$`},{order:[`types`,`import`,`module`,`require`,`default`],pathPattern:`^exports.*$`}]}},{name:`2digits:jsonc/tsconfig.json`,...V,files:[`**/tsconfig.json`,`**/tsconfig.*.json`,`**/tsconfig-*.json`,`**/jsconfig.json`,`**/jsconfig.*.json`,`**/jsconfig-*.json`],rules:{"jsonc/sort-keys":[`error`,{order:[`$schema`,`extends`,`compilerOptions`,`references`,`files`,`include`,`exclude`],pathPattern:`^$`},{order:/* @__PURE__ */ `incremental.composite.tsBuildInfoFile.disableSourceOfProjectReferenceRedirect.disableSolutionSearching.disableReferencedProjectLoad.target.lib.jsx.experimentalDecorators.emitDecoratorMetadata.jsxFactory.jsxFragmentFactory.jsxImportSource.reactNamespace.noLib.useDefineForClassFields.moduleDetection.module.rootDir.moduleResolution.baseUrl.paths.rootDirs.typeRoots.types.allowUmdGlobalAccess.moduleSuffixes.allowImportingTsExtensions.resolvePackageJsonExports.resolvePackageJsonImports.customConditions.resolveJsonModule.allowArbitraryExtensions.noResolve.allowJs.checkJs.maxNodeModuleJsDepth.declaration.declarationMap.emitDeclarationOnly.sourceMap.inlineSourceMap.outFile.outDir.removeComments.noEmit.importHelpers.importsNotUsedAsValues.downlevelIteration.sourceRoot.mapRoot.inlineSources.emitBOM.newLine.stripInternal.noEmitHelpers.noEmitOnError.preserveConstEnums.declarationDir.preserveValueImports.isolatedModules.verbatimModuleSyntax.allowSyntheticDefaultImports.esModuleInterop.preserveSymlinks.forceConsistentCasingInFileNames.strict.strictBindCallApply.strictFunctionTypes.strictNullChecks.strictPropertyInitialization.allowUnreachableCode.allowUnusedLabels.alwaysStrict.exactOptionalPropertyTypes.noFallthroughCasesInSwitch.noImplicitAny.noImplicitOverride.noImplicitReturns.noImplicitThis.noPropertyAccessFromIndexSignature.noUncheckedIndexedAccess.noUnusedLocals.noUnusedParameters.useUnknownInCatchVariables.skipDefaultLibCheck.skipLibCheck`.split(`.`),pathPattern:`^compilerOptions$`}]}},...b[`flat/prettier`].map(e=>({...e,name:`2digits:jsonc/prettier`}))]}const V={languageOptions:{parser:x},plugins:{jsonc:ie}};function H(e){return Object.fromEntries(e.flatMap(({rules:e})=>Object.entries(e??{})))}const U=[P];function ke(){return[{name:`2digits:markdown/setup`,plugins:{markdown:S}},{name:`2digits:markdown/processor`,files:U,language:`markdown/gfm`,ignores:[`**/*.md/*.md`],processor:C([S.processors.markdown,w])},{name:`2digits:markdown/parser`,files:U,language:`markdown/gfm`,languageOptions:{parser:je}},{name:`2digits:markdown/rules`,files:U,language:`markdown/gfm`,rules:{"markdown/fenced-code-language":`error`,"markdown/heading-increment":`error`,"markdown/no-empty-links":`error`,"markdown/no-invalid-label-refs":`error`,"markdown/no-missing-label-refs":`error`}}]}async function Ae(){let e=await B(import(`typescript-eslint`)),t=await B(import(`@eslint-react/eslint-plugin`)),r=n({...e.configs.disableTypeChecked.rules,...t.configs[`disable-type-checked`].rules},z);return[{name:`2digits:markdown/disables`,files:[F],languageOptions:{parser:e.parser,parserOptions:{project:!1,projectService:!1,ecmaFeatures:{impliedStrict:!0}}},rules:{...r,"no-alert":`off`,"no-console":`off`,"no-labels":`off`,"no-lone-blocks":`off`,"no-restricted-syntax":`off`,"no-undef":`off`,"no-unused-expressions":`off`,"no-unused-labels":`off`,"no-unused-vars":`off`,"node/prefer-global/process":`off`,"ts/consistent-type-imports":`off`,"ts/explicit-function-return-type":`off`,"ts/no-namespace":`off`,"ts/no-redeclare":`off`,"ts/no-require-imports":`off`,"ts/no-unused-expressions":`off`,"ts/no-unused-vars":`off`,"ts/no-use-before-define":`off`,"unicode-bom":`off`}}]}const je={meta:{name:`parser-plain`},parseForESLint:e=>({ast:{body:[],comments:[],loc:{end:e.length,start:0},range:[0,e.length],tokens:[],type:`Program`},scopeManager:null,services:{isPlain:!0},visitorKeys:{Program:[]}})};async function Me(e={}){let{files:t=[j,M],overrides:r={},parserOptions:i}=e,[a,o]=await Promise.all([B(import(`@next/eslint-plugin-next`)),B(import(`@typescript-eslint/parser`))]),s=n({...a.configs.recommended.rules,...a.configs[`core-web-vitals`].rules},z);return[{name:`2digits:next/setup`,plugins:{next:h(a)}},{name:`2digits:next/rules`,files:t,languageOptions:{parser:o,parserOptions:{ecmaFeatures:{jsx:!0},projectService:!0,...i},sourceType:`module`},rules:{...s,"next/no-html-link-for-pages":`off`,...r}},{files:[`**/middleware.ts`,`**/proxy.ts`],name:`2digits:next/proxy`,rules:{"unicorn/prefer-string-raw":`off`}}]}var Ne={node:`24.21.0`};function Pe(){return[{files:[A],name:`2digits:node`,settings:{node:{version:Ne.node}},plugins:{node:T},rules:{"node/handle-callback-err":[`error`,`^(err|error)$`],"node/no-deprecated-api":`error`,"node/no-exports-assign":`error`,"node/no-new-require":`error`,"node/no-path-concat":`error`,"node/no-unsupported-features/node-builtins":[`error`,{allowExperimental:!0}],"node/prefer-global/buffer":`error`,"node/prefer-global/console":`error`,"node/prefer-global/process":`error`,"node/prefer-global/text-decoder":`error`,"node/prefer-global/text-encoder":`error`,"node/prefer-global/timers":`error`,"node/prefer-global/url":`error`,"node/prefer-global/url-search-params":`error`,"node/prefer-import/assert-strict":`error`,"node/prefer-process-get-builtin-module":`error`,"node/process-exit-as-throw":`error`}}]}async function Fe(){let e=await B(import(`eslint-plugin-pnpm`));return[{name:`2digits:pnpm/package-json`,files:[`package.json`,`**/package.json`],languageOptions:{parser:x},plugins:{pnpm:e},rules:{"pnpm/json-enforce-catalog":`error`,"pnpm/json-prefer-workspace-settings":`error`,"pnpm/json-valid-catalog":`error`}},{name:`2digits:pnpm/pnpm-workspace-yaml`,files:[`pnpm-workspace.yaml`],languageOptions:{parser:await B(import(`yaml-eslint-parser`))},plugins:{pnpm:e},rules:{"pnpm/yaml-blank-lines":`error`,"pnpm/yaml-enforce-settings":[`error`,{autofix:!0,settings:{catalogMode:`strict`,savePrefix:``,preferWorkspacePackages:!0,cleanupUnusedCatalogs:!0,verifyDepsBeforeRun:`warn`}}],"pnpm/yaml-no-duplicate-catalog-item":[`error`,{checkDuplicates:`exact-version`}],"pnpm/yaml-no-unused-catalog-item":`error`,"pnpm/yaml-valid-packages":`error`}}]}async function Ie(){let[e,t]=await Promise.all([B(import(`eslint-config-prettier`)),B(import(`@stylistic/eslint-plugin`))]);return[{name:`2digits:prettier`,plugins:{stylistic:t},rules:{...e.rules,"tailwindcss/classnames-order":`off`,"stylistic/jsx-newline":[`error`,{prevent:!1}]}}]}const Le=/* @__PURE__ */ new Set([E.ArrowFunctionExpression,E.FunctionDeclaration,E.FunctionExpression]);function Re(){return ze}function ze(e,{ast:t,is:n}){let{sourceCode:r}=e;return r.text.includes(`useCallback`)?{VariableDeclarator(i){let{id:a,init:o}=i;if(a.type!==E.Identifier||!n.useCallbackCall(o))return;let[s,...c]=r.getDeclaredVariables(i);if(!s||c.length>0)return;let l=Be(r,(e,n)=>t.findParent(e,n)??void 0,o,a.name,n.useEffectLikeCall),{block:u}=r.getScope(o);if(!Ue(u))return;let{arguments:d}=o,[f,p]=d;if(!f||!p)return;if(!He(p)){G(e,l);return}let m=Ve(f);if(m){if(!W(r.getScope(m)).flatMap(e=>e.references).some(e=>e.resolved?.scope.block===u)){e.report({message:`An 'useCallback' with empty deps and no references to the component scope may be unnecessary.`,node:i});return}G(e,l)}}}:{}}function Be(e,t,n,r,i){if(!/use\w*Effect/u.test(e.text))return;let a=(e.getDeclaredVariables(n.parent)[0]?.references??[]).filter(e=>!e.init);if(a.length===0)return;let o=/* @__PURE__ */ new Set;for(let e of a){let n=t(e.identifier,i);if(!n||o.add(n).size>1)return}return{message:`${r} is only used inside 1 useEffect, which may be unnecessary. You can move the computation into useEffect directly and merge the dependency arrays.`,node:n}}function Ve(e){if(e.type===E.ArrowFunctionExpression||e.type===E.FunctionExpression)return e.body.type===E.ArrowFunctionExpression?e.body:e}function W(e){let t=[e];for(let n of e.childScopes)t.push(...W(n));return t}function He(e){return e.type===E.ArrayExpression&&e.elements.length===0}function Ue(e){return Le.has(e.type)}function G(e,t){t&&e.report(t)}const We=/* @__PURE__ */ new Set([E.ArrowFunctionExpression,E.FunctionDeclaration,E.FunctionExpression]);function Ge(){return Ke}function Ke(e,{ast:t,is:n}){let{sourceCode:r}=e;return r.text.includes(`useMemo`)?{VariableDeclarator(i){let{id:a,init:o}=i;if(a.type!==E.Identifier||!n.useMemoCall(o))return;let[s,...c]=r.getDeclaredVariables(i);if(s===void 0||c.length>0)return;let l=qe(r,(e,n)=>t.findParent(e,n)??void 0,o,a.name,n.useEffectLikeCall),{block:u}=r.getScope(o);if(!Xe(u))return;let{arguments:d}=o,[f,p]=d;if(f===void 0||p===void 0)return;if(!Ye(p)){q(e,l);return}let m=Je(f);if(m!==void 0){if(!K(r.getScope(m)).flatMap(e=>e.references).some(e=>e.resolved?.scope.block===u)){e.report({message:`An 'useMemo' with empty deps and no references to the component scope may be unnecessary.`,node:i});return}q(e,l)}}}:{}}function qe(e,t,n,r,i){if(!/use\w*Effect/u.test(e.text))return;let a=(e.getDeclaredVariables(n.parent)[0]?.references??[]).filter(e=>!e.init);if(a.length===0)return;let o=/* @__PURE__ */ new Set;for(let e of a){let n=t(e.identifier,i);if(!n||o.add(n).size>1)return}return{message:`${r} is only used inside 1 useEffect, which may be unnecessary. You can move the computation into useEffect directly and merge the dependency arrays.`,node:n}}function Je(e){if(e.type===E.ArrowFunctionExpression||e.type===E.FunctionExpression)return e.body.type===E.ArrowFunctionExpression?e.body:e}function K(e){let t=[e];for(let n of e.childScopes)t.push(...K(n));return t}function Ye(e){return e.type===E.ArrayExpression&&e.elements.length===0}function Xe(e){return We.has(e.type)}function q(e,t){t&&e.report(t)}function Ze(){return Qe}function Qe(e,{collect:t}){let{query:n,visitor:r}=t.components(e);function i(t){for(let{node:r}of n.all(t)){let{params:t}=r,[n]=t;if(n?.type!==E.Identifier)continue;let i=e.sourceCode.getScope(r).variables.find(e=>e.name===n.name)?.references??[];for(let t of i){let{identifier:n}=t,{parent:r}=n;r.type===E.MemberExpression&&e.report({message:`Use destructuring assignment for component props.`,node:r})}}}return oe(r,{"Program:exit":i})}function $e(){return et}function et(e,{settings:t}){return{ImportDeclaration(n){if(n.source.value!==t.importSource)return;let r=n.specifiers.find(e=>e.type===E.ImportDefaultSpecifier);r!==void 0&&e.report({fix(r){let i=e.sourceCode.getText(n),a=i.endsWith(`;`)?`;`:``,o=n.source.raw.at(0)??`'`,s=`import${n.importKind===`type`?` type`:``}`,c=`${o}${t.importSource}${o}`;if(n.specifiers.length===1)return r.remove(n);let l=i.slice(i.indexOf(`{`),i.indexOf(`}`)+1);return r.replaceText(n,`${s} ${l} from ${c}${a}`)},message:`Prefer importing React as 'import * as React from "${t.importSource}"';`,node:n.specifiers.length>1?r:n})}}}async function tt(e={}){let{files:t=[j,M],overrides:r={},parserOptions:i,tsconfigRootDir:a,reactCompiler:o=!0}=e,[s,c,l,u]=await Promise.all([B(import(`@eslint-react/eslint-plugin`)),B(import(`@typescript-eslint/parser`)),o?B(import(`eslint-plugin-react-compiler`)):Promise.resolve(void 0),B(import(`@stylistic/eslint-plugin`))]),{configs:d}=s,{all:{plugins:f}}=d,p=f?.[`@eslint-react`]??{},m=n({...d[`disable-conflict-eslint-plugin-react`].rules,...d[`disable-conflict-eslint-plugin-react-hooks`].rules,...d[`strict-type-checked`].rules},z);return[{name:`2digits:react/setup`,plugins:{stylistic:u,"react-extra":{...p,rules:{...p.rules,...nt.rules}},...o?{"react-compiler":l}:{}},settings:{react:{version:`detect`}}},{name:`2digits:react/rules`,files:t,languageOptions:{parser:c,parserOptions:{ecmaFeatures:{jsx:!0},tsconfigRootDir:a,projectService:!0,...i},sourceType:`module`},rules:{...m,...o?{"react-compiler/react-compiler":`error`}:{},"react-extra/exhaustive-deps":`error`,"react-extra/globals":`error`,"react-extra/purity":`error`,"react-extra/no-unused-class-component-members":`error`,"react-extra/no-unnecessary-use-callback":`error`,"react-extra/no-unnecessary-use-prefix":`error`,"react-extra/no-unnecessary-use-memo":`error`,"react-extra/set-state-in-effect":`error`,"react-extra/no-unused-state":`error`,"react-extra/use-state":`error`,"react-extra/no-unstable-context-value":`error`,"react-extra/no-unstable-default-props":`error`,"react-extra/no-unused-props":`error`,"react-extra/no-context-provider":`error`,"react-extra/no-forward-ref":`error`,"react-extra/no-use-context":`error`,"react-extra/immutability":`error`,"react-extra/refs":`error`,"react-extra/no-duplicate-key":`error`,"react-extra/static-components":`error`,"react-extra/dom-no-missing-button-type":`error`,"react-extra/dom-no-missing-iframe-sandbox":`error`,"react-extra/dom-no-unsafe-target-blank":`error`,"react-extra/web-api-no-leaked-fetch":`error`,"react-extra/naming-convention-context-name":`error`,"react-extra/naming-convention-id-name":`error`,"react-extra/naming-convention-ref-name":`error`,"react-extra/prefer-destructuring-assignment":`error`,"react-extra/prefer-namespace-import":`error`,"react-extra/jsx-no-leaked-dollar":`error`,"react-extra/jsx-no-useless-fragment":`off`,"stylistic/jsx-curly-newline":`off`,"stylistic/jsx-newline":[`error`,{prevent:!1}],"stylistic/jsx-self-closing-comp":`error`,...r}}]}const nt=ae().use(J(Re,`noUnnecessaryUseCallback`)).use(J(Ge,`noUnnecessaryUseMemo`)).use(J(Ze,`preferDestructuringAssignment`)).use(J($e,`preferNamespaceImport`)).getPlugin();function J(e,t){return Object.defineProperty(e,"name",{value:t}),e}function rt(){return[{files:[A],name:`2digits:regexp`,plugins:{regexp:se},rules:{...ce[`flat/recommended`].rules}}]}function it(){return[{files:[A],name:`2digits:sonar`,plugins:{sonar:le},rules:{"sonar/cognitive-complexity":`error`,"sonar/comma-or-logical-or-case":`error`,"sonar/concise-regex":`error`,"sonar/constructor-for-side-effects":`error`,"sonar/content-length":`error`,"sonar/content-security-policy":`error`,"sonar/cookie-no-httponly":`error`,"sonar/cors":`error`,"sonar/csrf":`error`,"sonar/max-switch-cases":`error`,"sonar/no-all-duplicated-branches":`error`,"sonar/no-collapsible-if":`error`,"sonar/no-collection-size-mischeck":`error`,"sonar/no-duplicate-string":[`error`,{threshold:5}],"sonar/no-duplicated-branches":`error`,"sonar/no-element-overwrite":`error`,"sonar/no-empty-collection":`error`,"sonar/no-extra-arguments":`error`,"sonar/no-for-in-iterable":`error`,"sonar/no-gratuitous-expressions":`error`,"sonar/no-identical-conditions":`error`,"sonar/no-identical-expressions":`error`,"sonar/no-identical-functions":`error`,"sonar/no-ignored-return":`error`,"sonar/no-inverted-boolean-check":`error`,"sonar/no-nested-switch":`error`,"sonar/no-nested-template-literals":`error`,"sonar/no-redundant-boolean":`error`,"sonar/no-same-line-conditional":`error`,"sonar/no-small-switch":`error`,"sonar/no-unused-collection":`error`,"sonar/no-use-of-empty-return-value":`error`,"sonar/no-useless-catch":`error`,"sonar/non-existent-operator":`error`,"sonar/prefer-immediate-return":`error`,"sonar/prefer-object-literal":`error`,"sonar/prefer-single-boolean-return":`error`,"sonar/prefer-while":`error`,"sonar/elseif-without-else":`off`,"sonar/no-redundant-jump":`off`}}]}async function at(e={}){let{files:t=[`**/*.stories.tsx`],overrides:n={},parserOptions:r,storybookDirectory:i=`.storybook`}=e,[a,o]=await Promise.all([B(import(`eslint-plugin-storybook`)),B(import(`@typescript-eslint/parser`))]),s={parser:o,parserOptions:{ecmaFeatures:{jsx:!0},projectService:!0,...r},sourceType:`module`};return[{name:`2digits:storybook/setup`,plugins:{storybook:a}},{name:`2digits:storybook/rules`,files:t,languageOptions:s,rules:{"storybook/await-interactions":`error`,"storybook/context-in-play-function":`error`,"storybook/csf-component":`error`,"storybook/default-exports":`error`,"storybook/hierarchy-separator":`error`,"storybook/meta-inline-properties":`error`,"storybook/no-redundant-story-name":`error`,"storybook/no-stories-of":`error`,"storybook/no-title-property-in-meta":`error`,"storybook/no-uninstalled-addons":`error`,"storybook/prefer-pascal-case":`error`,"storybook/story-exports":`error`,"storybook/use-storybook-expect":`error`,"storybook/use-storybook-testing-library":`error`,"storybook/meta-satisfies-type":`error`,"storybook/no-renderer-packages":`error`,...n}},{name:`2digits:storybook/disables`,files:t,rules:{"sonar/no-duplicate-string":`off`}},{name:`2digits:storybook/config`,files:[`${i}/main.@(js|cjs|mjs|ts)`],languageOptions:s,rules:{"storybook/no-uninstalled-addons":`error`}}]}async function ot(e){let t=D.join(D.dirname(e),`node_modules`,`.cache`,`@2digits`,`eslint-config`),n=D.join(t,`tailwind.css`);return await ue(t,{recursive:!0}),await de(n,`@import 'tailwindcss';\n@config ${JSON.stringify(e)};\n`),n}async function st(e={}){let{overrides:t={}}=e,[n,{tailwindFunctions:r},i]=await Promise.all([B(import(`eslint-plugin-tailwindcss`)),B(import(`@2digits/constants`)),a().catch(()=>void 0)]),{cssConfigPath:o}=e;if(!o){let e=O.file(`tailwind.config.ts`,{last:i})??O.file(`tailwind.config.js`,{last:i});if(!e)return[];o=await ot(e)}return[{files:[A],name:`2digits:tailwind`,plugins:{tailwindcss:n},settings:{tailwindcss:{functions:r,cssConfigPath:o}},rules:{...n.configs.recommended.rules,...t}}]}async function ct(e={}){let{overrides:t={}}=e,r=await B(import(`@tanstack/eslint-plugin-query`)),i=n(r.configs[`flat/recommended`].at(0)?.rules??{},z);return[{files:[A],name:`2digits:tanstack-query`,plugins:{"tanstack-query":r},rules:{...i,"tanstack-query/prefer-query-options":`error`,...t}}]}async function Y(e={}){let{overrides:t={}}=e,r=await B(import(`@tanstack/eslint-plugin-router`)),i=n(r.configs[`flat/recommended`].at(0)?.rules??{},z);return[{files:[A],name:`2digits:tanstack-router`,plugins:{"tanstack-router":r},rules:{...i,"ts/only-throw-error":[`error`,{allow:[{from:`package`,package:`@tanstack/router-core`,name:`Redirect`}]}],...t}}]}const lt=Object.fromEntries(pe.standard.flatMap(({rules:e})=>Object.entries({...e})));function ut(){return[{name:`2digits:toml`,files:[`**/*.toml`],language:`toml/toml`,plugins:{toml:fe},rules:{...lt,"toml/array-bracket-spacing":[`error`,`never`],"toml/array-element-newline":[`error`,`consistent`],"toml/indent":[`error`,2,{keyValuePairs:0,subTables:0}]}},{name:`2digits:toml:mise`,files:[`**/{mise,.mise}?(.*).toml`],rules:{"toml/spaced-comment":[`off`]}}]}async function dt(e={}){let{overrides:t={}}=e,n=await B(import(`eslint-plugin-turbo`));return[{files:[A],name:`2digits:turbo`,plugins:{turbo:n},rules:{"turbo/no-undeclared-env-vars":`error`,...t}}]}async function ft(e={}){let{overrides:n={},parserOptions:r={}}=e,[{plugin:i,configs:a,parser:o},s]=await Promise.all([B(import(`typescript-eslint`)),B(import(`@2digits/eslint-plugin`))]),c=t(a.strictTypeChecked,z),l=Object.fromEntries(c.flatMap(({rules:e})=>Object.entries(e??{})));return[{name:`2digits:typescript/setup`,plugins:{ts:i,"@2digits":s}},{name:`2digits:typescript/rules`,files:[A],languageOptions:{parser:o,parserOptions:{tsconfigRootDir:process.cwd(),projectService:!0,onUnsupportedTypeScriptVersion:`ignore`,...r},sourceType:`module`},rules:{...l,"ts/array-type":[`error`,{default:`generic`,readonly:`generic`}],"ts/restrict-template-expressions":[`error`,{allowNumber:!0}],"ts/ban-ts-comment":[`error`,{"ts-ignore":`allow-with-description`}],"ts/consistent-type-exports":[`error`],"ts/consistent-type-imports":[`error`,{prefer:`type-imports`,disallowTypeAnnotations:!1,fixStyle:`inline-type-imports`}],"ts/no-empty-object-type":[`error`,{allowInterfaces:`with-single-extends`,allowObjectTypes:`never`}],"ts/no-explicit-any":[`error`],"ts/no-import-type-side-effects":[`error`],"ts/no-misused-promises":`off`,"ts/no-confusing-void-expression":`off`,"ts/no-unused-vars":[`error`,{ignoreRestSiblings:!0,argsIgnorePattern:`^_`,varsIgnorePattern:`^_`}],"ts/unbound-method":`off`,"ts/no-unnecessary-type-assertion":`off`,"ts/method-signature-style":[`error`,`property`],"ts/switch-exhaustiveness-check":`off`,"ts/prefer-optional-chain":`error`,...s.configs.recommended.rules,...n}},{name:`2digits:typescript/disables/dts`,files:[`**/*.d.ts`],rules:{"unicorn/no-abusive-eslint-disable":`off`,"no-duplicate-imports":`off`,"no-restricted-syntax":`off`,"ts/no-unused-vars":`off`}},{name:`2digits:typescript/disables/test`,files:[`**/*.{test,spec}.ts?(x)`],rules:{"no-unused-expressions":`off`}},{name:`2digits:typescript/disables/cjs`,files:[`**/*.js`,`**/*.cjs`,`**/*.cts`],rules:{"ts/no-require-imports":`off`}}]}function pt(){return[{files:[A],name:`2digits:unicorn`,plugins:{unicorn:k},rules:{...k.configs.recommended.rules,"unicorn/consistent-boolean-name":`off`,"unicorn/consistent-conditional-object-spread":`off`,"unicorn/filename-case":`off`,"unicorn/max-nested-calls":`off`,"unicorn/name-replacements":`off`,"unicorn/no-array-callback-reference":`off`,"unicorn/no-asterisk-prefix-in-documentation-comments":`off`,"unicorn/no-break-in-nested-loop":`off`,"unicorn/no-computed-property-existence-check":`off`,"unicorn/no-declarations-before-early-exit":`off`,"unicorn/no-nested-ternary":`off`,"unicorn/no-non-function-verb-prefix":`off`,"unicorn/no-repeated-call-wrappers":`error`,"unicorn/no-top-level-side-effects":`off`,"unicorn/no-useless-undefined":[`error`,{checkArguments:!1,checkArrowFunctionBody:!1}],"unicorn/prefer-await":`off`,"unicorn/prefer-module":`off`,"unicorn/prefer-number-coercion":`off`,"unicorn/prefer-ternary":`off`,"unicorn/prefer-top-level-await":`off`,"unicorn/require-array-sort-compare":`off`,"unicorn/single-line-block-comment-style":`off`}}]}async function mt(e={}){let{files:t=[`**/*.{test,spec}.ts?(x)`],overrides:n={},typecheck:r=!0,vitestImports:i}=e,a=await B(import(`@vitest/eslint-plugin`));return[{name:`2digits:vitest/setup`,plugins:{vitest:a}},{name:`2digits:vitest/rules`,files:t,languageOptions:{globals:a.environments.env.globals},settings:{vitest:{typecheck:r,...i?{vitestImports:i}:{}}},rules:{"vitest/consistent-each-for":[`error`,{describe:`for`,suite:`for`,it:`for`,test:`for`}],"vitest/consistent-test-filename":[`error`,{pattern:String.raw`.*\.spec\.[tj]sx?$`,allTestPattern:String.raw`.*\.(test|spec)\.[tj]sx?$`}],"vitest/consistent-test-it":[`error`,{fn:`it`,withinDescribe:`it`}],"vitest/consistent-vitest-vi":[`error`,{fn:`vi`}],"vitest/expect-expect":`error`,"vitest/hoisted-apis-on-top":`error`,"vitest/max-expects":`error`,"vitest/max-nested-describe":`error`,"vitest/no-alias-methods":`error`,"vitest/no-commented-out-tests":`error`,"vitest/no-conditional-expect":`error`,"vitest/no-conditional-in-test":`error`,"vitest/no-conditional-tests":`error`,"vitest/no-disabled-tests":`error`,"vitest/no-duplicate-hooks":`error`,"vitest/no-focused-tests":`error`,"vitest/no-identical-title":`error`,"vitest/no-import-node-test":`error`,"vitest/no-interpolation-in-snapshots":`error`,"vitest/no-mocks-import":`error`,"vitest/no-standalone-expect":`error`,"vitest/no-test-prefixes":`error`,"vitest/no-test-return-statement":`error`,"vitest/no-unneeded-async-expect-function":`error`,"vitest/prefer-called-exactly-once-with":`error`,"vitest/prefer-called-once":`error`,"vitest/prefer-called-with":`error`,"vitest/prefer-comparison-matcher":`error`,"vitest/prefer-describe-function-title":`error`,"vitest/prefer-each":`error`,"vitest/prefer-equality-matcher":`error`,"vitest/prefer-expect-resolves":`error`,"vitest/prefer-expect-type-of":`error`,"vitest/prefer-hooks-in-order":`error`,"vitest/prefer-hooks-on-top":`error`,"vitest/prefer-import-in-mock":`error`,"vitest/prefer-lowercase-title":`error`,"vitest/prefer-mock-promise-shorthand":`error`,"vitest/prefer-mock-return-shorthand":`error`,"vitest/prefer-snapshot-hint":[`error`,`always`],"vitest/prefer-spy-on":`error`,"vitest/prefer-strict-equal":`error`,"vitest/prefer-to-be":`error`,"vitest/prefer-to-be-falsy":`error`,"vitest/prefer-to-be-object":`error`,"vitest/prefer-to-be-truthy":`error`,"vitest/prefer-to-contain":`error`,"vitest/prefer-to-have-been-called-times":`error`,"vitest/prefer-to-have-length":`error`,"vitest/prefer-todo":`error`,"vitest/require-awaited-expect-poll":`error`,"vitest/require-local-test-context-for-concurrent-snapshots":`error`,"vitest/require-mock-type-parameters":`error`,"vitest/require-to-throw-message":`error`,"vitest/require-top-level-describe":`error`,"vitest/valid-describe-callback":`error`,"vitest/valid-expect":[`error`,{maxArgs:2}],"vitest/valid-expect-in-promise":`error`,"vitest/valid-title":`error`,"vitest/warn-todo":`error`,...n}}]}function ht(){return[{name:`2digits:yaml/setup`,plugins:{yml:me}},{name:`2digits:yaml/base`,...X,rules:{"no-irregular-whitespace":`off`,"no-unused-vars":`off`}},{name:`2digits:yaml/recommended`,...X,rules:{"yml/no-empty-document":`error`,"yml/no-empty-key":`error`,"yml/no-empty-mapping-value":`error`,"yml/no-empty-sequence-entry":`error`,"yml/no-irregular-whitespace":`error`,"yml/no-tab-indent":`error`,"yml/vue-custom-block/no-parsing-error":`error`}},{name:`2digits:yaml/standard`,...X,rules:{"yml/block-mapping":`error`,"yml/block-sequence":`error`,"yml/plain-scalar":`error`,"yml/spaced-comment":`error`}},{name:`2digits:yaml/prettier`,...X,rules:{"yml/block-mapping-colon-indicator-newline":`off`,"yml/block-mapping-question-indicator-newline":`off`,"yml/block-sequence-hyphen-indicator-newline":`off`,"yml/flow-mapping-curly-newline":`off`,"yml/flow-mapping-curly-spacing":`off`,"yml/flow-sequence-bracket-newline":`off`,"yml/flow-sequence-bracket-spacing":`off`,"yml/indent":`off`,"yml/key-spacing":`off`,"yml/no-multiple-empty-lines":`off`,"yml/no-trailing-zeros":`off`,"yml/quotes":`off`}}]}const X={files:[`**/*.y?(a)ml`],languageOptions:{parser:g}};async function gt(e={}){let{overrides:t={}}=e,n=await B(import(`eslint-plugin-zod`));return[{files:[A],name:`2digits:zod`,plugins:{zod:n},rules:{"zod/array-style":[`error`,{style:`function`}],"zod/consistent-import":[`error`,{syntax:`namespace`}],"zod/consistent-schema-output-type-style":[`error`,{style:`infer`}],"zod/consistent-schema-var-name":[`warn`,{after:`Schema`}],"zod/no-any-schema":`error`,"zod/no-coerce-boolean":`error`,"zod/no-conflicting-checks":[`error`,{checkConfusingCases:!0,checkImpossibleCases:!0,checkInapplicableChecks:!0}],"zod/no-duplicate-schema-methods":`error`,"zod/no-dynamic-schema-value":`error`,"zod/no-empty-custom-schema":`error`,"zod/no-function-scoped-schema":`error`,"zod/no-native-enum":`error`,"zod/no-number-schema-with-finite":`error`,"zod/no-number-schema-with-int":`error`,"zod/no-number-schema-with-is-finite":`error`,"zod/no-number-schema-with-is-int":`error`,"zod/no-number-schema-with-safe":`error`,"zod/no-number-schema-with-step":`error`,"zod/no-optional-and-default-together":[`warn`,{preferredMethod:`default`}],"zod/no-promise-schema":`error`,"zod/no-schema-with-is-nullable":`error`,"zod/no-schema-with-is-optional":`error`,"zod/no-throw-in-refine":`error`,"zod/no-transform-in-record-key":`error`,"zod/no-unnecessary-readonly":`error`,"zod/prefer-enum-over-literal-union":`error`,"zod/prefer-loose-object":`error`,"zod/prefer-map-set-size-over-min-max":`error`,"zod/prefer-meta":`error`,"zod/prefer-meta-last":`error`,"zod/prefer-nullish":`error`,"zod/prefer-strict-object":`error`,"zod/prefer-string-length-over-min-max":`error`,"zod/prefer-string-schema-with-trim":`error`,"zod/prefer-top-level-string-formats":`error`,"zod/prefer-trim-before-string-length-checks":`error`,"zod/prefer-tuple-over-array-length":`error`,"zod/prefer-validate":`error`,"zod/require-brand-type-parameter":`error`,"zod/require-error-message":`error`,"zod/schema-error-property-style":[`error`,{selector:`Literal,TemplateLiteral`,example:`"This is an error message"`}],...t}}]}function Z(e,t){return typeof e==`boolean`?e:e?.enable??t??!1}function Q(e){if(typeof e==`boolean`||e===void 0)return{};let{enable:t,...n}=e;return n}async function $(t={},...n){let r;t.pnpm===void 0&&(r=a());let o=new e(Te(t.ignores),Ee(t.js),R(),Pe(),_e(),De(),pt(),it(),rt(),L(),Oe(),ut(),ht(),ke(),Ce());Z(t.css)&&(o=o.append(ye(Q(t.css)))),Z(t.depend,!0)&&(o=o.append(be())),Z(t.turbo,i(`turbo`))&&(o=o.append(dt(Q(t.turbo))));let{overrides:s,...c}=Q(t.ts);return Z(t.ts,i(`typescript`))&&(o=o.append(ft(Q(t.ts)))),Z(t.react,i(`react`))&&(o=o.append(tt({...Q(t.react),...c}))),Z(t.next,i(`next`))&&(o=o.append(Me({...Q(t.next),...c}))),Z(t.storybook,he.some(e=>i(e)))&&(o=o.append(at({...Q(t.storybook),...c}))),Z(t.vitest,i(`vitest`))&&(o=o.append(mt(Q(t.vitest)))),Z(t.tailwind,i(`tailwindcss`))&&(o=o.append(st(Q(t.tailwind)))),Z(t.tanstackQuery,i(`react-query`)||i(`@tanstack/react-query`)||i(`@tanstack/react-query-devtools`))&&(o=o.append(ct(Q(t.tanstackQuery)))),Z(t.tanstackRouter,i(`@tanstack/react-router`))&&(o=o.append(Y(Q(t.tanstackRouter)))),Z(t.drizzle,i(`drizzle-kit`)||i(`drizzle-orm`))&&(o=o.append(xe(Q(t.drizzle)))),Z(t.zod,i(`zod`))&&(o=o.append(gt(Q(t.zod)))),Z(t.graphql,i(`graphql`))&&(o=o.append(we(Q(t.graphql)))),Z(t.pnpm,!!await r)&&(o=o.append(Fe())),o=o.append(...n),i(`prettier`)&&(o=o.append(Ie())),o=o.append(Ae()),o.renamePlugins(z).toConfigs()}export{$ as default,$ as twoDigits};
|
|
1
|
+
import{FlatConfigComposer as e,renamePluginsInConfigs as t,renamePluginsInRules as n}from"eslint-flat-config-utils";import{getPackageInfo as r,isPackageExists as i}from"local-pkg";import{findWorkspaceDir as a}from"pkg-types";import o from"eslint-plugin-antfu";import s,{configs as c}from"eslint-plugin-de-morgan";import l from"@eslint-community/eslint-plugin-eslint-comments";import u from"@eslint-community/eslint-plugin-eslint-comments/configs";import d from"@eslint/css";import{tailwind3 as f,tailwind4 as p}from"tailwind-csstree";import m from"eslint-plugin-depend";import{fixupPluginRules as h}from"@eslint/compat";import ee,{configs as te}from"eslint-plugin-github-action";import*as g from"yaml-eslint-parser";import _ from"eslint-config-flat-gitignore";import v from"@eslint/js";import ne from"@stylistic/eslint-plugin";import y from"globals";import re from"eslint-plugin-jsdoc";import ie,{configs as b}from"eslint-plugin-jsonc";import*as x from"jsonc-eslint-parser";import S from"@eslint/markdown";import{mergeProcessors as C,processorPassThrough as w}from"eslint-merge-processors";import T from"eslint-plugin-n";import ae,{merge as oe}from"@eslint-react/kit";import{AST_NODE_TYPES as E}from"@typescript-eslint/utils";import se,{configs as ce}from"eslint-plugin-regexp";import le from"eslint-plugin-sonarjs";import{mkdir as ue,writeFile as de}from"node:fs/promises";import D from"node:path";import*as O from"empathic/find";import fe,{configs as pe}from"eslint-plugin-toml";import k from"eslint-plugin-unicorn";import me from"eslint-plugin-yml";const A=`**/*.?([cm])[jt]s?(x)`,j=`**/*.?([cm])ts`,M=`**/*.?([cm])tsx`,N=`.github/workflows/*.y?(a)ml`,P=`**/*.md`,F=`${P}/${A}`,I=/* @__PURE__ */ `**/node_modules,**/dist,**/package-lock.json,**/yarn.lock,**/pnpm-lock.yaml,**/bun.lockb,**/bun.lock,**/output,**/coverage,**/temp,**/.temp,**/tmp,**/.tmp,**/.history,**/.vitepress/cache,**/.nuxt,**/.next,**/.vercel,**/.changeset,**/.idea,**/.cache,**/.output,**/.vite-inspect,**/.yarn,**/CHANGELOG*.md,**/*.min.*,**/LICENSE*,**/__snapshots__,**/auto-import?(s).d.ts,**/components.d.ts`.split(`,`);function L(){return[{files:[A],name:`2digits:antfu`,plugins:{antfu:o},rules:{"antfu/top-level-function":`error`}}]}function R(){return[{files:[A],name:`2digits:boolean`,plugins:{boolean:s},rules:{...c.recommended.rules}}]}const z={"@next/next":`next`,"@eslint-react":`react-extra`,"react-hooks":`react-hooks`,"react-compiler":`react-compiler`,"@stylistic/eslint-plugin":`stylistic`,"@typescript-eslint":`ts`,vitest:`vitest`,node:`node`,"@eslint-community/eslint-comments":`comments`,storybook:`storybook`,turbo:`turbo`,jsdoc:`jsdoc`,unicorn:`unicorn`,tailwindcss:`tailwindcss`,"@tanstack/query":`tanstack-query`,"@tanstack/router":`tanstack-router`,"@2digits":`@2digits`,"@graphql-eslint":`gql`,sonarjs:`sonar`,drizzle:`drizzle`,"de-morgan":`boolean`,antfu:`antfu`,css:`css`,depend:`depend`,"github-action":`github-action`,jsonc:`jsonc`,markdown:`markdown`,pnpm:`pnpm`,regexp:`regexp`,yml:`yml`,zod:`zod`,toml:`toml`},he=[`storybook`,`@storybook/nextjs`,`@storybook/nextjs-vite`,`@storybook/react-vite`,`@storybook/react-webpack5`,`@storybook/react-native-web-vite`],ge=n(u.recommended.rules,z);function _e(){return[{files:[A],name:`2digits:comments`,plugins:{comments:l},rules:{...ge,"comments/disable-enable-pair":[`error`,{allowWholeFile:!0}]}}]}async function ve(e){if(e?.customSyntax){let{customSyntax:t}=e;return t}if(e?.tailwindMajor===3)return f;if(e?.tailwindMajor===4)return p;try{let[e=`0`]=((await r(`tailwindcss`))?.version??``).split(`.`,1),t=Number.parseInt(e,10);if(Number.isFinite(t)&&t>=4)return p}catch{}return f}async function ye(e={}){let t=await ve(e);return[{name:`2digits:css`,files:[`**/*.css`],language:`css/css`,plugins:{css:d},languageOptions:{tolerant:!0,customSyntax:t},rules:{...d.configs.recommended.rules,...e.overrides}}]}function be(){return[{files:[A],name:`2digits:depend`,plugins:{depend:m},rules:{"depend/ban-dependencies":`warn`}}]}async function B(e){let t=await e;return t.default??t}async function xe(e={}){let{overrides:t={},drizzleObjectName:n=[`drizzle`,`db`]}=e,r=await B(import(`eslint-plugin-drizzle`));return[{files:[A],name:`2digits:drizzle`,plugins:{drizzle:h(r)},rules:{"drizzle/enforce-update-with-where":[`error`,{drizzleObjectName:n}],"drizzle/enforce-delete-with-where":[`error`,{drizzleObjectName:n}],...t}}]}const Se=Object.fromEntries(te.recommended.flatMap(({rules:e})=>Object.entries({...e})));function Ce(){return[{name:`2digits:github-actions/setup`,plugins:{"github-action":ee}},{name:`2digits:github-actions/recommended`,files:[N],ignores:[`!**/${N}`],languageOptions:{parser:g},rules:{...Se,"github-action/no-top-level-permissions":[`error`,{allowEmpty:!0}]}}]}async function we(e={}){let{overrides:t={},files:r=[`**/*.graphql`,`**/*.gql`]}=e,[i,a]=await Promise.all([B(import(`@graphql-eslint/eslint-plugin`)),import(`graphql-config`).then(({loadConfig:e})=>e({throwOnEmpty:!1,throwOnMissing:!1}).then(e=>e?.getDefault().schema))]),{configs:o}=i,{"flat/operations-recommended":s}=o,{rules:c}=s,l={};if(a)l=c;else for(let e of Object.keys(c)){let t=e.replace(`@graphql-eslint/`,``);t in i.rules&&(i.rules[t].meta.docs?.requiresSchema||i.rules[t].meta.docs?.requiresSiblings)||(l[e]=c[e])}let u=n(l,z);return[{name:`2digits:graphql`,plugins:{gql:i},languageOptions:{parser:i.parser},files:r,rules:{...u,"gql/naming-convention":[`error`,{allowLeadingUnderscore:!0}],...t}}]}function Te(e={}){let{gitIgnore:t,ignores:n=[]}=e;return[{ignores:[I,n].flat(),name:`2digits:ignores`},_({strict:!1,...t,name:`2digits:gitignore`})]}function Ee(e={}){let{overrides:t={}}=e;return[{files:[A],name:`2digits:javascript`,plugins:{stylistic:ne},languageOptions:{ecmaVersion:2022,globals:{...y.browser,...y.es2021,...y.node,document:`readonly`,navigator:`readonly`,window:`readonly`},parserOptions:{ecmaFeatures:{jsx:!0},ecmaVersion:2022,sourceType:`module`},sourceType:`module`},linterOptions:{reportUnusedDisableDirectives:!0,reportUnusedInlineConfigs:`error`},rules:{...v.configs.recommended.rules,"accessor-pairs":[`error`,{enforceForClassMembers:!0,setWithoutGet:!0}],"array-callback-return":`error`,"block-scoped-var":`error`,"constructor-super":`error`,"default-case-last":`error`,"dot-notation":[`error`,{allowKeywords:!0}],eqeqeq:[`error`,`smart`],"new-cap":[`error`,{capIsNew:!1,newIsCap:!0,properties:!0}],"no-alert":`error`,"no-array-constructor":`error`,"no-async-promise-executor":`error`,"no-caller":`error`,"no-case-declarations":`error`,"no-class-assign":`error`,"no-compare-neg-zero":`error`,"no-cond-assign":[`error`,`always`],"no-const-assign":`error`,"no-control-regex":`error`,"no-debugger":`error`,"no-delete-var":`error`,"no-dupe-args":`error`,"no-dupe-class-members":`error`,"no-dupe-keys":`error`,"no-duplicate-case":`error`,"no-empty":[`error`,{allowEmptyCatch:!0}],"no-empty-character-class":`error`,"no-empty-pattern":`error`,"no-eval":`error`,"no-ex-assign":`error`,"no-extend-native":`error`,"no-extra-bind":`error`,"no-extra-boolean-cast":`error`,"no-fallthrough":`error`,"no-func-assign":`error`,"no-global-assign":`error`,"no-implied-eval":`error`,"no-import-assign":`error`,"no-invalid-regexp":`error`,"no-irregular-whitespace":`error`,"no-iterator":`error`,"no-labels":[`error`,{allowLoop:!1,allowSwitch:!1}],"no-lone-blocks":`error`,"no-loss-of-precision":`error`,"no-misleading-character-class":`error`,"no-multi-str":`error`,"no-new":`error`,"no-new-func":`error`,"no-new-native-nonconstructor":`error`,"no-new-wrappers":`error`,"no-obj-calls":`error`,"no-octal":`error`,"no-octal-escape":`error`,"no-promise-executor-return":`error`,"no-proto":`error`,"no-prototype-builtins":`error`,"no-redeclare":`off`,"no-regex-spaces":`error`,"no-restricted-globals":[`error`,{message:"Use `globalThis` instead.",name:`global`},{message:"Use `globalThis` instead.",name:`self`}],"no-restricted-properties":[`error`,{message:"Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",property:`__proto__`},{message:"Use `Object.defineProperty` instead.",property:`__defineGetter__`},{message:"Use `Object.defineProperty` instead.",property:`__defineSetter__`},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:`__lookupGetter__`},{message:"Use `Object.getOwnPropertyDescriptor` instead.",property:`__lookupSetter__`}],"no-restricted-syntax":[`error`,`DebuggerStatement`,`LabeledStatement`,`WithStatement`,`TSEnumDeclaration`,`TSExportAssignment`],"no-self-assign":[`error`,{props:!0}],"no-self-compare":`error`,"no-sequences":`error`,"no-shadow-restricted-names":`error`,"no-sparse-arrays":`error`,"no-template-curly-in-string":`error`,"no-this-before-super":`error`,"no-throw-literal":`error`,"no-undef":`error`,"no-undef-init":`error`,"no-unexpected-multiline":`error`,"no-unmodified-loop-condition":`error`,"no-unneeded-ternary":[`error`,{defaultAssignment:!1}],"no-unreachable":`error`,"no-unreachable-loop":`error`,"no-unsafe-finally":`error`,"no-unsafe-negation":`error`,"no-unused-expressions":[`error`,{allowShortCircuit:!0,allowTaggedTemplates:!0,allowTernary:!0}],"no-unused-vars":[`error`,{args:`none`,caughtErrors:`none`,ignoreRestSiblings:!0,vars:`all`}],"no-useless-assignment":`off`,"no-useless-backreference":`error`,"no-useless-call":`error`,"no-useless-catch":`error`,"no-useless-computed-key":`error`,"no-useless-constructor":`error`,"no-useless-rename":`error`,"no-var":`error`,"no-with":`error`,"object-shorthand":[`error`,`always`,{avoidQuotes:!0,ignoreConstructors:!1}],"one-var":[`error`,{initialized:`never`}],"prefer-arrow-callback":[`error`,{allowNamedFunctions:!0,allowUnboundThis:!0}],"prefer-const":[`error`,{destructuring:`all`,ignoreReadBeforeAssign:!0}],"prefer-exponentiation-operator":`error`,"prefer-promise-reject-errors":`error`,"prefer-regex-literals":[`error`,{disallowRedundantWrapping:!0}],"prefer-rest-params":`error`,"prefer-spread":`error`,"prefer-template":`error`,"symbol-description":`error`,"unicode-bom":[`error`,`never`],"use-isnan":[`error`,{enforceForIndexOf:!0,enforceForSwitchCase:!0}],"valid-typeof":[`error`,{requireStringLiterals:!0}],"vars-on-top":`error`,yoda:[`error`,`never`],"stylistic/padding-line-between-statements":[`error`,{blankLine:`always`,prev:[`const`,`let`],next:`*`},{blankLine:`any`,prev:[`const`,`let`],next:[`const`,`let`]},{blankLine:`always`,prev:`*`,next:`return`}],...t}}]}function De(){return[{files:[A],name:`2digits:jsdoc`,plugins:{jsdoc:re},rules:{"jsdoc/check-access":`error`,"jsdoc/check-param-names":`error`,"jsdoc/check-property-names":`error`,"jsdoc/check-tag-names":[`error`,{typed:!0,definedTags:[`effect-codegens`,`effect-diagnostics`,`effect-diagnostics-next-line`,`effect-expect-leaking`,`effect-identifier`,`effect-leakable-service`,`effect-schema-codegenerated`]}],"jsdoc/check-types":`error`,"jsdoc/empty-tags":`error`,"jsdoc/implements-on-classes":`error`,"jsdoc/no-defaults":`error`,"jsdoc/no-multi-asterisks":`error`,"jsdoc/require-param":`error`,"jsdoc/require-param-name":`error`,"jsdoc/require-property":`error`,"jsdoc/require-property-description":`error`,"jsdoc/require-property-name":`error`,"jsdoc/require-returns-check":`error`,"jsdoc/require-returns-description":`error`,"jsdoc/require-yields":`error`,"jsdoc/require-yields-check":`error`}}]}function Oe(){return[...b[`flat/base`].map(e=>({...e,name:`2digits:jsonc/base`})),{name:`2digits:jsonc/json`,files:[`**/*.json`],...V,rules:{...H(b[`flat/recommended-with-json`])}},{name:`2digits:jsonc/jsonc`,files:[`**/*.jsonc`],...V,rules:{...H(b[`flat/recommended-with-jsonc`])}},{name:`2digits:jsonc/json5`,files:[`**/*.json5`],...V,rules:{...H(b[`flat/recommended-with-json5`])}},{name:`2digits:jsonc/package.json`,...V,files:[`**/package.json`],rules:{"jsonc/sort-array-values":[`error`,{order:{type:`asc`},pathPattern:`^files$`}],"jsonc/sort-keys":[`error`,{order:{type:`asc`},pathPattern:`^(?:dev|peer|optional|bundled)?[Dd]ependencies(Meta)?$`},{order:[`types`,`import`,`module`,`require`,`default`],pathPattern:`^exports.*$`}]}},{name:`2digits:jsonc/tsconfig.json`,...V,files:[`**/tsconfig.json`,`**/tsconfig.*.json`,`**/tsconfig-*.json`,`**/jsconfig.json`,`**/jsconfig.*.json`,`**/jsconfig-*.json`],rules:{"jsonc/sort-keys":[`error`,{order:[`$schema`,`extends`,`compilerOptions`,`references`,`files`,`include`,`exclude`],pathPattern:`^$`},{order:/* @__PURE__ */ `incremental.composite.tsBuildInfoFile.disableSourceOfProjectReferenceRedirect.disableSolutionSearching.disableReferencedProjectLoad.target.lib.jsx.experimentalDecorators.emitDecoratorMetadata.jsxFactory.jsxFragmentFactory.jsxImportSource.reactNamespace.noLib.useDefineForClassFields.moduleDetection.module.rootDir.moduleResolution.baseUrl.paths.rootDirs.typeRoots.types.allowUmdGlobalAccess.moduleSuffixes.allowImportingTsExtensions.resolvePackageJsonExports.resolvePackageJsonImports.customConditions.resolveJsonModule.allowArbitraryExtensions.noResolve.allowJs.checkJs.maxNodeModuleJsDepth.declaration.declarationMap.emitDeclarationOnly.sourceMap.inlineSourceMap.outFile.outDir.removeComments.noEmit.importHelpers.importsNotUsedAsValues.downlevelIteration.sourceRoot.mapRoot.inlineSources.emitBOM.newLine.stripInternal.noEmitHelpers.noEmitOnError.preserveConstEnums.declarationDir.preserveValueImports.isolatedModules.verbatimModuleSyntax.allowSyntheticDefaultImports.esModuleInterop.preserveSymlinks.forceConsistentCasingInFileNames.strict.strictBindCallApply.strictFunctionTypes.strictNullChecks.strictPropertyInitialization.allowUnreachableCode.allowUnusedLabels.alwaysStrict.exactOptionalPropertyTypes.noFallthroughCasesInSwitch.noImplicitAny.noImplicitOverride.noImplicitReturns.noImplicitThis.noPropertyAccessFromIndexSignature.noUncheckedIndexedAccess.noUnusedLocals.noUnusedParameters.useUnknownInCatchVariables.skipDefaultLibCheck.skipLibCheck`.split(`.`),pathPattern:`^compilerOptions$`}]}},...b[`flat/prettier`].map(e=>({...e,name:`2digits:jsonc/prettier`}))]}const V={languageOptions:{parser:x},plugins:{jsonc:ie}};function H(e){return Object.fromEntries(e.flatMap(({rules:e})=>Object.entries(e??{})))}const U=[P];function ke(){return[{name:`2digits:markdown/setup`,plugins:{markdown:S}},{name:`2digits:markdown/processor`,files:U,language:`markdown/gfm`,ignores:[`**/*.md/*.md`],processor:C([S.processors.markdown,w])},{name:`2digits:markdown/parser`,files:U,language:`markdown/gfm`,languageOptions:{parser:je}},{name:`2digits:markdown/rules`,files:U,language:`markdown/gfm`,rules:{"markdown/fenced-code-language":`error`,"markdown/heading-increment":`error`,"markdown/no-empty-links":`error`,"markdown/no-invalid-label-refs":`error`,"markdown/no-missing-label-refs":`error`}}]}async function Ae(){let e=await B(import(`typescript-eslint`)),t=await B(import(`@eslint-react/eslint-plugin`)),r=n({...e.configs.disableTypeChecked.rules,...t.configs[`disable-type-checked`].rules},z);return[{name:`2digits:markdown/disables`,files:[F],languageOptions:{parser:e.parser,parserOptions:{project:!1,projectService:!1,ecmaFeatures:{impliedStrict:!0}}},rules:{...r,"no-alert":`off`,"no-console":`off`,"no-labels":`off`,"no-lone-blocks":`off`,"no-restricted-syntax":`off`,"no-undef":`off`,"no-unused-expressions":`off`,"no-unused-labels":`off`,"no-unused-vars":`off`,"node/prefer-global/process":`off`,"ts/consistent-type-imports":`off`,"ts/explicit-function-return-type":`off`,"ts/no-namespace":`off`,"ts/no-redeclare":`off`,"ts/no-require-imports":`off`,"ts/no-unused-expressions":`off`,"ts/no-unused-vars":`off`,"ts/no-use-before-define":`off`,"unicode-bom":`off`}}]}const je={meta:{name:`parser-plain`},parseForESLint:e=>({ast:{body:[],comments:[],loc:{end:e.length,start:0},range:[0,e.length],tokens:[],type:`Program`},scopeManager:null,services:{isPlain:!0},visitorKeys:{Program:[]}})};async function Me(e={}){let{files:t=[j,M],overrides:r={},parserOptions:i}=e,[a,o]=await Promise.all([B(import(`@next/eslint-plugin-next`)),B(import(`@typescript-eslint/parser`))]),s=n({...a.configs.recommended.rules,...a.configs[`core-web-vitals`].rules},z);return[{name:`2digits:next/setup`,plugins:{next:h(a)}},{name:`2digits:next/rules`,files:t,languageOptions:{parser:o,parserOptions:{ecmaFeatures:{jsx:!0},projectService:!0,...i},sourceType:`module`},rules:{...s,"next/no-html-link-for-pages":`off`,...r}},{files:[`**/middleware.ts`,`**/proxy.ts`],name:`2digits:next/proxy`,rules:{"unicorn/prefer-string-raw":`off`}}]}var Ne={node:`24.22.0`};function Pe(){return[{files:[A],name:`2digits:node`,settings:{node:{version:Ne.node}},plugins:{node:T},rules:{"node/handle-callback-err":[`error`,`^(err|error)$`],"node/no-deprecated-api":`error`,"node/no-exports-assign":`error`,"node/no-new-require":`error`,"node/no-path-concat":`error`,"node/no-unsupported-features/node-builtins":[`error`,{allowExperimental:!0}],"node/prefer-global/buffer":`error`,"node/prefer-global/console":`error`,"node/prefer-global/process":`error`,"node/prefer-global/text-decoder":`error`,"node/prefer-global/text-encoder":`error`,"node/prefer-global/timers":`error`,"node/prefer-global/url":`error`,"node/prefer-global/url-search-params":`error`,"node/prefer-import/assert-strict":`error`,"node/prefer-process-get-builtin-module":`error`,"node/process-exit-as-throw":`error`}}]}async function Fe(){let e=await B(import(`eslint-plugin-pnpm`));return[{name:`2digits:pnpm/package-json`,files:[`package.json`,`**/package.json`],languageOptions:{parser:x},plugins:{pnpm:e},rules:{"pnpm/json-enforce-catalog":`error`,"pnpm/json-prefer-workspace-settings":`error`,"pnpm/json-valid-catalog":`error`}},{name:`2digits:pnpm/pnpm-workspace-yaml`,files:[`pnpm-workspace.yaml`],languageOptions:{parser:await B(import(`yaml-eslint-parser`))},plugins:{pnpm:e},rules:{"pnpm/yaml-blank-lines":`error`,"pnpm/yaml-enforce-settings":[`error`,{autofix:!0,settings:{catalogMode:`strict`,savePrefix:``,preferWorkspacePackages:!0,cleanupUnusedCatalogs:!0,verifyDepsBeforeRun:`warn`}}],"pnpm/yaml-no-duplicate-catalog-item":[`error`,{checkDuplicates:`exact-version`}],"pnpm/yaml-no-unused-catalog-item":`error`,"pnpm/yaml-valid-packages":`error`}}]}async function Ie(){let[e,t]=await Promise.all([B(import(`eslint-config-prettier`)),B(import(`@stylistic/eslint-plugin`))]);return[{name:`2digits:prettier`,plugins:{stylistic:t},rules:{...e.rules,"tailwindcss/classnames-order":`off`,"stylistic/jsx-newline":[`error`,{prevent:!1}]}}]}const Le=/* @__PURE__ */ new Set([E.ArrowFunctionExpression,E.FunctionDeclaration,E.FunctionExpression]);function Re(){return ze}function ze(e,{ast:t,is:n}){let{sourceCode:r}=e;return r.text.includes(`useCallback`)?{VariableDeclarator(i){let{id:a,init:o}=i;if(a.type!==E.Identifier||!n.useCallbackCall(o))return;let[s,...c]=r.getDeclaredVariables(i);if(!s||c.length>0)return;let l=Be(r,(e,n)=>t.findParent(e,n)??void 0,o,a.name,n.useEffectLikeCall),{block:u}=r.getScope(o);if(!Ue(u))return;let{arguments:d}=o,[f,p]=d;if(!f||!p)return;if(!He(p)){G(e,l);return}let m=Ve(f);m&&(W(r.getScope(m)).flatMap(e=>e.references).some(e=>e.resolved?.scope.block===u)?G(e,l):e.report({message:`An 'useCallback' with empty deps and no references to the component scope may be unnecessary.`,node:i}))}}:{}}function Be(e,t,n,r,i){if(!/use\w*Effect/u.test(e.text))return;let a=(e.getDeclaredVariables(n.parent)[0]?.references??[]).filter(e=>!e.init);if(a.length===0)return;let o=/* @__PURE__ */ new Set;for(let e of a){let n=t(e.identifier,i);if(!n||o.add(n).size>1)return}return{message:`${r} is only used inside 1 useEffect, which may be unnecessary. You can move the computation into useEffect directly and merge the dependency arrays.`,node:n}}function Ve(e){if(e.type===E.ArrowFunctionExpression||e.type===E.FunctionExpression)return e.body.type===E.ArrowFunctionExpression?e.body:e}function W(e){let t=[e];for(let n of e.childScopes)t.push(...W(n));return t}function He(e){return e.type===E.ArrayExpression&&e.elements.length===0}function Ue(e){return Le.has(e.type)}function G(e,t){t&&e.report(t)}const We=/* @__PURE__ */ new Set([E.ArrowFunctionExpression,E.FunctionDeclaration,E.FunctionExpression]);function Ge(){return Ke}function Ke(e,{ast:t,is:n}){let{sourceCode:r}=e;return r.text.includes(`useMemo`)?{VariableDeclarator(i){let{id:a,init:o}=i;if(a.type!==E.Identifier||!n.useMemoCall(o))return;let[s,...c]=r.getDeclaredVariables(i);if(s===void 0||c.length>0)return;let l=qe(r,(e,n)=>t.findParent(e,n)??void 0,o,a.name,n.useEffectLikeCall),{block:u}=r.getScope(o);if(!Xe(u))return;let{arguments:d}=o,[f,p]=d;if(f===void 0||p===void 0)return;if(!Ye(p)){q(e,l);return}let m=Je(f);m!==void 0&&(K(r.getScope(m)).flatMap(e=>e.references).some(e=>e.resolved?.scope.block===u)?q(e,l):e.report({message:`An 'useMemo' with empty deps and no references to the component scope may be unnecessary.`,node:i}))}}:{}}function qe(e,t,n,r,i){if(!/use\w*Effect/u.test(e.text))return;let a=(e.getDeclaredVariables(n.parent)[0]?.references??[]).filter(e=>!e.init);if(a.length===0)return;let o=/* @__PURE__ */ new Set;for(let e of a){let n=t(e.identifier,i);if(!n||o.add(n).size>1)return}return{message:`${r} is only used inside 1 useEffect, which may be unnecessary. You can move the computation into useEffect directly and merge the dependency arrays.`,node:n}}function Je(e){if(e.type===E.ArrowFunctionExpression||e.type===E.FunctionExpression)return e.body.type===E.ArrowFunctionExpression?e.body:e}function K(e){let t=[e];for(let n of e.childScopes)t.push(...K(n));return t}function Ye(e){return e.type===E.ArrayExpression&&e.elements.length===0}function Xe(e){return We.has(e.type)}function q(e,t){t&&e.report(t)}function Ze(){return Qe}function Qe(e,{collect:t}){let{query:n,visitor:r}=t.components(e);function i(t){for(let{node:r}of n.all(t)){let{params:t}=r,[n]=t;if(n?.type!==E.Identifier)continue;let i=e.sourceCode.getScope(r).variables.find(e=>e.name===n.name)?.references??[];for(let t of i){let{identifier:n}=t,{parent:r}=n;r.type===E.MemberExpression&&e.report({message:`Use destructuring assignment for component props.`,node:r})}}}return oe(r,{"Program:exit":i})}function $e(){return et}function et(e,{settings:t}){return{ImportDeclaration(n){if(n.source.value!==t.importSource)return;let r=n.specifiers.find(e=>e.type===E.ImportDefaultSpecifier);r!==void 0&&e.report({fix(r){let i=e.sourceCode.getText(n),a=i.endsWith(`;`)?`;`:``,o=n.source.raw.at(0)??`'`,s=`import${n.importKind===`type`?` type`:``}`,c=`${o}${t.importSource}${o}`;if(n.specifiers.length===1)return r.remove(n);let l=i.slice(i.indexOf(`{`),i.indexOf(`}`)+1);return r.replaceText(n,`${s} ${l} from ${c}${a}`)},message:`Prefer importing React as 'import * as React from "${t.importSource}"';`,node:n.specifiers.length>1?r:n})}}}async function tt(e={}){let{files:t=[j,M],overrides:r={},parserOptions:i,tsconfigRootDir:a,reactCompiler:o=!0}=e,[s,c,l,u]=await Promise.all([B(import(`@eslint-react/eslint-plugin`)),B(import(`@typescript-eslint/parser`)),o?B(import(`eslint-plugin-react-compiler`)):Promise.resolve(void 0),B(import(`@stylistic/eslint-plugin`))]),{configs:d}=s,{all:{plugins:f}}=d,p=f?.[`@eslint-react`]??{},m=n({...d[`disable-conflict-eslint-plugin-react`].rules,...d[`disable-conflict-eslint-plugin-react-hooks`].rules,...d[`strict-type-checked`].rules},z);return[{name:`2digits:react/setup`,plugins:{stylistic:u,"react-extra":{...p,rules:{...p.rules,...nt.rules}},...o?{"react-compiler":l}:{}},settings:{react:{version:`detect`}}},{name:`2digits:react/rules`,files:t,languageOptions:{parser:c,parserOptions:{ecmaFeatures:{jsx:!0},tsconfigRootDir:a,projectService:!0,...i},sourceType:`module`},rules:{...m,...o?{"react-compiler/react-compiler":`error`}:{},"react-extra/exhaustive-deps":`error`,"react-extra/globals":`error`,"react-extra/purity":`error`,"react-extra/no-unused-class-component-members":`error`,"react-extra/no-unnecessary-use-callback":`error`,"react-extra/no-unnecessary-use-prefix":`error`,"react-extra/no-unnecessary-use-memo":`error`,"react-extra/set-state-in-effect":`error`,"react-extra/no-unused-state":`error`,"react-extra/use-state":`error`,"react-extra/no-unstable-context-value":`error`,"react-extra/no-unstable-default-props":`error`,"react-extra/no-unused-props":`error`,"react-extra/no-context-provider":`error`,"react-extra/no-forward-ref":`error`,"react-extra/no-use-context":`error`,"react-extra/immutability":`error`,"react-extra/refs":`error`,"react-extra/no-duplicate-key":`error`,"react-extra/static-components":`error`,"react-extra/dom-no-missing-button-type":`error`,"react-extra/dom-no-missing-iframe-sandbox":`error`,"react-extra/dom-no-unsafe-target-blank":`error`,"react-extra/web-api-no-leaked-fetch":`error`,"react-extra/naming-convention-context-name":`error`,"react-extra/naming-convention-id-name":`error`,"react-extra/naming-convention-ref-name":`error`,"react-extra/prefer-destructuring-assignment":`error`,"react-extra/prefer-namespace-import":`error`,"react-extra/jsx-no-leaked-dollar":`error`,"react-extra/jsx-no-useless-fragment":`off`,"stylistic/jsx-curly-newline":`off`,"stylistic/jsx-newline":[`error`,{prevent:!1}],"stylistic/jsx-self-closing-comp":`error`,...r}}]}const nt=ae().use(J(Re,`noUnnecessaryUseCallback`)).use(J(Ge,`noUnnecessaryUseMemo`)).use(J(Ze,`preferDestructuringAssignment`)).use(J($e,`preferNamespaceImport`)).getPlugin();function J(e,t){return Object.defineProperty(e,"name",{value:t}),e}function rt(){return[{files:[A],name:`2digits:regexp`,plugins:{regexp:se},rules:{...ce[`flat/recommended`].rules}}]}function it(){return[{files:[A],name:`2digits:sonar`,plugins:{sonar:le},rules:{"sonar/cognitive-complexity":`error`,"sonar/comma-or-logical-or-case":`error`,"sonar/concise-regex":`error`,"sonar/constructor-for-side-effects":`error`,"sonar/content-length":`error`,"sonar/content-security-policy":`error`,"sonar/cookie-no-httponly":`error`,"sonar/cors":`error`,"sonar/csrf":`error`,"sonar/max-switch-cases":`error`,"sonar/no-all-duplicated-branches":`error`,"sonar/no-collapsible-if":`error`,"sonar/no-collection-size-mischeck":`error`,"sonar/no-duplicate-string":[`error`,{threshold:5}],"sonar/no-duplicated-branches":`error`,"sonar/no-element-overwrite":`error`,"sonar/no-empty-collection":`error`,"sonar/no-extra-arguments":`error`,"sonar/no-for-in-iterable":`error`,"sonar/no-gratuitous-expressions":`error`,"sonar/no-identical-conditions":`error`,"sonar/no-identical-expressions":`error`,"sonar/no-identical-functions":`error`,"sonar/no-ignored-return":`error`,"sonar/no-inverted-boolean-check":`error`,"sonar/no-nested-switch":`error`,"sonar/no-nested-template-literals":`error`,"sonar/no-redundant-boolean":`error`,"sonar/no-same-line-conditional":`error`,"sonar/no-small-switch":`error`,"sonar/no-unused-collection":`error`,"sonar/no-use-of-empty-return-value":`error`,"sonar/no-useless-catch":`error`,"sonar/non-existent-operator":`error`,"sonar/prefer-immediate-return":`error`,"sonar/prefer-object-literal":`error`,"sonar/prefer-single-boolean-return":`error`,"sonar/prefer-while":`error`,"sonar/elseif-without-else":`off`,"sonar/no-redundant-jump":`off`}}]}async function at(e={}){let{files:t=[`**/*.stories.tsx`],overrides:n={},parserOptions:r,storybookDirectory:i=`.storybook`}=e,[a,o]=await Promise.all([B(import(`eslint-plugin-storybook`)),B(import(`@typescript-eslint/parser`))]),s={parser:o,parserOptions:{ecmaFeatures:{jsx:!0},projectService:!0,...r},sourceType:`module`};return[{name:`2digits:storybook/setup`,plugins:{storybook:a}},{name:`2digits:storybook/rules`,files:t,languageOptions:s,rules:{"storybook/await-interactions":`error`,"storybook/context-in-play-function":`error`,"storybook/csf-component":`error`,"storybook/default-exports":`error`,"storybook/hierarchy-separator":`error`,"storybook/meta-inline-properties":`error`,"storybook/no-redundant-story-name":`error`,"storybook/no-stories-of":`error`,"storybook/no-title-property-in-meta":`error`,"storybook/no-uninstalled-addons":`error`,"storybook/prefer-pascal-case":`error`,"storybook/story-exports":`error`,"storybook/use-storybook-expect":`error`,"storybook/use-storybook-testing-library":`error`,"storybook/meta-satisfies-type":`error`,"storybook/no-renderer-packages":`error`,...n}},{name:`2digits:storybook/disables`,files:t,rules:{"sonar/no-duplicate-string":`off`}},{name:`2digits:storybook/config`,files:[`${i}/main.@(js|cjs|mjs|ts)`],languageOptions:s,rules:{"storybook/no-uninstalled-addons":`error`}}]}async function ot(e){let t=D.join(D.dirname(e),`node_modules`,`.cache`,`@2digits`,`eslint-config`),n=D.join(t,`tailwind.css`);return await ue(t,{recursive:!0}),await de(n,`@import 'tailwindcss';\n@config ${JSON.stringify(e)};\n`),n}async function st(e={}){let{overrides:t={}}=e,[n,{tailwindFunctions:r},i]=await Promise.all([B(import(`eslint-plugin-tailwindcss`)),B(import(`@2digits/constants`)),a().catch(()=>void 0)]),{cssConfigPath:o}=e;if(!o){let e=O.file(`tailwind.config.ts`,{last:i})??O.file(`tailwind.config.js`,{last:i});if(!e)return[];o=await ot(e)}return[{files:[A],name:`2digits:tailwind`,plugins:{tailwindcss:n},settings:{tailwindcss:{functions:r,cssConfigPath:o}},rules:{...n.configs.recommended.rules,...t}}]}async function ct(e={}){let{overrides:t={}}=e,r=await B(import(`@tanstack/eslint-plugin-query`)),i=n(r.configs[`flat/recommended`].at(0)?.rules??{},z);return[{files:[A],name:`2digits:tanstack-query`,plugins:{"tanstack-query":r},rules:{...i,"tanstack-query/prefer-query-options":`error`,...t}}]}async function Y(e={}){let{overrides:t={}}=e,r=await B(import(`@tanstack/eslint-plugin-router`)),i=n(r.configs[`flat/recommended`].at(0)?.rules??{},z);return[{files:[A],name:`2digits:tanstack-router`,plugins:{"tanstack-router":r},rules:{...i,"ts/only-throw-error":[`error`,{allow:[{from:`package`,package:`@tanstack/router-core`,name:`Redirect`}]}],...t}}]}const lt=Object.fromEntries(pe.standard.flatMap(({rules:e})=>Object.entries({...e})));function ut(){return[{name:`2digits:toml`,files:[`**/*.toml`],language:`toml/toml`,plugins:{toml:fe},rules:{...lt,"toml/array-bracket-spacing":[`error`,`never`],"toml/array-element-newline":[`error`,`consistent`],"toml/indent":[`error`,2,{keyValuePairs:0,subTables:0}]}},{name:`2digits:toml:mise`,files:[`**/{mise,.mise}?(.*).toml`],rules:{"toml/spaced-comment":[`off`]}}]}async function dt(e={}){let{overrides:t={}}=e,n=await B(import(`eslint-plugin-turbo`));return[{files:[A],name:`2digits:turbo`,plugins:{turbo:n},rules:{"turbo/no-undeclared-env-vars":`error`,...t}}]}async function ft(e={}){let{overrides:n={},parserOptions:r={}}=e,[{plugin:i,configs:a,parser:o},s]=await Promise.all([B(import(`typescript-eslint`)),B(import(`@2digits/eslint-plugin`))]),c=t(a.strictTypeChecked,z),l=Object.fromEntries(c.flatMap(({rules:e})=>Object.entries(e??{})));return[{name:`2digits:typescript/setup`,plugins:{ts:i,"@2digits":s}},{name:`2digits:typescript/rules`,files:[A],languageOptions:{parser:o,parserOptions:{tsconfigRootDir:process.cwd(),projectService:!0,onUnsupportedTypeScriptVersion:`ignore`,...r},sourceType:`module`},rules:{...l,"ts/array-type":[`error`,{default:`generic`,readonly:`generic`}],"ts/restrict-template-expressions":[`error`,{allowNumber:!0}],"ts/ban-ts-comment":[`error`,{"ts-ignore":`allow-with-description`}],"ts/consistent-type-exports":[`error`],"ts/consistent-type-imports":[`error`,{prefer:`type-imports`,disallowTypeAnnotations:!1,fixStyle:`inline-type-imports`}],"ts/no-empty-object-type":[`error`,{allowInterfaces:`with-single-extends`,allowObjectTypes:`never`}],"ts/no-explicit-any":[`error`],"ts/no-import-type-side-effects":[`error`],"ts/no-misused-promises":`off`,"ts/no-confusing-void-expression":`off`,"ts/no-unused-vars":[`error`,{ignoreRestSiblings:!0,argsIgnorePattern:`^_`,varsIgnorePattern:`^_`}],"ts/unbound-method":`off`,"ts/no-unnecessary-type-assertion":`off`,"ts/method-signature-style":[`error`,`property`],"ts/switch-exhaustiveness-check":`off`,"ts/prefer-optional-chain":`error`,...s.configs.recommended.rules,...n}},{name:`2digits:typescript/disables/dts`,files:[`**/*.d.ts`],rules:{"unicorn/no-abusive-eslint-disable":`off`,"no-duplicate-imports":`off`,"no-restricted-syntax":`off`,"ts/no-unused-vars":`off`}},{name:`2digits:typescript/disables/test`,files:[`**/*.{test,spec}.ts?(x)`],rules:{"no-unused-expressions":`off`}},{name:`2digits:typescript/disables/cjs`,files:[`**/*.js`,`**/*.cjs`,`**/*.cts`],rules:{"ts/no-require-imports":`off`}}]}function pt(){return[{files:[A],name:`2digits:unicorn`,plugins:{unicorn:k},rules:{...k.configs.recommended.rules,"unicorn/consistent-boolean-name":`off`,"unicorn/consistent-conditional-object-spread":`off`,"unicorn/filename-case":`off`,"unicorn/max-nested-calls":`off`,"unicorn/name-replacements":`off`,"unicorn/no-array-callback-reference":`off`,"unicorn/no-asterisk-prefix-in-documentation-comments":`off`,"unicorn/no-break-in-nested-loop":`off`,"unicorn/no-computed-property-existence-check":`off`,"unicorn/no-declarations-before-early-exit":`off`,"unicorn/no-nested-ternary":`off`,"unicorn/no-non-function-verb-prefix":`off`,"unicorn/no-repeated-call-wrappers":`error`,"unicorn/no-top-level-side-effects":`off`,"unicorn/no-useless-undefined":[`error`,{checkArguments:!1,checkArrowFunctionBody:!1}],"unicorn/prefer-await":`off`,"unicorn/prefer-module":`off`,"unicorn/prefer-number-coercion":`off`,"unicorn/prefer-ternary":`off`,"unicorn/prefer-top-level-await":`off`,"unicorn/require-array-sort-compare":`off`,"unicorn/single-line-block-comment-style":`off`}}]}async function mt(e={}){let{files:t=[`**/*.{test,spec}.ts?(x)`],overrides:n={},typecheck:r=!0,vitestImports:i}=e,a=await B(import(`@vitest/eslint-plugin`));return[{name:`2digits:vitest/setup`,plugins:{vitest:a}},{name:`2digits:vitest/rules`,files:t,languageOptions:{globals:a.environments.env.globals},settings:{vitest:{typecheck:r,...i?{vitestImports:i}:{}}},rules:{"vitest/consistent-each-for":[`error`,{describe:`for`,suite:`for`,it:`for`,test:`for`}],"vitest/consistent-test-filename":[`error`,{pattern:String.raw`.*\.spec\.[tj]sx?$`,allTestPattern:String.raw`.*\.(test|spec)\.[tj]sx?$`}],"vitest/consistent-test-it":[`error`,{fn:`it`,withinDescribe:`it`}],"vitest/consistent-vitest-vi":[`error`,{fn:`vi`}],"vitest/expect-expect":`error`,"vitest/hoisted-apis-on-top":`error`,"vitest/max-expects":`error`,"vitest/max-nested-describe":`error`,"vitest/no-alias-methods":`error`,"vitest/no-commented-out-tests":`error`,"vitest/no-conditional-expect":`error`,"vitest/no-conditional-in-test":`error`,"vitest/no-conditional-tests":`error`,"vitest/no-disabled-tests":`error`,"vitest/no-duplicate-hooks":`error`,"vitest/no-focused-tests":`error`,"vitest/no-identical-title":`error`,"vitest/no-import-node-test":`error`,"vitest/no-interpolation-in-snapshots":`error`,"vitest/no-mocks-import":`error`,"vitest/no-standalone-expect":`error`,"vitest/no-test-prefixes":`error`,"vitest/no-test-return-statement":`error`,"vitest/no-unneeded-async-expect-function":`error`,"vitest/prefer-called-exactly-once-with":`error`,"vitest/prefer-called-once":`error`,"vitest/prefer-called-with":`error`,"vitest/prefer-comparison-matcher":`error`,"vitest/prefer-describe-function-title":`error`,"vitest/prefer-each":`error`,"vitest/prefer-equality-matcher":`error`,"vitest/prefer-expect-resolves":`error`,"vitest/prefer-expect-type-of":`error`,"vitest/prefer-hooks-in-order":`error`,"vitest/prefer-hooks-on-top":`error`,"vitest/prefer-import-in-mock":`error`,"vitest/prefer-lowercase-title":`error`,"vitest/prefer-mock-promise-shorthand":`error`,"vitest/prefer-mock-return-shorthand":`error`,"vitest/prefer-snapshot-hint":[`error`,`always`],"vitest/prefer-spy-on":`error`,"vitest/prefer-strict-equal":`error`,"vitest/prefer-to-be":`error`,"vitest/prefer-to-be-falsy":`error`,"vitest/prefer-to-be-object":`error`,"vitest/prefer-to-be-truthy":`error`,"vitest/prefer-to-contain":`error`,"vitest/prefer-to-have-been-called-times":`error`,"vitest/prefer-to-have-length":`error`,"vitest/prefer-todo":`error`,"vitest/require-awaited-expect-poll":`error`,"vitest/require-local-test-context-for-concurrent-snapshots":`error`,"vitest/require-mock-type-parameters":`error`,"vitest/require-to-throw-message":`error`,"vitest/require-top-level-describe":`error`,"vitest/valid-describe-callback":`error`,"vitest/valid-expect":[`error`,{maxArgs:2}],"vitest/valid-expect-in-promise":`error`,"vitest/valid-title":`error`,"vitest/warn-todo":`error`,...n}}]}function ht(){return[{name:`2digits:yaml/setup`,plugins:{yml:me}},{name:`2digits:yaml/base`,...X,rules:{"no-irregular-whitespace":`off`,"no-unused-vars":`off`}},{name:`2digits:yaml/recommended`,...X,rules:{"yml/no-empty-document":`error`,"yml/no-empty-key":`error`,"yml/no-empty-mapping-value":`error`,"yml/no-empty-sequence-entry":`error`,"yml/no-irregular-whitespace":`error`,"yml/no-tab-indent":`error`,"yml/vue-custom-block/no-parsing-error":`error`}},{name:`2digits:yaml/standard`,...X,rules:{"yml/block-mapping":`error`,"yml/block-sequence":`error`,"yml/plain-scalar":`error`,"yml/spaced-comment":`error`}},{name:`2digits:yaml/prettier`,...X,rules:{"yml/block-mapping-colon-indicator-newline":`off`,"yml/block-mapping-question-indicator-newline":`off`,"yml/block-sequence-hyphen-indicator-newline":`off`,"yml/flow-mapping-curly-newline":`off`,"yml/flow-mapping-curly-spacing":`off`,"yml/flow-sequence-bracket-newline":`off`,"yml/flow-sequence-bracket-spacing":`off`,"yml/indent":`off`,"yml/key-spacing":`off`,"yml/no-multiple-empty-lines":`off`,"yml/no-trailing-zeros":`off`,"yml/quotes":`off`}}]}const X={files:[`**/*.y?(a)ml`],languageOptions:{parser:g}};async function gt(e={}){let{overrides:t={}}=e,n=await B(import(`eslint-plugin-zod`));return[{files:[A],name:`2digits:zod`,plugins:{zod:n},rules:{"zod/array-style":[`error`,{style:`function`}],"zod/consistent-import":[`error`,{syntax:`namespace`}],"zod/consistent-schema-output-type-style":[`error`,{style:`infer`}],"zod/consistent-schema-var-name":[`warn`,{after:`Schema`}],"zod/no-any-schema":`error`,"zod/no-coerce-boolean":`error`,"zod/no-conflicting-checks":[`error`,{checkConfusingCases:!0,checkImpossibleCases:!0,checkInapplicableChecks:!0}],"zod/no-duplicate-schema-methods":`error`,"zod/no-dynamic-schema-value":`error`,"zod/no-empty-custom-schema":`error`,"zod/no-function-scoped-schema":`error`,"zod/no-native-enum":`error`,"zod/no-number-schema-with-finite":`error`,"zod/no-number-schema-with-int":`error`,"zod/no-number-schema-with-is-finite":`error`,"zod/no-number-schema-with-is-int":`error`,"zod/no-number-schema-with-safe":`error`,"zod/no-number-schema-with-step":`error`,"zod/no-optional-and-default-together":[`warn`,{preferredMethod:`default`}],"zod/no-promise-schema":`error`,"zod/no-schema-with-is-nullable":`error`,"zod/no-schema-with-is-optional":`error`,"zod/no-throw-in-refine":`error`,"zod/no-transform-in-record-key":`error`,"zod/no-unnecessary-readonly":`error`,"zod/prefer-enum-over-literal-union":`error`,"zod/prefer-loose-object":`error`,"zod/prefer-map-set-size-over-min-max":`error`,"zod/prefer-meta":`error`,"zod/prefer-meta-last":`error`,"zod/prefer-nullish":`error`,"zod/prefer-strict-object":`error`,"zod/prefer-string-length-over-min-max":`error`,"zod/prefer-string-schema-with-trim":`error`,"zod/prefer-top-level-string-formats":`error`,"zod/prefer-trim-before-string-length-checks":`error`,"zod/prefer-tuple-over-array-length":`error`,"zod/prefer-validate":`error`,"zod/require-brand-type-parameter":`error`,"zod/require-error-message":`error`,"zod/schema-error-property-style":[`error`,{selector:`Literal,TemplateLiteral`,example:`"This is an error message"`}],...t}}]}function Z(e,t){return typeof e==`boolean`?e:e?.enable??t??!1}function Q(e){if(typeof e==`boolean`||e===void 0)return{};let{enable:t,...n}=e;return n}async function $(t={},...n){let r;t.pnpm===void 0&&(r=a());let o=new e(Te(t.ignores),Ee(t.js),R(),Pe(),_e(),De(),pt(),it(),rt(),L(),Oe(),ut(),ht(),ke(),Ce());Z(t.css)&&(o=o.append(ye(Q(t.css)))),Z(t.depend,!0)&&(o=o.append(be())),Z(t.turbo,i(`turbo`))&&(o=o.append(dt(Q(t.turbo))));let{overrides:s,...c}=Q(t.ts);return Z(t.ts,i(`typescript`))&&(o=o.append(ft(Q(t.ts)))),Z(t.react,i(`react`))&&(o=o.append(tt({...Q(t.react),...c}))),Z(t.next,i(`next`))&&(o=o.append(Me({...Q(t.next),...c}))),Z(t.storybook,he.some(e=>i(e)))&&(o=o.append(at({...Q(t.storybook),...c}))),Z(t.vitest,i(`vitest`))&&(o=o.append(mt(Q(t.vitest)))),Z(t.tailwind,i(`tailwindcss`))&&(o=o.append(st(Q(t.tailwind)))),Z(t.tanstackQuery,i(`react-query`)||i(`@tanstack/react-query`)||i(`@tanstack/react-query-devtools`))&&(o=o.append(ct(Q(t.tanstackQuery)))),Z(t.tanstackRouter,i(`@tanstack/react-router`))&&(o=o.append(Y(Q(t.tanstackRouter)))),Z(t.drizzle,i(`drizzle-kit`)||i(`drizzle-orm`))&&(o=o.append(xe(Q(t.drizzle)))),Z(t.zod,i(`zod`))&&(o=o.append(gt(Q(t.zod)))),Z(t.graphql,i(`graphql`))&&(o=o.append(we(Q(t.graphql)))),Z(t.pnpm,!!await r)&&(o=o.append(Fe())),o=o.append(...n),i(`prettier`)&&(o=o.append(Ie())),o=o.append(Ae()),o.renamePlugins(z).toConfigs()}export{$ as default,$ as twoDigits};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@2digits/eslint-config",
|
|
3
|
-
"version": "5.9.
|
|
3
|
+
"version": "5.9.1",
|
|
4
4
|
"description": "Effortlessly enforce best practices and catch errors with this comprehensive ESLint configuration for TypeScript, featuring popular plugins like @typescript-eslint, eslint-plugin-react, and eslint-plugin-unicorn.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eslint-config"
|
|
@@ -29,16 +29,16 @@
|
|
|
29
29
|
"@2digits/constants": "1.1.20",
|
|
30
30
|
"@2digits/eslint-plugin": "4.0.34",
|
|
31
31
|
"@eslint-community/eslint-plugin-eslint-comments": "4.8.1",
|
|
32
|
-
"@eslint-react/eslint-plugin": "5.
|
|
33
|
-
"@eslint-react/kit": "5.
|
|
32
|
+
"@eslint-react/eslint-plugin": "5.28.0",
|
|
33
|
+
"@eslint-react/kit": "5.28.0",
|
|
34
34
|
"@eslint/compat": "2.1.1",
|
|
35
|
-
"@eslint/css": "2.0.
|
|
35
|
+
"@eslint/css": "2.0.1",
|
|
36
36
|
"@eslint/js": "10.0.1",
|
|
37
37
|
"@eslint/markdown": "8.0.3",
|
|
38
|
-
"@graphql-eslint/eslint-plugin": "4.4.
|
|
39
|
-
"@next/eslint-plugin-next": "16.4.
|
|
38
|
+
"@graphql-eslint/eslint-plugin": "4.4.2",
|
|
39
|
+
"@next/eslint-plugin-next": "16.4.2",
|
|
40
40
|
"@stylistic/eslint-plugin": "5.10.0",
|
|
41
|
-
"@tanstack/eslint-plugin-query": "5.104.
|
|
41
|
+
"@tanstack/eslint-plugin-query": "5.104.3",
|
|
42
42
|
"@tanstack/eslint-plugin-router": "1.162.0",
|
|
43
43
|
"@typescript-eslint/parser": "8.71.2",
|
|
44
44
|
"@typescript-eslint/utils": "8.71.2",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"eslint-plugin-depend": "1.5.0",
|
|
54
54
|
"eslint-plugin-drizzle": "0.2.3",
|
|
55
55
|
"eslint-plugin-github-action": "0.4.0",
|
|
56
|
-
"eslint-plugin-jsdoc": "65.3.
|
|
56
|
+
"eslint-plugin-jsdoc": "65.3.6",
|
|
57
57
|
"eslint-plugin-jsonc": "3.4.2",
|
|
58
58
|
"eslint-plugin-n": "18.4.1",
|
|
59
59
|
"eslint-plugin-pnpm": "1.9.1",
|
|
@@ -63,10 +63,10 @@
|
|
|
63
63
|
"eslint-plugin-storybook": "10.6.2",
|
|
64
64
|
"eslint-plugin-tailwindcss": "4.4.0",
|
|
65
65
|
"eslint-plugin-toml": "1.5.0",
|
|
66
|
-
"eslint-plugin-turbo": "2.11.
|
|
66
|
+
"eslint-plugin-turbo": "2.11.8",
|
|
67
67
|
"eslint-plugin-unicorn": "78.0.0",
|
|
68
68
|
"eslint-plugin-yml": "3.9.0",
|
|
69
|
-
"eslint-plugin-zod": "5.0
|
|
69
|
+
"eslint-plugin-zod": "5.2.0",
|
|
70
70
|
"globals": "17.13.0",
|
|
71
71
|
"graphql-config": "5.1.8",
|
|
72
72
|
"jsonc-eslint-parser": "3.3.0",
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"yaml-eslint-parser": "2.1.0"
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {
|
|
80
|
-
"@2digits/tsconfig": "0.
|
|
80
|
+
"@2digits/tsconfig": "1.0.0",
|
|
81
81
|
"@arethetypeswrong/core": "0.18.5",
|
|
82
82
|
"@eslint/config-inspector": "3.5.0",
|
|
83
83
|
"@types/react": "19.3.0",
|
|
@@ -87,20 +87,20 @@
|
|
|
87
87
|
"eslint": "10.12.0",
|
|
88
88
|
"eslint-typegen": "2.3.1",
|
|
89
89
|
"publint": "0.3.25",
|
|
90
|
-
"react": "19.3.
|
|
90
|
+
"react": "19.3.1",
|
|
91
91
|
"tailwindcss": "4.3.3",
|
|
92
92
|
"tinyexec": "1.3.1",
|
|
93
93
|
"tinyglobby": "0.2.17",
|
|
94
94
|
"typescript": "6.0.3",
|
|
95
|
-
"vite-plus": "1.
|
|
96
|
-
"vitest": "5.0.
|
|
95
|
+
"vite-plus": "1.3.0",
|
|
96
|
+
"vitest": "5.0.5",
|
|
97
97
|
"zod": "4.6.7"
|
|
98
98
|
},
|
|
99
99
|
"peerDependencies": {
|
|
100
100
|
"eslint": "10.12.0"
|
|
101
101
|
},
|
|
102
102
|
"engines": {
|
|
103
|
-
"node": "24.
|
|
103
|
+
"node": "24.22.0"
|
|
104
104
|
},
|
|
105
105
|
"public": true,
|
|
106
106
|
"scripts": {
|