- Install Jest for unit testing with React Testing Library - Install Playwright for end-to-end testing - Configure Jest with proper TypeScript support and module mapping - Create test setup files and utilities for both unit and e2e tests Components: * Jest configuration with coverage thresholds * Playwright configuration with browser automation * Unit tests for LoginForm, AuthContext, and useSocketIO hook * E2E tests for authentication, dashboard, and agents workflows * GitHub Actions workflow for automated testing * Mock data and API utilities for consistent testing * Test documentation with best practices Testing features: - Unit tests with 70% coverage threshold - E2E tests with API mocking and user journey testing - CI/CD integration for automated test runs - Cross-browser testing support with Playwright - Authentication system testing end-to-end 🚀 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
616 lines
12 KiB
JavaScript
616 lines
12 KiB
JavaScript
"use strict";
|
|
// autogenerated - 2025-05-14
|
|
// https://www.w3.org/Style/CSS/all-properties.en.html
|
|
|
|
module.exports = new Set([
|
|
"-webkit-line-clamp",
|
|
"accent-color",
|
|
"align-content",
|
|
"align-items",
|
|
"align-self",
|
|
"alignment-baseline",
|
|
"all",
|
|
"anchor-name",
|
|
"anchor-scope",
|
|
"animation",
|
|
"animation-composition",
|
|
"animation-delay",
|
|
"animation-direction",
|
|
"animation-duration",
|
|
"animation-fill-mode",
|
|
"animation-iteration-count",
|
|
"animation-name",
|
|
"animation-play-state",
|
|
"animation-range",
|
|
"animation-range-end",
|
|
"animation-range-start",
|
|
"animation-timeline",
|
|
"animation-timing-function",
|
|
"appearance",
|
|
"aspect-ratio",
|
|
"azimuth",
|
|
"backface-visibility",
|
|
"background",
|
|
"background-attachment",
|
|
"background-blend-mode",
|
|
"background-clip",
|
|
"background-color",
|
|
"background-image",
|
|
"background-origin",
|
|
"background-position",
|
|
"background-repeat",
|
|
"background-size",
|
|
"baseline-shift",
|
|
"baseline-source",
|
|
"block-ellipsis",
|
|
"block-size",
|
|
"block-step",
|
|
"block-step-align",
|
|
"block-step-insert",
|
|
"block-step-round",
|
|
"block-step-size",
|
|
"bookmark-label",
|
|
"bookmark-level",
|
|
"bookmark-state",
|
|
"border",
|
|
"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-bottom",
|
|
"border-bottom-color",
|
|
"border-bottom-left-radius",
|
|
"border-bottom-right-radius",
|
|
"border-bottom-style",
|
|
"border-bottom-width",
|
|
"border-boundary",
|
|
"border-collapse",
|
|
"border-color",
|
|
"border-end-end-radius",
|
|
"border-end-start-radius",
|
|
"border-image",
|
|
"border-image-outset",
|
|
"border-image-repeat",
|
|
"border-image-slice",
|
|
"border-image-source",
|
|
"border-image-width",
|
|
"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-left",
|
|
"border-left-color",
|
|
"border-left-style",
|
|
"border-left-width",
|
|
"border-radius",
|
|
"border-right",
|
|
"border-right-color",
|
|
"border-right-style",
|
|
"border-right-width",
|
|
"border-spacing",
|
|
"border-start-end-radius",
|
|
"border-start-start-radius",
|
|
"border-style",
|
|
"border-top",
|
|
"border-top-color",
|
|
"border-top-left-radius",
|
|
"border-top-right-radius",
|
|
"border-top-style",
|
|
"border-top-width",
|
|
"border-width",
|
|
"bottom",
|
|
"box-decoration-break",
|
|
"box-shadow",
|
|
"box-sizing",
|
|
"box-snap",
|
|
"break-after",
|
|
"break-before",
|
|
"break-inside",
|
|
"caption-side",
|
|
"caret",
|
|
"caret-color",
|
|
"caret-shape",
|
|
"clear",
|
|
"clip",
|
|
"clip-path",
|
|
"clip-rule",
|
|
"color",
|
|
"color-adjust",
|
|
"color-interpolation-filters",
|
|
"color-scheme",
|
|
"column-count",
|
|
"column-fill",
|
|
"column-gap",
|
|
"column-rule",
|
|
"column-rule-break",
|
|
"column-rule-color",
|
|
"column-rule-outset",
|
|
"column-rule-style",
|
|
"column-rule-width",
|
|
"column-span",
|
|
"column-width",
|
|
"columns",
|
|
"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",
|
|
"continue",
|
|
"counter-increment",
|
|
"counter-reset",
|
|
"counter-set",
|
|
"cue",
|
|
"cue-after",
|
|
"cue-before",
|
|
"cursor",
|
|
"direction",
|
|
"display",
|
|
"dominant-baseline",
|
|
"dynamic-range-limit",
|
|
"elevation",
|
|
"empty-cells",
|
|
"fill",
|
|
"fill-break",
|
|
"fill-color",
|
|
"fill-image",
|
|
"fill-opacity",
|
|
"fill-origin",
|
|
"fill-position",
|
|
"fill-repeat",
|
|
"fill-rule",
|
|
"fill-size",
|
|
"filter",
|
|
"flex",
|
|
"flex-basis",
|
|
"flex-direction",
|
|
"flex-flow",
|
|
"flex-grow",
|
|
"flex-shrink",
|
|
"flex-wrap",
|
|
"float",
|
|
"float-defer",
|
|
"float-offset",
|
|
"float-reference",
|
|
"flood-color",
|
|
"flood-opacity",
|
|
"flow-from",
|
|
"flow-into",
|
|
"font",
|
|
"font-family",
|
|
"font-feature-settings",
|
|
"font-kerning",
|
|
"font-language-override",
|
|
"font-optical-sizing",
|
|
"font-palette",
|
|
"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",
|
|
"footnote-display",
|
|
"footnote-policy",
|
|
"forced-color-adjust",
|
|
"gap",
|
|
"glyph-orientation-vertical",
|
|
"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",
|
|
"hanging-punctuation",
|
|
"height",
|
|
"hyphenate-character",
|
|
"hyphenate-limit-chars",
|
|
"hyphenate-limit-last",
|
|
"hyphenate-limit-lines",
|
|
"hyphenate-limit-zone",
|
|
"hyphens",
|
|
"image-orientation",
|
|
"image-rendering",
|
|
"image-resolution",
|
|
"initial-letter",
|
|
"initial-letter-align",
|
|
"initial-letter-wrap",
|
|
"inline-size",
|
|
"inline-sizing",
|
|
"inset",
|
|
"inset-block",
|
|
"inset-block-end",
|
|
"inset-block-start",
|
|
"inset-inline",
|
|
"inset-inline-end",
|
|
"inset-inline-start",
|
|
"interpolate-size",
|
|
"isolation",
|
|
"item-cross",
|
|
"item-direction",
|
|
"item-flow",
|
|
"item-pack",
|
|
"item-slack",
|
|
"item-track",
|
|
"item-wrap",
|
|
"justify-content",
|
|
"justify-items",
|
|
"justify-self",
|
|
"left",
|
|
"letter-spacing",
|
|
"lighting-color",
|
|
"line-break",
|
|
"line-clamp",
|
|
"line-fit-edge",
|
|
"line-grid",
|
|
"line-height",
|
|
"line-height-step",
|
|
"line-padding",
|
|
"line-snap",
|
|
"list-style",
|
|
"list-style-image",
|
|
"list-style-position",
|
|
"list-style-type",
|
|
"margin",
|
|
"margin-block",
|
|
"margin-block-end",
|
|
"margin-block-start",
|
|
"margin-bottom",
|
|
"margin-break",
|
|
"margin-inline",
|
|
"margin-inline-end",
|
|
"margin-inline-start",
|
|
"margin-left",
|
|
"margin-right",
|
|
"margin-top",
|
|
"margin-trim",
|
|
"marker",
|
|
"marker-end",
|
|
"marker-knockout-left",
|
|
"marker-knockout-right",
|
|
"marker-mid",
|
|
"marker-pattern",
|
|
"marker-segment",
|
|
"marker-side",
|
|
"marker-start",
|
|
"mask",
|
|
"mask-border",
|
|
"mask-border-mode",
|
|
"mask-border-outset",
|
|
"mask-border-repeat",
|
|
"mask-border-slice",
|
|
"mask-border-source",
|
|
"mask-border-width",
|
|
"mask-clip",
|
|
"mask-composite",
|
|
"mask-image",
|
|
"mask-mode",
|
|
"mask-origin",
|
|
"mask-position",
|
|
"mask-repeat",
|
|
"mask-size",
|
|
"mask-type",
|
|
"max-block-size",
|
|
"max-height",
|
|
"max-inline-size",
|
|
"max-lines",
|
|
"max-width",
|
|
"min-block-size",
|
|
"min-height",
|
|
"min-inline-size",
|
|
"min-intrinsic-sizing",
|
|
"min-width",
|
|
"mix-blend-mode",
|
|
"nav-down",
|
|
"nav-left",
|
|
"nav-right",
|
|
"nav-up",
|
|
"object-fit",
|
|
"object-position",
|
|
"offset",
|
|
"offset-anchor",
|
|
"offset-distance",
|
|
"offset-path",
|
|
"offset-position",
|
|
"offset-rotate",
|
|
"opacity",
|
|
"order",
|
|
"orphans",
|
|
"outline",
|
|
"outline-color",
|
|
"outline-offset",
|
|
"outline-style",
|
|
"outline-width",
|
|
"overflow",
|
|
"overflow-anchor",
|
|
"overflow-block",
|
|
"overflow-clip-margin",
|
|
"overflow-clip-margin-block",
|
|
"overflow-clip-margin-block-end",
|
|
"overflow-clip-margin-block-start",
|
|
"overflow-clip-margin-bottom",
|
|
"overflow-clip-margin-inline",
|
|
"overflow-clip-margin-inline-end",
|
|
"overflow-clip-margin-inline-start",
|
|
"overflow-clip-margin-left",
|
|
"overflow-clip-margin-right",
|
|
"overflow-clip-margin-top",
|
|
"overflow-inline",
|
|
"overflow-wrap",
|
|
"overflow-x",
|
|
"overflow-y",
|
|
"overscroll-behavior",
|
|
"overscroll-behavior-block",
|
|
"overscroll-behavior-inline",
|
|
"overscroll-behavior-x",
|
|
"overscroll-behavior-y",
|
|
"padding",
|
|
"padding-block",
|
|
"padding-block-end",
|
|
"padding-block-start",
|
|
"padding-bottom",
|
|
"padding-inline",
|
|
"padding-inline-end",
|
|
"padding-inline-start",
|
|
"padding-left",
|
|
"padding-right",
|
|
"padding-top",
|
|
"page",
|
|
"page-break-after",
|
|
"page-break-before",
|
|
"page-break-inside",
|
|
"pause",
|
|
"pause-after",
|
|
"pause-before",
|
|
"perspective",
|
|
"perspective-origin",
|
|
"pitch",
|
|
"pitch-range",
|
|
"place-content",
|
|
"place-items",
|
|
"place-self",
|
|
"play-during",
|
|
"position",
|
|
"position-anchor",
|
|
"position-area",
|
|
"position-try",
|
|
"position-try-fallbacks",
|
|
"position-try-order",
|
|
"position-visibility",
|
|
"print-color-adjust",
|
|
"quotes",
|
|
"reading-flow",
|
|
"region-fragment",
|
|
"resize",
|
|
"rest",
|
|
"rest-after",
|
|
"rest-before",
|
|
"richness",
|
|
"right",
|
|
"rotate",
|
|
"row-gap",
|
|
"row-rule",
|
|
"row-rule-break",
|
|
"row-rule-color",
|
|
"row-rule-outset",
|
|
"row-rule-style",
|
|
"row-rule-width",
|
|
"ruby-align",
|
|
"ruby-merge",
|
|
"ruby-overhang",
|
|
"ruby-position",
|
|
"rule",
|
|
"rule-break",
|
|
"rule-color",
|
|
"rule-outset",
|
|
"rule-paint-order",
|
|
"rule-style",
|
|
"rule-width",
|
|
"running",
|
|
"scale",
|
|
"scroll-behavior",
|
|
"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-marker-group",
|
|
"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-start-target",
|
|
"scroll-timeline",
|
|
"scroll-timeline-axis",
|
|
"scroll-timeline-name",
|
|
"scrollbar-color",
|
|
"scrollbar-gutter",
|
|
"scrollbar-width",
|
|
"shape-image-threshold",
|
|
"shape-inside",
|
|
"shape-margin",
|
|
"shape-outside",
|
|
"slider-orientation",
|
|
"spatial-navigation-action",
|
|
"spatial-navigation-contain",
|
|
"spatial-navigation-function",
|
|
"speak",
|
|
"speak-as",
|
|
"speak-header",
|
|
"speak-numeral",
|
|
"speak-punctuation",
|
|
"speech-rate",
|
|
"stress",
|
|
"string-set",
|
|
"stroke",
|
|
"stroke-align",
|
|
"stroke-alignment",
|
|
"stroke-break",
|
|
"stroke-color",
|
|
"stroke-dash-corner",
|
|
"stroke-dash-justify",
|
|
"stroke-dashadjust",
|
|
"stroke-dasharray",
|
|
"stroke-dashcorner",
|
|
"stroke-dashoffset",
|
|
"stroke-image",
|
|
"stroke-linecap",
|
|
"stroke-linejoin",
|
|
"stroke-miterlimit",
|
|
"stroke-opacity",
|
|
"stroke-origin",
|
|
"stroke-position",
|
|
"stroke-repeat",
|
|
"stroke-size",
|
|
"stroke-width",
|
|
"tab-size",
|
|
"table-layout",
|
|
"text-align",
|
|
"text-align-all",
|
|
"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-skip",
|
|
"text-decoration-skip-box",
|
|
"text-decoration-skip-ink",
|
|
"text-decoration-skip-inset",
|
|
"text-decoration-skip-self",
|
|
"text-decoration-skip-spaces",
|
|
"text-decoration-style",
|
|
"text-decoration-thickness",
|
|
"text-emphasis",
|
|
"text-emphasis-color",
|
|
"text-emphasis-position",
|
|
"text-emphasis-skip",
|
|
"text-emphasis-style",
|
|
"text-group-align",
|
|
"text-indent",
|
|
"text-justify",
|
|
"text-orientation",
|
|
"text-overflow",
|
|
"text-shadow",
|
|
"text-spacing",
|
|
"text-spacing-trim",
|
|
"text-transform",
|
|
"text-underline-offset",
|
|
"text-underline-position",
|
|
"text-wrap",
|
|
"text-wrap-mode",
|
|
"text-wrap-style",
|
|
"timeline-scope",
|
|
"top",
|
|
"transform",
|
|
"transform-box",
|
|
"transform-origin",
|
|
"transform-style",
|
|
"transition",
|
|
"transition-behavior",
|
|
"transition-delay",
|
|
"transition-duration",
|
|
"transition-property",
|
|
"transition-timing-function",
|
|
"translate",
|
|
"unicode-bidi",
|
|
"user-select",
|
|
"vertical-align",
|
|
"view-timeline",
|
|
"view-timeline-axis",
|
|
"view-timeline-inset",
|
|
"view-timeline-name",
|
|
"view-transition-class",
|
|
"view-transition-group",
|
|
"view-transition-name",
|
|
"visibility",
|
|
"voice-balance",
|
|
"voice-duration",
|
|
"voice-family",
|
|
"voice-pitch",
|
|
"voice-range",
|
|
"voice-rate",
|
|
"voice-stress",
|
|
"voice-volume",
|
|
"volume",
|
|
"white-space",
|
|
"white-space-collapse",
|
|
"white-space-trim",
|
|
"widows",
|
|
"width",
|
|
"will-change",
|
|
"word-break",
|
|
"word-space-transform",
|
|
"word-spacing",
|
|
"word-wrap",
|
|
"wrap-after",
|
|
"wrap-before",
|
|
"wrap-flow",
|
|
"wrap-inside",
|
|
"wrap-through",
|
|
"writing-mode",
|
|
"z-index"
|
|
]);
|