@blockbite/tailwind-css-parser 0.12.10 → 0.12.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,17 +2,22 @@
2
2
 
3
3
  A lightweight, isomorphic utility to compile Tailwind CSS from a string of content, designed for server-side (Node.js) and client-side (browser) environments.
4
4
 
5
+ BlockBite uses a fork of the Semantic UI Tailwind Lightning CSS parser as the base implementation:
6
+ https://github.com/Semantic-Org/Semantic-Next/blob/55f1c6acc1e59e5334d207aa53b39be8c80978bb/packages/tailwind/package.json
7
+
5
8
  This package uses the official Tailwind CSS engine, including a custom single-threaded WASM build of the Oxide scanner for safe and efficient use in the browser. It is the perfect solution for dynamic applications, component libraries, or any scenario where you need to generate Tailwind styles on-the-fly without relying on the DOM or a traditional build step.
6
9
 
10
+ In BlockBite Studio, this parser is used to parse Tailwind CSS, and our custom `uiConvert` layer is built around it to convert Tailwind class strings to object representations and vice versa.
11
+
7
12
  While created for a ground-up rewrite of Semantic UI, this package is a powerful, standalone tool for any developer needing to compile Tailwind CSS programmatically.
8
13
 
9
14
  ## Key Features
10
15
 
11
- * **Compile from String**: Core functionality to generate CSS from a string of HTML or JavaScript content.
12
- * **Isomorphic**: Works seamlessly in Node.js and modern browsers.
13
- * **WASM-Powered**: Uses a WebAssembly-based scanner in the browser for high performance without dependencies.
14
- * **Zero Production Dependencies**: Clean and lightweight for your projects.
15
- * **Component Plugin Included**: Also includes a plugin for easy integration with a component definition structure.
16
+ - **Compile from String**: Core functionality to generate CSS from a string of HTML or JavaScript content.
17
+ - **Isomorphic**: Works seamlessly in Node.js and modern browsers.
18
+ - **WASM-Powered**: Uses a WebAssembly-based scanner in the browser for high performance without dependencies.
19
+ - **Zero Production Dependencies**: Clean and lightweight for your projects.
20
+ - **Component Plugin Included**: Also includes a plugin for easy integration with a component definition structure.
16
21
 
17
22
  ## Primary Usage: Compile CSS from a String
18
23
 
@@ -43,7 +48,7 @@ import { TailwindPlugin } from '@semantic-ui/tailwind';
43
48
 
44
49
  const myComponent = {
45
50
  name: 'my-button',
46
- template: `<button class="px-4 py-2 bg-purple-600 text-white rounded-lg">Click Me</button>`
51
+ template: `<button class="px-4 py-2 bg-purple-600 text-white rounded-lg">Click Me</button>`,
47
52
  };
48
53
 
49
54
  const tailwind = TailwindPlugin();
