@tmagic/utils 1.2.0-beta.9 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -96,6 +96,7 @@ const createDiv = ({ className, cssText }) => {
96
96
  el.style.cssText = cssText;
97
97
  return el;
98
98
  };
99
+ const getDocument = () => globalThis.document;
99
100
 
100
101
  dayjs.extend(utc);
101
102
  const sleep = (ms) => new Promise((resolve) => {
@@ -164,7 +165,7 @@ const getUrlParam = (param, url) => {
164
165
  }
165
166
  return "";
166
167
  };
167
- const isPop = (node) => Boolean(node.type?.toLowerCase().endsWith("pop"));
168
+ const isPop = (node) => Boolean(node?.type?.toLowerCase().endsWith("pop"));
168
169
  const isPage = (node) => {
169
170
  if (!node)
170
171
  return false;
@@ -179,5 +180,5 @@ const isSameDomain = (targetUrl = "", source = globalThis.location.host) => {
179
180
  return getHost(targetUrl) === source;
180
181
  };
181
182
 
182
- export { addClassName, asyncLoadCss, asyncLoadJs, createDiv, datetimeFormatter, emptyFn, filterXSS, getHost, getNodePath, getUrlParam, injectStyle, isNumber, isPage, isPop, isSameDomain, removeClassName, removeClassNameByClassName, sleep, toHump, toLine };
183
- //# sourceMappingURL=tmagic-utils.mjs.map
183
+ export { addClassName, asyncLoadCss, asyncLoadJs, createDiv, datetimeFormatter, emptyFn, filterXSS, getDocument, getHost, getNodePath, getUrlParam, injectStyle, isNumber, isPage, isPop, isSameDomain, removeClassName, removeClassNameByClassName, sleep, toHump, toLine };
184
+ //# sourceMappingURL=tmagic-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tmagic-utils.js","sources":["../src/dom.ts","../src/index.ts"],"sourcesContent":["export const asyncLoadJs = (() => {\n // 正在加载或加载成功的存入此Map中\n const documentMap = new Map();\n\n return (url: string, crossOrigin?: string, document = globalThis.document) => {\n let loaded = documentMap.get(document);\n if (!loaded) {\n loaded = new Map();\n documentMap.set(document, loaded);\n }\n\n // 正在加载或已经加载成功的,直接返回\n if (loaded.get(url)) return loaded.get(url);\n\n const load = new Promise<void>((resolve, reject) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n if (crossOrigin) {\n script.crossOrigin = crossOrigin;\n }\n script.src = url;\n document.body.appendChild(script);\n script.onload = () => {\n resolve();\n };\n script.onerror = () => {\n reject(new Error('加载失败'));\n };\n setTimeout(() => {\n reject(new Error('timeout'));\n }, 60 * 1000);\n }).catch((err) => {\n // 加载失败的,从map中移除,第二次加载时,可以再次执行加载\n loaded.delete(url);\n throw err;\n });\n\n loaded.set(url, load);\n return loaded.get(url);\n };\n})();\n\nexport const asyncLoadCss = (() => {\n // 正在加载或加载成功的存入此Map中\n const documentMap = new Map();\n\n return (url: string, document = globalThis.document) => {\n let loaded = documentMap.get(document);\n if (!loaded) {\n loaded = new Map();\n documentMap.set(document, loaded);\n }\n\n // 正在加载或已经加载成功的,直接返回\n if (loaded.get(url)) return loaded.get(url);\n\n const load = new Promise<void>((resolve, reject) => {\n const node = document.createElement('link');\n node.rel = 'stylesheet';\n node.href = url;\n document.head.appendChild(node);\n node.onload = () => {\n resolve();\n };\n node.onerror = () => {\n reject(new Error('加载失败'));\n };\n setTimeout(() => {\n reject(new Error('timeout'));\n }, 60 * 1000);\n }).catch((err) => {\n // 加载失败的,从map中移除,第二次加载时,可以再次执行加载\n loaded.delete(url);\n throw err;\n });\n\n loaded.set(url, load);\n return loaded.get(url);\n };\n})();\n\nexport const addClassName = (el: Element, doc: Document, className: string) => {\n const oldEl = doc.querySelector(`.${className}`);\n if (oldEl && oldEl !== el) removeClassName(oldEl, className);\n if (!el.classList.contains(className)) el.classList.add(className);\n};\n\nexport const removeClassName = (el: Element, className: string) => {\n el.classList.remove(className);\n};\n\nexport const removeClassNameByClassName = (doc: Document, className: string) => {\n const el: HTMLElement | null = doc.querySelector(`.${className}`);\n el?.classList.remove(className);\n return el;\n};\n\nexport const injectStyle = (doc: Document, style: string) => {\n const styleEl = doc.createElement('style');\n styleEl.innerHTML = style;\n doc.head.appendChild(styleEl);\n return styleEl;\n};\n\nexport const createDiv = ({ className, cssText }: { className: string; cssText: string }) => {\n const el = globalThis.document.createElement('div');\n el.className = className;\n el.style.cssText = cssText;\n return el;\n};\n\nexport const getDocument = () => globalThis.document;\n","/*\n * Tencent is pleased to support the open source community by making TMagicEditor available.\n *\n * Copyright (C) 2023 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport dayjs from 'dayjs';\nimport utc from 'dayjs/plugin/utc';\n\nimport type { MComponent, MNode } from '@tmagic/schema';\nimport { NodeType } from '@tmagic/schema';\n\nexport * from './dom';\n\ndayjs.extend(utc);\n\nexport const sleep = (ms: number): Promise<void> =>\n new Promise((resolve) => {\n const timer = setTimeout(() => {\n clearTimeout(timer);\n resolve();\n }, ms);\n });\n\nexport const datetimeFormatter = (\n v: string | Date,\n defaultValue = '-',\n format = 'YYYY-MM-DD HH:mm:ss',\n): string | number => {\n if (v) {\n let time = null;\n if (['x', 'timestamp'].includes(format)) {\n time = dayjs(v).valueOf();\n } else if ((typeof v === 'string' && v.includes('Z')) || v.constructor === Date) {\n // UTC字符串时间或Date对象格式化为北京时间\n time = dayjs(v).utcOffset(8).format(format);\n } else {\n time = dayjs(v).format(format);\n }\n\n // 格式化为北京时间\n if (time !== 'Invalid Date') {\n return time;\n }\n return defaultValue;\n }\n return defaultValue;\n};\n\n// 驼峰转换横线\nexport const toLine = (name = '') => name.replace(/\\B([A-Z])/g, '-$1').toLowerCase();\n\nexport const toHump = (name = ''): string => name.replace(/-(\\w)/g, (all, letter) => letter.toUpperCase());\n\nexport const emptyFn = (): any => undefined;\n\n/**\n * 通过id获取组件在应用的子孙路径\n * @param {number | string} id 组件id\n * @param {Array} data 要查找的根容器节点\n * @return {Array} 组件在data中的子孙路径\n */\nexport const getNodePath = (id: number | string, data: MNode[] = []): MNode[] => {\n const path: MNode[] = [];\n\n const get = function (id: number | string, data: MNode[]): MNode | null {\n if (!Array.isArray(data)) {\n return null;\n }\n\n for (let i = 0, l = data.length; i < l; i++) {\n const item: any = data[i];\n\n path.push(item);\n if (`${item.id}` === `${id}`) {\n return item;\n }\n\n if (item.items) {\n const node = get(id, item.items);\n if (node) {\n return node;\n }\n }\n\n path.pop();\n }\n\n return null;\n };\n\n get(id, data);\n\n return path;\n};\n\nexport const filterXSS = (str: string) =>\n str.replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\"/g, '&quot;').replace(/'/g, '&apos;');\n\nexport const getUrlParam = (param: string, url?: string) => {\n const u = url || location.href;\n const reg = new RegExp(`[?&#]${param}=([^&#]+)`, 'gi');\n\n const matches = u.match(reg);\n let strArr;\n if (matches && matches.length > 0) {\n strArr = matches[matches.length - 1].split('=');\n if (strArr && strArr.length > 1) {\n // 过滤XSS字符\n return filterXSS(strArr[1]);\n }\n return '';\n }\n return '';\n};\n\nexport const isPop = (node: MComponent | null): boolean => Boolean(node?.type?.toLowerCase().endsWith('pop'));\n\nexport const isPage = (node?: MComponent | null): boolean => {\n if (!node) return false;\n return Boolean(node.type?.toLowerCase() === NodeType.PAGE);\n};\n\nexport const isNumber = (value: string) => /^(-?\\d+)(\\.\\d+)?$/.test(value);\n\nexport const getHost = (targetUrl: string) => targetUrl.match(/\\/\\/([^/]+)/)?.[1];\n\nexport const isSameDomain = (targetUrl = '', source = globalThis.location.host) => {\n const isHttpUrl = /^(http[s]?:)?\\/\\//.test(targetUrl);\n\n if (!isHttpUrl) return true;\n\n return getHost(targetUrl) === source;\n};\n"],"names":["id","data"],"mappings":"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"}
@@ -103,6 +103,7 @@
103
103
  el.style.cssText = cssText;
104
104
  return el;
105
105
  };
106
+ const getDocument = () => globalThis.document;
106
107
 
107
108
  dayjs__default.default.extend(utc__default.default);
108
109
  const sleep = (ms) => new Promise((resolve) => {
@@ -171,7 +172,7 @@
171
172
  }
172
173
  return "";
173
174
  };
174
- const isPop = (node) => Boolean(node.type?.toLowerCase().endsWith("pop"));
175
+ const isPop = (node) => Boolean(node?.type?.toLowerCase().endsWith("pop"));
175
176
  const isPage = (node) => {
176
177
  if (!node)
177
178
  return false;
@@ -193,6 +194,7 @@
193
194
  exports.datetimeFormatter = datetimeFormatter;
194
195
  exports.emptyFn = emptyFn;
195
196
  exports.filterXSS = filterXSS;
197
+ exports.getDocument = getDocument;
196
198
  exports.getHost = getHost;
197
199
  exports.getNodePath = getNodePath;
198
200
  exports.getUrlParam = getUrlParam;
@@ -210,4 +212,4 @@
210
212
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
211
213
 
212
214
  }));
