tailwind-zag 1.0.4 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["STATIC_VARIANT_ENTRIES: StaticVariantEntry[]","DYNAMIC_VARIANT_ENTRIES: DynamicVariantEntry[]"],"sources":["../src/index.ts"],"sourcesContent":["import plugin from 'tailwindcss/plugin.js';\r\n\r\nexport interface StaticVariantEntry {\r\n\tkey: string;\r\n\tvalues: (string | null)[];\r\n}\r\n\r\nconst STATIC_VARIANT_ENTRIES: StaticVariantEntry[] = [\r\n\t{key: 'hover', values: [null]},\r\n\t{key: 'focus', values: [null]},\r\n\t{key: 'focus-visible', values: [null]},\r\n\t{key: 'focusable', values: [null]},\r\n\t{key: 'active', values: [null]},\r\n\t{key: 'valid', values: [null]},\r\n\t{key: 'invalid', values: [null]},\r\n\t{key: 'disabled', values: [null]},\r\n\t{key: 'readonly', values: [null, 'read-only']},\r\n\t{key: 'current', values: [null]},\r\n\t{key: 'inview', values: [null]},\r\n\t{key: 'copied', values: [null]},\r\n\t{key: 'collapsible', values: [null]},\r\n\t{key: 'highlighted', values: [null]},\r\n\t{key: 'selected', values: [null]},\r\n\t{key: 'placeholder', values: [null]},\r\n\t{key: 'placeholder-shown', values: [null]},\r\n\t{key: 'autoresize', values: [null]},\r\n\t{key: 'required', values: [null]},\r\n\t{key: 'grabbed', values: [null]},\r\n\t{key: 'dragging', values: [null]},\r\n\t{key: 'complete', values: [null]},\r\n\t{key: 'incomplete', values: [null]},\r\n\t{key: 'expanded', values: [null, 'state=\"expanded\"']},\r\n\t{key: 'half', values: [null]},\r\n\t{key: 'first', values: [null]},\r\n\t{key: 'mounted', values: [null]},\r\n\t{key: 'overlap', values: [null]},\r\n\t{key: 'sibling', values: [null]},\r\n\t{key: 'paused', values: [null]},\r\n\t{key: 'pressed', values: [null]},\r\n\t{key: 'on', values: ['state=\"on\"']},\r\n\t{key: 'off', values: ['state=\"off\"']},\r\n\t{key: 'open', values: ['state=\"open\"']},\r\n\t{key: 'closed', values: ['state=\"closed\"']},\r\n\t{key: 'hidden', values: [null, 'state=\"hidden\"']},\r\n\t{key: 'visible', values: [null, 'state=\"visible\"']},\r\n\t{key: 'checked', values: [null, 'state=\"checked\"']},\r\n\t{key: 'unchecked', values: [null, 'state=\"unchecked\"']},\r\n\t{key: 'indeterminate', values: [null, 'state=\"indeterminate\"']},\r\n\t{key: 'vertical', values: ['orientation=\"vertical\"']},\r\n\t{key: 'horizontal', values: ['orientation=\"horizontal\"']},\r\n\t{key: 'placement-top', values: ['placement=\"top\"']},\r\n\t{key: 'placement-top-end', values: ['placement=\"top-end\"']},\r\n\t{key: 'placement-top-start', values: ['placement=\"top-start\"']},\r\n\t{key: 'placement-left', values: ['placement=\"left\"']},\r\n\t{key: 'placement-left-end', values: ['placement=\"left-end\"']},\r\n\t{key: 'placement-left-start', values: ['placement=\"left-start\"']},\r\n\t{key: 'placement-right', values: ['placement=\"right\"']},\r\n\t{key: 'placement-right-end', values: ['placement=\"right-end\"']},\r\n\t{key: 'placement-right-start', values: ['placement=\"right-start\"']},\r\n\t{key: 'placement-bottom', values: ['placement=\"bottom\"']},\r\n\t{key: 'placement-bottom-end', values: ['placement=\"bottom-end\"']},\r\n\t{key: 'placement-bottom-start', values: ['placement=\"bottom-start\"']},\r\n\t{key: 'side-top', values: ['side=\"top\"']},\r\n\t{key: 'side-left', values: ['side=\"left\"']},\r\n\t{key: 'side-right', values: ['side=\"right\"']},\r\n\t{key: 'side-bottom', values: ['side=\"bottom\"']},\r\n\t{key: 'align-center', values: ['align=\"center\"']},\r\n\t{key: 'align-start', values: ['align=\"start\"']},\r\n\t{key: 'align-end', values: ['align=\"end\"']},\r\n\t{key: 'now', values: [null]},\r\n\t{key: 'today', values: [null]},\r\n\t{key: 'weekend', values: [null]},\r\n\t{key: 'in-range', values: [null]},\r\n\t{key: 'out-of-range', values: ['outside-range']},\r\n\t{key: 'range-start', values: [null]},\r\n\t{key: 'range-end', values: [null]},\r\n\t{key: 'unavailable', values: [null]},\r\n\t{key: 'topmost', values: [null]},\r\n\t{key: 'view-day', values: ['view=\"day\"']},\r\n\t{key: 'view-month', values: ['view=\"month\"']},\r\n\t{key: 'view-year', values: ['view=\"year\"']},\r\n\t{key: 'under-value', values: ['state=\"under-value\"']},\r\n\t{key: 'over-value', values: ['state=\"over-value\"']},\r\n\t{key: 'at-value', values: ['state=\"at-value\"']},\r\n\t{key: 'delete-intent', values: [null]},\r\n\t{key: 'unit-hour', values: ['unit=\"hour\"']},\r\n\t{key: 'unit-minute', values: ['unit=\"minute\"']},\r\n\t{key: 'unit-second', values: ['unit=\"second\"']},\r\n\t{key: 'unit-period', values: ['unit=\"period\"']},\r\n\t{key: 'channel-hue', values: ['channel=\"hue\"']},\r\n\t{key: 'channel-saturation', values: ['channel=\"saturation\"']},\r\n\t{key: 'channel-brightness', values: ['channel=\"brightness\"']},\r\n\t{key: 'channel-lightness', values: ['channel=\"lightness\"']},\r\n\t{key: 'channel-red', values: ['channel=\"red\"']},\r\n\t{key: 'channel-green', values: ['channel=\"green\"']},\r\n\t{key: 'channel-blue', values: ['channel=\"blue\"']},\r\n\t{key: 'channel-alpha', values: ['channel=\"alpha\"']},\r\n\t{key: 'channel-hex', values: ['channel=\"hex\"']},\r\n\t{key: 'channel-css', values: ['channel=\"css\"']},\r\n\t{key: 'tour-highlighted', values: [null]},\r\n\t{key: 'scroll-lock', values: [null]},\r\n\t{key: 'inert', values: [null]},\r\n\t{key: 'empty', values: [null]},\r\n\t{key: 'fullscreen', values: [null]},\r\n\t{key: 'loading', values: [null]},\r\n\t{key: 'loaded', values: [null]},\r\n\t{key: 'overflow-x', values: [null]},\r\n\t{key: 'overflow-y', values: [null]},\r\n\t{key: 'scrolling', values: [null]},\r\n\t{key: 'at-top', values: [null]},\r\n\t{key: 'at-bottom', values: [null]},\r\n\t{key: 'at-left', values: [null]},\r\n\t{key: 'at-right', values: [null]},\r\n\t{key: 'reverse', values: [null]},\r\n\t{key: 'clone', values: [null]},\r\n];\r\n\r\nexport interface DynamicVariantEntry {\r\n\tkey: string;\r\n\tvalidate?(subject: string): boolean;\r\n\tknownValues?: Record<string, string>;\r\n}\r\n\r\nconst DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES = Array.from<never>({\r\n\tlength: 10,\r\n}).reduce<Record<string, string>>((o, _v, i) => {\r\n\to[i] = i.toString();\r\n\treturn o;\r\n}, {});\r\n\r\nfunction isInt(subject: string) {\r\n\treturn !Number.isNaN(Number.parseInt(subject, 36));\r\n}\r\n\r\nconst DYNAMIC_VARIANT_ENTRIES: DynamicVariantEntry[] = [\r\n\t{key: 'id'},\r\n\t{key: 'scope'},\r\n\t{key: 'part'},\r\n\t{key: 'value'},\r\n\t{key: 'valuetext'},\r\n\t{\r\n\t\tkey: 'index',\r\n\t\tvalidate: isInt,\r\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\r\n\t},\r\n\t{\r\n\t\tkey: 'columns',\r\n\t\tvalidate: isInt,\r\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\r\n\t},\r\n\t{key: 'branch'},\r\n\t{\r\n\t\tkey: 'depth',\r\n\t\tvalidate: isInt,\r\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\r\n\t},\r\n\t{\r\n\t\tkey: 'path',\r\n\t\tvalidate: isInt,\r\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\r\n\t},\r\n\t{\r\n\t\tkey: 'type',\r\n\t\tknownValues: {\r\n\t\t\t/* toast */\r\n\t\t\tinfo: 'info',\r\n\t\t\terror: 'error',\r\n\t\t\twarning: 'warning',\r\n\t\t\tsuccess: 'success',\r\n\t\t\tloading: 'loading',\r\n\t\t\t/* tour */\r\n\t\t\tfloating: 'floating',\r\n\t\t\ttooltip: 'tooltip',\r\n\t\t\tdialog: 'dialog',\r\n\t\t\twait: 'wait',\r\n\t\t},\r\n\t},\r\n];\r\n\r\nexport interface ZagPluginOptions {\r\n\t/**\r\n\t * @description The prefix for the variants.\r\n\t * @default \"ui\"\r\n\t * @example\r\n\t * ```tsx\r\n\t * <Dialog.Content class=\"ui-open:animate-fade-in ui-closed:animate-fade-out\">\r\n\t * \t...\r\n\t * </Dialog.Content>\r\n\t * ```\r\n\t */\r\n\tprefix?: string;\r\n}\r\n\r\n/**\r\n * @see https://github.com/calvo-jp/tailwindcss-plugin-zag\r\n */\r\nexport default plugin.withOptions<ZagPluginOptions>((config = {}) => {\r\n\tconst prefix = config.prefix ?? 'ui';\r\n\r\n\treturn ({addVariant, matchVariant}) => {\r\n\t\tfor (const {key, values} of STATIC_VARIANT_ENTRIES) {\r\n\t\t\taddVariant(\r\n\t\t\t\t`${prefix}-${key}`,\r\n\t\t\t\tvalues.map((value) => (value === null ? `&[data-${key}]` : `&[data-${value}]`)),\r\n\t\t\t);\r\n\r\n\t\t\taddVariant(\r\n\t\t\t\t`${prefix}-not-${key}`,\r\n\t\t\t\tvalues.map((value) => (value === null ? `&:not([data-${key}])` : `&:not([data-${value}])`)),\r\n\t\t\t);\r\n\r\n\t\t\taddVariant(\r\n\t\t\t\t`${prefix}-group-${key}`,\r\n\t\t\t\tvalues.map((value) =>\r\n\t\t\t\t\tvalue === null ? `.group[data-${key}] &` : `.group[data-${value}] &`,\r\n\t\t\t\t),\r\n\t\t\t);\r\n\r\n\t\t\taddVariant(\r\n\t\t\t\t`${prefix}-peer-${key}`,\r\n\t\t\t\tvalues.map((value) =>\r\n\t\t\t\t\tvalue === null ? `.peer[data-${key}] ~ &` : `.peer[data-${value}] ~ &`,\r\n\t\t\t\t),\r\n\t\t\t);\r\n\t\t}\r\n\r\n\t\tfor (const {key, knownValues, validate} of DYNAMIC_VARIANT_ENTRIES) {\r\n\t\t\tconst isValid = validate ?? (() => true);\r\n\r\n\t\t\tmatchVariant(\r\n\t\t\t\t`${prefix}-${key}`,\r\n\t\t\t\t(value) => (!isValid(value) ? [] : `&[data-${key}=\"${value}\"]`),\r\n\t\t\t\t{values: knownValues},\r\n\t\t\t);\r\n\r\n\t\t\tmatchVariant(\r\n\t\t\t\t`${prefix}-not-${key}`,\r\n\t\t\t\t(value) => (!isValid(value) ? [] : `&:not([data-${key}=\"${value}\"])`),\r\n\t\t\t\t{values: knownValues},\r\n\t\t\t);\r\n\r\n\t\t\tmatchVariant(\r\n\t\t\t\t`${prefix}-group-${key}`,\r\n\t\t\t\t(value) => (!isValid(value) ? [] : `.group[data-${key}=\"${value}\"] &`),\r\n\t\t\t\t{values: knownValues},\r\n\t\t\t);\r\n\r\n\t\t\tmatchVariant(\r\n\t\t\t\t`${prefix}-peer-${key}`,\r\n\t\t\t\t(value) => (!isValid(value) ? [] : `.peer[data-${value}=\"${value}\"] ~ &`),\r\n\t\t\t\t{values: knownValues},\r\n\t\t\t);\r\n\t\t}\r\n\t};\r\n});\r\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,85 +1,86 @@
1
- {
2
- "name": "tailwind-zag",
3
- "type": "module",
4
- "license": "MIT",
5
- "version": "1.0.4",
6
- "main": "./dist/index.cjs",
7
- "module": "./dist/index.js",
8
- "types": "./dist/index.d.ts",
9
- "exports": {
10
- ".": {
11
- "types": "./dist/index.d.ts",
12
- "import": {
13
- "types": "./dist/index.d.ts",
14
- "default": "./dist/index.js"
15
- },
16
- "require": "./dist/index.cjs"
17
- },
18
- "./package.json": "./package.json"
19
- },
20
- "files": [
21
- "dist"
22
- ],
23
- "publishConfig": {
24
- "access": "public"
25
- },
26
- "packageManager": "pnpm@9.15.1",
27
- "author": {
28
- "name": "John Paul Calvo",
29
- "email": "calvojp92@gmail.com"
30
- },
31
- "repository": {
32
- "type": "git",
33
- "url": "git+https://github.com/JohnPaulCalvo/tailwind-zag.git"
34
- },
35
- "bugs": {
36
- "url": "https://github.com/JohnPaulCalvo/tailwind-zag/issues",
37
- "email": "calvojp92@gmail.com"
38
- },
39
- "description": "TailwindCSS plugin for zag-powered components",
40
- "keywords": [
41
- "TailwindCSS",
42
- "zag",
43
- "Ark UI",
44
- "Plugin"
45
- ],
46
- "scripts": {
47
- "test": "vitest",
48
- "lint": "biome lint .",
49
- "format": "biome format --write .",
50
- "build": "tsup",
51
- "release": "release-it"
52
- },
53
- "devDependencies": {
54
- "@biomejs/biome": "^1.9.4",
55
- "@tsconfig/node22": "^22.0.0",
56
- "@types/node": "^22.10.2",
57
- "postcss": "^8.4.49",
58
- "release-it": "^17.11.0",
59
- "tailwindcss": "^3.4.17",
60
- "tsup": "^8.3.5",
61
- "typescript": "^5.7.2",
62
- "vitest": "^2.1.8"
63
- },
64
- "peerDependencies": {
65
- "tailwindcss": "^3.3.3 || ^4.0.0"
66
- },
67
- "release-it": {
68
- "git": {
69
- "commitMessage": "chore: release ${npm.name} v${version}",
70
- "tagName": "${npm.name}@${version}"
71
- },
72
- "github": {
73
- "release": false
74
- },
75
- "hooks": {
76
- "before:init": [
77
- "pnpm lint",
78
- "pnpm test"
79
- ],
80
- "after:bump": [
81
- "pnpm build"
82
- ]
83
- }
84
- }
85
- }
1
+ {
2
+ "name": "tailwind-zag",
3
+ "type": "module",
4
+ "license": "MIT",
5
+ "version": "1.1.0",
6
+ "main": "./dist/index.cjs",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": {
13
+ "types": "./dist/index.d.ts",
14
+ "default": "./dist/index.js"
15
+ },
16
+ "require": "./dist/index.cjs"
17
+ },
18
+ "./package.json": "./package.json"
19
+ },
20
+ "files": [
21
+ "dist"
22
+ ],
23
+ "publishConfig": {
24
+ "access": "public"
25
+ },
26
+ "packageManager": "pnpm@10.25.0",
27
+ "author": {
28
+ "name": "John Paul Calvo",
29
+ "email": "looselytiedshoelace@gmail.com"
30
+ },
31
+ "repository": {
32
+ "type": "git",
33
+ "url": "git+https://github.com/CalvoJohnPaul/tailwind-zag.git"
34
+ },
35
+ "bugs": {
36
+ "url": "https://github.com/CalvoJohnPaul/tailwind-zag/issues",
37
+ "email": "looselytiedshoelace@gmail.com"
38
+ },
39
+ "description": "TailwindCSS plugin for zag-powered components",
40
+ "keywords": [
41
+ "TailwindCSS",
42
+ "zag",
43
+ "Ark UI",
44
+ "Plugin"
45
+ ],
46
+ "scripts": {
47
+ "dev": "tsdown --watch",
48
+ "test": "vitest",
49
+ "lint": "biome lint .",
50
+ "format": "biome format --write .",
51
+ "build": "tsdown",
52
+ "release": "release-it"
53
+ },
54
+ "devDependencies": {
55
+ "@biomejs/biome": "^2.3.8",
56
+ "@tsconfig/node22": "^22.0.5",
57
+ "@types/node": "^24.10.2",
58
+ "postcss": "^8.5.6",
59
+ "release-it": "^19.0.6",
60
+ "tailwindcss": "^3.4.17",
61
+ "tsdown": "^0.17.2",
62
+ "typescript": "^5.9.3",
63
+ "vitest": "^4.0.15"
64
+ },
65
+ "peerDependencies": {
66
+ "tailwindcss": "^3.3.3 || ^4.0.0"
67
+ },
68
+ "release-it": {
69
+ "git": {
70
+ "commitMessage": "chore: release ${npm.name} v${version}",
71
+ "tagName": "${npm.name}@${version}"
72
+ },
73
+ "github": {
74
+ "release": false
75
+ },
76
+ "hooks": {
77
+ "before:init": [
78
+ "pnpm lint",
79
+ "pnpm test"
80
+ ],
81
+ "after:bump": [
82
+ "pnpm build"
83
+ ]
84
+ }
85
+ }
86
+ }
package/dist/index.d.ts DELETED
@@ -1,36 +0,0 @@
1
- import * as tailwindcss_types_config_js from 'tailwindcss/types/config.js';
2
-
3
- interface StaticVariantEntry {
4
- key: string;
5
- values: (string | null)[];
6
- }
7
- interface DynamicVariantEntry {
8
- key: string;
9
- validate?(subject: string): boolean;
10
- knownValues?: Record<string, string>;
11
- }
12
- interface ZagPluginOptions {
13
- /**
14
- * @description The prefix for the variants.
15
- * @default "ui"
16
- * @example
17
- * ```tsx
18
- * <Dialog.Content class="ui-open:animate-fade-in ui-closed:animate-fade-out">
19
- * ...
20
- * </Dialog.Content>
21
- * ```
22
- */
23
- prefix?: string;
24
- }
25
- /**
26
- * @see https://github.com/calvo-jp/tailwindcss-plugin-zag
27
- */
28
- declare const _default: {
29
- (options: ZagPluginOptions): {
30
- handler: tailwindcss_types_config_js.PluginCreator;
31
- config?: Partial<tailwindcss_types_config_js.Config>;
32
- };
33
- __isOptionsFunction: true;
34
- };
35
-
36
- export { type DynamicVariantEntry, type StaticVariantEntry, type ZagPluginOptions, _default as default };
package/dist/index.js DELETED
@@ -1,208 +0,0 @@
1
- import plugin from 'tailwindcss/plugin.js';
2
-
3
- // src/index.ts
4
- var STATIC_VARIANT_ENTRIES = [
5
- { key: "hover", values: [null] },
6
- { key: "focus", values: [null] },
7
- { key: "focus-visible", values: [null] },
8
- { key: "focusable", values: [null] },
9
- { key: "active", values: [null] },
10
- { key: "valid", values: [null] },
11
- { key: "invalid", values: [null] },
12
- { key: "disabled", values: [null] },
13
- { key: "readonly", values: [null, "read-only"] },
14
- { key: "current", values: [null] },
15
- { key: "inview", values: [null] },
16
- { key: "copied", values: [null] },
17
- { key: "collapsible", values: [null] },
18
- { key: "highlighted", values: [null] },
19
- { key: "selected", values: [null] },
20
- { key: "placeholder", values: [null] },
21
- { key: "placeholder-shown", values: [null] },
22
- { key: "autoresize", values: [null] },
23
- { key: "required", values: [null] },
24
- { key: "grabbed", values: [null] },
25
- { key: "dragging", values: [null] },
26
- { key: "complete", values: [null] },
27
- { key: "incomplete", values: [null] },
28
- { key: "expanded", values: [null, 'state="expanded"'] },
29
- { key: "half", values: [null] },
30
- { key: "first", values: [null] },
31
- { key: "mounted", values: [null] },
32
- { key: "overlap", values: [null] },
33
- { key: "sibling", values: [null] },
34
- { key: "paused", values: [null] },
35
- { key: "pressed", values: [null] },
36
- { key: "on", values: ['state="on"'] },
37
- { key: "off", values: ['state="off"'] },
38
- { key: "open", values: ['state="open"'] },
39
- { key: "closed", values: ['state="closed"'] },
40
- { key: "hidden", values: [null, 'state="hidden"'] },
41
- { key: "visible", values: [null, 'state="visible"'] },
42
- { key: "checked", values: [null, 'state="checked"'] },
43
- { key: "unchecked", values: [null, 'state="unchecked"'] },
44
- { key: "indeterminate", values: [null, 'state="indeterminate"'] },
45
- { key: "vertical", values: ['orientation="vertical"'] },
46
- { key: "horizontal", values: ['orientation="horizontal"'] },
47
- { key: "placement-top", values: ['placement="top"'] },
48
- { key: "placement-top-end", values: ['placement="top-end"'] },
49
- { key: "placement-top-start", values: ['placement="top-start"'] },
50
- { key: "placement-left", values: ['placement="left"'] },
51
- { key: "placement-left-end", values: ['placement="left-end"'] },
52
- { key: "placement-left-start", values: ['placement="left-start"'] },
53
- { key: "placement-right", values: ['placement="right"'] },
54
- { key: "placement-right-end", values: ['placement="right-end"'] },
55
- { key: "placement-right-start", values: ['placement="right-start"'] },
56
- { key: "placement-bottom", values: ['placement="bottom"'] },
57
- { key: "placement-bottom-end", values: ['placement="bottom-end"'] },
58
- { key: "placement-bottom-start", values: ['placement="bottom-start"'] },
59
- { key: "side-top", values: ['side="top"'] },
60
- { key: "side-left", values: ['side="left"'] },
61
- { key: "side-right", values: ['side="right"'] },
62
- { key: "side-bottom", values: ['side="bottom"'] },
63
- { key: "align-center", values: ['align="center"'] },
64
- { key: "align-start", values: ['align="start"'] },
65
- { key: "align-end", values: ['align="end"'] },
66
- { key: "now", values: [null] },
67
- { key: "today", values: [null] },
68
- { key: "weekend", values: [null] },
69
- { key: "in-range", values: [null] },
70
- { key: "out-of-range", values: ["outside-range"] },
71
- { key: "range-start", values: [null] },
72
- { key: "range-end", values: [null] },
73
- { key: "unavailable", values: [null] },
74
- { key: "topmost", values: [null] },
75
- { key: "view-day", values: ['view="day"'] },
76
- { key: "view-month", values: ['view="month"'] },
77
- { key: "view-year", values: ['view="year"'] },
78
- { key: "under-value", values: ['state="under-value"'] },
79
- { key: "over-value", values: ['state="over-value"'] },
80
- { key: "at-value", values: ['state="at-value"'] },
81
- { key: "delete-intent", values: [null] },
82
- { key: "unit-hour", values: ['unit="hour"'] },
83
- { key: "unit-minute", values: ['unit="minute"'] },
84
- { key: "unit-second", values: ['unit="second"'] },
85
- { key: "unit-period", values: ['unit="period"'] },
86
- { key: "channel-hue", values: ['channel="hue"'] },
87
- { key: "channel-saturation", values: ['channel="saturation"'] },
88
- { key: "channel-brightness", values: ['channel="brightness"'] },
89
- { key: "channel-lightness", values: ['channel="lightness"'] },
90
- { key: "channel-red", values: ['channel="red"'] },
91
- { key: "channel-green", values: ['channel="green"'] },
92
- { key: "channel-blue", values: ['channel="blue"'] },
93
- { key: "channel-alpha", values: ['channel="alpha"'] },
94
- { key: "channel-hex", values: ['channel="hex"'] },
95
- { key: "channel-css", values: ['channel="css"'] },
96
- { key: "tour-highlighted", values: [null] },
97
- { key: "scroll-lock", values: [null] },
98
- { key: "inert", values: [null] },
99
- { key: "empty", values: [null] },
100
- { key: "fullscreen", values: [null] },
101
- { key: "loading", values: [null] }
102
- ];
103
- var DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES = Array.from({
104
- length: 10
105
- }).reduce((o, _v, i) => {
106
- o[i] = i.toString();
107
- return o;
108
- }, {});
109
- function isInt(subject) {
110
- return !Number.isNaN(Number.parseInt(subject));
111
- }
112
- var DYNAMIC_VARIANT_ENTRIES = [
113
- { key: "scope" },
114
- { key: "part" },
115
- { key: "value" },
116
- { key: "valuetext" },
117
- {
118
- key: "index",
119
- validate: isInt,
120
- knownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES
121
- },
122
- {
123
- key: "columns",
124
- validate: isInt,
125
- knownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES
126
- },
127
- { key: "branch" },
128
- {
129
- key: "depth",
130
- validate: isInt,
131
- knownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES
132
- },
133
- {
134
- key: "path",
135
- validate: isInt,
136
- knownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES
137
- },
138
- {
139
- key: "type",
140
- knownValues: {
141
- /* toast */
142
- info: "info",
143
- error: "error",
144
- warning: "warning",
145
- success: "success",
146
- loading: "loading",
147
- /* tour */
148
- floating: "floating",
149
- tooltip: "tooltip",
150
- dialog: "dialog",
151
- wait: "wait"
152
- }
153
- }
154
- ];
155
- var index_default = plugin.withOptions((config = {}) => {
156
- const prefix = config.prefix ?? "ui";
157
- return ({ addVariant, matchVariant }) => {
158
- for (const { key, values } of STATIC_VARIANT_ENTRIES) {
159
- addVariant(
160
- `${prefix}-${key}`,
161
- values.map((value) => value === null ? `&[data-${key}]` : `&[data-${value}]`)
162
- );
163
- addVariant(
164
- `${prefix}-not-${key}`,
165
- values.map((value) => value === null ? `&:not([data-${key}])` : `&:not([data-${value}])`)
166
- );
167
- addVariant(
168
- `${prefix}-group-${key}`,
169
- values.map(
170
- (value) => value === null ? `.group[data-${key}] &` : `.group[data-${value}] &`
171
- )
172
- );
173
- addVariant(
174
- `${prefix}-peer-${key}`,
175
- values.map(
176
- (value) => value === null ? `.peer[data-${key}] ~ &` : `.peer[data-${value}] ~ &`
177
- )
178
- );
179
- }
180
- for (const { key, knownValues, validate } of DYNAMIC_VARIANT_ENTRIES) {
181
- const isValid = validate ?? (() => true);
182
- matchVariant(
183
- `${prefix}-${key}`,
184
- (value) => !isValid(value) ? [] : `&[data-${key}="${value}"]`,
185
- { values: knownValues }
186
- );
187
- matchVariant(
188
- `${prefix}-not-${key}`,
189
- (value) => !isValid(value) ? [] : `&:not([data-${key}="${value}"])`,
190
- { values: knownValues }
191
- );
192
- matchVariant(
193
- `${prefix}-group-${key}`,
194
- (value) => !isValid(value) ? [] : `.group[data-${key}="${value}"] &`,
195
- { values: knownValues }
196
- );
197
- matchVariant(
198
- `${prefix}-peer-${key}`,
199
- (value) => !isValid(value) ? [] : `.peer[data-${value}="${value}"] ~ &`,
200
- { values: knownValues }
201
- );
202
- }
203
- };
204
- });
205
-
206
- export { index_default as default };
207
- //# sourceMappingURL=index.js.map
208
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import plugin from 'tailwindcss/plugin.js';\n\nexport interface StaticVariantEntry {\n\tkey: string;\n\tvalues: (string | null)[];\n}\n\nconst STATIC_VARIANT_ENTRIES: StaticVariantEntry[] = [\n\t{key: 'hover', values: [null]},\n\t{key: 'focus', values: [null]},\n\t{key: 'focus-visible', values: [null]},\n\t{key: 'focusable', values: [null]},\n\t{key: 'active', values: [null]},\n\t{key: 'valid', values: [null]},\n\t{key: 'invalid', values: [null]},\n\t{key: 'disabled', values: [null]},\n\t{key: 'readonly', values: [null, 'read-only']},\n\t{key: 'current', values: [null]},\n\t{key: 'inview', values: [null]},\n\t{key: 'copied', values: [null]},\n\t{key: 'collapsible', values: [null]},\n\t{key: 'highlighted', values: [null]},\n\t{key: 'selected', values: [null]},\n\t{key: 'placeholder', values: [null]},\n\t{key: 'placeholder-shown', values: [null]},\n\t{key: 'autoresize', values: [null]},\n\t{key: 'required', values: [null]},\n\t{key: 'grabbed', values: [null]},\n\t{key: 'dragging', values: [null]},\n\t{key: 'complete', values: [null]},\n\t{key: 'incomplete', values: [null]},\n\t{key: 'expanded', values: [null, 'state=\"expanded\"']},\n\t{key: 'half', values: [null]},\n\t{key: 'first', values: [null]},\n\t{key: 'mounted', values: [null]},\n\t{key: 'overlap', values: [null]},\n\t{key: 'sibling', values: [null]},\n\t{key: 'paused', values: [null]},\n\t{key: 'pressed', values: [null]},\n\t{key: 'on', values: ['state=\"on\"']},\n\t{key: 'off', values: ['state=\"off\"']},\n\t{key: 'open', values: ['state=\"open\"']},\n\t{key: 'closed', values: ['state=\"closed\"']},\n\t{key: 'hidden', values: [null, 'state=\"hidden\"']},\n\t{key: 'visible', values: [null, 'state=\"visible\"']},\n\t{key: 'checked', values: [null, 'state=\"checked\"']},\n\t{key: 'unchecked', values: [null, 'state=\"unchecked\"']},\n\t{key: 'indeterminate', values: [null, 'state=\"indeterminate\"']},\n\t{key: 'vertical', values: ['orientation=\"vertical\"']},\n\t{key: 'horizontal', values: ['orientation=\"horizontal\"']},\n\t{key: 'placement-top', values: ['placement=\"top\"']},\n\t{key: 'placement-top-end', values: ['placement=\"top-end\"']},\n\t{key: 'placement-top-start', values: ['placement=\"top-start\"']},\n\t{key: 'placement-left', values: ['placement=\"left\"']},\n\t{key: 'placement-left-end', values: ['placement=\"left-end\"']},\n\t{key: 'placement-left-start', values: ['placement=\"left-start\"']},\n\t{key: 'placement-right', values: ['placement=\"right\"']},\n\t{key: 'placement-right-end', values: ['placement=\"right-end\"']},\n\t{key: 'placement-right-start', values: ['placement=\"right-start\"']},\n\t{key: 'placement-bottom', values: ['placement=\"bottom\"']},\n\t{key: 'placement-bottom-end', values: ['placement=\"bottom-end\"']},\n\t{key: 'placement-bottom-start', values: ['placement=\"bottom-start\"']},\n\t{key: 'side-top', values: ['side=\"top\"']},\n\t{key: 'side-left', values: ['side=\"left\"']},\n\t{key: 'side-right', values: ['side=\"right\"']},\n\t{key: 'side-bottom', values: ['side=\"bottom\"']},\n\t{key: 'align-center', values: ['align=\"center\"']},\n\t{key: 'align-start', values: ['align=\"start\"']},\n\t{key: 'align-end', values: ['align=\"end\"']},\n\t{key: 'now', values: [null]},\n\t{key: 'today', values: [null]},\n\t{key: 'weekend', values: [null]},\n\t{key: 'in-range', values: [null]},\n\t{key: 'out-of-range', values: ['outside-range']},\n\t{key: 'range-start', values: [null]},\n\t{key: 'range-end', values: [null]},\n\t{key: 'unavailable', values: [null]},\n\t{key: 'topmost', values: [null]},\n\t{key: 'view-day', values: ['view=\"day\"']},\n\t{key: 'view-month', values: ['view=\"month\"']},\n\t{key: 'view-year', values: ['view=\"year\"']},\n\t{key: 'under-value', values: ['state=\"under-value\"']},\n\t{key: 'over-value', values: ['state=\"over-value\"']},\n\t{key: 'at-value', values: ['state=\"at-value\"']},\n\t{key: 'delete-intent', values: [null]},\n\t{key: 'unit-hour', values: ['unit=\"hour\"']},\n\t{key: 'unit-minute', values: ['unit=\"minute\"']},\n\t{key: 'unit-second', values: ['unit=\"second\"']},\n\t{key: 'unit-period', values: ['unit=\"period\"']},\n\t{key: 'channel-hue', values: ['channel=\"hue\"']},\n\t{key: 'channel-saturation', values: ['channel=\"saturation\"']},\n\t{key: 'channel-brightness', values: ['channel=\"brightness\"']},\n\t{key: 'channel-lightness', values: ['channel=\"lightness\"']},\n\t{key: 'channel-red', values: ['channel=\"red\"']},\n\t{key: 'channel-green', values: ['channel=\"green\"']},\n\t{key: 'channel-blue', values: ['channel=\"blue\"']},\n\t{key: 'channel-alpha', values: ['channel=\"alpha\"']},\n\t{key: 'channel-hex', values: ['channel=\"hex\"']},\n\t{key: 'channel-css', values: ['channel=\"css\"']},\n\t{key: 'tour-highlighted', values: [null]},\n\t{key: 'scroll-lock', values: [null]},\n\t{key: 'inert', values: [null]},\n\t{key: 'empty', values: [null]},\n\t{key: 'fullscreen', values: [null]},\n\t{key: 'loading', values: [null]},\n];\n\nexport interface DynamicVariantEntry {\n\tkey: string;\n\tvalidate?(subject: string): boolean;\n\tknownValues?: Record<string, string>;\n}\n\nconst DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES = Array.from<never>({\n\tlength: 10,\n}).reduce<Record<string, string>>((o, _v, i) => {\n\to[i] = i.toString();\n\treturn o;\n}, {});\n\nfunction isInt(subject: string) {\n\treturn !Number.isNaN(Number.parseInt(subject));\n}\n\nconst DYNAMIC_VARIANT_ENTRIES: DynamicVariantEntry[] = [\n\t{key: 'scope'},\n\t{key: 'part'},\n\t{key: 'value'},\n\t{key: 'valuetext'},\n\t{\n\t\tkey: 'index',\n\t\tvalidate: isInt,\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\n\t},\n\t{\n\t\tkey: 'columns',\n\t\tvalidate: isInt,\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\n\t},\n\t{key: 'branch'},\n\t{\n\t\tkey: 'depth',\n\t\tvalidate: isInt,\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\n\t},\n\t{\n\t\tkey: 'path',\n\t\tvalidate: isInt,\n\t\tknownValues: DEFAULT_DYNAMIC_VARIANT_ENTRY_KNOWN_INT_VALUES,\n\t},\n\t{\n\t\tkey: 'type',\n\t\tknownValues: {\n\t\t\t/* toast */\n\t\t\tinfo: 'info',\n\t\t\terror: 'error',\n\t\t\twarning: 'warning',\n\t\t\tsuccess: 'success',\n\t\t\tloading: 'loading',\n\t\t\t/* tour */\n\t\t\tfloating: 'floating',\n\t\t\ttooltip: 'tooltip',\n\t\t\tdialog: 'dialog',\n\t\t\twait: 'wait',\n\t\t},\n\t},\n];\n\nexport interface ZagPluginOptions {\n\t/**\n\t * @description The prefix for the variants.\n\t * @default \"ui\"\n\t * @example\n\t * ```tsx\n\t * <Dialog.Content class=\"ui-open:animate-fade-in ui-closed:animate-fade-out\">\n\t * \t...\n\t * </Dialog.Content>\n\t * ```\n\t */\n\tprefix?: string;\n}\n\n/**\n * @see https://github.com/calvo-jp/tailwindcss-plugin-zag\n */\nexport default plugin.withOptions<ZagPluginOptions>((config = {}) => {\n\tconst prefix = config.prefix ?? 'ui';\n\n\treturn ({addVariant, matchVariant}) => {\n\t\tfor (const {key, values} of STATIC_VARIANT_ENTRIES) {\n\t\t\taddVariant(\n\t\t\t\t`${prefix}-${key}`,\n\t\t\t\tvalues.map((value) => (value === null ? `&[data-${key}]` : `&[data-${value}]`)),\n\t\t\t);\n\n\t\t\taddVariant(\n\t\t\t\t`${prefix}-not-${key}`,\n\t\t\t\tvalues.map((value) => (value === null ? `&:not([data-${key}])` : `&:not([data-${value}])`)),\n\t\t\t);\n\n\t\t\taddVariant(\n\t\t\t\t`${prefix}-group-${key}`,\n\t\t\t\tvalues.map((value) =>\n\t\t\t\t\tvalue === null ? `.group[data-${key}] &` : `.group[data-${value}] &`,\n\t\t\t\t),\n\t\t\t);\n\n\t\t\taddVariant(\n\t\t\t\t`${prefix}-peer-${key}`,\n\t\t\t\tvalues.map((value) =>\n\t\t\t\t\tvalue === null ? `.peer[data-${key}] ~ &` : `.peer[data-${value}] ~ &`,\n\t\t\t\t),\n\t\t\t);\n\t\t}\n\n\t\tfor (const {key, knownValues, validate} of DYNAMIC_VARIANT_ENTRIES) {\n\t\t\tconst isValid = validate ?? (() => true);\n\n\t\t\tmatchVariant(\n\t\t\t\t`${prefix}-${key}`,\n\t\t\t\t(value) => (!isValid(value) ? [] : `&[data-${key}=\"${value}\"]`),\n\t\t\t\t{values: knownValues},\n\t\t\t);\n\n\t\t\tmatchVariant(\n\t\t\t\t`${prefix}-not-${key}`,\n\t\t\t\t(value) => (!isValid(value) ? [] : `&:not([data-${key}=\"${value}\"])`),\n\t\t\t\t{values: knownValues},\n\t\t\t);\n\n\t\t\tmatchVariant(\n\t\t\t\t`${prefix}-group-${key}`,\n\t\t\t\t(value) => (!isValid(value) ? [] : `.group[data-${key}=\"${value}\"] &`),\n\t\t\t\t{values: knownValues},\n\t\t\t);\n\n\t\t\tmatchVariant(\n\t\t\t\t`${prefix}-peer-${key}`,\n\t\t\t\t(value) => (!isValid(value) ? [] : `.peer[data-${value}=\"${value}\"] ~ &`),\n\t\t\t\t{values: knownValues},\n\t\t\t);\n\t\t}\n\t};\n});\n"]}