@beauraines/rtm-api 1.15.0 → 1.15.2
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/.all-contributorsrc +26 -0
- package/CHANGELOG.md +7 -0
- package/README.md +26 -0
- package/docs/RTMClient.html +78 -78
- package/docs/RTMError.html +30 -30
- package/docs/RTMList.html +2 -2
- package/docs/RTMLocation.html +747 -0
- package/docs/RTMResponse.html +31 -31
- package/docs/RTMSuccess.html +2 -2
- package/docs/RTMTask.html +106 -33
- package/docs/RTMUser.html +736 -31
- package/docs/client_auth.js.html +2 -2
- package/docs/client_index.js.html +2 -2
- package/docs/client_user.js.html +2 -2
- package/docs/global.html +186 -2
- package/docs/index.html +13 -5
- package/docs/list_index.js.html +2 -2
- package/docs/location_index.js.html +140 -0
- package/docs/response_error.js.html +2 -2
- package/docs/response_response.js.html +2 -2
- package/docs/response_success.js.html +2 -2
- package/docs/task_helper.js.html +2 -2
- package/docs/task_index.js.html +12 -2
- package/docs/user_index.js.html +14 -3
- package/docs/user_lists.js.html +38 -4
- package/docs/user_locations.js.html +85 -0
- package/docs/user_tasks.js.html +34 -4
- package/docs/utils_fetch.js.html +2 -2
- package/docs/utils_rruleToDuration.js.html +102 -0
- package/package.json +3 -2
package/docs/user_lists.js.html
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
<label for="nav-trigger" class="overlay"></label>
|
|
24
24
|
|
|
25
25
|
<nav>
|
|
26
|
-
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html
|
|
26
|
+
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html#toString">toString</a></li><li data-type='method'><a href="RTMError.html#.networkError">networkError</a></li><li data-type='method'><a href="RTMError.html#.rateLimitError">rateLimitError</a></li><li data-type='method'><a href="RTMError.html#.referenceError">referenceError</a></li><li data-type='method'><a href="RTMError.html#.responseError">responseError</a></li><li data-type='method'><a href="RTMError.html#.serverError">serverError</a></li></ul></li><li><a href="RTMList.html">RTMList</a></li><li><a href="RTMLocation.html">RTMLocation</a></li><li><a href="RTMResponse.html">RTMResponse</a><ul class='methods'><li data-type='method'><a href="RTMResponse.html#has">has</a></li><li data-type='method'><a href="RTMResponse.html#toString">toString</a></li></ul></li><li><a href="RTMSuccess.html">RTMSuccess</a><ul class='methods'><li data-type='method'><a href="RTMSuccess.html#toString">toString</a></li></ul></li><li><a href="RTMTask.html">RTMTask</a></li><li><a href="RTMUser.html">RTMUser</a><ul class='methods'><li data-type='method'><a href="RTMUser.html#clearTaskIndexCache">clearTaskIndexCache</a></li><li data-type='method'><a href="RTMUser.html#get">get</a></li><li data-type='method'><a href="RTMUser.html#verifyAuthToken">verifyAuthToken</a></li><li data-type='method'><a href="RTMUser.html#~lists/add">lists/add</a></li><li data-type='method'><a href="RTMUser.html#~lists/archive">lists/archive</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/remove">lists/remove</a></li><li data-type='method'><a href="RTMUser.html#~lists/rename">lists/rename</a></li><li data-type='method'><a href="RTMUser.html#~lists/unarchive">lists/unarchive</a></li><li data-type='method'><a href="RTMUser.html#~tasks/add">tasks/add</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addNotes">tasks/addNotes</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addTags">tasks/addTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/complete">tasks/complete</a></li><li data-type='method'><a href="RTMUser.html#~tasks/decreasePriority">tasks/decreasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/get">tasks/get</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/increasePriority">tasks/increasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/move">tasks/move</a></li><li data-type='method'><a href="RTMUser.html#~tasks/postpone">tasks/postpone</a></li><li data-type='method'><a href="RTMUser.html#~tasks/priority">tasks/priority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/remove">tasks/remove</a></li><li data-type='method'><a href="RTMUser.html#~tasks/removeTags">tasks/removeTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setDueDate">tasks/setDueDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setName">tasks/setName</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setStartDate">tasks/setStartDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setURL">tasks/setURL</a></li><li data-type='method'><a href="RTMUser.html#~tasks/uncomplete">tasks/uncomplete</a></li></ul></li></ul><h3>Global</h3><ul><li><a href="global.html#callAPI">callAPI</a></li><li><a href="global.html#formQuery">formQuery</a></li><li><a href="global.html#rruleToISODuration">rruleToISODuration</a></li><li><a href="global.html#setStartDate">setStartDate</a></li></ul>
|
|
27
27
|
</nav>
|
|
28
28
|
|
|
29
29
|
<div id="main">
|
|
@@ -47,7 +47,7 @@ const _lists = require('../list/helper.js');
|
|
|
47
47
|
/**
|
|
48
48
|
* This module returns the RTM list-related functions for the RTMUser
|
|
49
49
|
* @param {RTMUser} user RTM User instance
|
|
50
|
-
* @returns {{get: function, update: function, add: function, remove: function, rename: function, archive: function}}
|
|
50
|
+
* @returns {{get: function, update: function, add: function, remove: function, rename: function, archive: function, unarchive: function}}
|
|
51
51
|
* @private
|
|
52
52
|
*/
|
|
53
53
|
module.exports = function(user) {
|
|
@@ -174,7 +174,7 @@ module.exports = function(user) {
|
|
|
174
174
|
}
|
|
175
175
|
}
|
|
176
176
|
|
|
177
|
-
//
|
|
177
|
+
// Archive the matching List
|
|
178
178
|
if ( ids.length === 1 ) {
|
|
179
179
|
return _lists.archive(ids[0], user, callback);
|
|
180
180
|
}
|
|
@@ -186,6 +186,40 @@ module.exports = function(user) {
|
|
|
186
186
|
|
|
187
187
|
};
|
|
188
188
|
|
|
189
|
+
/**
|
|
190
|
+
* Unarchive the specified RTM List for this User
|
|
191
|
+
* @param {string} name RTM List Name
|
|
192
|
+
* @param {function} callback Callback function(err)
|
|
193
|
+
* @param {RTMError} callback.err RTM API Error Response, if encountered
|
|
194
|
+
* @function RTMUser~lists/unarchive
|
|
195
|
+
*/
|
|
196
|
+
rtn.unarchive = function(name, callback) {
|
|
197
|
+
// Get the User's Lists
|
|
198
|
+
_lists.get(user, function(err, lists) {
|
|
199
|
+
if ( err ) {
|
|
200
|
+
return callback(err);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
// Find the matching list IDs
|
|
204
|
+
let ids = [];
|
|
205
|
+
for ( let i = 0; i < lists.length; i++ ) {
|
|
206
|
+
if ( lists[i].name.toLowerCase() === name.toLowerCase() ) {
|
|
207
|
+
ids.push(lists[i].id);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
// Unarchive the matching List
|
|
212
|
+
if ( ids.length === 1 ) {
|
|
213
|
+
return _lists.unarchive(ids[0], user, callback);
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
return callback(errors.referenceError());
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
});
|
|
220
|
+
|
|
221
|
+
};
|
|
222
|
+
|
|
189
223
|
return rtn;
|
|
190
224
|
};</code></pre>
|
|
191
225
|
</article>
|
|
@@ -199,7 +233,7 @@ module.exports = function(user) {
|
|
|
199
233
|
<br class="clear">
|
|
200
234
|
|
|
201
235
|
<footer>
|
|
202
|
-
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc
|
|
236
|
+
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat May 23 2026 14:02:27 GMT-0700 (Pacific Daylight Time) using the <a href="https://github.com/dwaring87/docdash">@dwaring87/docdash</a> theme.
|
|
203
237
|
</footer>
|
|
204
238
|
|
|
205
239
|
<script>prettyPrint();</script>
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<title>user/locations.js - Documentation</title>
|
|
6
|
+
|
|
7
|
+
<script src="scripts/prettify/prettify.js"></script>
|
|
8
|
+
<script src="scripts/prettify/lang-css.js"></script>
|
|
9
|
+
<!--[if lt IE 9]>
|
|
10
|
+
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
|
11
|
+
<![endif]-->
|
|
12
|
+
<link type="text/css" rel="stylesheet" href="styles/prettify.css">
|
|
13
|
+
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
|
|
14
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
15
|
+
</head>
|
|
16
|
+
<body>
|
|
17
|
+
|
|
18
|
+
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
|
|
19
|
+
<label for="nav-trigger" class="navicon-button x">
|
|
20
|
+
<div class="navicon"></div>
|
|
21
|
+
</label>
|
|
22
|
+
|
|
23
|
+
<label for="nav-trigger" class="overlay"></label>
|
|
24
|
+
|
|
25
|
+
<nav>
|
|
26
|
+
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html#toString">toString</a></li><li data-type='method'><a href="RTMError.html#.networkError">networkError</a></li><li data-type='method'><a href="RTMError.html#.rateLimitError">rateLimitError</a></li><li data-type='method'><a href="RTMError.html#.referenceError">referenceError</a></li><li data-type='method'><a href="RTMError.html#.responseError">responseError</a></li><li data-type='method'><a href="RTMError.html#.serverError">serverError</a></li></ul></li><li><a href="RTMList.html">RTMList</a></li><li><a href="RTMLocation.html">RTMLocation</a></li><li><a href="RTMResponse.html">RTMResponse</a><ul class='methods'><li data-type='method'><a href="RTMResponse.html#has">has</a></li><li data-type='method'><a href="RTMResponse.html#toString">toString</a></li></ul></li><li><a href="RTMSuccess.html">RTMSuccess</a><ul class='methods'><li data-type='method'><a href="RTMSuccess.html#toString">toString</a></li></ul></li><li><a href="RTMTask.html">RTMTask</a></li><li><a href="RTMUser.html">RTMUser</a><ul class='methods'><li data-type='method'><a href="RTMUser.html#clearTaskIndexCache">clearTaskIndexCache</a></li><li data-type='method'><a href="RTMUser.html#get">get</a></li><li data-type='method'><a href="RTMUser.html#verifyAuthToken">verifyAuthToken</a></li><li data-type='method'><a href="RTMUser.html#~lists/add">lists/add</a></li><li data-type='method'><a href="RTMUser.html#~lists/archive">lists/archive</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/remove">lists/remove</a></li><li data-type='method'><a href="RTMUser.html#~lists/rename">lists/rename</a></li><li data-type='method'><a href="RTMUser.html#~lists/unarchive">lists/unarchive</a></li><li data-type='method'><a href="RTMUser.html#~tasks/add">tasks/add</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addNotes">tasks/addNotes</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addTags">tasks/addTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/complete">tasks/complete</a></li><li data-type='method'><a href="RTMUser.html#~tasks/decreasePriority">tasks/decreasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/get">tasks/get</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/increasePriority">tasks/increasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/move">tasks/move</a></li><li data-type='method'><a href="RTMUser.html#~tasks/postpone">tasks/postpone</a></li><li data-type='method'><a href="RTMUser.html#~tasks/priority">tasks/priority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/remove">tasks/remove</a></li><li data-type='method'><a href="RTMUser.html#~tasks/removeTags">tasks/removeTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setDueDate">tasks/setDueDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setName">tasks/setName</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setStartDate">tasks/setStartDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setURL">tasks/setURL</a></li><li data-type='method'><a href="RTMUser.html#~tasks/uncomplete">tasks/uncomplete</a></li></ul></li></ul><h3>Global</h3><ul><li><a href="global.html#callAPI">callAPI</a></li><li><a href="global.html#formQuery">formQuery</a></li><li><a href="global.html#rruleToISODuration">rruleToISODuration</a></li><li><a href="global.html#setStartDate">setStartDate</a></li></ul>
|
|
27
|
+
</nav>
|
|
28
|
+
|
|
29
|
+
<div id="main">
|
|
30
|
+
|
|
31
|
+
<h1 class="page-title">user/locations.js</h1>
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<section>
|
|
40
|
+
<article>
|
|
41
|
+
<pre class="prettyprint source linenums"><code>'use strict';
|
|
42
|
+
|
|
43
|
+
const _locations = require('../location/helper.js');
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* This module returns the RTM location-related functions for the RTMUser
|
|
48
|
+
* @param {RTMUser} user RTM User instance
|
|
49
|
+
* @returns {{get: function}}
|
|
50
|
+
* @private
|
|
51
|
+
*/
|
|
52
|
+
module.exports = function(user) {
|
|
53
|
+
let rtn = {};
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Get the list of RTM Lists for this User from the API Server
|
|
57
|
+
* @param {function} callback Callback function(err, lists)
|
|
58
|
+
* @param {RTMError} callback.err RTM API Error Response, if encountered
|
|
59
|
+
* @param {RTMList[]} callback.lists List of User's RTM Lists
|
|
60
|
+
* @function RTMUser~lists/get
|
|
61
|
+
*/
|
|
62
|
+
rtn.get = function(callback) {
|
|
63
|
+
_locations.get(user, callback);
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
return rtn;
|
|
67
|
+
};</code></pre>
|
|
68
|
+
</article>
|
|
69
|
+
</section>
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
</div>
|
|
75
|
+
|
|
76
|
+
<br class="clear">
|
|
77
|
+
|
|
78
|
+
<footer>
|
|
79
|
+
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat May 23 2026 14:02:27 GMT-0700 (Pacific Daylight Time) using the <a href="https://github.com/dwaring87/docdash">@dwaring87/docdash</a> theme.
|
|
80
|
+
</footer>
|
|
81
|
+
|
|
82
|
+
<script>prettyPrint();</script>
|
|
83
|
+
<script src="scripts/linenumber.js"></script>
|
|
84
|
+
</body>
|
|
85
|
+
</html>
|
package/docs/user_tasks.js.html
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
<label for="nav-trigger" class="overlay"></label>
|
|
24
24
|
|
|
25
25
|
<nav>
|
|
26
|
-
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html
|
|
26
|
+
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html#toString">toString</a></li><li data-type='method'><a href="RTMError.html#.networkError">networkError</a></li><li data-type='method'><a href="RTMError.html#.rateLimitError">rateLimitError</a></li><li data-type='method'><a href="RTMError.html#.referenceError">referenceError</a></li><li data-type='method'><a href="RTMError.html#.responseError">responseError</a></li><li data-type='method'><a href="RTMError.html#.serverError">serverError</a></li></ul></li><li><a href="RTMList.html">RTMList</a></li><li><a href="RTMLocation.html">RTMLocation</a></li><li><a href="RTMResponse.html">RTMResponse</a><ul class='methods'><li data-type='method'><a href="RTMResponse.html#has">has</a></li><li data-type='method'><a href="RTMResponse.html#toString">toString</a></li></ul></li><li><a href="RTMSuccess.html">RTMSuccess</a><ul class='methods'><li data-type='method'><a href="RTMSuccess.html#toString">toString</a></li></ul></li><li><a href="RTMTask.html">RTMTask</a></li><li><a href="RTMUser.html">RTMUser</a><ul class='methods'><li data-type='method'><a href="RTMUser.html#clearTaskIndexCache">clearTaskIndexCache</a></li><li data-type='method'><a href="RTMUser.html#get">get</a></li><li data-type='method'><a href="RTMUser.html#verifyAuthToken">verifyAuthToken</a></li><li data-type='method'><a href="RTMUser.html#~lists/add">lists/add</a></li><li data-type='method'><a href="RTMUser.html#~lists/archive">lists/archive</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/remove">lists/remove</a></li><li data-type='method'><a href="RTMUser.html#~lists/rename">lists/rename</a></li><li data-type='method'><a href="RTMUser.html#~lists/unarchive">lists/unarchive</a></li><li data-type='method'><a href="RTMUser.html#~tasks/add">tasks/add</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addNotes">tasks/addNotes</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addTags">tasks/addTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/complete">tasks/complete</a></li><li data-type='method'><a href="RTMUser.html#~tasks/decreasePriority">tasks/decreasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/get">tasks/get</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/increasePriority">tasks/increasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/move">tasks/move</a></li><li data-type='method'><a href="RTMUser.html#~tasks/postpone">tasks/postpone</a></li><li data-type='method'><a href="RTMUser.html#~tasks/priority">tasks/priority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/remove">tasks/remove</a></li><li data-type='method'><a href="RTMUser.html#~tasks/removeTags">tasks/removeTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setDueDate">tasks/setDueDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setName">tasks/setName</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setStartDate">tasks/setStartDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setURL">tasks/setURL</a></li><li data-type='method'><a href="RTMUser.html#~tasks/uncomplete">tasks/uncomplete</a></li></ul></li></ul><h3>Global</h3><ul><li><a href="global.html#callAPI">callAPI</a></li><li><a href="global.html#formQuery">formQuery</a></li><li><a href="global.html#rruleToISODuration">rruleToISODuration</a></li><li><a href="global.html#setStartDate">setStartDate</a></li></ul>
|
|
27
27
|
</nav>
|
|
28
28
|
|
|
29
29
|
<div id="main">
|
|
@@ -400,7 +400,7 @@ module.exports = function(user) {
|
|
|
400
400
|
listId,
|
|
401
401
|
taskSeriesId,
|
|
402
402
|
taskId,
|
|
403
|
-
|
|
403
|
+
title,
|
|
404
404
|
notes,
|
|
405
405
|
user,
|
|
406
406
|
callback
|
|
@@ -628,7 +628,7 @@ module.exports = function(user) {
|
|
|
628
628
|
return callback(err);
|
|
629
629
|
}
|
|
630
630
|
|
|
631
|
-
//
|
|
631
|
+
// Sets the Due Date of the Task
|
|
632
632
|
return _tasks.setDueDate(
|
|
633
633
|
listId,
|
|
634
634
|
taskSeriesId,
|
|
@@ -642,6 +642,36 @@ module.exports = function(user) {
|
|
|
642
642
|
|
|
643
643
|
};
|
|
644
644
|
|
|
645
|
+
/**
|
|
646
|
+
* Set the Start Date of the specified Task
|
|
647
|
+
* @param {int} index Task Index
|
|
648
|
+
* @param {string} start The Start Date of the Task (RTM parsed date)
|
|
649
|
+
* @param {function} callback Callback function(err)
|
|
650
|
+
* @param {RTMError} callback.err RTM API Error Response, if encountered
|
|
651
|
+
* @function RTMUser~tasks/setStartDate
|
|
652
|
+
*/
|
|
653
|
+
rtn.setStartDate = function(index, start, callback) {
|
|
654
|
+
|
|
655
|
+
// Get the Task
|
|
656
|
+
_getTaskInfo(index, function(err, listId, taskSeriesId, taskId) {
|
|
657
|
+
if ( err ) {
|
|
658
|
+
return callback(err);
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
// Sets the Start Date of the Task
|
|
662
|
+
return _tasks.setStartDate(
|
|
663
|
+
listId,
|
|
664
|
+
taskSeriesId,
|
|
665
|
+
taskId,
|
|
666
|
+
start,
|
|
667
|
+
user,
|
|
668
|
+
callback
|
|
669
|
+
);
|
|
670
|
+
|
|
671
|
+
});
|
|
672
|
+
|
|
673
|
+
};
|
|
674
|
+
|
|
645
675
|
/**
|
|
646
676
|
* Set the Name of the specified Task
|
|
647
677
|
* @param {int} index Task Index
|
|
@@ -758,7 +788,7 @@ module.exports = function(user) {
|
|
|
758
788
|
<br class="clear">
|
|
759
789
|
|
|
760
790
|
<footer>
|
|
761
|
-
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc
|
|
791
|
+
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat May 23 2026 14:02:27 GMT-0700 (Pacific Daylight Time) using the <a href="https://github.com/dwaring87/docdash">@dwaring87/docdash</a> theme.
|
|
762
792
|
</footer>
|
|
763
793
|
|
|
764
794
|
<script>prettyPrint();</script>
|
package/docs/utils_fetch.js.html
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
<label for="nav-trigger" class="overlay"></label>
|
|
24
24
|
|
|
25
25
|
<nav>
|
|
26
|
-
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html
|
|
26
|
+
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html#toString">toString</a></li><li data-type='method'><a href="RTMError.html#.networkError">networkError</a></li><li data-type='method'><a href="RTMError.html#.rateLimitError">rateLimitError</a></li><li data-type='method'><a href="RTMError.html#.referenceError">referenceError</a></li><li data-type='method'><a href="RTMError.html#.responseError">responseError</a></li><li data-type='method'><a href="RTMError.html#.serverError">serverError</a></li></ul></li><li><a href="RTMList.html">RTMList</a></li><li><a href="RTMLocation.html">RTMLocation</a></li><li><a href="RTMResponse.html">RTMResponse</a><ul class='methods'><li data-type='method'><a href="RTMResponse.html#has">has</a></li><li data-type='method'><a href="RTMResponse.html#toString">toString</a></li></ul></li><li><a href="RTMSuccess.html">RTMSuccess</a><ul class='methods'><li data-type='method'><a href="RTMSuccess.html#toString">toString</a></li></ul></li><li><a href="RTMTask.html">RTMTask</a></li><li><a href="RTMUser.html">RTMUser</a><ul class='methods'><li data-type='method'><a href="RTMUser.html#clearTaskIndexCache">clearTaskIndexCache</a></li><li data-type='method'><a href="RTMUser.html#get">get</a></li><li data-type='method'><a href="RTMUser.html#verifyAuthToken">verifyAuthToken</a></li><li data-type='method'><a href="RTMUser.html#~lists/add">lists/add</a></li><li data-type='method'><a href="RTMUser.html#~lists/archive">lists/archive</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/remove">lists/remove</a></li><li data-type='method'><a href="RTMUser.html#~lists/rename">lists/rename</a></li><li data-type='method'><a href="RTMUser.html#~lists/unarchive">lists/unarchive</a></li><li data-type='method'><a href="RTMUser.html#~tasks/add">tasks/add</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addNotes">tasks/addNotes</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addTags">tasks/addTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/complete">tasks/complete</a></li><li data-type='method'><a href="RTMUser.html#~tasks/decreasePriority">tasks/decreasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/get">tasks/get</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/increasePriority">tasks/increasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/move">tasks/move</a></li><li data-type='method'><a href="RTMUser.html#~tasks/postpone">tasks/postpone</a></li><li data-type='method'><a href="RTMUser.html#~tasks/priority">tasks/priority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/remove">tasks/remove</a></li><li data-type='method'><a href="RTMUser.html#~tasks/removeTags">tasks/removeTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setDueDate">tasks/setDueDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setName">tasks/setName</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setStartDate">tasks/setStartDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setURL">tasks/setURL</a></li><li data-type='method'><a href="RTMUser.html#~tasks/uncomplete">tasks/uncomplete</a></li></ul></li></ul><h3>Global</h3><ul><li><a href="global.html#callAPI">callAPI</a></li><li><a href="global.html#formQuery">formQuery</a></li><li><a href="global.html#rruleToISODuration">rruleToISODuration</a></li><li><a href="global.html#setStartDate">setStartDate</a></li></ul>
|
|
27
27
|
</nav>
|
|
28
28
|
|
|
29
29
|
<div id="main">
|
|
@@ -119,7 +119,7 @@ module.exports = {callAPI,formQuery, buildUrl};
|
|
|
119
119
|
<br class="clear">
|
|
120
120
|
|
|
121
121
|
<footer>
|
|
122
|
-
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc
|
|
122
|
+
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat May 23 2026 14:02:27 GMT-0700 (Pacific Daylight Time) using the <a href="https://github.com/dwaring87/docdash">@dwaring87/docdash</a> theme.
|
|
123
123
|
</footer>
|
|
124
124
|
|
|
125
125
|
<script>prettyPrint();</script>
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<title>utils/rruleToDuration.js - Documentation</title>
|
|
6
|
+
|
|
7
|
+
<script src="scripts/prettify/prettify.js"></script>
|
|
8
|
+
<script src="scripts/prettify/lang-css.js"></script>
|
|
9
|
+
<!--[if lt IE 9]>
|
|
10
|
+
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
|
11
|
+
<![endif]-->
|
|
12
|
+
<link type="text/css" rel="stylesheet" href="styles/prettify.css">
|
|
13
|
+
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
|
|
14
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
15
|
+
</head>
|
|
16
|
+
<body>
|
|
17
|
+
|
|
18
|
+
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
|
|
19
|
+
<label for="nav-trigger" class="navicon-button x">
|
|
20
|
+
<div class="navicon"></div>
|
|
21
|
+
</label>
|
|
22
|
+
|
|
23
|
+
<label for="nav-trigger" class="overlay"></label>
|
|
24
|
+
|
|
25
|
+
<nav>
|
|
26
|
+
<h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="RTMClient.html">RTMClient</a><ul class='methods'><li data-type='method'><a href="RTMClient.html#get">get</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthToken">auth/getAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~auth/getAuthUrl">auth/getAuthUrl</a></li><li data-type='method'><a href="RTMClient.html#~auth/verifyAuthToken">auth/verifyAuthToken</a></li><li data-type='method'><a href="RTMClient.html#~user/create">user/create</a></li><li data-type='method'><a href="RTMClient.html#~user/export">user/export</a></li><li data-type='method'><a href="RTMClient.html#~user/exportToString">user/exportToString</a></li><li data-type='method'><a href="RTMClient.html#~user/import">user/import</a></li><li data-type='method'><a href="RTMClient.html#~user/importFromString">user/importFromString</a></li></ul></li><li><a href="RTMError.html">RTMError</a><ul class='methods'><li data-type='method'><a href="RTMError.html#toString">toString</a></li><li data-type='method'><a href="RTMError.html#.networkError">networkError</a></li><li data-type='method'><a href="RTMError.html#.rateLimitError">rateLimitError</a></li><li data-type='method'><a href="RTMError.html#.referenceError">referenceError</a></li><li data-type='method'><a href="RTMError.html#.responseError">responseError</a></li><li data-type='method'><a href="RTMError.html#.serverError">serverError</a></li></ul></li><li><a href="RTMList.html">RTMList</a></li><li><a href="RTMLocation.html">RTMLocation</a></li><li><a href="RTMResponse.html">RTMResponse</a><ul class='methods'><li data-type='method'><a href="RTMResponse.html#has">has</a></li><li data-type='method'><a href="RTMResponse.html#toString">toString</a></li></ul></li><li><a href="RTMSuccess.html">RTMSuccess</a><ul class='methods'><li data-type='method'><a href="RTMSuccess.html#toString">toString</a></li></ul></li><li><a href="RTMTask.html">RTMTask</a></li><li><a href="RTMUser.html">RTMUser</a><ul class='methods'><li data-type='method'><a href="RTMUser.html#clearTaskIndexCache">clearTaskIndexCache</a></li><li data-type='method'><a href="RTMUser.html#get">get</a></li><li data-type='method'><a href="RTMUser.html#verifyAuthToken">verifyAuthToken</a></li><li data-type='method'><a href="RTMUser.html#~lists/add">lists/add</a></li><li data-type='method'><a href="RTMUser.html#~lists/archive">lists/archive</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/get">lists/get</a></li><li data-type='method'><a href="RTMUser.html#~lists/remove">lists/remove</a></li><li data-type='method'><a href="RTMUser.html#~lists/rename">lists/rename</a></li><li data-type='method'><a href="RTMUser.html#~lists/unarchive">lists/unarchive</a></li><li data-type='method'><a href="RTMUser.html#~tasks/add">tasks/add</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addNotes">tasks/addNotes</a></li><li data-type='method'><a href="RTMUser.html#~tasks/addTags">tasks/addTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/complete">tasks/complete</a></li><li data-type='method'><a href="RTMUser.html#~tasks/decreasePriority">tasks/decreasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/get">tasks/get</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/getTask">tasks/getTask</a></li><li data-type='method'><a href="RTMUser.html#~tasks/increasePriority">tasks/increasePriority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/move">tasks/move</a></li><li data-type='method'><a href="RTMUser.html#~tasks/postpone">tasks/postpone</a></li><li data-type='method'><a href="RTMUser.html#~tasks/priority">tasks/priority</a></li><li data-type='method'><a href="RTMUser.html#~tasks/remove">tasks/remove</a></li><li data-type='method'><a href="RTMUser.html#~tasks/removeTags">tasks/removeTags</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setDueDate">tasks/setDueDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setName">tasks/setName</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setStartDate">tasks/setStartDate</a></li><li data-type='method'><a href="RTMUser.html#~tasks/setURL">tasks/setURL</a></li><li data-type='method'><a href="RTMUser.html#~tasks/uncomplete">tasks/uncomplete</a></li></ul></li></ul><h3>Global</h3><ul><li><a href="global.html#callAPI">callAPI</a></li><li><a href="global.html#formQuery">formQuery</a></li><li><a href="global.html#rruleToISODuration">rruleToISODuration</a></li><li><a href="global.html#setStartDate">setStartDate</a></li></ul>
|
|
27
|
+
</nav>
|
|
28
|
+
|
|
29
|
+
<div id="main">
|
|
30
|
+
|
|
31
|
+
<h1 class="page-title">utils/rruleToDuration.js</h1>
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<section>
|
|
40
|
+
<article>
|
|
41
|
+
<pre class="prettyprint source linenums"><code>'use strict';
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Convert an RTM-style rrule object into an ISO 8601 duration string.
|
|
45
|
+
* @param {{ $t: string }} rrule - Object with $t property like 'FREQ=DAILY;INTERVAL=1;WKST=SU'
|
|
46
|
+
* @returns {string} ISO 8601 duration string (e.g. 'P1D', 'PT3H')
|
|
47
|
+
* @throws {Error} on missing or unsupported frequency
|
|
48
|
+
*/
|
|
49
|
+
function rruleToISODuration(rrule) {
|
|
50
|
+
if (!rrule || typeof rrule.$t !== 'string') {
|
|
51
|
+
throw new Error('Invalid rrule object');
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const parts = rrule.$t
|
|
55
|
+
.split(';')
|
|
56
|
+
.map(p => p.split('='))
|
|
57
|
+
.reduce((acc, [k, v]) => {
|
|
58
|
+
acc[k] = v;
|
|
59
|
+
return acc;
|
|
60
|
+
}, {});
|
|
61
|
+
|
|
62
|
+
const freq = parts.FREQ;
|
|
63
|
+
const interval = parseInt(parts.INTERVAL || '1', 10);
|
|
64
|
+
const freqMap = {
|
|
65
|
+
YEARLY: 'Y',
|
|
66
|
+
MONTHLY: 'M',
|
|
67
|
+
WEEKLY: 'W',
|
|
68
|
+
DAILY: 'D',
|
|
69
|
+
HOURLY: 'H',
|
|
70
|
+
MINUTELY: 'M',
|
|
71
|
+
SECONDLY: 'S',
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
const designator = freqMap[freq];
|
|
75
|
+
if (!designator) {
|
|
76
|
+
throw new Error(`Unsupported FREQ: ${freq}`);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
const timeBased = ['HOURLY', 'MINUTELY', 'SECONDLY'].includes(freq);
|
|
80
|
+
return `${timeBased ? 'PT' : 'P'}${interval}${designator}`;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
module.exports = rruleToISODuration;
|
|
84
|
+
</code></pre>
|
|
85
|
+
</article>
|
|
86
|
+
</section>
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
<br class="clear">
|
|
94
|
+
|
|
95
|
+
<footer>
|
|
96
|
+
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.5</a> on Sat May 23 2026 14:02:27 GMT-0700 (Pacific Daylight Time) using the <a href="https://github.com/dwaring87/docdash">@dwaring87/docdash</a> theme.
|
|
97
|
+
</footer>
|
|
98
|
+
|
|
99
|
+
<script>prettyPrint();</script>
|
|
100
|
+
<script src="scripts/linenumber.js"></script>
|
|
101
|
+
</body>
|
|
102
|
+
</html>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beauraines/rtm-api",
|
|
3
|
-
"version": "1.15.
|
|
3
|
+
"version": "1.15.2",
|
|
4
4
|
"description": "Remember the Milk API Interface",
|
|
5
5
|
"author": "David Waring <dev@davidwaring.net> (https://davidwaring.net)",
|
|
6
6
|
"contributors": [
|
|
@@ -32,7 +32,8 @@
|
|
|
32
32
|
"eslint-plugin-jest": "^29.12.0",
|
|
33
33
|
"globals": "^16.0.0",
|
|
34
34
|
"jest": "^30.2.0",
|
|
35
|
-
"jsdoc": "^4.0.2"
|
|
35
|
+
"jsdoc": "^4.0.2",
|
|
36
|
+
"taffydb": "^2.7.3"
|
|
36
37
|
},
|
|
37
38
|
"repository": {
|
|
38
39
|
"type": "git",
|