Commit graph

55 commits

Author SHA1 Message Date
sasensi
f25690aa91 Rename type definition file to paper.d.ts. 2018-12-03 14:41:47 +01:00
sasensi
bbd65324bc Add typescript definition generation
This add a gulp task (`gulp docs:typescript`) to automatically generate
a typescript definition for the library. This should solve the problem
of having an out of sync type definition when we change the API.

This task takes advantage of existing JSDoc parsing to generate a
temporary file which is later formatted through a mustache template to
generate the final definition. This definition is then tested by
compiling a typescript file that use it.
The generated definition is added to the `gulp zip` task in order to be
published along with the bundled library.

So 2 new dev-dependencies are added with this change: `mustache` and
`typescript` packages. Using node and mustache to generate the
definition instead of relying on existing templating system is
motivated by a better development experience, with easier debugging
possibilities... through the usage of more modern tools.

As a side note, support of "rest parameters" (when a parameter can be
present multiple times) is added to existing JSDoc parser in order to
support this pattern on typescript side (E.g. for `Color#set()` method
which accept any sequence of parameters that is supported by `Color`
constructors).
2018-12-03 14:41:47 +01:00
Jürg Lehni
0cced9788c Switch back to load.js versions on develop branch. 2018-12-03 14:29:13 +01:00
Jürg Lehni
a66391678e Release version 0.12.0 2018-12-03 14:26:23 +01:00
Jürg Lehni
9c684091f4 Move Tween class to anim namespace + changes
- Change from item to object, as it can be used to tween any property on any object really
- Make _handleFrame() private
- Minor documentation tweaks
2018-12-03 12:51:31 +01:00
sapics
cfc5a912da Replace url to avoid redirection
Replace http://jonathanpuckey.com to https://puckey.studio
2018-11-14 11:24:32 +01:00
Jürg Lehni
8518baf6bb Revert temporary publish hack 2018-10-17 17:00:18 +02:00
Jürg Lehni
3cc3ce8f13 Release version 0.11.7 2018-10-17 16:56:58 +02:00
Jürg Lehni
e043c6cbd5 Fix issues with gulp publish script 2018-10-17 16:49:04 +02:00
Jürg Lehni
1c4e5cd84b Update JSDoc 2018-10-03 18:38:40 +02:00
Jürg Lehni
e41ed5e723 Increase test:phantom timeout 2018-10-03 11:37:46 +02:00
Jürg Lehni
c72f578d8d Gulp: Prevent paperjs.zip from showing up in NPM packages. 2017-04-22 20:01:34 +02:00
Jürg Lehni
11e9437b37 Gulp: Bump website version when publishing. 2017-04-21 12:54:40 +02:00
Jürg Lehni
5d125d6a43 Improve publishing of website assets. 2017-04-20 19:51:45 +02:00
Jürg Lehni
eeed73c1e9 Sub-modules need to be updated and published before main module. 2017-04-20 18:53:35 +02:00
Jürg Lehni
966425d962 Some tweaks on publishing scripts. 2017-04-20 18:16:21 +02:00
Jürg Lehni
118deea20b Gulp: Define publish:website task to keep paperjs.org in sync. 2017-04-20 12:50:09 +02:00
Jürg Lehni
d364c32e6b Minor fixes. 2017-04-19 23:34:35 +02:00
Jürg Lehni
d0a4532d94 Release version 0.11.0 2017-04-19 22:07:46 +02:00
Jürg Lehni
2bac4e71e0 Introduce paper-jsdom and paper-jsdom-canvas submodules.
Relates to #1252
2017-04-19 19:53:39 +02:00
Jürg Lehni
36f5b314d9 Update JSDoc and a minor documentation fix. 2017-01-11 14:45:52 +01:00
Jürg Lehni
fa4502dfe3 Include NodeJS related files in zipped distribution. 2017-01-01 14:40:58 +01:00
Jürg Lehni
56cfdd9ab6 Only use precommit and prepush hooks when working on develop branch.
This should solve @iconexperience's troubles outlined in https://github.com/paperjs/paper.js/issues/1116#issuecomment-244037792
2016-09-20 17:07:38 -04:00
Jürg Lehni
89c60b1a05 Loosely couple Node.js code to canvas module.
Treat absence of canvas module like a web worker context.
Relates to #1103
2016-07-12 19:11:09 +02:00
Jürg Lehni
4df2dfb343 No need for npm prepublish now that we have the gulp publish task. 2016-07-09 23:49:11 +02:00
Jürg Lehni
a14e1e4c97 Replace extend() with Object.assign() 2016-07-09 23:36:11 +02:00
Jürg Lehni
bf2eada11c Remove component.json and clean up package files a bit.
Component is not maintained anymore, per https://github.com/componentjs/component/issues/639
2016-07-09 21:31:25 +02:00
Jürg Lehni
6154b44d68 Gulp: Cleanup publish task. 2016-07-09 21:20:47 +02:00
Jürg Lehni
0311c267f5 Gulp: More work on improved publish task for Bower. 2016-07-09 20:56:58 +02:00
Jürg Lehni
1b1b9a1606 Gulp: Change publish task so that dist folder contains built versions on master branch.
As required by Bower...
2016-07-09 19:48:02 +02:00
Jürg Lehni
e13300440e Correct a few issues with documentation and NPM publishing that slipped through in the v0.10.0 release. 2016-07-09 17:13:15 +02:00
Jürg Lehni
6aa983f367 Gulp: Use correct depenency sequence for publish task. 2016-07-09 16:37:00 +02:00
Jürg Lehni
7e20770126 Gulp: Fix docs task.
Omitted return means streaming wasn't working.
2016-07-09 16:11:18 +02:00
Jürg Lehni
cfa215051d Update to latest gulp-git-streamed and remove publish workaround code. 2016-07-03 12:17:37 +02:00
Jürg Lehni
3e2a3827fd Gulp: Have jshint errors trigger Travis CI failures. 2016-06-10 17:22:11 +02:00
Jürg Lehni
8542eb62b4 Gulp: Add test:browser task, to solve CORS issues on Chrome. 2016-02-11 10:05:21 +01:00
Jürg Lehni
5cbc8ef775 Gulp: Simplify build options handling and remove gitty dependency. 2016-01-31 14:45:34 +01:00
Jürg Lehni
1a3a4be0b6 Gulp: Implement publish task. 2016-01-31 14:30:14 +01:00
Jürg Lehni
834d2303a6 Travis CI: Implement automatic deployment of prebuilt versions on each commit, and caching of assets and NVM.
Builds are deployed to prebuilt/dist an prebuilt/module branches.
2016-01-31 12:43:38 +01:00
Jürg Lehni
8c60931200 Tests: Update to gulp-qunits 2.0.1 2016-01-31 12:43:38 +01:00
Jürg Lehni
f2a132f498 Tests: Don't use noGlobas in Node.js QUnit tests for now.
As it simply doesn't work yet.
2016-01-31 12:43:38 +01:00
Jürg Lehni
567f286774 Tests: Switch to our own gulp-qunits module.
Since it handles PhantomJS as well as Node.js execution, and formats errors identically and quickly.
2016-01-31 12:43:38 +01:00
Jürg Lehni
662b974104 Tests: gulp test now performs both browser and nod based tests. 2016-01-31 12:43:38 +01:00
Jürg Lehni
e0429f44df Tests: Improve QUnit test logging and various cleanup on helpers. 2016-01-31 12:43:38 +01:00
Jürg Lehni
4c84c3dad5 Tests: Start getting QUnit tests to work on Node.js
Work in progress…
2016-01-31 12:43:20 +01:00
Jürg Lehni
77be5616b6 Include paper-core.js in load.js mechanism, and improve root folder guessing again. 2016-01-26 20:26:32 +01:00
Jürg Lehni
e1a51f858a More work on unified version for browsers and node.
Relates to #739
2016-01-26 20:02:23 +01:00
Jürg Lehni
1dcb19ec3b Implement jshint and watch task. 2016-01-25 11:35:15 +01:00
Jürg Lehni
89b3238385 Build and copy paper.js vesrion for docs.
And fix build issues introduced in previous commit: We do need a closure to create local name variables for the callback fucntions.
2016-01-25 11:26:08 +01:00
Jürg Lehni
d09459646d Move clear tasks to the task files they relate to. 2016-01-25 11:06:45 +01:00