@datagrok/helm 2.3.2 → 2.3.4
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/CHANGELOG.md +20 -0
- package/dist/package-test.js +1 -1
- package/dist/package-test.js.map +1 -1
- package/dist/package.js +1 -1
- package/dist/package.js.map +1 -1
- package/package.json +4 -4
- package/src/cell-renderer.ts +5 -4
- package/src/helm-helper.ts +6 -6
- package/src/helm-monomer-placer.ts +1 -1
- package/src/helm-web-editor.ts +5 -5
- package/src/package-test.ts +0 -1
- package/src/package-utils.ts +211 -69
- package/src/package.ts +10 -71
- package/src/tests/findMonomers-tests.ts +2 -1
- package/src/tests/get-monomer-tests.ts +1 -49
- package/src/tests/helm-input-tests.ts +31 -20
- package/src/utils/get-monomer.ts +49 -1
- package/src/utils/helm-grid-cell-renderer.ts +8 -9
- package/src/utils/index.ts +2 -3
- package/src/widgets/helm-input.ts +4 -4
- package/vendor/dojo-1.10.10/dijit/BackgroundIframe.js +63 -0
- package/vendor/dojo-1.10.10/dijit/BackgroundIframe.js.uncompressed.js +116 -0
- package/vendor/dojo-1.10.10/dijit/Destroyable.js +35 -0
- package/vendor/dojo-1.10.10/dijit/Destroyable.js.uncompressed.js +83 -0
- package/vendor/dojo-1.10.10/dijit/Tooltip.js +240 -0
- package/vendor/dojo-1.10.10/dijit/Tooltip.js.uncompressed.js +612 -0
- package/vendor/dojo-1.10.10/dijit/Viewport.js +44 -0
- package/vendor/dojo-1.10.10/dijit/Viewport.js.uncompressed.js +87 -0
- package/vendor/dojo-1.10.10/dijit/WidgetSet.js +76 -0
- package/vendor/dojo-1.10.10/dijit/WidgetSet.js.uncompressed.js +247 -0
- package/vendor/dojo-1.10.10/dijit/_AttachMixin.js +94 -0
- package/vendor/dojo-1.10.10/dijit/_AttachMixin.js.uncompressed.js +238 -0
- package/vendor/dojo-1.10.10/dijit/_Contained.js +17 -0
- package/vendor/dojo-1.10.10/dijit/_Contained.js.uncompressed.js +56 -0
- package/vendor/dojo-1.10.10/dijit/_Container.js +47 -0
- package/vendor/dojo-1.10.10/dijit/_Container.js.uncompressed.js +108 -0
- package/vendor/dojo-1.10.10/dijit/_CssStateMixin.js +198 -0
- package/vendor/dojo-1.10.10/dijit/_CssStateMixin.js.uncompressed.js +372 -0
- package/vendor/dojo-1.10.10/dijit/_FocusMixin.js +11 -0
- package/vendor/dojo-1.10.10/dijit/_FocusMixin.js.uncompressed.js +66 -0
- package/vendor/dojo-1.10.10/dijit/_HasDropDown.js +188 -0
- package/vendor/dojo-1.10.10/dijit/_HasDropDown.js.uncompressed.js +472 -0
- package/vendor/dojo-1.10.10/dijit/_OnDijitClickMixin.js +8 -0
- package/vendor/dojo-1.10.10/dijit/_OnDijitClickMixin.js.uncompressed.js +31 -0
- package/vendor/dojo-1.10.10/dijit/_TemplatedMixin.js +90 -0
- package/vendor/dojo-1.10.10/dijit/_TemplatedMixin.js.uncompressed.js +205 -0
- package/vendor/dojo-1.10.10/dijit/_Widget.js +66 -0
- package/vendor/dojo-1.10.10/dijit/_Widget.js.uncompressed.js +352 -0
- package/vendor/dojo-1.10.10/dijit/_WidgetBase.js +353 -0
- package/vendor/dojo-1.10.10/dijit/_WidgetBase.js.uncompressed.js +1200 -0
- package/vendor/dojo-1.10.10/dijit/_base/focus.js +68 -0
- package/vendor/dojo-1.10.10/dijit/_base/focus.js.uncompressed.js +207 -0
- package/vendor/dojo-1.10.10/dijit/_base/manager.js +10 -0
- package/vendor/dojo-1.10.10/dijit/_base/manager.js.uncompressed.js +35 -0
- package/vendor/dojo-1.10.10/dijit/_base/place.js +52 -0
- package/vendor/dojo-1.10.10/dijit/_base/place.js.uncompressed.js +131 -0
- package/vendor/dojo-1.10.10/dijit/_base/popup.js +23 -0
- package/vendor/dojo-1.10.10/dijit/_base/popup.js.uncompressed.js +58 -0
- package/vendor/dojo-1.10.10/dijit/_base/scroll.js +6 -0
- package/vendor/dojo-1.10.10/dijit/_base/scroll.js.uncompressed.js +22 -0
- package/vendor/dojo-1.10.10/dijit/_base/sniff.js +3 -0
- package/vendor/dojo-1.10.10/dijit/_base/sniff.js.uncompressed.js +12 -0
- package/vendor/dojo-1.10.10/dijit/_base/typematic.js +3 -0
- package/vendor/dojo-1.10.10/dijit/_base/typematic.js.uncompressed.js +10 -0
- package/vendor/dojo-1.10.10/dijit/_base/wai.js +32 -0
- package/vendor/dojo-1.10.10/dijit/_base/wai.js.uncompressed.js +109 -0
- package/vendor/dojo-1.10.10/dijit/_base/window.js +6 -0
- package/vendor/dojo-1.10.10/dijit/_base/window.js.uncompressed.js +18 -0
- package/vendor/dojo-1.10.10/dijit/_base.js +4 -0
- package/vendor/dojo-1.10.10/dijit/a11y.js +109 -0
- package/vendor/dojo-1.10.10/dijit/a11y.js.uncompressed.js +191 -0
- package/vendor/dojo-1.10.10/dijit/a11yclick.js +66 -0
- package/vendor/dojo-1.10.10/dijit/a11yclick.js.uncompressed.js +139 -0
- package/vendor/dojo-1.10.10/dijit/focus.js +188 -0
- package/vendor/dojo-1.10.10/dijit/focus.js.uncompressed.js +371 -0
- package/vendor/dojo-1.10.10/dijit/form/Button.js +49 -0
- package/vendor/dojo-1.10.10/dijit/form/Button.js.uncompressed.js +130 -0
- package/vendor/dojo-1.10.10/dijit/form/ComboBox.js +4 -0
- package/vendor/dojo-1.10.10/dijit/form/ComboBox.js.uncompressed.js +27 -0
- package/vendor/dojo-1.10.10/dijit/form/ComboButton.js +21 -0
- package/vendor/dojo-1.10.10/dijit/form/ComboButton.js.uncompressed.js +86 -0
- package/vendor/dojo-1.10.10/dijit/form/DropDownButton.js +38 -0
- package/vendor/dojo-1.10.10/dijit/form/DropDownButton.js.uncompressed.js +102 -0
- package/vendor/dojo-1.10.10/dijit/form/ToggleButton.js +7 -0
- package/vendor/dojo-1.10.10/dijit/form/ToggleButton.js.uncompressed.js +26 -0
- package/vendor/dojo-1.10.10/dijit/form/_ButtonMixin.js +50 -0
- package/vendor/dojo-1.10.10/dijit/form/_ButtonMixin.js.uncompressed.js +116 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormValueMixin.js +26 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormValueMixin.js.uncompressed.js +81 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormValueWidget.js +24 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormValueWidget.js.uncompressed.js +51 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormWidget.js +22 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormWidget.js.uncompressed.js +67 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormWidgetMixin.js +111 -0
- package/vendor/dojo-1.10.10/dijit/form/_FormWidgetMixin.js.uncompressed.js +254 -0
- package/vendor/dojo-1.10.10/dijit/form/_ToggleButtonMixin.js +32 -0
- package/vendor/dojo-1.10.10/dijit/form/_ToggleButtonMixin.js.uncompressed.js +69 -0
- package/vendor/dojo-1.10.10/dijit/hccss.js +9 -0
- package/vendor/dojo-1.10.10/dijit/hccss.js.uncompressed.js +21 -0
- package/vendor/dojo-1.10.10/dijit/layout/AccordionContainer.js +215 -0
- package/vendor/dojo-1.10.10/dijit/layout/AccordionContainer.js.uncompressed.js +550 -0
- package/vendor/dojo-1.10.10/dijit/layout/AccordionPane.js +7 -0
- package/vendor/dojo-1.10.10/dijit/layout/AccordionPane.js.uncompressed.js +25 -0
- package/vendor/dojo-1.10.10/dijit/layout/ContentPane.js +235 -0
- package/vendor/dojo-1.10.10/dijit/layout/ContentPane.js.uncompressed.js +653 -0
- package/vendor/dojo-1.10.10/dijit/layout/StackContainer.js +171 -0
- package/vendor/dojo-1.10.10/dijit/layout/StackContainer.js.uncompressed.js +411 -0
- package/vendor/dojo-1.10.10/dijit/layout/StackController.js +194 -0
- package/vendor/dojo-1.10.10/dijit/layout/StackController.js.uncompressed.js +410 -0
- package/vendor/dojo-1.10.10/dijit/layout/_ContentPaneResizeMixin.js +99 -0
- package/vendor/dojo-1.10.10/dijit/layout/_ContentPaneResizeMixin.js.uncompressed.js +236 -0
- package/vendor/dojo-1.10.10/dijit/layout/_LayoutWidget.js +47 -0
- package/vendor/dojo-1.10.10/dijit/layout/_LayoutWidget.js.uncompressed.js +190 -0
- package/vendor/dojo-1.10.10/dijit/layout/utils.js +77 -0
- package/vendor/dojo-1.10.10/dijit/layout/utils.js.uncompressed.js +151 -0
- package/vendor/dojo-1.10.10/dijit/main.js +4 -0
- package/vendor/dojo-1.10.10/dijit/main.js.uncompressed.js +16 -0
- package/vendor/dojo-1.10.10/dijit/nls/dijit-all_en-us.js +2 -0
- package/vendor/dojo-1.10.10/dijit/nls/dijit-all_en-us.js.uncompressed.js +21 -0
- package/vendor/dojo-1.10.10/dijit/nls/loading.js +2 -0
- package/vendor/dojo-1.10.10/dijit/nls/loading.js.uncompressed.js +47 -0
- package/vendor/dojo-1.10.10/dijit/place.js +142 -0
- package/vendor/dojo-1.10.10/dijit/place.js.uncompressed.js +407 -0
- package/vendor/dojo-1.10.10/dijit/popup.js +162 -0
- package/vendor/dojo-1.10.10/dijit/popup.js.uncompressed.js +441 -0
- package/vendor/dojo-1.10.10/dijit/registry.js +79 -0
- package/vendor/dojo-1.10.10/dijit/registry.js.uncompressed.js +159 -0
- package/vendor/dojo-1.10.10/dijit/selection.js +364 -0
- package/vendor/dojo-1.10.10/dijit/selection.js.uncompressed.js +525 -0
- package/vendor/dojo-1.10.10/dijit/typematic.js +96 -0
- package/vendor/dojo-1.10.10/dijit/typematic.js.uncompressed.js +211 -0
- package/vendor/dojo-1.10.10/dojo/NodeList-manipulate.js +195 -0
- package/vendor/dojo-1.10.10/dojo/NodeList-manipulate.js.uncompressed.js +761 -0
- package/vendor/dojo-1.10.10/dojo/Stateful.js +90 -0
- package/vendor/dojo-1.10.10/dojo/Stateful.js.uncompressed.js +218 -0
- package/vendor/dojo-1.10.10/dojo/_base/url.js +87 -0
- package/vendor/dojo-1.10.10/dojo/_base/url.js.uncompressed.js +109 -0
- package/vendor/dojo-1.10.10/dojo/cache.js +9 -0
- package/vendor/dojo-1.10.10/dojo/cache.js.uncompressed.js +7 -0
- package/vendor/dojo-1.10.10/dojo/colors.js +74 -0
- package/vendor/dojo-1.10.10/dojo/colors.js.uncompressed.js +232 -0
- package/vendor/dojo-1.10.10/dojo/cookie.js +48 -0
- package/vendor/dojo-1.10.10/dojo/cookie.js.uncompressed.js +98 -0
- package/vendor/dojo-1.10.10/dojo/date/stamp.js +82 -0
- package/vendor/dojo-1.10.10/dojo/date/stamp.js.uncompressed.js +144 -0
- package/vendor/dojo-1.10.10/dojo/dojo.js +7 -0
- package/vendor/dojo-1.10.10/dojo/dojo.js.uncompressed.js +18680 -0
- package/vendor/dojo-1.10.10/dojo/fx/Toggler.js +27 -0
- package/vendor/dojo-1.10.10/dojo/fx/Toggler.js.uncompressed.js +101 -0
- package/vendor/dojo-1.10.10/dojo/fx/easing.js +165 -0
- package/vendor/dojo-1.10.10/dojo/fx/easing.js.uncompressed.js +276 -0
- package/vendor/dojo-1.10.10/dojo/fx.js +271 -0
- package/vendor/dojo-1.10.10/dojo/fx.js.uncompressed.js +443 -0
- package/vendor/dojo-1.10.10/dojo/hccss.js +26 -0
- package/vendor/dojo-1.10.10/dojo/hccss.js.uncompressed.js +52 -0
- package/vendor/dojo-1.10.10/dojo/html.js +161 -0
- package/vendor/dojo-1.10.10/dojo/html.js.uncompressed.js +370 -0
- package/vendor/dojo-1.10.10/dojo/io/iframe.js +71 -0
- package/vendor/dojo-1.10.10/dojo/io/iframe.js.uncompressed.js +190 -0
- package/vendor/dojo-1.10.10/dojo/io/script.js +112 -0
- package/vendor/dojo-1.10.10/dojo/io/script.js.uncompressed.js +280 -0
- package/vendor/dojo-1.10.10/dojo/parser.js +437 -0
- package/vendor/dojo-1.10.10/dojo/parser.js.uncompressed.js +915 -0
- package/vendor/dojo-1.10.10/dojo/promise/all.js +59 -0
- package/vendor/dojo-1.10.10/dojo/promise/all.js.uncompressed.js +77 -0
- package/vendor/dojo-1.10.10/dojo/regexp.js +32 -0
- package/vendor/dojo-1.10.10/dojo/regexp.js.uncompressed.js +70 -0
- package/vendor/dojo-1.10.10/dojo/request/iframe.js +291 -0
- package/vendor/dojo-1.10.10/dojo/request/iframe.js.uncompressed.js +438 -0
- package/vendor/dojo-1.10.10/dojo/request/script.js +129 -0
- package/vendor/dojo-1.10.10/dojo/request/script.js.uncompressed.js +237 -0
- package/vendor/dojo-1.10.10/dojo/require.js +11 -0
- package/vendor/dojo-1.10.10/dojo/require.js.uncompressed.js +7 -0
- package/vendor/dojo-1.10.10/dojo/resources/blank.gif +0 -0
- package/vendor/dojo-1.10.10/dojo/string.js +67 -0
- package/vendor/dojo-1.10.10/dojo/string.js.uncompressed.js +181 -0
- package/vendor/dojo-1.10.10/dojo/touch.js +191 -0
- package/vendor/dojo-1.10.10/dojo/touch.js.uncompressed.js +468 -0
- package/vendor/dojo-1.10.10/dojo/uacss.js +36 -0
- package/vendor/dojo-1.10.10/dojo/uacss.js.uncompressed.js +85 -0
- package/vendor/dojo-1.10.10/dojo/window.js +141 -0
- package/vendor/dojo-1.10.10/dojo/window.js.uncompressed.js +241 -0
- package/vendor/dojo-1.10.10/dojox/charting/Chart.js +626 -0
- package/vendor/dojo-1.10.10/dojox/charting/Chart.js.uncompressed.js +1220 -0
- package/vendor/dojo-1.10.10/dojox/charting/Chart2D.js +5 -0
- package/vendor/dojo-1.10.10/dojox/charting/Chart2D.js.uncompressed.js +16 -0
- package/vendor/dojo-1.10.10/dojox/charting/Element.js +247 -0
- package/vendor/dojo-1.10.10/dojox/charting/Element.js.uncompressed.js +402 -0
- package/vendor/dojo-1.10.10/dojox/charting/Series.js +24 -0
- package/vendor/dojo-1.10.10/dojox/charting/Series.js.uncompressed.js +58 -0
- package/vendor/dojo-1.10.10/dojox/charting/SimpleTheme.js +191 -0
- package/vendor/dojo-1.10.10/dojox/charting/SimpleTheme.js.uncompressed.js +577 -0
- package/vendor/dojo-1.10.10/dojox/charting/Theme.js +42 -0
- package/vendor/dojo-1.10.10/dojox/charting/Theme.js.uncompressed.js +120 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Base.js +11 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Base.js.uncompressed.js +36 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Highlight.js +77 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Highlight.js.uncompressed.js +144 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Magnify.js +58 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Magnify.js.uncompressed.js +123 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/MoveSlice.js +54 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/MoveSlice.js.uncompressed.js +124 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/PlotAction.js +28 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/PlotAction.js.uncompressed.js +74 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Tooltip.js +116 -0
- package/vendor/dojo-1.10.10/dojox/charting/action2d/Tooltip.js.uncompressed.js +178 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/Base.js +24 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/Base.js.uncompressed.js +83 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/Default.js +557 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/Default.js.uncompressed.js +980 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/Invisible.js +65 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/Invisible.js.uncompressed.js +224 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/common.js +91 -0
- package/vendor/dojo-1.10.10/dojox/charting/axis2d/common.js.uncompressed.js +164 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Areas.js +7 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Areas.js.uncompressed.js +14 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Bars.js +168 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Bars.js.uncompressed.js +311 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Base.js +61 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Base.js.uncompressed.js +161 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Bubble.js +141 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Bubble.js.uncompressed.js +242 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Candlesticks.js +126 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Candlesticks.js.uncompressed.js +243 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/CartesianBase.js +108 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/CartesianBase.js.uncompressed.js +290 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/ClusteredBars.js +13 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/ClusteredBars.js.uncompressed.js +14 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/ClusteredColumns.js +13 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/ClusteredColumns.js.uncompressed.js +14 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Columns.js +153 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Columns.js.uncompressed.js +249 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Default.js +253 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Default.js.uncompressed.js +472 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Grid.js +182 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Grid.js.uncompressed.js +356 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Lines.js +6 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Lines.js.uncompressed.js +12 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Markers.js +6 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Markers.js.uncompressed.js +12 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/MarkersOnly.js +7 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/MarkersOnly.js.uncompressed.js +13 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/OHLC.js +110 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/OHLC.js.uncompressed.js +208 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Pie.js +303 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Pie.js.uncompressed.js +547 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Scatter.js +134 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Scatter.js.uncompressed.js +207 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Spider.js +299 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Spider.js.uncompressed.js +537 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Stacked.js +24 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/Stacked.js.uncompressed.js +44 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedAreas.js +7 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedAreas.js.uncompressed.js +14 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedBars.js +22 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedBars.js.uncompressed.js +33 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedColumns.js +20 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedColumns.js.uncompressed.js +31 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedLines.js +6 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/StackedLines.js.uncompressed.js +12 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/_PlotEvents.js +68 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/_PlotEvents.js.uncompressed.js +120 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/common.js +209 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/common.js.uncompressed.js +214 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/commonStacked.js +76 -0
- package/vendor/dojo-1.10.10/dojox/charting/plot2d/commonStacked.js.uncompressed.js +77 -0
- package/vendor/dojo-1.10.10/dojox/charting/scaler/common.js +59 -0
- package/vendor/dojo-1.10.10/dojox/charting/scaler/common.js.uncompressed.js +70 -0
- package/vendor/dojo-1.10.10/dojox/charting/scaler/linear.js +220 -0
- package/vendor/dojo-1.10.10/dojox/charting/scaler/linear.js.uncompressed.js +262 -0
- package/vendor/dojo-1.10.10/dojox/charting/scaler/primitive.js +23 -0
- package/vendor/dojo-1.10.10/dojox/charting/scaler/primitive.js.uncompressed.js +36 -0
- package/vendor/dojo-1.10.10/dojox/charting/themes/Claro.js +39 -0
- package/vendor/dojo-1.10.10/dojox/charting/themes/Claro.js.uncompressed.js +106 -0
- package/vendor/dojo-1.10.10/dojox/charting/themes/Wetland.js +5 -0
- package/vendor/dojo-1.10.10/dojox/charting/themes/Wetland.js.uncompressed.js +12 -0
- package/vendor/dojo-1.10.10/dojox/charting/themes/common.js +4 -0
- package/vendor/dojo-1.10.10/dojox/charting/themes/common.js.uncompressed.js +3 -0
- package/vendor/dojo-1.10.10/dojox/charting/widget/Legend.js +102 -0
- package/vendor/dojo-1.10.10/dojox/charting/widget/Legend.js.uncompressed.js +165 -0
- package/vendor/dojo-1.10.10/dojox/color/Palette.js +163 -0
- package/vendor/dojo-1.10.10/dojox/color/Palette.js.uncompressed.js +460 -0
- package/vendor/dojo-1.10.10/dojox/color/_base.js +174 -0
- package/vendor/dojo-1.10.10/dojox/color/_base.js.uncompressed.js +196 -0
- package/vendor/dojo-1.10.10/dojox/gfx/fx.js +297 -0
- package/vendor/dojo-1.10.10/dojox/gfx/fx.js.uncompressed.js +350 -0
- package/vendor/dojo-1.10.10/dojox/gfx/gradutils.js +63 -0
- package/vendor/dojo-1.10.10/dojox/gfx/gradutils.js.uncompressed.js +91 -0
- package/vendor/dojo-1.10.10/dojox/gfx/matrix.js +170 -0
- package/vendor/dojo-1.10.10/dojox/gfx/matrix.js.uncompressed.js +501 -0
- package/vendor/dojo-1.10.10/dojox/gfx/path.js +319 -0
- package/vendor/dojo-1.10.10/dojox/gfx/path.js.uncompressed.js +478 -0
- package/vendor/dojo-1.10.10/dojox/gfx/shape.js +459 -0
- package/vendor/dojo-1.10.10/dojox/gfx/shape.js.uncompressed.js +1091 -0
- package/vendor/dojo-1.10.10/dojox/gfx/svg.js +662 -0
- package/vendor/dojo-1.10.10/dojox/gfx/svg.js.uncompressed.js +1023 -0
- package/vendor/dojo-1.10.10/dojox/gfx/utils.js +199 -0
- package/vendor/dojo-1.10.10/dojox/gfx/utils.js.uncompressed.js +322 -0
- package/vendor/dojo-1.10.10/dojox/gfx.js +2 -0
- package/vendor/dojo-1.10.10/dojox/gfx.js.uncompressed.js +1136 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/array.js +151 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/array.js.uncompressed.js +169 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/fold.js +93 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/fold.js.uncompressed.js +125 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/lambda.js +81 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/lambda.js.uncompressed.js +132 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/object.js +54 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/object.js.uncompressed.js +78 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/reversed.js +61 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/reversed.js.uncompressed.js +77 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/scan.js +87 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional/scan.js.uncompressed.js +107 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional.js +4 -0
- package/vendor/dojo-1.10.10/dojox/lang/functional.js.uncompressed.js +3 -0
- package/vendor/dojo-1.10.10/dojox/lang/utils.js +86 -0
- package/vendor/dojo-1.10.10/dojox/lang/utils.js.uncompressed.js +121 -0
- package/vendor/dojo-1.10.10/dojox/main.js +4 -0
- package/vendor/dojo-1.10.10/dojox/main.js.uncompressed.js +14 -0
- package/vendor/dojo-1.10.10/dojox/storage/LocalStorageProvider.js +112 -0
- package/vendor/dojo-1.10.10/dojox/storage/LocalStorageProvider.js.uncompressed.js +208 -0
- package/vendor/dojo-1.10.10/dojox/storage/Provider.js +62 -0
- package/vendor/dojo-1.10.10/dojox/storage/Provider.js.uncompressed.js +344 -0
- package/vendor/dojo-1.10.10/dojox/storage/manager.js +110 -0
- package/vendor/dojo-1.10.10/dojox/storage/manager.js.uncompressed.js +263 -0
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
//>>built
|
|
2
|
+
define("dojox/charting/plot2d/Bars",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/gfx/fx","dojox/lang/utils","dojox/lang/functional","dojox/lang/functional/reversed"],function(_1,_2,_3,_4,_5,_6,dc,fx,du,df,_7){
|
|
3
|
+
var _8=_7.lambda("item.purgeGroup()");
|
|
4
|
+
return _3("dojox.charting.plot2d.Bars",[_5,_6],{defaultParams:{gap:0,animate:null,enableCache:false},optionalParams:{minBarSize:1,maxBarSize:1,stroke:{},outline:{},shadow:{},fill:{},filter:{},styleFunc:null,font:"",fontColor:""},constructor:function(_9,_a){
|
|
5
|
+
this.opt=_1.clone(_1.mixin(this.opt,this.defaultParams));
|
|
6
|
+
du.updateWithObject(this.opt,_a);
|
|
7
|
+
du.updateWithPattern(this.opt,_a,this.optionalParams);
|
|
8
|
+
this.animate=this.opt.animate;
|
|
9
|
+
this.renderingOptions={"shape-rendering":"crispEdges"};
|
|
10
|
+
},getSeriesStats:function(){
|
|
11
|
+
var _b=dc.collectSimpleStats(this.series),t;
|
|
12
|
+
_b.hmin-=0.5;
|
|
13
|
+
_b.hmax+=0.5;
|
|
14
|
+
t=_b.hmin,_b.hmin=_b.vmin,_b.vmin=t;
|
|
15
|
+
t=_b.hmax,_b.hmax=_b.vmax,_b.vmax=t;
|
|
16
|
+
return _b;
|
|
17
|
+
},createRect:function(_c,_d,_e){
|
|
18
|
+
var _f;
|
|
19
|
+
if(this.opt.enableCache&&_c._rectFreePool.length>0){
|
|
20
|
+
_f=_c._rectFreePool.pop();
|
|
21
|
+
_f.setShape(_e);
|
|
22
|
+
_d.add(_f);
|
|
23
|
+
}else{
|
|
24
|
+
_f=_d.createRect(_e);
|
|
25
|
+
}
|
|
26
|
+
if(this.opt.enableCache){
|
|
27
|
+
_c._rectUsePool.push(_f);
|
|
28
|
+
}
|
|
29
|
+
return _f;
|
|
30
|
+
},createLabel:function(_10,_11,_12,_13){
|
|
31
|
+
if(this.opt.labels&&this.opt.labelStyle=="outside"){
|
|
32
|
+
var y=_12.y+_12.height/2;
|
|
33
|
+
var x=_12.x+_12.width+this.opt.labelOffset;
|
|
34
|
+
this.renderLabel(_10,x,y,this._getLabel(isNaN(_11.y)?_11:_11.y),_13,"start");
|
|
35
|
+
}else{
|
|
36
|
+
this.inherited(arguments);
|
|
37
|
+
}
|
|
38
|
+
},render:function(dim,_14){
|
|
39
|
+
if(this.zoom&&!this.isDataDirty()){
|
|
40
|
+
return this.performZoom(dim,_14);
|
|
41
|
+
}
|
|
42
|
+
this.dirty=this.isDirty();
|
|
43
|
+
this.resetEvents();
|
|
44
|
+
var s;
|
|
45
|
+
if(this.dirty){
|
|
46
|
+
_2.forEach(this.series,_8);
|
|
47
|
+
this._eventSeries={};
|
|
48
|
+
this.cleanGroup();
|
|
49
|
+
s=this.getGroup();
|
|
50
|
+
df.forEachRev(this.series,function(_15){
|
|
51
|
+
_15.cleanGroup(s);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
var t=this.chart.theme,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_16=Math.max(0,this._hScaler.bounds.lower),_17=ht(_16),_18=this.events();
|
|
55
|
+
var bar=this.getBarProperties();
|
|
56
|
+
var _19=this.series.length;
|
|
57
|
+
_2.forEach(this.series,function(_1a){
|
|
58
|
+
if(_1a.hidden){
|
|
59
|
+
_19--;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
var z=_19;
|
|
63
|
+
for(var i=this.series.length-1;i>=0;--i){
|
|
64
|
+
var run=this.series[i];
|
|
65
|
+
if(!this.dirty&&!run.dirty){
|
|
66
|
+
t.skip();
|
|
67
|
+
this._reconnectEvents(run.name);
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
run.cleanGroup();
|
|
71
|
+
if(this.opt.enableCache){
|
|
72
|
+
run._rectFreePool=(run._rectFreePool?run._rectFreePool:[]).concat(run._rectUsePool?run._rectUsePool:[]);
|
|
73
|
+
run._rectUsePool=[];
|
|
74
|
+
}
|
|
75
|
+
var _1b=t.next("bar",[this.opt,run]);
|
|
76
|
+
if(run.hidden){
|
|
77
|
+
run.dyn.fill=_1b.series.fill;
|
|
78
|
+
run.dyn.stroke=_1b.series.stroke;
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
z--;
|
|
82
|
+
var _1c=new Array(run.data.length);
|
|
83
|
+
s=run.group;
|
|
84
|
+
var _1d=_2.some(run.data,function(_1e){
|
|
85
|
+
return typeof _1e=="number"||(_1e&&!_1e.hasOwnProperty("x"));
|
|
86
|
+
});
|
|
87
|
+
var min=_1d?Math.max(0,Math.floor(this._vScaler.bounds.from-1)):0;
|
|
88
|
+
var max=_1d?Math.min(run.data.length,Math.ceil(this._vScaler.bounds.to)):run.data.length;
|
|
89
|
+
for(var j=min;j<max;++j){
|
|
90
|
+
var _1f=run.data[j];
|
|
91
|
+
if(_1f!=null){
|
|
92
|
+
var val=this.getValue(_1f,j,i,_1d),hv=ht(val.y),w=Math.abs(hv-_17),_20,_21;
|
|
93
|
+
if(this.opt.styleFunc||typeof _1f!="number"){
|
|
94
|
+
var _22=typeof _1f!="number"?[_1f]:[];
|
|
95
|
+
if(this.opt.styleFunc){
|
|
96
|
+
_22.push(this.opt.styleFunc(_1f));
|
|
97
|
+
}
|
|
98
|
+
_20=t.addMixin(_1b,"bar",_22,true);
|
|
99
|
+
}else{
|
|
100
|
+
_20=t.post(_1b,"bar");
|
|
101
|
+
}
|
|
102
|
+
if(w>=0&&bar.height>=1){
|
|
103
|
+
var _23={x:_14.l+(val.y<_16?hv:_17),y:dim.height-_14.b-vt(val.x+1.5)+bar.gap+bar.thickness*(_19-z-1),width:w,height:bar.height};
|
|
104
|
+
if(_20.series.shadow){
|
|
105
|
+
var _24=_1.clone(_23);
|
|
106
|
+
_24.x+=_20.series.shadow.dx;
|
|
107
|
+
_24.y+=_20.series.shadow.dy;
|
|
108
|
+
_21=this.createRect(run,s,_24).setFill(_20.series.shadow.color).setStroke(_20.series.shadow);
|
|
109
|
+
if(this.animate){
|
|
110
|
+
this._animateBar(_21,_14.l+_17,-w);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
var _25=this._plotFill(_20.series.fill,dim,_14);
|
|
114
|
+
_25=this._shapeFill(_25,_23);
|
|
115
|
+
var _26=this.createRect(run,s,_23).setFill(_25).setStroke(_20.series.stroke);
|
|
116
|
+
if(_26.setFilter&&_20.series.filter){
|
|
117
|
+
_26.setFilter(_20.series.filter);
|
|
118
|
+
}
|
|
119
|
+
run.dyn.fill=_26.getFill();
|
|
120
|
+
run.dyn.stroke=_26.getStroke();
|
|
121
|
+
if(_18){
|
|
122
|
+
var o={element:"bar",index:j,run:run,shape:_26,shadow:_21,cx:val.y,cy:val.x+1.5,x:_1d?j:run.data[j].x,y:_1d?run.data[j]:run.data[j].y};
|
|
123
|
+
this._connectEvents(o);
|
|
124
|
+
_1c[j]=o;
|
|
125
|
+
}
|
|
126
|
+
if(!isNaN(val.py)&&val.py>_16){
|
|
127
|
+
_23.x+=ht(val.py);
|
|
128
|
+
_23.width-=ht(val.py);
|
|
129
|
+
}
|
|
130
|
+
this.createLabel(s,_1f,_23,_20);
|
|
131
|
+
if(this.animate){
|
|
132
|
+
this._animateBar(_26,_14.l+_17,-w);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
this._eventSeries[run.name]=_1c;
|
|
138
|
+
run.dirty=false;
|
|
139
|
+
}
|
|
140
|
+
this.dirty=false;
|
|
141
|
+
if(_4("dojo-bidi")){
|
|
142
|
+
this._checkOrientation(this.group,dim,_14);
|
|
143
|
+
}
|
|
144
|
+
return this;
|
|
145
|
+
},getValue:function(_27,j,_28,_29){
|
|
146
|
+
var y,x;
|
|
147
|
+
if(_29){
|
|
148
|
+
if(typeof _27=="number"){
|
|
149
|
+
y=_27;
|
|
150
|
+
}else{
|
|
151
|
+
y=_27.y;
|
|
152
|
+
}
|
|
153
|
+
x=j;
|
|
154
|
+
}else{
|
|
155
|
+
y=_27.y;
|
|
156
|
+
x=_27.x-1;
|
|
157
|
+
}
|
|
158
|
+
return {y:y,x:x};
|
|
159
|
+
},getBarProperties:function(){
|
|
160
|
+
var f=dc.calculateBarSize(this._vScaler.bounds.scale,this.opt);
|
|
161
|
+
return {gap:f.gap,height:f.size,thickness:0};
|
|
162
|
+
},_animateBar:function(_2a,_2b,_2c){
|
|
163
|
+
if(_2c==0){
|
|
164
|
+
_2c=1;
|
|
165
|
+
}
|
|
166
|
+
fx.animateTransform(_1.delegate({shape:_2a,duration:1200,transform:[{name:"translate",start:[_2b-(_2b/_2c),0],end:[0,0]},{name:"scale",start:[1/_2c,1],end:[1,1]},{name:"original"}]},this.animate)).play();
|
|
167
|
+
}});
|
|
168
|
+
});
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
define("dojox/charting/plot2d/Bars", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/declare", "dojo/has", "./CartesianBase", "./_PlotEvents", "./common",
|
|
2
|
+
"dojox/gfx/fx", "dojox/lang/utils", "dojox/lang/functional", "dojox/lang/functional/reversed"],
|
|
3
|
+
function(lang, arr, declare, has, CartesianBase, _PlotEvents, dc, fx, du, df, dfr){
|
|
4
|
+
|
|
5
|
+
/*=====
|
|
6
|
+
declare("dojox.charting.plot2d.__BarCtorArgs", dojox.charting.plot2d.__DefaultCtorArgs, {
|
|
7
|
+
// summary:
|
|
8
|
+
// Additional keyword arguments for bar charts.
|
|
9
|
+
|
|
10
|
+
// minBarSize: Number?
|
|
11
|
+
// The minimum size for a bar in pixels. Default is 1.
|
|
12
|
+
minBarSize: 1,
|
|
13
|
+
|
|
14
|
+
// maxBarSize: Number?
|
|
15
|
+
// The maximum size for a bar in pixels. Default is 1.
|
|
16
|
+
maxBarSize: 1,
|
|
17
|
+
|
|
18
|
+
// stroke: dojox.gfx.Stroke?
|
|
19
|
+
// An optional stroke to use for any series on the plot.
|
|
20
|
+
stroke: {},
|
|
21
|
+
|
|
22
|
+
// outline: dojox.gfx.Stroke?
|
|
23
|
+
// An optional stroke used to outline any series on the plot.
|
|
24
|
+
outline: {},
|
|
25
|
+
|
|
26
|
+
// shadow: dojox.gfx.Stroke?
|
|
27
|
+
// An optional stroke to use to draw any shadows for a series on a plot.
|
|
28
|
+
shadow: {},
|
|
29
|
+
|
|
30
|
+
// fill: dojox.gfx.Fill?
|
|
31
|
+
// Any fill to be used for elements on the plot.
|
|
32
|
+
fill: {},
|
|
33
|
+
|
|
34
|
+
// filter: dojox.gfx.Filter?
|
|
35
|
+
// An SVG filter to be used for elements on the plot. gfx SVG renderer must be used and dojox/gfx/svgext must
|
|
36
|
+
// be required for this to work.
|
|
37
|
+
filter: {},
|
|
38
|
+
|
|
39
|
+
// styleFunc: Function?
|
|
40
|
+
// A function that returns a styling object for the a given data item.
|
|
41
|
+
styleFunc: null,
|
|
42
|
+
|
|
43
|
+
// font: String?
|
|
44
|
+
// A font definition to be used for labels and other text-based elements on the plot.
|
|
45
|
+
font: "",
|
|
46
|
+
|
|
47
|
+
// fontColor: String|dojo.Color?
|
|
48
|
+
// The color to be used for any text-based elements on the plot.
|
|
49
|
+
fontColor: "",
|
|
50
|
+
|
|
51
|
+
// enableCache: Boolean?
|
|
52
|
+
// Whether the bars rect are cached from one rendering to another. This improves the rendering performance of
|
|
53
|
+
// successive rendering but penalize the first rendering. Default false.
|
|
54
|
+
enableCache: false
|
|
55
|
+
});
|
|
56
|
+
=====*/
|
|
57
|
+
var purgeGroup = dfr.lambda("item.purgeGroup()");
|
|
58
|
+
|
|
59
|
+
return declare("dojox.charting.plot2d.Bars", [CartesianBase, _PlotEvents], {
|
|
60
|
+
// summary:
|
|
61
|
+
// The plot object representing a bar chart (horizontal bars).
|
|
62
|
+
defaultParams: {
|
|
63
|
+
gap: 0, // gap between columns in pixels
|
|
64
|
+
animate: null, // animate bars into place
|
|
65
|
+
enableCache: false
|
|
66
|
+
},
|
|
67
|
+
optionalParams: {
|
|
68
|
+
minBarSize: 1, // minimal bar width in pixels
|
|
69
|
+
maxBarSize: 1, // maximal bar width in pixels
|
|
70
|
+
// theme component
|
|
71
|
+
stroke: {},
|
|
72
|
+
outline: {},
|
|
73
|
+
shadow: {},
|
|
74
|
+
fill: {},
|
|
75
|
+
filter: {},
|
|
76
|
+
styleFunc: null,
|
|
77
|
+
font: "",
|
|
78
|
+
fontColor: ""
|
|
79
|
+
},
|
|
80
|
+
|
|
81
|
+
constructor: function(chart, kwArgs){
|
|
82
|
+
// summary:
|
|
83
|
+
// The constructor for a bar chart.
|
|
84
|
+
// chart: dojox/charting/Chart
|
|
85
|
+
// The chart this plot belongs to.
|
|
86
|
+
// kwArgs: dojox.charting.plot2d.__BarCtorArgs?
|
|
87
|
+
// An optional keyword arguments object to help define the plot.
|
|
88
|
+
this.opt = lang.clone(lang.mixin(this.opt, this.defaultParams));
|
|
89
|
+
du.updateWithObject(this.opt, kwArgs);
|
|
90
|
+
du.updateWithPattern(this.opt, kwArgs, this.optionalParams);
|
|
91
|
+
this.animate = this.opt.animate;
|
|
92
|
+
this.renderingOptions = { "shape-rendering": "crispEdges" };
|
|
93
|
+
},
|
|
94
|
+
|
|
95
|
+
getSeriesStats: function(){
|
|
96
|
+
// summary:
|
|
97
|
+
// Calculate the min/max on all attached series in both directions.
|
|
98
|
+
// returns: Object
|
|
99
|
+
// {hmin, hmax, vmin, vmax} min/max in both directions.
|
|
100
|
+
var stats = dc.collectSimpleStats(this.series), t;
|
|
101
|
+
stats.hmin -= 0.5;
|
|
102
|
+
stats.hmax += 0.5;
|
|
103
|
+
t = stats.hmin, stats.hmin = stats.vmin, stats.vmin = t;
|
|
104
|
+
t = stats.hmax, stats.hmax = stats.vmax, stats.vmax = t;
|
|
105
|
+
return stats; // Object
|
|
106
|
+
},
|
|
107
|
+
|
|
108
|
+
createRect: function(run, creator, params){
|
|
109
|
+
var rect;
|
|
110
|
+
if(this.opt.enableCache && run._rectFreePool.length > 0){
|
|
111
|
+
rect = run._rectFreePool.pop();
|
|
112
|
+
rect.setShape(params);
|
|
113
|
+
// was cleared, add it back
|
|
114
|
+
creator.add(rect);
|
|
115
|
+
}else{
|
|
116
|
+
rect = creator.createRect(params);
|
|
117
|
+
}
|
|
118
|
+
if(this.opt.enableCache){
|
|
119
|
+
run._rectUsePool.push(rect);
|
|
120
|
+
}
|
|
121
|
+
return rect;
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
createLabel: function(group, value, bbox, theme){
|
|
125
|
+
if(this.opt.labels && this.opt.labelStyle == "outside"){
|
|
126
|
+
var y = bbox.y + bbox.height / 2;
|
|
127
|
+
var x = bbox.x + bbox.width + this.opt.labelOffset;
|
|
128
|
+
this.renderLabel(group, x, y, this._getLabel(isNaN(value.y)?value:value.y), theme, "start");
|
|
129
|
+
}else{
|
|
130
|
+
this.inherited(arguments);
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
|
|
134
|
+
render: function(dim, offsets){
|
|
135
|
+
// summary:
|
|
136
|
+
// Run the calculations for any axes for this plot.
|
|
137
|
+
// dim: Object
|
|
138
|
+
// An object in the form of { width, height }
|
|
139
|
+
// offsets: Object
|
|
140
|
+
// An object of the form { l, r, t, b}.
|
|
141
|
+
// returns: dojox/charting/plot2d/Bars
|
|
142
|
+
// A reference to this plot for functional chaining.
|
|
143
|
+
if(this.zoom && !this.isDataDirty()){
|
|
144
|
+
return this.performZoom(dim, offsets); // dojox/charting/plot2d/Bars
|
|
145
|
+
}
|
|
146
|
+
this.dirty = this.isDirty();
|
|
147
|
+
this.resetEvents();
|
|
148
|
+
var s;
|
|
149
|
+
if(this.dirty){
|
|
150
|
+
arr.forEach(this.series, purgeGroup);
|
|
151
|
+
this._eventSeries = {};
|
|
152
|
+
this.cleanGroup();
|
|
153
|
+
s = this.getGroup();
|
|
154
|
+
df.forEachRev(this.series, function(item){ item.cleanGroup(s); });
|
|
155
|
+
}
|
|
156
|
+
var t = this.chart.theme,
|
|
157
|
+
ht = this._hScaler.scaler.getTransformerFromModel(this._hScaler),
|
|
158
|
+
vt = this._vScaler.scaler.getTransformerFromModel(this._vScaler),
|
|
159
|
+
baseline = Math.max(0, this._hScaler.bounds.lower),
|
|
160
|
+
baselineWidth = ht(baseline),
|
|
161
|
+
events = this.events();
|
|
162
|
+
var bar = this.getBarProperties();
|
|
163
|
+
|
|
164
|
+
var actualLength = this.series.length;
|
|
165
|
+
arr.forEach(this.series, function(serie){if(serie.hidden){actualLength--;}});
|
|
166
|
+
var z = actualLength;
|
|
167
|
+
for(var i = this.series.length - 1; i >= 0; --i){
|
|
168
|
+
var run = this.series[i];
|
|
169
|
+
if(!this.dirty && !run.dirty){
|
|
170
|
+
t.skip();
|
|
171
|
+
this._reconnectEvents(run.name);
|
|
172
|
+
continue;
|
|
173
|
+
}
|
|
174
|
+
run.cleanGroup();
|
|
175
|
+
if(this.opt.enableCache){
|
|
176
|
+
run._rectFreePool = (run._rectFreePool?run._rectFreePool:[]).concat(run._rectUsePool?run._rectUsePool:[]);
|
|
177
|
+
run._rectUsePool = [];
|
|
178
|
+
}
|
|
179
|
+
var theme = t.next("bar", [this.opt, run]);
|
|
180
|
+
if(run.hidden){
|
|
181
|
+
run.dyn.fill = theme.series.fill;
|
|
182
|
+
run.dyn.stroke = theme.series.stroke;
|
|
183
|
+
continue;
|
|
184
|
+
}
|
|
185
|
+
z--;
|
|
186
|
+
|
|
187
|
+
var eventSeries = new Array(run.data.length);
|
|
188
|
+
s = run.group;
|
|
189
|
+
var indexed = arr.some(run.data, function(item){
|
|
190
|
+
return typeof item == "number" || (item && !item.hasOwnProperty("x"));
|
|
191
|
+
});
|
|
192
|
+
// on indexed charts we can easily just interate from the first visible to the last visible
|
|
193
|
+
// data point to save time
|
|
194
|
+
var min = indexed?Math.max(0, Math.floor(this._vScaler.bounds.from - 1)):0;
|
|
195
|
+
var max = indexed?Math.min(run.data.length, Math.ceil(this._vScaler.bounds.to)):run.data.length;
|
|
196
|
+
for(var j = min; j < max; ++j){
|
|
197
|
+
var value = run.data[j];
|
|
198
|
+
if(value != null){
|
|
199
|
+
var val = this.getValue(value, j, i, indexed),
|
|
200
|
+
hv = ht(val.y),
|
|
201
|
+
w = Math.abs(hv - baselineWidth),
|
|
202
|
+
finalTheme,
|
|
203
|
+
sshape;
|
|
204
|
+
if(this.opt.styleFunc || typeof value != "number"){
|
|
205
|
+
var tMixin = typeof value != "number" ? [value] : [];
|
|
206
|
+
if(this.opt.styleFunc){
|
|
207
|
+
tMixin.push(this.opt.styleFunc(value));
|
|
208
|
+
}
|
|
209
|
+
finalTheme = t.addMixin(theme, "bar", tMixin, true);
|
|
210
|
+
}else{
|
|
211
|
+
finalTheme = t.post(theme, "bar");
|
|
212
|
+
}
|
|
213
|
+
if(w >= 0 && bar.height >= 1){
|
|
214
|
+
var rect = {
|
|
215
|
+
x: offsets.l + (val.y < baseline ? hv : baselineWidth),
|
|
216
|
+
y: dim.height - offsets.b - vt(val.x + 1.5) + bar.gap + bar.thickness * (actualLength - z - 1),
|
|
217
|
+
// y: dim.height - offsets.b - vt(val.x + 1.5) + bar.gap + bar.thickness * z,
|
|
218
|
+
width: w,
|
|
219
|
+
height: bar.height
|
|
220
|
+
};
|
|
221
|
+
if(finalTheme.series.shadow){
|
|
222
|
+
var srect = lang.clone(rect);
|
|
223
|
+
srect.x += finalTheme.series.shadow.dx;
|
|
224
|
+
srect.y += finalTheme.series.shadow.dy;
|
|
225
|
+
sshape = this.createRect(run, s, srect).setFill(finalTheme.series.shadow.color).setStroke(finalTheme.series.shadow);
|
|
226
|
+
if(this.animate){
|
|
227
|
+
this._animateBar(sshape, offsets.l + baselineWidth, -w);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
var specialFill = this._plotFill(finalTheme.series.fill, dim, offsets);
|
|
231
|
+
specialFill = this._shapeFill(specialFill, rect);
|
|
232
|
+
var shape = this.createRect(run, s, rect).setFill(specialFill).setStroke(finalTheme.series.stroke);
|
|
233
|
+
if(shape.setFilter && finalTheme.series.filter){
|
|
234
|
+
shape.setFilter(finalTheme.series.filter);
|
|
235
|
+
}
|
|
236
|
+
run.dyn.fill = shape.getFill();
|
|
237
|
+
run.dyn.stroke = shape.getStroke();
|
|
238
|
+
if(events){
|
|
239
|
+
var o = {
|
|
240
|
+
element: "bar",
|
|
241
|
+
index: j,
|
|
242
|
+
run: run,
|
|
243
|
+
shape: shape,
|
|
244
|
+
shadow: sshape,
|
|
245
|
+
cx: val.y,
|
|
246
|
+
cy: val.x + 1.5,
|
|
247
|
+
x: indexed?j:run.data[j].x,
|
|
248
|
+
y: indexed?run.data[j]:run.data[j].y
|
|
249
|
+
};
|
|
250
|
+
this._connectEvents(o);
|
|
251
|
+
eventSeries[j] = o;
|
|
252
|
+
}
|
|
253
|
+
// if val.py is here, this means we are stacking and we need to subtract previous
|
|
254
|
+
// value to get the high in which we will lay out the label
|
|
255
|
+
if(!isNaN(val.py) && val.py > baseline){
|
|
256
|
+
rect.x += ht(val.py);
|
|
257
|
+
rect.width -= ht(val.py);
|
|
258
|
+
}
|
|
259
|
+
this.createLabel(s, value, rect, finalTheme);
|
|
260
|
+
if(this.animate){
|
|
261
|
+
this._animateBar(shape, offsets.l + baselineWidth, -w);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
this._eventSeries[run.name] = eventSeries;
|
|
267
|
+
run.dirty = false;
|
|
268
|
+
}
|
|
269
|
+
this.dirty = false;
|
|
270
|
+
// chart mirroring starts
|
|
271
|
+
if(has("dojo-bidi")){
|
|
272
|
+
this._checkOrientation(this.group, dim, offsets);
|
|
273
|
+
}
|
|
274
|
+
// chart mirroring ends
|
|
275
|
+
return this; // dojox/charting/plot2d/Bars
|
|
276
|
+
},
|
|
277
|
+
getValue: function(value, j, seriesIndex, indexed){
|
|
278
|
+
var y, x;
|
|
279
|
+
if(indexed){
|
|
280
|
+
if(typeof value == "number"){
|
|
281
|
+
y = value;
|
|
282
|
+
}else{
|
|
283
|
+
y = value.y;
|
|
284
|
+
}
|
|
285
|
+
x = j;
|
|
286
|
+
}else{
|
|
287
|
+
y = value.y;
|
|
288
|
+
x = value.x -1;
|
|
289
|
+
}
|
|
290
|
+
return {y:y, x:x};
|
|
291
|
+
},
|
|
292
|
+
getBarProperties: function(){
|
|
293
|
+
var f = dc.calculateBarSize(this._vScaler.bounds.scale, this.opt);
|
|
294
|
+
return {gap: f.gap, height: f.size, thickness: 0};
|
|
295
|
+
},
|
|
296
|
+
_animateBar: function(shape, hoffset, hsize){
|
|
297
|
+
if(hsize==0){
|
|
298
|
+
hsize = 1;
|
|
299
|
+
}
|
|
300
|
+
fx.animateTransform(lang.delegate({
|
|
301
|
+
shape: shape,
|
|
302
|
+
duration: 1200,
|
|
303
|
+
transform: [
|
|
304
|
+
{name: "translate", start: [hoffset - (hoffset/hsize), 0], end: [0, 0]},
|
|
305
|
+
{name: "scale", start: [1/hsize, 1], end: [1, 1]},
|
|
306
|
+
{name: "original"}
|
|
307
|
+
]
|
|
308
|
+
}, this.animate)).play();
|
|
309
|
+
}
|
|
310
|
+
});
|
|
311
|
+
});
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
//>>built
|
|
2
|
+
define("dojox/charting/plot2d/Base",["dojo/_base/declare","dojo/_base/array","dojox/gfx","../Element","./common","../axis2d/common","dojo/has"],function(_1,_2,_3,_4,_5,ac,_6){
|
|
3
|
+
var _7=_1("dojox.charting.plot2d.Base",_4,{constructor:function(_8,_9){
|
|
4
|
+
if(_9&&_9.tooltipFunc){
|
|
5
|
+
this.tooltipFunc=_9.tooltipFunc;
|
|
6
|
+
}
|
|
7
|
+
},clear:function(){
|
|
8
|
+
this.series=[];
|
|
9
|
+
this.dirty=true;
|
|
10
|
+
return this;
|
|
11
|
+
},setAxis:function(_a){
|
|
12
|
+
return this;
|
|
13
|
+
},assignAxes:function(_b){
|
|
14
|
+
_2.forEach(this.axes,function(_c){
|
|
15
|
+
if(this[_c]){
|
|
16
|
+
this.setAxis(_b[this[_c]]);
|
|
17
|
+
}
|
|
18
|
+
},this);
|
|
19
|
+
},addSeries:function(_d){
|
|
20
|
+
this.series.push(_d);
|
|
21
|
+
return this;
|
|
22
|
+
},getSeriesStats:function(){
|
|
23
|
+
return _5.collectSimpleStats(this.series);
|
|
24
|
+
},calculateAxes:function(_e){
|
|
25
|
+
this.initializeScalers(_e,this.getSeriesStats());
|
|
26
|
+
return this;
|
|
27
|
+
},initializeScalers:function(){
|
|
28
|
+
return this;
|
|
29
|
+
},isDataDirty:function(){
|
|
30
|
+
return _2.some(this.series,function(_f){
|
|
31
|
+
return _f.dirty;
|
|
32
|
+
});
|
|
33
|
+
},render:function(dim,_10){
|
|
34
|
+
return this;
|
|
35
|
+
},renderLabel:function(_11,x,y,_12,_13,_14,_15){
|
|
36
|
+
var _16=ac.createText[this.opt.htmlLabels&&_3.renderer!="vml"?"html":"gfx"](this.chart,_11,x,y,_15?_15:"middle",_12,_13.series.font,_13.series.fontColor);
|
|
37
|
+
if(_14){
|
|
38
|
+
if(this.opt.htmlLabels&&_3.renderer!="vml"){
|
|
39
|
+
_16.style.pointerEvents="none";
|
|
40
|
+
}else{
|
|
41
|
+
if(_16.rawNode){
|
|
42
|
+
_16.rawNode.style.pointerEvents="none";
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if(this.opt.htmlLabels&&_3.renderer!="vml"){
|
|
47
|
+
this.htmlElements.push(_16);
|
|
48
|
+
}
|
|
49
|
+
return _16;
|
|
50
|
+
},getRequiredColors:function(){
|
|
51
|
+
return this.series.length;
|
|
52
|
+
},_getLabel:function(_17){
|
|
53
|
+
return _5.getLabel(_17,this.opt.fixed,this.opt.precision);
|
|
54
|
+
}});
|
|
55
|
+
if(_6("dojo-bidi")){
|
|
56
|
+
_7.extend({_checkOrientation:function(_18,dim,_19){
|
|
57
|
+
this.chart.applyMirroring(this.group,dim,_19);
|
|
58
|
+
}});
|
|
59
|
+
}
|
|
60
|
+
return _7;
|
|
61
|
+
});
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
define("dojox/charting/plot2d/Base", ["dojo/_base/declare", "dojo/_base/array", "dojox/gfx",
|
|
2
|
+
"../Element", "./common", "../axis2d/common", "dojo/has"],
|
|
3
|
+
function(declare, arr, gfx, Element, common, ac, has){
|
|
4
|
+
/*=====
|
|
5
|
+
dojox.charting.plot2d.__PlotCtorArgs = {
|
|
6
|
+
// summary:
|
|
7
|
+
// The base keyword arguments object for plot constructors.
|
|
8
|
+
// Note that the parameters for this may change based on the
|
|
9
|
+
// specific plot type (see the corresponding plot type for
|
|
10
|
+
// details).
|
|
11
|
+
|
|
12
|
+
// tooltipFunc: Function?
|
|
13
|
+
// An optional function used to compute tooltip text for this plot. It takes precedence over
|
|
14
|
+
// the default function when available.
|
|
15
|
+
// | function tooltipFunc(o) { return "text"; }
|
|
16
|
+
// `o`is the event object that triggered the tooltip.
|
|
17
|
+
tooltipFunc: null
|
|
18
|
+
};
|
|
19
|
+
=====*/
|
|
20
|
+
var Base = declare("dojox.charting.plot2d.Base", Element, {
|
|
21
|
+
// summary:
|
|
22
|
+
// Base class for all plot types.
|
|
23
|
+
constructor: function(chart, kwArgs){
|
|
24
|
+
// summary:
|
|
25
|
+
// Create a base plot for charting.
|
|
26
|
+
// chart: dojox/chart/Chart
|
|
27
|
+
// The chart this plot belongs to.
|
|
28
|
+
// kwArgs: dojox.charting.plot2d.__PlotCtorArgs?
|
|
29
|
+
// An optional arguments object to help define the plot.
|
|
30
|
+
|
|
31
|
+
// TODO does not work in markup
|
|
32
|
+
if(kwArgs && kwArgs.tooltipFunc){
|
|
33
|
+
this.tooltipFunc = kwArgs.tooltipFunc;
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
clear: function(){
|
|
37
|
+
// summary:
|
|
38
|
+
// Clear out all of the information tied to this plot.
|
|
39
|
+
// returns: dojox.charting.plot2d.Base
|
|
40
|
+
// A reference to this plot for functional chaining.
|
|
41
|
+
this.series = [];
|
|
42
|
+
this.dirty = true;
|
|
43
|
+
return this; // dojox/charting/plot2d/Base
|
|
44
|
+
},
|
|
45
|
+
setAxis: function(axis){
|
|
46
|
+
// summary:
|
|
47
|
+
// Set an axis for this plot.
|
|
48
|
+
// axis: dojox.charting.axis2d.Base
|
|
49
|
+
// The axis to set.
|
|
50
|
+
// returns: dojox/charting/plot2d/Base
|
|
51
|
+
// A reference to this plot for functional chaining.
|
|
52
|
+
return this; // dojox/charting/plot2d/Base
|
|
53
|
+
},
|
|
54
|
+
assignAxes: function(axes){
|
|
55
|
+
// summary:
|
|
56
|
+
// From an array of axes pick the ones that correspond to this plot and
|
|
57
|
+
// assign them to the plot using setAxis method.
|
|
58
|
+
// axes: Array
|
|
59
|
+
// An array of dojox/charting/axis2d/Base
|
|
60
|
+
// tags:
|
|
61
|
+
// protected
|
|
62
|
+
arr.forEach(this.axes, function(axis){
|
|
63
|
+
if(this[axis]){
|
|
64
|
+
this.setAxis(axes[this[axis]]);
|
|
65
|
+
}
|
|
66
|
+
}, this);
|
|
67
|
+
},
|
|
68
|
+
addSeries: function(run){
|
|
69
|
+
// summary:
|
|
70
|
+
// Add a data series to this plot.
|
|
71
|
+
// run: dojox.charting.Series
|
|
72
|
+
// The series to be added.
|
|
73
|
+
// returns: dojox/charting/plot2d/Base
|
|
74
|
+
// A reference to this plot for functional chaining.
|
|
75
|
+
this.series.push(run);
|
|
76
|
+
return this; // dojox/charting/plot2d/Base
|
|
77
|
+
},
|
|
78
|
+
getSeriesStats: function(){
|
|
79
|
+
// summary:
|
|
80
|
+
// Calculate the min/max on all attached series in both directions.
|
|
81
|
+
// returns: Object
|
|
82
|
+
// {hmin, hmax, vmin, vmax} min/max in both directions.
|
|
83
|
+
return common.collectSimpleStats(this.series);
|
|
84
|
+
},
|
|
85
|
+
calculateAxes: function(dim){
|
|
86
|
+
// summary:
|
|
87
|
+
// Stub function for running the axis calculations (deprecated).
|
|
88
|
+
// dim: Object
|
|
89
|
+
// An object of the form { width, height }
|
|
90
|
+
// returns: dojox/charting/plot2d/Base
|
|
91
|
+
// A reference to this plot for functional chaining.
|
|
92
|
+
this.initializeScalers(dim, this.getSeriesStats());
|
|
93
|
+
return this; // dojox/charting/plot2d/Base
|
|
94
|
+
},
|
|
95
|
+
initializeScalers: function(){
|
|
96
|
+
// summary:
|
|
97
|
+
// Does nothing.
|
|
98
|
+
return this;
|
|
99
|
+
},
|
|
100
|
+
isDataDirty: function(){
|
|
101
|
+
// summary:
|
|
102
|
+
// Returns whether or not any of this plot's data series need to be rendered.
|
|
103
|
+
// returns: Boolean
|
|
104
|
+
// Flag indicating if any of this plot's series are invalid and need rendering.
|
|
105
|
+
return arr.some(this.series, function(item){ return item.dirty; }); // Boolean
|
|
106
|
+
},
|
|
107
|
+
render: function(dim, offsets){
|
|
108
|
+
// summary:
|
|
109
|
+
// Render the plot on the chart.
|
|
110
|
+
// dim: Object
|
|
111
|
+
// An object of the form { width, height }.
|
|
112
|
+
// offsets: Object
|
|
113
|
+
// An object of the form { l, r, t, b }.
|
|
114
|
+
// returns: dojox/charting/plot2d/Base
|
|
115
|
+
// A reference to this plot for functional chaining.
|
|
116
|
+
return this; // dojox/charting/plot2d/Base
|
|
117
|
+
},
|
|
118
|
+
renderLabel: function(group, x, y, label, theme, block, align){
|
|
119
|
+
var elem = ac.createText[this.opt.htmlLabels && gfx.renderer != "vml" ? "html" : "gfx"]
|
|
120
|
+
(this.chart, group, x, y, align?align:"middle", label, theme.series.font, theme.series.fontColor);
|
|
121
|
+
// if the label is inside we need to avoid catching events on it this would prevent action on
|
|
122
|
+
// chart elements
|
|
123
|
+
if(block){
|
|
124
|
+
// TODO this won't work in IE neither in VML nor in HTML
|
|
125
|
+
// a solution would be to catch the event on the label and refire it to the element
|
|
126
|
+
// possibly using elementFromPoint or having it already available
|
|
127
|
+
if(this.opt.htmlLabels && gfx.renderer != "vml"){
|
|
128
|
+
// we have HTML labels, let's use pointEvents on the HTML node
|
|
129
|
+
elem.style.pointerEvents = "none";
|
|
130
|
+
}else if(elem.rawNode){
|
|
131
|
+
// we have SVG labels, let's use pointerEvents on the SVG or VML node
|
|
132
|
+
elem.rawNode.style.pointerEvents = "none";
|
|
133
|
+
}
|
|
134
|
+
// else we have Canvas, we need do nothing, as Canvas text won't catch events
|
|
135
|
+
}
|
|
136
|
+
if(this.opt.htmlLabels && gfx.renderer != "vml"){
|
|
137
|
+
this.htmlElements.push(elem);
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
return elem;
|
|
141
|
+
},
|
|
142
|
+
getRequiredColors: function(){
|
|
143
|
+
// summary:
|
|
144
|
+
// Get how many data series we have, so we know how many colors to use.
|
|
145
|
+
// returns: Number
|
|
146
|
+
// The number of colors needed.
|
|
147
|
+
return this.series.length; // Number
|
|
148
|
+
},
|
|
149
|
+
_getLabel: function(number){
|
|
150
|
+
return common.getLabel(number, this.opt.fixed, this.opt.precision);
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
if(has("dojo-bidi")){
|
|
154
|
+
Base.extend({
|
|
155
|
+
_checkOrientation: function(group, dim, offsets){
|
|
156
|
+
this.chart.applyMirroring(this.group, dim, offsets);
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
return Base;
|
|
161
|
+
});
|