213
- //# sourceMappingURL=tmagic-utils.umd.js.map
215
+ //# sourceMappingURL=tmagic-utils.umd.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tmagic-utils.umd.cjs","sources":["../src/dom.ts","../src/index.ts"],"sourcesContent":["export const asyncLoadJs = (() => {\n // 正在加载或加载成功的存入此Map中\n const documentMap = new Map();\n\n return (url: string, crossOrigin?: string, document = globalThis.document) => {\n let loaded = documentMap.get(document);\n if (!loaded) {\n loaded = new Map();\n documentMap.set(document, loaded);\n }\n\n // 正在加载或已经加载成功的,直接返回\n if (loaded.get(url)) return loaded.get(url);\n\n const load = new Promise<void>((resolve, reject) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n if (crossOrigin) {\n script.crossOrigin = crossOrigin;\n }\n script.src = url;\n document.body.appendChild(script);\n script.onload = () => {\n resolve();\n };\n script.onerror = () => {\n reject(new Error('加载失败'));\n };\n setTimeout(() => {\n reject(new Error('timeout'));\n }, 60 * 1000);\n }).catch((err) => {\n // 加载失败的,从map中移除,第二次加载时,可以再次执行加载\n loaded.delete(url);\n throw err;\n });\n\n loaded.set(url, load);\n return loaded.get(url);\n };\n})();\n\nexport const asyncLoadCss = (() => {\n // 正在加载或加载成功的存入此Map中\n const documentMap = new Map();\n\n return (url: string, document = globalThis.document) => {\n let loaded = documentMap.get(document);\n if (!loaded) {\n loaded = new Map();\n documentMap.set(document, loaded);\n }\n\n // 正在加载或已经加载成功的,直接返回\n if (loaded.get(url)) return loaded.get(url);\n\n const load = new Promise<void>((resolve, reject) => {\n const node = document.createElement('link');\n node.rel = 'stylesheet';\n node.href = url;\n document.head.appendChild(node);\n node.onload = () => {\n resolve();\n };\n node.onerror = () => {\n reject(new Error('加载失败'));\n };\n setTimeout(() => {\n reject(new Error('timeout'));\n }, 60 * 1000);\n }).catch((err) => {\n // 加载失败的,从map中移除,第二次加载时,可以再次执行加载\n loaded.delete(url);\n throw err;\n });\n\n loaded.set(url, load);\n return loaded.get(url);\n };\n})();\n\nexport const addClassName = (el: Element, doc: Document, className: string) => {\n const oldEl = doc.querySelector(`.${className}`);\n if (oldEl && oldEl !== el) removeClassName(oldEl, className);\n if (!el.classList.contains(className)) el.classList.add(className);\n};\n\nexport const removeClassName = (el: Element, className: string) => {\n el.classList.remove(className);\n};\n\nexport const removeClassNameByClassName = (doc: Document, className: string) => {\n const el: HTMLElement | null = doc.querySelector(`.${className}`);\n el?.classList.remove(className);\n return el;\n};\n\nexport const injectStyle = (doc: Document, style: string) => {\n const styleEl = doc.createElement('style');\n styleEl.innerHTML = style;\n doc.head.appendChild(styleEl);\n return styleEl;\n};\n\nexport const createDiv = ({ className, cssText }: { className: string; cssText: string }) => {\n const el = globalThis.document.createElement('div');\n el.className = className;\n el.style.cssText = cssText;\n return el;\n};\n\nexport const getDocument = () => globalThis.document;\n","/*\n * Tencent is pleased to support the open source community by making TMagicEditor available.\n *\n * Copyright (C) 2023 THL A29 Limited, a Tencent company. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport dayjs from 'dayjs';\nimport utc from 'dayjs/plugin/utc';\n\nimport type { MComponent, MNode } from '@tmagic/schema';\nimport { NodeType } from '@tmagic/schema';\n\nexport * from './dom';\n\ndayjs.extend(utc);\n\nexport const sleep = (ms: number): Promise<void> =>\n new Promise((resolve) => {\n const timer = setTimeout(() => {\n clearTimeout(timer);\n resolve();\n }, ms);\n });\n\nexport const datetimeFormatter = (\n v: string | Date,\n defaultValue = '-',\n format = 'YYYY-MM-DD HH:mm:ss',\n): string | number => {\n if (v) {\n let time = null;\n if (['x', 'timestamp'].includes(format)) {\n time = dayjs(v).valueOf();\n } else if ((typeof v === 'string' && v.includes('Z')) || v.constructor === Date) {\n // UTC字符串时间或Date对象格式化为北京时间\n time = dayjs(v).utcOffset(8).format(format);\n } else {\n time = dayjs(v).format(format);\n }\n\n // 格式化为北京时间\n if (time !== 'Invalid Date') {\n return time;\n }\n return defaultValue;\n }\n return defaultValue;\n};\n\n// 驼峰转换横线\nexport const toLine = (name = '') => name.replace(/\\B([A-Z])/g, '-$1').toLowerCase();\n\nexport const toHump = (name = ''): string => name.replace(/-(\\w)/g, (all, letter) => letter.toUpperCase());\n\nexport const emptyFn = (): any => undefined;\n\n/**\n * 通过id获取组件在应用的子孙路径\n * @param {number | string} id 组件id\n * @param {Array} data 要查找的根容器节点\n * @return {Array} 组件在data中的子孙路径\n */\nexport const getNodePath = (id: number | string, data: MNode[] = []): MNode[] => {\n const path: MNode[] = [];\n\n const get = function (id: number | string, data: MNode[]): MNode | null {\n if (!Array.isArray(data)) {\n return null;\n }\n\n for (let i = 0, l = data.length; i < l; i++) {\n const item: any = data[i];\n\n path.push(item);\n if (`${item.id}` === `${id}`) {\n return item;\n }\n\n if (item.items) {\n const node = get(id, item.items);\n if (node) {\n return node;\n }\n }\n\n path.pop();\n }\n\n return null;\n };\n\n get(id, data);\n\n return path;\n};\n\nexport const filterXSS = (str: string) =>\n str.replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\"/g, '&quot;').replace(/'/g, '&apos;');\n\nexport const getUrlParam = (param: string, url?: string) => {\n const u = url || location.href;\n const reg = new RegExp(`[?&#]${param}=([^&#]+)`, 'gi');\n\n const matches = u.match(reg);\n let strArr;\n if (matches && matches.length > 0) {\n strArr = matches[matches.length - 1].split('=');\n if (strArr && strArr.length > 1) {\n // 过滤XSS字符\n return filterXSS(strArr[1]);\n }\n return '';\n }\n return '';\n};\n\nexport const isPop = (node: MComponent | null): boolean => Boolean(node?.type?.toLowerCase().endsWith('pop'));\n\nexport const isPage = (node?: MComponent | null): boolean => {\n if (!node) return false;\n return Boolean(node.type?.toLowerCase() === NodeType.PAGE);\n};\n\nexport const isNumber = (value: string) => /^(-?\\d+)(\\.\\d+)?$/.test(value);\n\nexport const getHost = (targetUrl: string) => targetUrl.match(/\\/\\/([^/]+)/)?.[1];\n\nexport const isSameDomain = (targetUrl = '', source = globalThis.location.host) => {\n const isHttpUrl = /^(http[s]?:)?\\/\\//.test(targetUrl);\n\n if (!isHttpUrl) return true;\n\n return getHost(targetUrl) === source;\n};\n"],"names":["dayjs","utc","id","data","NodeType"],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
- "version": "1.2.0-beta.9",
2
+ "version": "1.2.1",
3
3
  "name": "@tmagic/utils",
