dygraphs-2.2.2/.browserslistrc 0100644 0000000 0000000 00000000032 15231541507 0013353 0 ustar 00 last 100 years
not ie < 9
dygraphs-2.2.2/.github/CONTRIBUTING.md 0100644 0000000 0000000 00000001322 15231541507 0014057 0 ustar 00 Filing a bug report? Please include the following:
1. Link to a page which demonstrates the problem, preferably a jsfiddle (use as a template)
2. Browser and Operating System that exhibit the problem
3. Version of dygraphs that you're using
It also helps if you include the non-compacted version of the JS on your
page. For instance, instead of doing this:
```html
```
do this:
```html
```
This makes error messages and debugging simpler. The jsfiddle does this automatically.
Sending a Pull Request? See our [guide to making dygraphs contributions](/DEVELOP.md).
dygraphs-2.2.2/.github/ISSUE_TEMPLATE.md 0100644 0000000 0000000 00000000000 15231541507 0022373 1dygraphs-2.2.2/.github/CONTRIBUTING.md ustar 00 dygraphs-2.2.2/.github/PULL_REQUEST_TEMPLATE.md 0100644 0000000 0000000 00000001274 15231541507 0015435 0 ustar 00 Please read the guide to making dygraphs changes:
https://dygraphs.com/changes.html
Pull Requests will only be accepted if:
- You clearly explain what you're adding and why you believe it's an
improvement. For example: "Fixes issue #123".
- You adhere to the style of the rest of the dygraphs code base.
- You write an `auto_test` for the code that you're adding.
- You certify that no “AI”/LLMs were used while preparing the PR.
Be sure to document any new options you add. Also be aware that PRs which add
options are likely to be rejected. dygraphs already has many options. If you
can fit your feature into one of those or implement it as a plugin, it will be
more likely to get merged.
dygraphs-2.2.2/.github/workflows/build.yml 0100644 0000000 0000000 00000003710 15231541507 0015510 0 ustar 00 {
"concurrency": {
"cancel-in-progress": true,
"group": "pages"
},
"jobs": {
"build-and-pages": {
"environment": {
"name": "github-pages",
"url": "${{ steps.deployment.outputs.page_url }}"
},
"if": "github.repository == 'mirabilos/dygraphs'",
"runs-on": "ubuntu-24.04",
"steps": [
{
"uses": "actions/checkout@v7.0.1"
},
{
"run": "sh .pages.sh"
},
{
"uses": "actions/upload-artifact@v7.0.1",
"with": {
"name": "package-lock.json",
"path": "package-lock.json"
}
},
{
"uses": "actions/upload-pages-artifact@v5.0.0",
"with": {
"include-hidden-files": true
}
},
{
"run": "mksh .post.sh"
},
{
"id": "deployment",
"uses": "actions/deploy-pages@v5.0.0"
}
]
},
"build-split": {
"environment": {
"name": "GHA-output",
"url": "${{ steps.deployment.outputs.page_url }}"
},
"if": "github.repository == 'danvk/dygraphs'",
"runs-on": "ubuntu-24.04",
"steps": [
{
"uses": "actions/checkout@v7.0.1"
},
{
"run": "sh .pages.sh"
},
{
"uses": "actions/upload-artifact@v7.0.1",
"with": {
"name": "package-lock.json",
"path": "package-lock.json"
}
},
{
"uses": "actions/upload-pages-artifact@v5.0.0",
"with": {
"include-hidden-files": true
}
},
{
"run": "mksh .post.sh"
}
]
}
},
"name": "build and test",
"on": {
"push": {
"branches": [
"debian",
"master"
]
},
"workflow_dispatch": null
},
"permissions": {
"contents": "read",
"id-token": "write",
"pages": "write"
}
}
dygraphs-2.2.2/.github/workflows/gha-update.yml 0100644 0000000 0000000 00000001225 15231541507 0016427 0 ustar 00 {
"jobs": {
"doit": {
"runs-on": "ubuntu-latest",
"steps": [
{
"uses": "actions/checkout@v7.0.1",
"with": {
"token": "${{ secrets.WORKFLOW_SECRET }}"
}
},
{
"uses": "saadmk11/github-actions-version-updater@v0.9.0",
"with": {
"ignore": "github/codeql-action/init@v4,github/codeql-action/analyze@v4,msys2/setup-msys2@v2",
"pull_request_user_reviewers": "mirabilos",
"token": "${{ secrets.WORKFLOW_SECRET }}"
}
}
]
}
},
"name": "GitHub Actions Version Updater",
"on": "workflow_dispatch"
}
dygraphs-2.2.2/.gitignore 0100644 0000000 0000000 00000000321 15231541507 0012254 0 ustar 00 *.log
__pycache__
_site
coverage
debian/copyright
dist
disttmp
docroot
docs/download.html
docs/options.html
docs/versions.html
dygraphs-2.*.tgz
env
jsdoc
jsdoc.tmp
node_modules
package-lock.json
site
src-es5/
dygraphs-2.2.2/.jshintrc 0100644 0000000 0000000 00000000420 15231541507 0012111 0 ustar 00 {
"newcap": true,
"noarg": true,
"shadow": true,
"strict": true,
"forin": true,
"immed": true,
"latedef": true,
"nonbsp": true,
"undef": true,
"sub": true,
"browser": true,
"devel": true,
"globals": {
"DEBUG": true
},
"maxerr": 100000
}
dygraphs-2.2.2/.jslibs 0120777 0000000 0000000 00000000000 15231541507 0013775 2docs/.jslibs ustar 00 dygraphs-2.2.2/.pages.sh 0100644 0000000 0000000 00000004130 15231541507 0011777 0 ustar 00 #!/bin/sh
sudoapt() {
local _sudoapt_e=''
if command -v eatmydata >/dev/null 2>&1; then
_sudoapt_e=eatmydata
fi
sudo env DEBIAN_FRONTEND=noninteractive $_sudoapt_e apt-get "$@"
}
sudoagi='sudoapt --purge install --no-install-recommends -y'
set -ex
mksh -c true || {
$sudoagi mksh
exec mksh "$0" "$@"
exit 255
}
export LC_ALL=C
unset LANGUAGE
set -o pipefail
rm -f .post.state
if test -h .post.state || test -e .post.state; then exit 255; fi
state=''
$sudoagi eatmydata
sudoapt clean
sudoapt update
#sudoapt --purge dist-upgrade -y
$sudoagi eatmydata git \
ed jq node-jsdoc2 \
libjs-bootstrap libjs-jquery libjs-jquery-ui \
mksh pax python3
: drop any pre-installed PhantomJS as they cause breakage
bash -c 'set -o noglob; while true; do found=0; for x in $(which -a phantomjs); do test -e "$x" || continue; found=1; rm -f "$x"; done; test $found = 1 || break; done'
eatmydata env TMPDIR=/tmp npm install -g phantomjs@1.9.7-15
eatmydata env TMPDIR=/tmp npm install
(eatmydata npm run clean || :)
eatmydata npm run build
eatmydata npm run test || state="$state test"
eatmydata npm run test-min || state="$state test-min"
if [[ $GITHUB_REPOSITORY = danvk/dygraphs ]]; then
eatmydata npm run coverage || state="$state coverage"
eatmydata mksh scripts/post-coverage.sh || state="$state post-coverage"
eatmydata mksh scripts/weigh-in.sh || state="$state weigh-in"
fi
rm -rf _site
mv site _site
cd _site
find . -type d -print0 | sort -z | xargs -0 mksh ../scripts/mkdiridx.sh
if [[ $GITHUB_REF = refs/heads/debian && $GITHUB_REPOSITORY = mirabilos/dygraphs ]]; then
echo dygraph.github.mirsolutions.de >CNAME
imprint_text='Impressum und Datenschutzerklärung'
else
imprint_text=
fi
if [[ -n $imprint_text ]]; then
grep -FrlZ '@@@PLACE_IMPRINT_LINK_HERE_IF_NECESSARY@@@' . | \
xargs -0 perl -pi -e '
s'\'''\''$1.q{'"$imprint_text"'}.$2'\''eo
'
fi
cd ..
set -o noglob
echo $state >.post.state
dygraphs-2.2.2/.post.sh 0100644 0000000 0000000 00000000346 15231541507 0011672 0 ustar 00 #!/bin/sh
echo ::group::Check whether .pages.sh failed anywhere
state=$(cat .post.state || echo state-file-missing)
if test -n "$state"; then
echo "E: .pages.sh failed in: $state"
exit 1
fi
echo "I: nope, ok"
echo ::endgroup::
dygraphs-2.2.2/CHANGES.md 0100644 0000000 0000000 00000025025 15231541507 0011666 0 ustar 00 # v2.2.2 (2026-07-26)
## New features
- Define `Dygraph.integerTicks` (#925), `Dygraph.pickDateTickGranularity`
- Warn in console if points are out of range (#1050)
## Bugfixes
- Re-add missing `Dygraph.DOTTED_LINE` export
- Some edge cases in the crosshair plugin (#1034, #1038, #1039, #1040)
- Update list of exported symbols
- Drop “comments are OK on data lines” from the CSV documentation, as the CSV file format has no notion of a comment, and the current code merely strips lines beginning with an octothorpe and reportedly sometimes also parts of fields, but (obviously) the field separator can then not be used within a comment
- Document that the input data should be sorted (#503)
- Make date parsing more robust and in particular, allow the epoch (#1062)
- Work around breaking changes in newer node-source-map (Debian#1134275)
## Other user-visible changes
- Add talk link to `tutorial.html`
- Documentation: make clear that use of so-called “AI” / LLMs to prepare a contribution or to communicate with the project or its users is not permitted
- Fix most broken links
## Internal refactors/fixes
- Switch from `jsdoc-toolkit` to `node-jsdoc2` (Debian #1074595)
- Bump some package versions matching Debian bookworm and \*buntu 24.04
- Add support for newer babeljs and uglifyjs3
- Do not embed pre-uglified browser-pack shim, as it may break old browsers
# v2.2.1 (2023-02-16)
## Future incompatibilities
- `window.smoothPlotter` will not be set by `extras/smooth-plotter.js` any more RSN
## New features
- Permit initialising with `[]` as “no data yet” indicator (#597)
- The modularisation of the test setup also allows stable access to exported functions (e.g. `Dygraph._require('dygraphs/src/dygraph-utils.js').numberValueFormatter`) which makes writing one’s own value formatters easier (as usual, proceed with care, exports with an underscore are internal); see for the exposed surface
- Provide Dygraph.onDOMready(cb) as lightweight jQuery(cb)/… alternative, to keep the demos/tests self-contained
## Bugfixes
- Fix synchroniser not calling user’s `drawCallback` when blocked (#953) plus do not redraw unnecessarily
- Documentation fixes and improvements including self-checks where possible
- Fix missing legend for `x == -1` (#1002)
- Allow ES6-importing the extras (#848) (#989) (#1009)
- Fix broken zoom also in the drawing test (same as #611/#953)
- Resetting `panEdgeFraction` now works
- Fix tests/unboxed-spark regression caused by PR #936
- Synchroniser doesn’t force x axis range if unzoomed (#956)
## Other user-visible changes
- Fix issue #611 in the drawing demo gallery (#953)
- `jq` is now also required to build
- Fix typos, wordings, apostrophes, etc.
- Export `pickDateTickGranularity` so overriding `dateTicker` is easier
- Error bars are now properly called high/low bands (#1004), but the options stay the same for compatibility
- Document annotations xval for Date better (#970)
- Document more strongly that series labels must be unique (#960)
- Remove references to nōn-existing `yAxisLabelWidth` option
- Fix jsFiddle links from gallery
## Internal refactors/fixes
- Shrink `tests.js` source map and make its build reproducible on Debian
- `tests/resizable.html` exposes the graph object, for quick F12 in-browser use
- Generate `versions.html` and release notes from new top-level [`CHANGES.md`](https://github.com/danvk/dygraphs/blob/master/CHANGES.md)
- Modularise dygraphs/tests setup so we can now also test the minified prod css/js (#1028)
- Generate stable orig tarballs for releases ourselves (we still use the NPM ones for binary tarballs)
- Less fragility with arrow function `this` rebinding check
# v2.2.0 (2023-01-25)
This is the first “full” release after v2.1.0 with the following news:
## Breaking changes
- Stop parsing the deprecated 8-digit ‘YYYYMMDD’ date format (#984) (#985) (#1023)
- GWT “support” is no longer pertinent as we cannot recompile the binary JAR; the latter is still available from the website for now
## New features
- Add option to colour the range selector’s veil (#856)
- Add `strokeStyle` option to crosshair plugin (#955)
- Support `DocumentFragment` as a result from a `legendFormatter` function (#958) (#959)
- Add data index to `legendFormatter` data (#965)
- Implement `#RRGGBB`/`#RRGGBBAA` hex colour parsing
- Make `animateBackgroundFade` into an option
- Add new `resizable` option using `ResizeObserver` on maindiv + CSS
- Add offset config for legend div in follow mode (#946)
## Bugfixes
- Fix duplicate annotation when having duplicate points (#826)
- Make sure that `canvasx` and `canvasy` properties are initialised from the start (#896)
- Fix issue #781 when the y range is zero (#909)
- Synchroniser now calls `highlightCallback` (#935)
- Fix `drawAxes` to allow one of two y axes to be drawn (#936)
- LEGEND: Don’t show y if value is undefined (#853) (#947)
- Fixed “Cannot read property 'length' of undefined” issue (#962) (#963)
- Two fixes in the calculations of pinch-zoom (#990)
- Fix for double paint of grid of x-axis (#1007)
- Fix number of days in a year (#1012)
- Fix `labelsKMB` and `labelsKMG2` (#571) (#994) (#1022)
- Fix label position in `onmouseover` legend mode was never updated
- Fix several cases of mispositioning/missizing by enabling elements before using `offsetWidth` etc.
- Make it possible to use `logscale` (and `sigma`, `wilsonInterval`) per-axis (#986)
## Other user-visible changes
- Documentation is now shipped (mostly self-contained) in the release
- Tests that use Google JSAPI are now marked ⚠ and no other external content is loaded anywhere
- Calculate legend positioning relative to closest data point (#1013)
- Add missing documentation about annotations `xval` option (#992)
- source mapping URLs are now correct (#1027)
- Ship ES5 versions of extras (#952), use them in examples
- Fix documentation/website HTML/CSS/JS bugs (#979) (#1008)
- On the website, external links are now clearly labelled
- The documentation and website now have browsable subdirectories by manually generated directory index files
- Link to UNPKG as CDN as well (to keep neutral; use of CDNs in websites violates the EU-GDPR)
- Most issues with right-to-left languages should now be fixed (#1019)
- Document that Dygraph will misbehave if the main div has padding
## Internal refactors/fixes
- Use link href, not link src (#904)
- Add missing semicolon in externs (#964)
- Large build system improvements relying in large parts on Debian and GHA
- Full licence review as part of uploading to Debian (#1024) (#1025) (#1029); drop embedded code copies
- Fix some JSDoc warnings
- Update to contemporary versions of Python 3, jQuery, Babel, etc.
- Add copies of design documents that were previously only available on Google Docs or part of GitHub issues to offline documentation
- Nuke useless semicola after function declaration bodies
- Fix closure type annotation in `hairlines.js`
- Remove already commented-out obsolete, or redundant, code
# v2.1.0 (2017-12-08)
## New features
- Double click event can be captured and cancelled by plugins (#840)
- `setAnnotations`’ second parameter is now an optional boolean (#851)
- Add `pixelRatio` option, which may allow improved performance on smaller screens by controlling the canvas’ pixel ratio (#877)
- x axis label and tick logic can now operate at millisecond-level granularity (#893)
## Bug fixes
- Repair a bug in “Custom interaction models” demo (#825)
## Internal refactors/fixes
- Fix various spelling mistakes (#844)
- Fix a couple of type signatures in `dygraph-externs.js` (#859)
# v2.0.0 (2017-01-11)
## Breaking changes
- JS files were renamed to `dygraph.js` and `dygraph.min.js`.
- There’s now a `dygraph.css` file that you must include.
- Dropped support for old IE and other non-standard browsers. dygraphs works in IE11. I’m not sure about IE9 and IE10.
- Double-click to unzoom zooms all the way out (and ignores `valueRange`).
- Dropped old-style per-axis/per-series options.
## New features
- Add a `legendFormatter` option (#683)
- `this` is the Dygraph object in all callbacks
- pass through (row, col) to `valueFormatter`
- Option to not sync range in `extras/synchronizer.js`
- Additional options for styling the range selector
- `getRowForX` method
- `setVisibility` can set the visibility of multiple series at once.
- crosshair plugin extra
- rebase/straw broom plugin (#590)
- `highlightSeriesBackgroundColor` option
- `yAxisExtremes()` method.
- Passing strings in native format now throws. (Previously it kinda sorta worked.)
## Bug fixes
- Selections are always cleared with animations
- synchronizer calls previously-set callbacks
- synchronizer only syncs when graphs are ready
- Reset on synchronized graphs failed (#524)
- fix to improve synchronizer performance (#658)
- binary search bug fix in synchronizer
- Fix range selection when chart is located inside fullscreen element (#576)
- `fillAlpha` can be set per-series when `fillGraph` is set.
- `xRangePad` was ignored on unzoom (#657)
- Allow selected points where canvas-y coordinate is 0 (#692)
- Using `valueRange` with `logscale` and `yRangePad` has unexpected results (#661)
- With `drawGapEdgePoints`, unwanted point often drawn at beginning of chart (#745)
## Other user-visible changes
- `legend: follow` positioning changes
## Internal refactors
- Code moved into a `src/` directory
- Tests use Mocha instead of jstd
- dygraphs is split into ES6 modules and uses some ES6 features (e.g. arrows and destructuring).
- dygraphs is built using Babel and browserify
- Code coverage is tracked continuously
- Bundle size is now tracked continuously
# v1.1.1 (2015-06-01)
- Set `this` to the dygraph in all callbacks.
- Minor bug fixes.
# v1.1.0 (2014-12-03)
## Highlights
- dygraphs is now “retina” compatible.
- Dramatically improved performance for filled charts (i.e. `fillGraph`)
- More sensible date ticks: “Jan 08” → “Jan 2008”, “29Jan” → “29 Jan”
- Using a non-existent option now throws (with `dygraph-combined-dev.js`)
- x-axis log scales
- The `labelsUTC` option forces UTC formatting for all labels.
- The new DataHandler system allows for more flexibility in data loading.
- dygraphs has shrunk, because we moved some stuff into “extras” (133 KiB → 122 KiB)
This will be the last major release to support browsers without a native