@@ -1,14 +1,14 @@
1
- function c(n, t) {
2
- return { handler: n, config: t };
1
+ function d(n, a) {
2
+ return { handler: n, config: a };
3
3
  }
4
- c.withOptions = function(n, t = () => ({})) {
5
- function r(a) {
6
- return { handler: n(a), config: t(a) };
4
+ d.withOptions = function(n, a = () => ({})) {
5
+ function i(r) {
6
+ return { handler: n(r), config: a(r) };
7
7
  }
8
- return r.__isOptionsFunction = !0, r;
8
+ return i.__isOptionsFunction = !0, i;
9
9
  };
10
- var i = c;
11
- const b = i(function({ addComponents: n }) {
10
+ var t = d;
11
+ const g = t(function({ addComponents: n }) {
12
12
  n({
13
13
  ".container": {
14
14
  "box-sizing": "border-box",
@@ -16,7 +16,26 @@ const b = i(function({ addComponents: n }) {
16
16
  marginRight: "auto",
17
17
  paddingLeft: "var(--bb-container-padding, 4vw)",
18
18
  paddingRight: "var(--bb-container-padding, 4vw)",
19
- maxWidth: "var(--bb-container-width, 100%)"
19
+ maxWidth: "var(--bb-container-width, 100%)",
20
+ width: "100%"
21
+ },
22
+ ".container-wide": {
23
+ "box-sizing": "border-box",
24
+ marginLeft: "auto",
25
+ marginRight: "auto",
26
+ paddingLeft: "var(--bb-container-padding, 4vw)",
27
+ paddingRight: "var(--bb-container-padding, 4vw)",
28
+ maxWidth: "var(--bb-container-wide-width, 100%)",
29
+ width: "100%"
30
+ },
31
+ ".container-full": {
32
+ "box-sizing": "border-box",
33
+ marginLeft: "auto",
34
+ marginRight: "auto",
35
+ paddingLeft: "var(--bb-container-full-padding, var(--bb-container-padding, 4vw))",
36
+ paddingRight: "var(--bb-container-full-padding, var(--bb-container-padding, 4vw))",
37
+ maxWidth: "var(--bb-container-full-width, 100%)",
38
+ width: "100%"
20
39
  },
21
40
  ".container-inner": {
22
41
  "box-sizing": "border-box",
@@ -34,35 +53,35 @@ const b = i(function({ addComponents: n }) {
34
53
  paddingRight: "calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )"
35
54
  }
36
55
  }, { variants: ["responsive"] });
37
- }), l = i(function({ matchUtilities: n }) {
56
+ }), l = t(function({ matchUtilities: n }) {
38
57
  n({
39
- area: (t) => {
40
- const r = t.split(/[\/-]/).map((a) => a.trim());
41
- return r.length === 4 && r.every(Boolean) ? {
42
- "--area": `${r[0]} / ${r[1]} / ${r[2]} / ${r[3]}`
58
+ area: (a) => {
59
+ const i = a.split(/[\/-]/).map((r) => r.trim());
60
+ return i.length === 4 && i.every(Boolean) ? {
61
+ "--area": `${i[0]} / ${i[1]} / ${i[2]} / ${i[3]}`
43
62
  } : {};
44
63
  }
45
64
  }, { values: {} }), n({
46
- "grid-area": (t) => {
47
- const a = String(t).trim().match(/^(\d+)\s*[\/ -]\s*(\d+)$/);
48
- if (!a)
65
+ "grid-area": (a) => {
66
+ const r = String(a).trim().match(/^(\d+)\s*[\/ -]\s*(\d+)$/);
67
+ if (!r)
49
68
  return {};
50
- const e = parseInt(a[1], 10), o = parseInt(a[2], 10);
69
+ const e = parseInt(r[1], 10), o = parseInt(r[2], 10);
51
70
  if (!Number.isFinite(e) || !Number.isFinite(o) || e <= 0 || o <= 0)
52
71
  return {};
53
- const d = Math.ceil(e / 2), s = Math.ceil(o / 2);
72
+ const c = Math.ceil(e / 2), b = Math.ceil(o / 2);
54
73
  return {
55
74
  display: "grid",
56
75
  gridTemplateColumns: `repeat(${e}, minmax(0, 1fr))`,
57
76
  gridTemplateRows: `repeat(${o}, minmax(0, 1fr))`,
58
- "--b_area": `1 / 1 / ${s} / ${d}`,
77
+ "--b_area": `1 / 1 / ${b} / ${c}`,
59
78
  "& > *": {
60
79
  gridArea: "var(--area, var(--b_area))"
61
80
  }
62
81
  };
63
82
  }
64
83
  }, { values: {} });
65
- }), g = i(function({ addUtilities: n }) {
84
+ }), s = t(function({ addUtilities: n }) {
66
85
  n({
67
86
  // Text mask: make text transparent and clip background to text
68
87
  ".b_mask-text": {
@@ -72,7 +91,7 @@ const b = i(function({ addComponents: n }) {
72
91
  "-webkit-background-clip": "text"
73
92
  }
74
93
  });
75
- }), p = i(function({ addVariant: n }) {
94
+ }), v = t(function({ addVariant: n }) {
76
95
  n("children", "& > *"), [
77
96
  "p",
78
97
  "a",
@@ -83,13 +102,13 @@ const b = i(function({ addComponents: n }) {
83
102
  "h1",
84
103
  "h2",
85
104
  "blockquote"
86
- ].forEach((r) => {
87
- n(`children-${r}`, `& > ${r}`);
105
+ ].forEach((i) => {
106
+ n(`children-${i}`, `& > ${i}`);
88
107
  });
89
- }), u = i(function(n) {
90
- l.handler(n), b.handler(n), g.handler(n), p.handler(n);
108
+ }), p = t(function(n) {
109
+ l.handler(n), g.handler(n), s.handler(n), v.handler(n);
91
110
  });
92
111
  export {
93
- u as default
112
+ p as default
94
113
  };
95
- //# sourceMappingURL=index-DlV_dWj4.js.map
114
+ //# sourceMappingURL=index-BKxmDcfr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BKxmDcfr.js","sources":["../../../node_modules/.pnpm/tailwindcss@4.1.18/node_modules/tailwindcss/dist/plugin.mjs","../../tailwind/dist/plugins/fluid-container.js","../../tailwind/dist/plugins/grid-area.js","../../tailwind/dist/plugins/mask.js","../../tailwind/dist/variants/children.js","../../tailwind/dist/index.js"],"sourcesContent":["function g(i,n){return{handler:i,config:n}}g.withOptions=function(i,n=()=>({})){function t(o){return{handler:i(o),config:n(o)}}return t.__isOptionsFunction=!0,t};var u=g;export{u as default};\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addComponents }) {\n /*\n tailwind-config-functions.ts\n \n @media (min-width: 96rem) {\n :root {\n --bb-container-padding: 1rem;\n --bb-container-width: 96rem;\n --bb-container-wide-width: 'min(96vw, 112rem)',\n --bb-container-full-width: 100%;\n }\n }\n */\n const components = {\n '.container': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n maxWidth: 'var(--bb-container-width, 100%)',\n width: '100%',\n },\n '.container-wide': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n maxWidth: 'var(--bb-container-wide-width, 100%)',\n width: '100%',\n },\n '.container-full': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-full-padding, var(--bb-container-padding, 4vw))',\n paddingRight: 'var(--bb-container-full-padding, var(--bb-container-padding, 4vw))',\n maxWidth: 'var(--bb-container-full-width, 100%)',\n width: '100%',\n },\n '.container-inner': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n '.container-inner-left': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n },\n '.container-inner-right': {\n 'box-sizing': 'border-box',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n };\n addComponents(components, { variants: ['responsive'] });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ matchUtilities }) {\n // Arbitrary value utility that only sets --area\n matchUtilities({\n area: (value) => {\n const parts = value.split(/[\\/-]/).map((p) => p.trim());\n if (parts.length === 4 && parts.every(Boolean)) {\n return {\n '--area': `${parts[0]} / ${parts[1]} / ${parts[2]} / ${parts[3]}`,\n };\n }\n return {}; // ignore invalid values\n },\n }, { values: {} });\n // Arbitrary grid container: grid-area-[cols/rows]\n // - Sets grid templates with given track counts\n // - Provides default 25% area via --b_area (half cols x half rows)\n matchUtilities({\n 'grid-area': (value) => {\n const str = String(value).trim();\n const m = str.match(/^(\\d+)\\s*[\\/ -]\\s*(\\d+)$/);\n if (!m)\n return {};\n const cols = parseInt(m[1], 10);\n const rows = parseInt(m[2], 10);\n if (!Number.isFinite(cols) ||\n !Number.isFinite(rows) ||\n cols <= 0 ||\n rows <= 0)\n return {};\n const halfCols = Math.ceil(cols / 2);\n const halfRows = Math.ceil(rows / 2);\n return {\n display: 'grid',\n gridTemplateColumns: `repeat(${cols}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${rows}, minmax(0, 1fr))`,\n '--b_area': `1 / 1 / ${halfRows} / ${halfCols}`,\n '& > *': {\n gridArea: 'var(--area, var(--b_area))',\n },\n };\n },\n }, { values: {} });\n});\n","import plugin from 'tailwindcss/plugin';\n// Utilities-based mask plugin so we can add variants and more masks later\nexport default plugin(function ({ addUtilities }) {\n addUtilities({\n // Text mask: make text transparent and clip background to text\n '.b_mask-text': {\n color: 'transparent',\n '-webkit-text-fill-color': 'transparent',\n 'background-clip': 'text',\n '-webkit-background-clip': 'text',\n },\n });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addVariant }) {\n // all direct children\n // NOTE: Avoid `:where(&)` here: `:where()` has zero specificity, which can make\n // `children:*` utilities lose against scoped editor styles like\n // `.editor-styles-wrapper p { ... }` in the WP backend.\n addVariant('children', '& > *');\n // element-specific direct children\n const elements = [\n 'p',\n 'a',\n 'img',\n 'ol',\n 'ul',\n 'li',\n 'h1',\n 'h2',\n 'blockquote',\n ];\n elements.forEach((el) => {\n addVariant(`children-${el}`, `& > ${el}`);\n });\n});\n","import plugin from 'tailwindcss/plugin';\n// Plugins\nimport fluidContainer from './plugins/fluid-container.js';\nimport gridArea from './plugins/grid-area.js';\nimport mask from './plugins/mask.js';\nimport children from './variants/children.js';\nconst blockbiteTailwindPlugin = plugin(function (api) {\n // Register all plugins/utilities and variants\n gridArea.handler(api);\n fluidContainer.handler(api);\n mask.handler(api);\n children.handler(api);\n});\nexport default blockbiteTailwindPlugin;\n"],"names":["g","i","n","t","o","u","fluidContainer","plugin","addComponents","gridArea","matchUtilities","value","parts","p","m","cols","rows","halfCols","halfRows","mask","addUtilities","children","addVariant","el","blockbiteTailwindPlugin","api"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function d(n,a){return{handler:n,config:a}}d.withOptions=function(n,a=()=>({})){function i(t){return{handler:n(t),config:a(t)}}return i.__isOptionsFunction=!0,i};var r=d;const g=r(function({addComponents:n}){n({".container":{"box-sizing":"border-box",marginLeft:"auto",marginRight:"auto",paddingLeft:"var(--bb-container-padding, 4vw)",paddingRight:"var(--bb-container-padding, 4vw)",maxWidth:"var(--bb-container-width, 100%)",width:"100%"},".container-wide":{"box-sizing":"border-box",marginLeft:"auto",marginRight:"auto",paddingLeft:"var(--bb-container-padding, 4vw)",paddingRight:"var(--bb-container-padding, 4vw)",maxWidth:"var(--bb-container-wide-width, 100%)",width:"100%"},".container-full":{"box-sizing":"border-box",marginLeft:"auto",marginRight:"auto",paddingLeft:"var(--bb-container-full-padding, var(--bb-container-padding, 4vw))",paddingRight:"var(--bb-container-full-padding, var(--bb-container-padding, 4vw))",maxWidth:"var(--bb-container-full-width, 100%)",width:"100%"},".container-inner":{"box-sizing":"border-box",paddingLeft:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )",paddingRight:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )"},".container-inner-left":{"box-sizing":"border-box",paddingLeft:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )",paddingRight:"var(--bb-container-padding, 4vw)"},".container-inner-right":{"box-sizing":"border-box",paddingLeft:"var(--bb-container-padding, 4vw)",paddingRight:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )"}},{variants:["responsive"]})}),l=r(function({matchUtilities:n}){n({area:a=>{const i=a.split(/[\/-]/).map(t=>t.trim());return i.length===4&&i.every(Boolean)?{"--area":`${i[0]} / ${i[1]} / ${i[2]} / ${i[3]}`}:{}}},{values:{}}),n({"grid-area":a=>{const t=String(a).trim().match(/^(\d+)\s*[\/ -]\s*(\d+)$/);if(!t)return{};const e=parseInt(t[1],10),o=parseInt(t[2],10);if(!Number.isFinite(e)||!Number.isFinite(o)||e<=0||o<=0)return{};const c=Math.ceil(e/2),b=Math.ceil(o/2);return{display:"grid",gridTemplateColumns:`repeat(${e}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${o}, minmax(0, 1fr))`,"--b_area":`1 / 1 / ${b} / ${c}`,"& > *":{gridArea:"var(--area, var(--b_area))"}}}},{values:{}})}),s=r(function({addUtilities:n}){n({".b_mask-text":{color:"transparent","-webkit-text-fill-color":"transparent","background-clip":"text","-webkit-background-clip":"text"}})}),v=r(function({addVariant:n}){n("children","& > *"),["p","a","img","ol","ul","li","h1","h2","blockquote"].forEach(i=>{n(`children-${i}`,`& > ${i}`)})}),p=r(function(n){l.handler(n),g.handler(n),s.handler(n),v.handler(n)});exports.default=p;
2
+ //# sourceMappingURL=index-DuzDgijx.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DuzDgijx.cjs","sources":["../../../node_modules/.pnpm/tailwindcss@4.1.18/node_modules/tailwindcss/dist/plugin.mjs","../../tailwind/dist/plugins/fluid-container.js","../../tailwind/dist/plugins/grid-area.js","../../tailwind/dist/plugins/mask.js","../../tailwind/dist/variants/children.js","../../tailwind/dist/index.js"],"sourcesContent":["function g(i,n){return{handler:i,config:n}}g.withOptions=function(i,n=()=>({})){function t(o){return{handler:i(o),config:n(o)}}return t.__isOptionsFunction=!0,t};var u=g;export{u as default};\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addComponents }) {\n /*\n tailwind-config-functions.ts\n \n @media (min-width: 96rem) {\n :root {\n --bb-container-padding: 1rem;\n --bb-container-width: 96rem;\n --bb-container-wide-width: 'min(96vw, 112rem)',\n --bb-container-full-width: 100%;\n }\n }\n */\n const components = {\n '.container': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n maxWidth: 'var(--bb-container-width, 100%)',\n width: '100%',\n },\n '.container-wide': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n maxWidth: 'var(--bb-container-wide-width, 100%)',\n width: '100%',\n },\n '.container-full': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-full-padding, var(--bb-container-padding, 4vw))',\n paddingRight: 'var(--bb-container-full-padding, var(--bb-container-padding, 4vw))',\n maxWidth: 'var(--bb-container-full-width, 100%)',\n width: '100%',\n },\n '.container-inner': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n '.container-inner-left': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n },\n '.container-inner-right': {\n 'box-sizing': 'border-box',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n };\n addComponents(components, { variants: ['responsive'] });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ matchUtilities }) {\n // Arbitrary value utility that only sets --area\n matchUtilities({\n area: (value) => {\n const parts = value.split(/[\\/-]/).map((p) => p.trim());\n if (parts.length === 4 && parts.every(Boolean)) {\n return {\n '--area': `${parts[0]} / ${parts[1]} / ${parts[2]} / ${parts[3]}`,\n };\n }\n return {}; // ignore invalid values\n },\n }, { values: {} });\n // Arbitrary grid container: grid-area-[cols/rows]\n // - Sets grid templates with given track counts\n // - Provides default 25% area via --b_area (half cols x half rows)\n matchUtilities({\n 'grid-area': (value) => {\n const str = String(value).trim();\n const m = str.match(/^(\\d+)\\s*[\\/ -]\\s*(\\d+)$/);\n if (!m)\n return {};\n const cols = parseInt(m[1], 10);\n const rows = parseInt(m[2], 10);\n if (!Number.isFinite(cols) ||\n !Number.isFinite(rows) ||\n cols <= 0 ||\n rows <= 0)\n return {};\n const halfCols = Math.ceil(cols / 2);\n const halfRows = Math.ceil(rows / 2);\n return {\n display: 'grid',\n gridTemplateColumns: `repeat(${cols}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${rows}, minmax(0, 1fr))`,\n '--b_area': `1 / 1 / ${halfRows} / ${halfCols}`,\n '& > *': {\n gridArea: 'var(--area, var(--b_area))',\n },\n };\n },\n }, { values: {} });\n});\n","import plugin from 'tailwindcss/plugin';\n// Utilities-based mask plugin so we can add variants and more masks later\nexport default plugin(function ({ addUtilities }) {\n addUtilities({\n // Text mask: make text transparent and clip background to text\n '.b_mask-text': {\n color: 'transparent',\n '-webkit-text-fill-color': 'transparent',\n 'background-clip': 'text',\n '-webkit-background-clip': 'text',\n },\n });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addVariant }) {\n // all direct children\n // NOTE: Avoid `:where(&)` here: `:where()` has zero specificity, which can make\n // `children:*` utilities lose against scoped editor styles like\n // `.editor-styles-wrapper p { ... }` in the WP backend.\n addVariant('children', '& > *');\n // element-specific direct children\n const elements = [\n 'p',\n 'a',\n 'img',\n 'ol',\n 'ul',\n 'li',\n 'h1',\n 'h2',\n 'blockquote',\n ];\n elements.forEach((el) => {\n addVariant(`children-${el}`, `& > ${el}`);\n });\n});\n","import plugin from 'tailwindcss/plugin';\n// Plugins\nimport fluidContainer from './plugins/fluid-container.js';\nimport gridArea from './plugins/grid-area.js';\nimport mask from './plugins/mask.js';\nimport children from './variants/children.js';\nconst blockbiteTailwindPlugin = plugin(function (api) {\n // Register all plugins/utilities and variants\n gridArea.handler(api);\n fluidContainer.handler(api);\n mask.handler(api);\n children.handler(api);\n});\nexport default blockbiteTailwindPlugin;\n"],"names":["g","i","n","t","o","u","fluidContainer","plugin","addComponents","gridArea","matchUtilities","value","parts","p","m","cols","rows","halfCols","halfRows","mask","addUtilities","children","addVariant","el","blockbiteTailwindPlugin","api"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1751,7 +1751,7 @@ input:where([type='button'], [type='reset'], [type='submit']),
1751
1751
  }
1752
1752
  `,v=`@tailwind utilities;
1753
1753
  `;async function u({content:n,css:c="",tailwindCSS:e}){let t,l;try{const o=await Promise.resolve().then(()=>require("./tailwindcss_oxide-94iiDIkL.cjs"));await o.default(),t=o.WasmScanner,l=o.WasmChangedContent}catch(o){throw new Error("Failed to load WASM scanner: "+o.message)}e||(e='@import "tailwindcss";');const i=c?`${c}
1754
- ${e}`:e,d=await f.compile(i,{base:"/",loadStylesheet:async(o,s)=>{if(o==="tailwindcss")return{path:"virtual:tailwindcss/index.css",base:s,content:x};if(o==="tailwindcss/preflight"||o==="tailwindcss/preflight.css"||o==="./preflight.css")return{path:"virtual:tailwindcss/preflight.css",base:s,content:w};if(o==="tailwindcss/theme"||o==="tailwindcss/theme.css"||o==="./theme.css")return{path:"virtual:tailwindcss/theme.css",base:s,content:y};if(o==="tailwindcss/utilities"||o==="tailwindcss/utilities.css"||o==="./utilities.css")return{path:"virtual:tailwindcss/utilities.css",base:s,content:v};throw new Error(`External stylesheets not supported in browser build: "${o}"`)},loadModule:async(o,s)=>{if(o==="@blockbite/tailwind"){const b=await Promise.resolve().then(()=>require("./index-DBukBY5f.cjs"));return{path:o,base:s,module:b.default}}throw new Error(`Unsupported module: ${o}`)}}),m=new t,r=new l(n,"html"),p=m.getCandidatesWithPositions(r).map(o=>o.candidate);return{css:d.build(p),candidates:p}}const h=n=>n!==null&&typeof n=="object",z=n=>Array.isArray(n),a=n=>typeof n=="function"||!1,k=(n,c,e)=>{if(n==null)return n;const t=c;if((h(n)||a(n))&&n.length!==void 0&&typeof n.length=="number"&&(n=Array.from(n)),z(n))for(let l=0;l<n.length&&t(n[l],l,n)!==!1;++l);else{const l=Object.keys(n);for(let i of l)if(t(n[i],i,n)===!1)break}return n};function g(n){const c=[],e=[],t=[];n.template&&c.push(n.template),n.css&&t.push(n.css),a(n.createComponent)&&e.push(n.createComponent.toString()),a(n.onCreated)&&e.push(n.onCreated.toString()),a(n.onRendered)&&e.push(n.onRendered.toString()),a(n.onDestroyed)&&e.push(n.onDestroyed.toString()),a(n.onThemeChanged)&&e.push(n.onThemeChanged.toString()),a(n.onAttributeChanged)&&e.push(n.onAttributeChanged.toString()),h(n.events)&&k(n.events,r=>{a(r)&&e.push(r.toString())}),h(n.keys)&&k(n.keys,r=>{a(r)&&e.push(r.toString())}),h(n.subTemplates)&&k(n.subTemplates,r=>{r.template&&c.push(r.template),r.css&&t.push(r.css)});const l=c.join(`
1754
+ ${e}`:e,d=await f.compile(i,{base:"/",loadStylesheet:async(o,s)=>{if(o==="tailwindcss")return{path:"virtual:tailwindcss/index.css",base:s,content:x};if(o==="tailwindcss/preflight"||o==="tailwindcss/preflight.css"||o==="./preflight.css")return{path:"virtual:tailwindcss/preflight.css",base:s,content:w};if(o==="tailwindcss/theme"||o==="tailwindcss/theme.css"||o==="./theme.css")return{path:"virtual:tailwindcss/theme.css",base:s,content:y};if(o==="tailwindcss/utilities"||o==="tailwindcss/utilities.css"||o==="./utilities.css")return{path:"virtual:tailwindcss/utilities.css",base:s,content:v};throw new Error(`External stylesheets not supported in browser build: "${o}"`)},loadModule:async(o,s)=>{if(o==="@blockbite/tailwind"){const b=await Promise.resolve().then(()=>require("./index-DuzDgijx.cjs"));return{path:o,base:s,module:b.default}}throw new Error(`Unsupported module: ${o}`)}}),m=new t,r=new l(n,"html"),p=m.getCandidatesWithPositions(r).map(o=>o.candidate);return{css:d.build(p),candidates:p}}const h=n=>n!==null&&typeof n=="object",z=n=>Array.isArray(n),a=n=>typeof n=="function"||!1,k=(n,c,e)=>{if(n==null)return n;const t=c;if((h(n)||a(n))&&n.length!==void 0&&typeof n.length=="number"&&(n=Array.from(n)),z(n))for(let l=0;l<n.length&&t(n[l],l,n)!==!1;++l);else{const l=Object.keys(n);for(let i of l)if(t(n[i],i,n)===!1)break}return n};function g(n){const c=[],e=[],t=[];n.template&&c.push(n.template),n.css&&t.push(n.css),a(n.createComponent)&&e.push(n.createComponent.toString()),a(n.onCreated)&&e.push(n.onCreated.toString()),a(n.onRendered)&&e.push(n.onRendered.toString()),a(n.onDestroyed)&&e.push(n.onDestroyed.toString()),a(n.onThemeChanged)&&e.push(n.onThemeChanged.toString()),a(n.onAttributeChanged)&&e.push(n.onAttributeChanged.toString()),h(n.events)&&k(n.events,r=>{a(r)&&e.push(r.toString())}),h(n.keys)&&k(n.keys,r=>{a(r)&&e.push(r.toString())}),h(n.subTemplates)&&k(n.subTemplates,r=>{r.template&&c.push(r.template),r.css&&t.push(r.css)});const l=c.join(`
1755
1755
  `),i=e.join(`
1756
1756
  `),d=t.join(`
1757
1757
  `),m=`${l}
@@ -1795,7 +1795,7 @@ ${e}` : e, d = await g(i, {
1795
1795
  },
1796
1796
  loadModule: async (o, s) => {
1797
1797
  if (o === "@blockbite/tailwind") {
1798
- const u = await import("./index-DlV_dWj4.js");
1798
+ const u = await import("./index-BKxmDcfr.js");
1799
1799
  return {
1800
1800
  path: o,
1801
1801
  base: s,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@blockbite/tailwind-css-parser",
3
3
  "title": "fork of Semantic UI Tailwind Plugin",
4
- "version": "0.12.10",
4
+ "version": "0.12.12",
5
5
  "website": "https://github.com/Semantic-Org/Semantic-Next/blob/55f1c6acc1e59e5334d207aa53b39be8c80978bb/packages/tailwind/package.json",
6
6
  "author": "Jack Lukic",
7
7
  "sideEffects": false,
@@ -25,7 +25,7 @@
25
25
  "LICENSE"
26
26
  ],
27
27
  "dependencies": {
28
- "@blockbite/tailwind": "3.5.10"
28
+ "@blockbite/tailwind": "3.5.12"
29
29
  },
30
30
  "peerDependencies": {
31
31
  "tailwindcss": "^4.0.0",
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function c(n,t){return{handler:n,config:t}}c.withOptions=function(n,t=()=>({})){function r(a){return{handler:n(a),config:t(a)}}return r.__isOptionsFunction=!0,r};var i=c;const s=i(function({addComponents:n}){n({".container":{"box-sizing":"border-box",marginLeft:"auto",marginRight:"auto",paddingLeft:"var(--bb-container-padding, 4vw)",paddingRight:"var(--bb-container-padding, 4vw)",maxWidth:"var(--bb-container-width, 100%)"},".container-inner":{"box-sizing":"border-box",paddingLeft:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )",paddingRight:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )"},".container-inner-left":{"box-sizing":"border-box",paddingLeft:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )",paddingRight:"var(--bb-container-padding, 4vw)"},".container-inner-right":{"box-sizing":"border-box",paddingLeft:"var(--bb-container-padding, 4vw)",paddingRight:"calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )"}},{variants:["responsive"]})}),l=i(function({matchUtilities:n}){n({area:t=>{const r=t.split(/[\/-]/).map(a=>a.trim());return r.length===4&&r.every(Boolean)?{"--area":`${r[0]} / ${r[1]} / ${r[2]} / ${r[3]}`}:{}}},{values:{}}),n({"grid-area":t=>{const a=String(t).trim().match(/^(\d+)\s*[\/ -]\s*(\d+)$/);if(!a)return{};const e=parseInt(a[1],10),o=parseInt(a[2],10);if(!Number.isFinite(e)||!Number.isFinite(o)||e<=0||o<=0)return{};const d=Math.ceil(e/2),b=Math.ceil(o/2);return{display:"grid",gridTemplateColumns:`repeat(${e}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${o}, minmax(0, 1fr))`,"--b_area":`1 / 1 / ${b} / ${d}`,"& > *":{gridArea:"var(--area, var(--b_area))"}}}},{values:{}})}),g=i(function({addUtilities:n}){n({".b_mask-text":{color:"transparent","-webkit-text-fill-color":"transparent","background-clip":"text","-webkit-background-clip":"text"}})}),u=i(function({addVariant:n}){n("children","& > *"),["p","a","img","ol","ul","li","h1","h2","blockquote"].forEach(r=>{n(`children-${r}`,`& > ${r}`)})}),p=i(function(n){l.handler(n),s.handler(n),g.handler(n),u.handler(n)});exports.default=p;
2
- //# sourceMappingURL=index-DBukBY5f.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-DBukBY5f.cjs","sources":["../../../node_modules/.pnpm/tailwindcss@4.1.18/node_modules/tailwindcss/dist/plugin.mjs","../../tailwind/dist/plugins/fluid-container.js","../../tailwind/dist/plugins/grid-area.js","../../tailwind/dist/plugins/mask.js","../../tailwind/dist/variants/children.js","../../tailwind/dist/index.js"],"sourcesContent":["function g(i,n){return{handler:i,config:n}}g.withOptions=function(i,n=()=>({})){function t(o){return{handler:i(o),config:n(o)}}return t.__isOptionsFunction=!0,t};var u=g;export{u as default};\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addComponents }) {\n const components = {\n '.container': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n maxWidth: 'var(--bb-container-width, 100%)',\n },\n '.container-inner': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n '.container-inner-left': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n },\n '.container-inner-right': {\n 'box-sizing': 'border-box',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n };\n addComponents(components, { variants: ['responsive'] });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ matchUtilities }) {\n // Arbitrary value utility that only sets --area\n matchUtilities({\n area: (value) => {\n const parts = value.split(/[\\/-]/).map((p) => p.trim());\n if (parts.length === 4 && parts.every(Boolean)) {\n return {\n '--area': `${parts[0]} / ${parts[1]} / ${parts[2]} / ${parts[3]}`,\n };\n }\n return {}; // ignore invalid values\n },\n }, { values: {} });\n // Arbitrary grid container: grid-area-[cols/rows]\n // - Sets grid templates with given track counts\n // - Provides default 25% area via --b_area (half cols x half rows)\n matchUtilities({\n 'grid-area': (value) => {\n const str = String(value).trim();\n const m = str.match(/^(\\d+)\\s*[\\/ -]\\s*(\\d+)$/);\n if (!m)\n return {};\n const cols = parseInt(m[1], 10);\n const rows = parseInt(m[2], 10);\n if (!Number.isFinite(cols) ||\n !Number.isFinite(rows) ||\n cols <= 0 ||\n rows <= 0)\n return {};\n const halfCols = Math.ceil(cols / 2);\n const halfRows = Math.ceil(rows / 2);\n return {\n display: 'grid',\n gridTemplateColumns: `repeat(${cols}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${rows}, minmax(0, 1fr))`,\n '--b_area': `1 / 1 / ${halfRows} / ${halfCols}`,\n '& > *': {\n gridArea: 'var(--area, var(--b_area))',\n },\n };\n },\n }, { values: {} });\n});\n","import plugin from 'tailwindcss/plugin';\n// Utilities-based mask plugin so we can add variants and more masks later\nexport default plugin(function ({ addUtilities }) {\n addUtilities({\n // Text mask: make text transparent and clip background to text\n '.b_mask-text': {\n color: 'transparent',\n '-webkit-text-fill-color': 'transparent',\n 'background-clip': 'text',\n '-webkit-background-clip': 'text',\n },\n });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addVariant }) {\n // all direct children\n // NOTE: Avoid `:where(&)` here: `:where()` has zero specificity, which can make\n // `children:*` utilities lose against scoped editor styles like\n // `.editor-styles-wrapper p { ... }` in the WP backend.\n addVariant('children', '& > *');\n // element-specific direct children\n const elements = [\n 'p',\n 'a',\n 'img',\n 'ol',\n 'ul',\n 'li',\n 'h1',\n 'h2',\n 'blockquote',\n ];\n elements.forEach((el) => {\n addVariant(`children-${el}`, `& > ${el}`);\n });\n});\n","import plugin from 'tailwindcss/plugin';\n// Plugins\nimport fluidContainer from './plugins/fluid-container.js';\nimport gridArea from './plugins/grid-area.js';\nimport mask from './plugins/mask.js';\nimport children from './variants/children.js';\nconst blockbiteTailwindPlugin = plugin(function (api) {\n // Register all plugins/utilities and variants\n gridArea.handler(api);\n fluidContainer.handler(api);\n mask.handler(api);\n children.handler(api);\n});\nexport default blockbiteTailwindPlugin;\n"],"names":["g","i","n","t","o","u","fluidContainer","plugin","addComponents","gridArea","matchUtilities","value","parts","p","m","cols","rows","halfCols","halfRows","mask","addUtilities","children","addVariant","el","blockbiteTailwindPlugin","api"],"mappings":"gFAAA,SAASA,EAAEC,EAAEC,EAAE,CAAC,MAAM,CAAC,QAAQD,EAAE,OAAOC,CAAC,CAAC,CAACF,EAAE,YAAY,SAASC,EAAEC,EAAE,KAAK,CAAA,GAAI,CAAC,SAASC,EAAEC,EAAE,CAAC,MAAM,CAAC,QAAQH,EAAEG,CAAC,EAAE,OAAOF,EAAEE,CAAC,CAAC,CAAC,CAAC,OAAOD,EAAE,oBAAoB,GAAGA,CAAC,EAAE,IAAIE,EAAEL,ECCxK,MAAAM,EAAeC,EAAO,SAAU,CAAE,cAAAC,GAAiB,CA0B/CA,EAzBmB,CACf,aAAc,CACV,aAAc,aACd,WAAY,OACZ,YAAa,OACb,YAAa,mCACb,aAAc,mCACd,SAAU,iCACtB,EACQ,mBAAoB,CAChB,aAAc,aACd,YAAa,uGACb,aAAc,sGAC1B,EACQ,wBAAyB,CACrB,aAAc,aACd,YAAa,uGACb,aAAc,kCAC1B,EACQ,yBAA0B,CACtB,aAAc,aACd,YAAa,mCACb,aAAc,sGAC1B,CACA,EAC8B,CAAE,SAAU,CAAC,YAAY,CAAC,CAAE,CAC1D,CAAC,EC3BDC,EAAeF,EAAO,SAAU,CAAE,eAAAG,GAAkB,CAEhDA,EAAe,CACX,KAAOC,GAAU,CACb,MAAMC,EAAQD,EAAM,MAAM,OAAO,EAAE,IAAKE,GAAMA,EAAE,MAAM,EACtD,OAAID,EAAM,SAAW,GAAKA,EAAM,MAAM,OAAO,EAClC,CACH,SAAU,GAAGA,EAAM,CAAC,CAAC,MAAMA,EAAM,CAAC,CAAC,MAAMA,EAAM,CAAC,CAAC,MAAMA,EAAM,CAAC,CAAC,EACnF,EAEmB,EACX,CACR,EAAO,CAAE,OAAQ,CAAA,EAAI,EAIjBF,EAAe,CACX,YAAcC,GAAU,CAEpB,MAAMG,EADM,OAAOH,CAAK,EAAE,KAAI,EAChB,MAAM,0BAA0B,EAC9C,GAAI,CAACG,EACD,MAAO,CAAA,EACX,MAAMC,EAAO,SAASD,EAAE,CAAC,EAAG,EAAE,EACxBE,EAAO,SAASF,EAAE,CAAC,EAAG,EAAE,EAC9B,GAAI,CAAC,OAAO,SAASC,CAAI,GACrB,CAAC,OAAO,SAASC,CAAI,GACrBD,GAAQ,GACRC,GAAQ,EACR,MAAO,CAAA,EACX,MAAMC,EAAW,KAAK,KAAKF,EAAO,CAAC,EAC7BG,EAAW,KAAK,KAAKF,EAAO,CAAC,EACnC,MAAO,CACH,QAAS,OACT,oBAAqB,UAAUD,CAAI,oBACnC,iBAAkB,UAAUC,CAAI,oBAChC,WAAY,WAAWE,CAAQ,MAAMD,CAAQ,GAC7C,QAAS,CACL,SAAU,4BAC9B,CACA,CACQ,CACR,EAAO,CAAE,OAAQ,CAAA,EAAI,CACrB,CAAC,ECzCDE,EAAeZ,EAAO,SAAU,CAAE,aAAAa,GAAgB,CAC9CA,EAAa,CAET,eAAgB,CACZ,MAAO,cACP,0BAA2B,cAC3B,kBAAmB,OACnB,0BAA2B,MACvC,CACA,CAAK,CACL,CAAC,ECXDC,EAAed,EAAO,SAAU,CAAE,WAAAe,GAAc,CAK5CA,EAAW,WAAY,OAAO,EAEb,CACb,IACA,IACA,MACA,KACA,KACA,KACA,KACA,KACA,YACR,EACa,QAASC,GAAO,CACrBD,EAAW,YAAYC,CAAE,GAAI,OAAOA,CAAE,EAAE,CAC5C,CAAC,CACL,CAAC,EChBKC,EAA0BjB,EAAO,SAAUkB,EAAK,CAElDhB,EAAS,QAAQgB,CAAG,EACpBnB,EAAe,QAAQmB,CAAG,EAC1BN,EAAK,QAAQM,CAAG,EAChBJ,EAAS,QAAQI,CAAG,CACxB,CAAC","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-DlV_dWj4.js","sources":["../../../node_modules/.pnpm/tailwindcss@4.1.18/node_modules/tailwindcss/dist/plugin.mjs","../../tailwind/dist/plugins/fluid-container.js","../../tailwind/dist/plugins/grid-area.js","../../tailwind/dist/plugins/mask.js","../../tailwind/dist/variants/children.js","../../tailwind/dist/index.js"],"sourcesContent":["function g(i,n){return{handler:i,config:n}}g.withOptions=function(i,n=()=>({})){function t(o){return{handler:i(o),config:n(o)}}return t.__isOptionsFunction=!0,t};var u=g;export{u as default};\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addComponents }) {\n const components = {\n '.container': {\n 'box-sizing': 'border-box',\n marginLeft: 'auto',\n marginRight: 'auto',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n maxWidth: 'var(--bb-container-width, 100%)',\n },\n '.container-inner': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n '.container-inner-left': {\n 'box-sizing': 'border-box',\n paddingLeft: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n paddingRight: 'var(--bb-container-padding, 4vw)',\n },\n '.container-inner-right': {\n 'box-sizing': 'border-box',\n paddingLeft: 'var(--bb-container-padding, 4vw)',\n paddingRight: 'calc( (100vw - var(--bb-container-width, 100%)) / 2 + calc( var(--bb-container-padding, 4vw) / 2 ) )',\n },\n };\n addComponents(components, { variants: ['responsive'] });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ matchUtilities }) {\n // Arbitrary value utility that only sets --area\n matchUtilities({\n area: (value) => {\n const parts = value.split(/[\\/-]/).map((p) => p.trim());\n if (parts.length === 4 && parts.every(Boolean)) {\n return {\n '--area': `${parts[0]} / ${parts[1]} / ${parts[2]} / ${parts[3]}`,\n };\n }\n return {}; // ignore invalid values\n },\n }, { values: {} });\n // Arbitrary grid container: grid-area-[cols/rows]\n // - Sets grid templates with given track counts\n // - Provides default 25% area via --b_area (half cols x half rows)\n matchUtilities({\n 'grid-area': (value) => {\n const str = String(value).trim();\n const m = str.match(/^(\\d+)\\s*[\\/ -]\\s*(\\d+)$/);\n if (!m)\n return {};\n const cols = parseInt(m[1], 10);\n const rows = parseInt(m[2], 10);\n if (!Number.isFinite(cols) ||\n !Number.isFinite(rows) ||\n cols <= 0 ||\n rows <= 0)\n return {};\n const halfCols = Math.ceil(cols / 2);\n const halfRows = Math.ceil(rows / 2);\n return {\n display: 'grid',\n gridTemplateColumns: `repeat(${cols}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${rows}, minmax(0, 1fr))`,\n '--b_area': `1 / 1 / ${halfRows} / ${halfCols}`,\n '& > *': {\n gridArea: 'var(--area, var(--b_area))',\n },\n };\n },\n }, { values: {} });\n});\n","import plugin from 'tailwindcss/plugin';\n// Utilities-based mask plugin so we can add variants and more masks later\nexport default plugin(function ({ addUtilities }) {\n addUtilities({\n // Text mask: make text transparent and clip background to text\n '.b_mask-text': {\n color: 'transparent',\n '-webkit-text-fill-color': 'transparent',\n 'background-clip': 'text',\n '-webkit-background-clip': 'text',\n },\n });\n});\n","import plugin from 'tailwindcss/plugin';\nexport default plugin(function ({ addVariant }) {\n // all direct children\n // NOTE: Avoid `:where(&)` here: `:where()` has zero specificity, which can make\n // `children:*` utilities lose against scoped editor styles like\n // `.editor-styles-wrapper p { ... }` in the WP backend.\n addVariant('children', '& > *');\n // element-specific direct children\n const elements = [\n 'p',\n 'a',\n 'img',\n 'ol',\n 'ul',\n 'li',\n 'h1',\n 'h2',\n 'blockquote',\n ];\n elements.forEach((el) => {\n addVariant(`children-${el}`, `& > ${el}`);\n });\n});\n","import plugin from 'tailwindcss/plugin';\n// Plugins\nimport fluidContainer from './plugins/fluid-container.js';\nimport gridArea from './plugins/grid-area.js';\nimport mask from './plugins/mask.js';\nimport children from './variants/children.js';\nconst blockbiteTailwindPlugin = plugin(function (api) {\n // Register all plugins/utilities and variants\n gridArea.handler(api);\n fluidContainer.handler(api);\n mask.handler(api);\n children.handler(api);\n});\nexport default blockbiteTailwindPlugin;\n"],"names":["g","i","n","t","o","u","fluidContainer","plugin","addComponents","gridArea","matchUtilities","value","parts","p","m","cols","rows","halfCols","halfRows","mask","addUtilities","children","addVariant","el","blockbiteTailwindPlugin","api"],"mappings":"AAAA,SAASA,EAAEC,GAAEC,GAAE;AAAC,SAAM,EAAC,SAAQD,GAAE,QAAOC,EAAC;AAAC;AAACF,EAAE,cAAY,SAASC,GAAEC,IAAE,OAAK,CAAA,IAAI;AAAC,WAASC,EAAEC,GAAE;AAAC,WAAM,EAAC,SAAQH,EAAEG,CAAC,GAAE,QAAOF,EAAEE,CAAC,EAAC;AAAA,EAAC;AAAC,SAAOD,EAAE,sBAAoB,IAAGA;AAAC;AAAE,IAAIE,IAAEL;ACCxK,MAAAM,IAAeC,EAAO,SAAU,EAAE,eAAAC,KAAiB;AA0B/C,EAAAA,EAzBmB;AAAA,IACf,cAAc;AAAA,MACV,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,aAAa;AAAA,MACb,cAAc;AAAA,MACd,UAAU;AAAA,IACtB;AAAA,IACQ,oBAAoB;AAAA,MAChB,cAAc;AAAA,MACd,aAAa;AAAA,MACb,cAAc;AAAA,IAC1B;AAAA,IACQ,yBAAyB;AAAA,MACrB,cAAc;AAAA,MACd,aAAa;AAAA,MACb,cAAc;AAAA,IAC1B;AAAA,IACQ,0BAA0B;AAAA,MACtB,cAAc;AAAA,MACd,aAAa;AAAA,MACb,cAAc;AAAA,IAC1B;AAAA,EACA,GAC8B,EAAE,UAAU,CAAC,YAAY,EAAC,CAAE;AAC1D,CAAC,GC3BDC,IAAeF,EAAO,SAAU,EAAE,gBAAAG,KAAkB;AAEhD,EAAAA,EAAe;AAAA,IACX,MAAM,CAACC,MAAU;AACb,YAAMC,IAAQD,EAAM,MAAM,OAAO,EAAE,IAAI,CAACE,MAAMA,EAAE,MAAM;AACtD,aAAID,EAAM,WAAW,KAAKA,EAAM,MAAM,OAAO,IAClC;AAAA,QACH,UAAU,GAAGA,EAAM,CAAC,CAAC,MAAMA,EAAM,CAAC,CAAC,MAAMA,EAAM,CAAC,CAAC,MAAMA,EAAM,CAAC,CAAC;AAAA,MACnF,IAEmB;IACX;AAAA,EACR,GAAO,EAAE,QAAQ,CAAA,GAAI,GAIjBF,EAAe;AAAA,IACX,aAAa,CAACC,MAAU;AAEpB,YAAMG,IADM,OAAOH,CAAK,EAAE,KAAI,EAChB,MAAM,0BAA0B;AAC9C,UAAI,CAACG;AACD,eAAO,CAAA;AACX,YAAMC,IAAO,SAASD,EAAE,CAAC,GAAG,EAAE,GACxBE,IAAO,SAASF,EAAE,CAAC,GAAG,EAAE;AAC9B,UAAI,CAAC,OAAO,SAASC,CAAI,KACrB,CAAC,OAAO,SAASC,CAAI,KACrBD,KAAQ,KACRC,KAAQ;AACR,eAAO,CAAA;AACX,YAAMC,IAAW,KAAK,KAAKF,IAAO,CAAC,GAC7BG,IAAW,KAAK,KAAKF,IAAO,CAAC;AACnC,aAAO;AAAA,QACH,SAAS;AAAA,QACT,qBAAqB,UAAUD,CAAI;AAAA,QACnC,kBAAkB,UAAUC,CAAI;AAAA,QAChC,YAAY,WAAWE,CAAQ,MAAMD,CAAQ;AAAA,QAC7C,SAAS;AAAA,UACL,UAAU;AAAA,QAC9B;AAAA,MACA;AAAA,IACQ;AAAA,EACR,GAAO,EAAE,QAAQ,CAAA,GAAI;AACrB,CAAC,GCzCDE,IAAeZ,EAAO,SAAU,EAAE,cAAAa,KAAgB;AAC9C,EAAAA,EAAa;AAAA;AAAA,IAET,gBAAgB;AAAA,MACZ,OAAO;AAAA,MACP,2BAA2B;AAAA,MAC3B,mBAAmB;AAAA,MACnB,2BAA2B;AAAA,IACvC;AAAA,EACA,CAAK;AACL,CAAC,GCXDC,IAAed,EAAO,SAAU,EAAE,YAAAe,KAAc;AAK5C,EAAAA,EAAW,YAAY,OAAO,GAEb;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACR,EACa,QAAQ,CAACC,MAAO;AACrB,IAAAD,EAAW,YAAYC,CAAE,IAAI,OAAOA,CAAE,EAAE;AAAA,EAC5C,CAAC;AACL,CAAC,GChBKC,IAA0BjB,EAAO,SAAUkB,GAAK;AAElD,EAAAhB,EAAS,QAAQgB,CAAG,GACpBnB,EAAe,QAAQmB,CAAG,GAC1BN,EAAK,QAAQM,CAAG,GAChBJ,EAAS,QAAQI,CAAG;AACxB,CAAC;","x_google_ignoreList":[0]}