@mlightcad/cad-simple-viewer 1.7.0 → 1.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -1
- package/dist/cad-simple-viewer.js +17658 -13023
- package/dist/cad-simple-viewer.umd.cjs +985 -114
- package/dist/mtext-renderer-worker.js +7390 -7160
- package/lib/app/AcApContext.d.ts.map +1 -1
- package/lib/app/AcApContext.js +4 -3
- package/lib/app/AcApContext.js.map +1 -1
- package/lib/app/AcApDocManager.d.ts +41 -18
- package/lib/app/AcApDocManager.d.ts.map +1 -1
- package/lib/app/AcApDocManager.js +89 -49
- package/lib/app/AcApDocManager.js.map +1 -1
- package/lib/app/AcApDocument.d.ts +3 -0
- package/lib/app/AcApDocument.d.ts.map +1 -1
- package/lib/app/AcApDocument.js +31 -24
- package/lib/app/AcApDocument.js.map +1 -1
- package/lib/app/AcApOpenDatabaseOptions.d.ts +33 -7
- package/lib/app/AcApOpenDatabaseOptions.d.ts.map +1 -1
- package/lib/app/AcApOpenDatabaseOptions.js +1 -1
- package/lib/app/AcApOpenDatabaseOptions.js.map +1 -1
- package/lib/app/AcApOpenFileProgressController.d.ts +13 -4
- package/lib/app/AcApOpenFileProgressController.d.ts.map +1 -1
- package/lib/app/AcApOpenFileProgressController.js +25 -6
- package/lib/app/AcApOpenFileProgressController.js.map +1 -1
- package/lib/app/AcApWorkerAssets.d.ts +3 -3
- package/lib/app/AcApWorkerAssets.d.ts.map +1 -1
- package/lib/app/AcApWorkerAssets.js +3 -3
- package/lib/app/AcApWorkerAssets.js.map +1 -1
- package/lib/app/index.d.ts +1 -0
- package/lib/app/index.d.ts.map +1 -1
- package/lib/app/index.js +1 -0
- package/lib/app/index.js.map +1 -1
- package/lib/app/notification/AcApNotificationEventBridge.d.ts +130 -0
- package/lib/app/notification/AcApNotificationEventBridge.d.ts.map +1 -0
- package/lib/app/notification/AcApNotificationEventBridge.js +309 -0
- package/lib/app/notification/AcApNotificationEventBridge.js.map +1 -0
- package/lib/app/notification/AcApNotificationService.d.ts +185 -0
- package/lib/app/notification/AcApNotificationService.d.ts.map +1 -0
- package/lib/app/notification/AcApNotificationService.js +271 -0
- package/lib/app/notification/AcApNotificationService.js.map +1 -0
- package/lib/app/notification/AcApNotificationStore.d.ts +147 -0
- package/lib/app/notification/AcApNotificationStore.d.ts.map +1 -0
- package/lib/app/notification/AcApNotificationStore.js +345 -0
- package/lib/app/notification/AcApNotificationStore.js.map +1 -0
- package/lib/app/notification/AcApNotificationTypes.d.ts +195 -0
- package/lib/app/notification/AcApNotificationTypes.d.ts.map +1 -0
- package/lib/app/notification/AcApNotificationTypes.js +78 -0
- package/lib/app/notification/AcApNotificationTypes.js.map +1 -0
- package/lib/app/notification/index.d.ts +13 -0
- package/lib/app/notification/index.d.ts.map +1 -0
- package/lib/app/notification/index.js +13 -0
- package/lib/app/notification/index.js.map +1 -0
- package/lib/command/AcApInstallDrawStyleSessionAccessory.js +11 -7
- package/lib/command/AcApInstallDrawStyleSessionAccessory.js.map +1 -1
- package/lib/command/AcApSwitchBgCmd.d.ts.map +1 -1
- package/lib/command/AcApSwitchBgCmd.js +7 -2
- package/lib/command/AcApSwitchBgCmd.js.map +1 -1
- package/lib/command/AcApToolbarDocBind.d.ts +19 -0
- package/lib/command/AcApToolbarDocBind.d.ts.map +1 -0
- package/lib/command/AcApToolbarDocBind.js +62 -0
- package/lib/command/AcApToolbarDocBind.js.map +1 -0
- package/lib/command/convert/AcApConvertToBmpCmd.d.ts +14 -0
- package/lib/command/convert/AcApConvertToBmpCmd.d.ts.map +1 -0
- package/lib/command/convert/AcApConvertToBmpCmd.js +34 -0
- package/lib/command/convert/AcApConvertToBmpCmd.js.map +1 -0
- package/lib/command/convert/AcApConvertToJpgCmd.d.ts +14 -0
- package/lib/command/convert/AcApConvertToJpgCmd.d.ts.map +1 -0
- package/lib/command/convert/AcApConvertToJpgCmd.js +34 -0
- package/lib/command/convert/AcApConvertToJpgCmd.js.map +1 -0
- package/lib/command/convert/AcApConvertToPngCmd.d.ts +4 -36
- package/lib/command/convert/AcApConvertToPngCmd.d.ts.map +1 -1
- package/lib/command/convert/AcApConvertToPngCmd.js +4 -138
- package/lib/command/convert/AcApConvertToPngCmd.js.map +1 -1
- package/lib/command/convert/AcApConvertToRasterImageCmd.d.ts +40 -0
- package/lib/command/convert/AcApConvertToRasterImageCmd.d.ts.map +1 -0
- package/lib/command/convert/AcApConvertToRasterImageCmd.js +161 -0
- package/lib/command/convert/AcApConvertToRasterImageCmd.js.map +1 -0
- package/lib/command/convert/{AcApPngConvertor.d.ts → AcApRasterImageConvertor.d.ts} +36 -12
- package/lib/command/convert/AcApRasterImageConvertor.d.ts.map +1 -0
- package/lib/command/convert/{AcApPngConvertor.js → AcApRasterImageConvertor.js} +163 -32
- package/lib/command/convert/AcApRasterImageConvertor.js.map +1 -0
- package/lib/command/convert/index.d.ts +4 -1
- package/lib/command/convert/index.d.ts.map +1 -1
- package/lib/command/convert/index.js +4 -1
- package/lib/command/convert/index.js.map +1 -1
- package/lib/command/index.d.ts +2 -0
- package/lib/command/index.d.ts.map +1 -1
- package/lib/command/index.js +2 -0
- package/lib/command/index.js.map +1 -1
- package/lib/command/markup/AcApMarkupCalloutCmd.d.ts.map +1 -1
- package/lib/command/markup/AcApMarkupCalloutCmd.js +51 -1
- package/lib/command/markup/AcApMarkupCalloutCmd.js.map +1 -1
- package/lib/command/markup/AcApMarkupCmdUtil.d.ts +5 -0
- package/lib/command/markup/AcApMarkupCmdUtil.d.ts.map +1 -1
- package/lib/command/markup/AcApMarkupCmdUtil.js +27 -9
- package/lib/command/markup/AcApMarkupCmdUtil.js.map +1 -1
- package/lib/command/markup/AcApMarkupShapeCallout.d.ts.map +1 -1
- package/lib/command/markup/AcApMarkupShapeCallout.js +49 -1
- package/lib/command/markup/AcApMarkupShapeCallout.js.map +1 -1
- package/lib/editor/global/AcEdUiLayout.d.ts +6 -0
- package/lib/editor/global/AcEdUiLayout.d.ts.map +1 -1
- package/lib/editor/global/AcEdUiLayout.js +6 -0
- package/lib/editor/global/AcEdUiLayout.js.map +1 -1
- package/lib/editor/input/ui/AcEdCanvasTouchCalloutGuard.d.ts +31 -0
- package/lib/editor/input/ui/AcEdCanvasTouchCalloutGuard.d.ts.map +1 -0
- package/lib/editor/input/ui/AcEdCanvasTouchCalloutGuard.js +67 -0
- package/lib/editor/input/ui/AcEdCanvasTouchCalloutGuard.js.map +1 -0
- package/lib/editor/input/ui/AcEdFloatingInput.d.ts +2 -0
- package/lib/editor/input/ui/AcEdFloatingInput.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdFloatingInput.js +13 -2
- package/lib/editor/input/ui/AcEdFloatingInput.js.map +1 -1
- package/lib/editor/input/ui/AcEdFloatingInputTypes.d.ts +6 -0
- package/lib/editor/input/ui/AcEdFloatingInputTypes.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdInputManager.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdInputManager.js +47 -7
- package/lib/editor/input/ui/AcEdInputManager.js.map +1 -1
- package/lib/editor/input/ui/AcEdMTextEditor.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdMTextEditor.js +2 -1
- package/lib/editor/input/ui/AcEdMTextEditor.js.map +1 -1
- package/lib/editor/input/ui/AcEdMobileBoxGesture.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdMobileBoxGesture.js +2 -0
- package/lib/editor/input/ui/AcEdMobileBoxGesture.js.map +1 -1
- package/lib/editor/input/ui/AcEdMobileCommandChrome.d.ts +18 -4
- package/lib/editor/input/ui/AcEdMobileCommandChrome.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdMobileCommandChrome.js +14 -0
- package/lib/editor/input/ui/AcEdMobileCommandChrome.js.map +1 -1
- package/lib/editor/input/ui/AcEdSessionAccessoryController.d.ts +10 -2
- package/lib/editor/input/ui/AcEdSessionAccessoryController.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdSessionAccessoryController.js +15 -4
- package/lib/editor/input/ui/AcEdSessionAccessoryController.js.map +1 -1
- package/lib/editor/input/ui/AcEdTouchPointTiming.d.ts +1 -1
- package/lib/editor/input/ui/AcEdTouchPointTiming.d.ts.map +1 -1
- package/lib/editor/input/ui/AcEdTouchPointTiming.js +1 -1
- package/lib/editor/input/ui/AcEdTouchPointTiming.js.map +1 -1
- package/lib/editor/input/ui/index.d.ts +1 -0
- package/lib/editor/input/ui/index.d.ts.map +1 -1
- package/lib/editor/input/ui/index.js +1 -0
- package/lib/editor/input/ui/index.js.map +1 -1
- package/lib/editor/view/AcEdBaseView.d.ts +12 -0
- package/lib/editor/view/AcEdBaseView.d.ts.map +1 -1
- package/lib/editor/view/AcEdBaseView.js +19 -9
- package/lib/editor/view/AcEdBaseView.js.map +1 -1
- package/lib/editor/view/AcEdSelectionBoxIntersect.d.ts +36 -0
- package/lib/editor/view/AcEdSelectionBoxIntersect.d.ts.map +1 -0
- package/lib/editor/view/AcEdSelectionBoxIntersect.js +113 -0
- package/lib/editor/view/AcEdSelectionBoxIntersect.js.map +1 -0
- package/lib/editor/view/index.d.ts +1 -0
- package/lib/editor/view/index.d.ts.map +1 -1
- package/lib/editor/view/index.js +1 -0
- package/lib/editor/view/index.js.map +1 -1
- package/lib/i18n/AcApI18n.d.ts +2 -1
- package/lib/i18n/AcApI18n.d.ts.map +1 -1
- package/lib/i18n/AcApI18n.js +4 -1
- package/lib/i18n/AcApI18n.js.map +1 -1
- package/lib/i18n/ar/command.d.ts +9 -0
- package/lib/i18n/ar/command.d.ts.map +1 -1
- package/lib/i18n/ar/command.js +1 -1
- package/lib/i18n/ar/command.js.map +1 -1
- package/lib/i18n/ar/jig.d.ts +47 -0
- package/lib/i18n/ar/jig.d.ts.map +1 -1
- package/lib/i18n/ar/jig.js +17 -1
- package/lib/i18n/ar/jig.js.map +1 -1
- package/lib/i18n/ar/main.d.ts +32 -0
- package/lib/i18n/ar/main.d.ts.map +1 -1
- package/lib/i18n/ar/main.js +38 -6
- package/lib/i18n/ar/main.js.map +1 -1
- package/lib/i18n/cs/command.d.ts +9 -0
- package/lib/i18n/cs/command.d.ts.map +1 -1
- package/lib/i18n/cs/command.js +9 -0
- package/lib/i18n/cs/command.js.map +1 -1
- package/lib/i18n/cs/jig.d.ts +47 -0
- package/lib/i18n/cs/jig.d.ts.map +1 -1
- package/lib/i18n/cs/jig.js +47 -0
- package/lib/i18n/cs/jig.js.map +1 -1
- package/lib/i18n/cs/main.d.ts +32 -0
- package/lib/i18n/cs/main.d.ts.map +1 -1
- package/lib/i18n/cs/main.js +38 -6
- package/lib/i18n/cs/main.js.map +1 -1
- package/lib/i18n/en/command.d.ts +9 -0
- package/lib/i18n/en/command.d.ts.map +1 -1
- package/lib/i18n/en/command.js +9 -0
- package/lib/i18n/en/command.js.map +1 -1
- package/lib/i18n/en/jig.d.ts +47 -0
- package/lib/i18n/en/jig.d.ts.map +1 -1
- package/lib/i18n/en/jig.js +47 -0
- package/lib/i18n/en/jig.js.map +1 -1
- package/lib/i18n/en/main.d.ts +32 -0
- package/lib/i18n/en/main.d.ts.map +1 -1
- package/lib/i18n/en/main.js +38 -6
- package/lib/i18n/en/main.js.map +1 -1
- package/lib/i18n/index.d.ts +2 -2
- package/lib/i18n/index.d.ts.map +1 -1
- package/lib/i18n/index.js.map +1 -1
- package/lib/i18n/tr/command.d.ts +9 -0
- package/lib/i18n/tr/command.d.ts.map +1 -1
- package/lib/i18n/tr/command.js +9 -0
- package/lib/i18n/tr/command.js.map +1 -1
- package/lib/i18n/tr/jig.d.ts +47 -0
- package/lib/i18n/tr/jig.d.ts.map +1 -1
- package/lib/i18n/tr/jig.js +47 -0
- package/lib/i18n/tr/jig.js.map +1 -1
- package/lib/i18n/tr/main.d.ts +32 -0
- package/lib/i18n/tr/main.d.ts.map +1 -1
- package/lib/i18n/tr/main.js +38 -6
- package/lib/i18n/tr/main.js.map +1 -1
- package/lib/i18n/zh/command.d.ts +9 -0
- package/lib/i18n/zh/command.d.ts.map +1 -1
- package/lib/i18n/zh/command.js +9 -0
- package/lib/i18n/zh/command.js.map +1 -1
- package/lib/i18n/zh/jig.d.ts +47 -0
- package/lib/i18n/zh/jig.d.ts.map +1 -1
- package/lib/i18n/zh/jig.js +47 -0
- package/lib/i18n/zh/jig.js.map +1 -1
- package/lib/i18n/zh/main.d.ts +32 -0
- package/lib/i18n/zh/main.d.ts.map +1 -1
- package/lib/i18n/zh/main.js +38 -6
- package/lib/i18n/zh/main.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts +6 -0
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts.map +1 -1
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js +10 -0
- package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js.map +1 -1
- package/lib/spatialIndex/AcTrLinearSpatialIndex.d.ts +4 -0
- package/lib/spatialIndex/AcTrLinearSpatialIndex.d.ts.map +1 -1
- package/lib/spatialIndex/AcTrLinearSpatialIndex.js +9 -0
- package/lib/spatialIndex/AcTrLinearSpatialIndex.js.map +1 -1
- package/lib/spatialIndex/AcTrRBushSpatialIndex.d.ts +4 -0
- package/lib/spatialIndex/AcTrRBushSpatialIndex.d.ts.map +1 -1
- package/lib/spatialIndex/AcTrRBushSpatialIndex.js +9 -0
- package/lib/spatialIndex/AcTrRBushSpatialIndex.js.map +1 -1
- package/lib/ui/AcUiDefaultNotificationUi.d.ts +167 -0
- package/lib/ui/AcUiDefaultNotificationUi.d.ts.map +1 -0
- package/lib/ui/AcUiDefaultNotificationUi.js +604 -0
- package/lib/ui/AcUiDefaultNotificationUi.js.map +1 -0
- package/lib/ui/AcUiDrawStyle.d.ts +2 -1
- package/lib/ui/AcUiDrawStyle.d.ts.map +1 -1
- package/lib/ui/AcUiDrawStyle.js +2 -1
- package/lib/ui/AcUiDrawStyle.js.map +1 -1
- package/lib/ui/AcUiDrawStyleSessionAccessory.d.ts.map +1 -1
- package/lib/ui/AcUiDrawStyleSessionAccessory.js +5 -1
- package/lib/ui/AcUiDrawStyleSessionAccessory.js.map +1 -1
- package/lib/ui/AcUiMobileSessionPanel.d.ts +73 -8
- package/lib/ui/AcUiMobileSessionPanel.d.ts.map +1 -1
- package/lib/ui/AcUiMobileSessionPanel.js +314 -49
- package/lib/ui/AcUiMobileSessionPanel.js.map +1 -1
- package/lib/ui/AcUiShortCutToolbar.d.ts +24 -0
- package/lib/ui/AcUiShortCutToolbar.d.ts.map +1 -1
- package/lib/ui/AcUiShortCutToolbar.js +73 -5
- package/lib/ui/AcUiShortCutToolbar.js.map +1 -1
- package/lib/ui/icons.d.ts +7 -1
- package/lib/ui/icons.d.ts.map +1 -1
- package/lib/ui/icons.js +10 -2
- package/lib/ui/icons.js.map +1 -1
- package/lib/ui/index.d.ts +2 -0
- package/lib/ui/index.d.ts.map +1 -1
- package/lib/ui/index.js +2 -0
- package/lib/ui/index.js.map +1 -1
- package/lib/ui/toolbar/AcUiDropdownMenu.d.ts +48 -0
- package/lib/ui/toolbar/AcUiDropdownMenu.d.ts.map +1 -0
- package/lib/ui/toolbar/AcUiDropdownMenu.js +116 -0
- package/lib/ui/toolbar/AcUiDropdownMenu.js.map +1 -0
- package/lib/ui/toolbar/AcUiSubToolbar.d.ts +125 -0
- package/lib/ui/toolbar/AcUiSubToolbar.d.ts.map +1 -0
- package/lib/ui/toolbar/AcUiSubToolbar.js +625 -0
- package/lib/ui/toolbar/AcUiSubToolbar.js.map +1 -0
- package/lib/ui/toolbar/AcUiToolbar.d.ts +446 -0
- package/lib/ui/toolbar/AcUiToolbar.d.ts.map +1 -0
- package/lib/ui/toolbar/AcUiToolbar.js +1550 -0
- package/lib/ui/toolbar/AcUiToolbar.js.map +1 -0
- package/lib/ui/toolbar/AcUiToolbarStyles.d.ts +20 -0
- package/lib/ui/toolbar/AcUiToolbarStyles.d.ts.map +1 -0
- package/lib/ui/toolbar/AcUiToolbarStyles.js +34 -0
- package/lib/ui/toolbar/AcUiToolbarStyles.js.map +1 -0
- package/lib/ui/toolbar/acuiWrapPackLayout.d.ts +19 -0
- package/lib/ui/toolbar/acuiWrapPackLayout.d.ts.map +1 -0
- package/lib/ui/toolbar/acuiWrapPackLayout.js +36 -0
- package/lib/ui/toolbar/acuiWrapPackLayout.js.map +1 -0
- package/lib/ui/toolbar/index.d.ts +19 -0
- package/lib/ui/toolbar/index.d.ts.map +1 -0
- package/lib/ui/toolbar/index.js +15 -0
- package/lib/ui/toolbar/index.js.map +1 -0
- package/lib/ui/toolbar/resolveToolbarChrome.d.ts +14 -0
- package/lib/ui/toolbar/resolveToolbarChrome.d.ts.map +1 -0
- package/lib/ui/toolbar/resolveToolbarChrome.js +35 -0
- package/lib/ui/toolbar/resolveToolbarChrome.js.map +1 -0
- package/lib/ui/toolbar/resolveToolbarItemState.d.ts +63 -0
- package/lib/ui/toolbar/resolveToolbarItemState.d.ts.map +1 -0
- package/lib/ui/toolbar/resolveToolbarItemState.js +171 -0
- package/lib/ui/toolbar/resolveToolbarItemState.js.map +1 -0
- package/lib/ui/toolbar/toolbarItemUtils.d.ts +62 -0
- package/lib/ui/toolbar/toolbarItemUtils.d.ts.map +1 -0
- package/lib/ui/toolbar/toolbarItemUtils.js +184 -0
- package/lib/ui/toolbar/toolbarItemUtils.js.map +1 -0
- package/lib/ui/toolbar/types.d.ts +268 -0
- package/lib/ui/toolbar/types.d.ts.map +1 -0
- package/lib/ui/toolbar/types.js +8 -0
- package/lib/ui/toolbar/types.js.map +1 -0
- package/lib/ui-html-entry.d.ts +8 -1
- package/lib/ui-html-entry.d.ts.map +1 -1
- package/lib/ui-html-entry.js +6 -1
- package/lib/ui-html-entry.js.map +1 -1
- package/lib/util/AcApAnalyzeUnsupportedDrawing.d.ts +53 -0
- package/lib/util/AcApAnalyzeUnsupportedDrawing.d.ts.map +1 -0
- package/lib/util/AcApAnalyzeUnsupportedDrawing.js +164 -0
- package/lib/util/AcApAnalyzeUnsupportedDrawing.js.map +1 -0
- package/lib/util/AcApFormatFontMissedMessage.d.ts +32 -0
- package/lib/util/AcApFormatFontMissedMessage.d.ts.map +1 -0
- package/lib/util/AcApFormatFontMissedMessage.js +46 -0
- package/lib/util/AcApFormatFontMissedMessage.js.map +1 -0
- package/lib/util/AcApFormatUnsupportedEntitiesMessage.d.ts +44 -0
- package/lib/util/AcApFormatUnsupportedEntitiesMessage.d.ts.map +1 -0
- package/lib/util/AcApFormatUnsupportedEntitiesMessage.js +105 -0
- package/lib/util/AcApFormatUnsupportedEntitiesMessage.js.map +1 -0
- package/lib/util/AcApMessageLink.d.ts +41 -0
- package/lib/util/AcApMessageLink.d.ts.map +1 -0
- package/lib/util/AcApMessageLink.js +127 -0
- package/lib/util/AcApMessageLink.js.map +1 -0
- package/lib/util/AcApOpenFileErrorMessage.d.ts +18 -1
- package/lib/util/AcApOpenFileErrorMessage.d.ts.map +1 -1
- package/lib/util/AcApOpenFileErrorMessage.js +34 -2
- package/lib/util/AcApOpenFileErrorMessage.js.map +1 -1
- package/lib/util/index.d.ts +4 -0
- package/lib/util/index.d.ts.map +1 -1
- package/lib/util/index.js +4 -0
- package/lib/util/index.js.map +1 -1
- package/lib/view/AcTrDirectBatch.d.ts.map +1 -1
- package/lib/view/AcTrDirectBatch.js +12 -1
- package/lib/view/AcTrDirectBatch.js.map +1 -1
- package/lib/view/AcTrLayer.d.ts +13 -1
- package/lib/view/AcTrLayer.d.ts.map +1 -1
- package/lib/view/AcTrLayer.js +28 -11
- package/lib/view/AcTrLayer.js.map +1 -1
- package/lib/view/AcTrLayout.d.ts +17 -2
- package/lib/view/AcTrLayout.d.ts.map +1 -1
- package/lib/view/AcTrLayout.js +44 -3
- package/lib/view/AcTrLayout.js.map +1 -1
- package/lib/view/AcTrProgressiveOpenFitController.d.ts +8 -0
- package/lib/view/AcTrProgressiveOpenFitController.d.ts.map +1 -1
- package/lib/view/AcTrProgressiveOpenFitController.js +13 -0
- package/lib/view/AcTrProgressiveOpenFitController.js.map +1 -1
- package/lib/view/AcTrScene.d.ts +4 -0
- package/lib/view/AcTrScene.d.ts.map +1 -1
- package/lib/view/AcTrScene.js +6 -0
- package/lib/view/AcTrScene.js.map +1 -1
- package/lib/view/AcTrView2d.d.ts +173 -17
- package/lib/view/AcTrView2d.d.ts.map +1 -1
- package/lib/view/AcTrView2d.js +742 -144
- package/lib/view/AcTrView2d.js.map +1 -1
- package/lib/view/fontLoadRegen.d.ts +25 -0
- package/lib/view/fontLoadRegen.d.ts.map +1 -0
- package/lib/view/fontLoadRegen.js +33 -0
- package/lib/view/fontLoadRegen.js.map +1 -0
- package/package.json +10 -8
- package/src/ui/icons.ts +14 -2
- package/lib/command/convert/AcApPngConvertor.d.ts.map +0 -1
- package/lib/command/convert/AcApPngConvertor.js.map +0 -1
|
@@ -61,9 +61,13 @@ import { isOpenFileProgressComplete } from './openFileProgress';
|
|
|
61
61
|
* `setMessage` only when the localized stage text changes. Progress events
|
|
62
62
|
* still emit on every callback so listeners see fine-grained percentages.
|
|
63
63
|
*
|
|
64
|
-
* When
|
|
65
|
-
*
|
|
66
|
-
*
|
|
64
|
+
* When scene convert is still draining after CONVERSION `END`, the overlay
|
|
65
|
+
* stays up (see-through during progressive open) with "Rendering drawing ..."
|
|
66
|
+
* until {@link setSceneBusyGate} reports idle. The gate is driven by
|
|
67
|
+
* {@link AcApOpenDatabaseOptions.progressiveRendering}: when progressive
|
|
68
|
+
* rendering is on it tracks entity convert only; when off it also waits for
|
|
69
|
+
* deferred glyph jobs so pan/zoom stay blocked while text catches up.
|
|
70
|
+
* Deprecated `waitForTextGeometry` is ignored.
|
|
67
71
|
*/
|
|
68
72
|
var AcApOpenFileProgressController = /** @class */ (function () {
|
|
69
73
|
/**
|
|
@@ -74,6 +78,8 @@ var AcApOpenFileProgressController = /** @class */ (function () {
|
|
|
74
78
|
this._overlayVisible = false;
|
|
75
79
|
this._lastMessage = '';
|
|
76
80
|
this._seeThrough = false;
|
|
81
|
+
/** Consecutive idle polls while holding the overlay after CONVERSION END. */
|
|
82
|
+
this._holdIdleStreak = 0;
|
|
77
83
|
this._progress = new AcApProgress({
|
|
78
84
|
host: host,
|
|
79
85
|
overlayColor: AcApOpenFileProgressController.OVERLAY_DEFAULT
|
|
@@ -100,7 +106,7 @@ var AcApOpenFileProgressController = /** @class */ (function () {
|
|
|
100
106
|
};
|
|
101
107
|
/**
|
|
102
108
|
* Gate that returns true while the view still has entities to convert.
|
|
103
|
-
* Used to keep the overlay until
|
|
109
|
+
* Used to keep the overlay until scene convert finishes (not deferred text).
|
|
104
110
|
*/
|
|
105
111
|
AcApOpenFileProgressController.prototype.setSceneBusyGate = function (gate) {
|
|
106
112
|
this._sceneBusyGate = gate;
|
|
@@ -122,6 +128,7 @@ var AcApOpenFileProgressController = /** @class */ (function () {
|
|
|
122
128
|
this._stage = undefined;
|
|
123
129
|
this._overlayVisible = false;
|
|
124
130
|
this._lastMessage = '';
|
|
131
|
+
this._holdIdleStreak = 0;
|
|
125
132
|
};
|
|
126
133
|
/**
|
|
127
134
|
* Shows the open-file overlay immediately and yields so it can paint before
|
|
@@ -228,16 +235,24 @@ var AcApOpenFileProgressController = /** @class */ (function () {
|
|
|
228
235
|
if (this._holdPollId != null) {
|
|
229
236
|
return;
|
|
230
237
|
}
|
|
238
|
+
this._holdIdleStreak = 0;
|
|
231
239
|
var poll = function () {
|
|
232
240
|
var _a;
|
|
233
241
|
if ((_a = _this._sceneBusyGate) === null || _a === void 0 ? void 0 : _a.call(_this)) {
|
|
234
|
-
_this.
|
|
242
|
+
_this._holdIdleStreak = 0;
|
|
243
|
+
_this._holdPollId = setTimeout(poll, AcApOpenFileProgressController.HOLD_POLL_MS);
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
_this._holdIdleStreak++;
|
|
247
|
+
if (_this._holdIdleStreak < AcApOpenFileProgressController.HOLD_IDLE_STREAK) {
|
|
248
|
+
_this._holdPollId = setTimeout(poll, AcApOpenFileProgressController.HOLD_POLL_MS);
|
|
235
249
|
return;
|
|
236
250
|
}
|
|
237
251
|
_this._holdPollId = undefined;
|
|
252
|
+
_this._holdIdleStreak = 0;
|
|
238
253
|
_this.hideAndReset();
|
|
239
254
|
};
|
|
240
|
-
this._holdPollId = setTimeout(poll,
|
|
255
|
+
this._holdPollId = setTimeout(poll, AcApOpenFileProgressController.HOLD_POLL_MS);
|
|
241
256
|
};
|
|
242
257
|
AcApOpenFileProgressController.prototype.hideAndReset = function () {
|
|
243
258
|
var _a;
|
|
@@ -251,9 +266,13 @@ var AcApOpenFileProgressController = /** @class */ (function () {
|
|
|
251
266
|
clearTimeout(this._holdPollId);
|
|
252
267
|
this._holdPollId = undefined;
|
|
253
268
|
}
|
|
269
|
+
this._holdIdleStreak = 0;
|
|
254
270
|
};
|
|
255
271
|
AcApOpenFileProgressController.OVERLAY_DEFAULT = 'rgba(0,0,0,0.45)';
|
|
256
272
|
AcApOpenFileProgressController.OVERLAY_SEE_THROUGH = 'rgba(0,0,0,0.16)';
|
|
273
|
+
/** Match {@link AcTrView2d.waitUntilIdle}: require two idle samples. */
|
|
274
|
+
AcApOpenFileProgressController.HOLD_IDLE_STREAK = 2;
|
|
275
|
+
AcApOpenFileProgressController.HOLD_POLL_MS = 50;
|
|
257
276
|
return AcApOpenFileProgressController;
|
|
258
277
|
}());
|
|
259
278
|
export { AcApOpenFileProgressController };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcApOpenFileProgressController.js","sourceRoot":"","sources":["../../src/app/AcApOpenFileProgressController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EACL,iBAAiB,EAElB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAA;AAE/D
|
|
1
|
+
{"version":3,"file":"AcApOpenFileProgressController.js","sourceRoot":"","sources":["../../src/app/AcApOpenFileProgressController.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,12 +22,12 @@ export declare const LIBREDWG_PARSER_WASM_FILE = "libredwg-web.wasm";
|
|
|
22
22
|
/** MTEXT layout/shaping worker from `@mlightcad/mtext-renderer`. */
|
|
23
23
|
export declare const MTEXT_RENDERER_WORKER_FILE = "mtext-renderer-worker.js";
|
|
24
24
|
/**
|
|
25
|
-
* Proprietary DWG parser worker from private package `@
|
|
25
|
+
* Proprietary DWG parser worker from private package `@mlightcad/dwg-converter`.
|
|
26
26
|
* Not registered by default; used when the host app opts into that converter.
|
|
27
27
|
*/
|
|
28
28
|
export declare const DWG_PARSER_WORKER_FILE = "dwg-parser-worker.js";
|
|
29
29
|
/**
|
|
30
|
-
* Proprietary DWG parser main-thread module from `@
|
|
30
|
+
* Proprietary DWG parser main-thread module from `@mlightcad/dwg-converter`.
|
|
31
31
|
* Used when parsing DWG on the main thread instead of a Web Worker.
|
|
32
32
|
*/
|
|
33
33
|
export declare const DWG_PARSER_MAIN_FILE = "dwg-parser-main.js";
|
|
@@ -36,5 +36,5 @@ export declare const LIBREDWG_CONVERTER_PACKAGE = "@mlightcad/libredwg-converter
|
|
|
36
36
|
/** npm package that ships {@link MTEXT_RENDERER_WORKER_FILE}. */
|
|
37
37
|
export declare const MTEXT_RENDERER_PACKAGE = "@mlightcad/mtext-renderer";
|
|
38
38
|
/** Private npm package that ships {@link DWG_PARSER_WORKER_FILE} / {@link DWG_PARSER_MAIN_FILE}. */
|
|
39
|
-
export declare const DWG_CONVERTER_PACKAGE = "@
|
|
39
|
+
export declare const DWG_CONVERTER_PACKAGE = "@mlightcad/dwg-converter";
|
|
40
40
|
//# sourceMappingURL=AcApWorkerAssets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcApWorkerAssets.d.ts","sourceRoot":"","sources":["../../src/app/AcApWorkerAssets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;GAGG;AACH,eAAO,MAAM,2BAA2B,8BAA8B,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,yBAAyB,sBAAsB,CAAA;AAE5D,oEAAoE;AACpE,eAAO,MAAM,0BAA0B,6BAA6B,CAAA;AAEpE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,yBAAyB,CAAA;AAE5D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,uBAAuB,CAAA;AAExD,kEAAkE;AAClE,eAAO,MAAM,0BAA0B,kCAAkC,CAAA;AAEzE,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,8BAA8B,CAAA;AAEjE,oGAAoG;AACpG,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"AcApWorkerAssets.d.ts","sourceRoot":"","sources":["../../src/app/AcApWorkerAssets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;GAGG;AACH,eAAO,MAAM,2BAA2B,8BAA8B,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,yBAAyB,sBAAsB,CAAA;AAE5D,oEAAoE;AACpE,eAAO,MAAM,0BAA0B,6BAA6B,CAAA;AAEpE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,yBAAyB,CAAA;AAE5D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,uBAAuB,CAAA;AAExD,kEAAkE;AAClE,eAAO,MAAM,0BAA0B,kCAAkC,CAAA;AAEzE,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,8BAA8B,CAAA;AAEjE,oGAAoG;AACpG,eAAO,MAAM,qBAAqB,6BAA6B,CAAA"}
|
|
@@ -22,12 +22,12 @@ export var LIBREDWG_PARSER_WASM_FILE = 'libredwg-web.wasm';
|
|
|
22
22
|
/** MTEXT layout/shaping worker from `@mlightcad/mtext-renderer`. */
|
|
23
23
|
export var MTEXT_RENDERER_WORKER_FILE = 'mtext-renderer-worker.js';
|
|
24
24
|
/**
|
|
25
|
-
* Proprietary DWG parser worker from private package `@
|
|
25
|
+
* Proprietary DWG parser worker from private package `@mlightcad/dwg-converter`.
|
|
26
26
|
* Not registered by default; used when the host app opts into that converter.
|
|
27
27
|
*/
|
|
28
28
|
export var DWG_PARSER_WORKER_FILE = 'dwg-parser-worker.js';
|
|
29
29
|
/**
|
|
30
|
-
* Proprietary DWG parser main-thread module from `@
|
|
30
|
+
* Proprietary DWG parser main-thread module from `@mlightcad/dwg-converter`.
|
|
31
31
|
* Used when parsing DWG on the main thread instead of a Web Worker.
|
|
32
32
|
*/
|
|
33
33
|
export var DWG_PARSER_MAIN_FILE = 'dwg-parser-main.js';
|
|
@@ -36,5 +36,5 @@ export var LIBREDWG_CONVERTER_PACKAGE = '@mlightcad/libredwg-converter';
|
|
|
36
36
|
/** npm package that ships {@link MTEXT_RENDERER_WORKER_FILE}. */
|
|
37
37
|
export var MTEXT_RENDERER_PACKAGE = '@mlightcad/mtext-renderer';
|
|
38
38
|
/** Private npm package that ships {@link DWG_PARSER_WORKER_FILE} / {@link DWG_PARSER_MAIN_FILE}. */
|
|
39
|
-
export var DWG_CONVERTER_PACKAGE = '@
|
|
39
|
+
export var DWG_CONVERTER_PACKAGE = '@mlightcad/dwg-converter';
|
|
40
40
|
//# sourceMappingURL=AcApWorkerAssets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcApWorkerAssets.js","sourceRoot":"","sources":["../../src/app/AcApWorkerAssets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAM,2BAA2B,GAAG,2BAA2B,CAAA;AAEtE;;;GAGG;AACH,MAAM,CAAC,IAAM,yBAAyB,GAAG,mBAAmB,CAAA;AAE5D,oEAAoE;AACpE,MAAM,CAAC,IAAM,0BAA0B,GAAG,0BAA0B,CAAA;AAEpE;;;GAGG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG,sBAAsB,CAAA;AAE5D;;;GAGG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAAG,oBAAoB,CAAA;AAExD,kEAAkE;AAClE,MAAM,CAAC,IAAM,0BAA0B,GAAG,+BAA+B,CAAA;AAEzE,iEAAiE;AACjE,MAAM,CAAC,IAAM,sBAAsB,GAAG,2BAA2B,CAAA;AAEjE,oGAAoG;AACpG,MAAM,CAAC,IAAM,qBAAqB,GAAG,
|
|
1
|
+
{"version":3,"file":"AcApWorkerAssets.js","sourceRoot":"","sources":["../../src/app/AcApWorkerAssets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;GAGG;AACH,MAAM,CAAC,IAAM,2BAA2B,GAAG,2BAA2B,CAAA;AAEtE;;;GAGG;AACH,MAAM,CAAC,IAAM,yBAAyB,GAAG,mBAAmB,CAAA;AAE5D,oEAAoE;AACpE,MAAM,CAAC,IAAM,0BAA0B,GAAG,0BAA0B,CAAA;AAEpE;;;GAGG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG,sBAAsB,CAAA;AAE5D;;;GAGG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAAG,oBAAoB,CAAA;AAExD,kEAAkE;AAClE,MAAM,CAAC,IAAM,0BAA0B,GAAG,+BAA+B,CAAA;AAEzE,iEAAiE;AACjE,MAAM,CAAC,IAAM,sBAAsB,GAAG,2BAA2B,CAAA;AAEjE,oGAAoG;AACpG,MAAM,CAAC,IAAM,qBAAqB,GAAG,0BAA0B,CAAA"}
|
package/lib/app/index.d.ts
CHANGED
|
@@ -18,4 +18,5 @@ export type { AcApOpenDatabaseOptions, AcApOpenSysVars } from './AcApOpenDatabas
|
|
|
18
18
|
export { AcApOpenViewMode } from './AcApOpenDatabaseOptions';
|
|
19
19
|
export type { AcApOpenDocumentDefaultsResolver, AcApOpenFileDialogOptions } from './AcApOpenFileDialog';
|
|
20
20
|
export { acapInstallOpenFileDialog, acapUninstallOpenFileDialog, acapUpdateOpenFileDialogOptions } from './AcApOpenFileDialog';
|
|
21
|
+
export * from './notification';
|
|
21
22
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/app/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,YAAY,EACV,uBAAuB,EACvB,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,YAAY,EACV,gCAAgC,EAChC,yBAAyB,EAC1B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,+BAA+B,EAChC,MAAM,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,YAAY,EACV,uBAAuB,EACvB,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,YAAY,EACV,gCAAgC,EAChC,yBAAyB,EAC1B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,+BAA+B,EAChC,MAAM,sBAAsB,CAAA;AAC7B,cAAc,gBAAgB,CAAA"}
|
package/lib/app/index.js
CHANGED
|
@@ -16,4 +16,5 @@ export * from './AcApSettingManager';
|
|
|
16
16
|
export * from './AcApLayerSessionState';
|
|
17
17
|
export { AcApOpenViewMode } from './AcApOpenDatabaseOptions';
|
|
18
18
|
export { acapInstallOpenFileDialog, acapUninstallOpenFileDialog, acapUpdateOpenFileDialogOptions } from './AcApOpenFileDialog';
|
|
19
|
+
export * from './notification';
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
package/lib/app/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AAKvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAK5D,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,+BAA+B,EAChC,MAAM,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AAKvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAK5D,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,+BAA+B,EAChC,MAAM,sBAAsB,CAAA;AAC7B,cAAc,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import type { AcApDocManager } from '../AcApDocManager';
|
|
2
|
+
import type { AcApNotificationCenter } from './AcApNotificationTypes';
|
|
3
|
+
/**
|
|
4
|
+
* Subscribes to engine events and forwards user-visible alerts into the active
|
|
5
|
+
* {@link AcApNotificationCenter}.
|
|
6
|
+
*
|
|
7
|
+
* Shared by the built-in DOM center and host overrides (e.g. cad-viewer).
|
|
8
|
+
* Notifications are tagged with the current {@link AcApDocSession.id}.
|
|
9
|
+
*/
|
|
10
|
+
export declare class AcApNotificationEventBridge {
|
|
11
|
+
/** Document manager whose lifecycle events drive session scoping. */
|
|
12
|
+
private readonly _docManager;
|
|
13
|
+
/** Lazily resolves the active center (built-in or host override). */
|
|
14
|
+
private _getCenter;
|
|
15
|
+
/** Parser unknown-entity counts keyed by {@link AcApDocSession.id}. */
|
|
16
|
+
private readonly _pendingUnknownBySession;
|
|
17
|
+
/**
|
|
18
|
+
* Sessions that already received an unsupported-entity pass for the current
|
|
19
|
+
* open. Prevents tab switches from clearing and re-scanning (and from
|
|
20
|
+
* dropping warnings that depended solely on the one-shot PARSE stats).
|
|
21
|
+
*/
|
|
22
|
+
private readonly _unsupportedNotifiedSessions;
|
|
23
|
+
/** Whether {@link install} has attached listeners. */
|
|
24
|
+
private _installed;
|
|
25
|
+
/**
|
|
26
|
+
* Builds options that stamp the active session id onto a new notification.
|
|
27
|
+
*
|
|
28
|
+
* @returns `{ sessionId }` when a session is active, otherwise `{}`.
|
|
29
|
+
*/
|
|
30
|
+
private sessionOptions;
|
|
31
|
+
/**
|
|
32
|
+
* Pushes the manager's active session id into the center.
|
|
33
|
+
*/
|
|
34
|
+
private syncActiveSession;
|
|
35
|
+
/**
|
|
36
|
+
* Drops per-session PARSE / analysis bookkeeping for a closed or reopened session.
|
|
37
|
+
*
|
|
38
|
+
* @param sessionId - Session to forget.
|
|
39
|
+
*/
|
|
40
|
+
private forgetSession;
|
|
41
|
+
/**
|
|
42
|
+
* Handles generic `message` bus events and mirrors them into the center.
|
|
43
|
+
*
|
|
44
|
+
* @param params - Message text and severity.
|
|
45
|
+
*/
|
|
46
|
+
private readonly _onMessage;
|
|
47
|
+
/**
|
|
48
|
+
* Handles fonts that failed to load from the remote repository.
|
|
49
|
+
*
|
|
50
|
+
* @param params - Failed font descriptors.
|
|
51
|
+
*/
|
|
52
|
+
private readonly _onFontsNotLoaded;
|
|
53
|
+
/**
|
|
54
|
+
* Handles fonts that could not be found in the remote repository.
|
|
55
|
+
*
|
|
56
|
+
* @param params - Missing font names.
|
|
57
|
+
*/
|
|
58
|
+
private readonly _onFontsNotFound;
|
|
59
|
+
/**
|
|
60
|
+
* Handles a single font required by the drawing that is unavailable at render time.
|
|
61
|
+
*
|
|
62
|
+
* Replaces any prior `font-missed` entry for the same font name.
|
|
63
|
+
*
|
|
64
|
+
* @param params - Font name and how many text objects require it.
|
|
65
|
+
*/
|
|
66
|
+
private readonly _onFontNotFound;
|
|
67
|
+
/**
|
|
68
|
+
* Prunes resolved `font-missed` notifications when missed-data changes.
|
|
69
|
+
*/
|
|
70
|
+
private readonly _onMissedDataChanged;
|
|
71
|
+
/**
|
|
72
|
+
* Handles failure to fetch the available-fonts catalog.
|
|
73
|
+
*
|
|
74
|
+
* @param params - Catalog URL that failed.
|
|
75
|
+
*/
|
|
76
|
+
private readonly _onFailedToGetFonts;
|
|
77
|
+
/**
|
|
78
|
+
* Handles open-file failures and writes a persistent error notification.
|
|
79
|
+
*
|
|
80
|
+
* @param params - File name and structured error metadata.
|
|
81
|
+
*/
|
|
82
|
+
private readonly _onFailedToOpenFile;
|
|
83
|
+
/**
|
|
84
|
+
* Captures `unknownEntityCount` from PARSE END for the active session.
|
|
85
|
+
*
|
|
86
|
+
* @param data - Open-file progress payload.
|
|
87
|
+
*/
|
|
88
|
+
private readonly _onOpenFileProgress;
|
|
89
|
+
/**
|
|
90
|
+
* Resets unsupported-entity bookkeeping before a new open starts.
|
|
91
|
+
*/
|
|
92
|
+
private readonly _onDocumentToBeOpened;
|
|
93
|
+
/**
|
|
94
|
+
* Syncs the active session when a document is created.
|
|
95
|
+
*/
|
|
96
|
+
private readonly _onDocumentCreated;
|
|
97
|
+
/**
|
|
98
|
+
* Syncs the session and runs unsupported-entity analysis on first activation.
|
|
99
|
+
*
|
|
100
|
+
* Subsequent activations for the same open skip re-analysis.
|
|
101
|
+
*/
|
|
102
|
+
private readonly _onDocumentActivated;
|
|
103
|
+
/**
|
|
104
|
+
* Clears the closed session's notifications and local analysis state.
|
|
105
|
+
*
|
|
106
|
+
* @param args - Document about to be destroyed.
|
|
107
|
+
*/
|
|
108
|
+
private readonly _onDocumentToBeDestroyed;
|
|
109
|
+
/**
|
|
110
|
+
* @param docManager - Manager whose events and active session are observed.
|
|
111
|
+
* @param getCenter - Accessor for the currently installed notification center.
|
|
112
|
+
*/
|
|
113
|
+
constructor(docManager: AcApDocManager, getCenter: () => AcApNotificationCenter);
|
|
114
|
+
/**
|
|
115
|
+
* Attaches event-bus and document-manager listeners. Idempotent.
|
|
116
|
+
*/
|
|
117
|
+
install(): void;
|
|
118
|
+
/**
|
|
119
|
+
* Detaches all listeners and clears per-session analysis bookkeeping. Idempotent.
|
|
120
|
+
*/
|
|
121
|
+
uninstall(): void;
|
|
122
|
+
/**
|
|
123
|
+
* Analyzes the current document for unsupported entities and writes a warning
|
|
124
|
+
* when {@link AcApUnsupportedDrawingAnalysis.shouldWarn} is true.
|
|
125
|
+
*
|
|
126
|
+
* Marks the active session as notified so later tab switches do not rescan.
|
|
127
|
+
*/
|
|
128
|
+
private notifyUnsupportedEntities;
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=AcApNotificationEventBridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcApNotificationEventBridge.d.ts","sourceRoot":"","sources":["../../../src/app/notification/AcApNotificationEventBridge.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAErE;;;;;;GAMG;AACH,qBAAa,2BAA2B;IACtC,qEAAqE;IACrE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgB;IAC5C,qEAAqE;IACrE,OAAO,CAAC,UAAU,CAA8B;IAChD,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAA4B;IACrE;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAoB;IACjE,sDAAsD;IACtD,OAAO,CAAC,UAAU,CAAQ;IAE1B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAKrB;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CA4B1B;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAWjC;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAQhC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAqB/B;IAED;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAKpC;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAQnC;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAMnC;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAgBnC;IAED;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAQrC;IAED;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAElC;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CASpC;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAMxC;IAED;;;OAGG;gBAED,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,MAAM,sBAAsB;IAMzC;;OAEG;IACH,OAAO;IA6BP;;OAEG;IACH,SAAS;IA8BT;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;CAqClC"}
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import { eventBus } from '../../editor/global/eventBus';
|
|
13
|
+
import { acapAnalyzeUnsupportedDrawing } from '../../util/AcApAnalyzeUnsupportedDrawing';
|
|
14
|
+
import { AcApFontUtil } from '../../util/AcApFontUtil';
|
|
15
|
+
import { acapFormatFontsMissedReplacement } from '../../util/AcApFormatFontMissedMessage';
|
|
16
|
+
import { acapFormatUnsupportedEntitiesMessage, acapI18nTranslate } from '../../util/AcApFormatUnsupportedEntitiesMessage';
|
|
17
|
+
import { acapFormatOpenFileErrorMessage, acapFormatOpenFileErrorTitle } from '../../util/AcApOpenFileErrorMessage';
|
|
18
|
+
/**
|
|
19
|
+
* Subscribes to engine events and forwards user-visible alerts into the active
|
|
20
|
+
* {@link AcApNotificationCenter}.
|
|
21
|
+
*
|
|
22
|
+
* Shared by the built-in DOM center and host overrides (e.g. cad-viewer).
|
|
23
|
+
* Notifications are tagged with the current {@link AcApDocSession.id}.
|
|
24
|
+
*/
|
|
25
|
+
var AcApNotificationEventBridge = /** @class */ (function () {
|
|
26
|
+
/**
|
|
27
|
+
* @param docManager - Manager whose events and active session are observed.
|
|
28
|
+
* @param getCenter - Accessor for the currently installed notification center.
|
|
29
|
+
*/
|
|
30
|
+
function AcApNotificationEventBridge(docManager, getCenter) {
|
|
31
|
+
var _this = this;
|
|
32
|
+
/** Parser unknown-entity counts keyed by {@link AcApDocSession.id}. */
|
|
33
|
+
this._pendingUnknownBySession = new Map();
|
|
34
|
+
/**
|
|
35
|
+
* Sessions that already received an unsupported-entity pass for the current
|
|
36
|
+
* open. Prevents tab switches from clearing and re-scanning (and from
|
|
37
|
+
* dropping warnings that depended solely on the one-shot PARSE stats).
|
|
38
|
+
*/
|
|
39
|
+
this._unsupportedNotifiedSessions = new Set();
|
|
40
|
+
/** Whether {@link install} has attached listeners. */
|
|
41
|
+
this._installed = false;
|
|
42
|
+
/**
|
|
43
|
+
* Handles generic `message` bus events and mirrors them into the center.
|
|
44
|
+
*
|
|
45
|
+
* @param params - Message text and severity.
|
|
46
|
+
*/
|
|
47
|
+
this._onMessage = function (params) {
|
|
48
|
+
var center = _this._getCenter();
|
|
49
|
+
var title = params.type === 'error'
|
|
50
|
+
? acapI18nTranslate('main.notification.title.systemError')
|
|
51
|
+
: params.type === 'warning'
|
|
52
|
+
? acapI18nTranslate('main.notification.title.systemWarning')
|
|
53
|
+
: params.type === 'success'
|
|
54
|
+
? acapI18nTranslate('main.notification.title.systemMessage')
|
|
55
|
+
: acapI18nTranslate('main.notification.title.systemInfo');
|
|
56
|
+
var options = _this.sessionOptions();
|
|
57
|
+
switch (params.type) {
|
|
58
|
+
case 'error':
|
|
59
|
+
center.error(title, params.message, options);
|
|
60
|
+
break;
|
|
61
|
+
case 'warning':
|
|
62
|
+
center.warning(title, params.message, options);
|
|
63
|
+
break;
|
|
64
|
+
case 'success':
|
|
65
|
+
center.success(title, params.message, options);
|
|
66
|
+
break;
|
|
67
|
+
default:
|
|
68
|
+
center.info(title, params.message, options);
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* Handles fonts that failed to load from the remote repository.
|
|
74
|
+
*
|
|
75
|
+
* @param params - Failed font descriptors.
|
|
76
|
+
*/
|
|
77
|
+
this._onFontsNotLoaded = function (params) {
|
|
78
|
+
var fontNames = params.fonts.map(function (font) { return font.fontName; });
|
|
79
|
+
_this._getCenter().error(acapI18nTranslate('main.notification.title.fontNotLoaded'), acapI18nTranslate('main.message.fontsNotLoaded', {
|
|
80
|
+
fonts: acapFormatFontsMissedReplacement(fontNames)
|
|
81
|
+
}), __assign({ source: 'font-missed', fontNames: fontNames, persistent: true }, _this.sessionOptions()));
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Handles fonts that could not be found in the remote repository.
|
|
85
|
+
*
|
|
86
|
+
* @param params - Missing font names.
|
|
87
|
+
*/
|
|
88
|
+
this._onFontsNotFound = function (params) {
|
|
89
|
+
_this._getCenter().warning(acapI18nTranslate('main.notification.title.fontNotFound'), acapI18nTranslate('main.message.fontsNotFound', {
|
|
90
|
+
fonts: acapFormatFontsMissedReplacement(params.fonts)
|
|
91
|
+
}), __assign({ source: 'font-missed', fontNames: params.fonts }, _this.sessionOptions()));
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Handles a single font required by the drawing that is unavailable at render time.
|
|
95
|
+
*
|
|
96
|
+
* Replaces any prior `font-missed` entry for the same font name.
|
|
97
|
+
*
|
|
98
|
+
* @param params - Font name and how many text objects require it.
|
|
99
|
+
*/
|
|
100
|
+
this._onFontNotFound = function (params) {
|
|
101
|
+
var fontName = params.fontName.trim();
|
|
102
|
+
if (!fontName)
|
|
103
|
+
return;
|
|
104
|
+
var center = _this._getCenter();
|
|
105
|
+
center.removeWhere(function (notification) {
|
|
106
|
+
var _a;
|
|
107
|
+
return notification.source === 'font-missed' &&
|
|
108
|
+
((_a = notification.fontNames) === null || _a === void 0 ? void 0 : _a.includes(fontName)) === true;
|
|
109
|
+
});
|
|
110
|
+
center.warning(acapI18nTranslate('main.notification.title.fontNotFound'), acapI18nTranslate('main.message.fontMissedInDrawing', {
|
|
111
|
+
font: fontName,
|
|
112
|
+
count: params.count,
|
|
113
|
+
replacementFont: AcApFontUtil.getReplacementFontName(fontName)
|
|
114
|
+
}), __assign({ source: 'font-missed', fontNames: [fontName] }, _this.sessionOptions()));
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Prunes resolved `font-missed` notifications when missed-data changes.
|
|
118
|
+
*/
|
|
119
|
+
this._onMissedDataChanged = function () {
|
|
120
|
+
var missedFonts = Object.keys(_this._docManager.curView.missedData.fonts);
|
|
121
|
+
_this._getCenter().removeResolvedFontMissedNotifications(missedFonts);
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* Handles failure to fetch the available-fonts catalog.
|
|
125
|
+
*
|
|
126
|
+
* @param params - Catalog URL that failed.
|
|
127
|
+
*/
|
|
128
|
+
this._onFailedToGetFonts = function (params) {
|
|
129
|
+
_this._getCenter().error(acapI18nTranslate('main.notification.title.systemError'), acapI18nTranslate('main.message.failedToGetAvaiableFonts', {
|
|
130
|
+
url: params.url
|
|
131
|
+
}), _this.sessionOptions());
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* Handles open-file failures and writes a persistent error notification.
|
|
135
|
+
*
|
|
136
|
+
* @param params - File name and structured error metadata.
|
|
137
|
+
*/
|
|
138
|
+
this._onFailedToOpenFile = function (params) {
|
|
139
|
+
_this._getCenter().error(acapFormatOpenFileErrorTitle(params.errorCode), acapFormatOpenFileErrorMessage(params), _this.sessionOptions());
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Captures `unknownEntityCount` from PARSE END for the active session.
|
|
143
|
+
*
|
|
144
|
+
* @param data - Open-file progress payload.
|
|
145
|
+
*/
|
|
146
|
+
this._onOpenFileProgress = function (data) {
|
|
147
|
+
var _a;
|
|
148
|
+
if (data.stage === 'CONVERSION' &&
|
|
149
|
+
data.subStage === 'PARSE' &&
|
|
150
|
+
data.subStageStatus === 'END' &&
|
|
151
|
+
data.data) {
|
|
152
|
+
var stats = data.data;
|
|
153
|
+
var sessionId = _this._docManager.activeSessionId;
|
|
154
|
+
if (sessionId) {
|
|
155
|
+
_this._pendingUnknownBySession.set(sessionId, (_a = stats.unknownEntityCount) !== null && _a !== void 0 ? _a : 0);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
/**
|
|
160
|
+
* Resets unsupported-entity bookkeeping before a new open starts.
|
|
161
|
+
*/
|
|
162
|
+
this._onDocumentToBeOpened = function () {
|
|
163
|
+
_this.syncActiveSession();
|
|
164
|
+
var sessionId = _this._docManager.activeSessionId;
|
|
165
|
+
if (sessionId) {
|
|
166
|
+
_this.forgetSession(sessionId);
|
|
167
|
+
_this._pendingUnknownBySession.set(sessionId, 0);
|
|
168
|
+
}
|
|
169
|
+
_this._getCenter().removeBySource('unsupported-entities');
|
|
170
|
+
};
|
|
171
|
+
/**
|
|
172
|
+
* Syncs the active session when a document is created.
|
|
173
|
+
*/
|
|
174
|
+
this._onDocumentCreated = function () {
|
|
175
|
+
_this.syncActiveSession();
|
|
176
|
+
};
|
|
177
|
+
/**
|
|
178
|
+
* Syncs the session and runs unsupported-entity analysis on first activation.
|
|
179
|
+
*
|
|
180
|
+
* Subsequent activations for the same open skip re-analysis.
|
|
181
|
+
*/
|
|
182
|
+
this._onDocumentActivated = function () {
|
|
183
|
+
_this.syncActiveSession();
|
|
184
|
+
var sessionId = _this._docManager.activeSessionId;
|
|
185
|
+
// Tab switch / re-activate: keep the existing unsupported warning and skip
|
|
186
|
+
// another full-database proxy scan.
|
|
187
|
+
if (sessionId && _this._unsupportedNotifiedSessions.has(sessionId)) {
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
_this.notifyUnsupportedEntities();
|
|
191
|
+
};
|
|
192
|
+
/**
|
|
193
|
+
* Clears the closed session's notifications and local analysis state.
|
|
194
|
+
*
|
|
195
|
+
* @param args - Document about to be destroyed.
|
|
196
|
+
*/
|
|
197
|
+
this._onDocumentToBeDestroyed = function (args) {
|
|
198
|
+
var session = _this._docManager.sessionFor(args.doc);
|
|
199
|
+
if (session) {
|
|
200
|
+
_this.forgetSession(session.id);
|
|
201
|
+
_this._getCenter().clearSession(session.id);
|
|
202
|
+
}
|
|
203
|
+
};
|
|
204
|
+
this._docManager = docManager;
|
|
205
|
+
this._getCenter = getCenter;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Builds options that stamp the active session id onto a new notification.
|
|
209
|
+
*
|
|
210
|
+
* @returns `{ sessionId }` when a session is active, otherwise `{}`.
|
|
211
|
+
*/
|
|
212
|
+
AcApNotificationEventBridge.prototype.sessionOptions = function () {
|
|
213
|
+
var sessionId = this._docManager.activeSessionId;
|
|
214
|
+
return sessionId ? { sessionId: sessionId } : {};
|
|
215
|
+
};
|
|
216
|
+
/**
|
|
217
|
+
* Pushes the manager's active session id into the center.
|
|
218
|
+
*/
|
|
219
|
+
AcApNotificationEventBridge.prototype.syncActiveSession = function () {
|
|
220
|
+
this._getCenter().setActiveSession(this._docManager.activeSessionId);
|
|
221
|
+
};
|
|
222
|
+
/**
|
|
223
|
+
* Drops per-session PARSE / analysis bookkeeping for a closed or reopened session.
|
|
224
|
+
*
|
|
225
|
+
* @param sessionId - Session to forget.
|
|
226
|
+
*/
|
|
227
|
+
AcApNotificationEventBridge.prototype.forgetSession = function (sessionId) {
|
|
228
|
+
this._pendingUnknownBySession.delete(sessionId);
|
|
229
|
+
this._unsupportedNotifiedSessions.delete(sessionId);
|
|
230
|
+
};
|
|
231
|
+
/**
|
|
232
|
+
* Attaches event-bus and document-manager listeners. Idempotent.
|
|
233
|
+
*/
|
|
234
|
+
AcApNotificationEventBridge.prototype.install = function () {
|
|
235
|
+
if (this._installed)
|
|
236
|
+
return;
|
|
237
|
+
this._installed = true;
|
|
238
|
+
this.syncActiveSession();
|
|
239
|
+
eventBus.on('message', this._onMessage);
|
|
240
|
+
eventBus.on('fonts-not-loaded', this._onFontsNotLoaded);
|
|
241
|
+
eventBus.on('fonts-not-found', this._onFontsNotFound);
|
|
242
|
+
eventBus.on('font-not-found', this._onFontNotFound);
|
|
243
|
+
eventBus.on('missed-data-changed', this._onMissedDataChanged);
|
|
244
|
+
eventBus.on('failed-to-get-avaiable-fonts', this._onFailedToGetFonts);
|
|
245
|
+
eventBus.on('failed-to-open-file', this._onFailedToOpenFile);
|
|
246
|
+
eventBus.on('open-file-progress', this._onOpenFileProgress);
|
|
247
|
+
this._docManager.events.documentToBeOpened.addEventListener(this._onDocumentToBeOpened);
|
|
248
|
+
this._docManager.events.documentCreated.addEventListener(this._onDocumentCreated);
|
|
249
|
+
this._docManager.events.documentActivated.addEventListener(this._onDocumentActivated);
|
|
250
|
+
this._docManager.events.documentToBeDestroyed.addEventListener(this._onDocumentToBeDestroyed);
|
|
251
|
+
};
|
|
252
|
+
/**
|
|
253
|
+
* Detaches all listeners and clears per-session analysis bookkeeping. Idempotent.
|
|
254
|
+
*/
|
|
255
|
+
AcApNotificationEventBridge.prototype.uninstall = function () {
|
|
256
|
+
if (!this._installed)
|
|
257
|
+
return;
|
|
258
|
+
this._installed = false;
|
|
259
|
+
eventBus.off('message', this._onMessage);
|
|
260
|
+
eventBus.off('fonts-not-loaded', this._onFontsNotLoaded);
|
|
261
|
+
eventBus.off('fonts-not-found', this._onFontsNotFound);
|
|
262
|
+
eventBus.off('font-not-found', this._onFontNotFound);
|
|
263
|
+
eventBus.off('missed-data-changed', this._onMissedDataChanged);
|
|
264
|
+
eventBus.off('failed-to-get-avaiable-fonts', this._onFailedToGetFonts);
|
|
265
|
+
eventBus.off('failed-to-open-file', this._onFailedToOpenFile);
|
|
266
|
+
eventBus.off('open-file-progress', this._onOpenFileProgress);
|
|
267
|
+
this._docManager.events.documentToBeOpened.removeEventListener(this._onDocumentToBeOpened);
|
|
268
|
+
this._docManager.events.documentCreated.removeEventListener(this._onDocumentCreated);
|
|
269
|
+
this._docManager.events.documentActivated.removeEventListener(this._onDocumentActivated);
|
|
270
|
+
this._docManager.events.documentToBeDestroyed.removeEventListener(this._onDocumentToBeDestroyed);
|
|
271
|
+
this._pendingUnknownBySession.clear();
|
|
272
|
+
this._unsupportedNotifiedSessions.clear();
|
|
273
|
+
};
|
|
274
|
+
/**
|
|
275
|
+
* Analyzes the current document for unsupported entities and writes a warning
|
|
276
|
+
* when {@link AcApUnsupportedDrawingAnalysis.shouldWarn} is true.
|
|
277
|
+
*
|
|
278
|
+
* Marks the active session as notified so later tab switches do not rescan.
|
|
279
|
+
*/
|
|
280
|
+
AcApNotificationEventBridge.prototype.notifyUnsupportedEntities = function () {
|
|
281
|
+
var _a;
|
|
282
|
+
var doc = this._docManager.curDocument;
|
|
283
|
+
if (!doc)
|
|
284
|
+
return;
|
|
285
|
+
var sessionId = this._docManager.activeSessionId;
|
|
286
|
+
var unknownCount = sessionId
|
|
287
|
+
? ((_a = this._pendingUnknownBySession.get(sessionId)) !== null && _a !== void 0 ? _a : 0)
|
|
288
|
+
: 0;
|
|
289
|
+
var classOnly = acapAnalyzeUnsupportedDrawing(doc.database, unknownCount, {
|
|
290
|
+
scanProxies: false
|
|
291
|
+
});
|
|
292
|
+
var analysis = classOnly.isTianzhengDrawing || classOnly.unknownEntityCount > 0
|
|
293
|
+
? classOnly
|
|
294
|
+
: acapAnalyzeUnsupportedDrawing(doc.database, unknownCount, {
|
|
295
|
+
scanProxies: true
|
|
296
|
+
});
|
|
297
|
+
if (sessionId) {
|
|
298
|
+
this._unsupportedNotifiedSessions.add(sessionId);
|
|
299
|
+
}
|
|
300
|
+
var center = this._getCenter();
|
|
301
|
+
center.removeBySource('unsupported-entities');
|
|
302
|
+
if (!analysis.shouldWarn)
|
|
303
|
+
return;
|
|
304
|
+
center.warning(acapI18nTranslate('main.notification.title.parsingWarning'), acapFormatUnsupportedEntitiesMessage(analysis), __assign({ source: 'unsupported-entities', persistent: true }, this.sessionOptions()));
|
|
305
|
+
};
|
|
306
|
+
return AcApNotificationEventBridge;
|
|
307
|
+
}());
|
|
308
|
+
export { AcApNotificationEventBridge };
|
|
309
|
+
//# sourceMappingURL=AcApNotificationEventBridge.js.map
|