ixbrl-viewer 1.4.1__py3-none-any.whl → 1.4.86__py3-none-any.whl

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.
Files changed (190) hide show
  1. iXBRLViewerPlugin/__init__.py +231 -127
  2. iXBRLViewerPlugin/_version.py +33 -3
  3. iXBRLViewerPlugin/constants.py +96 -2
  4. iXBRLViewerPlugin/featureConfig.py +8 -1
  5. iXBRLViewerPlugin/iXBRLViewer.py +356 -214
  6. iXBRLViewerPlugin/plugin.py +12 -0
  7. iXBRLViewerPlugin/ui.py +81 -50
  8. iXBRLViewerPlugin/viewer/dist/ixbrlviewer.js +1 -1
  9. iXBRLViewerPlugin/viewer/dist/ixbrlviewer.js.LICENSE.txt +12 -5
  10. iXBRLViewerPlugin/viewer/i18next-parser.config.js +1 -1
  11. iXBRLViewerPlugin/viewer/src/data/utr.json +1244 -0
  12. iXBRLViewerPlugin/viewer/src/html/fact-details.html +69 -38
  13. iXBRLViewerPlugin/viewer/src/html/footer-logo.html +4 -0
  14. iXBRLViewerPlugin/viewer/src/html/footnote-details.html +2 -2
  15. iXBRLViewerPlugin/viewer/src/html/inspector.html +352 -197
  16. iXBRLViewerPlugin/viewer/src/i18n/cy/balancetypes.json +1 -0
  17. iXBRLViewerPlugin/viewer/src/i18n/cy/currencies.json +13 -0
  18. iXBRLViewerPlugin/viewer/src/i18n/cy/datatypes.json +9 -0
  19. iXBRLViewerPlugin/viewer/src/i18n/cy/labelroles.json +24 -0
  20. iXBRLViewerPlugin/viewer/src/i18n/cy/referenceparts.json +10 -0
  21. iXBRLViewerPlugin/viewer/src/i18n/cy/scale.json +16 -0
  22. iXBRLViewerPlugin/viewer/src/i18n/cy/tooltips.json +17 -0
  23. iXBRLViewerPlugin/viewer/src/i18n/cy/translation.json +179 -0
  24. iXBRLViewerPlugin/viewer/src/i18n/da/balancetypes.json +4 -0
  25. iXBRLViewerPlugin/viewer/src/i18n/da/currencies.json +13 -0
  26. iXBRLViewerPlugin/viewer/src/i18n/da/datatypes.json +9 -0
  27. iXBRLViewerPlugin/viewer/src/i18n/da/labelroles.json +24 -0
  28. iXBRLViewerPlugin/viewer/src/i18n/da/referenceparts.json +10 -0
  29. iXBRLViewerPlugin/viewer/src/i18n/da/scale.json +15 -0
  30. iXBRLViewerPlugin/viewer/src/i18n/da/tooltips.json +17 -0
  31. iXBRLViewerPlugin/viewer/src/i18n/da/translation.json +179 -0
  32. iXBRLViewerPlugin/viewer/src/i18n/de/balancetypes.json +4 -0
  33. iXBRLViewerPlugin/viewer/src/i18n/de/currencies.json +13 -0
  34. iXBRLViewerPlugin/viewer/src/i18n/de/datatypes.json +9 -0
  35. iXBRLViewerPlugin/viewer/src/i18n/de/labelroles.json +24 -0
  36. iXBRLViewerPlugin/viewer/src/i18n/de/referenceparts.json +10 -0
  37. iXBRLViewerPlugin/viewer/src/i18n/de/scale.json +15 -0
  38. iXBRLViewerPlugin/viewer/src/i18n/de/tooltips.json +17 -0
  39. iXBRLViewerPlugin/viewer/src/i18n/de/translation.json +179 -0
  40. iXBRLViewerPlugin/viewer/src/i18n/en/balancetypes.json +4 -0
  41. iXBRLViewerPlugin/viewer/src/i18n/en/datatypes.json +10 -0
  42. iXBRLViewerPlugin/viewer/src/i18n/en/labelroles.json +4 -0
  43. iXBRLViewerPlugin/viewer/src/i18n/en/scale.json +16 -0
  44. iXBRLViewerPlugin/viewer/src/i18n/en/tooltips.json +17 -0
  45. iXBRLViewerPlugin/viewer/src/i18n/en/translation.json +73 -23
  46. iXBRLViewerPlugin/viewer/src/i18n/es/balancetypes.json +4 -0
  47. iXBRLViewerPlugin/viewer/src/i18n/es/datatypes.json +10 -0
  48. iXBRLViewerPlugin/viewer/src/i18n/es/labelroles.json +24 -0
  49. iXBRLViewerPlugin/viewer/src/i18n/es/scale.json +16 -0
  50. iXBRLViewerPlugin/viewer/src/i18n/es/tooltips.json +17 -0
  51. iXBRLViewerPlugin/viewer/src/i18n/es/translation.json +87 -37
  52. iXBRLViewerPlugin/viewer/src/i18n/fr/balancetypes.json +4 -0
  53. iXBRLViewerPlugin/viewer/src/i18n/fr/currencies.json +13 -0
  54. iXBRLViewerPlugin/viewer/src/i18n/fr/datatypes.json +9 -0
  55. iXBRLViewerPlugin/viewer/src/i18n/fr/labelroles.json +24 -0
  56. iXBRLViewerPlugin/viewer/src/i18n/fr/referenceparts.json +10 -0
  57. iXBRLViewerPlugin/viewer/src/i18n/fr/scale.json +15 -0
  58. iXBRLViewerPlugin/viewer/src/i18n/fr/tooltips.json +17 -0
  59. iXBRLViewerPlugin/viewer/src/i18n/fr/translation.json +179 -0
  60. iXBRLViewerPlugin/viewer/src/i18n/nl/balancetypes.json +4 -0
  61. iXBRLViewerPlugin/viewer/src/i18n/nl/currencies.json +13 -0
  62. iXBRLViewerPlugin/viewer/src/i18n/nl/datatypes.json +9 -0
  63. iXBRLViewerPlugin/viewer/src/i18n/nl/labelroles.json +24 -0
  64. iXBRLViewerPlugin/viewer/src/i18n/nl/referenceparts.json +10 -0
  65. iXBRLViewerPlugin/viewer/src/i18n/nl/scale.json +15 -0
  66. iXBRLViewerPlugin/viewer/src/i18n/nl/tooltips.json +17 -0
  67. iXBRLViewerPlugin/viewer/src/i18n/nl/translation.json +179 -0
  68. iXBRLViewerPlugin/viewer/src/i18n/uk/balancetypes.json +4 -0
  69. iXBRLViewerPlugin/viewer/src/i18n/uk/currencies.json +13 -0
  70. iXBRLViewerPlugin/viewer/src/i18n/uk/datatypes.json +9 -0
  71. iXBRLViewerPlugin/viewer/src/i18n/uk/labelroles.json +24 -0
  72. iXBRLViewerPlugin/viewer/src/i18n/uk/referenceparts.json +10 -0
  73. iXBRLViewerPlugin/viewer/src/i18n/uk/scale.json +15 -0
  74. iXBRLViewerPlugin/viewer/src/i18n/uk/tooltips.json +17 -0
  75. iXBRLViewerPlugin/viewer/src/i18n/uk/translation.json +179 -0
  76. iXBRLViewerPlugin/viewer/src/icons/calculator.svg +13 -0
  77. iXBRLViewerPlugin/viewer/src/icons/circle-cross.svg +11 -0
  78. iXBRLViewerPlugin/viewer/src/icons/circle-tick.svg +11 -0
  79. iXBRLViewerPlugin/viewer/src/icons/dark-mode.svg +4 -0
  80. iXBRLViewerPlugin/viewer/src/icons/dimension.svg +1 -5
  81. iXBRLViewerPlugin/viewer/src/icons/member.svg +2 -5
  82. iXBRLViewerPlugin/viewer/src/icons/multi-tag.svg +10 -0
  83. iXBRLViewerPlugin/viewer/src/img/arelle-dark.svg +179 -0
  84. iXBRLViewerPlugin/viewer/src/img/inline-viewer-dark.svg +59 -0
  85. iXBRLViewerPlugin/viewer/src/js/accordian.js +5 -4
  86. iXBRLViewerPlugin/viewer/src/js/aspect.js +29 -10
  87. iXBRLViewerPlugin/viewer/src/js/aspect.test.js +40 -31
  88. iXBRLViewerPlugin/viewer/src/js/balance.js +14 -0
  89. iXBRLViewerPlugin/viewer/src/js/calculation.js +213 -0
  90. iXBRLViewerPlugin/viewer/src/js/calculation.test.js +306 -0
  91. iXBRLViewerPlugin/viewer/src/js/calculationInspector.js +187 -0
  92. iXBRLViewerPlugin/viewer/src/js/chart.js +26 -24
  93. iXBRLViewerPlugin/viewer/src/js/chart.test.js +10 -9
  94. iXBRLViewerPlugin/viewer/src/js/concept.js +37 -4
  95. iXBRLViewerPlugin/viewer/src/js/concept.test.js +30 -6
  96. iXBRLViewerPlugin/viewer/src/js/datatype.js +20 -0
  97. iXBRLViewerPlugin/viewer/src/js/datatype.test.js +62 -0
  98. iXBRLViewerPlugin/viewer/src/js/dialog.js +6 -4
  99. iXBRLViewerPlugin/viewer/src/js/docOrderIndex.js +7 -7
  100. iXBRLViewerPlugin/viewer/src/js/fact.js +156 -59
  101. iXBRLViewerPlugin/viewer/src/js/fact.test.js +160 -29
  102. iXBRLViewerPlugin/viewer/src/js/factset.js +64 -15
  103. iXBRLViewerPlugin/viewer/src/js/factset.test.js +102 -31
  104. iXBRLViewerPlugin/viewer/src/js/footnote.js +8 -2
  105. iXBRLViewerPlugin/viewer/src/js/index.js +11 -3
  106. iXBRLViewerPlugin/viewer/src/js/inspector.js +747 -221
  107. iXBRLViewerPlugin/viewer/src/js/inspector.test.js +143 -25
  108. iXBRLViewerPlugin/viewer/src/js/interval.js +70 -0
  109. iXBRLViewerPlugin/viewer/src/js/interval.test.js +153 -0
  110. iXBRLViewerPlugin/viewer/src/js/ixbrlviewer.js +391 -262
  111. iXBRLViewerPlugin/viewer/src/js/ixbrlviewer.test.js +134 -20
  112. iXBRLViewerPlugin/viewer/src/js/ixnode.js +1 -1
  113. iXBRLViewerPlugin/viewer/src/js/menu.js +25 -7
  114. iXBRLViewerPlugin/viewer/src/js/number-matcher.js +7 -3
  115. iXBRLViewerPlugin/viewer/src/js/number-matcher.test.js +4 -0
  116. iXBRLViewerPlugin/viewer/src/js/outline.js +34 -13
  117. iXBRLViewerPlugin/viewer/src/js/outline.test.js +97 -91
  118. iXBRLViewerPlugin/viewer/src/js/period.js +0 -1
  119. iXBRLViewerPlugin/viewer/src/js/report.js +260 -351
  120. iXBRLViewerPlugin/viewer/src/js/report.test.js +95 -27
  121. iXBRLViewerPlugin/viewer/src/js/reportset.js +264 -0
  122. iXBRLViewerPlugin/viewer/src/js/reportset.test.js +357 -0
  123. iXBRLViewerPlugin/viewer/src/js/search.js +72 -38
  124. iXBRLViewerPlugin/viewer/src/js/search.test.js +184 -84
  125. iXBRLViewerPlugin/viewer/src/js/summary.js +34 -8
  126. iXBRLViewerPlugin/viewer/src/js/summary.test.js +69 -25
  127. iXBRLViewerPlugin/viewer/src/js/tableExport.js +9 -9
  128. iXBRLViewerPlugin/viewer/src/js/taxonomynamer.js +34 -0
  129. iXBRLViewerPlugin/viewer/src/js/taxonomynamer.test.js +32 -0
  130. iXBRLViewerPlugin/viewer/src/js/test-utils.js +46 -0
  131. iXBRLViewerPlugin/viewer/src/js/theme.js +50 -0
  132. iXBRLViewerPlugin/viewer/src/js/unit.js +90 -32
  133. iXBRLViewerPlugin/viewer/src/js/unit.test.js +62 -25
  134. iXBRLViewerPlugin/viewer/src/js/util.js +94 -0
  135. iXBRLViewerPlugin/viewer/src/js/util.test.js +33 -1
  136. iXBRLViewerPlugin/viewer/src/js/utr.js +27 -0
  137. iXBRLViewerPlugin/viewer/src/js/viewer.js +205 -181
  138. iXBRLViewerPlugin/viewer/src/js/viewerOptions.js +0 -2
  139. iXBRLViewerPlugin/viewer/src/less/accordian.less +10 -6
  140. iXBRLViewerPlugin/viewer/src/less/block-list.less +16 -5
  141. iXBRLViewerPlugin/viewer/src/less/calculation-inspector.less +83 -0
  142. iXBRLViewerPlugin/viewer/src/less/chart.less +8 -5
  143. iXBRLViewerPlugin/viewer/src/less/colours-dark-mode.less +40 -0
  144. iXBRLViewerPlugin/viewer/src/less/colours.less +32 -20
  145. iXBRLViewerPlugin/viewer/src/less/common.less +3 -3
  146. iXBRLViewerPlugin/viewer/src/less/components.less +6 -4
  147. iXBRLViewerPlugin/viewer/src/less/core.less +2 -0
  148. iXBRLViewerPlugin/viewer/src/less/dialog.less +21 -14
  149. iXBRLViewerPlugin/viewer/src/less/form-controls.less +33 -11
  150. iXBRLViewerPlugin/viewer/src/less/inspector.less +1045 -726
  151. iXBRLViewerPlugin/viewer/src/less/loader.less +2 -2
  152. iXBRLViewerPlugin/viewer/src/less/menu.less +33 -15
  153. iXBRLViewerPlugin/viewer/src/less/summary.less +16 -6
  154. iXBRLViewerPlugin/viewer/src/less/tabs.less +9 -9
  155. iXBRLViewerPlugin/viewer/src/less/text-block-viewer.less +2 -0
  156. iXBRLViewerPlugin/viewer/src/less/text-mixins.less +2 -1
  157. iXBRLViewerPlugin/viewer/src/less/validation-report.less +2 -3
  158. iXBRLViewerPlugin/viewer/src/less/viewer.less +105 -74
  159. iXBRLViewerPlugin/viewer/webpack.common.js +19 -9
  160. iXBRLViewerPlugin/xhtmlserialize.py +59 -45
  161. {ixbrl_viewer-1.4.1.dist-info → ixbrl_viewer-1.4.86.dist-info}/METADATA +181 -50
  162. ixbrl_viewer-1.4.86.dist-info/RECORD +217 -0
  163. {ixbrl_viewer-1.4.1.dist-info → ixbrl_viewer-1.4.86.dist-info}/WHEEL +1 -1
  164. ixbrl_viewer-1.4.1.dist-info/LICENSE → ixbrl_viewer-1.4.86.dist-info/licenses/LICENSE.md +8 -14
  165. {ixbrl_viewer-1.4.1.dist-info → ixbrl_viewer-1.4.86.dist-info}/top_level.txt +0 -1
  166. iXBRLViewerPlugin/viewer/src/js/calculations.js +0 -111
  167. iXBRLViewerPlugin/viewer/src/js/interact.min.js +0 -6
  168. ixbrl_viewer-1.4.1.dist-info/RECORD +0 -155
  169. tests/__init__.py +0 -0
  170. tests/puppeteer/framework/core_elements.js +0 -117
  171. tests/puppeteer/framework/page_objects/doc_frame.js +0 -105
  172. tests/puppeteer/framework/page_objects/fact_details_panel.js +0 -80
  173. tests/puppeteer/framework/page_objects/search_panel.js +0 -76
  174. tests/puppeteer/framework/page_objects/toolbar.js +0 -18
  175. tests/puppeteer/framework/utils.js +0 -3
  176. tests/puppeteer/framework/viewer_page.js +0 -103
  177. tests/puppeteer/puppeteer_test_run_via_intellij.jpg +0 -0
  178. tests/puppeteer/test_filings/filing_documents_smoke_test.zip +0 -0
  179. tests/puppeteer/test_filings/highlights.zip +0 -0
  180. tests/puppeteer/tests/fact_properties.test.js +0 -78
  181. tests/puppeteer/tests/highlight.test.js +0 -186
  182. tests/puppeteer/tests/search.test.js +0 -86
  183. tests/puppeteer/tools/generate.sh +0 -15
  184. tests/unit_tests/__init__.py +0 -0
  185. tests/unit_tests/iXBRLViewerPlugin/__init__.py +0 -0
  186. tests/unit_tests/iXBRLViewerPlugin/mock_arelle.py +0 -39
  187. tests/unit_tests/iXBRLViewerPlugin/test_iXBRLViewer.py +0 -641
  188. tests/unit_tests/iXBRLViewerPlugin/test_xhtmlserialize.py +0 -310
  189. {ixbrl_viewer-1.4.1.dist-info → ixbrl_viewer-1.4.86.dist-info}/entry_points.txt +0 -0
  190. {ixbrl_viewer-1.4.1.dist-info → ixbrl_viewer-1.4.86.dist-info/licenses}/NOTICE +0 -0
