detached 4333716

wip

commit
43337169d19d7b1090faed0c48b9ab5ffb28eb99
author
bamen · · 2025-06-02 15:05 UTC
parent
f30976a
signature
unsigned
1607 files · +178060 -7862
M .gitignore +7 -2
@@ -1,9 +1,10 @@
11 .env
2-node_modules/
2+# Node.js/Bun specific (removed)
3+# node_modules/
34 *tmp/
45 tmp/*
56 config.yml
6-bun.lockb
7+# bun.lockb
78 *.log
89 *.txt
910 *sync-conflict*
@@ -16,3 +17,7 @@ setup.sh
1617 sqlite.db
1718 .vscode/
1819 admin-ui/
20+
21+# Standalone Tailwind/DaisyUI
22+tailwindcss
23+daisyui.js
M .goreleaser.yaml +1 -1
@@ -4,7 +4,7 @@ before:
44 hooks:
55 - go mod tidy
66 - templ generate
7- - bun run build:css
7+ - tailwindcss -i internal/webui/public/assets/css/custom.css -o internal/webui/public/assets/css/tailwind.css
88
99 release:
1010 draft: true
M Makefile +1 -1
@@ -38,7 +38,7 @@ build: build-css build-templ
3838 # Build CSS with tailwindcss
3939 build-css:
4040 @echo "Building CSS with tailwindcss..."
41- @bun run build:css
41+ @tailwindcss -i internal/webui/public/assets/css/custom.css -o internal/webui/public/assets/css/tailwind.css
4242 @echo "CSS built successfully"
4343
4444 # Generate Go code from templ templates
M internal/httpserve/handlers/container_crud.go +34 -22
@@ -1,8 +1,8 @@
11 package handlers
22
33 import (
4+ "encoding/json"
45 "fmt"
5- "net/http"
66 "strings"
77
88 "github.com/bnema/gordon/internal/server"
@@ -126,25 +126,6 @@ func CreateContainerFullGET(c echo.Context, a *server.App) error {
126126 func CreateContainerPOST(c echo.Context, a *server.App) error {
127127 log.Debug("CreateContainerPOST handler called")
128128
129- // Retrieve the ShortID of the image from the URL
130- ShortID := c.Param("ID")
131- log.Debug("Received ShortID for container creation:", "ShortID", ShortID)
132-
133- // Convert the ShortID to a full image ID
134- imageID, err := FromShortIDToImageID(ShortID)
135- if err != nil {
136- log.Error("Error converting ShortID to full image ID:", "error", err)
137- return sendError(c, err)
138- }
139- log.Debug("Converted ShortID to full image ID:", "imageID", imageID)
140-
141- // Get the image info
142- _, err = docker.GetImageInfo(imageID)
143- if err != nil {
144- log.Error("Error getting image info:", "error", err)
145- return sendError(c, err)
146- }
147-
148129 // Retrieve all form parameters
149130 formParams, err := c.FormParams()
150131 if err != nil {
@@ -165,6 +146,22 @@ func CreateContainerPOST(c echo.Context, a *server.App) error {
165146 }
166147 }
167148
149+ // Get the full image ID directly from the sanitized form inputs
150+ imageID, ok := sanitizedInputs["image_id"]
151+ if !ok || imageID == "" {
152+ log.Error("Full image ID not found in form submission")
153+ // You might want to return a more specific error message to the user here
154+ return sendError(c, fmt.Errorf("missing image ID in form submission"))
155+ }
156+ log.Debug("Retrieved full image ID from form:", "imageID", imageID)
157+
158+ // Get the image info (Optional but good practice: verify the image ID still exists)
159+ _, err = docker.GetImageInfo(imageID)
160+ if err != nil {
161+ log.Error("Error getting image info:", "error", err)
162+ return sendError(c, err)
163+ }
164+
168165 cmdParams, err := cmdparams.FromInputsToCmdParams(sanitizedInputs, a)
169166 if err != nil {
170167 return sendError(c, err)
@@ -229,6 +226,21 @@ func CreateContainerPOST(c echo.Context, a *server.App) error {
229226 log.Info("Skipping proxy setup as requested", "container_id", containerID, "container_name", containerName)
230227 }
231228
232- // Redirect to the container list page
233- return c.Redirect(http.StatusSeeOther, fmt.Sprintf("%s/containers", a.Config.Admin.Path))
229+ // Prepare success message payload
230+ successPayload := map[string]string{
231+ "level": "success",
232+ "message": fmt.Sprintf("Container '%s' created successfully.", containerName),
233+ }
234+ jsonPayload, err := json.Marshal(successPayload)
235+ if err != nil {
236+ // Log the error, but proceed with redirect as container creation was likely successful
237+ log.Error("Failed to marshal success payload for HX-Trigger", "error", err)
238+ } else {
239+ c.Response().Header().Set("HX-Trigger", fmt.Sprintf(`{"showMessage": %s}`, string(jsonPayload)))
240+ }
241+
242+ // Render a success message fragment instead of redirecting
243+ renderer := render.NewTemplRenderer(a)
244+ successMsg := fmt.Sprintf("Container '%s' created successfully.", containerName)
245+ return renderer.RenderTempl(c, templcomponents.Success(successMsg)) // Use the correct Success component
234246 }
M internal/httpserve/handlers/container_management.go +101 -5
@@ -224,12 +224,108 @@ func ImageManagerPrune(c echo.Context, a *server.App) error {
224224 lastPruneResult.mutex.Unlock()
225225 }()
226226
227- // Immediately return 202 Accepted to the client
228- c.Response().Header().Set(echo.HeaderContentType, echo.MIMETextHTML) // Set appropriate content type if needed for HTMX
227+ // Immediately return a placeholder that initiates polling
228+ // Note: We need to modify imagelist.templ to handle this response properly
229+ // For now, just return 202 Accepted and indicate work started.
230+ // The actual polling trigger will be added in the template.
229231 c.Response().WriteHeader(http.StatusAccepted)
230- // Optionally, return a message or updated component indicating the process has started
231- // For now, just return a simple message in the response body
232- return c.String(http.StatusAccepted, "Image pruning started in the background.")
232+ // We'll return a small snippet that the template swap can use
233+ // This snippet should include the polling mechanism itself.
234+ // Example (needs refinement in the template):
235+ return c.HTML(http.StatusAccepted, `<div id="prune-status-poller" hx-get="/htmx/image-manager/prune-status" hx-trigger="load, every 3s" hx-target="#prune-status-poller" hx-swap="outerHTML">Pruning images in background... Checking status.</div>`)
236+}
237+
238+// ImageManagerPruneStatus checks the status of a background prune operation
239+func ImageManagerPruneStatus(c echo.Context, a *server.App) error {
240+ lastPruneResult.mutex.Lock()
241+ defer lastPruneResult.mutex.Unlock()
242+
243+ // If prune is not done, return an empty response or keep the poller active
244+ if !lastPruneResult.Done {
245+ // Returning 204 No Content will stop polling if using hx-swap="none"
246+ // However, our poller replaces itself, so we just return the same polling div
247+ // or an updated status message within it.
248+ // Let's keep the existing poller HTML but maybe update the text slightly.
249+ return c.HTML(http.StatusOK, `<div id="prune-status-poller" hx-get="/htmx/image-manager/prune-status" hx-trigger="every 3s" hx-target="#prune-status-poller" hx-swap="outerHTML">Still pruning... Checking status.</div>`)
250+ }
251+
252+ // Prune is done, prepare the final response
253+ logger.Info("Prune complete, preparing final response for poller.")
254+
255+ // Prepare JSON payload for HX-Trigger toast message
256+ var level string
257+ if lastPruneResult.Success {
258+ level = "success"
259+ } else {
260+ level = "error"
261+ }
262+ payload := map[string]string{"level": level, "message": lastPruneResult.Message}
263+ jsonPayload, marshalErr := json.Marshal(payload)
264+ if marshalErr != nil {
265+ logger.Error("Failed to marshal prune result payload for poller", "error", marshalErr)
266+ // Handle marshalling error - maybe return an error component
267+ } else {
268+ c.Response().Header().Set("HX-Trigger", fmt.Sprintf(`{"showMessage": %s}`, string(jsonPayload)))
269+ }
270+
271+ // Reset the flag *after* preparing the response
272+ lastPruneResult.Done = false
273+ message := lastPruneResult.Message // Store message before resetting if needed
274+ success := lastPruneResult.Success
275+ // Reset message/success if needed, or maybe they are only relevant for the toast
276+ // lastPruneResult.Message = ""
277+ // lastPruneResult.Success = false
278+
279+ // Fetch the updated image list (copy logic from ImageManagerComponent)
280+ images, listErr := docker.ListContainerImages()
281+ if listErr != nil {
282+ logger.Error("Failed to list images after prune for poller", "error", listErr)
283+ // Return an error FRAGMENT instead of a full page.
284+ // HX-Trigger for the prune status itself was already set.
285+ pruneStatusMsg := "Prune finished but failed to refresh list."
286+ if !success { // Add prune status detail if it also failed
287+ pruneStatusMsg = fmt.Sprintf("Prune status: %s. Failed to refresh list.", message)
288+ }
289+ return c.HTML(http.StatusOK, fmt.Sprintf("<div class='alert alert-error'>%s Error: %v. Please refresh manually.</div>", pruneStatusMsg, listErr))
290+ }
291+
292+ var humanReadableImages []components.HumanReadableImage
293+ for _, img := range images {
294+ shortID := img.ID[7:19]
295+ safelyInteractWithIDMap(Update, shortID, img.ID)
296+ createdStr := humanize.TimeAgo(time.Unix(img.Created, 0))
297+ sizeStr := humanize.BytesToReadableSize(img.Size)
298+ var repository, tag string
299+ repoTag := "<none>:<none>"
300+ if len(img.RepoTags) > 0 {
301+ repoTag = img.RepoTags[0]
302+ parts := strings.Split(repoTag, ":")
303+ if len(parts) == 2 {
304+ repository = parts[0]
305+ tag = parts[1]
306+ } else {
307+ repository = repoTag
308+ tag = "latest"
309+ }
310+ }
311+ humanReadableImages = append(humanReadableImages, components.HumanReadableImage{
312+ ID: img.ID,
313+ ShortID: shortID,
314+ Created: createdStr,
315+ Size: sizeStr,
316+ Name: repoTag,
317+ RepoDigests: img.RepoDigests,
318+ RepoTags: img.RepoTags,
319+ Repository: repository,
320+ Tag: tag,
321+ })
322+ }
323+
324+ // Render the final ImageList component to replace the poller
325+ renderer := render.NewTemplRenderer(a)
326+ component := components.ImageList(humanReadableImages)
327+ logger.Debug("Rendering final ImageList for poller")
328+ return renderer.RenderTempl(c, component)
233329 }
234330
235331 // ContainerManagerComponent handles the /container-manager route
M internal/httpserve/handlers/container_transactions.go +9 -0
@@ -24,6 +24,15 @@ func generateOrderedYAML(infoMap map[string]interface{}) (string, error) {
2424 continue
2525 }
2626
27+ // Special handling for empty Ports and Volumes maps
28+ if key == "Ports" || key == "Volumes" {
29+ if mapVal, ok := value.(map[string]string); ok && len(mapVal) == 0 {
30+ yamlString += key + ": []\n" // Output as empty list instead of map
31+ continue // Skip normal marshalling for this key
32+ }
33+ }
34+
35+ // Default marshalling for other keys or non-empty maps
2736 yamlBytes, err := yaml.Marshal(map[string]interface{}{key: value})
2837 if err != nil {
2938 return "", err
M internal/httpserve/handlers/login.go +4 -4
@@ -81,12 +81,12 @@ func StartOAuthGithub(c echo.Context, a *server.App) error {
8181 return fmt.Errorf("could not extend session expiration: %w", err)
8282 }
8383
84- // Explicitly mark the session as online since we've validated it
85- logger.Info("Marking existing session as online", "sessionID", sessionID)
84+ // Explicitly mark the session as active since we've validated it
85+ logger.Info("Marking existing session as active", "sessionID", sessionID)
8686 err = queries.MarkSessionActive(a.DB, sessionID)
8787 if err != nil {
88- logger.Error("Failed to mark session as online", "error", err, "sessionID", sessionID)
89- return fmt.Errorf("failed to mark session online: %w", err)
88+ logger.Error("Failed to mark session as active", "error", err, "sessionID", sessionID)
89+ return fmt.Errorf("failed to mark session active: %w", err)
9090 }
9191
9292 logger.Info("Session is valid and extended. Redirecting to admin panel")
M internal/proxy/core.go +6 -0
@@ -218,6 +218,12 @@ func (p *Proxy) Close() {
218218
219219 // requestDomainCertificate requests a certificate for a domain
220220 func (p *Proxy) requestDomainCertificate(domainName string) error {
221+ // If certificate acquisition is globally skipped, do nothing.
222+ if p.config.SkipCertificates {
223+ logger.Debug("Skipping certificate request because SkipCertificates is true", "domain", domainName)
224+ return nil
225+ }
226+
221227 logger.Debug("Requesting certificate for domain", "domain", domainName)
222228
223229 // Check if we're already processing this domain
M internal/proxy/middleware.go +15 -16
@@ -1,7 +1,6 @@
11 package proxy
22
33 import (
4- "fmt"
54 "net"
65 "net/http"
76 "strings"
@@ -114,7 +113,7 @@ func (p *Proxy) setupMiddleware() {
114113 }
115114
116115 // Add middleware to log incoming headers (for debugging Cloudflare detection)
117- p.httpsServer.Use(logHeadersMiddleware())
116+ // p.httpsServer.Use(logHeadersMiddleware())
118117
119118 // --- Rate Limiting Setup (Domain Only Now) ---
120119 if p.config.EnableRateLimit {
@@ -250,17 +249,17 @@ func (p *Proxy) createRequestIDMiddleware() echo.MiddlewareFunc {
250249 }
251250
252251 // logHeadersMiddleware creates a middleware function to log request headers
253-func logHeadersMiddleware() echo.MiddlewareFunc {
254- return func(next echo.HandlerFunc) echo.HandlerFunc {
255- return func(c echo.Context) error {
256- // Log all headers at DEBUG level
257- headerStrings := []string{}
258- for k, v := range c.Request().Header {
259- headerStrings = append(headerStrings, fmt.Sprintf("%s: %s", k, strings.Join(v, ",")))
260- }
261- logger.Debug("Incoming Request Headers", "request_id", c.Get(RequestIDKey), "headers", strings.Join(headerStrings, " | "))
262-
263- return next(c)
264- }
265- }
266-}
252+// func logHeadersMiddleware() echo.MiddlewareFunc {
253+// return func(next echo.HandlerFunc) echo.HandlerFunc {
254+// return func(c echo.Context) error {
255+// // Log all headers at DEBUG level
256+// headerStrings := []string{}
257+// for k, v := range c.Request().Header {
258+// headerStrings = append(headerStrings, fmt.Sprintf("%s: %s", k, strings.Join(v, ",")))
259+// }
260+// logger.Debug("Incoming Request Headers", "request_id", c.Get(RequestIDKey), "headers", strings.Join(headerStrings, " | "))
261+
262+// return next(c)
263+// }
264+// }
265+// }
M internal/proxy/routes.go +38 -4
@@ -1196,19 +1196,53 @@ func (p *Proxy) StartContainerEventListener() error {
11961196 } else {
11971197 // Even if IP is the same, make sure the route is active
11981198 if !route.Active {
1199- logger.Info("Reactivating route for restarted container",
1199+ logger.Info("Attempting to reactivate route for restarted container",
12001200 "container_id", containerID,
12011201 "container_name", containerName,
12021202 "domain", domain)
12031203
1204- // Just reuse ForceUpdateRouteIP with the same IP to activate the route
1205- p.ForceUpdateRouteIP(domain, containerIP)
1204+ // --- Add Health Check Before Activation ---
1205+ target := net.JoinHostPort(containerIP, route.ContainerPort)
1206+ maxRetries := 5
1207+ retryDelay := 2 * time.Second
1208+ healthy := false
1209+ for i := 0; i < maxRetries; i++ {
1210+ conn, err := net.DialTimeout("tcp", target, 1*time.Second)
1211+ if err == nil {
1212+ conn.Close()
1213+ healthy = true
1214+ logger.Info("Container health check successful", "target", target, "attempt", i+1)
1215+ break
1216+ }
1217+ logger.Debug("Container health check failed, retrying...",
1218+ "target", target,
1219+ "attempt", i+1,
1220+ "error", err)
1221+ time.Sleep(retryDelay)
1222+ }
1223+ // --- End Health Check ---
1224+
1225+ if healthy {
1226+ logger.Info("Container is healthy, proceeding with route activation", "domain", domain)
1227+ // Just reuse ForceUpdateRouteIP with the same IP to activate the route
1228+ err := p.ForceUpdateRouteIP(domain, containerIP)
1229+ if err != nil {
1230+ logger.Error("Failed to activate route after health check",
1231+ "domain", domain,
1232+ "error", err)
1233+ }
1234+ } else {
1235+ logger.Warn("Container did not become healthy after retries, route remains inactive",
1236+ "domain", domain,
1237+ "target", target)
1238+ // Route remains inactive, periodic check might pick it up later
1239+ }
12061240 }
12071241 }
12081242 }
12091243 }
12101244
1211- // Call the standard recreation handler for additional checks
1245+ // Call the standard recreation handler for additional checks (might add the route if missing)
12121246 p.HandleContainerRecreation(containerID, containerName, containerIP)
12131247 }()
12141248 }
M internal/templating/cmdparams/from_inputs.go +21 -2
@@ -23,6 +23,9 @@ func FromInputsToCmdParams(inputs map[string]string, a *server.App) (docker.Cont
2323 }
2424 }
2525
26+ // Retrieve proxy port from the correct input key
27+ proxyPortValue := inputs["container_port"] // Changed from proxy_port
28+
2629 params := docker.ContainerCommandParams{
2730 IsSSL: inputs["container_protocol"] == "https",
2831 ContainerName: inputs["container_name"],
@@ -31,14 +34,30 @@ func FromInputsToCmdParams(inputs map[string]string, a *server.App) (docker.Cont
3134 ImageName: inputs["image_name"],
3235 ImageID: inputs["image_id"],
3336 Restart: inputs["restart"],
34- ProxyPort: inputs["proxy_port"],
37+ ProxyPort: proxyPortValue, // Assign the retrieved value
3538 Volumes: volumeSlice,
3639 Environment: environmentSlice,
3740 Network: a.Config.ContainerEngine.Network,
3841 PortMappings: portMappings,
42+ // Labels will be populated below
43+ }
44+
45+ // Initialize Labels slice if nil
46+ if params.Labels == nil {
47+ params.Labels = []string{}
3948 }
4049
41- err = SetupProxyRoute(&params, params.ProxyPort, a)
50+ // Add standard labels and the proxy port label
51+ params.Labels = append(params.Labels,
52+ fmt.Sprintf("gordon.managed=true"),
53+ fmt.Sprintf("gordon.domain=%s.%s", params.ServiceName, params.Domain),
54+ fmt.Sprintf("gordon.proxy.ssl=%t", params.IsSSL),
55+ fmt.Sprintf("gordon.proxy.port=%s", proxyPortValue), // Add the proxy port label
56+ )
57+
58+ // SetupProxyRoute might need adjustment if it relies on params.ProxyPort directly
59+ // Assuming SetupProxyRoute uses the passed proxyPortValue or reads labels
60+ err = SetupProxyRoute(&params, proxyPortValue, a) // Pass the correct port value
4261 if err != nil {
4362 return docker.ContainerCommandParams{}, fmt.Errorf("error setting up proxy route: %w", err)
4463 }
M internal/templating/models/templ/components/containerlist.templ +3 -3
@@ -1,14 +1,14 @@
11 package components
22
33 import (
4- "github.com/docker/docker/api/types"
4+ "github.com/docker/docker/api/types/container"
55 "strconv"
66 )
77
88 // ContainerList displays a list of containers
9-templ ContainerList(containers []types.Container, noContainer bool) {
9+templ ContainerList(containers []container.Summary, noContainer bool) {
1010 <!-- Container list using daisyUI components -->
11- <div class="card w-full bg-base-300">
11+ <div class="card w-full bg-base-100">
1212 <div class="card-body p-4">
1313
1414 <!-- Action buttons -->
M internal/templating/models/templ/components/containerlist_templ.go +3 -3 generated file: collapsed
M internal/templating/models/templ/components/createcontainer.templ +2 -1
@@ -21,7 +21,7 @@ type ContainerFormData struct {
2121 templ CreateContainerForm(data ContainerFormData) {
2222 <div class="flex flex-col md:flex-row space-y-4 md:space-y-0 md:space-x-4 flex-grow">
2323 <!-- Left Side: Docker Run Options -->
24- <div class="flex-grow card p-6">
24+ <div class="flex-grow card p-6 bg-base-100">
2525 <h2 class="card-title pb-4">Deploy a container based on { data.ImageName }</h2>
2626 if data.ErrorMessage != "" {
2727 <div class="alert alert-error">
@@ -36,6 +36,7 @@ templ CreateContainerForm(data ContainerFormData) {
3636 hx-swap="innerHTML"
3737 hx-target={ "#create-form-target-" + data.ShortID }>
3838 <!-- Image Name -->
39+ <input type="hidden" name="image_id" value={ data.ImageID } />
3940 <div class="grid grid-cols-1 md:grid-cols-3 gap-4 pb-4">
4041 <div class="md:col-span-1">
4142 <label class="label">
M internal/templating/models/templ/components/createcontainer_templ.go +42 -29 generated file: collapsed
M internal/templating/models/templ/components/imagelist.templ +1 -1
@@ -21,7 +21,7 @@ type HumanReadableImage struct {
2121 // ImageList displays a list of images
2222 templ ImageList(images []HumanReadableImage) {
2323 <!-- Image list using daisyUI components -->
24- <div class="card w-full bg-base-300">
24+ <div class="card w-full bg-base-100">
2525 <div class="card-body p-4">
2626
2727 <!-- Action buttons -->
M internal/templating/models/templ/components/imagelist_templ.go +1 -1 generated file: collapsed
M internal/templating/models/templ/components/navbar.templ +1 -1
@@ -3,7 +3,7 @@ package components
33 // Navbar is a menu component for navigation
44 templ Navbar(buildVersion string, adminPath string, userSettingsURL string, logoutURL string) {
55 <!-- DaisyUI Navbar -->
6- <div class="navbar bg-base-200 shadow-lg fixed top-0 z-50">
6+ <div class="navbar bg-base-100 shadow-lg fixed top-0 z-50">
77 <div class="navbar-start">
88 <div class="flex items-center">
99 <h1 class="gordon-title text-2xl md:text-3xl text-primary tracking-tighter px-4">
M internal/templating/models/templ/components/navbar_templ.go +1 -1 generated file: collapsed
M internal/templating/models/templ/components/success.templ +1 -1
@@ -4,7 +4,7 @@ package components
44 templ Success(message string) {
55 <div
66 id="success"
7- class="flex text-indigo-600 content-center justify-center items-center w-full h-full">
7+ class="flex text-success content-center justify-center items-center w-full h-full">
88 <p class="text-2xl text-center">
99 if message != "" {
1010 { message }
M internal/templating/models/templ/components/success_templ.go +1 -1 generated file: collapsed
M internal/templating/models/templ/layouts/admin_layout.templ +1 -1
@@ -7,7 +7,7 @@ templ AdminLayout(title string, buildVersion string, adminPath string, userSetti
77 <!DOCTYPE html>
88 <html lang="en" data-theme="gordon-dark">
99 @components.Header(title)
10- <body class="min-h-screen bg-base-100">
10+ <body class="min-h-screen bg-base-250">
1111 @components.Navbar(buildVersion, adminPath, userSettingsURL, logoutURL)
1212
1313 <!-- Main content starts after navbar height -->
M internal/templating/models/templ/layouts/admin_layout_templ.go +1 -1 generated file: collapsed
M internal/templating/models/templ/layouts/base.templ +1 -1
@@ -8,7 +8,7 @@ templ Base(title string) {
88 <!DOCTYPE html>
99 <html lang="en">
1010 @components.Header(title)
11- <body class="min-h-screen bg-base-100">
11+ <body class="min-h-screen bg-base-200">
1212 { children... }
1313 @components.Footer()
1414 </body>
M internal/templating/models/templ/layouts/base_templ.go +1 -1 generated file: collapsed
M internal/templating/models/templ/pages/admin/install.templ +1 -1
@@ -13,7 +13,7 @@ templ InstallPage(title string, version string) {
1313 >
1414 <div class="circle-shadow flex justify-center w-100">
1515 <img
16- src="/assets/imgs/gordon-mascot-hq-trsp.png"
16+ src="/assets/imgs/gordon-mascot-mq-trsp.png"
1717 alt="logo"
1818 class="sm:h-24 h-32 xl:h-48"
1919 />
M internal/templating/models/templ/pages/admin/install_templ.go +1 -1 generated file: collapsed
M internal/templating/models/templ/pages/admin/manager.templ +2 -2
@@ -17,7 +17,7 @@ templ ManagerPage(title string, buildVersion string, adminPath string, userSetti
1717 </div>
1818
1919 <!-- Stats overview -->
20- <div class="stats shadow mb-6 w-full bg-base-300">
20+ <div class="stats shadow mb-6 w-full bg-base-100">
2121 <div class="stat">
2222 <div class="stat-figure text-primary">
2323 <span class="iconf text-3xl">󰡨</span>
@@ -38,7 +38,7 @@ templ ManagerPage(title string, buildVersion string, adminPath string, userSetti
3838 </div>
3939
4040 <!-- Tabs for containers and images -->
41- <div role="tablist" class="tabs tabs-boxed mb-4">
41+ <div role="tablist" class="tabs tabs-border mb-4">
4242 <input type="radio" name="my_tabs" role="tab" class="tab" aria-label="Containers" id="containers-tab" checked />
4343 <div role="tabpanel" class="tab-content p-0 bg-base-300">
4444 <!-- Container manager section -->
M internal/templating/models/templ/pages/admin/manager_templ.go +2 -2 generated file: collapsed
M internal/templating/models/templ/pages/errors/errors.templ +2 -5
@@ -16,13 +16,10 @@ templ NotFoundPage(data ErrorPageData) {
1616 @layouts.Base(data.Title) {
1717 <div class="flex flex-col items-center justify-center min-h-screen p-4">
1818 <div class="flex flex-col items-center mb-8">
19- <img src="/assets/imgs/gordon-mascot-hq-trsp.png" alt="Gordon Mascot" class="w-64 h-64 mb-4" />
19+ <img src="/assets/imgs/gordon-mascot-mq-trsp.png" alt="Gordon Mascot" class="w-64 mb-4" />
2020 <h1 class="text-4xl font-bold text-error">404</h1>
2121 <h2 class="text-2xl mb-2">Page Not Found</h2>
2222 <p class="text-center text-base-content opacity-70 max-w-md mb-8">{ data.Message }</p>
23- <a href={ templ.URL(data.AdminPath) } class="btn btn-primary">
24- <span class="iconf mr-2">🏠</span> Go Home
25- </a>
2623 </div>
2724 </div>
2825 }
@@ -33,7 +30,7 @@ templ ForbiddenPage(data ErrorPageData) {
3330 @layouts.Base(data.Title) {
3431 <div class="flex flex-col items-center justify-center min-h-screen p-4">
3532 <div class="flex flex-col items-center mb-8">
36- <img src="/assets/imgs/gordon-mascot-hq-trsp.png" alt="Gordon Mascot" class="w-64 h-64 mb-4" />
33+ <img src="/assets/imgs/gordon-mascot-mq-trsp.png" alt="Gordon Mascot" class="w-64 h-64 mb-4" />
3734 <h1 class="text-4xl font-bold text-error">403</h1>
3835 <h2 class="text-2xl mb-2">Access Forbidden</h2>
3936 <p class="text-center text-base-content opacity-70 max-w-md mb-8">{ data.Message }</p>
M internal/templating/models/templ/pages/errors/errors_templ.go +16 -25 generated file: collapsed
M internal/webui/public/assets/css/custom.css +22 -103
@@ -1,123 +1,42 @@
1-/**
2- * Path: internal/ui/public/assets/css/custom.css
3- *
4- * @format
5- */
6-
7-/* Embeded path : assets/css/cutsom.css */
8-
91 @import "tailwindcss";
10-@plugin "daisyui";
11-
12-/* Custom DaisyUI theme */
2+/* Custom DaisyUI theme - Defined in tailwind.config.js */
133 @plugin "daisyui/theme" {
144 name: "gordon-dark";
155 default: true;
166 prefersdark: true;
177 color-scheme: "dark";
18- --color-base-100: oklch(28% 0.091 267.935);
19- --color-base-200: oklch(20% 0.042 265.755);
20- --color-base-300: oklch(13% 0.028 261.692);
21- --color-base-content: oklch(93% 0.034 272.788);
22- --color-primary: oklch(87% 0 0);
23- --color-primary-content: oklch(14% 0 0);
24- --color-secondary: oklch(80% 0.105 251.813);
25- --color-secondary-content: oklch(28% 0.091 267.935);
26- --color-accent: oklch(80% 0.105 251.813);
27- --color-accent-content: oklch(28% 0.091 267.935);
28- --color-neutral: oklch(37% 0.034 259.733);
29- --color-neutral-content: oklch(98% 0.002 247.839);
8+ --color-base-100: oklch(14% 0 0);
9+ --color-base-200: oklch(21% 0.006 285.885);
10+ --color-base-250: oklch(21% 0.006 285.885);
11+ --color-base-300: oklch(26% 0 0);
12+ --color-base-content: oklch(97% 0.001 106.424);
13+ --color-primary: oklch(44% 0.043 257.281);
14+ --color-primary-content: oklch(98% 0.003 247.858);
15+ --color-secondary: oklch(66% 0.179 58.318);
16+ --color-secondary-content: oklch(98% 0.022 95.277);
17+ --color-accent: oklch(60% 0.118 184.704);
18+ --color-accent-content: oklch(98% 0.014 180.72);
19+ --color-neutral: oklch(42% 0.199 265.638);
20+ --color-neutral-content: oklch(98% 0.001 106.423);
3021 --color-info: oklch(68% 0.169 237.323);
3122 --color-info-content: oklch(97% 0.013 236.62);
32- --color-success: oklch(70% 0.14 182.503);
33- --color-success-content: oklch(98% 0.014 180.72);
34- --color-warning: oklch(76% 0.188 70.08);
35- --color-warning-content: oklch(98% 0.022 95.277);
23+ --color-success: oklch(69% 0.17 162.48);
24+ --color-success-content: oklch(97% 0.021 166.113);
25+ --color-warning: oklch(70% 0.213 47.604);
26+ --color-warning-content: oklch(98% 0.016 73.684);
3627 --color-error: oklch(64% 0.246 16.439);
3728 --color-error-content: oklch(96% 0.015 12.422);
38- --radius-selector: 0rem;
39- --radius-field: 0rem;
40- --radius-box: 0rem;
29+ --radius-selector: 1rem;
30+ --radius-field: 0.5rem;
31+ --radius-box: 1rem;
4132 --size-selector: 0.25rem;
42- --size-field: 0.25rem;
33+ --size-field: 0.21875rem;
4334 --border: 1px;
4435 --depth: 0;
4536 --noise: 0;
4637 }
4738
4839
49-/* Custom component classes */
50-@layer components {
51- /* Button styles */
52- .btn-primary {
53- @apply flex w-full justify-center border border-transparent bg-indigo-600 px-4 py-2 text-sm font-medium text-white hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2;
54- }
55-
56- .btn-secondary {
57- @apply flex w-full justify-center border border-secondary bg-secondary px-4 py-2 text-sm font-medium text-secondary-content hover:bg-secondary/90 focus:outline-none focus:ring-2 focus:ring-secondary focus:ring-offset-2;
58- }
59-
60- .btn-danger {
61- @apply flex w-full justify-center border border-transparent bg-red-600 px-4 py-2 text-sm font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-offset-2;
62- }
63-
64- /* Alert styles */
65- .alert-error {
66- @apply bg-red-50 p-4 dark:bg-red-900/20;
67- }
68-
69- .alert-error-icon {
70- @apply h-5 w-5 text-red-400;
71- }
72-
73- .alert-error-text {
74- @apply text-sm font-medium text-red-800 dark:text-red-300;
75- }
76-
77- .alert-success {
78- @apply bg-green-50 p-4 dark:bg-green-900/20;
79- }
80-
81- .alert-success-icon {
82- @apply h-5 w-5 text-green-400;
83- }
84-
85- .alert-success-text {
86- @apply text-sm font-medium text-green-800 dark:text-green-300;
87- }
88-
89- /* Card styles */
90- .card {
91- @apply bg-base-100 p-4 shadow mb-4;
92- }
93-
94- .card-header {
95- @apply text-lg font-semibold text-indigo-600 mb-2;
96- }
97-
98- /* Background styles */
99- .bg-app {
100- @apply bg-base-300;
101- }
102-
103- .bg-sidebar {
104- @apply bg-indigo-900;
105- }
106-
107- .bg-card {
108- @apply bg-base-100;
109- }
110-
111- /* Text styles */
112- .text-title {
113- @apply text-indigo-600 font-semibold;
114- }
115-
116- .text-subtitle {
117- @apply text-indigo-500;
118- }
119-}
120-
12140 /* Import IBM Plex Fonts */
12241 @font-face {
12342 font-family: "IBMPlexSans-Bold";
M internal/webui/public/assets/css/tailwind.css +474 -7547 large diff (8021 lines changed): collapsed
A node_modules/.bin/cssesc +1 -0 generated file: collapsed
A node_modules/.bin/glob +1 -0 generated file: collapsed
A node_modules/.bin/jiti +1 -0 generated file: collapsed
A node_modules/.bin/nanoid +1 -0 generated file: collapsed
A node_modules/.bin/node-which +1 -0 generated file: collapsed
A node_modules/.bin/prettier +1 -0 generated file: collapsed
A node_modules/.bin/resolve +1 -0 generated file: collapsed
A node_modules/.bin/sucrase +1 -0 generated file: collapsed
A node_modules/.bin/sucrase-node +1 -0 generated file: collapsed
A node_modules/.bin/tailwind +1 -0 generated file: collapsed
A node_modules/.bin/yaml +1 -0 generated file: collapsed
A node_modules/.svelte2tsx-language-server-files/svelte-native-jsx.d.ts +32 -0 generated file: collapsed
A node_modules/.svelte2tsx-language-server-files/svelte-shims-v4.d.ts +287 -0 generated file: collapsed
A node_modules/@alloc/quick-lru/index.d.ts +128 -0 generated file: collapsed
A node_modules/@alloc/quick-lru/index.js +263 -0 generated file: collapsed
A node_modules/@alloc/quick-lru/license +9 -0 generated file: collapsed
A node_modules/@alloc/quick-lru/package.json +43 -0 generated file: collapsed
A node_modules/@alloc/quick-lru/readme.md +139 -0 generated file: collapsed
A node_modules/@isaacs/cliui/README.md +143 -0 generated file: collapsed
A node_modules/@isaacs/cliui/build/index.cjs +317 -0 generated file: collapsed
A node_modules/@isaacs/cliui/build/index.d.cts +43 -0 generated file: collapsed
A node_modules/@isaacs/cliui/build/lib/index.js +302 -0 generated file: collapsed
A node_modules/@isaacs/cliui/index.mjs +14 -0 generated file: collapsed
A node_modules/@isaacs/cliui/package.json +86 -0 generated file: collapsed
A node_modules/@jridgewell/gen-mapping/LICENSE +19 -0 generated file: collapsed
A node_modules/@jridgewell/gen-mapping/README.md +227 -0 generated file: collapsed
A node_modules/@jridgewell/gen-mapping/package.json +76 -0 generated file: collapsed
A node_modules/@jridgewell/resolve-uri/LICENSE +19 -0 generated file: collapsed
A node_modules/@jridgewell/resolve-uri/README.md +40 -0 generated file: collapsed
A node_modules/@jridgewell/resolve-uri/package.json +69 -0 generated file: collapsed
A node_modules/@jridgewell/set-array/LICENSE +19 -0 generated file: collapsed
A node_modules/@jridgewell/set-array/README.md +37 -0 generated file: collapsed
A node_modules/@jridgewell/set-array/package.json +65 -0 generated file: collapsed
A node_modules/@jridgewell/sourcemap-codec/LICENSE +21 -0 generated file: collapsed
A node_modules/@jridgewell/sourcemap-codec/README.md +264 -0 generated file: collapsed
A node_modules/@jridgewell/sourcemap-codec/package.json +75 -0 generated file: collapsed
A node_modules/@jridgewell/trace-mapping/LICENSE +19 -0 generated file: collapsed
A node_modules/@jridgewell/trace-mapping/README.md +257 -0 generated file: collapsed
A node_modules/@jridgewell/trace-mapping/package.json +77 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/LICENSE +21 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/README.md +171 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts +20 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/adapters/fs.js +19 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/constants.d.ts +4 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/constants.js +17 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/index.d.ts +12 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/index.js +26 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/providers/async.d.ts +7 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/providers/async.js +104 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/providers/common.d.ts +1 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/providers/common.js +13 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts +5 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/providers/sync.js +54 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/settings.d.ts +20 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/settings.js +24 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/types/index.d.ts +20 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/types/index.js +2 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts +2 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/utils/fs.js +19 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/utils/index.d.ts +2 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/out/utils/index.js +5 -0 generated file: collapsed
A node_modules/@nodelib/fs.scandir/package.json +44 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/LICENSE +21 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/README.md +126 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts +13 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/adapters/fs.js +17 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/index.d.ts +12 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/index.js +26 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/providers/async.d.ts +4 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/providers/async.js +36 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/providers/sync.d.ts +3 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/providers/sync.js +23 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/settings.d.ts +16 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/settings.js +16 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/types/index.d.ts +4 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/out/types/index.js +2 -0 generated file: collapsed
A node_modules/@nodelib/fs.stat/package.json +37 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/LICENSE +21 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/README.md +215 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/index.d.ts +14 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/index.js +34 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/async.d.ts +12 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/async.js +30 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/index.d.ts +4 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/index.js +9 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/stream.d.ts +12 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/stream.js +34 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/sync.d.ts +10 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/providers/sync.js +14 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/async.d.ts +30 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/async.js +97 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/common.d.ts +7 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/common.js +31 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/reader.d.ts +6 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/reader.js +11 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/sync.d.ts +15 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/readers/sync.js +59 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/settings.d.ts +30 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/settings.js +26 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/types/index.d.ts +8 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/out/types/index.js +2 -0 generated file: collapsed
A node_modules/@nodelib/fs.walk/package.json +44 -0 generated file: collapsed
A node_modules/@parcel/watcher-linux-x64-glibc/LICENSE +21 -0 generated file: collapsed
A node_modules/@parcel/watcher-linux-x64-glibc/README.md +1 -0 generated file: collapsed
A node_modules/@parcel/watcher-linux-x64-glibc/package.json +33 -0 generated file: collapsed
A node_modules/@parcel/watcher-linux-x64-glibc/watcher.node +0 -0 binary file: no text diff

binary file: no text diff

A node_modules/@parcel/watcher-linux-x64-musl/LICENSE +21 -0 generated file: collapsed
A node_modules/@parcel/watcher-linux-x64-musl/README.md +1 -0 generated file: collapsed
A node_modules/@parcel/watcher-linux-x64-musl/package.json +33 -0 generated file: collapsed
A node_modules/@parcel/watcher-linux-x64-musl/watcher.node +0 -0 binary file: no text diff

binary file: no text diff

A node_modules/@parcel/watcher/LICENSE +21 -0 generated file: collapsed
A node_modules/@parcel/watcher/README.md +135 -0 generated file: collapsed
A node_modules/@parcel/watcher/binding.gyp +93 -0 generated file: collapsed
A node_modules/@parcel/watcher/index.d.ts +49 -0 generated file: collapsed
A node_modules/@parcel/watcher/index.js +41 -0 generated file: collapsed
A node_modules/@parcel/watcher/index.js.flow +48 -0 generated file: collapsed
A node_modules/@parcel/watcher/node_modules/.bin/detect-libc +1 -0 generated file: collapsed
A node_modules/@parcel/watcher/node_modules/detect-libc/.npmignore +7 -0 generated file: collapsed
A node_modules/@parcel/watcher/node_modules/detect-libc/LICENSE +201 -0 generated file: collapsed
A node_modules/@parcel/watcher/node_modules/detect-libc/README.md +78 -0 generated file: collapsed
A node_modules/@parcel/watcher/node_modules/detect-libc/bin/detect-libc.js +18 -0 generated file: collapsed
A node_modules/@parcel/watcher/node_modules/detect-libc/lib/detect-libc.js +92 -0 generated file: collapsed
A node_modules/@parcel/watcher/node_modules/detect-libc/package.json +35 -0 generated file: collapsed
A node_modules/@parcel/watcher/package.json +88 -0 generated file: collapsed
A node_modules/@parcel/watcher/scripts/build-from-source.js +13 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Backend.cc +182 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Backend.hh +37 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Debounce.cc +113 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Debounce.hh +49 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/DirTree.cc +152 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/DirTree.hh +50 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Event.hh +109 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Glob.cc +22 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Glob.hh +34 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/PromiseRunner.hh +101 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Signal.hh +46 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Watcher.cc +237 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/Watcher.hh +73 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/binding.cc +268 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/kqueue/KqueueBackend.cc +306 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/kqueue/KqueueBackend.hh +35 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/linux/InotifyBackend.cc +232 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/linux/InotifyBackend.hh +34 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/macos/FSEventsBackend.cc +338 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/macos/FSEventsBackend.hh +20 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/shared/BruteForceBackend.cc +41 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/shared/BruteForceBackend.hh +25 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/unix/fts.cc +50 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/unix/legacy.cc +77 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/wasm/WasmBackend.cc +132 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/wasm/WasmBackend.hh +34 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/wasm/include.h +74 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/watchman/BSER.cc +302 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/watchman/BSER.hh +69 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/watchman/IPC.hh +175 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/watchman/WatchmanBackend.cc +338 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/watchman/WatchmanBackend.hh +35 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/windows/WindowsBackend.cc +282 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/windows/WindowsBackend.hh +18 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/windows/win_utils.cc +44 -0 generated file: collapsed
A node_modules/@parcel/watcher/src/windows/win_utils.hh +11 -0 generated file: collapsed
A node_modules/@parcel/watcher/wrapper.js +77 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/.editorconfig +14 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/CHANGELOG.md +147 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/LICENSE +201 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/README.md +413 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/examples/is-default-value.js +25 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/examples/limit-long-syntax.js +35 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/examples/negate.js +43 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/examples/no-repeated-options.js +31 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/examples/ordered-options.mjs +41 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/examples/simple-hard-coded.js +26 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/index.js +396 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/internal/errors.js +47 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/internal/primordials.js +393 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/internal/util.js +14 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/internal/validators.js +89 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/package.json +36 -0 generated file: collapsed
A node_modules/@pkgjs/parseargs/utils.js +198 -0 generated file: collapsed
A node_modules/@tailwindcss/cli/LICENSE +21 -0 generated file: collapsed
A node_modules/@tailwindcss/cli/README.md +40 -0 generated file: collapsed
A node_modules/@tailwindcss/cli/package.json +41 -0 generated file: collapsed
A node_modules/@tailwindcss/node/LICENSE +21 -0 generated file: collapsed
A node_modules/@tailwindcss/node/README.md +40 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/.bin/jiti +1 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/LICENSE +21 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/README.md +235 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti-cli.mjs +34 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti-hooks.mjs +117 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti-native.mjs +121 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti-register.d.mts +1 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti-register.mjs +4 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti.cjs +23 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti.d.cts +8 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti.d.mts +8 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/jiti.mjs +22 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/lib/types.d.ts +260 -0 generated file: collapsed
A node_modules/@tailwindcss/node/node_modules/jiti/package.json +134 -0 generated file: collapsed
A node_modules/@tailwindcss/node/package.json +44 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide-linux-x64-gnu/LICENSE +21 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide-linux-x64-gnu/README.md +3 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide-linux-x64-gnu/package.json +30 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide-linux-x64-gnu/tailwindcss-oxide.linux-x64-gnu.node +0 -0 binary file: no text diff

binary file: no text diff

A node_modules/@tailwindcss/oxide-linux-x64-musl/LICENSE +21 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide-linux-x64-musl/README.md +3 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide-linux-x64-musl/package.json +30 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide-linux-x64-musl/tailwindcss-oxide.linux-x64-musl.node +0 -0 binary file: no text diff

binary file: no text diff

A node_modules/@tailwindcss/oxide/LICENSE +21 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide/index.d.ts +37 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide/index.js +315 -0 generated file: collapsed
A node_modules/@tailwindcss/oxide/package.json +63 -0 generated file: collapsed
A node_modules/@tailwindcss/postcss/LICENSE +21 -0 generated file: collapsed
A node_modules/@tailwindcss/postcss/README.md +40 -0 generated file: collapsed
A node_modules/@tailwindcss/postcss/package.json +47 -0 generated file: collapsed
A node_modules/ansi-regex/index.d.ts +33 -0 generated file: collapsed
A node_modules/ansi-regex/index.js +10 -0 generated file: collapsed
A node_modules/ansi-regex/license +9 -0 generated file: collapsed
A node_modules/ansi-regex/package.json +61 -0 generated file: collapsed
A node_modules/ansi-regex/readme.md +60 -0 generated file: collapsed
A node_modules/ansi-styles/index.d.ts +236 -0 generated file: collapsed
A node_modules/ansi-styles/index.js +223 -0 generated file: collapsed
A node_modules/ansi-styles/license +9 -0 generated file: collapsed
A node_modules/ansi-styles/package.json +54 -0 generated file: collapsed
A node_modules/ansi-styles/readme.md +173 -0 generated file: collapsed
A node_modules/any-promise/.jshintrc +4 -0 generated file: collapsed
A node_modules/any-promise/.npmignore +7 -0 generated file: collapsed
A node_modules/any-promise/LICENSE +19 -0 generated file: collapsed
A node_modules/any-promise/README.md +161 -0 generated file: collapsed
A node_modules/any-promise/implementation.d.ts +3 -0 generated file: collapsed
A node_modules/any-promise/implementation.js +1 -0 generated file: collapsed
A node_modules/any-promise/index.d.ts +73 -0 generated file: collapsed
A node_modules/any-promise/index.js +1 -0 generated file: collapsed
A node_modules/any-promise/loader.js +78 -0 generated file: collapsed
A node_modules/any-promise/optional.js +6 -0 generated file: collapsed
A node_modules/any-promise/package.json +45 -0 generated file: collapsed
A node_modules/any-promise/register-shim.js +18 -0 generated file: collapsed
A node_modules/any-promise/register.d.ts +17 -0 generated file: collapsed
A node_modules/any-promise/register.js +94 -0 generated file: collapsed
A node_modules/any-promise/register/bluebird.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/bluebird.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/es6-promise.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/es6-promise.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/lie.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/lie.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/native-promise-only.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/native-promise-only.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/pinkie.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/pinkie.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/promise.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/promise.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/q.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/q.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/rsvp.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/rsvp.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/vow.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/vow.js +2 -0 generated file: collapsed
A node_modules/any-promise/register/when.d.ts +1 -0 generated file: collapsed
A node_modules/any-promise/register/when.js +2 -0 generated file: collapsed
A node_modules/anymatch/LICENSE +15 -0 generated file: collapsed
A node_modules/anymatch/README.md +87 -0 generated file: collapsed
A node_modules/anymatch/index.d.ts +20 -0 generated file: collapsed
A node_modules/anymatch/index.js +104 -0 generated file: collapsed
A node_modules/anymatch/package.json +48 -0 generated file: collapsed
A node_modules/arg/LICENSE.md +21 -0 generated file: collapsed
A node_modules/arg/README.md +317 -0 generated file: collapsed
A node_modules/arg/index.d.ts +44 -0 generated file: collapsed
A node_modules/arg/index.js +195 -0 generated file: collapsed
A node_modules/arg/package.json +28 -0 collapsed to keep the page light
A node_modules/balanced-match/.github/FUNDING.yml +2 -0 collapsed to keep the page light
A node_modules/balanced-match/LICENSE.md +21 -0 collapsed to keep the page light
A node_modules/balanced-match/README.md +97 -0 collapsed to keep the page light
A node_modules/balanced-match/index.js +62 -0 collapsed to keep the page light
A node_modules/balanced-match/package.json +48 -0 collapsed to keep the page light
A node_modules/binary-extensions/binary-extensions.json +263 -0 collapsed to keep the page light
A node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0 collapsed to keep the page light
A node_modules/binary-extensions/index.d.ts +14 -0 collapsed to keep the page light
A node_modules/binary-extensions/index.js +1 -0 collapsed to keep the page light
A node_modules/binary-extensions/license +10 -0 collapsed to keep the page light
A node_modules/binary-extensions/package.json +40 -0 collapsed to keep the page light
A node_modules/binary-extensions/readme.md +25 -0 collapsed to keep the page light
A node_modules/brace-expansion/.github/FUNDING.yml +2 -0 collapsed to keep the page light
A node_modules/brace-expansion/LICENSE +21 -0 collapsed to keep the page light
A node_modules/brace-expansion/README.md +135 -0 collapsed to keep the page light
A node_modules/brace-expansion/index.js +203 -0 collapsed to keep the page light
A node_modules/brace-expansion/package.json +46 -0 collapsed to keep the page light
A node_modules/braces/LICENSE +21 -0 collapsed to keep the page light
A node_modules/braces/README.md +586 -0 collapsed to keep the page light
A node_modules/braces/index.js +170 -0 collapsed to keep the page light
A node_modules/braces/lib/compile.js +60 -0 collapsed to keep the page light
A node_modules/braces/lib/constants.js +57 -0 collapsed to keep the page light
A node_modules/braces/lib/expand.js +113 -0 collapsed to keep the page light
A node_modules/braces/lib/parse.js +331 -0 collapsed to keep the page light
A node_modules/braces/lib/stringify.js +32 -0 collapsed to keep the page light
A node_modules/braces/lib/utils.js +122 -0 collapsed to keep the page light
A node_modules/braces/package.json +77 -0 collapsed to keep the page light
A node_modules/camelcase-css/README.md +27 -0 collapsed to keep the page light
A node_modules/camelcase-css/index-es5.js +24 -0 collapsed to keep the page light
A node_modules/camelcase-css/index.js +30 -0 collapsed to keep the page light
A node_modules/camelcase-css/license +21 -0 collapsed to keep the page light
A node_modules/camelcase-css/package.json +34 -0 collapsed to keep the page light
A node_modules/caniuse-lite/LICENSE +395 -0 collapsed to keep the page light
A node_modules/caniuse-lite/README.md +6 -0 collapsed to keep the page light
A node_modules/caniuse-lite/package.json +34 -0 collapsed to keep the page light
A node_modules/chokidar/LICENSE +21 -0 collapsed to keep the page light
A node_modules/chokidar/README.md +308 -0 collapsed to keep the page light
A node_modules/chokidar/index.js +973 -0 collapsed to keep the page light
A node_modules/chokidar/lib/constants.js +66 -0 collapsed to keep the page light
A node_modules/chokidar/lib/fsevents-handler.js +526 -0 collapsed to keep the page light
A node_modules/chokidar/lib/nodefs-handler.js +654 -0 collapsed to keep the page light
A node_modules/chokidar/node_modules/glob-parent/CHANGELOG.md +110 -0 collapsed to keep the page light
A node_modules/chokidar/node_modules/glob-parent/LICENSE +15 -0 collapsed to keep the page light
A node_modules/chokidar/node_modules/glob-parent/README.md +137 -0 collapsed to keep the page light
A node_modules/chokidar/node_modules/glob-parent/index.js +42 -0 collapsed to keep the page light
A node_modules/chokidar/node_modules/glob-parent/package.json +48 -0 collapsed to keep the page light
A node_modules/chokidar/package.json +70 -0 collapsed to keep the page light
A node_modules/chokidar/types/index.d.ts +192 -0 collapsed to keep the page light
A node_modules/color-convert/CHANGELOG.md +54 -0 collapsed to keep the page light
A node_modules/color-convert/LICENSE +21 -0 collapsed to keep the page light
A node_modules/color-convert/README.md +68 -0 collapsed to keep the page light
A node_modules/color-convert/conversions.js +839 -0 collapsed to keep the page light
A node_modules/color-convert/index.js +81 -0 collapsed to keep the page light
A node_modules/color-convert/package.json +48 -0 collapsed to keep the page light
A node_modules/color-convert/route.js +97 -0 collapsed to keep the page light
A node_modules/color-name/LICENSE +8 -0 collapsed to keep the page light
A node_modules/color-name/README.md +11 -0 collapsed to keep the page light
A node_modules/color-name/index.js +152 -0 collapsed to keep the page light
A node_modules/color-name/package.json +28 -0 collapsed to keep the page light
A node_modules/commander/CHANGELOG.md +436 -0 collapsed to keep the page light
A node_modules/commander/LICENSE +22 -0 collapsed to keep the page light
A node_modules/commander/Readme.md +713 -0 collapsed to keep the page light
A node_modules/commander/index.js +1649 -0 collapsed to keep the page light
A node_modules/commander/package.json +41 -0 collapsed to keep the page light
A node_modules/commander/typings/index.d.ts +311 -0 collapsed to keep the page light
A node_modules/cross-spawn/CHANGELOG.md +130 -0 collapsed to keep the page light
A node_modules/cross-spawn/LICENSE +21 -0 collapsed to keep the page light
A node_modules/cross-spawn/README.md +96 -0 collapsed to keep the page light
A node_modules/cross-spawn/index.js +39 -0 collapsed to keep the page light
A node_modules/cross-spawn/lib/enoent.js +59 -0 collapsed to keep the page light
A node_modules/cross-spawn/lib/parse.js +91 -0 collapsed to keep the page light
A node_modules/cross-spawn/lib/util/escape.js +45 -0 collapsed to keep the page light
A node_modules/cross-spawn/lib/util/readShebang.js +23 -0 collapsed to keep the page light
A node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0 collapsed to keep the page light
A node_modules/cross-spawn/package.json +73 -0 collapsed to keep the page light
A node_modules/cssesc/README.md +201 -0 collapsed to keep the page light
A node_modules/cssesc/bin/cssesc +116 -0 collapsed to keep the page light
A node_modules/cssesc/cssesc.js +110 -0 collapsed to keep the page light
A node_modules/cssesc/man/cssesc.1 +70 -0 collapsed to keep the page light
A node_modules/cssesc/package.json +51 -0 collapsed to keep the page light
A node_modules/daisyui/LICENSE +21 -0 collapsed to keep the page light
A node_modules/daisyui/README.md +37 -0 collapsed to keep the page light
A node_modules/daisyui/base/properties.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/properties/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/base/properties/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/reset.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootcolor.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootcolor/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootcolor/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootscrollgutter.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootscrollgutter/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootscrollgutter/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootscrolllock.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootscrolllock/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/base/rootscrolllock/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/scrollbar.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/scrollbar/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/base/scrollbar/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/svg.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/base/svg/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/base/svg/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/chunks.css +73 -0 collapsed to keep the page light
A node_modules/daisyui/colors/properties-extended.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/colors/properties.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/colors/responsive-extended.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/colors/responsive.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/colors/states-extended.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/colors/states.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/alert.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/alert/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/alert/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/avatar.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/avatar/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/avatar/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/badge.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/badge/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/badge/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/breadcrumbs.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/breadcrumbs/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/breadcrumbs/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/button.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/button/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/button/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/calendar.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/calendar/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/calendar/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/card.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/card/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/card/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/carousel.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/carousel/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/carousel/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/chat.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/chat/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/chat/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/checkbox.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/checkbox/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/checkbox/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/collapse.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/collapse/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/collapse/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/countdown.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/countdown/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/countdown/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/diff.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/diff/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/diff/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/divider.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/divider/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/divider/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/dock.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/dock/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/dock/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/drawer.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/drawer/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/drawer/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/dropdown.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/dropdown/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/dropdown/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/fieldset.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/fieldset/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/fieldset/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/fileinput.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/fileinput/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/fileinput/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/filter.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/filter/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/filter/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/footer.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/footer/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/footer/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/hero.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/hero/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/hero/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/indicator.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/indicator/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/indicator/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/input.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/input/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/input/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/kbd.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/kbd/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/kbd/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/label.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/label/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/label/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/link.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/link/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/link/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/list.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/list/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/list/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/loading.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/loading/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/loading/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/mask.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/mask/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/mask/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/menu.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/menu/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/menu/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/mockup.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/mockup/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/mockup/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/modal.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/modal/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/modal/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/navbar.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/navbar/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/navbar/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/progress.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/progress/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/progress/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/radialprogress.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/radialprogress/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/radialprogress/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/radio.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/radio/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/radio/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/range.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/range/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/range/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/rating.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/rating/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/rating/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/select.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/select/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/select/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/skeleton.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/skeleton/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/skeleton/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/stack.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/stack/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/stack/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/stat.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/stat/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/stat/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/status.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/status/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/status/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/steps.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/steps/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/steps/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/swap.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/swap/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/swap/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/tab.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/tab/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/tab/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/table.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/table/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/table/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/textarea.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/textarea/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/textarea/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/timeline.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/timeline/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/timeline/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/toast.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/toast/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/toast/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/toggle.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/toggle/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/toggle/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/tooltip.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/tooltip/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/tooltip/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/validator.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/components/validator/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/components/validator/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/daisyui.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/functions/addPrefix.js +156 -0 collapsed to keep the page light
A node_modules/daisyui/functions/plugin.js +11 -0 collapsed to keep the page light
A node_modules/daisyui/functions/pluginOptionsHandler.js +86 -0 collapsed to keep the page light
A node_modules/daisyui/functions/themeOrder.js +37 -0 collapsed to keep the page light
A node_modules/daisyui/functions/variables.js +29 -0 collapsed to keep the page light
A node_modules/daisyui/imports.js +68 -0 collapsed to keep the page light
A node_modules/daisyui/index.js +51 -0 collapsed to keep the page light
A node_modules/daisyui/package.json +72 -0 collapsed to keep the page light
A node_modules/daisyui/theme/abyss.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/abyss/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/abyss/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/acid.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/acid/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/acid/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/aqua.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/aqua/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/aqua/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/autumn.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/autumn/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/autumn/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/black.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/black/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/black/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/bumblebee.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/bumblebee/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/bumblebee/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/business.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/business/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/business/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/caramellatte.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/caramellatte/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/caramellatte/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cmyk.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cmyk/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cmyk/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/coffee.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/coffee/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/coffee/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/corporate.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/corporate/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/corporate/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cupcake.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cupcake/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cupcake/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cyberpunk.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cyberpunk/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/cyberpunk/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dark.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dark/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dark/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dim.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dim/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dim/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dracula.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dracula/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/dracula/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/emerald.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/emerald/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/emerald/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/fantasy.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/fantasy/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/fantasy/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/forest.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/forest/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/forest/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/garden.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/garden/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/garden/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/halloween.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/halloween/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/halloween/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/index.js +48 -0 collapsed to keep the page light
A node_modules/daisyui/theme/lemonade.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/lemonade/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/lemonade/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/light.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/light/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/light/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/lofi.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/lofi/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/lofi/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/luxury.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/luxury/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/luxury/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/night.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/night/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/night/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/nord.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/nord/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/nord/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/object.d.ts +74 -0 collapsed to keep the page light
A node_modules/daisyui/theme/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/pastel.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/pastel/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/pastel/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/retro.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/retro/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/retro/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/silk.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/silk/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/silk/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/sunset.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/sunset/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/sunset/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/synthwave.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/synthwave/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/synthwave/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/valentine.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/valentine/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/valentine/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/winter.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/winter/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/winter/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/theme/wireframe.css +31 -0 collapsed to keep the page light
A node_modules/daisyui/theme/wireframe/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/theme/wireframe/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/themes.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/glass.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/glass/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/glass/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/join.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/join/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/join/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/radius.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/radius/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/radius/object.js +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/typography.css +1 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/typography/index.js +7 -0 collapsed to keep the page light
A node_modules/daisyui/utilities/typography/object.js +1 -0 collapsed to keep the page light
A node_modules/detect-libc/LICENSE +201 -0 collapsed to keep the page light
A node_modules/detect-libc/README.md +163 -0 collapsed to keep the page light
A node_modules/detect-libc/index.d.ts +14 -0 collapsed to keep the page light
A node_modules/detect-libc/lib/detect-libc.js +267 -0 collapsed to keep the page light
A node_modules/detect-libc/lib/filesystem.js +41 -0 collapsed to keep the page light
A node_modules/detect-libc/lib/process.js +24 -0 collapsed to keep the page light
A node_modules/detect-libc/package.json +40 -0 collapsed to keep the page light
A node_modules/didyoumean/LICENSE +14 -0 collapsed to keep the page light
A node_modules/didyoumean/README.md +134 -0 collapsed to keep the page light
A node_modules/didyoumean/didYouMean-1.2.1.js +274 -0 collapsed to keep the page light
A node_modules/didyoumean/didYouMean-1.2.1.min.js +17 -0 collapsed to keep the page light
A node_modules/didyoumean/package.json +27 -0 collapsed to keep the page light
A node_modules/dlv/README.md +76 -0 collapsed to keep the page light
A node_modules/dlv/index.js +7 -0 collapsed to keep the page light
A node_modules/dlv/package.json +30 -0 collapsed to keep the page light
A node_modules/dotenv/CHANGELOG.md +488 -0 collapsed to keep the page light
A node_modules/dotenv/LICENSE +23 -0 collapsed to keep the page light
A node_modules/dotenv/README-es.md +448 -0 collapsed to keep the page light
A node_modules/dotenv/README.md +651 -0 collapsed to keep the page light
A node_modules/dotenv/config.d.ts +1 -0 collapsed to keep the page light
A node_modules/dotenv/config.js +9 -0 collapsed to keep the page light
A node_modules/dotenv/lib/cli-options.js +11 -0 collapsed to keep the page light
A node_modules/dotenv/lib/env-options.js +24 -0 collapsed to keep the page light
A node_modules/dotenv/lib/main.d.ts +153 -0 collapsed to keep the page light
A node_modules/dotenv/lib/main.js +361 -0 collapsed to keep the page light
A node_modules/dotenv/package.json +61 -0 collapsed to keep the page light
A node_modules/eastasianwidth/README.md +32 -0 collapsed to keep the page light
A node_modules/eastasianwidth/eastasianwidth.js +311 -0 collapsed to keep the page light
A node_modules/eastasianwidth/package.json +18 -0 collapsed to keep the page light
A node_modules/emoji-regex/README.md +137 -0 collapsed to keep the page light
A node_modules/emoji-regex/RGI_Emoji.d.ts +5 -0 collapsed to keep the page light
A node_modules/emoji-regex/RGI_Emoji.js +6 -0 collapsed to keep the page light
A node_modules/emoji-regex/es2015/RGI_Emoji.d.ts +5 -0 collapsed to keep the page light
A node_modules/emoji-regex/es2015/RGI_Emoji.js +6 -0 collapsed to keep the page light
A node_modules/emoji-regex/es2015/index.d.ts +5 -0 collapsed to keep the page light
A node_modules/emoji-regex/es2015/index.js +6 -0 collapsed to keep the page light
A node_modules/emoji-regex/es2015/text.d.ts +5 -0 collapsed to keep the page light
A node_modules/emoji-regex/es2015/text.js +6 -0 collapsed to keep the page light
A node_modules/emoji-regex/index.d.ts +5 -0 collapsed to keep the page light
A node_modules/emoji-regex/index.js +6 -0 collapsed to keep the page light
A node_modules/emoji-regex/package.json +52 -0 collapsed to keep the page light
A node_modules/emoji-regex/text.d.ts +5 -0 collapsed to keep the page light
A node_modules/emoji-regex/text.js +6 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/LICENSE +20 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/README.md +183 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/AliasFieldPlugin.js +108 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/AliasPlugin.js +183 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/AppendPlugin.js +49 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/CachedInputFileSystem.js +664 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/CloneBasenamePlugin.js +53 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ConditionalPlugin.js +59 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/DescriptionFilePlugin.js +98 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/DescriptionFileUtils.js +201 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/DirectoryExistsPlugin.js +63 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ExportsFieldPlugin.js +200 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ExtensionAliasPlugin.js +101 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/FileExistsPlugin.js +58 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ImportsFieldPlugin.js +223 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/JoinRequestPartPlugin.js +75 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/JoinRequestPlugin.js +45 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/LogInfoPlugin.js +54 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/MainFieldPlugin.js +90 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ModulesInHierachicDirectoriesPlugin.js +9 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ModulesInHierarchicalDirectoriesPlugin.js +87 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ModulesInRootPlugin.js +49 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/NextPlugin.js +33 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ParsePlugin.js +76 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/PnpPlugin.js +133 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/Resolver.js +800 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ResolverFactory.js +728 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/RestrictionsPlugin.js +70 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/ResultPlugin.js +42 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/RootsPlugin.js +69 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/SelfReferencePlugin.js +82 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/SymlinkPlugin.js +100 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/SyncAsyncFileSystemDecorator.js +220 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/TryNextPlugin.js +41 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js +112 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/UseFilePlugin.js +55 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/createInnerContext.js +46 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/forEachBail.js +50 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/getInnerRequest.js +36 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/getPaths.js +45 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/index.js +203 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/util/entrypoints.js +573 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/util/identifier.js +69 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/util/module-browser.js +8 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/util/path.js +203 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/lib/util/process-browser.js +22 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/package.json +72 -0 collapsed to keep the page light
A node_modules/enhanced-resolve/types.d.ts +1135 -0 collapsed to keep the page light
A node_modules/fast-glob/LICENSE +21 -0 collapsed to keep the page light
A node_modules/fast-glob/README.md +830 -0 collapsed to keep the page light
A node_modules/fast-glob/node_modules/glob-parent/CHANGELOG.md +110 -0 collapsed to keep the page light
A node_modules/fast-glob/node_modules/glob-parent/LICENSE +15 -0 collapsed to keep the page light
A node_modules/fast-glob/node_modules/glob-parent/README.md +137 -0 collapsed to keep the page light
A node_modules/fast-glob/node_modules/glob-parent/index.js +42 -0 collapsed to keep the page light
A node_modules/fast-glob/node_modules/glob-parent/package.json +48 -0 collapsed to keep the page light
A node_modules/fast-glob/out/index.d.ts +40 -0 collapsed to keep the page light
A node_modules/fast-glob/out/index.js +102 -0 collapsed to keep the page light
A node_modules/fast-glob/out/managers/tasks.d.ts +22 -0 collapsed to keep the page light
A node_modules/fast-glob/out/managers/tasks.js +110 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/async.d.ts +9 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/async.js +23 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/filters/deep.d.ts +16 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/filters/deep.js +62 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/filters/entry.d.ts +16 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/filters/entry.js +63 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/filters/error.d.ts +8 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/filters/error.js +15 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/matchers/matcher.d.ts +33 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/matchers/matcher.js +45 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/matchers/partial.d.ts +4 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/matchers/partial.js +38 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/provider.d.ts +19 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/provider.js +48 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/stream.d.ts +11 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/stream.js +31 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/sync.d.ts +9 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/sync.js +23 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/transformers/entry.d.ts +8 -0 collapsed to keep the page light
A node_modules/fast-glob/out/providers/transformers/entry.js +26 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/async.d.ts +10 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/async.js +35 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/reader.d.ts +15 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/reader.js +33 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/stream.d.ts +14 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/stream.js +55 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/sync.d.ts +12 -0 collapsed to keep the page light
A node_modules/fast-glob/out/readers/sync.js +43 -0 collapsed to keep the page light
A node_modules/fast-glob/out/settings.d.ts +164 -0 collapsed to keep the page light
A node_modules/fast-glob/out/settings.js +59 -0 collapsed to keep the page light
A node_modules/fast-glob/out/types/index.d.ts +31 -0 collapsed to keep the page light
A node_modules/fast-glob/out/types/index.js +2 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/array.d.ts +2 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/array.js +22 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/errno.d.ts +2 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/errno.js +7 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/fs.d.ts +4 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/fs.js +19 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/index.d.ts +8 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/index.js +17 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/path.d.ts +13 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/path.js +68 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/pattern.d.ts +47 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/pattern.js +188 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/stream.d.ts +4 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/stream.js +17 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/string.d.ts +2 -0 collapsed to keep the page light
A node_modules/fast-glob/out/utils/string.js +11 -0 collapsed to keep the page light
A node_modules/fast-glob/package.json +81 -0 collapsed to keep the page light
A node_modules/fastq/.github/dependabot.yml +11 -0 collapsed to keep the page light
A node_modules/fastq/.github/workflows/ci.yml +75 -0 collapsed to keep the page light
A node_modules/fastq/LICENSE +13 -0 collapsed to keep the page light
A node_modules/fastq/README.md +306 -0 collapsed to keep the page light
A node_modules/fastq/bench.js +66 -0 collapsed to keep the page light
A node_modules/fastq/example.js +14 -0 collapsed to keep the page light
A node_modules/fastq/example.mjs +11 -0 collapsed to keep the page light
A node_modules/fastq/index.d.ts +38 -0 collapsed to keep the page light
A node_modules/fastq/package.json +53 -0 collapsed to keep the page light
A node_modules/fastq/queue.js +311 -0 collapsed to keep the page light
A node_modules/fastq/test/example.ts +83 -0 collapsed to keep the page light
A node_modules/fastq/test/promise.js +248 -0 collapsed to keep the page light
A node_modules/fastq/test/test.js +642 -0 collapsed to keep the page light
A node_modules/fastq/test/tsconfig.json +11 -0 collapsed to keep the page light
A node_modules/fill-range/LICENSE +21 -0 collapsed to keep the page light
A node_modules/fill-range/README.md +237 -0 collapsed to keep the page light
A node_modules/fill-range/index.js +248 -0 collapsed to keep the page light
A node_modules/fill-range/package.json +74 -0 collapsed to keep the page light
A node_modules/foreground-child/LICENSE +15 -0 collapsed to keep the page light
A node_modules/foreground-child/README.md +128 -0 collapsed to keep the page light
A node_modules/foreground-child/package.json +111 -0 collapsed to keep the page light
A node_modules/function-bind/.eslintrc +21 -0 collapsed to keep the page light
A node_modules/function-bind/.github/FUNDING.yml +12 -0 collapsed to keep the page light
A node_modules/function-bind/.github/SECURITY.md +3 -0 collapsed to keep the page light
A node_modules/function-bind/.nycrc +13 -0 collapsed to keep the page light
A node_modules/function-bind/CHANGELOG.md +136 -0 collapsed to keep the page light
A node_modules/function-bind/LICENSE +20 -0 collapsed to keep the page light
A node_modules/function-bind/README.md +46 -0 collapsed to keep the page light
A node_modules/function-bind/implementation.js +84 -0 collapsed to keep the page light
A node_modules/function-bind/index.js +5 -0 collapsed to keep the page light
A node_modules/function-bind/package.json +87 -0 collapsed to keep the page light
A node_modules/function-bind/test/.eslintrc +9 -0 collapsed to keep the page light
A node_modules/function-bind/test/index.js +252 -0 collapsed to keep the page light
A node_modules/glob-parent/LICENSE +15 -0 collapsed to keep the page light
A node_modules/glob-parent/README.md +134 -0 collapsed to keep the page light
A node_modules/glob-parent/index.js +75 -0 collapsed to keep the page light
A node_modules/glob-parent/package.json +54 -0 collapsed to keep the page light
A node_modules/glob/LICENSE +15 -0 collapsed to keep the page light
A node_modules/glob/README.md +1265 -0 collapsed to keep the page light
A node_modules/glob/package.json +99 -0 collapsed to keep the page light
A node_modules/graceful-fs/LICENSE +15 -0 collapsed to keep the page light
A node_modules/graceful-fs/README.md +143 -0 collapsed to keep the page light
A node_modules/graceful-fs/clone.js +23 -0 collapsed to keep the page light
A node_modules/graceful-fs/graceful-fs.js +448 -0 collapsed to keep the page light
A node_modules/graceful-fs/legacy-streams.js +118 -0 collapsed to keep the page light
A node_modules/graceful-fs/package.json +53 -0 collapsed to keep the page light
A node_modules/graceful-fs/polyfills.js +355 -0 collapsed to keep the page light
A node_modules/hasown/.eslintrc +5 -0 collapsed to keep the page light
A node_modules/hasown/.github/FUNDING.yml +12 -0 collapsed to keep the page light
A node_modules/hasown/.nycrc +13 -0 collapsed to keep the page light
A node_modules/hasown/CHANGELOG.md +40 -0 collapsed to keep the page light
A node_modules/hasown/LICENSE +21 -0 collapsed to keep the page light
A node_modules/hasown/README.md +40 -0 collapsed to keep the page light
A node_modules/hasown/index.d.ts +3 -0 collapsed to keep the page light
A node_modules/hasown/index.js +8 -0 collapsed to keep the page light
A node_modules/hasown/package.json +92 -0 collapsed to keep the page light
A node_modules/hasown/tsconfig.json +6 -0 collapsed to keep the page light
A node_modules/is-binary-path/index.d.ts +17 -0 collapsed to keep the page light
A node_modules/is-binary-path/index.js +7 -0 collapsed to keep the page light
A node_modules/is-binary-path/license +9 -0 collapsed to keep the page light
A node_modules/is-binary-path/package.json +40 -0 collapsed to keep the page light
A node_modules/is-binary-path/readme.md +34 -0 collapsed to keep the page light
A node_modules/is-core-module/.eslintrc +18 -0 collapsed to keep the page light
A node_modules/is-core-module/.nycrc +9 -0 collapsed to keep the page light
A node_modules/is-core-module/CHANGELOG.md +205 -0 collapsed to keep the page light
A node_modules/is-core-module/LICENSE +20 -0 collapsed to keep the page light
A node_modules/is-core-module/README.md +40 -0 collapsed to keep the page light
A node_modules/is-core-module/core.json +161 -0 collapsed to keep the page light
A node_modules/is-core-module/index.js +69 -0 collapsed to keep the page light
A node_modules/is-core-module/package.json +76 -0 collapsed to keep the page light
A node_modules/is-core-module/test/index.js +154 -0 collapsed to keep the page light
A node_modules/is-extglob/LICENSE +21 -0 collapsed to keep the page light
A node_modules/is-extglob/README.md +107 -0 collapsed to keep the page light
A node_modules/is-extglob/index.js +20 -0 collapsed to keep the page light
A node_modules/is-extglob/package.json +69 -0 collapsed to keep the page light
A node_modules/is-fullwidth-code-point/index.d.ts +17 -0 collapsed to keep the page light
A node_modules/is-fullwidth-code-point/index.js +50 -0 collapsed to keep the page light
A node_modules/is-fullwidth-code-point/license +9 -0 collapsed to keep the page light
A node_modules/is-fullwidth-code-point/package.json +42 -0 collapsed to keep the page light
A node_modules/is-fullwidth-code-point/readme.md +39 -0 collapsed to keep the page light
A node_modules/is-glob/LICENSE +21 -0 collapsed to keep the page light
A node_modules/is-glob/README.md +206 -0 collapsed to keep the page light
A node_modules/is-glob/index.js +150 -0 collapsed to keep the page light
A node_modules/is-glob/package.json +81 -0 collapsed to keep the page light
A node_modules/is-number/LICENSE +21 -0 collapsed to keep the page light
A node_modules/is-number/README.md +187 -0 collapsed to keep the page light
A node_modules/is-number/index.js +18 -0 collapsed to keep the page light
A node_modules/is-number/package.json +82 -0 collapsed to keep the page light
A node_modules/isexe/.npmignore +2 -0 collapsed to keep the page light
A node_modules/isexe/LICENSE +15 -0 collapsed to keep the page light
A node_modules/isexe/README.md +51 -0 collapsed to keep the page light
A node_modules/isexe/index.js +57 -0 collapsed to keep the page light
A node_modules/isexe/mode.js +41 -0 collapsed to keep the page light
A node_modules/isexe/package.json +31 -0 collapsed to keep the page light
A node_modules/isexe/test/basic.js +221 -0 collapsed to keep the page light
A node_modules/isexe/windows.js +42 -0 collapsed to keep the page light
A node_modules/jackspeak/LICENSE.md +55 -0 collapsed to keep the page light
A node_modules/jackspeak/README.md +357 -0 collapsed to keep the page light
A node_modules/jackspeak/package.json +95 -0 collapsed to keep the page light
A node_modules/jiti/LICENSE +21 -0 collapsed to keep the page light
A node_modules/jiti/README.md +235 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti-cli.mjs +34 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti-hooks.mjs +117 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti-native.mjs +121 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti-register.d.mts +1 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti-register.mjs +4 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti.cjs +23 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti.d.cts +8 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti.d.mts +8 -0 collapsed to keep the page light
A node_modules/jiti/lib/jiti.mjs +22 -0 collapsed to keep the page light
A node_modules/jiti/lib/types.d.ts +260 -0 collapsed to keep the page light
A node_modules/jiti/package.json +134 -0 collapsed to keep the page light
A node_modules/lightningcss-linux-x64-gnu/LICENSE +373 -0 collapsed to keep the page light
A node_modules/lightningcss-linux-x64-gnu/README.md +1 -0 collapsed to keep the page light
A node_modules/lightningcss-linux-x64-gnu/lightningcss.linux-x64-gnu.node +0 -0 binary file: no text diff

binary file: no text diff

A node_modules/lightningcss-linux-x64-gnu/package.json +37 -0 collapsed to keep the page light
A node_modules/lightningcss-linux-x64-musl/LICENSE +373 -0 collapsed to keep the page light
A node_modules/lightningcss-linux-x64-musl/README.md +1 -0 collapsed to keep the page light
A node_modules/lightningcss-linux-x64-musl/lightningcss.linux-x64-musl.node +0 -0 binary file: no text diff

binary file: no text diff

A node_modules/lightningcss-linux-x64-musl/package.json +37 -0 collapsed to keep the page light
A node_modules/lightningcss/LICENSE +373 -0 collapsed to keep the page light
A node_modules/lightningcss/README.md +105 -0 collapsed to keep the page light
A node_modules/lightningcss/node/ast.d.ts +9716 -0 collapsed to keep the page light
A node_modules/lightningcss/node/ast.js.flow +10346 -0
@@ -0,0 +1,10346 @@
1+// @flow
2+
3+/**
4+ * This file was automatically generated by json-schema-to-typescript.
5+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
6+ * and run json-schema-to-typescript to regenerate this file.
7+ */
8+export type String = string;
9+/**
10+ * A CSS rule.
11+ */
12+export type Rule<D = Declaration, M = MediaQuery> =
13+ | {|
14+ type: "media",
15+ value: MediaRule<D, M>,
16+ |}
17+ | {|
18+ type: "import",
19+ value: ImportRule<M>,
20+ |}
21+ | {|
22+ type: "style",
23+ value: StyleRule<D, M>,
24+ |}
25+ | {|
26+ type: "keyframes",
27+ value: KeyframesRule<D>,
28+ |}
29+ | {|
30+ type: "font-face",
31+ value: FontFaceRule,
32+ |}
33+ | {|
34+ type: "font-palette-values",
35+ value: FontPaletteValuesRule,
36+ |}
37+ | {|
38+ type: "font-feature-values",
39+ value: FontFeatureValuesRule,
40+ |}
41+ | {|
42+ type: "page",
43+ value: PageRule<D>,
44+ |}
45+ | {|
46+ type: "supports",
47+ value: SupportsRule<D, M>,
48+ |}
49+ | {|
50+ type: "counter-style",
51+ value: CounterStyleRule<D>,
52+ |}
53+ | {|
54+ type: "namespace",
55+ value: NamespaceRule,
56+ |}
57+ | {|
58+ type: "moz-document",
59+ value: MozDocumentRule<D, M>,
60+ |}
61+ | {|
62+ type: "nesting",
63+ value: NestingRule<D, M>,
64+ |}
65+ | {|
66+ type: "viewport",
67+ value: ViewportRule<D>,
68+ |}
69+ | {|
70+ type: "custom-media",
71+ value: CustomMediaRule<M>,
72+ |}
73+ | {|
74+ type: "layer-statement",
75+ value: LayerStatementRule,
76+ |}
77+ | {|
78+ type: "layer-block",
79+ value: LayerBlockRule<D, M>,
80+ |}
81+ | {|
82+ type: "property",
83+ value: PropertyRule,
84+ |}
85+ | {|
86+ type: "container",
87+ value: ContainerRule<D, M>,
88+ |}
89+ | {|
90+ type: "scope",
91+ value: ScopeRule<D, M>,
92+ |}
93+ | {|
94+ type: "starting-style",
95+ value: StartingStyleRule<D, M>,
96+ |}
97+ | {|
98+ type: "view-transition",
99+ value: ViewTransitionRule,
100+ |}
101+ | {|
102+ type: "ignored",
103+ |}
104+ | {|
105+ type: "unknown",
106+ value: UnknownAtRule,
107+ |}
108+ | {|
109+ type: "custom",
110+ value: DefaultAtRule,
111+ |};
112+/**
113+ * Represents a media condition.
114+ */
115+export type MediaCondition =
116+ | {|
117+ type: "feature",
118+ value: QueryFeatureFor_MediaFeatureId,
119+ |}
120+ | {|
121+ type: "not",
122+ value: MediaCondition,
123+ |}
124+ | {|
125+ /**
126+ * The conditions for the operator.
127+ */
128+ conditions: MediaCondition[],
129+
130+ /**
131+ * The operator for the conditions.
132+ */
133+ operator: Operator,
134+ type: "operation",
135+ |};
136+/**
137+ * A generic media feature or container feature.
138+ */
139+export type QueryFeatureFor_MediaFeatureId =
140+ | {|
141+ /**
142+ * The name of the feature.
143+ */
144+ name: MediaFeatureNameFor_MediaFeatureId,
145+ type: "plain",
146+
147+ /**
148+ * The feature value.
149+ */
150+ value: MediaFeatureValue,
151+ |}
152+ | {|
153+ /**
154+ * The name of the feature.
155+ */
156+ name: MediaFeatureNameFor_MediaFeatureId,
157+ type: "boolean",
158+ |}
159+ | {|
160+ /**
161+ * The name of the feature.
162+ */
163+ name: MediaFeatureNameFor_MediaFeatureId,
164+
165+ /**
166+ * A comparator.
167+ */
168+ operator: MediaFeatureComparison,
169+ type: "range",
170+
171+ /**
172+ * The feature value.
173+ */
174+ value: MediaFeatureValue,
175+ |}
176+ | {|
177+ /**
178+ * The end value.
179+ */
180+ end: MediaFeatureValue,
181+
182+ /**
183+ * A comparator for the end value.
184+ */
185+ endOperator: MediaFeatureComparison,
186+
187+ /**
188+ * The name of the feature.
189+ */
190+ name: MediaFeatureNameFor_MediaFeatureId,
191+
192+ /**
193+ * A start value.
194+ */
195+ start: MediaFeatureValue,
196+
197+ /**
198+ * A comparator for the start value.
199+ */
200+ startOperator: MediaFeatureComparison,
201+ type: "interval",
202+ |};
203+/**
204+ * A media feature name.
205+ */
206+export type MediaFeatureNameFor_MediaFeatureId =
207+ | MediaFeatureId
208+ | String
209+ | String;
210+/**
211+ * A media query feature identifier.
212+ */
213+export type MediaFeatureId =
214+ | "width"
215+ | "height"
216+ | "aspect-ratio"
217+ | "orientation"
218+ | "overflow-block"
219+ | "overflow-inline"
220+ | "horizontal-viewport-segments"
221+ | "vertical-viewport-segments"
222+ | "display-mode"
223+ | "resolution"
224+ | "scan"
225+ | "grid"
226+ | "update"
227+ | "environment-blending"
228+ | "color"
229+ | "color-index"
230+ | "monochrome"
231+ | "color-gamut"
232+ | "dynamic-range"
233+ | "inverted-colors"
234+ | "pointer"
235+ | "hover"
236+ | "any-pointer"
237+ | "any-hover"
238+ | "nav-controls"
239+ | "video-color-gamut"
240+ | "video-dynamic-range"
241+ | "scripting"
242+ | "prefers-reduced-motion"
243+ | "prefers-reduced-transparency"
244+ | "prefers-contrast"
245+ | "forced-colors"
246+ | "prefers-color-scheme"
247+ | "prefers-reduced-data"
248+ | "device-width"
249+ | "device-height"
250+ | "device-aspect-ratio"
251+ | "-webkit-device-pixel-ratio"
252+ | "-moz-device-pixel-ratio";
253+/**
254+ * [media feature value](https://drafts.csswg.org/mediaqueries/#typedef-mf-value) within a media query.
255+ *
256+ * See [MediaFeature](MediaFeature).
257+ */
258+export type MediaFeatureValue =
259+ | {|
260+ type: "length",
261+ value: Length,
262+ |}
263+ | {|
264+ type: "number",
265+ value: number,
266+ |}
267+ | {|
268+ type: "integer",
269+ value: number,
270+ |}
271+ | {|
272+ type: "boolean",
273+ value: boolean,
274+ |}
275+ | {|
276+ type: "resolution",
277+ value: Resolution,
278+ |}
279+ | {|
280+ type: "ratio",
281+ value: Ratio,
282+ |}
283+ | {|
284+ type: "ident",
285+ value: String,
286+ |}
287+ | {|
288+ type: "env",
289+ value: EnvironmentVariable,
290+ |};
291+/**
292+ * A CSS [`<length>`](https://www.w3.org/TR/css-values-4/#lengths) value, with support for `calc()`.
293+ */
294+export type Length =
295+ | {|
296+ type: "value",
297+ value: LengthValue,
298+ |}
299+ | {|
300+ type: "calc",
301+ value: CalcFor_Length,
302+ |};
303+export type LengthUnit =
304+ | "px"
305+ | "in"
306+ | "cm"
307+ | "mm"
308+ | "q"
309+ | "pt"
310+ | "pc"
311+ | "em"
312+ | "rem"
313+ | "ex"
314+ | "rex"
315+ | "ch"
316+ | "rch"
317+ | "cap"
318+ | "rcap"
319+ | "ic"
320+ | "ric"
321+ | "lh"
322+ | "rlh"
323+ | "vw"
324+ | "lvw"
325+ | "svw"
326+ | "dvw"
327+ | "cqw"
328+ | "vh"
329+ | "lvh"
330+ | "svh"
331+ | "dvh"
332+ | "cqh"
333+ | "vi"
334+ | "svi"
335+ | "lvi"
336+ | "dvi"
337+ | "cqi"
338+ | "vb"
339+ | "svb"
340+ | "lvb"
341+ | "dvb"
342+ | "cqb"
343+ | "vmin"
344+ | "svmin"
345+ | "lvmin"
346+ | "dvmin"
347+ | "cqmin"
348+ | "vmax"
349+ | "svmax"
350+ | "lvmax"
351+ | "dvmax"
352+ | "cqmax";
353+/**
354+ * A mathematical expression used within the [`calc()`](https://www.w3.org/TR/css-values-4/#calc-func) function.
355+ *
356+ * This type supports generic value types. Values such as [Length](super::length::Length), [Percentage](super::percentage::Percentage), [Time](super::time::Time), and [Angle](super::angle::Angle) support `calc()` expressions.
357+ */
358+export type CalcFor_Length =
359+ | {|
360+ type: "value",
361+ value: Length,
362+ |}
363+ | {|
364+ type: "number",
365+ value: number,
366+ |}
367+ | {|
368+ type: "sum",
369+
370+ /**
371+ * @minItems 2
372+ * @maxItems 2
373+ */
374+ value: [CalcFor_Length, CalcFor_Length],
375+ |}
376+ | {|
377+ type: "product",
378+
379+ /**
380+ * @minItems 2
381+ * @maxItems 2
382+ */
383+ value: [number, CalcFor_Length],
384+ |}
385+ | {|
386+ type: "function",
387+ value: MathFunctionFor_Length,
388+ |};
389+/**
390+ * A CSS [math function](https://www.w3.org/TR/css-values-4/#math-function).
391+ *
392+ * Math functions may be used in most properties and values that accept numeric values, including lengths, percentages, angles, times, etc.
393+ */
394+export type MathFunctionFor_Length =
395+ | {|
396+ type: "calc",
397+ value: CalcFor_Length,
398+ |}
399+ | {|
400+ type: "min",
401+ value: CalcFor_Length[],
402+ |}
403+ | {|
404+ type: "max",
405+ value: CalcFor_Length[],
406+ |}
407+ | {|
408+ type: "clamp",
409+
410+ /**
411+ * @minItems 3
412+ * @maxItems 3
413+ */
414+ value: [CalcFor_Length, CalcFor_Length, CalcFor_Length],
415+ |}
416+ | {|
417+ type: "round",
418+
419+ /**
420+ * @minItems 3
421+ * @maxItems 3
422+ */
423+ value: [RoundingStrategy, CalcFor_Length, CalcFor_Length],
424+ |}
425+ | {|
426+ type: "rem",
427+
428+ /**
429+ * @minItems 2
430+ * @maxItems 2
431+ */
432+ value: [CalcFor_Length, CalcFor_Length],
433+ |}
434+ | {|
435+ type: "mod",
436+
437+ /**
438+ * @minItems 2
439+ * @maxItems 2
440+ */
441+ value: [CalcFor_Length, CalcFor_Length],
442+ |}
443+ | {|
444+ type: "abs",
445+ value: CalcFor_Length,
446+ |}
447+ | {|
448+ type: "sign",
449+ value: CalcFor_Length,
450+ |}
451+ | {|
452+ type: "hypot",
453+ value: CalcFor_Length[],
454+ |};
455+/**
456+ * A [rounding strategy](https://www.w3.org/TR/css-values-4/#typedef-rounding-strategy), as used in the `round()` function.
457+ */
458+export type RoundingStrategy = "nearest" | "up" | "down" | "to-zero";
459+/**
460+ * A CSS [`<resolution>`](https://www.w3.org/TR/css-values-4/#resolution) value.
461+ */
462+export type Resolution =
463+ | {|
464+ type: "dpi",
465+ value: number,
466+ |}
467+ | {|
468+ type: "dpcm",
469+ value: number,
470+ |}
471+ | {|
472+ type: "dppx",
473+ value: number,
474+ |};
475+/**
476+ * A CSS [`<ratio>`](https://www.w3.org/TR/css-values-4/#ratios) value, representing the ratio of two numeric values.
477+ * @minItems 2
478+ * @maxItems 2
479+ */
480+export type Ratio = [number, number];
481+/**
482+ * A raw CSS token, or a parsed value.
483+ */
484+export type TokenOrValue =
485+ | {|
486+ type: "token",
487+ value: Token,
488+ |}
489+ | {|
490+ type: "color",
491+ value: CssColor,
492+ |}
493+ | {|
494+ type: "unresolved-color",
495+ value: UnresolvedColor,
496+ |}
497+ | {|
498+ type: "url",
499+ value: Url,
500+ |}
501+ | {|
502+ type: "var",
503+ value: Variable,
504+ |}
505+ | {|
506+ type: "env",
507+ value: EnvironmentVariable,
508+ |}
509+ | {|
510+ type: "function",
511+ value: Function,
512+ |}
513+ | {|
514+ type: "length",
515+ value: LengthValue,
516+ |}
517+ | {|
518+ type: "angle",
519+ value: Angle,
520+ |}
521+ | {|
522+ type: "time",
523+ value: Time,
524+ |}
525+ | {|
526+ type: "resolution",
527+ value: Resolution,
528+ |}
529+ | {|
530+ type: "dashed-ident",
531+ value: String,
532+ |}
533+ | {|
534+ type: "animation-name",
535+ value: AnimationName,
536+ |};
537+/**
538+ * A raw CSS token.
539+ */
540+export type Token =
541+ | {|
542+ type: "ident",
543+ value: String,
544+ |}
545+ | {|
546+ type: "at-keyword",
547+ value: String,
548+ |}
549+ | {|
550+ type: "hash",
551+ value: String,
552+ |}
553+ | {|
554+ type: "id-hash",
555+ value: String,
556+ |}
557+ | {|
558+ type: "string",
559+ value: String,
560+ |}
561+ | {|
562+ type: "unquoted-url",
563+ value: String,
564+ |}
565+ | {|
566+ type: "delim",
567+ value: string,
568+ |}
569+ | {|
570+ type: "number",
571+
572+ /**
573+ * The value as a float
574+ */
575+ value: number,
576+ |}
577+ | {|
578+ type: "percentage",
579+
580+ /**
581+ * The value as a float, divided by 100 so that the nominal range is 0.0 to 1.0.
582+ */
583+ value: number,
584+ |}
585+ | {|
586+ type: "dimension",
587+
588+ /**
589+ * The unit, e.g. "px" in `12px`
590+ */
591+ unit: String,
592+
593+ /**
594+ * The value as a float
595+ */
596+ value: number,
597+ |}
598+ | {|
599+ type: "white-space",
600+ value: String,
601+ |}
602+ | {|
603+ type: "comment",
604+ value: String,
605+ |}
606+ | {|
607+ type: "colon",
608+ |}
609+ | {|
610+ type: "semicolon",
611+ |}
612+ | {|
613+ type: "comma",
614+ |}
615+ | {|
616+ type: "include-match",
617+ |}
618+ | {|
619+ type: "dash-match",
620+ |}
621+ | {|
622+ type: "prefix-match",
623+ |}
624+ | {|
625+ type: "suffix-match",
626+ |}
627+ | {|
628+ type: "substring-match",
629+ |}
630+ | {|
631+ type: "cdo",
632+ |}
633+ | {|
634+ type: "cdc",
635+ |}
636+ | {|
637+ type: "function",
638+ value: String,
639+ |}
640+ | {|
641+ type: "parenthesis-block",
642+ |}
643+ | {|
644+ type: "square-bracket-block",
645+ |}
646+ | {|
647+ type: "curly-bracket-block",
648+ |}
649+ | {|
650+ type: "bad-url",
651+ value: String,
652+ |}
653+ | {|
654+ type: "bad-string",
655+ value: String,
656+ |}
657+ | {|
658+ type: "close-parenthesis",
659+ |}
660+ | {|
661+ type: "close-square-bracket",
662+ |}
663+ | {|
664+ type: "close-curly-bracket",
665+ |};
666+/**
667+ * A CSS [`<color>`](https://www.w3.org/TR/css-color-4/#color-type) value.
668+ *
669+ * CSS supports many different color spaces to represent colors. The most common values are stored as RGBA using a single byte per component. Less common values are stored using a `Box` to reduce the amount of memory used per color.
670+ *
671+ * Each color space is represented as a struct that implements the `From` and `Into` traits for all other color spaces, so it is possible to convert between color spaces easily. In addition, colors support [interpolation](#method.interpolate) as in the `color-mix()` function.
672+ */
673+export type CssColor =
674+ | CurrentColor
675+ | RGBColor
676+ | LABColor
677+ | PredefinedColor
678+ | FloatColor
679+ | LightDark
680+ | SystemColor;
681+export type CurrentColor = {|
682+ type: "currentcolor",
683+|};
684+export type RGBColor = {|
685+ /**
686+ * The alpha component.
687+ */
688+ alpha: number,
689+
690+ /**
691+ * The blue component.
692+ */
693+ b: number,
694+
695+ /**
696+ * The green component.
697+ */
698+ g: number,
699+
700+ /**
701+ * The red component.
702+ */
703+ r: number,
704+ type: "rgb",
705+|};
706+/**
707+ * A color in a LAB color space, including the `lab()`, `lch()`, `oklab()`, and `oklch()` functions.
708+ */
709+export type LABColor =
710+ | {|
711+ /**
712+ * The a component.
713+ */
714+ a: number,
715+
716+ /**
717+ * The alpha component.
718+ */
719+ alpha: number,
720+
721+ /**
722+ * The b component.
723+ */
724+ b: number,
725+
726+ /**
727+ * The lightness component.
728+ */
729+ l: number,
730+ type: "lab",
731+ |}
732+ | {|
733+ /**
734+ * The alpha component.
735+ */
736+ alpha: number,
737+
738+ /**
739+ * The chroma component.
740+ */
741+ c: number,
742+
743+ /**
744+ * The hue component.
745+ */
746+ h: number,
747+
748+ /**
749+ * The lightness component.
750+ */
751+ l: number,
752+ type: "lch",
753+ |}
754+ | {|
755+ /**
756+ * The a component.
757+ */
758+ a: number,
759+
760+ /**
761+ * The alpha component.
762+ */
763+ alpha: number,
764+
765+ /**
766+ * The b component.
767+ */
768+ b: number,
769+
770+ /**
771+ * The lightness component.
772+ */
773+ l: number,
774+ type: "oklab",
775+ |}
776+ | {|
777+ /**
778+ * The alpha component.
779+ */
780+ alpha: number,
781+
782+ /**
783+ * The chroma component.
784+ */
785+ c: number,
786+
787+ /**
788+ * The hue component.
789+ */
790+ h: number,
791+
792+ /**
793+ * The lightness component.
794+ */
795+ l: number,
796+ type: "oklch",
797+ |};
798+/**
799+ * A color in a predefined color space, e.g. `display-p3`.
800+ */
801+export type PredefinedColor =
802+ | {|
803+ /**
804+ * The alpha component.
805+ */
806+ alpha: number,
807+
808+ /**
809+ * The blue component.
810+ */
811+ b: number,
812+
813+ /**
814+ * The green component.
815+ */
816+ g: number,
817+
818+ /**
819+ * The red component.
820+ */
821+ r: number,
822+ type: "srgb",
823+ |}
824+ | {|
825+ /**
826+ * The alpha component.
827+ */
828+ alpha: number,
829+
830+ /**
831+ * The blue component.
832+ */
833+ b: number,
834+
835+ /**
836+ * The green component.
837+ */
838+ g: number,
839+
840+ /**
841+ * The red component.
842+ */
843+ r: number,
844+ type: "srgb-linear",
845+ |}
846+ | {|
847+ /**
848+ * The alpha component.
849+ */
850+ alpha: number,
851+
852+ /**
853+ * The blue component.
854+ */
855+ b: number,
856+
857+ /**
858+ * The green component.
859+ */
860+ g: number,
861+
862+ /**
863+ * The red component.
864+ */
865+ r: number,
866+ type: "display-p3",
867+ |}
868+ | {|
869+ /**
870+ * The alpha component.
871+ */
872+ alpha: number,
873+
874+ /**
875+ * The blue component.
876+ */
877+ b: number,
878+
879+ /**
880+ * The green component.
881+ */
882+ g: number,
883+
884+ /**
885+ * The red component.
886+ */
887+ r: number,
888+ type: "a98-rgb",
889+ |}
890+ | {|
891+ /**
892+ * The alpha component.
893+ */
894+ alpha: number,
895+
896+ /**
897+ * The blue component.
898+ */
899+ b: number,
900+
901+ /**
902+ * The green component.
903+ */
904+ g: number,
905+
906+ /**
907+ * The red component.
908+ */
909+ r: number,
910+ type: "prophoto-rgb",
911+ |}
912+ | {|
913+ /**
914+ * The alpha component.
915+ */
916+ alpha: number,
917+
918+ /**
919+ * The blue component.
920+ */
921+ b: number,
922+
923+ /**
924+ * The green component.
925+ */
926+ g: number,
927+
928+ /**
929+ * The red component.
930+ */
931+ r: number,
932+ type: "rec2020",
933+ |}
934+ | {|
935+ /**
936+ * The alpha component.
937+ */
938+ alpha: number,
939+ type: "xyz-d50",
940+
941+ /**
942+ * The x component.
943+ */
944+ x: number,
945+
946+ /**
947+ * The y component.
948+ */
949+ y: number,
950+
951+ /**
952+ * The z component.
953+ */
954+ z: number,
955+ |}
956+ | {|
957+ /**
958+ * The alpha component.
959+ */
960+ alpha: number,
961+ type: "xyz-d65",
962+
963+ /**
964+ * The x component.
965+ */
966+ x: number,
967+
968+ /**
969+ * The y component.
970+ */
971+ y: number,
972+
973+ /**
974+ * The z component.
975+ */
976+ z: number,
977+ |};
978+/**
979+ * A floating point representation of color types that are usually stored as RGBA. These are used when there are any `none` components, which are represented as NaN.
980+ */
981+export type FloatColor =
982+ | {|
983+ /**
984+ * The alpha component.
985+ */
986+ alpha: number,
987+
988+ /**
989+ * The blue component.
990+ */
991+ b: number,
992+
993+ /**
994+ * The green component.
995+ */
996+ g: number,
997+
998+ /**
999+ * The red component.
1000+ */
1001+ r: number,
1002+ type: "rgb",
1003+ |}
1004+ | {|
1005+ /**
1006+ * The alpha component.
1007+ */
1008+ alpha: number,
1009+
1010+ /**
1011+ * The hue component.
1012+ */
1013+ h: number,
1014+
1015+ /**
1016+ * The lightness component.
1017+ */
1018+ l: number,
1019+
1020+ /**
1021+ * The saturation component.
1022+ */
1023+ s: number,
1024+ type: "hsl",
1025+ |}
1026+ | {|
1027+ /**
1028+ * The alpha component.
1029+ */
1030+ alpha: number,
1031+
1032+ /**
1033+ * The blackness component.
1034+ */
1035+ b: number,
1036+
1037+ /**
1038+ * The hue component.
1039+ */
1040+ h: number,
1041+ type: "hwb",
1042+
1043+ /**
1044+ * The whiteness component.
1045+ */
1046+ w: number,
1047+ |};
1048+export type LightDark = {|
1049+ dark: CssColor,
1050+ light: CssColor,
1051+ type: "light-dark",
1052+|};
1053+/**
1054+ * A CSS [system color](https://drafts.csswg.org/css-color/#css-system-colors) keyword.
1055+ */
1056+export type SystemColor =
1057+ | "accentcolor"
1058+ | "accentcolortext"
1059+ | "activetext"
1060+ | "buttonborder"
1061+ | "buttonface"
1062+ | "buttontext"
1063+ | "canvas"
1064+ | "canvastext"
1065+ | "field"
1066+ | "fieldtext"
1067+ | "graytext"
1068+ | "highlight"
1069+ | "highlighttext"
1070+ | "linktext"
1071+ | "mark"
1072+ | "marktext"
1073+ | "selecteditem"
1074+ | "selecteditemtext"
1075+ | "visitedtext"
1076+ | "activeborder"
1077+ | "activecaption"
1078+ | "appworkspace"
1079+ | "background"
1080+ | "buttonhighlight"
1081+ | "buttonshadow"
1082+ | "captiontext"
1083+ | "inactiveborder"
1084+ | "inactivecaption"
1085+ | "inactivecaptiontext"
1086+ | "infobackground"
1087+ | "infotext"
1088+ | "menu"
1089+ | "menutext"
1090+ | "scrollbar"
1091+ | "threeddarkshadow"
1092+ | "threedface"
1093+ | "threedhighlight"
1094+ | "threedlightshadow"
1095+ | "threedshadow"
1096+ | "window"
1097+ | "windowframe"
1098+ | "windowtext";
1099+/**
1100+ * A color value with an unresolved alpha value (e.g. a variable). These can be converted from the modern slash syntax to older comma syntax. This can only be done when the only unresolved component is the alpha since variables can resolve to multiple tokens.
1101+ */
1102+export type UnresolvedColor =
1103+ | {|
1104+ /**
1105+ * The unresolved alpha component.
1106+ */
1107+ alpha: TokenOrValue[],
1108+
1109+ /**
1110+ * The blue component.
1111+ */
1112+ b: number,
1113+
1114+ /**
1115+ * The green component.
1116+ */
1117+ g: number,
1118+
1119+ /**
1120+ * The red component.
1121+ */
1122+ r: number,
1123+ type: "rgb",
1124+ |}
1125+ | {|
1126+ /**
1127+ * The unresolved alpha component.
1128+ */
1129+ alpha: TokenOrValue[],
1130+
1131+ /**
1132+ * The hue component.
1133+ */
1134+ h: number,
1135+
1136+ /**
1137+ * The lightness component.
1138+ */
1139+ l: number,
1140+
1141+ /**
1142+ * The saturation component.
1143+ */
1144+ s: number,
1145+ type: "hsl",
1146+ |}
1147+ | {|
1148+ /**
1149+ * The dark value.
1150+ */
1151+ dark: TokenOrValue[],
1152+
1153+ /**
1154+ * The light value.
1155+ */
1156+ light: TokenOrValue[],
1157+ type: "light-dark",
1158+ |};
1159+/**
1160+ * Defines where the class names referenced in the `composes` property are located.
1161+ *
1162+ * See [Composes](Composes).
1163+ */
1164+export type Specifier =
1165+ | {|
1166+ type: "global",
1167+ |}
1168+ | {|
1169+ type: "file",
1170+ value: String,
1171+ |}
1172+ | {|
1173+ type: "source-index",
1174+ value: number,
1175+ |};
1176+/**
1177+ * A CSS [`<angle>`](https://www.w3.org/TR/css-values-4/#angles) value.
1178+ *
1179+ * Angles may be explicit or computed by `calc()`, but are always stored and serialized as their computed value.
1180+ */
1181+export type Angle =
1182+ | {|
1183+ type: "deg",
1184+ value: number,
1185+ |}
1186+ | {|
1187+ type: "rad",
1188+ value: number,
1189+ |}
1190+ | {|
1191+ type: "grad",
1192+ value: number,
1193+ |}
1194+ | {|
1195+ type: "turn",
1196+ value: number,
1197+ |};
1198+/**
1199+ * A CSS [`<time>`](https://www.w3.org/TR/css-values-4/#time) value, in either seconds or milliseconds.
1200+ *
1201+ * Time values may be explicit or computed by `calc()`, but are always stored and serialized as their computed value.
1202+ */
1203+export type Time =
1204+ | {|
1205+ type: "seconds",
1206+ value: number,
1207+ |}
1208+ | {|
1209+ type: "milliseconds",
1210+ value: number,
1211+ |};
1212+/**
1213+ * A value for the [animation-name](https://drafts.csswg.org/css-animations/#animation-name) property.
1214+ */
1215+export type AnimationName =
1216+ | {|
1217+ type: "none",
1218+ |}
1219+ | {|
1220+ type: "ident",
1221+ value: String,
1222+ |}
1223+ | {|
1224+ type: "string",
1225+ value: String,
1226+ |};
1227+/**
1228+ * A CSS environment variable name.
1229+ */
1230+export type EnvironmentVariableName =
1231+ | {|
1232+ type: "ua",
1233+ value: UAEnvironmentVariable,
1234+ |}
1235+ | {|
1236+ /**
1237+ * CSS modules extension: the filename where the variable is defined. Only enabled when the CSS modules `dashed_idents` option is turned on.
1238+ */
1239+ from?: Specifier | null,
1240+
1241+ /**
1242+ * The referenced identifier.
1243+ */
1244+ ident: String,
1245+ type: "custom",
1246+ |}
1247+ | {|
1248+ type: "unknown",
1249+ value: String,
1250+ |};
1251+/**
1252+ * A UA-defined environment variable name.
1253+ */
1254+export type UAEnvironmentVariable =
1255+ | "safe-area-inset-top"
1256+ | "safe-area-inset-right"
1257+ | "safe-area-inset-bottom"
1258+ | "safe-area-inset-left"
1259+ | "viewport-segment-width"
1260+ | "viewport-segment-height"
1261+ | "viewport-segment-top"
1262+ | "viewport-segment-left"
1263+ | "viewport-segment-bottom"
1264+ | "viewport-segment-right";
1265+/**
1266+ * A [comparator](https://drafts.csswg.org/mediaqueries/#typedef-mf-comparison) within a media query.
1267+ */
1268+export type MediaFeatureComparison =
1269+ | "equal"
1270+ | "greater-than"
1271+ | "greater-than-equal"
1272+ | "less-than"
1273+ | "less-than-equal";
1274+/**
1275+ * A binary `and` or `or` operator.
1276+ */
1277+export type Operator = "and" | "or";
1278+export type MediaType = string;
1279+/**
1280+ * A [media query qualifier](https://drafts.csswg.org/mediaqueries/#mq-prefix).
1281+ */
1282+export type Qualifier = "only" | "not";
1283+/**
1284+ * A [`<supports-condition>`](https://drafts.csswg.org/css-conditional-3/#typedef-supports-condition), as used in the `@supports` and `@import` rules.
1285+ */
1286+export type SupportsCondition =
1287+ | {|
1288+ type: "not",
1289+ value: SupportsCondition,
1290+ |}
1291+ | {|
1292+ type: "and",
1293+ value: SupportsCondition[],
1294+ |}
1295+ | {|
1296+ type: "or",
1297+ value: SupportsCondition[],
1298+ |}
1299+ | {|
1300+ /**
1301+ * The property id for the declaration.
1302+ */
1303+ propertyId: PropertyId,
1304+ type: "declaration",
1305+
1306+ /**
1307+ * The raw value of the declaration.
1308+ */
1309+ value: String,
1310+ |}
1311+ | {|
1312+ type: "selector",
1313+ value: String,
1314+ |}
1315+ | {|
1316+ type: "unknown",
1317+ value: String,
1318+ |};
1319+export type PropertyId =
1320+ | {|
1321+ property: "background-color",
1322+ |}
1323+ | {|
1324+ property: "background-image",
1325+ |}
1326+ | {|
1327+ property: "background-position-x",
1328+ |}
1329+ | {|
1330+ property: "background-position-y",
1331+ |}
1332+ | {|
1333+ property: "background-position",
1334+ |}
1335+ | {|
1336+ property: "background-size",
1337+ |}
1338+ | {|
1339+ property: "background-repeat",
1340+ |}
1341+ | {|
1342+ property: "background-attachment",
1343+ |}
1344+ | {|
1345+ property: "background-clip",
1346+ vendorPrefix: VendorPrefix,
1347+ |}
1348+ | {|
1349+ property: "background-origin",
1350+ |}
1351+ | {|
1352+ property: "background",
1353+ |}
1354+ | {|
1355+ property: "box-shadow",
1356+ vendorPrefix: VendorPrefix,
1357+ |}
1358+ | {|
1359+ property: "opacity",
1360+ |}
1361+ | {|
1362+ property: "color",
1363+ |}
1364+ | {|
1365+ property: "display",
1366+ |}
1367+ | {|
1368+ property: "visibility",
1369+ |}
1370+ | {|
1371+ property: "width",
1372+ |}
1373+ | {|
1374+ property: "height",
1375+ |}
1376+ | {|
1377+ property: "min-width",
1378+ |}
1379+ | {|
1380+ property: "min-height",
1381+ |}
1382+ | {|
1383+ property: "max-width",
1384+ |}
1385+ | {|
1386+ property: "max-height",
1387+ |}
1388+ | {|
1389+ property: "block-size",
1390+ |}
1391+ | {|
1392+ property: "inline-size",
1393+ |}
1394+ | {|
1395+ property: "min-block-size",
1396+ |}
1397+ | {|
1398+ property: "min-inline-size",
1399+ |}
1400+ | {|
1401+ property: "max-block-size",
1402+ |}
1403+ | {|
1404+ property: "max-inline-size",
1405+ |}
1406+ | {|
1407+ property: "box-sizing",
1408+ vendorPrefix: VendorPrefix,
1409+ |}
1410+ | {|
1411+ property: "aspect-ratio",
1412+ |}
1413+ | {|
1414+ property: "overflow",
1415+ |}
1416+ | {|
1417+ property: "overflow-x",
1418+ |}
1419+ | {|
1420+ property: "overflow-y",
1421+ |}
1422+ | {|
1423+ property: "text-overflow",
1424+ vendorPrefix: VendorPrefix,
1425+ |}
1426+ | {|
1427+ property: "position",
1428+ |}
1429+ | {|
1430+ property: "top",
1431+ |}
1432+ | {|
1433+ property: "bottom",
1434+ |}
1435+ | {|
1436+ property: "left",
1437+ |}
1438+ | {|
1439+ property: "right",
1440+ |}
1441+ | {|
1442+ property: "inset-block-start",
1443+ |}
1444+ | {|
1445+ property: "inset-block-end",
1446+ |}
1447+ | {|
1448+ property: "inset-inline-start",
1449+ |}
1450+ | {|
1451+ property: "inset-inline-end",
1452+ |}
1453+ | {|
1454+ property: "inset-block",
1455+ |}
1456+ | {|
1457+ property: "inset-inline",
1458+ |}
1459+ | {|
1460+ property: "inset",
1461+ |}
1462+ | {|
1463+ property: "border-spacing",
1464+ |}
1465+ | {|
1466+ property: "border-top-color",
1467+ |}
1468+ | {|
1469+ property: "border-bottom-color",
1470+ |}
1471+ | {|
1472+ property: "border-left-color",
1473+ |}
1474+ | {|
1475+ property: "border-right-color",
1476+ |}
1477+ | {|
1478+ property: "border-block-start-color",
1479+ |}
1480+ | {|
1481+ property: "border-block-end-color",
1482+ |}
1483+ | {|
1484+ property: "border-inline-start-color",
1485+ |}
1486+ | {|
1487+ property: "border-inline-end-color",
1488+ |}
1489+ | {|
1490+ property: "border-top-style",
1491+ |}
1492+ | {|
1493+ property: "border-bottom-style",
1494+ |}
1495+ | {|
1496+ property: "border-left-style",
1497+ |}
1498+ | {|
1499+ property: "border-right-style",
1500+ |}
1501+ | {|
1502+ property: "border-block-start-style",
1503+ |}
1504+ | {|
1505+ property: "border-block-end-style",
1506+ |}
1507+ | {|
1508+ property: "border-inline-start-style",
1509+ |}
1510+ | {|
1511+ property: "border-inline-end-style",
1512+ |}
1513+ | {|
1514+ property: "border-top-width",
1515+ |}
1516+ | {|
1517+ property: "border-bottom-width",
1518+ |}
1519+ | {|
1520+ property: "border-left-width",
1521+ |}
1522+ | {|
1523+ property: "border-right-width",
1524+ |}
1525+ | {|
1526+ property: "border-block-start-width",
1527+ |}
1528+ | {|
1529+ property: "border-block-end-width",
1530+ |}
1531+ | {|
1532+ property: "border-inline-start-width",
1533+ |}
1534+ | {|
1535+ property: "border-inline-end-width",
1536+ |}
1537+ | {|
1538+ property: "border-top-left-radius",
1539+ vendorPrefix: VendorPrefix,
1540+ |}
1541+ | {|
1542+ property: "border-top-right-radius",
1543+ vendorPrefix: VendorPrefix,
1544+ |}
1545+ | {|
1546+ property: "border-bottom-left-radius",
1547+ vendorPrefix: VendorPrefix,
1548+ |}
1549+ | {|
1550+ property: "border-bottom-right-radius",
1551+ vendorPrefix: VendorPrefix,
1552+ |}
1553+ | {|
1554+ property: "border-start-start-radius",
1555+ |}
1556+ | {|
1557+ property: "border-start-end-radius",
1558+ |}
1559+ | {|
1560+ property: "border-end-start-radius",
1561+ |}
1562+ | {|
1563+ property: "border-end-end-radius",
1564+ |}
1565+ | {|
1566+ property: "border-radius",
1567+ vendorPrefix: VendorPrefix,
1568+ |}
1569+ | {|
1570+ property: "border-image-source",
1571+ |}
1572+ | {|
1573+ property: "border-image-outset",
1574+ |}
1575+ | {|
1576+ property: "border-image-repeat",
1577+ |}
1578+ | {|
1579+ property: "border-image-width",
1580+ |}
1581+ | {|
1582+ property: "border-image-slice",
1583+ |}
1584+ | {|
1585+ property: "border-image",
1586+ vendorPrefix: VendorPrefix,
1587+ |}
1588+ | {|
1589+ property: "border-color",
1590+ |}
1591+ | {|
1592+ property: "border-style",
1593+ |}
1594+ | {|
1595+ property: "border-width",
1596+ |}
1597+ | {|
1598+ property: "border-block-color",
1599+ |}
1600+ | {|
1601+ property: "border-block-style",
1602+ |}
1603+ | {|
1604+ property: "border-block-width",
1605+ |}
1606+ | {|
1607+ property: "border-inline-color",
1608+ |}
1609+ | {|
1610+ property: "border-inline-style",
1611+ |}
1612+ | {|
1613+ property: "border-inline-width",
1614+ |}
1615+ | {|
1616+ property: "border",
1617+ |}
1618+ | {|
1619+ property: "border-top",
1620+ |}
1621+ | {|
1622+ property: "border-bottom",
1623+ |}
1624+ | {|
1625+ property: "border-left",
1626+ |}
1627+ | {|
1628+ property: "border-right",
1629+ |}
1630+ | {|
1631+ property: "border-block",
1632+ |}
1633+ | {|
1634+ property: "border-block-start",
1635+ |}
1636+ | {|
1637+ property: "border-block-end",
1638+ |}
1639+ | {|
1640+ property: "border-inline",
1641+ |}
1642+ | {|
1643+ property: "border-inline-start",
1644+ |}
1645+ | {|
1646+ property: "border-inline-end",
1647+ |}
1648+ | {|
1649+ property: "outline",
1650+ |}
1651+ | {|
1652+ property: "outline-color",
1653+ |}
1654+ | {|
1655+ property: "outline-style",
1656+ |}
1657+ | {|
1658+ property: "outline-width",
1659+ |}
1660+ | {|
1661+ property: "flex-direction",
1662+ vendorPrefix: VendorPrefix,
1663+ |}
1664+ | {|
1665+ property: "flex-wrap",
1666+ vendorPrefix: VendorPrefix,
1667+ |}
1668+ | {|
1669+ property: "flex-flow",
1670+ vendorPrefix: VendorPrefix,
1671+ |}
1672+ | {|
1673+ property: "flex-grow",
1674+ vendorPrefix: VendorPrefix,
1675+ |}
1676+ | {|
1677+ property: "flex-shrink",
1678+ vendorPrefix: VendorPrefix,
1679+ |}
1680+ | {|
1681+ property: "flex-basis",
1682+ vendorPrefix: VendorPrefix,
1683+ |}
1684+ | {|
1685+ property: "flex",
1686+ vendorPrefix: VendorPrefix,
1687+ |}
1688+ | {|
1689+ property: "order",
1690+ vendorPrefix: VendorPrefix,
1691+ |}
1692+ | {|
1693+ property: "align-content",
1694+ vendorPrefix: VendorPrefix,
1695+ |}
1696+ | {|
1697+ property: "justify-content",
1698+ vendorPrefix: VendorPrefix,
1699+ |}
1700+ | {|
1701+ property: "place-content",
1702+ |}
1703+ | {|
1704+ property: "align-self",
1705+ vendorPrefix: VendorPrefix,
1706+ |}
1707+ | {|
1708+ property: "justify-self",
1709+ |}
1710+ | {|
1711+ property: "place-self",
1712+ |}
1713+ | {|
1714+ property: "align-items",
1715+ vendorPrefix: VendorPrefix,
1716+ |}
1717+ | {|
1718+ property: "justify-items",
1719+ |}
1720+ | {|
1721+ property: "place-items",
1722+ |}
1723+ | {|
1724+ property: "row-gap",
1725+ |}
1726+ | {|
1727+ property: "column-gap",
1728+ |}
1729+ | {|
1730+ property: "gap",
1731+ |}
1732+ | {|
1733+ property: "box-orient",
1734+ vendorPrefix: VendorPrefix,
1735+ |}
1736+ | {|
1737+ property: "box-direction",
1738+ vendorPrefix: VendorPrefix,
1739+ |}
1740+ | {|
1741+ property: "box-ordinal-group",
1742+ vendorPrefix: VendorPrefix,
1743+ |}
1744+ | {|
1745+ property: "box-align",
1746+ vendorPrefix: VendorPrefix,
1747+ |}
1748+ | {|
1749+ property: "box-flex",
1750+ vendorPrefix: VendorPrefix,
1751+ |}
1752+ | {|
1753+ property: "box-flex-group",
1754+ vendorPrefix: VendorPrefix,
1755+ |}
1756+ | {|
1757+ property: "box-pack",
1758+ vendorPrefix: VendorPrefix,
1759+ |}
1760+ | {|
1761+ property: "box-lines",
1762+ vendorPrefix: VendorPrefix,
1763+ |}
1764+ | {|
1765+ property: "flex-pack",
1766+ vendorPrefix: VendorPrefix,
1767+ |}
1768+ | {|
1769+ property: "flex-order",
1770+ vendorPrefix: VendorPrefix,
1771+ |}
1772+ | {|
1773+ property: "flex-align",
1774+ vendorPrefix: VendorPrefix,
1775+ |}
1776+ | {|
1777+ property: "flex-item-align",
1778+ vendorPrefix: VendorPrefix,
1779+ |}
1780+ | {|
1781+ property: "flex-line-pack",
1782+ vendorPrefix: VendorPrefix,
1783+ |}
1784+ | {|
1785+ property: "flex-positive",
1786+ vendorPrefix: VendorPrefix,
1787+ |}
1788+ | {|
1789+ property: "flex-negative",
1790+ vendorPrefix: VendorPrefix,
1791+ |}
1792+ | {|
1793+ property: "flex-preferred-size",
1794+ vendorPrefix: VendorPrefix,
1795+ |}
1796+ | {|
1797+ property: "grid-template-columns",
1798+ |}
1799+ | {|
1800+ property: "grid-template-rows",
1801+ |}
1802+ | {|
1803+ property: "grid-auto-columns",
1804+ |}
1805+ | {|
1806+ property: "grid-auto-rows",
1807+ |}
1808+ | {|
1809+ property: "grid-auto-flow",
1810+ |}
1811+ | {|
1812+ property: "grid-template-areas",
1813+ |}
1814+ | {|
1815+ property: "grid-template",
1816+ |}
1817+ | {|
1818+ property: "grid",
1819+ |}
1820+ | {|
1821+ property: "grid-row-start",
1822+ |}
1823+ | {|
1824+ property: "grid-row-end",
1825+ |}
1826+ | {|
1827+ property: "grid-column-start",
1828+ |}
1829+ | {|
1830+ property: "grid-column-end",
1831+ |}
1832+ | {|
1833+ property: "grid-row",
1834+ |}
1835+ | {|
1836+ property: "grid-column",
1837+ |}
1838+ | {|
1839+ property: "grid-area",
1840+ |}
1841+ | {|
1842+ property: "margin-top",
1843+ |}
1844+ | {|
1845+ property: "margin-bottom",
1846+ |}
1847+ | {|
1848+ property: "margin-left",
1849+ |}
1850+ | {|
1851+ property: "margin-right",
1852+ |}
1853+ | {|
1854+ property: "margin-block-start",
1855+ |}
1856+ | {|
1857+ property: "margin-block-end",
1858+ |}
1859+ | {|
1860+ property: "margin-inline-start",
1861+ |}
1862+ | {|
1863+ property: "margin-inline-end",
1864+ |}
1865+ | {|
1866+ property: "margin-block",
1867+ |}
1868+ | {|
1869+ property: "margin-inline",
1870+ |}
1871+ | {|
1872+ property: "margin",
1873+ |}
1874+ | {|
1875+ property: "padding-top",
1876+ |}
1877+ | {|
1878+ property: "padding-bottom",
1879+ |}
1880+ | {|
1881+ property: "padding-left",
1882+ |}
1883+ | {|
1884+ property: "padding-right",
1885+ |}
1886+ | {|
1887+ property: "padding-block-start",
1888+ |}
1889+ | {|
1890+ property: "padding-block-end",
1891+ |}
1892+ | {|
1893+ property: "padding-inline-start",
1894+ |}
1895+ | {|
1896+ property: "padding-inline-end",
1897+ |}
1898+ | {|
1899+ property: "padding-block",
1900+ |}
1901+ | {|
1902+ property: "padding-inline",
1903+ |}
1904+ | {|
1905+ property: "padding",
1906+ |}
1907+ | {|
1908+ property: "scroll-margin-top",
1909+ |}
1910+ | {|
1911+ property: "scroll-margin-bottom",
1912+ |}
1913+ | {|
1914+ property: "scroll-margin-left",
1915+ |}
1916+ | {|
1917+ property: "scroll-margin-right",
1918+ |}
1919+ | {|
1920+ property: "scroll-margin-block-start",
1921+ |}
1922+ | {|
1923+ property: "scroll-margin-block-end",
1924+ |}
1925+ | {|
1926+ property: "scroll-margin-inline-start",
1927+ |}
1928+ | {|
1929+ property: "scroll-margin-inline-end",
1930+ |}
1931+ | {|
1932+ property: "scroll-margin-block",
1933+ |}
1934+ | {|
1935+ property: "scroll-margin-inline",
1936+ |}
1937+ | {|
1938+ property: "scroll-margin",
1939+ |}
1940+ | {|
1941+ property: "scroll-padding-top",
1942+ |}
1943+ | {|
1944+ property: "scroll-padding-bottom",
1945+ |}
1946+ | {|
1947+ property: "scroll-padding-left",
1948+ |}
1949+ | {|
1950+ property: "scroll-padding-right",
1951+ |}
1952+ | {|
1953+ property: "scroll-padding-block-start",
1954+ |}
1955+ | {|
1956+ property: "scroll-padding-block-end",
1957+ |}
1958+ | {|
1959+ property: "scroll-padding-inline-start",
1960+ |}
1961+ | {|
1962+ property: "scroll-padding-inline-end",
1963+ |}
1964+ | {|
1965+ property: "scroll-padding-block",
1966+ |}
1967+ | {|
1968+ property: "scroll-padding-inline",
1969+ |}
1970+ | {|
1971+ property: "scroll-padding",
1972+ |}
1973+ | {|
1974+ property: "font-weight",
1975+ |}
1976+ | {|
1977+ property: "font-size",
1978+ |}
1979+ | {|
1980+ property: "font-stretch",
1981+ |}
1982+ | {|
1983+ property: "font-family",
1984+ |}
1985+ | {|
1986+ property: "font-style",
1987+ |}
1988+ | {|
1989+ property: "font-variant-caps",
1990+ |}
1991+ | {|
1992+ property: "line-height",
1993+ |}
1994+ | {|
1995+ property: "font",
1996+ |}
1997+ | {|
1998+ property: "vertical-align",
1999+ |}
2000+ | {|
2001+ property: "font-palette",
2002+ |}
2003+ | {|
2004+ property: "transition-property",
2005+ vendorPrefix: VendorPrefix,
2006+ |}
2007+ | {|
2008+ property: "transition-duration",
2009+ vendorPrefix: VendorPrefix,
2010+ |}
2011+ | {|
2012+ property: "transition-delay",
2013+ vendorPrefix: VendorPrefix,
2014+ |}
2015+ | {|
2016+ property: "transition-timing-function",
2017+ vendorPrefix: VendorPrefix,
2018+ |}
2019+ | {|
2020+ property: "transition",
2021+ vendorPrefix: VendorPrefix,
2022+ |}
2023+ | {|
2024+ property: "animation-name",
2025+ vendorPrefix: VendorPrefix,
2026+ |}
2027+ | {|
2028+ property: "animation-duration",
2029+ vendorPrefix: VendorPrefix,
2030+ |}
2031+ | {|
2032+ property: "animation-timing-function",
2033+ vendorPrefix: VendorPrefix,
2034+ |}
2035+ | {|
2036+ property: "animation-iteration-count",
2037+ vendorPrefix: VendorPrefix,
2038+ |}
2039+ | {|
2040+ property: "animation-direction",
2041+ vendorPrefix: VendorPrefix,
2042+ |}
2043+ | {|
2044+ property: "animation-play-state",
2045+ vendorPrefix: VendorPrefix,
2046+ |}
2047+ | {|
2048+ property: "animation-delay",
2049+ vendorPrefix: VendorPrefix,
2050+ |}
2051+ | {|
2052+ property: "animation-fill-mode",
2053+ vendorPrefix: VendorPrefix,
2054+ |}
2055+ | {|
2056+ property: "animation-composition",
2057+ |}
2058+ | {|
2059+ property: "animation-timeline",
2060+ |}
2061+ | {|
2062+ property: "animation-range-start",
2063+ |}
2064+ | {|
2065+ property: "animation-range-end",
2066+ |}
2067+ | {|
2068+ property: "animation-range",
2069+ |}
2070+ | {|
2071+ property: "animation",
2072+ vendorPrefix: VendorPrefix,
2073+ |}
2074+ | {|
2075+ property: "transform",
2076+ vendorPrefix: VendorPrefix,
2077+ |}
2078+ | {|
2079+ property: "transform-origin",
2080+ vendorPrefix: VendorPrefix,
2081+ |}
2082+ | {|
2083+ property: "transform-style",
2084+ vendorPrefix: VendorPrefix,
2085+ |}
2086+ | {|
2087+ property: "transform-box",
2088+ |}
2089+ | {|
2090+ property: "backface-visibility",
2091+ vendorPrefix: VendorPrefix,
2092+ |}
2093+ | {|
2094+ property: "perspective",
2095+ vendorPrefix: VendorPrefix,
2096+ |}
2097+ | {|
2098+ property: "perspective-origin",
2099+ vendorPrefix: VendorPrefix,
2100+ |}
2101+ | {|
2102+ property: "translate",
2103+ |}
2104+ | {|
2105+ property: "rotate",
2106+ |}
2107+ | {|
2108+ property: "scale",
2109+ |}
2110+ | {|
2111+ property: "text-transform",
2112+ |}
2113+ | {|
2114+ property: "white-space",
2115+ |}
2116+ | {|
2117+ property: "tab-size",
2118+ vendorPrefix: VendorPrefix,
2119+ |}
2120+ | {|
2121+ property: "word-break",
2122+ |}
2123+ | {|
2124+ property: "line-break",
2125+ |}
2126+ | {|
2127+ property: "hyphens",
2128+ vendorPrefix: VendorPrefix,
2129+ |}
2130+ | {|
2131+ property: "overflow-wrap",
2132+ |}
2133+ | {|
2134+ property: "word-wrap",
2135+ |}
2136+ | {|
2137+ property: "text-align",
2138+ |}
2139+ | {|
2140+ property: "text-align-last",
2141+ vendorPrefix: VendorPrefix,
2142+ |}
2143+ | {|
2144+ property: "text-justify",
2145+ |}
2146+ | {|
2147+ property: "word-spacing",
2148+ |}
2149+ | {|
2150+ property: "letter-spacing",
2151+ |}
2152+ | {|
2153+ property: "text-indent",
2154+ |}
2155+ | {|
2156+ property: "text-decoration-line",
2157+ vendorPrefix: VendorPrefix,
2158+ |}
2159+ | {|
2160+ property: "text-decoration-style",
2161+ vendorPrefix: VendorPrefix,
2162+ |}
2163+ | {|
2164+ property: "text-decoration-color",
2165+ vendorPrefix: VendorPrefix,
2166+ |}
2167+ | {|
2168+ property: "text-decoration-thickness",
2169+ |}
2170+ | {|
2171+ property: "text-decoration",
2172+ vendorPrefix: VendorPrefix,
2173+ |}
2174+ | {|
2175+ property: "text-decoration-skip-ink",
2176+ vendorPrefix: VendorPrefix,
2177+ |}
2178+ | {|
2179+ property: "text-emphasis-style",
2180+ vendorPrefix: VendorPrefix,
2181+ |}
2182+ | {|
2183+ property: "text-emphasis-color",
2184+ vendorPrefix: VendorPrefix,
2185+ |}
2186+ | {|
2187+ property: "text-emphasis",
2188+ vendorPrefix: VendorPrefix,
2189+ |}
2190+ | {|
2191+ property: "text-emphasis-position",
2192+ vendorPrefix: VendorPrefix,
2193+ |}
2194+ | {|
2195+ property: "text-shadow",
2196+ |}
2197+ | {|
2198+ property: "text-size-adjust",
2199+ vendorPrefix: VendorPrefix,
2200+ |}
2201+ | {|
2202+ property: "direction",
2203+ |}
2204+ | {|
2205+ property: "unicode-bidi",
2206+ |}
2207+ | {|
2208+ property: "box-decoration-break",
2209+ vendorPrefix: VendorPrefix,
2210+ |}
2211+ | {|
2212+ property: "resize",
2213+ |}
2214+ | {|
2215+ property: "cursor",
2216+ |}
2217+ | {|
2218+ property: "caret-color",
2219+ |}
2220+ | {|
2221+ property: "caret-shape",
2222+ |}
2223+ | {|
2224+ property: "caret",
2225+ |}
2226+ | {|
2227+ property: "user-select",
2228+ vendorPrefix: VendorPrefix,
2229+ |}
2230+ | {|
2231+ property: "accent-color",
2232+ |}
2233+ | {|
2234+ property: "appearance",
2235+ vendorPrefix: VendorPrefix,
2236+ |}
2237+ | {|
2238+ property: "list-style-type",
2239+ |}
2240+ | {|
2241+ property: "list-style-image",
2242+ |}
2243+ | {|
2244+ property: "list-style-position",
2245+ |}
2246+ | {|
2247+ property: "list-style",
2248+ |}
2249+ | {|
2250+ property: "marker-side",
2251+ |}
2252+ | {|
2253+ property: "composes",
2254+ |}
2255+ | {|
2256+ property: "fill",
2257+ |}
2258+ | {|
2259+ property: "fill-rule",
2260+ |}
2261+ | {|
2262+ property: "fill-opacity",
2263+ |}
2264+ | {|
2265+ property: "stroke",
2266+ |}
2267+ | {|
2268+ property: "stroke-opacity",
2269+ |}
2270+ | {|
2271+ property: "stroke-width",
2272+ |}
2273+ | {|
2274+ property: "stroke-linecap",
2275+ |}
2276+ | {|
2277+ property: "stroke-linejoin",
2278+ |}
2279+ | {|
2280+ property: "stroke-miterlimit",
2281+ |}
2282+ | {|
2283+ property: "stroke-dasharray",
2284+ |}
2285+ | {|
2286+ property: "stroke-dashoffset",
2287+ |}
2288+ | {|
2289+ property: "marker-start",
2290+ |}
2291+ | {|
2292+ property: "marker-mid",
2293+ |}
2294+ | {|
2295+ property: "marker-end",
2296+ |}
2297+ | {|
2298+ property: "marker",
2299+ |}
2300+ | {|
2301+ property: "color-interpolation",
2302+ |}
2303+ | {|
2304+ property: "color-interpolation-filters",
2305+ |}
2306+ | {|
2307+ property: "color-rendering",
2308+ |}
2309+ | {|
2310+ property: "shape-rendering",
2311+ |}
2312+ | {|
2313+ property: "text-rendering",
2314+ |}
2315+ | {|
2316+ property: "image-rendering",
2317+ |}
2318+ | {|
2319+ property: "clip-path",
2320+ vendorPrefix: VendorPrefix,
2321+ |}
2322+ | {|
2323+ property: "clip-rule",
2324+ |}
2325+ | {|
2326+ property: "mask-image",
2327+ vendorPrefix: VendorPrefix,
2328+ |}
2329+ | {|
2330+ property: "mask-mode",
2331+ |}
2332+ | {|
2333+ property: "mask-repeat",
2334+ vendorPrefix: VendorPrefix,
2335+ |}
2336+ | {|
2337+ property: "mask-position-x",
2338+ |}
2339+ | {|
2340+ property: "mask-position-y",
2341+ |}
2342+ | {|
2343+ property: "mask-position",
2344+ vendorPrefix: VendorPrefix,
2345+ |}
2346+ | {|
2347+ property: "mask-clip",
2348+ vendorPrefix: VendorPrefix,
2349+ |}
2350+ | {|
2351+ property: "mask-origin",
2352+ vendorPrefix: VendorPrefix,
2353+ |}
2354+ | {|
2355+ property: "mask-size",
2356+ vendorPrefix: VendorPrefix,
2357+ |}
2358+ | {|
2359+ property: "mask-composite",
2360+ |}
2361+ | {|
2362+ property: "mask-type",
2363+ |}
2364+ | {|
2365+ property: "mask",
2366+ vendorPrefix: VendorPrefix,
2367+ |}
2368+ | {|
2369+ property: "mask-border-source",
2370+ |}
2371+ | {|
2372+ property: "mask-border-mode",
2373+ |}
2374+ | {|
2375+ property: "mask-border-slice",
2376+ |}
2377+ | {|
2378+ property: "mask-border-width",
2379+ |}
2380+ | {|
2381+ property: "mask-border-outset",
2382+ |}
2383+ | {|
2384+ property: "mask-border-repeat",
2385+ |}
2386+ | {|
2387+ property: "mask-border",
2388+ |}
2389+ | {|
2390+ property: "-webkit-mask-composite",
2391+ |}
2392+ | {|
2393+ property: "mask-source-type",
2394+ vendorPrefix: VendorPrefix,
2395+ |}
2396+ | {|
2397+ property: "mask-box-image",
2398+ vendorPrefix: VendorPrefix,
2399+ |}
2400+ | {|
2401+ property: "mask-box-image-source",
2402+ vendorPrefix: VendorPrefix,
2403+ |}
2404+ | {|
2405+ property: "mask-box-image-slice",
2406+ vendorPrefix: VendorPrefix,
2407+ |}
2408+ | {|
2409+ property: "mask-box-image-width",
2410+ vendorPrefix: VendorPrefix,
2411+ |}
2412+ | {|
2413+ property: "mask-box-image-outset",
2414+ vendorPrefix: VendorPrefix,
2415+ |}
2416+ | {|
2417+ property: "mask-box-image-repeat",
2418+ vendorPrefix: VendorPrefix,
2419+ |}
2420+ | {|
2421+ property: "filter",
2422+ vendorPrefix: VendorPrefix,
2423+ |}
2424+ | {|
2425+ property: "backdrop-filter",
2426+ vendorPrefix: VendorPrefix,
2427+ |}
2428+ | {|
2429+ property: "z-index",
2430+ |}
2431+ | {|
2432+ property: "container-type",
2433+ |}
2434+ | {|
2435+ property: "container-name",
2436+ |}
2437+ | {|
2438+ property: "container",
2439+ |}
2440+ | {|
2441+ property: "view-transition-name",
2442+ |}
2443+ | {|
2444+ property: "view-transition-class",
2445+ |}
2446+ | {|
2447+ property: "view-transition-group",
2448+ |}
2449+ | {|
2450+ property: "color-scheme",
2451+ |}
2452+ | {|
2453+ property: "all",
2454+ |}
2455+ | {|
2456+ property: string,
2457+ |};
2458+export type Prefix = "none" | "webkit" | "moz" | "ms" | "o";
2459+export type VendorPrefix = Prefix[];
2460+export type Declaration =
2461+ | {|
2462+ property: "background-color",
2463+ value: CssColor,
2464+ |}
2465+ | {|
2466+ property: "background-image",
2467+ value: Image[],
2468+ |}
2469+ | {|
2470+ property: "background-position-x",
2471+ value: PositionComponentFor_HorizontalPositionKeyword[],
2472+ |}
2473+ | {|
2474+ property: "background-position-y",
2475+ value: PositionComponentFor_VerticalPositionKeyword[],
2476+ |}
2477+ | {|
2478+ property: "background-position",
2479+ value: BackgroundPosition[],
2480+ |}
2481+ | {|
2482+ property: "background-size",
2483+ value: BackgroundSize[],
2484+ |}
2485+ | {|
2486+ property: "background-repeat",
2487+ value: BackgroundRepeat[],
2488+ |}
2489+ | {|
2490+ property: "background-attachment",
2491+ value: BackgroundAttachment[],
2492+ |}
2493+ | {|
2494+ property: "background-clip",
2495+ value: BackgroundClip[],
2496+ vendorPrefix: VendorPrefix,
2497+ |}
2498+ | {|
2499+ property: "background-origin",
2500+ value: BackgroundOrigin[],
2501+ |}
2502+ | {|
2503+ property: "background",
2504+ value: Background[],
2505+ |}
2506+ | {|
2507+ property: "box-shadow",
2508+ value: BoxShadow[],
2509+ vendorPrefix: VendorPrefix,
2510+ |}
2511+ | {|
2512+ property: "opacity",
2513+ value: number,
2514+ |}
2515+ | {|
2516+ property: "color",
2517+ value: CssColor,
2518+ |}
2519+ | {|
2520+ property: "display",
2521+ value: Display,
2522+ |}
2523+ | {|
2524+ property: "visibility",
2525+ value: Visibility,
2526+ |}
2527+ | {|
2528+ property: "width",
2529+ value: Size,
2530+ |}
2531+ | {|
2532+ property: "height",
2533+ value: Size,
2534+ |}
2535+ | {|
2536+ property: "min-width",
2537+ value: Size,
2538+ |}
2539+ | {|
2540+ property: "min-height",
2541+ value: Size,
2542+ |}
2543+ | {|
2544+ property: "max-width",
2545+ value: MaxSize,
2546+ |}
2547+ | {|
2548+ property: "max-height",
2549+ value: MaxSize,
2550+ |}
2551+ | {|
2552+ property: "block-size",
2553+ value: Size,
2554+ |}
2555+ | {|
2556+ property: "inline-size",
2557+ value: Size,
2558+ |}
2559+ | {|
2560+ property: "min-block-size",
2561+ value: Size,
2562+ |}
2563+ | {|
2564+ property: "min-inline-size",
2565+ value: Size,
2566+ |}
2567+ | {|
2568+ property: "max-block-size",
2569+ value: MaxSize,
2570+ |}
2571+ | {|
2572+ property: "max-inline-size",
2573+ value: MaxSize,
2574+ |}
2575+ | {|
2576+ property: "box-sizing",
2577+ value: BoxSizing,
2578+ vendorPrefix: VendorPrefix,
2579+ |}
2580+ | {|
2581+ property: "aspect-ratio",
2582+ value: AspectRatio,
2583+ |}
2584+ | {|
2585+ property: "overflow",
2586+ value: Overflow,
2587+ |}
2588+ | {|
2589+ property: "overflow-x",
2590+ value: OverflowKeyword,
2591+ |}
2592+ | {|
2593+ property: "overflow-y",
2594+ value: OverflowKeyword,
2595+ |}
2596+ | {|
2597+ property: "text-overflow",
2598+ value: TextOverflow,
2599+ vendorPrefix: VendorPrefix,
2600+ |}
2601+ | {|
2602+ property: "position",
2603+ value: Position2,
2604+ |}
2605+ | {|
2606+ property: "top",
2607+ value: LengthPercentageOrAuto,
2608+ |}
2609+ | {|
2610+ property: "bottom",
2611+ value: LengthPercentageOrAuto,
2612+ |}
2613+ | {|
2614+ property: "left",
2615+ value: LengthPercentageOrAuto,
2616+ |}
2617+ | {|
2618+ property: "right",
2619+ value: LengthPercentageOrAuto,
2620+ |}
2621+ | {|
2622+ property: "inset-block-start",
2623+ value: LengthPercentageOrAuto,
2624+ |}
2625+ | {|
2626+ property: "inset-block-end",
2627+ value: LengthPercentageOrAuto,
2628+ |}
2629+ | {|
2630+ property: "inset-inline-start",
2631+ value: LengthPercentageOrAuto,
2632+ |}
2633+ | {|
2634+ property: "inset-inline-end",
2635+ value: LengthPercentageOrAuto,
2636+ |}
2637+ | {|
2638+ property: "inset-block",
2639+ value: InsetBlock,
2640+ |}
2641+ | {|
2642+ property: "inset-inline",
2643+ value: InsetInline,
2644+ |}
2645+ | {|
2646+ property: "inset",
2647+ value: Inset,
2648+ |}
2649+ | {|
2650+ property: "border-spacing",
2651+ value: Size2DFor_Length,
2652+ |}
2653+ | {|
2654+ property: "border-top-color",
2655+ value: CssColor,
2656+ |}
2657+ | {|
2658+ property: "border-bottom-color",
2659+ value: CssColor,
2660+ |}
2661+ | {|
2662+ property: "border-left-color",
2663+ value: CssColor,
2664+ |}
2665+ | {|
2666+ property: "border-right-color",
2667+ value: CssColor,
2668+ |}
2669+ | {|
2670+ property: "border-block-start-color",
2671+ value: CssColor,
2672+ |}
2673+ | {|
2674+ property: "border-block-end-color",
2675+ value: CssColor,
2676+ |}
2677+ | {|
2678+ property: "border-inline-start-color",
2679+ value: CssColor,
2680+ |}
2681+ | {|
2682+ property: "border-inline-end-color",
2683+ value: CssColor,
2684+ |}
2685+ | {|
2686+ property: "border-top-style",
2687+ value: LineStyle,
2688+ |}
2689+ | {|
2690+ property: "border-bottom-style",
2691+ value: LineStyle,
2692+ |}
2693+ | {|
2694+ property: "border-left-style",
2695+ value: LineStyle,
2696+ |}
2697+ | {|
2698+ property: "border-right-style",
2699+ value: LineStyle,
2700+ |}
2701+ | {|
2702+ property: "border-block-start-style",
2703+ value: LineStyle,
2704+ |}
2705+ | {|
2706+ property: "border-block-end-style",
2707+ value: LineStyle,
2708+ |}
2709+ | {|
2710+ property: "border-inline-start-style",
2711+ value: LineStyle,
2712+ |}
2713+ | {|
2714+ property: "border-inline-end-style",
2715+ value: LineStyle,
2716+ |}
2717+ | {|
2718+ property: "border-top-width",
2719+ value: BorderSideWidth,
2720+ |}
2721+ | {|
2722+ property: "border-bottom-width",
2723+ value: BorderSideWidth,
2724+ |}
2725+ | {|
2726+ property: "border-left-width",
2727+ value: BorderSideWidth,
2728+ |}
2729+ | {|
2730+ property: "border-right-width",
2731+ value: BorderSideWidth,
2732+ |}
2733+ | {|
2734+ property: "border-block-start-width",
2735+ value: BorderSideWidth,
2736+ |}
2737+ | {|
2738+ property: "border-block-end-width",
2739+ value: BorderSideWidth,
2740+ |}
2741+ | {|
2742+ property: "border-inline-start-width",
2743+ value: BorderSideWidth,
2744+ |}
2745+ | {|
2746+ property: "border-inline-end-width",
2747+ value: BorderSideWidth,
2748+ |}
2749+ | {|
2750+ property: "border-top-left-radius",
2751+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2752+ vendorPrefix: VendorPrefix,
2753+ |}
2754+ | {|
2755+ property: "border-top-right-radius",
2756+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2757+ vendorPrefix: VendorPrefix,
2758+ |}
2759+ | {|
2760+ property: "border-bottom-left-radius",
2761+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2762+ vendorPrefix: VendorPrefix,
2763+ |}
2764+ | {|
2765+ property: "border-bottom-right-radius",
2766+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2767+ vendorPrefix: VendorPrefix,
2768+ |}
2769+ | {|
2770+ property: "border-start-start-radius",
2771+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2772+ |}
2773+ | {|
2774+ property: "border-start-end-radius",
2775+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2776+ |}
2777+ | {|
2778+ property: "border-end-start-radius",
2779+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2780+ |}
2781+ | {|
2782+ property: "border-end-end-radius",
2783+ value: Size2DFor_DimensionPercentageFor_LengthValue,
2784+ |}
2785+ | {|
2786+ property: "border-radius",
2787+ value: BorderRadius,
2788+ vendorPrefix: VendorPrefix,
2789+ |}
2790+ | {|
2791+ property: "border-image-source",
2792+ value: Image,
2793+ |}
2794+ | {|
2795+ property: "border-image-outset",
2796+ value: RectFor_LengthOrNumber,
2797+ |}
2798+ | {|
2799+ property: "border-image-repeat",
2800+ value: BorderImageRepeat,
2801+ |}
2802+ | {|
2803+ property: "border-image-width",
2804+ value: RectFor_BorderImageSideWidth,
2805+ |}
2806+ | {|
2807+ property: "border-image-slice",
2808+ value: BorderImageSlice,
2809+ |}
2810+ | {|
2811+ property: "border-image",
2812+ value: BorderImage,
2813+ vendorPrefix: VendorPrefix,
2814+ |}
2815+ | {|
2816+ property: "border-color",
2817+ value: BorderColor,
2818+ |}
2819+ | {|
2820+ property: "border-style",
2821+ value: BorderStyle,
2822+ |}
2823+ | {|
2824+ property: "border-width",
2825+ value: BorderWidth,
2826+ |}
2827+ | {|
2828+ property: "border-block-color",
2829+ value: BorderBlockColor,
2830+ |}
2831+ | {|
2832+ property: "border-block-style",
2833+ value: BorderBlockStyle,
2834+ |}
2835+ | {|
2836+ property: "border-block-width",
2837+ value: BorderBlockWidth,
2838+ |}
2839+ | {|
2840+ property: "border-inline-color",
2841+ value: BorderInlineColor,
2842+ |}
2843+ | {|
2844+ property: "border-inline-style",
2845+ value: BorderInlineStyle,
2846+ |}
2847+ | {|
2848+ property: "border-inline-width",
2849+ value: BorderInlineWidth,
2850+ |}
2851+ | {|
2852+ property: "border",
2853+ value: GenericBorderFor_LineStyle,
2854+ |}
2855+ | {|
2856+ property: "border-top",
2857+ value: GenericBorderFor_LineStyle,
2858+ |}
2859+ | {|
2860+ property: "border-bottom",
2861+ value: GenericBorderFor_LineStyle,
2862+ |}
2863+ | {|
2864+ property: "border-left",
2865+ value: GenericBorderFor_LineStyle,
2866+ |}
2867+ | {|
2868+ property: "border-right",
2869+ value: GenericBorderFor_LineStyle,
2870+ |}
2871+ | {|
2872+ property: "border-block",
2873+ value: GenericBorderFor_LineStyle,
2874+ |}
2875+ | {|
2876+ property: "border-block-start",
2877+ value: GenericBorderFor_LineStyle,
2878+ |}
2879+ | {|
2880+ property: "border-block-end",
2881+ value: GenericBorderFor_LineStyle,
2882+ |}
2883+ | {|
2884+ property: "border-inline",
2885+ value: GenericBorderFor_LineStyle,
2886+ |}
2887+ | {|
2888+ property: "border-inline-start",
2889+ value: GenericBorderFor_LineStyle,
2890+ |}
2891+ | {|
2892+ property: "border-inline-end",
2893+ value: GenericBorderFor_LineStyle,
2894+ |}
2895+ | {|
2896+ property: "outline",
2897+ value: GenericBorderFor_OutlineStyleAnd_11,
2898+ |}
2899+ | {|
2900+ property: "outline-color",
2901+ value: CssColor,
2902+ |}
2903+ | {|
2904+ property: "outline-style",
2905+ value: OutlineStyle,
2906+ |}
2907+ | {|
2908+ property: "outline-width",
2909+ value: BorderSideWidth,
2910+ |}
2911+ | {|
2912+ property: "flex-direction",
2913+ value: FlexDirection,
2914+ vendorPrefix: VendorPrefix,
2915+ |}
2916+ | {|
2917+ property: "flex-wrap",
2918+ value: FlexWrap,
2919+ vendorPrefix: VendorPrefix,
2920+ |}
2921+ | {|
2922+ property: "flex-flow",
2923+ value: FlexFlow,
2924+ vendorPrefix: VendorPrefix,
2925+ |}
2926+ | {|
2927+ property: "flex-grow",
2928+ value: number,
2929+ vendorPrefix: VendorPrefix,
2930+ |}
2931+ | {|
2932+ property: "flex-shrink",
2933+ value: number,
2934+ vendorPrefix: VendorPrefix,
2935+ |}
2936+ | {|
2937+ property: "flex-basis",
2938+ value: LengthPercentageOrAuto,
2939+ vendorPrefix: VendorPrefix,
2940+ |}
2941+ | {|
2942+ property: "flex",
2943+ value: Flex,
2944+ vendorPrefix: VendorPrefix,
2945+ |}
2946+ | {|
2947+ property: "order",
2948+ value: number,
2949+ vendorPrefix: VendorPrefix,
2950+ |}
2951+ | {|
2952+ property: "align-content",
2953+ value: AlignContent,
2954+ vendorPrefix: VendorPrefix,
2955+ |}
2956+ | {|
2957+ property: "justify-content",
2958+ value: JustifyContent,
2959+ vendorPrefix: VendorPrefix,
2960+ |}
2961+ | {|
2962+ property: "place-content",
2963+ value: PlaceContent,
2964+ |}
2965+ | {|
2966+ property: "align-self",
2967+ value: AlignSelf,
2968+ vendorPrefix: VendorPrefix,
2969+ |}
2970+ | {|
2971+ property: "justify-self",
2972+ value: JustifySelf,
2973+ |}
2974+ | {|
2975+ property: "place-self",
2976+ value: PlaceSelf,
2977+ |}
2978+ | {|
2979+ property: "align-items",
2980+ value: AlignItems,
2981+ vendorPrefix: VendorPrefix,
2982+ |}
2983+ | {|
2984+ property: "justify-items",
2985+ value: JustifyItems,
2986+ |}
2987+ | {|
2988+ property: "place-items",
2989+ value: PlaceItems,
2990+ |}
2991+ | {|
2992+ property: "row-gap",
2993+ value: GapValue,
2994+ |}
2995+ | {|
2996+ property: "column-gap",
2997+ value: GapValue,
2998+ |}
2999+ | {|
3000+ property: "gap",
3001+ value: Gap,
3002+ |}
3003+ | {|
3004+ property: "box-orient",
3005+ value: BoxOrient,
3006+ vendorPrefix: VendorPrefix,
3007+ |}
3008+ | {|
3009+ property: "box-direction",
3010+ value: BoxDirection,
3011+ vendorPrefix: VendorPrefix,
3012+ |}
3013+ | {|
3014+ property: "box-ordinal-group",
3015+ value: number,
3016+ vendorPrefix: VendorPrefix,
3017+ |}
3018+ | {|
3019+ property: "box-align",
3020+ value: BoxAlign,
3021+ vendorPrefix: VendorPrefix,
3022+ |}
3023+ | {|
3024+ property: "box-flex",
3025+ value: number,
3026+ vendorPrefix: VendorPrefix,
3027+ |}
3028+ | {|
3029+ property: "box-flex-group",
3030+ value: number,
3031+ vendorPrefix: VendorPrefix,
3032+ |}
3033+ | {|
3034+ property: "box-pack",
3035+ value: BoxPack,
3036+ vendorPrefix: VendorPrefix,
3037+ |}
3038+ | {|
3039+ property: "box-lines",
3040+ value: BoxLines,
3041+ vendorPrefix: VendorPrefix,
3042+ |}
3043+ | {|
3044+ property: "flex-pack",
3045+ value: FlexPack,
3046+ vendorPrefix: VendorPrefix,
3047+ |}
3048+ | {|
3049+ property: "flex-order",
3050+ value: number,
3051+ vendorPrefix: VendorPrefix,
3052+ |}
3053+ | {|
3054+ property: "flex-align",
3055+ value: BoxAlign,
3056+ vendorPrefix: VendorPrefix,
3057+ |}
3058+ | {|
3059+ property: "flex-item-align",
3060+ value: FlexItemAlign,
3061+ vendorPrefix: VendorPrefix,
3062+ |}
3063+ | {|
3064+ property: "flex-line-pack",
3065+ value: FlexLinePack,
3066+ vendorPrefix: VendorPrefix,
3067+ |}
3068+ | {|
3069+ property: "flex-positive",
3070+ value: number,
3071+ vendorPrefix: VendorPrefix,
3072+ |}
3073+ | {|
3074+ property: "flex-negative",
3075+ value: number,
3076+ vendorPrefix: VendorPrefix,
3077+ |}
3078+ | {|
3079+ property: "flex-preferred-size",
3080+ value: LengthPercentageOrAuto,
3081+ vendorPrefix: VendorPrefix,
3082+ |}
3083+ | {|
3084+ property: "grid-template-columns",
3085+ value: TrackSizing,
3086+ |}
3087+ | {|
3088+ property: "grid-template-rows",
3089+ value: TrackSizing,
3090+ |}
3091+ | {|
3092+ property: "grid-auto-columns",
3093+ value: TrackSize[],
3094+ |}
3095+ | {|
3096+ property: "grid-auto-rows",
3097+ value: TrackSize[],
3098+ |}
3099+ | {|
3100+ property: "grid-auto-flow",
3101+ value: GridAutoFlow,
3102+ |}
3103+ | {|
3104+ property: "grid-template-areas",
3105+ value: GridTemplateAreas,
3106+ |}
3107+ | {|
3108+ property: "grid-template",
3109+ value: GridTemplate,
3110+ |}
3111+ | {|
3112+ property: "grid",
3113+ value: Grid,
3114+ |}
3115+ | {|
3116+ property: "grid-row-start",
3117+ value: GridLine,
3118+ |}
3119+ | {|
3120+ property: "grid-row-end",
3121+ value: GridLine,
3122+ |}
3123+ | {|
3124+ property: "grid-column-start",
3125+ value: GridLine,
3126+ |}
3127+ | {|
3128+ property: "grid-column-end",
3129+ value: GridLine,
3130+ |}
3131+ | {|
3132+ property: "grid-row",
3133+ value: GridRow,
3134+ |}
3135+ | {|
3136+ property: "grid-column",
3137+ value: GridColumn,
3138+ |}
3139+ | {|
3140+ property: "grid-area",
3141+ value: GridArea,
3142+ |}
3143+ | {|
3144+ property: "margin-top",
3145+ value: LengthPercentageOrAuto,
3146+ |}
3147+ | {|
3148+ property: "margin-bottom",
3149+ value: LengthPercentageOrAuto,
3150+ |}
3151+ | {|
3152+ property: "margin-left",
3153+ value: LengthPercentageOrAuto,
3154+ |}
3155+ | {|
3156+ property: "margin-right",
3157+ value: LengthPercentageOrAuto,
3158+ |}
3159+ | {|
3160+ property: "margin-block-start",
3161+ value: LengthPercentageOrAuto,
3162+ |}
3163+ | {|
3164+ property: "margin-block-end",
3165+ value: LengthPercentageOrAuto,
3166+ |}
3167+ | {|
3168+ property: "margin-inline-start",
3169+ value: LengthPercentageOrAuto,
3170+ |}
3171+ | {|
3172+ property: "margin-inline-end",
3173+ value: LengthPercentageOrAuto,
3174+ |}
3175+ | {|
3176+ property: "margin-block",
3177+ value: MarginBlock,
3178+ |}
3179+ | {|
3180+ property: "margin-inline",
3181+ value: MarginInline,
3182+ |}
3183+ | {|
3184+ property: "margin",
3185+ value: Margin,
3186+ |}
3187+ | {|
3188+ property: "padding-top",
3189+ value: LengthPercentageOrAuto,
3190+ |}
3191+ | {|
3192+ property: "padding-bottom",
3193+ value: LengthPercentageOrAuto,
3194+ |}
3195+ | {|
3196+ property: "padding-left",
3197+ value: LengthPercentageOrAuto,
3198+ |}
3199+ | {|
3200+ property: "padding-right",
3201+ value: LengthPercentageOrAuto,
3202+ |}
3203+ | {|
3204+ property: "padding-block-start",
3205+ value: LengthPercentageOrAuto,
3206+ |}
3207+ | {|
3208+ property: "padding-block-end",
3209+ value: LengthPercentageOrAuto,
3210+ |}
3211+ | {|
3212+ property: "padding-inline-start",
3213+ value: LengthPercentageOrAuto,
3214+ |}
3215+ | {|
3216+ property: "padding-inline-end",
3217+ value: LengthPercentageOrAuto,
3218+ |}
3219+ | {|
3220+ property: "padding-block",
3221+ value: PaddingBlock,
3222+ |}
3223+ | {|
3224+ property: "padding-inline",
3225+ value: PaddingInline,
3226+ |}
3227+ | {|
3228+ property: "padding",
3229+ value: Padding,
3230+ |}
3231+ | {|
3232+ property: "scroll-margin-top",
3233+ value: LengthPercentageOrAuto,
3234+ |}
3235+ | {|
3236+ property: "scroll-margin-bottom",
3237+ value: LengthPercentageOrAuto,
3238+ |}
3239+ | {|
3240+ property: "scroll-margin-left",
3241+ value: LengthPercentageOrAuto,
3242+ |}
3243+ | {|
3244+ property: "scroll-margin-right",
3245+ value: LengthPercentageOrAuto,
3246+ |}
3247+ | {|
3248+ property: "scroll-margin-block-start",
3249+ value: LengthPercentageOrAuto,
3250+ |}
3251+ | {|
3252+ property: "scroll-margin-block-end",
3253+ value: LengthPercentageOrAuto,
3254+ |}
3255+ | {|
3256+ property: "scroll-margin-inline-start",
3257+ value: LengthPercentageOrAuto,
3258+ |}
3259+ | {|
3260+ property: "scroll-margin-inline-end",
3261+ value: LengthPercentageOrAuto,
3262+ |}
3263+ | {|
3264+ property: "scroll-margin-block",
3265+ value: ScrollMarginBlock,
3266+ |}
3267+ | {|
3268+ property: "scroll-margin-inline",
3269+ value: ScrollMarginInline,
3270+ |}
3271+ | {|
3272+ property: "scroll-margin",
3273+ value: ScrollMargin,
3274+ |}
3275+ | {|
3276+ property: "scroll-padding-top",
3277+ value: LengthPercentageOrAuto,
3278+ |}
3279+ | {|
3280+ property: "scroll-padding-bottom",
3281+ value: LengthPercentageOrAuto,
3282+ |}
3283+ | {|
3284+ property: "scroll-padding-left",
3285+ value: LengthPercentageOrAuto,
3286+ |}
3287+ | {|
3288+ property: "scroll-padding-right",
3289+ value: LengthPercentageOrAuto,
3290+ |}
3291+ | {|
3292+ property: "scroll-padding-block-start",
3293+ value: LengthPercentageOrAuto,
3294+ |}
3295+ | {|
3296+ property: "scroll-padding-block-end",
3297+ value: LengthPercentageOrAuto,
3298+ |}
3299+ | {|
3300+ property: "scroll-padding-inline-start",
3301+ value: LengthPercentageOrAuto,
3302+ |}
3303+ | {|
3304+ property: "scroll-padding-inline-end",
3305+ value: LengthPercentageOrAuto,
3306+ |}
3307+ | {|
3308+ property: "scroll-padding-block",
3309+ value: ScrollPaddingBlock,
3310+ |}
3311+ | {|
3312+ property: "scroll-padding-inline",
3313+ value: ScrollPaddingInline,
3314+ |}
3315+ | {|
3316+ property: "scroll-padding",
3317+ value: ScrollPadding,
3318+ |}
3319+ | {|
3320+ property: "font-weight",
3321+ value: FontWeight,
3322+ |}
3323+ | {|
3324+ property: "font-size",
3325+ value: FontSize,
3326+ |}
3327+ | {|
3328+ property: "font-stretch",
3329+ value: FontStretch,
3330+ |}
3331+ | {|
3332+ property: "font-family",
3333+ value: FontFamily[],
3334+ |}
3335+ | {|
3336+ property: "font-style",
3337+ value: FontStyle,
3338+ |}
3339+ | {|
3340+ property: "font-variant-caps",
3341+ value: FontVariantCaps,
3342+ |}
3343+ | {|
3344+ property: "line-height",
3345+ value: LineHeight,
3346+ |}
3347+ | {|
3348+ property: "font",
3349+ value: Font,
3350+ |}
3351+ | {|
3352+ property: "vertical-align",
3353+ value: VerticalAlign,
3354+ |}
3355+ | {|
3356+ property: "font-palette",
3357+ value: DashedIdentReference,
3358+ |}
3359+ | {|
3360+ property: "transition-property",
3361+ value: PropertyId[],
3362+ vendorPrefix: VendorPrefix,
3363+ |}
3364+ | {|
3365+ property: "transition-duration",
3366+ value: Time[],
3367+ vendorPrefix: VendorPrefix,
3368+ |}
3369+ | {|
3370+ property: "transition-delay",
3371+ value: Time[],
3372+ vendorPrefix: VendorPrefix,
3373+ |}
3374+ | {|
3375+ property: "transition-timing-function",
3376+ value: EasingFunction[],
3377+ vendorPrefix: VendorPrefix,
3378+ |}
3379+ | {|
3380+ property: "transition",
3381+ value: Transition[],
3382+ vendorPrefix: VendorPrefix,
3383+ |}
3384+ | {|
3385+ property: "animation-name",
3386+ value: AnimationName[],
3387+ vendorPrefix: VendorPrefix,
3388+ |}
3389+ | {|
3390+ property: "animation-duration",
3391+ value: Time[],
3392+ vendorPrefix: VendorPrefix,
3393+ |}
3394+ | {|
3395+ property: "animation-timing-function",
3396+ value: EasingFunction[],
3397+ vendorPrefix: VendorPrefix,
3398+ |}
3399+ | {|
3400+ property: "animation-iteration-count",
3401+ value: AnimationIterationCount[],
3402+ vendorPrefix: VendorPrefix,
3403+ |}
3404+ | {|
3405+ property: "animation-direction",
3406+ value: AnimationDirection[],
3407+ vendorPrefix: VendorPrefix,
3408+ |}
3409+ | {|
3410+ property: "animation-play-state",
3411+ value: AnimationPlayState[],
3412+ vendorPrefix: VendorPrefix,
3413+ |}
3414+ | {|
3415+ property: "animation-delay",
3416+ value: Time[],
3417+ vendorPrefix: VendorPrefix,
3418+ |}
3419+ | {|
3420+ property: "animation-fill-mode",
3421+ value: AnimationFillMode[],
3422+ vendorPrefix: VendorPrefix,
3423+ |}
3424+ | {|
3425+ property: "animation-composition",
3426+ value: AnimationComposition[],
3427+ |}
3428+ | {|
3429+ property: "animation-timeline",
3430+ value: AnimationTimeline[],
3431+ |}
3432+ | {|
3433+ property: "animation-range-start",
3434+ value: AnimationRangeStart[],
3435+ |}
3436+ | {|
3437+ property: "animation-range-end",
3438+ value: AnimationRangeEnd[],
3439+ |}
3440+ | {|
3441+ property: "animation-range",
3442+ value: AnimationRange[],
3443+ |}
3444+ | {|
3445+ property: "animation",
3446+ value: Animation[],
3447+ vendorPrefix: VendorPrefix,
3448+ |}
3449+ | {|
3450+ property: "transform",
3451+ value: Transform[],
3452+ vendorPrefix: VendorPrefix,
3453+ |}
3454+ | {|
3455+ property: "transform-origin",
3456+ value: Position,
3457+ vendorPrefix: VendorPrefix,
3458+ |}
3459+ | {|
3460+ property: "transform-style",
3461+ value: TransformStyle,
3462+ vendorPrefix: VendorPrefix,
3463+ |}
3464+ | {|
3465+ property: "transform-box",
3466+ value: TransformBox,
3467+ |}
3468+ | {|
3469+ property: "backface-visibility",
3470+ value: BackfaceVisibility,
3471+ vendorPrefix: VendorPrefix,
3472+ |}
3473+ | {|
3474+ property: "perspective",
3475+ value: Perspective,
3476+ vendorPrefix: VendorPrefix,
3477+ |}
3478+ | {|
3479+ property: "perspective-origin",
3480+ value: Position,
3481+ vendorPrefix: VendorPrefix,
3482+ |}
3483+ | {|
3484+ property: "translate",
3485+ value: Translate,
3486+ |}
3487+ | {|
3488+ property: "rotate",
3489+ value: Rotate,
3490+ |}
3491+ | {|
3492+ property: "scale",
3493+ value: Scale,
3494+ |}
3495+ | {|
3496+ property: "text-transform",
3497+ value: TextTransform,
3498+ |}
3499+ | {|
3500+ property: "white-space",
3501+ value: WhiteSpace,
3502+ |}
3503+ | {|
3504+ property: "tab-size",
3505+ value: LengthOrNumber,
3506+ vendorPrefix: VendorPrefix,
3507+ |}
3508+ | {|
3509+ property: "word-break",
3510+ value: WordBreak,
3511+ |}
3512+ | {|
3513+ property: "line-break",
3514+ value: LineBreak,
3515+ |}
3516+ | {|
3517+ property: "hyphens",
3518+ value: Hyphens,
3519+ vendorPrefix: VendorPrefix,
3520+ |}
3521+ | {|
3522+ property: "overflow-wrap",
3523+ value: OverflowWrap,
3524+ |}
3525+ | {|
3526+ property: "word-wrap",
3527+ value: OverflowWrap,
3528+ |}
3529+ | {|
3530+ property: "text-align",
3531+ value: TextAlign,
3532+ |}
3533+ | {|
3534+ property: "text-align-last",
3535+ value: TextAlignLast,
3536+ vendorPrefix: VendorPrefix,
3537+ |}
3538+ | {|
3539+ property: "text-justify",
3540+ value: TextJustify,
3541+ |}
3542+ | {|
3543+ property: "word-spacing",
3544+ value: Spacing,
3545+ |}
3546+ | {|
3547+ property: "letter-spacing",
3548+ value: Spacing,
3549+ |}
3550+ | {|
3551+ property: "text-indent",
3552+ value: TextIndent,
3553+ |}
3554+ | {|
3555+ property: "text-decoration-line",
3556+ value: TextDecorationLine,
3557+ vendorPrefix: VendorPrefix,
3558+ |}
3559+ | {|
3560+ property: "text-decoration-style",
3561+ value: TextDecorationStyle,
3562+ vendorPrefix: VendorPrefix,
3563+ |}
3564+ | {|
3565+ property: "text-decoration-color",
3566+ value: CssColor,
3567+ vendorPrefix: VendorPrefix,
3568+ |}
3569+ | {|
3570+ property: "text-decoration-thickness",
3571+ value: TextDecorationThickness,
3572+ |}
3573+ | {|
3574+ property: "text-decoration",
3575+ value: TextDecoration,
3576+ vendorPrefix: VendorPrefix,
3577+ |}
3578+ | {|
3579+ property: "text-decoration-skip-ink",
3580+ value: TextDecorationSkipInk,
3581+ vendorPrefix: VendorPrefix,
3582+ |}
3583+ | {|
3584+ property: "text-emphasis-style",
3585+ value: TextEmphasisStyle,
3586+ vendorPrefix: VendorPrefix,
3587+ |}
3588+ | {|
3589+ property: "text-emphasis-color",
3590+ value: CssColor,
3591+ vendorPrefix: VendorPrefix,
3592+ |}
3593+ | {|
3594+ property: "text-emphasis",
3595+ value: TextEmphasis,
3596+ vendorPrefix: VendorPrefix,
3597+ |}
3598+ | {|
3599+ property: "text-emphasis-position",
3600+ value: TextEmphasisPosition,
3601+ vendorPrefix: VendorPrefix,
3602+ |}
3603+ | {|
3604+ property: "text-shadow",
3605+ value: TextShadow[],
3606+ |}
3607+ | {|
3608+ property: "text-size-adjust",
3609+ value: TextSizeAdjust,
3610+ vendorPrefix: VendorPrefix,
3611+ |}
3612+ | {|
3613+ property: "direction",
3614+ value: Direction2,
3615+ |}
3616+ | {|
3617+ property: "unicode-bidi",
3618+ value: UnicodeBidi,
3619+ |}
3620+ | {|
3621+ property: "box-decoration-break",
3622+ value: BoxDecorationBreak,
3623+ vendorPrefix: VendorPrefix,
3624+ |}
3625+ | {|
3626+ property: "resize",
3627+ value: Resize,
3628+ |}
3629+ | {|
3630+ property: "cursor",
3631+ value: Cursor,
3632+ |}
3633+ | {|
3634+ property: "caret-color",
3635+ value: ColorOrAuto,
3636+ |}
3637+ | {|
3638+ property: "caret-shape",
3639+ value: CaretShape,
3640+ |}
3641+ | {|
3642+ property: "caret",
3643+ value: Caret,
3644+ |}
3645+ | {|
3646+ property: "user-select",
3647+ value: UserSelect,
3648+ vendorPrefix: VendorPrefix,
3649+ |}
3650+ | {|
3651+ property: "accent-color",
3652+ value: ColorOrAuto,
3653+ |}
3654+ | {|
3655+ property: "appearance",
3656+ value: Appearance,
3657+ vendorPrefix: VendorPrefix,
3658+ |}
3659+ | {|
3660+ property: "list-style-type",
3661+ value: ListStyleType,
3662+ |}
3663+ | {|
3664+ property: "list-style-image",
3665+ value: Image,
3666+ |}
3667+ | {|
3668+ property: "list-style-position",
3669+ value: ListStylePosition,
3670+ |}
3671+ | {|
3672+ property: "list-style",
3673+ value: ListStyle,
3674+ |}
3675+ | {|
3676+ property: "marker-side",
3677+ value: MarkerSide,
3678+ |}
3679+ | {|
3680+ property: "composes",
3681+ value: Composes,
3682+ |}
3683+ | {|
3684+ property: "fill",
3685+ value: SVGPaint,
3686+ |}
3687+ | {|
3688+ property: "fill-rule",
3689+ value: FillRule,
3690+ |}
3691+ | {|
3692+ property: "fill-opacity",
3693+ value: number,
3694+ |}
3695+ | {|
3696+ property: "stroke",
3697+ value: SVGPaint,
3698+ |}
3699+ | {|
3700+ property: "stroke-opacity",
3701+ value: number,
3702+ |}
3703+ | {|
3704+ property: "stroke-width",
3705+ value: DimensionPercentageFor_LengthValue,
3706+ |}
3707+ | {|
3708+ property: "stroke-linecap",
3709+ value: StrokeLinecap,
3710+ |}
3711+ | {|
3712+ property: "stroke-linejoin",
3713+ value: StrokeLinejoin,
3714+ |}
3715+ | {|
3716+ property: "stroke-miterlimit",
3717+ value: number,
3718+ |}
3719+ | {|
3720+ property: "stroke-dasharray",
3721+ value: StrokeDasharray,
3722+ |}
3723+ | {|
3724+ property: "stroke-dashoffset",
3725+ value: DimensionPercentageFor_LengthValue,
3726+ |}
3727+ | {|
3728+ property: "marker-start",
3729+ value: Marker,
3730+ |}
3731+ | {|
3732+ property: "marker-mid",
3733+ value: Marker,
3734+ |}
3735+ | {|
3736+ property: "marker-end",
3737+ value: Marker,
3738+ |}
3739+ | {|
3740+ property: "marker",
3741+ value: Marker,
3742+ |}
3743+ | {|
3744+ property: "color-interpolation",
3745+ value: ColorInterpolation,
3746+ |}
3747+ | {|
3748+ property: "color-interpolation-filters",
3749+ value: ColorInterpolation,
3750+ |}
3751+ | {|
3752+ property: "color-rendering",
3753+ value: ColorRendering,
3754+ |}
3755+ | {|
3756+ property: "shape-rendering",
3757+ value: ShapeRendering,
3758+ |}
3759+ | {|
3760+ property: "text-rendering",
3761+ value: TextRendering,
3762+ |}
3763+ | {|
3764+ property: "image-rendering",
3765+ value: ImageRendering,
3766+ |}
3767+ | {|
3768+ property: "clip-path",
3769+ value: ClipPath,
3770+ vendorPrefix: VendorPrefix,
3771+ |}
3772+ | {|
3773+ property: "clip-rule",
3774+ value: FillRule,
3775+ |}
3776+ | {|
3777+ property: "mask-image",
3778+ value: Image[],
3779+ vendorPrefix: VendorPrefix,
3780+ |}
3781+ | {|
3782+ property: "mask-mode",
3783+ value: MaskMode[],
3784+ |}
3785+ | {|
3786+ property: "mask-repeat",
3787+ value: BackgroundRepeat[],
3788+ vendorPrefix: VendorPrefix,
3789+ |}
3790+ | {|
3791+ property: "mask-position-x",
3792+ value: PositionComponentFor_HorizontalPositionKeyword[],
3793+ |}
3794+ | {|
3795+ property: "mask-position-y",
3796+ value: PositionComponentFor_VerticalPositionKeyword[],
3797+ |}
3798+ | {|
3799+ property: "mask-position",
3800+ value: Position[],
3801+ vendorPrefix: VendorPrefix,
3802+ |}
3803+ | {|
3804+ property: "mask-clip",
3805+ value: MaskClip[],
3806+ vendorPrefix: VendorPrefix,
3807+ |}
3808+ | {|
3809+ property: "mask-origin",
3810+ value: GeometryBox[],
3811+ vendorPrefix: VendorPrefix,
3812+ |}
3813+ | {|
3814+ property: "mask-size",
3815+ value: BackgroundSize[],
3816+ vendorPrefix: VendorPrefix,
3817+ |}
3818+ | {|
3819+ property: "mask-composite",
3820+ value: MaskComposite[],
3821+ |}
3822+ | {|
3823+ property: "mask-type",
3824+ value: MaskType,
3825+ |}
3826+ | {|
3827+ property: "mask",
3828+ value: Mask[],
3829+ vendorPrefix: VendorPrefix,
3830+ |}
3831+ | {|
3832+ property: "mask-border-source",
3833+ value: Image,
3834+ |}
3835+ | {|
3836+ property: "mask-border-mode",
3837+ value: MaskBorderMode,
3838+ |}
3839+ | {|
3840+ property: "mask-border-slice",
3841+ value: BorderImageSlice,
3842+ |}
3843+ | {|
3844+ property: "mask-border-width",
3845+ value: RectFor_BorderImageSideWidth,
3846+ |}
3847+ | {|
3848+ property: "mask-border-outset",
3849+ value: RectFor_LengthOrNumber,
3850+ |}
3851+ | {|
3852+ property: "mask-border-repeat",
3853+ value: BorderImageRepeat,
3854+ |}
3855+ | {|
3856+ property: "mask-border",
3857+ value: MaskBorder,
3858+ |}
3859+ | {|
3860+ property: "-webkit-mask-composite",
3861+ value: WebKitMaskComposite[],
3862+ |}
3863+ | {|
3864+ property: "mask-source-type",
3865+ value: WebKitMaskSourceType[],
3866+ vendorPrefix: VendorPrefix,
3867+ |}
3868+ | {|
3869+ property: "mask-box-image",
3870+ value: BorderImage,
3871+ vendorPrefix: VendorPrefix,
3872+ |}
3873+ | {|
3874+ property: "mask-box-image-source",
3875+ value: Image,
3876+ vendorPrefix: VendorPrefix,
3877+ |}
3878+ | {|
3879+ property: "mask-box-image-slice",
3880+ value: BorderImageSlice,
3881+ vendorPrefix: VendorPrefix,
3882+ |}
3883+ | {|
3884+ property: "mask-box-image-width",
3885+ value: RectFor_BorderImageSideWidth,
3886+ vendorPrefix: VendorPrefix,
3887+ |}
3888+ | {|
3889+ property: "mask-box-image-outset",
3890+ value: RectFor_LengthOrNumber,
3891+ vendorPrefix: VendorPrefix,
3892+ |}
3893+ | {|
3894+ property: "mask-box-image-repeat",
3895+ value: BorderImageRepeat,
3896+ vendorPrefix: VendorPrefix,
3897+ |}
3898+ | {|
3899+ property: "filter",
3900+ value: FilterList,
3901+ vendorPrefix: VendorPrefix,
3902+ |}
3903+ | {|
3904+ property: "backdrop-filter",
3905+ value: FilterList,
3906+ vendorPrefix: VendorPrefix,
3907+ |}
3908+ | {|
3909+ property: "z-index",
3910+ value: ZIndex,
3911+ |}
3912+ | {|
3913+ property: "container-type",
3914+ value: ContainerType,
3915+ |}
3916+ | {|
3917+ property: "container-name",
3918+ value: ContainerNameList,
3919+ |}
3920+ | {|
3921+ property: "container",
3922+ value: Container,
3923+ |}
3924+ | {|
3925+ property: "view-transition-name",
3926+ value: ViewTransitionName,
3927+ |}
3928+ | {|
3929+ property: "view-transition-class",
3930+ value: NoneOrCustomIdentList,
3931+ |}
3932+ | {|
3933+ property: "view-transition-group",
3934+ value: ViewTransitionGroup,
3935+ |}
3936+ | {|
3937+ property: "color-scheme",
3938+ value: ColorScheme,
3939+ |}
3940+ | {|
3941+ property: "all",
3942+ value: CSSWideKeyword,
3943+ |}
3944+ | {|
3945+ property: "unparsed",
3946+ value: UnparsedProperty,
3947+ |}
3948+ | {|
3949+ property: "custom",
3950+ value: CustomProperty,
3951+ |};
3952+/**
3953+ * A CSS [`<image>`](https://www.w3.org/TR/css-images-3/#image-values) value.
3954+ */
3955+export type Image =
3956+ | {|
3957+ type: "none",
3958+ |}
3959+ | {|
3960+ type: "url",
3961+ value: Url,
3962+ |}
3963+ | {|
3964+ type: "gradient",
3965+ value: Gradient,
3966+ |}
3967+ | {|
3968+ type: "image-set",
3969+ value: ImageSet,
3970+ |};
3971+/**
3972+ * A CSS [`<gradient>`](https://www.w3.org/TR/css-images-3/#gradients) value.
3973+ */
3974+export type Gradient =
3975+ | {|
3976+ /**
3977+ * The direction of the gradient.
3978+ */
3979+ direction: LineDirection,
3980+
3981+ /**
3982+ * The color stops and transition hints for the gradient.
3983+ */
3984+ items: GradientItemFor_DimensionPercentageFor_LengthValue[],
3985+ type: "linear",
3986+
3987+ /**
3988+ * The vendor prefixes for the gradient.
3989+ */
3990+ vendorPrefix: VendorPrefix,
3991+ |}
3992+ | {|
3993+ /**
3994+ * The direction of the gradient.
3995+ */
3996+ direction: LineDirection,
3997+
3998+ /**
3999+ * The color stops and transition hints for the gradient.
4000+ */
4001+ items: GradientItemFor_DimensionPercentageFor_LengthValue[],
4002+ type: "repeating-linear",
4003+
4004+ /**
4005+ * The vendor prefixes for the gradient.
4006+ */
4007+ vendorPrefix: VendorPrefix,
4008+ |}
4009+ | {|
4010+ /**
4011+ * The color stops and transition hints for the gradient.
4012+ */
4013+ items: GradientItemFor_DimensionPercentageFor_LengthValue[],
4014+
4015+ /**
4016+ * The position of the gradient.
4017+ */
4018+ position: Position,
4019+
4020+ /**
4021+ * The shape of the gradient.
4022+ */
4023+ shape: EndingShape,
4024+ type: "radial",
4025+
4026+ /**
4027+ * The vendor prefixes for the gradient.
4028+ */
4029+ vendorPrefix: VendorPrefix,
4030+ |}
4031+ | {|
4032+ /**
4033+ * The color stops and transition hints for the gradient.
4034+ */
4035+ items: GradientItemFor_DimensionPercentageFor_LengthValue[],
4036+
4037+ /**
4038+ * The position of the gradient.
4039+ */
4040+ position: Position,
4041+
4042+ /**
4043+ * The shape of the gradient.
4044+ */
4045+ shape: EndingShape,
4046+ type: "repeating-radial",
4047+
4048+ /**
4049+ * The vendor prefixes for the gradient.
4050+ */
4051+ vendorPrefix: VendorPrefix,
4052+ |}
4053+ | {|
4054+ /**
4055+ * The angle of the gradient.
4056+ */
4057+ angle: Angle,
4058+
4059+ /**
4060+ * The color stops and transition hints for the gradient.
4061+ */
4062+ items: GradientItemFor_DimensionPercentageFor_Angle[],
4063+
4064+ /**
4065+ * The position of the gradient.
4066+ */
4067+ position: Position,
4068+ type: "conic",
4069+ |}
4070+ | {|
4071+ /**
4072+ * The angle of the gradient.
4073+ */
4074+ angle: Angle,
4075+
4076+ /**
4077+ * The color stops and transition hints for the gradient.
4078+ */
4079+ items: GradientItemFor_DimensionPercentageFor_Angle[],
4080+
4081+ /**
4082+ * The position of the gradient.
4083+ */
4084+ position: Position,
4085+ type: "repeating-conic",
4086+ |}
4087+ | (
4088+ | {|
4089+ type: "webkit-gradient",
4090+
4091+ /**
4092+ * The starting point of the gradient.
4093+ */
4094+ from: WebKitGradientPoint,
4095+ kind: "linear",
4096+
4097+ /**
4098+ * The color stops in the gradient.
4099+ */
4100+ stops: WebKitColorStop[],
4101+
4102+ /**
4103+ * The ending point of the gradient.
4104+ */
4105+ to: WebKitGradientPoint,
4106+ |}
4107+ | {|
4108+ type: "webkit-gradient",
4109+
4110+ /**
4111+ * The starting point of the gradient.
4112+ */
4113+ from: WebKitGradientPoint,
4114+ kind: "radial",
4115+
4116+ /**
4117+ * The starting radius of the gradient.
4118+ */
4119+ r0: number,
4120+
4121+ /**
4122+ * The ending radius of the gradient.
4123+ */
4124+ r1: number,
4125+
4126+ /**
4127+ * The color stops in the gradient.
4128+ */
4129+ stops: WebKitColorStop[],
4130+
4131+ /**
4132+ * The ending point of the gradient.
4133+ */
4134+ to: WebKitGradientPoint,
4135+ |}
4136+ );
4137+/**
4138+ * The direction of a CSS `linear-gradient()`.
4139+ *
4140+ * See [LinearGradient](LinearGradient).
4141+ */
4142+export type LineDirection =
4143+ | {|
4144+ type: "angle",
4145+ value: Angle,
4146+ |}
4147+ | {|
4148+ type: "horizontal",
4149+ value: HorizontalPositionKeyword,
4150+ |}
4151+ | {|
4152+ type: "vertical",
4153+ value: VerticalPositionKeyword,
4154+ |}
4155+ | {|
4156+ /**
4157+ * A horizontal position keyword, e.g. `left` or `right.
4158+ */
4159+ horizontal: HorizontalPositionKeyword,
4160+ type: "corner",
4161+
4162+ /**
4163+ * A vertical posision keyword, e.g. `top` or `bottom`.
4164+ */
4165+ vertical: VerticalPositionKeyword,
4166+ |};
4167+/**
4168+ * A horizontal position keyword.
4169+ */
4170+export type HorizontalPositionKeyword = "left" | "right";
4171+/**
4172+ * A vertical position keyword.
4173+ */
4174+export type VerticalPositionKeyword = "top" | "bottom";
4175+/**
4176+ * Either a color stop or interpolation hint within a gradient.
4177+ *
4178+ * This type is generic, and items may be either a [LengthPercentage](super::length::LengthPercentage) or [Angle](super::angle::Angle) depending on what type of gradient it is within.
4179+ */
4180+export type GradientItemFor_DimensionPercentageFor_LengthValue =
4181+ | {|
4182+ /**
4183+ * The color of the color stop.
4184+ */
4185+ color: CssColor,
4186+
4187+ /**
4188+ * The position of the color stop.
4189+ */
4190+ position?: DimensionPercentageFor_LengthValue | null,
4191+ type: "color-stop",
4192+ |}
4193+ | {|
4194+ type: "hint",
4195+ value: DimensionPercentageFor_LengthValue,
4196+ |};
4197+/**
4198+ * A generic type that allows any kind of dimension and percentage to be used standalone or mixed within a `calc()` expression.
4199+ *
4200+ * <https://drafts.csswg.org/css-values-4/#mixed-percentages>
4201+ */
4202+export type DimensionPercentageFor_LengthValue =
4203+ | {|
4204+ type: "dimension",
4205+ value: LengthValue,
4206+ |}
4207+ | {|
4208+ type: "percentage",
4209+ value: number,
4210+ |}
4211+ | {|
4212+ type: "calc",
4213+ value: CalcFor_DimensionPercentageFor_LengthValue,
4214+ |};
4215+/**
4216+ * A mathematical expression used within the [`calc()`](https://www.w3.org/TR/css-values-4/#calc-func) function.
4217+ *
4218+ * This type supports generic value types. Values such as [Length](super::length::Length), [Percentage](super::percentage::Percentage), [Time](super::time::Time), and [Angle](super::angle::Angle) support `calc()` expressions.
4219+ */
4220+export type CalcFor_DimensionPercentageFor_LengthValue =
4221+ | {|
4222+ type: "value",
4223+ value: DimensionPercentageFor_LengthValue,
4224+ |}
4225+ | {|
4226+ type: "number",
4227+ value: number,
4228+ |}
4229+ | {|
4230+ type: "sum",
4231+
4232+ /**
4233+ * @minItems 2
4234+ * @maxItems 2
4235+ */
4236+ value: [
4237+ CalcFor_DimensionPercentageFor_LengthValue,
4238+ CalcFor_DimensionPercentageFor_LengthValue
4239+ ],
4240+ |}
4241+ | {|
4242+ type: "product",
4243+
4244+ /**
4245+ * @minItems 2
4246+ * @maxItems 2
4247+ */
4248+ value: [number, CalcFor_DimensionPercentageFor_LengthValue],
4249+ |}
4250+ | {|
4251+ type: "function",
4252+ value: MathFunctionFor_DimensionPercentageFor_LengthValue,
4253+ |};
4254+/**
4255+ * A CSS [math function](https://www.w3.org/TR/css-values-4/#math-function).
4256+ *
4257+ * Math functions may be used in most properties and values that accept numeric values, including lengths, percentages, angles, times, etc.
4258+ */
4259+export type MathFunctionFor_DimensionPercentageFor_LengthValue =
4260+ | {|
4261+ type: "calc",
4262+ value: CalcFor_DimensionPercentageFor_LengthValue,
4263+ |}
4264+ | {|
4265+ type: "min",
4266+ value: CalcFor_DimensionPercentageFor_LengthValue[],
4267+ |}
4268+ | {|
4269+ type: "max",
4270+ value: CalcFor_DimensionPercentageFor_LengthValue[],
4271+ |}
4272+ | {|
4273+ type: "clamp",
4274+
4275+ /**
4276+ * @minItems 3
4277+ * @maxItems 3
4278+ */
4279+ value: [
4280+ CalcFor_DimensionPercentageFor_LengthValue,
4281+ CalcFor_DimensionPercentageFor_LengthValue,
4282+ CalcFor_DimensionPercentageFor_LengthValue
4283+ ],
4284+ |}
4285+ | {|
4286+ type: "round",
4287+
4288+ /**
4289+ * @minItems 3
4290+ * @maxItems 3
4291+ */
4292+ value: [
4293+ RoundingStrategy,
4294+ CalcFor_DimensionPercentageFor_LengthValue,
4295+ CalcFor_DimensionPercentageFor_LengthValue
4296+ ],
4297+ |}
4298+ | {|
4299+ type: "rem",
4300+
4301+ /**
4302+ * @minItems 2
4303+ * @maxItems 2
4304+ */
4305+ value: [
4306+ CalcFor_DimensionPercentageFor_LengthValue,
4307+ CalcFor_DimensionPercentageFor_LengthValue
4308+ ],
4309+ |}
4310+ | {|
4311+ type: "mod",
4312+
4313+ /**
4314+ * @minItems 2
4315+ * @maxItems 2
4316+ */
4317+ value: [
4318+ CalcFor_DimensionPercentageFor_LengthValue,
4319+ CalcFor_DimensionPercentageFor_LengthValue
4320+ ],
4321+ |}
4322+ | {|
4323+ type: "abs",
4324+ value: CalcFor_DimensionPercentageFor_LengthValue,
4325+ |}
4326+ | {|
4327+ type: "sign",
4328+ value: CalcFor_DimensionPercentageFor_LengthValue,
4329+ |}
4330+ | {|
4331+ type: "hypot",
4332+ value: CalcFor_DimensionPercentageFor_LengthValue[],
4333+ |};
4334+/**
4335+ * A component within a [Position](Position) value, representing a position along either the horizontal or vertical axis of a box.
4336+ *
4337+ * This type is generic over side keywords.
4338+ */
4339+export type PositionComponentFor_HorizontalPositionKeyword =
4340+ | {|
4341+ type: "center",
4342+ |}
4343+ | {|
4344+ type: "length",
4345+ value: DimensionPercentageFor_LengthValue,
4346+ |}
4347+ | {|
4348+ /**
4349+ * Offset from the side.
4350+ */
4351+ offset?: DimensionPercentageFor_LengthValue | null,
4352+
4353+ /**
4354+ * A side keyword.
4355+ */
4356+ side: HorizontalPositionKeyword,
4357+ type: "side",
4358+ |};
4359+/**
4360+ * A component within a [Position](Position) value, representing a position along either the horizontal or vertical axis of a box.
4361+ *
4362+ * This type is generic over side keywords.
4363+ */
4364+export type PositionComponentFor_VerticalPositionKeyword =
4365+ | {|
4366+ type: "center",
4367+ |}
4368+ | {|
4369+ type: "length",
4370+ value: DimensionPercentageFor_LengthValue,
4371+ |}
4372+ | {|
4373+ /**
4374+ * Offset from the side.
4375+ */
4376+ offset?: DimensionPercentageFor_LengthValue | null,
4377+
4378+ /**
4379+ * A side keyword.
4380+ */
4381+ side: VerticalPositionKeyword,
4382+ type: "side",
4383+ |};
4384+/**
4385+ * A `radial-gradient()` [ending shape](https://www.w3.org/TR/css-images-3/#valdef-radial-gradient-ending-shape).
4386+ *
4387+ * See [RadialGradient](RadialGradient).
4388+ */
4389+export type EndingShape =
4390+ | {|
4391+ type: "ellipse",
4392+ value: Ellipse,
4393+ |}
4394+ | {|
4395+ type: "circle",
4396+ value: Circle,
4397+ |};
4398+/**
4399+ * An ellipse ending shape for a `radial-gradient()`.
4400+ *
4401+ * See [RadialGradient](RadialGradient).
4402+ */
4403+export type Ellipse =
4404+ | {|
4405+ type: "size",
4406+
4407+ /**
4408+ * The x-radius of the ellipse.
4409+ */
4410+ x: DimensionPercentageFor_LengthValue,
4411+
4412+ /**
4413+ * The y-radius of the ellipse.
4414+ */
4415+ y: DimensionPercentageFor_LengthValue,
4416+ |}
4417+ | {|
4418+ type: "extent",
4419+ value: ShapeExtent,
4420+ |};
4421+/**
4422+ * A shape extent for a `radial-gradient()`.
4423+ *
4424+ * See [RadialGradient](RadialGradient).
4425+ */
4426+export type ShapeExtent =
4427+ | "closest-side"
4428+ | "farthest-side"
4429+ | "closest-corner"
4430+ | "farthest-corner";
4431+/**
4432+ * A circle ending shape for a `radial-gradient()`.
4433+ *
4434+ * See [RadialGradient](RadialGradient).
4435+ */
4436+export type Circle =
4437+ | {|
4438+ type: "radius",
4439+ value: Length,
4440+ |}
4441+ | {|
4442+ type: "extent",
4443+ value: ShapeExtent,
4444+ |};
4445+/**
4446+ * Either a color stop or interpolation hint within a gradient.
4447+ *
4448+ * This type is generic, and items may be either a [LengthPercentage](super::length::LengthPercentage) or [Angle](super::angle::Angle) depending on what type of gradient it is within.
4449+ */
4450+export type GradientItemFor_DimensionPercentageFor_Angle =
4451+ | {|
4452+ /**
4453+ * The color of the color stop.
4454+ */
4455+ color: CssColor,
4456+
4457+ /**
4458+ * The position of the color stop.
4459+ */
4460+ position?: DimensionPercentageFor_Angle | null,
4461+ type: "color-stop",
4462+ |}
4463+ | {|
4464+ type: "hint",
4465+ value: DimensionPercentageFor_Angle,
4466+ |};
4467+/**
4468+ * A generic type that allows any kind of dimension and percentage to be used standalone or mixed within a `calc()` expression.
4469+ *
4470+ * <https://drafts.csswg.org/css-values-4/#mixed-percentages>
4471+ */
4472+export type DimensionPercentageFor_Angle =
4473+ | {|
4474+ type: "dimension",
4475+ value: Angle,
4476+ |}
4477+ | {|
4478+ type: "percentage",
4479+ value: number,
4480+ |}
4481+ | {|
4482+ type: "calc",
4483+ value: CalcFor_DimensionPercentageFor_Angle,
4484+ |};
4485+/**
4486+ * A mathematical expression used within the [`calc()`](https://www.w3.org/TR/css-values-4/#calc-func) function.
4487+ *
4488+ * This type supports generic value types. Values such as [Length](super::length::Length), [Percentage](super::percentage::Percentage), [Time](super::time::Time), and [Angle](super::angle::Angle) support `calc()` expressions.
4489+ */
4490+export type CalcFor_DimensionPercentageFor_Angle =
4491+ | {|
4492+ type: "value",
4493+ value: DimensionPercentageFor_Angle,
4494+ |}
4495+ | {|
4496+ type: "number",
4497+ value: number,
4498+ |}
4499+ | {|
4500+ type: "sum",
4501+
4502+ /**
4503+ * @minItems 2
4504+ * @maxItems 2
4505+ */
4506+ value: [
4507+ CalcFor_DimensionPercentageFor_Angle,
4508+ CalcFor_DimensionPercentageFor_Angle
4509+ ],
4510+ |}
4511+ | {|
4512+ type: "product",
4513+
4514+ /**
4515+ * @minItems 2
4516+ * @maxItems 2
4517+ */
4518+ value: [number, CalcFor_DimensionPercentageFor_Angle],
4519+ |}
4520+ | {|
4521+ type: "function",
4522+ value: MathFunctionFor_DimensionPercentageFor_Angle,
4523+ |};
4524+/**
4525+ * A CSS [math function](https://www.w3.org/TR/css-values-4/#math-function).
4526+ *
4527+ * Math functions may be used in most properties and values that accept numeric values, including lengths, percentages, angles, times, etc.
4528+ */
4529+export type MathFunctionFor_DimensionPercentageFor_Angle =
4530+ | {|
4531+ type: "calc",
4532+ value: CalcFor_DimensionPercentageFor_Angle,
4533+ |}
4534+ | {|
4535+ type: "min",
4536+ value: CalcFor_DimensionPercentageFor_Angle[],
4537+ |}
4538+ | {|
4539+ type: "max",
4540+ value: CalcFor_DimensionPercentageFor_Angle[],
4541+ |}
4542+ | {|
4543+ type: "clamp",
4544+
4545+ /**
4546+ * @minItems 3
4547+ * @maxItems 3
4548+ */
4549+ value: [
4550+ CalcFor_DimensionPercentageFor_Angle,
4551+ CalcFor_DimensionPercentageFor_Angle,
4552+ CalcFor_DimensionPercentageFor_Angle
4553+ ],
4554+ |}
4555+ | {|
4556+ type: "round",
4557+
4558+ /**
4559+ * @minItems 3
4560+ * @maxItems 3
4561+ */
4562+ value: [
4563+ RoundingStrategy,
4564+ CalcFor_DimensionPercentageFor_Angle,
4565+ CalcFor_DimensionPercentageFor_Angle
4566+ ],
4567+ |}
4568+ | {|
4569+ type: "rem",
4570+
4571+ /**
4572+ * @minItems 2
4573+ * @maxItems 2
4574+ */
4575+ value: [
4576+ CalcFor_DimensionPercentageFor_Angle,
4577+ CalcFor_DimensionPercentageFor_Angle
4578+ ],
4579+ |}
4580+ | {|
4581+ type: "mod",
4582+
4583+ /**
4584+ * @minItems 2
4585+ * @maxItems 2
4586+ */
4587+ value: [
4588+ CalcFor_DimensionPercentageFor_Angle,
4589+ CalcFor_DimensionPercentageFor_Angle
4590+ ],
4591+ |}
4592+ | {|
4593+ type: "abs",
4594+ value: CalcFor_DimensionPercentageFor_Angle,
4595+ |}
4596+ | {|
4597+ type: "sign",
4598+ value: CalcFor_DimensionPercentageFor_Angle,
4599+ |}
4600+ | {|
4601+ type: "hypot",
4602+ value: CalcFor_DimensionPercentageFor_Angle[],
4603+ |};
4604+/**
4605+ * A keyword or number within a [WebKitGradientPoint](WebKitGradientPoint).
4606+ */
4607+export type WebKitGradientPointComponentFor_HorizontalPositionKeyword =
4608+ | {|
4609+ type: "center",
4610+ |}
4611+ | {|
4612+ type: "number",
4613+ value: NumberOrPercentage,
4614+ |}
4615+ | {|
4616+ type: "side",
4617+ value: HorizontalPositionKeyword,
4618+ |};
4619+/**
4620+ * Either a `<number>` or `<percentage>`.
4621+ */
4622+export type NumberOrPercentage =
4623+ | {|
4624+ type: "number",
4625+ value: number,
4626+ |}
4627+ | {|
4628+ type: "percentage",
4629+ value: number,
4630+ |};
4631+/**
4632+ * A keyword or number within a [WebKitGradientPoint](WebKitGradientPoint).
4633+ */
4634+export type WebKitGradientPointComponentFor_VerticalPositionKeyword =
4635+ | {|
4636+ type: "center",
4637+ |}
4638+ | {|
4639+ type: "number",
4640+ value: NumberOrPercentage,
4641+ |}
4642+ | {|
4643+ type: "side",
4644+ value: VerticalPositionKeyword,
4645+ |};
4646+/**
4647+ * A value for the [background-size](https://www.w3.org/TR/css-backgrounds-3/#background-size) property.
4648+ */
4649+export type BackgroundSize =
4650+ | {|
4651+ /**
4652+ * The height of the background.
4653+ */
4654+ height: LengthPercentageOrAuto,
4655+ type: "explicit",
4656+
4657+ /**
4658+ * The width of the background.
4659+ */
4660+ width: LengthPercentageOrAuto,
4661+ |}
4662+ | {|
4663+ type: "cover",
4664+ |}
4665+ | {|
4666+ type: "contain",
4667+ |};
4668+/**
4669+ * Either a [`<length-percentage>`](https://www.w3.org/TR/css-values-4/#typedef-length-percentage), or the `auto` keyword.
4670+ */
4671+export type LengthPercentageOrAuto =
4672+ | {|
4673+ type: "auto",
4674+ |}
4675+ | {|
4676+ type: "length-percentage",
4677+ value: DimensionPercentageFor_LengthValue,
4678+ |};
4679+/**
4680+ * A [`<repeat-style>`](https://www.w3.org/TR/css-backgrounds-3/#typedef-repeat-style) value, used within the `background-repeat` property to represent how a background image is repeated in a single direction.
4681+ *
4682+ * See [BackgroundRepeat](BackgroundRepeat).
4683+ */
4684+export type BackgroundRepeatKeyword =
4685+ | "repeat"
4686+ | "space"
4687+ | "round"
4688+ | "no-repeat";
4689+/**
4690+ * A value for the [background-attachment](https://www.w3.org/TR/css-backgrounds-3/#background-attachment) property.
4691+ */
4692+export type BackgroundAttachment = "scroll" | "fixed" | "local";
4693+/**
4694+ * A value for the [background-clip](https://drafts.csswg.org/css-backgrounds-4/#background-clip) property.
4695+ */
4696+export type BackgroundClip =
4697+ | "border-box"
4698+ | "padding-box"
4699+ | "content-box"
4700+ | "border"
4701+ | "text";
4702+/**
4703+ * A value for the [background-origin](https://www.w3.org/TR/css-backgrounds-3/#background-origin) property.
4704+ */
4705+export type BackgroundOrigin = "border-box" | "padding-box" | "content-box";
4706+/**
4707+ * A value for the [display](https://drafts.csswg.org/css-display-3/#the-display-properties) property.
4708+ */
4709+export type Display =
4710+ | {|
4711+ type: "keyword",
4712+ value: DisplayKeyword,
4713+ |}
4714+ | {|
4715+ /**
4716+ * The inside display value.
4717+ */
4718+ inside: DisplayInside,
4719+
4720+ /**
4721+ * Whether this is a list item.
4722+ */
4723+ isListItem: boolean,
4724+
4725+ /**
4726+ * The outside display value.
4727+ */
4728+ outside: DisplayOutside,
4729+ type: "pair",
4730+ |};
4731+/**
4732+ * A `display` keyword.
4733+ *
4734+ * See [Display](Display).
4735+ */
4736+export type DisplayKeyword =
4737+ | "none"
4738+ | "contents"
4739+ | "table-row-group"
4740+ | "table-header-group"
4741+ | "table-footer-group"
4742+ | "table-row"
4743+ | "table-cell"
4744+ | "table-column-group"
4745+ | "table-column"
4746+ | "table-caption"
4747+ | "ruby-base"
4748+ | "ruby-text"
4749+ | "ruby-base-container"
4750+ | "ruby-text-container";
4751+/**
4752+ * A [`<display-inside>`](https://drafts.csswg.org/css-display-3/#typedef-display-inside) value.
4753+ */
4754+export type DisplayInside =
4755+ | {|
4756+ type: "flow",
4757+ |}
4758+ | {|
4759+ type: "flow-root",
4760+ |}
4761+ | {|
4762+ type: "table",
4763+ |}
4764+ | {|
4765+ type: "flex",
4766+ vendorPrefix: VendorPrefix,
4767+ |}
4768+ | {|
4769+ type: "box",
4770+ vendorPrefix: VendorPrefix,
4771+ |}
4772+ | {|
4773+ type: "grid",
4774+ |}
4775+ | {|
4776+ type: "ruby",
4777+ |};
4778+/**
4779+ * A [`<display-outside>`](https://drafts.csswg.org/css-display-3/#typedef-display-outside) value.
4780+ */
4781+export type DisplayOutside = "block" | "inline" | "run-in";
4782+/**
4783+ * A value for the [visibility](https://drafts.csswg.org/css-display-3/#visibility) property.
4784+ */
4785+export type Visibility = "visible" | "hidden" | "collapse";
4786+/**
4787+ * A value for the [preferred size properties](https://drafts.csswg.org/css-sizing-3/#preferred-size-properties), i.e. `width` and `height.
4788+ */
4789+export type Size =
4790+ | {|
4791+ type: "auto",
4792+ |}
4793+ | {|
4794+ type: "length-percentage",
4795+ value: DimensionPercentageFor_LengthValue,
4796+ |}
4797+ | {|
4798+ type: "min-content",
4799+ vendorPrefix: VendorPrefix,
4800+ |}
4801+ | {|
4802+ type: "max-content",
4803+ vendorPrefix: VendorPrefix,
4804+ |}
4805+ | {|
4806+ type: "fit-content",
4807+ vendorPrefix: VendorPrefix,
4808+ |}
4809+ | {|
4810+ type: "fit-content-function",
4811+ value: DimensionPercentageFor_LengthValue,
4812+ |}
4813+ | {|
4814+ type: "stretch",
4815+ vendorPrefix: VendorPrefix,
4816+ |}
4817+ | {|
4818+ type: "contain",
4819+ |};
4820+/**
4821+ * A value for the [minimum](https://drafts.csswg.org/css-sizing-3/#min-size-properties) and [maximum](https://drafts.csswg.org/css-sizing-3/#max-size-properties) size properties, e.g. `min-width` and `max-height`.
4822+ */
4823+export type MaxSize =
4824+ | {|
4825+ type: "none",
4826+ |}
4827+ | {|
4828+ type: "length-percentage",
4829+ value: DimensionPercentageFor_LengthValue,
4830+ |}
4831+ | {|
4832+ type: "min-content",
4833+ vendorPrefix: VendorPrefix,
4834+ |}
4835+ | {|
4836+ type: "max-content",
4837+ vendorPrefix: VendorPrefix,
4838+ |}
4839+ | {|
4840+ type: "fit-content",
4841+ vendorPrefix: VendorPrefix,
4842+ |}
4843+ | {|
4844+ type: "fit-content-function",
4845+ value: DimensionPercentageFor_LengthValue,
4846+ |}
4847+ | {|
4848+ type: "stretch",
4849+ vendorPrefix: VendorPrefix,
4850+ |}
4851+ | {|
4852+ type: "contain",
4853+ |};
4854+/**
4855+ * A value for the [box-sizing](https://drafts.csswg.org/css-sizing-3/#box-sizing) property.
4856+ */
4857+export type BoxSizing = "content-box" | "border-box";
4858+/**
4859+ * An [overflow](https://www.w3.org/TR/css-overflow-3/#overflow-properties) keyword as used in the `overflow-x`, `overflow-y`, and `overflow` properties.
4860+ */
4861+export type OverflowKeyword = "visible" | "hidden" | "clip" | "scroll" | "auto";
4862+/**
4863+ * A value for the [text-overflow](https://www.w3.org/TR/css-overflow-3/#text-overflow) property.
4864+ */
4865+export type TextOverflow = "clip" | "ellipsis";
4866+/**
4867+ * A value for the [position](https://www.w3.org/TR/css-position-3/#position-property) property.
4868+ */
4869+export type Position2 =
4870+ | {|
4871+ type: "static",
4872+ |}
4873+ | {|
4874+ type: "relative",
4875+ |}
4876+ | {|
4877+ type: "absolute",
4878+ |}
4879+ | {|
4880+ type: "sticky",
4881+ value: VendorPrefix,
4882+ |}
4883+ | {|
4884+ type: "fixed",
4885+ |};
4886+/**
4887+ * A generic value that represents a value with two components, e.g. a border radius.
4888+ *
4889+ * When serialized, only a single component will be written if both are equal.
4890+ * @minItems 2
4891+ * @maxItems 2
4892+ */
4893+export type Size2DFor_Length = [Length, Length];
4894+/**
4895+ * A [`<line-style>`](https://drafts.csswg.org/css-backgrounds/#typedef-line-style) value, used in the `border-style` property.
4896+ */
4897+export type LineStyle =
4898+ | "none"
4899+ | "hidden"
4900+ | "inset"
4901+ | "groove"
4902+ | "outset"
4903+ | "ridge"
4904+ | "dotted"
4905+ | "dashed"
4906+ | "solid"
4907+ | "double";
4908+/**
4909+ * A value for the [border-width](https://www.w3.org/TR/css-backgrounds-3/#border-width) property.
4910+ */
4911+export type BorderSideWidth =
4912+ | {|
4913+ type: "thin",
4914+ |}
4915+ | {|
4916+ type: "medium",
4917+ |}
4918+ | {|
4919+ type: "thick",
4920+ |}
4921+ | {|
4922+ type: "length",
4923+ value: Length,
4924+ |};
4925+/**
4926+ * A generic value that represents a value with two components, e.g. a border radius.
4927+ *
4928+ * When serialized, only a single component will be written if both are equal.
4929+ * @minItems 2
4930+ * @maxItems 2
4931+ */
4932+export type Size2DFor_DimensionPercentageFor_LengthValue = [
4933+ DimensionPercentageFor_LengthValue,
4934+ DimensionPercentageFor_LengthValue
4935+];
4936+/**
4937+ * A generic value that represents a value for four sides of a box, e.g. border-width, margin, padding, etc.
4938+ *
4939+ * When serialized, as few components as possible are written when there are duplicate values.
4940+ * @minItems 4
4941+ * @maxItems 4
4942+ */
4943+export type RectFor_LengthOrNumber = [
4944+ LengthOrNumber,
4945+ LengthOrNumber,
4946+ LengthOrNumber,
4947+ LengthOrNumber
4948+];
4949+/**
4950+ * Either a [`<length>`](https://www.w3.org/TR/css-values-4/#lengths) or a [`<number>`](https://www.w3.org/TR/css-values-4/#numbers).
4951+ */
4952+export type LengthOrNumber =
4953+ | {|
4954+ type: "number",
4955+ value: number,
4956+ |}
4957+ | {|
4958+ type: "length",
4959+ value: Length,
4960+ |};
4961+/**
4962+ * A single [border-image-repeat](https://www.w3.org/TR/css-backgrounds-3/#border-image-repeat) keyword.
4963+ */
4964+export type BorderImageRepeatKeyword = "stretch" | "repeat" | "round" | "space";
4965+/**
4966+ * A generic value that represents a value for four sides of a box, e.g. border-width, margin, padding, etc.
4967+ *
4968+ * When serialized, as few components as possible are written when there are duplicate values.
4969+ * @minItems 4
4970+ * @maxItems 4
4971+ */
4972+export type RectFor_BorderImageSideWidth = [
4973+ BorderImageSideWidth,
4974+ BorderImageSideWidth,
4975+ BorderImageSideWidth,
4976+ BorderImageSideWidth
4977+];
4978+/**
4979+ * A value for the [border-image-width](https://www.w3.org/TR/css-backgrounds-3/#border-image-width) property.
4980+ */
4981+export type BorderImageSideWidth =
4982+ | {|
4983+ type: "number",
4984+ value: number,
4985+ |}
4986+ | {|
4987+ type: "length-percentage",
4988+ value: DimensionPercentageFor_LengthValue,
4989+ |}
4990+ | {|
4991+ type: "auto",
4992+ |};
4993+/**
4994+ * A generic value that represents a value for four sides of a box, e.g. border-width, margin, padding, etc.
4995+ *
4996+ * When serialized, as few components as possible are written when there are duplicate values.
4997+ * @minItems 4
4998+ * @maxItems 4
4999+ */
5000+export type RectFor_NumberOrPercentage = [
5001+ NumberOrPercentage,
5002+ NumberOrPercentage,
5003+ NumberOrPercentage,
5004+ NumberOrPercentage
5005+];
5006+/**
5007+ * A value for the [outline-style](https://drafts.csswg.org/css-ui/#outline-style) property.
5008+ */
5009+export type OutlineStyle =
5010+ | {|
5011+ type: "auto",
5012+ |}
5013+ | {|
5014+ type: "line-style",
5015+ value: LineStyle,
5016+ |};
5017+/**
5018+ * A value for the [flex-direction](https://www.w3.org/TR/2018/CR-css-flexbox-1-20181119/#propdef-flex-direction) property.
5019+ */
5020+export type FlexDirection = "row" | "row-reverse" | "column" | "column-reverse";
5021+/**
5022+ * A value for the [flex-wrap](https://www.w3.org/TR/2018/CR-css-flexbox-1-20181119/#flex-wrap-property) property.
5023+ */
5024+export type FlexWrap = "nowrap" | "wrap" | "wrap-reverse";
5025+/**
5026+ * A value for the [align-content](https://www.w3.org/TR/css-align-3/#propdef-align-content) property.
5027+ */
5028+export type AlignContent =
5029+ | {|
5030+ type: "normal",
5031+ |}
5032+ | {|
5033+ type: "baseline-position",
5034+ value: BaselinePosition,
5035+ |}
5036+ | {|
5037+ type: "content-distribution",
5038+ value: ContentDistribution,
5039+ |}
5040+ | {|
5041+ /**
5042+ * An overflow alignment mode.
5043+ */
5044+ overflow?: OverflowPosition | null,
5045+ type: "content-position",
5046+
5047+ /**
5048+ * A content position keyword.
5049+ */
5050+ value: ContentPosition,
5051+ |};
5052+/**
5053+ * A [`<baseline-position>`](https://www.w3.org/TR/css-align-3/#typedef-baseline-position) value, as used in the alignment properties.
5054+ */
5055+export type BaselinePosition = "first" | "last";
5056+/**
5057+ * A [`<content-distribution>`](https://www.w3.org/TR/css-align-3/#typedef-content-distribution) value.
5058+ */
5059+export type ContentDistribution =
5060+ | "space-between"
5061+ | "space-around"
5062+ | "space-evenly"
5063+ | "stretch";
5064+/**
5065+ * An [`<overflow-position>`](https://www.w3.org/TR/css-align-3/#typedef-overflow-position) value.
5066+ */
5067+export type OverflowPosition = "safe" | "unsafe";
5068+/**
5069+ * A [`<content-position>`](https://www.w3.org/TR/css-align-3/#typedef-content-position) value.
5070+ */
5071+export type ContentPosition =
5072+ | "center"
5073+ | "start"
5074+ | "end"
5075+ | "flex-start"
5076+ | "flex-end";
5077+/**
5078+ * A value for the [justify-content](https://www.w3.org/TR/css-align-3/#propdef-justify-content) property.
5079+ */
5080+export type JustifyContent =
5081+ | {|
5082+ type: "normal",
5083+ |}
5084+ | {|
5085+ type: "content-distribution",
5086+ value: ContentDistribution,
5087+ |}
5088+ | {|
5089+ /**
5090+ * An overflow alignment mode.
5091+ */
5092+ overflow?: OverflowPosition | null,
5093+ type: "content-position",
5094+
5095+ /**
5096+ * A content position keyword.
5097+ */
5098+ value: ContentPosition,
5099+ |}
5100+ | {|
5101+ /**
5102+ * An overflow alignment mode.
5103+ */
5104+ overflow?: OverflowPosition | null,
5105+ type: "left",
5106+ |}
5107+ | {|
5108+ /**
5109+ * An overflow alignment mode.
5110+ */
5111+ overflow?: OverflowPosition | null,
5112+ type: "right",
5113+ |};
5114+/**
5115+ * A value for the [align-self](https://www.w3.org/TR/css-align-3/#align-self-property) property.
5116+ */
5117+export type AlignSelf =
5118+ | {|
5119+ type: "auto",
5120+ |}
5121+ | {|
5122+ type: "normal",
5123+ |}
5124+ | {|
5125+ type: "stretch",
5126+ |}
5127+ | {|
5128+ type: "baseline-position",
5129+ value: BaselinePosition,
5130+ |}
5131+ | {|
5132+ /**
5133+ * An overflow alignment mode.
5134+ */
5135+ overflow?: OverflowPosition | null,
5136+ type: "self-position",
5137+
5138+ /**
5139+ * A self position keyword.
5140+ */
5141+ value: SelfPosition,
5142+ |};
5143+/**
5144+ * A [`<self-position>`](https://www.w3.org/TR/css-align-3/#typedef-self-position) value.
5145+ */
5146+export type SelfPosition =
5147+ | "center"
5148+ | "start"
5149+ | "end"
5150+ | "self-start"
5151+ | "self-end"
5152+ | "flex-start"
5153+ | "flex-end";
5154+/**
5155+ * A value for the [justify-self](https://www.w3.org/TR/css-align-3/#justify-self-property) property.
5156+ */
5157+export type JustifySelf =
5158+ | {|
5159+ type: "auto",
5160+ |}
5161+ | {|
5162+ type: "normal",
5163+ |}
5164+ | {|
5165+ type: "stretch",
5166+ |}
5167+ | {|
5168+ type: "baseline-position",
5169+ value: BaselinePosition,
5170+ |}
5171+ | {|
5172+ /**
5173+ * An overflow alignment mode.
5174+ */
5175+ overflow?: OverflowPosition | null,
5176+ type: "self-position",
5177+
5178+ /**
5179+ * A self position keyword.
5180+ */
5181+ value: SelfPosition,
5182+ |}
5183+ | {|
5184+ /**
5185+ * An overflow alignment mode.
5186+ */
5187+ overflow?: OverflowPosition | null,
5188+ type: "left",
5189+ |}
5190+ | {|
5191+ /**
5192+ * An overflow alignment mode.
5193+ */
5194+ overflow?: OverflowPosition | null,
5195+ type: "right",
5196+ |};
5197+/**
5198+ * A value for the [align-items](https://www.w3.org/TR/css-align-3/#align-items-property) property.
5199+ */
5200+export type AlignItems =
5201+ | {|
5202+ type: "normal",
5203+ |}
5204+ | {|
5205+ type: "stretch",
5206+ |}
5207+ | {|
5208+ type: "baseline-position",
5209+ value: BaselinePosition,
5210+ |}
5211+ | {|
5212+ /**
5213+ * An overflow alignment mode.
5214+ */
5215+ overflow?: OverflowPosition | null,
5216+ type: "self-position",
5217+
5218+ /**
5219+ * A self position keyword.
5220+ */
5221+ value: SelfPosition,
5222+ |};
5223+/**
5224+ * A value for the [justify-items](https://www.w3.org/TR/css-align-3/#justify-items-property) property.
5225+ */
5226+export type JustifyItems =
5227+ | {|
5228+ type: "normal",
5229+ |}
5230+ | {|
5231+ type: "stretch",
5232+ |}
5233+ | {|
5234+ type: "baseline-position",
5235+ value: BaselinePosition,
5236+ |}
5237+ | {|
5238+ /**
5239+ * An overflow alignment mode.
5240+ */
5241+ overflow?: OverflowPosition | null,
5242+ type: "self-position",
5243+
5244+ /**
5245+ * A self position keyword.
5246+ */
5247+ value: SelfPosition,
5248+ |}
5249+ | {|
5250+ /**
5251+ * An overflow alignment mode.
5252+ */
5253+ overflow?: OverflowPosition | null,
5254+ type: "left",
5255+ |}
5256+ | {|
5257+ /**
5258+ * An overflow alignment mode.
5259+ */
5260+ overflow?: OverflowPosition | null,
5261+ type: "right",
5262+ |}
5263+ | {|
5264+ type: "legacy",
5265+ value: LegacyJustify,
5266+ |};
5267+/**
5268+ * A legacy justification keyword, as used in the `justify-items` property.
5269+ */
5270+export type LegacyJustify = "left" | "right" | "center";
5271+/**
5272+ * A [gap](https://www.w3.org/TR/css-align-3/#column-row-gap) value, as used in the `column-gap` and `row-gap` properties.
5273+ */
5274+export type GapValue =
5275+ | {|
5276+ type: "normal",
5277+ |}
5278+ | {|
5279+ type: "length-percentage",
5280+ value: DimensionPercentageFor_LengthValue,
5281+ |};
5282+/**
5283+ * A value for the legacy (prefixed) [box-orient](https://www.w3.org/TR/2009/WD-css3-flexbox-20090723/#orientation) property. Partially equivalent to `flex-direction` in the standard syntax.
5284+ */
5285+export type BoxOrient =
5286+ | "horizontal"
5287+ | "vertical"
5288+ | "inline-axis"
5289+ | "block-axis";
5290+/**
5291+ * A value for the legacy (prefixed) [box-direction](https://www.w3.org/TR/2009/WD-css3-flexbox-20090723/#displayorder) property. Partially equivalent to the `flex-direction` property in the standard syntax.
5292+ */
5293+export type BoxDirection = "normal" | "reverse";
5294+/**
5295+ * A value for the legacy (prefixed) [box-align](https://www.w3.org/TR/2009/WD-css3-flexbox-20090723/#alignment) property. Equivalent to the `align-items` property in the standard syntax.
5296+ */
5297+export type BoxAlign = "start" | "end" | "center" | "baseline" | "stretch";
5298+/**
5299+ * A value for the legacy (prefixed) [box-pack](https://www.w3.org/TR/2009/WD-css3-flexbox-20090723/#packing) property. Equivalent to the `justify-content` property in the standard syntax.
5300+ */
5301+export type BoxPack = "start" | "end" | "center" | "justify";
5302+/**
5303+ * A value for the legacy (prefixed) [box-lines](https://www.w3.org/TR/2009/WD-css3-flexbox-20090723/#multiple) property. Equivalent to the `flex-wrap` property in the standard syntax.
5304+ */
5305+export type BoxLines = "single" | "multiple";
5306+/**
5307+ * A value for the legacy (prefixed) [flex-pack](https://www.w3.org/TR/2012/WD-css3-flexbox-20120322/#flex-pack) property. Equivalent to the `justify-content` property in the standard syntax.
5308+ */
5309+export type FlexPack = "start" | "end" | "center" | "justify" | "distribute";
5310+/**
5311+ * A value for the legacy (prefixed) [flex-item-align](https://www.w3.org/TR/2012/WD-css3-flexbox-20120322/#flex-align) property. Equivalent to the `align-self` property in the standard syntax.
5312+ */
5313+export type FlexItemAlign =
5314+ | "auto"
5315+ | "start"
5316+ | "end"
5317+ | "center"
5318+ | "baseline"
5319+ | "stretch";
5320+/**
5321+ * A value for the legacy (prefixed) [flex-line-pack](https://www.w3.org/TR/2012/WD-css3-flexbox-20120322/#flex-line-pack) property. Equivalent to the `align-content` property in the standard syntax.
5322+ */
5323+export type FlexLinePack =
5324+ | "start"
5325+ | "end"
5326+ | "center"
5327+ | "justify"
5328+ | "distribute"
5329+ | "stretch";
5330+/**
5331+ * A [track sizing](https://drafts.csswg.org/css-grid-2/#track-sizing) value for the `grid-template-rows` and `grid-template-columns` properties.
5332+ */
5333+export type TrackSizing =
5334+ | {|
5335+ type: "none",
5336+ |}
5337+ | {|
5338+ /**
5339+ * A list of grid track items.
5340+ */
5341+ items: TrackListItem[],
5342+
5343+ /**
5344+ * A list of line names.
5345+ */
5346+ lineNames: String[][],
5347+ type: "track-list",
5348+ |};
5349+/**
5350+ * Either a track size or `repeat()` function.
5351+ *
5352+ * See [TrackList](TrackList).
5353+ */
5354+export type TrackListItem =
5355+ | {|
5356+ type: "track-size",
5357+ value: TrackSize,
5358+ |}
5359+ | {|
5360+ type: "track-repeat",
5361+ value: TrackRepeat,
5362+ |};
5363+/**
5364+ * A [`<track-size>`](https://drafts.csswg.org/css-grid-2/#typedef-track-size) value, as used in the `grid-template-rows` and `grid-template-columns` properties.
5365+ *
5366+ * See [TrackListItem](TrackListItem).
5367+ */
5368+export type TrackSize =
5369+ | {|
5370+ type: "track-breadth",
5371+ value: TrackBreadth,
5372+ |}
5373+ | {|
5374+ /**
5375+ * The maximum value.
5376+ */
5377+ max: TrackBreadth,
5378+
5379+ /**
5380+ * The minimum value.
5381+ */
5382+ min: TrackBreadth,
5383+ type: "min-max",
5384+ |}
5385+ | {|
5386+ type: "fit-content",
5387+ value: DimensionPercentageFor_LengthValue,
5388+ |};
5389+/**
5390+ * A [`<track-breadth>`](https://drafts.csswg.org/css-grid-2/#typedef-track-breadth) value.
5391+ *
5392+ * See [TrackSize](TrackSize).
5393+ */
5394+export type TrackBreadth =
5395+ | {|
5396+ type: "length",
5397+ value: DimensionPercentageFor_LengthValue,
5398+ |}
5399+ | {|
5400+ type: "flex",
5401+ value: number,
5402+ |}
5403+ | {|
5404+ type: "min-content",
5405+ |}
5406+ | {|
5407+ type: "max-content",
5408+ |}
5409+ | {|
5410+ type: "auto",
5411+ |};
5412+/**
5413+ * A [`<repeat-count>`](https://drafts.csswg.org/css-grid-2/#typedef-track-repeat) value, used in the `repeat()` function.
5414+ *
5415+ * See [TrackRepeat](TrackRepeat).
5416+ */
5417+export type RepeatCount =
5418+ | {|
5419+ type: "number",
5420+ value: number,
5421+ |}
5422+ | {|
5423+ type: "auto-fill",
5424+ |}
5425+ | {|
5426+ type: "auto-fit",
5427+ |};
5428+export type AutoFlowDirection = "row" | "column";
5429+/**
5430+ * A value for the [grid-template-areas](https://drafts.csswg.org/css-grid-2/#grid-template-areas-property) property.
5431+ */
5432+export type GridTemplateAreas =
5433+ | {|
5434+ type: "none",
5435+ |}
5436+ | {|
5437+ /**
5438+ * A flattened list of grid area names. Unnamed areas specified by the `.` token are represented as `None`.
5439+ */
5440+ areas: (string | null)[],
5441+
5442+ /**
5443+ * The number of columns in the grid.
5444+ */
5445+ columns: number,
5446+ type: "areas",
5447+ |};
5448+/**
5449+ * A [`<grid-line>`](https://drafts.csswg.org/css-grid-2/#typedef-grid-row-start-grid-line) value, used in the `grid-row-start`, `grid-row-end`, `grid-column-start`, and `grid-column-end` properties.
5450+ */
5451+export type GridLine =
5452+ | {|
5453+ type: "auto",
5454+ |}
5455+ | {|
5456+ /**
5457+ * A grid area name.
5458+ */
5459+ name: String,
5460+ type: "area",
5461+ |}
5462+ | {|
5463+ /**
5464+ * A line number.
5465+ */
5466+ index: number,
5467+
5468+ /**
5469+ * A line name to filter by.
5470+ */
5471+ name?: String | null,
5472+ type: "line",
5473+ |}
5474+ | {|
5475+ /**
5476+ * A line number.
5477+ */
5478+ index: number,
5479+
5480+ /**
5481+ * A line name to filter by.
5482+ */
5483+ name?: String | null,
5484+ type: "span",
5485+ |};
5486+/**
5487+ * A value for the [font-weight](https://www.w3.org/TR/css-fonts-4/#font-weight-prop) property.
5488+ */
5489+export type FontWeight =
5490+ | {|
5491+ type: "absolute",
5492+ value: AbsoluteFontWeight,
5493+ |}
5494+ | {|
5495+ type: "bolder",
5496+ |}
5497+ | {|
5498+ type: "lighter",
5499+ |};
5500+/**
5501+ * An [absolute font weight](https://www.w3.org/TR/css-fonts-4/#font-weight-absolute-values), as used in the `font-weight` property.
5502+ *
5503+ * See [FontWeight](FontWeight).
5504+ */
5505+export type AbsoluteFontWeight =
5506+ | {|
5507+ type: "weight",
5508+ value: number,
5509+ |}
5510+ | {|
5511+ type: "normal",
5512+ |}
5513+ | {|
5514+ type: "bold",
5515+ |};
5516+/**
5517+ * A value for the [font-size](https://www.w3.org/TR/css-fonts-4/#font-size-prop) property.
5518+ */
5519+export type FontSize =
5520+ | {|
5521+ type: "length",
5522+ value: DimensionPercentageFor_LengthValue,
5523+ |}
5524+ | {|
5525+ type: "absolute",
5526+ value: AbsoluteFontSize,
5527+ |}
5528+ | {|
5529+ type: "relative",
5530+ value: RelativeFontSize,
5531+ |};
5532+/**
5533+ * An [absolute font size](https://www.w3.org/TR/css-fonts-3/#absolute-size-value), as used in the `font-size` property.
5534+ *
5535+ * See [FontSize](FontSize).
5536+ */
5537+export type AbsoluteFontSize =
5538+ | "xx-small"
5539+ | "x-small"
5540+ | "small"
5541+ | "medium"
5542+ | "large"
5543+ | "x-large"
5544+ | "xx-large"
5545+ | "xxx-large";
5546+/**
5547+ * A [relative font size](https://www.w3.org/TR/css-fonts-3/#relative-size-value), as used in the `font-size` property.
5548+ *
5549+ * See [FontSize](FontSize).
5550+ */
5551+export type RelativeFontSize = "smaller" | "larger";
5552+/**
5553+ * A value for the [font-stretch](https://www.w3.org/TR/css-fonts-4/#font-stretch-prop) property.
5554+ */
5555+export type FontStretch =
5556+ | {|
5557+ type: "keyword",
5558+ value: FontStretchKeyword,
5559+ |}
5560+ | {|
5561+ type: "percentage",
5562+ value: number,
5563+ |};
5564+/**
5565+ * A [font stretch keyword](https://www.w3.org/TR/css-fonts-4/#font-stretch-prop), as used in the `font-stretch` property.
5566+ *
5567+ * See [FontStretch](FontStretch).
5568+ */
5569+export type FontStretchKeyword =
5570+ | "normal"
5571+ | "ultra-condensed"
5572+ | "extra-condensed"
5573+ | "condensed"
5574+ | "semi-condensed"
5575+ | "semi-expanded"
5576+ | "expanded"
5577+ | "extra-expanded"
5578+ | "ultra-expanded";
5579+/**
5580+ * A value for the [font-family](https://www.w3.org/TR/css-fonts-4/#font-family-prop) property.
5581+ */
5582+export type FontFamily = GenericFontFamily | String;
5583+/**
5584+ * A [generic font family](https://www.w3.org/TR/css-fonts-4/#generic-font-families) name, as used in the `font-family` property.
5585+ *
5586+ * See [FontFamily](FontFamily).
5587+ */
5588+export type GenericFontFamily =
5589+ | "serif"
5590+ | "sans-serif"
5591+ | "cursive"
5592+ | "fantasy"
5593+ | "monospace"
5594+ | "system-ui"
5595+ | "emoji"
5596+ | "math"
5597+ | "fangsong"
5598+ | "ui-serif"
5599+ | "ui-sans-serif"
5600+ | "ui-monospace"
5601+ | "ui-rounded"
5602+ | "initial"
5603+ | "inherit"
5604+ | "unset"
5605+ | "default"
5606+ | "revert"
5607+ | "revert-layer";
5608+/**
5609+ * A value for the [font-style](https://www.w3.org/TR/css-fonts-4/#font-style-prop) property.
5610+ */
5611+export type FontStyle =
5612+ | {|
5613+ type: "normal",
5614+ |}
5615+ | {|
5616+ type: "italic",
5617+ |}
5618+ | {|
5619+ type: "oblique",
5620+ value: Angle,
5621+ |};
5622+/**
5623+ * A value for the [font-variant-caps](https://www.w3.org/TR/css-fonts-4/#font-variant-caps-prop) property.
5624+ */
5625+export type FontVariantCaps =
5626+ | "normal"
5627+ | "small-caps"
5628+ | "all-small-caps"
5629+ | "petite-caps"
5630+ | "all-petite-caps"
5631+ | "unicase"
5632+ | "titling-caps";
5633+/**
5634+ * A value for the [line-height](https://www.w3.org/TR/2020/WD-css-inline-3-20200827/#propdef-line-height) property.
5635+ */
5636+export type LineHeight =
5637+ | {|
5638+ type: "normal",
5639+ |}
5640+ | {|
5641+ type: "number",
5642+ value: number,
5643+ |}
5644+ | {|
5645+ type: "length",
5646+ value: DimensionPercentageFor_LengthValue,
5647+ |};
5648+/**
5649+ * A value for the [vertical align](https://drafts.csswg.org/css2/#propdef-vertical-align) property.
5650+ */
5651+export type VerticalAlign =
5652+ | {|
5653+ type: "keyword",
5654+ value: VerticalAlignKeyword,
5655+ |}
5656+ | {|
5657+ type: "length",
5658+ value: DimensionPercentageFor_LengthValue,
5659+ |};
5660+/**
5661+ * A keyword for the [vertical align](https://drafts.csswg.org/css2/#propdef-vertical-align) property.
5662+ */
5663+export type VerticalAlignKeyword =
5664+ | "baseline"
5665+ | "sub"
5666+ | "super"
5667+ | "top"
5668+ | "text-top"
5669+ | "middle"
5670+ | "bottom"
5671+ | "text-bottom";
5672+/**
5673+ * A CSS [easing function](https://www.w3.org/TR/css-easing-1/#easing-functions).
5674+ */
5675+export type EasingFunction =
5676+ | {|
5677+ type: "linear",
5678+ |}
5679+ | {|
5680+ type: "ease",
5681+ |}
5682+ | {|
5683+ type: "ease-in",
5684+ |}
5685+ | {|
5686+ type: "ease-out",
5687+ |}
5688+ | {|
5689+ type: "ease-in-out",
5690+ |}
5691+ | {|
5692+ type: "cubic-bezier",
5693+
5694+ /**
5695+ * The x-position of the first point in the curve.
5696+ */
5697+ x1: number,
5698+
5699+ /**
5700+ * The x-position of the second point in the curve.
5701+ */
5702+ x2: number,
5703+
5704+ /**
5705+ * The y-position of the first point in the curve.
5706+ */
5707+ y1: number,
5708+
5709+ /**
5710+ * The y-position of the second point in the curve.
5711+ */
5712+ y2: number,
5713+ |}
5714+ | {|
5715+ /**
5716+ * The number of intervals in the function.
5717+ */
5718+ count: number,
5719+
5720+ /**
5721+ * The step position.
5722+ */
5723+ position?: StepPosition,
5724+ type: "steps",
5725+ |};
5726+/**
5727+ * A [step position](https://www.w3.org/TR/css-easing-1/#step-position), used within the `steps()` function.
5728+ */
5729+export type StepPosition =
5730+ | {|
5731+ type: "start",
5732+ |}
5733+ | {|
5734+ type: "end",
5735+ |}
5736+ | {|
5737+ type: "jump-none",
5738+ |}
5739+ | {|
5740+ type: "jump-both",
5741+ |};
5742+/**
5743+ * A value for the [animation-iteration-count](https://drafts.csswg.org/css-animations/#animation-iteration-count) property.
5744+ */
5745+export type AnimationIterationCount =
5746+ | {|
5747+ type: "number",
5748+ value: number,
5749+ |}
5750+ | {|
5751+ type: "infinite",
5752+ |};
5753+/**
5754+ * A value for the [animation-direction](https://drafts.csswg.org/css-animations/#animation-direction) property.
5755+ */
5756+export type AnimationDirection =
5757+ | "normal"
5758+ | "reverse"
5759+ | "alternate"
5760+ | "alternate-reverse";
5761+/**
5762+ * A value for the [animation-play-state](https://drafts.csswg.org/css-animations/#animation-play-state) property.
5763+ */
5764+export type AnimationPlayState = "running" | "paused";
5765+/**
5766+ * A value for the [animation-fill-mode](https://drafts.csswg.org/css-animations/#animation-fill-mode) property.
5767+ */
5768+export type AnimationFillMode = "none" | "forwards" | "backwards" | "both";
5769+/**
5770+ * A value for the [animation-composition](https://drafts.csswg.org/css-animations-2/#animation-composition) property.
5771+ */
5772+export type AnimationComposition = "replace" | "add" | "accumulate";
5773+/**
5774+ * A value for the [animation-timeline](https://drafts.csswg.org/css-animations-2/#animation-timeline) property.
5775+ */
5776+export type AnimationTimeline =
5777+ | {|
5778+ type: "auto",
5779+ |}
5780+ | {|
5781+ type: "none",
5782+ |}
5783+ | {|
5784+ type: "dashed-ident",
5785+ value: String,
5786+ |}
5787+ | {|
5788+ type: "scroll",
5789+ value: ScrollTimeline,
5790+ |}
5791+ | {|
5792+ type: "view",
5793+ value: ViewTimeline,
5794+ |};
5795+/**
5796+ * A scroll axis, used in the `scroll()` function.
5797+ */
5798+export type ScrollAxis = "block" | "inline" | "x" | "y";
5799+/**
5800+ * A scroller, used in the `scroll()` function.
5801+ */
5802+export type Scroller = "root" | "nearest" | "self";
5803+/**
5804+ * A generic value that represents a value with two components, e.g. a border radius.
5805+ *
5806+ * When serialized, only a single component will be written if both are equal.
5807+ * @minItems 2
5808+ * @maxItems 2
5809+ */
5810+export type Size2DFor_LengthPercentageOrAuto = [
5811+ LengthPercentageOrAuto,
5812+ LengthPercentageOrAuto
5813+];
5814+/**
5815+ * A value for the [animation-range-start](https://drafts.csswg.org/scroll-animations/#animation-range-start) property.
5816+ */
5817+export type AnimationRangeStart = AnimationAttachmentRange;
5818+/**
5819+ * A value for the [animation-range-start](https://drafts.csswg.org/scroll-animations/#animation-range-start) or [animation-range-end](https://drafts.csswg.org/scroll-animations/#animation-range-end) property.
5820+ */
5821+export type AnimationAttachmentRange =
5822+ | "normal"
5823+ | DimensionPercentageFor_LengthValue
5824+ | {|
5825+ /**
5826+ * The name of the timeline range.
5827+ */
5828+ name: TimelineRangeName,
5829+
5830+ /**
5831+ * The offset from the start of the named timeline range.
5832+ */
5833+ offset: DimensionPercentageFor_LengthValue,
5834+ |};
5835+/**
5836+ * A [view progress timeline range](https://drafts.csswg.org/scroll-animations/#view-timelines-ranges)
5837+ */
5838+export type TimelineRangeName =
5839+ | "cover"
5840+ | "contain"
5841+ | "entry"
5842+ | "exit"
5843+ | "entry-crossing"
5844+ | "exit-crossing";
5845+/**
5846+ * A value for the [animation-range-end](https://drafts.csswg.org/scroll-animations/#animation-range-end) property.
5847+ */
5848+export type AnimationRangeEnd = AnimationAttachmentRange;
5849+/**
5850+ * An individual [transform function](https://www.w3.org/TR/2019/CR-css-transforms-1-20190214/#two-d-transform-functions).
5851+ */
5852+export type Transform =
5853+ | {|
5854+ type: "translate",
5855+
5856+ /**
5857+ * @minItems 2
5858+ * @maxItems 2
5859+ */
5860+ value: [
5861+ DimensionPercentageFor_LengthValue,
5862+ DimensionPercentageFor_LengthValue
5863+ ],
5864+ |}
5865+ | {|
5866+ type: "translateX",
5867+ value: DimensionPercentageFor_LengthValue,
5868+ |}
5869+ | {|
5870+ type: "translateY",
5871+ value: DimensionPercentageFor_LengthValue,
5872+ |}
5873+ | {|
5874+ type: "translateZ",
5875+ value: Length,
5876+ |}
5877+ | {|
5878+ type: "translate3d",
5879+
5880+ /**
5881+ * @minItems 3
5882+ * @maxItems 3
5883+ */
5884+ value: [
5885+ DimensionPercentageFor_LengthValue,
5886+ DimensionPercentageFor_LengthValue,
5887+ Length
5888+ ],
5889+ |}
5890+ | {|
5891+ type: "scale",
5892+
5893+ /**
5894+ * @minItems 2
5895+ * @maxItems 2
5896+ */
5897+ value: [NumberOrPercentage, NumberOrPercentage],
5898+ |}
5899+ | {|
5900+ type: "scaleX",
5901+ value: NumberOrPercentage,
5902+ |}
5903+ | {|
5904+ type: "scaleY",
5905+ value: NumberOrPercentage,
5906+ |}
5907+ | {|
5908+ type: "scaleZ",
5909+ value: NumberOrPercentage,
5910+ |}
5911+ | {|
5912+ type: "scale3d",
5913+
5914+ /**
5915+ * @minItems 3
5916+ * @maxItems 3
5917+ */
5918+ value: [NumberOrPercentage, NumberOrPercentage, NumberOrPercentage],
5919+ |}
5920+ | {|
5921+ type: "rotate",
5922+ value: Angle,
5923+ |}
5924+ | {|
5925+ type: "rotateX",
5926+ value: Angle,
5927+ |}
5928+ | {|
5929+ type: "rotateY",
5930+ value: Angle,
5931+ |}
5932+ | {|
5933+ type: "rotateZ",
5934+ value: Angle,
5935+ |}
5936+ | {|
5937+ type: "rotate3d",
5938+
5939+ /**
5940+ * @minItems 4
5941+ * @maxItems 4
5942+ */
5943+ value: [number, number, number, Angle],
5944+ |}
5945+ | {|
5946+ type: "skew",
5947+
5948+ /**
5949+ * @minItems 2
5950+ * @maxItems 2
5951+ */
5952+ value: [Angle, Angle],
5953+ |}
5954+ | {|
5955+ type: "skewX",
5956+ value: Angle,
5957+ |}
5958+ | {|
5959+ type: "skewY",
5960+ value: Angle,
5961+ |}
5962+ | {|
5963+ type: "perspective",
5964+ value: Length,
5965+ |}
5966+ | {|
5967+ type: "matrix",
5968+ value: MatrixForFloat,
5969+ |}
5970+ | {|
5971+ type: "matrix3d",
5972+ value: Matrix3DForFloat,
5973+ |};
5974+/**
5975+ * A value for the [transform-style](https://drafts.csswg.org/css-transforms-2/#transform-style-property) property.
5976+ */
5977+export type TransformStyle = "flat" | "preserve3d";
5978+/**
5979+ * A value for the [transform-box](https://drafts.csswg.org/css-transforms-1/#transform-box) property.
5980+ */
5981+export type TransformBox =
5982+ | "content-box"
5983+ | "border-box"
5984+ | "fill-box"
5985+ | "stroke-box"
5986+ | "view-box";
5987+/**
5988+ * A value for the [backface-visibility](https://drafts.csswg.org/css-transforms-2/#backface-visibility-property) property.
5989+ */
5990+export type BackfaceVisibility = "visible" | "hidden";
5991+/**
5992+ * A value for the [perspective](https://drafts.csswg.org/css-transforms-2/#perspective-property) property.
5993+ */
5994+export type Perspective =
5995+ | {|
5996+ type: "none",
5997+ |}
5998+ | {|
5999+ type: "length",
6000+ value: Length,
6001+ |};
6002+/**
6003+ * A value for the [translate](https://drafts.csswg.org/css-transforms-2/#propdef-translate) property.
6004+ */
6005+export type Translate =
6006+ | "none"
6007+ | {|
6008+ /**
6009+ * The x translation.
6010+ */
6011+ x: DimensionPercentageFor_LengthValue,
6012+
6013+ /**
6014+ * The y translation.
6015+ */
6016+ y: DimensionPercentageFor_LengthValue,
6017+
6018+ /**
6019+ * The z translation.
6020+ */
6021+ z: Length,
6022+ |};
6023+/**
6024+ * A value for the [scale](https://drafts.csswg.org/css-transforms-2/#propdef-scale) property.
6025+ */
6026+export type Scale =
6027+ | "none"
6028+ | {|
6029+ /**
6030+ * Scale on the x axis.
6031+ */
6032+ x: NumberOrPercentage,
6033+
6034+ /**
6035+ * Scale on the y axis.
6036+ */
6037+ y: NumberOrPercentage,
6038+
6039+ /**
6040+ * Scale on the z axis.
6041+ */
6042+ z: NumberOrPercentage,
6043+ |};
6044+/**
6045+ * Defines how text case should be transformed in the [text-transform](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#text-transform-property) property.
6046+ */
6047+export type TextTransformCase =
6048+ | "none"
6049+ | "uppercase"
6050+ | "lowercase"
6051+ | "capitalize";
6052+/**
6053+ * A value for the [white-space](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#white-space-property) property.
6054+ */
6055+export type WhiteSpace =
6056+ | "normal"
6057+ | "pre"
6058+ | "nowrap"
6059+ | "pre-wrap"
6060+ | "break-spaces"
6061+ | "pre-line";
6062+/**
6063+ * A value for the [word-break](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#word-break-property) property.
6064+ */
6065+export type WordBreak = "normal" | "keep-all" | "break-all" | "break-word";
6066+/**
6067+ * A value for the [line-break](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#line-break-property) property.
6068+ */
6069+export type LineBreak = "auto" | "loose" | "normal" | "strict" | "anywhere";
6070+/**
6071+ * A value for the [hyphens](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#hyphenation) property.
6072+ */
6073+export type Hyphens = "none" | "manual" | "auto";
6074+/**
6075+ * A value for the [overflow-wrap](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#overflow-wrap-property) property.
6076+ */
6077+export type OverflowWrap = "normal" | "anywhere" | "break-word";
6078+/**
6079+ * A value for the [text-align](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#text-align-property) property.
6080+ */
6081+export type TextAlign =
6082+ | "start"
6083+ | "end"
6084+ | "left"
6085+ | "right"
6086+ | "center"
6087+ | "justify"
6088+ | "match-parent"
6089+ | "justify-all";
6090+/**
6091+ * A value for the [text-align-last](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#text-align-last-property) property.
6092+ */
6093+export type TextAlignLast =
6094+ | "auto"
6095+ | "start"
6096+ | "end"
6097+ | "left"
6098+ | "right"
6099+ | "center"
6100+ | "justify"
6101+ | "match-parent";
6102+/**
6103+ * A value for the [text-justify](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#text-justify-property) property.
6104+ */
6105+export type TextJustify = "auto" | "none" | "inter-word" | "inter-character";
6106+/**
6107+ * A value for the [word-spacing](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#word-spacing-property) and [letter-spacing](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#letter-spacing-property) properties.
6108+ */
6109+export type Spacing =
6110+ | {|
6111+ type: "normal",
6112+ |}
6113+ | {|
6114+ type: "length",
6115+ value: Length,
6116+ |};
6117+export type TextDecorationLine =
6118+ | ExclusiveTextDecorationLine
6119+ | OtherTextDecorationLine[];
6120+export type ExclusiveTextDecorationLine =
6121+ | "none"
6122+ | "spelling-error"
6123+ | "grammar-error";
6124+export type OtherTextDecorationLine =
6125+ | "underline"
6126+ | "overline"
6127+ | "line-through"
6128+ | "blink";
6129+/**
6130+ * A value for the [text-decoration-style](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-decoration-style-property) property.
6131+ */
6132+export type TextDecorationStyle =
6133+ | "solid"
6134+ | "double"
6135+ | "dotted"
6136+ | "dashed"
6137+ | "wavy";
6138+/**
6139+ * A value for the [text-decoration-thickness](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-decoration-width-property) property.
6140+ */
6141+export type TextDecorationThickness =
6142+ | {|
6143+ type: "auto",
6144+ |}
6145+ | {|
6146+ type: "from-font",
6147+ |}
6148+ | {|
6149+ type: "length-percentage",
6150+ value: DimensionPercentageFor_LengthValue,
6151+ |};
6152+/**
6153+ * A value for the [text-decoration-skip-ink](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-decoration-skip-ink-property) property.
6154+ */
6155+export type TextDecorationSkipInk = "auto" | "none" | "all";
6156+/**
6157+ * A value for the [text-emphasis-style](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-emphasis-style-property) property.
6158+ */
6159+export type TextEmphasisStyle =
6160+ | {|
6161+ type: "none",
6162+ |}
6163+ | {|
6164+ /**
6165+ * The fill mode for the marks.
6166+ */
6167+ fill: TextEmphasisFillMode,
6168+
6169+ /**
6170+ * The shape of the marks.
6171+ */
6172+ shape?: TextEmphasisShape | null,
6173+ type: "keyword",
6174+ |}
6175+ | {|
6176+ type: "string",
6177+ value: String,
6178+ |};
6179+/**
6180+ * A keyword for the [text-emphasis-style](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-emphasis-style-property) property.
6181+ *
6182+ * See [TextEmphasisStyle](TextEmphasisStyle).
6183+ */
6184+export type TextEmphasisFillMode = "filled" | "open";
6185+/**
6186+ * A text emphasis shape for the [text-emphasis-style](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-emphasis-style-property) property.
6187+ *
6188+ * See [TextEmphasisStyle](TextEmphasisStyle).
6189+ */
6190+export type TextEmphasisShape =
6191+ | "dot"
6192+ | "circle"
6193+ | "double-circle"
6194+ | "triangle"
6195+ | "sesame";
6196+/**
6197+ * A horizontal position keyword for the [text-emphasis-position](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-emphasis-position-property) property.
6198+ *
6199+ * See [TextEmphasisPosition](TextEmphasisPosition).
6200+ */
6201+export type TextEmphasisPositionHorizontal = "left" | "right";
6202+/**
6203+ * A vertical position keyword for the [text-emphasis-position](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-emphasis-position-property) property.
6204+ *
6205+ * See [TextEmphasisPosition](TextEmphasisPosition).
6206+ */
6207+export type TextEmphasisPositionVertical = "over" | "under";
6208+/**
6209+ * A value for the [text-size-adjust](https://w3c.github.io/csswg-drafts/css-size-adjust/#adjustment-control) property.
6210+ */
6211+export type TextSizeAdjust =
6212+ | {|
6213+ type: "auto",
6214+ |}
6215+ | {|
6216+ type: "none",
6217+ |}
6218+ | {|
6219+ type: "percentage",
6220+ value: number,
6221+ |};
6222+/**
6223+ * A value for the [direction](https://drafts.csswg.org/css-writing-modes-3/#direction) property.
6224+ */
6225+export type Direction2 = "ltr" | "rtl";
6226+/**
6227+ * A value for the [unicode-bidi](https://drafts.csswg.org/css-writing-modes-3/#unicode-bidi) property.
6228+ */
6229+export type UnicodeBidi =
6230+ | "normal"
6231+ | "embed"
6232+ | "isolate"
6233+ | "bidi-override"
6234+ | "isolate-override"
6235+ | "plaintext";
6236+/**
6237+ * A value for the [box-decoration-break](https://www.w3.org/TR/css-break-3/#break-decoration) property.
6238+ */
6239+export type BoxDecorationBreak = "slice" | "clone";
6240+/**
6241+ * A value for the [resize](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#resize) property.
6242+ */
6243+export type Resize =
6244+ | "none"
6245+ | "both"
6246+ | "horizontal"
6247+ | "vertical"
6248+ | "block"
6249+ | "inline";
6250+/**
6251+ * A pre-defined [cursor](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#cursor) value, used in the `cursor` property.
6252+ *
6253+ * See [Cursor](Cursor).
6254+ */
6255+export type CursorKeyword =
6256+ | "auto"
6257+ | "default"
6258+ | "none"
6259+ | "context-menu"
6260+ | "help"
6261+ | "pointer"
6262+ | "progress"
6263+ | "wait"
6264+ | "cell"
6265+ | "crosshair"
6266+ | "text"
6267+ | "vertical-text"
6268+ | "alias"
6269+ | "copy"
6270+ | "move"
6271+ | "no-drop"
6272+ | "not-allowed"
6273+ | "grab"
6274+ | "grabbing"
6275+ | "e-resize"
6276+ | "n-resize"
6277+ | "ne-resize"
6278+ | "nw-resize"
6279+ | "s-resize"
6280+ | "se-resize"
6281+ | "sw-resize"
6282+ | "w-resize"
6283+ | "ew-resize"
6284+ | "ns-resize"
6285+ | "nesw-resize"
6286+ | "nwse-resize"
6287+ | "col-resize"
6288+ | "row-resize"
6289+ | "all-scroll"
6290+ | "zoom-in"
6291+ | "zoom-out";
6292+/**
6293+ * A value for the [caret-color](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#caret-color) property.
6294+ */
6295+export type ColorOrAuto =
6296+ | {|
6297+ type: "auto",
6298+ |}
6299+ | {|
6300+ type: "color",
6301+ value: CssColor,
6302+ |};
6303+/**
6304+ * A value for the [caret-shape](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#caret-shape) property.
6305+ */
6306+export type CaretShape = "auto" | "bar" | "block" | "underscore";
6307+/**
6308+ * A value for the [user-select](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#content-selection) property.
6309+ */
6310+export type UserSelect = "auto" | "text" | "none" | "contain" | "all";
6311+export type Appearance = string;
6312+/**
6313+ * A value for the [list-style-type](https://www.w3.org/TR/2020/WD-css-lists-3-20201117/#text-markers) property.
6314+ */
6315+export type ListStyleType =
6316+ | {|
6317+ type: "none",
6318+ |}
6319+ | {|
6320+ type: "string",
6321+ value: String,
6322+ |}
6323+ | {|
6324+ type: "counter-style",
6325+ value: CounterStyle,
6326+ |};
6327+/**
6328+ * A [counter-style](https://www.w3.org/TR/css-counter-styles-3/#typedef-counter-style) name.
6329+ */
6330+export type CounterStyle =
6331+ | {|
6332+ type: "predefined",
6333+ value: PredefinedCounterStyle,
6334+ |}
6335+ | {|
6336+ type: "name",
6337+ value: String,
6338+ |}
6339+ | {|
6340+ /**
6341+ * The symbols.
6342+ */
6343+ symbols: Symbol[],
6344+
6345+ /**
6346+ * The counter system.
6347+ */
6348+ system?: {| ...SymbolsType, ...string |},
6349+ type: "symbols",
6350+ |};
6351+/**
6352+ * A [predefined counter](https://www.w3.org/TR/css-counter-styles-3/#predefined-counters) style.
6353+ */
6354+export type PredefinedCounterStyle =
6355+ | "decimal"
6356+ | "decimal-leading-zero"
6357+ | "arabic-indic"
6358+ | "armenian"
6359+ | "upper-armenian"
6360+ | "lower-armenian"
6361+ | "bengali"
6362+ | "cambodian"
6363+ | "khmer"
6364+ | "cjk-decimal"
6365+ | "devanagari"
6366+ | "georgian"
6367+ | "gujarati"
6368+ | "gurmukhi"
6369+ | "hebrew"
6370+ | "kannada"
6371+ | "lao"
6372+ | "malayalam"
6373+ | "mongolian"
6374+ | "myanmar"
6375+ | "oriya"
6376+ | "persian"
6377+ | "lower-roman"
6378+ | "upper-roman"
6379+ | "tamil"
6380+ | "telugu"
6381+ | "thai"
6382+ | "tibetan"
6383+ | "lower-alpha"
6384+ | "lower-latin"
6385+ | "upper-alpha"
6386+ | "upper-latin"
6387+ | "lower-greek"
6388+ | "hiragana"
6389+ | "hiragana-iroha"
6390+ | "katakana"
6391+ | "katakana-iroha"
6392+ | "disc"
6393+ | "circle"
6394+ | "square"
6395+ | "disclosure-open"
6396+ | "disclosure-closed"
6397+ | "cjk-earthly-branch"
6398+ | "cjk-heavenly-stem"
6399+ | "japanese-informal"
6400+ | "japanese-formal"
6401+ | "korean-hangul-formal"
6402+ | "korean-hanja-informal"
6403+ | "korean-hanja-formal"
6404+ | "simp-chinese-informal"
6405+ | "simp-chinese-formal"
6406+ | "trad-chinese-informal"
6407+ | "trad-chinese-formal"
6408+ | "ethiopic-numeric";
6409+/**
6410+ * A single [symbol](https://www.w3.org/TR/css-counter-styles-3/#funcdef-symbols) as used in the `symbols()` function.
6411+ *
6412+ * See [CounterStyle](CounterStyle).
6413+ */
6414+export type Symbol =
6415+ | {|
6416+ type: "string",
6417+ value: String,
6418+ |}
6419+ | {|
6420+ type: "image",
6421+ value: Image,
6422+ |};
6423+/**
6424+ * A [`<symbols-type>`](https://www.w3.org/TR/css-counter-styles-3/#typedef-symbols-type) value, as used in the `symbols()` function.
6425+ *
6426+ * See [CounterStyle](CounterStyle).
6427+ */
6428+export type SymbolsType =
6429+ | "cyclic"
6430+ | "numeric"
6431+ | "alphabetic"
6432+ | "symbolic"
6433+ | "fixed";
6434+/**
6435+ * A value for the [list-style-position](https://www.w3.org/TR/2020/WD-css-lists-3-20201117/#list-style-position-property) property.
6436+ */
6437+export type ListStylePosition = "inside" | "outside";
6438+/**
6439+ * A value for the [marker-side](https://www.w3.org/TR/2020/WD-css-lists-3-20201117/#marker-side) property.
6440+ */
6441+export type MarkerSide = "match-self" | "match-parent";
6442+/**
6443+ * An SVG [`<paint>`](https://www.w3.org/TR/SVG2/painting.html#SpecifyingPaint) value used in the `fill` and `stroke` properties.
6444+ */
6445+export type SVGPaint =
6446+ | {|
6447+ /**
6448+ * A fallback to be used used in case the paint server cannot be resolved.
6449+ */
6450+ fallback?: SVGPaintFallback | null,
6451+ type: "url",
6452+
6453+ /**
6454+ * The url of the paint server.
6455+ */
6456+ url: Url,
6457+ |}
6458+ | {|
6459+ type: "color",
6460+ value: CssColor,
6461+ |}
6462+ | {|
6463+ type: "context-fill",
6464+ |}
6465+ | {|
6466+ type: "context-stroke",
6467+ |}
6468+ | {|
6469+ type: "none",
6470+ |};
6471+/**
6472+ * A fallback for an SVG paint in case a paint server `url()` cannot be resolved.
6473+ *
6474+ * See [SVGPaint](SVGPaint).
6475+ */
6476+export type SVGPaintFallback =
6477+ | {|
6478+ type: "none",
6479+ |}
6480+ | {|
6481+ type: "color",
6482+ value: CssColor,
6483+ |};
6484+/**
6485+ * A [`<fill-rule>`](https://www.w3.org/TR/css-shapes-1/#typedef-fill-rule) used to determine the interior of a `polygon()` shape.
6486+ *
6487+ * See [Polygon](Polygon).
6488+ */
6489+export type FillRule = "nonzero" | "evenodd";
6490+/**
6491+ * A value for the [stroke-linecap](https://www.w3.org/TR/SVG2/painting.html#LineCaps) property.
6492+ */
6493+export type StrokeLinecap = "butt" | "round" | "square";
6494+/**
6495+ * A value for the [stroke-linejoin](https://www.w3.org/TR/SVG2/painting.html#LineJoin) property.
6496+ */
6497+export type StrokeLinejoin =
6498+ | "miter"
6499+ | "miter-clip"
6500+ | "round"
6501+ | "bevel"
6502+ | "arcs";
6503+/**
6504+ * A value for the [stroke-dasharray](https://www.w3.org/TR/SVG2/painting.html#StrokeDashing) property.
6505+ */
6506+export type StrokeDasharray =
6507+ | {|
6508+ type: "none",
6509+ |}
6510+ | {|
6511+ type: "values",
6512+ value: DimensionPercentageFor_LengthValue[],
6513+ |};
6514+/**
6515+ * A value for the [marker](https://www.w3.org/TR/SVG2/painting.html#VertexMarkerProperties) properties.
6516+ */
6517+export type Marker =
6518+ | {|
6519+ type: "none",
6520+ |}
6521+ | {|
6522+ type: "url",
6523+ value: Url,
6524+ |};
6525+/**
6526+ * A value for the [color-interpolation](https://www.w3.org/TR/SVG2/painting.html#ColorInterpolation) property.
6527+ */
6528+export type ColorInterpolation = "auto" | "srgb" | "linearrgb";
6529+/**
6530+ * A value for the [color-rendering](https://www.w3.org/TR/SVG2/painting.html#ColorRendering) property.
6531+ */
6532+export type ColorRendering = "auto" | "optimizespeed" | "optimizequality";
6533+/**
6534+ * A value for the [shape-rendering](https://www.w3.org/TR/SVG2/painting.html#ShapeRendering) property.
6535+ */
6536+export type ShapeRendering =
6537+ | "auto"
6538+ | "optimizespeed"
6539+ | "crispedges"
6540+ | "geometricprecision";
6541+/**
6542+ * A value for the [text-rendering](https://www.w3.org/TR/SVG2/painting.html#TextRendering) property.
6543+ */
6544+export type TextRendering =
6545+ | "auto"
6546+ | "optimizespeed"
6547+ | "optimizelegibility"
6548+ | "geometricprecision";
6549+/**
6550+ * A value for the [image-rendering](https://www.w3.org/TR/SVG2/painting.html#ImageRendering) property.
6551+ */
6552+export type ImageRendering = "auto" | "optimizespeed" | "optimizequality";
6553+/**
6554+ * A value for the [clip-path](https://www.w3.org/TR/css-masking-1/#the-clip-path) property.
6555+ */
6556+export type ClipPath =
6557+ | {|
6558+ type: "none",
6559+ |}
6560+ | {|
6561+ type: "url",
6562+ value: Url,
6563+ |}
6564+ | {|
6565+ /**
6566+ * A reference box that the shape is positioned according to.
6567+ */
6568+ referenceBox: GeometryBox,
6569+
6570+ /**
6571+ * A basic shape.
6572+ */
6573+ shape: BasicShape,
6574+ type: "shape",
6575+ |}
6576+ | {|
6577+ type: "box",
6578+ value: GeometryBox,
6579+ |};
6580+/**
6581+ * A [`<geometry-box>`](https://www.w3.org/TR/css-masking-1/#typedef-geometry-box) value as used in the `mask-clip` and `clip-path` properties.
6582+ */
6583+export type GeometryBox =
6584+ | "border-box"
6585+ | "padding-box"
6586+ | "content-box"
6587+ | "margin-box"
6588+ | "fill-box"
6589+ | "stroke-box"
6590+ | "view-box";
6591+/**
6592+ * A CSS [`<basic-shape>`](https://www.w3.org/TR/css-shapes-1/#basic-shape-functions) value.
6593+ */
6594+export type BasicShape =
6595+ | {|
6596+ type: "inset",
6597+ value: InsetRect,
6598+ |}
6599+ | {|
6600+ type: "circle",
6601+ value: Circle2,
6602+ |}
6603+ | {|
6604+ type: "ellipse",
6605+ value: Ellipse2,
6606+ |}
6607+ | {|
6608+ type: "polygon",
6609+ value: Polygon,
6610+ |};
6611+/**
6612+ * A generic value that represents a value for four sides of a box, e.g. border-width, margin, padding, etc.
6613+ *
6614+ * When serialized, as few components as possible are written when there are duplicate values.
6615+ * @minItems 4
6616+ * @maxItems 4
6617+ */
6618+export type RectFor_DimensionPercentageFor_LengthValue = [
6619+ DimensionPercentageFor_LengthValue,
6620+ DimensionPercentageFor_LengthValue,
6621+ DimensionPercentageFor_LengthValue,
6622+ DimensionPercentageFor_LengthValue
6623+];
6624+/**
6625+ * A [`<shape-radius>`](https://www.w3.org/TR/css-shapes-1/#typedef-shape-radius) value that defines the radius of a `circle()` or `ellipse()` shape.
6626+ */
6627+export type ShapeRadius =
6628+ | {|
6629+ type: "length-percentage",
6630+ value: DimensionPercentageFor_LengthValue,
6631+ |}
6632+ | {|
6633+ type: "closest-side",
6634+ |}
6635+ | {|
6636+ type: "farthest-side",
6637+ |};
6638+/**
6639+ * A value for the [mask-mode](https://www.w3.org/TR/css-masking-1/#the-mask-mode) property.
6640+ */
6641+export type MaskMode = "luminance" | "alpha" | "match-source";
6642+/**
6643+ * A value for the [mask-clip](https://www.w3.org/TR/css-masking-1/#the-mask-clip) property.
6644+ */
6645+export type MaskClip =
6646+ | {|
6647+ type: "geometry-box",
6648+ value: GeometryBox,
6649+ |}
6650+ | {|
6651+ type: "no-clip",
6652+ |};
6653+/**
6654+ * A value for the [mask-composite](https://www.w3.org/TR/css-masking-1/#the-mask-composite) property.
6655+ */
6656+export type MaskComposite = "add" | "subtract" | "intersect" | "exclude";
6657+/**
6658+ * A value for the [mask-type](https://www.w3.org/TR/css-masking-1/#the-mask-type) property.
6659+ */
6660+export type MaskType = "luminance" | "alpha";
6661+/**
6662+ * A value for the [mask-border-mode](https://www.w3.org/TR/css-masking-1/#the-mask-border-mode) property.
6663+ */
6664+export type MaskBorderMode = "luminance" | "alpha";
6665+/**
6666+ * A value for the [-webkit-mask-composite](https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-mask-composite) property.
6667+ *
6668+ * See also [MaskComposite](MaskComposite).
6669+ */
6670+export type WebKitMaskComposite =
6671+ | (
6672+ | "clear"
6673+ | "copy"
6674+ | "source-atop"
6675+ | "destination-over"
6676+ | "destination-in"
6677+ | "destination-out"
6678+ | "destination-atop"
6679+ )
6680+ | "source-over"
6681+ | "source-in"
6682+ | "source-out"
6683+ | "xor";
6684+/**
6685+ * A value for the [-webkit-mask-source-type](https://github.com/WebKit/WebKit/blob/6eece09a1c31e47489811edd003d1e36910e9fd3/Source/WebCore/css/CSSProperties.json#L6578-L6587) property.
6686+ *
6687+ * See also [MaskMode](MaskMode).
6688+ */
6689+export type WebKitMaskSourceType = "auto" | "luminance" | "alpha";
6690+/**
6691+ * A value for the [filter](https://drafts.fxtf.org/filter-effects-1/#FilterProperty) and [backdrop-filter](https://drafts.fxtf.org/filter-effects-2/#BackdropFilterProperty) properties.
6692+ */
6693+export type FilterList =
6694+ | {|
6695+ type: "none",
6696+ |}
6697+ | {|
6698+ type: "filters",
6699+ value: Filter[],
6700+ |};
6701+/**
6702+ * A [filter](https://drafts.fxtf.org/filter-effects-1/#filter-functions) function.
6703+ */
6704+export type Filter =
6705+ | {|
6706+ type: "blur",
6707+ value: Length,
6708+ |}
6709+ | {|
6710+ type: "brightness",
6711+ value: NumberOrPercentage,
6712+ |}
6713+ | {|
6714+ type: "contrast",
6715+ value: NumberOrPercentage,
6716+ |}
6717+ | {|
6718+ type: "grayscale",
6719+ value: NumberOrPercentage,
6720+ |}
6721+ | {|
6722+ type: "hue-rotate",
6723+ value: Angle,
6724+ |}
6725+ | {|
6726+ type: "invert",
6727+ value: NumberOrPercentage,
6728+ |}
6729+ | {|
6730+ type: "opacity",
6731+ value: NumberOrPercentage,
6732+ |}
6733+ | {|
6734+ type: "saturate",
6735+ value: NumberOrPercentage,
6736+ |}
6737+ | {|
6738+ type: "sepia",
6739+ value: NumberOrPercentage,
6740+ |}
6741+ | {|
6742+ type: "drop-shadow",
6743+ value: DropShadow,
6744+ |}
6745+ | {|
6746+ type: "url",
6747+ value: Url,
6748+ |};
6749+/**
6750+ * A value for the [z-index](https://drafts.csswg.org/css2/#z-index) property.
6751+ */
6752+export type ZIndex =
6753+ | {|
6754+ type: "auto",
6755+ |}
6756+ | {|
6757+ type: "integer",
6758+ value: number,
6759+ |};
6760+/**
6761+ * A value for the [container-type](https://drafts.csswg.org/css-contain-3/#container-type) property. Establishes the element as a query container for the purpose of container queries.
6762+ */
6763+export type ContainerType = "normal" | "inline-size" | "size";
6764+/**
6765+ * A value for the [container-name](https://drafts.csswg.org/css-contain-3/#container-name) property.
6766+ */
6767+export type ContainerNameList =
6768+ | {|
6769+ type: "none",
6770+ |}
6771+ | {|
6772+ type: "names",
6773+ value: String[],
6774+ |};
6775+/**
6776+ * A value for the [view-transition-name](https://drafts.csswg.org/css-view-transitions-1/#view-transition-name-prop) property.
6777+ */
6778+export type ViewTransitionName = "none" | "auto" | String;
6779+/**
6780+ * The `none` keyword, or a space-separated list of custom idents.
6781+ */
6782+export type NoneOrCustomIdentList = "none" | String[];
6783+/**
6784+ * A value for the [view-transition-group](https://drafts.csswg.org/css-view-transitions-2/#view-transition-group-prop) property.
6785+ */
6786+export type ViewTransitionGroup = "normal" | "contain" | "nearest" | String;
6787+/**
6788+ * A [CSS-wide keyword](https://drafts.csswg.org/css-cascade-5/#defaulting-keywords).
6789+ */
6790+export type CSSWideKeyword =
6791+ | "initial"
6792+ | "inherit"
6793+ | "unset"
6794+ | "revert"
6795+ | "revert-layer";
6796+/**
6797+ * A CSS custom property name.
6798+ */
6799+export type CustomPropertyName = String | String;
6800+export type SelectorComponent =
6801+ | {|
6802+ type: "combinator",
6803+ value: Combinator,
6804+ |}
6805+ | {|
6806+ type: "universal",
6807+ |}
6808+ | (
6809+ | {|
6810+ type: "namespace",
6811+ kind: "none",
6812+ |}
6813+ | {|
6814+ type: "namespace",
6815+ kind: "any",
6816+ |}
6817+ | {|
6818+ type: "namespace",
6819+ kind: "named",
6820+ prefix: string,
6821+ |}
6822+ )
6823+ | {|
6824+ name: string,
6825+ type: "type",
6826+ |}
6827+ | {|
6828+ name: string,
6829+ type: "id",
6830+ |}
6831+ | {|
6832+ name: string,
6833+ type: "class",
6834+ |}
6835+ | {|
6836+ name: string,
6837+ namespace?: NamespaceConstraint | null,
6838+ operation?: AttrOperation | null,
6839+ type: "attribute",
6840+ |}
6841+ | {|
6842+ ...{|
6843+ type: "pseudo-class",
6844+ |},
6845+ ...TSPseudoClass | PseudoClass,
6846+ |}
6847+ | {|
6848+ ...{|
6849+ type: "pseudo-element",
6850+ |},
6851+ ...BuiltinPseudoElement | PseudoElement,
6852+ |}
6853+ | {|
6854+ type: "nesting",
6855+ |};
6856+export type Combinator =
6857+ | ("child" | "descendant" | "next-sibling" | "later-sibling")
6858+ | "pseudo-element"
6859+ | "slot-assignment"
6860+ | "part"
6861+ | "deep-descendant"
6862+ | "deep";
6863+export type NamespaceConstraint =
6864+ | {|
6865+ type: "any",
6866+ |}
6867+ | {|
6868+ prefix: string,
6869+ type: "specific",
6870+ url: string,
6871+ |};
6872+export type ParsedCaseSensitivity =
6873+ | "explicit-case-sensitive"
6874+ | "ascii-case-insensitive"
6875+ | "case-sensitive"
6876+ | "ascii-case-insensitive-if-in-html-element-in-html-document";
6877+export type AttrSelectorOperator =
6878+ | "equal"
6879+ | "includes"
6880+ | "dash-match"
6881+ | "prefix"
6882+ | "substring"
6883+ | "suffix";
6884+export type TSPseudoClass =
6885+ | {|
6886+ kind: "not",
6887+ selectors: Selector[],
6888+ |}
6889+ | {|
6890+ kind: "first-child",
6891+ |}
6892+ | {|
6893+ kind: "last-child",
6894+ |}
6895+ | {|
6896+ kind: "only-child",
6897+ |}
6898+ | {|
6899+ kind: "root",
6900+ |}
6901+ | {|
6902+ kind: "empty",
6903+ |}
6904+ | {|
6905+ kind: "scope",
6906+ |}
6907+ | {|
6908+ a: number,
6909+ b: number,
6910+ kind: "nth-child",
6911+ of?: Selector[] | null,
6912+ |}
6913+ | {|
6914+ a: number,
6915+ b: number,
6916+ kind: "nth-last-child",
6917+ of?: Selector[] | null,
6918+ |}
6919+ | {|
6920+ a: number,
6921+ b: number,
6922+ kind: "nth-col",
6923+ |}
6924+ | {|
6925+ a: number,
6926+ b: number,
6927+ kind: "nth-last-col",
6928+ |}
6929+ | {|
6930+ a: number,
6931+ b: number,
6932+ kind: "nth-of-type",
6933+ |}
6934+ | {|
6935+ a: number,
6936+ b: number,
6937+ kind: "nth-last-of-type",
6938+ |}
6939+ | {|
6940+ kind: "first-of-type",
6941+ |}
6942+ | {|
6943+ kind: "last-of-type",
6944+ |}
6945+ | {|
6946+ kind: "only-of-type",
6947+ |}
6948+ | {|
6949+ kind: "host",
6950+ selectors?: Selector | null,
6951+ |}
6952+ | {|
6953+ kind: "where",
6954+ selectors: Selector[],
6955+ |}
6956+ | {|
6957+ kind: "is",
6958+ selectors: Selector[],
6959+ |}
6960+ | {|
6961+ kind: "any",
6962+ selectors: Selector[],
6963+ vendorPrefix: VendorPrefix,
6964+ |}
6965+ | {|
6966+ kind: "has",
6967+ selectors: Selector[],
6968+ |};
6969+/**
6970+ * A pseudo class.
6971+ */
6972+export type PseudoClass =
6973+ | {|
6974+ kind: "lang",
6975+
6976+ /**
6977+ * A list of language codes.
6978+ */
6979+ languages: String[],
6980+ |}
6981+ | {|
6982+ /**
6983+ * A direction.
6984+ */
6985+ direction: Direction,
6986+ kind: "dir",
6987+ |}
6988+ | {|
6989+ kind: "hover",
6990+ |}
6991+ | {|
6992+ kind: "active",
6993+ |}
6994+ | {|
6995+ kind: "focus",
6996+ |}
6997+ | {|
6998+ kind: "focus-visible",
6999+ |}
7000+ | {|
7001+ kind: "focus-within",
7002+ |}
7003+ | {|
7004+ kind: "current",
7005+ |}
7006+ | {|
7007+ kind: "past",
7008+ |}
7009+ | {|
7010+ kind: "future",
7011+ |}
7012+ | {|
7013+ kind: "playing",
7014+ |}
7015+ | {|
7016+ kind: "paused",
7017+ |}
7018+ | {|
7019+ kind: "seeking",
7020+ |}
7021+ | {|
7022+ kind: "buffering",
7023+ |}
7024+ | {|
7025+ kind: "stalled",
7026+ |}
7027+ | {|
7028+ kind: "muted",
7029+ |}
7030+ | {|
7031+ kind: "volume-locked",
7032+ |}
7033+ | {|
7034+ kind: "fullscreen",
7035+ vendorPrefix: VendorPrefix,
7036+ |}
7037+ | {|
7038+ kind: "open",
7039+ |}
7040+ | {|
7041+ kind: "closed",
7042+ |}
7043+ | {|
7044+ kind: "modal",
7045+ |}
7046+ | {|
7047+ kind: "picture-in-picture",
7048+ |}
7049+ | {|
7050+ kind: "popover-open",
7051+ |}
7052+ | {|
7053+ kind: "defined",
7054+ |}
7055+ | {|
7056+ kind: "any-link",
7057+ vendorPrefix: VendorPrefix,
7058+ |}
7059+ | {|
7060+ kind: "link",
7061+ |}
7062+ | {|
7063+ kind: "local-link",
7064+ |}
7065+ | {|
7066+ kind: "target",
7067+ |}
7068+ | {|
7069+ kind: "target-within",
7070+ |}
7071+ | {|
7072+ kind: "visited",
7073+ |}
7074+ | {|
7075+ kind: "enabled",
7076+ |}
7077+ | {|
7078+ kind: "disabled",
7079+ |}
7080+ | {|
7081+ kind: "read-only",
7082+ vendorPrefix: VendorPrefix,
7083+ |}
7084+ | {|
7085+ kind: "read-write",
7086+ vendorPrefix: VendorPrefix,
7087+ |}
7088+ | {|
7089+ kind: "placeholder-shown",
7090+ vendorPrefix: VendorPrefix,
7091+ |}
7092+ | {|
7093+ kind: "default",
7094+ |}
7095+ | {|
7096+ kind: "checked",
7097+ |}
7098+ | {|
7099+ kind: "indeterminate",
7100+ |}
7101+ | {|
7102+ kind: "blank",
7103+ |}
7104+ | {|
7105+ kind: "valid",
7106+ |}
7107+ | {|
7108+ kind: "invalid",
7109+ |}
7110+ | {|
7111+ kind: "in-range",
7112+ |}
7113+ | {|
7114+ kind: "out-of-range",
7115+ |}
7116+ | {|
7117+ kind: "required",
7118+ |}
7119+ | {|
7120+ kind: "optional",
7121+ |}
7122+ | {|
7123+ kind: "user-valid",
7124+ |}
7125+ | {|
7126+ kind: "user-invalid",
7127+ |}
7128+ | {|
7129+ kind: "autofill",
7130+ vendorPrefix: VendorPrefix,
7131+ |}
7132+ | {|
7133+ kind: "active-view-transition",
7134+ |}
7135+ | {|
7136+ kind: "active-view-transition-type",
7137+
7138+ /**
7139+ * A view transition type.
7140+ */
7141+ type: String[],
7142+ |}
7143+ | {|
7144+ kind: "local",
7145+
7146+ /**
7147+ * A local selector.
7148+ */
7149+ selector: Selector,
7150+ |}
7151+ | {|
7152+ kind: "global",
7153+
7154+ /**
7155+ * A global selector.
7156+ */
7157+ selector: Selector,
7158+ |}
7159+ | {|
7160+ kind: "webkit-scrollbar",
7161+ value: WebKitScrollbarPseudoClass,
7162+ |}
7163+ | {|
7164+ kind: "custom",
7165+
7166+ /**
7167+ * The pseudo class name.
7168+ */
7169+ name: String,
7170+ |}
7171+ | {|
7172+ /**
7173+ * The arguments of the pseudo class function.
7174+ */
7175+ arguments: TokenOrValue[],
7176+ kind: "custom-function",
7177+
7178+ /**
7179+ * The pseudo class name.
7180+ */
7181+ name: String,
7182+ |};
7183+/**
7184+ * The [:dir()](https://drafts.csswg.org/selectors-4/#the-dir-pseudo) pseudo class.
7185+ */
7186+export type Direction = "ltr" | "rtl";
7187+/**
7188+ * A [webkit scrollbar](https://webkit.org/blog/363/styling-scrollbars/) pseudo class.
7189+ */
7190+export type WebKitScrollbarPseudoClass =
7191+ | "horizontal"
7192+ | "vertical"
7193+ | "decrement"
7194+ | "increment"
7195+ | "start"
7196+ | "end"
7197+ | "double-button"
7198+ | "single-button"
7199+ | "no-button"
7200+ | "corner-present"
7201+ | "window-inactive";
7202+export type BuiltinPseudoElement =
7203+ | {|
7204+ kind: "slotted",
7205+ selector: Selector,
7206+ |}
7207+ | {|
7208+ kind: "part",
7209+ names: string[],
7210+ |};
7211+/**
7212+ * A pseudo element.
7213+ */
7214+export type PseudoElement =
7215+ | {|
7216+ kind: "after",
7217+ |}
7218+ | {|
7219+ kind: "before",
7220+ |}
7221+ | {|
7222+ kind: "first-line",
7223+ |}
7224+ | {|
7225+ kind: "first-letter",
7226+ |}
7227+ | {|
7228+ kind: "selection",
7229+ vendorPrefix: VendorPrefix,
7230+ |}
7231+ | {|
7232+ kind: "placeholder",
7233+ vendorPrefix: VendorPrefix,
7234+ |}
7235+ | {|
7236+ kind: "marker",
7237+ |}
7238+ | {|
7239+ kind: "backdrop",
7240+ vendorPrefix: VendorPrefix,
7241+ |}
7242+ | {|
7243+ kind: "file-selector-button",
7244+ vendorPrefix: VendorPrefix,
7245+ |}
7246+ | {|
7247+ kind: "webkit-scrollbar",
7248+ value: WebKitScrollbarPseudoElement,
7249+ |}
7250+ | {|
7251+ kind: "cue",
7252+ |}
7253+ | {|
7254+ kind: "cue-region",
7255+ |}
7256+ | {|
7257+ kind: "cue-function",
7258+
7259+ /**
7260+ * The selector argument.
7261+ */
7262+ selector: Selector,
7263+ |}
7264+ | {|
7265+ kind: "cue-region-function",
7266+
7267+ /**
7268+ * The selector argument.
7269+ */
7270+ selector: Selector,
7271+ |}
7272+ | {|
7273+ kind: "view-transition",
7274+ |}
7275+ | {|
7276+ kind: "view-transition-group",
7277+
7278+ /**
7279+ * A part name selector.
7280+ */
7281+ part: ViewTransitionPartSelector,
7282+ |}
7283+ | {|
7284+ kind: "view-transition-image-pair",
7285+
7286+ /**
7287+ * A part name selector.
7288+ */
7289+ part: ViewTransitionPartSelector,
7290+ |}
7291+ | {|
7292+ kind: "view-transition-old",
7293+
7294+ /**
7295+ * A part name selector.
7296+ */
7297+ part: ViewTransitionPartSelector,
7298+ |}
7299+ | {|
7300+ kind: "view-transition-new",
7301+
7302+ /**
7303+ * A part name selector.
7304+ */
7305+ part: ViewTransitionPartSelector,
7306+ |}
7307+ | {|
7308+ kind: "custom",
7309+
7310+ /**
7311+ * The name of the pseudo element.
7312+ */
7313+ name: String,
7314+ |}
7315+ | {|
7316+ /**
7317+ * The arguments of the pseudo element function.
7318+ */
7319+ arguments: TokenOrValue[],
7320+ kind: "custom-function",
7321+
7322+ /**
7323+ * The name of the pseudo element.
7324+ */
7325+ name: String,
7326+ |};
7327+/**
7328+ * A [webkit scrollbar](https://webkit.org/blog/363/styling-scrollbars/) pseudo element.
7329+ */
7330+export type WebKitScrollbarPseudoElement =
7331+ | "scrollbar"
7332+ | "button"
7333+ | "track"
7334+ | "track-piece"
7335+ | "thumb"
7336+ | "corner"
7337+ | "resizer";
7338+export type ViewTransitionPartName = string;
7339+export type Selector = SelectorComponent[];
7340+export type SelectorList = Selector[];
7341+/**
7342+ * A [keyframe selector](https://drafts.csswg.org/css-animations/#typedef-keyframe-selector) within an `@keyframes` rule.
7343+ */
7344+export type KeyframeSelector =
7345+ | {|
7346+ type: "percentage",
7347+ value: number,
7348+ |}
7349+ | {|
7350+ type: "from",
7351+ |}
7352+ | {|
7353+ type: "to",
7354+ |}
7355+ | {|
7356+ type: "timeline-range-percentage",
7357+ value: TimelineRangePercentage,
7358+ |};
7359+/**
7360+ * KeyframesName
7361+ */
7362+export type KeyframesName =
7363+ | {|
7364+ type: "ident",
7365+ value: String,
7366+ |}
7367+ | {|
7368+ type: "custom",
7369+ value: String,
7370+ |};
7371+/**
7372+ * A property within an `@font-face` rule.
7373+ *
7374+ * See [FontFaceRule](FontFaceRule).
7375+ */
7376+export type FontFaceProperty =
7377+ | {|
7378+ type: "source",
7379+ value: Source[],
7380+ |}
7381+ | {|
7382+ type: "font-family",
7383+ value: FontFamily,
7384+ |}
7385+ | {|
7386+ type: "font-style",
7387+ value: FontStyle2,
7388+ |}
7389+ | {|
7390+ type: "font-weight",
7391+ value: Size2DFor_FontWeight,
7392+ |}
7393+ | {|
7394+ type: "font-stretch",
7395+ value: Size2DFor_FontStretch,
7396+ |}
7397+ | {|
7398+ type: "unicode-range",
7399+ value: UnicodeRange[],
7400+ |}
7401+ | {|
7402+ type: "custom",
7403+ value: CustomProperty,
7404+ |};
7405+/**
7406+ * A value for the [src](https://drafts.csswg.org/css-fonts/#src-desc) property in an `@font-face` rule.
7407+ */
7408+export type Source =
7409+ | {|
7410+ type: "url",
7411+ value: UrlSource,
7412+ |}
7413+ | {|
7414+ type: "local",
7415+ value: FontFamily,
7416+ |};
7417+/**
7418+ * A font format keyword in the `format()` function of the the [src](https://drafts.csswg.org/css-fonts/#src-desc) property of an `@font-face` rule.
7419+ */
7420+export type FontFormat =
7421+ | {|
7422+ type: "woff",
7423+ |}
7424+ | {|
7425+ type: "woff2",
7426+ |}
7427+ | {|
7428+ type: "truetype",
7429+ |}
7430+ | {|
7431+ type: "opentype",
7432+ |}
7433+ | {|
7434+ type: "embedded-opentype",
7435+ |}
7436+ | {|
7437+ type: "collection",
7438+ |}
7439+ | {|
7440+ type: "svg",
7441+ |}
7442+ | {|
7443+ type: "string",
7444+ value: String,
7445+ |};
7446+/**
7447+ * A font format keyword in the `format()` function of the the [src](https://drafts.csswg.org/css-fonts/#src-desc) property of an `@font-face` rule.
7448+ */
7449+export type FontTechnology =
7450+ | "features-opentype"
7451+ | "features-aat"
7452+ | "features-graphite"
7453+ | "color-colrv0"
7454+ | "color-colrv1"
7455+ | "color-svg"
7456+ | "color-sbix"
7457+ | "color-cbdt"
7458+ | "variations"
7459+ | "palettes"
7460+ | "incremental";
7461+/**
7462+ * A value for the [font-style](https://w3c.github.io/csswg-drafts/css-fonts/#descdef-font-face-font-style) descriptor in an `@font-face` rule.
7463+ */
7464+export type FontStyle2 =
7465+ | {|
7466+ type: "normal",
7467+ |}
7468+ | {|
7469+ type: "italic",
7470+ |}
7471+ | {|
7472+ type: "oblique",
7473+ value: Size2DFor_Angle,
7474+ |};
7475+/**
7476+ * A generic value that represents a value with two components, e.g. a border radius.
7477+ *
7478+ * When serialized, only a single component will be written if both are equal.
7479+ * @minItems 2
7480+ * @maxItems 2
7481+ */
7482+export type Size2DFor_Angle = [Angle, Angle];
7483+/**
7484+ * A generic value that represents a value with two components, e.g. a border radius.
7485+ *
7486+ * When serialized, only a single component will be written if both are equal.
7487+ * @minItems 2
7488+ * @maxItems 2
7489+ */
7490+export type Size2DFor_FontWeight = [FontWeight, FontWeight];
7491+/**
7492+ * A generic value that represents a value with two components, e.g. a border radius.
7493+ *
7494+ * When serialized, only a single component will be written if both are equal.
7495+ * @minItems 2
7496+ * @maxItems 2
7497+ */
7498+export type Size2DFor_FontStretch = [FontStretch, FontStretch];
7499+/**
7500+ * A property within an `@font-palette-values` rule.
7501+ *
7502+ * See [FontPaletteValuesRule](FontPaletteValuesRule).
7503+ */
7504+export type FontPaletteValuesProperty =
7505+ | {|
7506+ type: "font-family",
7507+ value: FontFamily,
7508+ |}
7509+ | {|
7510+ type: "base-palette",
7511+ value: BasePalette,
7512+ |}
7513+ | {|
7514+ type: "override-colors",
7515+ value: OverrideColors[],
7516+ |}
7517+ | {|
7518+ type: "custom",
7519+ value: CustomProperty,
7520+ |};
7521+/**
7522+ * A value for the [base-palette](https://drafts.csswg.org/css-fonts-4/#base-palette-desc) property in an `@font-palette-values` rule.
7523+ */
7524+export type BasePalette =
7525+ | {|
7526+ type: "light",
7527+ |}
7528+ | {|
7529+ type: "dark",
7530+ |}
7531+ | {|
7532+ type: "integer",
7533+ value: number,
7534+ |};
7535+/**
7536+ * The name of the `@font-feature-values` sub-rule. font-feature-value-type = <@stylistic> | <@historical-forms> | <@styleset> | <@character-variant> | <@swash> | <@ornaments> | <@annotation>
7537+ */
7538+export type FontFeatureSubruleType =
7539+ | "stylistic"
7540+ | "historical-forms"
7541+ | "styleset"
7542+ | "character-variant"
7543+ | "swash"
7544+ | "ornaments"
7545+ | "annotation";
7546+/**
7547+ * A [page margin box](https://www.w3.org/TR/css-page-3/#margin-boxes).
7548+ */
7549+export type PageMarginBox =
7550+ | "top-left-corner"
7551+ | "top-left"
7552+ | "top-center"
7553+ | "top-right"
7554+ | "top-right-corner"
7555+ | "left-top"
7556+ | "left-middle"
7557+ | "left-bottom"
7558+ | "right-top"
7559+ | "right-middle"
7560+ | "right-bottom"
7561+ | "bottom-left-corner"
7562+ | "bottom-left"
7563+ | "bottom-center"
7564+ | "bottom-right"
7565+ | "bottom-right-corner";
7566+/**
7567+ * A page pseudo class within an `@page` selector.
7568+ *
7569+ * See [PageSelector](PageSelector).
7570+ */
7571+export type PagePseudoClass = "left" | "right" | "first" | "last" | "blank";
7572+/**
7573+ * A parsed value for a [SyntaxComponent](SyntaxComponent).
7574+ */
7575+export type ParsedComponent =
7576+ | {|
7577+ type: "length",
7578+ value: Length,
7579+ |}
7580+ | {|
7581+ type: "number",
7582+ value: number,
7583+ |}
7584+ | {|
7585+ type: "percentage",
7586+ value: number,
7587+ |}
7588+ | {|
7589+ type: "length-percentage",
7590+ value: DimensionPercentageFor_LengthValue,
7591+ |}
7592+ | {|
7593+ type: "color",
7594+ value: CssColor,
7595+ |}
7596+ | {|
7597+ type: "image",
7598+ value: Image,
7599+ |}
7600+ | {|
7601+ type: "url",
7602+ value: Url,
7603+ |}
7604+ | {|
7605+ type: "integer",
7606+ value: number,
7607+ |}
7608+ | {|
7609+ type: "angle",
7610+ value: Angle,
7611+ |}
7612+ | {|
7613+ type: "time",
7614+ value: Time,
7615+ |}
7616+ | {|
7617+ type: "resolution",
7618+ value: Resolution,
7619+ |}
7620+ | {|
7621+ type: "transform-function",
7622+ value: Transform,
7623+ |}
7624+ | {|
7625+ type: "transform-list",
7626+ value: Transform[],
7627+ |}
7628+ | {|
7629+ type: "custom-ident",
7630+ value: String,
7631+ |}
7632+ | {|
7633+ type: "literal",
7634+ value: String,
7635+ |}
7636+ | {|
7637+ type: "repeated",
7638+ value: {|
7639+ /**
7640+ * The components to repeat.
7641+ */
7642+ components: ParsedComponent[],
7643+
7644+ /**
7645+ * A multiplier describing how the components repeat.
7646+ */
7647+ multiplier: Multiplier,
7648+ |},
7649+ |}
7650+ | {|
7651+ type: "token-list",
7652+ value: TokenOrValue[],
7653+ |};
7654+/**
7655+ * A [multiplier](https://drafts.css-houdini.org/css-properties-values-api/#multipliers) for a [SyntaxComponent](SyntaxComponent). Indicates whether and how the component may be repeated.
7656+ */
7657+export type Multiplier =
7658+ | {|
7659+ type: "none",
7660+ |}
7661+ | {|
7662+ type: "space",
7663+ |}
7664+ | {|
7665+ type: "comma",
7666+ |};
7667+/**
7668+ * A CSS [syntax string](https://drafts.css-houdini.org/css-properties-values-api/#syntax-strings) used to define the grammar for a registered custom property.
7669+ */
7670+export type SyntaxString =
7671+ | {|
7672+ type: "components",
7673+ value: SyntaxComponent[],
7674+ |}
7675+ | {|
7676+ type: "universal",
7677+ |};
7678+/**
7679+ * A [syntax component component name](https://drafts.css-houdini.org/css-properties-values-api/#supported-names).
7680+ */
7681+export type SyntaxComponentKind =
7682+ | {|
7683+ type: "length",
7684+ |}
7685+ | {|
7686+ type: "number",
7687+ |}
7688+ | {|
7689+ type: "percentage",
7690+ |}
7691+ | {|
7692+ type: "length-percentage",
7693+ |}
7694+ | {|
7695+ type: "color",
7696+ |}
7697+ | {|
7698+ type: "image",
7699+ |}
7700+ | {|
7701+ type: "url",
7702+ |}
7703+ | {|
7704+ type: "integer",
7705+ |}
7706+ | {|
7707+ type: "angle",
7708+ |}
7709+ | {|
7710+ type: "time",
7711+ |}
7712+ | {|
7713+ type: "resolution",
7714+ |}
7715+ | {|
7716+ type: "transform-function",
7717+ |}
7718+ | {|
7719+ type: "transform-list",
7720+ |}
7721+ | {|
7722+ type: "custom-ident",
7723+ |}
7724+ | {|
7725+ type: "literal",
7726+ value: string,
7727+ |};
7728+/**
7729+ * Represents a container condition.
7730+ */
7731+export type ContainerCondition<D = Declaration> =
7732+ | {|
7733+ type: "feature",
7734+ value: QueryFeatureFor_ContainerSizeFeatureId,
7735+ |}
7736+ | {|
7737+ type: "not",
7738+ value: ContainerCondition<D>,
7739+ |}
7740+ | {|
7741+ /**
7742+ * The conditions for the operator.
7743+ */
7744+ conditions: ContainerCondition<D>[],
7745+
7746+ /**
7747+ * The operator for the conditions.
7748+ */
7749+ operator: Operator,
7750+ type: "operation",
7751+ |}
7752+ | {|
7753+ type: "style",
7754+ value: StyleQuery<D>,
7755+ |};
7756+/**
7757+ * A generic media feature or container feature.
7758+ */
7759+export type QueryFeatureFor_ContainerSizeFeatureId =
7760+ | {|
7761+ /**
7762+ * The name of the feature.
7763+ */
7764+ name: MediaFeatureNameFor_ContainerSizeFeatureId,
7765+ type: "plain",
7766+
7767+ /**
7768+ * The feature value.
7769+ */
7770+ value: MediaFeatureValue,
7771+ |}
7772+ | {|
7773+ /**
7774+ * The name of the feature.
7775+ */
7776+ name: MediaFeatureNameFor_ContainerSizeFeatureId,
7777+ type: "boolean",
7778+ |}
7779+ | {|
7780+ /**
7781+ * The name of the feature.
7782+ */
7783+ name: MediaFeatureNameFor_ContainerSizeFeatureId,
7784+
7785+ /**
7786+ * A comparator.
7787+ */
7788+ operator: MediaFeatureComparison,
7789+ type: "range",
7790+
7791+ /**
7792+ * The feature value.
7793+ */
7794+ value: MediaFeatureValue,
7795+ |}
7796+ | {|
7797+ /**
7798+ * The end value.
7799+ */
7800+ end: MediaFeatureValue,
7801+
7802+ /**
7803+ * A comparator for the end value.
7804+ */
7805+ endOperator: MediaFeatureComparison,
7806+
7807+ /**
7808+ * The name of the feature.
7809+ */
7810+ name: MediaFeatureNameFor_ContainerSizeFeatureId,
7811+
7812+ /**
7813+ * A start value.
7814+ */
7815+ start: MediaFeatureValue,
7816+
7817+ /**
7818+ * A comparator for the start value.
7819+ */
7820+ startOperator: MediaFeatureComparison,
7821+ type: "interval",
7822+ |};
7823+/**
7824+ * A media feature name.
7825+ */
7826+export type MediaFeatureNameFor_ContainerSizeFeatureId =
7827+ | ContainerSizeFeatureId
7828+ | String
7829+ | String;
7830+/**
7831+ * A container query size feature identifier.
7832+ */
7833+export type ContainerSizeFeatureId =
7834+ | "width"
7835+ | "height"
7836+ | "inline-size"
7837+ | "block-size"
7838+ | "aspect-ratio"
7839+ | "orientation";
7840+/**
7841+ * Represents a style query within a container condition.
7842+ */
7843+export type StyleQuery<D = Declaration> =
7844+ | {|
7845+ type: "declaration",
7846+ value: D,
7847+ |}
7848+ | {|
7849+ type: "property",
7850+ value: PropertyId,
7851+ |}
7852+ | {|
7853+ type: "not",
7854+ value: StyleQuery<D>,
7855+ |}
7856+ | {|
7857+ /**
7858+ * The conditions for the operator.
7859+ */
7860+ conditions: StyleQuery<D>[],
7861+
7862+ /**
7863+ * The operator for the conditions.
7864+ */
7865+ operator: Operator,
7866+ type: "operation",
7867+ |};
7868+/**
7869+ * A property within a `@view-transition` rule.
7870+ *
7871+ * See [ViewTransitionRule](ViewTransitionRule).
7872+ */
7873+export type ViewTransitionProperty =
7874+ | {|
7875+ property: "navigation",
7876+ value: Navigation,
7877+ |}
7878+ | {|
7879+ property: "types",
7880+ value: NoneOrCustomIdentList,
7881+ |}
7882+ | {|
7883+ property: "custom",
7884+ value: CustomProperty,
7885+ |};
7886+/**
7887+ * A value for the [navigation](https://drafts.csswg.org/css-view-transitions-2/#view-transition-navigation-descriptor) property in a `@view-transition` rule.
7888+ */
7889+export type Navigation = "none" | "auto";
7890+export type DefaultAtRule = null;
7891+/**
7892+ * A CSS style sheet, representing a `.css` file or inline `<style>` element.
7893+ *
7894+ * Style sheets can be parsed from a string, constructed from scratch, or created using a [Bundler](super::bundler::Bundler). Then, they can be minified and transformed for a set of target browsers, and serialied to a string.
7895+ *
7896+ * # Example
7897+ *
7898+ * ``` use lightningcss::stylesheet::{ StyleSheet, ParserOptions, MinifyOptions, PrinterOptions };
7899+ *
7900+ * // Parse a style sheet from a string. let mut stylesheet = StyleSheet::parse( r#" .foo { color: red; }
7901+ *
7902+ * .bar { color: red; } "#, ParserOptions::default() ).unwrap();
7903+ *
7904+ * // Minify the stylesheet. stylesheet.minify(MinifyOptions::default()).unwrap();
7905+ *
7906+ * // Serialize it to a string. let res = stylesheet.to_css(PrinterOptions::default()).unwrap(); assert_eq!(res.code, ".foo, .bar {\n color: red;\n}\n"); ```
7907+ */
7908+export interface StyleSheet<D = Declaration, M = MediaQuery> {
7909+ /**
7910+ * The license comments that appeared at the start of the file.
7911+ */
7912+ licenseComments: String[];
7913+
7914+ /**
7915+ * A list of top-level rules within the style sheet.
7916+ */
7917+ rules: Rule<D, M>[];
7918+
7919+ /**
7920+ * The source map URL extracted from the original style sheet.
7921+ */
7922+ sourceMapUrls: (string | null)[];
7923+
7924+ /**
7925+ * A list of file names for all source files included within the style sheet. Sources are referenced by index in the `loc` property of each rule.
7926+ */
7927+ sources: string[];
7928+}
7929+/**
7930+ * A [@media](https://drafts.csswg.org/css-conditional-3/#at-media) rule.
7931+ */
7932+export interface MediaRule<D = Declaration, M = MediaQuery> {
7933+ /**
7934+ * The location of the rule in the source file.
7935+ */
7936+ loc: Location2;
7937+
7938+ /**
7939+ * The media query list.
7940+ */
7941+ query: MediaList<M>;
7942+
7943+ /**
7944+ * The rules within the `@media` rule.
7945+ */
7946+ rules: Rule<D, M>[];
7947+}
7948+/**
7949+ * A source location.
7950+ */
7951+export interface Location2 {
7952+ /**
7953+ * The column number within a line, starting at 1 for first the character of the line. Column numbers are counted in UTF-16 code units.
7954+ */
7955+ column: number;
7956+
7957+ /**
7958+ * The line number, starting at 0.
7959+ */
7960+ line: number;
7961+
7962+ /**
7963+ * The index of the source file within the source map.
7964+ */
7965+ source_index: number;
7966+}
7967+/**
7968+ * A [media query list](https://drafts.csswg.org/mediaqueries/#mq-list).
7969+ */
7970+export interface MediaList<M = MediaQuery> {
7971+ /**
7972+ * The list of media queries.
7973+ */
7974+ mediaQueries: M[];
7975+}
7976+/**
7977+ * A [media query](https://drafts.csswg.org/mediaqueries/#media).
7978+ */
7979+export interface MediaQuery {
7980+ /**
7981+ * The condition that this media query contains. This cannot have `or` in the first level.
7982+ */
7983+ condition?: MediaCondition | null;
7984+
7985+ /**
7986+ * The media type for this query, that can be known, unknown, or "all".
7987+ */
7988+ mediaType: MediaType;
7989+
7990+ /**
7991+ * The qualifier for this query.
7992+ */
7993+ qualifier?: Qualifier | null;
7994+}
7995+export interface LengthValue {
7996+ /**
7997+ * The length unit.
7998+ */
7999+ unit: LengthUnit;
8000+
8001+ /**
8002+ * The length value.
8003+ */
8004+ value: number;
8005+}
8006+/**
8007+ * A CSS environment variable reference.
8008+ */
8009+export interface EnvironmentVariable {
8010+ /**
8011+ * A fallback value in case the variable is not defined.
8012+ */
8013+ fallback?: TokenOrValue[] | null;
8014+
8015+ /**
8016+ * Optional indices into the dimensions of the environment variable.
8017+ */
8018+ indices?: number[];
8019+
8020+ /**
8021+ * The environment variable name.
8022+ */
8023+ name: EnvironmentVariableName;
8024+}
8025+/**
8026+ * A CSS [url()](https://www.w3.org/TR/css-values-4/#urls) value and its source location.
8027+ */
8028+export interface Url {
8029+ /**
8030+ * The location where the `url()` was seen in the CSS source file.
8031+ */
8032+ loc: Location;
8033+
8034+ /**
8035+ * The url string.
8036+ */
8037+ url: String;
8038+}
8039+/**
8040+ * A line and column position within a source file.
8041+ */
8042+export interface Location {
8043+ /**
8044+ * The column number, starting from 1.
8045+ */
8046+ column: number;
8047+
8048+ /**
8049+ * The line number, starting from 1.
8050+ */
8051+ line: number;
8052+}
8053+/**
8054+ * A CSS variable reference.
8055+ */
8056+export interface Variable {
8057+ /**
8058+ * A fallback value in case the variable is not defined.
8059+ */
8060+ fallback?: TokenOrValue[] | null;
8061+
8062+ /**
8063+ * The variable name.
8064+ */
8065+ name: DashedIdentReference;
8066+}
8067+/**
8068+ * A CSS [`<dashed-ident>`](https://www.w3.org/TR/css-values-4/#dashed-idents) reference.
8069+ *
8070+ * Dashed idents are used in cases where an identifier can be either author defined _or_ CSS-defined. Author defined idents must start with two dash characters ("--") or parsing will fail.
8071+ *
8072+ * In CSS modules, when the `dashed_idents` option is enabled, the identifier may be followed by the `from` keyword and an argument indicating where the referenced identifier is declared (e.g. a filename).
8073+ */
8074+export interface DashedIdentReference {
8075+ /**
8076+ * CSS modules extension: the filename where the variable is defined. Only enabled when the CSS modules `dashed_idents` option is turned on.
8077+ */
8078+ from?: Specifier | null;
8079+
8080+ /**
8081+ * The referenced identifier.
8082+ */
8083+ ident: String;
8084+}
8085+/**
8086+ * A custom CSS function.
8087+ */
8088+export interface Function {
8089+ /**
8090+ * The function arguments.
8091+ */
8092+ arguments: TokenOrValue[];
8093+
8094+ /**
8095+ * The function name.
8096+ */
8097+ name: String;
8098+}
8099+/**
8100+ * A [@import](https://drafts.csswg.org/css-cascade/#at-import) rule.
8101+ */
8102+export interface ImportRule<M = MediaQuery> {
8103+ /**
8104+ * An optional cascade layer name, or `None` for an anonymous layer.
8105+ */
8106+ layer?: String[] | null;
8107+
8108+ /**
8109+ * The location of the rule in the source file.
8110+ */
8111+ loc: Location2;
8112+
8113+ /**
8114+ * A media query.
8115+ */
8116+ media?: MediaList<M>;
8117+
8118+ /**
8119+ * An optional `supports()` condition.
8120+ */
8121+ supports?: SupportsCondition | null;
8122+
8123+ /**
8124+ * The url to import.
8125+ */
8126+ url: String;
8127+}
8128+/**
8129+ * A CSS [style rule](https://drafts.csswg.org/css-syntax/#style-rules).
8130+ */
8131+export interface StyleRule<D = Declaration, M = MediaQuery> {
8132+ /**
8133+ * The declarations within the style rule.
8134+ */
8135+ declarations?: DeclarationBlock<D>;
8136+
8137+ /**
8138+ * The location of the rule in the source file.
8139+ */
8140+ loc: Location2;
8141+
8142+ /**
8143+ * Nested rules within the style rule.
8144+ */
8145+ rules?: Rule<D, M>[];
8146+
8147+ /**
8148+ * The selectors for the style rule.
8149+ */
8150+ selectors: SelectorList;
8151+}
8152+/**
8153+ * A CSS declaration block.
8154+ *
8155+ * Properties are separated into a list of `!important` declararations, and a list of normal declarations. This reduces memory usage compared with storing a boolean along with each property.
8156+ */
8157+export interface DeclarationBlock<D = Declaration> {
8158+ /**
8159+ * A list of normal declarations in the block.
8160+ */
8161+ declarations?: D[];
8162+
8163+ /**
8164+ * A list of `!important` declarations in the block.
8165+ */
8166+ importantDeclarations?: D[];
8167+}
8168+/**
8169+ * A CSS [`<position>`](https://www.w3.org/TR/css3-values/#position) value, as used in the `background-position` property, gradients, masks, etc.
8170+ */
8171+export interface Position {
8172+ /**
8173+ * The x-position.
8174+ */
8175+ x: PositionComponentFor_HorizontalPositionKeyword;
8176+
8177+ /**
8178+ * The y-position.
8179+ */
8180+ y: PositionComponentFor_VerticalPositionKeyword;
8181+}
8182+/**
8183+ * An x/y position within a legacy `-webkit-gradient()`.
8184+ */
8185+export interface WebKitGradientPoint {
8186+ /**
8187+ * The x-position.
8188+ */
8189+ x: WebKitGradientPointComponentFor_HorizontalPositionKeyword;
8190+
8191+ /**
8192+ * The y-position.
8193+ */
8194+ y: WebKitGradientPointComponentFor_VerticalPositionKeyword;
8195+}
8196+/**
8197+ * A color stop within a legacy `-webkit-gradient()`.
8198+ */
8199+export interface WebKitColorStop {
8200+ /**
8201+ * The color of the color stop.
8202+ */
8203+ color: CssColor;
8204+
8205+ /**
8206+ * The position of the color stop.
8207+ */
8208+ position: number;
8209+}
8210+/**
8211+ * A CSS [`image-set()`](https://drafts.csswg.org/css-images-4/#image-set-notation) value.
8212+ *
8213+ * `image-set()` allows the user agent to choose between multiple versions of an image to display the most appropriate resolution or file type that it supports.
8214+ */
8215+export interface ImageSet {
8216+ /**
8217+ * The image options to choose from.
8218+ */
8219+ options: ImageSetOption[];
8220+
8221+ /**
8222+ * The vendor prefix for the `image-set()` function.
8223+ */
8224+ vendorPrefix: VendorPrefix;
8225+}
8226+/**
8227+ * An image option within the `image-set()` function. See [ImageSet](ImageSet).
8228+ */
8229+export interface ImageSetOption {
8230+ /**
8231+ * The mime type of the image.
8232+ */
8233+ fileType?: String | null;
8234+
8235+ /**
8236+ * The image for this option.
8237+ */
8238+ image: Image;
8239+
8240+ /**
8241+ * The resolution of the image.
8242+ */
8243+ resolution: Resolution;
8244+}
8245+/**
8246+ * A value for the [background-position](https://drafts.csswg.org/css-backgrounds/#background-position) shorthand property.
8247+ */
8248+export interface BackgroundPosition {
8249+ /**
8250+ * The x-position.
8251+ */
8252+ x: PositionComponentFor_HorizontalPositionKeyword;
8253+
8254+ /**
8255+ * The y-position.
8256+ */
8257+ y: PositionComponentFor_VerticalPositionKeyword;
8258+}
8259+/**
8260+ * A value for the [background-repeat](https://www.w3.org/TR/css-backgrounds-3/#background-repeat) property.
8261+ */
8262+export interface BackgroundRepeat {
8263+ /**
8264+ * A repeat style for the x direction.
8265+ */
8266+ x: BackgroundRepeatKeyword;
8267+
8268+ /**
8269+ * A repeat style for the y direction.
8270+ */
8271+ y: BackgroundRepeatKeyword;
8272+}
8273+/**
8274+ * A value for the [background](https://www.w3.org/TR/css-backgrounds-3/#background) shorthand property.
8275+ */
8276+export interface Background {
8277+ /**
8278+ * The background attachment.
8279+ */
8280+ attachment: BackgroundAttachment;
8281+
8282+ /**
8283+ * How the background should be clipped.
8284+ */
8285+ clip: BackgroundClip;
8286+
8287+ /**
8288+ * The background color.
8289+ */
8290+ color: CssColor;
8291+
8292+ /**
8293+ * The background image.
8294+ */
8295+ image: Image;
8296+
8297+ /**
8298+ * The background origin.
8299+ */
8300+ origin: BackgroundOrigin;
8301+
8302+ /**
8303+ * The background position.
8304+ */
8305+ position: BackgroundPosition;
8306+
8307+ /**
8308+ * How the background image should repeat.
8309+ */
8310+ repeat: BackgroundRepeat;
8311+
8312+ /**
8313+ * The size of the background image.
8314+ */
8315+ size: BackgroundSize;
8316+}
8317+/**
8318+ * A value for the [box-shadow](https://drafts.csswg.org/css-backgrounds/#box-shadow) property.
8319+ */
8320+export interface BoxShadow {
8321+ /**
8322+ * The blur radius of the shadow.
8323+ */
8324+ blur: Length;
8325+
8326+ /**
8327+ * The color of the box shadow.
8328+ */
8329+ color: CssColor;
8330+
8331+ /**
8332+ * Whether the shadow is inset within the box.
8333+ */
8334+ inset: boolean;
8335+
8336+ /**
8337+ * The spread distance of the shadow.
8338+ */
8339+ spread: Length;
8340+
8341+ /**
8342+ * The x offset of the shadow.
8343+ */
8344+ xOffset: Length;
8345+
8346+ /**
8347+ * The y offset of the shadow.
8348+ */
8349+ yOffset: Length;
8350+}
8351+/**
8352+ * A value for the [aspect-ratio](https://drafts.csswg.org/css-sizing-4/#aspect-ratio) property.
8353+ */
8354+export interface AspectRatio {
8355+ /**
8356+ * The `auto` keyword.
8357+ */
8358+ auto: boolean;
8359+
8360+ /**
8361+ * A preferred aspect ratio for the box, specified as width / height.
8362+ */
8363+ ratio?: Ratio | null;
8364+}
8365+/**
8366+ * A value for the [overflow](https://www.w3.org/TR/css-overflow-3/#overflow-properties) shorthand property.
8367+ */
8368+export interface Overflow {
8369+ /**
8370+ * The overflow mode for the x direction.
8371+ */
8372+ x: OverflowKeyword;
8373+
8374+ /**
8375+ * The overflow mode for the y direction.
8376+ */
8377+ y: OverflowKeyword;
8378+}
8379+/**
8380+ * A value for the [inset-block](https://drafts.csswg.org/css-logical/#propdef-inset-block) shorthand property.
8381+ */
8382+export interface InsetBlock {
8383+ /**
8384+ * The block end value.
8385+ */
8386+ blockEnd: LengthPercentageOrAuto;
8387+
8388+ /**
8389+ * The block start value.
8390+ */
8391+ blockStart: LengthPercentageOrAuto;
8392+}
8393+/**
8394+ * A value for the [inset-inline](https://drafts.csswg.org/css-logical/#propdef-inset-inline) shorthand property.
8395+ */
8396+export interface InsetInline {
8397+ /**
8398+ * The inline end value.
8399+ */
8400+ inlineEnd: LengthPercentageOrAuto;
8401+
8402+ /**
8403+ * The inline start value.
8404+ */
8405+ inlineStart: LengthPercentageOrAuto;
8406+}
8407+/**
8408+ * A value for the [inset](https://drafts.csswg.org/css-logical/#propdef-inset) shorthand property.
8409+ */
8410+export interface Inset {
8411+ /**
8412+ * The bottom value.
8413+ */
8414+ bottom: LengthPercentageOrAuto;
8415+
8416+ /**
8417+ * The left value.
8418+ */
8419+ left: LengthPercentageOrAuto;
8420+
8421+ /**
8422+ * The right value.
8423+ */
8424+ right: LengthPercentageOrAuto;
8425+
8426+ /**
8427+ * The top value.
8428+ */
8429+ top: LengthPercentageOrAuto;
8430+}
8431+/**
8432+ * A value for the [border-radius](https://www.w3.org/TR/css-backgrounds-3/#border-radius) property.
8433+ */
8434+export interface BorderRadius {
8435+ /**
8436+ * The x and y radius values for the bottom left corner.
8437+ */
8438+ bottomLeft: Size2DFor_DimensionPercentageFor_LengthValue;
8439+
8440+ /**
8441+ * The x and y radius values for the bottom right corner.
8442+ */
8443+ bottomRight: Size2DFor_DimensionPercentageFor_LengthValue;
8444+
8445+ /**
8446+ * The x and y radius values for the top left corner.
8447+ */
8448+ topLeft: Size2DFor_DimensionPercentageFor_LengthValue;
8449+
8450+ /**
8451+ * The x and y radius values for the top right corner.
8452+ */
8453+ topRight: Size2DFor_DimensionPercentageFor_LengthValue;
8454+}
8455+/**
8456+ * A value for the [border-image-repeat](https://www.w3.org/TR/css-backgrounds-3/#border-image-repeat) property.
8457+ */
8458+export interface BorderImageRepeat {
8459+ /**
8460+ * The horizontal repeat value.
8461+ */
8462+ horizontal: BorderImageRepeatKeyword;
8463+
8464+ /**
8465+ * The vertical repeat value.
8466+ */
8467+ vertical: BorderImageRepeatKeyword;
8468+}
8469+/**
8470+ * A value for the [border-image-slice](https://www.w3.org/TR/css-backgrounds-3/#border-image-slice) property.
8471+ */
8472+export interface BorderImageSlice {
8473+ /**
8474+ * Whether the middle of the border image should be preserved.
8475+ */
8476+ fill: boolean;
8477+
8478+ /**
8479+ * The offsets from the edges of the image.
8480+ */
8481+ offsets: RectFor_NumberOrPercentage;
8482+}
8483+/**
8484+ * A value for the [border-image](https://www.w3.org/TR/css-backgrounds-3/#border-image) shorthand property.
8485+ */
8486+export interface BorderImage {
8487+ /**
8488+ * The amount that the image extends beyond the border box.
8489+ */
8490+ outset: RectFor_LengthOrNumber;
8491+
8492+ /**
8493+ * How the border image is scaled and tiled.
8494+ */
8495+ repeat: BorderImageRepeat;
8496+
8497+ /**
8498+ * The offsets that define where the image is sliced.
8499+ */
8500+ slice: BorderImageSlice;
8501+
8502+ /**
8503+ * The border image.
8504+ */
8505+ source: Image;
8506+
8507+ /**
8508+ * The width of the border image.
8509+ */
8510+ width: RectFor_BorderImageSideWidth;
8511+}
8512+/**
8513+ * A value for the [border-color](https://drafts.csswg.org/css-backgrounds/#propdef-border-color) shorthand property.
8514+ */
8515+export interface BorderColor {
8516+ /**
8517+ * The bottom value.
8518+ */
8519+ bottom: CssColor;
8520+
8521+ /**
8522+ * The left value.
8523+ */
8524+ left: CssColor;
8525+
8526+ /**
8527+ * The right value.
8528+ */
8529+ right: CssColor;
8530+
8531+ /**
8532+ * The top value.
8533+ */
8534+ top: CssColor;
8535+}
8536+/**
8537+ * A value for the [border-style](https://drafts.csswg.org/css-backgrounds/#propdef-border-style) shorthand property.
8538+ */
8539+export interface BorderStyle {
8540+ /**
8541+ * The bottom value.
8542+ */
8543+ bottom: LineStyle;
8544+
8545+ /**
8546+ * The left value.
8547+ */
8548+ left: LineStyle;
8549+
8550+ /**
8551+ * The right value.
8552+ */
8553+ right: LineStyle;
8554+
8555+ /**
8556+ * The top value.
8557+ */
8558+ top: LineStyle;
8559+}
8560+/**
8561+ * A value for the [border-width](https://drafts.csswg.org/css-backgrounds/#propdef-border-width) shorthand property.
8562+ */
8563+export interface BorderWidth {
8564+ /**
8565+ * The bottom value.
8566+ */
8567+ bottom: BorderSideWidth;
8568+
8569+ /**
8570+ * The left value.
8571+ */
8572+ left: BorderSideWidth;
8573+
8574+ /**
8575+ * The right value.
8576+ */
8577+ right: BorderSideWidth;
8578+
8579+ /**
8580+ * The top value.
8581+ */
8582+ top: BorderSideWidth;
8583+}
8584+/**
8585+ * A value for the [border-block-color](https://drafts.csswg.org/css-logical/#propdef-border-block-color) shorthand property.
8586+ */
8587+export interface BorderBlockColor {
8588+ /**
8589+ * The block end value.
8590+ */
8591+ end: CssColor;
8592+
8593+ /**
8594+ * The block start value.
8595+ */
8596+ start: CssColor;
8597+}
8598+/**
8599+ * A value for the [border-block-style](https://drafts.csswg.org/css-logical/#propdef-border-block-style) shorthand property.
8600+ */
8601+export interface BorderBlockStyle {
8602+ /**
8603+ * The block end value.
8604+ */
8605+ end: LineStyle;
8606+
8607+ /**
8608+ * The block start value.
8609+ */
8610+ start: LineStyle;
8611+}
8612+/**
8613+ * A value for the [border-block-width](https://drafts.csswg.org/css-logical/#propdef-border-block-width) shorthand property.
8614+ */
8615+export interface BorderBlockWidth {
8616+ /**
8617+ * The block end value.
8618+ */
8619+ end: BorderSideWidth;
8620+
8621+ /**
8622+ * The block start value.
8623+ */
8624+ start: BorderSideWidth;
8625+}
8626+/**
8627+ * A value for the [border-inline-color](https://drafts.csswg.org/css-logical/#propdef-border-inline-color) shorthand property.
8628+ */
8629+export interface BorderInlineColor {
8630+ /**
8631+ * The inline end value.
8632+ */
8633+ end: CssColor;
8634+
8635+ /**
8636+ * The inline start value.
8637+ */
8638+ start: CssColor;
8639+}
8640+/**
8641+ * A value for the [border-inline-style](https://drafts.csswg.org/css-logical/#propdef-border-inline-style) shorthand property.
8642+ */
8643+export interface BorderInlineStyle {
8644+ /**
8645+ * The inline end value.
8646+ */
8647+ end: LineStyle;
8648+
8649+ /**
8650+ * The inline start value.
8651+ */
8652+ start: LineStyle;
8653+}
8654+/**
8655+ * A value for the [border-inline-width](https://drafts.csswg.org/css-logical/#propdef-border-inline-width) shorthand property.
8656+ */
8657+export interface BorderInlineWidth {
8658+ /**
8659+ * The inline end value.
8660+ */
8661+ end: BorderSideWidth;
8662+
8663+ /**
8664+ * The inline start value.
8665+ */
8666+ start: BorderSideWidth;
8667+}
8668+/**
8669+ * A generic type that represents the `border` and `outline` shorthand properties.
8670+ */
8671+export interface GenericBorderFor_LineStyle {
8672+ /**
8673+ * The border color.
8674+ */
8675+ color: CssColor;
8676+
8677+ /**
8678+ * The border style.
8679+ */
8680+ style: LineStyle;
8681+
8682+ /**
8683+ * The width of the border.
8684+ */
8685+ width: BorderSideWidth;
8686+}
8687+/**
8688+ * A generic type that represents the `border` and `outline` shorthand properties.
8689+ */
8690+export interface GenericBorderFor_OutlineStyleAnd_11 {
8691+ /**
8692+ * The border color.
8693+ */
8694+ color: CssColor;
8695+
8696+ /**
8697+ * The border style.
8698+ */
8699+ style: OutlineStyle;
8700+
8701+ /**
8702+ * The width of the border.
8703+ */
8704+ width: BorderSideWidth;
8705+}
8706+/**
8707+ * A value for the [flex-flow](https://www.w3.org/TR/2018/CR-css-flexbox-1-20181119/#flex-flow-property) shorthand property.
8708+ */
8709+export interface FlexFlow {
8710+ /**
8711+ * The direction that flex items flow.
8712+ */
8713+ direction: FlexDirection;
8714+
8715+ /**
8716+ * How the flex items wrap.
8717+ */
8718+ wrap: FlexWrap;
8719+}
8720+/**
8721+ * A value for the [flex](https://www.w3.org/TR/2018/CR-css-flexbox-1-20181119/#flex-property) shorthand property.
8722+ */
8723+export interface Flex {
8724+ /**
8725+ * The flex basis.
8726+ */
8727+ basis: LengthPercentageOrAuto;
8728+
8729+ /**
8730+ * The flex grow factor.
8731+ */
8732+ grow: number;
8733+
8734+ /**
8735+ * The flex shrink factor.
8736+ */
8737+ shrink: number;
8738+}
8739+/**
8740+ * A value for the [place-content](https://www.w3.org/TR/css-align-3/#place-content) shorthand property.
8741+ */
8742+export interface PlaceContent {
8743+ /**
8744+ * The content alignment.
8745+ */
8746+ align: AlignContent;
8747+
8748+ /**
8749+ * The content justification.
8750+ */
8751+ justify: JustifyContent;
8752+}
8753+/**
8754+ * A value for the [place-self](https://www.w3.org/TR/css-align-3/#place-self-property) shorthand property.
8755+ */
8756+export interface PlaceSelf {
8757+ /**
8758+ * The item alignment.
8759+ */
8760+ align: AlignSelf;
8761+
8762+ /**
8763+ * The item justification.
8764+ */
8765+ justify: JustifySelf;
8766+}
8767+/**
8768+ * A value for the [place-items](https://www.w3.org/TR/css-align-3/#place-items-property) shorthand property.
8769+ */
8770+export interface PlaceItems {
8771+ /**
8772+ * The item alignment.
8773+ */
8774+ align: AlignItems;
8775+
8776+ /**
8777+ * The item justification.
8778+ */
8779+ justify: JustifyItems;
8780+}
8781+/**
8782+ * A value for the [gap](https://www.w3.org/TR/css-align-3/#gap-shorthand) shorthand property.
8783+ */
8784+export interface Gap {
8785+ /**
8786+ * The column gap.
8787+ */
8788+ column: GapValue;
8789+
8790+ /**
8791+ * The row gap.
8792+ */
8793+ row: GapValue;
8794+}
8795+/**
8796+ * A [`<track-repeat>`](https://drafts.csswg.org/css-grid-2/#typedef-track-repeat) value, representing the `repeat()` function in a track list.
8797+ *
8798+ * See [TrackListItem](TrackListItem).
8799+ */
8800+export interface TrackRepeat {
8801+ /**
8802+ * The repeat count.
8803+ */
8804+ count: RepeatCount;
8805+
8806+ /**
8807+ * The line names to repeat.
8808+ */
8809+ lineNames: String[][];
8810+
8811+ /**
8812+ * The track sizes to repeat.
8813+ */
8814+ trackSizes: TrackSize[];
8815+}
8816+export interface GridAutoFlow {
8817+ /**
8818+ * If specified, a dense packing algorithm is used, which fills in holes in the grid.
8819+ */
8820+ dense: boolean;
8821+
8822+ /**
8823+ * The direction of the auto flow.
8824+ */
8825+ direction: AutoFlowDirection;
8826+}
8827+/**
8828+ * A value for the [grid-template](https://drafts.csswg.org/css-grid-2/#explicit-grid-shorthand) shorthand property.
8829+ *
8830+ * If `areas` is not `None`, then `rows` must also not be `None`.
8831+ */
8832+export interface GridTemplate {
8833+ /**
8834+ * The named grid areas.
8835+ */
8836+ areas: GridTemplateAreas;
8837+
8838+ /**
8839+ * The grid template columns.
8840+ */
8841+ columns: TrackSizing;
8842+
8843+ /**
8844+ * The grid template rows.
8845+ */
8846+ rows: TrackSizing;
8847+}
8848+/**
8849+ * A value for the [grid](https://drafts.csswg.org/css-grid-2/#grid-shorthand) shorthand property.
8850+ *
8851+ * Explicit and implicit values may not be combined.
8852+ */
8853+export interface Grid {
8854+ /**
8855+ * Explicit grid template areas.
8856+ */
8857+ areas: GridTemplateAreas;
8858+
8859+ /**
8860+ * The grid auto columns.
8861+ */
8862+ autoColumns: TrackSize[];
8863+
8864+ /**
8865+ * The grid auto flow.
8866+ */
8867+ autoFlow: GridAutoFlow;
8868+
8869+ /**
8870+ * The grid auto rows.
8871+ */
8872+ autoRows: TrackSize[];
8873+
8874+ /**
8875+ * Explicit grid template columns.
8876+ */
8877+ columns: TrackSizing;
8878+
8879+ /**
8880+ * Explicit grid template rows.
8881+ */
8882+ rows: TrackSizing;
8883+}
8884+/**
8885+ * A value for the [grid-row](https://drafts.csswg.org/css-grid-2/#propdef-grid-row) shorthand property.
8886+ */
8887+export interface GridRow {
8888+ /**
8889+ * The ending line.
8890+ */
8891+ end: GridLine;
8892+
8893+ /**
8894+ * The starting line.
8895+ */
8896+ start: GridLine;
8897+}
8898+/**
8899+ * A value for the [grid-row](https://drafts.csswg.org/css-grid-2/#propdef-grid-column) shorthand property.
8900+ */
8901+export interface GridColumn {
8902+ /**
8903+ * The ending line.
8904+ */
8905+ end: GridLine;
8906+
8907+ /**
8908+ * The starting line.
8909+ */
8910+ start: GridLine;
8911+}
8912+/**
8913+ * A value for the [grid-area](https://drafts.csswg.org/css-grid-2/#propdef-grid-area) shorthand property.
8914+ */
8915+export interface GridArea {
8916+ /**
8917+ * The grid column end placement.
8918+ */
8919+ columnEnd: GridLine;
8920+
8921+ /**
8922+ * The grid column start placement.
8923+ */
8924+ columnStart: GridLine;
8925+
8926+ /**
8927+ * The grid row end placement.
8928+ */
8929+ rowEnd: GridLine;
8930+
8931+ /**
8932+ * The grid row start placement.
8933+ */
8934+ rowStart: GridLine;
8935+}
8936+/**
8937+ * A value for the [margin-block](https://drafts.csswg.org/css-logical/#propdef-margin-block) shorthand property.
8938+ */
8939+export interface MarginBlock {
8940+ /**
8941+ * The block end value.
8942+ */
8943+ blockEnd: LengthPercentageOrAuto;
8944+
8945+ /**
8946+ * The block start value.
8947+ */
8948+ blockStart: LengthPercentageOrAuto;
8949+}
8950+/**
8951+ * A value for the [margin-inline](https://drafts.csswg.org/css-logical/#propdef-margin-inline) shorthand property.
8952+ */
8953+export interface MarginInline {
8954+ /**
8955+ * The inline end value.
8956+ */
8957+ inlineEnd: LengthPercentageOrAuto;
8958+
8959+ /**
8960+ * The inline start value.
8961+ */
8962+ inlineStart: LengthPercentageOrAuto;
8963+}
8964+/**
8965+ * A value for the [margin](https://drafts.csswg.org/css-box-4/#propdef-margin) shorthand property.
8966+ */
8967+export interface Margin {
8968+ /**
8969+ * The bottom value.
8970+ */
8971+ bottom: LengthPercentageOrAuto;
8972+
8973+ /**
8974+ * The left value.
8975+ */
8976+ left: LengthPercentageOrAuto;
8977+
8978+ /**
8979+ * The right value.
8980+ */
8981+ right: LengthPercentageOrAuto;
8982+
8983+ /**
8984+ * The top value.
8985+ */
8986+ top: LengthPercentageOrAuto;
8987+}
8988+/**
8989+ * A value for the [padding-block](https://drafts.csswg.org/css-logical/#propdef-padding-block) shorthand property.
8990+ */
8991+export interface PaddingBlock {
8992+ /**
8993+ * The block end value.
8994+ */
8995+ blockEnd: LengthPercentageOrAuto;
8996+
8997+ /**
8998+ * The block start value.
8999+ */
9000+ blockStart: LengthPercentageOrAuto;
9001+}
9002+/**
9003+ * A value for the [padding-inline](https://drafts.csswg.org/css-logical/#propdef-padding-inline) shorthand property.
9004+ */
9005+export interface PaddingInline {
9006+ /**
9007+ * The inline end value.
9008+ */
9009+ inlineEnd: LengthPercentageOrAuto;
9010+
9011+ /**
9012+ * The inline start value.
9013+ */
9014+ inlineStart: LengthPercentageOrAuto;
9015+}
9016+/**
9017+ * A value for the [padding](https://drafts.csswg.org/css-box-4/#propdef-padding) shorthand property.
9018+ */
9019+export interface Padding {
9020+ /**
9021+ * The bottom value.
9022+ */
9023+ bottom: LengthPercentageOrAuto;
9024+
9025+ /**
9026+ * The left value.
9027+ */
9028+ left: LengthPercentageOrAuto;
9029+
9030+ /**
9031+ * The right value.
9032+ */
9033+ right: LengthPercentageOrAuto;
9034+
9035+ /**
9036+ * The top value.
9037+ */
9038+ top: LengthPercentageOrAuto;
9039+}
9040+/**
9041+ * A value for the [scroll-margin-block](https://drafts.csswg.org/css-scroll-snap/#propdef-scroll-margin-block) shorthand property.
9042+ */
9043+export interface ScrollMarginBlock {
9044+ /**
9045+ * The block end value.
9046+ */
9047+ blockEnd: LengthPercentageOrAuto;
9048+
9049+ /**
9050+ * The block start value.
9051+ */
9052+ blockStart: LengthPercentageOrAuto;
9053+}
9054+/**
9055+ * A value for the [scroll-margin-inline](https://drafts.csswg.org/css-scroll-snap/#propdef-scroll-margin-inline) shorthand property.
9056+ */
9057+export interface ScrollMarginInline {
9058+ /**
9059+ * The inline end value.
9060+ */
9061+ inlineEnd: LengthPercentageOrAuto;
9062+
9063+ /**
9064+ * The inline start value.
9065+ */
9066+ inlineStart: LengthPercentageOrAuto;
9067+}
9068+/**
9069+ * A value for the [scroll-margin](https://drafts.csswg.org/css-scroll-snap/#scroll-margin) shorthand property.
9070+ */
9071+export interface ScrollMargin {
9072+ /**
9073+ * The bottom value.
9074+ */
9075+ bottom: LengthPercentageOrAuto;
9076+
9077+ /**
9078+ * The left value.
9079+ */
9080+ left: LengthPercentageOrAuto;
9081+
9082+ /**
9083+ * The right value.
9084+ */
9085+ right: LengthPercentageOrAuto;
9086+
9087+ /**
9088+ * The top value.
9089+ */
9090+ top: LengthPercentageOrAuto;
9091+}
9092+/**
9093+ * A value for the [scroll-padding-block](https://drafts.csswg.org/css-scroll-snap/#propdef-scroll-padding-block) shorthand property.
9094+ */
9095+export interface ScrollPaddingBlock {
9096+ /**
9097+ * The block end value.
9098+ */
9099+ blockEnd: LengthPercentageOrAuto;
9100+
9101+ /**
9102+ * The block start value.
9103+ */
9104+ blockStart: LengthPercentageOrAuto;
9105+}
9106+/**
9107+ * A value for the [scroll-padding-inline](https://drafts.csswg.org/css-scroll-snap/#propdef-scroll-padding-inline) shorthand property.
9108+ */
9109+export interface ScrollPaddingInline {
9110+ /**
9111+ * The inline end value.
9112+ */
9113+ inlineEnd: LengthPercentageOrAuto;
9114+
9115+ /**
9116+ * The inline start value.
9117+ */
9118+ inlineStart: LengthPercentageOrAuto;
9119+}
9120+/**
9121+ * A value for the [scroll-padding](https://drafts.csswg.org/css-scroll-snap/#scroll-padding) shorthand property.
9122+ */
9123+export interface ScrollPadding {
9124+ /**
9125+ * The bottom value.
9126+ */
9127+ bottom: LengthPercentageOrAuto;
9128+
9129+ /**
9130+ * The left value.
9131+ */
9132+ left: LengthPercentageOrAuto;
9133+
9134+ /**
9135+ * The right value.
9136+ */
9137+ right: LengthPercentageOrAuto;
9138+
9139+ /**
9140+ * The top value.
9141+ */
9142+ top: LengthPercentageOrAuto;
9143+}
9144+/**
9145+ * A value for the [font](https://www.w3.org/TR/css-fonts-4/#font-prop) shorthand property.
9146+ */
9147+export interface Font {
9148+ /**
9149+ * The font family.
9150+ */
9151+ family: FontFamily[];
9152+
9153+ /**
9154+ * The line height.
9155+ */
9156+ lineHeight: LineHeight;
9157+
9158+ /**
9159+ * The font size.
9160+ */
9161+ size: FontSize;
9162+
9163+ /**
9164+ * The font stretch.
9165+ */
9166+ stretch: FontStretch;
9167+
9168+ /**
9169+ * The font style.
9170+ */
9171+ style: FontStyle;
9172+
9173+ /**
9174+ * How the text should be capitalized. Only CSS 2.1 values are supported.
9175+ */
9176+ variantCaps: FontVariantCaps;
9177+
9178+ /**
9179+ * The font weight.
9180+ */
9181+ weight: FontWeight;
9182+}
9183+/**
9184+ * A value for the [transition](https://www.w3.org/TR/2018/WD-css-transitions-1-20181011/#transition-shorthand-property) property.
9185+ */
9186+export interface Transition {
9187+ /**
9188+ * The delay before the transition starts.
9189+ */
9190+ delay: Time;
9191+
9192+ /**
9193+ * The duration of the transition.
9194+ */
9195+ duration: Time;
9196+
9197+ /**
9198+ * The property to transition.
9199+ */
9200+ property: PropertyId;
9201+
9202+ /**
9203+ * The easing function for the transition.
9204+ */
9205+ timingFunction: EasingFunction;
9206+}
9207+/**
9208+ * The [scroll()](https://drafts.csswg.org/scroll-animations-1/#scroll-notation) function.
9209+ */
9210+export interface ScrollTimeline {
9211+ /**
9212+ * Specifies which axis of the scroll container to use as the progress for the timeline.
9213+ */
9214+ axis: ScrollAxis;
9215+
9216+ /**
9217+ * Specifies which element to use as the scroll container.
9218+ */
9219+ scroller: Scroller;
9220+}
9221+/**
9222+ * The [view()](https://drafts.csswg.org/scroll-animations-1/#view-notation) function.
9223+ */
9224+export interface ViewTimeline {
9225+ /**
9226+ * Specifies which axis of the scroll container to use as the progress for the timeline.
9227+ */
9228+ axis: ScrollAxis;
9229+
9230+ /**
9231+ * Provides an adjustment of the view progress visibility range.
9232+ */
9233+ inset: Size2DFor_LengthPercentageOrAuto;
9234+}
9235+/**
9236+ * A value for the [animation-range](https://drafts.csswg.org/scroll-animations/#animation-range) shorthand property.
9237+ */
9238+export interface AnimationRange {
9239+ /**
9240+ * The end of the animation's attachment range.
9241+ */
9242+ end: AnimationRangeEnd;
9243+
9244+ /**
9245+ * The start of the animation's attachment range.
9246+ */
9247+ start: AnimationRangeStart;
9248+}
9249+/**
9250+ * A value for the [animation](https://drafts.csswg.org/css-animations/#animation) shorthand property.
9251+ */
9252+export interface Animation {
9253+ /**
9254+ * The animation delay.
9255+ */
9256+ delay: Time;
9257+
9258+ /**
9259+ * The direction of the animation.
9260+ */
9261+ direction: AnimationDirection;
9262+
9263+ /**
9264+ * The animation duration.
9265+ */
9266+ duration: Time;
9267+
9268+ /**
9269+ * The animation fill mode.
9270+ */
9271+ fillMode: AnimationFillMode;
9272+
9273+ /**
9274+ * The number of times the animation will run.
9275+ */
9276+ iterationCount: AnimationIterationCount;
9277+
9278+ /**
9279+ * The animation name.
9280+ */
9281+ name: AnimationName;
9282+
9283+ /**
9284+ * The current play state of the animation.
9285+ */
9286+ playState: AnimationPlayState;
9287+
9288+ /**
9289+ * The animation timeline.
9290+ */
9291+ timeline: AnimationTimeline;
9292+
9293+ /**
9294+ * The easing function for the animation.
9295+ */
9296+ timingFunction: EasingFunction;
9297+}
9298+/**
9299+ * A 2D matrix.
9300+ */
9301+export interface MatrixForFloat {
9302+ a: number;
9303+ b: number;
9304+ c: number;
9305+ d: number;
9306+ e: number;
9307+ f: number;
9308+}
9309+/**
9310+ * A 3D matrix.
9311+ */
9312+export interface Matrix3DForFloat {
9313+ m11: number;
9314+ m12: number;
9315+ m13: number;
9316+ m14: number;
9317+ m21: number;
9318+ m22: number;
9319+ m23: number;
9320+ m24: number;
9321+ m31: number;
9322+ m32: number;
9323+ m33: number;
9324+ m34: number;
9325+ m41: number;
9326+ m42: number;
9327+ m43: number;
9328+ m44: number;
9329+}
9330+/**
9331+ * A value for the [rotate](https://drafts.csswg.org/css-transforms-2/#propdef-rotate) property.
9332+ */
9333+export interface Rotate {
9334+ /**
9335+ * The angle of rotation.
9336+ */
9337+ angle: Angle;
9338+
9339+ /**
9340+ * Rotation around the x axis.
9341+ */
9342+ x: number;
9343+
9344+ /**
9345+ * Rotation around the y axis.
9346+ */
9347+ y: number;
9348+
9349+ /**
9350+ * Rotation around the z axis.
9351+ */
9352+ z: number;
9353+}
9354+/**
9355+ * A value for the [text-transform](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#text-transform-property) property.
9356+ */
9357+export interface TextTransform {
9358+ /**
9359+ * How case should be transformed.
9360+ */
9361+ case: TextTransformCase;
9362+
9363+ /**
9364+ * Converts all small Kana characters to the equivalent full-size Kana.
9365+ */
9366+ fullSizeKana: boolean;
9367+
9368+ /**
9369+ * Puts all typographic character units in full-width form.
9370+ */
9371+ fullWidth: boolean;
9372+}
9373+/**
9374+ * A value for the [text-indent](https://www.w3.org/TR/2021/CRD-css-text-3-20210422/#text-indent-property) property.
9375+ */
9376+export interface TextIndent {
9377+ /**
9378+ * Affects the first line after each hard break.
9379+ */
9380+ eachLine: boolean;
9381+
9382+ /**
9383+ * Inverts which lines are affected.
9384+ */
9385+ hanging: boolean;
9386+
9387+ /**
9388+ * The amount to indent.
9389+ */
9390+ value: DimensionPercentageFor_LengthValue;
9391+}
9392+/**
9393+ * A value for the [text-decoration](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-decoration-property) shorthand property.
9394+ */
9395+export interface TextDecoration {
9396+ /**
9397+ * The color of the lines.
9398+ */
9399+ color: CssColor;
9400+
9401+ /**
9402+ * The lines to display.
9403+ */
9404+ line: TextDecorationLine;
9405+
9406+ /**
9407+ * The style of the lines.
9408+ */
9409+ style: TextDecorationStyle;
9410+
9411+ /**
9412+ * The thickness of the lines.
9413+ */
9414+ thickness: TextDecorationThickness;
9415+}
9416+/**
9417+ * A value for the [text-emphasis](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-emphasis-property) shorthand property.
9418+ */
9419+export interface TextEmphasis {
9420+ /**
9421+ * The text emphasis color.
9422+ */
9423+ color: CssColor;
9424+
9425+ /**
9426+ * The text emphasis style.
9427+ */
9428+ style: TextEmphasisStyle;
9429+}
9430+/**
9431+ * A value for the [text-emphasis-position](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-emphasis-position-property) property.
9432+ */
9433+export interface TextEmphasisPosition {
9434+ /**
9435+ * The horizontal position.
9436+ */
9437+ horizontal: TextEmphasisPositionHorizontal;
9438+
9439+ /**
9440+ * The vertical position.
9441+ */
9442+ vertical: TextEmphasisPositionVertical;
9443+}
9444+/**
9445+ * A value for the [text-shadow](https://www.w3.org/TR/2020/WD-css-text-decor-4-20200506/#text-shadow-property) property.
9446+ */
9447+export interface TextShadow {
9448+ /**
9449+ * The blur radius of the text shadow.
9450+ */
9451+ blur: Length;
9452+
9453+ /**
9454+ * The color of the text shadow.
9455+ */
9456+ color: CssColor;
9457+
9458+ /**
9459+ * The spread distance of the text shadow.
9460+ */
9461+ spread: Length;
9462+
9463+ /**
9464+ * The x offset of the text shadow.
9465+ */
9466+ xOffset: Length;
9467+
9468+ /**
9469+ * The y offset of the text shadow.
9470+ */
9471+ yOffset: Length;
9472+}
9473+/**
9474+ * A value for the [cursor](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#cursor) property.
9475+ */
9476+export interface Cursor {
9477+ /**
9478+ * A list of cursor images.
9479+ */
9480+ images: CursorImage[];
9481+
9482+ /**
9483+ * A pre-defined cursor.
9484+ */
9485+ keyword: CursorKeyword;
9486+}
9487+/**
9488+ * A [cursor image](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#cursor) value, used in the `cursor` property.
9489+ *
9490+ * See [Cursor](Cursor).
9491+ */
9492+export interface CursorImage {
9493+ /**
9494+ * The location in the image where the mouse pointer appears.
9495+ * @minItems 2
9496+ * @maxItems 2
9497+ */
9498+ hotspot?: [number, number] | null;
9499+
9500+ /**
9501+ * A url to the cursor image.
9502+ */
9503+ url: Url;
9504+}
9505+/**
9506+ * A value for the [caret](https://www.w3.org/TR/2021/WD-css-ui-4-20210316/#caret) shorthand property.
9507+ */
9508+export interface Caret {
9509+ /**
9510+ * The caret color.
9511+ */
9512+ color: ColorOrAuto;
9513+
9514+ /**
9515+ * The caret shape.
9516+ */
9517+ shape: CaretShape;
9518+}
9519+/**
9520+ * A value for the [list-style](https://www.w3.org/TR/2020/WD-css-lists-3-20201117/#list-style-property) shorthand property.
9521+ */
9522+export interface ListStyle {
9523+ /**
9524+ * The list marker image.
9525+ */
9526+ image: Image;
9527+
9528+ /**
9529+ * The list style type.
9530+ */
9531+ listStyleType: ListStyleType;
9532+
9533+ /**
9534+ * The position of the list marker.
9535+ */
9536+ position: ListStylePosition;
9537+}
9538+/**
9539+ * A value for the [composes](https://github.com/css-modules/css-modules/#dependencies) property from CSS modules.
9540+ */
9541+export interface Composes {
9542+ /**
9543+ * Where the class names are composed from.
9544+ */
9545+ from?: Specifier | null;
9546+
9547+ /**
9548+ * The source location of the `composes` property.
9549+ */
9550+ loc: Location;
9551+
9552+ /**
9553+ * A list of class names to compose.
9554+ */
9555+ names: String[];
9556+}
9557+/**
9558+ * An [`inset()`](https://www.w3.org/TR/css-shapes-1/#funcdef-inset) rectangle shape.
9559+ */
9560+export interface InsetRect {
9561+ /**
9562+ * A corner radius for the rectangle.
9563+ */
9564+ radius: BorderRadius;
9565+
9566+ /**
9567+ * The rectangle.
9568+ */
9569+ rect: RectFor_DimensionPercentageFor_LengthValue;
9570+}
9571+/**
9572+ * A [`circle()`](https://www.w3.org/TR/css-shapes-1/#funcdef-circle) shape.
9573+ */
9574+export interface Circle2 {
9575+ /**
9576+ * The position of the center of the circle.
9577+ */
9578+ position: Position;
9579+
9580+ /**
9581+ * The radius of the circle.
9582+ */
9583+ radius: ShapeRadius;
9584+}
9585+/**
9586+ * An [`ellipse()`](https://www.w3.org/TR/css-shapes-1/#funcdef-ellipse) shape.
9587+ */
9588+export interface Ellipse2 {
9589+ /**
9590+ * The position of the center of the ellipse.
9591+ */
9592+ position: Position;
9593+
9594+ /**
9595+ * The x-radius of the ellipse.
9596+ */
9597+ radiusX: ShapeRadius;
9598+
9599+ /**
9600+ * The y-radius of the ellipse.
9601+ */
9602+ radiusY: ShapeRadius;
9603+}
9604+/**
9605+ * A [`polygon()`](https://www.w3.org/TR/css-shapes-1/#funcdef-polygon) shape.
9606+ */
9607+export interface Polygon {
9608+ /**
9609+ * The fill rule used to determine the interior of the polygon.
9610+ */
9611+ fillRule: FillRule;
9612+
9613+ /**
9614+ * The points of each vertex of the polygon.
9615+ */
9616+ points: Point[];
9617+}
9618+/**
9619+ * A point within a `polygon()` shape.
9620+ *
9621+ * See [Polygon](Polygon).
9622+ */
9623+export interface Point {
9624+ /**
9625+ * The x position of the point.
9626+ */
9627+ x: DimensionPercentageFor_LengthValue;
9628+
9629+ /**
9630+ * the y position of the point.
9631+ */
9632+ y: DimensionPercentageFor_LengthValue;
9633+}
9634+/**
9635+ * A value for the [mask](https://www.w3.org/TR/css-masking-1/#the-mask) shorthand property.
9636+ */
9637+export interface Mask {
9638+ /**
9639+ * The box in which the mask is clipped.
9640+ */
9641+ clip: MaskClip;
9642+
9643+ /**
9644+ * How the mask is composited with the element.
9645+ */
9646+ composite: MaskComposite;
9647+
9648+ /**
9649+ * The mask image.
9650+ */
9651+ image: Image;
9652+
9653+ /**
9654+ * How the mask image is interpreted.
9655+ */
9656+ mode: MaskMode;
9657+
9658+ /**
9659+ * The origin of the mask.
9660+ */
9661+ origin: GeometryBox;
9662+
9663+ /**
9664+ * The position of the mask.
9665+ */
9666+ position: Position;
9667+
9668+ /**
9669+ * How the mask repeats.
9670+ */
9671+ repeat: BackgroundRepeat;
9672+
9673+ /**
9674+ * The size of the mask image.
9675+ */
9676+ size: BackgroundSize;
9677+}
9678+/**
9679+ * A value for the [mask-border](https://www.w3.org/TR/css-masking-1/#the-mask-border) shorthand property.
9680+ */
9681+export interface MaskBorder {
9682+ /**
9683+ * How the mask image is interpreted.
9684+ */
9685+ mode: MaskBorderMode;
9686+
9687+ /**
9688+ * The amount that the image extends beyond the border box.
9689+ */
9690+ outset: RectFor_LengthOrNumber;
9691+
9692+ /**
9693+ * How the mask image is scaled and tiled.
9694+ */
9695+ repeat: BorderImageRepeat;
9696+
9697+ /**
9698+ * The offsets that define where the image is sliced.
9699+ */
9700+ slice: BorderImageSlice;
9701+
9702+ /**
9703+ * The mask image.
9704+ */
9705+ source: Image;
9706+
9707+ /**
9708+ * The width of the mask image.
9709+ */
9710+ width: RectFor_BorderImageSideWidth;
9711+}
9712+/**
9713+ * A [`drop-shadow()`](https://drafts.fxtf.org/filter-effects-1/#funcdef-filter-drop-shadow) filter function.
9714+ */
9715+export interface DropShadow {
9716+ /**
9717+ * The blur radius of the drop shadow.
9718+ */
9719+ blur: Length;
9720+
9721+ /**
9722+ * The color of the drop shadow.
9723+ */
9724+ color: CssColor;
9725+
9726+ /**
9727+ * The x offset of the drop shadow.
9728+ */
9729+ xOffset: Length;
9730+
9731+ /**
9732+ * The y offset of the drop shadow.
9733+ */
9734+ yOffset: Length;
9735+}
9736+/**
9737+ * A value for the [container](https://drafts.csswg.org/css-contain-3/#container-shorthand) shorthand property.
9738+ */
9739+export interface Container {
9740+ /**
9741+ * The container type.
9742+ */
9743+ containerType: ContainerType;
9744+
9745+ /**
9746+ * The container name.
9747+ */
9748+ name: ContainerNameList;
9749+}
9750+export interface ColorScheme {
9751+ dark: boolean;
9752+ light: boolean;
9753+ only: boolean;
9754+}
9755+/**
9756+ * A known property with an unparsed value.
9757+ *
9758+ * This type is used when the value of a known property could not be parsed, e.g. in the case css `var()` references are encountered. In this case, the raw tokens are stored instead.
9759+ */
9760+export interface UnparsedProperty {
9761+ /**
9762+ * The id of the property.
9763+ */
9764+ propertyId: PropertyId;
9765+
9766+ /**
9767+ * The property value, stored as a raw token list.
9768+ */
9769+ value: TokenOrValue[];
9770+}
9771+/**
9772+ * A CSS custom property, representing any unknown property.
9773+ */
9774+export interface CustomProperty {
9775+ /**
9776+ * The name of the property.
9777+ */
9778+ name: CustomPropertyName;
9779+
9780+ /**
9781+ * The property value, stored as a raw token list.
9782+ */
9783+ value: TokenOrValue[];
9784+}
9785+export interface AttrOperation {
9786+ caseSensitivity?: {| ...ParsedCaseSensitivity, ...string |};
9787+ operator: AttrSelectorOperator;
9788+ value: string;
9789+}
9790+/**
9791+ * A [view transition part selector](https://w3c.github.io/csswg-drafts/css-view-transitions-1/#typedef-pt-name-selector).
9792+ */
9793+export interface ViewTransitionPartSelector {
9794+ /**
9795+ * A list of view transition classes.
9796+ */
9797+ classes: String[];
9798+
9799+ /**
9800+ * The view transition part name.
9801+ */
9802+ name?: ViewTransitionPartName | null;
9803+}
9804+/**
9805+ * A [@keyframes](https://drafts.csswg.org/css-animations/#keyframes) rule.
9806+ */
9807+export interface KeyframesRule<D = Declaration> {
9808+ /**
9809+ * A list of keyframes in the animation.
9810+ */
9811+ keyframes: Keyframe<D>[];
9812+
9813+ /**
9814+ * The location of the rule in the source file.
9815+ */
9816+ loc: Location2;
9817+
9818+ /**
9819+ * The animation name. <keyframes-name> = <custom-ident> | <string>
9820+ */
9821+ name: KeyframesName;
9822+
9823+ /**
9824+ * A vendor prefix for the rule, e.g. `@-webkit-keyframes`.
9825+ */
9826+ vendorPrefix: VendorPrefix;
9827+}
9828+/**
9829+ * An individual keyframe within an `@keyframes` rule.
9830+ *
9831+ * See [KeyframesRule](KeyframesRule).
9832+ */
9833+export interface Keyframe<D = Declaration> {
9834+ /**
9835+ * The declarations for this keyframe.
9836+ */
9837+ declarations: DeclarationBlock<D>;
9838+
9839+ /**
9840+ * A list of keyframe selectors to associate with the declarations in this keyframe.
9841+ */
9842+ selectors: KeyframeSelector[];
9843+}
9844+/**
9845+ * A percentage of a given timeline range
9846+ */
9847+export interface TimelineRangePercentage {
9848+ /**
9849+ * The name of the timeline range.
9850+ */
9851+ name: TimelineRangeName;
9852+
9853+ /**
9854+ * The percentage progress between the start and end of the range.
9855+ */
9856+ percentage: number;
9857+}
9858+/**
9859+ * A [@font-face](https://drafts.csswg.org/css-fonts/#font-face-rule) rule.
9860+ */
9861+export interface FontFaceRule {
9862+ /**
9863+ * The location of the rule in the source file.
9864+ */
9865+ loc: Location2;
9866+
9867+ /**
9868+ * Declarations in the `@font-face` rule.
9869+ */
9870+ properties: FontFaceProperty[];
9871+}
9872+/**
9873+ * A `url()` value for the [src](https://drafts.csswg.org/css-fonts/#src-desc) property in an `@font-face` rule.
9874+ */
9875+export interface UrlSource {
9876+ /**
9877+ * Optional `format()` function.
9878+ */
9879+ format?: FontFormat | null;
9880+
9881+ /**
9882+ * Optional `tech()` function.
9883+ */
9884+ tech: FontTechnology[];
9885+
9886+ /**
9887+ * The URL.
9888+ */
9889+ url: Url;
9890+}
9891+/**
9892+ * A contiguous range of Unicode code points.
9893+ *
9894+ * Cannot be empty. Can represent a single code point when start == end.
9895+ */
9896+export interface UnicodeRange {
9897+ /**
9898+ * Inclusive end of the range. In [0, 0x10FFFF].
9899+ */
9900+ end: number;
9901+
9902+ /**
9903+ * Inclusive start of the range. In [0, end].
9904+ */
9905+ start: number;
9906+}
9907+/**
9908+ * A [@font-palette-values](https://drafts.csswg.org/css-fonts-4/#font-palette-values) rule.
9909+ */
9910+export interface FontPaletteValuesRule {
9911+ /**
9912+ * The location of the rule in the source file.
9913+ */
9914+ loc: Location2;
9915+
9916+ /**
9917+ * The name of the font palette.
9918+ */
9919+ name: String;
9920+
9921+ /**
9922+ * Declarations in the `@font-palette-values` rule.
9923+ */
9924+ properties: FontPaletteValuesProperty[];
9925+}
9926+/**
9927+ * A value for the [override-colors](https://drafts.csswg.org/css-fonts-4/#override-color) property in an `@font-palette-values` rule.
9928+ */
9929+export interface OverrideColors {
9930+ /**
9931+ * The replacement color.
9932+ */
9933+ color: CssColor;
9934+
9935+ /**
9936+ * The index of the color within the palette to override.
9937+ */
9938+ index: number;
9939+}
9940+/**
9941+ * A [@font-feature-values](https://drafts.csswg.org/css-fonts/#font-feature-values) rule.
9942+ */
9943+export interface FontFeatureValuesRule {
9944+ /**
9945+ * The location of the rule in the source file.
9946+ */
9947+ loc: Location2;
9948+
9949+ /**
9950+ * The name of the font feature values.
9951+ */
9952+ name: String[];
9953+
9954+ /**
9955+ * The rules within the `@font-feature-values` rule.
9956+ */
9957+ rules: {
9958+ [k: string]: FontFeatureSubrule,
9959+ };
9960+}
9961+/**
9962+ * A sub-rule of `@font-feature-values` https://drafts.csswg.org/css-fonts/#font-feature-values-syntax
9963+ */
9964+export interface FontFeatureSubrule {
9965+ /**
9966+ * The declarations within the `@font-feature-values` sub-rules.
9967+ */
9968+ declarations: {
9969+ [k: string]: number[],
9970+ };
9971+
9972+ /**
9973+ * The location of the rule in the source file.
9974+ */
9975+ loc: Location2;
9976+
9977+ /**
9978+ * The name of the `@font-feature-values` sub-rule.
9979+ */
9980+ name: FontFeatureSubruleType;
9981+}
9982+/**
9983+ * A [@page](https://www.w3.org/TR/css-page-3/#at-page-rule) rule.
9984+ */
9985+export interface PageRule<D = Declaration> {
9986+ /**
9987+ * The declarations within the `@page` rule.
9988+ */
9989+ declarations: DeclarationBlock<D>;
9990+
9991+ /**
9992+ * The location of the rule in the source file.
9993+ */
9994+ loc: Location2;
9995+
9996+ /**
9997+ * The nested margin rules.
9998+ */
9999+ rules: PageMarginRule<D>[];
10000+
10001+ /**
10002+ * A list of page selectors.
10003+ */
10004+ selectors: PageSelector[];
10005+}
10006+/**
10007+ * A [page margin rule](https://www.w3.org/TR/css-page-3/#margin-at-rules) rule.
10008+ */
10009+export interface PageMarginRule<D = Declaration> {
10010+ /**
10011+ * The declarations within the rule.
10012+ */
10013+ declarations: DeclarationBlock<D>;
10014+
10015+ /**
10016+ * The location of the rule in the source file.
10017+ */
10018+ loc: Location2;
10019+
10020+ /**
10021+ * The margin box identifier for this rule.
10022+ */
10023+ marginBox: PageMarginBox;
10024+}
10025+/**
10026+ * A [page selector](https://www.w3.org/TR/css-page-3/#typedef-page-selector) within a `@page` rule.
10027+ *
10028+ * Either a name or at least one pseudo class is required.
10029+ */
10030+export interface PageSelector {
10031+ /**
10032+ * An optional named page type.
10033+ */
10034+ name?: String | null;
10035+
10036+ /**
10037+ * A list of page pseudo classes.
10038+ */
10039+ pseudoClasses: PagePseudoClass[];
10040+}
10041+/**
10042+ * A [@supports](https://drafts.csswg.org/css-conditional-3/#at-supports) rule.
10043+ */
10044+export interface SupportsRule<D = Declaration, M = MediaQuery> {
10045+ /**
10046+ * The supports condition.
10047+ */
10048+ condition: SupportsCondition;
10049+
10050+ /**
10051+ * The location of the rule in the source file.
10052+ */
10053+ loc: Location2;
10054+
10055+ /**
10056+ * The rules within the `@supports` rule.
10057+ */
10058+ rules: Rule<D, M>[];
10059+}
10060+/**
10061+ * A [@counter-style](https://drafts.csswg.org/css-counter-styles/#the-counter-style-rule) rule.
10062+ */
10063+export interface CounterStyleRule<D = Declaration> {
10064+ /**
10065+ * Declarations in the `@counter-style` rule.
10066+ */
10067+ declarations: DeclarationBlock<D>;
10068+
10069+ /**
10070+ * The location of the rule in the source file.
10071+ */
10072+ loc: Location2;
10073+
10074+ /**
10075+ * The name of the counter style to declare.
10076+ */
10077+ name: String;
10078+}
10079+/**
10080+ * A [@namespace](https://drafts.csswg.org/css-namespaces/#declaration) rule.
10081+ */
10082+export interface NamespaceRule {
10083+ /**
10084+ * The location of the rule in the source file.
10085+ */
10086+ loc: Location2;
10087+
10088+ /**
10089+ * An optional namespace prefix to declare, or `None` to declare the default namespace.
10090+ */
10091+ prefix?: String | null;
10092+
10093+ /**
10094+ * The url of the namespace.
10095+ */
10096+ url: String;
10097+}
10098+/**
10099+ * A [@-moz-document](https://www.w3.org/TR/2012/WD-css3-conditional-20120911/#at-document) rule.
10100+ *
10101+ * Note that only the `url-prefix()` function with no arguments is supported, and only the `-moz` prefix is allowed since Firefox was the only browser that ever implemented this rule.
10102+ */
10103+export interface MozDocumentRule<D = Declaration, M = MediaQuery> {
10104+ /**
10105+ * The location of the rule in the source file.
10106+ */
10107+ loc: Location2;
10108+
10109+ /**
10110+ * Nested rules within the `@-moz-document` rule.
10111+ */
10112+ rules: Rule<D, M>[];
10113+}
10114+/**
10115+ * A [@nest](https://www.w3.org/TR/css-nesting-1/#at-nest) rule.
10116+ */
10117+export interface NestingRule<D = Declaration, M = MediaQuery> {
10118+ /**
10119+ * The location of the rule in the source file.
10120+ */
10121+ loc: Location2;
10122+
10123+ /**
10124+ * The style rule that defines the selector and declarations for the `@nest` rule.
10125+ */
10126+ style: StyleRule<D, M>;
10127+}
10128+/**
10129+ * A [@viewport](https://drafts.csswg.org/css-device-adapt/#atviewport-rule) rule.
10130+ */
10131+export interface ViewportRule<D = Declaration> {
10132+ /**
10133+ * The declarations within the `@viewport` rule.
10134+ */
10135+ declarations: DeclarationBlock<D>;
10136+
10137+ /**
10138+ * The location of the rule in the source file.
10139+ */
10140+ loc: Location2;
10141+
10142+ /**
10143+ * The vendor prefix for this rule, e.g. `@-ms-viewport`.
10144+ */
10145+ vendorPrefix: VendorPrefix;
10146+}
10147+/**
10148+ * A [@custom-media](https://drafts.csswg.org/mediaqueries-5/#custom-mq) rule.
10149+ */
10150+export interface CustomMediaRule<M = MediaQuery> {
10151+ /**
10152+ * The location of the rule in the source file.
10153+ */
10154+ loc: Location2;
10155+
10156+ /**
10157+ * The name of the declared media query.
10158+ */
10159+ name: String;
10160+
10161+ /**
10162+ * The media query to declare.
10163+ */
10164+ query: MediaList<M>;
10165+}
10166+/**
10167+ * A [@layer statement](https://drafts.csswg.org/css-cascade-5/#layer-empty) rule.
10168+ *
10169+ * See also [LayerBlockRule](LayerBlockRule).
10170+ */
10171+export interface LayerStatementRule {
10172+ /**
10173+ * The location of the rule in the source file.
10174+ */
10175+ loc: Location2;
10176+
10177+ /**
10178+ * The layer names to declare.
10179+ */
10180+ names: String[][];
10181+}
10182+/**
10183+ * A [@layer block](https://drafts.csswg.org/css-cascade-5/#layer-block) rule.
10184+ */
10185+export interface LayerBlockRule<D = Declaration, M = MediaQuery> {
10186+ /**
10187+ * The location of the rule in the source file.
10188+ */
10189+ loc: Location2;
10190+
10191+ /**
10192+ * The name of the layer to declare, or `None` to declare an anonymous layer.
10193+ */
10194+ name?: String[] | null;
10195+
10196+ /**
10197+ * The rules within the `@layer` rule.
10198+ */
10199+ rules: Rule<D, M>[];
10200+}
10201+/**
10202+ * A [@property](https://drafts.css-houdini.org/css-properties-values-api/#at-property-rule) rule.
10203+ */
10204+export interface PropertyRule {
10205+ /**
10206+ * Whether the custom property is inherited.
10207+ */
10208+ inherits: boolean;
10209+
10210+ /**
10211+ * An optional initial value for the custom property.
10212+ */
10213+ initialValue?: ParsedComponent | null;
10214+
10215+ /**
10216+ * The location of the rule in the source file.
10217+ */
10218+ loc: Location2;
10219+
10220+ /**
10221+ * The name of the custom property to declare.
10222+ */
10223+ name: String;
10224+
10225+ /**
10226+ * A syntax string to specify the grammar for the custom property.
10227+ */
10228+ syntax: SyntaxString;
10229+}
10230+/**
10231+ * A [syntax component](https://drafts.css-houdini.org/css-properties-values-api/#syntax-component) within a [SyntaxString](SyntaxString).
10232+ *
10233+ * A syntax component consists of a component kind an a multiplier, which indicates how the component may repeat during parsing.
10234+ */
10235+export interface SyntaxComponent {
10236+ /**
10237+ * The kind of component.
10238+ */
10239+ kind: SyntaxComponentKind;
10240+
10241+ /**
10242+ * A multiplier for the component.
10243+ */
10244+ multiplier: Multiplier;
10245+}
10246+/**
10247+ * A [@container](https://drafts.csswg.org/css-contain-3/#container-rule) rule.
10248+ */
10249+export interface ContainerRule<D = Declaration, M = MediaQuery> {
10250+ /**
10251+ * The container condition.
10252+ */
10253+ condition: ContainerCondition<D>;
10254+
10255+ /**
10256+ * The location of the rule in the source file.
10257+ */
10258+ loc: Location2;
10259+
10260+ /**
10261+ * The name of the container.
10262+ */
10263+ name?: String | null;
10264+
10265+ /**
10266+ * The rules within the `@container` rule.
10267+ */
10268+ rules: Rule<D, M>[];
10269+}
10270+/**
10271+ * A [@scope](https://drafts.csswg.org/css-cascade-6/#scope-atrule) rule.
10272+ * @scope (<scope-start>) [to (<scope-end>)]? { <stylesheet> }
10273+ */
10274+export interface ScopeRule<D = Declaration, M = MediaQuery> {
10275+ /**
10276+ * The location of the rule in the source file.
10277+ */
10278+ loc: Location2;
10279+
10280+ /**
10281+ * Nested rules within the `@scope` rule.
10282+ */
10283+ rules: Rule<D, M>[];
10284+
10285+ /**
10286+ * A selector list used to identify any scoping limits.
10287+ */
10288+ scopeEnd?: SelectorList | null;
10289+
10290+ /**
10291+ * A selector list used to identify the scoping root(s).
10292+ */
10293+ scopeStart?: SelectorList | null;
10294+}
10295+/**
10296+ * A [@starting-style](https://drafts.csswg.org/css-transitions-2/#defining-before-change-style-the-starting-style-rule) rule.
10297+ */
10298+export interface StartingStyleRule<D = Declaration, M = MediaQuery> {
10299+ /**
10300+ * The location of the rule in the source file.
10301+ */
10302+ loc: Location2;
10303+
10304+ /**
10305+ * Nested rules within the `@starting-style` rule.
10306+ */
10307+ rules: Rule<D, M>[];
10308+}
10309+/**
10310+ * A [@view-transition](https://drafts.csswg.org/css-view-transitions-2/#view-transition-rule) rule.
10311+ */
10312+export interface ViewTransitionRule {
10313+ /**
10314+ * The location of the rule in the source file.
10315+ */
10316+ loc: Location2;
10317+
10318+ /**
10319+ * Declarations in the `@view-transition` rule.
10320+ */
10321+ properties: ViewTransitionProperty[];
10322+}
10323+/**
10324+ * An unknown at-rule, stored as raw tokens.
10325+ */
10326+export interface UnknownAtRule {
10327+ /**
10328+ * The contents of the block, if any.
10329+ */
10330+ block?: TokenOrValue[] | null;
10331+
10332+ /**
10333+ * The location of the rule in the source file.
10334+ */
10335+ loc: Location2;
10336+
10337+ /**
10338+ * The name of the at-rule (without the @).
10339+ */
10340+ name: String;
10341+
10342+ /**
10343+ * The prelude of the rule.
10344+ */
10345+ prelude: TokenOrValue[];
10346+}
A node_modules/lightningcss/node/browserslistToTargets.js +48 -0 collapsed to keep the page light
A node_modules/lightningcss/node/composeVisitors.js +442 -0 collapsed to keep the page light
A node_modules/lightningcss/node/flags.js +28 -0 collapsed to keep the page light
A node_modules/lightningcss/node/index.d.ts +477 -0 collapsed to keep the page light
A node_modules/lightningcss/node/index.js +28 -0 collapsed to keep the page light
A node_modules/lightningcss/node/index.js.flow +824 -0 collapsed to keep the page light
A node_modules/lightningcss/node/index.mjs +4 -0 collapsed to keep the page light
A node_modules/lightningcss/node/targets.d.ts +40 -0 collapsed to keep the page light
A node_modules/lightningcss/node/targets.js.flow +39 -0 collapsed to keep the page light
A node_modules/lightningcss/package.json +109 -0 collapsed to keep the page light
A node_modules/lilconfig/LICENSE +21 -0 collapsed to keep the page light
A node_modules/lilconfig/package.json +42 -0 collapsed to keep the page light
A node_modules/lilconfig/readme.md +98 -0 collapsed to keep the page light
A node_modules/lilconfig/src/index.d.ts +54 -0 collapsed to keep the page light
A node_modules/lilconfig/src/index.js +460 -0 collapsed to keep the page light
A node_modules/lines-and-columns/LICENSE +21 -0 collapsed to keep the page light
A node_modules/lines-and-columns/README.md +33 -0 collapsed to keep the page light
A node_modules/lines-and-columns/build/index.d.ts +13 -0 collapsed to keep the page light
A node_modules/lines-and-columns/build/index.js +62 -0 collapsed to keep the page light
A node_modules/lines-and-columns/package.json +49 -0 collapsed to keep the page light
A node_modules/lru-cache/LICENSE +15 -0 collapsed to keep the page light
A node_modules/lru-cache/README.md +331 -0 collapsed to keep the page light
A node_modules/lru-cache/package.json +116 -0 collapsed to keep the page light
A node_modules/merge2/LICENSE +21 -0 collapsed to keep the page light
A node_modules/merge2/README.md +144 -0 collapsed to keep the page light
A node_modules/merge2/index.js +144 -0 collapsed to keep the page light
A node_modules/merge2/package.json +43 -0 collapsed to keep the page light
A node_modules/micromatch/LICENSE +21 -0 collapsed to keep the page light
A node_modules/micromatch/README.md +1024 -0 collapsed to keep the page light
A node_modules/micromatch/index.js +474 -0 collapsed to keep the page light
A node_modules/micromatch/package.json +119 -0 collapsed to keep the page light
A node_modules/minimatch/LICENSE +15 -0 collapsed to keep the page light
A node_modules/minimatch/README.md +454 -0 collapsed to keep the page light
A node_modules/minimatch/package.json +82 -0 collapsed to keep the page light
A node_modules/minipass/LICENSE +15 -0 collapsed to keep the page light
A node_modules/minipass/README.md +825 -0 collapsed to keep the page light
A node_modules/minipass/package.json +82 -0 collapsed to keep the page light
A node_modules/mri/index.d.ts +21 -0 collapsed to keep the page light
A node_modules/mri/lib/index.js +119 -0 collapsed to keep the page light
A node_modules/mri/lib/index.mjs +119 -0 collapsed to keep the page light
A node_modules/mri/license.md +21 -0 collapsed to keep the page light
A node_modules/mri/package.json +43 -0 collapsed to keep the page light
A node_modules/mri/readme.md +166 -0 collapsed to keep the page light
A node_modules/mz/HISTORY.md +66 -0 collapsed to keep the page light
A node_modules/mz/LICENSE +22 -0 collapsed to keep the page light
A node_modules/mz/README.md +106 -0 collapsed to keep the page light
A node_modules/mz/child_process.js +8 -0 collapsed to keep the page light
A node_modules/mz/crypto.js +9 -0 collapsed to keep the page light
A node_modules/mz/dns.js +16 -0 collapsed to keep the page light
A node_modules/mz/fs.js +62 -0 collapsed to keep the page light
A node_modules/mz/index.js +8 -0 collapsed to keep the page light
A node_modules/mz/package.json +44 -0 collapsed to keep the page light
A node_modules/mz/readline.js +64 -0 collapsed to keep the page light
A node_modules/mz/zlib.js +13 -0 collapsed to keep the page light
A node_modules/nanoid/LICENSE +20 -0 collapsed to keep the page light
A node_modules/nanoid/README.md +554 -0 collapsed to keep the page light
A node_modules/nanoid/async/index.browser.cjs +69 -0 collapsed to keep the page light
A node_modules/nanoid/async/index.browser.js +69 -0 collapsed to keep the page light
A node_modules/nanoid/async/index.cjs +71 -0 collapsed to keep the page light
A node_modules/nanoid/async/index.d.ts +56 -0 collapsed to keep the page light
A node_modules/nanoid/async/index.js +71 -0 collapsed to keep the page light
A node_modules/nanoid/async/index.native.js +57 -0 collapsed to keep the page light
A node_modules/nanoid/async/package.json +12 -0 collapsed to keep the page light
A node_modules/nanoid/bin/nanoid.cjs +55 -0 collapsed to keep the page light
A node_modules/nanoid/index.browser.cjs +72 -0 collapsed to keep the page light
A node_modules/nanoid/index.browser.js +72 -0 collapsed to keep the page light
A node_modules/nanoid/index.cjs +85 -0 collapsed to keep the page light
A node_modules/nanoid/index.d.cts +91 -0 collapsed to keep the page light
A node_modules/nanoid/index.d.ts +91 -0 collapsed to keep the page light
A node_modules/nanoid/index.js +85 -0 collapsed to keep the page light
A node_modules/nanoid/nanoid.js +1 -0 collapsed to keep the page light
A node_modules/nanoid/non-secure/index.cjs +34 -0 collapsed to keep the page light
A node_modules/nanoid/non-secure/index.d.ts +33 -0 collapsed to keep the page light
A node_modules/nanoid/non-secure/index.js +34 -0 collapsed to keep the page light
A node_modules/nanoid/non-secure/package.json +6 -0 collapsed to keep the page light
A node_modules/nanoid/package.json +88 -0 collapsed to keep the page light
A node_modules/nanoid/url-alphabet/index.cjs +7 -0 collapsed to keep the page light
A node_modules/nanoid/url-alphabet/index.js +7 -0 collapsed to keep the page light
A node_modules/nanoid/url-alphabet/package.json +6 -0 collapsed to keep the page light
A node_modules/node-addon-api/LICENSE.md +9 -0 collapsed to keep the page light
A node_modules/node-addon-api/README.md +319 -0 collapsed to keep the page light
A node_modules/node-addon-api/common.gypi +20 -0 collapsed to keep the page light
A node_modules/node-addon-api/except.gypi +25 -0 collapsed to keep the page light
A node_modules/node-addon-api/index.js +12 -0 collapsed to keep the page light
A node_modules/node-addon-api/napi-inl.deprecated.h +186 -0 collapsed to keep the page light
A node_modules/node-addon-api/napi-inl.h +6607 -0 collapsed to keep the page light
A node_modules/node-addon-api/napi.h +3201 -0 collapsed to keep the page light
A node_modules/node-addon-api/node_addon_api.gyp +32 -0 collapsed to keep the page light
A node_modules/node-addon-api/node_api.gyp +9 -0 collapsed to keep the page light
A node_modules/node-addon-api/noexcept.gypi +26 -0 collapsed to keep the page light
A node_modules/node-addon-api/nothing.c +0 -0

no textual change.

A node_modules/node-addon-api/package-support.json +21 -0 collapsed to keep the page light
A node_modules/node-addon-api/package.json +480 -0 collapsed to keep the page light
A node_modules/node-addon-api/tools/README.md +73 -0 collapsed to keep the page light
A node_modules/node-addon-api/tools/check-napi.js +99 -0 collapsed to keep the page light
A node_modules/node-addon-api/tools/clang-format.js +71 -0 collapsed to keep the page light
A node_modules/node-addon-api/tools/conversion.js +301 -0 collapsed to keep the page light
A node_modules/node-addon-api/tools/eslint-format.js +79 -0 collapsed to keep the page light
A node_modules/normalize-path/LICENSE +21 -0 collapsed to keep the page light
A node_modules/normalize-path/README.md +127 -0 collapsed to keep the page light
A node_modules/normalize-path/index.js +35 -0 collapsed to keep the page light
A node_modules/normalize-path/package.json +77 -0 collapsed to keep the page light
A node_modules/object-assign/index.js +90 -0 collapsed to keep the page light
A node_modules/object-assign/license +21 -0 collapsed to keep the page light
A node_modules/object-assign/package.json +42 -0 collapsed to keep the page light
A node_modules/object-assign/readme.md +61 -0 collapsed to keep the page light
A node_modules/object-hash/LICENSE +22 -0 collapsed to keep the page light
A node_modules/object-hash/index.js +453 -0 collapsed to keep the page light
A node_modules/object-hash/package.json +53 -0 collapsed to keep the page light
A node_modules/object-hash/readme.markdown +198 -0 collapsed to keep the page light
A node_modules/package-json-from-dist/LICENSE.md +63 -0 collapsed to keep the page light
A node_modules/package-json-from-dist/README.md +110 -0 collapsed to keep the page light
A node_modules/package-json-from-dist/package.json +68 -0 collapsed to keep the page light
A node_modules/path-key/index.d.ts +40 -0 collapsed to keep the page light
A node_modules/path-key/index.js +16 -0 collapsed to keep the page light
A node_modules/path-key/license +9 -0 collapsed to keep the page light
A node_modules/path-key/package.json +39 -0 collapsed to keep the page light
A node_modules/path-key/readme.md +61 -0 collapsed to keep the page light
A node_modules/path-parse/LICENSE +21 -0 collapsed to keep the page light
A node_modules/path-parse/README.md +42 -0 collapsed to keep the page light
A node_modules/path-parse/index.js +75 -0 collapsed to keep the page light
A node_modules/path-parse/package.json +33 -0 collapsed to keep the page light
A node_modules/path-scurry/LICENSE.md +55 -0 collapsed to keep the page light
A node_modules/path-scurry/README.md +636 -0 collapsed to keep the page light
A node_modules/path-scurry/package.json +89 -0 collapsed to keep the page light
A node_modules/picocolors/LICENSE +15 -0 collapsed to keep the page light
A node_modules/picocolors/README.md +21 -0 collapsed to keep the page light
A node_modules/picocolors/package.json +25 -0 collapsed to keep the page light
A node_modules/picocolors/picocolors.browser.js +4 -0 collapsed to keep the page light
A node_modules/picocolors/picocolors.d.ts +5 -0 collapsed to keep the page light
A node_modules/picocolors/picocolors.js +75 -0 collapsed to keep the page light
A node_modules/picocolors/types.d.ts +51 -0 collapsed to keep the page light
A node_modules/picomatch/CHANGELOG.md +136 -0 collapsed to keep the page light
A node_modules/picomatch/LICENSE +21 -0 collapsed to keep the page light
A node_modules/picomatch/README.md +708 -0 collapsed to keep the page light
A node_modules/picomatch/index.js +3 -0 collapsed to keep the page light
A node_modules/picomatch/lib/constants.js +179 -0 collapsed to keep the page light
A node_modules/picomatch/lib/parse.js +1091 -0 collapsed to keep the page light
A node_modules/picomatch/lib/picomatch.js +342 -0 collapsed to keep the page light
A node_modules/picomatch/lib/scan.js +391 -0 collapsed to keep the page light
A node_modules/picomatch/lib/utils.js +64 -0 collapsed to keep the page light
A node_modules/picomatch/package.json +81 -0 collapsed to keep the page light
A node_modules/pify/index.js +68 -0 collapsed to keep the page light
A node_modules/pify/license +21 -0 collapsed to keep the page light
A node_modules/pify/package.json +48 -0 collapsed to keep the page light
A node_modules/pify/readme.md +119 -0 collapsed to keep the page light
A node_modules/pirates/LICENSE +21 -0 collapsed to keep the page light
A node_modules/pirates/README.md +69 -0 collapsed to keep the page light
A node_modules/pirates/index.d.ts +82 -0 collapsed to keep the page light
A node_modules/pirates/lib/index.js +139 -0 collapsed to keep the page light
A node_modules/pirates/package.json +74 -0 collapsed to keep the page light
A node_modules/postcss-import/LICENSE +20 -0 collapsed to keep the page light
A node_modules/postcss-import/README.md +244 -0 collapsed to keep the page light
A node_modules/postcss-import/index.js +420 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/assign-layer-names.js +17 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/data-url.js +17 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/join-layer.js +9 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/join-media.js +28 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/load-content.js +12 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/parse-statements.js +172 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/process-content.js +59 -0 collapsed to keep the page light
A node_modules/postcss-import/lib/resolve-id.js +42 -0 collapsed to keep the page light
A node_modules/postcss-import/package.json +65 -0 collapsed to keep the page light
A node_modules/postcss-js/LICENSE +20 -0 collapsed to keep the page light
A node_modules/postcss-js/README.md +22 -0 collapsed to keep the page light
A node_modules/postcss-js/async.js +15 -0 collapsed to keep the page light
A node_modules/postcss-js/index.js +11 -0 collapsed to keep the page light
A node_modules/postcss-js/index.mjs +8 -0 collapsed to keep the page light
A node_modules/postcss-js/objectifier.js +85 -0 collapsed to keep the page light
A node_modules/postcss-js/package.json +42 -0 collapsed to keep the page light
A node_modules/postcss-js/parser.js +104 -0 collapsed to keep the page light
A node_modules/postcss-js/process-result.js +11 -0 collapsed to keep the page light
A node_modules/postcss-js/sync.js +12 -0 collapsed to keep the page light
A node_modules/postcss-load-config/LICENSE +20 -0 collapsed to keep the page light
A node_modules/postcss-load-config/README.md +466 -0 collapsed to keep the page light
A node_modules/postcss-load-config/node_modules/lilconfig/LICENSE +21 -0 collapsed to keep the page light
A node_modules/postcss-load-config/node_modules/lilconfig/package.json +42 -0 collapsed to keep the page light
A node_modules/postcss-load-config/node_modules/lilconfig/readme.md +98 -0 collapsed to keep the page light
A node_modules/postcss-load-config/node_modules/lilconfig/src/index.d.ts +54 -0 collapsed to keep the page light
A node_modules/postcss-load-config/node_modules/lilconfig/src/index.js +457 -0 collapsed to keep the page light
A node_modules/postcss-load-config/package.json +54 -0 collapsed to keep the page light
A node_modules/postcss-load-config/src/index.d.ts +65 -0 collapsed to keep the page light
A node_modules/postcss-load-config/src/index.js +185 -0 collapsed to keep the page light
A node_modules/postcss-load-config/src/options.js +47 -0 collapsed to keep the page light
A node_modules/postcss-load-config/src/plugins.js +85 -0 collapsed to keep the page light
A node_modules/postcss-load-config/src/req.js +10 -0 collapsed to keep the page light
A node_modules/postcss-nested/LICENSE +20 -0 collapsed to keep the page light
A node_modules/postcss-nested/README.md +85 -0 collapsed to keep the page light
A node_modules/postcss-nested/index.d.ts +41 -0 collapsed to keep the page light
A node_modules/postcss-nested/index.js +361 -0 collapsed to keep the page light
A node_modules/postcss-nested/package.json +34 -0 collapsed to keep the page light
A node_modules/postcss-selector-parser/API.md +872 -0 collapsed to keep the page light
A node_modules/postcss-selector-parser/CHANGELOG.md +549 -0 collapsed to keep the page light
A node_modules/postcss-selector-parser/LICENSE-MIT +22 -0 collapsed to keep the page light
A node_modules/postcss-selector-parser/README.md +49 -0 collapsed to keep the page light
A node_modules/postcss-selector-parser/package.json +80 -0 collapsed to keep the page light
A node_modules/postcss-selector-parser/postcss-selector-parser.d.ts +555 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/LICENSE +22 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/README.md +263 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/lib/index.d.ts +177 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/lib/index.js +28 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/lib/parse.js +321 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/lib/stringify.js +48 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/lib/unit.js +120 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/lib/walk.js +22 -0 collapsed to keep the page light
A node_modules/postcss-value-parser/package.json +58 -0 collapsed to keep the page light
A node_modules/postcss/LICENSE +20 -0 collapsed to keep the page light
A node_modules/postcss/README.md +28 -0 collapsed to keep the page light
A node_modules/postcss/lib/at-rule.d.ts +140 -0 collapsed to keep the page light
A node_modules/postcss/lib/at-rule.js +25 -0 collapsed to keep the page light
A node_modules/postcss/lib/comment.d.ts +68 -0 collapsed to keep the page light
A node_modules/postcss/lib/comment.js +13 -0 collapsed to keep the page light
A node_modules/postcss/lib/container.d.ts +480 -0 collapsed to keep the page light
A node_modules/postcss/lib/container.js +447 -0 collapsed to keep the page light
A node_modules/postcss/lib/css-syntax-error.d.ts +248 -0 collapsed to keep the page light
A node_modules/postcss/lib/css-syntax-error.js +133 -0 collapsed to keep the page light
A node_modules/postcss/lib/declaration.d.ts +151 -0 collapsed to keep the page light
A node_modules/postcss/lib/declaration.js +24 -0 collapsed to keep the page light
A node_modules/postcss/lib/document.d.ts +69 -0 collapsed to keep the page light
A node_modules/postcss/lib/document.js +33 -0 collapsed to keep the page light
A node_modules/postcss/lib/fromJSON.d.ts +9 -0 collapsed to keep the page light
A node_modules/postcss/lib/fromJSON.js +54 -0 collapsed to keep the page light
A node_modules/postcss/lib/input.d.ts +206 -0 collapsed to keep the page light
A node_modules/postcss/lib/input.js +251 -0 collapsed to keep the page light
A node_modules/postcss/lib/lazy-result.d.ts +190 -0 collapsed to keep the page light
A node_modules/postcss/lib/lazy-result.js +550 -0 collapsed to keep the page light
A node_modules/postcss/lib/list.d.ts +60 -0 collapsed to keep the page light
A node_modules/postcss/lib/list.js +58 -0 collapsed to keep the page light
A node_modules/postcss/lib/map-generator.js +368 -0 collapsed to keep the page light
A node_modules/postcss/lib/no-work-result.d.ts +46 -0 collapsed to keep the page light
A node_modules/postcss/lib/no-work-result.js +138 -0 collapsed to keep the page light
A node_modules/postcss/lib/node.d.ts +541 -0 collapsed to keep the page light
A node_modules/postcss/lib/node.js +434 -0 collapsed to keep the page light
A node_modules/postcss/lib/parse.d.ts +9 -0 collapsed to keep the page light
A node_modules/postcss/lib/parse.js +42 -0 collapsed to keep the page light
A node_modules/postcss/lib/parser.js +611 -0 collapsed to keep the page light
A node_modules/postcss/lib/postcss.d.mts +69 -0 collapsed to keep the page light
A node_modules/postcss/lib/postcss.d.ts +458 -0 collapsed to keep the page light
A node_modules/postcss/lib/postcss.js +101 -0 collapsed to keep the page light
A node_modules/postcss/lib/postcss.mjs +30 -0 collapsed to keep the page light
A node_modules/postcss/lib/previous-map.d.ts +81 -0 collapsed to keep the page light
A node_modules/postcss/lib/previous-map.js +144 -0 collapsed to keep the page light
A node_modules/postcss/lib/processor.d.ts +115 -0 collapsed to keep the page light
A node_modules/postcss/lib/processor.js +67 -0 collapsed to keep the page light
A node_modules/postcss/lib/result.d.ts +205 -0 collapsed to keep the page light
A node_modules/postcss/lib/result.js +42 -0 collapsed to keep the page light
A node_modules/postcss/lib/root.d.ts +87 -0 collapsed to keep the page light
A node_modules/postcss/lib/root.js +61 -0 collapsed to keep the page light
A node_modules/postcss/lib/rule.d.ts +126 -0 collapsed to keep the page light
A node_modules/postcss/lib/rule.js +27 -0 collapsed to keep the page light
A node_modules/postcss/lib/stringifier.d.ts +46 -0 collapsed to keep the page light
A node_modules/postcss/lib/stringifier.js +353 -0 collapsed to keep the page light
A node_modules/postcss/lib/stringify.d.ts +9 -0 collapsed to keep the page light
A node_modules/postcss/lib/stringify.js +11 -0 collapsed to keep the page light
A node_modules/postcss/lib/symbols.js +5 -0 collapsed to keep the page light
A node_modules/postcss/lib/terminal-highlight.js +70 -0 collapsed to keep the page light
A node_modules/postcss/lib/tokenize.js +266 -0 collapsed to keep the page light
A node_modules/postcss/lib/warn-once.js +13 -0 collapsed to keep the page light
A node_modules/postcss/lib/warning.d.ts +147 -0 collapsed to keep the page light
A node_modules/postcss/lib/warning.js +37 -0 collapsed to keep the page light
A node_modules/postcss/package.json +88 -0 collapsed to keep the page light
A node_modules/prettier-plugin-tailwindcss/LICENSE +21 -0 collapsed to keep the page light
A node_modules/prettier-plugin-tailwindcss/README.md +174 -0 collapsed to keep the page light
A node_modules/prettier-plugin-tailwindcss/package.json +144 -0 collapsed to keep the page light
A node_modules/prettier/LICENSE +7 -0 collapsed to keep the page light
A node_modules/prettier/README.md +108 -0 collapsed to keep the page light
A node_modules/prettier/THIRD-PARTY-NOTICES.md +4416 -0 collapsed to keep the page light
A node_modules/prettier/bin/prettier.cjs +68 -0 collapsed to keep the page light
A node_modules/prettier/doc.d.ts +254 -0 collapsed to keep the page light
A node_modules/prettier/doc.js +1261 -0 collapsed to keep the page light
A node_modules/prettier/doc.mjs +1233 -0 collapsed to keep the page light
A node_modules/prettier/index.cjs +682 -0 collapsed to keep the page light
A node_modules/prettier/index.d.ts +956 -0 collapsed to keep the page light
A node_modules/prettier/index.mjs +22242 -0 collapsed to keep the page light
A node_modules/prettier/internal/cli.mjs +4873 -0 collapsed to keep the page light
A node_modules/prettier/package.json +200 -0 collapsed to keep the page light
A node_modules/prettier/plugins/acorn.d.ts +6 -0 collapsed to keep the page light
A node_modules/prettier/plugins/acorn.js +15 -0 collapsed to keep the page light
A node_modules/prettier/plugins/acorn.mjs +15 -0 collapsed to keep the page light
A node_modules/prettier/plugins/angular.d.ts +8 -0 collapsed to keep the page light
A node_modules/prettier/plugins/angular.js +2 -0 collapsed to keep the page light
A node_modules/prettier/plugins/angular.mjs +2 -0 collapsed to keep the page light
A node_modules/prettier/plugins/babel.d.ts +18 -0 collapsed to keep the page light
A node_modules/prettier/plugins/babel.js +15 -0 collapsed to keep the page light
A node_modules/prettier/plugins/babel.mjs +15 -0 collapsed to keep the page light
A node_modules/prettier/plugins/estree.d.ts +1 -0 collapsed to keep the page light
A node_modules/prettier/plugins/estree.js +36 -0 collapsed to keep the page light
A node_modules/prettier/plugins/estree.mjs +36 -0 collapsed to keep the page light
A node_modules/prettier/plugins/flow.d.ts +5 -0 collapsed to keep the page light
A node_modules/prettier/plugins/flow.js +19 -0 collapsed to keep the page light
A node_modules/prettier/plugins/flow.mjs +19 -0 collapsed to keep the page light
A node_modules/prettier/plugins/glimmer.d.ts +5 -0 collapsed to keep the page light
A node_modules/prettier/plugins/glimmer.js +30 -0 collapsed to keep the page light
A node_modules/prettier/plugins/glimmer.mjs +30 -0 collapsed to keep the page light
A node_modules/prettier/plugins/graphql.d.ts +5 -0 collapsed to keep the page light
A node_modules/prettier/plugins/graphql.js +29 -0 collapsed to keep the page light
A node_modules/prettier/plugins/graphql.mjs +29 -0 collapsed to keep the page light
A node_modules/prettier/plugins/html.d.ts +8 -0 collapsed to keep the page light
A node_modules/prettier/plugins/html.js +22 -0 collapsed to keep the page light
A node_modules/prettier/plugins/html.mjs +22 -0 collapsed to keep the page light
A node_modules/prettier/plugins/markdown.d.ts +7 -0 collapsed to keep the page light
A node_modules/prettier/plugins/markdown.js +63 -0 collapsed to keep the page light
A node_modules/prettier/plugins/markdown.mjs +63 -0 collapsed to keep the page light
A node_modules/prettier/plugins/meriyah.d.ts +5 -0 collapsed to keep the page light
A node_modules/prettier/plugins/meriyah.js +4 -0 collapsed to keep the page light
A node_modules/prettier/plugins/meriyah.mjs +4 -0 collapsed to keep the page light
A node_modules/prettier/plugins/postcss.d.ts +7 -0 collapsed to keep the page light
A node_modules/prettier/plugins/postcss.js +54 -0 collapsed to keep the page light
A node_modules/prettier/plugins/postcss.mjs +54 -0 collapsed to keep the page light
A node_modules/prettier/plugins/typescript.d.ts +5 -0 collapsed to keep the page light
A node_modules/prettier/plugins/typescript.js +20 -0 collapsed to keep the page light
A node_modules/prettier/plugins/typescript.mjs +20 -0 collapsed to keep the page light
A node_modules/prettier/plugins/yaml.d.ts +5 -0 collapsed to keep the page light
A node_modules/prettier/plugins/yaml.js +161 -0 collapsed to keep the page light
A node_modules/prettier/plugins/yaml.mjs +161 -0 collapsed to keep the page light
A node_modules/prettier/standalone.d.ts +33 -0 collapsed to keep the page light
A node_modules/prettier/standalone.js +39 -0 collapsed to keep the page light
A node_modules/prettier/standalone.mjs +39 -0 collapsed to keep the page light
A node_modules/queue-microtask/LICENSE +20 -0 collapsed to keep the page light
A node_modules/queue-microtask/README.md +90 -0 collapsed to keep the page light
A node_modules/queue-microtask/index.d.ts +2 -0 collapsed to keep the page light
A node_modules/queue-microtask/index.js +9 -0 collapsed to keep the page light
A node_modules/queue-microtask/package.json +55 -0 collapsed to keep the page light
A node_modules/read-cache/LICENSE +20 -0 collapsed to keep the page light
A node_modules/read-cache/README.md +46 -0 collapsed to keep the page light
A node_modules/read-cache/index.js +78 -0 collapsed to keep the page light
A node_modules/read-cache/package.json +34 -0 collapsed to keep the page light
A node_modules/readdirp/LICENSE +21 -0 collapsed to keep the page light
A node_modules/readdirp/README.md +122 -0 collapsed to keep the page light
A node_modules/readdirp/index.d.ts +43 -0 collapsed to keep the page light
A node_modules/readdirp/index.js +287 -0 collapsed to keep the page light
A node_modules/readdirp/package.json +122 -0 collapsed to keep the page light
A node_modules/resolve/.editorconfig +37 -0 collapsed to keep the page light
A node_modules/resolve/.eslintrc +65 -0 collapsed to keep the page light
A node_modules/resolve/.github/FUNDING.yml +12 -0 collapsed to keep the page light
A node_modules/resolve/LICENSE +21 -0 collapsed to keep the page light
A node_modules/resolve/SECURITY.md +3 -0 collapsed to keep the page light
A node_modules/resolve/async.js +3 -0 collapsed to keep the page light
A node_modules/resolve/bin/resolve +50 -0 collapsed to keep the page light
A node_modules/resolve/example/async.js +5 -0 collapsed to keep the page light
A node_modules/resolve/example/sync.js +3 -0 collapsed to keep the page light
A node_modules/resolve/index.js +6 -0 collapsed to keep the page light
A node_modules/resolve/lib/async.js +329 -0 collapsed to keep the page light
A node_modules/resolve/lib/caller.js +8 -0 collapsed to keep the page light
A node_modules/resolve/lib/core.js +12 -0 collapsed to keep the page light
A node_modules/resolve/lib/core.json +158 -0 collapsed to keep the page light
A node_modules/resolve/lib/homedir.js +24 -0 collapsed to keep the page light
A node_modules/resolve/lib/is-core.js +5 -0 collapsed to keep the page light
A node_modules/resolve/lib/node-modules-paths.js +42 -0 collapsed to keep the page light
A node_modules/resolve/lib/normalize-options.js +10 -0 collapsed to keep the page light
A node_modules/resolve/lib/sync.js +208 -0 collapsed to keep the page light
A node_modules/resolve/package.json +72 -0 collapsed to keep the page light
A node_modules/resolve/readme.markdown +301 -0 collapsed to keep the page light
A node_modules/resolve/sync.js +3 -0 collapsed to keep the page light
A node_modules/resolve/test/core.js +88 -0 collapsed to keep the page light
A node_modules/resolve/test/dotdot.js +29 -0 collapsed to keep the page light
A node_modules/resolve/test/dotdot/abc/index.js +2 -0 collapsed to keep the page light
A node_modules/resolve/test/dotdot/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/faulty_basedir.js +29 -0 collapsed to keep the page light
A node_modules/resolve/test/filter.js +34 -0 collapsed to keep the page light
A node_modules/resolve/test/filter_sync.js +33 -0 collapsed to keep the page light
A node_modules/resolve/test/home_paths.js +127 -0 collapsed to keep the page light
A node_modules/resolve/test/home_paths_sync.js +114 -0 collapsed to keep the page light
A node_modules/resolve/test/mock.js +315 -0 collapsed to keep the page light
A node_modules/resolve/test/mock_sync.js +214 -0 collapsed to keep the page light
A node_modules/resolve/test/module_dir.js +56 -0 collapsed to keep the page light
A node_modules/resolve/test/module_dir/xmodules/aaa/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/module_dir/ymodules/aaa/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/module_dir/zmodules/bbb/main.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/module_dir/zmodules/bbb/package.json +3 -0 collapsed to keep the page light
A node_modules/resolve/test/node-modules-paths.js +143 -0 collapsed to keep the page light
A node_modules/resolve/test/node_path.js +70 -0 collapsed to keep the page light
A node_modules/resolve/test/node_path/x/aaa/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/node_path/x/ccc/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/node_path/y/bbb/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/node_path/y/ccc/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/nonstring.js +9 -0 collapsed to keep the page light
A node_modules/resolve/test/pathfilter.js +75 -0 collapsed to keep the page light
A node_modules/resolve/test/pathfilter/deep_ref/main.js +0 -0

no textual change.

A node_modules/resolve/test/precedence.js +23 -0 collapsed to keep the page light
A node_modules/resolve/test/precedence/aaa.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/precedence/aaa/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/precedence/aaa/main.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/precedence/bbb.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/precedence/bbb/main.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver.js +597 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/baz/doom.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/baz/package.json +4 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/baz/quux.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/browser_field/a.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/browser_field/b.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/browser_field/package.json +5 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/cup.coffee +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/dot_main/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/dot_main/package.json +3 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/dot_slash_main/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/dot_slash_main/package.json +3 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/false_main/index.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/false_main/package.json +4 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/foo.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/incorrect_main/index.js +2 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/incorrect_main/package.json +3 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/invalid_main/package.json +7 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/mug.coffee +0 -0

no textual change.

A node_modules/resolve/test/resolver/mug.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/multirepo/lerna.json +6 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/multirepo/package.json +20 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js +35 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json +14 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json +14 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js +26 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json +15 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js +12 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/other_path/lib/other-lib.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/other_path/root.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/quux/foo/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/same_names/foo.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/same_names/foo/index.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js +0 -0

no textual change.

A node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep +0 -0

no textual change.

A node_modules/resolve/test/resolver/symlinked/package/bar.js +1 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/symlinked/package/package.json +3 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver/without_basedir/main.js +5 -0 collapsed to keep the page light
A node_modules/resolve/test/resolver_sync.js +730 -0 collapsed to keep the page light
A node_modules/resolve/test/shadowed_core.js +54 -0 collapsed to keep the page light
A node_modules/resolve/test/shadowed_core/node_modules/util/index.js +0 -0

no textual change.

A node_modules/resolve/test/subdirs.js +13 -0 collapsed to keep the page light
A node_modules/resolve/test/symlinks.js +176 -0 collapsed to keep the page light
A node_modules/reusify/.coveralls.yml +1 -0 collapsed to keep the page light
A node_modules/reusify/.travis.yml +28 -0 collapsed to keep the page light
A node_modules/reusify/LICENSE +22 -0 collapsed to keep the page light
A node_modules/reusify/README.md +145 -0 collapsed to keep the page light
A node_modules/reusify/benchmarks/createNoCodeFunction.js +30 -0 collapsed to keep the page light
A node_modules/reusify/benchmarks/fib.js +13 -0 collapsed to keep the page light
A node_modules/reusify/benchmarks/reuseNoCodeFunction.js +38 -0 collapsed to keep the page light
A node_modules/reusify/package.json +45 -0 collapsed to keep the page light
A node_modules/reusify/reusify.js +33 -0 collapsed to keep the page light
A node_modules/reusify/test.js +66 -0 collapsed to keep the page light
A node_modules/run-parallel/LICENSE +20 -0 collapsed to keep the page light
A node_modules/run-parallel/README.md +85 -0 collapsed to keep the page light
A node_modules/run-parallel/index.js +51 -0 collapsed to keep the page light
A node_modules/run-parallel/package.json +58 -0 collapsed to keep the page light
A node_modules/shebang-command/index.js +19 -0 collapsed to keep the page light
A node_modules/shebang-command/license +9 -0 collapsed to keep the page light
A node_modules/shebang-command/package.json +34 -0 collapsed to keep the page light
A node_modules/shebang-command/readme.md +34 -0 collapsed to keep the page light
A node_modules/shebang-regex/index.d.ts +22 -0 collapsed to keep the page light
A node_modules/shebang-regex/index.js +2 -0 collapsed to keep the page light
A node_modules/shebang-regex/license +9 -0 collapsed to keep the page light
A node_modules/shebang-regex/package.json +35 -0 collapsed to keep the page light
A node_modules/shebang-regex/readme.md +33 -0 collapsed to keep the page light
A node_modules/signal-exit/README.md +74 -0 collapsed to keep the page light
A node_modules/signal-exit/package.json +106 -0 collapsed to keep the page light
A node_modules/source-map-js/LICENSE +28 -0 collapsed to keep the page light
A node_modules/source-map-js/README.md +765 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/array-set.js +121 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/base64-vlq.js +140 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/base64.js +67 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/binary-search.js +111 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/mapping-list.js +79 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/quick-sort.js +132 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/source-map-consumer.d.ts +1 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/source-map-consumer.js +1188 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/source-map-generator.d.ts +1 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/source-map-generator.js +444 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/source-node.d.ts +1 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/source-node.js +413 -0 collapsed to keep the page light
A node_modules/source-map-js/lib/util.js +594 -0 collapsed to keep the page light
A node_modules/source-map-js/package.json +71 -0 collapsed to keep the page light
A node_modules/source-map-js/source-map.d.ts +104 -0 collapsed to keep the page light
A node_modules/source-map-js/source-map.js +8 -0 collapsed to keep the page light
A node_modules/string-width-cjs/index.d.ts +29 -0 collapsed to keep the page light
A node_modules/string-width-cjs/index.js +47 -0 collapsed to keep the page light
A node_modules/string-width-cjs/license +9 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/emoji-regex/README.md +73 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/emoji-regex/es2015/index.js +6 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/emoji-regex/es2015/text.js +6 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/emoji-regex/index.d.ts +23 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/emoji-regex/index.js +6 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/emoji-regex/package.json +50 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/emoji-regex/text.js +6 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/index.d.ts +17 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/index.js +4 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/license +9 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/node_modules/ansi-regex/index.d.ts +37 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/node_modules/ansi-regex/index.js +10 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/node_modules/ansi-regex/license +9 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/node_modules/ansi-regex/package.json +55 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/node_modules/ansi-regex/readme.md +78 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/package.json +54 -0 collapsed to keep the page light
A node_modules/string-width-cjs/node_modules/strip-ansi/readme.md +46 -0 collapsed to keep the page light
A node_modules/string-width-cjs/package.json +56 -0 collapsed to keep the page light
A node_modules/string-width-cjs/readme.md +50 -0 collapsed to keep the page light
A node_modules/string-width/index.d.ts +29 -0 collapsed to keep the page light
A node_modules/string-width/index.js +54 -0 collapsed to keep the page light
A node_modules/string-width/license +9 -0 collapsed to keep the page light
A node_modules/string-width/package.json +59 -0 collapsed to keep the page light
A node_modules/string-width/readme.md +67 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/index.d.ts +17 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/index.js +4 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/license +9 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/node_modules/ansi-regex/index.d.ts +37 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/node_modules/ansi-regex/index.js +10 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/node_modules/ansi-regex/license +9 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/node_modules/ansi-regex/package.json +55 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/node_modules/ansi-regex/readme.md +78 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/package.json +54 -0 collapsed to keep the page light
A node_modules/strip-ansi-cjs/readme.md +46 -0 collapsed to keep the page light
A node_modules/strip-ansi/index.d.ts +15 -0 collapsed to keep the page light
A node_modules/strip-ansi/index.js +14 -0 collapsed to keep the page light
A node_modules/strip-ansi/license +9 -0 collapsed to keep the page light
A node_modules/strip-ansi/package.json +57 -0 collapsed to keep the page light
A node_modules/strip-ansi/readme.md +41 -0 collapsed to keep the page light
A node_modules/sucrase/LICENSE +21 -0 collapsed to keep the page light
A node_modules/sucrase/README.md +295 -0 collapsed to keep the page light
A node_modules/sucrase/bin/sucrase +3 -0 collapsed to keep the page light
A node_modules/sucrase/bin/sucrase-node +18 -0 collapsed to keep the page light
A node_modules/sucrase/package.json +88 -0 collapsed to keep the page light
A node_modules/sucrase/register/index.js +1 -0 collapsed to keep the page light
A node_modules/sucrase/register/js.js +1 -0 collapsed to keep the page light
A node_modules/sucrase/register/jsx.js +1 -0 collapsed to keep the page light
A node_modules/sucrase/register/ts-legacy-module-interop.js +1 -0 collapsed to keep the page light
A node_modules/sucrase/register/ts.js +1 -0 collapsed to keep the page light
A node_modules/sucrase/register/tsx-legacy-module-interop.js +1 -0 collapsed to keep the page light
A node_modules/sucrase/register/tsx.js +1 -0 collapsed to keep the page light
A node_modules/sucrase/ts-node-plugin/index.js +83 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/.eslintrc +14 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/.github/FUNDING.yml +12 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/.nycrc +9 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/CHANGELOG.md +22 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/LICENSE +21 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/README.md +42 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/browser.js +3 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/index.js +9 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/package.json +70 -0 collapsed to keep the page light
A node_modules/supports-preserve-symlinks-flag/test/index.js +29 -0 collapsed to keep the page light
A node_modules/tapable/LICENSE +21 -0 collapsed to keep the page light
A node_modules/tapable/README.md +296 -0 collapsed to keep the page light
A node_modules/tapable/lib/AsyncParallelBailHook.js +85 -0 collapsed to keep the page light
A node_modules/tapable/lib/AsyncParallelHook.js +37 -0 collapsed to keep the page light
A node_modules/tapable/lib/AsyncSeriesBailHook.js +42 -0 collapsed to keep the page light
A node_modules/tapable/lib/AsyncSeriesHook.js +37 -0 collapsed to keep the page light
A node_modules/tapable/lib/AsyncSeriesLoopHook.js +37 -0 collapsed to keep the page light
A node_modules/tapable/lib/AsyncSeriesWaterfallHook.js +47 -0 collapsed to keep the page light
A node_modules/tapable/lib/Hook.js +175 -0 collapsed to keep the page light
A node_modules/tapable/lib/HookCodeFactory.js +468 -0 collapsed to keep the page light
A node_modules/tapable/lib/HookMap.js +61 -0 collapsed to keep the page light
A node_modules/tapable/lib/MultiHook.js +54 -0 collapsed to keep the page light
A node_modules/tapable/lib/SyncBailHook.js +51 -0 collapsed to keep the page light
A node_modules/tapable/lib/SyncHook.js +46 -0 collapsed to keep the page light
A node_modules/tapable/lib/SyncLoopHook.js +46 -0 collapsed to keep the page light
A node_modules/tapable/lib/SyncWaterfallHook.js +57 -0 collapsed to keep the page light
A node_modules/tapable/lib/index.js +19 -0 collapsed to keep the page light
A node_modules/tapable/lib/util-browser.js +16 -0 collapsed to keep the page light
A node_modules/tapable/package.json +44 -0 collapsed to keep the page light
A node_modules/tapable/tapable.d.ts +116 -0 collapsed to keep the page light
A node_modules/thenify-all/History.md +11 -0 collapsed to keep the page light
A node_modules/thenify-all/LICENSE +22 -0 collapsed to keep the page light
A node_modules/thenify-all/README.md +66 -0 collapsed to keep the page light
A node_modules/thenify-all/index.js +73 -0 collapsed to keep the page light
A node_modules/thenify-all/package.json +34 -0 collapsed to keep the page light
A node_modules/thenify/History.md +11 -0 collapsed to keep the page light
A node_modules/thenify/LICENSE +22 -0 collapsed to keep the page light
A node_modules/thenify/README.md +120 -0 collapsed to keep the page light
A node_modules/thenify/index.js +77 -0 collapsed to keep the page light
A node_modules/thenify/package.json +31 -0 collapsed to keep the page light
A node_modules/to-regex-range/LICENSE +21 -0 collapsed to keep the page light
A node_modules/to-regex-range/README.md +305 -0 collapsed to keep the page light
A node_modules/to-regex-range/index.js +288 -0 collapsed to keep the page light
A node_modules/to-regex-range/package.json +88 -0 collapsed to keep the page light
A node_modules/ts-interface-checker/LICENSE +201 -0 collapsed to keep the page light
A node_modules/ts-interface-checker/README.md +185 -0 collapsed to keep the page light
A node_modules/ts-interface-checker/package.json +60 -0 collapsed to keep the page light
A node_modules/util-deprecate/History.md +16 -0 collapsed to keep the page light
A node_modules/util-deprecate/LICENSE +24 -0 collapsed to keep the page light
A node_modules/util-deprecate/README.md +53 -0 collapsed to keep the page light
A node_modules/util-deprecate/browser.js +67 -0 collapsed to keep the page light
A node_modules/util-deprecate/node.js +6 -0 collapsed to keep the page light
A node_modules/util-deprecate/package.json +27 -0 collapsed to keep the page light
A node_modules/which/CHANGELOG.md +166 -0 collapsed to keep the page light
A node_modules/which/LICENSE +15 -0 collapsed to keep the page light
A node_modules/which/README.md +54 -0 collapsed to keep the page light
A node_modules/which/bin/node-which +52 -0 collapsed to keep the page light
A node_modules/which/package.json +43 -0 collapsed to keep the page light
A node_modules/which/which.js +125 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/index.js +216 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/license +9 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.d.ts +345 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.js +163 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/ansi-styles/license +9 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json +56 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/ansi-styles/readme.md +152 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/index.d.ts +29 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/index.js +47 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/license +9 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex/README.md +73 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex/es2015/index.js +6 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex/es2015/text.js +6 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex/index.d.ts +23 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex/index.js +6 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex/package.json +50 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/node_modules/emoji-regex/text.js +6 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/package.json +56 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/string-width/readme.md +50 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/index.d.ts +17 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/index.js +4 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/license +9 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/node_modules/ansi-regex/index.d.ts +37 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/node_modules/ansi-regex/index.js +10 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/node_modules/ansi-regex/license +9 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/node_modules/ansi-regex/package.json +55 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/node_modules/ansi-regex/readme.md +78 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/package.json +54 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/node_modules/strip-ansi/readme.md +46 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/package.json +62 -0 collapsed to keep the page light
A node_modules/wrap-ansi-cjs/readme.md +91 -0 collapsed to keep the page light
A node_modules/wrap-ansi/index.d.ts +41 -0 collapsed to keep the page light
A node_modules/wrap-ansi/index.js +214 -0 collapsed to keep the page light
A node_modules/wrap-ansi/license +9 -0 collapsed to keep the page light
A node_modules/wrap-ansi/package.json +69 -0 collapsed to keep the page light
A node_modules/wrap-ansi/readme.md +91 -0 collapsed to keep the page light
A node_modules/yaml/LICENSE +13 -0 collapsed to keep the page light
A node_modules/yaml/README.md +169 -0 collapsed to keep the page light
A node_modules/yaml/bin.mjs +11 -0 collapsed to keep the page light
A node_modules/yaml/browser/index.js +5 -0 collapsed to keep the page light
A node_modules/yaml/browser/package.json +3 -0 collapsed to keep the page light
A node_modules/yaml/package.json +96 -0 collapsed to keep the page light
A node_modules/yaml/util.js +2 -0 collapsed to keep the page light
D package.json +0 -17 collapsed to keep the page light
M tailwind.config.js +9 -56 collapsed to keep the page light

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 7

Tags 106

↑↓ moveenter openesc close