@4399ywkf/editor 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +161 -2
- package/dist/{DocView-XQMJUUVK.js → DocView-WEKRSKRU.js} +6 -4
- package/dist/DocView-WEKRSKRU.js.map +1 -0
- package/dist/SheetView-SDBRSTVS.js +3 -0
- package/dist/{SheetView-DSADIZNS.js.map → SheetView-SDBRSTVS.js.map} +1 -1
- package/dist/chunk-5HMKRNIH.js +27 -0
- package/dist/chunk-5HMKRNIH.js.map +1 -0
- package/dist/chunk-DGUNVCOM.js +711 -0
- package/dist/chunk-DGUNVCOM.js.map +1 -0
- package/dist/chunk-HPSPOM2O.js +128 -0
- package/dist/chunk-HPSPOM2O.js.map +1 -0
- package/dist/chunk-KRP5V7VF.js +130 -0
- package/dist/chunk-KRP5V7VF.js.map +1 -0
- package/dist/chunk-SBTKDJAL.js +107 -0
- package/dist/chunk-SBTKDJAL.js.map +1 -0
- package/dist/{chunk-IUDLMN53.js → chunk-SGLNT6Z2.js} +2416 -176
- package/dist/chunk-SGLNT6Z2.js.map +1 -0
- package/dist/{chunk-L6ZR5HHW.js → chunk-SYCK6Y5F.js} +15 -10
- package/dist/chunk-SYCK6Y5F.js.map +1 -0
- package/dist/chunk-WF7PIIFR.js +21 -0
- package/dist/chunk-WF7PIIFR.js.map +1 -0
- package/dist/chunk-ZY5KLA7T.js +258 -0
- package/dist/chunk-ZY5KLA7T.js.map +1 -0
- package/dist/code-types-Dqmit3xx.d.ts +65 -0
- package/dist/{types-C37MAt8o.d.ts → csv-parse-D0zTBvDB.d.ts} +39 -1
- package/dist/csv.d.ts +6 -3
- package/dist/csv.js +6 -125
- package/dist/csv.js.map +1 -1
- package/dist/doc-runtime.d.ts +1 -1
- package/dist/doc-runtime.js +7 -1
- package/dist/doc-runtime.js.map +1 -1
- package/dist/doc.d.ts +113 -6
- package/dist/doc.js +2 -1
- package/dist/doc.js.map +1 -1
- package/dist/docx.d.ts +15 -0
- package/dist/docx.js +116 -8
- package/dist/docx.js.map +1 -1
- package/dist/import-GVZDLWA2.js +6 -0
- package/dist/import-GVZDLWA2.js.map +1 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/pdf.d.ts +3 -1
- package/dist/pptx.d.ts +3 -1
- package/dist/{registry-BBL8yeIT.d.ts → registry-CYKivRDh.d.ts} +13 -1
- package/dist/sheet-runtime.d.ts +212 -0
- package/dist/sheet-runtime.js +416 -0
- package/dist/sheet-runtime.js.map +1 -0
- package/dist/sheet.d.ts +9 -5
- package/dist/sheet.js +1 -1
- package/dist/style.css +421 -111
- package/dist/xlsx.d.ts +118 -7
- package/dist/xlsx.js +7 -78
- package/dist/xlsx.js.map +1 -1
- package/package.json +11 -5
- package/dist/DocView-XQMJUUVK.js.map +0 -1
- package/dist/SheetView-DSADIZNS.js +0 -3
- package/dist/chunk-32WQX3NR.js +0 -37
- package/dist/chunk-32WQX3NR.js.map +0 -1
- package/dist/chunk-IUDLMN53.js.map +0 -1
- package/dist/chunk-L6ZR5HHW.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/views/SheetView.tsx"],"names":[],"mappings":";;;;AAiBe,SAAR,SAAA,CAA2B;AAAA,EAChC,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA;AACF,CAAA,EAAsB;AACpB,EAAA,MAAM,OAAA,GAAU,OAAuB,IAAI,CAAA;AAC3C,EAAA,MAAM,UAAA,GAAa,OAA4B,IAAI,CAAA;AAKnD,EAAA,MAAM,SAAS,MAAA,CAAO,EAAE,KAAA,EAAO,OAAA,EAAS,SAAS,CAAA;AACjD,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAA,CAAO,OAAA,GAAU,EAAE,KAAA,EAAO,OAAA,EAAS,OAAA,EAAQ;AAAA,EAC7C,CAAC,CAAA;AAED,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,SAAA,GAAY,KAAA;AAChB,IAAA,MAAM,OAAO,OAAA,CAAQ,OAAA;AACrB,IAAA,IAAI,CAAC,IAAA,EAAM;AAEV,IAAA,CAAC,YAAY;AACZ,MAAA,MAAM,EAAE,OAAO,IAAA,EAAM,OAAA,EAAS,OAAO,OAAA,EAAS,IAAA,KAAS,MAAA,CAAO,OAAA;AAC9D,MAAA,IAAI;AAEF,QAAA,MAAM,CAAC,EAAE,YAAA,EAAc,UAAA,EAAY,KAAA,EAAM,EAAG,UAAA,EAAY,IAAI,CAAA,GAAI,MAAM,OAAA,CAAQ,GAAA,CAAI;AAAA,UAChF,OAAO,mBAAmB,CAAA;AAAA,UAC1B,OAAO,sCAAsC,CAAA;AAAA,UAC7C,OAAO,oDAAoD;AAAA,SAC5D,CAAA;AACD,QAAA,IAAI,SAAA,EAAW;AAIf,QAAA,MAAM,EAAA,GAAqB,EAAE,GAAI,QAAA,GAAW,EAAE,OAAA,EAAS,KAAA,EAAM,GAAI,IAAA,EAAO,GAAG,IAAA,EAAM,EAAA,EAAG;AAIpF,QAAA,MAAM,OAAA,GAAqB;AAAA,UAEvB,WACA,sBAAA,CAAuB,EAAE,WAAW,IAAA,EAAM,GAAG,IAAI;AAAA,SACrD;AACA,QAAA,MAAM,OAAA,GAAqB,CAAE,IAAA,CAAwC,OAAO,CAAA;AAE5E,QAAA,IAAI,MAAM,WAAA,EAAa;AAGrB,UAAA,MAAM,CAAC,WAAA,EAAa,eAAe,CAAA,GAAI,MAAM,QAAQ,GAAA,CAAI;AAAA,YACvD,OAAO,8CAA8C,CAAA;AAAA,YACrD,OAAO,4DAA4D;AAAA,WACpE,CAAA;AACD,UAAA,IAAI,SAAA,EAAW;AACf,UAAA,OAAA,CAAQ,IAAA;AAAA,YAEJ,YACA,6BAAA;AAA8B,WAClC;AACA,UAAA,OAAA,CAAQ,IAAA,CAAM,gBAAmD,OAAO,CAAA;AAAA,QAC1E;AAEA,QAAA,IAAI,MAAM,OAAA,EAAS,MAAA,UAAgB,IAAA,CAAK,GAAG,KAAK,OAAO,CAAA;AACvD,QAAA,IAAI,MAAM,OAAA,EAAS,MAAA,UAAgB,IAAA,CAAK,GAAG,KAAK,OAAO,CAAA;AAEvD,QAAA,MAAM,EAAE,SAAA,EAAW,MAAA,EAAO,GAAI,YAAA,CAAa;AAAA,UACzC,QAAQ,UAAA,CAAW,KAAA;AAAA;AAAA;AAAA,UAGnB,OAAA,EAAS,EAAE,CAAC,UAAA,CAAW,KAAK,GAAG,KAAA,CAAM,EAAC,EAAG,GAAI,OAAoB,CAAA,EAAE;AAAA,UACnE;AAAA,SACD,CAAA;AAED,QAAA,MAAM,OAAA,GAAU,MAAO,MAAA,CAA8C,OAAA,EAAQ;AAG7E,QAAA,IAAI,SAAA,SAAkB,OAAA,EAAQ;AAE9B,QAAA,IAAI,OAAA,EAAS,SAAA,CAAU,cAAA,CAAe,OAAgB,CAAA;AAAA,aACjD,SAAA,CAAU,cAAA,CAAe,EAAE,CAAA;AAChC,QAAA,IAAI,QAAA,EAAU,SAAA,CAAU,iBAAA,IAAoB,EAAG,cAAc,KAAK,CAAA;AAElE,QAAA,UAAA,CAAW,OAAA,GAAU,OAAA;AACrB,QAAA,KAAA,GAAQ,SAAS,CAAA;AAAA,MACnB,SAAS,CAAA,EAAG;AACV,QAAA,MAAM,GAAA,GAAM,aAAa,KAAA,GAAQ,CAAA,GAAI,IAAI,KAAA,CAAM,MAAA,CAAO,CAAC,CAAC,CAAA;AACxD,QAAA,IAAA;AAAA,UACE,IAAI,KAAA;AAAA,YACF,CAAA,SAAA,EAAY,IAAI,OAAO,CAAA,yDAAA;AAAA;AAEzB,SACF;AAAA,MACF;AAAA,IACF,CAAA,GAAG;AAEH,IAAA,OAAO,MAAM;AACX,MAAA,SAAA,GAAY,IAAA;AACZ,MAAA,UAAA,CAAW,OAAA,IAAU;AACrB,MAAA,UAAA,CAAW,OAAA,GAAU,IAAA;AAAA,IACvB,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,OAAA,EAAS,QAAQ,CAAC,CAAA;AAEtB,EAAA,uBAAO,GAAA,CAAC,KAAA,EAAA,EAAI,GAAA,EAAK,OAAA,EAAS,SAAA,EAAsB,KAAA,EAAO,EAAE,KAAA,EAAO,MAAA,EAAQ,MAAA,EAAQ,MAAA,EAAO,EAAG,CAAA;AAC5F","file":"chunk-L6ZR5HHW.js","sourcesContent":["import { useEffect, useRef } from \"react\"\nimport type { DocumentViewProps } from \"../registry\"\nimport type { SheetUiOptions } from \"../sheet-options\"\n\n/**\n * sheet 通道:Univer 适配。\n *\n * 只用 Apache-2.0 的 OSS 核心。**不碰** `@univerjs-pro/*` 与 `univer-cli`:\n * 前者要自建 Univer Server 且需商业授权,后者 63MB、license 字段为 None、\n * 90/91 个 JS 被混淆、还会向 univer.ai 上报遥测 —— 不能进生产链路。\n *\n * xlsx **导出**用本包的 `./xlsx`:直接读 Univer 快照拼 OOXML,不引 SheetJS。\n * **导入**仍在宿主侧自理(SheetJS 或后端解析),本包不做 xlsx → 快照那一向。\n *\n * 配置见 `SheetOptions`:UI 开关直接透传给 preset(Univer 的 class 是\n * `univer-` 前缀的原子类,没有稳定选择器,CSS 硬藏靠不住),额外能力靠追加 preset。\n */\nexport default function SheetView({\n content,\n readOnly,\n className,\n sheet,\n onReady,\n onError,\n}: DocumentViewProps) {\n const hostRef = useRef<HTMLDivElement>(null)\n const disposeRef = useRef<(() => void) | null>(null)\n\n // 这几项都是「创建时读一次」的,且宿主多半传内联字面量/箭头函数。\n // 放进依赖数组 = 父组件每渲染一次就重建一次引擎(重下 871KB + 丢选区滚动位置),\n // 所以走 ref:取最新值,但不参与依赖比较。\n const latest = useRef({ sheet, onReady, onError })\n useEffect(() => {\n latest.current = { sheet, onReady, onError }\n })\n\n useEffect(() => {\n let cancelled = false\n const host = hostRef.current\n if (!host) return\n\n ;(async () => {\n const { sheet: opts, onReady: ready, onError: fail } = latest.current\n try {\n // 动态 import:871KB gzip 的引擎只在真的打开表格时才下载\n const [{ createUniver, LocaleType, merge }, sheetsCore, zhCN] = await Promise.all([\n import(\"@univerjs/presets\"),\n import(\"@univerjs/presets/preset-sheets-core\"),\n import(\"@univerjs/presets/preset-sheets-core/locales/zh-CN\"),\n ])\n if (cancelled) return\n\n // 只读时默认摘掉工具栏:整条 ribbon 全是死按钮,窄面板里还挤。\n // 宿主显式传了 toolbar 就以宿主为准。\n const ui: SheetUiOptions = { ...(readOnly ? { toolbar: false } : null), ...opts?.ui }\n\n // 可选 peer:@univerjs/presets 未安装时这里的类型解析不到,\n // 统一用 never 过桥,运行时由外层 try/catch 兜底并给出可读提示\n const presets: unknown[] = [\n (\n sheetsCore as unknown as { UniverSheetsCorePreset: (o: object) => never }\n ).UniverSheetsCorePreset({ container: host, ...ui }),\n ]\n const locales: unknown[] = [(zhCN as unknown as { default: object }).default]\n\n if (opts?.findReplace) {\n // preset-sheets-find-replace 是 @univerjs/presets 自己的 dependency,\n // 走子路径不需要宿主再装包;没开就完全不下载。\n const [findReplace, findReplaceZhCN] = await Promise.all([\n import(\"@univerjs/presets/preset-sheets-find-replace\"),\n import(\"@univerjs/presets/preset-sheets-find-replace/locales/zh-CN\"),\n ])\n if (cancelled) return\n presets.push(\n (\n findReplace as unknown as { UniverSheetsFindReplacePreset: () => never }\n ).UniverSheetsFindReplacePreset(),\n )\n locales.push((findReplaceZhCN as unknown as { default: object }).default)\n }\n\n if (opts?.presets?.length) presets.push(...opts.presets)\n if (opts?.locales?.length) locales.push(...opts.locales)\n\n const { univerAPI, univer } = createUniver({\n locale: LocaleType.ZH_CN,\n // createUniver 不会自动收集 preset 自带的 locales,得在这里一起合进来,\n // 否则新加的 preset 菜单会显示成原始 i18n key\n locales: { [LocaleType.ZH_CN]: merge({}, ...(locales as object[])) },\n presets: presets as never,\n })\n\n const dispose = () => (univer as unknown as { dispose: () => void }).dispose()\n // 卸载可能发生在上面任一个 await 期间:那时 cleanup 拿到的 disposeRef 还是 null,\n // 不在这儿自己收掉,引擎就挂在一个已脱离文档的 host 上泄漏了\n if (cancelled) return dispose()\n\n if (content) univerAPI.createWorkbook(content as never)\n else univerAPI.createWorkbook({})\n if (readOnly) univerAPI.getActiveWorkbook?.()?.setEditable?.(false)\n\n disposeRef.current = dispose\n ready?.(univerAPI)\n } catch (e) {\n const err = e instanceof Error ? e : new Error(String(e))\n fail?.(\n new Error(\n `表格引擎加载失败:${err.message}。` +\n `请确认已安装可选依赖 @univerjs/presets(pnpm add @univerjs/presets)`,\n ),\n )\n }\n })()\n\n return () => {\n cancelled = true\n disposeRef.current?.()\n disposeRef.current = null\n }\n }, [content, readOnly])\n\n return <div ref={hostRef} className={className} style={{ width: \"100%\", height: \"100%\" }} />\n}\n"]}
|