ixbrl-viewer 1.4.28__tar.gz → 1.4.30__tar.gz
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.
Potentially problematic release.
This version of ixbrl-viewer might be problematic. Click here for more details.
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/workflows/node-tests.yml +2 -2
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/workflows/npm-package.yml +8 -8
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/workflows/puppeteer.yml +4 -4
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/workflows/python-package.yml +8 -8
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/workflows/python-tests.yml +2 -2
- {ixbrl_viewer-1.4.28/ixbrl_viewer.egg-info → ixbrl_viewer-1.4.30}/PKG-INFO +5 -5
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/__init__.py +43 -22
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/_version.py +2 -2
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/iXBRLViewer.py +146 -125
- ixbrl_viewer-1.4.30/iXBRLViewerPlugin/plugin.py +7 -0
- ixbrl_viewer-1.4.30/iXBRLViewerPlugin/viewer/dist/ixbrlviewer.js +2 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/i18n/en/translation.json +1 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/calculation.js +45 -32
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/inspector.js +6 -1
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/util.js +3 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30/ixbrl_viewer.egg-info}/PKG-INFO +5 -5
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/ixbrl_viewer.egg-info/SOURCES.txt +1 -0
- ixbrl_viewer-1.4.30/ixbrl_viewer.egg-info/requires.txt +11 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/package-lock.json +837 -766
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/package.json +3 -3
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/pyproject.toml +4 -4
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/unit_tests/iXBRLViewerPlugin/test_iXBRLViewer.py +24 -23
- ixbrl_viewer-1.4.28/iXBRLViewerPlugin/viewer/dist/ixbrlviewer.js +0 -2
- ixbrl_viewer-1.4.28/ixbrl_viewer.egg-info/requires.txt +0 -11
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.babelrc +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/ISSUE_TEMPLATE/bug.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/ISSUE_TEMPLATE/questions.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/ISSUE_TEMPLATE/request.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/dependabot.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/release-drafter.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/workflows/release-drafter.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.github/workflows/release.yml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.gitignore +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/.npmignore +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/ARCHITECTURE.md +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/CODEOWNERS +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/COPYRIGHT.md +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/LICENSE +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/MANIFEST.in +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/Makefile +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/NOTICE +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/PLUGINS.md +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/README.md +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/README.md +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/clx-20220630.xsd +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/clx-20220630_cal.xml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/clx-20220630_d2.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/clx-20220630_def.xml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/clx-20220630_g1.jpg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/clx-20220630_lab.xml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/clx-20220630_pre.xml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/fy22clxex21subsidiaries.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/fy22clxex23accountingfirmc.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/fy22clxex311ceocertificati.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/fy22clxex312cfocertificati.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/fy22clxex32ceocfocertifica.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/fy22clxex992reconofeconomi.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/clorox-2022-10-K-ixbrl-viewer/ixbrl-viewer.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/example_plugin/README.md +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/example_plugin/example-plugin.gif +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/example_plugin/extended-viewer.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/example_plugin/index.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/example_plugin/package-lock.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/example_plugin/package.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/example_plugin/webpack.config.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/ixbrl-viewer-demo.gif +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/review-mode.png +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/workiva-january-2023-8-k-ixbrl-viewer/exhibit31abylawsofworkivai.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/workiva-january-2023-8-k-ixbrl-viewer/exhibit31bbylawsofworkivai.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/workiva-january-2023-8-k-ixbrl-viewer/ixbrl-viewer.htm +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/workiva-january-2023-8-k-ixbrl-viewer/wk-20230109.xsd +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/workiva-january-2023-8-k-ixbrl-viewer/wk-20230109_lab.xml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/examples/workiva-january-2023-8-k-ixbrl-viewer/wk-20230109_pre.xml +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/constants.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/featureConfig.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/stubviewer.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/ui.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/dist/ixbrlviewer.js.LICENSE.txt +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/i18next-parser.config.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/html/fact-details.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/html/footnote-details.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/html/inspector.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/i18n/en/currencies.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/i18n/en/referenceparts.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/i18n/es/currencies.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/i18n/es/referenceparts.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/i18n/es/translation.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/arrow-down.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/arrow-up.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/calculator.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/chevron-down.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/chevron-left.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/chevron-right.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/chevron-up.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/circle-cross.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/circle-tick.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/clipboard.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/close.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/cog.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/dimension-member.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/dimension.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/download.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/filter.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/graph.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/member.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/multi-tag.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/outline.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/print.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/question.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/search.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/select.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/summary.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/tag.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/text-block.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/tick.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/icons/warning.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/img/arelle.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/img/favicon.ico +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/img/inline-viewer.png +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/img/inline-viewer.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/img/powered-by-workiva.png +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/img/powered-by-workiva.svg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/accordian.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/aspect.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/aspect.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/calculation.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/calculationInspector.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/chart.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/chart.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/concept.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/concept.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/dialog.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/docOrderIndex.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/fact.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/fact.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/factset.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/factset.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/footnote.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/identifiers.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/identifiers.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/index.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/inspector.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/interval.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/interval.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/ixbrlviewer.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/ixbrlviewer.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/ixnode.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/menu.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/messagebox.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/moment-jest.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/number-matcher-preprocess.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/number-matcher.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/number-matcher.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/outline.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/outline.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/period.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/period.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/qname.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/report.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/report.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/reportset.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/reportset.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/search.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/search.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/summary.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/summary.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/tableExport.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/test-utils.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/textblockviewer.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/unit.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/unit.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/util.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/validationreport.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/viewer.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/js/viewerOptions.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/accordian.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/block-list.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/calculation-inspector.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/chart.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/clearfix.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/colours.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/common.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/components.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/core.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/dialog.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/fonts.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/form-controls.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/icons.less.njk +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/inspector.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/loader.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/menu.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/summary.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/tabs.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/text-block-viewer.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/text-mixins.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/validation-report.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/src/less/viewer.less +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/tools/build-font.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/version.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/webpack.common.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/webpack.dev.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/viewer/webpack.prod.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/iXBRLViewerPlugin/xhtmlserialize.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/ixbrl_viewer.egg-info/dependency_links.txt +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/ixbrl_viewer.egg-info/entry_points.txt +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/ixbrl_viewer.egg-info/top_level.txt +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/jest.config.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/Makefile +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/Makefile-src +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/build-viewer.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/fetch-sample-files.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/sample-files.list +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/continuation/continuation.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/ixds-test/document1.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/ixds-test/faurecia.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/ixds-test/valeo.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/scrollable-div/scrollable-div.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/testdoc/build.sh +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/testdoc/example.xsd +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/testdoc/labels.json +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/testdoc/testdoc.ixtmpl +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/samples/src/xbrl-invalid-tests/xbrl-invalid-test.html +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/setup.cfg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/__init__.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/framework/core_elements.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/framework/page_objects/doc_frame.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/framework/page_objects/fact_details_panel.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/framework/page_objects/search_panel.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/framework/page_objects/toolbar.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/framework/utils.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/framework/viewer_page.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/puppeteer_test_run_via_intellij.jpg +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/test_filings/filing_documents_smoke_test.zip +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/test_filings/highlights.zip +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/tests/fact_properties.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/tests/highlight.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/tests/search.test.js +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/puppeteer/tools/generate.sh +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/unit_tests/__init__.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/unit_tests/iXBRLViewerPlugin/__init__.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/unit_tests/iXBRLViewerPlugin/mock_arelle.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tests/unit_tests/iXBRLViewerPlugin/test_xhtmlserialize.py +0 -0
- {ixbrl_viewer-1.4.28 → ixbrl_viewer-1.4.30}/tox.ini +0 -0
|
@@ -23,11 +23,11 @@ jobs:
|
|
|
23
23
|
runs-on: ubuntu-22.04
|
|
24
24
|
steps:
|
|
25
25
|
- name: Checkout ixbrl-viewer
|
|
26
|
-
uses: actions/checkout@v4.1.
|
|
26
|
+
uses: actions/checkout@v4.1.7
|
|
27
27
|
with:
|
|
28
28
|
fetch-depth: 0 # npm run prod requires tags, sadly this is the only way to get them.
|
|
29
29
|
- name: Install Node.js
|
|
30
|
-
uses: actions/setup-node@v4.0.
|
|
30
|
+
uses: actions/setup-node@v4.0.3
|
|
31
31
|
with:
|
|
32
32
|
cache: 'npm'
|
|
33
33
|
check-latest: true
|
|
@@ -42,13 +42,13 @@ jobs:
|
|
|
42
42
|
npm version $(git describe --tags)
|
|
43
43
|
npm pack
|
|
44
44
|
- name: Upload ixbrlviewer.js artifact
|
|
45
|
-
uses: actions/upload-artifact@v4.3.
|
|
45
|
+
uses: actions/upload-artifact@v4.3.4
|
|
46
46
|
with:
|
|
47
47
|
name: ixbrlviewer.js
|
|
48
48
|
if-no-files-found: error
|
|
49
49
|
path: iXBRLViewerPlugin/viewer/dist/ixbrlviewer.js
|
|
50
50
|
- name: Upload npm artifact
|
|
51
|
-
uses: actions/upload-artifact@v4.3.
|
|
51
|
+
uses: actions/upload-artifact@v4.3.4
|
|
52
52
|
with:
|
|
53
53
|
name: npm package
|
|
54
54
|
if-no-files-found: error
|
|
@@ -63,17 +63,17 @@ jobs:
|
|
|
63
63
|
if: startsWith(github.ref, 'refs/tags')
|
|
64
64
|
steps:
|
|
65
65
|
- name: Install Node.js
|
|
66
|
-
uses: actions/setup-node@v4.0.
|
|
66
|
+
uses: actions/setup-node@v4.0.3
|
|
67
67
|
with:
|
|
68
68
|
check-latest: true
|
|
69
69
|
node-version: ${{ inputs.node_version }}
|
|
70
70
|
registry-url: 'https://registry.npmjs.org' # Must explicitly set this for NODE_AUTH_TOKEN to work below
|
|
71
71
|
- name: Download ixbrlviewer.js artifact
|
|
72
|
-
uses: actions/download-artifact@v4.1.
|
|
72
|
+
uses: actions/download-artifact@v4.1.8
|
|
73
73
|
with:
|
|
74
74
|
name: ixbrlviewer.js
|
|
75
75
|
- name: Download npm artifact
|
|
76
|
-
uses: actions/download-artifact@v4.1.
|
|
76
|
+
uses: actions/download-artifact@v4.1.8
|
|
77
77
|
with:
|
|
78
78
|
name: npm package
|
|
79
79
|
- name: Publish with npm
|
|
@@ -83,7 +83,7 @@ jobs:
|
|
|
83
83
|
NPM_CONFIG_DRY_RUN: ${{ github.repository != 'Arelle/ixbrl-viewer' }}
|
|
84
84
|
run: npm publish ixbrl-viewer-*.tgz --access public
|
|
85
85
|
- name: Upload release artifacts
|
|
86
|
-
uses: softprops/action-gh-release@v2.0.
|
|
86
|
+
uses: softprops/action-gh-release@v2.0.6
|
|
87
87
|
with:
|
|
88
88
|
fail_on_unmatched_files: true
|
|
89
89
|
files: './*'
|
|
@@ -25,16 +25,16 @@ jobs:
|
|
|
25
25
|
- '3.12'
|
|
26
26
|
runs-on: ${{ matrix.os }}
|
|
27
27
|
steps:
|
|
28
|
-
- uses: actions/checkout@v4.1.
|
|
28
|
+
- uses: actions/checkout@v4.1.7
|
|
29
29
|
with:
|
|
30
30
|
fetch-depth: 0 # npm run prod requires tags, sadly this is the only way to get them.
|
|
31
|
-
- uses: actions/setup-node@v4.0.
|
|
31
|
+
- uses: actions/setup-node@v4.0.3
|
|
32
32
|
with:
|
|
33
33
|
cache: 'npm'
|
|
34
34
|
check-latest: true
|
|
35
35
|
node-version: ${{ matrix.node-version }}
|
|
36
36
|
- name: Install Python 3
|
|
37
|
-
uses: actions/setup-python@v5.1.
|
|
37
|
+
uses: actions/setup-python@v5.1.1
|
|
38
38
|
with:
|
|
39
39
|
cache: 'pip'
|
|
40
40
|
cache-dependency-path: '**/pyproject.toml'
|
|
@@ -54,7 +54,7 @@ jobs:
|
|
|
54
54
|
run: npx http-server . &> tests/puppeteer/artifacts/http_server.log &
|
|
55
55
|
- name: Run puppeteer tests
|
|
56
56
|
run: npm run test:puppeteer
|
|
57
|
-
- uses: actions/upload-artifact@v4.3.
|
|
57
|
+
- uses: actions/upload-artifact@v4.3.4
|
|
58
58
|
if: failure()
|
|
59
59
|
with:
|
|
60
60
|
name: ${{ github.run_id }}.${{ github.run_attempt }}_${{ matrix.os }}_${{ matrix.node-version }}_${{ matrix.python-version }}_artifacts
|
|
@@ -33,11 +33,11 @@ jobs:
|
|
|
33
33
|
runs-on: ubuntu-22.04
|
|
34
34
|
steps:
|
|
35
35
|
- name: Checkout ixbrl-viewer
|
|
36
|
-
uses: actions/checkout@v4.1.
|
|
36
|
+
uses: actions/checkout@v4.1.7
|
|
37
37
|
with:
|
|
38
38
|
fetch-depth: 0
|
|
39
39
|
- name: Install Node.js
|
|
40
|
-
uses: actions/setup-node@v4.0.
|
|
40
|
+
uses: actions/setup-node@v4.0.3
|
|
41
41
|
with:
|
|
42
42
|
cache: 'npm'
|
|
43
43
|
check-latest: true
|
|
@@ -47,7 +47,7 @@ jobs:
|
|
|
47
47
|
- name: Build ixbrlviewer.js
|
|
48
48
|
run: make prod
|
|
49
49
|
- name: Install Python
|
|
50
|
-
uses: actions/setup-python@v5.1.
|
|
50
|
+
uses: actions/setup-python@v5.1.1
|
|
51
51
|
with:
|
|
52
52
|
cache: 'pip'
|
|
53
53
|
cache-dependency-path: '**/pyproject.toml'
|
|
@@ -60,13 +60,13 @@ jobs:
|
|
|
60
60
|
- name: Build Python package
|
|
61
61
|
run: python -m build
|
|
62
62
|
- name: Upload source distribution artifact
|
|
63
|
-
uses: actions/upload-artifact@v4.3.
|
|
63
|
+
uses: actions/upload-artifact@v4.3.4
|
|
64
64
|
with:
|
|
65
65
|
name: source distribution
|
|
66
66
|
if-no-files-found: error
|
|
67
67
|
path: dist/*.tar.gz
|
|
68
68
|
- name: Upload wheel artifact
|
|
69
|
-
uses: actions/upload-artifact@v4.3.
|
|
69
|
+
uses: actions/upload-artifact@v4.3.4
|
|
70
70
|
with:
|
|
71
71
|
name: wheel
|
|
72
72
|
if-no-files-found: error
|
|
@@ -83,11 +83,11 @@ jobs:
|
|
|
83
83
|
- name: Install twine
|
|
84
84
|
run: pip install -U twine
|
|
85
85
|
- name: Download source distribution artifact
|
|
86
|
-
uses: actions/download-artifact@v4.1.
|
|
86
|
+
uses: actions/download-artifact@v4.1.8
|
|
87
87
|
with:
|
|
88
88
|
name: source distribution
|
|
89
89
|
- name: Download wheel artifact
|
|
90
|
-
uses: actions/download-artifact@v4.1.
|
|
90
|
+
uses: actions/download-artifact@v4.1.8
|
|
91
91
|
with:
|
|
92
92
|
name: wheel
|
|
93
93
|
- name: Publish package on release
|
|
@@ -97,7 +97,7 @@ jobs:
|
|
|
97
97
|
TWINE_REPOSITORY: ${{ github.repository == 'Arelle/ixbrl-viewer' && 'pypi' || 'testpypi' }}
|
|
98
98
|
run: twine upload ./*
|
|
99
99
|
- name: Upload release artifacts
|
|
100
|
-
uses: softprops/action-gh-release@v2.0.
|
|
100
|
+
uses: softprops/action-gh-release@v2.0.6
|
|
101
101
|
with:
|
|
102
102
|
fail_on_unmatched_files: true
|
|
103
103
|
files: './*'
|
|
@@ -26,9 +26,9 @@ jobs:
|
|
|
26
26
|
- '3.12'
|
|
27
27
|
runs-on: ${{ matrix.os }}
|
|
28
28
|
steps:
|
|
29
|
-
- uses: actions/checkout@v4.1.
|
|
29
|
+
- uses: actions/checkout@v4.1.7
|
|
30
30
|
- name: Install Python 3
|
|
31
|
-
uses: actions/setup-python@v5.1.
|
|
31
|
+
uses: actions/setup-python@v5.1.1
|
|
32
32
|
with:
|
|
33
33
|
cache: 'pip'
|
|
34
34
|
cache-dependency-path: '**/pyproject.toml'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ixbrl-viewer
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.30
|
|
4
4
|
Summary: The Arelle iXBRL Viewer allows iXBRL reports to be viewed interactively in a web browser.
|
|
5
5
|
Author-email: "arelle.org" <support@arelle.org>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -34,11 +34,11 @@ Requires-Dist: lxml<6,>=4
|
|
|
34
34
|
Provides-Extra: arelle
|
|
35
35
|
Requires-Dist: arelle_release==2.*; extra == "arelle"
|
|
36
36
|
Provides-Extra: dev
|
|
37
|
-
Requires-Dist: flake8==7.
|
|
37
|
+
Requires-Dist: flake8==7.1.0; extra == "dev"
|
|
38
38
|
Requires-Dist: lxml-stubs==0.5.1; extra == "dev"
|
|
39
|
-
Requires-Dist: mypy==1.10.
|
|
40
|
-
Requires-Dist: pytest==8.2.
|
|
41
|
-
Requires-Dist: typing-extensions==4.12.
|
|
39
|
+
Requires-Dist: mypy==1.10.1; extra == "dev"
|
|
40
|
+
Requires-Dist: pytest==8.2.2; extra == "dev"
|
|
41
|
+
Requires-Dist: typing-extensions==4.12.2; extra == "dev"
|
|
42
42
|
|
|
43
43
|
# Arelle iXBRL Viewer
|
|
44
44
|
|
|
@@ -22,6 +22,9 @@ from .constants import CONFIG_COPY_SCRIPT, CONFIG_FEATURE_PREFIX, CONFIG_LAUNCH_
|
|
|
22
22
|
DEFAULT_JS_FILENAME, DEFAULT_VIEWER_PATH, ERROR_MESSAGE_CODE, \
|
|
23
23
|
EXCEPTION_MESSAGE_CODE, FEATURE_CONFIGS
|
|
24
24
|
from .iXBRLViewer import IXBRLViewerBuilder, IXBRLViewerBuilderError
|
|
25
|
+
from .plugin import IXBRLViewerPluginData
|
|
26
|
+
|
|
27
|
+
PLUGIN_NAME = 'ixbrl-viewer'
|
|
25
28
|
|
|
26
29
|
#
|
|
27
30
|
# GUI operation:
|
|
@@ -94,10 +97,6 @@ def iXBRLViewerCommandLineOptionExtender(parser, *args, **kwargs):
|
|
|
94
97
|
dest="zipViewerOutput",
|
|
95
98
|
help="Converts the viewer output into a self contained zip")
|
|
96
99
|
|
|
97
|
-
# Force "keepOpen" to true, so that all models are retained. Needed for
|
|
98
|
-
# multi-instance viewers.
|
|
99
|
-
parser.set_defaults(keepOpen = True)
|
|
100
|
-
|
|
101
100
|
featureGroup = OptionGroup(parser, "Viewer Features",
|
|
102
101
|
"See viewer README for information on enabling/disabling features.")
|
|
103
102
|
for featureConfig in FEATURE_CONFIGS:
|
|
@@ -105,13 +104,30 @@ def iXBRLViewerCommandLineOptionExtender(parser, *args, **kwargs):
|
|
|
105
104
|
featureGroup.add_option(arg, arg.lower(), action="store_true", default=False, help=featureConfig.description)
|
|
106
105
|
parser.add_option_group(featureGroup)
|
|
107
106
|
|
|
107
|
+
def pluginData(cntlr: Cntlr):
|
|
108
|
+
pluginData = cntlr.getPluginData(PLUGIN_NAME)
|
|
109
|
+
if pluginData is None:
|
|
110
|
+
pluginData = IXBRLViewerPluginData(PLUGIN_NAME)
|
|
111
|
+
cntlr.setPluginData(pluginData)
|
|
112
|
+
return pluginData
|
|
113
|
+
|
|
114
|
+
def resetPluginData(cntlr: Cntlr):
|
|
115
|
+
pluginData(cntlr).builder = None
|
|
116
|
+
|
|
117
|
+
def processModel(cntlr: Cntlr, modelXbrl: ModelXbrl):
|
|
118
|
+
try:
|
|
119
|
+
pluginData(cntlr).builder.processModel(modelXbrl)
|
|
120
|
+
except IXBRLViewerBuilderError as ex:
|
|
121
|
+
print(ex)
|
|
122
|
+
except Exception as ex:
|
|
123
|
+
tb = traceback.format_tb(sys.exc_info()[2])
|
|
124
|
+
cntlr.addToLog(f"Exception {ex} \nTraceback {tb}", messageCode=EXCEPTION_MESSAGE_CODE)
|
|
108
125
|
|
|
109
126
|
def generateViewer(
|
|
110
127
|
cntlr: Cntlr,
|
|
111
128
|
saveViewerDest: io.BytesIO | str | None,
|
|
112
129
|
viewerURL: str | None = None,
|
|
113
130
|
showValidationMessages: bool = False,
|
|
114
|
-
useStubViewer: bool = False,
|
|
115
131
|
zipViewerOutput: bool = False,
|
|
116
132
|
features: list[str] | None = None,
|
|
117
133
|
packageDownloadURL: str | None = None,
|
|
@@ -138,13 +154,10 @@ def generateViewer(
|
|
|
138
154
|
|
|
139
155
|
viewerURL = viewerURL or DEFAULT_VIEWER_PATH
|
|
140
156
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
cntlr.addToLog(f"No
|
|
145
|
-
return
|
|
146
|
-
if cntlr.modelManager.modelXbrl.modelDocument.type not in (Type.INLINEXBRL, Type.INLINEXBRLDOCUMENTSET):
|
|
147
|
-
cntlr.addToLog(f"No inline XBRL document loaded. {abortGenerationMsg}", messageCode=ERROR_MESSAGE_CODE)
|
|
157
|
+
bldr = pluginData(cntlr).builder
|
|
158
|
+
|
|
159
|
+
if bldr.reportCount == 0:
|
|
160
|
+
cntlr.addToLog(f"No inline XBRL documents loaded. {abortGenerationMsg}", messageCode=ERROR_MESSAGE_CODE)
|
|
148
161
|
return
|
|
149
162
|
|
|
150
163
|
copyScriptPath = None
|
|
@@ -171,11 +184,10 @@ def generateViewer(
|
|
|
171
184
|
return
|
|
172
185
|
|
|
173
186
|
try:
|
|
174
|
-
viewerBuilder = IXBRLViewerBuilder(cntlr.modelManager.loadedModelXbrls)
|
|
175
187
|
if features:
|
|
176
188
|
for feature in features:
|
|
177
|
-
|
|
178
|
-
iv =
|
|
189
|
+
bldr.enableFeature(feature)
|
|
190
|
+
iv = bldr.createViewer(scriptUrl=viewerURL, showValidations=showValidationMessages, packageDownloadURL=packageDownloadURL)
|
|
179
191
|
if iv is not None:
|
|
180
192
|
iv.save(saveViewerDest, zipOutput=zipViewerOutput, copyScriptPath=copyScriptPath)
|
|
181
193
|
except IXBRLViewerBuilderError as ex:
|
|
@@ -183,6 +195,7 @@ def generateViewer(
|
|
|
183
195
|
except Exception as ex:
|
|
184
196
|
tb = traceback.format_tb(sys.exc_info()[2])
|
|
185
197
|
cntlr.addToLog(f"Exception {ex} \nTraceback {tb}", messageCode=EXCEPTION_MESSAGE_CODE)
|
|
198
|
+
resetPluginData(cntlr)
|
|
186
199
|
|
|
187
200
|
|
|
188
201
|
def getFeaturesFromOptions(options: argparse.Namespace | OptionParser):
|
|
@@ -192,15 +205,19 @@ def getFeaturesFromOptions(options: argparse.Namespace | OptionParser):
|
|
|
192
205
|
if getattr(options, f'viewer_feature_{featureConfig.key}') or getattr(options, f'viewer_feature_{featureConfig.key.lower()}')
|
|
193
206
|
]
|
|
194
207
|
|
|
208
|
+
def iXBRLViewerCommandLineXbrlRun(cntlr, options, modelXbrl, *args, **kwargs):
|
|
209
|
+
pd = pluginData(cntlr)
|
|
210
|
+
if pd.builder is None:
|
|
211
|
+
pd.builder = IXBRLViewerBuilder(cntlr, useStubViewer = options.useStubViewer)
|
|
212
|
+
processModel(cntlr, modelXbrl)
|
|
195
213
|
|
|
196
|
-
def
|
|
214
|
+
def iXBRLViewerCommandLineFilingEnd(cntlr, options, *args, **kwargs):
|
|
197
215
|
generateViewer(
|
|
198
216
|
cntlr=cntlr,
|
|
199
217
|
saveViewerDest=options.saveViewerDest or kwargs.get("responseZipStream"),
|
|
200
218
|
viewerURL=options.viewerURL,
|
|
201
219
|
copyScript=not options.viewerNoCopyScript,
|
|
202
220
|
showValidationMessages=options.validationMessages,
|
|
203
|
-
useStubViewer=options.useStubViewer,
|
|
204
221
|
zipViewerOutput=options.zipViewerOutput,
|
|
205
222
|
features=getFeaturesFromOptions(options),
|
|
206
223
|
packageDownloadURL=options.packageDownloadURL,
|
|
@@ -259,9 +276,11 @@ def commandLineOptionExtender(*args, **kwargs):
|
|
|
259
276
|
iXBRLViewerCommandLineOptionExtender(*args, **kwargs)
|
|
260
277
|
|
|
261
278
|
|
|
262
|
-
def commandLineRun(*args, **kwargs):
|
|
263
|
-
iXBRLViewerCommandLineXbrlRun(*args, **kwargs)
|
|
279
|
+
def commandLineRun(cntlr, options, modelXbrl, *args, **kwargs):
|
|
280
|
+
iXBRLViewerCommandLineXbrlRun(cntlr, options, modelXbrl, *args, **kwargs)
|
|
264
281
|
|
|
282
|
+
def commandLineFilingEnd(*args, **kwargs):
|
|
283
|
+
iXBRLViewerCommandLineFilingEnd(*args, **kwargs)
|
|
265
284
|
|
|
266
285
|
class iXBRLViewerLocalViewer(LocalViewer):
|
|
267
286
|
# plugin-specific local file handler
|
|
@@ -300,12 +319,13 @@ def guiRun(cntlr, modelXbrl, attach, *args, **kwargs):
|
|
|
300
319
|
for c in FEATURE_CONFIGS
|
|
301
320
|
if cntlr.config.setdefault(f'{CONFIG_FEATURE_PREFIX}{c.key}', False)
|
|
302
321
|
]
|
|
322
|
+
pluginData(cntlr).builder = IXBRLViewerBuilder(cntlr, useStubViewer = True)
|
|
323
|
+
processModel(cntlr, modelXbrl)
|
|
303
324
|
generateViewer(
|
|
304
325
|
cntlr=cntlr,
|
|
305
326
|
saveViewerDest=tempViewer.name,
|
|
306
327
|
viewerURL=cntlr.config.get(CONFIG_SCRIPT_URL),
|
|
307
328
|
copyScript=cntlr.config.get(CONFIG_COPY_SCRIPT, DEFAULT_COPY_SCRIPT),
|
|
308
|
-
useStubViewer=True,
|
|
309
329
|
features=features,
|
|
310
330
|
)
|
|
311
331
|
if Path(tempViewer.name, viewer_file_name).exists():
|
|
@@ -325,7 +345,7 @@ def load_plugin_url():
|
|
|
325
345
|
|
|
326
346
|
|
|
327
347
|
__pluginInfo__ = {
|
|
328
|
-
'name':
|
|
348
|
+
'name': PLUGIN_NAME,
|
|
329
349
|
'aliases': [
|
|
330
350
|
'iXBRLViewerPlugin',
|
|
331
351
|
],
|
|
@@ -335,7 +355,8 @@ __pluginInfo__ = {
|
|
|
335
355
|
'author': 'Paul Warren',
|
|
336
356
|
'copyright': 'Copyright :: Workiva Inc. :: 2019',
|
|
337
357
|
'CntlrCmdLine.Options': commandLineOptionExtender,
|
|
338
|
-
'CntlrCmdLine.
|
|
358
|
+
'CntlrCmdLine.Xbrl.Run': commandLineRun,
|
|
359
|
+
'CntlrCmdLine.Filing.End': commandLineFilingEnd,
|
|
339
360
|
'CntlrWinMain.Menu.Tools': toolsMenuExtender,
|
|
340
361
|
'CntlrWinMain.Xbrl.Loaded': guiRun,
|
|
341
362
|
}
|