@@ -6,59 +6,156 @@ See COPYRIGHT.md for copyright information
6
6
  <div class="loader loading">
7
7
  <span class="text" data-i18n="inspector.loadingViewer">Loading iXBRL Viewer</span>
8
8
  </div>
9
- <div id="top-bar">
10
- <img class="header" alt="Inline Viewer logo" src="../img/inline-viewer.svg" />
11
- <div class="document-title"></div>
12
- <div class="top-bar-controls" id="toolbar-highlight-menu">
9
+ <header id="top-bar">
10
+ <img class="header only-light" alt="Inline Viewer logo" src="../img/inline-viewer.svg" />
11
+ <img class="header only-dark" alt="Inline Viewer logo" src="../img/inline-viewer-dark.svg" />
12
+ <h1 class="document-title"></h1>
13
+ <div class="top-bar-controls">
14
+ <div id="toolbar-highlight-menu" class="horizontal-menu">
13
15
  <b data-i18n="inspector.highlight">Highlight:</b><span class="highlight-key popup-trigger"><div class="popup-content" >
14
16
  <div class="arrow"></div>
15
17
  <div class="items"></div>
16
18
  </div></span><span class="content"></span>
17
- <span class="validation-warning" title="Report has validation errors"></span>
19
+ </div>
20
+ <button id="toggle-dark-mode" data-i18n="[title]toolbar.toggleDarkMode" title="Toggle dark mode"></button>
21
+ <button class="inline-button validation-warning" data-i18n="[aria-label]inspector.validationResults" aria-label="Validation Results" title="Report has validation errors"></button>
22
+ <div class="menu" id='display-options-menu'>
23
+ <button data-i18n="[title]inspector.settingsMenu" title="Settings menu" class="menu-title"></button>
24
+ <div class="content-container">
25
+ <div class="content"></div>
26
+ </div>
27
+ </div>
18
28
  </div>
