likec4 1.59.4 → 1.61.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 +2 -0
- package/__app__/codegen/react.mjs +4 -10
- package/__app__/codegen/webcomponent.mjs +6 -131
- package/__app__/index.html +15 -15
- package/__app__/src/aichat/index.mjs +11 -7
- package/__app__/src/chunks/AIChat.mjs +1355 -739
- package/__app__/src/chunks/ErrorComponent.mjs +444 -0
- package/__app__/src/chunks/Header.mjs +269 -0
- package/__app__/src/chunks/ViewReact.mjs +438 -0
- package/__app__/src/chunks/find.mjs +38 -0
- package/__app__/src/chunks/hooks.mjs +158 -472
- package/__app__/src/chunks/libs/@tabler/icons-react.mjs +340 -0
- package/__app__/src/chunks/libs/@tanstack-ai.mjs +11841 -1417
- package/__app__/src/chunks/libs/@tanstack.mjs +5110 -2404
- package/__app__/src/chunks/libs/fast-equals.mjs +507 -214
- package/__app__/src/chunks/libs/html-to-image.mjs +613 -0
- package/__app__/src/chunks/libs/nanostores.mjs +170 -0
- package/__app__/src/chunks/libs/react-resizable-panels.mjs +2792 -0
- package/__app__/src/chunks/react.mjs +22 -0
- package/__app__/src/chunks/rolldown-runtime.mjs +16 -29
- package/__app__/src/chunks/router.mjs +106 -0
- package/__app__/src/chunks/scope.mjs +106 -0
- package/__app__/src/chunks/searchParams.mjs +29 -0
- package/__app__/src/chunks/single-index.mjs +465 -0
- package/__app__/src/chunks/styled-system.mjs +1826 -2528
- package/__app__/src/chunks/useAsync.mjs +69 -0
- package/__app__/src/chunks/useSyncedRef.mjs +16 -0
- package/__app__/src/components/ColorSchemeToggle.mjs +124 -0
- package/__app__/src/components/CopyToClipboard.mjs +53 -0
- package/__app__/src/components/ErrorComponent.mjs +1 -0
- package/__app__/src/components/NavigationPanel.mjs +63 -0
- package/__app__/src/components/NotFound.mjs +155 -0
- package/__app__/src/components/ViewOutlet.mjs +9 -0
- package/__app__/src/components/model-diff/CompareModelProvider.mjs +44 -0
- package/__app__/src/components/model-diff/ModelDiffPanel.mjs +179 -0
- package/__app__/src/components/model-diff/compare-model.mjs +76 -0
- package/__app__/src/components/model-diff/state.mjs +45 -0
- package/__app__/src/components/search/OverviewSearch.mjs +92 -0
- package/__app__/src/components/search/OverviewSearchAdapter.mjs +94 -0
- package/__app__/src/components/sidebar/DiagramTree.css.mjs +48 -0
- package/__app__/src/components/sidebar/DiagramsTree.mjs +304 -0
- package/__app__/src/components/sidebar/Drawer.mjs +178 -0
- package/__app__/src/components/sidebar/SidebarBurger.mjs +28 -0
- package/__app__/src/components/sidebar/data.mjs +94 -0
- package/__app__/src/components/sidebar/state.mjs +16 -0
- package/__app__/src/components/view-page/Header.mjs +1 -0
- package/__app__/src/components/view-page/SelectProject.mjs +258 -0
- package/__app__/src/components/view-page/ShareModal.mjs +111 -0
- package/__app__/src/components/view-page/share-modal/AlertLocalhost.mjs +31 -0
- package/__app__/src/components/view-page/share-modal/CopyButtonChild.mjs +36 -0
- package/__app__/src/components/view-page/share-modal/EmbedPanel.mjs +100 -0
- package/__app__/src/components/view-page/share-modal/WebcomponentsPanel.mjs +264 -0
- package/__app__/src/components/view-page/state.mjs +17 -0
- package/__app__/src/context/LikeC4CustomizationContext.mjs +26 -0
- package/__app__/src/context/LikeC4IconRendererContext.mjs +29 -0
- package/__app__/src/context/LikeC4ModelContext.mjs +34 -0
- package/__app__/src/context/LikeC4ProjectsContext.mjs +40 -0
- package/__app__/src/context/ModelDiffsContext.mjs +33 -0
- package/__app__/src/context/safeCtx.mjs +14 -0
- package/__app__/src/fonts.css +112 -1
- package/__app__/src/hooks.mjs +1 -0
- package/__app__/src/main.mjs +6 -29151
- package/__app__/src/pages/EmbedPage.mjs +93 -0
- package/__app__/src/pages/ExportPage.mjs +691 -0
- package/__app__/src/pages/ProjectsOverview.mjs +23 -0
- package/__app__/src/pages/ViewAsD2.mjs +105 -0
- package/__app__/src/pages/ViewAsDot.mjs +65 -0
- package/__app__/src/pages/ViewAsMmd.mjs +109 -0
- package/__app__/src/pages/ViewAsPuml.mjs +105 -0
- package/__app__/src/pages/ViewEditor.mjs +220 -0
- package/__app__/src/pages/ViewReact.mjs +1 -0
- package/__app__/src/pages/export-layout.mjs +95 -0
- package/__app__/src/pages/export-page-params.mjs +9 -0
- package/__app__/src/pages/styles.css.mjs +23 -0
- package/__app__/src/routeTree.gen.mjs +105 -0
- package/__app__/src/router.mjs +1 -0
- package/__app__/src/routes/__root.mjs +65 -0
- package/__app__/src/routes/index.css.mjs +29 -0
- package/__app__/src/routes/index.mjs +32 -0
- package/__app__/src/routes/project._projectId/-components.mjs +100 -0
- package/__app__/src/routes/project._projectId/embed._viewId.mjs +5 -0
- package/__app__/src/routes/project._projectId/export._viewId.mjs +24 -0
- package/__app__/src/routes/project._projectId/index.mjs +14 -0
- package/__app__/src/routes/project._projectId/route.mjs +93 -0
- package/__app__/src/routes/project._projectId/view._viewId.d2.mjs +34 -0
- package/__app__/src/routes/project._projectId/view._viewId.dot.mjs +41 -0
- package/__app__/src/routes/project._projectId/view._viewId.index.mjs +7 -0
- package/__app__/src/routes/project._projectId/view._viewId.mjs +23 -0
- package/__app__/src/routes/project._projectId/view._viewId.mmd.mjs +39 -0
- package/__app__/src/routes/project._projectId/view._viewId.puml.mjs +34 -0
- package/__app__/src/routes/projects.mjs +36 -0
- package/__app__/src/routes/single-index.mjs +1 -0
- package/__app__/src/routes/webcomponent._.mjs +94 -0
- package/__app__/src/style.css +18497 -1
- package/config/schema.json +146 -97
- package/dist/app/render-view-client.css +1 -1
- package/dist/app/render-view-client.js +394 -238
- package/dist/chunks/enableServer.mjs +1 -1
- package/dist/chunks/filenames.mjs +25 -17
- package/dist/chunks/generate-likec4.mjs +5 -0
- package/dist/chunks/index.d.mts +255 -194
- package/dist/chunks/index2.d.mts +8246 -3610
- package/dist/chunks/libs/@chenglou/pretext.mjs +9 -0
- package/dist/chunks/libs/@chevrotain/gast.mjs +27 -1
- package/dist/chunks/libs/@chevrotain/regexp-to-ast.mjs +81 -9
- package/dist/chunks/libs/@logtape/logtape.mjs +5 -4
- package/dist/chunks/libs/@lume/kiwi.mjs +1 -1
- package/dist/chunks/libs/@ts-graphviz/common.d.mts +2 -4
- package/dist/chunks/libs/@ts-graphviz/core.mjs +1 -1
- package/dist/chunks/libs/birpc.mjs +1 -1
- package/dist/chunks/libs/chevrotain-allstar.mjs +2 -2
- package/dist/chunks/libs/chevrotain.mjs +88 -36
- package/dist/chunks/libs/clone.mjs +1 -0
- package/dist/chunks/libs/eventemitter3.mjs +1 -1
- package/dist/chunks/libs/fast-equals.mjs +1 -0
- package/dist/chunks/libs/fontkit.mjs +1 -0
- package/dist/chunks/libs/json5.mjs +4 -4
- package/dist/chunks/libs/langium.d.mts +6707 -6715
- package/dist/chunks/libs/langium.mjs +16 -24
- package/dist/chunks/libs/merge-error-cause.mjs +1 -1
- package/dist/chunks/libs/p-limit.mjs +1 -0
- package/dist/chunks/libs/p-queue.mjs +1 -1
- package/dist/chunks/libs/package-manager-detector.mjs +1 -1
- package/dist/chunks/libs/pako.mjs +1 -1
- package/dist/chunks/libs/pathe.mjs +1 -1
- package/dist/chunks/libs/pretty-ms.mjs +1 -1
- package/dist/chunks/libs/remeda.mjs +1 -1
- package/dist/chunks/libs/ufo.mjs +1 -1
- package/dist/chunks/libs/unstorage.mjs +1 -1
- package/dist/chunks/libs/which.mjs +1 -1
- package/dist/chunks/node.mjs +111 -77
- package/dist/chunks/rolldown-runtime.mjs +1 -1
- package/dist/chunks/sequence-view.mjs +1 -1
- package/dist/chunks/vite-plugin.mjs +185 -166
- package/dist/cli/index.mjs +254 -1306
- package/dist/config/index.d.mts +66 -5
- package/dist/config/index.mjs +1 -1
- package/dist/generators/likec4.d.mts +6530 -0
- package/dist/generators/likec4.mjs +1 -0
- package/dist/index.d.mts +2 -4
- package/dist/model/index.d.mts +0 -7
- package/dist/vite-plugin/index.d.mts +83 -58
- package/dist/vite-plugin/index.mjs +1 -1
- package/dist/vite-plugin/internal/chunks/rolldown-runtime.mjs +8 -0
- package/dist/vite-plugin/internal/index.d.mts +92 -17
- package/dist/vite-plugin/internal/index.mjs +225 -126
- package/generators/likec4/package.json +4 -0
- package/package.json +134 -122
- package/react/index.d.mts +7496 -26659
- package/react/index.mjs +533 -63936
- package/react/rolldown-runtime-CfRud99p.js +1 -0
- package/skills/likec4-dsl/SKILL.md +474 -0
- package/skills/likec4-dsl/evals/evals-public.json +207 -0
- package/skills/likec4-dsl/evals/grading-spec.json +603 -0
- package/skills/likec4-dsl/references/bridge-leanix-drawio.md +42 -0
- package/skills/likec4-dsl/references/cli.md +168 -0
- package/skills/likec4-dsl/references/configuration.md +266 -0
- package/skills/likec4-dsl/references/deployment.md +160 -0
- package/skills/likec4-dsl/references/diffs.md +52 -0
- package/skills/likec4-dsl/references/dynamic-views.md +455 -0
- package/skills/likec4-dsl/references/examples.md +370 -0
- package/skills/likec4-dsl/references/identifier-validity.md +90 -0
- package/skills/likec4-dsl/references/include-predicates-wildcards.md +180 -0
- package/skills/likec4-dsl/references/model.md +182 -0
- package/skills/likec4-dsl/references/predicates.md +123 -0
- package/skills/likec4-dsl/references/relationships-bidirectional.md +176 -0
- package/skills/likec4-dsl/references/specification.md +79 -0
- package/skills/likec4-dsl/references/style-tokens-colors.md +150 -0
- package/skills/likec4-dsl/references/troubleshooting.md +101 -0
- package/skills/likec4-dsl/references/views.md +329 -0
- package/vite-plugin-modules.d.ts +126 -51
- package/__app__/src/chunks/LikeC4Styles.mjs +0 -2306
- package/__app__/src/chunks/ProjectsOverview.mjs +0 -537
- package/__app__/src/chunks/es.mjs +0 -439
- package/__app__/src/chunks/libs/@floating-ui.mjs +0 -2532
- package/__app__/src/chunks/libs/@mantine.mjs +0 -13868
- package/__app__/src/chunks/libs/@xstate/react.mjs +0 -2015
- package/__app__/src/chunks/libs/@xyflow/react.mjs +0 -5367
- package/__app__/src/chunks/libs/bezier-js.mjs +0 -1007
- package/__app__/src/chunks/libs/d3.mjs +0 -2817
- package/__app__/src/chunks/libs/framer.mjs +0 -5926
- package/__app__/src/chunks/libs/zod.mjs +0 -3176
- package/dist/chunks/libs/@chevrotain/types.d.mts +0 -108
- package/dist/chunks/libs/picomatch.mjs +0 -1
- package/dist/chunks/libs/zod.d.mts +0 -3840
- package/dist/chunks/libs/zod.mjs +0 -65
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import"../../rolldown-runtime.mjs";const e={"chromium/line_normal":[0,182],"chromium/line_normal_cj":[1,182],"apple/line_normal":[2,183],"apple/line":[3,183],"apple/line_cj":[4,183],"chromium/char":[5,148],"apple/char":[6,149],"gecko/line":[7,196],"gecko/east_asian_width":[8,38],"chromium/script":[9,80]},t=[1055,5151,25631,8,42015,12,10,1,479,351,287,31,415,159,4,2,2064,16,543,4097,24577,63,5121,-7137,58399],n={"chromium/line_normal":[65,63,11,365,null,`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`],"chromium/line_normal_cj":[66,64,11,367,null,`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`],"apple/line_normal":[65,63,11,365,`chromium/line_normal`,`BgACOAAAKicAAjgAACoLAAI4AAAqDgACOAAAKi0AAjh2APMBAQACOAAAKhtnARumAVq2AQEAAw==`],"apple/line":[65,63,11,365,`apple/line_normal`,``],"apple/line_cj":[65,63,11,365,`apple/line_normal`,``],"chromium/char":[21,21,3,16,null,`AQASBgIAAgADAAQABQAEAAYABAAHAAQACAAJAAoABAAEAAkACgALAAABAAEAAQEHAgACBQsEAQQBBAMEAAQAAQQLBQMFAwUADAAFBAABBQAAAAAAAAMDCwcDDQQHAAQEEAgACQMJAAoABQIRCQAKAAEBEQAABwEXDgAIAQoFAAYDCw0CBwUNAAMCAQIVDwAAAQAC`],"apple/char":[21,21,3,16,`chromium/char`,``]},r=`5DAIgAAACAAAAAQDBAYA/+v/+/8CAQF/DBwACAEADhwCCAAUAQQfgAlAFDgAGBwAGFQAJAEANHAAKDgACBwE/1cA/gTAAgAAKwQfgAnAAxAB/xg4AAwBAAiIAwAOHgAYmAIA5gEcADSkAwAoVAAkHAy8lv+5////7////2+kAsADAOoDHAEAWbgHAJ4GHAAVgAcBgBj0EwAakBQArgGYAgH/FgEBf/AFjAgAGAEBmALmBwEMEIwPAFAcALYBtAIAB4gYAYYFiBgBJwzcCgA0jAEAftACAQDbAfQFAMABcACWDRwA`,i={"":[8220,0,8221,1,8216,0],agq:[8221,1],am:[171,0,187,1,8249,0,8250,1],ar:[],ast:[171,0,187,1,8220,0,8221,1],bas:[171,0,187,1,8221,1],be:[171,0,187,1,8221,1],bg:[8221,1,8221,1],blo:[171,0,187,1,8220,0,8221,1],bm:[171,0,187,1,8220,0,8221,1],br:[171,0,187,1,8220,0,8221,1],bs:[8221,1,8216,0],bua:[171,0,187,1,8221,1],ca:[171,0,187,1,8220,0,8221,1],cs:[8221,1],cv:[171,0,187,1,8220,0,8221,1],da:[],de:[8221,1],dsb:[8221,1],dua:[171,0,187,1,8216,0],dyo:[171,0,187,1,8220,0,8221,1],el:[171,0,187,1,8220,0,8221,1],eo:[8220,0,8221,1,171,0,187,1],et:[8221,1],eu:[171,0,187,1,8220,0,8221,1],ewo:[171,0,187,1,8220,0,8221,1],fa:[171,0,187,1,8249,0,8250,1],ff:[8221,1],fi:[],fr:[171,0,187,1,171,0,187,1],fur:[8216,0,8220,0,8221,1],gsw:[171,0,187,1,8249,0,8250,1],he:[],hr:[8221,1],hsb:[8221,1],hu:[8221,1,187,0,171,1],hy:[171,0,187,1,171,0,187,1],ia:[8216,0,8220,0,8221,1],ie:[171,0,187,1,8220,0,8221,1],is:[8221,1],it:[171,0,187,1,8220,0,8221,1],ja:[],jgo:[171,0,187,1,8249,0,8250,1],ka:[8221,1,171,0,187,1],kab:[171,0,187,1,8220,0,8221,1],kk:[171,0,187,1,8220,0,8221,1],kkj:[171,0,187,1,8249,0,8250,1],ksf:[171,0,187,1,8216,0],ksh:[8221,1],ky:[171,0,187,1,8221,1],lag:[],lb:[8221,1],lij:[171,0,187,1,8220,0,8221,1],lt:[8221,1,8221,1],luy:[8221,1],mg:[171,0,187,1,8220,0,8221,1],mk:[8221,1],mua:[171,0,187,1,8220,0,8221,1],mzn:[171,0,187,1,8249,0,8250,1],nb:[171,0,187,1,8216,0],nds:[8221,1],nl:[8216,0,8216,0],nmg:[8221,1,171,0,187,1],nn:[171,0,187,1,8216,0],nnh:[171,0,187,1,8220,0,8221,1],no:[171,0,187,1,8216,0],oc:[171,0,187,1,171,0,187,1],os:[171,0,187,1,8221,1],pl:[8221,1,171,0,187,1],pms:[171,0,187,1,8220,0,8221,1],prg:[8221,1,8221,1],rm:[171,0,187,1,8249,0,8250,1],rn:[],ro:[8221,1,171,0,187,1],ru:[171,0,187,1,8221,1],rw:[171,0,187,1,8216,0],sah:[171,0,187,1,8221,1],sc:[171,0,187,1,8220,0,8221,1],se:[],sg:[171,0,187,1,8220,0,8221,1],shi:[171,0,187,1,8221,1],sk:[8221,1],sl:[8221,1],sn:[],sr:[8221,1],ss:[8216,0,8220,0,8221,1],st:[8216,0,8220,0,8221,1],sv:[],syr:[],szl:[8221,1,187,0,171,1],ti:[171,0,187,1,8220,0,8221,1],tk:[8220,0,8221,1,8220,0,8221,1],tn:[8216,0,8220,0,8221,1],ts:[8216,0,8220,0,8221,1],tyv:[171,0,187,1,8221,1],ug:[187,0,171,1,8250,0,8249,1],uk:[171,0,187,1,8221,1],ur:[],uz:[8220,0,8221,1],ve:[8216,0,8220,0,8221,1],wae:[171,0,187,1,8249,0,8250,1],yav:[171,0,187,1,171,0,187,1],yi:[],yue:[],zgh:[171,0,187,1,8221,1],az_Cyrl:[171,0,187,1,8249,0,8250,1],bs_Cyrl:[8221,1],ff_Adlm:[8220,0,8221,1,8216,0],fr_CA:[171,0,187,1],fr_CH:[171,0,187,1,8249,0,8250,1],kk_Arab:[187,0,171,1,8250,0,8249,1],ms_Arab:[],pt_AO:[171,0,187,1,8220,0,8221,1],pt_CH:[171,0,187,1,8220,0,8221,1],pt_CV:[171,0,187,1,8220,0,8221,1],pt_FR:[171,0,187,1,8220,0,8221,1],pt_GQ:[171,0,187,1,8220,0,8221,1],pt_GW:[171,0,187,1,8220,0,8221,1],pt_LU:[171,0,187,1,8220,0,8221,1],pt_MO:[171,0,187,1,8220,0,8221,1],pt_MZ:[171,0,187,1,8220,0,8221,1],pt_PT:[171,0,187,1,8220,0,8221,1],pt_ST:[171,0,187,1,8220,0,8221,1],pt_TL:[171,0,187,1,8220,0,8221,1],ti_ER:[8216,0,8220,0,8221,1],uz_Arab:[8220,0,8221,1,8216,0],uz_Cyrl:[8220,0,8221,1,8216,0],zh_Hant:[]};function getBreakLanguage(e){if(e===null||e.length<2||e.length>2&&e.charCodeAt(2)!==45&&e.charCodeAt(2)!==95)return`root`;let t=e.charCodeAt(0)|32,n=e.charCodeAt(1)|32;return t===106&&n===97?`ja`:t===107&&n===111?`ko`:t===122&&n===104?`zh`:`root`}function unpackTable(e){let t=atob(e),n=0,varint=()=>{let e=0,r=1,i;do i=t.charCodeAt(n++),e+=(i&127)*r,r*=128;while(i>=128);return e},r=new Uint8Array(varint()),i=0;for(;n<t.length;){for(let e=varint();e>0;e--)r[i++]=t.charCodeAt(n++);if(n>=t.length)break;let e=varint()+4,a=i-varint();if(a+e<=i)r.copyWithin(i,a,a+e);else for(let t=0;t<e;t++)r[i+t]=r[a+t];i+=e}if(i!==r.length)throw Error(`A packed table unpacked to the wrong length`);return r}function unpackVarints(e){let t=atob(e),n=new Int32Array(t.length),r=0;for(let e=0;e<t.length;){let i=t.charCodeAt(e++),a=i&127;for(let n=7;i>=128;n+=7)i=t.charCodeAt(e++),a|=(i&127)<<n;n[r++]=a}return n.subarray(0,r)}function getClass(e,t){return e.values[e.index[t>>8]<<8|t&255]}function unpackClassRuns(e,t,n){let r=/* @__PURE__ */ new Uint16Array(4352),i=new Uint8Array(n<<8),a=(/* @__PURE__ */ new Int32Array(256)).fill(-1),o=0,s=0,c=0,l=-1;for(let n=0;n<=e.length;n+=2){let u=n<e.length?t[e[n+1]]:-1;if(u!==l){for(;s<c;){let e=s>>8;if(!(s&255)&&c-s>=256)a[l]<0&&(a[l]=o,i.fill(l,o<<8,++o<<8)),r.fill(a[l],e,c>>8),s=c&-256;else{s&255||(r[e]=o++);let t=Math.min(c,e+1<<8),n=r[e]-e<<8;i.fill(l,s+n,t+n),s=t}}l=u}n<e.length&&(c+=e[n]+1)}if(c!==1114112)throw Error(`The class runs don't cover U+0000..U+10FFFF`);return{index:r,values:i}}let a=null,o=null;function unpackClasses(t){let[n,r]=e[t];return a??=unpackVarints(`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AAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoDAAIaAwACGgMAAhoD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`),o??=unpackTable(`sBPUAQsLMzQDCwMLKgQLIiIqEw4LC0ALCz8wFAMqKjstAwM/BBcMCx8NA0AsA0AfKgMWKgsaIisYCwkLKywDPgoMIQMyFSoDDg4NEwsLLxMUCRADCQ0tCwsMFwMVGQMLFSAhGSssLQ8rISotCxMVAxMNCQsOFEAXBB4LCwsLKSI5DhQDBAYTEAM/GxwdBAMmJx4oLDIDAyoLNTU3LCwqLCwgExUhCwUHCA8REg8UBgsLAwMVEBADCwwEHgQVExUjCwMXJAMlFhgVBAspLgkEFBQZBDErAyoEAF4kFA4sMjYVMik3MissMioyLTgnGQQ5FR8gOToyLRMDPD0LCzQ1CvgBBEELC0AB+AEFPC0DA0AD+AEEQSwDQQz4AQE/MvgBAUEF+AEBOgT4AQFABvgBATMA+AEDNjY4JvgBAg4UFPgBBTcVMik4A/gBCjknGQQ6FR8gOjsA+AECPT5y8AMEAy0qMhbwAwMsNjY58AMEDDE1KwD4AQE1GfADABT4AQEyxgH4AQEy0AH4AQAO6AUAIPgBCgYGEhMIBgoGBwYAAwUGBgcLCAAGCQYIBgYHBwgICwENAAAOBQwKCwYDAiQAAgEBCAAMAggGAD0AAAEBAwEbAQgEHQcIBggJBgwGAj8BCwIUAQkBBwEMBUINCQMDCAMDCQYICg0ODwFyAQMAOgAGZAcICQMGDgQFAg0AARwFCAYGAwkAcgEDAGMFCgYDEBEDHAAHmgEABkAACwkECAsMCQALAwgUCHL4AQEQffgB1AE0AxUWDgMOARkIAxkZGSMlAwMuAwMuEQ0OGQwaAw40LggJKAECJg4uDQ4uAhkOLBoBFxkkKwMTNCQNDhoqKAYOIg4ZNCUlJyM0NBE0DRMcDhMmAzQaKQkOFAgOAxQyGQgkDQENJDQ0AxkjFA4jJhMDJQ0uCTQiNDQ0NCk0BSUNDggKIxw0Lh0fHgg0BxsiMw0iDg4ZNBMTJw0NGQ0NMiMUNDQgEC8PGDAPDSEBAw4UFBwcDgMoCCIIFC40MTQOCTUONiwrFAgDKAQTAw0NCAgIJA40CABeGQ0lHBwbDiIpJyIkDSIMIgMLGzQ0BRQ0NDQABAsOLRIAAAUFAAAAAAYFAAMJAgUFBg8AAxsBAwIHAAIrAQUEGAICAAoBAQUKDgQFBQADBS4ACAEBAxA0AQUAAQMABQMBAQICACUBAAQrAgMFBWsAAUkEBQUDAgEBAAmRAQQAAAUHAAEZAAcAAAcQAAAHBwEABwcDDgcAAgsABwcAEAMbBAAKBwAAJwAAWQAABwYPBwATFA8AFAMVBwsBGQIQEAAOBQAACRAHAdEBBAgLBxIBWgUWAgACFgI8CA0AEBERExQHASsBBwMFAAA7ARAACgIRCwBfAABSAAEWBwIAAwQHBwcEDQsABAQABQYMCwoHEQEwDxAQBwsHDwAOAAsLAAADDgE7BBcYAw8AhQEBAwFPBREAAAAPABgCExQBRQQHBxAHAwEEAA4AAA==`),unpackClassRuns(a,o.subarray(n*248),r)}function lazyRegExp(e,t){let n=null;return()=>n??=new RegExp(e,t)}const s=[lazyRegExp(String.raw`^[\p{L}\p{N}]$`,`u`),lazyRegExp(String.raw`^\p{M}$`,`u`),lazyRegExp(String.raw`^\p{P}$`,`u`),lazyRegExp(String.raw`^[\p{Ps}\p{Pe}\p{Pi}\p{Pf}\p{Po}]$`,`u`),lazyRegExp(String.raw`^\p{Default_Ignorable_Code_Point}$`,`u`),lazyRegExp(String.raw`^\p{Emoji}$`,`u`),lazyRegExp(String.raw`^\p{sc=Hangul}$`,`u`)];let c=null;const l=/* @__PURE__ */ new Map;function hasProperty(e,t){let n=c??=/* @__PURE__ */ new Uint16Array(65536),r=1<<t*2,i=e<65536?n[e]:l.get(e)??0;return i&r<<1||(i|=r<<1|(s[t]().test(String.fromCodePoint(e))?r:0),e<65536?n[e]=i:l.set(e,i)),(i&r)!==0}let u=null;function getWordSegmenter(){return u??=new Intl.Segmenter(void 0,{granularity:`word`})}function unpackStateRows(e,t,n,r){let i=new Uint16Array(t*e);n!==null&&i.set(n);for(let t=0,n=-e;t<r.length;){n+=(r[t++]+1)*e;let a=r[t++]*e;a>0&&i.copyWithin(n,n-a,n-a+e);let o=n-1;for(let e=r[t++];e>0;e--)o+=1+r[t++],i[o]=r[t++]}return i}function unpackTableRows(e){let[t,,,r,i,a]=n[e];return unpackStateRows(t+3,r,i===null?null:unpackTableRows(i),unpackVarints(a))}const d={};function getBreakRules(e){let t=d[e];if(t===void 0){let[r,i,a]=n[e];t=d[e]={catCount:r,dictCategoriesStart:i,rowWidth:r+3,rows:unpackTableRows(e),lookAheadResultsSize:a,classes:unpackClasses(e)}}return t}const f={chars:[],categories:[]};function markRuleBoundaries(e,t,n,r=f){let i=e.rows,a=e.rowWidth,o=e.dictCategoriesStart,s=t.length,c=new Int32Array(e.lookAheadResultsSize).fill(-1),l=r.chars,u=l.length;for(let d=0;d<s;){let f=0,p=d,m=-1,h=d,g=t.charCodeAt(h++);if((g&64512)==55296&&h<s){let e=t.charCodeAt(h);(e&64512)==56320&&(h++,g=(g-55296<<10)+e-56320+65536)}let _=!1,v=!1,y=1*a,b=0;for(;;){if(_){if(v)break;v=!0,b=1}else{let t=!1;for(let e=0;e<u;e++)if(g===l[e]){b=r.categories[e],t=!0;break}t||(b=getClass(e.classes,g),b>=o&&f++)}let n=i[y+3+b];y=n*a;let d=i[y];if(d===1)p=h;else if(d>1&&c[d]>=0){m=c[d];break}let x=i[y+1];if(x>1&&(c[x]=h),n===0)break;if(!v){if(h>=s)_=!0;else if(g=t.charCodeAt(h++),(g&64512)==55296&&h<s){let e=t.charCodeAt(h);(e&64512)==56320&&(h++,g=(g-55296<<10)+e-56320+65536)}}}m<0&&(m=p,p===d&&(m=d+1,(t.charCodeAt(d)&64512)==55296&&m<s&&(t.charCodeAt(m)&64512)==56320&&m++)),n[m]=1,f>0&&markDictionaryWords(e,t,d,m,n),d=m}}function isComplexContext(e,t){return getClass(e.classes,t)>=e.dictCategoriesStart}function markDictionaryWords(e,t,n,r,i){let a=-1;for(let o=n;o<=r;){let n=!1,s=1;if(o<r){let r=t.charCodeAt(o);(r&64512)==55296&&o+1<t.length&&(t.charCodeAt(o+1)&64512)==56320&&(r=(r-55296<<10)+t.charCodeAt(o+1)-56320+65536,s=2),n=isComplexContext(e,r)}if(n)a<0&&(a=o);else if(a>=0){if(o-a>1)for(let e of getWordSegmenter().segment(t.slice(a,o)))e.index>0&&(i[a+e.index]=1);a=-1}o+=s}}const p=8232,m=8233;let h=null,g;function getBlinkDefaultLocale(){return g??=new Intl.DateTimeFormat().resolvedOptions().locale}function isBlinkBreakableSpace(e){return e===32||e===9||e===10}function shouldBreakFast(e,t,n,r){if(n<33||r<33)return 0;if(n===45){if(r<=127){if(r>=48&&r<=57){let e=t|32;return+(t>=48&&t<=57||e>=97&&e<=122)}}else return 2}if(n<=255&&r<=255){let t=r-33;return e[(n-33)*28+(t>>3)]&1<<(t&7)?1:0}return 2}function shouldKeepAfterKeepAll(e,t,n,r){let i=hasProperty(n,1)?t:n;return hasProperty(i,0)&&!isComplexContext(e,i)&&hasProperty(r,0)&&!isComplexContext(e,r)}function getBlinkLineBreaks(e,t,n){let r=e.length,i=new Uint8Array(r+1);if(r<2)return i;let a=h??=unpackTable(`5DAIgAAACAAAAAQDBAYA/+v/+/8CAQF/DBwACAEADhwCCAAUAQQfgAlAFDgAGBwAGFQAJAEANHAAKDgACBwM9hYAuP///+////9vACsAJDgADAEACIgDAA4eABiYAgDmARwANKQDAChUACQcBLyW/7kH+AMAoQLAAwDqAxwBAFm4BwCeBhwAFYAHAYAY9BMAGpAUAK4BmAIB/xYBAX/wBYwIABgBAZgC5gcBDBCMDwBQHAC2AbQCAAeIGAGGBYgYAScM3AoANIwBAH7QAgEA2wH0BQDAAXAAlg0cAA==`),o=getBreakRules(`chromium/${getBreakLanguage(n)===`zh`?`line_normal_cj`:`line_normal`}`),s=null,c=0,l=e.charCodeAt(0);for(let n=1;n<r;c=l,l=e.charCodeAt(n),n++){let u=e.charCodeAt(n);if(isBlinkBreakableSpace(u))continue;if(isBlinkBreakableSpace(l)){i[n]=1;continue}let d=shouldBreakFast(a,c,l,u);d===1?i[n]=1:t&&shouldKeepAfterKeepAll(o,c,l,u)||d!==0&&(s===null&&(s=new Uint8Array(r+1),markRuleBoundaries(o,e,s)),s[n]===1&&(i[n]=1))}return i}const _=32768;let v=null;const y=/* @__PURE__ */ new Map;function isWebKitBreakableSpace(e){return e===32||e===10||e===9||e===p||e===m}function isASCIIDigit(e){return e>=48&&e<=57}function isASCIIAlpha(e){let t=e|32;return t>=97&&t<=122}function classify(e){switch(e>>7){case 0:switch(e>>4){case 0:return _;case 1:return 4;case 2:return e===32?256:e===34||e===39?128:e===40?8:e===41?16:_;case 3:return e<=57?1:_;case 4:return 1;case 5:return e<=90?1:e===91?8:e===93?16:_;case 6:return 1;default:return e<=122?1:e===123?8:e===125?32:_}case 1:return e===160?64:e>192?1:e===161||e===191?8:e===171?640:e===187?1152:_;case 2:case 3:case 4:return 1;case 5:return e===712||e===716||e===735?_:1;case 6:return e===847||e>=860&&e<=866?64:e<880?4:e===894?_:1;case 7:case 8:case 10:return 1;case 9:return e>=1155&&e<=1161?4:1;case 11:return e<=1416||e>=1480?1:e>=1425&&e<=1469||e===1471||e===1473||e===1474||e===1476||e===1477||e===1479?4:_;case 64:return e===8216||e===8220?640:e===8217||e===8221?1152:_;default:if(e>=11904&&e<=42191){if((e&65280)==12288){if(e<=12351)switch(e&31){case 1:case 2:case 9:case 11:case 13:case 15:case 17:case 21:case 23:case 25:case 27:case 30:case 31:return 32;case 8:case 10:case 12:case 14:case 16:case 22:case 20:case 24:case 26:case 29:return 8;default:return _}return _}return(e&65520)==12784?_:(e&65528)==12872||(e&65472)==19904?1:e===40981?_:2}return e>=44032&&e<=55215||e>=63744&&e<=64255?2:_}}function createFactory(e,t){return{text:e,secondToLast:0,last:0,priorLength:0,line:t,nextBoundary:null}}function following(e,t){let n=e.nextBoundary;if(n===null){let t=(e.priorLength===2?String.fromCharCode(e.secondToLast,e.last):e.priorLength===1?String.fromCharCode(e.last):``)+e.text,r=new Uint8Array(t.length+1);markRuleBoundaries(e.line.rules,t,r,e.line.overrides),n=new Int32Array(t.length+2),n[t.length+1]=-1;for(let e=t.length;e>=0;e--)n[e]=r[e]===1?e:n[e+1];e.nextBoundary=n}let r=t+e.priorLength+1;if(r>=n.length)return-1;let i=n[r];return i<0?-1:i-e.priorLength}function nextBreakablePosition(e,t,n){let r=t.text,i=r.length;if(n===0&&t.priorLength===0){if(i<=1)return i;n++}let a=n>1?r.charCodeAt(n-2):t.secondToLast,o=n>0?r.charCodeAt(n-1):t.last,s=0,c=0,l=0,u=-1;for(let d=n;d<i;a=o,o=c,s=l,d++){if(c=r.charCodeAt(d),l=0,isWebKitBreakableSpace(c))return d;if(o===45&&isASCIIDigit(c)){if(isASCIIDigit(a)||isASCIIAlpha(a))return d;continue}if(o<=255&&c<=255){if(o>=33&&c>=33){let t=c-33;if(e[(o-33)*28+(t>>3)]&1<<(t&7))return d}continue}s===0&&(s=classify(o)),l=classify(c);let n=s|l;if(n&-1922){if((n|1)==3)return d;if(n&192&&!(n&_)){if(n&2&&n&128&&(l&512||s&1024))return d}else if(l===4)l=s;else{if(!(n&_)&&n&56){if(l===32||l===16||s===8)continue;if(n&2)return d}if(u<d&&(u=following(t,d-1)),u>=0&&d<u)for(let e=Math.min(u,i-1);d<e;a=o,o=c,s=l,d++){let e=r.charCodeAt(d+1);if(e<=255&&!isASCIIAlpha(e))break}if(d===u&&!isWebKitBreakableSpace(o))return d}}}return i}function nextBreakableSpace(e,t,n){for(let r=t;r<e.length;r++){let t=e.charCodeAt(r);if(isWebKitBreakableSpace(t)||t===8203)return r;if(t===12288||n&&hasProperty(t,3)&&r+1<e.length)return r+1}return e.length}function getWebKitLineRules(e){let t=e??``,n=y.get(t);if(n!==void 0)return n;let r=getBreakLanguage(t),a=getBreakRules(r===`ja`||r===`ko`?`apple/line_normal`:r===`zh`?`apple/line_cj`:`apple/line`),o=t.split(/[-_]/),s=o[0].toLowerCase();for(let e=1;e<o.length;e++){let t=o[e];s+=`_`+(t.length===4?t[0].toUpperCase()+t.slice(1).toLowerCase():t.toUpperCase())}let c=i[s];for(;c===void 0;){let e=s.lastIndexOf(`_`);s=e<0?``:s.slice(0,e),c=i[s]}let l=[],u=[];for(let e=0;e<c.length;e+=2)l.push(c[e]),u.push(getClass(a.classes,c[e+1]===0?123:125));return n={rules:a,overrides:{chars:l,categories:u}},y.set(t,n),n}function getWebKitLineBreaks(e,t,n,i){let a=v??=unpackTable(r),o=createFactory(e,getWebKitLineRules(i)),s=e.length,c=new Uint8Array(s+1),l=!1;for(let t=0;n&&t<s&&!l;t++)l=e.charCodeAt(t)>255;let u=-1;for(let r=0;r<s;){let i=1,d=r,f=e.charCodeAt(r);if(f===p||f===m||t&&f===10)i=2,d++,f!==10&&(c[d]=4);else{for(;d<s;d++){let n=e.charCodeAt(d);if(n!==32&&n!==9&&(t||n!==10))break}if(d===r){i=0,d=s;for(let t=r;t<s;t++){let i=n?nextBreakableSpace(e,t,l):nextBreakablePosition(a,o,t);if(i!==r){d=i;break}}}}u>=0&&u!==2&&i!==2&&(c[r]=1),u=i,r=d}return c}function getWebKitBreakBetweenItems(e,t,n,i){let a=e.charCodeAt(e.length-1),o=t.charCodeAt(0);if(o===10||o===p||o===m)return!1;if(a===32||a===9||o===32||o===9)return!0;if(n)return nextBreakableSpace(t,0,!1)===0;let s=v??=unpackTable(r),c=createFactory(t,getWebKitLineRules(i)),l=e.length;return c.secondToLast=l>1?e.charCodeAt(l-2):0,c.last=l>0?e.charCodeAt(l-1):0,c.priorLength=c.last===0?0:c.secondToLast===0?1:2,nextBreakablePosition(s,c,0)===0}function parseGraphemeRules(e){let t=getBreakRules(e===`gecko/char`?`chromium/char`:e),n=t.rowWidth,r=t.rows,i=r.length/n,a=new Uint8Array(i*t.catCount);for(let e=0;e<i;e++)for(let i=0;i<t.catCount;i++){let o=r[e*n+3+i];a[e*t.catCount+i]=o===0||r[o*n]>1?128|r[1*n+3+i]:o}return{rules:t,transitions:a,skipped:e===`gecko/char`?getClass(t.classes,173):-1}}const b={};function isBidiControl(e){return(e&65280)==8192&&(e>=8234&&e<=8238||e>=8294&&e<=8297||(e&-2)==8206)||e===1564}function findGraphemeEnds(e,t,n,r,i){let{rules:a,transitions:o,skipped:s}=b[e]??(b[e]=parseGraphemeRules(e)),c=a.catCount,l=1,u=0;for(let e=n;e<r;){let n=t.charCodeAt(e),d=e+1;if((n&64512)==55296&&d<r){let e=t.charCodeAt(d);(e&64512)==56320&&(d++,n=(n-55296<<10)+e-56320+65536)}let f=getClass(a.classes,n);if(f===s&&(n===173||isBidiControl(n))){e=d;continue}let p=o[l*c+f];p&128&&(i!==null&&(i[u]=e),u++),l=p&-129,e=d}return l!==1&&(i!==null&&(i[u]=r),u++),u}const isSurrogatePair=(e,t)=>(e&64512)==55296&&(t&64512)==56320,combine=(e,t)=>65536+(e-55296<<10)+(t-56320);let x=null;function isClusterExtender(e){return e>=768&&(hasProperty(e,1)||e===8204||e===8205||e>=65438&&e<=65439||e>=127995&&e<=127999||e>=917536&&e<=917631)}function isClusterExtenderExcludingJoiners(e){return e>=768&&(hasProperty(e,1)||e>=65438&&e<=65439||e>=127995&&e<=127999||e>=917536&&e<=917631)}function isEastAsianWidthFHWExcludingEmoji(e,t){let n=getClass(e,t);return n===2||n===3||n===5&&!hasProperty(t,5)}function isSegmentBreakSkipChar(e,t){return isEastAsianWidthFHWExcludingEmoji(e,t)&&!hasProperty(t,6)&&t!==8361}function isEastAsianPunctuation(e,t){return getClass(e,t)!==0&&(hasProperty(t,2)&&t!==8361||t===65374||t===12288)}function isInvalidChar(e){return e>=32&&e<127?!1:e<=159||(e&65280)==8192&&(e===8203||e===8232||e===8233||e===8288)||e===65279||isBidiControl(e)}function isDiscardable(e,t){return e===173||!t&&isBidiControl(e)}const isSpaceOrTab=e=>e===32||e===9,isSpaceOrTabOrSegmentBreak=e=>e===32||e===9||e===10;function isSpaceCombiningSequenceTail(e,t){for(let n=t;n<e.length;n++){let t=e.charCodeAt(n);if(isClusterExtenderExcludingJoiners(t))return!0;if(!isBidiControl(t))return!1}return!1}function isJapaneseOrChinese(e){let t=getBreakLanguage(e);return(t===`ja`||t===`zh`)&&e.charCodeAt(2)!==95}function isEastAsianSegmentBreak(e,t,n,r){if(t===0||n>=e.length)return!1;let i=x??=unpackClasses(`gecko/east_asian_width`),a,o=t;do{let t=e.charCodeAt(o-1),n=o>1?e.charCodeAt(o-2):0;isSurrogatePair(n,t)?(a=combine(n,t),o-=2):(a=t,o--)}while(hasProperty(a,4)&&o>0);let s;o=n;do s=e.codePointAt(o),o+=s>65535?2:1;while(hasProperty(s,4)&&o<e.length);return isSegmentBreakSkipChar(i,a)&&isSegmentBreakSkipChar(i,s)||r&&(isEastAsianPunctuation(i,a)||isEastAsianPunctuation(i,s))}function transformText(e,t,n,r){let i=e.length,a=new Int32Array(i),o=new Uint8Array(i),s=null,c=0,l=!1;if(n)for(let n=0;n<i;n++){let r=e.charCodeAt(n);isDiscardable(r,t)?(o[n]=1,l||=r!==173):a[c++]=n}else{let n=!1,u=0,d=0,f=r===null?i:0;for(;u<i;){let p=e.charCodeAt(u);if(!isSpaceOrTabOrSegmentBreak(p)&&!isDiscardable(p,t))(p===12||p===13&&e.charCodeAt(u+1)!==10)&&((s??=new Uint8Array(i))[u]=1),a[c++]=u,n=!1,u++;else if(isSpaceOrTabOrSegmentBreak(p)){if(u>=f){for(;d<r.length&&r[d]<=u;)d++;f=d<r.length?r[d]:i}let m=!1,h=p===10,g=0,_=0,v=n&&u>0&&isDiscardable(e.charCodeAt(u-1),t),y=u+1;for(;y<f;y++){let n=e.charCodeAt(y);if(n===10)h=!0;else if(isDiscardable(n,t))_++;else if(!isSpaceOrTab(n))break}for(;isDiscardable(e.charCodeAt(y-1),t);)y--,g++;!t&&e.charCodeAt(y-1)===32&&y<f&&isSpaceCombiningSequenceTail(e,y)&&(m=!0,y--);for(let r=u;r<y;r++){let u=e.charCodeAt(r);isDiscardable(u,t)?(o[r]=1,l||=u!==173):n||h&&isSpaceOrTab(u)?(o[r]=1,(_>g||v)&&((s??=new Uint8Array(i))[r]=1)):(a[c++]=r,n=!0)}m&&(a[c++]=y++);for(let t=0;t<g;t++)l||=e.charCodeAt(y)!==173,o[y++]=1;u=y}else o[u]=1,l||=p!==173,n=!1,u++}}let u=``,d=0,f=0;for(let t=0;t<c;t++){let r=a[t],i=e.charCodeAt(r);!n&&(i===9||i===10)?(u+=e.slice(d,f)+` `,d=f=r+1):r===f?f++:(u+=e.slice(d,f),d=r,f=r+1)}return u+=e.slice(d,f),{text:u,orig:a.subarray(0,c),skipped:o,leftOut:s,dropsBidiControl:l}}function isTrimmableSpace(e,t,n){switch(e.charCodeAt(t)){case 32:case 5760:return n||!isSpaceCombiningSequenceTail(e,t+1);case 10:case 9:case 13:case 12:return!0;default:return!1}}function hasCompressedLeadingWhitespace(e,t,n,r){if(r||t[0]===0)return!1;for(let r=0;r<e.length&&t[r]===1;r++)if(isTrimmableSpace(e,r,n))return!0;return!1}function extendCluster(e,t){e.clusterStart[t]=0,e.isSpace[t]=0}function setupClusterBoundaries(e,t,n,r,i,a){let o=t.charCodeAt(n);r-n>1&&isSurrogatePair(o,t.charCodeAt(n+1))&&(o=combine(o,t.charCodeAt(n+1))),isClusterExtender(o)&&extendCluster(e,n);let s=n;for(;s<r&&t.charCodeAt(s)<768;)s++;let c=s===r?0:findGraphemeEnds(i,t,n,r,a);for(let i=0,o=n;o<r;i++){let r=t.charCodeAt(o);r===32||r===12288?e.isSpace[o]=1:r===2479&&o>n&&t.charCodeAt(o-1)===2509&&extendCluster(e,o);let s=c===0?o+1:a[i];for(o++;o<s;o++)extendCluster(e,o)}}function splitAndInitTextRun(e,t,n,r){let i=t.length,a=0;for(let o=0;o<i;o++){let s=t.charCodeAt(o);(s!==32&&s!==160||o+1<i&&isClusterExtender(t.charCodeAt(o+1)))&&!isInvalidChar(s)||(o>a&&setupClusterBoundaries(e,t,a,o,n,r),s===32&&(e.isSpace[o]=1),a=o+1)}i>a&&setupClusterBoundaries(e,t,a,i,n,r)}let S=null;function getLineBreakClass(e,t){return t>1114111?0:getClass(e.classes,t)}function getComplexLanguage(e){return e>=3585&&e<=3711?1:e>=3712&&e<=3839?2:e>=4096&&e<=4255||e>=43488&&e<=43519||e>=43616&&e<=43647?3:e>=6016&&e<=6143||e>=6624&&e<=6655?4:0}function segmentComplex(e){let t=[];for(let n=0;n<e.length;){let r=getComplexLanguage(e[n]),i=n+1;for(;i<e.length&&getComplexLanguage(e[i])===r;)i++;if(r!==0){let r=``;for(let t=n;t<i;t+=4096)r+=String.fromCharCode(...e.slice(t,Math.min(i,t+4096)));for(let e of getWordSegmenter().segment(r))e.index>0&&t.push(n+e.index)}t.push(i),n=i}return t}function isKeepAllLetter(e){return e===1||e===3||e===25||e===35||e===24||e===21||e===22||e===29||e===31||e===30||e===12}function readCodePoint(e,t,n){let r=e.charCodeAt(t);if((r&64512)==55296&&t+1<n){let n=e.charCodeAt(t+1);if((n&64512)==56320)return((r&1023)<<10)+(n&1023)+65536}return r}function markWordBreaks(e,t,n,r,i,a){let o=r-n,s=e.states,c=0,l=readCodePoint(t,n,r),u=l>65535?2:1,d=[],f=0,p=0;for(;;){if(f<d.length){let e=d[f++]-p,i=0;for(;i!==e;){if(i+=l>65535?2:1,c=u,c>=o)return;l=readCodePoint(t,n+c,r),u+=l>65535?2:1}p+=i,a[n+c]=1;continue}let m=-1,h=!1;outer:for(;;){let a=l,g=m>=0?m:getLineBreakClass(e,a),_=h||m<0&&g===54;if(c=u,c>=o)return;l=readCodePoint(t,n+c,r),u+=l>65535?2:1;let v=getLineBreakClass(e,l);if((v===14||v===54)&&g!==10&&g!==16&&g!==32&&g!==33&&g!==47&&g!==53){m=g,h=v===54;continue}if(m=-1,h=!1,i&&isKeepAllLetter(g)&&isKeepAllLetter(v))continue;if(getLineBreakClass(e,a)===46&&v===46){let i=[a&65535];for(let a=c,s=l;i.push(s&65535),a+=s>65535?2:1,!(a>=o||(s=readCodePoint(t,n+a,r),getLineBreakClass(e,s)!==46)););d=segmentComplex(i),f=1;let s=1;for(;s!==d[0];){if(s++,c=u,c>=o)return;l=readCodePoint(t,n+c,r),u+=l>65535?2:1}p=s;break}let y=s[g*68+v];if(y===253||y===254){if(_)continue;break}if(y===255)continue;let b=y>=120?y-120:y,x=u,S=c,C=l,w=_,T=v,E=b>54;for(;;){let i=T===54,a=b<=54;if(c=u,c>=o){if(s[b*68+67]!==254)return;if(u=x,c=S,l=C,w)continue outer;break outer}l=readCodePoint(t,n+c,r),u+=l>65535?2:1;let d=getLineBreakClass(e,l);if((d===14||d===54)&&T!==10&&T!==16&&T!==32&&T!==33&&T!==47&&T!==53){T=d;continue}let f=s[b*68+d];if(f===255)continue outer;if(f===254){if(u=x,c=S,l=C,i){if(E&&!w)break outer;continue outer}if(w)continue outer;break outer}if(f===253){if(i)continue outer;break outer}f>=120?(b=f-120,x=u,S=c,C=l,w=i):(b=f,a&&(x=u,S=c,C=l,w=i)),T=d}}a[n+c]=1}}const C=new Uint8Array([0,0,1,1,0,0,1,1,0,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function getBreakStates(e,t,n,r,i){let a=t.length,o=new Uint8Array(a),s=r,c=0,l=!1;for(let r=0;r<=a;r++){let u=r<a?t.charCodeAt(r):-1,d=u===32||u===9||u===13;s&&!d&&u>=0&&(o[r]=1),s=d,u>=0&&!d&&(n||u!==10)?u>=32&&u<=127&&C[u-32]===1||(l=!0):(r>c&&l&&markWordBreaks(e,t,c,r,i,o),l=!1,c=r+1)}return o}function getGeckoLineBreaks(e,t,n,r,i=null){let a=e.length,o=new Uint8Array(a+1);if(a===0)return{breaks:o,leftOut:null,dropsBidiControl:!1};let s=!0;for(let t=0;t<a&&s;t++)s=e.charCodeAt(t)<256;let c=transformText(e,s,t,i),l=c.text.length;if(l===0)return{breaks:o,leftOut:null,dropsBidiControl:c.dropsBidiControl};let u={clusterStart:new Uint8Array(l).fill(1),isSpace:new Uint8Array(l)};splitAndInitTextRun(u,c.text,r,new Int32Array(l));let d=getBreakStates(S??={classes:unpackClasses(`gecko/line`),states:unpackTable(`kCQB/QMBAf8AAgABAwABBAH9BQgAAQYB/QQKAAEEAf0EEwAHPQH/DkQB/wdEAf8BBQT///8qBEgADEQC/T8BAgAgiAEBKgEPAT5SiAEE/z//QA6IAQAWRAL/Pg/MAQH/BgIAIMwBABDUAgBAkAIABCEAIkQBPBKIAQAOoAQB/SvMAQH/BgEACAwAEQEBKhIXAf1KAQH/BKwEAAa+AQH9Bw0D/f+yFpgDACawBgA6RAAE5AQC/TtV9AYAIEQABYgBAv87ErgHAB3qAgAnLAAEiAEB/xGQAgBA1AIAPkQAJewFADQBABuIAQAEJAA4zAEB/yKQAgADoAQBPQugBAE9KdgLAB3ACAH/RLAGACpEAf9xoAQAIvQGAAREACbUAgABiwMAAiwAZqAEAEeoBQCEAQEAXdwDABuwBgArrAgBNxDACABARAAgzAEAArwBADrgDAAtRAAVswoAWkQAQNgLAAoPASs/RAEsHDABOC7gDAAL7AUBQVj0FwAOkBMB/RGQEwP9Of0qhAkB/07gDABeRAAoiQQAFagWAEyYAwAPxBMACzABNRIlAGmMCgErQ4wKABGwBgH+BQEB/wADAf8ABgH/BhIABg0C/v8EHAT//v/+CAEASZgUAf0LzBIABrAGAAUPArH9FLgYAAfxBgAb9AYAAEQBPFbQGwACVwA4sAYB/iwBAf8OEwATogIB/xAOASoFtwIAVsAIAHwBAA==`)},c.text,s,hasCompressedLeadingWhitespace(e,c.skipped,s,t),n);for(let t=1;t<l;t++){let n=c.orig[t],r=d[t]===1&&(u.clusterStart[t]===1||u.isSpace[t-1]===1),i=c.skipped[n-1]===1&&e.charCodeAt(n-1)===173;r||i?o[n]=r&&i?9:1:u.clusterStart[t]===1&&(o[n]=2)}return{breaks:o,leftOut:c.leftOut,dropsBidiControl:c.dropsBidiControl}}const w=[`text`,`space`,`zero-width-break`,`soft-hyphen`,`preserved-space`,`tab`,`zero-width-glue`,`control`,`hard-break`],T=/[ \t\n\r\f]{2,}|[\t\n\r\f]/g,E=/[\t\n\r\f]| {2,}|^ | $/;function isSegmentBreakRunSpace(e,t){return e===32||e===9||e===10||e===13&&t===`blink`}function removeSkippableSegmentBreaks(e,t,n=null){let r=t.lineBreakScan;if(r===`webkit`||!e.includes(`
|
|
2
|
+
`))return e;let i=r===`gecko`&&D.test(e);if(!i&&!e.includes(``))return e;let a=i&&isJapaneseOrChinese(n),o=``,s=0;for(let t=e.indexOf(`
|
|
3
|
+
`);t!==-1;){let n=t;for(let i=t-1;i>=0;i--){let t=e.charCodeAt(i);if(isSegmentBreakRunSpace(t,r))n=i;else if(!(r===`gecko`&&isDiscardable(t,!1)))break}let c=t+1,l=c;for(;l<e.length;l++){let t=e.charCodeAt(l);if(isSegmentBreakRunSpace(t,r))c=l+1;else if(!(r===`gecko`&&isDiscardable(t,!1)))break}if(t=e.indexOf(`
|
|
4
|
+
`,l),r===`gecko`&&e.charCodeAt(c-1)===32&&isSpaceCombiningSequenceTail(e,c)&&c--,e.charCodeAt(n-1)===8203||e.charCodeAt(c)===8203||i&&isEastAsianSegmentBreak(e,n,c,a)){o+=e.slice(s,n);for(let t=n;t<c;t++)isSegmentBreakRunSpace(e.charCodeAt(t),r)||(o+=e[t]);s=c}}return s===0?e:o+e.slice(s)}function getTrailingCollapsibleStart(e,t,n){let r=e.length;for(let i=e.length-1;i>=t;i--){let t=e.charCodeAt(i);if(isCollapsibleSpaceCode(t))r=i;else if(!(n.lineBreakScan===`gecko`&&isBidiControl(t)))break}return r}const D=/[\u1100-\uFFFF]/;function collapseWhitespaceNormal(e){if(!E.test(e))return e;let t=e.replace(T,` `);return t.charCodeAt(0)===32&&(t=t.slice(1)),t.length>0&&t.charCodeAt(t.length-1)===32&&(t=t.slice(0,-1)),t}function normalizeWhitespacePreWrap(e){return/[\r\f]/.test(e)?e.replace(/\r\n/g,`
|
|
5
|
+
`).replace(/[\r\f]/g,`
|
|
6
|
+
`):e}const O=/\p{M}/u;function classifySegmentBreakCode(e,t,n){if(t===`pre-wrap`){if(e===32)return 4;if(e===9)return 5;if(e===10)return 8}return e===32?1:e===8203?2:e===173?3:e===133&&n===`webkit`?7:0}function isCollapsibleSpaceCode(e){return e===32||e===9||e===10||e===13||e===12}function mapSourceLineBreaks(e,t,n,r,i){let a=new Uint8Array(t+1),o=0;if(r===`pre-wrap`){for(let t=0;t<e.length;t++,o++)a[o]=n[t],e.charCodeAt(t)===13&&e.charCodeAt(t+1)===10&&(t++,n[t]&1&&(a[o]=n[t]));return a[t]=n[e.length],a}let s=0;for(;s<e.length&&isCollapsibleSpaceCode(e.charCodeAt(s));)s++;for(;s<e.length;){let t=s+1;if(isCollapsibleSpaceCode(e.charCodeAt(s))){for(;t<e.length&&isCollapsibleSpaceCode(e.charCodeAt(t));)t++;if(t===e.length)break}!(n[s]&1)&&a[o]===0&&(a[o]=n[s]),i!==null&&(i[o]=e.charCodeAt(s));let r=s;for(;s<t;s++)n[s]&1&&(a[s===r?o:o+1]=n[s]);o++}return a[t]=n[s]&1?n[s]&4:n[s],a}function classifySegmentUnit(e,t,n,r,i,a){return(r===8232||r===8233)&&t[n+1]&4?8:r===173&&t[n+1]&8&&followsChunkContent(e,n)?2:classifySegmentBreakCode(r,i,a)}function followsChunkContent(e,t){let n=t-1;for(;n>=0&&e.charCodeAt(n)===173;)n--;return n>=0&&e.charCodeAt(n)!==10}function gathersKind(e){return e===0||e===1||e===4||e===3}function isControlSegmentCode(e){return e<32||e>=127&&e<=159||e===8232||e===8233}function segmentAtLineBreaks(e,t,n,r,i,a,o){let s=i===`gecko`?128:0,c=[],l=[],u=!1,d=!1,f=-1,p=-1;for(let t=0;t<e.length;t++){let a=e.charCodeAt(t);if(o&&t<f)continue;if(o&&isDiscardable(a,!1)&&(t===0||n[t]&16||!isDiscardable(e.charCodeAt(t-1),!1))){let a=t,o=-1;for(;a<e.length&&isDiscardable(e.charCodeAt(a),!1)&&(a===t||!(n[a]&16));a++)isBidiControl(e.charCodeAt(a))&&(o=a+1);if(o>0){let m=p>=0&&p!==8&&!!(n[t]&16),h=p<0||p===8||m;if(h){let o=a===e.length||classifySegmentUnit(e,n,a,e.charCodeAt(a),r,i)===8;if(o||(m&&(n[t]=n[t]|n[a]&1),n[a]=n[a]&-10),f=a,o&&p>=0)continue}else f=o;(h||u||d)&&(c.push(t),l.push(0|s),p=0,u=!1,d=!1);continue}}let m=classifySegmentUnit(e,n,t,a,r,i),h=m===0&&isControlSegmentCode(a),g=!(n[t]&1);!(n[t]&17)&&!h&&!u&&(!d||O.test(e[t]))&&m===p&&gathersKind(m)?n[t]&2&&(l[l.length-1]=l[l.length-1]&-129):(d=g&&m===0&&O.test(e[t])&&(u||p===2||p===3||p===7),c.push(t),l.push(m|s),p=m,u=h)}let m=!1,h=l.length;for(let e=h-2;e>=0;e--){let t=l[e]&15,r=l[e+1]&15;if(!(n[c[e+1]]&1||t===8)){if(!a&&(r===5||r===4&&t===5)){if(t===3)continue}else if(r===0||r===6||r===7)(t===2||t===3)&&(l[e]=l[e]&-16|6);else continue;l[e+1]=l[e+1]|32,m=!0}}if(m)for(let e=0;e<h;e++)l[e]&32||(l[e]=l[e]|64);let g=[];for(let t=0;t<h;t++)g.push(e.slice(c[t],t+1<h?c[t+1]:e.length));return{normalized:e,spaceSources:t,texts:g,starts:c,flags:l,hasUnbroken:m}}function analyzeText(e,t,n=`normal`,r=`normal`,i=null,a=null){let o=n===`pre-wrap`,s=a===null?null:[],c=o?e:a!==null&&a.ownSegmentBreaks?removeItemsSkippableSegmentBreaks(e,a.starts,t,i,s):removeSkippableSegmentBreaks(e,t,i);if(a!==null&&s.length===0)for(let e=0;e<a.starts.length;e++)s.push(a.starts[e]);let l=o?normalizeWhitespacePreWrap(e):collapseWhitespaceNormal(c),u=r===`keep-all`,d,f=null,p=!1;if(t.lineBreakScan===`blink`)d=getBlinkLineBreaks(l,u,i);else{let e;if(t.lineBreakScan===`webkit`){if(e=a===null?getWebKitLineBreaks(c,o,u,i):getWebKitParagraphBreaks(c,a,o,u,i),!o&&c!==l&&/\r(?!\n)/.test(c)){let t=0;for(let n=0;n<c.length;n++)c.charCodeAt(n)!==13||c.charCodeAt(n+1)===10?e[t++]=e[n]:e[n+1]=e[n+1]|e[n];e[t]=e[c.length],c=c.replace(/\r(?!\n)/g,``),l=collapseWhitespaceNormal(c)}}else{let n=getGeckoLineBreaks(c,o,u,t.graphemeTable,s);if(p=n.dropsBidiControl,e=n.breaks,a!==null)for(let t=0;t<a.atomic.length;t++){if(!a.atomic[t])continue;let n=s[t]+1;for(;n<c.length&&isDiscardable(c.charCodeAt(n),!1);)n++;e[n]=e[n]&-9}let r=n.leftOut,i=!o&&(p||r!==null)?getTrailingCollapsibleStart(c,0,t):c.length;if(r!==null||i<c.length){let t=-1;if(r!==null&&i<c.length)for(let e=i-1;e>=0;e--){let n=c.charCodeAt(e);if(!isSpaceOrTabOrSegmentBreak(n)&&!isDiscardable(n,!1))break;if(isSpaceOrTabOrSegmentBreak(n)&&r[e]!==1){t=-1;break}isSpaceOrTabOrSegmentBreak(n)&&(t=e)}let n=r===null?i:0,a=``,o=0,s=n,u=n-1;for(let l=n;l<c.length;l++){if(l<i?r!==null&&r[l]===1&&l!==t:isCollapsibleSpaceCode(c.charCodeAt(l))){a+=c.slice(o,l),o=l+1;continue}let n=e[l];e[s++]=u>=0&&u<l-1&&n&1&&c.charCodeAt(u)===173?n|8:n,u=l}e[s]=e[c.length],c=a+c.slice(o),l=collapseWhitespaceNormal(c)}}t.lineBreakScan===`webkit`&&!o&&c!==l&&(f=new Uint16Array(l.length)),d=c===l?e:mapSourceLineBreaks(c,l.length,e,n,f)}return a!==null&&markItemStarts(e,l,d,a,t.lineBreakScan),segmentAtLineBreaks(l,f,d,n,t.lineBreakScan,t.hangTabs,p)}function removeItemsSkippableSegmentBreaks(e,t,n,r,i){if(n.lineBreakScan===`webkit`||!e.includes(`
|
|
7
|
+
`))return e;let a=``,o=0,s=e.indexOf(`
|
|
8
|
+
`);for(let c=0;c<t.length;c++){let l=t[c],u=c+1<t.length?t[c+1]:e.length;if(i.push(a.length+l-o),s<0||s>=u)continue;let d=e.slice(l,u),f=removeSkippableSegmentBreaks(d,n,r);f.length!==d.length&&(a+=e.slice(o,l)+f,o=u),s=e.indexOf(`
|
|
9
|
+
`,u)}return o===0?e:a+e.slice(o)}function alignToSource(e,t,n){let r=new Int32Array(t.length),i=n===`blink`?-1:13,a=n===`gecko`?12:-1,o=0;for(let n=0;n<t.length;n++){let s=t.charCodeAt(n);for(;o<e.length;){let t=e.charCodeAt(o);if(t===s||isCollapsibleSpaceCode(t)&&(s===32?t!==i&&t!==a:s===10))break;o++}r[n]=o++,s===10&&e.charCodeAt(o-1)===13&&e.charCodeAt(o)===10&&o++}return r}function markItemStarts(e,t,n,r,i){let a=r.sourceOffsets=alignToSource(e,t,i),{starts:o,atomic:s}=r;for(let e=0,r=0;e<o.length;e++){for(;r<t.length&&a[r]<o[e];)r++;if(r===t.length)break;n[r]=n[r]|16,s[e]&&a[r]===o[e]&&(n[r]=n[r]|1,n[r+1]=n[r+1]|17)}}function getWebKitParagraphBreaks(e,t,n,r,i){let{items:a,starts:o,atomic:s}=t,c=new Uint8Array(e.length+1),l=-1;for(let t=0;t<o.length;t++){let u=o[t],d=t+1<o.length?o[t+1]:e.length;if(u===d)continue;let f=e.charCodeAt(u);if(d-u>1||f===8232||f===8233){let e=getWebKitLineBreaks(a[t].text,n,r,i);for(let t=1;t<=d-u;t++)c[u+t]=e[t]}if(l>=0&&!s[t]&&!s[l]){let o=e.charCodeAt(u-1);(!n&&(f!==13&&isCollapsibleSpaceCode(f)||o!==13&&isCollapsibleSpaceCode(o))||getWebKitBreakBetweenItems(a[l].text,a[t].text,r,i))&&(c[u]=c[u]|1)}l=t}return c}const ee=/* @__PURE__ */ `.Zapfino.Menlo.Kefa III.Geeza Pro.Snell Roundhand.Kohinoor Bangla.Kokonor|Kailasa.Kailasa.Galvji.Noto Sans Tagalog.Kohinoor Gujarati.Lucida Grande|Arial Hebrew.Apple Chancery|Arial Hebrew.Courier New.ITF Devanagari|Kohinoor Devanagari.Kohinoor Devanagari.Noto Sans Armenian.Euphemia UCAS.Hiragino Mincho ProN.Hiragino Sans.Helvetica.Khmer MN|Khmer Sangam MN.Khmer Sangam MN.Kannada MN|Noto Sans Kannada.Noto Sans Kannada.AppleMyungjo|Apple SD Gothic Neo.Apple SD Gothic Neo.Noto Nastaliq Urdu.Lao MN|Lao Sangam MN.Lao Sangam MN.Malayalam MN|Malayalam Sangam MN.Malayalam Sangam MN.Noto Serif Myanmar|Noto Sans Myanmar.Noto Sans Myanmar.Oriya MN|Noto Sans Oriya.Noto Sans Oriya.Mukta Mahee.Sinhala MN|Sinhala Sangam MN.Sinhala Sangam MN.Tamil Sangam MN.Kohinoor Telugu.Thonburi.Songti TC|PingFang HK.PingFang HK.Songti SC|PingFang SC.PingFang SC.Songti TC|PingFang TC.PingFang TC.Songti TC|PingFang MO.PingFang MO`.split(`.`),te={"":[0,0,0,1,2],am:[3,3,3,3,2],ar:[4,4,4,4,2],bg:[0,0,5,5,2],bn:[6,6,6,6,2],bo:[7,8,7,7,2],chr:[9,9,9,9,2],ckb:[4,4,4,4,2],fa:[4,4,4,4,2],fil:[10,10,10,10,2],gu:[11,11,11,11,2],he:[0,12,13,0,14],hi:[15,16,16,16,2],hy:[17,17,17,17,2],iu:[18,18,18,18,2],ja:[19,20,19,19,2],ka:[21,0,21,21,2],km:[22,23,22,22,2],kn:[24,25,24,24,2],ko:[26,27,26,26,2],ks:[28,28,28,28,2],lo:[29,30,29,29,2],lrc:[4,4,4,4,2],ml:[31,32,31,31,2],my:[33,34,33,33,2],mzn:[4,4,4,4,2],or:[35,36,35,35,2],pa:[37,37,37,37,2],ps:[4,4,4,4,2],ro:[0,0,5,5,2],ru:[0,0,5,5,2],sd:[4,4,4,4,2],si:[38,39,38,38,2],sr:[0,0,5,5,2],ta:[40,40,40,40,2],te:[41,41,41,41,2],th:[42,42,42,42,2],tr:[0,0,5,5,2],ug:[4,4,4,4,2],uk:[0,0,5,5,2],ur:[28,28,28,28,2],yi:[0,12,13,0,14],yue:[43,44,43,43,2],zh:[45,46,45,45,2],"kk-arab":[4,4,4,4,2],"ks-arab":[4,4,4,4,2],"ks-deva":[0,0,0,1,2],"ms-arab":[4,4,4,4,2],"pa-arab":[4,4,4,4,2],"sd-deva":[0,0,0,1,2],"ur-arab":[4,4,4,4,2],"uz-arab":[4,4,4,4,2],"yue-hans":[45,46,45,45,2],"zh-hant":[47,48,47,47,2],"zh-hk":[43,44,43,43,2],"zh-mo":[49,50,49,49,2],"zh-tw":[47,48,47,47,2],"pa-aran-pk":[28,28,28,28,2],"yue-hant-mo":[49,50,49,49,2],"zh-hant-hk":[43,44,43,43,2],"zh-hant-mo":[49,50,49,49,2]};let k=null,ne=null;const A=`0.000001px`,re=/\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{Emoji}\uFE0F/u,j=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,M=[`serif`,`sans-serif`,`cursive`,`fantasy`,`monospace`],ie=/("[^"]*"|'[^']*')|(^|,)(\s*)(serif|sans-serif|cursive|fantasy|monospace)(?=\s*(?:,|$))/gi,ae=/\dpx(?:\s*\/\s*\S+)?\s+/,oe=/(?:"[^"]*"|'[^']*'|[^,])+/g;function getWebKitGenericFamilies(e,t){let n=e.toLowerCase().replaceAll(`_`,`-`),r=null;for(let e=n;r===null;)if(` aa ab ady af ak am ar as ast av ay az ba be bg bi bn bo bs ca ce ceb ch chk cs cy da de dv dz ee efi el en es et eu fa fi fil fj fo fr fur fy ga gaa gd gil gl gn gsw gu ha haw he hi hil ho hr ht hu hy id ig ii ilo inh is it iu ja jv ka kaj kam kbd kha kk kl km kn ko kok kos kpe krc ks ku kum ky la lah lb lez ln lo lt lv mai mdf mg mh mi mk ml mn mr ms mt my myv na nb ne niu nl nn nr nso ny oc om or os pa pag pap pau pl pon ps pt qu rm rn ro ru rw sa sah sat sd se sg si sid sk sl sm so sq sr ss st su sv sw ta te tet tg th ti tig tk tkl tl tn to tpi tr trv ts tt tvl tw ty tyv udm ug uk und ur uz ve vi wal war wo xh yap yo za zh zh-hk zh-tw zu `.includes(` ${e} `))r=e===`zh`;else{let t=e.lastIndexOf(`-`);if(t<0||e.endsWith(`-zyyy`))return null;` arab armn bali batk beng blis bopo brah brai bugi buhd cans cham cher cirt copt cprt cyrl cyrs deva dsrt egyd egyh egyp ethi geok geor glag goth grek gujr guru hang hani hano hans hant hebr hira hmng hrkt hung inds ital java jpan kali kana khar khmr knda kore laoo latf latg latn lepc limb lina linb mand maya mero mlym mong mymr nkoo ogam orkh orya osma perm phag phnx plrd qaai roro runr sara shaw sinh sylo syrc syre syrj syrn tagb tale talu taml telu teng tfng tglg thaa thai tibt ugar vaii visp xpeo xsux yiii zxxx `.includes(` ${e.slice(t+1)} `)&&(r=e.endsWith(`-hani`)),e=e.slice(0,t)}r&&(n=`zh-hans`);let i=te[n];for(;i===void 0;)n=n.slice(0,Math.max(0,n.lastIndexOf(`-`))),i=te[n];let a=[];for(let e=0;e<i.length;e++){let n=i.indexOf(i[e]);if(n<e){a.push(a[n]);continue}let r=ee[i[e]],o=r.indexOf(`|`),s=o<0?r:hasFamily(t,r.slice(0,o))?r.slice(0,o):r.slice(o+1);a.push(s===``?``:`"${s}"`)}return a}const N=`Hamburg 한中 नम សួ ನಮ ສະ നമ မင ନମ ආය བཀ`;function hasFamily(e,t){for(let n of[`monospace`,`serif`]){e.font=`16px ${n}`;let r=e.measureText(N).width;if(e.font=`16px "${t}", ${n}`,e.measureText(N).width!==r)return!0}return!1}function getCanvasFont(e,t){let n=ae.exec(e);if(n===null)return e;let r=n.index+n[0].length;return e.slice(0,r)+e.slice(r).replace(ie,(e,n,r,i,a)=>{let o=n===void 0?t[M.indexOf(a.toLowerCase())]:``;return o===``?e:r+i+o})}function getHyphenText(e){if(e.hyphenText!==null)return e.hyphenText;let t=e.canvasFont,n=ae.exec(t),r=`-`;if(n!==null&&getSegmentMetrics(`‐`,e).width!==getSegmentMetrics(`-`,e).width){let i=getContext(e),a=n.index+n[0].length,o=t.slice(0,a),s=t.slice(a).match(oe)??[],c=o+`monospace`,l=o+`serif`;if(measureIn(i,c,` `)!==measureIn(i,l,` `)&&measureIn(i,c,`‐`)!==measureIn(i,l,`‐`))for(let e=0;e<s.length;e++){let t=`${o}${s[e]}, monospace`,n=`${o}${s[e]}, serif`;if(measureIn(i,t,` `)===measureIn(i,n,` `)){measureIn(i,t,`‐`)===measureIn(i,n,`‐`)&&(r=`‐`);break}}i.font=t}return e.hyphenText=r,r}function measureIn(e,t,n){return e.font=t,e.measureText(n).width}function getPreparationLanguage(e){k!==null&&k.segments>262144&&clearMeasurementCaches();let t=null;if(typeof document<`u`){let e=document.documentElement?.lang;typeof e==`string`&&(t=e)}return t===``&&e.laysOutUnderDefaultLocale?getBlinkDefaultLocale():t}function readLetterSpacing(e,t){let n=e??0;if(!Number.isFinite(n))throw RangeError(`letterSpacing must be a finite number of CSS px, not ${n}`);if(!t.letterSpacingInAppUnits)return n;let r=Math.fround(Math.fround(n)*60);return Math.min(Math.round(Math.abs(r)),1073741823)*Math.sign(r)/60}function zeros(e){let t=[];for(let n=0;n<e;n++)t.push(0);return t}const P=2**20,F=[];function getExtraSpacings(e,t){if(!t.state.takesLetterSpacing)return F;let n=new Int32Array(e.length),r=findGraphemeEnds(getEngineProfile().graphemeTable,e,0,e.length,n),i=r<=96,a=t.glyphCounts,o=null,s=F;try{let c=0;for(let l=0,u=0;l<r;u=n[l++]){let d=e.slice(i?0:u,n[l]),f=a.get(d);f===void 0&&(o===null&&(o=getContext(t),o.letterSpacing=`${P}px`),f=Math.round(o.measureText(d).width/P),a.set(d,f));let p=f-(i?c:0)-1;c=f,(p!==0||s.length!==0)&&(s.length===0&&(s=zeros(r)),s[l]=p)}}finally{o!==null&&(o.letterSpacing=t.letterSpacing)}return s}function getSegmentMetrics(e,t){return t.metrics.get(e)??addMetrics(t.metrics,e,e,t)}function getFollowingSpaceMetrics(e,t){return t.followingSpaceMetrics.get(e)??addMetrics(t.followingSpaceMetrics,e,e+` `,t)}function addMetrics(e,t,n,r){let i={width:getContext(r).measureText(n).width,emojiCount:-1,fit:null,spaceKerning:null,extraSpacings:null};return e.set(t,i),r.state.segments++,!r.measuredKana&&I.test(t)&&(r.measuredKana=!0),i}const I=/[\u3041-\u30FF]/,L=/[\u3041-\u30FF]{2}/,R={after:0,before:0};function isCanvasWordLetter(e){return e>=12353&&e<=12438||e>=12449&&e<=12538||e>=13312&&e<=40959||e>=63744&&e<=64255}function takesNoSpaceKerning(e){return hasProperty(e,1)||(e&63488)==55296||isCanvasWordLetter(e)||e>=44032&&e<=55203}function getFontSpaceKerning(e){if(e.spaceKerning===void 0){let t=getContext(e),n=`\u2028`;for(let e=33;e<=126;e++)n+=String.fromCharCode(e)+`\u2028`;let r=t.measureText(n).width;t.fontKerning=`none`;let i=t.measureText(n).width;t.fontKerning=`auto`,e.spaceKerning=r!==i&&t.measureText(`\u2028`).width===getSegmentMetrics(` `,e).width?/* @__PURE__ */ new Map:null}return e.spaceKerning}function getCharacterSpaceKerning(e,t,n,r){let i=e<<1|!!t,a=r.get(i);if(a===void 0){if(a=0,!takesNoSpaceKerning(e)){let r=String.fromCharCode(e),i=getContext(n).measureText(t?`\u2028`+r:r+`\u2028`).width;a=i-getSegmentMetrics(r,n).width-getSegmentMetrics(` `,n).width,Math.abs(a)<=i/4194304&&(a=0)}r.set(i,a)}return a}function getSpaceKerning(e,t,n,r){let i=0,a=e.length-1;for(;i<a&&hasProperty(e.charCodeAt(i),4);)i++;for(;a>i&&hasProperty(e.charCodeAt(a),4);)a--;let o=i<a&&hasProperty(e.charCodeAt(i+1),1)?0:getCharacterSpaceKerning(e.charCodeAt(i),!0,n,r),s=getCharacterSpaceKerning(e.charCodeAt(a),!1,n,r);return t.spaceKerning=s===0&&o===0?R:{after:s,before:o}}function getSpaceWidth(e){return e.spaceWidth??=getSegmentMetrics(` `,e).width}const z=`プダグタノムブイメえずぺ`;function getWholeRunContext(e){let t=e.state;return t.wholeRunContext===null&&(t.wholeRunContext=createContext(t.language),t.wholeRunContext.textRendering=`optimizeLegibility`),t.wholeRunFont!==e.kanaFont&&(t.wholeRunContext.font=t.wholeRunFont=e.kanaFont),t.wholeRunContext}function sameInk(e,t){let n=e.width/4194304;return Math.abs(e.width-t.width)<=n&&Math.abs(e.actualBoundingBoxLeft-t.actualBoundingBoxLeft)<=n&&Math.abs(e.actualBoundingBoxRight-t.actualBoundingBoxRight)<=n}function getFontKanaKerning(e){if(e.kanaKerning===void 0){e.kanaKerning=null;let t=e.canvasFont,n=ae.exec(t),r=n===null?0:n.index+n[0].length,i=n===null?null:t.slice(r).match(oe),a=i===null?1:i.length,o=null;for(let n=0;n<a;n++){let a=n===0?t:t.slice(0,r)+i.slice(n).join(`,`);e.kanaFont=a;let s=getWholeRunContext(e),c=s.measureText(z).width;s.fontKerning=`none`;let l=s.measureText(z);if(s.fontKerning=`auto`,o===null)o=l;else if(!sameInk(o,l))break;if(c!==l.width){if(n>0){let n=``;for(let e=12353;e<=12438;e++)n+=String.fromCharCode(e,12290);let r=s.measureText(n).width;e.kanaFont=t;let i=getWholeRunContext(e),o=i.measureText(n).width;i.fontKerning=`none`;let c=i.measureText(n).width;if(i.fontKerning=`auto`,o===c||Math.abs(r-o)>o/4194304)break;e.kanaFont=a}e.kanaKerning=(/* @__PURE__ */ new Float64Array(36481)).fill(NaN);break}}e.kanaKerning===null&&(e.kanaFont=t)}return e.kanaKerning}function getKanaKerning(e,t,n,r,i){let a=e.charCodeAt(n);if(a<12353||a>12543)return 0;let o=e.charCodeAt(n-1);if(o<12353||o>12543)return 0;if(n>t){if(!isCanvasWordLetter(a))return 0;let r=n-1,i=o;for(;i>=12353&&i<=12543&&!isCanvasWordLetter(i);){if(r===t)return 0;i=e.charCodeAt(--r)}if(i>=11904&&!isCanvasWordLetter(i))return 0}let s=(o-12353)*191+a-12353,c=i[s];return Number.isNaN(c)?i[s]=measureKanaKerning(e.slice(n-1,n+1),r):c}function measureKanaKerning(e,t){let n=getWholeRunContext(t).measureText(e).width,r=n-getSegmentMetrics(e[0],t).width-getSegmentMetrics(e[1],t).width;return Math.abs(r)<=n/4194304?0:r}function getTextWidth(e,t,n){return getCorrectedSegmentWidth(e,getSegmentMetrics(e,t),t,n)}function getLayoutEngine(e){return e.includes(`Firefox/`)?`gecko`:e.includes(`AppleWebKit/537.36`)?e.includes(`Chrome/`)||e.includes(`Chromium/`)?`blink`:null:e.includes(`AppleWebKit/`)?`webkit`:null}function getEngineProfile(){return ne??=buildEngineProfile()}function buildEngineProfile(){let e=getLayoutEngine(typeof navigator>`u`?``:navigator.userAgent??``)??`blink`;return{lineBreakScan:e,graphemeTable:e===`webkit`?`apple/char`:e===`gecko`?`gecko/char`:`chromium/char`,lineFitEpsilon:e===`webkit`?1/64:.005,cutWordFit:e===`blink`?`reshaped-lines`:`segment-prefixes`,prefixFitMinWidth:e===`webkit`?0:80,cutWordKeepsLigatures:e===`gecko`,measureTextWithFollowingSpace:e===`webkit`,kernsAcrossCanvasWords:e===`blink`,letterSpaceDiscretionaryHyphen:e!==`blink`,letterSpacingInAppUnits:e===`gecko`,canvasLetterSpacingDropsLigatures:e!==`webkit`,unspacedCursive:e===`blink`?`run`:e===`gecko`?`cluster`:`none`,letterSpacesGlyphs:e===`webkit`,unfitHyphenRetreat:e===`blink`?`reduced-width`:e===`gecko`?`full-width`:`full-width-or-first`,hyphenFromPrimaryFont:e!==`gecko`,letterSpaceTabStops:e!==`webkit`,letterSpaceTabs:e===`webkit`,tabMinimumCharacter:e===`gecko`?`0`:` `,tabsInAppUnits:e===`gecko`,hangTabs:e!==`gecko`,zeroWidthGlueTakesLine:e!==`gecko`,hidesControlCharacters:e===`gecko`,hanKerning:e===`blink`,hangsIdeographicSpace:e!==`webkit`,laysOutUnderDefaultLocale:e===`blink`,namesGenericFamiliesByLanguage:e===`webkit`&&!/^(?:Linux|Win32|Haiku|$)/.test(navigator.platform),hardBreakItemRetreat:e===`blink`?`item`:e===`webkit`?`fit`:`last-grapheme`,paddedOpeningFit:e===`blink`?`start`:e===`webkit`?`placed`:`both`,emptyAtomicAlwaysFits:e===`gecko`,hangsSpacesPerTextFrame:e===`gecko`,testsHyphenBeforeAtomic:e!==`webkit`,transformsSegmentBreaksAcrossItems:e===`blink`}}function parseFontSize(e){let t=e.match(/(?:^|\D)(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function textMayContainEmoji(e){return j.test(e)}function getEmojiCorrection(e,t){let n=t.emojiCorrection;if(n!==null)return n;let r=parseFontSize(e),i=t.emojiWidth!==0,a=t.emojiWidth=getContext(t).measureText(`😀`).width;if(n=0,a>r+.5&&typeof document<`u`){let r=readEmojiWidth(e);if(Number.isNaN(r))return 0;if(a-r>.5&&(n=a-r,i)){for(let e of t.metrics.values())e.fit=null;for(let e of t.followingSpaceMetrics.values())e.fit=null}}return t.emojiCorrection=n,n}function readEmojiWidth(e){let t=document.body;if(t===null&&document.head===null)return NaN;let n=document.createElement(`span`);n.style.cssText=`all:initial!important;-webkit-locale:inherit!important;display:inline-block!important;visibility:hidden!important;position:absolute!important`,n.style.setProperty(`font`,e,`important`),n.textContent=`😀`;let r=t===null?NaN:readWidthIn(t,n);return Number.isNaN(r)&&(r=readWidthIn(document.documentElement,n)),r}function readWidthIn(e,t){e.appendChild(t);let n=t.getBoundingClientRect().width,r=parseFloat(getComputedStyle(t).width);return e.removeChild(t),Math.abs(n-r)<=r*1e-5?n:r}const B=2**-20,V=2**-17;function getEmojiGlyphs(e,t){let n=getSegmentMetrics(e,t).width,r=Math.round(n/t.emojiWidth);return Math.abs(n-r*t.emojiWidth)<=n*B?r:0}const se=/[\p{Extended_Pictographic}\p{Emoji_Component}\uFE0E]+/gu;function countEmojiGlyphs(e,t){let n=new Int32Array(e.length),r=findGraphemeEnds(getEngineProfile().graphemeTable,e,0,e.length,n),i=0;for(let a=0,o=0;a<r;o=n[a++]){let r=e.slice(o,n[a]);if(!re.test(r))continue;let s=r.match(se);for(let e=0;e<s.length;e++)i+=getEmojiGlyphs(s[e],t)}return i}function getCorrectedSegmentWidth(e,t,n,r){return r===0?t.width:(t.emojiCount<0&&(t.emojiCount=countEmojiGlyphs(e,n)),t.width-t.emojiCount*r)}function getSegmentFit(e,t,n,r,i,a=null){if(t.fit!==null&&t.fit.mode===i)return t.fit;let o=getEngineProfile(),s=new Int32Array(e.length),c=findGraphemeEnds(o.graphemeTable,e,0,e.length,s);if(c<=1)return t.fit={mode:i,advances:null,lineStartExtras:null};let l,u=null,d=!1;if(i===`reshaped-lines`){let i=getCorrectedSegmentWidth(e,t,n,r)-(a??0),o=measureFitAdvances(e,s,c,`sum-graphemes`,t,n,r,a);if(l=o,!addUpTo(o,i)){l=measureFitAdvances(e,s,c,`pair-context`,t,n,r,a),d=c>96||addUpTo(l,i),d||(l=measureFitAdvances(e,s,c,`segment-prefixes`,t,n,r,a)),u=[0];for(let e=1;e<c;e++)u.push(o[e]-l[e])}}else{let u=i===`segment-prefixes`&&c<=96;d=i!==`sum-graphemes`&&!u,l=measureFitAdvances(e,s,c,d?`pair-context`:i,t,n,r,a),u&&o.cutWordKeepsLigatures&&countLigaturesOnFirstLetter(e,s,l,n,r)}if(o.kernsAcrossCanvasWords&&n.kanaKerning!==null&&L.test(e)){let t=getFontKanaKerning(n);if(t!==null)for(let r=1;r<c;r++){let i=getKanaKerning(e,d&&r>1?s[r-2]:0,s[r-1],n,t);i>0?l[r-1]=l[r-1]+i:i<0&&(l[r]=l[r]+i,u??=zeros(c),u[r]=u[r]-i)}}return t.fit={mode:i,advances:l,lineStartExtras:u}}function countLigaturesOnFirstLetter(e,t,n,r,i){if(!r.state.shapesLetterSpaced||r.letterSpacing!==`0px`)return;let a=0;for(let o=1;o<n.length;o++){let s=t[o-1],c=getTextWidth(e.slice(s,t[o]),r,i);Math.round((n[o]-c)*60)!==0&&isLigature(e.slice(o===1?0:t[o-2],t[o]),r)?(n[a]=n[a]+n[o],n[o]=0):a=o}}function isLigature(e,t){let n=t.ligaturePairs.get(e);if(n===void 0){let r=getContext(t),i=getSegmentMetrics(e,t).width;r.letterSpacing=A,n=r.measureText(e).width!==i,r.letterSpacing=`0px`,t.ligaturePairs.set(e,n)}return n}function addUpTo(e,t){let n=0;for(let t=0;t<e.length;t++)n+=e[t];return Math.abs(n-t)<=t*V}function measureFitAdvances(e,t,n,r,i,a,o,s){let c=r===`segment-prefixes`,l=r===`pair-context`,u=[],d=0,f=0;for(let r=0,p=0;r<n;p=t[r++]){let m=t[r];if(c){let t=s!==null&&r===n-1?getCorrectedSegmentWidth(e,i,a,o)-s:getTextWidth(e.slice(0,m),a,o);u.push(t-f),f=t;continue}let h=getTextWidth(e.slice(p,m),a,o);u.push(l&&r>0?getTextWidth(e.slice(d,m),a,o)-f:h),d=p,f=h}return s!==null&&!c&&(u[n-1]=u[n-1]+i.width-getSegmentMetrics(e,a).width-s),u}function getFontMeasurement(e,t,n){(k===null||k.language!==t)&&(k=createMeasureState(t));let r=k,i=n&&r.shapesLetterSpaced,a=i?r.letterSpacedFonts:r.fonts;r.font=``;let o=a.get(e);if(o===void 0){let t=r.genericFamilies===null?e:getCanvasFont(e,r.genericFamilies);if(!contextTakesFont(r.context,t))throw RangeError(`font must be a font string Canvas takes, a size in px then a family, such as 16px Inter, not "${e}"`);o={state:r,canvasFont:t,letterSpacing:i?A:`0px`,metrics:/* @__PURE__ */ new Map,followingSpaceMetrics:/* @__PURE__ */ new Map,spaceKerning:void 0,measuredKana:!1,kanaKerning:void 0,kanaFont:t,emojiCorrection:null,emojiWidth:0,hyphenText:null,spaceWidth:null,hanKerning:void 0,ligaturePairs:/* @__PURE__ */ new Map,glyphCounts:/* @__PURE__ */ new Map},a.set(e,o)}return o}function contextTakesFont(e,t){return e.font=`1px serif`,e.font=t,e.font!==`1px serif`||(e.font=`2px serif`,e.font=t,e.font!==`2px serif`)}function getContext(e){let t=e.state;return t.font!==e.canvasFont&&(t.context.font=t.font=e.canvasFont),t.letterSpacing!==e.letterSpacing&&(t.context.letterSpacing=t.letterSpacing=e.letterSpacing),t.context}function createContext(e){let t=null;if(typeof OffscreenCanvas<`u`?t=new OffscreenCanvas(1,1).getContext(`2d`):typeof document<`u`&&(t=document.createElement(`canvas`).getContext(`2d`)),t===null)throw Error(`Text measurement requires OffscreenCanvas or a DOM canvas context.`);return e!==null&&`lang`in t&&(t.lang=e),t}function createMeasureState(e){let t=createContext(e),n=getEngineProfile(),r=typeof t.letterSpacing==`string`;return{language:e,context:t,font:``,letterSpacing:`0px`,wholeRunContext:null,wholeRunFont:``,genericFamilies:e!==null&&n.namesGenericFamiliesByLanguage?getWebKitGenericFamilies(e,t):null,takesLetterSpacing:r,shapesLetterSpaced:r&&n.canvasLetterSpacingDropsLigatures,fonts:/* @__PURE__ */ new Map,letterSpacedFonts:/* @__PURE__ */ new Map,segments:0}}function clearMeasurementCaches(){k!==null&&(k.fonts.clear(),k.letterSpacedFonts.clear(),k.segments=0)}const H=/\p{Ps}/uy,U=/\p{Pe}/uy,ce=/[\u2018-\u301F\uFF08-\uFF60]/;function maybeHanKerns(e){return e>=8216&&e<=12319||e>=65288&&e<=65376}function textMayHanKern(e){return ce.test(e)}function getStaticCharType(e,t){let n=e.charCodeAt(t);switch(n){case 8216:case 8220:return 9;case 8217:case 8221:return 10;case 12289:case 12290:case 65292:case 65294:return 6;case 65306:return 7;case 65307:return 8;case 183:case 8231:case 12288:case 12539:return 3;default:{if(n<40||!hasProperty(n,2))return 0;let r=n>=12288&&n<=12351||n>=65281&&n<=65376||n>=65504&&n<=65510;return H.lastIndex=U.lastIndex=t,H.test(e)?r?1:4:U.test(e)?r?2:5:0}}}function getTypeFromBounds(e,t,n){let r=String.fromCharCode(t),i,a,o;if(isCanvasCjkSymbol(t)){let t=e.measureText(`中`+r);i=t.width-n,o=t.actualBoundingBoxRight-n,a=-e.measureText(r+`中`).actualBoundingBoxLeft}else{let t=e.measureText(r);i=t.width,a=-t.actualBoundingBoxLeft,o=t.actualBoundingBoxRight}let s=i/2,c=o<=s?2:a>=s?1:o-a<=s&&a>=s/2?3:0;return{advance:i,type:c}}function getTrim(e,t,n){let r=e.trims.get(t);if(r===void 0){let i=String.fromCharCode(t);r=2*getSegmentMetrics(i,n).width-getSegmentMetrics(i+i,n).width,e.trims.set(t,r)}return r}function getFontData(e){if(e.hanKerning!==void 0)return e.hanKerning;let t={typeForDot:0,typeForColon:0,typeForSemicolon:0,quoteFullwidth:!1,trims:/* @__PURE__ */ new Map};if(getTrim(t,12300,e)<=.001)return e.hanKerning=null,null;let n=getSegmentMetrics(`中`,e).width,r=getContext(e),i=[12289,12290,65292,65294,65306,65307,8220,8216,8221,8217].map(e=>getTypeFromBounds(r,e,n)),group=(e,t)=>{for(let n=e+1;n<t;n++)if(i[n].advance!==i[e].advance||i[n].type!==i[e].type)return 0;return i[e].type};return t.typeForDot=group(0,4),t.typeForColon=i[4].type,t.typeForSemicolon=i[5].type,t.quoteFullwidth=group(6,8)===1&&group(8,10)===2,e.hanKerning=t,t}function getCharType(e,t,n){let r=getStaticCharType(t,n);switch(r){case 6:return e.typeForDot;case 7:return e.typeForColon;case 8:return e.typeForSemicolon;case 9:return e.quoteFullwidth?1:4;case 10:return e.quoteFullwidth?2:5;default:return r}}function haltedSide(e,t){return t===1&&(e===1||e===3||e===2||e===4)?1:e===2&&(t===2||t===3||t===5)?-1:0}function isCanvasCjkSymbol(e){return e>=12288&&e<=12543||e>=65072&&e<=65135||e>=65280&&e<=65519&&e!==65307}function getHanKerningTrims(e,t,n,r){let i={widthTrims:null,lineStartExtras:null,lineEndTrims:null,overflowLineEndTrims:null},a=getFontData(e);if(a===null)return i;let{flags:o,starts:s,normalized:c}=t,l=o.length,addWidthTrim=(e,t)=>{i.widthTrims??=zeros(r-n),i.widthTrims[e-n]=i.widthTrims[e-n]+t};for(let t=n;t<r;t++){if(o[t]&15)continue;let u=s[t],d=t+1<l?s[t+1]:c.length,f=c.charCodeAt(u);if(t>0&&maybeHanKerns(f)&&haltedSide(getCharType(a,c,u-1),getCharType(a,c,u))===1){let o=getTrim(a,f,e);i.lineStartExtras??=zeros(r-n),i.lineStartExtras[t-n]=o,addWidthTrim(t,o)}for(let n=u+1;n<d;n++){let r=c.charCodeAt(n-1),i=c.charCodeAt(n);if(!(maybeHanKerns(r)||maybeHanKerns(i))||isCanvasCjkSymbol(r)===isCanvasCjkSymbol(i))continue;let o=haltedSide(getCharType(a,c,n-1),getCharType(a,c,n));o!==0&&addWidthTrim(t,getTrim(a,o===1?i:r,e))}let p=c.charCodeAt(d-1);if(!maybeHanKerns(p))continue;let m=t+1===l;if(!m&&haltedSide(getCharType(a,c,d-1),getCharType(a,c,d))===-1){addWidthTrim(t,getTrim(a,p,e));continue}let h=getStaticCharType(c,d-1);h!==2&&h!==10||getCharType(a,c,d-1)!==2||(m||!(o[t+1]&15)&&!(o[t+1]&32)?(i.lineEndTrims??=zeros(r-n),i.lineEndTrims[t-n]=getTrim(a,p,e)):(i.overflowLineEndTrims??=zeros(r-n),i.overflowLineEndTrims[t-n]=getTrim(a,p,e)))}return i}function countRenderedSpacingGraphemes(e,t,n){return t===2?0:findGraphemeEnds(n,e,0,e.length,null)}function addInternalLetterSpacing(e,t,n){return t>1?e+(t-1)*n:e}const W=[741,745,768,879,1425,1469,1471,1487,1536,4255,4352,4607,4957,4959,5888,6319,6400,6479,6528,6623,6656,7423,7616,7679,8400,8447,9977,9977,11503,11505,12330,12335,12441,12444,42620,42621,42736,42737,43008,44031,55216,55295,65024,65039,65056,65071,68096,68191,69632,69839,69888,70111,70144,70223,70320,70527,70656,70879,71040,71263,71296,71375,71424,72895,92928,93071,125184,125279,127462,127487,127995,127999,917504,917631,917760,917999],G=/\p{Extended_Pictographic}/u,le=lazyRegExp(String.raw`^\p{M}`,`u`),ue=/^[\p{Nd}:\-/×,.+\u2013\u2014]+$/u,K=/^[\p{Cc}\u2028\u2029]$/u;function needsComplexTextPath(e){let t=!1;for(let n=0;n<e.length;){let r=e.codePointAt(n);if(n+=r>65535?2:1,r===8205&&t)return!0;t=r>65535&&G.test(String.fromCodePoint(r));for(let e=0;e<W.length&&r>=W[e];e+=2)if(r<=W[e+1])return!0}return!1}const q=/[\u0590-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFF\u200F\u{10800}-\u{10FFF}\u{1E800}-\u{1EFFF}\u202A-\u202E\u2066-\u2069]/u;function isSpaceKind(e){return e===1||e===4}let J=null;function getScriptFacts(e){return t[getClass(J??=unpackClasses(`chromium/script`),e)]}function getScriptFactsAt(e,t){let n=e.codePointAt(t),r=getScriptFacts(n),i=t+(n>65535?2:1);if(r&1024&&i<e.length){let t=getScriptFacts(e.codePointAt(i))>>5&31;if(t!==0)return r&-32|t}return r}function mayHoldCursive(e){for(let t=0;t<e.length;t++){if(e.charCodeAt(t)<128)continue;let n=getScriptFacts(e.codePointAt(t));if((n&31)==16||(n>>5&31)==16)return!0}return!1}function readScriptRuns(e,t,n){let{openBrackets:r}=e;for(;e.read<n||e.scripts===31&&e.read<t.length;){let n=t.codePointAt(e.read),i=getScriptFactsAt(t,e.read),a=i&31,o=i&8192?r.lastIndexOf(n-(i>>14)):-1;if(o>=0&&(r[o+1]!==0&&(a=r[o+1]),r.length=o+2),(e.scripts&a)!==0)e.scripts&=a;else{for(let t=r.length-1;t>0&&r[t]===0;t-=2)r[t]=e.scripts&-e.scripts;e.scripts=a}i&4096&&(r.length===64&&r.splice(0,2),r.push(n,0)),e.read+=n>65535?2:1}return e.scripts}function spaceSharesScriptRun(e,t,n,r){let i=getScriptFactsAt(t,n)&31;for(let e=n;i===31&&e+1<r&&hasProperty(t.charCodeAt(e),4);e++)i=getScriptFactsAt(t,e+1)&31;if(i===31)return!0;for(let e=n-2;e>=0;e--){(t.charCodeAt(e)&64512)==56320&&e>0&&e--;let n=getScriptFactsAt(t,e);if(n&8192)break;let r=n&31;if(r!==31){if(!(r&r-1))return(r&i)!==0;break}}return(readScriptRuns(e,t,n)&i)!==0}function getUnspacedGraphemes(e,t,n,r,i){let a=new Int32Array(n-t),o=findGraphemeEnds(r,e,t,n,a),s=null;for(let n=0,r=t;n<o;r=a[n++])(i===null?getScriptFacts(e.codePointAt(r))&2048:readScriptRuns(i,e,r+1)===16&&e.charCodeAt(r)!==160)&&(s??=[]).push(n);return s}function getFollowingSpaceTail(e,t,n){let{normalized:r,spaceSources:i,starts:a,flags:o}=e,s=t+1;for(;s<n&&(o[s]&15)==2;)s++;if(s>=n)return null;let c=o[s]&15,l=a[s];return c!==1&&c!==4||(i===null?r.charCodeAt(l):i[l])!==32?null:r.slice(a[t+1],l)}function getTailKerning(e,t,n){return getFollowingSpaceMetrics(e,t).width-getSegmentMetrics(e,t).width-n}function getJoinedNarrowing(e,t,n,r,i,a,o,s){if(r===null)return 0;let{texts:c,flags:l}=e,u=t+1;for(;u<n&&(l[u]&15)==3;)u++;if(u>=n||l[u]&15)return 0;let d=c[u],f=getCorrectedSegmentWidth(r,i,a,o)+getTextWidth(d,a,o),p=getTextWidth(r+d,a,o);return f-p>s?f-p:0}function getTextSegmentWidth(e,t,n,r,i,a){return getCorrectedSegmentWidth(e,t,n,r)-i+a}function measureAnalysis(e,t,n,r,i,a,o,s,c,l){let{normalized:u,texts:d,starts:f,flags:p}=e,m=t===0?0:f[t],h=t===0&&n===p.length?u:n===t+1?d[t]:u.slice(m,n<p.length?f[n]:u.length),g=l===null?[]:l.widths,_=l===null?new Uint8Array(n-t):l.segmentFlags,v=l===null?[]:l.breakableFitAdvances,y=i?[]:null,b=g.length,x=a!==0,S=getFontMeasurement(r,s,x),C=textMayContainEmoji(h)?getEmojiCorrection(r,S):0,w=h.includes(` `),T=w||h.includes(` `)?getSpaceWidth(S):0,E=o.letterSpaceTabStops?a:0,D=o.tabsInAppUnits?(Math.round(T*60)+Math.round(E*60))*8/60:(T+E)*8,O=0,ee=o.kernsAcrossCanvasWords&&h.includes(` `)?getFontSpaceKerning(S):null;ee!==null&&q.test(h)&&(ee=null);let te={read:0,scripts:31,openBrackets:[]},k=0,ne=x&&o.unspacedCursive!==`none`&&mayHoldCursive(h),A=!x,re=null,j=null,M=null,ie=null,ae=o.unfitHyphenRetreat===`full-width-or-first`;for(let r=t,i=b;r<n;r++,i++){let s=d[r],l=p[r],u=l&15,b=0,E=0,D=null;switch(u){case 0:{if(o.hidesControlCharacters&&K.test(s)){E=1;break}let d=o.measureTextWithFollowingSpace&&w?getFollowingSpaceTail(e,r,n):null,_=d===``,v=_?getFollowingSpaceMetrics(s,S):getSegmentMetrics(s,S);M=s,ie=v;let y=d===null||_?0:getTailKerning(s+d,S,T);if(ee!==null&&v.spaceKerning!==R){let e=r>t&&isSpaceKind(p[r-1]&15),a=r+1<n&&isSpaceKind(p[r+1]&15);if(e||a){let n=v.spaceKerning??getSpaceKerning(s,v,S,ee);a&&(y=Math.max(n.after,0),k=Math.min(n.after,0)),e&&n.before!==0&&((p[r-1]&15)!=4||r!==t+1&&(p[r-2]&15)!=8)&&spaceSharesScriptRun(te,h,f[r]-m,f[r]-m+s.length)&&(g[i-1]=g[i-1]+n.before)}}b=getTextSegmentWidth(s,v,S,C,_?T:0,y);let O=null,A=F;if(x&&(E=countRenderedSpacingGraphemes(s,u,o.graphemeTable),ne&&(O=getUnspacedGraphemes(h,f[r]-m,f[r]-m+s.length,o.graphemeTable,o.unspacedCursive===`run`?te:null),O!==null&&(b-=O.length*a)),o.letterSpacesGlyphs)){A=v.extraSpacings??=needsComplexTextPath(s)?getExtraSpacings(s,S):F;for(let e=0;e<A.length;e++)b+=A[e]*a}if(!c||l&128||s.length===1)break;let j=getSegmentFit(s,v,S,C,a===0?ue.test(s)?`pair-context`:v.width<o.prefixFitMinWidth?`sum-graphemes`:o.cutWordFit:`segment-prefixes`,_?T:null);if(D=j.advances,D===null)break;if(j.lineStartExtras!==null&&((re??=Array(n-t).fill(null))[r-t]=j.lineStartExtras),y!==0&&(D=D.slice(),D[D.length-1]=D[D.length-1]+y),A.length!==0){D=D.slice();for(let e=0;e<A.length;e++)D[e]=D[e]+A[e]*a}if(O!==null){D=D.slice();for(let e=0;e<O.length;e++)D[O[e]]=D[O[e]]-a}break}case 1:case 4:case 2:b=getTextWidth(s,S,C)+k,k=0,x&&(E=countRenderedSpacingGraphemes(s,u,o.graphemeTable));break;case 5:o.letterSpaceTabs&&(E=1),O===0&&(O=getTextWidth(o.tabMinimumCharacter,S,C)/2);break;case 7:{b=getTextWidth(s,S,C);let e=r+1<n?d[r+1]:``;x&&(r>t&&!(p[r-1]&15)&&needsComplexTextPath(d[r-1])||le().test(e)&&needsComplexTextPath(e))&&(E=1);break}}u!==0&&u!==1&&u!==2&&(A=!1),u!==0&&u!==3&&(M=null),_[i]=l&-129|(x&&E>0?16:0),g[i]=addInternalLetterSpacing(b,E,a),v[i]=D,y!==null&&(y[r-t]=s),u!==0&&s.charCodeAt(0)===173?(j??=zeros(r-t),j[r-t]=ae?0:getJoinedNarrowing(e,r,n,M,ie,S,C,o.lineFitEpsilon)):j!==null&&(j[r-t]=0)}let oe=getTextWidth(j===null?`-`:o.hyphenFromPrimaryFont?getHyphenText(S):`‐`,S,C)+(a===0?0:a*(o.letterSpaceDiscretionaryHyphen?2:1)),N={widthTrims:null,lineStartExtras:null,lineEndTrims:null,overflowLineEndTrims:null};if(o.hanKerning&&textMayHanKern(h)){N=getHanKerningTrims(S,e,t,n);let r=N.widthTrims;if(r!==null)for(let e=0;e<r.length;e++)g[b+e]=g[b+e]-r[e]}let P=N.lineStartExtras;if(o.kernsAcrossCanvasWords&&S.measuredKana&&S.kanaKerning!==null&&L.test(h)){let r=getFontKanaKerning(S);r!==null&&(P=addKanaKerning(P,g,b,e,t,n,S,r))}let I=N.lineEndTrims;o.hangsIdeographicSpace&&h.includes(` `)&&(I=addIdeographicSpaceHangs(I,e,S,a,oe,t,n));let z={widths:g,segmentFlags:_,simpleLineWalkFastPath:A&&!e.hasUnbroken,simpleLineCountFastPath:A,breakableFitAdvances:v,letterSpacing:a,discretionaryHyphenWidth:oe,discretionaryHyphenContexts:j,breakableLineStartExtras:re,lineStartExtras:P,lineEndTrims:I,overflowLineEndTrims:N.overflowLineEndTrims,tabStopAdvance:D,minimumTabAdvance:O};return y!==null&&(z.segments=y),z}function addKanaKerning(e,t,n,r,i,a,o,s){let{normalized:c,starts:l,flags:u}=r;for(let r=i;r<a;r++){if(u[r]&15)continue;let d=l[r],f=r+1<u.length?l[r+1]:c.length,p=n+r-i;for(let n=r>i?d:d+1;n<f;n++){let l=getKanaKerning(c,d,n,o,s);l!==0&&(n>d?t[p]=t[p]+l:l>0?t[p-1]=t[p-1]+l:(t[p]=t[p]+l,e??=zeros(a-i),e[r-i]=e[r-i]-l))}}return e}function addIdeographicSpaceHangs(e,t,n,r,i,a,o){let{normalized:s,starts:c,flags:l}=t;for(let t=a;t<o;t++){let u=t+1<l.length?c[t+1]:s.length;if(l[t]&15||s.charCodeAt(u-1)!==12288)continue;if(t+1<o){let e=l[t+1]&15;if(e!==8&&e!==1&&(e!==0||l[t+1]&32))continue}let d=u-1;for(;d>c[t]&&s.charCodeAt(d-1)===12288;)d--;let f=s.slice(d,u),p=t>0&&d===c[t]&&s.charCodeAt(d-1)===173,m=getSegmentMetrics(f,n).width+f.length*r-(p?i:0);m<=0||(e??=zeros(o-a),e[t-a]=e[t-a]+m)}return e}function breaksAfterKind(e){return!!(1<<e&62)}function isDiscretionaryLineEnd(e,t,n,r){return r===0&&n>0&&n<t&&(e[n-1]&15)==3}function consumesAtLineStart(e,t){return e===1||e===3||e===2&&!t}function getTabAdvance(e,t,n,r){if(r){let r=Math.round(t*60);if(r<=0)return 0;let i=Math.round(e*60);return(Math.ceil((i+Math.round(n*120)/2)/r)*r-i)/60}if(t<=0)return 0;let i=t-(e-Math.floor(e/t)*t);return i<n?i+t:i}function getItemTabAdvance(e,t,n,r,i){let a=t.tabStopAdvances===null?e.tabStopAdvance:t.tabStopAdvances[n],o=t.minimumTabAdvances===null?e.minimumTabAdvance:t.minimumTabAdvances[n];return getTabAdvance(r-(t.insideExtras===null?0:t.insideExtras[n]/2),a,o,i)+e.widths[n]}function getTerminalLetterSpacing(e,t,n,r,i,a,o){let{letterSpacing:s,segmentFlags:c}=e;if(s===0)return 0;if(o>0)return c[a]&16?s:0;let l=e.widths.length;if(isDiscretionaryLineEnd(c,l,a,o)||a>r&&a<l&&(c[a]&15)!=8&&1<<(c[a-1]&15)&n)return 0;for(let e=a-1;e>=r;e--){let n=c[e],a=n&15;if(a!==1&&(a===7||a===5||n&16||a===9||t!==null&&t[e]!==0))return e===r&&i>0||n&16?s:0}return 0}function normalizeMaxWidth(e){return e<=1/0?e:1/0}function normalizePreparedLineStart(e,t){let{segmentFlags:n}=e,r=e.widths.length,i=t.segmentIndex;if(i>=r)return!1;if(t.graphemeIndex>0)return!0;let a=i===0||(n[i-1]&15)==8;for(;;){let e=n[i]&15;if(e===8){if(a)return t.segmentIndex=i,t.graphemeIndex=0,!0;if(++i>=r)return!1;t.segmentIndex=i,t.graphemeIndex=0,a=!0}else if(consumesAtLineStart(e,a)){if(++i>=r)return!1}else return t.segmentIndex=i,t.graphemeIndex=0,!0}}function walkPreparedLinesRaw(e,t,n,r={lineCount:0,maxLineWidth:0}){let i={segmentIndex:0,graphemeIndex:0};if(!e.simpleLineWalkFastPath)return normalizePreparedLineStart(e,i)&&walkPreparedComplexLines(e,i,t,n,r),r.lineCount;let{segmentFlags:a}=e,o=e.widths.length;for(;;){let s=i.segmentIndex,c=s===0;for(;s<o&&consumesAtLineStart(a[s]&15,c);)s++;if(s>=o)return r.lineCount;let l=i.graphemeIndex;i.segmentIndex=s;let u=stepPreparedSimpleLineGeometry(e,i,t);r.lineCount++,u>r.maxLineWidth&&(r.maxLineWidth=u),n?.(u,s,l,i.segmentIndex,i.graphemeIndex)}}function countPreparedLines(e,t){if(!e.simpleLineWalkFastPath||e.overflowLineEndTrims!==null)return e.simpleLineCountFastPath?countSteppedLines(e,t):walkPreparedLinesRaw(e,t);let{widths:n,segmentFlags:r,breakableFitAdvances:i,breakableLineStartExtras:a,lineStartExtras:o,lineEndTrims:s}=e,c=Math.max(0,t)+getEngineProfile().lineFitEpsilon,l=n.length,u=0,d=0,f=!1;for(let e=0;e<l;e++){let t=r[e]&15,l=n[e],p=s===null?0:s[e];if(f){if(d+l-p<=c){d+=l;continue}if(u++,d=0,f=!1,t!==0)continue}else if(t===1||t===2&&e>0)continue;let m=o===null?l:l+o[e],h=i[e];if(m-p<=c||h===null){d+=m,f=!0;continue}let g=a?.[e]??null,_=0;for(;_<h.length;){for(g!==null&&(d+=g[_]),d+=h[_++];_<h.length&&d+h[_]<=c;)d+=h[_++];_<h.length?(u++,d=0):f=!0}}return u+ +!!f}function countSteppedLines(e,t){let{segmentFlags:n}=e,r=e.widths.length,i={segmentIndex:0,graphemeIndex:0},a=0;for(;normalizePreparedLineStart(e,i);){let o=i.segmentIndex,s=i.graphemeIndex;stepPreparedSimpleLineGeometry(e,i,t),i.graphemeIndex===0&&i.segmentIndex<r&&n[i.segmentIndex]&32&&(i.segmentIndex=o,i.graphemeIndex=s,walkPreparedComplexLines(e,i,t,void 0,null,!0)),a++}return a}function staysAfterObject(e,t,n,r){let i=n+1;for(;i<t&&1<<(e[i]&15)&r;)i++;return i===t||(e[i]&15)!=5}function returnsFromUnfitHyphen(e,t,n,r,i,a){let{discretionaryHyphenContexts:o,segmentFlags:s}=e,c=n-1;if(c<t||(s[c]&15)!=3||r<=i)return!1;let l=r-i,u=0,d=a?c:c-1;if(o!==null)for(let e=t;e<=d;e++)u+=o[e];return u<l}function walkPreparedComplexLines(e,t,n,r,i,a=!1){let{widths:o,segmentFlags:s,breakableFitAdvances:c,discretionaryHyphenWidth:l,letterSpacing:u,lineStartExtras:d,lineEndTrims:f,overflowLineEndTrims:p,tabStopAdvance:m,minimumTabAdvance:h}=e,g=o.length,_=e.items,v=_===void 0?null:_.hyphenWidths,y=_===void 0?null:_.hyphenRooms,b=_===void 0?null:_.itemEndHalts,x=_===void 0?null:_.insideExtras,S=_===void 0?null:_.fillExtras,C=_===void 0?null:_.openingEdges,w=_===void 0?null:_.emptyObjectSpaces,T=_===void 0?null:_.emptyObjectReturns,E=getEngineProfile(),D=16|(E.hangTabs?32:0),O=_!==void 0&&E.hangsSpacesPerTextFrame,ee=E.testsHyphenBeforeAtomic,te=E.zeroWidthGlueTakesLine,k=E.tabsInAppUnits,ne=E.paddedOpeningFit,A=E.hardBreakItemRetreat,re=Math.max(0,n),j=re+E.lineFitEpsilon,M=e.discretionaryHyphenContexts!==null,ie=E.unfitHyphenRetreat===`reduced-width`,ae=ie?l:0,oe=M&&E.unfitHyphenRetreat===`full-width-or-first`,N=E.unfitHyphenRetreat===`full-width`,P=null;for(;;){let n=t.segmentIndex,E=t.graphemeIndex,F=0,I=!1,L=n,R=E,z=-1,B=0,V=-1,se=0,H=-1,U=0,ce=!1,W=0,G=0,le=!0,ue=!1,K=-1,q=0,J=0,de=!1,Y=null;if((s[n]&15)==8)t.segmentIndex=n+1,t.graphemeIndex=0,Y=d===null?0:d[n];else{decided:{let t;for(let r=n;;r++){if(r>=g){t=g;break}let i,a=0,N=s[r],P=N&15;if(P===8){t=r+1;break}let Y=!!(N&16),X=!!(1<<P&62),fe=r===n?E:0,pe=u!==0&&I&&!le&&!ue?u:0,me=0;u!==0&&(Y||P===7||P===5||P===9||C!==null&&C[r]!==0)&&(me=pe,ue=!Y),P!==2&&P!==6&&(le=!1);let Z=P===5?_===void 0?getTabAdvance(F+me,m,h,k):getItemTabAdvance(e,_,r,I?F+me:d===null?0:d[r],k):o[r],Q=me+Z,he=f===null?0:f[r];if(P===3&&fe===0){if(I){let e=l,t=!0;_!==void 0&&(M&&r>n&&(s[r-1]&15)==9&&(V=r,se=F),O&&H===r&&(H=r+1,U=Math.max(U,Math.min(F,re))),v!==null&&(e=v[r]),t=ee||r+1===g||(s[r+1]&15)!=9||C!==null&&C[r+1]!==0),L=r+1,R=0,r+1<g&&(s[r+1]&15)!=8&&(z=r+1,B=F+e,M&&((t?B:F)<=j||oe&&V<0)&&(V=z,se=B))}continue}let ge=0;if(u!==0&&!Y&&!X&&P!==7)ge=pe+Z;else if(X?P===5:Z!==0||P===7){let e=Z+(Y?u:0);e!==0&&(ge=me+e)}let $=!!(1<<P&D);if(O&&P===2&&H===r&&($=!0),$&&(H!==r&&(U=F-G+me,ce=!1,_!==void 0&&r>n&&(s[r-1]&15)==9&&(ce=staysAfterObject(s,g,r,D),ce||(z=r,B=F-G)),W=0),H=r+1,C!==null&&(U+=C[r],W+=C[r])),!I&&P===6&&!te){L=r+1,R=0;continue}if(I){let e=$?U-W:F+ge,t=e-he>j;if(_!==void 0){let n=!1;if(w!==null&&P===9&&Z===0&&e>j){let e=H===r?U:F,t=w[r];n=e<=j||!(t>=0&&e-t>j||T[r]===1)}let i=ge<0&&F-G>j;t=(t||i)&&!($&&ce)&&!n,O&&!t&&H===r&&P===9&&Z===0&&(H=r+1,U=Math.max(U,Math.min(F+Q,re)))}if(t){let t=F-G;if(X&&($||P!==5)&&(t<=j||z<0&&(P===1||P===2)||P===2&&(s[r-1]&15)==9)){J=$?U:t,F+=Q,K=r+1,q=0;break decided}if(P===5&&!$&&z<0){K=r,q=0,J=H===r&&r>n?U:t;break decided}let l=!!(N&32);if(P===9&&l&&H===r&&(ne===`start`?U-W/2<=j&&F-W/2>j:ne===`placed`&&U-W+Z-he<=j)){H=r+1,U+=Z,W+=Z,F+=Q,L=r+1,R=0;continue}if(l&&z>=0&&(L=z,R=0),!l||z>=0){de=!0;break decided}if(p!==null&&e-p[r]<=j){F+=Q,L=r+1,R=0,G=p[r],b!==null&&b[r]!==0&&(F-=G,G=0);continue}if(P===9&&A!==`item`&&r+1<g&&(s[r+1]&15)==8){let e=s[r-1],t=e&15,i=t===4?c[r-1]:null;if(i!==null){let e=i.length,t=i[0],a=A!==`fit`||F<=j?1:t>0?Math.min(e,Math.ceil((F-j)/t)):e,o=C!==null&&C[n]!==0?n+1:n;if(r-1>o||e-a>E){K=r-1,q=e-a,J=U;break decided}}let a=t===0||t===7?c[r-1]:null,l=e&16?u:0;if(a!==null&&(r-1>n||a.length-1>E)){K=r-1,q=a.length-1,J=F-a[q]-l;break decided}if(a===null&&(t===0||t===7)&&r-1>n){K=r-1,q=0,J=F-o[r-1]-l;break decided}if(i!==null||t!==4&&t!==5){F+=Q,L=r+1,R=0,G=0;continue}}if(c[r]===null){de=!0;break decided}i=0,a=me}else{N&64&&!X&&z!==r&&(z=r,B=F),M&&!X&&!(N&32)&&r>n&&!breaksAfterKind(s[r-1]&15)&&(!ie||F+(y===null?l:y[r])<=j)&&(V=r,se=F),L=r+1,R=0,b!==null&&e>j&&b[r]!==0?(F+=Q-he,G=0):(F+=Q,ge!==0&&!$&&(G=e>j&&P!==9?he:0)),X&&(r+1===g||!(s[r+1]&32))&&(z=r+1,B=$?U:P===5?F:F-Q-G),M&&X&&B+(y===null||z<0?ae:y[z])<=j&&(V=z,se=B);continue}}else if(fe>0)i=fe;else{let e=d===null?0:d[r],t=p!==null&&ge+e-p[r]<=j?p[r]:he;if(ge+e-t>j&&c[r]!==null&&!$)i=0;else{I=!0,L=r+1,R=0,F=Z+e,$&&(U+=e),G=ge+e>j&&P!==9?t:0,b!==null&&G!==0&&b[r]!==0&&(F-=G,G=0),X&&(r+1===g||!(s[r+1]&32))&&(z=r+1,B=$?U:P===5?F:F-Q),M&&X&&B+(y===null||z<0?ae:y[z])<=j&&(V=z,se=B);continue}}let _e=c[r],ve=_e.length;for(let t=i;t<ve;t++){let n=_e[t];if(I){let e=F+(n+(t>i?u:a));if(e+u>j)break decided;F=e,L=r,R=t+1}else{I=!0,L=r,R=t+1;let i=e.breakableLineStartExtras?.[r]??null;F=i===null?n:n+i[t],(t>0?x!==null:S!==null)&&(F+=t>0?x[r]:S[r])}}I&&L===r&&R===ve&&(L=r+1,R=0)}K=t,q=0,z===t&&R===0?(J=B,de=!0):J=F-G}if(I){de&&V>=0&&z===L&&R===0&&returnsFromUnfitHyphen(e,n,L,B,j,N)?(K=V,q=0,J=se):K<0&&(K=L,q=R,J=z===L&&R===0?B:_!==void 0&&H===L&&R===0?U:F-G),t.segmentIndex=K,t.graphemeIndex=q;let r=q===0&&H>=0&&(K===H||K===H+1)&&(H===g||(s[H]&15)==8),i=(r?F-G:J)+getTerminalLetterSpacing(e,C,D,n,E,K,q);Y=r?Math.max(U,Math.min(i,re)):i}}if(Y===null||(P=Y,i!==null&&(i.lineCount++,Y>i.maxLineWidth&&(i.maxLineWidth=Y)),r?.(Y,n,E,t.segmentIndex,t.graphemeIndex),a||!normalizePreparedLineStart(e,t)))break}return P}function stepPreparedSimpleLineGeometry(e,t,n){let{widths:r,segmentFlags:i,breakableFitAdvances:a,lineStartExtras:o,lineEndTrims:s,overflowLineEndTrims:c}=e,l=Math.max(0,n)+getEngineProfile().lineFitEpsilon,u=t.segmentIndex,d=a[u],f=o===null?r[u]:r[u]+o[u],p=s===null?0:s[u],m=c!==null&&f-c[u]<=l?c[u]:p,h,g=0;if(t.graphemeIndex>0||f-m>l&&d!==null){let n=d,r=e.breakableLineStartExtras?.[u]??null,i=t.graphemeIndex+1;h=r===null?n[i-1]:n[i-1]+r[i-1];let a=e.items;for(a!==void 0&&(i>1?a.insideExtras!==null:a.fillExtras!==null)&&(h+=i>1?a.insideExtras[u]:a.fillExtras[u]);i<n.length;i++){if(h+n[i]>l)return t.graphemeIndex=i,h;h+=n[i]}}else h=f,f>l&&(g=m);for(let e=u+1;e<r.length;e++){let n=r[e],a=s===null?0:s[e];if(h+n-a>l){let n=breaksAfterKind(i[e]&15);return t.segmentIndex=n?e+1:e,t.graphemeIndex=0,!n&&breaksAfterKind(i[e-1]&15)?h-r[e-1]:h-g}h+=n,g=h>l?a:0}return t.segmentIndex=r.length,t.graphemeIndex=0,h-g}const de=/* @__PURE__ */ new WeakMap;function getGraphemeEnds(e,t){let n=de.get(e);n===void 0&&(n=/* @__PURE__ */ new Map,de.set(e,n));let r=n.get(t);if(r===void 0){let i=e.segments[t];r=new Int32Array(i.length),findGraphemeEnds(getEngineProfile().graphemeTable,i,0,i.length,r),n.set(t,r)}return r}function getGraphemeStart(e,t,n){return n===0?0:getGraphemeEnds(e,t)[n-1]}function buildRangeText(e,t,n,r,i){let{segmentFlags:a}=e,o=e.segments.length,s=r<o?r:o,c=``;for(let r=t;r<s;r++){let i=a[r]&15;i!==3&&i!==8&&(i!==6&&i!==2||e.segments[r].charCodeAt(0)!==173)&&(c+=r===t&&n>0?e.segments[r].slice(getGraphemeStart(e,r,n)):e.segments[r])}return i>0&&r<o&&(c+=e.segments[r].slice(getGraphemeStart(e,r,t===r?n:0),getGraphemeStart(e,r,i))),c}function buildLineTextFromRange(e,t,n,r,i){let a=buildRangeText(e,t,n,r,i);return isDiscretionaryLineEnd(e.segmentFlags,e.widths.length,r,i)?a+`-`:a}function prepareInternal(e,t,n,r){let i=r?.wordBreak??`normal`,a=getEngineProfile(),o=readLetterSpacing(r?.letterSpacing,a),s=getPreparationLanguage(a),c=analyzeText(e,a,r?.whiteSpace,i,s);return measureAnalysis(c,0,c.flags.length,t,n,o,a,s,!0,null)}function prepare(e,t,n){return prepareInternal(e,t,!1,n)}function prepareWithSegments(e,t,n){let r=prepareInternal(e,t,!0,n),i=[];for(let e=0;e<r.segmentFlags.length;e++)i.push(w[r.segmentFlags[e]&15]);return r.kinds=i,r}function getInternalPrepared(e){return e}function layout(e,t,n){let r=countPreparedLines(getInternalPrepared(e),normalizeMaxWidth(t));return{lineCount:r,height:r*n}}function createLayoutLine(e,t,n,r,i,a){return{text:buildLineTextFromRange(e,n,r,i,a),width:Math.max(0,t),start:{segmentIndex:n,graphemeIndex:r},end:{segmentIndex:i,graphemeIndex:a}}}function measureLineStats(e,t){let n={lineCount:0,maxLineWidth:0};return walkPreparedLinesRaw(getInternalPrepared(e),normalizeMaxWidth(t),void 0,n),n}function measureNaturalWidth(e){return measureLineStats(e,1/0).maxLineWidth}function layoutWithLines(e,t,n){let r=[],i=walkPreparedLinesRaw(getInternalPrepared(e),normalizeMaxWidth(t),(t,n,i,a,o)=>{r.push(createLayoutLine(e,t,n,i,a,o))});return{lineCount:i,height:i*n,lines:r}}export{prepareWithSegments as a,prepare as i,layoutWithLines as n,measureNaturalWidth as r,layout as t};
|
|
@@ -1 +1,27 @@
|
|
|
1
|
-
import"../../rolldown-runtime.mjs";var e=typeof global==`object`&&global&&global.Object===Object&&global,t=typeof self==`object`&&self&&self.Object===Object&&self,n=e||t||Function(`return this`)(),r=n.Symbol,i=Object.prototype,a=i.hasOwnProperty,o=i.toString,s=r?r.toStringTag:void 0;function getRawTag(e){var t=a.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch{}var i=o.call(e);return r&&(t?e[s]=n:delete e[s]),i}var c=Object.prototype.toString;function objectToString(e){return c.call(e)}var l=`[object Null]`,u=`[object Undefined]`,d=r?r.toStringTag:void 0;function baseGetTag(e){return e==null?e===void 0?u:l:d&&d in Object(e)?getRawTag(e):objectToString(e)}function isObjectLike(e){return typeof e==`object`&&!!e}var f=`[object Symbol]`;function isSymbol(e){return typeof e==`symbol`||isObjectLike(e)&&baseGetTag(e)==f}function arrayMap(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}var p=Array.isArray,m=1/0,h=r?r.prototype:void 0,g=h?h.toString:void 0;function baseToString(e){if(typeof e==`string`)return e;if(p(e))return arrayMap(e,baseToString)+``;if(isSymbol(e))return g?g.call(e):``;var t=e+``;return t==`0`&&1/e==-m?`-0`:t}var _=/\s/;function trimmedEndIndex(e){for(var t=e.length;t--&&_.test(e.charAt(t)););return t}var v=/^\s+/;function baseTrim(e){return e&&e.slice(0,trimmedEndIndex(e)+1).replace(v,``)}function isObject(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var y=NaN,ee=/^[-+]0x[0-9a-f]+$/i,te=/^0b[01]+$/i,ne=/^0o[0-7]+$/i,re=parseInt;function toNumber(e){if(typeof e==`number`)return e;if(isSymbol(e))return y;if(isObject(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=isObject(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=baseTrim(e);var n=te.test(e);return n||ne.test(e)?re(e.slice(2),n?2:8):ee.test(e)?y:+e}var b=1/0,ie=17976931348623157e292;function toFinite(e){return e?(e=toNumber(e),e===b||e===-b?(e<0?-1:1)*ie:e===e?e:0):e===0?e:0}function toInteger(e){var t=toFinite(e),n=t%1;return t===t?n?t-n:t:0}function identity(e){return e}var ae=`[object AsyncFunction]`,oe=`[object Function]`,se=`[object GeneratorFunction]`,ce=`[object Proxy]`;function isFunction(e){if(!isObject(e))return!1;var t=baseGetTag(e);return t==oe||t==se||t==ae||t==ce}var x=n[`__core-js_shared__`],le=function(){var e=/[^.]+$/.exec(x&&x.keys&&x.keys.IE_PROTO||``);return e?`Symbol(src)_1.`+e:``}();function isMasked(e){return!!le&&le in e}var ue=Function.prototype.toString;function toSource(e){if(e!=null){try{return ue.call(e)}catch{}try{return e+``}catch{}}return``}var de=/[\\^$.*+?()[\]{}|]/g,fe=/^\[object .+?Constructor\]$/,pe=Function.prototype,me=Object.prototype,he=pe.toString,ge=me.hasOwnProperty,_e=RegExp(`^`+he.call(ge).replace(de,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function baseIsNative(e){return!isObject(e)||isMasked(e)?!1:(isFunction(e)?_e:fe).test(toSource(e))}function getValue(e,t){return e?.[t]}function getNative(e,t){var n=getValue(e,t);return baseIsNative(n)?n:void 0}var S=getNative(n,`WeakMap`);function apply(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}var ve=800,ye=16,be=Date.now;function shortOut(e){var t=0,n=0;return function(){var r=be(),i=ye-(r-n);if(n=r,i>0){if(++t>=ve)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function constant(e){return function(){return e}}var C=function(){try{var e=getNative(Object,`defineProperty`);return e({},``,{}),e}catch{}}(),xe=shortOut(C?function(e,t){return C(e,`toString`,{configurable:!0,enumerable:!1,value:constant(t),writable:!0})}:identity);function arrayEach(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}function baseFindIndex(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}function baseIsNaN(e){return e!==e}function strictIndexOf(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}function baseIndexOf(e,t,n){return t===t?strictIndexOf(e,t,n):baseFindIndex(e,baseIsNaN,n)}var Se=9007199254740991,Ce=/^(?:0|[1-9]\d*)$/;function isIndex(e,t){var n=typeof e;return t??=Se,!!t&&(n==`number`||n!=`symbol`&&Ce.test(e))&&e>-1&&e%1==0&&e<t}function baseAssignValue(e,t,n){t==`__proto__`&&C?C(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function eq(e,t){return e===t||e!==e&&t!==t}var we=Object.prototype.hasOwnProperty;function assignValue(e,t,n){var r=e[t];(!(we.call(e,t)&&eq(r,n))||n===void 0&&!(t in e))&&baseAssignValue(e,t,n)}function copyObject(e,t,n,r){var i=!n;n||={};for(var a=-1,o=t.length;++a<o;){var s=t[a],c=r?r(n[s],e[s],s,n,e):void 0;c===void 0&&(c=e[s]),i?baseAssignValue(n,s,c):assignValue(n,s,c)}return n}var w=Math.max;function overRest(e,t,n){return t=w(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,a=w(r.length-t,0),o=Array(a);++i<a;)o[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=n(o),apply(e,this,s)}}function baseRest(e,t){return xe(overRest(e,t,identity),e+``)}var Te=9007199254740991;function isLength(e){return typeof e==`number`&&e>-1&&e%1==0&&e<=Te}function isArrayLike(e){return e!=null&&isLength(e.length)&&!isFunction(e)}function isIterateeCall(e,t,n){if(!isObject(n))return!1;var r=typeof t;return(r==`number`?isArrayLike(n)&&isIndex(t,n.length):r==`string`&&t in n)?eq(n[t],e):!1}function createAssigner(e){return baseRest(function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=e.length>3&&typeof a==`function`?(i--,a):void 0,o&&isIterateeCall(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),t=Object(t);++r<i;){var s=n[r];s&&e(t,s,r,a)}return t})}var Ee=Object.prototype;function isPrototype(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||Ee)}function baseTimes(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var De=`[object Arguments]`;function baseIsArguments(e){return isObjectLike(e)&&baseGetTag(e)==De}var T=Object.prototype,Oe=T.hasOwnProperty,ke=T.propertyIsEnumerable,E=baseIsArguments(function(){return arguments}())?baseIsArguments:function(e){return isObjectLike(e)&&Oe.call(e,`callee`)&&!ke.call(e,`callee`)};function stubFalse(){return!1}var D=typeof exports==`object`&&exports&&!exports.nodeType&&exports,Ae=D&&typeof module==`object`&&module&&!module.nodeType&&module,je=Ae&&Ae.exports===D?n.Buffer:void 0,O=(je?je.isBuffer:void 0)||stubFalse,Me=`[object Arguments]`,Ne=`[object Array]`,Pe=`[object Boolean]`,Fe=`[object Date]`,Ie=`[object Error]`,Le=`[object Function]`,Re=`[object Map]`,ze=`[object Number]`,Be=`[object Object]`,Ve=`[object RegExp]`,He=`[object Set]`,Ue=`[object String]`,We=`[object WeakMap]`,Ge=`[object ArrayBuffer]`,Ke=`[object DataView]`,qe=`[object Float32Array]`,Je=`[object Float64Array]`,Ye=`[object Int8Array]`,Xe=`[object Int16Array]`,Ze=`[object Int32Array]`,Qe=`[object Uint8Array]`,$e=`[object Uint8ClampedArray]`,et=`[object Uint16Array]`,tt=`[object Uint32Array]`,k={};k[qe]=k[Je]=k[Ye]=k[Xe]=k[Ze]=k[Qe]=k[$e]=k[et]=k[tt]=!0,k[Me]=k[Ne]=k[Ge]=k[Pe]=k[Ke]=k[Fe]=k[Ie]=k[Le]=k[Re]=k[ze]=k[Be]=k[Ve]=k[He]=k[Ue]=k[We]=!1;function baseIsTypedArray(e){return isObjectLike(e)&&isLength(e.length)&&!!k[baseGetTag(e)]}function baseUnary(e){return function(t){return e(t)}}var A=typeof exports==`object`&&exports&&!exports.nodeType&&exports,j=A&&typeof module==`object`&&module&&!module.nodeType&&module,M=j&&j.exports===A&&e.process,N=function(){try{return j&&j.require&&j.require(`util`).types||M&&M.binding&&M.binding(`util`)}catch{}}(),P=N&&N.isTypedArray,F=P?baseUnary(P):baseIsTypedArray,nt=Object.prototype.hasOwnProperty;function arrayLikeKeys(e,t){var n=p(e),r=!n&&E(e),i=!n&&!r&&O(e),a=!n&&!r&&!i&&F(e),o=n||r||i||a,s=o?baseTimes(e.length,String):[],c=s.length;for(var l in e)(t||nt.call(e,l))&&!(o&&(l==`length`||i&&(l==`offset`||l==`parent`)||a&&(l==`buffer`||l==`byteLength`||l==`byteOffset`)||isIndex(l,c)))&&s.push(l);return s}function overArg(e,t){return function(n){return e(t(n))}}var rt=overArg(Object.keys,Object),it=Object.prototype.hasOwnProperty;function baseKeys(e){if(!isPrototype(e))return rt(e);var t=[];for(var n in Object(e))it.call(e,n)&&n!=`constructor`&&t.push(n);return t}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}var at=Object.prototype.hasOwnProperty,I=createAssigner(function(e,t){if(isPrototype(t)||isArrayLike(t)){copyObject(t,keys(t),e);return}for(var n in t)at.call(t,n)&&assignValue(e,n,t[n])});function nativeKeysIn(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var ot=Object.prototype.hasOwnProperty;function baseKeysIn(e){if(!isObject(e))return nativeKeysIn(e);var t=isPrototype(e),n=[];for(var r in e)(r!=`constructor`||!t&&ot.call(e,r))&&n.push(r);return n}function keysIn(e){return isArrayLike(e)?arrayLikeKeys(e,!0):baseKeysIn(e)}var st=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ct=/^\w*$/;function isKey(e,t){if(p(e))return!1;var n=typeof e;return n==`number`||n==`symbol`||n==`boolean`||e==null||isSymbol(e)?!0:ct.test(e)||!st.test(e)||t!=null&&e in Object(t)}var L=getNative(Object,`create`);function hashClear(){this.__data__=L?L(null):{},this.size=0}function hashDelete(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}var lt=`__lodash_hash_undefined__`,ut=Object.prototype.hasOwnProperty;function hashGet(e){var t=this.__data__;if(L){var n=t[e];return n===lt?void 0:n}return ut.call(t,e)?t[e]:void 0}var dt=Object.prototype.hasOwnProperty;function hashHas(e){var t=this.__data__;return L?t[e]!==void 0:dt.call(t,e)}var ft=`__lodash_hash_undefined__`;function hashSet(e,t){var n=this.__data__;return this.size+=+!this.has(e),n[e]=L&&t===void 0?ft:t,this}function Hash(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet;function listCacheClear(){this.__data__=[],this.size=0}function assocIndexOf(e,t){for(var n=e.length;n--;)if(eq(e[n][0],t))return n;return-1}var pt=Array.prototype.splice;function listCacheDelete(e){var t=this.__data__,n=assocIndexOf(t,e);return n<0?!1:(n==t.length-1?t.pop():pt.call(t,n,1),--this.size,!0)}function listCacheGet(e){var t=this.__data__,n=assocIndexOf(t,e);return n<0?void 0:t[n][1]}function listCacheHas(e){return assocIndexOf(this.__data__,e)>-1}function listCacheSet(e,t){var n=this.__data__,r=assocIndexOf(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function ListCache(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet;var R=getNative(n,`Map`);function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(R||ListCache),string:new Hash}}function isKeyable(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}function getMapData(e,t){var n=e.__data__;return isKeyable(t)?n[typeof t==`string`?`string`:`hash`]:n.map}function mapCacheDelete(e){var t=getMapData(this,e).delete(e);return this.size-=+!!t,t}function mapCacheGet(e){return getMapData(this,e).get(e)}function mapCacheHas(e){return getMapData(this,e).has(e)}function mapCacheSet(e,t){var n=getMapData(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function MapCache(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet;var mt=`Expected a function`;function memoize(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(mt);var memoized=function(){var n=arguments,r=t?t.apply(this,n):n[0],i=memoized.cache;if(i.has(r))return i.get(r);var a=e.apply(this,n);return memoized.cache=i.set(r,a)||i,a};return memoized.cache=new(memoize.Cache||MapCache),memoized}memoize.Cache=MapCache;var ht=500;function memoizeCapped(e){var t=memoize(e,function(e){return n.size===ht&&n.clear(),e}),n=t.cache;return t}var gt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,_t=/\\(\\)?/g,vt=memoizeCapped(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(``),e.replace(gt,function(e,n,r,i){t.push(r?i.replace(_t,`$1`):n||e)}),t});function toString(e){return e==null?``:baseToString(e)}function castPath(e,t){return p(e)?e:isKey(e,t)?[e]:vt(toString(e))}var yt=1/0;function toKey(e){if(typeof e==`string`||isSymbol(e))return e;var t=e+``;return t==`0`&&1/e==-yt?`-0`:t}function baseGet(e,t){t=castPath(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[toKey(t[n++])];return n&&n==r?e:void 0}function get(e,t,n){var r=e==null?void 0:baseGet(e,t);return r===void 0?n:r}function arrayPush(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}var bt=overArg(Object.getPrototypeOf,Object);function stackClear(){this.__data__=new ListCache,this.size=0}function stackDelete(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function stackGet(e){return this.__data__.get(e)}function stackHas(e){return this.__data__.has(e)}var xt=200;function stackSet(e,t){var n=this.__data__;if(n instanceof ListCache){var r=n.__data__;if(!R||r.length<xt-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new MapCache(r)}return n.set(e,t),this.size=n.size,this}function Stack(e){var t=this.__data__=new ListCache(e);this.size=t.size}Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;function arrayFilter(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}function stubArray(){return[]}var St=Object.prototype.propertyIsEnumerable,Ct=Object.getOwnPropertySymbols,z=Ct?function(e){return e==null?[]:(e=Object(e),arrayFilter(Ct(e),function(t){return St.call(e,t)}))}:stubArray,B=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)arrayPush(t,z(e)),e=bt(e);return t}:stubArray;function baseGetAllKeys(e,t,n){var r=t(e);return p(e)?r:arrayPush(r,n(e))}function getAllKeys(e){return baseGetAllKeys(e,keys,z)}function getAllKeysIn(e){return baseGetAllKeys(e,keysIn,B)}var V=getNative(n,`DataView`),H=getNative(n,`Promise`),U=getNative(n,`Set`),W=`[object Map]`,wt=`[object Object]`,G=`[object Promise]`,K=`[object Set]`,q=`[object WeakMap]`,J=`[object DataView]`,Tt=toSource(V),Et=toSource(R),Dt=toSource(H),Ot=toSource(U),kt=toSource(S),getTag=baseGetTag;(V&&getTag(new V(new ArrayBuffer(1)))!=J||R&&getTag(new R)!=W||H&&getTag(H.resolve())!=G||U&&getTag(new U)!=K||S&&getTag(new S)!=q)&&(getTag=function(e){var t=baseGetTag(e),n=t==wt?e.constructor:void 0,r=n?toSource(n):``;if(r)switch(r){case Tt:return J;case Et:return W;case Dt:return G;case Ot:return K;case kt:return q}return t});var Y=getTag,X=n.Uint8Array,At=`__lodash_hash_undefined__`;function setCacheAdd(e){return this.__data__.set(e,At),this}function setCacheHas(e){return this.__data__.has(e)}function SetCache(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new MapCache;++t<n;)this.add(e[t])}SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas;function arraySome(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function cacheHas(e,t){return e.has(t)}var jt=1,Mt=2;function equalArrays(e,t,n,r,i,a){var o=n&jt,s=e.length,c=t.length;if(s!=c&&!(o&&c>s))return!1;var l=a.get(e),u=a.get(t);if(l&&u)return l==t&&u==e;var d=-1,f=!0,p=n&Mt?new SetCache:void 0;for(a.set(e,t),a.set(t,e);++d<s;){var m=e[d],h=t[d];if(r)var g=o?r(h,m,d,t,e,a):r(m,h,d,e,t,a);if(g!==void 0){if(g)continue;f=!1;break}if(p){if(!arraySome(t,function(e,t){if(!cacheHas(p,t)&&(m===e||i(m,e,n,r,a)))return p.push(t)})){f=!1;break}}else if(!(m===h||i(m,h,n,r,a))){f=!1;break}}return a.delete(e),a.delete(t),f}function mapToArray(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}function setToArray(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}var Nt=1,Pt=2,Ft=`[object Boolean]`,It=`[object Date]`,Lt=`[object Error]`,Rt=`[object Map]`,zt=`[object Number]`,Bt=`[object RegExp]`,Vt=`[object Set]`,Ht=`[object String]`,Ut=`[object Symbol]`,Wt=`[object ArrayBuffer]`,Gt=`[object DataView]`,Kt=r?r.prototype:void 0,Z=Kt?Kt.valueOf:void 0;function equalByTag(e,t,n,r,i,a,o){switch(n){case Gt:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Wt:return!(e.byteLength!=t.byteLength||!a(new X(e),new X(t)));case Ft:case It:case zt:return eq(+e,+t);case Lt:return e.name==t.name&&e.message==t.message;case Bt:case Ht:return e==t+``;case Rt:var s=mapToArray;case Vt:var c=r&Nt;if(s||=setToArray,e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;r|=Pt,o.set(e,t);var u=equalArrays(s(e),s(t),r,i,a,o);return o.delete(e),u;case Ut:if(Z)return Z.call(e)==Z.call(t)}return!1}var qt=1,Jt=Object.prototype.hasOwnProperty;function equalObjects(e,t,n,r,i,a){var o=n&qt,s=getAllKeys(e),c=s.length;if(c!=getAllKeys(t).length&&!o)return!1;for(var l=c;l--;){var u=s[l];if(!(o?u in t:Jt.call(t,u)))return!1}var d=a.get(e),f=a.get(t);if(d&&f)return d==t&&f==e;var p=!0;a.set(e,t),a.set(t,e);for(var m=o;++l<c;){u=s[l];var h=e[u],g=t[u];if(r)var _=o?r(g,h,u,t,e,a):r(h,g,u,e,t,a);if(!(_===void 0?h===g||i(h,g,n,r,a):_)){p=!1;break}m||=u==`constructor`}if(p&&!m){var v=e.constructor,y=t.constructor;v!=y&&`constructor`in e&&`constructor`in t&&!(typeof v==`function`&&v instanceof v&&typeof y==`function`&&y instanceof y)&&(p=!1)}return a.delete(e),a.delete(t),p}var Yt=1,Xt=`[object Arguments]`,Zt=`[object Array]`,Q=`[object Object]`,Qt=Object.prototype.hasOwnProperty;function baseIsEqualDeep(e,t,n,r,i,a){var o=p(e),s=p(t),c=o?Zt:Y(e),l=s?Zt:Y(t);c=c==Xt?Q:c,l=l==Xt?Q:l;var u=c==Q,d=l==Q,f=c==l;if(f&&O(e)){if(!O(t))return!1;o=!0,u=!1}if(f&&!u)return a||=new Stack,o||F(e)?equalArrays(e,t,n,r,i,a):equalByTag(e,t,c,n,r,i,a);if(!(n&Yt)){var m=u&&Qt.call(e,`__wrapped__`),h=d&&Qt.call(t,`__wrapped__`);if(m||h){var g=m?e.value():e,_=h?t.value():t;return a||=new Stack,i(g,_,n,r,a)}}return f?(a||=new Stack,equalObjects(e,t,n,r,i,a)):!1}function baseIsEqual(e,t,n,r,i){return e===t?!0:e==null||t==null||!isObjectLike(e)&&!isObjectLike(t)?e!==e&&t!==t:baseIsEqualDeep(e,t,n,r,baseIsEqual,i)}var $t=1,en=2;function baseIsMatch(e,t,n,r){var i=n.length,a=i,o=!r;if(e==null)return!a;for(e=Object(e);i--;){var s=n[i];if(o&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++i<a;){s=n[i];var c=s[0],l=e[c],u=s[1];if(o&&s[2]){if(l===void 0&&!(c in e))return!1}else{var d=new Stack;if(r)var f=r(l,u,c,e,t,d);if(!(f===void 0?baseIsEqual(u,l,$t|en,r,d):f))return!1}}return!0}function isStrictComparable(e){return e===e&&!isObject(e)}function getMatchData(e){for(var t=keys(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,isStrictComparable(i)]}return t}function matchesStrictComparable(e,t){return function(n){return n!=null&&n[e]===t&&(t!==void 0||e in Object(n))}}function baseMatches(e){var t=getMatchData(e);return t.length==1&&t[0][2]?matchesStrictComparable(t[0][0],t[0][1]):function(n){return n===e||baseIsMatch(n,e,t)}}function baseHasIn(e,t){return e!=null&&t in Object(e)}function hasPath(e,t,n){t=castPath(t,e);for(var r=-1,i=t.length,a=!1;++r<i;){var o=toKey(t[r]);if(!(a=e!=null&&n(e,o)))break;e=e[o]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&isLength(i)&&isIndex(o,i)&&(p(e)||E(e)))}function hasIn(e,t){return e!=null&&hasPath(e,t,baseHasIn)}var tn=1,nn=2;function baseMatchesProperty(e,t){return isKey(e)&&isStrictComparable(t)?matchesStrictComparable(toKey(e),t):function(n){var r=get(n,e);return r===void 0&&r===t?hasIn(n,e):baseIsEqual(t,r,tn|nn)}}function baseProperty(e){return function(t){return t?.[e]}}function basePropertyDeep(e){return function(t){return baseGet(t,e)}}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}function baseIteratee(e){return typeof e==`function`?e:e==null?identity:typeof e==`object`?p(e)?baseMatchesProperty(e[0],e[1]):baseMatches(e):property(e)}function createBaseFor(e){return function(t,n,r){for(var i=-1,a=Object(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(n(a[c],c,a)===!1)break}return t}}var rn=createBaseFor();function baseForOwn(e,t){return e&&rn(e,t,keys)}function createBaseEach(e,t){return function(n,r){if(n==null)return n;if(!isArrayLike(n))return e(n,r);for(var i=n.length,a=t?i:-1,o=Object(n);(t?a--:++a<i)&&r(o[a],a,o)!==!1;);return n}}var $=createBaseEach(baseForOwn);function castFunction(e){return typeof e==`function`?e:identity}function forEach(e,t){return(p(e)?arrayEach:$)(e,castFunction(t))}function arrayEvery(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function baseEvery(e,t){var n=!0;return $(e,function(e,r,i){return n=!!t(e,r,i),n}),n}function every(e,t,n){var r=p(e)?arrayEvery:baseEvery;return n&&isIterateeCall(e,t,n)&&(t=void 0),r(e,baseIteratee(t,3))}function baseMap(e,t){var n=-1,r=isArrayLike(e)?Array(e.length):[];return $(e,function(e,i,a){r[++n]=t(e,i,a)}),r}function map(e,t){return(p(e)?arrayMap:baseMap)(e,baseIteratee(t,3))}var an=`[object String]`;function isString(e){return typeof e==`string`||!p(e)&&isObjectLike(e)&&baseGetTag(e)==an}function baseValues(e,t){return arrayMap(t,function(t){return e[t]})}function values(e){return e==null?[]:baseValues(e,keys(e))}var on=Math.max;function includes(e,t,n,r){e=isArrayLike(e)?e:values(e),n=n&&!r?toInteger(n):0;var i=e.length;return n<0&&(n=on(i+n,0)),isString(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&baseIndexOf(e,t,n)>-1}var sn=`[object RegExp]`;function baseIsRegExp(e){return isObjectLike(e)&&baseGetTag(e)==sn}var cn=N&&N.isRegExp,ln=cn?baseUnary(cn):baseIsRegExp;function baseSet(e,t,n,r){if(!isObject(e))return e;t=castPath(t,e);for(var i=-1,a=t.length,o=a-1,s=e;s!=null&&++i<a;){var c=toKey(t[i]),l=n;if(c===`__proto__`||c===`constructor`||c===`prototype`)return e;if(i!=o){var u=s[c];l=r?r(u,c,s):void 0,l===void 0&&(l=isObject(u)?u:isIndex(t[i+1])?[]:{})}assignValue(s,c,l),s=s[c]}return e}function basePickBy(e,t,n){for(var r=-1,i=t.length,a={};++r<i;){var o=t[r],s=baseGet(e,o);n(s,o)&&baseSet(a,castPath(o,e),s)}return a}function pickBy(e,t){if(e==null)return{};var n=arrayMap(getAllKeysIn(e),function(e){return[e]});return t=baseIteratee(t),basePickBy(e,n,function(e,n){return t(e,n[0])})}function baseSome(e,t){var n;return $(e,function(e,r,i){return n=t(e,r,i),!n}),!!n}function some(e,t,n){var r=p(e)?arraySome:baseSome;return n&&isIterateeCall(e,t,n)&&(t=void 0),r(e,baseIteratee(t,3))}function tokenLabel(e){return hasTokenLabel(e)?e.LABEL:e.name}function hasTokenLabel(e){return isString(e.LABEL)&&e.LABEL!==``}var AbstractProduction=class{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),forEach(this.definition,t=>{t.accept(e)})}},NonTerminal=class extends AbstractProduction{constructor(e){super([]),this.idx=1,I(this,pickBy(e,e=>e!==void 0))}set definition(e){}get definition(){return this.referencedRule===void 0?[]:this.referencedRule.definition}accept(e){e.visit(this)}},Rule=class extends AbstractProduction{constructor(e){super(e.definition),this.orgText=``,I(this,pickBy(e,e=>e!==void 0))}},Alternative=class extends AbstractProduction{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,I(this,pickBy(e,e=>e!==void 0))}},Option=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,I(this,pickBy(e,e=>e!==void 0))}},RepetitionMandatory=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,I(this,pickBy(e,e=>e!==void 0))}},RepetitionMandatoryWithSeparator=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,I(this,pickBy(e,e=>e!==void 0))}},Repetition=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,I(this,pickBy(e,e=>e!==void 0))}},RepetitionWithSeparator=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,I(this,pickBy(e,e=>e!==void 0))}},Alternation=class extends AbstractProduction{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,I(this,pickBy(e,e=>e!==void 0))}},Terminal=class{constructor(e){this.idx=1,I(this,pickBy(e,e=>e!==void 0))}accept(e){e.visit(this)}};function serializeGrammar(e){return map(e,serializeProduction)}function serializeProduction(e){function convertDefinition(e){return map(e,serializeProduction)}if(e instanceof NonTerminal){let t={type:`NonTerminal`,name:e.nonTerminalName,idx:e.idx};return isString(e.label)&&(t.label=e.label),t}if(e instanceof Alternative)return{type:`Alternative`,definition:convertDefinition(e.definition)};if(e instanceof Option)return{type:`Option`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof RepetitionMandatory)return{type:`RepetitionMandatory`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof RepetitionMandatoryWithSeparator)return{type:`RepetitionMandatoryWithSeparator`,idx:e.idx,separator:serializeProduction(new Terminal({terminalType:e.separator})),definition:convertDefinition(e.definition)};if(e instanceof RepetitionWithSeparator)return{type:`RepetitionWithSeparator`,idx:e.idx,separator:serializeProduction(new Terminal({terminalType:e.separator})),definition:convertDefinition(e.definition)};if(e instanceof Repetition)return{type:`Repetition`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof Alternation)return{type:`Alternation`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof Terminal){let t={type:`Terminal`,name:e.terminalType.name,label:tokenLabel(e.terminalType),idx:e.idx};isString(e.label)&&(t.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=ln(n)?n.source:n),t}if(e instanceof Rule)return{type:`Rule`,name:e.name,orgText:e.orgText,definition:convertDefinition(e.definition)};throw Error(`non exhaustive match`)}var GAstVisitor=class{visit(e){let t=e;switch(t.constructor){case NonTerminal:return this.visitNonTerminal(t);case Alternative:return this.visitAlternative(t);case Option:return this.visitOption(t);case RepetitionMandatory:return this.visitRepetitionMandatory(t);case RepetitionMandatoryWithSeparator:return this.visitRepetitionMandatoryWithSeparator(t);case RepetitionWithSeparator:return this.visitRepetitionWithSeparator(t);case Repetition:return this.visitRepetition(t);case Alternation:return this.visitAlternation(t);case Terminal:return this.visitTerminal(t);case Rule:return this.visitRule(t);default:throw Error(`non exhaustive match`)}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}};function isSequenceProd(e){return e instanceof Alternative||e instanceof Option||e instanceof Repetition||e instanceof RepetitionMandatory||e instanceof RepetitionMandatoryWithSeparator||e instanceof RepetitionWithSeparator||e instanceof Terminal||e instanceof Rule}function isOptionalProd(e,t=[]){return e instanceof Option||e instanceof Repetition||e instanceof RepetitionWithSeparator?!0:e instanceof Alternation?some(e.definition,e=>isOptionalProd(e,t)):e instanceof NonTerminal&&includes(t,e)?!1:e instanceof AbstractProduction&&(e instanceof NonTerminal&&t.push(e),every(e.definition,e=>isOptionalProd(e,t)))}function isBranchingProd(e){return e instanceof Alternation}function getProductionDslName(e){if(e instanceof NonTerminal)return`SUBRULE`;if(e instanceof Option)return`OPTION`;if(e instanceof Alternation)return`OR`;if(e instanceof RepetitionMandatory)return`AT_LEAST_ONE`;if(e instanceof RepetitionMandatoryWithSeparator)return`AT_LEAST_ONE_SEP`;if(e instanceof RepetitionWithSeparator)return`MANY_SEP`;if(e instanceof Repetition)return`MANY`;if(e instanceof Terminal)return`CONSUME`;throw Error(`non exhaustive match`)}export{isIterateeCall as $,cacheHas as A,Stack as B,map as C,baseIteratee as D,$ as E,getAllKeysIn as F,keys as G,arrayPush as H,getAllKeys as I,N as J,baseKeys as K,B as L,X as M,Y as N,hasPath as O,U as P,isPrototype as Q,z as R,isString as S,forEach as T,keysIn as U,bt as V,I as W,O as X,baseUnary as Y,E as Z,some as _,n as _t,GAstVisitor as a,baseAssignValue as at,includes as b,NonTerminal as c,arrayEach as ct,RepetitionMandatory as d,toInteger as dt,isArrayLike as et,RepetitionMandatoryWithSeparator as f,isObject as ft,serializeGrammar as g,r as gt,Terminal as h,isObjectLike as ht,isSequenceProd as i,eq as it,SetCache as j,setToArray as k,Option as l,isFunction as lt,Rule as m,arrayMap as mt,isBranchingProd as n,copyObject as nt,Alternation as o,baseIndexOf as ot,RepetitionWithSeparator as p,p as pt,F as q,isOptionalProd as r,assignValue as rt,Alternative as s,baseFindIndex as st,getProductionDslName as t,baseRest as tt,Repetition as u,identity as ut,pickBy as v,every as w,values as x,ln as y,arrayFilter as z};
|
|
1
|
+
import"../../rolldown-runtime.mjs";function tokenLabel(e){return hasTokenLabel(e)?e.LABEL:e.name}function hasTokenLabel(e){return typeof e.LABEL==`string`&&e.LABEL!==``}var AbstractProduction=class{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),this.definition.forEach(t=>{t.accept(e)})}},NonTerminal=class extends AbstractProduction{constructor(e){super([]),this.idx=1,Object.assign(this,pickOnlyDefined(e))}set definition(e){}get definition(){return this.referencedRule===void 0?[]:this.referencedRule.definition}accept(e){e.visit(this)}},Rule=class extends AbstractProduction{constructor(e){super(e.definition),this.orgText=``,Object.assign(this,pickOnlyDefined(e))}},Alternative=class extends AbstractProduction{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Object.assign(this,pickOnlyDefined(e))}},Option=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,Object.assign(this,pickOnlyDefined(e))}},RepetitionMandatory=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,Object.assign(this,pickOnlyDefined(e))}},RepetitionMandatoryWithSeparator=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,Object.assign(this,pickOnlyDefined(e))}},Repetition=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,Object.assign(this,pickOnlyDefined(e))}},RepetitionWithSeparator=class extends AbstractProduction{constructor(e){super(e.definition),this.idx=1,Object.assign(this,pickOnlyDefined(e))}},Alternation=class extends AbstractProduction{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Object.assign(this,pickOnlyDefined(e))}},Terminal=class{constructor(e){this.idx=1,Object.assign(this,pickOnlyDefined(e))}accept(e){e.visit(this)}};function serializeGrammar(e){return e.map(serializeProduction)}function serializeProduction(e){function convertDefinition(e){return e.map(serializeProduction)}
|
|
2
|
+
/* istanbul ignore else */
|
|
3
|
+
if(e instanceof NonTerminal){let t={type:`NonTerminal`,name:e.nonTerminalName,idx:e.idx};return typeof e.label==`string`&&(t.label=e.label),t}if(e instanceof Alternative)return{type:`Alternative`,definition:convertDefinition(e.definition)};if(e instanceof Option)return{type:`Option`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof RepetitionMandatory)return{type:`RepetitionMandatory`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof RepetitionMandatoryWithSeparator)return{type:`RepetitionMandatoryWithSeparator`,idx:e.idx,separator:serializeProduction(new Terminal({terminalType:e.separator})),definition:convertDefinition(e.definition)};if(e instanceof RepetitionWithSeparator)return{type:`RepetitionWithSeparator`,idx:e.idx,separator:serializeProduction(new Terminal({terminalType:e.separator})),definition:convertDefinition(e.definition)};if(e instanceof Repetition)return{type:`Repetition`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof Alternation)return{type:`Alternation`,idx:e.idx,definition:convertDefinition(e.definition)};if(e instanceof Terminal){let t={type:`Terminal`,name:e.terminalType.name,label:tokenLabel(e.terminalType),idx:e.idx};typeof e.label==`string`&&(t.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=n instanceof RegExp?n.source:n),t}if(e instanceof Rule)return{type:`Rule`,name:e.name,orgText:e.orgText,definition:convertDefinition(e.definition)};throw Error(`non exhaustive match`)}function pickOnlyDefined(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}var GAstVisitor=class{visit(e){let t=e;switch(t.constructor){case NonTerminal:return this.visitNonTerminal(t);case Alternative:return this.visitAlternative(t);case Option:return this.visitOption(t);case RepetitionMandatory:return this.visitRepetitionMandatory(t);case RepetitionMandatoryWithSeparator:return this.visitRepetitionMandatoryWithSeparator(t);case RepetitionWithSeparator:return this.visitRepetitionWithSeparator(t);case Repetition:return this.visitRepetition(t);case Alternation:return this.visitAlternation(t);case Terminal:return this.visitTerminal(t);case Rule:return this.visitRule(t);
|
|
4
|
+
/* c8 ignore next 2 */
|
|
5
|
+
default:throw Error(`non exhaustive match`)}}
|
|
6
|
+
/* c8 ignore next */
|
|
7
|
+
visitNonTerminal(e){}
|
|
8
|
+
/* c8 ignore next */
|
|
9
|
+
visitAlternative(e){}
|
|
10
|
+
/* c8 ignore next */
|
|
11
|
+
visitOption(e){}
|
|
12
|
+
/* c8 ignore next */
|
|
13
|
+
visitRepetition(e){}
|
|
14
|
+
/* c8 ignore next */
|
|
15
|
+
visitRepetitionMandatory(e){}
|
|
16
|
+
/* c8 ignore next 3 */
|
|
17
|
+
visitRepetitionMandatoryWithSeparator(e){}
|
|
18
|
+
/* c8 ignore next */
|
|
19
|
+
visitRepetitionWithSeparator(e){}
|
|
20
|
+
/* c8 ignore next */
|
|
21
|
+
visitAlternation(e){}
|
|
22
|
+
/* c8 ignore next */
|
|
23
|
+
visitTerminal(e){}
|
|
24
|
+
/* c8 ignore next */
|
|
25
|
+
visitRule(e){}};function isSequenceProd(e){return e instanceof Alternative||e instanceof Option||e instanceof Repetition||e instanceof RepetitionMandatory||e instanceof RepetitionMandatoryWithSeparator||e instanceof RepetitionWithSeparator||e instanceof Terminal||e instanceof Rule}function isOptionalProd(e,t=[]){return e instanceof Option||e instanceof Repetition||e instanceof RepetitionWithSeparator?!0:e instanceof Alternation?e.definition.some(e=>isOptionalProd(e,t)):e instanceof NonTerminal&&t.includes(e)?!1:e instanceof AbstractProduction&&(e instanceof NonTerminal&&t.push(e),e.definition.every(e=>isOptionalProd(e,t)))}function isBranchingProd(e){return e instanceof Alternation}function getProductionDslName(e){
|
|
26
|
+
/* istanbul ignore else */
|
|
27
|
+
if(e instanceof NonTerminal)return`SUBRULE`;if(e instanceof Option)return`OPTION`;if(e instanceof Alternation)return`OR`;if(e instanceof RepetitionMandatory)return`AT_LEAST_ONE`;if(e instanceof RepetitionMandatoryWithSeparator)return`AT_LEAST_ONE_SEP`;if(e instanceof RepetitionWithSeparator)return`MANY_SEP`;if(e instanceof Repetition)return`MANY`;if(e instanceof Terminal)return`CONSUME`;throw Error(`non exhaustive match`)}export{GAstVisitor as a,NonTerminal as c,RepetitionMandatory as d,RepetitionMandatoryWithSeparator as f,serializeGrammar as g,Terminal as h,isSequenceProd as i,Option as l,Rule as m,isBranchingProd as n,Alternation as o,RepetitionWithSeparator as p,isOptionalProd as r,Alternative as s,getProductionDslName as t,Repetition as u};
|
|
@@ -1,9 +1,81 @@
|
|
|
1
|
-
import"../../rolldown-runtime.mjs";function cc(e){return e.charCodeAt(0)}function insertToSet(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}function addFlag(e,t){if(e[t]===!0)throw`duplicate flag `+t;e[t],e[t]=!0}function ASSERT_EXISTS(e){
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import"../../rolldown-runtime.mjs";function cc(e){return e.charCodeAt(0)}function insertToSet(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}function addFlag(e,t){if(e[t]===!0)throw`duplicate flag `+t;e[t],e[t]=!0}function ASSERT_EXISTS(e){
|
|
2
|
+
// istanbul ignore next
|
|
3
|
+
if(e===void 0)throw Error(`Internal Error - Should never get here!`);return!0}
|
|
4
|
+
// istanbul ignore next
|
|
5
|
+
function ASSERT_NEVER_REACH_HERE(){throw Error(`Internal Error - Should never get here!`)}function isCharacter(e){return e.type===`Character`}const e=[];for(let t=cc(`0`);t<=cc(`9`);t++)e.push(t);const t=[cc(`_`)].concat(e);for(let e=cc(`a`);e<=cc(`z`);e++)t.push(e);for(let e=cc(`A`);e<=cc(`Z`);e++)t.push(e);const n=[cc(` `),cc(`\f`),cc(`
|
|
6
|
+
`),cc(`\r`),cc(` `),cc(`\v`),cc(` `),cc(`\xA0`),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(` `),cc(`\u2028`),cc(`\u2029`),cc(` `),cc(` `),cc(` `),cc(``)],r=/[0-9a-fA-F]/,i=/[0-9]/,a=/[1-9]/;var RegExpParser=class{constructor(){this.idx=0,this.input=``,this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar(`/`);let t=this.disjunction();this.consumeChar(`/`);let n={type:`Flags`,loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case`g`:addFlag(n,`global`);break;case`i`:addFlag(n,`ignoreCase`);break;case`m`:addFlag(n,`multiLine`);break;case`u`:addFlag(n,`unicode`);break;case`y`:addFlag(n,`sticky`)}if(this.idx!==this.input.length)throw Error(`Redundant input: `+this.input.substring(this.idx));return{type:`Pattern`,flags:n,value:t,loc:this.loc(0)}}disjunction(){let e=[],t=this.idx;for(e.push(this.alternative());this.peekChar()===`|`;)this.consumeChar(`|`),e.push(this.alternative());return{type:`Disjunction`,value:e,loc:this.loc(t)}}alternative(){let e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:`Alternative`,value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case`^`:return{type:`StartAnchor`,loc:this.loc(e)};case`$`:return{type:`EndAnchor`,loc:this.loc(e)};case`\\`:switch(this.popChar()){case`b`:return{type:`WordBoundary`,loc:this.loc(e)};case`B`:return{type:`NonWordBoundary`,loc:this.loc(e)}}
|
|
7
|
+
/* c8 ignore next */
|
|
8
|
+
throw Error(`Invalid Assertion Escape`);case`(`:this.consumeChar(`?`);let t;switch(this.popChar()){case`=`:t=`Lookahead`;break;case`!`:t=`NegativeLookahead`;break;case`<`:switch(this.popChar()){case`=`:t=`Lookbehind`;break;case`!`:t=`NegativeLookbehind`}}ASSERT_EXISTS(t);let n=this.disjunction();return this.consumeChar(`)`),{type:t,value:n,loc:this.loc(e)}}
|
|
9
|
+
// istanbul ignore next
|
|
10
|
+
return ASSERT_NEVER_REACH_HERE()}quantifier(e=!1){let t,n=this.idx;switch(this.popChar()){case`*`:t={atLeast:0,atMost:1/0};break;case`+`:t={atLeast:1,atMost:1/0};break;case`?`:t={atLeast:0,atMost:1};break;case`{`:let n=this.integerIncludingZero();switch(this.popChar()){case`}`:t={atLeast:n,atMost:n};break;case`,`:let e;this.isDigit()?(e=this.integerIncludingZero(),t={atLeast:n,atMost:e}):t={atLeast:n,atMost:1/0},this.consumeChar(`}`)}if(e===!0&&t===void 0)return;ASSERT_EXISTS(t)}if((e!==!0||t!==void 0)&&ASSERT_EXISTS(t))return this.peekChar(0)===`?`?(this.consumeChar(`?`),t.greedy=!1):t.greedy=!0,t.type=`Quantifier`,t.loc=this.loc(n),t}atom(){let e,t=this.idx;switch(this.peekChar()){case`.`:e=this.dotAll();break;case`\\`:e=this.atomEscape();break;case`[`:e=this.characterClass();break;case`(`:e=this.group()}
|
|
11
|
+
// istanbul ignore next
|
|
12
|
+
return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),ASSERT_EXISTS(e)?(e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):ASSERT_NEVER_REACH_HERE()}dotAll(){return this.consumeChar(`.`),{type:`Set`,complement:!0,value:[cc(`
|
|
13
|
+
`),cc(`\r`),cc(`\u2028`),cc(`\u2029`)]}}atomEscape(){switch(this.consumeChar(`\\`),this.peekChar()){case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:return this.decimalEscapeAtom();case`d`:case`D`:case`s`:case`S`:case`w`:case`W`:return this.characterClassEscape();case`f`:case`n`:case`r`:case`t`:case`v`:return this.controlEscapeAtom();case`c`:return this.controlLetterEscapeAtom();case`0`:return this.nulCharacterAtom();case`x`:return this.hexEscapeSequenceAtom();case`u`:return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:`GroupBackReference`,value:this.positiveInteger()}}characterClassEscape(){let r,i=!1;switch(this.popChar()){case`d`:r=e;break;case`D`:r=e,i=!0;break;case`s`:r=n;break;case`S`:r=n,i=!0;break;case`w`:r=t;break;case`W`:r=t,i=!0}
|
|
14
|
+
// istanbul ignore next
|
|
15
|
+
return ASSERT_EXISTS(r)?{type:`Set`,value:r,complement:i}:ASSERT_NEVER_REACH_HERE()}controlEscapeAtom(){let e;switch(this.popChar()){case`f`:e=cc(`\f`);break;case`n`:e=cc(`
|
|
16
|
+
`);break;case`r`:e=cc(`\r`);break;case`t`:e=cc(` `);break;case`v`:e=cc(`\v`)}
|
|
17
|
+
// istanbul ignore next
|
|
18
|
+
return ASSERT_EXISTS(e)?{type:`Character`,value:e}:ASSERT_NEVER_REACH_HERE()}controlLetterEscapeAtom(){this.consumeChar(`c`);let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error(`Invalid `);return{type:`Character`,value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar(`0`),{type:`Character`,value:cc(`\0`)}}hexEscapeSequenceAtom(){return this.consumeChar(`x`),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar(`u`),this.parseHexDigits(4)}identityEscapeAtom(){return{type:`Character`,value:cc(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){
|
|
19
|
+
// istanbul ignore next
|
|
20
|
+
case`
|
|
21
|
+
`:
|
|
22
|
+
// istanbul ignore next
|
|
23
|
+
case`\r`:
|
|
24
|
+
// istanbul ignore next
|
|
25
|
+
case`\u2028`:
|
|
26
|
+
// istanbul ignore next
|
|
27
|
+
case`\u2029`:
|
|
28
|
+
// istanbul ignore next
|
|
29
|
+
case`\\`:
|
|
30
|
+
// istanbul ignore next
|
|
31
|
+
case`]`:throw Error(`TBD`);default:return{type:`Character`,value:cc(this.popChar())}}}characterClass(){let e=[],t=!1;for(this.consumeChar(`[`),this.peekChar(0)===`^`&&(this.consumeChar(`^`),t=!0);this.isClassAtom();){let t=this.classAtom();if(t.type,isCharacter(t)&&this.isRangeDash()){this.consumeChar(`-`);let n=this.classAtom();if(n.type,isCharacter(n)){if(n.value<t.value)throw Error(`Range out of order in character class`);e.push({from:t.value,to:n.value})}else insertToSet(t.value,e),e.push(cc(`-`)),insertToSet(n.value,e)}else insertToSet(t.value,e)}return this.consumeChar(`]`),{type:`Set`,complement:t,value:e}}classAtom(){switch(this.peekChar()){
|
|
32
|
+
// istanbul ignore next
|
|
33
|
+
case`]`:
|
|
34
|
+
// istanbul ignore next
|
|
35
|
+
case`
|
|
36
|
+
`:
|
|
37
|
+
// istanbul ignore next
|
|
38
|
+
case`\r`:
|
|
39
|
+
// istanbul ignore next
|
|
40
|
+
case`\u2028`:
|
|
41
|
+
// istanbul ignore next
|
|
42
|
+
case`\u2029`:throw Error(`TBD`);case`\\`:return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar(`\\`),this.peekChar()){case`b`:return this.consumeChar(`b`),{type:`Character`,value:cc(`\b`)};case`d`:case`D`:case`s`:case`S`:case`w`:case`W`:return this.characterClassEscape();case`f`:case`n`:case`r`:case`t`:case`v`:return this.controlEscapeAtom();case`c`:return this.controlLetterEscapeAtom();case`0`:return this.nulCharacterAtom();case`x`:return this.hexEscapeSequenceAtom();case`u`:return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;switch(this.consumeChar(`(`),this.peekChar(0)){case`?`:this.consumeChar(`?`),this.consumeChar(`:`),e=!1;break;default:this.groupIdx++}let t=this.disjunction();this.consumeChar(`)`);let n={type:`Group`,capturing:e,value:t};return e&&(n.idx=this.groupIdx),n}positiveInteger(){let e=this.popChar();
|
|
43
|
+
// istanbul ignore next - can't ever get here due to previous lookahead checks
|
|
44
|
+
if(a.test(e)===!1)throw Error(`Expecting a positive integer`);for(;i.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(i.test(e)===!1)throw Error(`Expecting an integer`);for(;i.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){
|
|
45
|
+
// istanbul ignore next
|
|
46
|
+
case`
|
|
47
|
+
`:
|
|
48
|
+
// istanbul ignore next
|
|
49
|
+
case`\r`:
|
|
50
|
+
// istanbul ignore next
|
|
51
|
+
case`\u2028`:
|
|
52
|
+
// istanbul ignore next
|
|
53
|
+
case`\u2029`:
|
|
54
|
+
// istanbul ignore next
|
|
55
|
+
case`^`:
|
|
56
|
+
// istanbul ignore next
|
|
57
|
+
case`$`:
|
|
58
|
+
// istanbul ignore next
|
|
59
|
+
case`\\`:
|
|
60
|
+
// istanbul ignore next
|
|
61
|
+
case`.`:
|
|
62
|
+
// istanbul ignore next
|
|
63
|
+
case`*`:
|
|
64
|
+
// istanbul ignore next
|
|
65
|
+
case`+`:
|
|
66
|
+
// istanbul ignore next
|
|
67
|
+
case`?`:
|
|
68
|
+
// istanbul ignore next
|
|
69
|
+
case`(`:
|
|
70
|
+
// istanbul ignore next
|
|
71
|
+
case`)`:
|
|
72
|
+
// istanbul ignore next
|
|
73
|
+
case`[`:
|
|
74
|
+
// istanbul ignore next
|
|
75
|
+
case`|`:
|
|
76
|
+
// istanbul ignore next
|
|
77
|
+
throw Error(`TBD`);default:return{type:`Character`,value:cc(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case`g`:case`i`:case`m`:case`u`:case`y`:return!0;default:return!1}}isRangeDash(){return this.peekChar()===`-`&&this.isClassAtom(1)}isDigit(){return i.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case`]`:case`
|
|
78
|
+
`:case`\r`:case`\u2028`:case`\u2029`:return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case`.`:case`\\`:case`[`:case`(`:return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case`^`:case`$`:return!0;case`\\`:switch(this.peekChar(1)){case`b`:case`B`:return!0;default:return!1}case`(`:return this.peekChar(1)===`?`&&(this.peekChar(2)===`=`||this.peekChar(2)===`!`||this.peekChar(2)===`<`&&(this.peekChar(3)===`=`||this.peekChar(3)===`!`));default:return!1}}isQuantifier(){let e=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case`^`:case`$`:case`\\`:case`.`:case`*`:case`+`:case`?`:case`(`:case`)`:case`[`:case`|`:case`/`:case`
|
|
79
|
+
`:case`\r`:case`\u2028`:case`\u2029`:return!1;default:return!0}}parseHexDigits(e){let t=``;for(let n=0;n<e;n++){let e=this.popChar();if(r.test(e)===!1)throw Error(`Expecting a HexDecimal digits`);t+=e}return{type:`Character`,value:parseInt(t,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){let e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(e!==void 0&&this.input[this.idx]!==e)throw Error(`Expected: '`+e+`' but found: '`+this.input[this.idx]+`' at offset: `+this.idx);if(this.idx>=this.input.length)throw Error(`Unexpected end of input`);this.idx++}loc(e){return{begin:e,end:this.idx}}},BaseRegExpVisitor=class{visitChildren(e){for(let t in e){let n=e[t];
|
|
80
|
+
/* istanbul ignore else */
|
|
81
|
+
e.hasOwnProperty(t)&&(n.type===void 0?Array.isArray(n)&&n.forEach(e=>{this.visit(e)},this):this.visit(n))}}visit(e){switch(e.type){case`Pattern`:this.visitPattern(e);break;case`Flags`:this.visitFlags(e);break;case`Disjunction`:this.visitDisjunction(e);break;case`Alternative`:this.visitAlternative(e);break;case`StartAnchor`:this.visitStartAnchor(e);break;case`EndAnchor`:this.visitEndAnchor(e);break;case`WordBoundary`:this.visitWordBoundary(e);break;case`NonWordBoundary`:this.visitNonWordBoundary(e);break;case`Lookahead`:this.visitLookahead(e);break;case`NegativeLookahead`:this.visitNegativeLookahead(e);break;case`Lookbehind`:this.visitLookbehind(e);break;case`NegativeLookbehind`:this.visitNegativeLookbehind(e);break;case`Character`:this.visitCharacter(e);break;case`Set`:this.visitSet(e);break;case`Group`:this.visitGroup(e);break;case`GroupBackReference`:this.visitGroupBackReference(e);break;case`Quantifier`:this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}};export{RegExpParser as n,BaseRegExpVisitor as t};
|