@formulaxjs/kity-runtime 0.3.0 → 0.4.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@formulaxjs/kity-runtime",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -18,9 +18,23 @@
18
18
  }
19
19
 
20
20
  /* Button */
21
- .kf-editor-inner-toolbar {
22
- width: 100%;
23
- }
21
+ .kf-editor-inner-toolbar {
22
+ width: 100%;
23
+ white-space: nowrap;
24
+ }
25
+
26
+ .kf-editor-ui-button-mount-point,
27
+ .kf-editor-ui-area-mount,
28
+ .kf-editor-ui-box,
29
+ .kf-editor-ui-box-container,
30
+ .kf-editor-ui-box-group,
31
+ .kf-editor-ui-box-group-item-container,
32
+ .kf-editor-ui-overlap-container,
33
+ .kf-editor-ui-wrap-group,
34
+ .kf-editor-ui-list,
35
+ .kf-editor-ui-list-item-container {
36
+ white-space: normal;
37
+ }
24
38
 
25
39
  .kf-editor-ui-button {
26
40
  padding: 8px 6px;
@@ -52,13 +66,14 @@
52
66
  margin: 2px auto;
53
67
  }
54
68
 
55
- .kf-editor-ui-button-label {
56
- color: #666;
57
- text-align: center;
58
- display: block;
59
- font-size: 12px;
60
- line-height: 20px;
61
- }
69
+ .kf-editor-ui-button-label {
70
+ color: #666;
71
+ text-align: center;
72
+ display: block;
73
+ font-size: 12px;
74
+ line-height: 20px;
75
+ white-space: nowrap;
76
+ }
62
77
 
63
78
  .kf-editor-ui-overlap-button .kf-editor-ui-button-label {
64
79
  padding: 3px 5px;
@@ -155,15 +170,16 @@
155
170
  font-size: 12px;
156
171
  }
157
172
 
158
- .kf-editor-ui-box-group-title {
159
- background-color: #f7f6f0;
160
- height: 23px;
161
- line-height: 23px;
162
- font-size: 12px;
163
- border: 1px solid #ebeae4;
164
- border-width: 1px 0;
165
- padding-left: 12px;
166
- }
173
+ .kf-editor-ui-box-group-title {
174
+ background-color: #f7f6f0;
175
+ min-height: 23px;
176
+ line-height: 1.35;
177
+ font-size: 12px;
178
+ border: 1px solid #ebeae4;
179
+ border-width: 1px 0;
180
+ padding: 4px 12px;
181
+ white-space: normal;
182
+ }
167
183
 
168
184
  .kf-editor-ui-box-group-item-container {
169
185
  padding: 7px 9px 17px 9px;
@@ -184,10 +200,24 @@
184
200
  margin-top: 8px;
185
201
  }
186
202
 
187
- .kf-editor-ui-yushe-btn .kf-editor-ui-box-item {
188
- border: 1px solid transparent;
189
- padding: 5px;
190
- }
203
+ .kf-editor-ui-yushe-btn .kf-editor-ui-box-item {
204
+ display: block;
205
+ border: 1px solid transparent;
206
+ padding: 5px;
207
+ margin: 0 0 12px;
208
+ }
209
+
210
+ .kf-editor-ui-yushe-btn .kf-editor-ui-box-item:last-child {
211
+ margin-bottom: 0;
212
+ }
213
+
214
+ .kf-editor-ui-yushe-btn .kf-editor-ui-box-item-content {
215
+ display: block;
216
+ }
217
+
218
+ .kf-editor-ui-yushe-btn .kf-editor-ui-box-item-val {
219
+ display: block;
220
+ }
191
221
 
192
222
  .kf-editor-ui-box-item {
193
223
  display: inline-block;
@@ -220,9 +250,11 @@
220
250
  }
221
251
 
222
252
 