19
- </div>
20
- <div id="inspector" class="no-fact-selected">
29
+ </header>
30
+ <section id="viewer-pane" data-i18n="[aria-label]viewer.ixbrlDocumentView" aria-label="iXBRL Document View">
31
+ <div class="ixds-tabs"><div class="tab-area"></div></div>
32
+ <div id="iframe-container">
33
+ <div class="zoom-in">+</div>
34
+ <div class="zoom-out">-</div>
35
+ <div class="print" title="Print Document" data-i18n="[title]inspector.printDocument"></div>
36
+ </div>
37
+ <div id="viewer-resize-handle" class="resize"></div>
38
+ <div class="resize-spacer"></div>
39
+ </section>
40
+ <section id="inspector" class="no-fact-selected" data-i18n="[aria-label]inspector.ixbrlInspector" aria-label="iXBRL Inspector">
21
41
  <div id="inspector-head">
22
- <div class="title">
23
- <h1 class="footnote-mode-off" data-i18n="inspector.factProperties">Fact Properties</h1>
24
- <h1 class="footnote-mode-only" data-i18n="inspector.footnoteProperties">Footnote Properties</h1>
25
- <div class="back search-mode-only">
26
- </div>
27
- <div class="back summary-mode-only">
28
- </div>
29
- <div class="back outline-mode-only">
42
+ <nav class="controls">
43
+ <button class="summary-button" data-i18n="[title]inspector.documentSummary" title="Document summary">
44
+ </button>
45
+ <button class="outline-button" data-i18n="[title]inspector.documentOutline" title="Document outline">
46
+ </button>
47
+ <button class="search-button" data-i18n="[title]inspector.searchTitle" title="Search">
48
+ </button>
49
+ <button class="ixbrl-prev-tag" data-i18n="[title]inspector.previousTag" title="Previous tag"></button>
50
+ <button class="ixbrl-next-tag" data-i18n="[title]inspector.nextTag" title="Next tag"></button>
51
+ </nav>
52
+ </div>
53
+
54
+ <div class="inspector-container fact-mode-only">
55
+ <div class="inspector-title">
56
+ <h2 class="footnote-mode-off" data-i18n="inspector.factProperties">Fact Properties</h2>
57
+ <h2 class="footnote-mode-only" data-i18n="inspector.footnoteProperties">Footnote Properties</h2>
58
+ </div>
59
+ <div class="inspector-body" tabindex="1">
60
+ <div class="no-fact-overlay">
61
+ <div class="no-fact-overlay-icon"></div>
62
+ <p class="title" data-i18n="inspector.noFactSelected">No Fact Selected</p>
30
63
  </div>