4
- "main": "dist/tmagic-utils.umd.js",
5
- "module": "dist/tmagic-utils.mjs",
4
+ "type": "module",
5
+ "main": "dist/tmagic-utils.umd.cjs",
6
+ "module": "dist/tmagic-utils.js",
6
7
  "types": "types/index.d.ts",
7
8
  "exports": {
8
9
  ".": {
9
- "import": "./dist/tmagic-utils.mjs",
10
- "require": "./dist/tmagic-utils.umd.js"
10
+ "import": "./dist/tmagic-utils.js",
11
+ "require": "./dist/tmagic-utils.umd.cjs"
11
12
  }
12
13
  },
13
14
  "license": "Apache-2.0",
@@ -24,7 +25,7 @@
24
25
  "url": "https://github.com/Tencent/tmagic-editor.git"
25
26
  },
26
27
  "dependencies": {
27
- "@tmagic/schema": "1.2.0-beta.9",
28
+ "@tmagic/schema": "1.2.1",
28
29
  "dayjs": "^1.11.4"
29
30
  },
30
31
  "devDependencies": {
package/src/dom.ts CHANGED
@@ -108,3 +108,5 @@ export const createDiv = ({ className, cssText }: { className: string; cssText:
108
108
  el.style.cssText = cssText;
109
109
  return el;
110
110
  };
111
+
112
+ export const getDocument = () => globalThis.document;
package/src/index.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  * Tencent is pleased to support the open source community by making TMagicEditor available.
3
3
  *
4
- * Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.
4
+ * Copyright (C) 2023 THL A29 Limited, a Tencent company. All rights reserved.
5
5
  *
6
6
  * Licensed under the Apache License, Version 2.0 (the "License");
7
7
  * you may not use this file except in compliance with the License.
@@ -19,7 +19,7 @@
19
19
  import dayjs from 'dayjs';
20
20
  import utc from 'dayjs/plugin/utc';
21
21
 
22
- import type { MNode } from '@tmagic/schema';
22
+ import type { MComponent, MNode } from '@tmagic/schema';
23
23
  import { NodeType } from '@tmagic/schema';
24
24
 
25
25
  export * from './dom';
@@ -126,9 +126,9 @@ export const getUrlParam = (param: string, url?: string) => {
126
126
  return '';
127
127
  };
128
128
 
129
- export const isPop = (node: MNode): boolean => Boolean(node.type?.toLowerCase().endsWith('pop'));
129
+ export const isPop = (node: MComponent | null): boolean => Boolean(node?.type?.toLowerCase().endsWith('pop'));
130
130
 
131
- export const isPage = (node: MNode | undefined): boolean => {
131
+ export const isPage = (node?: MComponent | null): boolean => {
132
132
  if (!node) return false;
133
133
  return Boolean(node.type?.toLowerCase() === NodeType.PAGE);
134
134
  };
package/types/dom.d.ts CHANGED
@@ -8,3 +8,4 @@ export declare const createDiv: ({ className, cssText }: {
8
8
  className: string;
9
9
  cssText: string;
10
10
  }) => HTMLDivElement;
11
+ export declare const getDocument: () => Document;
package/types/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { MNode } from '@tmagic/schema';
1
+ import type { MComponent, MNode } from '@tmagic/schema';
2
2
  export * from './dom';
3
3
  export declare const sleep: (ms: number) => Promise<void>;
4
4
  export declare const datetimeFormatter: (v: string | Date, defaultValue?: string, format?: string) => string | number;
@@ -14,8 +14,8 @@ export declare const emptyFn: () => any;
14
14
  export declare const getNodePath: (id: number | string, data?: MNode[]) => MNode[];
15
15
  export declare const filterXSS: (str: string) => string;
16
16
  export declare const getUrlParam: (param: string, url?: string) => string;
17
- export declare const isPop: (node: MNode) => boolean;
18
- export declare const isPage: (node: MNode | undefined) => boolean;
17
+ export declare const isPop: (node: MComponent | null) => boolean;
18
+ export declare const isPage: (node?: MComponent | null) => boolean;
19
19
  export declare const isNumber: (value: string) => boolean;
20
20
  export declare const getHost: (targetUrl: string) => string | undefined;
21
21
  export declare const isSameDomain: (targetUrl?: string, source?: string) => boolean;
@@ -1,115 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1654500456673" clover="3.2.0">
3
- <project timestamp="1654500456673" name="All files">
4
- <metrics statements="106" coveredstatements="95" conditionals="33" coveredconditionals="29" methods="29" coveredmethods="18" elements="168" coveredelements="142" complexity="0" loc="106" ncloc="106" packages="1" files="1" classes="1"/>
5
- <file name="index.ts" path="/data/magic/tmagic-editor/packages/utils/src/index.ts">
6
- <metrics statements="106" coveredstatements="95" conditionals="33" coveredconditionals="29" methods="29" coveredmethods="18"/>
7
- <line num="19" count="1" type="stmt"/>
8
- <line num="21" count="1" type="stmt"/>
9
- <line num="23" count="1" type="stmt"/>
10
- <line num="24" count="1" type="stmt"/>
11
- <line num="25" count="1" type="stmt"/>
12
- <line num="26" count="1" type="stmt"/>
13
- <line num="27" count="1" type="stmt"/>
14
- <line num="31" count="1" type="cond" truecount="2" falsecount="0"/>
15
- <line num="32" count="6" type="stmt"/>
16
- <line num="33" count="6" type="cond" truecount="1" falsecount="0"/>
17
- <line num="34" count="1" type="stmt"/>
18
- <line num="37" count="6" type="cond" truecount="1" falsecount="0"/>
19
- <line num="38" count="5" type="stmt"/>
20
- <line num="39" count="5" type="cond" truecount="5" falsecount="0"/>
21
- <line num="41" count="2" type="stmt"/>
22
- <line num="43" count="3" type="stmt"/>
23
- <line num="46" count="5" type="cond" truecount="1" falsecount="0"/>
24
- <line num="47" count="1" type="stmt"/>
25
- <line num="50" count="4" type="cond" truecount="1" falsecount="0"/>
26
- <line num="51" count="3" type="stmt"/>
27
- <line num="53" count="1" type="stmt"/>
28
- <line num="55" count="1" type="stmt"/>
29
- <line num="58" count="1" type="stmt"/>
30
- <line num="60" count="1" type="stmt"/>
31
- <line num="62" count="1" type="cond" truecount="1" falsecount="0"/>
32
- <line num="63" count="3" type="stmt"/>
33
- <line num="64" count="3" type="cond" truecount="1" falsecount="0"/>
34
- <line num="65" count="1" type="stmt"/>
35
- <line num="66" count="1" type="stmt"/>
36
- <line num="70" count="3" type="cond" truecount="1" falsecount="0"/>
37
- <line num="72" count="2" type="stmt"/>
38
- <line num="73" count="2" type="stmt"/>
39
- <line num="74" count="2" type="stmt"/>
40
- <line num="75" count="2" type="cond" truecount="1" falsecount="0"/>
41
- <line num="76" count="1" type="stmt"/>
42
- <line num="78" count="2" type="stmt"/>
43
- <line num="79" count="2" type="stmt"/>
44
- <line num="80" count="2" type="stmt"/>
45
- <line num="81" count="0" type="stmt"/>
46
- <line num="83" count="2" type="stmt"/>
47
- <line num="84" count="0" type="stmt"/>
48
- <line num="86" count="2" type="stmt"/>
49
- <line num="87" count="0" type="stmt"/>
50
- <line num="91" count="0" type="stmt"/>
51
- <line num="92" count="0" type="stmt"/>
52
- <line num="95" count="2" type="stmt"/>
53
- <line num="96" count="2" type="stmt"/>
54
- <line num="100" count="1" type="stmt"/>
55
- <line num="102" count="1" type="stmt"/>
56
- <line num="104" count="1" type="cond" truecount="1" falsecount="0"/>
57
- <line num="105" count="3" type="stmt"/>
58
- <line num="106" count="3" type="cond" truecount="1" falsecount="0"/>
59
- <line num="107" count="1" type="stmt"/>
60
- <line num="108" count="1" type="stmt"/>
61
- <line num="112" count="3" type="cond" truecount="1" falsecount="0"/>
62
- <line num="114" count="2" type="stmt"/>
63
- <line num="115" count="2" type="stmt"/>
64
- <line num="116" count="2" type="stmt"/>
65
- <line num="117" count="2" type="stmt"/>
66
- <line num="118" count="2" type="stmt"/>
67
- <line num="119" count="2" type="stmt"/>
68
- <line num="120" count="0" type="stmt"/>
69
- <line num="122" count="2" type="stmt"/>
70
- <line num="123" count="0" type="stmt"/>
71
- <line num="125" count="2" type="stmt"/>
72
- <line num="126" count="0" type="stmt"/>
73
- <line num="130" count="0" type="stmt"/>
74
- <line num="131" count="0" type="stmt"/>
75
- <line num="134" count="2" type="stmt"/>
76
- <line num="135" count="2" type="stmt"/>
77
- <line num="140" count="3" type="cond" truecount="0" falsecount="1"/>
78
- <line num="142" count="5" type="cond" truecount="0" falsecount="1"/>
79
- <line num="144" count="1" type="stmt"/>
80
- <line num="152" count="1" type="cond" truecount="0" falsecount="1"/>
81
- <line num="153" count="4" type="stmt"/>
82
- <line num="155" count="4" type="stmt"/>
83
- <line num="156" count="13" type="cond" truecount="1" falsecount="0"/>
84
- <line num="157" count="1" type="stmt"/>
85
- <line num="160" count="12" type="stmt"/>
86
- <line num="161" count="14" type="stmt"/>
87
- <line num="163" count="14" type="stmt"/>
88
- <line num="164" count="14" type="cond" truecount="1" falsecount="0"/>
89
- <line num="165" count="2" type="stmt"/>
90
- <line num="168" count="12" type="cond" truecount="1" falsecount="0"/>
91
- <line num="169" count="9" type="stmt"/>
92
- <line num="170" count="9" type="cond" truecount="1" falsecount="0"/>
93
- <line num="171" count="3" type="stmt"/>
94
- <line num="175" count="9" type="stmt"/>
95
- <line num="178" count="7" type="stmt"/>
96
- <line num="181" count="4" type="stmt"/>
97
- <line num="183" count="4" type="stmt"/>
98
- <line num="186" count="1" type="stmt"/>
99
- <line num="187" count="3" type="stmt"/>
100
- <line num="189" count="1" type="stmt"/>
101
- <line num="190" count="3" type="cond" truecount="1" falsecount="1"/>
102
- <line num="191" count="3" type="stmt"/>
103
- <line num="193" count="3" type="stmt"/>
104
- <line num="195" count="3" type="cond" truecount="3" falsecount="0"/>
105
- <line num="196" count="1" type="stmt"/>
106
- <line num="197" count="1" type="cond" truecount="3" falsecount="0"/>
107
- <line num="199" count="1" type="stmt"/>
108
- <line num="201" count="0" type="stmt"/>
109
- <line num="203" count="2" type="stmt"/>
110
- <line num="206" count="3" type="stmt"/>
111
- <line num="208" count="1" type="stmt"/>
112
- <line num="210" count="1" type="stmt"/>
113
- </file>
114
- </project>
115
- </coverage>
@@ -1,2 +0,0 @@
1
- {"/data/magic/tmagic-editor/packages/utils/src/index.ts": {"path":"/data/magic/tmagic-editor/packages/utils/src/index.ts","statementMap":{"0":{"start":{"line":19,"column":0},"end":{"line":19,"column":28}},"1":{"start":{"line":21,"column":0},"end":{"line":21,"column":49}},"2":{"start":{"line":23,"column":21},"end":{"line":29,"column":4}},"3":{"start":{"line":24,"column":2},"end":{"line":29,"column":4}},"4":{"start":{"line":25,"column":18},"end":{"line":28,"column":10}},"5":{"start":{"line":26,"column":6},"end":{"line":26,"column":26}},"6":{"start":{"line":27,"column":6},"end":{"line":27,"column":16}},"7":{"start":{"line":23,"column":13},"end":{"line":23,"column":21}},"8":{"start":{"line":31,"column":33},"end":{"line":56,"column":1}},"9":{"start":{"line":32,"column":15},"end":{"line":32,"column":16}},"10":{"start":{"line":33,"column":2},"end":{"line":35,"column":null}},"11":{"start":{"line":34,"column":4},"end":{"line":34,"column":17}},"12":{"start":{"line":37,"column":2},"end":{"line":54,"column":null}},"13":{"start":{"line":38,"column":15},"end":{"line":38,"column":19}},"14":{"start":{"line":39,"column":4},"end":{"line":44,"column":null}},"15":{"start":{"line":41,"column":6},"end":{"line":41,"column":58}},"16":{"start":{"line":43,"column":6},"end":{"line":43,"column":38}},"17":{"start":{"line":46,"column":4},"end":{"line":48,"column":null}},"18":{"start":{"line":47,"column":6},"end":{"line":47,"column":19}},"19":{"start":{"line":50,"column":4},"end":{"line":52,"column":null}},"20":{"start":{"line":51,"column":6},"end":{"line":51,"column":18}},"21":{"start":{"line":53,"column":4},"end":{"line":53,"column":24}},"22":{"start":{"line":55,"column":2},"end":{"line":55,"column":22}},"23":{"start":{"line":31,"column":13},"end":{"line":31,"column":33}},"24":{"start":{"line":58,"column":13},"end":{"line":98,"column":5}},"25":{"start":{"line":60,"column":22},"end":{"line":60,"column":31}},"26":{"start":{"line":62,"column":2},"end":{"line":97,"column":4}},"27":{"start":{"line":63,"column":17},"end":{"line":63,"column":42}},"28":{"start":{"line":64,"column":4},"end":{"line":67,"column":null}},"29":{"start":{"line":65,"column":6},"end":{"line":65,"column":25}},"30":{"start":{"line":66,"column":6},"end":{"line":66,"column":40}},"31":{"start":{"line":70,"column":4},"end":{"line":70,"column":48}},"32":{"start":{"line":70,"column":25},"end":{"line":70,"column":48}},"33":{"start":{"line":72,"column":17},"end":{"line":93,"column":6}},"34":{"start":{"line":73,"column":21},"end":{"line":73,"column":53}},"35":{"start":{"line":74,"column":6},"end":{"line":74,"column":38}},"36":{"start":{"line":75,"column":6},"end":{"line":77,"column":null}},"37":{"start":{"line":76,"column":8},"end":{"line":76,"column":41}},"38":{"start":{"line":78,"column":6},"end":{"line":78,"column":23}},"39":{"start":{"line":79,"column":6},"end":{"line":79,"column":40}},"40":{"start":{"line":80,"column":6},"end":{"line":82,"column":8}},"41":{"start":{"line":81,"column":8},"end":{"line":81,"column":18}},"42":{"start":{"line":83,"column":6},"end":{"line":85,"column":8}},"43":{"start":{"line":84,"column":8},"end":{"line":84,"column":34}},"44":{"start":{"line":86,"column":6},"end":{"line":88,"column":20}},"45":{"start":{"line":87,"column":8},"end":{"line":87,"column":37}},"46":{"start":{"line":91,"column":6},"end":{"line":91,"column":25}},"47":{"start":{"line":92,"column":6},"end":{"line":92,"column":16}},"48":{"start":{"line":95,"column":4},"end":{"line":95,"column":26}},"49":{"start":{"line":96,"column":4},"end":{"line":96,"column":27}},"50":{"start":{"line":100,"column":13},"end":{"line":137,"column":5}},"51":{"start":{"line":102,"column":22},"end":{"line":102,"column":31}},"52":{"start":{"line":104,"column":2},"end":{"line":136,"column":4}},"53":{"start":{"line":105,"column":17},"end":{"line":105,"column":42}},"54":{"start":{"line":106,"column":4},"end":{"line":109,"column":null}},"55":{"start":{"line":107,"column":6},"end":{"line":107,"column":25}},"56":{"start":{"line":108,"column":6},"end":{"line":108,"column":40}},"57":{"start":{"line":112,"column":4},"end":{"line":112,"column":48}},"58":{"start":{"line":112,"column":25},"end":{"line":112,"column":48}},"59":{"start":{"line":114,"column":17},"end":{"line":132,"column":6}},"60":{"start":{"line":115,"column":19},"end":{"line":115,"column":49}},"61":{"start":{"line":116,"column":6},"end":{"line":116,"column":30}},"62":{"start":{"line":117,"column":6},"end":{"line":117,"column":22}},"63":{"start":{"line":118,"column":6},"end":{"line":118,"column":38}},"64":{"start":{"line":119,"column":6},"end":{"line":121,"column":8}},"65":{"start":{"line":120,"column":8},"end":{"line":120,"column":18}},"66":{"start":{"line":122,"column":6},"end":{"line":124,"column":8}},"67":{"start":{"line":123,"column":8},"end":{"line":123,"column":34}},"68":{"start":{"line":125,"column":6},"end":{"line":127,"column":20}},"69":{"start":{"line":126,"column":8},"end":{"line":126,"column":37}},"70":{"start":{"line":130,"column":6},"end":{"line":130,"column":25}},"71":{"start":{"line":131,"column":6},"end":{"line":131,"column":16}},"72":{"start":{"line":134,"column":4},"end":{"line":134,"column":26}},"73":{"start":{"line":135,"column":4},"end":{"line":135,"column":27}},"74":{"start":{"line":140,"column":22},"end":{"line":140,"column":84}},"75":{"start":{"line":140,"column":37},"end":{"line":140,"column":84}},"76":{"start":{"line":140,"column":13},"end":{"line":140,"column":22}},"77":{"start":{"line":142,"column":22},"end":{"line":142,"column":106}},"78":{"start":{"line":142,"column":45},"end":{"line":142,"column":106}},"79":{"start":{"line":142,"column":85},"end":{"line":142,"column":105}},"80":{"start":{"line":142,"column":13},"end":{"line":142,"column":22}},"81":{"start":{"line":144,"column":23},"end":{"line":144,"column":43}},"82":{"start":{"line":144,"column":34},"end":{"line":144,"column":43}},"83":{"start":{"line":144,"column":13},"end":{"line":144,"column":23}},"84":{"start":{"line":152,"column":27},"end":{"line":184,"column":1}},"85":{"start":{"line":153,"column":24},"end":{"line":153,"column":26}},"86":{"start":{"line":155,"column":14},"end":{"line":179,"column":3}},"87":{"start":{"line":156,"column":4},"end":{"line":158,"column":null}},"88":{"start":{"line":157,"column":6},"end":{"line":157,"column":18}},"89":{"start":{"line":160,"column":4},"end":{"line":176,"column":null}},"90":{"start":{"line":160,"column":17},"end":{"line":160,"column":18}},"91":{"start":{"line":160,"column":24},"end":{"line":160,"column":35}},"92":{"start":{"line":161,"column":24},"end":{"line":161,"column":31}},"93":{"start":{"line":163,"column":6},"end":{"line":163,"column":22}},"94":{"start":{"line":164,"column":6},"end":{"line":166,"column":null}},"95":{"start":{"line":165,"column":8},"end":{"line":165,"column":20}},"96":{"start":{"line":168,"column":6},"end":{"line":173,"column":null}},"97":{"start":{"line":169,"column":21},"end":{"line":169,"column":40}},"98":{"start":{"line":170,"column":8},"end":{"line":172,"column":null}},"99":{"start":{"line":171,"column":10},"end":{"line":171,"column":22}},"100":{"start":{"line":175,"column":6},"end":{"line":175,"column":17}},"101":{"start":{"line":178,"column":4},"end":{"line":178,"column":16}},"102":{"start":{"line":181,"column":2},"end":{"line":181,"column":16}},"103":{"start":{"line":183,"column":2},"end":{"line":183,"column":14}},"104":{"start":{"line":152,"column":13},"end":{"line":152,"column":27}},"105":{"start":{"line":186,"column":25},"end":{"line":187,"column":97}},"106":{"start":{"line":187,"column":2},"end":{"line":187,"column":97}},"107":{"start":{"line":186,"column":13},"end":{"line":186,"column":25}},"108":{"start":{"line":189,"column":27},"end":{"line":204,"column":1}},"109":{"start":{"line":190,"column":12},"end":{"line":190,"column":32}},"110":{"start":{"line":191,"column":14},"end":{"line":191,"column":56}},"111":{"start":{"line":193,"column":18},"end":{"line":193,"column":30}},"112":{"start":{"line":195,"column":2},"end":{"line":202,"column":null}},"113":{"start":{"line":196,"column":4},"end":{"line":196,"column":52}},"114":{"start":{"line":197,"column":4},"end":{"line":200,"column":null}},"115":{"start":{"line":199,"column":6},"end":{"line":199,"column":34}},"116":{"start":{"line":201,"column":4},"end":{"line":201,"column":14}},"117":{"start":{"line":203,"column":2},"end":{"line":203,"column":12}},"118":{"start":{"line":189,"column":13},"end":{"line":189,"column":27}},"119":{"start":{"line":206,"column":21},"end":{"line":206,"column":96}},"120":{"start":{"line":206,"column":47},"end":{"line":206,"column":96}},"121":{"start":{"line":206,"column":13},"end":{"line":206,"column":21}},"122":{"start":{"line":208,"column":22},"end":{"line":208,"column":99}},"123":{"start":{"line":208,"column":48},"end":{"line":208,"column":99}},"124":{"start":{"line":208,"column":13},"end":{"line":208,"column":22}},"125":{"start":{"line":210,"column":24},"end":{"line":210,"column":74}},"126":{"start":{"line":210,"column":43},"end":{"line":210,"column":74}},"127":{"start":{"line":210,"column":13},"end":{"line":210,"column":24}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":23,"column":21},"end":{"line":23,"column":22}},"loc":{"start":{"line":24,"column":2},"end":{"line":29,"column":4}}},"1":{"name":"(anonymous_1)","decl":{"start":{"line":24,"column":14},"end":{"line":24,"column":15}},"loc":{"start":{"line":24,"column":26},"end":{"line":29,"column":3}}},"2":{"name":"(anonymous_2)","decl":{"start":{"line":25,"column":29},"end":{"line":25,"column":32}},"loc":{"start":{"line":25,"column":34},"end":{"line":28,"column":5}}},"3":{"name":"(anonymous_3)","decl":{"start":{"line":31,"column":33},"end":{"line":31,"column":34}},"loc":{"start":{"line":31,"column":101},"end":{"line":56,"column":1}}},"4":{"name":"(anonymous_4)","decl":{"start":{"line":58,"column":28},"end":{"line":58,"column":31}},"loc":{"start":{"line":58,"column":33},"end":{"line":98,"column":1}}},"5":{"name":"(anonymous_5)","decl":{"start":{"line":62,"column":9},"end":{"line":62,"column":10}},"loc":{"start":{"line":62,"column":79},"end":{"line":97,"column":3}}},"6":{"name":"(anonymous_6)","decl":{"start":{"line":72,"column":35},"end":{"line":72,"column":36}},"loc":{"start":{"line":72,"column":55},"end":{"line":89,"column":5}}},"7":{"name":"(anonymous_7)","decl":{"start":{"line":80,"column":22},"end":{"line":80,"column":25}},"loc":{"start":{"line":80,"column":27},"end":{"line":82,"column":7}}},"8":{"name":"(anonymous_8)","decl":{"start":{"line":83,"column":23},"end":{"line":83,"column":26}},"loc":{"start":{"line":83,"column":28},"end":{"line":85,"column":7}}},"9":{"name":"(anonymous_9)","decl":{"start":{"line":86,"column":17},"end":{"line":86,"column":20}},"loc":{"start":{"line":86,"column":22},"end":{"line":88,"column":7}}},"10":{"name":"(anonymous_10)","decl":{"start":{"line":89,"column":13},"end":{"line":89,"column":14}},"loc":{"start":{"line":89,"column":21},"end":{"line":93,"column":5}}},"11":{"name":"(anonymous_11)","decl":{"start":{"line":100,"column":29},"end":{"line":100,"column":32}},"loc":{"start":{"line":100,"column":34},"end":{"line":137,"column":1}}},"12":{"name":"(anonymous_12)","decl":{"start":{"line":104,"column":9},"end":{"line":104,"column":10}},"loc":{"start":{"line":104,"column":57},"end":{"line":136,"column":3}}},"13":{"name":"(anonymous_13)","decl":{"start":{"line":114,"column":35},"end":{"line":114,"column":36}},"loc":{"start":{"line":114,"column":55},"end":{"line":128,"column":5}}},"14":{"name":"(anonymous_14)","decl":{"start":{"line":119,"column":20},"end":{"line":119,"column":23}},"loc":{"start":{"line":119,"column":25},"end":{"line":121,"column":7}}},"15":{"name":"(anonymous_15)","decl":{"start":{"line":122,"column":21},"end":{"line":122,"column":24}},"loc":{"start":{"line":122,"column":26},"end":{"line":124,"column":7}}},"16":{"name":"(anonymous_16)","decl":{"start":{"line":125,"column":17},"end":{"line":125,"column":20}},"loc":{"start":{"line":125,"column":22},"end":{"line":127,"column":7}}},"17":{"name":"(anonymous_17)","decl":{"start":{"line":128,"column":13},"end":{"line":128,"column":14}},"loc":{"start":{"line":128,"column":21},"end":{"line":132,"column":5}}},"18":{"name":"(anonymous_18)","decl":{"start":{"line":140,"column":22},"end":{"line":140,"column":23}},"loc":{"start":{"line":140,"column":37},"end":{"line":140,"column":84}}},"19":{"name":"(anonymous_19)","decl":{"start":{"line":142,"column":22},"end":{"line":142,"column":23}},"loc":{"start":{"line":142,"column":45},"end":{"line":142,"column":106}}},"20":{"name":"(anonymous_20)","decl":{"start":{"line":142,"column":68},"end":{"line":142,"column":69}},"loc":{"start":{"line":142,"column":85},"end":{"line":142,"column":105}}},"21":{"name":"(anonymous_21)","decl":{"start":{"line":144,"column":23},"end":{"line":144,"column":31}},"loc":{"start":{"line":144,"column":34},"end":{"line":144,"column":43}}},"22":{"name":"(anonymous_22)","decl":{"start":{"line":152,"column":27},"end":{"line":152,"column":28}},"loc":{"start":{"line":152,"column":80},"end":{"line":184,"column":1}}},"23":{"name":"(anonymous_23)","decl":{"start":{"line":155,"column":14},"end":{"line":155,"column":24}},"loc":{"start":{"line":155,"column":58},"end":{"line":179,"column":3}}},"24":{"name":"(anonymous_24)","decl":{"start":{"line":186,"column":25},"end":{"line":186,"column":26}},"loc":{"start":{"line":187,"column":2},"end":{"line":187,"column":97}}},"25":{"name":"(anonymous_25)","decl":{"start":{"line":189,"column":27},"end":{"line":189,"column":28}},"loc":{"start":{"line":189,"column":59},"end":{"line":204,"column":1}}},"26":{"name":"(anonymous_26)","decl":{"start":{"line":206,"column":21},"end":{"line":206,"column":22}},"loc":{"start":{"line":206,"column":47},"end":{"line":206,"column":96}}},"27":{"name":"(anonymous_27)","decl":{"start":{"line":208,"column":22},"end":{"line":208,"column":23}},"loc":{"start":{"line":208,"column":48},"end":{"line":208,"column":99}}},"28":{"name":"(anonymous_28)","decl":{"start":{"line":210,"column":24},"end":{"line":210,"column":25}},"loc":{"start":{"line":210,"column":43},"end":{"line":210,"column":74}}}},"branchMap":{"0":{"loc":{"start":{"line":31,"column":52},"end":{"line":31,"column":70}},"type":"default-arg","locations":[{"start":{"line":31,"column":67},"end":{"line":31,"column":70}}]},"1":{"loc":{"start":{"line":31,"column":72},"end":{"line":31,"column":97}},"type":"default-arg","locations":[{"start":{"line":31,"column":76},"end":{"line":31,"column":97}}]},"2":{"loc":{"start":{"line":33,"column":2},"end":{"line":35,"column":null}},"type":"if","locations":[{"start":{"line":33,"column":2},"end":{"line":35,"column":null}}]},"3":{"loc":{"start":{"line":37,"column":2},"end":{"line":54,"column":null}},"type":"if","locations":[{"start":{"line":37,"column":2},"end":{"line":54,"column":null}}]},"4":{"loc":{"start":{"line":39,"column":4},"end":{"line":44,"column":null}},"type":"if","locations":[{"start":{"line":39,"column":4},"end":{"line":44,"column":null}},{"start":{"line":42,"column":11},"end":{"line":44,"column":null}}]},"5":{"loc":{"start":{"line":39,"column":8},"end":{"line":39,"column":76}},"type":"binary-expr","locations":[{"start":{"line":39,"column":9},"end":{"line":39,"column":30}},{"start":{"line":39,"column":34},"end":{"line":39,"column":49}},{"start":{"line":39,"column":54},"end":{"line":39,"column":76}}]},"6":{"loc":{"start":{"line":46,"column":4},"end":{"line":48,"column":null}},"type":"if","locations":[{"start":{"line":46,"column":4},"end":{"line":48,"column":null}}]},"7":{"loc":{"start":{"line":50,"column":4},"end":{"line":52,"column":null}},"type":"if","locations":[{"start":{"line":50,"column":4},"end":{"line":52,"column":null}}]},"8":{"loc":{"start":{"line":62,"column":45},"end":{"line":62,"column":75}},"type":"default-arg","locations":[{"start":{"line":62,"column":56},"end":{"line":62,"column":75}}]},"9":{"loc":{"start":{"line":64,"column":4},"end":{"line":67,"column":null}},"type":"if","locations":[{"start":{"line":64,"column":4},"end":{"line":67,"column":null}}]},"10":{"loc":{"start":{"line":70,"column":4},"end":{"line":70,"column":48}},"type":"if","locations":[{"start":{"line":70,"column":4},"end":{"line":70,"column":48}}]},"11":{"loc":{"start":{"line":75,"column":6},"end":{"line":77,"column":null}},"type":"if","locations":[{"start":{"line":75,"column":6},"end":{"line":77,"column":null}}]},"12":{"loc":{"start":{"line":104,"column":23},"end":{"line":104,"column":53}},"type":"default-arg","locations":[{"start":{"line":104,"column":34},"end":{"line":104,"column":53}}]},"13":{"loc":{"start":{"line":106,"column":4},"end":{"line":109,"column":null}},"type":"if","locations":[{"start":{"line":106,"column":4},"end":{"line":109,"column":null}}]},"14":{"loc":{"start":{"line":112,"column":4},"end":{"line":112,"column":48}},"type":"if","locations":[{"start":{"line":112,"column":4},"end":{"line":112,"column":48}}]},"15":{"loc":{"start":{"line":140,"column":23},"end":{"line":140,"column":32}},"type":"default-arg","locations":[{"start":{"line":140,"column":30},"end":{"line":140,"column":32}}]},"16":{"loc":{"start":{"line":142,"column":23},"end":{"line":142,"column":32}},"type":"default-arg","locations":[{"start":{"line":142,"column":30},"end":{"line":142,"column":32}}]},"17":{"loc":{"start":{"line":152,"column":49},"end":{"line":152,"column":67}},"type":"default-arg","locations":[{"start":{"line":152,"column":65},"end":{"line":152,"column":67}}]},"18":{"loc":{"start":{"line":156,"column":4},"end":{"line":158,"column":null}},"type":"if","locations":[{"start":{"line":156,"column":4},"end":{"line":158,"column":null}}]},"19":{"loc":{"start":{"line":164,"column":6},"end":{"line":166,"column":null}},"type":"if","locations":[{"start":{"line":164,"column":6},"end":{"line":166,"column":null}}]},"20":{"loc":{"start":{"line":168,"column":6},"end":{"line":173,"column":null}},"type":"if","locations":[{"start":{"line":168,"column":6},"end":{"line":173,"column":null}}]},"21":{"loc":{"start":{"line":170,"column":8},"end":{"line":172,"column":null}},"type":"if","locations":[{"start":{"line":170,"column":8},"end":{"line":172,"column":null}}]},"22":{"loc":{"start":{"line":190,"column":12},"end":{"line":190,"column":32}},"type":"binary-expr","locations":[{"start":{"line":190,"column":12},"end":{"line":190,"column":15}},{"start":{"line":190,"column":19},"end":{"line":190,"column":32}}]},"23":{"loc":{"start":{"line":195,"column":2},"end":{"line":202,"column":null}},"type":"if","locations":[{"start":{"line":195,"column":2},"end":{"line":202,"column":null}}]},"24":{"loc":{"start":{"line":195,"column":6},"end":{"line":195,"column":35}},"type":"binary-expr","locations":[{"start":{"line":195,"column":6},"end":{"line":195,"column":13}},{"start":{"line":195,"column":17},"end":{"line":195,"column":35}}]},"25":{"loc":{"start":{"line":197,"column":4},"end":{"line":200,"column":null}},"type":"if","locations":[{"start":{"line":197,"column":4},"end":{"line":200,"column":null}}]},"26":{"loc":{"start":{"line":197,"column":8},"end":{"line":197,"column":35}},"type":"binary-expr","locations":[{"start":{"line":197,"column":8},"end":{"line":197,"column":14}},{"start":{"line":197,"column":18},"end":{"line":197,"column":35}}]}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":6,"10":6,"11":1,"12":6,"13":5,"14":5,"15":2,"16":3,"17":5,"18":1,"19":4,"20":3,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":3,"28":3,"29":1,"30":1,"31":3,"32":1,"33":2,"34":2,"35":2,"36":2,"37":1,"38":2,"39":2,"40":2,"41":0,"42":2,"43":0,"44":2,"45":0,"46":0,"47":0,"48":2,"49":2,"50":1,"51":1,"52":1,"53":3,"54":3,"55":1,"56":1,"57":3,"58":1,"59":2,"60":2,"61":2,"62":2,"63":2,"64":2,"65":0,"66":2,"67":0,"68":2,"69":0,"70":0,"71":0,"72":2,"73":2,"74":1,"75":3,"76":1,"77":1,"78":3,"79":5,"80":1,"81":1,"82":0,"83":1,"84":1,"85":4,"86":4,"87":13,"88":1,"89":12,"90":12,"91":12,"92":14,"93":14,"94":14,"95":2,"96":12,"97":9,"98":9,"99":3,"100":9,"101":7,"102":4,"103":4,"104":1,"105":1,"106":3,"107":1,"108":1,"109":3,"110":3,"111":3,"112":3,"113":1,"114":1,"115":1,"116":0,"117":2,"118":1,"119":1,"120":3,"121":1,"122":1,"123":0,"124":1,"125":1,"126":0,"127":1},"f":{"0":1,"1":1,"2":1,"3":6,"4":1,"5":3,"6":2,"7":0,"8":0,"9":0,"10":0,"11":1,"12":3,"13":2,"14":0,"15":0,"16":0,"17":0,"18":3,"19":3,"20":5,"21":0,"22":4,"23":13,"24":3,"25":3,"26":3,"27":0,"28":0},"b":{"0":[3],"1":[5],"2":[1],"3":[5],"4":[2,3],"5":[5,4,3],"6":[1],"7":[3],"8":[3],"9":[1],"10":[1],"11":[1],"12":[3],"13":[1],"14":[1],"15":[0],"16":[0],"17":[0],"18":[1],"19":[2],"20":[9],"21":[3],"22":[3,0],"23":[1],"24":[3,1],"25":[1],"26":[1,1]}}
2
- }