1 |
- {"ast":null,"code":"import { __decorate } from \"../../tslib.es6.js\";\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager.js\";\nimport { serialize } from \"../../Misc/decorators.js\";\nimport { KeyboardEventTypes } from \"../../Events/keyboardEvents.js\";\nimport { Tools } from \"../../Misc/tools.js\";\n/**\n * Manage the keyboard inputs to control the movement of a follow camera.\n * @see https://doc.babylonjs.com/features/featuresDeepDive/cameras/customizingCameraInputs\n */\nexport class FollowCameraKeyboardMoveInput {\n constructor() {\n /**\n * Defines the list of key codes associated with the up action (increase heightOffset)\n */\n this.keysHeightOffsetIncr = [38];\n /**\n * Defines the list of key codes associated with the down action (decrease heightOffset)\n */\n this.keysHeightOffsetDecr = [40];\n /**\n * Defines whether the Alt modifier key is required to move up/down (alter heightOffset)\n */\n this.keysHeightOffsetModifierAlt = false;\n /**\n * Defines whether the Ctrl modifier key is required to move up/down (alter heightOffset)\n */\n this.keysHeightOffsetModifierCtrl = false;\n /**\n * Defines whether the Shift modifier key is required to move up/down (alter heightOffset)\n */\n this.keysHeightOffsetModifierShift = false;\n /**\n * Defines the list of key codes associated with the left action (increase rotationOffset)\n */\n this.keysRotationOffsetIncr = [37];\n /**\n * Defines the list of key codes associated with the right action (decrease rotationOffset)\n */\n this.keysRotationOffsetDecr = [39];\n /**\n * Defines whether the Alt modifier key is required to move left/right (alter rotationOffset)\n */\n this.keysRotationOffsetModifierAlt = false;\n /**\n * Defines whether the Ctrl modifier key is required to move left/right (alter rotationOffset)\n */\n this.keysRotationOffsetModifierCtrl = false;\n /**\n * Defines whether the Shift modifier key is required to move left/right (alter rotationOffset)\n */\n this.keysRotationOffsetModifierShift = false;\n /**\n * Defines the list of key codes associated with the zoom-in action (decrease radius)\n */\n this.keysRadiusIncr = [40];\n /**\n * Defines the list of key codes associated with the zoom-out action (increase radius)\n */\n this.keysRadiusDecr = [38];\n /**\n * Defines whether the Alt modifier key is required to zoom in/out (alter radius value)\n */\n this.keysRadiusModifierAlt = true;\n /**\n * Defines whether the Ctrl modifier key is required to zoom in/out (alter radius value)\n */\n this.keysRadiusModifierCtrl = false;\n /**\n * Defines whether the Shift modifier key is required to zoom in/out (alter radius value)\n */\n this.keysRadiusModifierShift = false;\n /**\n * Defines the rate of change of heightOffset.\n */\n this.heightSensibility = 1;\n /**\n * Defines the rate of change of rotationOffset.\n */\n this.rotationSensibility = 1;\n /**\n * Defines the rate of change of radius.\n */\n this.radiusSensibility = 1;\n this._keys = new Array();\n }\n /**\n * Attach the input controls to a specific dom element to get the input from.\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\n */\n attachControl(noPreventDefault) {\n // eslint-disable-next-line prefer-rest-params\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\n if (this._onCanvasBlurObserver) {\n return;\n }\n this._scene = this.camera.getScene();\n this._engine = this._scene.getEngine();\n this._onCanvasBlurObserver = this._engine.onCanvasBlurObservable.add(() => {\n this._keys.length = 0;\n });\n this._onKeyboardObserver = this._scene.onKeyboardObservable.add(info => {\n const evt = info.event;\n if (!evt.metaKey) {\n if (info.type === KeyboardEventTypes.KEYDOWN) {\n this._ctrlPressed = evt.ctrlKey;\n this._altPressed = evt.altKey;\n this._shiftPressed = evt.shiftKey;\n if (this.keysHeightOffsetIncr.indexOf(evt.keyCode) !== -1 || this.keysHeightOffsetDecr.indexOf(evt.keyCode) !== -1 || this.keysRotationOffsetIncr.indexOf(evt.keyCode) !== -1 || this.keysRotationOffsetDecr.indexOf(evt.keyCode) !== -1 || this.keysRadiusIncr.indexOf(evt.keyCode) !== -1 || this.keysRadiusDecr.indexOf(evt.keyCode) !== -1) {\n const index = this._keys.indexOf(evt.keyCode);\n if (index === -1) {\n this._keys.push(evt.keyCode);\n }\n if (evt.preventDefault) {\n if (!noPreventDefault) {\n evt.preventDefault();\n }\n }\n }\n } else {\n if (this.keysHeightOffsetIncr.indexOf(evt.keyCode) !== -1 || this.keysHeightOffsetDecr.indexOf(evt.keyCode) !== -1 || this.keysRotationOffsetIncr.indexOf(evt.keyCode) !== -1 || this.keysRotationOffsetDecr.indexOf(evt.keyCode) !== -1 || this.keysRadiusIncr.indexOf(evt.keyCode) !== -1 || this.keysRadiusDecr.indexOf(evt.keyCode) !== -1) {\n const index = this._keys.indexOf(evt.keyCode);\n if (index >= 0) {\n this._keys.splice(index, 1);\n }\n if (evt.preventDefault) {\n if (!noPreventDefault) {\n evt.preventDefault();\n }\n }\n }\n }\n }\n });\n }\n /**\n * Detach the current controls from the specified dom element.\n */\n detachControl() {\n if (this._scene) {\n if (this._onKeyboardObserver) {\n this._scene.onKeyboardObservable.remove(this._onKeyboardObserver);\n }\n if (this._onCanvasBlurObserver) {\n this._engine.onCanvasBlurObservable.remove(this._onCanvasBlurObserver);\n }\n this._onKeyboardObserver = null;\n this._onCanvasBlurObserver = null;\n }\n this._keys.length = 0;\n }\n /**\n * Update the current camera state depending on the inputs that have been used this frame.\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\n */\n checkInputs() {\n if (this._onKeyboardObserver) {\n this._keys.forEach(keyCode => {\n if (this.keysHeightOffsetIncr.indexOf(keyCode) !== -1 && this._modifierHeightOffset()) {\n this.camera.heightOffset += this.heightSensibility;\n } else if (this.keysHeightOffsetDecr.indexOf(keyCode) !== -1 && this._modifierHeightOffset()) {\n this.camera.heightOffset -= this.heightSensibility;\n } else if (this.keysRotationOffsetIncr.indexOf(keyCode) !== -1 && this._modifierRotationOffset()) {\n this.camera.rotationOffset += this.rotationSensibility;\n this.camera.rotationOffset %= 360;\n } else if (this.keysRotationOffsetDecr.indexOf(keyCode) !== -1 && this._modifierRotationOffset()) {\n this.camera.rotationOffset -= this.rotationSensibility;\n this.camera.rotationOffset %= 360;\n } else if (this.keysRadiusIncr.indexOf(keyCode) !== -1 && this._modifierRadius()) {\n this.camera.radius += this.radiusSensibility;\n } else if (this.keysRadiusDecr.indexOf(keyCode) !== -1 && this._modifierRadius()) {\n this.camera.radius -= this.radiusSensibility;\n }\n });\n }\n }\n /**\n * Gets the class name of the current input.\n * @returns the class name\n */\n getClassName() {\n return \"FollowCameraKeyboardMoveInput\";\n }\n /**\n * Get the friendly name associated with the input class.\n * @returns the input friendly name\n */\n getSimpleName() {\n return \"keyboard\";\n }\n /**\n * Check if the pressed modifier keys (Alt/Ctrl/Shift) match those configured to\n * allow modification of the heightOffset value.\n * @returns true if modifier keys match\n */\n _modifierHeightOffset() {\n return this.keysHeightOffsetModifierAlt === this._altPressed && this.keysHeightOffsetModifierCtrl === this._ctrlPressed && this.keysHeightOffsetModifierShift === this._shiftPressed;\n }\n /**\n * Check if the pressed modifier keys (Alt/Ctrl/Shift) match those configured to\n * allow modification of the rotationOffset value.\n * @returns true if modifier keys match\n */\n _modifierRotationOffset() {\n return this.keysRotationOffsetModifierAlt === this._altPressed && this.keysRotationOffsetModifierCtrl === this._ctrlPressed && this.keysRotationOffsetModifierShift === this._shiftPressed;\n }\n /**\n * Check if the pressed modifier keys (Alt/Ctrl/Shift) match those configured to\n * allow modification of the radius value.\n * @returns true if modifier keys match\n */\n _modifierRadius() {\n return this.keysRadiusModifierAlt === this._altPressed && this.keysRadiusModifierCtrl === this._ctrlPressed && this.keysRadiusModifierShift === this._shiftPressed;\n }\n}\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetIncr\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetDecr\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetModifierAlt\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetModifierCtrl\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetModifierShift\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetIncr\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetDecr\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetModifierAlt\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetModifierCtrl\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetModifierShift\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusIncr\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusDecr\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusModifierAlt\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusModifierCtrl\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusModifierShift\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"heightSensibility\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"rotationSensibility\", void 0);\n__decorate([serialize()], FollowCameraKeyboardMoveInput.prototype, \"radiusSensibility\", void 0);\nCameraInputTypes[\"FollowCameraKeyboardMoveInput\"] = FollowCameraKeyboardMoveInput;","map":{"version":3,"names":["__decorate","CameraInputTypes","serialize","KeyboardEventTypes","Tools","FollowCameraKeyboardMoveInput","constructor","keysHeightOffsetIncr","keysHeightOffsetDecr","keysHeightOffsetModifierAlt","keysHeightOffsetModifierCtrl","keysHeightOffsetModifierShift","keysRotationOffsetIncr","keysRotationOffsetDecr","keysRotationOffsetModifierAlt","keysRotationOffsetModifierCtrl","keysRotationOffsetModifierShift","keysRadiusIncr","keysRadiusDecr","keysRadiusModifierAlt","keysRadiusModifierCtrl","keysRadiusModifierShift","heightSensibility","rotationSensibility","radiusSensibility","_keys","Array","attachControl","noPreventDefault","BackCompatCameraNoPreventDefault","arguments","_onCanvasBlurObserver","_scene","camera","getScene","_engine","getEngine","onCanvasBlurObservable","add","length","_onKeyboardObserver","onKeyboardObservable","info","evt","event","metaKey","type","KEYDOWN","_ctrlPressed","ctrlKey","_altPressed","altKey","_shiftPressed","shiftKey","indexOf","keyCode","index","push","preventDefault","splice","detachControl","remove","checkInputs","forEach","_modifierHeightOffset","heightOffset","_modifierRotationOffset","rotationOffset","_modifierRadius","radius","getClassName","getSimpleName","prototype"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@babylonjs/core/Cameras/Inputs/followCameraKeyboardMoveInput.js"],"sourcesContent":["import { __decorate } from \"../../tslib.es6.js\";\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager.js\";\nimport { serialize } from \"../../Misc/decorators.js\";\nimport { KeyboardEventTypes } from \"../../Events/keyboardEvents.js\";\nimport { Tools } from \"../../Misc/tools.js\";\n/**\n * Manage the keyboard inputs to control the movement of a follow camera.\n * @see https://doc.babylonjs.com/features/featuresDeepDive/cameras/customizingCameraInputs\n */\nexport class FollowCameraKeyboardMoveInput {\n constructor() {\n /**\n * Defines the list of key codes associated with the up action (increase heightOffset)\n */\n this.keysHeightOffsetIncr = [38];\n /**\n * Defines the list of key codes associated with the down action (decrease heightOffset)\n */\n this.keysHeightOffsetDecr = [40];\n /**\n * Defines whether the Alt modifier key is required to move up/down (alter heightOffset)\n */\n this.keysHeightOffsetModifierAlt = false;\n /**\n * Defines whether the Ctrl modifier key is required to move up/down (alter heightOffset)\n */\n this.keysHeightOffsetModifierCtrl = false;\n /**\n * Defines whether the Shift modifier key is required to move up/down (alter heightOffset)\n */\n this.keysHeightOffsetModifierShift = false;\n /**\n * Defines the list of key codes associated with the left action (increase rotationOffset)\n */\n this.keysRotationOffsetIncr = [37];\n /**\n * Defines the list of key codes associated with the right action (decrease rotationOffset)\n */\n this.keysRotationOffsetDecr = [39];\n /**\n * Defines whether the Alt modifier key is required to move left/right (alter rotationOffset)\n */\n this.keysRotationOffsetModifierAlt = false;\n /**\n * Defines whether the Ctrl modifier key is required to move left/right (alter rotationOffset)\n */\n this.keysRotationOffsetModifierCtrl = false;\n /**\n * Defines whether the Shift modifier key is required to move left/right (alter rotationOffset)\n */\n this.keysRotationOffsetModifierShift = false;\n /**\n * Defines the list of key codes associated with the zoom-in action (decrease radius)\n */\n this.keysRadiusIncr = [40];\n /**\n * Defines the list of key codes associated with the zoom-out action (increase radius)\n */\n this.keysRadiusDecr = [38];\n /**\n * Defines whether the Alt modifier key is required to zoom in/out (alter radius value)\n */\n this.keysRadiusModifierAlt = true;\n /**\n * Defines whether the Ctrl modifier key is required to zoom in/out (alter radius value)\n */\n this.keysRadiusModifierCtrl = false;\n /**\n * Defines whether the Shift modifier key is required to zoom in/out (alter radius value)\n */\n this.keysRadiusModifierShift = false;\n /**\n * Defines the rate of change of heightOffset.\n */\n this.heightSensibility = 1;\n /**\n * Defines the rate of change of rotationOffset.\n */\n this.rotationSensibility = 1;\n /**\n * Defines the rate of change of radius.\n */\n this.radiusSensibility = 1;\n this._keys = new Array();\n }\n /**\n * Attach the input controls to a specific dom element to get the input from.\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\n */\n attachControl(noPreventDefault) {\n // eslint-disable-next-line prefer-rest-params\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\n if (this._onCanvasBlurObserver) {\n return;\n }\n this._scene = this.camera.getScene();\n this._engine = this._scene.getEngine();\n this._onCanvasBlurObserver = this._engine.onCanvasBlurObservable.add(() => {\n this._keys.length = 0;\n });\n this._onKeyboardObserver = this._scene.onKeyboardObservable.add((info) => {\n const evt = info.event;\n if (!evt.metaKey) {\n if (info.type === KeyboardEventTypes.KEYDOWN) {\n this._ctrlPressed = evt.ctrlKey;\n this._altPressed = evt.altKey;\n this._shiftPressed = evt.shiftKey;\n if (this.keysHeightOffsetIncr.indexOf(evt.keyCode) !== -1 ||\n this.keysHeightOffsetDecr.indexOf(evt.keyCode) !== -1 ||\n this.keysRotationOffsetIncr.indexOf(evt.keyCode) !== -1 ||\n this.keysRotationOffsetDecr.indexOf(evt.keyCode) !== -1 ||\n this.keysRadiusIncr.indexOf(evt.keyCode) !== -1 ||\n this.keysRadiusDecr.indexOf(evt.keyCode) !== -1) {\n const index = this._keys.indexOf(evt.keyCode);\n if (index === -1) {\n this._keys.push(evt.keyCode);\n }\n if (evt.preventDefault) {\n if (!noPreventDefault) {\n evt.preventDefault();\n }\n }\n }\n }\n else {\n if (this.keysHeightOffsetIncr.indexOf(evt.keyCode) !== -1 ||\n this.keysHeightOffsetDecr.indexOf(evt.keyCode) !== -1 ||\n this.keysRotationOffsetIncr.indexOf(evt.keyCode) !== -1 ||\n this.keysRotationOffsetDecr.indexOf(evt.keyCode) !== -1 ||\n this.keysRadiusIncr.indexOf(evt.keyCode) !== -1 ||\n this.keysRadiusDecr.indexOf(evt.keyCode) !== -1) {\n const index = this._keys.indexOf(evt.keyCode);\n if (index >= 0) {\n this._keys.splice(index, 1);\n }\n if (evt.preventDefault) {\n if (!noPreventDefault) {\n evt.preventDefault();\n }\n }\n }\n }\n }\n });\n }\n /**\n * Detach the current controls from the specified dom element.\n */\n detachControl() {\n if (this._scene) {\n if (this._onKeyboardObserver) {\n this._scene.onKeyboardObservable.remove(this._onKeyboardObserver);\n }\n if (this._onCanvasBlurObserver) {\n this._engine.onCanvasBlurObservable.remove(this._onCanvasBlurObserver);\n }\n this._onKeyboardObserver = null;\n this._onCanvasBlurObserver = null;\n }\n this._keys.length = 0;\n }\n /**\n * Update the current camera state depending on the inputs that have been used this frame.\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\n */\n checkInputs() {\n if (this._onKeyboardObserver) {\n this._keys.forEach((keyCode) => {\n if (this.keysHeightOffsetIncr.indexOf(keyCode) !== -1 && this._modifierHeightOffset()) {\n this.camera.heightOffset += this.heightSensibility;\n }\n else if (this.keysHeightOffsetDecr.indexOf(keyCode) !== -1 && this._modifierHeightOffset()) {\n this.camera.heightOffset -= this.heightSensibility;\n }\n else if (this.keysRotationOffsetIncr.indexOf(keyCode) !== -1 && this._modifierRotationOffset()) {\n this.camera.rotationOffset += this.rotationSensibility;\n this.camera.rotationOffset %= 360;\n }\n else if (this.keysRotationOffsetDecr.indexOf(keyCode) !== -1 && this._modifierRotationOffset()) {\n this.camera.rotationOffset -= this.rotationSensibility;\n this.camera.rotationOffset %= 360;\n }\n else if (this.keysRadiusIncr.indexOf(keyCode) !== -1 && this._modifierRadius()) {\n this.camera.radius += this.radiusSensibility;\n }\n else if (this.keysRadiusDecr.indexOf(keyCode) !== -1 && this._modifierRadius()) {\n this.camera.radius -= this.radiusSensibility;\n }\n });\n }\n }\n /**\n * Gets the class name of the current input.\n * @returns the class name\n */\n getClassName() {\n return \"FollowCameraKeyboardMoveInput\";\n }\n /**\n * Get the friendly name associated with the input class.\n * @returns the input friendly name\n */\n getSimpleName() {\n return \"keyboard\";\n }\n /**\n * Check if the pressed modifier keys (Alt/Ctrl/Shift) match those configured to\n * allow modification of the heightOffset value.\n * @returns true if modifier keys match\n */\n _modifierHeightOffset() {\n return (this.keysHeightOffsetModifierAlt === this._altPressed &&\n this.keysHeightOffsetModifierCtrl === this._ctrlPressed &&\n this.keysHeightOffsetModifierShift === this._shiftPressed);\n }\n /**\n * Check if the pressed modifier keys (Alt/Ctrl/Shift) match those configured to\n * allow modification of the rotationOffset value.\n * @returns true if modifier keys match\n */\n _modifierRotationOffset() {\n return (this.keysRotationOffsetModifierAlt === this._altPressed &&\n this.keysRotationOffsetModifierCtrl === this._ctrlPressed &&\n this.keysRotationOffsetModifierShift === this._shiftPressed);\n }\n /**\n * Check if the pressed modifier keys (Alt/Ctrl/Shift) match those configured to\n * allow modification of the radius value.\n * @returns true if modifier keys match\n */\n _modifierRadius() {\n return this.keysRadiusModifierAlt === this._altPressed && this.keysRadiusModifierCtrl === this._ctrlPressed && this.keysRadiusModifierShift === this._shiftPressed;\n }\n}\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetIncr\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetDecr\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetModifierAlt\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetModifierCtrl\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysHeightOffsetModifierShift\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetIncr\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetDecr\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetModifierAlt\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetModifierCtrl\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRotationOffsetModifierShift\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusIncr\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusDecr\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusModifierAlt\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusModifierCtrl\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"keysRadiusModifierShift\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"heightSensibility\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"rotationSensibility\", void 0);\n__decorate([\n serialize()\n], FollowCameraKeyboardMoveInput.prototype, \"radiusSensibility\", void 0);\nCameraInputTypes[\"FollowCameraKeyboardMoveInput\"] = FollowCameraKeyboardMoveInput;\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|