31
- <div class="menu" id='display-options-menu'>
32
- <div class="menu-title"></div>
33
- <div class="content-container">
34
- <div class="content"></div>
64
+ <div class="fact-selected-only">
65
+ <div class="tags">
66
+ <div class="target-document-tag"></div>
67
+ <div class="hidden-fact-tag" data-i18n="inspector.hiddenFact">Hidden Fact</div>
68
+ <div class="html-hidden-fact-tag" data-i18n="inspector.concealedFact">Concealed Fact</div>
69
+ </div>
70
+ <div class="collapsible-section">
71
+ <div class="fact-inspector collapsible-body">
72
+ </div>
73
+ </div>
74
+ <div class="footnote-mode-off">
75
+ <div class="collapsible-section anchoring">
76
+ <h3 class="collapsible-header has-tooltip"><button data-i18n="inspector.anchoring">Anchoring</button> <button class="tooltip-icon" data-tooltip-name="anchoring" data-tooltip-glossary-link="#anchoring"></button></h3>
77
+ <div class="collapsible-body">
78
+ <h4 data-i18n="inspector.widerAnchor">Wider anchor</h4>
79
+ <div class="anchors-wider">
80
+ </div>
81
+ <h4 data-i18n="inspector.narrowerAnchor">Narrower anchors</h4>
82
+ <div class="anchors-narrower">
83
+ </div>
84
+ </div>
85
+ </div>
86
+ <div class="collapsible-section">
87
+ <h3 class="collapsible-header"><button data-i18n="inspector.labels">Labels</button></h3>
88
+ <div class="collapsible-body labels">
89
+ </div>
90
+ </div>
91
+ <div class="collapsible-section">
92
+ <h3 class="collapsible-header has-tooltip"><button data-i18n="inspector.references">References</button> <button class="tooltip-icon" data-tooltip-name="references" data-tooltip-glossary-link="#reference"></button></h3>
93
+ <div class="collapsible-body references">
94
+ </div>
95
+ </div>
96
+ <div class="collapsible-section">
97
+ <h3 class="collapsible-header has-tooltip"><button data-i18n="inspector.calculations">Calculations</button> <button class="tooltip-icon" data-tooltip-name="calculations" data-tooltip-glossary-link="#calculation-tree"></button></h3>
98
+ <div class="collapsible-body calculations">
99
+ <div class="tree"></div>
100
+ </div>
101
+ </div>
102
+ <div class="collapsible-section">
103
+ <h3 class="collapsible-header"><button data-i18n="inspector.footnotes">Footnotes</button></h3>
104
+ <div class="collapsible-body footnotes fact-list">
105
+ </div>
106
+ </div>
107
+ <div class="collapsible-section footnote-facts-section">
108
+ <h3 class="collapsible-header"><button data-i18n="inspector.associatedFacts">Associated Facts</button></h3>
109
+ <div class="collapsible-body footnote-facts fact-list">
110
+ </div>
111
+ </div>
112
+ <div class="collapsible-section">
113
+ <h3 class="collapsible-header"><button data-i18n="inspector.fact-groups">Sections</button></h3>
114
+ <div class="collapsible-body fact-groups fact-list">
115
+ </div>
116
+ </div>
117
+ </div>
118
+ <div class="footnote-details footnote-mode-only">
119
+ <div class="collapsible-section">
120
+ <h3 class="collapsible-header"><button data-i18n="inspector.associatedFacts">Associated facts</button></h3>
121
+ <div class="collapsible-body footnote-facts fact-list">
122
+ </div>
123
+ </div>
35
124
  </div>
36
125
  </div>
37
126
  </div>
38
- <div class="controls">
39
- <div class="summary-button" data-i18n="[title]inspector.documentSummary" title="Document summary">
40
- </div>
41
- <div class="outline-button" data-i18n="[title]inspector.documentOutline" title="Document outline">
42
- </div>
43
- <div class="search-button" data-i18n="[title]inspector.searchTitle" title="Search">
44
- </div>
45
- <div class="next-prev">
46
- <span class="ixbrl-prev-tag" data-i18n="[title]inspector.previousTag" title="Previous tag"></span><span class="ixbrl-next-tag" data-i18n="[title]inspector.nextTag" title="Next tag"></span>
47
- </div>
127
+ </div>
128
+ <div class="inspector-container search-mode-only" role="search">
129
+ <div class="inspector-title">
130
+ <button class="back" title="Back">
131
+ </button>
132
+ <h2 data-i18n="inspector.search">Search</h2>
48
133
  </div>
49
-
50
134
  <div class="search-controls search-mode-only">
51
135
  <div class="search-input">
