@easy-editor/materials-dashboard-text 0.0.10 → 0.0.11

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../shared/src/types.ts","../src/constants.ts","../src/component.tsx","../src/configure.ts","../src/snippets.ts","../src/meta.ts"],"sourcesContent":["/**\n * Material Groups\n * 物料分组常量\n */\nexport const MaterialGroup = {\n /** 内置 */\n INNER: 'inner',\n /** 基础 */\n BASIC: 'basic',\n /** 图表 */\n CHART: 'chart',\n /** 数据展示 */\n DATA: 'data',\n /** 交互 */\n INTERACTION: 'interaction',\n} as const\n\n/**\n * Material Group Type\n */\nexport type MaterialGroupType = (typeof MaterialGroup)[keyof typeof MaterialGroup]\n","/**\n * 物料常量配置\n * 统一管理全局变量名等配置,确保 meta.ts 和 rollup.config.js 使用相同的值\n */\n\n/**\n * UMD 全局变量基础名称\n * 用于构建:\n * - 元数据:${GLOBAL_NAME}Meta (例如: EasyEditorMaterialsTextMeta)\n * - 组件:${GLOBAL_NAME}Component (例如: EasyEditorMaterialsTextComponent)\n * - 完整构建:${GLOBAL_NAME} (例如: EasyEditorMaterialsText)\n */\nexport const COMPONENT_NAME = 'EasyEditorMaterialsText'\n\n/**\n * 包名\n */\nexport const PACKAGE_NAME = '@easy-editor/materials-dashboard-text'\n","import type { CSSProperties, Ref } from 'react'\n\ninterface TextProps {\n ref?: Ref<HTMLDivElement>\n text?: string\n fontSize?: number | string\n color?: string\n fontWeight?: string | number\n textAlign?: 'left' | 'center' | 'right' | 'justify'\n lineHeight?: number | string\n className?: string\n style?: CSSProperties\n}\n\nconst Text = (props: TextProps) => {\n const {\n ref,\n text = 'Text',\n fontSize = 14,\n color = '#ffffff',\n fontWeight = 'normal',\n textAlign = 'left',\n lineHeight = 1.5,\n className = '',\n style: externalStyle,\n } = props\n\n const internalStyle: CSSProperties = {\n width: '100%',\n height: '100%',\n fontSize: typeof fontSize === 'number' ? `${fontSize}px` : fontSize,\n color,\n fontWeight,\n textAlign,\n lineHeight,\n wordBreak: 'break-word',\n whiteSpace: 'pre-wrap',\n }\n\n const mergedStyle = { ...internalStyle, ...externalStyle }\n\n return (\n <div className={className} ref={ref} style={mergedStyle}>\n {text}\n </div>\n )\n}\n\nexport default Text\n","import type { Configure } from '@easy-editor/core'\nimport Text from './component'\n\nconst configure: Configure = {\n props: [\n {\n type: 'group',\n title: '功能',\n setter: 'TabSetter',\n items: [\n {\n type: 'group',\n key: 'basic',\n title: '基本',\n items: [\n {\n name: 'id',\n title: 'ID',\n setter: 'NodeIdSetter',\n },\n {\n name: 'title',\n title: '标题',\n setter: 'StringSetter',\n extraProps: {\n getValue(target) {\n return target.getExtraPropValue('title')\n },\n setValue(target, value) {\n target.setExtraPropValue('title', value)\n },\n },\n },\n {\n type: 'group',\n title: '基础属性',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'rect',\n title: '位置尺寸',\n setter: 'RectSetter',\n extraProps: {\n getValue(target) {\n return target.getExtraPropValue('$dashboard.rect')\n },\n setValue(target, value) {\n target.setExtraPropValue('$dashboard.rect', value)\n },\n },\n },\n ],\n },\n {\n name: 'text',\n title: '文本内容',\n setter: 'StringSetter',\n },\n {\n type: 'group',\n title: '字体样式',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'fontSize',\n title: '字体大小',\n setter: 'NumberSetter',\n extraProps: {\n defaultValue: 14,\n },\n },\n {\n name: 'color',\n title: '文字颜色',\n setter: 'ColorSetter',\n extraProps: {\n defaultValue: '#000000',\n },\n },\n {\n name: 'lineHeight',\n title: '行高',\n setter: 'NumberSetter',\n extraProps: {\n defaultValue: 1.5,\n },\n },\n ],\n },\n ],\n },\n {\n type: 'group',\n key: 'advanced',\n title: '高级',\n items: [\n {\n type: 'group',\n title: '高级设置',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n title: '显隐',\n setter: 'SwitchSetter',\n extraProps: {\n supportVariable: true,\n getValue(target) {\n return target.getExtraPropValue('condition')\n },\n setValue(target, value: boolean) {\n target.setExtraPropValue('condition', value)\n },\n },\n },\n ],\n },\n ],\n },\n ],\n },\n ],\n component: {},\n supports: {},\n advanced: {\n view: Text,\n },\n}\n\nexport default configure\n","import type { Snippet } from '@easy-editor/core'\nimport { COMPONENT_NAME } from './constants'\n\nconst snippets: Snippet[] = [\n {\n title: 'Text',\n screenshot: 'https://img.alicdn.com/imgextra/i3/O1CN01n5wpxc1bi862KuXFz_!!6000000003498-55-tps-50-50.svg',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n text: 'Text Text Text',\n fontSize: 14,\n color: '#ffffff',\n textAlign: 'left',\n },\n $dashboard: {\n rect: {\n width: 120,\n height: 40,\n },\n },\n },\n },\n {\n title: 'Heading',\n screenshot: 'https://img.alicdn.com/imgextra/i3/O1CN01n5wpxc1bi862KuXFz_!!6000000003498-55-tps-50-50.svg',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n text: 'Heading',\n fontSize: 24,\n color: '#ffffff',\n fontWeight: 'bold',\n textAlign: 'center',\n },\n $dashboard: {\n rect: {\n width: 200,\n height: 50,\n },\n },\n },\n },\n]\n\nexport default snippets\n","import type { ComponentMetadata } from '@easy-editor/core'\nimport { MaterialGroup } from '@easy-editor/materials-shared'\nimport { COMPONENT_NAME, PACKAGE_NAME } from './constants'\nimport configure from './configure'\nimport snippets from './snippets'\n\nconst meta: ComponentMetadata = {\n componentName: COMPONENT_NAME,\n title: 'Text',\n group: MaterialGroup.BASIC,\n devMode: 'proCode',\n npm: {\n package: PACKAGE_NAME,\n version: 'latest',\n globalName: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n },\n snippets,\n configure,\n}\n\nexport default meta\n"],"names":["MaterialGroup","INNER","BASIC","COMPONENT_NAME","PACKAGE_NAME","Text","props","ref","text","fontSize","color","fontWeight","textAlign","lineHeight","className","style","externalStyle","internalStyle","width","height","wordBreak","whiteSpace","mergedStyle","_jsx","children","configure","type","title","setter","items","key","name","extraProps","getValue","target","getExtraPropValue","setValue","value","setExtraPropValue","componentName","icon","defaultValue","supportVariable","component","supports","advanced","view","snippets","screenshot","schema","$dashboard","rect","meta","group","devMode","npm","package","version","globalName"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs","../../../../shared/src/lib/utils.ts","../../../../shared/src/index.ts","../../../../../node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.js","../src/component.tsx","../src/configure.ts","../src/constants.ts","../src/snippets.ts","../src/meta.ts"],"sourcesContent":["function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","import { clsx, type ClassValue } from 'clsx'\n\nexport function cn(...inputs: ClassValue[]) {\n return clsx(inputs)\n}\n","/**\n * Shared types, components and utilities for EasyEditor materials\n * @package @easy-editor/materials-shared\n */\n\n// 物料分组常量\nexport const MaterialGroup = {\n /** 内置 */\n INNER: 'inner',\n /** 基础 */\n BASIC: 'basic',\n /** 图表 */\n CHART: 'chart',\n /** 数据展示 */\n DISPLAY: 'display',\n /** 媒体 */\n MEDIA: 'media',\n /** 交互 */\n INTERACTION: 'interaction',\n /** 地图 */\n MAP: 'map',\n} as const\n\nexport type MaterialGroup = (typeof MaterialGroup)[keyof typeof MaterialGroup]\n\n// 工具函数\nexport { cn } from './lib/utils'\n\nexport * from './types'\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","/**\n * Text Component\n * 文本组件 - 支持普通文本、链接、标题、发光效果\n */\n\nimport type { CSSProperties, Ref } from 'react'\nimport { cn } from '@easy-editor/materials-shared'\nimport styles from './component.module.css'\n\nexport type TextAlign = 'left' | 'center' | 'right'\nexport type VerticalAlign = 'top' | 'middle' | 'bottom'\n\nexport interface TextProps {\n ref?: Ref<HTMLDivElement>\n /** 文本内容 */\n content?: string\n /** 字体大小 */\n fontSize?: number\n /** 字体粗细 */\n fontWeight?: number | 'normal' | 'bold'\n /** 字体家族 */\n fontFamily?: string\n /** 颜色 */\n color?: string\n /** 水平对齐 */\n textAlign?: TextAlign\n /** 垂直对齐 */\n verticalAlign?: VerticalAlign\n /** 行高 */\n lineHeight?: number\n /** 字间距 */\n letterSpacing?: number\n /** 是否为链接 */\n isLink?: boolean\n /** 链接地址 */\n href?: string\n /** 链接打开方式 */\n target?: '_self' | '_blank'\n /** 下划线 */\n underline?: boolean\n /** 发光效果 */\n glowEnable?: boolean\n /** 发光颜色 */\n glowColor?: string\n /** 发光强度 */\n glowIntensity?: number\n /** 显隐控制 */\n condition?: boolean\n /** 外部样式 */\n style?: CSSProperties\n}\n\nconst getAlignClass = (align: TextAlign): string => {\n switch (align) {\n case 'left':\n return styles.alignLeft\n case 'center':\n return styles.alignCenter\n case 'right':\n return styles.alignRight\n default:\n return styles.alignLeft\n }\n}\n\nconst getValignClass = (align: VerticalAlign): string => {\n switch (align) {\n case 'top':\n return styles.valignTop\n case 'middle':\n return styles.valignMiddle\n case 'bottom':\n return styles.valignBottom\n default:\n return styles.valignMiddle\n }\n}\n\nexport const Text: React.FC<TextProps> = ({\n ref,\n content = '文本内容',\n fontSize = 16,\n fontWeight = 'normal',\n fontFamily = 'inherit',\n color = '#ffffff',\n textAlign = 'left',\n verticalAlign = 'middle',\n lineHeight = 1.5,\n letterSpacing = 0,\n isLink = false,\n href = '',\n target = '_blank',\n underline = false,\n glowEnable = false,\n glowColor = '#00d4ff',\n glowIntensity = 1,\n style: externalStyle,\n}) => {\n // 计算发光效果\n const textShadow = glowEnable\n ? `0 0 ${10 * glowIntensity}px ${glowColor}, 0 0 ${20 * glowIntensity}px ${glowColor}, 0 0 ${30 * glowIntensity}px ${glowColor}`\n : undefined\n\n const textStyle: CSSProperties = {\n fontSize,\n fontWeight,\n fontFamily,\n color,\n lineHeight,\n letterSpacing,\n textShadow,\n }\n\n const containerClass = cn(styles.container, getAlignClass(textAlign), getValignClass(verticalAlign))\n\n const textClass = cn(styles.text, isLink && styles.link, underline && styles.underline)\n\n // 链接模式\n if (isLink && href) {\n const relValue = target === '_blank' ? 'noopener noreferrer' : ''\n return (\n <div className={containerClass} ref={ref} style={externalStyle}>\n <a className={textClass} href={href} rel={relValue} style={textStyle} target={target}>\n {content}\n </a>\n </div>\n )\n }\n\n // 普通文本\n return (\n <div className={containerClass} ref={ref} style={externalStyle}>\n <span className={textClass} style={textStyle}>\n {content}\n </span>\n </div>\n )\n}\n\nexport default Text\n","/**\n * Text Configure\n * 文本组件配置\n */\n\nimport type { Configure } from '@easy-editor/core'\n\nexport const configure: Configure = {\n props: [\n {\n type: 'group',\n title: '属性',\n setter: 'TabSetter',\n items: [\n {\n type: 'group',\n key: 'config',\n title: '配置',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n // 基础配置\n {\n name: 'id',\n title: 'ID',\n setter: 'NodeIdSetter',\n extraProps: {\n // @ts-expect-error label is not a valid extra prop\n label: false,\n },\n },\n {\n name: 'title',\n title: '标题',\n setter: 'StringSetter',\n extraProps: {\n getValue(target) {\n return target.getExtraPropValue('title')\n },\n setValue(target, value) {\n target.setExtraPropValue('title', value)\n },\n },\n },\n {\n type: 'group',\n title: '基础属性',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'rect',\n title: '位置尺寸',\n setter: 'RectSetter',\n extraProps: {\n getValue(target) {\n return target.getExtraPropValue('$dashboard.rect')\n },\n setValue(target, value) {\n target.setExtraPropValue('$dashboard.rect', value)\n },\n },\n },\n ],\n },\n // 组件配置\n {\n type: 'group',\n title: '内容',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'content',\n title: '文本内容',\n setter: 'TextAreaSetter',\n extraProps: {\n defaultValue: '文本内容',\n },\n },\n {\n name: 'isLink',\n title: '作为链接',\n setter: 'SwitchSetter',\n extraProps: {\n defaultValue: false,\n },\n },\n {\n name: 'href',\n title: '链接地址',\n setter: 'StringSetter',\n },\n {\n name: 'target',\n title: '打开方式',\n setter: {\n componentName: 'SelectSetter',\n props: {\n options: [\n { label: '新窗口', value: '_blank' },\n { label: '当前窗口', value: '_self' },\n ],\n },\n },\n extraProps: {\n defaultValue: '_blank',\n },\n },\n ],\n },\n {\n type: 'group',\n title: '字体',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'fontSize',\n title: '字体大小',\n setter: 'NumberSetter',\n extraProps: {\n defaultValue: 16,\n },\n },\n {\n name: 'fontWeight',\n title: '字体粗细',\n setter: {\n componentName: 'SelectSetter',\n props: {\n options: [\n { label: '正常', value: 'normal' },\n { label: '粗体', value: 'bold' },\n ],\n },\n },\n extraProps: {\n defaultValue: 'normal',\n },\n },\n {\n name: 'color',\n title: '颜色',\n setter: 'ColorSetter',\n extraProps: {\n defaultValue: '#ffffff',\n },\n },\n {\n name: 'lineHeight',\n title: '行高',\n setter: 'NumberSetter',\n extraProps: {\n defaultValue: 1.5,\n },\n },\n ],\n },\n {\n type: 'group',\n title: '对齐',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'textAlign',\n title: '水平对齐',\n setter: {\n componentName: 'SegmentedSetter',\n props: {\n options: [\n { label: '左', value: 'left' },\n { label: '中', value: 'center' },\n { label: '右', value: 'right' },\n ],\n },\n },\n extraProps: {\n defaultValue: 'left',\n },\n },\n {\n name: 'verticalAlign',\n title: '垂直对齐',\n setter: {\n componentName: 'SegmentedSetter',\n props: {\n options: [\n { label: '上', value: 'top' },\n { label: '中', value: 'middle' },\n { label: '下', value: 'bottom' },\n ],\n },\n },\n extraProps: {\n defaultValue: 'middle',\n },\n },\n ],\n },\n {\n type: 'group',\n title: '效果',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'underline',\n title: '下划线',\n setter: 'SwitchSetter',\n extraProps: {\n defaultValue: false,\n },\n },\n {\n name: 'glowEnable',\n title: '发光效果',\n setter: 'SwitchSetter',\n extraProps: {\n defaultValue: false,\n },\n },\n {\n name: 'glowColor',\n title: '发光颜色',\n setter: 'ColorSetter',\n extraProps: {\n defaultValue: '#00d4ff',\n },\n },\n ],\n },\n ],\n },\n {\n type: 'group',\n key: 'data',\n title: '数据',\n items: [\n {\n name: 'dataBinding',\n title: '数据绑定',\n setter: 'DataBindingSetter',\n },\n ],\n },\n {\n type: 'group',\n key: 'advanced',\n title: '高级',\n items: [\n {\n name: 'condition',\n title: '显隐控制',\n setter: 'SwitchSetter',\n extraProps: {\n defaultValue: true,\n supportVariable: true,\n },\n },\n ],\n },\n ],\n },\n ],\n component: {},\n supports: {},\n advanced: {},\n}\n","/**\n * 物料常量配置\n * 统一管理全局变量名等配置,确保 meta.ts 和 rollup.config.js 使用相同的值\n */\n\n/**\n * UMD 全局变量基础名称\n * 用于构建:\n * - 元数据:${GLOBAL_NAME}Meta (例如: EasyEditorMaterialsTextMeta)\n * - 组件:${GLOBAL_NAME}Component (例如: EasyEditorMaterialsTextComponent)\n * - 完整构建:${GLOBAL_NAME} (例如: EasyEditorMaterialsText)\n */\nexport const COMPONENT_NAME = 'EasyEditorMaterialsText'\n\n/**\n * 包名\n */\nexport const PACKAGE_NAME = '@easy-editor/materials-dashboard-text'\n","/**\n * Text Snippets\n * 文本组件代码片段\n */\n\nimport type { Snippet } from '@easy-editor/core'\nimport { COMPONENT_NAME } from './constants'\n\nexport const snippets: Snippet[] = [\n {\n title: '普通文本',\n screenshot: '',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n content: '这是一段普通文本',\n fontSize: 16,\n color: '#ffffff',\n },\n $dashboard: {\n rect: {\n width: 120,\n height: 40,\n },\n },\n },\n },\n {\n title: '标题文本',\n screenshot: '',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n content: '标题文本',\n fontSize: 32,\n fontWeight: 'bold',\n color: '#ffffff',\n textAlign: 'center',\n },\n $dashboard: {\n rect: {\n width: 200,\n height: 60,\n },\n },\n },\n },\n {\n title: '发光标题',\n screenshot: '',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n content: '发光标题',\n fontSize: 36,\n fontWeight: 'bold',\n color: '#00d4ff',\n textAlign: 'center',\n glowEnable: true,\n glowColor: '#00d4ff',\n glowIntensity: 1.5,\n },\n $dashboard: {\n rect: {\n width: 240,\n height: 80,\n },\n },\n },\n },\n {\n title: '链接文本',\n screenshot: '',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n content: '点击跳转',\n fontSize: 16,\n color: '#00d4ff',\n isLink: true,\n href: 'https://easy-editor-docs.vercel.app/',\n target: '_blank',\n underline: true,\n },\n $dashboard: {\n rect: {\n width: 120,\n height: 40,\n },\n },\n },\n },\n]\n","/**\n * Text Meta\n * 文本组件元数据\n */\n\nimport type { ComponentMetadata } from '@easy-editor/core'\nimport { configure } from './configure'\nimport { snippets } from './snippets'\nimport { COMPONENT_NAME, PACKAGE_NAME } from './constants'\nimport { MaterialGroup } from '@easy-editor/materials-shared'\nimport pkg from '../package.json'\n\nexport const meta: ComponentMetadata = {\n componentName: COMPONENT_NAME,\n title: '文本',\n category: 'dashboard',\n group: MaterialGroup.BASIC,\n devMode: 'proCode',\n npm: {\n package: PACKAGE_NAME,\n version: pkg.version,\n globalName: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n },\n configure,\n snippets,\n}\n"],"names":["cn","inputs","clsx","MaterialGroup","INNER","BASIC","styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","getAlignClass","align","styles","alignLeft","alignCenter","alignRight","getValignClass","valignTop","valignMiddle","valignBottom","Text","content","fontSize","fontWeight","fontFamily","color","textAlign","verticalAlign","lineHeight","letterSpacing","isLink","href","target","underline","glowEnable","glowColor","glowIntensity","externalStyle","textShadow","undefined","textStyle","containerClass","container","textClass","text","link","relValue","_jsx","className","children","rel","configure","props","title","setter","items","key","componentName","icon","name","extraProps","label","getValue","getExtraPropValue","setValue","value","setExtraPropValue","defaultValue","options","supportVariable","component","supports","advanced","COMPONENT_NAME","PACKAGE_NAME","snippets","screenshot","schema","$dashboard","rect","width","height","meta","category","group","devMode","npm","package","version","pkg","globalName"],"mappings":";;;;AAAA,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAQ,SAAS,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;;ACExW,SAASA,EAAEA,CAAC,GAAGC,MAAoB,EAAE;EAC1C,OAAOC,IAAI,CAACD,MAAM,CAAC;AACrB;;ACEO,MAAME,aAAa,GAAG;AAE3BC,EAEAC,KAAK,EAAE,OAWT,CAAU;;ACrBV,SAASC,WAAWA,CAACC,GAAG,EAAEC,GAAG,EAAE;EAC7B,IAAKA,GAAG,KAAK,MAAM,EAAGA,GAAG,GAAG,EAAE;AAC9B,EAAA,IAAIC,QAAQ,GAAGD,GAAG,CAACC,QAAQ;AAE3B,EAAA,IAAY,OAAOC,QAAQ,KAAK,WAAW,EAAE;AAAE,IAAA;AAAQ,EAAA;AAEvD,EAAA,IAAIC,IAAI,GAAGD,QAAQ,CAACC,IAAI,IAAID,QAAQ,CAACE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACpE,EAAA,IAAIC,KAAK,GAAGH,QAAQ,CAACI,aAAa,CAAC,OAAO,CAAC;EAC3CD,KAAK,CAACE,IAAI,GAAG,UAAU;EAEvB,IAAIN,QAAQ,KAAK,KAAK,EAAE;IACtB,IAAIE,IAAI,CAACK,UAAU,EAAE;MACnBL,IAAI,CAACM,YAAY,CAACJ,KAAK,EAAEF,IAAI,CAACK,UAAU,CAAC;AAC3C,IAAA,CAAC,MAAM;AACLL,MAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC;AACzB,IAAA;AACF,EAAA,CAAC,MAAM;AACLF,IAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC;AACzB,EAAA;EAEA,IAAIA,KAAK,CAACM,UAAU,EAAE;AACpBN,IAAAA,KAAK,CAACM,UAAU,CAACC,OAAO,GAAGb,GAAG;AAChC,EAAA,CAAC,MAAM;IACLM,KAAK,CAACK,WAAW,CAACR,QAAQ,CAACW,cAAc,CAACd,GAAG,CAAC,CAAC;AACjD,EAAA;AACF;;;;;;ACzBA;AACA;AACA;AACA;;AAiDA,MAAMe,aAAa,GAAIC,KAAgB,IAAa;AAClD,EAAA,QAAQA,KAAK;AACX,IAAA,KAAK,MAAM;MACT,OAAOC,MAAM,CAACC,SAAS;AACzB,IAAA,KAAK,QAAQ;MACX,OAAOD,MAAM,CAACE,WAAW;AAC3B,IAAA,KAAK,OAAO;MACV,OAAOF,MAAM,CAACG,UAAU;AAC1B,IAAA;MACE,OAAOH,MAAM,CAACC,SAAS;AAC3B;AACF,CAAC;AAED,MAAMG,cAAc,GAAIL,KAAoB,IAAa;AACvD,EAAA,QAAQA,KAAK;AACX,IAAA,KAAK,KAAK;MACR,OAAOC,MAAM,CAACK,SAAS;AACzB,IAAA,KAAK,QAAQ;MACX,OAAOL,MAAM,CAACM,YAAY;AAC5B,IAAA,KAAK,QAAQ;MACX,OAAON,MAAM,CAACO,YAAY;AAC5B,IAAA;MACE,OAAOP,MAAM,CAACM,YAAY;AAC9B;AACF,CAAC;AAEM,MAAME,IAAyB,GAAGA,CAAC;EACxCxB,GAAG;AACHyB,EAAAA,OAAO,GAAG,MAAM;AAChBC,EAAAA,QAAQ,GAAG,EAAE;AACbC,EAAAA,UAAU,GAAG,QAAQ;AACrBC,EAAAA,UAAU,GAAG,SAAS;AACtBC,EAAAA,KAAK,GAAG,SAAS;AACjBC,EAAAA,SAAS,GAAG,MAAM;AAClBC,EAAAA,aAAa,GAAG,QAAQ;AACxBC,EAAAA,UAAU,GAAG,GAAG;AAChBC,EAAAA,aAAa,GAAG,CAAC;AACjBC,EAAAA,MAAM,GAAG,KAAK;AACdC,EAAAA,IAAI,GAAG,EAAE;AACTC,EAAAA,MAAM,GAAG,QAAQ;AACjBC,EAAAA,SAAS,GAAG,KAAK;AACjBC,EAAAA,UAAU,GAAG,KAAK;AAClBC,EAAAA,SAAS,GAAG,SAAS;AACrBC,EAAAA,aAAa,GAAG,CAAC;AACjBnC,EAAAA,KAAK,EAAEoC;AACT,CAAC,KAAK;AACJ;EACA,MAAMC,UAAU,GAAGJ,UAAU,GACzB,CAAA,IAAA,EAAO,EAAE,GAAGE,aAAa,CAAA,GAAA,EAAMD,SAAS,CAAA,MAAA,EAAS,EAAE,GAAGC,aAAa,CAAA,GAAA,EAAMD,SAAS,CAAA,MAAA,EAAS,EAAE,GAAGC,aAAa,CAAA,GAAA,EAAMD,SAAS,CAAA,CAAE,GAC9HI,SAAS;AAEb,EAAA,MAAMC,SAAwB,GAAG;IAC/BlB,QAAQ;IACRC,UAAU;IACVC,UAAU;IACVC,KAAK;IACLG,UAAU;IACVC,aAAa;AACbS,IAAAA;GACD;AAED,EAAA,MAAMG,cAAc,GAAGrD,EAAE,CAACwB,MAAM,CAAC8B,SAAS,EAAEhC,aAAa,CAACgB,SAAS,CAAC,EAAEV,cAAc,CAACW,aAAa,CAAC,CAAC;AAEpG,EAAA,MAAMgB,SAAS,GAAGvD,EAAE,CAACwB,MAAM,CAACgC,IAAI,EAAEd,MAAM,IAAIlB,MAAM,CAACiC,IAAI,EAAEZ,SAAS,IAAIrB,MAAM,CAACqB,SAAS,CAAC;;AAEvF;EACA,IAAIH,MAAM,IAAIC,IAAI,EAAE;IAClB,MAAMe,QAAQ,GAAGd,MAAM,KAAK,QAAQ,GAAG,qBAAqB,GAAG,EAAE;AACjE,IAAA,oBACEe,cAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAEP,cAAe;AAAC7C,MAAAA,GAAG,EAAEA,GAAI;AAACK,MAAAA,KAAK,EAAEoC,aAAc;AAAAY,MAAAA,QAAA,eAC7DF,cAAA,CAAA,GAAA,EAAA;AAAGC,QAAAA,SAAS,EAAEL,SAAU;AAACZ,QAAAA,IAAI,EAAEA,IAAK;AAACmB,QAAAA,GAAG,EAAEJ,QAAS;AAAC7C,QAAAA,KAAK,EAAEuC,SAAU;AAACR,QAAAA,MAAM,EAAEA,MAAO;AAAAiB,QAAAA,QAAA,EAClF5B;OACA;AAAC,KACD,CAAC;AAEV,EAAA;;AAEA;AACA,EAAA,oBACE0B,cAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAEP,cAAe;AAAC7C,IAAAA,GAAG,EAAEA,GAAI;AAACK,IAAAA,KAAK,EAAEoC,aAAc;AAAAY,IAAAA,QAAA,eAC7DF,cAAA,CAAA,MAAA,EAAA;AAAMC,MAAAA,SAAS,EAAEL,SAAU;AAAC1C,MAAAA,KAAK,EAAEuC,SAAU;AAAAS,MAAAA,QAAA,EAC1C5B;KACG;AAAC,GACJ,CAAC;AAEV;;AClIO,MAAM8B,SAAoB,GAAG;AAClCC,EAAAA,KAAK,EAAE,CACL;AACEjD,IAAAA,IAAI,EAAE,OAAO;AACbkD,IAAAA,KAAK,EAAE,IAAI;AACXC,IAAAA,MAAM,EAAE,WAAW;AACnBC,IAAAA,KAAK,EAAE,CACL;AACEpD,MAAAA,IAAI,EAAE,OAAO;AACbqD,MAAAA,GAAG,EAAE,QAAQ;AACbH,MAAAA,KAAK,EAAE,IAAI;AACXC,MAAAA,MAAM,EAAE;AACNG,QAAAA,aAAa,EAAE,gBAAgB;AAC/BL,QAAAA,KAAK,EAAE;AACLM,UAAAA,IAAI,EAAE;AACR;OACD;AACDH,MAAAA,KAAK,EAAE;AAEL,MAAA;AACEI,QAAAA,IAAI,EAAE,IAAI;AACVN,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,MAAM,EAAE,cAAc;AACtBM,QAAAA,UAAU,EAAE;AAEVC,UAAAA,KAAK,EAAE;AACT;AACF,OAAC,EACD;AACEF,QAAAA,IAAI,EAAE,OAAO;AACbN,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,MAAM,EAAE,cAAc;AACtBM,QAAAA,UAAU,EAAE;UACVE,QAAQA,CAAC9B,MAAM,EAAE;AACf,YAAA,OAAOA,MAAM,CAAC+B,iBAAiB,CAAC,OAAO,CAAC;UAC1C,CAAC;AACDC,UAAAA,QAAQA,CAAChC,MAAM,EAAEiC,KAAK,EAAE;AACtBjC,YAAAA,MAAM,CAACkC,iBAAiB,CAAC,OAAO,EAAED,KAAK,CAAC;AAC1C,UAAA;AACF;AACF,OAAC,EACD;AACE9D,QAAAA,IAAI,EAAE,OAAO;AACbkD,QAAAA,KAAK,EAAE,MAAM;AACbC,QAAAA,MAAM,EAAE;AACNG,UAAAA,aAAa,EAAE,gBAAgB;AAC/BL,UAAAA,KAAK,EAAE;AACLM,YAAAA,IAAI,EAAE;AACR;SACD;AACDH,QAAAA,KAAK,EAAE,CACL;AACEI,UAAAA,IAAI,EAAE,MAAM;AACZN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE,YAAY;AACpBM,UAAAA,UAAU,EAAE;YACVE,QAAQA,CAAC9B,MAAM,EAAE;AACf,cAAA,OAAOA,MAAM,CAAC+B,iBAAiB,CAAC,iBAAiB,CAAC;YACpD,CAAC;AACDC,YAAAA,QAAQA,CAAChC,MAAM,EAAEiC,KAAK,EAAE;AACtBjC,cAAAA,MAAM,CAACkC,iBAAiB,CAAC,iBAAiB,EAAED,KAAK,CAAC;AACpD,YAAA;AACF;SACD;OAEJ;AAED,MAAA;AACE9D,QAAAA,IAAI,EAAE,OAAO;AACbkD,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,MAAM,EAAE;AACNG,UAAAA,aAAa,EAAE,gBAAgB;AAC/BL,UAAAA,KAAK,EAAE;AACLM,YAAAA,IAAI,EAAE;AACR;SACD;AACDH,QAAAA,KAAK,EAAE,CACL;AACEI,UAAAA,IAAI,EAAE,SAAS;AACfN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE,gBAAgB;AACxBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,QAAQ;AACdN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE,cAAc;AACtBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,MAAM;AACZN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE;AACV,SAAC,EACD;AACEK,UAAAA,IAAI,EAAE,QAAQ;AACdN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE;AACNG,YAAAA,aAAa,EAAE,cAAc;AAC7BL,YAAAA,KAAK,EAAE;AACLgB,cAAAA,OAAO,EAAE,CACP;AAAEP,gBAAAA,KAAK,EAAE,KAAK;AAAEI,gBAAAA,KAAK,EAAE;AAAS,eAAC,EACjC;AAAEJ,gBAAAA,KAAK,EAAE,MAAM;AAAEI,gBAAAA,KAAK,EAAE;eAAS;AAErC;WACD;AACDL,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;SACD;AAEL,OAAC,EACD;AACEhE,QAAAA,IAAI,EAAE,OAAO;AACbkD,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,MAAM,EAAE;AACNG,UAAAA,aAAa,EAAE,gBAAgB;AAC/BL,UAAAA,KAAK,EAAE;AACLM,YAAAA,IAAI,EAAE;AACR;SACD;AACDH,QAAAA,KAAK,EAAE,CACL;AACEI,UAAAA,IAAI,EAAE,UAAU;AAChBN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE,cAAc;AACtBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,YAAY;AAClBN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE;AACNG,YAAAA,aAAa,EAAE,cAAc;AAC7BL,YAAAA,KAAK,EAAE;AACLgB,cAAAA,OAAO,EAAE,CACP;AAAEP,gBAAAA,KAAK,EAAE,IAAI;AAAEI,gBAAAA,KAAK,EAAE;AAAS,eAAC,EAChC;AAAEJ,gBAAAA,KAAK,EAAE,IAAI;AAAEI,gBAAAA,KAAK,EAAE;eAAQ;AAElC;WACD;AACDL,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,OAAO;AACbN,UAAAA,KAAK,EAAE,IAAI;AACXC,UAAAA,MAAM,EAAE,aAAa;AACrBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,YAAY;AAClBN,UAAAA,KAAK,EAAE,IAAI;AACXC,UAAAA,MAAM,EAAE,cAAc;AACtBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;SACD;AAEL,OAAC,EACD;AACEhE,QAAAA,IAAI,EAAE,OAAO;AACbkD,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,MAAM,EAAE;AACNG,UAAAA,aAAa,EAAE,gBAAgB;AAC/BL,UAAAA,KAAK,EAAE;AACLM,YAAAA,IAAI,EAAE;AACR;SACD;AACDH,QAAAA,KAAK,EAAE,CACL;AACEI,UAAAA,IAAI,EAAE,WAAW;AACjBN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE;AACNG,YAAAA,aAAa,EAAE,iBAAiB;AAChCL,YAAAA,KAAK,EAAE;AACLgB,cAAAA,OAAO,EAAE,CACP;AAAEP,gBAAAA,KAAK,EAAE,GAAG;AAAEI,gBAAAA,KAAK,EAAE;AAAO,eAAC,EAC7B;AAAEJ,gBAAAA,KAAK,EAAE,GAAG;AAAEI,gBAAAA,KAAK,EAAE;AAAS,eAAC,EAC/B;AAAEJ,gBAAAA,KAAK,EAAE,GAAG;AAAEI,gBAAAA,KAAK,EAAE;eAAS;AAElC;WACD;AACDL,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,eAAe;AACrBN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE;AACNG,YAAAA,aAAa,EAAE,iBAAiB;AAChCL,YAAAA,KAAK,EAAE;AACLgB,cAAAA,OAAO,EAAE,CACP;AAAEP,gBAAAA,KAAK,EAAE,GAAG;AAAEI,gBAAAA,KAAK,EAAE;AAAM,eAAC,EAC5B;AAAEJ,gBAAAA,KAAK,EAAE,GAAG;AAAEI,gBAAAA,KAAK,EAAE;AAAS,eAAC,EAC/B;AAAEJ,gBAAAA,KAAK,EAAE,GAAG;AAAEI,gBAAAA,KAAK,EAAE;eAAU;AAEnC;WACD;AACDL,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;SACD;AAEL,OAAC,EACD;AACEhE,QAAAA,IAAI,EAAE,OAAO;AACbkD,QAAAA,KAAK,EAAE,IAAI;AACXC,QAAAA,MAAM,EAAE;AACNG,UAAAA,aAAa,EAAE,gBAAgB;AAC/BL,UAAAA,KAAK,EAAE;AACLM,YAAAA,IAAI,EAAE;AACR;SACD;AACDH,QAAAA,KAAK,EAAE,CACL;AACEI,UAAAA,IAAI,EAAE,WAAW;AACjBN,UAAAA,KAAK,EAAE,KAAK;AACZC,UAAAA,MAAM,EAAE,cAAc;AACtBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,YAAY;AAClBN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE,cAAc;AACtBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;AACF,SAAC,EACD;AACER,UAAAA,IAAI,EAAE,WAAW;AACjBN,UAAAA,KAAK,EAAE,MAAM;AACbC,UAAAA,MAAM,EAAE,aAAa;AACrBM,UAAAA,UAAU,EAAE;AACVO,YAAAA,YAAY,EAAE;AAChB;SACD;OAEJ;AAEL,KAAC,EACD;AACEhE,MAAAA,IAAI,EAAE,OAAO;AACbqD,MAAAA,GAAG,EAAE,MAAM;AACXH,MAAAA,KAAK,EAAE,IAAI;AACXE,MAAAA,KAAK,EAAE,CACL;AACEI,QAAAA,IAAI,EAAE,aAAa;AACnBN,QAAAA,KAAK,EAAE,MAAM;AACbC,QAAAA,MAAM,EAAE;OACT;AAEL,KAAC,EACD;AACEnD,MAAAA,IAAI,EAAE,OAAO;AACbqD,MAAAA,GAAG,EAAE,UAAU;AACfH,MAAAA,KAAK,EAAE,IAAI;AACXE,MAAAA,KAAK,EAAE,CACL;AACEI,QAAAA,IAAI,EAAE,WAAW;AACjBN,QAAAA,KAAK,EAAE,MAAM;AACbC,QAAAA,MAAM,EAAE,cAAc;AACtBM,QAAAA,UAAU,EAAE;AACVO,UAAAA,YAAY,EAAE,IAAI;AAClBE,UAAAA,eAAe,EAAE;AACnB;OACD;KAEJ;AAEL,GAAC,CACF;EACDC,SAAS,EAAE,EAAE;EACbC,QAAQ,EAAE,EAAE;AACZC,EAAAA,QAAQ,EAAE;AACZ,CAAC;;ACzRM,MAAMC,cAAc,GAAG,yBAAyB;AAKhD,MAAMC,YAAY,GAAG,uCAAuC;;ACT5D,MAAMC,QAAmB,GAAG,CACjC;AACEtB,EAAAA,KAAK,EAAE,MAAM;AACbuB,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE;AACNpB,IAAAA,aAAa,EAAEgB,cAAc;AAC7BrB,IAAAA,KAAK,EAAE;AACL/B,MAAAA,OAAO,EAAE,UAAU;AACnBC,MAAAA,QAAQ,EAAE,EAAE;AACZG,MAAAA,KAAK,EAAE;KACR;AACDqD,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE;AACJC,QAAAA,KAAK,EAAE,GAAG;AACVC,QAAAA,MAAM,EAAE;AACV;AACF;AACF;AACF,CAAC,EACD;AACE5B,EAAAA,KAAK,EAAE,MAAM;AACbuB,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE;AACNpB,IAAAA,aAAa,EAAEgB,cAAc;AAC7BrB,IAAAA,KAAK,EAAE;AACL/B,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,QAAQ,EAAE,EAAE;AACZC,MAAAA,UAAU,EAAE,MAAM;AAClBE,MAAAA,KAAK,EAAE,SAAS;AAChBC,MAAAA,SAAS,EAAE;KACZ;AACDoD,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE;AACJC,QAAAA,KAAK,EAAE,GAAG;AACVC,QAAAA,MAAM,EAAE;AACV;AACF;AACF;AACF,CAAC,EACD;AACE5B,EAAAA,KAAK,EAAE,MAAM;AACbuB,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE;AACNpB,IAAAA,aAAa,EAAEgB,cAAc;AAC7BrB,IAAAA,KAAK,EAAE;AACL/B,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,QAAQ,EAAE,EAAE;AACZC,MAAAA,UAAU,EAAE,MAAM;AAClBE,MAAAA,KAAK,EAAE,SAAS;AAChBC,MAAAA,SAAS,EAAE,QAAQ;AACnBQ,MAAAA,UAAU,EAAE,IAAI;AAChBC,MAAAA,SAAS,EAAE,SAAS;AACpBC,MAAAA,aAAa,EAAE;KAChB;AACD0C,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE;AACJC,QAAAA,KAAK,EAAE,GAAG;AACVC,QAAAA,MAAM,EAAE;AACV;AACF;AACF;AACF,CAAC,EACD;AACE5B,EAAAA,KAAK,EAAE,MAAM;AACbuB,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE;AACNpB,IAAAA,aAAa,EAAEgB,cAAc;AAC7BrB,IAAAA,KAAK,EAAE;AACL/B,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,QAAQ,EAAE,EAAE;AACZG,MAAAA,KAAK,EAAE,SAAS;AAChBK,MAAAA,MAAM,EAAE,IAAI;AACZC,MAAAA,IAAI,EAAE,sCAAsC;AAC5CC,MAAAA,MAAM,EAAE,QAAQ;AAChBC,MAAAA,SAAS,EAAE;KACZ;AACD6C,IAAAA,UAAU,EAAE;AACVC,MAAAA,IAAI,EAAE;AACJC,QAAAA,KAAK,EAAE,GAAG;AACVC,QAAAA,MAAM,EAAE;AACV;AACF;AACF;AACF,CAAC,CACF;;;;;;AChFM,MAAMC,IAAuB,GAAG;AACrCzB,EAAAA,aAAa,EAAEgB,cAAc;AAC7BpB,EAAAA,KAAK,EAAE,IAAI;AACX8B,EAAAA,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE7F,aAAa,CAACE,KAAK;AAC1B4F,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,GAAG,EAAE;AACHC,IAAAA,OAAO,EAAEb,YAAY;IACrBc,OAAO,EAAEC,GAAG,CAACD,OAAO;AACpBE,IAAAA,UAAU,EAAEjB,cAAc;AAC1BhB,IAAAA,aAAa,EAAEgB;GAChB;EACDtB,SAAS;AACTwB,EAAAA;AACF;;;;;","x_google_ignoreList":[0,3]}
package/dist/index.esm.js CHANGED
@@ -1,59 +1,160 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
 
