Рад сообщить, что недавно был выпущен новый релиз SPTypeScript версии 1.1
Основные нововведения
Совместимость с TypeScript 0.9
TypeScript 0.9 имеет несколько ломающих изменений, которые коснулись большинства описаний библиотек, в том числе SPTypeScript. В релизе 1.1 все определения совместимы с TypeScript 0.9
Применение generic-типов для коллекций
SharePoint в JSOM использует аналог типов IEnumerable\IEnumerator из языка C#. Ранее это приводило к слаботипизированному и громоздкому коду. В новом релизе добавлены типы параметры в интерфейсы IEnumerable\IEnumerator и все типы-коллекции. Теперь код обработки коллекций стал более типизированным, но не менее громоздким.
Добавлены описания типов для mQuery
Ранее я писал про библиотеку mQuery в SharePoint 2013. SPTypeScript 1.1 включает полное описание этой библиотеки.
Пример использования:
SP.SOD.executeFunc("mQuery.js","m$", function() { m$.ready(function() { var d = new Date(); var month = d.getMonth(); var date = d.getDate(); var year = d.getFullYear(); m$('#pageTitle').append("<div style='float:right'>" + month + "/" + date + "/" + year + "</div>"); }); });
Также в проекте SPTypeScript вы найдете пример использования mQuery.
Добавлены описания для класса SPClientAutoFill
Этот класс реализует функциональность autocomplete (typeahead) и имеет очень простой API, доступный в любом решении для SharePoint.
В прошлом посте я описывал применение этого визуального компонента. В проект включен пример использования.
Добавлены примеры кастомизации форм
- Добавление вкладок на форме элементов списка
- Кастомное поле списка с валидаторами
- Кастомизация обычного lookup поля с помощью поиска и SPClientAutoFill
Кроме того
- Добавлены описания классов SP.Utilities
- Улучшены описания типов Client Side Rendering и SP.UI
Доступность на NuGet
Самое главное улучшение совершенно не связано с определениями или примерами. SharePoint.d.ts теперь доступен в NuGet http://nuget.org/packages/sharepoint.TypeScript.DefinitelyTyped/
Достаточно в Package Manager консоли выполнить команду:
PM> Install-Package sharepoint.TypeScript.DefinitelyTyped
Заключение
Качайте дефинишены, используйте TypeScript, задавайте вопросы, пишите замечания и пожелания. Ваши фидбек очень важен для нас.