52
- <input id="ixbrl-search" type="text" aria-label="Search iXBRL report" disabled="disabled" />
53
- <div class="filter-toggle"></div>
136
+ <input id="ixbrl-search" type="text" data-i18n="[aria-label]inspector.searchReport" aria-label="Search iXBRL report" disabled="disabled" />
137
+ <button class="filter-toggle" data-i18n="[title]search.toggleFilterControls" title="Toggle filter controls"></button>
138
+ </div>
139
+ <div class="filter-info">
140
+ <span id="matching-facts-summary"></span>
141
+ <button class="reset" data-i18n="inspector.reset">Reset</button>
54
142
  </div>
55
143
  <div class="search-filters">
56
- <div class="reset" data-i18n="inspector.reset">Reset</div>
57
- <h3 data-i18n="inspector.filter">Filter</h3>
144
+ <h3 data-i18n="search.filter">Filter</h3>
58
145
  <div class="filter-group">
59
- <div class="control-label" data-i18n="inspector.conceptType">
146
+ <label class="control-label" data-i18n="inspector.visibility" for="search-filter-visibility">
147
+ Visibility
148
+ </label>
149
+ <select id="search-filter-visibility">
150
+ <option value="*">-</option>
151
+ <option value="visible" data-i18n="inspector.visible">Visible</option>
152
+ <option value="hidden" data-i18n="inspector.hidden">Hidden</option>
153
+ </select>
154
+ </div>
155
+ <div class="filter-group">
156
+ <label class="control-label" data-i18n="inspector.conceptType" for="search-filter-concept-type">
60
157
  Concept Type
61
- </div>
158
+ </label>
62
159
  <select id="search-filter-concept-type">
63
160
  <option value="*">-</option>
64
161
  <option value="numeric" data-i18n="inspector.numericOption">Numeric</option>
@@ -67,9 +164,9 @@ See COPYRIGHT.md for copyright information
67
164
  </div>
68
165
 
69
166
  <div class="filter-group">
70
- <div class="control-label" data-i18n="inspector.factValue">
167
+ <label class="control-label" data-i18n="inspector.factValue" for="search-filter-fact-value">
71
168
  Fact Value
72
- </div>
169
+ </label>
73
170
  <select id="search-filter-fact-value">
74
171
  <option value="*">-</option>
75
172
  <option value="negative" data-i18n="inspector.negative">Negative</option>
@@ -77,77 +174,101 @@ See COPYRIGHT.md for copyright information
77
174
  </select>
78
175
  </div>
79
176
 
80
- <div class="checkboxes">
81
- <div>
82
- <label class="checkbox">
83
- <input id="search-hidden-fact-filter" type="checkbox" checked="checked"/> <span data-i18n="inspector.hiddenFacts">Hidden Facts</span>
84
- <span class="checkmark"></span>
177
+ <div id="search-filter-period" class="collapsible-section collapsible-only collapsed">
178
+ <h3 class="collapsible-header">
179
+ <label for="search-filter-period-multiselect">
180
+ <button data-i18n="inspector.period">Period</button>
85
181
  </label>
182
+ <span class="collapsible-subheader"></span>
183
+ </h3>
184
+ <div class="collapsible-body resetable-multiselect" style="display: none;">
185
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
186
+ <select multiple="multiple" id="search-filter-period-multiselect">
187
+ </select>
86
188
  </div>
87
- <div>
88
- <label class="checkbox">
89
- <input id="search-visible-fact-filter" type="checkbox" checked="checked"/> <span data-i18n="inspector.visibleFacts">Visible Facts</span>
90
- <span class="checkmark"></span>
189
+ </div>
190
+
191
+ <div id="search-filter-namespaces" class="collapsible-section collapsible-only collapsed">
192
+ <h3 class="collapsible-header">
193
+ <label for="search-filter-namespace-multiselect">
194
+ <button data-i18n="inspector.namespaces">Namespaces</button>
91
195
  </label>
196
+ <span class="collapsible-subheader"></span>
197
+ </h3>
198
+ <div class="collapsible-body namespaces resetable-multiselect" style="display: none;">
199
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
200
+ <select multiple="multiple" id="search-filter-namespace-multiselect">
201
+ </select>
92
202
  </div>
93
203
  </div>
94
204
 
95
- <div id="search-filter-period" class="collapsible-section collapsible-only collapsed">
205
+ <div id="search-filter-datatypes" class="collapsible-section collapsible-only collapsed">
96
206
  <h3 class="collapsible-header">
97
- <span data-i18n="inspector.period">Period</span>
207
+ <label for="search-filter-datatype-multiselect">
208
+ <button data-i18n="inspector.datatypes">Types</button>
209
+ </label>
98
210
  <span class="collapsible-subheader"></span>
99
211
  </h3>
100
- <div class="collapsible-body" style="display: none;">
101
- <span class="reset-multiselect"></span>
102
- <select multiple>
212
+ <div class="collapsible-body datatypes resetable-multiselect" style="display: none;">
213
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
214
+ <select multiple="multiple" id="search-filter-datatype-multiselect">
103
215
  </select>
216
+ <div class="datatype-conflict-warning" data-i18n="search.dataTypeConflictWarning">Warning: selection conflicts with Concept Type filter</div>
104
217
  </div>
105
218
  </div>
106
219
 
107
- <div id="search-filter-namespaces" class="collapsible-section collapsible-only collapsed">
220
+ <div id="search-filter-target-document" class="collapsible-section collapsible-only collapsed">
108
221
  <h3 class="collapsible-header">
109
- <span data-i18n="inspector.namespaces">Namespaces</span>
222
+ <label for="search-filter-target-document-multiselect">
223
+ <button data-i18n="inspector.targetDocument">Target Document</button>
224
+ </label>
110
225
  <span class="collapsible-subheader"></span>
111
226
  </h3>
112
- <div class="collapsible-body namespaces" style="display: none;">
113
- <span class="reset-multiselect"></span>
114
- <select multiple>
227
+ <div class="collapsible-body target-document resetable-multiselect" style="display: none;">
228
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
229
+ <select multiple="multiple" id="search-filter-target-document-multiselect">
115
230
  </select>
116
231
  </div>
117
232
  </div>
118
233
 
119
234
  <div id="search-filter-units" class="collapsible-section collapsible-only collapsed">
120
235
  <h3 class="collapsible-header">
121
- <span data-i18n="inspector.units">Units</span>
236
+ <label for="search-filter-units-multiselect">
237
+ <button data-i18n="inspector.units">Units</button>
238
+ </label>
122
239
  <span class="collapsible-subheader"></span>
123
240
  </h3>