3
+ function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);}else for(f in e)e[f]&&(n&&(n+=" "),n+=f);return n}function clsx(){for(var e,t,f=0,n="",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}
4
+
5
+ function cn(...inputs) {
6
+ return clsx(inputs);
7
+ }
8
+
3
9
  const MaterialGroup = {
4
10
  BASIC: 'basic'};
5
11
 
6
- const COMPONENT_NAME = 'EasyEditorMaterialsText';
7
- const PACKAGE_NAME = '@easy-editor/materials-dashboard-text';
12
+ function styleInject(css, ref) {
13
+ if (ref === void 0) ref = {};
14
+ var insertAt = ref.insertAt;
15
+ if (typeof document === 'undefined') {
16
+ return;
17
+ }
18
+ var head = document.head || document.getElementsByTagName('head')[0];
19
+ var style = document.createElement('style');
20
+ style.type = 'text/css';
21
+ if (insertAt === 'top') {
22
+ if (head.firstChild) {
23
+ head.insertBefore(style, head.firstChild);
24
+ } else {
25
+ head.appendChild(style);
26
+ }
27
+ } else {
28
+ head.appendChild(style);
29
+ }
30
+ if (style.styleSheet) {
31
+ style.styleSheet.cssText = css;
32
+ } else {
33
+ style.appendChild(document.createTextNode(css));
34
+ }
35
+ }
8
36
 
9
- const Text = props => {
10
- const {
11
- ref,
12
- text = 'Text',
13
- fontSize = 14,
14
- color = '#ffffff',
15
- fontWeight = 'normal',
16
- textAlign = 'left',
17
- lineHeight = 1.5,
18
- className = '',
19
- style: externalStyle
20
- } = props;
21
- const internalStyle = {
22
- width: '100%',
23
- height: '100%',
24
- fontSize: typeof fontSize === 'number' ? `${fontSize}px` : fontSize,
25
- color,
37
+ var css_248z = ".component-module__container___VbZSk{display:flex;height:100%;width:100%}.component-module__text___nFUOn{display:inline-block;word-break:break-word}.component-module__link___20asF{cursor:pointer;text-decoration:none;transition:opacity .2s ease}.component-module__link___20asF:hover{opacity:.8}.component-module__underline___0oAJz{text-decoration:underline}.component-module__alignLeft___IOvpO{justify-content:flex-start;text-align:left}.component-module__alignCenter___EIwIC{justify-content:center;text-align:center}.component-module__alignRight___p3ReL{justify-content:flex-end;text-align:right}.component-module__valignTop___-5DmK{align-items:flex-start}.component-module__valignMiddle___i0are{align-items:center}.component-module__valignBottom___97zzw{align-items:flex-end}";
38
+ var styles = {"container":"component-module__container___VbZSk","text":"component-module__text___nFUOn","link":"component-module__link___20asF","underline":"component-module__underline___0oAJz","alignLeft":"component-module__alignLeft___IOvpO","alignCenter":"component-module__alignCenter___EIwIC","alignRight":"component-module__alignRight___p3ReL","valignTop":"component-module__valignTop___-5DmK","valignMiddle":"component-module__valignMiddle___i0are","valignBottom":"component-module__valignBottom___97zzw"};
39
+ styleInject(css_248z);
40
+
41
+ /**
42
+ * Text Component
43
+ * 文本组件 - 支持普通文本、链接、标题、发光效果
44
+ */
45
+
46
+ const getAlignClass = align => {
47
+ switch (align) {
48
+ case 'left':
49
+ return styles.alignLeft;
50
+ case 'center':
51
+ return styles.alignCenter;
52
+ case 'right':
53
+ return styles.alignRight;
54
+ default:
55
+ return styles.alignLeft;
56
+ }
57
+ };
58
+ const getValignClass = align => {
59
+ switch (align) {
60
+ case 'top':
61
+ return styles.valignTop;
62
+ case 'middle':
63
+ return styles.valignMiddle;
64
+ case 'bottom':
65
+ return styles.valignBottom;
66
+ default:
67
+ return styles.valignMiddle;
68
+ }
69
+ };
70
+ const Text = ({
71
+ ref,
72
+ content = '文本内容',
73
+ fontSize = 16,
74
+ fontWeight = 'normal',
75
+ fontFamily = 'inherit',
76
+ color = '#ffffff',
77
+ textAlign = 'left',
78
+ verticalAlign = 'middle',
79
+ lineHeight = 1.5,
80
+ letterSpacing = 0,
81
+ isLink = false,
82
+ href = '',
83
+ target = '_blank',
84
+ underline = false,
85
+ glowEnable = false,
86
+ glowColor = '#00d4ff',
87
+ glowIntensity = 1,
88
+ style: externalStyle
89
+ }) => {
90
+ // 计算发光效果
91
+ const textShadow = glowEnable ? `0 0 ${10 * glowIntensity}px ${glowColor}, 0 0 ${20 * glowIntensity}px ${glowColor}, 0 0 ${30 * glowIntensity}px ${glowColor}` : undefined;
92
+ const textStyle = {
93
+ fontSize,
26
94
  fontWeight,
27
- textAlign,
95
+ fontFamily,
96
+ color,
28
97
  lineHeight,
29
- wordBreak: 'break-word',
30
- whiteSpace: 'pre-wrap'
31
- };
32
- const mergedStyle = {
33
- ...internalStyle,
34
- ...externalStyle
98
+ letterSpacing,
99
+ textShadow
35
100
  };
101
+ const containerClass = cn(styles.container, getAlignClass(textAlign), getValignClass(verticalAlign));
102
+ const textClass = cn(styles.text, isLink && styles.link, underline && styles.underline);
103
+
104
+ // 链接模式
105
+ if (isLink && href) {
106
+ const relValue = target === '_blank' ? 'noopener noreferrer' : '';
107
+ return /*#__PURE__*/jsx("div", {
108
+ className: containerClass,
109
+ ref: ref,
110
+ style: externalStyle,
111
+ children: /*#__PURE__*/jsx("a", {
112
+ className: textClass,
113
+ href: href,
114
+ rel: relValue,
115
+ style: textStyle,
116
+ target: target,
117
+ children: content
118
+ })
119
+ });
120
+ }
121
+
122
+ // 普通文本
36
123
  return /*#__PURE__*/jsx("div", {
37
- className: className,
124
+ className: containerClass,
38
125
  ref: ref,
39
- style: mergedStyle,
40
- children: text
126
+ style: externalStyle,
127
+ children: /*#__PURE__*/jsx("span", {
128
+ className: textClass,
129
+ style: textStyle,
130
+ children: content
131
+ })
41
132
  });
42
133
  };
43
134
 
44
135
  const configure = {
45
136
  props: [{
46
137
  type: 'group',
47
- title: '功能',
138
+ title: '属性',
48
139
  setter: 'TabSetter',
49
140
  items: [{
50
141
  type: 'group',
51
- key: 'basic',
52
- title: '基本',
53
- items: [{
142
+ key: 'config',
143
+ title: '配置',
144
+ setter: {
145
+ componentName: 'CollapseSetter',
146
+ props: {
147
+ icon: false
148
+ }
149
+ },
150
+ items: [
151
+ {
54
152
  name: 'id',
55
153
  title: 'ID',
56
- setter: 'NodeIdSetter'
154
+ setter: 'NodeIdSetter',
155
+ extraProps: {
156
+ label: false
157
+ }
57
158
  }, {
58
159
  name: 'title',
59
160
  title: '标题',
@@ -88,13 +189,56 @@ const configure = {
88
189
  }
89
190
  }
90
191
  }]
91
- }, {
92
- name: 'text',
93
- title: '文本内容',
94
- setter: 'StringSetter'
192
+ },
193
+ {
194
+ type: 'group',
195
+ title: '内容',
196
+ setter: {
197
+ componentName: 'CollapseSetter',
198
+ props: {
199
+ icon: false
200
+ }
201
+ },
202
+ items: [{
203
+ name: 'content',
204
+ title: '文本内容',
205
+ setter: 'TextAreaSetter',
206
+ extraProps: {
207
+ defaultValue: '文本内容'
208
+ }
209
+ }, {
210
+ name: 'isLink',
211
+ title: '作为链接',
212
+ setter: 'SwitchSetter',
213
+ extraProps: {
214
+ defaultValue: false
215
+ }
216
+ }, {
217
+ name: 'href',
218
+ title: '链接地址',
219
+ setter: 'StringSetter'
220
+ }, {
221
+ name: 'target',
222
+ title: '打开方式',
223
+ setter: {
224
+ componentName: 'SelectSetter',
225
+ props: {
226
+ options: [{
227
+ label: '新窗口',
228
+ value: '_blank'
229
+ }, {
230
+ label: '当前窗口',
231
+ value: '_self'
232
+ }]
233
+ }
234
+ },
235
+ extraProps: {
236
+ defaultValue: '_blank'
237
+ }
238
+ }]
95
239
  }, {
96
240
  type: 'group',
97
- title: '字体样式',
241
+ title: '字体',
98
242
  setter: {
99
243
  componentName: 'CollapseSetter',
100
244
  props: {
@@ -106,14 +250,32 @@ const configure = {
106
250
  title: '字体大小',
107
251
  setter: 'NumberSetter',
108
252
  extraProps: {
109
- defaultValue: 14
253
+ defaultValue: 16
254
+ }
255
+ }, {
256
+ name: 'fontWeight',
257
+ title: '字体粗细',
258
+ setter: {
259
+ componentName: 'SelectSetter',
260
+ props: {
261
+ options: [{
262
+ label: '正常',
263
+ value: 'normal'
264
+ }, {
265
+ label: '粗体',
266
+ value: 'bold'
267
+ }]
268
+ }
269
+ },
270
+ extraProps: {
271
+ defaultValue: 'normal'
110
272
  }
111
273
  }, {
112
274
  name: 'color',
113
- title: '文字颜色',
275
+ title: '颜色',
114
276
  setter: 'ColorSetter',
115
277
  extraProps: {
116
- defaultValue: '#000000'
278
+ defaultValue: '#ffffff'
117
279
  }
118
280
  }, {
119
281
  name: 'lineHeight',
@@ -123,14 +285,9 @@ const configure = {
123
285
  defaultValue: 1.5
124
286
  }
125
287
  }]
126
- }]
127
- }, {
128
- type: 'group',
129
- key: 'advanced',
130
- title: '高级',
131
- items: [{
288
+ }, {
132
289
  type: 'group',
133
- title: '高级设置',
290
+ title: '对齐',
134
291
  setter: {
135
292
  componentName: 'CollapseSetter',
136
293
  props: {
@@ -138,38 +295,121 @@ const configure = {
138
295
  }
139
296
  },
140
297
  items: [{
141
- title: '显隐',
142
- setter: 'SwitchSetter',
298
+ name: 'textAlign',
299
+ title: '水平对齐',
300
+ setter: {
301
+ componentName: 'SegmentedSetter',
302
+ props: {
303
+ options: [{
304
+ label: '左',
305
+ value: 'left'
306
+ }, {
307
+ label: '中',
308
+ value: 'center'
309
+ }, {
310
+ label: '右',
311
+ value: 'right'
312
+ }]
313
+ }
314
+ },
143
315
  extraProps: {
144
- supportVariable: true,
145
- getValue(target) {
146
- return target.getExtraPropValue('condition');
147
- },
148
- setValue(target, value) {
149
- target.setExtraPropValue('condition', value);
316
+ defaultValue: 'left'
317
+ }
318
+ }, {
319
+ name: 'verticalAlign',
320
+ title: '垂直对齐',
321
+ setter: {
322
+ componentName: 'SegmentedSetter',
323
+ props: {
324
+ options: [{
325
+ label: '上',
326
+ value: 'top'
327
+ }, {
328
+ label: '中',
329
+ value: 'middle'
330
+ }, {
331
+ label: '下',
332
+ value: 'bottom'
333
+ }]
150
334
  }
335
+ },
336
+ extraProps: {
337
+ defaultValue: 'middle'
151
338
  }
152
339
  }]
340
+ }, {
341
+ type: 'group',
342
+ title: '效果',
343
+ setter: {
344
+ componentName: 'CollapseSetter',
345
+ props: {
346
+ icon: false
347
+ }
348
+ },
349
+ items: [{
350
+ name: 'underline',
351
+ title: '下划线',
352
+ setter: 'SwitchSetter',
353
+ extraProps: {
354
+ defaultValue: false
355
+ }
356
+ }, {
357
+ name: 'glowEnable',
358
+ title: '发光效果',
359
+ setter: 'SwitchSetter',
360
+ extraProps: {
361
+ defaultValue: false
362
+ }
363
+ }, {
364
+ name: 'glowColor',
365
+ title: '发光颜色',
366
+ setter: 'ColorSetter',
367
+ extraProps: {
368
+ defaultValue: '#00d4ff'
369
+ }
370
+ }]
371
+ }]
372
+ }, {
373
+ type: 'group',
374
+ key: 'data',
375
+ title: '数据',
376
+ items: [{
377
+ name: 'dataBinding',
378
+ title: '数据绑定',
379
+ setter: 'DataBindingSetter'
380
+ }]
381
+ }, {
382
+ type: 'group',
383
+ key: 'advanced',
384
+ title: '高级',
385
+ items: [{
386
+ name: 'condition',
387
+ title: '显隐控制',
388
+ setter: 'SwitchSetter',
389
+ extraProps: {
390
+ defaultValue: true,
391
+ supportVariable: true
392
+ }
153
393
  }]
154
394
  }]
155
395
  }],
156
396
  component: {},
157
397
  supports: {},
158
- advanced: {
159
- view: Text
160
- }
398
+ advanced: {}
161
399
  };
162
400
 
401
+ const COMPONENT_NAME = 'EasyEditorMaterialsText';
402
+ const PACKAGE_NAME = '@easy-editor/materials-dashboard-text';
403
+
163
404
  const snippets = [{
164
- title: 'Text',
165
- screenshot: 'https://img.alicdn.com/imgextra/i3/O1CN01n5wpxc1bi862KuXFz_!!6000000003498-55-tps-50-50.svg',
405
+ title: '普通文本',
406
+ screenshot: '',
166
407
  schema: {
167
408
  componentName: COMPONENT_NAME,
168
409
  props: {
169
- text: 'Text Text Text',
170
- fontSize: 14,
171
- color: '#ffffff',
172
- textAlign: 'left'
410
+ content: '这是一段普通文本',
411
+ fontSize: 16,
412
+ color: '#ffffff'
173
413
  },
174
414
  $dashboard: {
175
415
  rect: {
@@ -179,39 +419,87 @@ const snippets = [{
179
419
  }
180
420
  }
181
421
  }, {
182
- title: 'Heading',
183
- screenshot: 'https://img.alicdn.com/imgextra/i3/O1CN01n5wpxc1bi862KuXFz_!!6000000003498-55-tps-50-50.svg',
422
+ title: '标题文本',
423
+ screenshot: '',
184
424
  schema: {
185
425
  componentName: COMPONENT_NAME,
186
426
  props: {
187
- text: 'Heading',
188
- fontSize: 24,
189
- color: '#ffffff',
427
+ content: '标题文本',
428
+ fontSize: 32,
190
429
  fontWeight: 'bold',
430
+ color: '#ffffff',
191
431
  textAlign: 'center'
192
432
  },
193
433
  $dashboard: {
194
434
  rect: {
195
435
  width: 200,
196
- height: 50
436
+ height: 60
437
+ }
438
+ }
439
+ }
440
+ }, {
441
+ title: '发光标题',
442
+ screenshot: '',
443
+ schema: {
444
+ componentName: COMPONENT_NAME,
445
+ props: {
446
+ content: '发光标题',
447
+ fontSize: 36,
448
+ fontWeight: 'bold',
449
+ color: '#00d4ff',
450
+ textAlign: 'center',
451
+ glowEnable: true,
452
+ glowColor: '#00d4ff',
453
+ glowIntensity: 1.5
454
+ },
455
+ $dashboard: {
456
+ rect: {
457
+ width: 240,
458
+ height: 80
459
+ }
460
+ }
461
+ }
462
+ }, {
463
+ title: '链接文本',
464
+ screenshot: '',
465
+ schema: {
466
+ componentName: COMPONENT_NAME,
467
+ props: {
468
+ content: '点击跳转',
469
+ fontSize: 16,
470
+ color: '#00d4ff',
471
+ isLink: true,
472
+ href: 'https://easy-editor-docs.vercel.app/',
473
+ target: '_blank',
474
+ underline: true
475
+ },
476
+ $dashboard: {
477
+ rect: {
478
+ width: 120,
479
+ height: 40
197
480
  }
198
481
  }
199
482
  }
200
483
  }];
201
484
 
485
+ var version = "0.0.10";
486
+ var pkg = {
487
+ version: version};
488
+
202
489
  const meta = {
203
490
  componentName: COMPONENT_NAME,
204
- title: 'Text',
491
+ title: '文本',
492
+ category: 'dashboard',
205
493
  group: MaterialGroup.BASIC,
206
494
  devMode: 'proCode',
207
495
  npm: {
208
496
  package: PACKAGE_NAME,
209
- version: 'latest',
497
+ version: pkg.version,
210
498
  globalName: COMPONENT_NAME,
211
499
  componentName: COMPONENT_NAME
212
500
  },
213
- snippets,
214
- configure
501
+ configure,
502
+ snippets
215
503
  };
216
504
 
217
505
  export { Text as component, meta };