All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.10.0 - 2019-02-??
- New
siteAPI method:group().create()#47 (DavidPratten) - New
siteAPI method:group().delete()#47 (DavidPratten) - New
siteAPI method:group().addUser()#47 (DavidPratten) - New
siteAPI method:group().removeUser()#47 (DavidPratten)
- Updated library to use content-type
nometadatainstead of always usingverbose, saving 25-50% of payload size of the JSON results (gitbrent) - Updated JSON result parsing to handle more cases/styles (nometadata, verbose, MS Graph) (gitbrent)
- Updated construction of REST
headersto make it more robust (gitbrent) - Updated Promise reject error message: Returned string now includes SharePoint
error.codeand no longer shows the "URL used:" string; Updated parsing code to be more robust; Now includes support for parsing Microsoft Graph REST API call errors. (gitbrent) - Fix:
APP_OPTS.baseUrlnow uses_spPageContextInfo.siteServerRelativeUrl#46 (DavidPratten)
1.9.0 - 2018-12-12
- New
fileAPI method:checkin()(gitbrent) - New
fileAPI method:checkout()(gitbrent) - New
fileAPI method:delete()(gitbrent) - New
fileAPI method:recycle()(gitbrent) - New
folderAPI method:add()(gitbrent) - New
folderAPI method:delete()(gitbrent) - New
folderAPI method:recycle()(gitbrent) - New
folderAPI method:upload()#18 (ra6hi9) - New
options()method: replacesbaseUrl()andnodeConfig()methods (gitbrent)
- Typescript: Modified declaration file #37 (kelvinbell)
- Allow single UserProfile property to be queried #38 (YakQin)
- The
rest()method now includes the page's__REQUESTDIGESTvalue for POST types with custom headers that did not already include a value forX-RequestDigest
DEPRECATED baseUrl() and nodeConfig() methods - use the new options() method instead.
v1.8.0 (2018-08-29)
Implemented Enhancements:
- New File Methods:
get(),info(),perms()#20 (ra6hi9)(YakQin)(gitbrent) - New Folder Methods:
files(),folders(),info(),perms()#20 (ra6hi9)(YakQin)(gitbrent) - Added Typescript Definitions #24 (Wireliner)
- Added two new properties to
list().cols()method:choiceValuesandallowFillInChoices - Added "browser" field to
package.jsonto improve library integration
Fixed Bugs:
- The list()
baseUrloption is ignored by the underlying versions query. #27 (gitbrent) - sprLib.user(options).profile() using "post"? #30 (YakQin)
- The
baseUrloption no longer works inuser()methods #31 (YakQin) - Typescript fix: listCols should be optional #33 (csoren)
v1.7.0 (2018-05-14)
Implemented Enhancements:
- Renamed
getItems()list method toitems(). - Modify user() method option names to be case insensitive #17 (gitbrent)
- Get members of a specific group given its name #19 (ra6hi9)
Fixed Bugs:
- Added
catch()to core REST method call to properly handle failed queries - Updated Node detection to be more accurate and work with Angular, etc. (aka:"ERROR in ./node_modules/sprestlib/dist/sprestlib.js") #23 (azmatzuberi)
v1.6.0 (2018-03-05)
Implemented Enhancements:
- Add support for SP User Profile API #14 (ra6hi9)
- Removed jQuery methods from sprestlib.js - there are now ZERO library dependencies!
- Add async/await example #16 (wmertens)
- Removed all ES6 code from
sprestlib-demo.html(it is IE11 compatible now!), plus moved deps to CDN from local files. - Improved error messages/feedback
Fixed Bugs:
- Fixed two issues with CRUD operations via Node.js
- Fixed a few minor issues with parsing no results in certain scenarios, etc.
v1.5.0 (2018-02-16)
Implemented Enhancements:
- Form binding/population spun off into separate
sprestlib-ui.jslibrary - Created a separate demo page for
sprestlib-ui.jslibrary - Added new dist file (minified library):
sprestlib.min.js
Fixed Bugs:
- Selecting the same field name twice results in undefined #15 (gitbrent)
- Fixed a null-check defect in REST result parsing
v1.4.0 (2018-01-08)
Implemented Enhancements:
- Add paging/skip/next ability to getItems() #4 (Wireliner)
- Error in list(listname).create(data) #5 (Wireliner)
- Add new option for auth DigestToken #6 (Wireliner)
- Add new 'guid' option to list() #7 (YakQin)
- Add new 'baseUrl' option to user() #8 (YakQin)
- Add new 'nodeEnabled' option for Angular/etc #9 (ra6hi9)
v1.3.0 (2017-11-27)
Implemented Enhancements:
- BREAKING CHANGE:
list().baseUrl()removed! (new:baseUrlparam tolist()) - BREAKING CHANGE:
version()method removed! (new:sprLib.versionproperty) .list()now accepts an object in addition to listname (string)- Added new
metadataoption tolist().getItems()andrest()methods - Added new Site methods:
site()- returns info, perms, users, groups, subsites, etc.
v1.2.1 (2017-10-12)
Fixed Bugs:
- Url param passing .rest() with 'http'/'https' is not being parsed correctly #2 (gitbrent)
- Query options passed to .rest() are only parsed when 'queryCols' exists #3 (gitbrent)
v1.2.0 (2017-10-05)
Implemented Enhancements:
- Added Electron compatibility
- Moved Qunit and SpRestLib script loading to dynamic for demo and qunit pages.
Fixed Bugs:
v1.1.0 (2017-09-07)
Fixed Bugs:
- Fixed bug in error messages introduced in last release
- Fixed error handling in Node.js
- Fixed return of empty array for null Person/lookup fields
v1.0.0 (2017-08-08)
Implemented Enhancements:
- Added ability to lookup users by
login - Node connectivity to SharePoint (Office 365) works now
- Last bit of cleanup work to arrive at v1.0.0
v0.12.0 (2017-07-05)
Fixed Bugs:
- Lots of code cleanup and bug fixes
v0.11.0 (2017-06-25)
Fixed Bugs:
- Misc bug fixes
Implemented Enhancements:
- Added
baseUrlmethod to List API to dynamically set baseUrl on a per-call basis - Added
cache,contentTypeandtype='POST' options torest()API - Added ability to get user info by
titleoremail - Added new
.recycle()List method - Added sprestlib.bundle.js file (using gulp)
- Added bower support
v0.10.0 (2017-05-11)
Code Cleanup New Features
v0.9.0 (2017-01-31)
Initial Release