124
- <div class="collapsible-body units" style="display: none;">
125
- <span class="reset-multiselect"></span>
126
- <select multiple>
241
+ <div class="collapsible-body units resetable-multiselect" style="display: none;">
242
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
243
+ <select multiple="multiple" id="search-filter-units-multiselect">
127
244
  </select>
128
245
  </div>
129
246
  </div>
130
247
 
131
248
  <div id="search-filter-scales" class="collapsible-section collapsible-only collapsed">
132
249
  <h3 class="collapsible-header">
133
- <span data-i18n="inspector.scales">Scales</span>
250
+ <label for="search-filter-scales-multiselect">
251
+ <button data-i18n="inspector.scales">Scales</button>
252
+ </label>
134
253
  <span class="collapsible-subheader"></span>
135
254
  </h3>
136
- <div class="collapsible-body scales" style="display: none;">
137
- <span class="reset-multiselect"></span>
138
- <select multiple>
255
+ <div class="collapsible-body scales resetable-multiselect" style="display: none;">
256
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
257
+ <select multiple="multiple" id="search-filter-scales-multiselect">
139
258
  </select>
140
259
  </div>
141
260
  </div>
142
261
 
143
262
  <div id="search-filter-dimension-type" class="collapsible-section collapsible-only collapsed">
144
263
  <h3 class="collapsible-header">
145
- <span data-i18n="inspector.dimensions">Dimension Type</span>
264
+ <label for="search-filter-dimension-type-multiselect">
265
+ <button data-i18n="inspector.dimensions">Dimension Type</button>
266
+ </label>
146
267
  <span class="collapsible-subheader"></span>
147
268
  </h3>
148
- <div class="collapsible-body dimensions" style="display: none;">
149
- <span class="reset-multiselect"></span>
150
- <select multiple size="2">
269
+ <div class="collapsible-body dimensions resetable-multiselect" style="display: none;">
270
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
271
+ <select multiple="multiple" size="2" id="search-filter-dimension-type-multiselect">
151
272
  <option value="explicit" data-i18n="inspector.explicitDimension">Explicit Dimensions</option>
152
273
  <option value="typed" data-i18n="inspector.typedDimensions">Typed Dimensions</option>
153
274
  </select>
@@ -156,128 +277,114 @@ See COPYRIGHT.md for copyright information
156
277
 
157
278
  <div id="search-filter-calculations" class="collapsible-section collapsible-only collapsed">
158
279
  <h3 class="collapsible-header">
159
- <span data-i18n="inspector.calculations">Calculations</span>
280
+ <label for="search-filter-calculations-multiselect">
281
+ <button data-i18n="inspector.calculations">Calculations</button>
282
+ </label>
160
283
  <span class="collapsible-subheader"></span>
161
284
  </h3>
162
- <div class="collapsible-body calculations" style="display: none;">
163
- <span class="reset-multiselect"></span>
164
- <select multiple size="2">
285
+ <div class="collapsible-body calculations resetable-multiselect" style="display: none;">
286
+ <button class="reset-multiselect" title="Reset" data-i18n="[title]search.reset"></button>
287
+ <select multiple="multiple" size="2" id="search-filter-calculations-multiselect">
165
288
  <option value="summation" data-i18n="inspector.summation">Summation</option>
166
289
  <option value="contributor" data-i18n="inspector.contributor">Contributor</option>
167
290
  </select>
168
291
  </div>
169
292
  </div>
170
293
 
171
- <div class="filter-info">
172
- <span id="matching-concepts-count">?</span>
173
- <span data-i18n="inspector.matchingConcepts"> matching concept(s)</span>
294
+ <div class="checkboxes">
295
+ <div id="mandatory-fact-filter-checkbox">
296
+ <label class="checkbox">
297
+ <input id="search-mandatory-fact-filter" type="checkbox" style="display: none;"/> <span data-i18n="inspector.mandatoryFacts">Only Mandatory Facts</span>
298
+ <span class="checkmark"></span>
299
+ </label>
300
+ </div>
174
301
  </div>
175
- </div>
176
- </div>
177
- </div> <!-- inspector-head -->
178
302
 
179
- <div class="inspector-body">
180
- <div class="fact-mode-only inspector-body-fact">
181
- <div class="no-fact-overlay">
182
- <div class="no-fact-overlay-icon"></div>
183
- <p class="title" data-i18n="inspector.noFactSelected">No Fact Selected</p>
184
303
  </div>
185
- <div class="fact-selected-only">
186
- <div class="hidden-fact-tag" data-i18n="inspector.hiddenFact">Hidden Fact</div>
187
- <div class="html-hidden-fact-tag" data-i18n="inspector.concealedFact">Concealed Fact</div>
188
- <div class="collapsible-section">
189
- <div class="fact-inspector collapsible-body">
190
- </div>
191
- </div>
192
- <div class="footnote-mode-off">
193
- <div class="collapsible-section anchoring">
194
- <h3 class="collapsible-header" data-i18n="inspector.anchoring">Anchoring</h3>
195
- <div class="collapsible-body">
196
- <h4 data-i18n="inspector.widerAnchor">Wider anchor</h4>
197
- <div class="anchors-wider">
198
- </div>
199
- <h4 data-i18n="inspector.narrowerAnchor">Narrower anchors</h4>
200
- <div class="anchors-narrower">
201
- </div>
202
- </div>
203
- </div>
204
- <div class="collapsible-section">
205
- <h3 class="collapsible-header" data-i18n="inspector.references">References</h3>
206
- <div class="collapsible-body references">
207
- </div>
208
- </div>
209
- <div class="collapsible-section">
210
- <h3 class="collapsible-header" data-i18n="inspector.calculations">Calculations</h3>
211
- <div class="collapsible-body calculations">
212
- <div class="tree"></div>
213
- </div>
214
- </div>
215
- <div class="collapsible-section">
216
- <h3 class="collapsible-header" data-i18n="inspector.footnotes">Footnotes</h3>
217
- <div class="collapsible-body footnotes fact-list">
218
- </div>
219
- </div>
220
- <div class="collapsible-section footnote-facts-section">
221
- <h3 class="collapsible-header" data-i18n="inspector.associatedFacts">Associated Facts</h3>
222
- <div class="collapsible-body footnote-facts fact-list">
223
- </div>
224
- </div>
225
- <div class="collapsible-section">
226
- <h3 class="collapsible-header" data-i18n="inspector.fact-groups">Sections</h3>
227
- <div class="collapsible-body fact-groups fact-list">
228
- </div>
229
- </div>
304
+ </div> <!-- search controls -->
305
+
306
+ <div class="inspector-body">
307
+
308
+ <section class="search-results search-mode-only" data-i18n="[aria-label]inspector.searchResults" aria-label="Search results">
309
+ <div class="results fact-list">
230
310
  </div>