223
- .kf-editor-ui-box-item-label {
224
- margin-bottom: 5px;
225
- }
253
+ .kf-editor-ui-box-item-label {
254
+ margin-bottom: 5px;
255
+ line-height: 1.35;
256
+ white-space: normal;
257
+ }
226
258
 
227
259
  .kf-editor-ui-box-item-content {
228
260
  background: white;
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/asset-manifest.ts","../src/vendor/legacy-box-type.ts","../src/vendor/legacy-kfevent.ts","../src/vendor/legacy-event.ts","../src/vendor/legacy-utils.ts","../src/kity/utils.ts","../src/vendor/legacy-component.ts","../src/vendor/legacy-ele-type.ts","../src/vendor/legacy-group-type.ts","../src/vendor/legacy-input-filter.ts","../src/vendor/legacy-item-type.ts","../src/vendor/legacy-kf-ext-def.ts","../src/vendor/legacy-sysconf.ts","../src/vendor/legacy-ui-def.ts","../src/dom-utils.ts","../src/vendor/legacy-ui-utils.ts","../src/vendor/other-position.ts","../src/toolbar-assets.ts"],"sourcesContent":["import btnUrl from '../public/assets/images/toolbar/btn.png';\nimport otherUrl from '../public/assets/images/toolbar/other.png';\nimport editorCssUrl from '../public/assets/styles/editor.css?url';\nimport kfAmsBbUrl from '../public/resource/KF_AMS_BB.woff';\nimport kfAmsCalUrl from '../public/resource/KF_AMS_CAL.woff';\nimport kfAmsFrakUrl from '../public/resource/KF_AMS_FRAK.woff';\nimport kfAmsMainUrl from '../public/resource/KF_AMS_MAIN.woff';\nimport kfAmsRomanUrl from '../public/resource/KF_AMS_ROMAN.woff';\n\nexport type KityFontAssets = {\n KF_AMS_BB: string;\n KF_AMS_CAL: string;\n KF_AMS_FRAK: string;\n KF_AMS_MAIN: string;\n KF_AMS_ROMAN: string;\n};\n\nexport type KityToolbarAssets = {\n btn: string;\n other: string;\n};\n\nexport type KityStyleAssets = {\n editor: string;\n};\n\nexport type KityAssetManifest = {\n fonts: KityFontAssets;\n toolbar: KityToolbarAssets;\n styles: KityStyleAssets;\n};\n\nexport const kityFontAssets = {\n KF_AMS_BB: kfAmsBbUrl,\n KF_AMS_CAL: kfAmsCalUrl,\n KF_AMS_FRAK: kfAmsFrakUrl,\n KF_AMS_MAIN: kfAmsMainUrl,\n KF_AMS_ROMAN: kfAmsRomanUrl,\n} satisfies KityFontAssets;\n\nexport const kityToolbarAssets = {\n btn: btnUrl,\n other: otherUrl,\n} satisfies KityToolbarAssets;\n\nexport const kityStyleAssets = {\n editor: editorCssUrl,\n} satisfies KityStyleAssets;\n\nexport const kityAssetManifest = {\n fonts: kityFontAssets,\n toolbar: kityToolbarAssets,\n styles: kityStyleAssets,\n} satisfies KityAssetManifest;\n","export const legacyBoxType = {\n DETACHED: 1,\n OVERLAP: 2,\n} as const;\n","export const legacyKfEvent = {\n createEvent(type: string) {\n return new Event(type, {\n bubbles: true,\n cancelable: true,\n });\n },\n};\n","import { legacyKfEvent } from './legacy-kfevent';\n\ntype KfEventHandler<T extends Event = Event> = (event: T) => boolean | void;\nconst eventListenerStore: Record<number, Record<string, any[]>> = {};\nlet eventId = 0;\nlet beforeResult = true;\n\ntype LegacyEventTarget = EventTarget & {\n __kfeEventId?: number;\n __kfe_eid?: number;\n};\n\nfunction getLegacyEventId(target: LegacyEventTarget) {\n return target.__kfeEventId ?? target.__kfe_eid;\n}\n\nfunction setLegacyEventId(target: LegacyEventTarget, resolvedEventId: number) {\n target.__kfeEventId = resolvedEventId;\n\n if (Object.prototype.hasOwnProperty.call(target, '__kfe_eid')) {\n target.__kfe_eid = resolvedEventId;\n return;\n }\n\n Object.defineProperty(target, '__kfe_eid', {\n configurable: true,\n enumerable: true,\n get() {\n return target.__kfeEventId;\n },\n set(value: number) {\n target.__kfeEventId = value;\n },\n });\n}\n\nconst eventHandler = function eventHandler(this: LegacyEventTarget, event: Event) {\n const type = event.type;\n const target = event.target as EventTarget;\n const eid = getLegacyEventId(this) as number;\n const hasAutoTrigger = /^(?:before|after)/.test(type);\n const handlerList: KfEventHandler[] = eventListenerStore[eid]?.[type] ?? [];\n\n if (!hasAutoTrigger) {\n legacyEventListener.trigger(target, `before${type}`);\n\n if (beforeResult === false) {\n beforeResult = true;\n return false;\n }\n }\n\n for (const handler of handlerList) {\n if (handler.call(target, event) === false) {\n beforeResult = false;\n break;\n }\n }\n\n if (!hasAutoTrigger) {\n legacyEventListener.trigger(target, `after${type}`);\n }\n\n return true;\n};\n\nexport const legacyEventListener = {\n addEvent<T extends Event = Event>(target: LegacyEventTarget, type: string, handler: (event: T) => boolean | void) {\n let hasHandler = true;\n\n if (!getLegacyEventId(target)) {\n hasHandler = false;\n setLegacyEventId(target, ++eventId);\n eventListenerStore[getLegacyEventId(target) as number] = {};\n }\n\n const eventCache = eventListenerStore[getLegacyEventId(target) as number];\n\n if (!eventCache[type]) {\n hasHandler = false;\n eventCache[type] = [];\n }\n\n eventCache[type].push(handler);\n\n if (hasHandler) {\n return;\n }\n\n target.addEventListener(type, eventHandler as EventListener, false);\n },\n\n trigger(target: EventTarget, type: string, event?: Event) {\n const resolvedEvent = event || legacyKfEvent.createEvent(type);\n target.dispatchEvent(resolvedEvent);\n },\n};\n","import { bind, isArray, isString } from 'lodash-es';\nimport utils from '../kity/utils';\nimport { legacyEventListener } from './legacy-event';\n\nexport type LegacyBaseUtils = {\n addEvent: typeof legacyEventListener.addEvent;\n trigger: typeof legacyEventListener.trigger;\n each: typeof utils.each;\n extend: typeof utils.extend;\n clone: typeof utils.clone;\n copy: typeof utils.copy;\n isArray: typeof isArray;\n isString: typeof isString;\n proxy: typeof bind;\n contains(parent: Node, target: Node): boolean;\n getRect(node: Element): DOMRect;\n};\n\nconst legacyBaseUtils: LegacyBaseUtils = {\n addEvent: legacyEventListener.addEvent,\n trigger: legacyEventListener.trigger,\n each: utils.each,\n extend: utils.extend,\n clone: utils.clone,\n copy: utils.copy,\n isArray,\n isString,\n proxy: bind,\n contains(parent: Node, target: Node) {\n if (parent.contains) {\n return parent.contains(target);\n }\n if (parent.compareDocumentPosition) {\n return !!(parent.compareDocumentPosition(target) & 16);\n }\n return false;\n },\n getRect(node: Element) {\n return node.getBoundingClientRect();\n },\n};\n\nexport { legacyBaseUtils };\n","import {\n assign,\n cloneDeep,\n forEach,\n isArray,\n isBoolean,\n isFunction,\n isNumber,\n isObject,\n isRegExp,\n isString,\n flattenDeep,\n get,\n defaultTo,\n merge,\n} from 'lodash-es';\n\nexport type KityUtils = {\n each: typeof forEach;\n extend: typeof assign;\n deepExtend: typeof merge;\n clone: typeof cloneDeep;\n copy: typeof cloneDeep;\n queryPath: typeof get;\n getValue: typeof defaultTo;\n flatten: typeof flattenDeep;\n parallel: (v1: unknown, v2: unknown, op: (a: unknown, b: unknown) => unknown) => unknown;\n paralle: (v1: unknown, v2: unknown, op: (a: unknown, b: unknown) => unknown) => unknown;\n parallelize: (op: (a: unknown, b: unknown) => unknown) => (v1: unknown, v2: unknown) => unknown;\n isString: typeof isString;\n isFunction: typeof isFunction;\n isArray: typeof isArray;\n isNumber: typeof isNumber;\n isRegExp: typeof isRegExp;\n isObject: typeof isObject;\n isBoolean: typeof isBoolean;\n};\n\nconst utils: KityUtils = {\n each: forEach,\n extend: assign,\n deepExtend: merge,\n clone: cloneDeep,\n copy: cloneDeep,\n queryPath: get,\n getValue: defaultTo,\n flatten: flattenDeep,\n\n parallel: function parallel(v1: unknown, v2: unknown, op: (a: unknown, b: unknown) => unknown): unknown {\n if (isArray(v1) && isArray(v2)) {\n return (v1 as unknown[]).map((item, i) => parallel(item, (v2 as unknown[])[i], op));\n }\n\n if (isObject(v1) && isObject(v1) && isObject(v2)) {\n const Class = (v1 as { getClass?: () => { parse?: (val: unknown) => unknown } }).getClass?.();\n if (Class?.parse) {\n const v1Val = (v1 as { valueOf: () => unknown[] }).valueOf();\n const v2Val = (v2 as { valueOf: () => unknown[] }).valueOf();\n const result = parallel(v1Val, v2Val, op);\n return Class.parse(result);\n }\n const result: Record<string, unknown> = {};\n for (const name in v1 as object) {\n if (\n Object.prototype.hasOwnProperty.call(v1, name) &&\n Object.prototype.hasOwnProperty.call(v2, name)\n ) {\n result[name] = parallel(\n (v1 as Record<string, unknown>)[name],\n (v2 as Record<string, unknown>)[name],\n op,\n );\n }\n }\n return result;\n }\n\n if (!isNaN(Number(v1))) {\n return op(v1, v2);\n }\n\n return undefined;\n },\n\n paralle: null as unknown as KityUtils['paralle'],\n\n parallelize(op: (a: unknown, b: unknown) => unknown) {\n return (v1: unknown, v2: unknown) => utils.parallel(v1, v2, op);\n },\n\n isString,\n isFunction,\n isArray,\n isNumber,\n isRegExp,\n isObject,\n isBoolean,\n};\n\nutils.paralle = utils.parallel;\n\nexport default utils;\n","export function createLegacyBaseComponent(kity: { createClass: (name: string, definition: object) => unknown }) {\r\n return kity.createClass('Component', {\r\n constructor() {},\r\n });\r\n}\r\n","export const legacyEleType = {\n DRAPDOWN_BOX: 1,\n AREA: 2,\n DELIMITER: 3,\n} as const;\n","export const legacyGroupType = {\n GROUP: 'kf-editor-group',\n VIRTUAL: 'kf-editor-virtual-group',\n} as const;\n","const replacementMap: Record<string, string> = {\n '32': '\\\\,',\n 's+219': '\\\\{',\n 's+221': '\\\\}',\n '220': '\\\\backslash',\n 's+51': '\\\\#',\n 's+52': '\\\\$',\n 's+53': '\\\\%',\n 's+54': '\\\\^',\n 's+55': '\\\\&',\n 's+189': '\\\\_',\n 's+192': '\\\\~',\n};\n\nexport const legacyInputFilter = {\n getReplaceString(key: string | number) {\n return replacementMap[String(key)] || null;\n },\n};\n","export const legacyItemType = {\n BIG: 1,\n SMALL: 2,\n} as const;\n","export const legacyKfExtDef = {\n selectColor: 'rgba(42, 106, 189, 0.2)',\n allSelectColor: 'rgba(42, 106, 189, 0.6)',\n} as const;\n","export const legacySysconf = {\n cursorCharacter: '\\uF155',\n rootPlaceholder: {\n color: '#666',\n content: 'Type formula here',\n fontsize: 16,\n },\n scrollbar: {\n padding: 5,\n step: 150,\n },\n} as const;\n","export const legacyUiDef = {\n VIEW_STATE: {\n NO_OVERFLOW: 0,\n OVERFLOW: 1,\n },\n scrollbar: {\n step: 50,\n thumbMinSize: 50,\n },\n} as const;\n","export type TopicCallback = (...args: unknown[]) => void;\r\n\r\nexport type ElementOptions =\r\n | string\r\n | {\r\n className?: string;\r\n content?: string;\r\n };\r\n\r\nexport type NormalizedMouseEvent = MouseEvent & {\r\n originalEvent: MouseEvent | WheelEvent;\r\n wheelDelta: number;\r\n which: number;\r\n};\r\n\r\nconst topicPool = new Map<string, TopicCallback[]>();\r\n\r\nfunction getMouseButtonCode(event: MouseEvent | WheelEvent) {\r\n if (typeof event.which === 'number' && event.which > 0) {\r\n return event.which;\r\n }\r\n\r\n switch (event.button) {\r\n case 0:\r\n return 1;\r\n case 1:\r\n return 2;\r\n case 2:\r\n return 3;\r\n default:\r\n return 0;\r\n }\r\n}\r\n\r\nfunction getWheelDelta(event: MouseEvent | WheelEvent) {\r\n if ('wheelDelta' in event && typeof event.wheelDelta === 'number') {\r\n return event.wheelDelta;\r\n }\r\n\r\n if ('deltaY' in event && typeof event.deltaY === 'number') {\r\n return -event.deltaY * 40;\r\n }\r\n\r\n return 0;\r\n}\r\n\r\nexport function normalizeMouseEvent(event: MouseEvent | WheelEvent): NormalizedMouseEvent {\r\n const wrappedEvent = Object.create(event) as NormalizedMouseEvent;\r\n\r\n Object.defineProperties(wrappedEvent, {\r\n originalEvent: {\r\n value: event,\r\n enumerable: false,\r\n configurable: true,\r\n },\r\n wheelDelta: {\r\n value: getWheelDelta(event),\r\n enumerable: false,\r\n configurable: true,\r\n },\r\n which: {\r\n value: getMouseButtonCode(event),\r\n enumerable: false,\r\n configurable: true,\r\n },\r\n preventDefault: {\r\n value: event.preventDefault.bind(event),\r\n enumerable: false,\r\n configurable: true,\r\n },\r\n stopPropagation: {\r\n value: event.stopPropagation.bind(event),\r\n enumerable: false,\r\n configurable: true,\r\n },\r\n stopImmediatePropagation: {\r\n value: event.stopImmediatePropagation.bind(event),\r\n enumerable: false,\r\n configurable: true,\r\n },\r\n });\r\n\r\n return wrappedEvent;\r\n}\r\n\r\nexport function createElement(doc: Document, name: 'text', options: string): Text;\r\n// eslint-disable-next-line no-redeclare\r\nexport function createElement(doc: Document, name: string, options?: Exclude<ElementOptions, string>): HTMLElement;\r\n// eslint-disable-next-line no-redeclare\r\nexport function createElement(doc: Document, name: string, options?: ElementOptions) {\r\n if (name === 'text') {\r\n return doc.createTextNode(typeof options === 'string' ? options : '');\r\n }\r\n\r\n const node = doc.createElement(name);\r\n\r\n if (options && typeof options !== 'string') {\r\n if (options.className) {\r\n node.className = options.className;\r\n }\r\n\r\n if (options.content) {\r\n node.innerHTML = options.content;\r\n }\r\n }\r\n\r\n return node;\r\n}\r\n\r\nexport function addEvent(target: EventTarget | null, type: string, listener: (event: NormalizedMouseEvent) => void) {\r\n if (!target) {\r\n return;\r\n }\r\n\r\n target.addEventListener(type, (event) => {\r\n listener(normalizeMouseEvent(event as MouseEvent | WheelEvent));\r\n });\r\n}\r\n\r\nexport function delegateEvent(\r\n target: EventTarget | null,\r\n selector: string,\r\n type: string,\r\n listener: (this: Element, event: NormalizedMouseEvent) => void,\r\n) {\r\n if (!target) {\r\n return;\r\n }\r\n\r\n target.addEventListener(type, (event) => {\r\n const normalizedEvent = normalizeMouseEvent(event as MouseEvent | WheelEvent);\r\n let current = event.target instanceof Element ? event.target : null;\r\n\r\n while (current && current !== target) {\r\n if (current.matches(selector)) {\r\n listener.call(current, normalizedEvent);\r\n return;\r\n }\r\n current = current.parentElement;\r\n }\r\n });\r\n}\r\n\r\nexport function publish(topic: string, ...args: unknown[]) {\r\n const callbackList = topicPool.get(topic);\r\n\r\n if (!callbackList) {\r\n return;\r\n }\r\n\r\n callbackList.forEach((callback) => callback(...args));\r\n}\r\n\r\nexport function subscribe(topic: string, callback: TopicCallback) {\r\n const callbackList = topicPool.get(topic) ?? [];\r\n callbackList.push(callback);\r\n topicPool.set(topic, callbackList);\r\n}\r\n\r\nexport function getRectBox(node: Element) {\r\n return node.getBoundingClientRect();\r\n}\r\n\r\nexport function getClassList(node: Element) {\r\n return node.classList;\r\n}\r\n","import { addEvent, createElement, delegateEvent, getClassList, getRectBox, publish, subscribe } from '../dom-utils';\n\nexport const legacyUiUtils = {\n ele: createElement,\n getRectBox,\n on(target: EventTarget | null, type: string, fn: (event: Event) => void) {\n addEvent(target, type, fn);\n return this;\n },\n delegate(target: EventTarget | null, selector: string, type: string, fn: (event: Event) => void) {\n delegateEvent(target, selector, type, fn);\n return this;\n },\n publish(topic: string, ...args: unknown[]) {\n publish(topic, ...args);\n },\n subscribe,\n getClassList,\n};\n\nexport function createLegacyUiUtils() {\n return legacyUiUtils;\n}\n","export const legacyOtherPosition = {\r\n \"x=\\\\frac {-b\\\\pm\\\\sqrt {b^2-4ac}}{2a}\": {\r\n \"pos\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 310,\r\n \"height\": 73\r\n }\r\n },\r\n \"{\\\\placeholder/\\\\placeholder}\": {\r\n \"pos\": {\r\n \"x\": 315,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\frac \\\\placeholder\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 376,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"a^2+b^2=c^2\": {\r\n \"pos\": {\r\n \"x\": 437,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 310,\r\n \"height\": 73\r\n }\r\n },\r\n \"{\\\\left(x+a\\\\right)}^2=\\\\sum^n_{k=0}{\\\\left(^n_k\\\\right)x^ka^{n-k}}\": {\r\n \"pos\": {\r\n \"x\": 752,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 310,\r\n \"height\": 73\r\n }\r\n },\r\n \"\\\\frac {dy}{dx}\": {\r\n \"pos\": {\r\n \"x\": 1067,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\frac {\\\\Delta y}{\\\\Delta x}\": {\r\n \"pos\": {\r\n \"x\": 1128,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\frac {\\\\delta y}{\\\\delta x}\": {\r\n \"pos\": {\r\n \"x\": 1189,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\frac \\\\pi 2\": {\r\n \"pos\": {\r\n \"x\": 1250,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\placeholder^\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 1311,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\placeholder^\\\\placeholder_\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 1372,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\placeholder_\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 1433,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"{^\\\\placeholder_\\\\placeholder\\\\placeholder}\": {\r\n \"pos\": {\r\n \"x\": 1494,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"e^{-i\\\\omega t}\": {\r\n \"pos\": {\r\n \"x\": 1555,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"x^2\": {\r\n \"pos\": {\r\n \"x\": 1616,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"{}^n_1Y\": {\r\n \"pos\": {\r\n \"x\": 1677,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sqrt \\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 1738,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sqrt [\\\\placeholder] \\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 1799,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sqrt [2] \\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 1860,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sqrt [3] \\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 1921,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\frac {-b\\\\pm\\\\sqrt{b^2-4ac}}{2a}\": {\r\n \"pos\": {\r\n \"x\": 1982,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 137,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sqrt {a^2+b^2}\": {\r\n \"pos\": {\r\n \"x\": 2124,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 137,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\int \\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2266,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\int^\\\\placeholder_\\\\placeholder\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2327,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\iint\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2388,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\iint^\\\\placeholder_\\\\placeholder\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2449,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\iiint\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2510,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\iiint^\\\\placeholder_\\\\placeholder\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2571,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sum\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2632,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sum^\\\\placeholder_\\\\placeholder\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2693,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sum_\\\\placeholder\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 2754,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\left(\\\\placeholder\\\\right)\": {\r\n \"pos\": {\r\n \"x\": 2815,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\left[\\\\placeholder\\\\right]\": {\r\n \"pos\": {\r\n \"x\": 2876,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\left\\\\{\\\\placeholder\\\\right\\\\}\": {\r\n \"pos\": {\r\n \"x\": 2937,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\left|\\\\placeholder\\\\right|\": {\r\n \"pos\": {\r\n \"x\": 2998,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sin\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 3059,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\cos\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 3120,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\tan\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 3181,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\csc\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 3242,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sec\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 3303,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\cot\\\\placeholder\": {\r\n \"pos\": {\r\n \"x\": 3364,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\sin\\\\theta\": {\r\n \"pos\": {\r\n \"x\": 3425,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\cos{2x}\": {\r\n \"pos\": {\r\n \"x\": 3486,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 56,\r\n \"height\": 75\r\n }\r\n },\r\n \"\\\\tan\\\\theta=\\\\frac {\\\\sin\\\\theta}{\\\\cos\\\\theta}\": {\r\n \"pos\": {\r\n \"x\": 3547,\r\n \"y\": 0\r\n },\r\n \"size\": {\r\n \"width\": 137,\r\n \"height\": 75\r\n }\r\n }\r\n } as const;\r\n","import { kityToolbarAssets } from './asset-manifest';\n\nlet toolbarAssetFileMap: Record<string, string> = {\n 'btn.png': kityToolbarAssets.btn,\n 'other.png': kityToolbarAssets.other,\n};\n\nexport function setToolbarAssetUrls(assets: { btn: string; other: string }): void {\n toolbarAssetFileMap = {\n 'btn.png': assets.btn,\n 'other.png': assets.other,\n };\n}\n\nexport function resolveToolbarAssetPath(fileName: string, preferSvg = false): string {\n const normalizedFileName =\n preferSvg && fileName.toLowerCase().endsWith('.png')\n ? `${fileName.slice(0, -4)}.svg`\n : fileName;\n\n const mapped = toolbarAssetFileMap[normalizedFileName];\n if (mapped) {\n return mapped;\n }\n\n throw new Error(`Missing Kity toolbar asset URL for \"${normalizedFileName}\".`);\n}\n"],"mappings":"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","names":["eventHandler","isArray","isString","result","isArray","isString"]}