SharePoint TypeScript - проект для описания типов TypeScript клиентской библиотеки SharePoint. Это не только JavaScript Object Model, но описания типов для Client-Side Rendering (CSR) - движка для рендеринга форм и представлений, а так всевозможных клиентских компонент.
Последние два года проект sptypescript развивался очень вяло. Я уделял ему мало времени, больше занимался бизнесом. Но на прошлой неделе мы с коллегами провели тренинг по разработке форм в SharePoint и нашли много точек роста.
Переезд на github
Проект раньше хостился на codeplex, который, к сожалению, растерял все сообщество. Даже Microsoft перевел свои разработки на github. Сообщество разработчиков на github гораздо больше. Поэтому проект переехал по адресу https://github.com/gandjustas/sptypescript
typescripttemplates.ts
Изначально это была библиотека, которая облегчает создания шаблонов для CSR. Со временем туда добавились готовые шаблоны полей, например filtered lookup, который позволяет фильтровать элементы в списке выбора lookup-поля. Библиотека обросла полезной функциональностью, которая может быть полезна при разработке собственных шаблонов.
Библиотека доступна в nuget:
PM> Install-Package typescripttemplates
Она автоматически поставит определения типов SharePoint.
Вы также можете добавить в проект определения типов отдельно, если не собираетесь кастомизировать формы и представления:
PM> Install-Package sharepoint.TypeScript.DefinitelyTyped
Поддержка современных средств веб-разработки
Набирает популярность стек современных средств разработки: Visual Studio Code (vscode), node, gulp, bower итд. В отличие от взрослой Visual Studio эти средства очень легковесные и кроссплатформенные. Я, например, периодически использую этот стек для разработки на планшете.
Если вы хотите использовать sptypescript в такой среде, то можете установить определения типов с помощью утилиты tsd:
tsd install sharepoint --save
Шаблоны для CSR можно поставить с помощью bower:
bower install typescripttemplates --save
Если вы все еще запускаете виртуальные машины с SharePoint и Visual Studio для написания клиентских скриптов, то рекомендую вам воспользоваться vscode.
Планы развития
В первую очередь мы планируем победить сложность разработки форм SharePoint, путем создания фреймворка для разработки форм на базе angularjs, не потеряв при этом функциональности SharePoint. В ближайшее время появится прототип. Подписывайтесь на обновления на github.
Вторая амбициозная цель - сделать на базе sptypescript полноценное руководство (guidance) по клиентской разработке в SharePoint. Сейчас готовятся статьи о том как быстро создавать и разворачивать клиентские приложения, как кастомизировать формы. Также в ближайшее время будут созданы генераторы в yeoman и, скорее всего, шаблоны для SideWaffle в Visual Studio.
Нам нужен ваш фидбек
Если у вас есть пожелания - пишите в https://github.com/gandjustas/sptypescript/issues. Подписывайтесь на обновления репозитария. Используйте определения и шаблоны CSR. И не стесняйтесь делать форки и отправлять pull requests.