231
- <div class="footnote-details footnote-mode-only">
232
- <div class="collapsible-section">
233
- <h3 class="collapsible-header" data-i18n="inspector.associatedFacts">Associated facts</h3>
234
- <div class="collapsible-body footnote-facts fact-list">
235
- </div>
236
- </div>
311
+ <div class="search-overlay">
312
+ <div class="search-overlay-icon"></div>
313
+ <div class="search-overlay-text search-ready-only"><p class="title" data-i18n="inspector.factSearch">Fact Search</p><p class="text">Please enter some search terms</p></div>
314
+ <div class="search-overlay-text search-not-ready-only"><p class="title" data-i18n="inspector.factSearch">Fact Search</p><p class="text">Please wait - building index...</p></div>
237
315
  </div>
238
- </div>
239
- </div>
240
-
241
- <div class="search-results search-mode-only">
242
- <div class="results fact-list">
243
- </div>
244
- <div class="search-overlay">
245
- <div class="search-overlay-icon"></div>
246
- <div class="search-overlay-text search-ready-only"><p class="title" data-i18n="inspector.factSearch">Fact Search</p><p class="text">Please enter some search terms</p></div>
247
- <div class="search-overlay-text search-not-ready-only"><p class="title" data-i18n="inspector.factSearch">Fact Search</p><p class="text">Please wait - building index...</p></div>
248
- </div>
249
- </div>
316
+ </section>
317
+ </div>
318
+ </div>
250
319
 
251
- <div class="outline outline-mode-only">
252
- <div class="no-outline-overlay">
253
- <div class="no-outline-overlay-icon"></div>
254
- <p class="title" data-i18n="inspector.outlineUnavailable">Outline Unavailable</p>
255
- </div>
256
- <div class="body">
257
- </div>
320
+ <div class="inspector-container summary-mode-only summary">
321
+ <div class="inspector-title">
322
+ <button class="back" title="Back"></button>
323
+ <h2 data-i18n="inspector.documentSummary">Document Summary</h2>
258
324
  </div>
259
-
260
- <div class="summary summary-mode-only">
325
+ <div class="inspector-body">
261
326
  <div class="body">
262
327
  <div class="collapsible-section fact-summary">
263
- <h3 class="collapsible-header" data-i18n="inspector.summary.fact.header">Fact Summary</h3>
328
+ <h3 class="collapsible-header"><button data-i18n="inspector.summary.fact.header">Fact Summary</button></h3>
264
329
  <div class="collapsible-body">
265
- <div class="total-facts-value">
266
- <span class="total-facts-title" data-i18n="inspector.summary.fact.title">Total Facts:</span>
267
- </div>
330
+ <table class="property-table numeric">
331
+ <tr class="hidden-facts">
332
+ <th class="has-tooltip">
333
+ <span data-i18n="inspector.summary.fact.hidden">Hidden facts</span>
334
+ <button class="tooltip-icon" data-tooltip-name="hiddenFacts"></button>
335
+ </th>
336
+ <td>
337
+ <button class="hidden-facts-value"></button>
338
+ </td>
339
+ </tr>
340
+ <tr class="mandatory-facts" id="mandatory-facts-row" style="display: none;">
341
+ <th class="has-tooltip">
342
+ <span data-i18n="inspector.summary.fact.mandatory">Mandatory Facts:</span>
343
+ <button class="tooltip-icon" data-tooltip-name="mandatoryFacts"></button>
344
+ <td>
345
+ <button class="mandatory-facts-value"></button>
346
+ </td>
347
+ </tr>
348
+ <tr class="total-facts">
349
+ <th>
350
+ <span data-i18n="inspector.summary.fact.total">Total facts</span>
351
+ </th>
352
+ <td>
353
+ <button class="total-facts-value"></button>
354
+ </td>
355
+ </tr>
356
+ </table>
268
357
  </div>
269
358
  </div>
270
359
  <div class="collapsible-section tag-summary">
271
- <h3 class="collapsible-header" data-i18n="inspector.summary.tag.header">Tag Summary</h3>
360
+ <h3 class="collapsible-header"><button data-i18n="inspector.summary.tag.header">Tag Summary</button></h3>
272
361
  <div class="collapsible-body">
273
362
  <div class="tag-summary-body">
274
363
  <table>
275
364
  <thead>
276
365
  <tr>
277
- <th scope="col" class="namespace"><div data-i18n="inspector.summary.tag.colNamespace">Namespace</div></th>
278
- <th scope="col" class="figure"><div data-i18n="inspector.summary.tag.colPrimaryItems">Primary Items</div></th>
279
- <th scope="col" class="figure"><div data-i18n="inspector.summary.tag.colDimensions">Dimensions</div></th>
280
- <th scope="col" class="figure"><div data-i18n="inspector.summary.tag.colMembers">Members</div></th>
366
+ <th scope="col" class="namespace has-tooltip">
367
+ <span data-i18n="inspector.summary.tag.colNamespace">Namespace</span>
368
+ <button class="tooltip-icon" data-tooltip-name="namespace"></button>
369
+ </th>
370
+ <th scope="col" class="figure">
371
+ <div class="has-tooltip">
372
+ <span data-i18n="inspector.summary.tag.colConcepts">Concepts</span>
373
+ <button class="tooltip-icon" data-tooltip-name="conceptsCount"></button>
374
+ </div>
375
+ </th>
376
+ <th scope="col" class="figure">
377
+ <div class="has-tooltip">
378
+ <span data-i18n="inspector.summary.tag.colDimensions">Dimensions</span>
379
+ <button class="tooltip-icon" data-tooltip-name="dimensionsCount"></button>
380
+ </div>
381
+ </th>
382
+ <th scope="col" class="figure">
383
+ <div class="has-tooltip">
384
+ <span data-i18n="inspector.summary.tag.colMembers">Members</span>
385
+ <button class="tooltip-icon" data-tooltip-name="membersCount"></button>
386
+ </div>
387
+ </th>
281
388
  <th scope="col" class="figure"><div data-i18n="inspector.summary.tag.colTotal">Total</div></th>
282
389
  </tr>
283
390
  </thead>
@@ -293,7 +400,12 @@ See COPYRIGHT.md for copyright information
293
400
  </div>
294
401
  </div>
295
402
  <div class="collapsible-section files-summary">
296
- <h3 class="collapsible-header" data-i18n="inspector.summary.file.header">File Summary</h3>
403
+ <h3 class="collapsible-header">
404
+ <div class="has-tooltip">
405
+ <button data-i18n="inspector.summary.file.header">File Summary</button>
406
+ <button class="tooltip-icon" data-tooltip-name="fileSummary"></button>
407
+ </div>
408
+ </h3>
297
409
  <div class="collapsible-body">
298
410
  <div class="file-summary-container">
