@takumi-rs/helpers 0.42.0 → 0.43.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/jsx/create-tailwind-fn.cjs +1 -0
- package/dist/jsx/create-tailwind-fn.d.cts +15 -0
- package/dist/jsx/create-tailwind-fn.d.ts +15 -0
- package/dist/jsx/create-tailwind-fn.js +1 -0
- package/dist/jsx/jsx.cjs +2 -1
- package/dist/jsx/jsx.d.cts +10 -2
- package/dist/jsx/jsx.d.ts +10 -2
- package/dist/jsx/jsx.js +2 -1
- package/package.json +12 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var n=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var t=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var l=(p,r)=>{for(var e in r)n(p,e,{get:r[e],enumerable:!0})},w=(p,r,e,x)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of t(r))!d.call(p,o)&&o!==e&&n(p,o,{get:()=>r[o],enumerable:!(x=i(r,o))||x.enumerable});return p};var b=p=>w(n({},"__esModule",{value:!0}),p);var h={};l(h,{createTailwindFn:()=>g});module.exports=b(h);var a=require("twrnc/create"),s={handler({addUtilities:p}){p({"shadow-sm":{boxShadow:"0 1px 2px 0 rgb(0 0 0 / 0.05)"},shadow:{boxShadow:"0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)"},"shadow-md":{boxShadow:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)"},"shadow-lg":{boxShadow:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)"},"shadow-xl":{boxShadow:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)"},"shadow-2xl":{boxShadow:"0 25px 50px -12px rgb(0 0 0 / 0.25)"},"shadow-inner":{boxShadow:"inset 0 2px 4px 0 rgb(0 0 0 / 0.05)"},"shadow-none":{boxShadow:"0 0 #0000"},block:{display:"block"},inline:{display:"inline"},grid:{display:"grid"}})}};function g(p){let r=(0,a.create)({...p,plugins:[...p?.plugins??[],s]},"web",{major:0,minor:0,patch:0});return function(...x){let o=r.style(...x);return typeof o.lineHeight=="number"&&(o.lineHeight=`${o.lineHeight}px`),o.shadowColor&&typeof o.boxShadow=="string"&&(o.boxShadow=o.boxShadow.replace(/rgba?\([^)]+\)/g,o.shadowColor.toString())),o}}0&&(module.exports={createTailwindFn});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as twrnc from 'twrnc';
|
|
2
|
+
import { TwConfig } from 'twrnc';
|
|
3
|
+
|
|
4
|
+
declare module "react" {
|
|
5
|
+
interface HTMLAttributes<T> {
|
|
6
|
+
tw?: string;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @description Creates a function that can be used to parse tailwind classes into inline styles.
|
|
11
|
+
* @param config The tailwind config to use.
|
|
12
|
+
*/
|
|
13
|
+
declare function createTailwindFn(config?: TwConfig): (...args: Parameters<(...inputs: twrnc.ClassInput[]) => twrnc.Style>) => twrnc.Style;
|
|
14
|
+
|
|
15
|
+
export { createTailwindFn };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as twrnc from 'twrnc';
|
|
2
|
+
import { TwConfig } from 'twrnc';
|
|
3
|
+
|
|
4
|
+
declare module "react" {
|
|
5
|
+
interface HTMLAttributes<T> {
|
|
6
|
+
tw?: string;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @description Creates a function that can be used to parse tailwind classes into inline styles.
|
|
11
|
+
* @param config The tailwind config to use.
|
|
12
|
+
*/
|
|
13
|
+
declare function createTailwindFn(config?: TwConfig): (...args: Parameters<(...inputs: twrnc.ClassInput[]) => twrnc.Style>) => twrnc.Style;
|
|
14
|
+
|
|
15
|
+
export { createTailwindFn };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{create as x}from"twrnc/create";var n={handler({addUtilities:p}){p({"shadow-sm":{boxShadow:"0 1px 2px 0 rgb(0 0 0 / 0.05)"},shadow:{boxShadow:"0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)"},"shadow-md":{boxShadow:"0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)"},"shadow-lg":{boxShadow:"0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)"},"shadow-xl":{boxShadow:"0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)"},"shadow-2xl":{boxShadow:"0 25px 50px -12px rgb(0 0 0 / 0.25)"},"shadow-inner":{boxShadow:"inset 0 2px 4px 0 rgb(0 0 0 / 0.05)"},"shadow-none":{boxShadow:"0 0 #0000"},block:{display:"block"},inline:{display:"inline"},grid:{display:"grid"}})}};function t(p){let r=x({...p,plugins:[...p?.plugins??[],n]},"web",{major:0,minor:0,patch:0});return function(...e){let o=r.style(...e);return typeof o.lineHeight=="number"&&(o.lineHeight=`${o.lineHeight}px`),o.shadowColor&&typeof o.boxShadow=="string"&&(o.boxShadow=o.boxShadow.replace(/rgba?\([^)]+\)/g,o.shadowColor.toString())),o}}export{t as createTailwindFn};
|
package/dist/jsx/jsx.cjs
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var y=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var F=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var $=(t,e)=>{for(var r in e)y(t,r,{get:e[r],enumerable:!0})},I=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of F(e))!A.call(t,o)&&o!==r&&y(t,o,{get:()=>e[o],enumerable:!(n=O(e,o))||n.enumerable});return t};var W=t=>I(y({},"__esModule",{value:!0}),t);var tt={};$(tt,{fromJsx:()=>Y});module.exports=W(tt);function g(t,e){e&&Object.keys(e).length>0&&(t.style=e)}function f(t){let e={type:"container",children:t.children};return g(e,t.style),e}function m(t,e){let r={type:"text",text:t};return g(r,e),r}function d(t){let e={type:"image",src:t.src};return g(e,t.style),e}function k(t){return{percentage:t}}var p={body:{margin:8},p:{marginTop:"1em",marginBottom:"1em",display:"block"},blockquote:{marginTop:"1em",marginBottom:"1em",marginLeft:40,marginRight:40,display:"block"},center:{textAlign:"center",display:"block"},hr:{marginTop:"0.5em",marginBottom:"0.5em",marginLeft:"auto",marginRight:"auto",borderWidth:1,display:"block"},h1:{fontSize:"2em",marginTop:"0.67em",marginBottom:"0.67em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h2:{fontSize:"1.5em",marginTop:"0.83em",marginBottom:"0.83em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h3:{fontSize:"1.17em",marginTop:"1em",marginBottom:"1em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h4:{marginTop:"1.33em",marginBottom:"1.33em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h5:{fontSize:"0.83em",marginTop:"1.67em",marginBottom:"1.67em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h6:{fontSize:"0.67em",marginTop:"2.33em",marginBottom:"2.33em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},u:{textDecoration:"underline",display:"inline"},strong:{fontWeight:"bold",display:"inline"},b:{fontWeight:"bold",display:"inline"},i:{fontStyle:"italic",display:"inline"},em:{fontStyle:"italic",display:"inline"},code:{fontFamily:"monospace",display:"inline"},kbd:{fontFamily:"monospace",display:"inline"},pre:{fontFamily:"monospace",margin:"1em 0",display:"block"},mark:{backgroundColor:"yellow",color:0,display:"inline"},big:{fontSize:"1.2em",display:"inline"},small:{fontSize:"0.8em",display:"inline"},s:{textDecoration:"line-through",display:"inline"},span:{display:"inline"},img:{display:"inline"},svg:{display:"inline"}};var j=new Set(["head","meta","link","style","script"]);function S(t){return j.has(t.type)}function u(t,e){return t.type===e&&"props"in t}function x(t){return t.replace(/([A-Z])/g,"-$1").toLowerCase()}function i(t){return typeof t=="object"&&t!==null&&"type"in t}function c(t){return typeof t=="function"}var J=Symbol.for("react.forward_ref"),z=Symbol.for("react.memo"),B=Symbol.for("react.fragment");function E(t){return t.$$typeof===J}function P(t){return t.$$typeof===z}function R(t){return t.type===B}function M(t){return typeof t=="string"||typeof t=="number"}function w(t){return t.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function H(t){return Object.keys(t).map(e=>`${e.replace(/([A-Z])/g,"-$1").toLowerCase()}:${String(t[e]).trim()}`).join(";")}var _=["stopColor","stopOpacity","strokeWidth","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","fillRule","clipRule","colorInterpolationFilters","floodColor","floodOpacity","accentHeight","alignmentBaseline","arabicForm","baselineShift","capHeight","clipPath","clipPathUnits","colorInterpolation","colorProfile","colorRendering","enableBackground","fillOpacity","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","horizAdvX","horizOriginX","imageRendering","letterSpacing","lightingColor","markerEnd","markerMid","markerStart","overlinePosition","overlineThickness","paintOrder","preserveAspectRatio","pointerEvents","shapeRendering","strokeMiterlimit","strokeOpacity","textAnchor","textDecoration","textRendering","transformOrigin","underlinePosition","underlineThickness","unicodeBidi","unicodeRange","unitsPerEm","vectorEffect","vertAdvY","vertOriginX","vertOriginY","vAlphabetic","vHanging","vIdeographic","vMathematical","wordSpacing","writingMode"];function V(t,e){if(t==="children"||e==null)return;let r;if(t==="className"?r="class":_.includes(t)?r=x(t):r=t,typeof e=="boolean")return`${r}="${String(e)}"`;if(t==="style"&&typeof e=="object"){let n=H(e);if(n)return`style="${w(n)}"`}return`${r}="${w(String(e))}"`}function X(t){return Object.entries(t).map(([e,r])=>V(e,r)).filter(e=>e!==void 0)}var D=(t,e)=>{let r=t.props||{};if(c(t.type))return l(t.type(t.props));if(typeof t.type=="symbol"||typeof t.type!="string")return"";let n=X(r),o=r.children,a=Array.isArray(o)?o.map(b=>e(b)).join(""):e(o);return`<${t.type}${n.length>0?` ${n.join(" ")}`:""}>${a}</${t.type}>`},l=t=>t==null||t===!1?"":M(t)?String(t):Array.isArray(t)?t.map(l).join(""):i(t)?D(t,l):"";function T(t){let e=t.props||{};if(!("xmlns"in e)){let r={...t,props:{...e,xmlns:"http://www.w3.org/2000/svg"}};return l(r)||""}return l(t)||""}async function Y(t,e){let r=await s(t,e??{});return r.length===0?f({}):r.length===1&&r[0]!==void 0?r[0]:f({children:r,style:{width:k(100),height:k(100)}})}async function s(t,e){if(t==null||t===!1)return[];if(t instanceof Promise)return s(await t,e);if(typeof t=="object"&&Symbol.iterator in t)return Q(t,e);if(i(t)){let r=await L(t,e);return Array.isArray(r)?r:r?[r]:[]}return[m(String(t),p.span)]}function K(t,e){if(!(typeof t.type!="object"||t.type===null)){if(E(t.type)&&"render"in t.type){let r=t.type;return s(r.render(t.props,null),e)}if(P(t.type)&&"type"in t.type){let n=t.type.type;if(c(n))return s(n(t.props),e);let o={...t,type:n};return L(o,e)}}}function v(t){if(!i(t))return Promise.resolve(void 0);let e=typeof t.props=="object"&&t.props!==null&&"children"in t.props?t.props.children:void 0;return typeof e=="string"?Promise.resolve(e):typeof e=="number"?Promise.resolve(String(e)):Array.isArray(e)?Promise.resolve(C(e)):typeof e=="object"&&e!==null&&Symbol.iterator in e?Promise.resolve(C(Array.from(e))):i(e)&&R(e)?v(e):Promise.resolve(void 0)}function C(t){if(!t.some(e=>i(e)))return t.map(e=>typeof e=="string"?e:typeof e=="number"?String(e):"").join("")}async function L(t,e){if(c(t.type))return s(t.type(t.props),e);let r=K(t,e);if(r!==void 0)return r;if(R(t))return await N(t,e)||[];if(S(t))return[];if(u(t,"br"))return[m(`
|
|
2
|
+
`,p.span)];if(u(t,"img"))return[q(t,e)];if(u(t,"svg"))return[Z(t,e)];let n=h(t,e),o=await v(t);if(o!==void 0)return[m(o,n)];let a=await N(t,e);return[f({children:a,style:n})]}function q(t,e){if(!t.props.src)throw new Error("Image element must have a 'src' prop.");let r=h(t,e);return d({src:t.props.src,style:r})}function Z(t,e){let r=h(t,e),n=T(t);return d({style:r,src:n})}var G={WebkitTextStroke:"textStroke",WebkitTextStrokeWidth:"textStrokeWidth",WebkitTextStrokeColor:"textStrokeColor"};function U(t,e,r){if(!r.tailwindFn||typeof t.props!="object"||t.props===null)return;let n=[];"tw"in t.props&&typeof t.props.tw=="string"&&n.push(t.props.tw),"className"in t.props&&typeof t.props.className=="string"&&n.push(t.props.className),"class"in t.props&&typeof t.props.class=="string"&&n.push(t.props.class),Object.assign(e,r.tailwindFn(...n))}function h(t,e){let r={};typeof t.type=="string"&&t.type in p&&Object.assign(r,p[t.type]),U(t,r,e);let n=typeof t.props=="object"&&t.props!==null&&"style"in t.props&&typeof t.props.style=="object"&&t.props.style!==null?t.props.style:void 0;if(n&&Object.keys(n).length>0){for(let[o,a]of Object.entries(G))o in n&&(r[a]=n[o],delete n[o]);Object.assign(r,n)}return r}function N(t,e){return typeof t.props!="object"||t.props===null||!("children"in t.props)?Promise.resolve([]):s(t.props.children,e)}function Q(t,e){return Promise.all(Array.from(t).map(r=>s(r,e))).then(r=>r.flat())}0&&(module.exports={fromJsx});
|
package/dist/jsx/jsx.d.cts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { N as Node } from '../types-RUwY6emy.cjs';
|
|
3
|
+
import { createTailwindFn } from './create-tailwind-fn.cjs';
|
|
4
|
+
import 'twrnc';
|
|
3
5
|
|
|
4
6
|
type ReactElementLike = {
|
|
5
7
|
type: string | symbol | ((props: unknown) => ReactElementLike) | ReactElementLike;
|
|
@@ -7,6 +9,12 @@ type ReactElementLike = {
|
|
|
7
9
|
$$typeof?: symbol;
|
|
8
10
|
};
|
|
9
11
|
|
|
10
|
-
|
|
12
|
+
interface FromJsxOptions {
|
|
13
|
+
/**
|
|
14
|
+
* @description The tailwind function to use, it will parse the `tw` prop and apply to inline styles.
|
|
15
|
+
*/
|
|
16
|
+
tailwindFn?: ReturnType<typeof createTailwindFn>;
|
|
17
|
+
}
|
|
18
|
+
declare function fromJsx(element: ReactNode | ReactElementLike, options?: FromJsxOptions): Promise<Node>;
|
|
11
19
|
|
|
12
|
-
export { fromJsx };
|
|
20
|
+
export { type FromJsxOptions, fromJsx };
|
package/dist/jsx/jsx.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { N as Node } from '../types-RUwY6emy.js';
|
|
3
|
+
import { createTailwindFn } from './create-tailwind-fn.js';
|
|
4
|
+
import 'twrnc';
|
|
3
5
|
|
|
4
6
|
type ReactElementLike = {
|
|
5
7
|
type: string | symbol | ((props: unknown) => ReactElementLike) | ReactElementLike;
|
|
@@ -7,6 +9,12 @@ type ReactElementLike = {
|
|
|
7
9
|
$$typeof?: symbol;
|
|
8
10
|
};
|
|
9
11
|
|
|
10
|
-
|
|
12
|
+
interface FromJsxOptions {
|
|
13
|
+
/**
|
|
14
|
+
* @description The tailwind function to use, it will parse the `tw` prop and apply to inline styles.
|
|
15
|
+
*/
|
|
16
|
+
tailwindFn?: ReturnType<typeof createTailwindFn>;
|
|
17
|
+
}
|
|
18
|
+
declare function fromJsx(element: ReactNode | ReactElementLike, options?: FromJsxOptions): Promise<Node>;
|
|
11
19
|
|
|
12
|
-
export { fromJsx };
|
|
20
|
+
export { type FromJsxOptions, fromJsx };
|
package/dist/jsx/jsx.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
function
|
|
1
|
+
function y(t,e){e&&Object.keys(e).length>0&&(t.style=e)}function f(t){let e={type:"container",children:t.children};return y(e,t.style),e}function m(t,e){let r={type:"text",text:t};return y(r,e),r}function g(t){let e={type:"image",src:t.src};return y(e,t.style),e}function d(t){return{percentage:t}}var p={body:{margin:8},p:{marginTop:"1em",marginBottom:"1em",display:"block"},blockquote:{marginTop:"1em",marginBottom:"1em",marginLeft:40,marginRight:40,display:"block"},center:{textAlign:"center",display:"block"},hr:{marginTop:"0.5em",marginBottom:"0.5em",marginLeft:"auto",marginRight:"auto",borderWidth:1,display:"block"},h1:{fontSize:"2em",marginTop:"0.67em",marginBottom:"0.67em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h2:{fontSize:"1.5em",marginTop:"0.83em",marginBottom:"0.83em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h3:{fontSize:"1.17em",marginTop:"1em",marginBottom:"1em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h4:{marginTop:"1.33em",marginBottom:"1.33em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h5:{fontSize:"0.83em",marginTop:"1.67em",marginBottom:"1.67em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},h6:{fontSize:"0.67em",marginTop:"2.33em",marginBottom:"2.33em",marginLeft:0,marginRight:0,fontWeight:"bold",display:"block"},u:{textDecoration:"underline",display:"inline"},strong:{fontWeight:"bold",display:"inline"},b:{fontWeight:"bold",display:"inline"},i:{fontStyle:"italic",display:"inline"},em:{fontStyle:"italic",display:"inline"},code:{fontFamily:"monospace",display:"inline"},kbd:{fontFamily:"monospace",display:"inline"},pre:{fontFamily:"monospace",margin:"1em 0",display:"block"},mark:{backgroundColor:"yellow",color:0,display:"inline"},big:{fontSize:"1.2em",display:"inline"},small:{fontSize:"0.8em",display:"inline"},s:{textDecoration:"line-through",display:"inline"},span:{display:"inline"},img:{display:"inline"},svg:{display:"inline"}};var L=new Set(["head","meta","link","style","script"]);function b(t){return L.has(t.type)}function u(t,e){return t.type===e&&"props"in t}function S(t){return t.replace(/([A-Z])/g,"-$1").toLowerCase()}function i(t){return typeof t=="object"&&t!==null&&"type"in t}function c(t){return typeof t=="function"}var O=Symbol.for("react.forward_ref"),F=Symbol.for("react.memo"),A=Symbol.for("react.fragment");function x(t){return t.$$typeof===O}function E(t){return t.$$typeof===F}function k(t){return t.type===A}function $(t){return typeof t=="string"||typeof t=="number"}function P(t){return t.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function I(t){return Object.keys(t).map(e=>`${e.replace(/([A-Z])/g,"-$1").toLowerCase()}:${String(t[e]).trim()}`).join(";")}var W=["stopColor","stopOpacity","strokeWidth","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","fillRule","clipRule","colorInterpolationFilters","floodColor","floodOpacity","accentHeight","alignmentBaseline","arabicForm","baselineShift","capHeight","clipPath","clipPathUnits","colorInterpolation","colorProfile","colorRendering","enableBackground","fillOpacity","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","horizAdvX","horizOriginX","imageRendering","letterSpacing","lightingColor","markerEnd","markerMid","markerStart","overlinePosition","overlineThickness","paintOrder","preserveAspectRatio","pointerEvents","shapeRendering","strokeMiterlimit","strokeOpacity","textAnchor","textDecoration","textRendering","transformOrigin","underlinePosition","underlineThickness","unicodeBidi","unicodeRange","unitsPerEm","vectorEffect","vertAdvY","vertOriginX","vertOriginY","vAlphabetic","vHanging","vIdeographic","vMathematical","wordSpacing","writingMode"];function j(t,e){if(t==="children"||e==null)return;let r;if(t==="className"?r="class":W.includes(t)?r=S(t):r=t,typeof e=="boolean")return`${r}="${String(e)}"`;if(t==="style"&&typeof e=="object"){let n=I(e);if(n)return`style="${P(n)}"`}return`${r}="${P(String(e))}"`}function J(t){return Object.entries(t).map(([e,r])=>j(e,r)).filter(e=>e!==void 0)}var z=(t,e)=>{let r=t.props||{};if(c(t.type))return l(t.type(t.props));if(typeof t.type=="symbol"||typeof t.type!="string")return"";let n=J(r),o=r.children,a=Array.isArray(o)?o.map(h=>e(h)).join(""):e(o);return`<${t.type}${n.length>0?` ${n.join(" ")}`:""}>${a}</${t.type}>`},l=t=>t==null||t===!1?"":$(t)?String(t):Array.isArray(t)?t.map(l).join(""):i(t)?z(t,l):"";function w(t){let e=t.props||{};if(!("xmlns"in e)){let r={...t,props:{...e,xmlns:"http://www.w3.org/2000/svg"}};return l(r)||""}return l(t)||""}async function et(t,e){let r=await s(t,e??{});return r.length===0?f({}):r.length===1&&r[0]!==void 0?r[0]:f({children:r,style:{width:d(100),height:d(100)}})}async function s(t,e){if(t==null||t===!1)return[];if(t instanceof Promise)return s(await t,e);if(typeof t=="object"&&Symbol.iterator in t)return X(t,e);if(i(t)){let r=await v(t,e);return Array.isArray(r)?r:r?[r]:[]}return[m(String(t),p.span)]}function B(t,e){if(!(typeof t.type!="object"||t.type===null)){if(x(t.type)&&"render"in t.type){let r=t.type;return s(r.render(t.props,null),e)}if(E(t.type)&&"type"in t.type){let n=t.type.type;if(c(n))return s(n(t.props),e);let o={...t,type:n};return v(o,e)}}}function N(t){if(!i(t))return Promise.resolve(void 0);let e=typeof t.props=="object"&&t.props!==null&&"children"in t.props?t.props.children:void 0;return typeof e=="string"?Promise.resolve(e):typeof e=="number"?Promise.resolve(String(e)):Array.isArray(e)?Promise.resolve(T(e)):typeof e=="object"&&e!==null&&Symbol.iterator in e?Promise.resolve(T(Array.from(e))):i(e)&&k(e)?N(e):Promise.resolve(void 0)}function T(t){if(!t.some(e=>i(e)))return t.map(e=>typeof e=="string"?e:typeof e=="number"?String(e):"").join("")}async function v(t,e){if(c(t.type))return s(t.type(t.props),e);let r=B(t,e);if(r!==void 0)return r;if(k(t))return await C(t,e)||[];if(b(t))return[];if(u(t,"br"))return[m(`
|
|
2
|
+
`,p.span)];if(u(t,"img"))return[M(t,e)];if(u(t,"svg"))return[H(t,e)];let n=R(t,e),o=await N(t);if(o!==void 0)return[m(o,n)];let a=await C(t,e);return[f({children:a,style:n})]}function M(t,e){if(!t.props.src)throw new Error("Image element must have a 'src' prop.");let r=R(t,e);return g({src:t.props.src,style:r})}function H(t,e){let r=R(t,e),n=w(t);return g({style:r,src:n})}var _={WebkitTextStroke:"textStroke",WebkitTextStrokeWidth:"textStrokeWidth",WebkitTextStrokeColor:"textStrokeColor"};function V(t,e,r){if(!r.tailwindFn||typeof t.props!="object"||t.props===null)return;let n=[];"tw"in t.props&&typeof t.props.tw=="string"&&n.push(t.props.tw),"className"in t.props&&typeof t.props.className=="string"&&n.push(t.props.className),"class"in t.props&&typeof t.props.class=="string"&&n.push(t.props.class),Object.assign(e,r.tailwindFn(...n))}function R(t,e){let r={};typeof t.type=="string"&&t.type in p&&Object.assign(r,p[t.type]),V(t,r,e);let n=typeof t.props=="object"&&t.props!==null&&"style"in t.props&&typeof t.props.style=="object"&&t.props.style!==null?t.props.style:void 0;if(n&&Object.keys(n).length>0){for(let[o,a]of Object.entries(_))o in n&&(r[a]=n[o],delete n[o]);Object.assign(r,n)}return r}function C(t,e){return typeof t.props!="object"||t.props===null||!("children"in t.props)?Promise.resolve([]):s(t.props.children,e)}function X(t,e){return Promise.all(Array.from(t).map(r=>s(r,e))).then(r=>r.flat())}export{et as fromJsx};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@takumi-rs/helpers",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.43.1",
|
|
4
4
|
"author": {
|
|
5
5
|
"email": "me@kane.tw",
|
|
6
6
|
"name": "Kane Wang",
|
|
@@ -9,12 +9,15 @@
|
|
|
9
9
|
"repository": {
|
|
10
10
|
"url": "git+https://github.com/kane50613/takumi.git"
|
|
11
11
|
},
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"twrnc": "^4.10.1"
|
|
14
|
+
},
|
|
12
15
|
"devDependencies": {
|
|
13
16
|
"@types/bun": "catalog:",
|
|
14
17
|
"@types/react": "^19.2.2",
|
|
15
18
|
"@types/react-dom": "^19.2.2",
|
|
16
19
|
"bun-plugin-dts": "^0.3.0",
|
|
17
|
-
"lucide-react": "^0.
|
|
20
|
+
"lucide-react": "^0.552.0",
|
|
18
21
|
"react": "^19.2.0",
|
|
19
22
|
"react-dom": "^19.2.0",
|
|
20
23
|
"tsup": "^8.5.0",
|
|
@@ -32,6 +35,12 @@
|
|
|
32
35
|
"import": "./dist/jsx/jsx.js",
|
|
33
36
|
"require": "./dist/jsx/jsx.cjs",
|
|
34
37
|
"default": "./dist/jsx/jsx.js"
|
|
38
|
+
},
|
|
39
|
+
"./jsx/create-tailwind-fn": {
|
|
40
|
+
"types": "./dist/jsx/create-tailwind-fn.d.ts",
|
|
41
|
+
"import": "./dist/jsx/create-tailwind-fn.js",
|
|
42
|
+
"require": "./dist/jsx/create-tailwind-fn.cjs",
|
|
43
|
+
"default": "./dist/jsx/create-tailwind-fn.js"
|
|
35
44
|
}
|
|
36
45
|
},
|
|
37
46
|
"files": [
|
|
@@ -42,7 +51,7 @@
|
|
|
42
51
|
],
|
|
43
52
|
"license": "(MIT OR Apache-2.0)",
|
|
44
53
|
"scripts": {
|
|
45
|
-
"build": "tsup-node src/index.ts src/jsx/jsx.ts --minify --dts --format esm,cjs --no-splitting"
|
|
54
|
+
"build": "tsup-node src/index.ts src/jsx/jsx.ts src/jsx/create-tailwind-fn.ts --minify --dts --format esm,cjs --no-splitting"
|
|
46
55
|
},
|
|
47
56
|
"type": "module"
|
|
48
57
|
}
|