@elmethis/core 1.0.0-alpha.146 → 1.0.0-alpha.148
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/dist/_virtual/_commonjsHelpers.mjs +6 -0
- package/dist/_virtual/_plugin-vue_export-helper.mjs +10 -0
- package/dist/_virtual/advancedFormat.mjs +7 -0
- package/dist/_virtual/advancedFormat2.mjs +4 -0
- package/dist/_virtual/cancellation.mjs +5 -0
- package/dist/_virtual/cancellation2.mjs +4 -0
- package/dist/_virtual/constants.mjs +4 -0
- package/dist/_virtual/cose-base.mjs +4 -0
- package/dist/_virtual/cose-base2.mjs +4 -0
- package/dist/_virtual/customParseFormat.mjs +7 -0
- package/dist/_virtual/customParseFormat2.mjs +4 -0
- package/dist/_virtual/cytoscape-cose-bilkent.mjs +7 -0
- package/dist/_virtual/cytoscape-cose-bilkent2.mjs +4 -0
- package/dist/_virtual/cytoscape-fcose.mjs +7 -0
- package/dist/_virtual/cytoscape-fcose2.mjs +4 -0
- package/dist/_virtual/dayjs.min.mjs +7 -0
- package/dist/_virtual/dayjs.min2.mjs +4 -0
- package/dist/_virtual/events.mjs +5 -0
- package/dist/_virtual/events2.mjs +4 -0
- package/dist/_virtual/index.mjs +5 -0
- package/dist/_virtual/index2.mjs +4 -0
- package/dist/_virtual/is.mjs +4 -0
- package/dist/_virtual/isoWeek.mjs +7 -0
- package/dist/_virtual/isoWeek2.mjs +4 -0
- package/dist/_virtual/layout-base.mjs +4 -0
- package/dist/_virtual/layout-base2.mjs +4 -0
- package/dist/_virtual/ral.mjs +4 -0
- package/dist/components/badge/ElmBadge.vue.mjs +10 -0
- package/dist/components/badge/ElmBadge.vue2.mjs +33 -0
- package/dist/components/badge/ElmBadge.vue3.mjs +14 -0
- package/dist/components/badge/ElmTag.vue.mjs +10 -0
- package/dist/components/badge/ElmTag.vue2.mjs +39 -0
- package/dist/components/badge/ElmTag.vue3.mjs +14 -0
- package/dist/components/code/ElmCodeBlock.vue.mjs +10 -0
- package/dist/components/code/ElmCodeBlock.vue2.mjs +86 -0
- package/dist/components/code/ElmCodeBlock.vue3.mjs +18 -0
- package/dist/components/code/ElmKatex.vue.mjs +10 -0
- package/dist/components/code/ElmKatex.vue2.mjs +46 -0
- package/dist/components/code/ElmKatex.vue3.mjs +8 -0
- package/dist/components/code/ElmMermaid.vue.mjs +6 -0
- package/dist/components/code/ElmMermaid.vue2.mjs +56 -0
- package/dist/components/code/ElmShikiHighlighter.vue.mjs +11 -0
- package/dist/components/code/ElmShikiHighlighter.vue2.mjs +44 -0
- package/dist/components/code/ElmShikiHighlighter.vue3.mjs +8 -0
- package/dist/components/containments/ElmColumn.vue.mjs +10 -0
- package/dist/components/containments/ElmColumn.vue2.mjs +16 -0
- package/dist/components/containments/ElmColumn.vue3.mjs +8 -0
- package/dist/components/containments/ElmColumnList.vue.mjs +10 -0
- package/dist/components/containments/ElmColumnList.vue2.mjs +16 -0
- package/dist/components/containments/ElmColumnList.vue3.mjs +6 -0
- package/dist/components/containments/ElmDesktopWindow.vue.mjs +10 -0
- package/dist/components/containments/ElmDesktopWindow.vue2.mjs +42 -0
- package/dist/components/containments/ElmDesktopWindow.vue3.mjs +14 -0
- package/dist/components/containments/ElmModal.vue.mjs +10 -0
- package/dist/components/containments/ElmModal.vue2.mjs +44 -0
- package/dist/components/containments/ElmModal.vue3.mjs +11 -0
- package/dist/components/containments/ElmParallax.vue.mjs +10 -0
- package/dist/components/containments/ElmParallax.vue2.mjs +35 -0
- package/dist/components/containments/ElmParallax.vue3.mjs +8 -0
- package/dist/components/containments/ElmSnackbar.vue.mjs +10 -0
- package/dist/components/containments/ElmSnackbar.vue2.mjs +39 -0
- package/dist/components/containments/ElmSnackbar.vue3.mjs +14 -0
- package/dist/components/containments/ElmSnackbarContainer.vue.mjs +10 -0
- package/dist/components/containments/ElmSnackbarContainer.vue2.mjs +33 -0
- package/dist/components/containments/ElmSnackbarContainer.vue3.mjs +7 -0
- package/dist/components/containments/ElmToggle.vue.mjs +10 -0
- package/dist/components/containments/ElmToggle.vue2.mjs +71 -0
- package/dist/components/containments/ElmToggle.vue3.mjs +17 -0
- package/dist/components/containments/ElmTooltip.vue.mjs +10 -0
- package/dist/components/containments/ElmTooltip.vue2.mjs +49 -0
- package/dist/components/containments/ElmTooltip.vue3.mjs +8 -0
- package/dist/components/data/ElmMultiProgress.vue.mjs +10 -0
- package/dist/components/data/ElmMultiProgress.vue2.mjs +45 -0
- package/dist/components/data/ElmMultiProgress.vue3.mjs +11 -0
- package/dist/components/data/ElmProgress.vue.mjs +10 -0
- package/dist/components/data/ElmProgress.vue2.mjs +53 -0
- package/dist/components/data/ElmProgress.vue3.mjs +20 -0
- package/dist/components/data/ElmStatusMessage.vue.mjs +10 -0
- package/dist/components/data/ElmStatusMessage.vue2.mjs +75 -0
- package/dist/components/data/ElmStatusMessage.vue3.mjs +11 -0
- package/dist/components/fallback/ElmBlockFallback.vue.mjs +10 -0
- package/dist/components/fallback/ElmBlockFallback.vue2.mjs +17 -0
- package/dist/components/fallback/ElmBlockFallback.vue3.mjs +6 -0
- package/dist/components/fallback/ElmRectangleWave.vue.mjs +10 -0
- package/dist/components/fallback/ElmRectangleWave.vue2.mjs +15 -0
- package/dist/components/fallback/ElmRectangleWave.vue3.mjs +9 -0
- package/dist/components/fallback/ElmSpinner.vue.mjs +10 -0
- package/dist/components/fallback/ElmSpinner.vue2.mjs +30 -0
- package/dist/components/fallback/ElmSpinner.vue3.mjs +12 -0
- package/dist/components/form/ElmButton.vue.mjs +10 -0
- package/dist/components/form/ElmButton.vue2.mjs +57 -0
- package/dist/components/form/ElmButton.vue3.mjs +20 -0
- package/dist/components/form/ElmCheckbox.vue.mjs +10 -0
- package/dist/components/form/ElmCheckbox.vue2.mjs +177 -0
- package/dist/components/form/ElmCheckbox.vue3.mjs +22 -0
- package/dist/components/form/ElmSwitch.vue.mjs +10 -0
- package/dist/components/form/ElmSwitch.vue2.mjs +61 -0
- package/dist/components/form/ElmSwitch.vue3.mjs +16 -0
- package/dist/components/form/ElmTextField.vue.mjs +10 -0
- package/dist/components/form/ElmTextField.vue2.mjs +124 -0
- package/dist/components/form/ElmTextField.vue3.mjs +34 -0
- package/dist/components/form/ElmTotp.vue.mjs +10 -0
- package/dist/components/form/ElmTotp.vue2.mjs +102 -0
- package/dist/components/form/ElmTotp.vue3.mjs +22 -0
- package/dist/components/headings/ElmFragmentIdentifier.vue.mjs +10 -0
- package/dist/components/headings/ElmFragmentIdentifier.vue2.mjs +54 -0
- package/dist/components/headings/ElmFragmentIdentifier.vue3.mjs +11 -0
- package/dist/components/headings/ElmHeading1.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading1.vue2.mjs +43 -0
- package/dist/components/headings/ElmHeading1.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading2.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading2.vue2.mjs +49 -0
- package/dist/components/headings/ElmHeading2.vue3.mjs +11 -0
- package/dist/components/headings/ElmHeading3.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading3.vue2.mjs +39 -0
- package/dist/components/headings/ElmHeading3.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading4.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading4.vue2.mjs +31 -0
- package/dist/components/headings/ElmHeading4.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading5.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading5.vue2.mjs +31 -0
- package/dist/components/headings/ElmHeading5.vue3.mjs +8 -0
- package/dist/components/headings/ElmHeading6.vue.mjs +10 -0
- package/dist/components/headings/ElmHeading6.vue2.mjs +31 -0
- package/dist/components/headings/ElmHeading6.vue3.mjs +8 -0
- package/dist/components/icon/ElmArrowIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmArrowIcon.vue2.mjs +31 -0
- package/dist/components/icon/ElmArrowIcon.vue3.mjs +17 -0
- package/dist/components/icon/ElmBookmarkIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmBookmarkIcon.vue2.mjs +45 -0
- package/dist/components/icon/ElmBookmarkIcon.vue3.mjs +15 -0
- package/dist/components/icon/ElmCubeIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmCubeIcon.vue2.mjs +41 -0
- package/dist/components/icon/ElmCubeIcon.vue3.mjs +12 -0
- package/dist/components/icon/ElmDotLoadingIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmDotLoadingIcon.vue2.mjs +28 -0
- package/dist/components/icon/ElmDotLoadingIcon.vue3.mjs +14 -0
- package/dist/components/icon/ElmLanguageIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmLanguageIcon.vue2.mjs +148 -0
- package/dist/components/icon/ElmLanguageIcon.vue3.mjs +11 -0
- package/dist/components/icon/ElmLoginIcon.vue.mjs +10 -0
- package/dist/components/icon/ElmLoginIcon.vue2.mjs +37 -0
- package/dist/components/icon/ElmLoginIcon.vue3.mjs +8 -0
- package/dist/components/icon/ElmToggleTheme.vue.mjs +10 -0
- package/dist/components/icon/ElmToggleTheme.vue2.mjs +30 -0
- package/dist/components/icon/ElmToggleTheme.vue3.mjs +8 -0
- package/dist/{Bash-Dgvf3lDU.js → components/icon/languages/Bash.vue.mjs} +16 -15
- package/dist/components/icon/languages/Bash.vue2.mjs +8 -0
- package/dist/components/icon/languages/Css.vue.mjs +19 -0
- package/dist/components/icon/languages/Rust.vue.mjs +17 -0
- package/dist/components/inline/ElmInlineLink.vue.mjs +10 -0
- package/dist/components/inline/ElmInlineLink.vue2.mjs +53 -0
- package/dist/components/inline/ElmInlineLink.vue3.mjs +11 -0
- package/dist/components/inline/ElmInlineRuby.vue.mjs +29 -0
- package/dist/components/inline/ElmInlineRuby.vue2.mjs +4 -0
- package/dist/components/inline/ElmInlineText.vue.mjs +10 -0
- package/dist/components/inline/ElmInlineText.vue2.mjs +57 -0
- package/dist/components/inline/ElmInlineText.vue3.mjs +11 -0
- package/dist/components/media/ElmFile.vue.mjs +10 -0
- package/dist/components/media/ElmFile.vue2.mjs +77 -0
- package/dist/components/media/ElmFile.vue3.mjs +14 -0
- package/dist/components/media/ElmImage.vue.mjs +10 -0
- package/dist/components/media/ElmImage.vue2.mjs +91 -0
- package/dist/components/media/ElmImage.vue3.mjs +18 -0
- package/dist/components/navigation/ElmBookmark.vue.mjs +10 -0
- package/dist/components/navigation/ElmBookmark.vue2.mjs +115 -0
- package/dist/components/navigation/ElmBookmark.vue3.mjs +32 -0
- package/dist/components/navigation/ElmBreadcrumb.vue.mjs +10 -0
- package/dist/components/navigation/ElmBreadcrumb.vue2.mjs +63 -0
- package/dist/components/navigation/ElmBreadcrumb.vue3.mjs +18 -0
- package/dist/components/navigation/ElmPagetop.vue.mjs +10 -0
- package/dist/components/navigation/ElmPagetop.vue2.mjs +51 -0
- package/dist/components/navigation/ElmPagetop.vue3.mjs +18 -0
- package/dist/components/navigation/ElmTableOfContents.vue.mjs +10 -0
- package/dist/components/navigation/ElmTableOfContents.vue2.mjs +43 -0
- package/dist/components/navigation/ElmTableOfContents.vue3.mjs +14 -0
- package/dist/components/others/ElmColorSample.vue.mjs +10 -0
- package/dist/components/others/ElmColorSample.vue2.mjs +72 -0
- package/dist/components/others/ElmColorSample.vue3.mjs +9 -0
- package/dist/components/others/ElmColorTable.vue.mjs +10 -0
- package/dist/components/others/ElmColorTable.vue2.mjs +45 -0
- package/dist/components/others/ElmColorTable.vue3.mjs +10 -0
- package/dist/components/renderer/ElmJsonRenderer.vue.mjs +96 -0
- package/dist/components/renderer/ElmJsonRenderer.vue2.mjs +4 -0
- package/dist/components/renderer/ElmJsonRendererAsync.vue.mjs +24 -0
- package/dist/components/renderer/ElmJsonRendererAsync.vue2.mjs +4 -0
- package/dist/components/table/ElmTable.vue.mjs +6 -0
- package/dist/components/table/ElmTable.vue2.mjs +22 -0
- package/dist/components/table/ElmTableBody.vue.mjs +15 -0
- package/dist/components/table/ElmTableBody.vue3.mjs +5 -0
- package/dist/components/table/ElmTableCell.vue.mjs +6 -0
- package/dist/components/table/ElmTableCell.vue2.mjs +22 -0
- package/dist/components/table/ElmTableHeader.vue.mjs +15 -0
- package/dist/components/table/ElmTableHeader.vue3.mjs +5 -0
- package/dist/components/table/ElmTableRow.vue.mjs +14 -0
- package/dist/components/table/ElmTableRow.vue2.mjs +4 -0
- package/dist/components/typography/ElmBlockQuote.vue.mjs +10 -0
- package/dist/components/typography/ElmBlockQuote.vue2.mjs +27 -0
- package/dist/components/typography/ElmBlockQuote.vue3.mjs +8 -0
- package/dist/components/typography/ElmBulletedList.vue.mjs +27 -0
- package/dist/components/typography/ElmBulletedList.vue3.mjs +5 -0
- package/dist/components/typography/ElmCallout.vue.mjs +10 -0
- package/dist/components/typography/ElmCallout.vue2.mjs +57 -0
- package/dist/components/typography/ElmCallout.vue3.mjs +14 -0
- package/dist/components/typography/ElmDivider.vue.mjs +10 -0
- package/dist/components/typography/ElmDivider.vue2.mjs +29 -0
- package/dist/components/typography/ElmDivider.vue3.mjs +8 -0
- package/dist/components/typography/ElmListItem.vue.mjs +10 -0
- package/dist/components/typography/ElmListItem.vue2.mjs +16 -0
- package/dist/components/typography/ElmListItem.vue3.mjs +8 -0
- package/dist/components/typography/ElmNumberedList.vue.mjs +27 -0
- package/dist/components/typography/ElmNumberedList.vue3.mjs +5 -0
- package/dist/components/typography/ElmParagraph.vue.mjs +10 -0
- package/dist/components/typography/ElmParagraph.vue2.mjs +27 -0
- package/dist/components/typography/ElmParagraph.vue3.mjs +8 -0
- package/dist/hooks/useElmethisTheme.mjs +43 -0
- package/dist/hooks/useTyping.mjs +37 -0
- package/dist/index.mjs +150 -0
- package/dist/node_modules/.pnpm/@braintree_sanitize-url@7.1.1/node_modules/@braintree/sanitize-url/dist/constants.mjs +20 -0
- package/dist/node_modules/.pnpm/@braintree_sanitize-url@7.1.1/node_modules/@braintree/sanitize-url/dist/index.mjs +76 -0
- package/dist/node_modules/.pnpm/@chevrotain_gast@11.0.3/node_modules/@chevrotain/gast/lib/src/helpers.mjs +57 -0
- package/dist/node_modules/.pnpm/@chevrotain_gast@11.0.3/node_modules/@chevrotain/gast/lib/src/model.mjs +220 -0
- package/dist/node_modules/.pnpm/@chevrotain_gast@11.0.3/node_modules/@chevrotain/gast/lib/src/visitor.mjs +64 -0
- package/dist/node_modules/.pnpm/@chevrotain_regexp-to-ast@11.0.3/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.mjs +101 -0
- package/dist/node_modules/.pnpm/@chevrotain_regexp-to-ast@11.0.3/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.mjs +45 -0
- package/dist/node_modules/.pnpm/@chevrotain_regexp-to-ast@11.0.3/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.mjs +693 -0
- package/dist/node_modules/.pnpm/@chevrotain_regexp-to-ast@11.0.3/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.mjs +39 -0
- package/dist/node_modules/.pnpm/@chevrotain_utils@11.0.3/node_modules/@chevrotain/utils/lib/src/print.mjs +14 -0
- package/dist/node_modules/.pnpm/@chevrotain_utils@11.0.3/node_modules/@chevrotain/utils/lib/src/timer.mjs +10 -0
- package/dist/node_modules/.pnpm/@chevrotain_utils@11.0.3/node_modules/@chevrotain/utils/lib/src/to-fast-properties.mjs +15 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/customisations/defaults.mjs +15 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/defaults.mjs +28 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/merge.mjs +20 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/name.mjs +54 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon/transformations.mjs +17 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/get-icon.mjs +27 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/icon-set/tree.mjs +24 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/build.mjs +120 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/defs.mjs +33 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/html.mjs +10 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/id.mjs +29 -0
- package/dist/node_modules/.pnpm/@iconify_utils@2.3.0/node_modules/@iconify/utils/lib/svg/size.mjs +41 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-4AB2E3PP.mjs +6 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2NYFTIL2.mjs +34 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2O5ZK7RR.mjs +34 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7PKI6E2E.mjs +541 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-C4OEIS7N.mjs +46 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-EXZZNE6F.mjs +34 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ROXG7S4E.mjs +42 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-V4Q32G6S.mjs +34 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-O2Q2CXLX.mjs +6 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-4N47QTOZ.mjs +6 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-KVYON367.mjs +6 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-R6RNRRYF.mjs +6 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-MK3ICKWK.mjs +6 -0
- package/dist/node_modules/.pnpm/@mermaid-js_parser@0.4.0/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.mjs +115 -0
- package/dist/node_modules/.pnpm/chevrotain-allstar@0.3.1_chevrotain@11.0.3/node_modules/chevrotain-allstar/lib/all-star-lookahead.mjs +531 -0
- package/dist/node_modules/.pnpm/chevrotain-allstar@0.3.1_chevrotain@11.0.3/node_modules/chevrotain-allstar/lib/atn.mjs +393 -0
- package/dist/node_modules/.pnpm/chevrotain-allstar@0.3.1_chevrotain@11.0.3/node_modules/chevrotain-allstar/lib/dfa.mjs +42 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/lang/lang_extensions.mjs +12 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/constants.mjs +4 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/cst/cst.mjs +42 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.mjs +87 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/errors_public.mjs +161 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/exceptions_public.mjs +60 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/checks.mjs +416 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/first.mjs +47 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/follow.mjs +41 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.mjs +24 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/interpreter.mjs +424 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/keys.mjs +22 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.mjs +48 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/lookahead.mjs +387 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/resolver.mjs +40 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/grammar/rest.mjs +83 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/parser.mjs +181 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/context_assist.mjs +25 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.mjs +69 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.mjs +270 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.mjs +59 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.mjs +128 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.mjs +38 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.mjs +323 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.mjs +434 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.mjs +251 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.mjs +167 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.mjs +19 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/scan/lexer.mjs +720 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/scan/lexer_errors_public.mjs +11 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/scan/lexer_public.mjs +552 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/scan/reg_exp.mjs +214 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/scan/reg_exp_parser.mjs +20 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/scan/tokens.mjs +115 -0
- package/dist/node_modules/.pnpm/chevrotain@11.0.3/node_modules/chevrotain/lib/src/scan/tokens_public.mjs +88 -0
- package/dist/node_modules/.pnpm/cose-base@1.0.3/node_modules/cose-base/cose-base.mjs +1090 -0
- package/dist/node_modules/.pnpm/cose-base@2.2.0/node_modules/cose-base/cose-base.mjs +2555 -0
- package/dist/node_modules/.pnpm/cytoscape-cose-bilkent@4.1.0_cytoscape@3.31.1/node_modules/cytoscape-cose-bilkent/cytoscape-cose-bilkent.mjs +374 -0
- package/dist/node_modules/.pnpm/cytoscape-fcose@2.2.0_cytoscape@3.31.1/node_modules/cytoscape-fcose/cytoscape-fcose.mjs +1278 -0
- package/dist/node_modules/.pnpm/cytoscape@3.31.1/node_modules/cytoscape/dist/cytoscape.esm.mjs +29469 -0
- package/dist/node_modules/.pnpm/d3-array@2.12.1/node_modules/d3-array/src/max.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-array@2.12.1/node_modules/d3-array/src/min.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-array@2.12.1/node_modules/d3-array/src/sum.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/ascending.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/bisect.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/bisector.mjs +47 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/descending.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/max.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/min.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/number.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/range.mjs +11 -0
- package/dist/node_modules/.pnpm/d3-array@3.2.4/node_modules/d3-array/src/ticks.mjs +51 -0
- package/dist/node_modules/.pnpm/d3-axis@3.0.0/node_modules/d3-axis/src/axis.mjs +94 -0
- package/dist/node_modules/.pnpm/d3-axis@3.0.0/node_modules/d3-axis/src/identity.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/color.mjs +338 -0
- package/dist/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/define.mjs +13 -0
- package/dist/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/lab.mjs +95 -0
- package/dist/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/math.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-dispatch@3.0.1/node_modules/d3-dispatch/src/dispatch.mjs +70 -0
- package/dist/node_modules/.pnpm/d3-ease@3.0.1/node_modules/d3-ease/src/cubic.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/defaultLocale.mjs +20 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/exponent.mjs +7 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatDecimal.mjs +15 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatGroup.mjs +15 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatNumerals.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatPrefixAuto.mjs +12 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatRounded.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatSpecifier.mjs +37 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatTrim.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/formatTypes.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/identity.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/locale.mjs +82 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionFixed.mjs +7 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionPrefix.mjs +7 -0
- package/dist/node_modules/.pnpm/d3-format@3.1.0/node_modules/d3-format/src/precisionRound.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/array.mjs +13 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/color.mjs +29 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/constant.mjs +4 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/date.mjs +9 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/hcl.mjs +18 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/number.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/numberArray.mjs +15 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/object.mjs +20 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/rgb.mjs +20 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/round.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/string.mjs +43 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/transform/decompose.mjs +28 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/transform/index.mjs +59 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/transform/parse.mjs +18 -0
- package/dist/node_modules/.pnpm/d3-interpolate@3.0.1/node_modules/d3-interpolate/src/value.mjs +16 -0
- package/dist/node_modules/.pnpm/d3-path@1.0.9/node_modules/d3-path/src/path.mjs +73 -0
- package/dist/node_modules/.pnpm/d3-path@3.1.0/node_modules/d3-path/src/path.mjs +88 -0
- package/dist/node_modules/.pnpm/d3-sankey@0.12.3/node_modules/d3-sankey/src/align.mjs +22 -0
- package/dist/node_modules/.pnpm/d3-sankey@0.12.3/node_modules/d3-sankey/src/constant.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-sankey@0.12.3/node_modules/d3-sankey/src/sankey.mjs +326 -0
- package/dist/node_modules/.pnpm/d3-sankey@0.12.3/node_modules/d3-sankey/src/sankeyLinkHorizontal.mjs +13 -0
- package/dist/node_modules/.pnpm/d3-scale-chromatic@3.1.0/node_modules/d3-scale-chromatic/src/categorical/Tableau10.mjs +5 -0
- package/dist/node_modules/.pnpm/d3-scale-chromatic@3.1.0/node_modules/d3-scale-chromatic/src/colors.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/band.mjs +56 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/constant.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/continuous.mjs +95 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/init.mjs +16 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/linear.mjs +61 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/nice.mjs +14 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/number.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/ordinal.mjs +38 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/tickFormat.mjs +34 -0
- package/dist/node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/time.mjs +54 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/array.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/constant.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/creator.mjs +20 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/matcher.mjs +14 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/namespace.mjs +9 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/namespaces.mjs +12 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/select.mjs +7 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/append.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/attr.mjs +46 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/call.mjs +9 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/classed.mjs +64 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/clone.mjs +14 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/data.mjs +76 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/datum.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/dispatch.mjs +28 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/each.mjs +11 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/empty.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/enter.mjs +31 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/exit.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/filter.mjs +16 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/html.mjs +20 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/index.mjs +88 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/insert.mjs +14 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/iterator.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/join.mjs +19 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/lower.mjs +9 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/merge.mjs +18 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/node.mjs +12 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/nodes.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/on.mjs +64 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/order.mjs +14 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/property.mjs +23 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/raise.mjs +9 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/remove.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/select.mjs +17 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/selectAll.mjs +24 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/selectChild.mjs +16 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/selectChildren.mjs +16 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/size.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/sort.mjs +22 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/sparse.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/style.mjs +28 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selection/text.mjs +20 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selector.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/selectorAll.mjs +11 -0
- package/dist/node_modules/.pnpm/d3-selection@3.0.0/node_modules/d3-selection/src/window.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-shape@1.3.7/node_modules/d3-shape/src/array.mjs +4 -0
- package/dist/node_modules/.pnpm/d3-shape@1.3.7/node_modules/d3-shape/src/constant.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-shape@1.3.7/node_modules/d3-shape/src/link/index.mjs +45 -0
- package/dist/node_modules/.pnpm/d3-shape@1.3.7/node_modules/d3-shape/src/point.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/arc.mjs +133 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/array.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/constant.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/basis.mjs +66 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/basisClosed.mjs +63 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/basisOpen.mjs +50 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/bump.mjs +49 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/bundle.mjs +43 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/cardinal.mjs +73 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/cardinalClosed.mjs +69 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/cardinalOpen.mjs +57 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/catmullRom.mjs +83 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/catmullRomClosed.mjs +75 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/catmullRomOpen.mjs +63 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/linear.mjs +39 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/linearClosed.mjs +25 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/monotone.mjs +99 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/natural.mjs +54 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/step.mjs +59 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/descending.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/identity.mjs +6 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/line.mjs +41 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/math.mjs +32 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/noop.mjs +5 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/path.mjs +19 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/pie.mjs +55 -0
- package/dist/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/point.mjs +10 -0
- package/dist/node_modules/.pnpm/d3-time-format@4.1.0/node_modules/d3-time-format/src/defaultLocale.mjs +25 -0
- package/dist/node_modules/.pnpm/d3-time-format@4.1.0/node_modules/d3-time-format/src/locale.mjs +542 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/day.mjs +34 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/duration.mjs +16 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/hour.mjs +26 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/interval.mjs +61 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/millisecond.mjs +23 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/minute.mjs +26 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/month.mjs +27 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/second.mjs +15 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/ticks.mjs +54 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/week.mjs +66 -0
- package/dist/node_modules/.pnpm/d3-time@3.1.0/node_modules/d3-time/src/year.mjs +45 -0
- package/dist/node_modules/.pnpm/d3-timer@3.0.1/node_modules/d3-timer/src/timeout.mjs +13 -0
- package/dist/node_modules/.pnpm/d3-timer@3.0.1/node_modules/d3-timer/src/timer.mjs +96 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/interrupt.mjs +21 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/selection/index.mjs +5 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/selection/interrupt.mjs +9 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/selection/transition.mjs +39 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/attr.mjs +55 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/attrTween.mjs +42 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/delay.mjs +18 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/duration.mjs +18 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/ease.mjs +14 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/easeVarying.mjs +15 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/end.mjs +23 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/filter.mjs +16 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/index.mjs +68 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/interpolate.mjs +11 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/merge.mjs +18 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/on.mjs +23 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/remove.mjs +13 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/schedule.mjs +125 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/select.mjs +20 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/selectAll.mjs +24 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/selection.mjs +8 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/style.mjs +47 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/styleTween.mjs +25 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/text.mjs +18 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/textTween.mjs +25 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/transition.mjs +22 -0
- package/dist/node_modules/.pnpm/d3-transition@3.0.1_d3-selection@3.0.0/node_modules/d3-transition/src/transition/tween.mjs +64 -0
- package/dist/node_modules/.pnpm/d3-zoom@3.0.0/node_modules/d3-zoom/src/transform.mjs +45 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/acyclic.mjs +55 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/add-border-segments.mjs +33 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/coordinate-system.mjs +66 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/data/list.mjs +49 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/greedy-fas.mjs +97 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/layout.mjs +344 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/nesting-graph.mjs +94 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/normalize.mjs +69 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/add-subgraph-constraints.mjs +25 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/barycenter.mjs +29 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/build-layer-graph.mjs +33 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/cross-count.mjs +54 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/index.mjs +51 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/init-order.mjs +30 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.mjs +84 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.mjs +66 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/order/sort.mjs +47 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/parent-dummy-chains.mjs +66 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/position/bk.mjs +296 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/position/index.mjs +29 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/rank/feasible-tree.mjs +45 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/rank/index.mjs +29 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.mjs +148 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/rank/util.mjs +30 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/dagre/util.mjs +164 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/alg/dfs.mjs +33 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/alg/dijkstra.mjs +2 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/alg/floyd-warshall.mjs +2 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/alg/postorder.mjs +7 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/alg/preorder.mjs +7 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/alg/topsort.mjs +7 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/graph.mjs +420 -0
- package/dist/node_modules/.pnpm/dagre-d3-es@7.0.11/node_modules/dagre-d3-es/src/graphlib/json.mjs +47 -0
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/dayjs.min.mjs +286 -0
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/advancedFormat.mjs +58 -0
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/customParseFormat.mjs +133 -0
- package/dist/node_modules/.pnpm/dayjs@1.11.13/node_modules/dayjs/plugin/isoWeek.mjs +37 -0
- package/dist/node_modules/.pnpm/dompurify@3.2.4/node_modules/dompurify/dist/purify.es.mjs +965 -0
- package/dist/node_modules/.pnpm/internmap@2.0.3/node_modules/internmap/src/index.mjs +43 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/channels/index.mjs +131 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/channels/reusable.mjs +5 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/channels/type.mjs +24 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/color/hex.mjs +40 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/color/hsl.mjs +50 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/color/index.mjs +39 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/color/keyword.mjs +172 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/color/rgb.mjs +33 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/constants.mjs +13 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/adjust.mjs +15 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/adjust_channel.mjs +13 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/change.mjs +12 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/channel.mjs +8 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/darken.mjs +7 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/invert.mjs +12 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/is_dark.mjs +7 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/is_light.mjs +7 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/lighten.mjs +7 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/luminance.mjs +10 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/mix.mjs +20 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/methods/rgba.mjs +18 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/utils/channel.mjs +95 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/utils/index.mjs +11 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/utils/lang.mjs +14 -0
- package/dist/node_modules/.pnpm/khroma@2.1.0/node_modules/khroma/dist/utils/unit.mjs +10 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/default-module.mjs +87 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/dependency-injection.mjs +74 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/documentation/comment-provider.mjs +17 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/documentation/documentation-provider.mjs +62 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/documentation/jsdoc.mjs +478 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/languages/generated/ast.mjs +725 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/languages/grammar-config.mjs +20 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/async-parser.mjs +11 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/completion-parser-builder.mjs +13 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/cst-node-builder.mjs +233 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/langium-parser-builder.mjs +17 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/langium-parser.mjs +453 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/lexer.mjs +72 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/parser-builder-base.mjs +336 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/token-builder.mjs +105 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/parser/value-converter.mjs +111 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/references/linker.mjs +139 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/references/name-provider.mjs +19 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/references/references.mjs +80 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/references/scope-computation.mjs +70 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/references/scope-provider.mjs +62 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/references/scope.mjs +60 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/serializer/hydrator.mjs +256 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/serializer/json-serializer.mjs +202 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/service-registry.mjs +69 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/syntax-tree.mjs +73 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/ast-utils.mjs +159 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/caching.mjs +137 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/collections.mjs +177 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/cst-utils.mjs +126 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/disposable.mjs +12 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/errors.mjs +12 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/grammar-loader.mjs +33 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/grammar-utils.mjs +377 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/promise-utils.mjs +56 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/regexp-utils.mjs +239 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/stream.mjs +466 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/utils/uri-utils.mjs +37 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/validation/document-validator.mjs +236 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/validation/validation-registry.mjs +142 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/ast-descriptions.mjs +75 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/ast-node-locator.mjs +43 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/configuration.mjs +81 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/document-builder.mjs +328 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/documents.mjs +210 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/file-system-provider.mjs +15 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/index-manager.mjs +74 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/workspace-lock.mjs +64 -0
- package/dist/node_modules/.pnpm/langium@3.3.1/node_modules/langium/lib/workspace/workspace-manager.mjs +106 -0
- package/dist/node_modules/.pnpm/layout-base@1.0.2/node_modules/layout-base/layout-base.mjs +3197 -0
- package/dist/node_modules/.pnpm/layout-base@2.0.1/node_modules/layout-base/layout-base.mjs +3745 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_DataView.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Hash.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_ListCache.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Map.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_MapCache.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Promise.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Set.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_SetCache.mjs +15 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Stack.mjs +18 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Symbol.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_Uint8Array.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_WeakMap.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_apply.mjs +16 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayEach.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayFilter.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayIncludes.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayLikeKeys.mjs +24 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayMap.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayPush.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arrayReduce.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_arraySome.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_assignMergeValue.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_assignValue.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_assocIndexOf.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssign.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseAssignValue.mjs +16 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseClone.mjs +83 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseCreate.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseEach.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseExtremum.mjs +14 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseFilter.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseFindIndex.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseFlatten.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseFor.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseForOwn.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseGet.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseGetAllKeys.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseGetTag.mjs +14 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseHasIn.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIndexOf.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsArguments.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsEqual.mjs +14 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsEqualDeep.mjs +45 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsMap.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsMatch.mjs +35 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsNaN.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsNative.mjs +22 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsSet.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIsTypedArray.mjs +14 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseIteratee.mjs +20 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseKeys.mjs +19 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseKeysIn.mjs +20 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseLt.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseMap.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseMatches.mjs +15 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseMatchesProperty.mjs +20 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseMerge.mjs +27 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseMergeDeep.mjs +61 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseProperty.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_basePropertyDeep.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseReduce.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseRest.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseSetToString.mjs +14 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseTimes.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseToString.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseUnary.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_baseUniq.mjs +46 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cacheHas.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_castFunction.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_castPath.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneArrayBuffer.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneBuffer.mjs +16 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneDataView.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneRegExp.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneSymbol.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_cloneTypedArray.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copyArray.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copyObject.mjs +23 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_copySymbols.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_coreJsData.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_createAssigner.mjs +23 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_createBaseEach.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_createBaseFor.mjs +15 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_createSet.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_defineProperty.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_equalArrays.mjs +50 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_equalByTag.mjs +59 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_equalObjects.mjs +50 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_freeGlobal.mjs +4 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getAllKeys.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getMapData.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getMatchData.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getNative.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getPrototype.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getRawTag.mjs +25 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getSymbols.mjs +17 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getTag.mjs +34 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_getValue.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hasPath.mjs +25 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashClear.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashDelete.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashGet.mjs +15 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashHas.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_hashSet.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneArray.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneByTag.mjs +43 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_initCloneObject.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isFlattenable.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isIndex.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isIterateeCall.mjs +17 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isKey.mjs +16 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isKeyable.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isMasked.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isPrototype.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_isStrictComparable.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheClear.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheDelete.mjs +20 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheGet.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheHas.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_listCacheSet.mjs +14 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheClear.mjs +14 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheDelete.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheGet.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheHas.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapCacheSet.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_mapToArray.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_matchesStrictComparable.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_memoizeCapped.mjs +15 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_nativeCreate.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_nativeKeys.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_nativeKeysIn.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_nodeUtil.mjs +18 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_objectToString.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_overArg.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_overRest.mjs +21 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_root.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_safeGet.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_setCacheAdd.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_setCacheHas.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_setToArray.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_setToString.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_shortOut.mjs +20 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackClear.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackDelete.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackGet.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackHas.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stackSet.mjs +22 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_strictIndexOf.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_stringToPath.mjs +16 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_toKey.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/_toSource.mjs +18 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/clone.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/constant.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/eq.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/filter.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/flatMap.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/flatten.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/forEach.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/get.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/hasIn.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/identity.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArguments.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArray.mjs +4 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArrayLike.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isArrayLikeObject.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isBuffer.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isEmpty.mjs +35 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isFunction.mjs +13 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isLength.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isMap.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObject.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isObjectLike.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isPlainObject.mjs +22 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSet.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isSymbol.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/isTypedArray.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/keys.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/keysIn.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/map.mjs +11 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/memoize.mjs +22 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/merge.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/min.mjs +9 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/noop.mjs +5 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/property.mjs +10 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/reduce.mjs +12 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/stubArray.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/stubFalse.mjs +6 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/toPlainObject.mjs +8 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/toString.mjs +7 -0
- package/dist/node_modules/.pnpm/lodash-es@4.17.21/node_modules/lodash-es/uniqBy.mjs +8 -0
- package/dist/node_modules/.pnpm/marked@15.0.7/node_modules/marked/lib/marked.esm.mjs +2152 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-IEHRJDOE.mjs +1093 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/blockDiagram-JOT3LUYC.mjs +3598 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/c4Diagram-VJAJSXHY.mjs +2487 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-4BMEZGHF.mjs +17 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5NNNAHNI.mjs +143 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-6JRP7KZX.mjs +2696 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-7B677QYD.mjs +19 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-A2AXSNBT.mjs +1828 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AEK57VVT.mjs +1961 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-C3MQ5ANM.mjs +332 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-D6G4REZN.mjs +109 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-H2D2JQ3I.mjs +78 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-HRU6DDCH.mjs +5018 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-IIMUDSI4.mjs +696 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-K557N5IZ.mjs +17 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-O4NI6UNU.mjs +557 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-RZ5BOZE2.mjs +38 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-TYCBKAJE.mjs +57 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-VV3M67IP.mjs +107 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-XZIHB7SX.mjs +17 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-YTJNT7DU.mjs +3052 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-GIVACNV2.mjs +27 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-COTLJTTW.mjs +27 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/dagre-OKDRZEBW.mjs +662 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-SSKATNLV.mjs +306 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-VNBRO52H.mjs +191 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-Q7BY3M3F.mjs +1168 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/flowDiagram-4HSFHLVR.mjs +2339 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/ganttDiagram-APWFNJXF.mjs +2104 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-7IBYFJ6S.mjs +1215 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-PH2N3AL5.mjs +31 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-U35MCT3I.mjs +1201 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/kanban-definition-NDS4AKOZ.mjs +1055 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/mindmap-definition-ALO5MXBD.mjs +1195 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-IB7DONF6.mjs +188 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/quadrantDiagram-7GDLP6J5.mjs +1340 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-KVF5MWMF.mjs +1168 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/sankeyDiagram-QLVOVGJD.mjs +670 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-X6HHIX6F.mjs +3419 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-DGXRK772.mjs +477 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-YXO3MK2T.mjs +27 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-BDJGKUSR.mjs +1232 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-VJFVF3MP.mjs +1778 -0
- package/dist/node_modules/.pnpm/mermaid@11.6.0/node_modules/mermaid/dist/mermaid.core.mjs +1222 -0
- package/dist/node_modules/.pnpm/nanoid@5.1.5/node_modules/nanoid/index.browser.mjs +13 -0
- package/dist/node_modules/.pnpm/nanoid@5.1.5/node_modules/nanoid/url-alphabet/index.mjs +4 -0
- package/dist/node_modules/.pnpm/roughjs@4.6.6/node_modules/roughjs/bundled/rough.esm.mjs +1001 -0
- package/dist/node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Enum.mjs +16 -0
- package/dist/node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Parser.mjs +164 -0
- package/dist/node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Serializer.mjs +29 -0
- package/dist/node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Tokenizer.mjs +156 -0
- package/dist/node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Utility.mjs +38 -0
- package/dist/node_modules/.pnpm/ts-dedent@2.2.0/node_modules/ts-dedent/esm/index.mjs +42 -0
- package/dist/node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.mjs +95 -0
- package/dist/node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.mjs +133 -0
- package/dist/node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.mjs +40 -0
- package/dist/node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.mjs +28 -0
- package/dist/node_modules/.pnpm/vscode-languageserver-textdocument@1.0.12/node_modules/vscode-languageserver-textdocument/lib/esm/main.mjs +225 -0
- package/dist/node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.mjs +1262 -0
- package/dist/node_modules/.pnpm/vscode-uri@3.0.8/node_modules/vscode-uri/lib/esm/index.mjs +344 -0
- package/package.json +24 -26
- package/dist/Css-BDTor6my.js +0 -18
- package/dist/ElmShikiHighlighter-B6syB4ax.js +0 -44
- package/dist/Rust-BwuxPQOA.js +0 -16
- package/dist/elmethis.js +0 -70
- package/dist/index-BFwE0btN.js +0 -3523
|
@@ -0,0 +1,2555 @@
|
|
|
1
|
+
import { __module as coseBase$1 } from "../../../../../_virtual/cose-base2.mjs";
|
|
2
|
+
import { __require as requireLayoutBase } from "../../../layout-base@2.0.1/node_modules/layout-base/layout-base.mjs";
|
|
3
|
+
var coseBase = coseBase$1.exports;
|
|
4
|
+
var hasRequiredCoseBase;
|
|
5
|
+
function requireCoseBase() {
|
|
6
|
+
if (hasRequiredCoseBase) return coseBase$1.exports;
|
|
7
|
+
hasRequiredCoseBase = 1;
|
|
8
|
+
(function(module, exports) {
|
|
9
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
|
10
|
+
module.exports = factory(requireLayoutBase());
|
|
11
|
+
})(coseBase, function(__WEBPACK_EXTERNAL_MODULE__551__) {
|
|
12
|
+
return (
|
|
13
|
+
/******/
|
|
14
|
+
(() => {
|
|
15
|
+
var __webpack_modules__ = {
|
|
16
|
+
/***/
|
|
17
|
+
45: (
|
|
18
|
+
/***/
|
|
19
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
20
|
+
var coseBase2 = {};
|
|
21
|
+
coseBase2.layoutBase = __webpack_require__2(551);
|
|
22
|
+
coseBase2.CoSEConstants = __webpack_require__2(806);
|
|
23
|
+
coseBase2.CoSEEdge = __webpack_require__2(767);
|
|
24
|
+
coseBase2.CoSEGraph = __webpack_require__2(880);
|
|
25
|
+
coseBase2.CoSEGraphManager = __webpack_require__2(578);
|
|
26
|
+
coseBase2.CoSELayout = __webpack_require__2(765);
|
|
27
|
+
coseBase2.CoSENode = __webpack_require__2(991);
|
|
28
|
+
coseBase2.ConstraintHandler = __webpack_require__2(902);
|
|
29
|
+
module2.exports = coseBase2;
|
|
30
|
+
}
|
|
31
|
+
),
|
|
32
|
+
/***/
|
|
33
|
+
806: (
|
|
34
|
+
/***/
|
|
35
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
36
|
+
var FDLayoutConstants = __webpack_require__2(551).FDLayoutConstants;
|
|
37
|
+
function CoSEConstants() {
|
|
38
|
+
}
|
|
39
|
+
for (var prop in FDLayoutConstants) {
|
|
40
|
+
CoSEConstants[prop] = FDLayoutConstants[prop];
|
|
41
|
+
}
|
|
42
|
+
CoSEConstants.DEFAULT_USE_MULTI_LEVEL_SCALING = false;
|
|
43
|
+
CoSEConstants.DEFAULT_RADIAL_SEPARATION = FDLayoutConstants.DEFAULT_EDGE_LENGTH;
|
|
44
|
+
CoSEConstants.DEFAULT_COMPONENT_SEPERATION = 60;
|
|
45
|
+
CoSEConstants.TILE = true;
|
|
46
|
+
CoSEConstants.TILING_PADDING_VERTICAL = 10;
|
|
47
|
+
CoSEConstants.TILING_PADDING_HORIZONTAL = 10;
|
|
48
|
+
CoSEConstants.TRANSFORM_ON_CONSTRAINT_HANDLING = true;
|
|
49
|
+
CoSEConstants.ENFORCE_CONSTRAINTS = true;
|
|
50
|
+
CoSEConstants.APPLY_LAYOUT = true;
|
|
51
|
+
CoSEConstants.RELAX_MOVEMENT_ON_CONSTRAINTS = true;
|
|
52
|
+
CoSEConstants.TREE_REDUCTION_ON_INCREMENTAL = true;
|
|
53
|
+
CoSEConstants.PURE_INCREMENTAL = CoSEConstants.DEFAULT_INCREMENTAL;
|
|
54
|
+
module2.exports = CoSEConstants;
|
|
55
|
+
}
|
|
56
|
+
),
|
|
57
|
+
/***/
|
|
58
|
+
767: (
|
|
59
|
+
/***/
|
|
60
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
61
|
+
var FDLayoutEdge = __webpack_require__2(551).FDLayoutEdge;
|
|
62
|
+
function CoSEEdge(source, target, vEdge) {
|
|
63
|
+
FDLayoutEdge.call(this, source, target, vEdge);
|
|
64
|
+
}
|
|
65
|
+
CoSEEdge.prototype = Object.create(FDLayoutEdge.prototype);
|
|
66
|
+
for (var prop in FDLayoutEdge) {
|
|
67
|
+
CoSEEdge[prop] = FDLayoutEdge[prop];
|
|
68
|
+
}
|
|
69
|
+
module2.exports = CoSEEdge;
|
|
70
|
+
}
|
|
71
|
+
),
|
|
72
|
+
/***/
|
|
73
|
+
880: (
|
|
74
|
+
/***/
|
|
75
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
76
|
+
var LGraph = __webpack_require__2(551).LGraph;
|
|
77
|
+
function CoSEGraph(parent, graphMgr, vGraph) {
|
|
78
|
+
LGraph.call(this, parent, graphMgr, vGraph);
|
|
79
|
+
}
|
|
80
|
+
CoSEGraph.prototype = Object.create(LGraph.prototype);
|
|
81
|
+
for (var prop in LGraph) {
|
|
82
|
+
CoSEGraph[prop] = LGraph[prop];
|
|
83
|
+
}
|
|
84
|
+
module2.exports = CoSEGraph;
|
|
85
|
+
}
|
|
86
|
+
),
|
|
87
|
+
/***/
|
|
88
|
+
578: (
|
|
89
|
+
/***/
|
|
90
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
91
|
+
var LGraphManager = __webpack_require__2(551).LGraphManager;
|
|
92
|
+
function CoSEGraphManager(layout) {
|
|
93
|
+
LGraphManager.call(this, layout);
|
|
94
|
+
}
|
|
95
|
+
CoSEGraphManager.prototype = Object.create(LGraphManager.prototype);
|
|
96
|
+
for (var prop in LGraphManager) {
|
|
97
|
+
CoSEGraphManager[prop] = LGraphManager[prop];
|
|
98
|
+
}
|
|
99
|
+
module2.exports = CoSEGraphManager;
|
|
100
|
+
}
|
|
101
|
+
),
|
|
102
|
+
/***/
|
|
103
|
+
765: (
|
|
104
|
+
/***/
|
|
105
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
106
|
+
var FDLayout = __webpack_require__2(551).FDLayout;
|
|
107
|
+
var CoSEGraphManager = __webpack_require__2(578);
|
|
108
|
+
var CoSEGraph = __webpack_require__2(880);
|
|
109
|
+
var CoSENode = __webpack_require__2(991);
|
|
110
|
+
var CoSEEdge = __webpack_require__2(767);
|
|
111
|
+
var CoSEConstants = __webpack_require__2(806);
|
|
112
|
+
var ConstraintHandler = __webpack_require__2(902);
|
|
113
|
+
var FDLayoutConstants = __webpack_require__2(551).FDLayoutConstants;
|
|
114
|
+
var LayoutConstants = __webpack_require__2(551).LayoutConstants;
|
|
115
|
+
var Point = __webpack_require__2(551).Point;
|
|
116
|
+
var PointD = __webpack_require__2(551).PointD;
|
|
117
|
+
var DimensionD = __webpack_require__2(551).DimensionD;
|
|
118
|
+
var Layout = __webpack_require__2(551).Layout;
|
|
119
|
+
var Integer = __webpack_require__2(551).Integer;
|
|
120
|
+
var IGeometry = __webpack_require__2(551).IGeometry;
|
|
121
|
+
var LGraph = __webpack_require__2(551).LGraph;
|
|
122
|
+
var Transform = __webpack_require__2(551).Transform;
|
|
123
|
+
var LinkedList = __webpack_require__2(551).LinkedList;
|
|
124
|
+
function CoSELayout() {
|
|
125
|
+
FDLayout.call(this);
|
|
126
|
+
this.toBeTiled = {};
|
|
127
|
+
this.constraints = {};
|
|
128
|
+
}
|
|
129
|
+
CoSELayout.prototype = Object.create(FDLayout.prototype);
|
|
130
|
+
for (var prop in FDLayout) {
|
|
131
|
+
CoSELayout[prop] = FDLayout[prop];
|
|
132
|
+
}
|
|
133
|
+
CoSELayout.prototype.newGraphManager = function() {
|
|
134
|
+
var gm = new CoSEGraphManager(this);
|
|
135
|
+
this.graphManager = gm;
|
|
136
|
+
return gm;
|
|
137
|
+
};
|
|
138
|
+
CoSELayout.prototype.newGraph = function(vGraph) {
|
|
139
|
+
return new CoSEGraph(null, this.graphManager, vGraph);
|
|
140
|
+
};
|
|
141
|
+
CoSELayout.prototype.newNode = function(vNode) {
|
|
142
|
+
return new CoSENode(this.graphManager, vNode);
|
|
143
|
+
};
|
|
144
|
+
CoSELayout.prototype.newEdge = function(vEdge) {
|
|
145
|
+
return new CoSEEdge(null, null, vEdge);
|
|
146
|
+
};
|
|
147
|
+
CoSELayout.prototype.initParameters = function() {
|
|
148
|
+
FDLayout.prototype.initParameters.call(this, arguments);
|
|
149
|
+
if (!this.isSubLayout) {
|
|
150
|
+
if (CoSEConstants.DEFAULT_EDGE_LENGTH < 10) {
|
|
151
|
+
this.idealEdgeLength = 10;
|
|
152
|
+
} else {
|
|
153
|
+
this.idealEdgeLength = CoSEConstants.DEFAULT_EDGE_LENGTH;
|
|
154
|
+
}
|
|
155
|
+
this.useSmartIdealEdgeLengthCalculation = CoSEConstants.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION;
|
|
156
|
+
this.gravityConstant = FDLayoutConstants.DEFAULT_GRAVITY_STRENGTH;
|
|
157
|
+
this.compoundGravityConstant = FDLayoutConstants.DEFAULT_COMPOUND_GRAVITY_STRENGTH;
|
|
158
|
+
this.gravityRangeFactor = FDLayoutConstants.DEFAULT_GRAVITY_RANGE_FACTOR;
|
|
159
|
+
this.compoundGravityRangeFactor = FDLayoutConstants.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR;
|
|
160
|
+
this.prunedNodesAll = [];
|
|
161
|
+
this.growTreeIterations = 0;
|
|
162
|
+
this.afterGrowthIterations = 0;
|
|
163
|
+
this.isTreeGrowing = false;
|
|
164
|
+
this.isGrowthFinished = false;
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
CoSELayout.prototype.initSpringEmbedder = function() {
|
|
168
|
+
FDLayout.prototype.initSpringEmbedder.call(this);
|
|
169
|
+
this.coolingCycle = 0;
|
|
170
|
+
this.maxCoolingCycle = this.maxIterations / FDLayoutConstants.CONVERGENCE_CHECK_PERIOD;
|
|
171
|
+
this.finalTemperature = 0.04;
|
|
172
|
+
this.coolingAdjuster = 1;
|
|
173
|
+
};
|
|
174
|
+
CoSELayout.prototype.layout = function() {
|
|
175
|
+
var createBendsAsNeeded = LayoutConstants.DEFAULT_CREATE_BENDS_AS_NEEDED;
|
|
176
|
+
if (createBendsAsNeeded) {
|
|
177
|
+
this.createBendpoints();
|
|
178
|
+
this.graphManager.resetAllEdges();
|
|
179
|
+
}
|
|
180
|
+
this.level = 0;
|
|
181
|
+
return this.classicLayout();
|
|
182
|
+
};
|
|
183
|
+
CoSELayout.prototype.classicLayout = function() {
|
|
184
|
+
this.nodesWithGravity = this.calculateNodesToApplyGravitationTo();
|
|
185
|
+
this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity);
|
|
186
|
+
this.calcNoOfChildrenForAllNodes();
|
|
187
|
+
this.graphManager.calcLowestCommonAncestors();
|
|
188
|
+
this.graphManager.calcInclusionTreeDepths();
|
|
189
|
+
this.graphManager.getRoot().calcEstimatedSize();
|
|
190
|
+
this.calcIdealEdgeLengths();
|
|
191
|
+
if (!this.incremental) {
|
|
192
|
+
var forest = this.getFlatForest();
|
|
193
|
+
if (forest.length > 0) {
|
|
194
|
+
this.positionNodesRadially(forest);
|
|
195
|
+
} else {
|
|
196
|
+
this.reduceTrees();
|
|
197
|
+
this.graphManager.resetAllNodesToApplyGravitation();
|
|
198
|
+
var allNodes = new Set(this.getAllNodes());
|
|
199
|
+
var intersection = this.nodesWithGravity.filter(function(x) {
|
|
200
|
+
return allNodes.has(x);
|
|
201
|
+
});
|
|
202
|
+
this.graphManager.setAllNodesToApplyGravitation(intersection);
|
|
203
|
+
this.positionNodesRandomly();
|
|
204
|
+
}
|
|
205
|
+
} else {
|
|
206
|
+
if (CoSEConstants.TREE_REDUCTION_ON_INCREMENTAL) {
|
|
207
|
+
this.reduceTrees();
|
|
208
|
+
this.graphManager.resetAllNodesToApplyGravitation();
|
|
209
|
+
var allNodes = new Set(this.getAllNodes());
|
|
210
|
+
var intersection = this.nodesWithGravity.filter(function(x) {
|
|
211
|
+
return allNodes.has(x);
|
|
212
|
+
});
|
|
213
|
+
this.graphManager.setAllNodesToApplyGravitation(intersection);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
if (Object.keys(this.constraints).length > 0) {
|
|
217
|
+
ConstraintHandler.handleConstraints(this);
|
|
218
|
+
this.initConstraintVariables();
|
|
219
|
+
}
|
|
220
|
+
this.initSpringEmbedder();
|
|
221
|
+
if (CoSEConstants.APPLY_LAYOUT) {
|
|
222
|
+
this.runSpringEmbedder();
|
|
223
|
+
}
|
|
224
|
+
return true;
|
|
225
|
+
};
|
|
226
|
+
CoSELayout.prototype.tick = function() {
|
|
227
|
+
this.totalIterations++;
|
|
228
|
+
if (this.totalIterations === this.maxIterations && !this.isTreeGrowing && !this.isGrowthFinished) {
|
|
229
|
+
if (this.prunedNodesAll.length > 0) {
|
|
230
|
+
this.isTreeGrowing = true;
|
|
231
|
+
} else {
|
|
232
|
+
return true;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
if (this.totalIterations % FDLayoutConstants.CONVERGENCE_CHECK_PERIOD == 0 && !this.isTreeGrowing && !this.isGrowthFinished) {
|
|
236
|
+
if (this.isConverged()) {
|
|
237
|
+
if (this.prunedNodesAll.length > 0) {
|
|
238
|
+
this.isTreeGrowing = true;
|
|
239
|
+
} else {
|
|
240
|
+
return true;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
this.coolingCycle++;
|
|
244
|
+
if (this.layoutQuality == 0) {
|
|
245
|
+
this.coolingAdjuster = this.coolingCycle;
|
|
246
|
+
} else if (this.layoutQuality == 1) {
|
|
247
|
+
this.coolingAdjuster = this.coolingCycle / 3;
|
|
248
|
+
}
|
|
249
|
+
this.coolingFactor = Math.max(this.initialCoolingFactor - Math.pow(this.coolingCycle, Math.log(100 * (this.initialCoolingFactor - this.finalTemperature)) / Math.log(this.maxCoolingCycle)) / 100 * this.coolingAdjuster, this.finalTemperature);
|
|
250
|
+
this.animationPeriod = Math.ceil(this.initialAnimationPeriod * Math.sqrt(this.coolingFactor));
|
|
251
|
+
}
|
|
252
|
+
if (this.isTreeGrowing) {
|
|
253
|
+
if (this.growTreeIterations % 10 == 0) {
|
|
254
|
+
if (this.prunedNodesAll.length > 0) {
|
|
255
|
+
this.graphManager.updateBounds();
|
|
256
|
+
this.updateGrid();
|
|
257
|
+
this.growTree(this.prunedNodesAll);
|
|
258
|
+
this.graphManager.resetAllNodesToApplyGravitation();
|
|
259
|
+
var allNodes = new Set(this.getAllNodes());
|
|
260
|
+
var intersection = this.nodesWithGravity.filter(function(x) {
|
|
261
|
+
return allNodes.has(x);
|
|
262
|
+
});
|
|
263
|
+
this.graphManager.setAllNodesToApplyGravitation(intersection);
|
|
264
|
+
this.graphManager.updateBounds();
|
|
265
|
+
this.updateGrid();
|
|
266
|
+
if (CoSEConstants.PURE_INCREMENTAL) this.coolingFactor = FDLayoutConstants.DEFAULT_COOLING_FACTOR_INCREMENTAL / 2;
|
|
267
|
+
else this.coolingFactor = FDLayoutConstants.DEFAULT_COOLING_FACTOR_INCREMENTAL;
|
|
268
|
+
} else {
|
|
269
|
+
this.isTreeGrowing = false;
|
|
270
|
+
this.isGrowthFinished = true;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
this.growTreeIterations++;
|
|
274
|
+
}
|
|
275
|
+
if (this.isGrowthFinished) {
|
|
276
|
+
if (this.isConverged()) {
|
|
277
|
+
return true;
|
|
278
|
+
}
|
|
279
|
+
if (this.afterGrowthIterations % 10 == 0) {
|
|
280
|
+
this.graphManager.updateBounds();
|
|
281
|
+
this.updateGrid();
|
|
282
|
+
}
|
|
283
|
+
if (CoSEConstants.PURE_INCREMENTAL) this.coolingFactor = FDLayoutConstants.DEFAULT_COOLING_FACTOR_INCREMENTAL / 2 * ((100 - this.afterGrowthIterations) / 100);
|
|
284
|
+
else this.coolingFactor = FDLayoutConstants.DEFAULT_COOLING_FACTOR_INCREMENTAL * ((100 - this.afterGrowthIterations) / 100);
|
|
285
|
+
this.afterGrowthIterations++;
|
|
286
|
+
}
|
|
287
|
+
var gridUpdateAllowed = !this.isTreeGrowing && !this.isGrowthFinished;
|
|
288
|
+
var forceToNodeSurroundingUpdate = this.growTreeIterations % 10 == 1 && this.isTreeGrowing || this.afterGrowthIterations % 10 == 1 && this.isGrowthFinished;
|
|
289
|
+
this.totalDisplacement = 0;
|
|
290
|
+
this.graphManager.updateBounds();
|
|
291
|
+
this.calcSpringForces();
|
|
292
|
+
this.calcRepulsionForces(gridUpdateAllowed, forceToNodeSurroundingUpdate);
|
|
293
|
+
this.calcGravitationalForces();
|
|
294
|
+
this.moveNodes();
|
|
295
|
+
this.animate();
|
|
296
|
+
return false;
|
|
297
|
+
};
|
|
298
|
+
CoSELayout.prototype.getPositionsData = function() {
|
|
299
|
+
var allNodes = this.graphManager.getAllNodes();
|
|
300
|
+
var pData = {};
|
|
301
|
+
for (var i = 0; i < allNodes.length; i++) {
|
|
302
|
+
var rect = allNodes[i].rect;
|
|
303
|
+
var id = allNodes[i].id;
|
|
304
|
+
pData[id] = {
|
|
305
|
+
id,
|
|
306
|
+
x: rect.getCenterX(),
|
|
307
|
+
y: rect.getCenterY(),
|
|
308
|
+
w: rect.width,
|
|
309
|
+
h: rect.height
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
return pData;
|
|
313
|
+
};
|
|
314
|
+
CoSELayout.prototype.runSpringEmbedder = function() {
|
|
315
|
+
this.initialAnimationPeriod = 25;
|
|
316
|
+
this.animationPeriod = this.initialAnimationPeriod;
|
|
317
|
+
var layoutEnded = false;
|
|
318
|
+
if (FDLayoutConstants.ANIMATE === "during") {
|
|
319
|
+
this.emit("layoutstarted");
|
|
320
|
+
} else {
|
|
321
|
+
while (!layoutEnded) {
|
|
322
|
+
layoutEnded = this.tick();
|
|
323
|
+
}
|
|
324
|
+
this.graphManager.updateBounds();
|
|
325
|
+
}
|
|
326
|
+
};
|
|
327
|
+
CoSELayout.prototype.moveNodes = function() {
|
|
328
|
+
var lNodes = this.getAllNodes();
|
|
329
|
+
var node;
|
|
330
|
+
for (var i = 0; i < lNodes.length; i++) {
|
|
331
|
+
node = lNodes[i];
|
|
332
|
+
node.calculateDisplacement();
|
|
333
|
+
}
|
|
334
|
+
if (Object.keys(this.constraints).length > 0) {
|
|
335
|
+
this.updateDisplacements();
|
|
336
|
+
}
|
|
337
|
+
for (var i = 0; i < lNodes.length; i++) {
|
|
338
|
+
node = lNodes[i];
|
|
339
|
+
node.move();
|
|
340
|
+
}
|
|
341
|
+
};
|
|
342
|
+
CoSELayout.prototype.initConstraintVariables = function() {
|
|
343
|
+
var self = this;
|
|
344
|
+
this.idToNodeMap = /* @__PURE__ */ new Map();
|
|
345
|
+
this.fixedNodeSet = /* @__PURE__ */ new Set();
|
|
346
|
+
var allNodes = this.graphManager.getAllNodes();
|
|
347
|
+
for (var i = 0; i < allNodes.length; i++) {
|
|
348
|
+
var node = allNodes[i];
|
|
349
|
+
this.idToNodeMap.set(node.id, node);
|
|
350
|
+
}
|
|
351
|
+
var calculateCompoundWeight = function calculateCompoundWeight2(compoundNode) {
|
|
352
|
+
var nodes = compoundNode.getChild().getNodes();
|
|
353
|
+
var node2;
|
|
354
|
+
var fixedNodeWeight2 = 0;
|
|
355
|
+
for (var i2 = 0; i2 < nodes.length; i2++) {
|
|
356
|
+
node2 = nodes[i2];
|
|
357
|
+
if (node2.getChild() == null) {
|
|
358
|
+
if (self.fixedNodeSet.has(node2.id)) {
|
|
359
|
+
fixedNodeWeight2 += 100;
|
|
360
|
+
}
|
|
361
|
+
} else {
|
|
362
|
+
fixedNodeWeight2 += calculateCompoundWeight2(node2);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
return fixedNodeWeight2;
|
|
366
|
+
};
|
|
367
|
+
if (this.constraints.fixedNodeConstraint) {
|
|
368
|
+
this.constraints.fixedNodeConstraint.forEach(function(nodeData) {
|
|
369
|
+
self.fixedNodeSet.add(nodeData.nodeId);
|
|
370
|
+
});
|
|
371
|
+
var allNodes = this.graphManager.getAllNodes();
|
|
372
|
+
var node;
|
|
373
|
+
for (var i = 0; i < allNodes.length; i++) {
|
|
374
|
+
node = allNodes[i];
|
|
375
|
+
if (node.getChild() != null) {
|
|
376
|
+
var fixedNodeWeight = calculateCompoundWeight(node);
|
|
377
|
+
if (fixedNodeWeight > 0) {
|
|
378
|
+
node.fixedNodeWeight = fixedNodeWeight;
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
if (this.constraints.relativePlacementConstraint) {
|
|
384
|
+
var nodeToDummyForVerticalAlignment = /* @__PURE__ */ new Map();
|
|
385
|
+
var nodeToDummyForHorizontalAlignment = /* @__PURE__ */ new Map();
|
|
386
|
+
this.dummyToNodeForVerticalAlignment = /* @__PURE__ */ new Map();
|
|
387
|
+
this.dummyToNodeForHorizontalAlignment = /* @__PURE__ */ new Map();
|
|
388
|
+
this.fixedNodesOnHorizontal = /* @__PURE__ */ new Set();
|
|
389
|
+
this.fixedNodesOnVertical = /* @__PURE__ */ new Set();
|
|
390
|
+
this.fixedNodeSet.forEach(function(nodeId) {
|
|
391
|
+
self.fixedNodesOnHorizontal.add(nodeId);
|
|
392
|
+
self.fixedNodesOnVertical.add(nodeId);
|
|
393
|
+
});
|
|
394
|
+
if (this.constraints.alignmentConstraint) {
|
|
395
|
+
if (this.constraints.alignmentConstraint.vertical) {
|
|
396
|
+
var verticalAlignment = this.constraints.alignmentConstraint.vertical;
|
|
397
|
+
for (var i = 0; i < verticalAlignment.length; i++) {
|
|
398
|
+
this.dummyToNodeForVerticalAlignment.set("dummy" + i, []);
|
|
399
|
+
verticalAlignment[i].forEach(function(nodeId) {
|
|
400
|
+
nodeToDummyForVerticalAlignment.set(nodeId, "dummy" + i);
|
|
401
|
+
self.dummyToNodeForVerticalAlignment.get("dummy" + i).push(nodeId);
|
|
402
|
+
if (self.fixedNodeSet.has(nodeId)) {
|
|
403
|
+
self.fixedNodesOnHorizontal.add("dummy" + i);
|
|
404
|
+
}
|
|
405
|
+
});
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
if (this.constraints.alignmentConstraint.horizontal) {
|
|
409
|
+
var horizontalAlignment = this.constraints.alignmentConstraint.horizontal;
|
|
410
|
+
for (var i = 0; i < horizontalAlignment.length; i++) {
|
|
411
|
+
this.dummyToNodeForHorizontalAlignment.set("dummy" + i, []);
|
|
412
|
+
horizontalAlignment[i].forEach(function(nodeId) {
|
|
413
|
+
nodeToDummyForHorizontalAlignment.set(nodeId, "dummy" + i);
|
|
414
|
+
self.dummyToNodeForHorizontalAlignment.get("dummy" + i).push(nodeId);
|
|
415
|
+
if (self.fixedNodeSet.has(nodeId)) {
|
|
416
|
+
self.fixedNodesOnVertical.add("dummy" + i);
|
|
417
|
+
}
|
|
418
|
+
});
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
if (CoSEConstants.RELAX_MOVEMENT_ON_CONSTRAINTS) {
|
|
423
|
+
this.shuffle = function(array) {
|
|
424
|
+
var j, x, i2;
|
|
425
|
+
for (i2 = array.length - 1; i2 >= 2 * array.length / 3; i2--) {
|
|
426
|
+
j = Math.floor(Math.random() * (i2 + 1));
|
|
427
|
+
x = array[i2];
|
|
428
|
+
array[i2] = array[j];
|
|
429
|
+
array[j] = x;
|
|
430
|
+
}
|
|
431
|
+
return array;
|
|
432
|
+
};
|
|
433
|
+
this.nodesInRelativeHorizontal = [];
|
|
434
|
+
this.nodesInRelativeVertical = [];
|
|
435
|
+
this.nodeToRelativeConstraintMapHorizontal = /* @__PURE__ */ new Map();
|
|
436
|
+
this.nodeToRelativeConstraintMapVertical = /* @__PURE__ */ new Map();
|
|
437
|
+
this.nodeToTempPositionMapHorizontal = /* @__PURE__ */ new Map();
|
|
438
|
+
this.nodeToTempPositionMapVertical = /* @__PURE__ */ new Map();
|
|
439
|
+
this.constraints.relativePlacementConstraint.forEach(function(constraint) {
|
|
440
|
+
if (constraint.left) {
|
|
441
|
+
var nodeIdLeft = nodeToDummyForVerticalAlignment.has(constraint.left) ? nodeToDummyForVerticalAlignment.get(constraint.left) : constraint.left;
|
|
442
|
+
var nodeIdRight = nodeToDummyForVerticalAlignment.has(constraint.right) ? nodeToDummyForVerticalAlignment.get(constraint.right) : constraint.right;
|
|
443
|
+
if (!self.nodesInRelativeHorizontal.includes(nodeIdLeft)) {
|
|
444
|
+
self.nodesInRelativeHorizontal.push(nodeIdLeft);
|
|
445
|
+
self.nodeToRelativeConstraintMapHorizontal.set(nodeIdLeft, []);
|
|
446
|
+
if (self.dummyToNodeForVerticalAlignment.has(nodeIdLeft)) {
|
|
447
|
+
self.nodeToTempPositionMapHorizontal.set(nodeIdLeft, self.idToNodeMap.get(self.dummyToNodeForVerticalAlignment.get(nodeIdLeft)[0]).getCenterX());
|
|
448
|
+
} else {
|
|
449
|
+
self.nodeToTempPositionMapHorizontal.set(nodeIdLeft, self.idToNodeMap.get(nodeIdLeft).getCenterX());
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
if (!self.nodesInRelativeHorizontal.includes(nodeIdRight)) {
|
|
453
|
+
self.nodesInRelativeHorizontal.push(nodeIdRight);
|
|
454
|
+
self.nodeToRelativeConstraintMapHorizontal.set(nodeIdRight, []);
|
|
455
|
+
if (self.dummyToNodeForVerticalAlignment.has(nodeIdRight)) {
|
|
456
|
+
self.nodeToTempPositionMapHorizontal.set(nodeIdRight, self.idToNodeMap.get(self.dummyToNodeForVerticalAlignment.get(nodeIdRight)[0]).getCenterX());
|
|
457
|
+
} else {
|
|
458
|
+
self.nodeToTempPositionMapHorizontal.set(nodeIdRight, self.idToNodeMap.get(nodeIdRight).getCenterX());
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
self.nodeToRelativeConstraintMapHorizontal.get(nodeIdLeft).push({ right: nodeIdRight, gap: constraint.gap });
|
|
462
|
+
self.nodeToRelativeConstraintMapHorizontal.get(nodeIdRight).push({ left: nodeIdLeft, gap: constraint.gap });
|
|
463
|
+
} else {
|
|
464
|
+
var nodeIdTop = nodeToDummyForHorizontalAlignment.has(constraint.top) ? nodeToDummyForHorizontalAlignment.get(constraint.top) : constraint.top;
|
|
465
|
+
var nodeIdBottom = nodeToDummyForHorizontalAlignment.has(constraint.bottom) ? nodeToDummyForHorizontalAlignment.get(constraint.bottom) : constraint.bottom;
|
|
466
|
+
if (!self.nodesInRelativeVertical.includes(nodeIdTop)) {
|
|
467
|
+
self.nodesInRelativeVertical.push(nodeIdTop);
|
|
468
|
+
self.nodeToRelativeConstraintMapVertical.set(nodeIdTop, []);
|
|
469
|
+
if (self.dummyToNodeForHorizontalAlignment.has(nodeIdTop)) {
|
|
470
|
+
self.nodeToTempPositionMapVertical.set(nodeIdTop, self.idToNodeMap.get(self.dummyToNodeForHorizontalAlignment.get(nodeIdTop)[0]).getCenterY());
|
|
471
|
+
} else {
|
|
472
|
+
self.nodeToTempPositionMapVertical.set(nodeIdTop, self.idToNodeMap.get(nodeIdTop).getCenterY());
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
if (!self.nodesInRelativeVertical.includes(nodeIdBottom)) {
|
|
476
|
+
self.nodesInRelativeVertical.push(nodeIdBottom);
|
|
477
|
+
self.nodeToRelativeConstraintMapVertical.set(nodeIdBottom, []);
|
|
478
|
+
if (self.dummyToNodeForHorizontalAlignment.has(nodeIdBottom)) {
|
|
479
|
+
self.nodeToTempPositionMapVertical.set(nodeIdBottom, self.idToNodeMap.get(self.dummyToNodeForHorizontalAlignment.get(nodeIdBottom)[0]).getCenterY());
|
|
480
|
+
} else {
|
|
481
|
+
self.nodeToTempPositionMapVertical.set(nodeIdBottom, self.idToNodeMap.get(nodeIdBottom).getCenterY());
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
self.nodeToRelativeConstraintMapVertical.get(nodeIdTop).push({ bottom: nodeIdBottom, gap: constraint.gap });
|
|
485
|
+
self.nodeToRelativeConstraintMapVertical.get(nodeIdBottom).push({ top: nodeIdTop, gap: constraint.gap });
|
|
486
|
+
}
|
|
487
|
+
});
|
|
488
|
+
} else {
|
|
489
|
+
var subGraphOnHorizontal = /* @__PURE__ */ new Map();
|
|
490
|
+
var subGraphOnVertical = /* @__PURE__ */ new Map();
|
|
491
|
+
this.constraints.relativePlacementConstraint.forEach(function(constraint) {
|
|
492
|
+
if (constraint.left) {
|
|
493
|
+
var left = nodeToDummyForVerticalAlignment.has(constraint.left) ? nodeToDummyForVerticalAlignment.get(constraint.left) : constraint.left;
|
|
494
|
+
var right = nodeToDummyForVerticalAlignment.has(constraint.right) ? nodeToDummyForVerticalAlignment.get(constraint.right) : constraint.right;
|
|
495
|
+
if (subGraphOnHorizontal.has(left)) {
|
|
496
|
+
subGraphOnHorizontal.get(left).push(right);
|
|
497
|
+
} else {
|
|
498
|
+
subGraphOnHorizontal.set(left, [right]);
|
|
499
|
+
}
|
|
500
|
+
if (subGraphOnHorizontal.has(right)) {
|
|
501
|
+
subGraphOnHorizontal.get(right).push(left);
|
|
502
|
+
} else {
|
|
503
|
+
subGraphOnHorizontal.set(right, [left]);
|
|
504
|
+
}
|
|
505
|
+
} else {
|
|
506
|
+
var top = nodeToDummyForHorizontalAlignment.has(constraint.top) ? nodeToDummyForHorizontalAlignment.get(constraint.top) : constraint.top;
|
|
507
|
+
var bottom = nodeToDummyForHorizontalAlignment.has(constraint.bottom) ? nodeToDummyForHorizontalAlignment.get(constraint.bottom) : constraint.bottom;
|
|
508
|
+
if (subGraphOnVertical.has(top)) {
|
|
509
|
+
subGraphOnVertical.get(top).push(bottom);
|
|
510
|
+
} else {
|
|
511
|
+
subGraphOnVertical.set(top, [bottom]);
|
|
512
|
+
}
|
|
513
|
+
if (subGraphOnVertical.has(bottom)) {
|
|
514
|
+
subGraphOnVertical.get(bottom).push(top);
|
|
515
|
+
} else {
|
|
516
|
+
subGraphOnVertical.set(bottom, [top]);
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
});
|
|
520
|
+
var constructComponents = function constructComponents2(graph, fixedNodes) {
|
|
521
|
+
var components = [];
|
|
522
|
+
var isFixed = [];
|
|
523
|
+
var queue = new LinkedList();
|
|
524
|
+
var visited = /* @__PURE__ */ new Set();
|
|
525
|
+
var count = 0;
|
|
526
|
+
graph.forEach(function(value, key) {
|
|
527
|
+
if (!visited.has(key)) {
|
|
528
|
+
components[count] = [];
|
|
529
|
+
isFixed[count] = false;
|
|
530
|
+
var currentNode = key;
|
|
531
|
+
queue.push(currentNode);
|
|
532
|
+
visited.add(currentNode);
|
|
533
|
+
components[count].push(currentNode);
|
|
534
|
+
while (queue.length != 0) {
|
|
535
|
+
currentNode = queue.shift();
|
|
536
|
+
if (fixedNodes.has(currentNode)) {
|
|
537
|
+
isFixed[count] = true;
|
|
538
|
+
}
|
|
539
|
+
var neighbors = graph.get(currentNode);
|
|
540
|
+
neighbors.forEach(function(neighbor) {
|
|
541
|
+
if (!visited.has(neighbor)) {
|
|
542
|
+
queue.push(neighbor);
|
|
543
|
+
visited.add(neighbor);
|
|
544
|
+
components[count].push(neighbor);
|
|
545
|
+
}
|
|
546
|
+
});
|
|
547
|
+
}
|
|
548
|
+
count++;
|
|
549
|
+
}
|
|
550
|
+
});
|
|
551
|
+
return { components, isFixed };
|
|
552
|
+
};
|
|
553
|
+
var resultOnHorizontal = constructComponents(subGraphOnHorizontal, self.fixedNodesOnHorizontal);
|
|
554
|
+
this.componentsOnHorizontal = resultOnHorizontal.components;
|
|
555
|
+
this.fixedComponentsOnHorizontal = resultOnHorizontal.isFixed;
|
|
556
|
+
var resultOnVertical = constructComponents(subGraphOnVertical, self.fixedNodesOnVertical);
|
|
557
|
+
this.componentsOnVertical = resultOnVertical.components;
|
|
558
|
+
this.fixedComponentsOnVertical = resultOnVertical.isFixed;
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
};
|
|
562
|
+
CoSELayout.prototype.updateDisplacements = function() {
|
|
563
|
+
var self = this;
|
|
564
|
+
if (this.constraints.fixedNodeConstraint) {
|
|
565
|
+
this.constraints.fixedNodeConstraint.forEach(function(nodeData) {
|
|
566
|
+
var fixedNode = self.idToNodeMap.get(nodeData.nodeId);
|
|
567
|
+
fixedNode.displacementX = 0;
|
|
568
|
+
fixedNode.displacementY = 0;
|
|
569
|
+
});
|
|
570
|
+
}
|
|
571
|
+
if (this.constraints.alignmentConstraint) {
|
|
572
|
+
if (this.constraints.alignmentConstraint.vertical) {
|
|
573
|
+
var allVerticalAlignments = this.constraints.alignmentConstraint.vertical;
|
|
574
|
+
for (var i = 0; i < allVerticalAlignments.length; i++) {
|
|
575
|
+
var totalDisplacementX = 0;
|
|
576
|
+
for (var j = 0; j < allVerticalAlignments[i].length; j++) {
|
|
577
|
+
if (this.fixedNodeSet.has(allVerticalAlignments[i][j])) {
|
|
578
|
+
totalDisplacementX = 0;
|
|
579
|
+
break;
|
|
580
|
+
}
|
|
581
|
+
totalDisplacementX += this.idToNodeMap.get(allVerticalAlignments[i][j]).displacementX;
|
|
582
|
+
}
|
|
583
|
+
var averageDisplacementX = totalDisplacementX / allVerticalAlignments[i].length;
|
|
584
|
+
for (var j = 0; j < allVerticalAlignments[i].length; j++) {
|
|
585
|
+
this.idToNodeMap.get(allVerticalAlignments[i][j]).displacementX = averageDisplacementX;
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
}
|
|
589
|
+
if (this.constraints.alignmentConstraint.horizontal) {
|
|
590
|
+
var allHorizontalAlignments = this.constraints.alignmentConstraint.horizontal;
|
|
591
|
+
for (var i = 0; i < allHorizontalAlignments.length; i++) {
|
|
592
|
+
var totalDisplacementY = 0;
|
|
593
|
+
for (var j = 0; j < allHorizontalAlignments[i].length; j++) {
|
|
594
|
+
if (this.fixedNodeSet.has(allHorizontalAlignments[i][j])) {
|
|
595
|
+
totalDisplacementY = 0;
|
|
596
|
+
break;
|
|
597
|
+
}
|
|
598
|
+
totalDisplacementY += this.idToNodeMap.get(allHorizontalAlignments[i][j]).displacementY;
|
|
599
|
+
}
|
|
600
|
+
var averageDisplacementY = totalDisplacementY / allHorizontalAlignments[i].length;
|
|
601
|
+
for (var j = 0; j < allHorizontalAlignments[i].length; j++) {
|
|
602
|
+
this.idToNodeMap.get(allHorizontalAlignments[i][j]).displacementY = averageDisplacementY;
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
if (this.constraints.relativePlacementConstraint) {
|
|
608
|
+
if (CoSEConstants.RELAX_MOVEMENT_ON_CONSTRAINTS) {
|
|
609
|
+
if (this.totalIterations % 10 == 0) {
|
|
610
|
+
this.shuffle(this.nodesInRelativeHorizontal);
|
|
611
|
+
this.shuffle(this.nodesInRelativeVertical);
|
|
612
|
+
}
|
|
613
|
+
this.nodesInRelativeHorizontal.forEach(function(nodeId) {
|
|
614
|
+
if (!self.fixedNodesOnHorizontal.has(nodeId)) {
|
|
615
|
+
var displacement = 0;
|
|
616
|
+
if (self.dummyToNodeForVerticalAlignment.has(nodeId)) {
|
|
617
|
+
displacement = self.idToNodeMap.get(self.dummyToNodeForVerticalAlignment.get(nodeId)[0]).displacementX;
|
|
618
|
+
} else {
|
|
619
|
+
displacement = self.idToNodeMap.get(nodeId).displacementX;
|
|
620
|
+
}
|
|
621
|
+
self.nodeToRelativeConstraintMapHorizontal.get(nodeId).forEach(function(constraint) {
|
|
622
|
+
if (constraint.right) {
|
|
623
|
+
var diff = self.nodeToTempPositionMapHorizontal.get(constraint.right) - self.nodeToTempPositionMapHorizontal.get(nodeId) - displacement;
|
|
624
|
+
if (diff < constraint.gap) {
|
|
625
|
+
displacement -= constraint.gap - diff;
|
|
626
|
+
}
|
|
627
|
+
} else {
|
|
628
|
+
var diff = self.nodeToTempPositionMapHorizontal.get(nodeId) - self.nodeToTempPositionMapHorizontal.get(constraint.left) + displacement;
|
|
629
|
+
if (diff < constraint.gap) {
|
|
630
|
+
displacement += constraint.gap - diff;
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
});
|
|
634
|
+
self.nodeToTempPositionMapHorizontal.set(nodeId, self.nodeToTempPositionMapHorizontal.get(nodeId) + displacement);
|
|
635
|
+
if (self.dummyToNodeForVerticalAlignment.has(nodeId)) {
|
|
636
|
+
self.dummyToNodeForVerticalAlignment.get(nodeId).forEach(function(nodeId2) {
|
|
637
|
+
self.idToNodeMap.get(nodeId2).displacementX = displacement;
|
|
638
|
+
});
|
|
639
|
+
} else {
|
|
640
|
+
self.idToNodeMap.get(nodeId).displacementX = displacement;
|
|
641
|
+
}
|
|
642
|
+
}
|
|
643
|
+
});
|
|
644
|
+
this.nodesInRelativeVertical.forEach(function(nodeId) {
|
|
645
|
+
if (!self.fixedNodesOnHorizontal.has(nodeId)) {
|
|
646
|
+
var displacement = 0;
|
|
647
|
+
if (self.dummyToNodeForHorizontalAlignment.has(nodeId)) {
|
|
648
|
+
displacement = self.idToNodeMap.get(self.dummyToNodeForHorizontalAlignment.get(nodeId)[0]).displacementY;
|
|
649
|
+
} else {
|
|
650
|
+
displacement = self.idToNodeMap.get(nodeId).displacementY;
|
|
651
|
+
}
|
|
652
|
+
self.nodeToRelativeConstraintMapVertical.get(nodeId).forEach(function(constraint) {
|
|
653
|
+
if (constraint.bottom) {
|
|
654
|
+
var diff = self.nodeToTempPositionMapVertical.get(constraint.bottom) - self.nodeToTempPositionMapVertical.get(nodeId) - displacement;
|
|
655
|
+
if (diff < constraint.gap) {
|
|
656
|
+
displacement -= constraint.gap - diff;
|
|
657
|
+
}
|
|
658
|
+
} else {
|
|
659
|
+
var diff = self.nodeToTempPositionMapVertical.get(nodeId) - self.nodeToTempPositionMapVertical.get(constraint.top) + displacement;
|
|
660
|
+
if (diff < constraint.gap) {
|
|
661
|
+
displacement += constraint.gap - diff;
|
|
662
|
+
}
|
|
663
|
+
}
|
|
664
|
+
});
|
|
665
|
+
self.nodeToTempPositionMapVertical.set(nodeId, self.nodeToTempPositionMapVertical.get(nodeId) + displacement);
|
|
666
|
+
if (self.dummyToNodeForHorizontalAlignment.has(nodeId)) {
|
|
667
|
+
self.dummyToNodeForHorizontalAlignment.get(nodeId).forEach(function(nodeId2) {
|
|
668
|
+
self.idToNodeMap.get(nodeId2).displacementY = displacement;
|
|
669
|
+
});
|
|
670
|
+
} else {
|
|
671
|
+
self.idToNodeMap.get(nodeId).displacementY = displacement;
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
});
|
|
675
|
+
} else {
|
|
676
|
+
for (var i = 0; i < this.componentsOnHorizontal.length; i++) {
|
|
677
|
+
var component = this.componentsOnHorizontal[i];
|
|
678
|
+
if (this.fixedComponentsOnHorizontal[i]) {
|
|
679
|
+
for (var j = 0; j < component.length; j++) {
|
|
680
|
+
if (this.dummyToNodeForVerticalAlignment.has(component[j])) {
|
|
681
|
+
this.dummyToNodeForVerticalAlignment.get(component[j]).forEach(function(nodeId) {
|
|
682
|
+
self.idToNodeMap.get(nodeId).displacementX = 0;
|
|
683
|
+
});
|
|
684
|
+
} else {
|
|
685
|
+
this.idToNodeMap.get(component[j]).displacementX = 0;
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
} else {
|
|
689
|
+
var sum = 0;
|
|
690
|
+
var count = 0;
|
|
691
|
+
for (var j = 0; j < component.length; j++) {
|
|
692
|
+
if (this.dummyToNodeForVerticalAlignment.has(component[j])) {
|
|
693
|
+
var actualNodes = this.dummyToNodeForVerticalAlignment.get(component[j]);
|
|
694
|
+
sum += actualNodes.length * this.idToNodeMap.get(actualNodes[0]).displacementX;
|
|
695
|
+
count += actualNodes.length;
|
|
696
|
+
} else {
|
|
697
|
+
sum += this.idToNodeMap.get(component[j]).displacementX;
|
|
698
|
+
count++;
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
var averageDisplacement = sum / count;
|
|
702
|
+
for (var j = 0; j < component.length; j++) {
|
|
703
|
+
if (this.dummyToNodeForVerticalAlignment.has(component[j])) {
|
|
704
|
+
this.dummyToNodeForVerticalAlignment.get(component[j]).forEach(function(nodeId) {
|
|
705
|
+
self.idToNodeMap.get(nodeId).displacementX = averageDisplacement;
|
|
706
|
+
});
|
|
707
|
+
} else {
|
|
708
|
+
this.idToNodeMap.get(component[j]).displacementX = averageDisplacement;
|
|
709
|
+
}
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
for (var i = 0; i < this.componentsOnVertical.length; i++) {
|
|
714
|
+
var component = this.componentsOnVertical[i];
|
|
715
|
+
if (this.fixedComponentsOnVertical[i]) {
|
|
716
|
+
for (var j = 0; j < component.length; j++) {
|
|
717
|
+
if (this.dummyToNodeForHorizontalAlignment.has(component[j])) {
|
|
718
|
+
this.dummyToNodeForHorizontalAlignment.get(component[j]).forEach(function(nodeId) {
|
|
719
|
+
self.idToNodeMap.get(nodeId).displacementY = 0;
|
|
720
|
+
});
|
|
721
|
+
} else {
|
|
722
|
+
this.idToNodeMap.get(component[j]).displacementY = 0;
|
|
723
|
+
}
|
|
724
|
+
}
|
|
725
|
+
} else {
|
|
726
|
+
var sum = 0;
|
|
727
|
+
var count = 0;
|
|
728
|
+
for (var j = 0; j < component.length; j++) {
|
|
729
|
+
if (this.dummyToNodeForHorizontalAlignment.has(component[j])) {
|
|
730
|
+
var actualNodes = this.dummyToNodeForHorizontalAlignment.get(component[j]);
|
|
731
|
+
sum += actualNodes.length * this.idToNodeMap.get(actualNodes[0]).displacementY;
|
|
732
|
+
count += actualNodes.length;
|
|
733
|
+
} else {
|
|
734
|
+
sum += this.idToNodeMap.get(component[j]).displacementY;
|
|
735
|
+
count++;
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
var averageDisplacement = sum / count;
|
|
739
|
+
for (var j = 0; j < component.length; j++) {
|
|
740
|
+
if (this.dummyToNodeForHorizontalAlignment.has(component[j])) {
|
|
741
|
+
this.dummyToNodeForHorizontalAlignment.get(component[j]).forEach(function(nodeId) {
|
|
742
|
+
self.idToNodeMap.get(nodeId).displacementY = averageDisplacement;
|
|
743
|
+
});
|
|
744
|
+
} else {
|
|
745
|
+
this.idToNodeMap.get(component[j]).displacementY = averageDisplacement;
|
|
746
|
+
}
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
}
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
};
|
|
753
|
+
CoSELayout.prototype.calculateNodesToApplyGravitationTo = function() {
|
|
754
|
+
var nodeList = [];
|
|
755
|
+
var graph;
|
|
756
|
+
var graphs = this.graphManager.getGraphs();
|
|
757
|
+
var size = graphs.length;
|
|
758
|
+
var i;
|
|
759
|
+
for (i = 0; i < size; i++) {
|
|
760
|
+
graph = graphs[i];
|
|
761
|
+
graph.updateConnected();
|
|
762
|
+
if (!graph.isConnected) {
|
|
763
|
+
nodeList = nodeList.concat(graph.getNodes());
|
|
764
|
+
}
|
|
765
|
+
}
|
|
766
|
+
return nodeList;
|
|
767
|
+
};
|
|
768
|
+
CoSELayout.prototype.createBendpoints = function() {
|
|
769
|
+
var edges = [];
|
|
770
|
+
edges = edges.concat(this.graphManager.getAllEdges());
|
|
771
|
+
var visited = /* @__PURE__ */ new Set();
|
|
772
|
+
var i;
|
|
773
|
+
for (i = 0; i < edges.length; i++) {
|
|
774
|
+
var edge = edges[i];
|
|
775
|
+
if (!visited.has(edge)) {
|
|
776
|
+
var source = edge.getSource();
|
|
777
|
+
var target = edge.getTarget();
|
|
778
|
+
if (source == target) {
|
|
779
|
+
edge.getBendpoints().push(new PointD());
|
|
780
|
+
edge.getBendpoints().push(new PointD());
|
|
781
|
+
this.createDummyNodesForBendpoints(edge);
|
|
782
|
+
visited.add(edge);
|
|
783
|
+
} else {
|
|
784
|
+
var edgeList = [];
|
|
785
|
+
edgeList = edgeList.concat(source.getEdgeListToNode(target));
|
|
786
|
+
edgeList = edgeList.concat(target.getEdgeListToNode(source));
|
|
787
|
+
if (!visited.has(edgeList[0])) {
|
|
788
|
+
if (edgeList.length > 1) {
|
|
789
|
+
var k;
|
|
790
|
+
for (k = 0; k < edgeList.length; k++) {
|
|
791
|
+
var multiEdge = edgeList[k];
|
|
792
|
+
multiEdge.getBendpoints().push(new PointD());
|
|
793
|
+
this.createDummyNodesForBendpoints(multiEdge);
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
edgeList.forEach(function(edge2) {
|
|
797
|
+
visited.add(edge2);
|
|
798
|
+
});
|
|
799
|
+
}
|
|
800
|
+
}
|
|
801
|
+
}
|
|
802
|
+
if (visited.size == edges.length) {
|
|
803
|
+
break;
|
|
804
|
+
}
|
|
805
|
+
}
|
|
806
|
+
};
|
|
807
|
+
CoSELayout.prototype.positionNodesRadially = function(forest) {
|
|
808
|
+
var currentStartingPoint = new Point(0, 0);
|
|
809
|
+
var numberOfColumns = Math.ceil(Math.sqrt(forest.length));
|
|
810
|
+
var height = 0;
|
|
811
|
+
var currentY = 0;
|
|
812
|
+
var currentX = 0;
|
|
813
|
+
var point = new PointD(0, 0);
|
|
814
|
+
for (var i = 0; i < forest.length; i++) {
|
|
815
|
+
if (i % numberOfColumns == 0) {
|
|
816
|
+
currentX = 0;
|
|
817
|
+
currentY = height;
|
|
818
|
+
if (i != 0) {
|
|
819
|
+
currentY += CoSEConstants.DEFAULT_COMPONENT_SEPERATION;
|
|
820
|
+
}
|
|
821
|
+
height = 0;
|
|
822
|
+
}
|
|
823
|
+
var tree = forest[i];
|
|
824
|
+
var centerNode = Layout.findCenterOfTree(tree);
|
|
825
|
+
currentStartingPoint.x = currentX;
|
|
826
|
+
currentStartingPoint.y = currentY;
|
|
827
|
+
point = CoSELayout.radialLayout(tree, centerNode, currentStartingPoint);
|
|
828
|
+
if (point.y > height) {
|
|
829
|
+
height = Math.floor(point.y);
|
|
830
|
+
}
|
|
831
|
+
currentX = Math.floor(point.x + CoSEConstants.DEFAULT_COMPONENT_SEPERATION);
|
|
832
|
+
}
|
|
833
|
+
this.transform(new PointD(LayoutConstants.WORLD_CENTER_X - point.x / 2, LayoutConstants.WORLD_CENTER_Y - point.y / 2));
|
|
834
|
+
};
|
|
835
|
+
CoSELayout.radialLayout = function(tree, centerNode, startingPoint) {
|
|
836
|
+
var radialSep = Math.max(this.maxDiagonalInTree(tree), CoSEConstants.DEFAULT_RADIAL_SEPARATION);
|
|
837
|
+
CoSELayout.branchRadialLayout(centerNode, null, 0, 359, 0, radialSep);
|
|
838
|
+
var bounds = LGraph.calculateBounds(tree);
|
|
839
|
+
var transform = new Transform();
|
|
840
|
+
transform.setDeviceOrgX(bounds.getMinX());
|
|
841
|
+
transform.setDeviceOrgY(bounds.getMinY());
|
|
842
|
+
transform.setWorldOrgX(startingPoint.x);
|
|
843
|
+
transform.setWorldOrgY(startingPoint.y);
|
|
844
|
+
for (var i = 0; i < tree.length; i++) {
|
|
845
|
+
var node = tree[i];
|
|
846
|
+
node.transform(transform);
|
|
847
|
+
}
|
|
848
|
+
var bottomRight = new PointD(bounds.getMaxX(), bounds.getMaxY());
|
|
849
|
+
return transform.inverseTransformPoint(bottomRight);
|
|
850
|
+
};
|
|
851
|
+
CoSELayout.branchRadialLayout = function(node, parentOfNode, startAngle, endAngle, distance, radialSeparation) {
|
|
852
|
+
var halfInterval = (endAngle - startAngle + 1) / 2;
|
|
853
|
+
if (halfInterval < 0) {
|
|
854
|
+
halfInterval += 180;
|
|
855
|
+
}
|
|
856
|
+
var nodeAngle = (halfInterval + startAngle) % 360;
|
|
857
|
+
var teta = nodeAngle * IGeometry.TWO_PI / 360;
|
|
858
|
+
var x_ = distance * Math.cos(teta);
|
|
859
|
+
var y_ = distance * Math.sin(teta);
|
|
860
|
+
node.setCenter(x_, y_);
|
|
861
|
+
var neighborEdges = [];
|
|
862
|
+
neighborEdges = neighborEdges.concat(node.getEdges());
|
|
863
|
+
var childCount = neighborEdges.length;
|
|
864
|
+
if (parentOfNode != null) {
|
|
865
|
+
childCount--;
|
|
866
|
+
}
|
|
867
|
+
var branchCount = 0;
|
|
868
|
+
var incEdgesCount = neighborEdges.length;
|
|
869
|
+
var startIndex;
|
|
870
|
+
var edges = node.getEdgesBetween(parentOfNode);
|
|
871
|
+
while (edges.length > 1) {
|
|
872
|
+
var temp = edges[0];
|
|
873
|
+
edges.splice(0, 1);
|
|
874
|
+
var index = neighborEdges.indexOf(temp);
|
|
875
|
+
if (index >= 0) {
|
|
876
|
+
neighborEdges.splice(index, 1);
|
|
877
|
+
}
|
|
878
|
+
incEdgesCount--;
|
|
879
|
+
childCount--;
|
|
880
|
+
}
|
|
881
|
+
if (parentOfNode != null) {
|
|
882
|
+
startIndex = (neighborEdges.indexOf(edges[0]) + 1) % incEdgesCount;
|
|
883
|
+
} else {
|
|
884
|
+
startIndex = 0;
|
|
885
|
+
}
|
|
886
|
+
var stepAngle = Math.abs(endAngle - startAngle) / childCount;
|
|
887
|
+
for (var i = startIndex; branchCount != childCount; i = ++i % incEdgesCount) {
|
|
888
|
+
var currentNeighbor = neighborEdges[i].getOtherEnd(node);
|
|
889
|
+
if (currentNeighbor == parentOfNode) {
|
|
890
|
+
continue;
|
|
891
|
+
}
|
|
892
|
+
var childStartAngle = (startAngle + branchCount * stepAngle) % 360;
|
|
893
|
+
var childEndAngle = (childStartAngle + stepAngle) % 360;
|
|
894
|
+
CoSELayout.branchRadialLayout(currentNeighbor, node, childStartAngle, childEndAngle, distance + radialSeparation, radialSeparation);
|
|
895
|
+
branchCount++;
|
|
896
|
+
}
|
|
897
|
+
};
|
|
898
|
+
CoSELayout.maxDiagonalInTree = function(tree) {
|
|
899
|
+
var maxDiagonal = Integer.MIN_VALUE;
|
|
900
|
+
for (var i = 0; i < tree.length; i++) {
|
|
901
|
+
var node = tree[i];
|
|
902
|
+
var diagonal = node.getDiagonal();
|
|
903
|
+
if (diagonal > maxDiagonal) {
|
|
904
|
+
maxDiagonal = diagonal;
|
|
905
|
+
}
|
|
906
|
+
}
|
|
907
|
+
return maxDiagonal;
|
|
908
|
+
};
|
|
909
|
+
CoSELayout.prototype.calcRepulsionRange = function() {
|
|
910
|
+
return 2 * (this.level + 1) * this.idealEdgeLength;
|
|
911
|
+
};
|
|
912
|
+
CoSELayout.prototype.groupZeroDegreeMembers = function() {
|
|
913
|
+
var self = this;
|
|
914
|
+
var tempMemberGroups = {};
|
|
915
|
+
this.memberGroups = {};
|
|
916
|
+
this.idToDummyNode = {};
|
|
917
|
+
var zeroDegree = [];
|
|
918
|
+
var allNodes = this.graphManager.getAllNodes();
|
|
919
|
+
for (var i = 0; i < allNodes.length; i++) {
|
|
920
|
+
var node = allNodes[i];
|
|
921
|
+
var parent = node.getParent();
|
|
922
|
+
if (this.getNodeDegreeWithChildren(node) === 0 && (parent.id == void 0 || !this.getToBeTiled(parent))) {
|
|
923
|
+
zeroDegree.push(node);
|
|
924
|
+
}
|
|
925
|
+
}
|
|
926
|
+
for (var i = 0; i < zeroDegree.length; i++) {
|
|
927
|
+
var node = zeroDegree[i];
|
|
928
|
+
var p_id = node.getParent().id;
|
|
929
|
+
if (typeof tempMemberGroups[p_id] === "undefined") tempMemberGroups[p_id] = [];
|
|
930
|
+
tempMemberGroups[p_id] = tempMemberGroups[p_id].concat(node);
|
|
931
|
+
}
|
|
932
|
+
Object.keys(tempMemberGroups).forEach(function(p_id2) {
|
|
933
|
+
if (tempMemberGroups[p_id2].length > 1) {
|
|
934
|
+
var dummyCompoundId = "DummyCompound_" + p_id2;
|
|
935
|
+
self.memberGroups[dummyCompoundId] = tempMemberGroups[p_id2];
|
|
936
|
+
var parent2 = tempMemberGroups[p_id2][0].getParent();
|
|
937
|
+
var dummyCompound = new CoSENode(self.graphManager);
|
|
938
|
+
dummyCompound.id = dummyCompoundId;
|
|
939
|
+
dummyCompound.paddingLeft = parent2.paddingLeft || 0;
|
|
940
|
+
dummyCompound.paddingRight = parent2.paddingRight || 0;
|
|
941
|
+
dummyCompound.paddingBottom = parent2.paddingBottom || 0;
|
|
942
|
+
dummyCompound.paddingTop = parent2.paddingTop || 0;
|
|
943
|
+
self.idToDummyNode[dummyCompoundId] = dummyCompound;
|
|
944
|
+
var dummyParentGraph = self.getGraphManager().add(self.newGraph(), dummyCompound);
|
|
945
|
+
var parentGraph = parent2.getChild();
|
|
946
|
+
parentGraph.add(dummyCompound);
|
|
947
|
+
for (var i2 = 0; i2 < tempMemberGroups[p_id2].length; i2++) {
|
|
948
|
+
var node2 = tempMemberGroups[p_id2][i2];
|
|
949
|
+
parentGraph.remove(node2);
|
|
950
|
+
dummyParentGraph.add(node2);
|
|
951
|
+
}
|
|
952
|
+
}
|
|
953
|
+
});
|
|
954
|
+
};
|
|
955
|
+
CoSELayout.prototype.clearCompounds = function() {
|
|
956
|
+
var childGraphMap = {};
|
|
957
|
+
var idToNode = {};
|
|
958
|
+
this.performDFSOnCompounds();
|
|
959
|
+
for (var i = 0; i < this.compoundOrder.length; i++) {
|
|
960
|
+
idToNode[this.compoundOrder[i].id] = this.compoundOrder[i];
|
|
961
|
+
childGraphMap[this.compoundOrder[i].id] = [].concat(this.compoundOrder[i].getChild().getNodes());
|
|
962
|
+
this.graphManager.remove(this.compoundOrder[i].getChild());
|
|
963
|
+
this.compoundOrder[i].child = null;
|
|
964
|
+
}
|
|
965
|
+
this.graphManager.resetAllNodes();
|
|
966
|
+
this.tileCompoundMembers(childGraphMap, idToNode);
|
|
967
|
+
};
|
|
968
|
+
CoSELayout.prototype.clearZeroDegreeMembers = function() {
|
|
969
|
+
var self = this;
|
|
970
|
+
var tiledZeroDegreePack = this.tiledZeroDegreePack = [];
|
|
971
|
+
Object.keys(this.memberGroups).forEach(function(id) {
|
|
972
|
+
var compoundNode = self.idToDummyNode[id];
|
|
973
|
+
tiledZeroDegreePack[id] = self.tileNodes(self.memberGroups[id], compoundNode.paddingLeft + compoundNode.paddingRight);
|
|
974
|
+
compoundNode.rect.width = tiledZeroDegreePack[id].width;
|
|
975
|
+
compoundNode.rect.height = tiledZeroDegreePack[id].height;
|
|
976
|
+
compoundNode.setCenter(tiledZeroDegreePack[id].centerX, tiledZeroDegreePack[id].centerY);
|
|
977
|
+
compoundNode.labelMarginLeft = 0;
|
|
978
|
+
compoundNode.labelMarginTop = 0;
|
|
979
|
+
if (CoSEConstants.NODE_DIMENSIONS_INCLUDE_LABELS) {
|
|
980
|
+
var width = compoundNode.rect.width;
|
|
981
|
+
var height = compoundNode.rect.height;
|
|
982
|
+
if (compoundNode.labelWidth) {
|
|
983
|
+
if (compoundNode.labelPosHorizontal == "left") {
|
|
984
|
+
compoundNode.rect.x -= compoundNode.labelWidth;
|
|
985
|
+
compoundNode.setWidth(width + compoundNode.labelWidth);
|
|
986
|
+
compoundNode.labelMarginLeft = compoundNode.labelWidth;
|
|
987
|
+
} else if (compoundNode.labelPosHorizontal == "center" && compoundNode.labelWidth > width) {
|
|
988
|
+
compoundNode.rect.x -= (compoundNode.labelWidth - width) / 2;
|
|
989
|
+
compoundNode.setWidth(compoundNode.labelWidth);
|
|
990
|
+
compoundNode.labelMarginLeft = (compoundNode.labelWidth - width) / 2;
|
|
991
|
+
} else if (compoundNode.labelPosHorizontal == "right") {
|
|
992
|
+
compoundNode.setWidth(width + compoundNode.labelWidth);
|
|
993
|
+
}
|
|
994
|
+
}
|
|
995
|
+
if (compoundNode.labelHeight) {
|
|
996
|
+
if (compoundNode.labelPosVertical == "top") {
|
|
997
|
+
compoundNode.rect.y -= compoundNode.labelHeight;
|
|
998
|
+
compoundNode.setHeight(height + compoundNode.labelHeight);
|
|
999
|
+
compoundNode.labelMarginTop = compoundNode.labelHeight;
|
|
1000
|
+
} else if (compoundNode.labelPosVertical == "center" && compoundNode.labelHeight > height) {
|
|
1001
|
+
compoundNode.rect.y -= (compoundNode.labelHeight - height) / 2;
|
|
1002
|
+
compoundNode.setHeight(compoundNode.labelHeight);
|
|
1003
|
+
compoundNode.labelMarginTop = (compoundNode.labelHeight - height) / 2;
|
|
1004
|
+
} else if (compoundNode.labelPosVertical == "bottom") {
|
|
1005
|
+
compoundNode.setHeight(height + compoundNode.labelHeight);
|
|
1006
|
+
}
|
|
1007
|
+
}
|
|
1008
|
+
}
|
|
1009
|
+
});
|
|
1010
|
+
};
|
|
1011
|
+
CoSELayout.prototype.repopulateCompounds = function() {
|
|
1012
|
+
for (var i = this.compoundOrder.length - 1; i >= 0; i--) {
|
|
1013
|
+
var lCompoundNode = this.compoundOrder[i];
|
|
1014
|
+
var id = lCompoundNode.id;
|
|
1015
|
+
var horizontalMargin = lCompoundNode.paddingLeft;
|
|
1016
|
+
var verticalMargin = lCompoundNode.paddingTop;
|
|
1017
|
+
var labelMarginLeft = lCompoundNode.labelMarginLeft;
|
|
1018
|
+
var labelMarginTop = lCompoundNode.labelMarginTop;
|
|
1019
|
+
this.adjustLocations(this.tiledMemberPack[id], lCompoundNode.rect.x, lCompoundNode.rect.y, horizontalMargin, verticalMargin, labelMarginLeft, labelMarginTop);
|
|
1020
|
+
}
|
|
1021
|
+
};
|
|
1022
|
+
CoSELayout.prototype.repopulateZeroDegreeMembers = function() {
|
|
1023
|
+
var self = this;
|
|
1024
|
+
var tiledPack = this.tiledZeroDegreePack;
|
|
1025
|
+
Object.keys(tiledPack).forEach(function(id) {
|
|
1026
|
+
var compoundNode = self.idToDummyNode[id];
|
|
1027
|
+
var horizontalMargin = compoundNode.paddingLeft;
|
|
1028
|
+
var verticalMargin = compoundNode.paddingTop;
|
|
1029
|
+
var labelMarginLeft = compoundNode.labelMarginLeft;
|
|
1030
|
+
var labelMarginTop = compoundNode.labelMarginTop;
|
|
1031
|
+
self.adjustLocations(tiledPack[id], compoundNode.rect.x, compoundNode.rect.y, horizontalMargin, verticalMargin, labelMarginLeft, labelMarginTop);
|
|
1032
|
+
});
|
|
1033
|
+
};
|
|
1034
|
+
CoSELayout.prototype.getToBeTiled = function(node) {
|
|
1035
|
+
var id = node.id;
|
|
1036
|
+
if (this.toBeTiled[id] != null) {
|
|
1037
|
+
return this.toBeTiled[id];
|
|
1038
|
+
}
|
|
1039
|
+
var childGraph = node.getChild();
|
|
1040
|
+
if (childGraph == null) {
|
|
1041
|
+
this.toBeTiled[id] = false;
|
|
1042
|
+
return false;
|
|
1043
|
+
}
|
|
1044
|
+
var children = childGraph.getNodes();
|
|
1045
|
+
for (var i = 0; i < children.length; i++) {
|
|
1046
|
+
var theChild = children[i];
|
|
1047
|
+
if (this.getNodeDegree(theChild) > 0) {
|
|
1048
|
+
this.toBeTiled[id] = false;
|
|
1049
|
+
return false;
|
|
1050
|
+
}
|
|
1051
|
+
if (theChild.getChild() == null) {
|
|
1052
|
+
this.toBeTiled[theChild.id] = false;
|
|
1053
|
+
continue;
|
|
1054
|
+
}
|
|
1055
|
+
if (!this.getToBeTiled(theChild)) {
|
|
1056
|
+
this.toBeTiled[id] = false;
|
|
1057
|
+
return false;
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
1060
|
+
this.toBeTiled[id] = true;
|
|
1061
|
+
return true;
|
|
1062
|
+
};
|
|
1063
|
+
CoSELayout.prototype.getNodeDegree = function(node) {
|
|
1064
|
+
node.id;
|
|
1065
|
+
var edges = node.getEdges();
|
|
1066
|
+
var degree = 0;
|
|
1067
|
+
for (var i = 0; i < edges.length; i++) {
|
|
1068
|
+
var edge = edges[i];
|
|
1069
|
+
if (edge.getSource().id !== edge.getTarget().id) {
|
|
1070
|
+
degree = degree + 1;
|
|
1071
|
+
}
|
|
1072
|
+
}
|
|
1073
|
+
return degree;
|
|
1074
|
+
};
|
|
1075
|
+
CoSELayout.prototype.getNodeDegreeWithChildren = function(node) {
|
|
1076
|
+
var degree = this.getNodeDegree(node);
|
|
1077
|
+
if (node.getChild() == null) {
|
|
1078
|
+
return degree;
|
|
1079
|
+
}
|
|
1080
|
+
var children = node.getChild().getNodes();
|
|
1081
|
+
for (var i = 0; i < children.length; i++) {
|
|
1082
|
+
var child = children[i];
|
|
1083
|
+
degree += this.getNodeDegreeWithChildren(child);
|
|
1084
|
+
}
|
|
1085
|
+
return degree;
|
|
1086
|
+
};
|
|
1087
|
+
CoSELayout.prototype.performDFSOnCompounds = function() {
|
|
1088
|
+
this.compoundOrder = [];
|
|
1089
|
+
this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes());
|
|
1090
|
+
};
|
|
1091
|
+
CoSELayout.prototype.fillCompexOrderByDFS = function(children) {
|
|
1092
|
+
for (var i = 0; i < children.length; i++) {
|
|
1093
|
+
var child = children[i];
|
|
1094
|
+
if (child.getChild() != null) {
|
|
1095
|
+
this.fillCompexOrderByDFS(child.getChild().getNodes());
|
|
1096
|
+
}
|
|
1097
|
+
if (this.getToBeTiled(child)) {
|
|
1098
|
+
this.compoundOrder.push(child);
|
|
1099
|
+
}
|
|
1100
|
+
}
|
|
1101
|
+
};
|
|
1102
|
+
CoSELayout.prototype.adjustLocations = function(organization, x, y, compoundHorizontalMargin, compoundVerticalMargin, compoundLabelMarginLeft, compoundLabelMarginTop) {
|
|
1103
|
+
x += compoundHorizontalMargin + compoundLabelMarginLeft;
|
|
1104
|
+
y += compoundVerticalMargin + compoundLabelMarginTop;
|
|
1105
|
+
var left = x;
|
|
1106
|
+
for (var i = 0; i < organization.rows.length; i++) {
|
|
1107
|
+
var row = organization.rows[i];
|
|
1108
|
+
x = left;
|
|
1109
|
+
var maxHeight = 0;
|
|
1110
|
+
for (var j = 0; j < row.length; j++) {
|
|
1111
|
+
var lnode = row[j];
|
|
1112
|
+
lnode.rect.x = x;
|
|
1113
|
+
lnode.rect.y = y;
|
|
1114
|
+
x += lnode.rect.width + organization.horizontalPadding;
|
|
1115
|
+
if (lnode.rect.height > maxHeight) maxHeight = lnode.rect.height;
|
|
1116
|
+
}
|
|
1117
|
+
y += maxHeight + organization.verticalPadding;
|
|
1118
|
+
}
|
|
1119
|
+
};
|
|
1120
|
+
CoSELayout.prototype.tileCompoundMembers = function(childGraphMap, idToNode) {
|
|
1121
|
+
var self = this;
|
|
1122
|
+
this.tiledMemberPack = [];
|
|
1123
|
+
Object.keys(childGraphMap).forEach(function(id) {
|
|
1124
|
+
var compoundNode = idToNode[id];
|
|
1125
|
+
self.tiledMemberPack[id] = self.tileNodes(childGraphMap[id], compoundNode.paddingLeft + compoundNode.paddingRight);
|
|
1126
|
+
compoundNode.rect.width = self.tiledMemberPack[id].width;
|
|
1127
|
+
compoundNode.rect.height = self.tiledMemberPack[id].height;
|
|
1128
|
+
compoundNode.setCenter(self.tiledMemberPack[id].centerX, self.tiledMemberPack[id].centerY);
|
|
1129
|
+
compoundNode.labelMarginLeft = 0;
|
|
1130
|
+
compoundNode.labelMarginTop = 0;
|
|
1131
|
+
if (CoSEConstants.NODE_DIMENSIONS_INCLUDE_LABELS) {
|
|
1132
|
+
var width = compoundNode.rect.width;
|
|
1133
|
+
var height = compoundNode.rect.height;
|
|
1134
|
+
if (compoundNode.labelWidth) {
|
|
1135
|
+
if (compoundNode.labelPosHorizontal == "left") {
|
|
1136
|
+
compoundNode.rect.x -= compoundNode.labelWidth;
|
|
1137
|
+
compoundNode.setWidth(width + compoundNode.labelWidth);
|
|
1138
|
+
compoundNode.labelMarginLeft = compoundNode.labelWidth;
|
|
1139
|
+
} else if (compoundNode.labelPosHorizontal == "center" && compoundNode.labelWidth > width) {
|
|
1140
|
+
compoundNode.rect.x -= (compoundNode.labelWidth - width) / 2;
|
|
1141
|
+
compoundNode.setWidth(compoundNode.labelWidth);
|
|
1142
|
+
compoundNode.labelMarginLeft = (compoundNode.labelWidth - width) / 2;
|
|
1143
|
+
} else if (compoundNode.labelPosHorizontal == "right") {
|
|
1144
|
+
compoundNode.setWidth(width + compoundNode.labelWidth);
|
|
1145
|
+
}
|
|
1146
|
+
}
|
|
1147
|
+
if (compoundNode.labelHeight) {
|
|
1148
|
+
if (compoundNode.labelPosVertical == "top") {
|
|
1149
|
+
compoundNode.rect.y -= compoundNode.labelHeight;
|
|
1150
|
+
compoundNode.setHeight(height + compoundNode.labelHeight);
|
|
1151
|
+
compoundNode.labelMarginTop = compoundNode.labelHeight;
|
|
1152
|
+
} else if (compoundNode.labelPosVertical == "center" && compoundNode.labelHeight > height) {
|
|
1153
|
+
compoundNode.rect.y -= (compoundNode.labelHeight - height) / 2;
|
|
1154
|
+
compoundNode.setHeight(compoundNode.labelHeight);
|
|
1155
|
+
compoundNode.labelMarginTop = (compoundNode.labelHeight - height) / 2;
|
|
1156
|
+
} else if (compoundNode.labelPosVertical == "bottom") {
|
|
1157
|
+
compoundNode.setHeight(height + compoundNode.labelHeight);
|
|
1158
|
+
}
|
|
1159
|
+
}
|
|
1160
|
+
}
|
|
1161
|
+
});
|
|
1162
|
+
};
|
|
1163
|
+
CoSELayout.prototype.tileNodes = function(nodes, minWidth) {
|
|
1164
|
+
var horizontalOrg = this.tileNodesByFavoringDim(nodes, minWidth, true);
|
|
1165
|
+
var verticalOrg = this.tileNodesByFavoringDim(nodes, minWidth, false);
|
|
1166
|
+
var horizontalRatio = this.getOrgRatio(horizontalOrg);
|
|
1167
|
+
var verticalRatio = this.getOrgRatio(verticalOrg);
|
|
1168
|
+
var bestOrg;
|
|
1169
|
+
if (verticalRatio < horizontalRatio) {
|
|
1170
|
+
bestOrg = verticalOrg;
|
|
1171
|
+
} else {
|
|
1172
|
+
bestOrg = horizontalOrg;
|
|
1173
|
+
}
|
|
1174
|
+
return bestOrg;
|
|
1175
|
+
};
|
|
1176
|
+
CoSELayout.prototype.getOrgRatio = function(organization) {
|
|
1177
|
+
var width = organization.width;
|
|
1178
|
+
var height = organization.height;
|
|
1179
|
+
var ratio = width / height;
|
|
1180
|
+
if (ratio < 1) {
|
|
1181
|
+
ratio = 1 / ratio;
|
|
1182
|
+
}
|
|
1183
|
+
return ratio;
|
|
1184
|
+
};
|
|
1185
|
+
CoSELayout.prototype.calcIdealRowWidth = function(members, favorHorizontalDim) {
|
|
1186
|
+
var verticalPadding = CoSEConstants.TILING_PADDING_VERTICAL;
|
|
1187
|
+
var horizontalPadding = CoSEConstants.TILING_PADDING_HORIZONTAL;
|
|
1188
|
+
var membersSize = members.length;
|
|
1189
|
+
var totalWidth = 0;
|
|
1190
|
+
var totalHeight = 0;
|
|
1191
|
+
var maxWidth = 0;
|
|
1192
|
+
members.forEach(function(node) {
|
|
1193
|
+
totalWidth += node.getWidth();
|
|
1194
|
+
totalHeight += node.getHeight();
|
|
1195
|
+
if (node.getWidth() > maxWidth) {
|
|
1196
|
+
maxWidth = node.getWidth();
|
|
1197
|
+
}
|
|
1198
|
+
});
|
|
1199
|
+
var averageWidth = totalWidth / membersSize;
|
|
1200
|
+
var averageHeight = totalHeight / membersSize;
|
|
1201
|
+
var delta = Math.pow(verticalPadding - horizontalPadding, 2) + 4 * (averageWidth + horizontalPadding) * (averageHeight + verticalPadding) * membersSize;
|
|
1202
|
+
var horizontalCountDouble = (horizontalPadding - verticalPadding + Math.sqrt(delta)) / (2 * (averageWidth + horizontalPadding));
|
|
1203
|
+
var horizontalCount;
|
|
1204
|
+
if (favorHorizontalDim) {
|
|
1205
|
+
horizontalCount = Math.ceil(horizontalCountDouble);
|
|
1206
|
+
if (horizontalCount == horizontalCountDouble) {
|
|
1207
|
+
horizontalCount++;
|
|
1208
|
+
}
|
|
1209
|
+
} else {
|
|
1210
|
+
horizontalCount = Math.floor(horizontalCountDouble);
|
|
1211
|
+
}
|
|
1212
|
+
var idealWidth = horizontalCount * (averageWidth + horizontalPadding) - horizontalPadding;
|
|
1213
|
+
if (maxWidth > idealWidth) {
|
|
1214
|
+
idealWidth = maxWidth;
|
|
1215
|
+
}
|
|
1216
|
+
idealWidth += horizontalPadding * 2;
|
|
1217
|
+
return idealWidth;
|
|
1218
|
+
};
|
|
1219
|
+
CoSELayout.prototype.tileNodesByFavoringDim = function(nodes, minWidth, favorHorizontalDim) {
|
|
1220
|
+
var verticalPadding = CoSEConstants.TILING_PADDING_VERTICAL;
|
|
1221
|
+
var horizontalPadding = CoSEConstants.TILING_PADDING_HORIZONTAL;
|
|
1222
|
+
var tilingCompareBy = CoSEConstants.TILING_COMPARE_BY;
|
|
1223
|
+
var organization = {
|
|
1224
|
+
rows: [],
|
|
1225
|
+
rowWidth: [],
|
|
1226
|
+
rowHeight: [],
|
|
1227
|
+
width: 0,
|
|
1228
|
+
height: minWidth,
|
|
1229
|
+
// assume minHeight equals to minWidth
|
|
1230
|
+
verticalPadding,
|
|
1231
|
+
horizontalPadding,
|
|
1232
|
+
centerX: 0,
|
|
1233
|
+
centerY: 0
|
|
1234
|
+
};
|
|
1235
|
+
if (tilingCompareBy) {
|
|
1236
|
+
organization.idealRowWidth = this.calcIdealRowWidth(nodes, favorHorizontalDim);
|
|
1237
|
+
}
|
|
1238
|
+
var getNodeArea = function getNodeArea2(n) {
|
|
1239
|
+
return n.rect.width * n.rect.height;
|
|
1240
|
+
};
|
|
1241
|
+
var areaCompareFcn = function areaCompareFcn2(n1, n2) {
|
|
1242
|
+
return getNodeArea(n2) - getNodeArea(n1);
|
|
1243
|
+
};
|
|
1244
|
+
nodes.sort(function(n1, n2) {
|
|
1245
|
+
var cmpBy = areaCompareFcn;
|
|
1246
|
+
if (organization.idealRowWidth) {
|
|
1247
|
+
cmpBy = tilingCompareBy;
|
|
1248
|
+
return cmpBy(n1.id, n2.id);
|
|
1249
|
+
}
|
|
1250
|
+
return cmpBy(n1, n2);
|
|
1251
|
+
});
|
|
1252
|
+
var sumCenterX = 0;
|
|
1253
|
+
var sumCenterY = 0;
|
|
1254
|
+
for (var i = 0; i < nodes.length; i++) {
|
|
1255
|
+
var lNode = nodes[i];
|
|
1256
|
+
sumCenterX += lNode.getCenterX();
|
|
1257
|
+
sumCenterY += lNode.getCenterY();
|
|
1258
|
+
}
|
|
1259
|
+
organization.centerX = sumCenterX / nodes.length;
|
|
1260
|
+
organization.centerY = sumCenterY / nodes.length;
|
|
1261
|
+
for (var i = 0; i < nodes.length; i++) {
|
|
1262
|
+
var lNode = nodes[i];
|
|
1263
|
+
if (organization.rows.length == 0) {
|
|
1264
|
+
this.insertNodeToRow(organization, lNode, 0, minWidth);
|
|
1265
|
+
} else if (this.canAddHorizontal(organization, lNode.rect.width, lNode.rect.height)) {
|
|
1266
|
+
var rowIndex = organization.rows.length - 1;
|
|
1267
|
+
if (!organization.idealRowWidth) {
|
|
1268
|
+
rowIndex = this.getShortestRowIndex(organization);
|
|
1269
|
+
}
|
|
1270
|
+
this.insertNodeToRow(organization, lNode, rowIndex, minWidth);
|
|
1271
|
+
} else {
|
|
1272
|
+
this.insertNodeToRow(organization, lNode, organization.rows.length, minWidth);
|
|
1273
|
+
}
|
|
1274
|
+
this.shiftToLastRow(organization);
|
|
1275
|
+
}
|
|
1276
|
+
return organization;
|
|
1277
|
+
};
|
|
1278
|
+
CoSELayout.prototype.insertNodeToRow = function(organization, node, rowIndex, minWidth) {
|
|
1279
|
+
var minCompoundSize = minWidth;
|
|
1280
|
+
if (rowIndex == organization.rows.length) {
|
|
1281
|
+
var secondDimension = [];
|
|
1282
|
+
organization.rows.push(secondDimension);
|
|
1283
|
+
organization.rowWidth.push(minCompoundSize);
|
|
1284
|
+
organization.rowHeight.push(0);
|
|
1285
|
+
}
|
|
1286
|
+
var w = organization.rowWidth[rowIndex] + node.rect.width;
|
|
1287
|
+
if (organization.rows[rowIndex].length > 0) {
|
|
1288
|
+
w += organization.horizontalPadding;
|
|
1289
|
+
}
|
|
1290
|
+
organization.rowWidth[rowIndex] = w;
|
|
1291
|
+
if (organization.width < w) {
|
|
1292
|
+
organization.width = w;
|
|
1293
|
+
}
|
|
1294
|
+
var h = node.rect.height;
|
|
1295
|
+
if (rowIndex > 0) h += organization.verticalPadding;
|
|
1296
|
+
var extraHeight = 0;
|
|
1297
|
+
if (h > organization.rowHeight[rowIndex]) {
|
|
1298
|
+
extraHeight = organization.rowHeight[rowIndex];
|
|
1299
|
+
organization.rowHeight[rowIndex] = h;
|
|
1300
|
+
extraHeight = organization.rowHeight[rowIndex] - extraHeight;
|
|
1301
|
+
}
|
|
1302
|
+
organization.height += extraHeight;
|
|
1303
|
+
organization.rows[rowIndex].push(node);
|
|
1304
|
+
};
|
|
1305
|
+
CoSELayout.prototype.getShortestRowIndex = function(organization) {
|
|
1306
|
+
var r = -1;
|
|
1307
|
+
var min = Number.MAX_VALUE;
|
|
1308
|
+
for (var i = 0; i < organization.rows.length; i++) {
|
|
1309
|
+
if (organization.rowWidth[i] < min) {
|
|
1310
|
+
r = i;
|
|
1311
|
+
min = organization.rowWidth[i];
|
|
1312
|
+
}
|
|
1313
|
+
}
|
|
1314
|
+
return r;
|
|
1315
|
+
};
|
|
1316
|
+
CoSELayout.prototype.getLongestRowIndex = function(organization) {
|
|
1317
|
+
var r = -1;
|
|
1318
|
+
var max = Number.MIN_VALUE;
|
|
1319
|
+
for (var i = 0; i < organization.rows.length; i++) {
|
|
1320
|
+
if (organization.rowWidth[i] > max) {
|
|
1321
|
+
r = i;
|
|
1322
|
+
max = organization.rowWidth[i];
|
|
1323
|
+
}
|
|
1324
|
+
}
|
|
1325
|
+
return r;
|
|
1326
|
+
};
|
|
1327
|
+
CoSELayout.prototype.canAddHorizontal = function(organization, extraWidth, extraHeight) {
|
|
1328
|
+
if (organization.idealRowWidth) {
|
|
1329
|
+
var lastRowIndex = organization.rows.length - 1;
|
|
1330
|
+
var lastRowWidth = organization.rowWidth[lastRowIndex];
|
|
1331
|
+
return lastRowWidth + extraWidth + organization.horizontalPadding <= organization.idealRowWidth;
|
|
1332
|
+
}
|
|
1333
|
+
var sri = this.getShortestRowIndex(organization);
|
|
1334
|
+
if (sri < 0) {
|
|
1335
|
+
return true;
|
|
1336
|
+
}
|
|
1337
|
+
var min = organization.rowWidth[sri];
|
|
1338
|
+
if (min + organization.horizontalPadding + extraWidth <= organization.width) return true;
|
|
1339
|
+
var hDiff = 0;
|
|
1340
|
+
if (organization.rowHeight[sri] < extraHeight) {
|
|
1341
|
+
if (sri > 0) hDiff = extraHeight + organization.verticalPadding - organization.rowHeight[sri];
|
|
1342
|
+
}
|
|
1343
|
+
var add_to_row_ratio;
|
|
1344
|
+
if (organization.width - min >= extraWidth + organization.horizontalPadding) {
|
|
1345
|
+
add_to_row_ratio = (organization.height + hDiff) / (min + extraWidth + organization.horizontalPadding);
|
|
1346
|
+
} else {
|
|
1347
|
+
add_to_row_ratio = (organization.height + hDiff) / organization.width;
|
|
1348
|
+
}
|
|
1349
|
+
hDiff = extraHeight + organization.verticalPadding;
|
|
1350
|
+
var add_new_row_ratio;
|
|
1351
|
+
if (organization.width < extraWidth) {
|
|
1352
|
+
add_new_row_ratio = (organization.height + hDiff) / extraWidth;
|
|
1353
|
+
} else {
|
|
1354
|
+
add_new_row_ratio = (organization.height + hDiff) / organization.width;
|
|
1355
|
+
}
|
|
1356
|
+
if (add_new_row_ratio < 1) add_new_row_ratio = 1 / add_new_row_ratio;
|
|
1357
|
+
if (add_to_row_ratio < 1) add_to_row_ratio = 1 / add_to_row_ratio;
|
|
1358
|
+
return add_to_row_ratio < add_new_row_ratio;
|
|
1359
|
+
};
|
|
1360
|
+
CoSELayout.prototype.shiftToLastRow = function(organization) {
|
|
1361
|
+
var longest = this.getLongestRowIndex(organization);
|
|
1362
|
+
var last = organization.rowWidth.length - 1;
|
|
1363
|
+
var row = organization.rows[longest];
|
|
1364
|
+
var node = row[row.length - 1];
|
|
1365
|
+
var diff = node.width + organization.horizontalPadding;
|
|
1366
|
+
if (organization.width - organization.rowWidth[last] > diff && longest != last) {
|
|
1367
|
+
row.splice(-1, 1);
|
|
1368
|
+
organization.rows[last].push(node);
|
|
1369
|
+
organization.rowWidth[longest] = organization.rowWidth[longest] - diff;
|
|
1370
|
+
organization.rowWidth[last] = organization.rowWidth[last] + diff;
|
|
1371
|
+
organization.width = organization.rowWidth[instance.getLongestRowIndex(organization)];
|
|
1372
|
+
var maxHeight = Number.MIN_VALUE;
|
|
1373
|
+
for (var i = 0; i < row.length; i++) {
|
|
1374
|
+
if (row[i].height > maxHeight) maxHeight = row[i].height;
|
|
1375
|
+
}
|
|
1376
|
+
if (longest > 0) maxHeight += organization.verticalPadding;
|
|
1377
|
+
var prevTotal = organization.rowHeight[longest] + organization.rowHeight[last];
|
|
1378
|
+
organization.rowHeight[longest] = maxHeight;
|
|
1379
|
+
if (organization.rowHeight[last] < node.height + organization.verticalPadding) organization.rowHeight[last] = node.height + organization.verticalPadding;
|
|
1380
|
+
var finalTotal = organization.rowHeight[longest] + organization.rowHeight[last];
|
|
1381
|
+
organization.height += finalTotal - prevTotal;
|
|
1382
|
+
this.shiftToLastRow(organization);
|
|
1383
|
+
}
|
|
1384
|
+
};
|
|
1385
|
+
CoSELayout.prototype.tilingPreLayout = function() {
|
|
1386
|
+
if (CoSEConstants.TILE) {
|
|
1387
|
+
this.groupZeroDegreeMembers();
|
|
1388
|
+
this.clearCompounds();
|
|
1389
|
+
this.clearZeroDegreeMembers();
|
|
1390
|
+
}
|
|
1391
|
+
};
|
|
1392
|
+
CoSELayout.prototype.tilingPostLayout = function() {
|
|
1393
|
+
if (CoSEConstants.TILE) {
|
|
1394
|
+
this.repopulateZeroDegreeMembers();
|
|
1395
|
+
this.repopulateCompounds();
|
|
1396
|
+
}
|
|
1397
|
+
};
|
|
1398
|
+
CoSELayout.prototype.reduceTrees = function() {
|
|
1399
|
+
var prunedNodesAll = [];
|
|
1400
|
+
var containsLeaf = true;
|
|
1401
|
+
var node;
|
|
1402
|
+
while (containsLeaf) {
|
|
1403
|
+
var allNodes = this.graphManager.getAllNodes();
|
|
1404
|
+
var prunedNodesInStepTemp = [];
|
|
1405
|
+
containsLeaf = false;
|
|
1406
|
+
for (var i = 0; i < allNodes.length; i++) {
|
|
1407
|
+
node = allNodes[i];
|
|
1408
|
+
if (node.getEdges().length == 1 && !node.getEdges()[0].isInterGraph && node.getChild() == null) {
|
|
1409
|
+
if (CoSEConstants.PURE_INCREMENTAL) {
|
|
1410
|
+
var otherEnd = node.getEdges()[0].getOtherEnd(node);
|
|
1411
|
+
var relativePosition = new DimensionD(node.getCenterX() - otherEnd.getCenterX(), node.getCenterY() - otherEnd.getCenterY());
|
|
1412
|
+
prunedNodesInStepTemp.push([node, node.getEdges()[0], node.getOwner(), relativePosition]);
|
|
1413
|
+
} else {
|
|
1414
|
+
prunedNodesInStepTemp.push([node, node.getEdges()[0], node.getOwner()]);
|
|
1415
|
+
}
|
|
1416
|
+
containsLeaf = true;
|
|
1417
|
+
}
|
|
1418
|
+
}
|
|
1419
|
+
if (containsLeaf == true) {
|
|
1420
|
+
var prunedNodesInStep = [];
|
|
1421
|
+
for (var j = 0; j < prunedNodesInStepTemp.length; j++) {
|
|
1422
|
+
if (prunedNodesInStepTemp[j][0].getEdges().length == 1) {
|
|
1423
|
+
prunedNodesInStep.push(prunedNodesInStepTemp[j]);
|
|
1424
|
+
prunedNodesInStepTemp[j][0].getOwner().remove(prunedNodesInStepTemp[j][0]);
|
|
1425
|
+
}
|
|
1426
|
+
}
|
|
1427
|
+
prunedNodesAll.push(prunedNodesInStep);
|
|
1428
|
+
this.graphManager.resetAllNodes();
|
|
1429
|
+
this.graphManager.resetAllEdges();
|
|
1430
|
+
}
|
|
1431
|
+
}
|
|
1432
|
+
this.prunedNodesAll = prunedNodesAll;
|
|
1433
|
+
};
|
|
1434
|
+
CoSELayout.prototype.growTree = function(prunedNodesAll) {
|
|
1435
|
+
var lengthOfPrunedNodesInStep = prunedNodesAll.length;
|
|
1436
|
+
var prunedNodesInStep = prunedNodesAll[lengthOfPrunedNodesInStep - 1];
|
|
1437
|
+
var nodeData;
|
|
1438
|
+
for (var i = 0; i < prunedNodesInStep.length; i++) {
|
|
1439
|
+
nodeData = prunedNodesInStep[i];
|
|
1440
|
+
this.findPlaceforPrunedNode(nodeData);
|
|
1441
|
+
nodeData[2].add(nodeData[0]);
|
|
1442
|
+
nodeData[2].add(nodeData[1], nodeData[1].source, nodeData[1].target);
|
|
1443
|
+
}
|
|
1444
|
+
prunedNodesAll.splice(prunedNodesAll.length - 1, 1);
|
|
1445
|
+
this.graphManager.resetAllNodes();
|
|
1446
|
+
this.graphManager.resetAllEdges();
|
|
1447
|
+
};
|
|
1448
|
+
CoSELayout.prototype.findPlaceforPrunedNode = function(nodeData) {
|
|
1449
|
+
var gridForPrunedNode;
|
|
1450
|
+
var nodeToConnect;
|
|
1451
|
+
var prunedNode = nodeData[0];
|
|
1452
|
+
if (prunedNode == nodeData[1].source) {
|
|
1453
|
+
nodeToConnect = nodeData[1].target;
|
|
1454
|
+
} else {
|
|
1455
|
+
nodeToConnect = nodeData[1].source;
|
|
1456
|
+
}
|
|
1457
|
+
if (CoSEConstants.PURE_INCREMENTAL) {
|
|
1458
|
+
prunedNode.setCenter(nodeToConnect.getCenterX() + nodeData[3].getWidth(), nodeToConnect.getCenterY() + nodeData[3].getHeight());
|
|
1459
|
+
} else {
|
|
1460
|
+
var startGridX = nodeToConnect.startX;
|
|
1461
|
+
var finishGridX = nodeToConnect.finishX;
|
|
1462
|
+
var startGridY = nodeToConnect.startY;
|
|
1463
|
+
var finishGridY = nodeToConnect.finishY;
|
|
1464
|
+
var upNodeCount = 0;
|
|
1465
|
+
var downNodeCount = 0;
|
|
1466
|
+
var rightNodeCount = 0;
|
|
1467
|
+
var leftNodeCount = 0;
|
|
1468
|
+
var controlRegions = [upNodeCount, rightNodeCount, downNodeCount, leftNodeCount];
|
|
1469
|
+
if (startGridY > 0) {
|
|
1470
|
+
for (var i = startGridX; i <= finishGridX; i++) {
|
|
1471
|
+
controlRegions[0] += this.grid[i][startGridY - 1].length + this.grid[i][startGridY].length - 1;
|
|
1472
|
+
}
|
|
1473
|
+
}
|
|
1474
|
+
if (finishGridX < this.grid.length - 1) {
|
|
1475
|
+
for (var i = startGridY; i <= finishGridY; i++) {
|
|
1476
|
+
controlRegions[1] += this.grid[finishGridX + 1][i].length + this.grid[finishGridX][i].length - 1;
|
|
1477
|
+
}
|
|
1478
|
+
}
|
|
1479
|
+
if (finishGridY < this.grid[0].length - 1) {
|
|
1480
|
+
for (var i = startGridX; i <= finishGridX; i++) {
|
|
1481
|
+
controlRegions[2] += this.grid[i][finishGridY + 1].length + this.grid[i][finishGridY].length - 1;
|
|
1482
|
+
}
|
|
1483
|
+
}
|
|
1484
|
+
if (startGridX > 0) {
|
|
1485
|
+
for (var i = startGridY; i <= finishGridY; i++) {
|
|
1486
|
+
controlRegions[3] += this.grid[startGridX - 1][i].length + this.grid[startGridX][i].length - 1;
|
|
1487
|
+
}
|
|
1488
|
+
}
|
|
1489
|
+
var min = Integer.MAX_VALUE;
|
|
1490
|
+
var minCount;
|
|
1491
|
+
var minIndex;
|
|
1492
|
+
for (var j = 0; j < controlRegions.length; j++) {
|
|
1493
|
+
if (controlRegions[j] < min) {
|
|
1494
|
+
min = controlRegions[j];
|
|
1495
|
+
minCount = 1;
|
|
1496
|
+
minIndex = j;
|
|
1497
|
+
} else if (controlRegions[j] == min) {
|
|
1498
|
+
minCount++;
|
|
1499
|
+
}
|
|
1500
|
+
}
|
|
1501
|
+
if (minCount == 3 && min == 0) {
|
|
1502
|
+
if (controlRegions[0] == 0 && controlRegions[1] == 0 && controlRegions[2] == 0) {
|
|
1503
|
+
gridForPrunedNode = 1;
|
|
1504
|
+
} else if (controlRegions[0] == 0 && controlRegions[1] == 0 && controlRegions[3] == 0) {
|
|
1505
|
+
gridForPrunedNode = 0;
|
|
1506
|
+
} else if (controlRegions[0] == 0 && controlRegions[2] == 0 && controlRegions[3] == 0) {
|
|
1507
|
+
gridForPrunedNode = 3;
|
|
1508
|
+
} else if (controlRegions[1] == 0 && controlRegions[2] == 0 && controlRegions[3] == 0) {
|
|
1509
|
+
gridForPrunedNode = 2;
|
|
1510
|
+
}
|
|
1511
|
+
} else if (minCount == 2 && min == 0) {
|
|
1512
|
+
var random = Math.floor(Math.random() * 2);
|
|
1513
|
+
if (controlRegions[0] == 0 && controlRegions[1] == 0) {
|
|
1514
|
+
if (random == 0) {
|
|
1515
|
+
gridForPrunedNode = 0;
|
|
1516
|
+
} else {
|
|
1517
|
+
gridForPrunedNode = 1;
|
|
1518
|
+
}
|
|
1519
|
+
} else if (controlRegions[0] == 0 && controlRegions[2] == 0) {
|
|
1520
|
+
if (random == 0) {
|
|
1521
|
+
gridForPrunedNode = 0;
|
|
1522
|
+
} else {
|
|
1523
|
+
gridForPrunedNode = 2;
|
|
1524
|
+
}
|
|
1525
|
+
} else if (controlRegions[0] == 0 && controlRegions[3] == 0) {
|
|
1526
|
+
if (random == 0) {
|
|
1527
|
+
gridForPrunedNode = 0;
|
|
1528
|
+
} else {
|
|
1529
|
+
gridForPrunedNode = 3;
|
|
1530
|
+
}
|
|
1531
|
+
} else if (controlRegions[1] == 0 && controlRegions[2] == 0) {
|
|
1532
|
+
if (random == 0) {
|
|
1533
|
+
gridForPrunedNode = 1;
|
|
1534
|
+
} else {
|
|
1535
|
+
gridForPrunedNode = 2;
|
|
1536
|
+
}
|
|
1537
|
+
} else if (controlRegions[1] == 0 && controlRegions[3] == 0) {
|
|
1538
|
+
if (random == 0) {
|
|
1539
|
+
gridForPrunedNode = 1;
|
|
1540
|
+
} else {
|
|
1541
|
+
gridForPrunedNode = 3;
|
|
1542
|
+
}
|
|
1543
|
+
} else {
|
|
1544
|
+
if (random == 0) {
|
|
1545
|
+
gridForPrunedNode = 2;
|
|
1546
|
+
} else {
|
|
1547
|
+
gridForPrunedNode = 3;
|
|
1548
|
+
}
|
|
1549
|
+
}
|
|
1550
|
+
} else if (minCount == 4 && min == 0) {
|
|
1551
|
+
var random = Math.floor(Math.random() * 4);
|
|
1552
|
+
gridForPrunedNode = random;
|
|
1553
|
+
} else {
|
|
1554
|
+
gridForPrunedNode = minIndex;
|
|
1555
|
+
}
|
|
1556
|
+
if (gridForPrunedNode == 0) {
|
|
1557
|
+
prunedNode.setCenter(nodeToConnect.getCenterX(), nodeToConnect.getCenterY() - nodeToConnect.getHeight() / 2 - FDLayoutConstants.DEFAULT_EDGE_LENGTH - prunedNode.getHeight() / 2);
|
|
1558
|
+
} else if (gridForPrunedNode == 1) {
|
|
1559
|
+
prunedNode.setCenter(nodeToConnect.getCenterX() + nodeToConnect.getWidth() / 2 + FDLayoutConstants.DEFAULT_EDGE_LENGTH + prunedNode.getWidth() / 2, nodeToConnect.getCenterY());
|
|
1560
|
+
} else if (gridForPrunedNode == 2) {
|
|
1561
|
+
prunedNode.setCenter(nodeToConnect.getCenterX(), nodeToConnect.getCenterY() + nodeToConnect.getHeight() / 2 + FDLayoutConstants.DEFAULT_EDGE_LENGTH + prunedNode.getHeight() / 2);
|
|
1562
|
+
} else {
|
|
1563
|
+
prunedNode.setCenter(nodeToConnect.getCenterX() - nodeToConnect.getWidth() / 2 - FDLayoutConstants.DEFAULT_EDGE_LENGTH - prunedNode.getWidth() / 2, nodeToConnect.getCenterY());
|
|
1564
|
+
}
|
|
1565
|
+
}
|
|
1566
|
+
};
|
|
1567
|
+
module2.exports = CoSELayout;
|
|
1568
|
+
}
|
|
1569
|
+
),
|
|
1570
|
+
/***/
|
|
1571
|
+
991: (
|
|
1572
|
+
/***/
|
|
1573
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
1574
|
+
var FDLayoutNode = __webpack_require__2(551).FDLayoutNode;
|
|
1575
|
+
var IMath = __webpack_require__2(551).IMath;
|
|
1576
|
+
function CoSENode(gm, loc, size, vNode) {
|
|
1577
|
+
FDLayoutNode.call(this, gm, loc, size, vNode);
|
|
1578
|
+
}
|
|
1579
|
+
CoSENode.prototype = Object.create(FDLayoutNode.prototype);
|
|
1580
|
+
for (var prop in FDLayoutNode) {
|
|
1581
|
+
CoSENode[prop] = FDLayoutNode[prop];
|
|
1582
|
+
}
|
|
1583
|
+
CoSENode.prototype.calculateDisplacement = function() {
|
|
1584
|
+
var layout = this.graphManager.getLayout();
|
|
1585
|
+
if (this.getChild() != null && this.fixedNodeWeight) {
|
|
1586
|
+
this.displacementX += layout.coolingFactor * (this.springForceX + this.repulsionForceX + this.gravitationForceX) / this.fixedNodeWeight;
|
|
1587
|
+
this.displacementY += layout.coolingFactor * (this.springForceY + this.repulsionForceY + this.gravitationForceY) / this.fixedNodeWeight;
|
|
1588
|
+
} else {
|
|
1589
|
+
this.displacementX += layout.coolingFactor * (this.springForceX + this.repulsionForceX + this.gravitationForceX) / this.noOfChildren;
|
|
1590
|
+
this.displacementY += layout.coolingFactor * (this.springForceY + this.repulsionForceY + this.gravitationForceY) / this.noOfChildren;
|
|
1591
|
+
}
|
|
1592
|
+
if (Math.abs(this.displacementX) > layout.coolingFactor * layout.maxNodeDisplacement) {
|
|
1593
|
+
this.displacementX = layout.coolingFactor * layout.maxNodeDisplacement * IMath.sign(this.displacementX);
|
|
1594
|
+
}
|
|
1595
|
+
if (Math.abs(this.displacementY) > layout.coolingFactor * layout.maxNodeDisplacement) {
|
|
1596
|
+
this.displacementY = layout.coolingFactor * layout.maxNodeDisplacement * IMath.sign(this.displacementY);
|
|
1597
|
+
}
|
|
1598
|
+
if (this.child && this.child.getNodes().length > 0) {
|
|
1599
|
+
this.propogateDisplacementToChildren(this.displacementX, this.displacementY);
|
|
1600
|
+
}
|
|
1601
|
+
};
|
|
1602
|
+
CoSENode.prototype.propogateDisplacementToChildren = function(dX, dY) {
|
|
1603
|
+
var nodes = this.getChild().getNodes();
|
|
1604
|
+
var node;
|
|
1605
|
+
for (var i = 0; i < nodes.length; i++) {
|
|
1606
|
+
node = nodes[i];
|
|
1607
|
+
if (node.getChild() == null) {
|
|
1608
|
+
node.displacementX += dX;
|
|
1609
|
+
node.displacementY += dY;
|
|
1610
|
+
} else {
|
|
1611
|
+
node.propogateDisplacementToChildren(dX, dY);
|
|
1612
|
+
}
|
|
1613
|
+
}
|
|
1614
|
+
};
|
|
1615
|
+
CoSENode.prototype.move = function() {
|
|
1616
|
+
var layout = this.graphManager.getLayout();
|
|
1617
|
+
if (this.child == null || this.child.getNodes().length == 0) {
|
|
1618
|
+
this.moveBy(this.displacementX, this.displacementY);
|
|
1619
|
+
layout.totalDisplacement += Math.abs(this.displacementX) + Math.abs(this.displacementY);
|
|
1620
|
+
}
|
|
1621
|
+
this.springForceX = 0;
|
|
1622
|
+
this.springForceY = 0;
|
|
1623
|
+
this.repulsionForceX = 0;
|
|
1624
|
+
this.repulsionForceY = 0;
|
|
1625
|
+
this.gravitationForceX = 0;
|
|
1626
|
+
this.gravitationForceY = 0;
|
|
1627
|
+
this.displacementX = 0;
|
|
1628
|
+
this.displacementY = 0;
|
|
1629
|
+
};
|
|
1630
|
+
CoSENode.prototype.setPred1 = function(pred12) {
|
|
1631
|
+
this.pred1 = pred12;
|
|
1632
|
+
};
|
|
1633
|
+
CoSENode.prototype.getPred1 = function() {
|
|
1634
|
+
return pred1;
|
|
1635
|
+
};
|
|
1636
|
+
CoSENode.prototype.getPred2 = function() {
|
|
1637
|
+
return pred2;
|
|
1638
|
+
};
|
|
1639
|
+
CoSENode.prototype.setNext = function(next2) {
|
|
1640
|
+
this.next = next2;
|
|
1641
|
+
};
|
|
1642
|
+
CoSENode.prototype.getNext = function() {
|
|
1643
|
+
return next;
|
|
1644
|
+
};
|
|
1645
|
+
CoSENode.prototype.setProcessed = function(processed2) {
|
|
1646
|
+
this.processed = processed2;
|
|
1647
|
+
};
|
|
1648
|
+
CoSENode.prototype.isProcessed = function() {
|
|
1649
|
+
return processed;
|
|
1650
|
+
};
|
|
1651
|
+
module2.exports = CoSENode;
|
|
1652
|
+
}
|
|
1653
|
+
),
|
|
1654
|
+
/***/
|
|
1655
|
+
902: (
|
|
1656
|
+
/***/
|
|
1657
|
+
(module2, __unused_webpack_exports, __webpack_require__2) => {
|
|
1658
|
+
function _toConsumableArray(arr) {
|
|
1659
|
+
if (Array.isArray(arr)) {
|
|
1660
|
+
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {
|
|
1661
|
+
arr2[i] = arr[i];
|
|
1662
|
+
}
|
|
1663
|
+
return arr2;
|
|
1664
|
+
} else {
|
|
1665
|
+
return Array.from(arr);
|
|
1666
|
+
}
|
|
1667
|
+
}
|
|
1668
|
+
var CoSEConstants = __webpack_require__2(806);
|
|
1669
|
+
var LinkedList = __webpack_require__2(551).LinkedList;
|
|
1670
|
+
var Matrix = __webpack_require__2(551).Matrix;
|
|
1671
|
+
var SVD = __webpack_require__2(551).SVD;
|
|
1672
|
+
function ConstraintHandler() {
|
|
1673
|
+
}
|
|
1674
|
+
ConstraintHandler.handleConstraints = function(layout) {
|
|
1675
|
+
var constraints = {};
|
|
1676
|
+
constraints.fixedNodeConstraint = layout.constraints.fixedNodeConstraint;
|
|
1677
|
+
constraints.alignmentConstraint = layout.constraints.alignmentConstraint;
|
|
1678
|
+
constraints.relativePlacementConstraint = layout.constraints.relativePlacementConstraint;
|
|
1679
|
+
var idToNodeMap = /* @__PURE__ */ new Map();
|
|
1680
|
+
var nodeIndexes = /* @__PURE__ */ new Map();
|
|
1681
|
+
var xCoords = [];
|
|
1682
|
+
var yCoords = [];
|
|
1683
|
+
var allNodes = layout.getAllNodes();
|
|
1684
|
+
var index = 0;
|
|
1685
|
+
for (var i = 0; i < allNodes.length; i++) {
|
|
1686
|
+
var node = allNodes[i];
|
|
1687
|
+
if (node.getChild() == null) {
|
|
1688
|
+
nodeIndexes.set(node.id, index++);
|
|
1689
|
+
xCoords.push(node.getCenterX());
|
|
1690
|
+
yCoords.push(node.getCenterY());
|
|
1691
|
+
idToNodeMap.set(node.id, node);
|
|
1692
|
+
}
|
|
1693
|
+
}
|
|
1694
|
+
if (constraints.relativePlacementConstraint) {
|
|
1695
|
+
constraints.relativePlacementConstraint.forEach(function(constraint) {
|
|
1696
|
+
if (!constraint.gap && constraint.gap != 0) {
|
|
1697
|
+
if (constraint.left) {
|
|
1698
|
+
constraint.gap = CoSEConstants.DEFAULT_EDGE_LENGTH + idToNodeMap.get(constraint.left).getWidth() / 2 + idToNodeMap.get(constraint.right).getWidth() / 2;
|
|
1699
|
+
} else {
|
|
1700
|
+
constraint.gap = CoSEConstants.DEFAULT_EDGE_LENGTH + idToNodeMap.get(constraint.top).getHeight() / 2 + idToNodeMap.get(constraint.bottom).getHeight() / 2;
|
|
1701
|
+
}
|
|
1702
|
+
}
|
|
1703
|
+
});
|
|
1704
|
+
}
|
|
1705
|
+
var calculatePositionDiff = function calculatePositionDiff2(pos1, pos2) {
|
|
1706
|
+
return { x: pos1.x - pos2.x, y: pos1.y - pos2.y };
|
|
1707
|
+
};
|
|
1708
|
+
var calculateAvgPosition = function calculateAvgPosition2(nodeIdSet) {
|
|
1709
|
+
var xPosSum = 0;
|
|
1710
|
+
var yPosSum = 0;
|
|
1711
|
+
nodeIdSet.forEach(function(nodeId) {
|
|
1712
|
+
xPosSum += xCoords[nodeIndexes.get(nodeId)];
|
|
1713
|
+
yPosSum += yCoords[nodeIndexes.get(nodeId)];
|
|
1714
|
+
});
|
|
1715
|
+
return { x: xPosSum / nodeIdSet.size, y: yPosSum / nodeIdSet.size };
|
|
1716
|
+
};
|
|
1717
|
+
var findAppropriatePositionForRelativePlacement = function findAppropriatePositionForRelativePlacement2(graph, direction, fixedNodes2, dummyPositions, componentSources) {
|
|
1718
|
+
function setUnion(setA, setB) {
|
|
1719
|
+
var union = new Set(setA);
|
|
1720
|
+
var _iteratorNormalCompletion = true;
|
|
1721
|
+
var _didIteratorError = false;
|
|
1722
|
+
var _iteratorError = void 0;
|
|
1723
|
+
try {
|
|
1724
|
+
for (var _iterator = setB[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
1725
|
+
var elem = _step.value;
|
|
1726
|
+
union.add(elem);
|
|
1727
|
+
}
|
|
1728
|
+
} catch (err) {
|
|
1729
|
+
_didIteratorError = true;
|
|
1730
|
+
_iteratorError = err;
|
|
1731
|
+
} finally {
|
|
1732
|
+
try {
|
|
1733
|
+
if (!_iteratorNormalCompletion && _iterator.return) {
|
|
1734
|
+
_iterator.return();
|
|
1735
|
+
}
|
|
1736
|
+
} finally {
|
|
1737
|
+
if (_didIteratorError) {
|
|
1738
|
+
throw _iteratorError;
|
|
1739
|
+
}
|
|
1740
|
+
}
|
|
1741
|
+
}
|
|
1742
|
+
return union;
|
|
1743
|
+
}
|
|
1744
|
+
var inDegrees = /* @__PURE__ */ new Map();
|
|
1745
|
+
graph.forEach(function(value, key) {
|
|
1746
|
+
inDegrees.set(key, 0);
|
|
1747
|
+
});
|
|
1748
|
+
graph.forEach(function(value, key) {
|
|
1749
|
+
value.forEach(function(adjacent) {
|
|
1750
|
+
inDegrees.set(adjacent.id, inDegrees.get(adjacent.id) + 1);
|
|
1751
|
+
});
|
|
1752
|
+
});
|
|
1753
|
+
var positionMap = /* @__PURE__ */ new Map();
|
|
1754
|
+
var pastMap = /* @__PURE__ */ new Map();
|
|
1755
|
+
var queue = new LinkedList();
|
|
1756
|
+
inDegrees.forEach(function(value, key) {
|
|
1757
|
+
if (value == 0) {
|
|
1758
|
+
queue.push(key);
|
|
1759
|
+
if (!fixedNodes2) {
|
|
1760
|
+
if (direction == "horizontal") {
|
|
1761
|
+
positionMap.set(key, nodeIndexes.has(key) ? xCoords[nodeIndexes.get(key)] : dummyPositions.get(key));
|
|
1762
|
+
} else {
|
|
1763
|
+
positionMap.set(key, nodeIndexes.has(key) ? yCoords[nodeIndexes.get(key)] : dummyPositions.get(key));
|
|
1764
|
+
}
|
|
1765
|
+
}
|
|
1766
|
+
} else {
|
|
1767
|
+
positionMap.set(key, Number.NEGATIVE_INFINITY);
|
|
1768
|
+
}
|
|
1769
|
+
if (fixedNodes2) {
|
|
1770
|
+
pastMap.set(key, /* @__PURE__ */ new Set([key]));
|
|
1771
|
+
}
|
|
1772
|
+
});
|
|
1773
|
+
if (fixedNodes2) {
|
|
1774
|
+
componentSources.forEach(function(component) {
|
|
1775
|
+
var fixedIds = [];
|
|
1776
|
+
component.forEach(function(nodeId) {
|
|
1777
|
+
if (fixedNodes2.has(nodeId)) {
|
|
1778
|
+
fixedIds.push(nodeId);
|
|
1779
|
+
}
|
|
1780
|
+
});
|
|
1781
|
+
if (fixedIds.length > 0) {
|
|
1782
|
+
var position = 0;
|
|
1783
|
+
fixedIds.forEach(function(fixedId) {
|
|
1784
|
+
if (direction == "horizontal") {
|
|
1785
|
+
positionMap.set(fixedId, nodeIndexes.has(fixedId) ? xCoords[nodeIndexes.get(fixedId)] : dummyPositions.get(fixedId));
|
|
1786
|
+
position += positionMap.get(fixedId);
|
|
1787
|
+
} else {
|
|
1788
|
+
positionMap.set(fixedId, nodeIndexes.has(fixedId) ? yCoords[nodeIndexes.get(fixedId)] : dummyPositions.get(fixedId));
|
|
1789
|
+
position += positionMap.get(fixedId);
|
|
1790
|
+
}
|
|
1791
|
+
});
|
|
1792
|
+
position = position / fixedIds.length;
|
|
1793
|
+
component.forEach(function(nodeId) {
|
|
1794
|
+
if (!fixedNodes2.has(nodeId)) {
|
|
1795
|
+
positionMap.set(nodeId, position);
|
|
1796
|
+
}
|
|
1797
|
+
});
|
|
1798
|
+
} else {
|
|
1799
|
+
var _position = 0;
|
|
1800
|
+
component.forEach(function(nodeId) {
|
|
1801
|
+
if (direction == "horizontal") {
|
|
1802
|
+
_position += nodeIndexes.has(nodeId) ? xCoords[nodeIndexes.get(nodeId)] : dummyPositions.get(nodeId);
|
|
1803
|
+
} else {
|
|
1804
|
+
_position += nodeIndexes.has(nodeId) ? yCoords[nodeIndexes.get(nodeId)] : dummyPositions.get(nodeId);
|
|
1805
|
+
}
|
|
1806
|
+
});
|
|
1807
|
+
_position = _position / component.length;
|
|
1808
|
+
component.forEach(function(nodeId) {
|
|
1809
|
+
positionMap.set(nodeId, _position);
|
|
1810
|
+
});
|
|
1811
|
+
}
|
|
1812
|
+
});
|
|
1813
|
+
}
|
|
1814
|
+
var _loop = function _loop2() {
|
|
1815
|
+
var currentNode = queue.shift();
|
|
1816
|
+
var neighbors = graph.get(currentNode);
|
|
1817
|
+
neighbors.forEach(function(neighbor) {
|
|
1818
|
+
if (positionMap.get(neighbor.id) < positionMap.get(currentNode) + neighbor.gap) {
|
|
1819
|
+
if (fixedNodes2 && fixedNodes2.has(neighbor.id)) {
|
|
1820
|
+
var fixedPosition = void 0;
|
|
1821
|
+
if (direction == "horizontal") {
|
|
1822
|
+
fixedPosition = nodeIndexes.has(neighbor.id) ? xCoords[nodeIndexes.get(neighbor.id)] : dummyPositions.get(neighbor.id);
|
|
1823
|
+
} else {
|
|
1824
|
+
fixedPosition = nodeIndexes.has(neighbor.id) ? yCoords[nodeIndexes.get(neighbor.id)] : dummyPositions.get(neighbor.id);
|
|
1825
|
+
}
|
|
1826
|
+
positionMap.set(neighbor.id, fixedPosition);
|
|
1827
|
+
if (fixedPosition < positionMap.get(currentNode) + neighbor.gap) {
|
|
1828
|
+
var diff = positionMap.get(currentNode) + neighbor.gap - fixedPosition;
|
|
1829
|
+
pastMap.get(currentNode).forEach(function(nodeId) {
|
|
1830
|
+
positionMap.set(nodeId, positionMap.get(nodeId) - diff);
|
|
1831
|
+
});
|
|
1832
|
+
}
|
|
1833
|
+
} else {
|
|
1834
|
+
positionMap.set(neighbor.id, positionMap.get(currentNode) + neighbor.gap);
|
|
1835
|
+
}
|
|
1836
|
+
}
|
|
1837
|
+
inDegrees.set(neighbor.id, inDegrees.get(neighbor.id) - 1);
|
|
1838
|
+
if (inDegrees.get(neighbor.id) == 0) {
|
|
1839
|
+
queue.push(neighbor.id);
|
|
1840
|
+
}
|
|
1841
|
+
if (fixedNodes2) {
|
|
1842
|
+
pastMap.set(neighbor.id, setUnion(pastMap.get(currentNode), pastMap.get(neighbor.id)));
|
|
1843
|
+
}
|
|
1844
|
+
});
|
|
1845
|
+
};
|
|
1846
|
+
while (queue.length != 0) {
|
|
1847
|
+
_loop();
|
|
1848
|
+
}
|
|
1849
|
+
if (fixedNodes2) {
|
|
1850
|
+
var sinkNodes = /* @__PURE__ */ new Set();
|
|
1851
|
+
graph.forEach(function(value, key) {
|
|
1852
|
+
if (value.length == 0) {
|
|
1853
|
+
sinkNodes.add(key);
|
|
1854
|
+
}
|
|
1855
|
+
});
|
|
1856
|
+
var _components = [];
|
|
1857
|
+
pastMap.forEach(function(value, key) {
|
|
1858
|
+
if (sinkNodes.has(key)) {
|
|
1859
|
+
var isFixedComponent = false;
|
|
1860
|
+
var _iteratorNormalCompletion2 = true;
|
|
1861
|
+
var _didIteratorError2 = false;
|
|
1862
|
+
var _iteratorError2 = void 0;
|
|
1863
|
+
try {
|
|
1864
|
+
for (var _iterator2 = value[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
|
1865
|
+
var nodeId = _step2.value;
|
|
1866
|
+
if (fixedNodes2.has(nodeId)) {
|
|
1867
|
+
isFixedComponent = true;
|
|
1868
|
+
}
|
|
1869
|
+
}
|
|
1870
|
+
} catch (err) {
|
|
1871
|
+
_didIteratorError2 = true;
|
|
1872
|
+
_iteratorError2 = err;
|
|
1873
|
+
} finally {
|
|
1874
|
+
try {
|
|
1875
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return) {
|
|
1876
|
+
_iterator2.return();
|
|
1877
|
+
}
|
|
1878
|
+
} finally {
|
|
1879
|
+
if (_didIteratorError2) {
|
|
1880
|
+
throw _iteratorError2;
|
|
1881
|
+
}
|
|
1882
|
+
}
|
|
1883
|
+
}
|
|
1884
|
+
if (!isFixedComponent) {
|
|
1885
|
+
var isExist = false;
|
|
1886
|
+
var existAt = void 0;
|
|
1887
|
+
_components.forEach(function(component, index2) {
|
|
1888
|
+
if (component.has([].concat(_toConsumableArray(value))[0])) {
|
|
1889
|
+
isExist = true;
|
|
1890
|
+
existAt = index2;
|
|
1891
|
+
}
|
|
1892
|
+
});
|
|
1893
|
+
if (!isExist) {
|
|
1894
|
+
_components.push(new Set(value));
|
|
1895
|
+
} else {
|
|
1896
|
+
value.forEach(function(ele) {
|
|
1897
|
+
_components[existAt].add(ele);
|
|
1898
|
+
});
|
|
1899
|
+
}
|
|
1900
|
+
}
|
|
1901
|
+
}
|
|
1902
|
+
});
|
|
1903
|
+
_components.forEach(function(component, index2) {
|
|
1904
|
+
var minBefore = Number.POSITIVE_INFINITY;
|
|
1905
|
+
var minAfter = Number.POSITIVE_INFINITY;
|
|
1906
|
+
var maxBefore = Number.NEGATIVE_INFINITY;
|
|
1907
|
+
var maxAfter = Number.NEGATIVE_INFINITY;
|
|
1908
|
+
var _iteratorNormalCompletion3 = true;
|
|
1909
|
+
var _didIteratorError3 = false;
|
|
1910
|
+
var _iteratorError3 = void 0;
|
|
1911
|
+
try {
|
|
1912
|
+
for (var _iterator3 = component[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
|
1913
|
+
var nodeId = _step3.value;
|
|
1914
|
+
var posBefore = void 0;
|
|
1915
|
+
if (direction == "horizontal") {
|
|
1916
|
+
posBefore = nodeIndexes.has(nodeId) ? xCoords[nodeIndexes.get(nodeId)] : dummyPositions.get(nodeId);
|
|
1917
|
+
} else {
|
|
1918
|
+
posBefore = nodeIndexes.has(nodeId) ? yCoords[nodeIndexes.get(nodeId)] : dummyPositions.get(nodeId);
|
|
1919
|
+
}
|
|
1920
|
+
var posAfter = positionMap.get(nodeId);
|
|
1921
|
+
if (posBefore < minBefore) {
|
|
1922
|
+
minBefore = posBefore;
|
|
1923
|
+
}
|
|
1924
|
+
if (posBefore > maxBefore) {
|
|
1925
|
+
maxBefore = posBefore;
|
|
1926
|
+
}
|
|
1927
|
+
if (posAfter < minAfter) {
|
|
1928
|
+
minAfter = posAfter;
|
|
1929
|
+
}
|
|
1930
|
+
if (posAfter > maxAfter) {
|
|
1931
|
+
maxAfter = posAfter;
|
|
1932
|
+
}
|
|
1933
|
+
}
|
|
1934
|
+
} catch (err) {
|
|
1935
|
+
_didIteratorError3 = true;
|
|
1936
|
+
_iteratorError3 = err;
|
|
1937
|
+
} finally {
|
|
1938
|
+
try {
|
|
1939
|
+
if (!_iteratorNormalCompletion3 && _iterator3.return) {
|
|
1940
|
+
_iterator3.return();
|
|
1941
|
+
}
|
|
1942
|
+
} finally {
|
|
1943
|
+
if (_didIteratorError3) {
|
|
1944
|
+
throw _iteratorError3;
|
|
1945
|
+
}
|
|
1946
|
+
}
|
|
1947
|
+
}
|
|
1948
|
+
var diff = (minBefore + maxBefore) / 2 - (minAfter + maxAfter) / 2;
|
|
1949
|
+
var _iteratorNormalCompletion4 = true;
|
|
1950
|
+
var _didIteratorError4 = false;
|
|
1951
|
+
var _iteratorError4 = void 0;
|
|
1952
|
+
try {
|
|
1953
|
+
for (var _iterator4 = component[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
|
1954
|
+
var _nodeId = _step4.value;
|
|
1955
|
+
positionMap.set(_nodeId, positionMap.get(_nodeId) + diff);
|
|
1956
|
+
}
|
|
1957
|
+
} catch (err) {
|
|
1958
|
+
_didIteratorError4 = true;
|
|
1959
|
+
_iteratorError4 = err;
|
|
1960
|
+
} finally {
|
|
1961
|
+
try {
|
|
1962
|
+
if (!_iteratorNormalCompletion4 && _iterator4.return) {
|
|
1963
|
+
_iterator4.return();
|
|
1964
|
+
}
|
|
1965
|
+
} finally {
|
|
1966
|
+
if (_didIteratorError4) {
|
|
1967
|
+
throw _iteratorError4;
|
|
1968
|
+
}
|
|
1969
|
+
}
|
|
1970
|
+
}
|
|
1971
|
+
});
|
|
1972
|
+
}
|
|
1973
|
+
return positionMap;
|
|
1974
|
+
};
|
|
1975
|
+
var applyReflectionForRelativePlacement = function applyReflectionForRelativePlacement2(relativePlacementConstraints) {
|
|
1976
|
+
var reflectOnY = 0, notReflectOnY = 0;
|
|
1977
|
+
var reflectOnX = 0, notReflectOnX = 0;
|
|
1978
|
+
relativePlacementConstraints.forEach(function(constraint) {
|
|
1979
|
+
if (constraint.left) {
|
|
1980
|
+
xCoords[nodeIndexes.get(constraint.left)] - xCoords[nodeIndexes.get(constraint.right)] >= 0 ? reflectOnY++ : notReflectOnY++;
|
|
1981
|
+
} else {
|
|
1982
|
+
yCoords[nodeIndexes.get(constraint.top)] - yCoords[nodeIndexes.get(constraint.bottom)] >= 0 ? reflectOnX++ : notReflectOnX++;
|
|
1983
|
+
}
|
|
1984
|
+
});
|
|
1985
|
+
if (reflectOnY > notReflectOnY && reflectOnX > notReflectOnX) {
|
|
1986
|
+
for (var _i = 0; _i < nodeIndexes.size; _i++) {
|
|
1987
|
+
xCoords[_i] = -1 * xCoords[_i];
|
|
1988
|
+
yCoords[_i] = -1 * yCoords[_i];
|
|
1989
|
+
}
|
|
1990
|
+
} else if (reflectOnY > notReflectOnY) {
|
|
1991
|
+
for (var _i2 = 0; _i2 < nodeIndexes.size; _i2++) {
|
|
1992
|
+
xCoords[_i2] = -1 * xCoords[_i2];
|
|
1993
|
+
}
|
|
1994
|
+
} else if (reflectOnX > notReflectOnX) {
|
|
1995
|
+
for (var _i3 = 0; _i3 < nodeIndexes.size; _i3++) {
|
|
1996
|
+
yCoords[_i3] = -1 * yCoords[_i3];
|
|
1997
|
+
}
|
|
1998
|
+
}
|
|
1999
|
+
};
|
|
2000
|
+
var findComponents = function findComponents2(graph) {
|
|
2001
|
+
var components2 = [];
|
|
2002
|
+
var queue = new LinkedList();
|
|
2003
|
+
var visited = /* @__PURE__ */ new Set();
|
|
2004
|
+
var count = 0;
|
|
2005
|
+
graph.forEach(function(value, key) {
|
|
2006
|
+
if (!visited.has(key)) {
|
|
2007
|
+
components2[count] = [];
|
|
2008
|
+
var _currentNode = key;
|
|
2009
|
+
queue.push(_currentNode);
|
|
2010
|
+
visited.add(_currentNode);
|
|
2011
|
+
components2[count].push(_currentNode);
|
|
2012
|
+
while (queue.length != 0) {
|
|
2013
|
+
_currentNode = queue.shift();
|
|
2014
|
+
var neighbors = graph.get(_currentNode);
|
|
2015
|
+
neighbors.forEach(function(neighbor) {
|
|
2016
|
+
if (!visited.has(neighbor.id)) {
|
|
2017
|
+
queue.push(neighbor.id);
|
|
2018
|
+
visited.add(neighbor.id);
|
|
2019
|
+
components2[count].push(neighbor.id);
|
|
2020
|
+
}
|
|
2021
|
+
});
|
|
2022
|
+
}
|
|
2023
|
+
count++;
|
|
2024
|
+
}
|
|
2025
|
+
});
|
|
2026
|
+
return components2;
|
|
2027
|
+
};
|
|
2028
|
+
var dagToUndirected = function dagToUndirected2(dag2) {
|
|
2029
|
+
var undirected = /* @__PURE__ */ new Map();
|
|
2030
|
+
dag2.forEach(function(value, key) {
|
|
2031
|
+
undirected.set(key, []);
|
|
2032
|
+
});
|
|
2033
|
+
dag2.forEach(function(value, key) {
|
|
2034
|
+
value.forEach(function(adjacent) {
|
|
2035
|
+
undirected.get(key).push(adjacent);
|
|
2036
|
+
undirected.get(adjacent.id).push({ id: key, gap: adjacent.gap, direction: adjacent.direction });
|
|
2037
|
+
});
|
|
2038
|
+
});
|
|
2039
|
+
return undirected;
|
|
2040
|
+
};
|
|
2041
|
+
var dagToReversed = function dagToReversed2(dag2) {
|
|
2042
|
+
var reversed = /* @__PURE__ */ new Map();
|
|
2043
|
+
dag2.forEach(function(value, key) {
|
|
2044
|
+
reversed.set(key, []);
|
|
2045
|
+
});
|
|
2046
|
+
dag2.forEach(function(value, key) {
|
|
2047
|
+
value.forEach(function(adjacent) {
|
|
2048
|
+
reversed.get(adjacent.id).push({ id: key, gap: adjacent.gap, direction: adjacent.direction });
|
|
2049
|
+
});
|
|
2050
|
+
});
|
|
2051
|
+
return reversed;
|
|
2052
|
+
};
|
|
2053
|
+
var targetMatrix = [];
|
|
2054
|
+
var sourceMatrix = [];
|
|
2055
|
+
var standardTransformation = false;
|
|
2056
|
+
var reflectionType = false;
|
|
2057
|
+
var fixedNodes = /* @__PURE__ */ new Set();
|
|
2058
|
+
var dag = /* @__PURE__ */ new Map();
|
|
2059
|
+
var dagUndirected = /* @__PURE__ */ new Map();
|
|
2060
|
+
var components = [];
|
|
2061
|
+
if (constraints.fixedNodeConstraint) {
|
|
2062
|
+
constraints.fixedNodeConstraint.forEach(function(nodeData) {
|
|
2063
|
+
fixedNodes.add(nodeData.nodeId);
|
|
2064
|
+
});
|
|
2065
|
+
}
|
|
2066
|
+
if (constraints.relativePlacementConstraint) {
|
|
2067
|
+
constraints.relativePlacementConstraint.forEach(function(constraint) {
|
|
2068
|
+
if (constraint.left) {
|
|
2069
|
+
if (dag.has(constraint.left)) {
|
|
2070
|
+
dag.get(constraint.left).push({ id: constraint.right, gap: constraint.gap, direction: "horizontal" });
|
|
2071
|
+
} else {
|
|
2072
|
+
dag.set(constraint.left, [{ id: constraint.right, gap: constraint.gap, direction: "horizontal" }]);
|
|
2073
|
+
}
|
|
2074
|
+
if (!dag.has(constraint.right)) {
|
|
2075
|
+
dag.set(constraint.right, []);
|
|
2076
|
+
}
|
|
2077
|
+
} else {
|
|
2078
|
+
if (dag.has(constraint.top)) {
|
|
2079
|
+
dag.get(constraint.top).push({ id: constraint.bottom, gap: constraint.gap, direction: "vertical" });
|
|
2080
|
+
} else {
|
|
2081
|
+
dag.set(constraint.top, [{ id: constraint.bottom, gap: constraint.gap, direction: "vertical" }]);
|
|
2082
|
+
}
|
|
2083
|
+
if (!dag.has(constraint.bottom)) {
|
|
2084
|
+
dag.set(constraint.bottom, []);
|
|
2085
|
+
}
|
|
2086
|
+
}
|
|
2087
|
+
});
|
|
2088
|
+
dagUndirected = dagToUndirected(dag);
|
|
2089
|
+
components = findComponents(dagUndirected);
|
|
2090
|
+
}
|
|
2091
|
+
if (CoSEConstants.TRANSFORM_ON_CONSTRAINT_HANDLING) {
|
|
2092
|
+
if (constraints.fixedNodeConstraint && constraints.fixedNodeConstraint.length > 1) {
|
|
2093
|
+
constraints.fixedNodeConstraint.forEach(function(nodeData, i2) {
|
|
2094
|
+
targetMatrix[i2] = [nodeData.position.x, nodeData.position.y];
|
|
2095
|
+
sourceMatrix[i2] = [xCoords[nodeIndexes.get(nodeData.nodeId)], yCoords[nodeIndexes.get(nodeData.nodeId)]];
|
|
2096
|
+
});
|
|
2097
|
+
standardTransformation = true;
|
|
2098
|
+
} else if (constraints.alignmentConstraint) {
|
|
2099
|
+
(function() {
|
|
2100
|
+
var count = 0;
|
|
2101
|
+
if (constraints.alignmentConstraint.vertical) {
|
|
2102
|
+
var verticalAlign = constraints.alignmentConstraint.vertical;
|
|
2103
|
+
var _loop2 = function _loop22(_i42) {
|
|
2104
|
+
var alignmentSet = /* @__PURE__ */ new Set();
|
|
2105
|
+
verticalAlign[_i42].forEach(function(nodeId) {
|
|
2106
|
+
alignmentSet.add(nodeId);
|
|
2107
|
+
});
|
|
2108
|
+
var intersection = new Set([].concat(_toConsumableArray(alignmentSet)).filter(function(x) {
|
|
2109
|
+
return fixedNodes.has(x);
|
|
2110
|
+
}));
|
|
2111
|
+
var xPos = void 0;
|
|
2112
|
+
if (intersection.size > 0) xPos = xCoords[nodeIndexes.get(intersection.values().next().value)];
|
|
2113
|
+
else xPos = calculateAvgPosition(alignmentSet).x;
|
|
2114
|
+
verticalAlign[_i42].forEach(function(nodeId) {
|
|
2115
|
+
targetMatrix[count] = [xPos, yCoords[nodeIndexes.get(nodeId)]];
|
|
2116
|
+
sourceMatrix[count] = [xCoords[nodeIndexes.get(nodeId)], yCoords[nodeIndexes.get(nodeId)]];
|
|
2117
|
+
count++;
|
|
2118
|
+
});
|
|
2119
|
+
};
|
|
2120
|
+
for (var _i4 = 0; _i4 < verticalAlign.length; _i4++) {
|
|
2121
|
+
_loop2(_i4);
|
|
2122
|
+
}
|
|
2123
|
+
standardTransformation = true;
|
|
2124
|
+
}
|
|
2125
|
+
if (constraints.alignmentConstraint.horizontal) {
|
|
2126
|
+
var horizontalAlign = constraints.alignmentConstraint.horizontal;
|
|
2127
|
+
var _loop3 = function _loop32(_i52) {
|
|
2128
|
+
var alignmentSet = /* @__PURE__ */ new Set();
|
|
2129
|
+
horizontalAlign[_i52].forEach(function(nodeId) {
|
|
2130
|
+
alignmentSet.add(nodeId);
|
|
2131
|
+
});
|
|
2132
|
+
var intersection = new Set([].concat(_toConsumableArray(alignmentSet)).filter(function(x) {
|
|
2133
|
+
return fixedNodes.has(x);
|
|
2134
|
+
}));
|
|
2135
|
+
var yPos = void 0;
|
|
2136
|
+
if (intersection.size > 0) yPos = xCoords[nodeIndexes.get(intersection.values().next().value)];
|
|
2137
|
+
else yPos = calculateAvgPosition(alignmentSet).y;
|
|
2138
|
+
horizontalAlign[_i52].forEach(function(nodeId) {
|
|
2139
|
+
targetMatrix[count] = [xCoords[nodeIndexes.get(nodeId)], yPos];
|
|
2140
|
+
sourceMatrix[count] = [xCoords[nodeIndexes.get(nodeId)], yCoords[nodeIndexes.get(nodeId)]];
|
|
2141
|
+
count++;
|
|
2142
|
+
});
|
|
2143
|
+
};
|
|
2144
|
+
for (var _i5 = 0; _i5 < horizontalAlign.length; _i5++) {
|
|
2145
|
+
_loop3(_i5);
|
|
2146
|
+
}
|
|
2147
|
+
standardTransformation = true;
|
|
2148
|
+
}
|
|
2149
|
+
if (constraints.relativePlacementConstraint) {
|
|
2150
|
+
reflectionType = true;
|
|
2151
|
+
}
|
|
2152
|
+
})();
|
|
2153
|
+
} else if (constraints.relativePlacementConstraint) {
|
|
2154
|
+
var largestComponentSize = 0;
|
|
2155
|
+
var largestComponentIndex = 0;
|
|
2156
|
+
for (var _i6 = 0; _i6 < components.length; _i6++) {
|
|
2157
|
+
if (components[_i6].length > largestComponentSize) {
|
|
2158
|
+
largestComponentSize = components[_i6].length;
|
|
2159
|
+
largestComponentIndex = _i6;
|
|
2160
|
+
}
|
|
2161
|
+
}
|
|
2162
|
+
if (largestComponentSize < dagUndirected.size / 2) {
|
|
2163
|
+
applyReflectionForRelativePlacement(constraints.relativePlacementConstraint);
|
|
2164
|
+
standardTransformation = false;
|
|
2165
|
+
reflectionType = false;
|
|
2166
|
+
} else {
|
|
2167
|
+
var subGraphOnHorizontal = /* @__PURE__ */ new Map();
|
|
2168
|
+
var subGraphOnVertical = /* @__PURE__ */ new Map();
|
|
2169
|
+
var constraintsInlargestComponent = [];
|
|
2170
|
+
components[largestComponentIndex].forEach(function(nodeId) {
|
|
2171
|
+
dag.get(nodeId).forEach(function(adjacent) {
|
|
2172
|
+
if (adjacent.direction == "horizontal") {
|
|
2173
|
+
if (subGraphOnHorizontal.has(nodeId)) {
|
|
2174
|
+
subGraphOnHorizontal.get(nodeId).push(adjacent);
|
|
2175
|
+
} else {
|
|
2176
|
+
subGraphOnHorizontal.set(nodeId, [adjacent]);
|
|
2177
|
+
}
|
|
2178
|
+
if (!subGraphOnHorizontal.has(adjacent.id)) {
|
|
2179
|
+
subGraphOnHorizontal.set(adjacent.id, []);
|
|
2180
|
+
}
|
|
2181
|
+
constraintsInlargestComponent.push({ left: nodeId, right: adjacent.id });
|
|
2182
|
+
} else {
|
|
2183
|
+
if (subGraphOnVertical.has(nodeId)) {
|
|
2184
|
+
subGraphOnVertical.get(nodeId).push(adjacent);
|
|
2185
|
+
} else {
|
|
2186
|
+
subGraphOnVertical.set(nodeId, [adjacent]);
|
|
2187
|
+
}
|
|
2188
|
+
if (!subGraphOnVertical.has(adjacent.id)) {
|
|
2189
|
+
subGraphOnVertical.set(adjacent.id, []);
|
|
2190
|
+
}
|
|
2191
|
+
constraintsInlargestComponent.push({ top: nodeId, bottom: adjacent.id });
|
|
2192
|
+
}
|
|
2193
|
+
});
|
|
2194
|
+
});
|
|
2195
|
+
applyReflectionForRelativePlacement(constraintsInlargestComponent);
|
|
2196
|
+
reflectionType = false;
|
|
2197
|
+
var positionMapHorizontal = findAppropriatePositionForRelativePlacement(subGraphOnHorizontal, "horizontal");
|
|
2198
|
+
var positionMapVertical = findAppropriatePositionForRelativePlacement(subGraphOnVertical, "vertical");
|
|
2199
|
+
components[largestComponentIndex].forEach(function(nodeId, i2) {
|
|
2200
|
+
sourceMatrix[i2] = [xCoords[nodeIndexes.get(nodeId)], yCoords[nodeIndexes.get(nodeId)]];
|
|
2201
|
+
targetMatrix[i2] = [];
|
|
2202
|
+
if (positionMapHorizontal.has(nodeId)) {
|
|
2203
|
+
targetMatrix[i2][0] = positionMapHorizontal.get(nodeId);
|
|
2204
|
+
} else {
|
|
2205
|
+
targetMatrix[i2][0] = xCoords[nodeIndexes.get(nodeId)];
|
|
2206
|
+
}
|
|
2207
|
+
if (positionMapVertical.has(nodeId)) {
|
|
2208
|
+
targetMatrix[i2][1] = positionMapVertical.get(nodeId);
|
|
2209
|
+
} else {
|
|
2210
|
+
targetMatrix[i2][1] = yCoords[nodeIndexes.get(nodeId)];
|
|
2211
|
+
}
|
|
2212
|
+
});
|
|
2213
|
+
standardTransformation = true;
|
|
2214
|
+
}
|
|
2215
|
+
}
|
|
2216
|
+
if (standardTransformation) {
|
|
2217
|
+
var transformationMatrix = void 0;
|
|
2218
|
+
var targetMatrixTranspose = Matrix.transpose(targetMatrix);
|
|
2219
|
+
var sourceMatrixTranspose = Matrix.transpose(sourceMatrix);
|
|
2220
|
+
for (var _i7 = 0; _i7 < targetMatrixTranspose.length; _i7++) {
|
|
2221
|
+
targetMatrixTranspose[_i7] = Matrix.multGamma(targetMatrixTranspose[_i7]);
|
|
2222
|
+
sourceMatrixTranspose[_i7] = Matrix.multGamma(sourceMatrixTranspose[_i7]);
|
|
2223
|
+
}
|
|
2224
|
+
var tempMatrix = Matrix.multMat(targetMatrixTranspose, Matrix.transpose(sourceMatrixTranspose));
|
|
2225
|
+
var SVDResult = SVD.svd(tempMatrix);
|
|
2226
|
+
transformationMatrix = Matrix.multMat(SVDResult.V, Matrix.transpose(SVDResult.U));
|
|
2227
|
+
for (var _i8 = 0; _i8 < nodeIndexes.size; _i8++) {
|
|
2228
|
+
var temp1 = [xCoords[_i8], yCoords[_i8]];
|
|
2229
|
+
var temp2 = [transformationMatrix[0][0], transformationMatrix[1][0]];
|
|
2230
|
+
var temp3 = [transformationMatrix[0][1], transformationMatrix[1][1]];
|
|
2231
|
+
xCoords[_i8] = Matrix.dotProduct(temp1, temp2);
|
|
2232
|
+
yCoords[_i8] = Matrix.dotProduct(temp1, temp3);
|
|
2233
|
+
}
|
|
2234
|
+
if (reflectionType) {
|
|
2235
|
+
applyReflectionForRelativePlacement(constraints.relativePlacementConstraint);
|
|
2236
|
+
}
|
|
2237
|
+
}
|
|
2238
|
+
}
|
|
2239
|
+
if (CoSEConstants.ENFORCE_CONSTRAINTS) {
|
|
2240
|
+
if (constraints.fixedNodeConstraint && constraints.fixedNodeConstraint.length > 0) {
|
|
2241
|
+
var translationAmount = { x: 0, y: 0 };
|
|
2242
|
+
constraints.fixedNodeConstraint.forEach(function(nodeData, i2) {
|
|
2243
|
+
var posInTheory = { x: xCoords[nodeIndexes.get(nodeData.nodeId)], y: yCoords[nodeIndexes.get(nodeData.nodeId)] };
|
|
2244
|
+
var posDesired = nodeData.position;
|
|
2245
|
+
var posDiff = calculatePositionDiff(posDesired, posInTheory);
|
|
2246
|
+
translationAmount.x += posDiff.x;
|
|
2247
|
+
translationAmount.y += posDiff.y;
|
|
2248
|
+
});
|
|
2249
|
+
translationAmount.x /= constraints.fixedNodeConstraint.length;
|
|
2250
|
+
translationAmount.y /= constraints.fixedNodeConstraint.length;
|
|
2251
|
+
xCoords.forEach(function(value, i2) {
|
|
2252
|
+
xCoords[i2] += translationAmount.x;
|
|
2253
|
+
});
|
|
2254
|
+
yCoords.forEach(function(value, i2) {
|
|
2255
|
+
yCoords[i2] += translationAmount.y;
|
|
2256
|
+
});
|
|
2257
|
+
constraints.fixedNodeConstraint.forEach(function(nodeData) {
|
|
2258
|
+
xCoords[nodeIndexes.get(nodeData.nodeId)] = nodeData.position.x;
|
|
2259
|
+
yCoords[nodeIndexes.get(nodeData.nodeId)] = nodeData.position.y;
|
|
2260
|
+
});
|
|
2261
|
+
}
|
|
2262
|
+
if (constraints.alignmentConstraint) {
|
|
2263
|
+
if (constraints.alignmentConstraint.vertical) {
|
|
2264
|
+
var xAlign = constraints.alignmentConstraint.vertical;
|
|
2265
|
+
var _loop4 = function _loop42(_i92) {
|
|
2266
|
+
var alignmentSet = /* @__PURE__ */ new Set();
|
|
2267
|
+
xAlign[_i92].forEach(function(nodeId) {
|
|
2268
|
+
alignmentSet.add(nodeId);
|
|
2269
|
+
});
|
|
2270
|
+
var intersection = new Set([].concat(_toConsumableArray(alignmentSet)).filter(function(x) {
|
|
2271
|
+
return fixedNodes.has(x);
|
|
2272
|
+
}));
|
|
2273
|
+
var xPos = void 0;
|
|
2274
|
+
if (intersection.size > 0) xPos = xCoords[nodeIndexes.get(intersection.values().next().value)];
|
|
2275
|
+
else xPos = calculateAvgPosition(alignmentSet).x;
|
|
2276
|
+
alignmentSet.forEach(function(nodeId) {
|
|
2277
|
+
if (!fixedNodes.has(nodeId)) xCoords[nodeIndexes.get(nodeId)] = xPos;
|
|
2278
|
+
});
|
|
2279
|
+
};
|
|
2280
|
+
for (var _i9 = 0; _i9 < xAlign.length; _i9++) {
|
|
2281
|
+
_loop4(_i9);
|
|
2282
|
+
}
|
|
2283
|
+
}
|
|
2284
|
+
if (constraints.alignmentConstraint.horizontal) {
|
|
2285
|
+
var yAlign = constraints.alignmentConstraint.horizontal;
|
|
2286
|
+
var _loop5 = function _loop52(_i102) {
|
|
2287
|
+
var alignmentSet = /* @__PURE__ */ new Set();
|
|
2288
|
+
yAlign[_i102].forEach(function(nodeId) {
|
|
2289
|
+
alignmentSet.add(nodeId);
|
|
2290
|
+
});
|
|
2291
|
+
var intersection = new Set([].concat(_toConsumableArray(alignmentSet)).filter(function(x) {
|
|
2292
|
+
return fixedNodes.has(x);
|
|
2293
|
+
}));
|
|
2294
|
+
var yPos = void 0;
|
|
2295
|
+
if (intersection.size > 0) yPos = yCoords[nodeIndexes.get(intersection.values().next().value)];
|
|
2296
|
+
else yPos = calculateAvgPosition(alignmentSet).y;
|
|
2297
|
+
alignmentSet.forEach(function(nodeId) {
|
|
2298
|
+
if (!fixedNodes.has(nodeId)) yCoords[nodeIndexes.get(nodeId)] = yPos;
|
|
2299
|
+
});
|
|
2300
|
+
};
|
|
2301
|
+
for (var _i10 = 0; _i10 < yAlign.length; _i10++) {
|
|
2302
|
+
_loop5(_i10);
|
|
2303
|
+
}
|
|
2304
|
+
}
|
|
2305
|
+
}
|
|
2306
|
+
if (constraints.relativePlacementConstraint) {
|
|
2307
|
+
(function() {
|
|
2308
|
+
var nodeToDummyForVerticalAlignment = /* @__PURE__ */ new Map();
|
|
2309
|
+
var nodeToDummyForHorizontalAlignment = /* @__PURE__ */ new Map();
|
|
2310
|
+
var dummyToNodeForVerticalAlignment = /* @__PURE__ */ new Map();
|
|
2311
|
+
var dummyToNodeForHorizontalAlignment = /* @__PURE__ */ new Map();
|
|
2312
|
+
var dummyPositionsForVerticalAlignment = /* @__PURE__ */ new Map();
|
|
2313
|
+
var dummyPositionsForHorizontalAlignment = /* @__PURE__ */ new Map();
|
|
2314
|
+
var fixedNodesOnHorizontal = /* @__PURE__ */ new Set();
|
|
2315
|
+
var fixedNodesOnVertical = /* @__PURE__ */ new Set();
|
|
2316
|
+
fixedNodes.forEach(function(nodeId2) {
|
|
2317
|
+
fixedNodesOnHorizontal.add(nodeId2);
|
|
2318
|
+
fixedNodesOnVertical.add(nodeId2);
|
|
2319
|
+
});
|
|
2320
|
+
if (constraints.alignmentConstraint) {
|
|
2321
|
+
if (constraints.alignmentConstraint.vertical) {
|
|
2322
|
+
var verticalAlignment = constraints.alignmentConstraint.vertical;
|
|
2323
|
+
var _loop6 = function _loop62(_i112) {
|
|
2324
|
+
dummyToNodeForVerticalAlignment.set("dummy" + _i112, []);
|
|
2325
|
+
verticalAlignment[_i112].forEach(function(nodeId2) {
|
|
2326
|
+
nodeToDummyForVerticalAlignment.set(nodeId2, "dummy" + _i112);
|
|
2327
|
+
dummyToNodeForVerticalAlignment.get("dummy" + _i112).push(nodeId2);
|
|
2328
|
+
if (fixedNodes.has(nodeId2)) {
|
|
2329
|
+
fixedNodesOnHorizontal.add("dummy" + _i112);
|
|
2330
|
+
}
|
|
2331
|
+
});
|
|
2332
|
+
dummyPositionsForVerticalAlignment.set("dummy" + _i112, xCoords[nodeIndexes.get(verticalAlignment[_i112][0])]);
|
|
2333
|
+
};
|
|
2334
|
+
for (var _i11 = 0; _i11 < verticalAlignment.length; _i11++) {
|
|
2335
|
+
_loop6(_i11);
|
|
2336
|
+
}
|
|
2337
|
+
}
|
|
2338
|
+
if (constraints.alignmentConstraint.horizontal) {
|
|
2339
|
+
var horizontalAlignment = constraints.alignmentConstraint.horizontal;
|
|
2340
|
+
var _loop7 = function _loop72(_i122) {
|
|
2341
|
+
dummyToNodeForHorizontalAlignment.set("dummy" + _i122, []);
|
|
2342
|
+
horizontalAlignment[_i122].forEach(function(nodeId2) {
|
|
2343
|
+
nodeToDummyForHorizontalAlignment.set(nodeId2, "dummy" + _i122);
|
|
2344
|
+
dummyToNodeForHorizontalAlignment.get("dummy" + _i122).push(nodeId2);
|
|
2345
|
+
if (fixedNodes.has(nodeId2)) {
|
|
2346
|
+
fixedNodesOnVertical.add("dummy" + _i122);
|
|
2347
|
+
}
|
|
2348
|
+
});
|
|
2349
|
+
dummyPositionsForHorizontalAlignment.set("dummy" + _i122, yCoords[nodeIndexes.get(horizontalAlignment[_i122][0])]);
|
|
2350
|
+
};
|
|
2351
|
+
for (var _i12 = 0; _i12 < horizontalAlignment.length; _i12++) {
|
|
2352
|
+
_loop7(_i12);
|
|
2353
|
+
}
|
|
2354
|
+
}
|
|
2355
|
+
}
|
|
2356
|
+
var dagOnHorizontal = /* @__PURE__ */ new Map();
|
|
2357
|
+
var dagOnVertical = /* @__PURE__ */ new Map();
|
|
2358
|
+
var _loop8 = function _loop82(nodeId2) {
|
|
2359
|
+
dag.get(nodeId2).forEach(function(adjacent) {
|
|
2360
|
+
var sourceId = void 0;
|
|
2361
|
+
var targetNode = void 0;
|
|
2362
|
+
if (adjacent["direction"] == "horizontal") {
|
|
2363
|
+
sourceId = nodeToDummyForVerticalAlignment.get(nodeId2) ? nodeToDummyForVerticalAlignment.get(nodeId2) : nodeId2;
|
|
2364
|
+
if (nodeToDummyForVerticalAlignment.get(adjacent.id)) {
|
|
2365
|
+
targetNode = { id: nodeToDummyForVerticalAlignment.get(adjacent.id), gap: adjacent.gap, direction: adjacent.direction };
|
|
2366
|
+
} else {
|
|
2367
|
+
targetNode = adjacent;
|
|
2368
|
+
}
|
|
2369
|
+
if (dagOnHorizontal.has(sourceId)) {
|
|
2370
|
+
dagOnHorizontal.get(sourceId).push(targetNode);
|
|
2371
|
+
} else {
|
|
2372
|
+
dagOnHorizontal.set(sourceId, [targetNode]);
|
|
2373
|
+
}
|
|
2374
|
+
if (!dagOnHorizontal.has(targetNode.id)) {
|
|
2375
|
+
dagOnHorizontal.set(targetNode.id, []);
|
|
2376
|
+
}
|
|
2377
|
+
} else {
|
|
2378
|
+
sourceId = nodeToDummyForHorizontalAlignment.get(nodeId2) ? nodeToDummyForHorizontalAlignment.get(nodeId2) : nodeId2;
|
|
2379
|
+
if (nodeToDummyForHorizontalAlignment.get(adjacent.id)) {
|
|
2380
|
+
targetNode = { id: nodeToDummyForHorizontalAlignment.get(adjacent.id), gap: adjacent.gap, direction: adjacent.direction };
|
|
2381
|
+
} else {
|
|
2382
|
+
targetNode = adjacent;
|
|
2383
|
+
}
|
|
2384
|
+
if (dagOnVertical.has(sourceId)) {
|
|
2385
|
+
dagOnVertical.get(sourceId).push(targetNode);
|
|
2386
|
+
} else {
|
|
2387
|
+
dagOnVertical.set(sourceId, [targetNode]);
|
|
2388
|
+
}
|
|
2389
|
+
if (!dagOnVertical.has(targetNode.id)) {
|
|
2390
|
+
dagOnVertical.set(targetNode.id, []);
|
|
2391
|
+
}
|
|
2392
|
+
}
|
|
2393
|
+
});
|
|
2394
|
+
};
|
|
2395
|
+
var _iteratorNormalCompletion5 = true;
|
|
2396
|
+
var _didIteratorError5 = false;
|
|
2397
|
+
var _iteratorError5 = void 0;
|
|
2398
|
+
try {
|
|
2399
|
+
for (var _iterator5 = dag.keys()[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
|
2400
|
+
var nodeId = _step5.value;
|
|
2401
|
+
_loop8(nodeId);
|
|
2402
|
+
}
|
|
2403
|
+
} catch (err) {
|
|
2404
|
+
_didIteratorError5 = true;
|
|
2405
|
+
_iteratorError5 = err;
|
|
2406
|
+
} finally {
|
|
2407
|
+
try {
|
|
2408
|
+
if (!_iteratorNormalCompletion5 && _iterator5.return) {
|
|
2409
|
+
_iterator5.return();
|
|
2410
|
+
}
|
|
2411
|
+
} finally {
|
|
2412
|
+
if (_didIteratorError5) {
|
|
2413
|
+
throw _iteratorError5;
|
|
2414
|
+
}
|
|
2415
|
+
}
|
|
2416
|
+
}
|
|
2417
|
+
var undirectedOnHorizontal = dagToUndirected(dagOnHorizontal);
|
|
2418
|
+
var undirectedOnVertical = dagToUndirected(dagOnVertical);
|
|
2419
|
+
var componentsOnHorizontal = findComponents(undirectedOnHorizontal);
|
|
2420
|
+
var componentsOnVertical = findComponents(undirectedOnVertical);
|
|
2421
|
+
var reversedDagOnHorizontal = dagToReversed(dagOnHorizontal);
|
|
2422
|
+
var reversedDagOnVertical = dagToReversed(dagOnVertical);
|
|
2423
|
+
var componentSourcesOnHorizontal = [];
|
|
2424
|
+
var componentSourcesOnVertical = [];
|
|
2425
|
+
componentsOnHorizontal.forEach(function(component, index2) {
|
|
2426
|
+
componentSourcesOnHorizontal[index2] = [];
|
|
2427
|
+
component.forEach(function(nodeId2) {
|
|
2428
|
+
if (reversedDagOnHorizontal.get(nodeId2).length == 0) {
|
|
2429
|
+
componentSourcesOnHorizontal[index2].push(nodeId2);
|
|
2430
|
+
}
|
|
2431
|
+
});
|
|
2432
|
+
});
|
|
2433
|
+
componentsOnVertical.forEach(function(component, index2) {
|
|
2434
|
+
componentSourcesOnVertical[index2] = [];
|
|
2435
|
+
component.forEach(function(nodeId2) {
|
|
2436
|
+
if (reversedDagOnVertical.get(nodeId2).length == 0) {
|
|
2437
|
+
componentSourcesOnVertical[index2].push(nodeId2);
|
|
2438
|
+
}
|
|
2439
|
+
});
|
|
2440
|
+
});
|
|
2441
|
+
var positionMapHorizontal2 = findAppropriatePositionForRelativePlacement(dagOnHorizontal, "horizontal", fixedNodesOnHorizontal, dummyPositionsForVerticalAlignment, componentSourcesOnHorizontal);
|
|
2442
|
+
var positionMapVertical2 = findAppropriatePositionForRelativePlacement(dagOnVertical, "vertical", fixedNodesOnVertical, dummyPositionsForHorizontalAlignment, componentSourcesOnVertical);
|
|
2443
|
+
var _loop9 = function _loop92(key2) {
|
|
2444
|
+
if (dummyToNodeForVerticalAlignment.get(key2)) {
|
|
2445
|
+
dummyToNodeForVerticalAlignment.get(key2).forEach(function(nodeId2) {
|
|
2446
|
+
xCoords[nodeIndexes.get(nodeId2)] = positionMapHorizontal2.get(key2);
|
|
2447
|
+
});
|
|
2448
|
+
} else {
|
|
2449
|
+
xCoords[nodeIndexes.get(key2)] = positionMapHorizontal2.get(key2);
|
|
2450
|
+
}
|
|
2451
|
+
};
|
|
2452
|
+
var _iteratorNormalCompletion6 = true;
|
|
2453
|
+
var _didIteratorError6 = false;
|
|
2454
|
+
var _iteratorError6 = void 0;
|
|
2455
|
+
try {
|
|
2456
|
+
for (var _iterator6 = positionMapHorizontal2.keys()[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
|
2457
|
+
var key = _step6.value;
|
|
2458
|
+
_loop9(key);
|
|
2459
|
+
}
|
|
2460
|
+
} catch (err) {
|
|
2461
|
+
_didIteratorError6 = true;
|
|
2462
|
+
_iteratorError6 = err;
|
|
2463
|
+
} finally {
|
|
2464
|
+
try {
|
|
2465
|
+
if (!_iteratorNormalCompletion6 && _iterator6.return) {
|
|
2466
|
+
_iterator6.return();
|
|
2467
|
+
}
|
|
2468
|
+
} finally {
|
|
2469
|
+
if (_didIteratorError6) {
|
|
2470
|
+
throw _iteratorError6;
|
|
2471
|
+
}
|
|
2472
|
+
}
|
|
2473
|
+
}
|
|
2474
|
+
var _loop10 = function _loop102(key2) {
|
|
2475
|
+
if (dummyToNodeForHorizontalAlignment.get(key2)) {
|
|
2476
|
+
dummyToNodeForHorizontalAlignment.get(key2).forEach(function(nodeId2) {
|
|
2477
|
+
yCoords[nodeIndexes.get(nodeId2)] = positionMapVertical2.get(key2);
|
|
2478
|
+
});
|
|
2479
|
+
} else {
|
|
2480
|
+
yCoords[nodeIndexes.get(key2)] = positionMapVertical2.get(key2);
|
|
2481
|
+
}
|
|
2482
|
+
};
|
|
2483
|
+
var _iteratorNormalCompletion7 = true;
|
|
2484
|
+
var _didIteratorError7 = false;
|
|
2485
|
+
var _iteratorError7 = void 0;
|
|
2486
|
+
try {
|
|
2487
|
+
for (var _iterator7 = positionMapVertical2.keys()[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
|
|
2488
|
+
var key = _step7.value;
|
|
2489
|
+
_loop10(key);
|
|
2490
|
+
}
|
|
2491
|
+
} catch (err) {
|
|
2492
|
+
_didIteratorError7 = true;
|
|
2493
|
+
_iteratorError7 = err;
|
|
2494
|
+
} finally {
|
|
2495
|
+
try {
|
|
2496
|
+
if (!_iteratorNormalCompletion7 && _iterator7.return) {
|
|
2497
|
+
_iterator7.return();
|
|
2498
|
+
}
|
|
2499
|
+
} finally {
|
|
2500
|
+
if (_didIteratorError7) {
|
|
2501
|
+
throw _iteratorError7;
|
|
2502
|
+
}
|
|
2503
|
+
}
|
|
2504
|
+
}
|
|
2505
|
+
})();
|
|
2506
|
+
}
|
|
2507
|
+
}
|
|
2508
|
+
for (var _i13 = 0; _i13 < allNodes.length; _i13++) {
|
|
2509
|
+
var _node = allNodes[_i13];
|
|
2510
|
+
if (_node.getChild() == null) {
|
|
2511
|
+
_node.setCenter(xCoords[nodeIndexes.get(_node.id)], yCoords[nodeIndexes.get(_node.id)]);
|
|
2512
|
+
}
|
|
2513
|
+
}
|
|
2514
|
+
};
|
|
2515
|
+
module2.exports = ConstraintHandler;
|
|
2516
|
+
}
|
|
2517
|
+
),
|
|
2518
|
+
/***/
|
|
2519
|
+
551: (
|
|
2520
|
+
/***/
|
|
2521
|
+
(module2) => {
|
|
2522
|
+
module2.exports = __WEBPACK_EXTERNAL_MODULE__551__;
|
|
2523
|
+
}
|
|
2524
|
+
)
|
|
2525
|
+
/******/
|
|
2526
|
+
};
|
|
2527
|
+
var __webpack_module_cache__ = {};
|
|
2528
|
+
function __webpack_require__(moduleId) {
|
|
2529
|
+
var cachedModule = __webpack_module_cache__[moduleId];
|
|
2530
|
+
if (cachedModule !== void 0) {
|
|
2531
|
+
return cachedModule.exports;
|
|
2532
|
+
}
|
|
2533
|
+
var module2 = __webpack_module_cache__[moduleId] = {
|
|
2534
|
+
/******/
|
|
2535
|
+
// no module.id needed
|
|
2536
|
+
/******/
|
|
2537
|
+
// no module.loaded needed
|
|
2538
|
+
/******/
|
|
2539
|
+
exports: {}
|
|
2540
|
+
/******/
|
|
2541
|
+
};
|
|
2542
|
+
__webpack_modules__[moduleId](module2, module2.exports, __webpack_require__);
|
|
2543
|
+
return module2.exports;
|
|
2544
|
+
}
|
|
2545
|
+
var __webpack_exports__ = __webpack_require__(45);
|
|
2546
|
+
return __webpack_exports__;
|
|
2547
|
+
})()
|
|
2548
|
+
);
|
|
2549
|
+
});
|
|
2550
|
+
})(coseBase$1);
|
|
2551
|
+
return coseBase$1.exports;
|
|
2552
|
+
}
|
|
2553
|
+
export {
|
|
2554
|
+
requireCoseBase as __require
|
|
2555
|
+
};
|