299
411
  <div class="files inline-docs">
@@ -331,31 +443,57 @@ See COPYRIGHT.md for copyright information
331
443
  </div>
332
444
  </div>
333
445
  </div>
446
+ <div class="collapsible-section report-creation">
447
+ <h3 class="collapsible-header" data-i18n="inspector.summary.reportCreation">Report Creation</h3>
448
+ <div class="collapsible-body">
449
+ <ul></ul>
450
+ </div>
451
+ </div>
334
452
  </div>
335
- </div>
453
+ </div> <!-- inspector-body -->
454
+ </div> <!-- summary -->
336
455
 
456
+ <div class="inspector-container outline-mode-only outline">
457
+ <div class="inspector-title">
458
+ <button class="back" title="Back"></button>
459
+ <h2 data-i18n="inspector.documentOutline">Document Outline</h2>
460
+ </div>
461
+ <div class="inspector-body">
462
+ <div class="no-outline-overlay">
463
+ <div class="no-outline-overlay-icon"></div>
464
+ <p class="title" data-i18n="inspector.outlineUnavailable">Outline Unavailable</p>
465
+ </div>
466
+ <div class="body">
467
+ </div>
468
+ </div>
337
469
  </div>
338
- <div class="inspector-foot powered-by">
339
- <a href="https://arelle.org" target="_blank"><img alt="Arelle logo (opens in new window)" src="../img/arelle.svg" /></a>
340
- <div class="version"></div>
341
- </div>
470
+ <footer class="inspector-foot powered-by">
471
+ <div id="footer-logo"></div>
472
+ <div class="version"></div>
473
+ </footer>
342
474
  <div class="failed-to-load-mask"></div>
475
+ </section>
476
+ <div id="tooltip" class="tooltip">
477
+ <span class="tooltip-text"></span>
478
+ <div class="glossary-link">
479
+ <a target="_blank" href="#" data-i18n="inspector.xbrlGlossaryOpensInNewTab"></a>
480
+ </div>
343
481
  </div>
344
482
  <div class="dialog-mask">
345
483
  </div>
346
484
  <div id="dialog-container"></div>
347
485
  <div id="dialog-templates">
348
- <div class="dialog full-screen chart">
349
- <div class="close"></div>
350
- <div class="contents">
486
+ <dialog class="dialog full-screen chart" role="dialog" data-i18n="[aria-label]chart.comparisonChart" aria-label="Comparison chart">
487
+ <button title="Close" data-i18n="[title]dialog.close" class="close"></button>
488
+ <div class="contents" role="figure" data-i18n="[aria-label]chart.comparisonChart" aria-label="Comparison chart">
351
489
  <div class="chart-container" ><canvas id='chart-canvas'></canvas></div>
352
490
  <div class="other-aspects"></div>
353
491
  </div>
354
- </div>
355
- <div class="dialog validation-report">
356
- <div class="close"></div>
492
+ </dialog>
493
+ <dialog class="dialog validation-report" role="dialog" aria-labelledby="validation-results-title">
494
+ <button title="Close" data-i18n="[title]dialog.close" class="close"></button>
357
495
  <div class="contents">
358
- <h2 data-i18n="inspector.validationResults">Validation results</h2>
496
+ <h2 id="validation-results-title" data-i18n="inspector.validationResults">Validation results</h2>
359
497
  <table>
360
498
  <thead>
361
499
  <th data-i18n="inspector.validationSeverity">Severity</th>
@@ -369,11 +507,38 @@ See COPYRIGHT.md for copyright information
369
507
  <div class="buttons">
370
508
  </div>
371
509
  </div>
372
- </div>
373
- <div class="dialog text-block-viewer">
374
- <div class="close"></div>
510
+ </dialog>
511
+ <dialog class="dialog calculation-inspector" role="dialog" aria-labelledby="calculation-inspector-title">
512
+ <button title="Close" data-i18n="[title]dialog.close" class="close"></button>
513
+ <div class="contents">
514
+ <h2 id="calculation-inspector-title" data-i18n="inspector.calculationDetails">Calculation details</h2>
515
+ <table class="calculation-trace">
516
+ <thead>
517
+ <tr>
518
+ <th class="weight"></th>
519
+ <th class="line-item" data-i18n="calculation.concept">Concept</th>
520
+ <th class="value-column" data-i18n="calculation.reported-value">Reported Value</th>
521
+ <th class="icons"></th>
522
+ <th class="value-column calc11-only" data-i18n="calculation.minimum">Minimum</th>
523
+ <th class="value-column calc11-only" data-i18n="calculation.maximum">Maximum</th>
524
+ </tr>
525
+ </thead>
526
+ <tbody>
527
+ </tbody>
528
+ <tfoot>
529
+ <tr>
530
+ <td colspan="6" class="status"><span class="icon"></span> <span class="message"></span></td>
531
+ </tr>
532
+ </tfoot>
533
+ </table>
534
+ <div class="buttons">
535
+ </div>
536
+ </div>
537
+ </dialog>
538
+ <dialog class="dialog text-block-viewer" role="dialog" aria-labelledby="text-block-viewer-title">
539
+ <button title="Close" data-i18n="[title]dialog.close" class="close"></button>
375
540
  <div class="contents">
376
- <h2 class="title"></h2>
541
+ <h2 id="text-block-viewer-title" class="title"></h2>
377
542
  <iframe id="text-block-viewer-iframe"></iframe>
378
543
  <div class="controls">
379
544
  <label class="checkbox">
@@ -384,26 +549,16 @@ See COPYRIGHT.md for copyright information
384
549
  <div class="buttons">
385
550
  </div>
386
551
  </div>
387
- </div>
388
- <div class="dialog message-box">
389
- <div class="close"></div>
552
+ </dialog>
553
+ <dialog class="dialog message-box" role="dialog" aria-labelledby="message-box-title">
554
+ <button title="Close" data-i18n="[title]dialog.close" class="close"></button>
390
555
  <div class="contents">
391
- <h2 class="title"></h2>
556
+ <h2 id="message-box-title" class="title"></h2>
392
557
  <div class="message">
393
558
  </div>
394
559
  <div class="buttons">
395
560
  </div>
396
561
  </div>
397
562
  </div>
398
- </div>
399
- <div id="viewer-pane" >
400
- <div class="ixds-tabs"><div class="tab-area"></div></div>
401
- <div id="iframe-container">
402
- <div class="zoom-in">+</div>
403
- <div class="zoom-out">-</div>
404
- <div class="print" title="Print Document" data-i18n="[title]inspector.printDocument"></div>
405
- </div>
406
- <div class="resize"></div>
407
- <div class="resize-spacer"></div>
408
- </div>
563
+ </dialog>
409
564
  </div>