@ -1,7 +1,8 @@
|
|||||||
{
|
{
|
||||||
"@microsoft/generator-sharepoint": {
|
"@microsoft/generator-sharepoint": {
|
||||||
"libraryName": "angular-graph-rc",
|
"libraryName": "angular-msgraph",
|
||||||
"libraryId": "0e824f74-7ed5-4612-9e01-64b25af579fe",
|
"framework": "none",
|
||||||
"framework": "none"
|
"version": "1.0.0",
|
||||||
|
"libraryId": "bb9709f1-ce33-47e1-9ad0-edcba4c6932c"
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -19,7 +19,7 @@ display all the Lists associated with the site. Then all the items inside the Li
|
|||||||
> Note: I currently only have models developed for the Announcements List. All other lists will currently generate errors.
|
> Note: I currently only have models developed for the Announcements List. All other lists will currently generate errors.
|
||||||
|
|
||||||
## Used SharePoint Framework Version
|
## Used SharePoint Framework Version
|
||||||
![drop](https://img.shields.io/badge/drop-rc0-green.svg)
|
![drop](https://img.shields.io/badge/drop-ga-green.svg)
|
||||||
|
|
||||||
## Applies to
|
## Applies to
|
||||||
|
|
||||||
@ -30,12 +30,13 @@ display all the Lists associated with the site. Then all the items inside the Li
|
|||||||
|
|
||||||
Solution|Author(s)
|
Solution|Author(s)
|
||||||
--------|---------
|
--------|---------
|
||||||
angular-msgraph-rc|David Hartman ([Slalom](https://slalom.com))
|
angular-msgraph|David Hartman ([Slalom](https://slalom.com))
|
||||||
|
|
||||||
## Version history
|
## Version history
|
||||||
|
|
||||||
Version|Date|Comments
|
Version|Date|Comments
|
||||||
-------|----|--------
|
-------|----|--------
|
||||||
|
2.0|April 19th, 2017|GA Release
|
||||||
1.0|February 6th, 2017|Initial release
|
1.0|February 6th, 2017|Initial release
|
||||||
|
|
||||||
## Disclaimer
|
## Disclaimer
|
||||||
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 44 KiB |
@ -1,13 +1,29 @@
|
|||||||
{
|
{
|
||||||
"entries": [
|
"entries": [
|
||||||
{
|
{
|
||||||
"entry": "./lib/webparts/angularMsGraph/AngularMsGraphWebPart.js",
|
"entry": "./lib/webparts/msGraph/MsGraphWebPart.js",
|
||||||
"manifest": "./src/webparts/angularMsGraph/AngularMsGraphWebPart.manifest.json",
|
"manifest": "./src/webparts/msGraph/MsGraphWebPart.manifest.json",
|
||||||
"outputPath": "./dist/angular-ms-graph.bundle.js"
|
"outputPath": "./dist/ms-graph.bundle.js"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"externals": {},
|
"externals": {
|
||||||
|
"angular": {
|
||||||
|
"path": "https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.11/angular.js",
|
||||||
|
"globalName": "angular"
|
||||||
|
},
|
||||||
|
"ng-office-fabric-ui": {
|
||||||
|
"path": "https://cdnjs.cloudflare.com/ajax/libs/ngOfficeUiFabric/0.15.0/ngOfficeUiFabric.js",
|
||||||
|
"globalName": "ng-office-fabric-ui",
|
||||||
|
"globalDependencies": [
|
||||||
|
"angular"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"hellojs": {
|
||||||
|
"path": "https://cdnjs.cloudflare.com/ajax/libs/hellojs/1.14.1/hello.js",
|
||||||
|
"globalName": "hellojs"
|
||||||
|
}
|
||||||
|
},
|
||||||
"localizedResources": {
|
"localizedResources": {
|
||||||
"angularMsGraphStrings": "webparts/angularMsGraph/loc/{locale}.js"
|
"msGraphStrings": "webparts/msGraph/loc/{locale}.js"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"workingDir": "./temp/deploy/",
|
"workingDir": "./temp/deploy/",
|
||||||
"account": "<!-- STORAGE ACCOUNT NAME -->",
|
"account": "<!-- STORAGE ACCOUNT NAME -->",
|
||||||
"container": "angular-graph-rc",
|
"container": "angular-msgraph",
|
||||||
"accessKey": "<!-- ACCESS KEY -->"
|
"accessKey": "<!-- ACCESS KEY -->"
|
||||||
}
|
}
|
@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"solution": {
|
"solution": {
|
||||||
"name": "angular-graph-rc-client-side-solution",
|
"name": "angular-msgraph-client-side-solution",
|
||||||
"id": "0e824f74-7ed5-4612-9e01-64b25af579fe",
|
"id": "bb9709f1-ce33-47e1-9ad0-edcba4c6932c",
|
||||||
"version": "1.0.0.0"
|
"version": "1.0.0.0"
|
||||||
},
|
},
|
||||||
"paths": {
|
"paths": {
|
||||||
"zippedPackage": "solution/angular-graph-rc.sppkg"
|
"zippedPackage": "solution/angular-msgraph.sppkg"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,13 +16,11 @@
|
|||||||
"export-name": false,
|
"export-name": false,
|
||||||
"forin": false,
|
"forin": false,
|
||||||
"label-position": false,
|
"label-position": false,
|
||||||
"label-undefined": false,
|
|
||||||
"member-access": true,
|
"member-access": true,
|
||||||
"no-arg": false,
|
"no-arg": false,
|
||||||
"no-console": false,
|
"no-console": false,
|
||||||
"no-construct": false,
|
"no-construct": false,
|
||||||
"no-duplicate-case": true,
|
"no-duplicate-case": true,
|
||||||
"no-duplicate-key": false,
|
|
||||||
"no-duplicate-variable": true,
|
"no-duplicate-variable": true,
|
||||||
"no-eval": false,
|
"no-eval": false,
|
||||||
"no-function-expression": true,
|
"no-function-expression": true,
|
||||||
@ -32,8 +30,6 @@
|
|||||||
"no-unnecessary-semicolons": true,
|
"no-unnecessary-semicolons": true,
|
||||||
"no-unused-expression": true,
|
"no-unused-expression": true,
|
||||||
"no-unused-imports": true,
|
"no-unused-imports": true,
|
||||||
"no-unused-variable": true,
|
|
||||||
"no-unreachable": true,
|
|
||||||
"no-use-before-declare": true,
|
"no-use-before-declare": true,
|
||||||
"no-with-statement": true,
|
"no-with-statement": true,
|
||||||
"semicolon": true,
|
"semicolon": true,
|
||||||
|
@ -1,30 +1,24 @@
|
|||||||
{
|
{
|
||||||
"name": "angular-graph-rc",
|
"name": "angular-msgraph",
|
||||||
"version": "0.0.1",
|
"version": "0.0.1",
|
||||||
"private": true,
|
"private": true,
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@microsoft/sp-client-base": "~0.7.0",
|
"@microsoft/sp-client-base": "~1.0.0",
|
||||||
"@microsoft/sp-client-preview": "~0.9.0",
|
"@microsoft/sp-core-library": "~1.0.0",
|
||||||
"@microsoft/sp-core-library": "~0.1.2",
|
"@microsoft/sp-webpart-base": "~1.0.0",
|
||||||
"@microsoft/sp-webpart-base": "~0.4.0",
|
"@types/webpack-env": ">=1.12.1 <1.14.0"
|
||||||
"@types/angular": "^1.6.4",
|
|
||||||
"@types/hellojs": "^0.2.31",
|
|
||||||
"@types/webpack-env": ">=1.12.1 <1.14.0",
|
|
||||||
"angular": "^1.5.10",
|
|
||||||
"hellojs": "^1.14.0",
|
|
||||||
"ng-office-ui-fabric": "^0.13.2",
|
|
||||||
"typescript": "^2.1.5"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@microsoft/sp-build-web": "~0.9.0",
|
"@microsoft/sp-build-web": "~1.0.0",
|
||||||
"@microsoft/sp-module-interfaces": "~0.7.0",
|
"@microsoft/sp-module-interfaces": "~1.0.0",
|
||||||
"@microsoft/sp-webpart-workbench": "~0.8.0",
|
"@microsoft/sp-webpart-workbench": "~1.0.0",
|
||||||
"gulp": "~3.9.1",
|
"@types/angular": "1.5.23",
|
||||||
"@types/chai": ">=3.4.34 <3.6.0",
|
"@types/chai": ">=3.4.34 <3.6.0",
|
||||||
"@types/mocha": ">=2.2.33 <2.6.0"
|
"@types/mocha": ">=2.2.33 <2.6.0",
|
||||||
|
"gulp": "~3.9.1"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "gulp bundle",
|
"build": "gulp bundle",
|
||||||
|
5
samples/angular-msgraph/src/tests.js
vendored
@ -1,5 +0,0 @@
|
|||||||
var context = require.context('.', true, /.+\.test\.js?$/);
|
|
||||||
|
|
||||||
context.keys().forEach(context);
|
|
||||||
|
|
||||||
module.exports = context;
|
|
@ -1,39 +0,0 @@
|
|||||||
@import "~/office-ui-fabric-react/dist/sass/Fabric.Common";
|
|
||||||
|
|
||||||
.row {
|
|
||||||
@include ms-Grid-row;
|
|
||||||
@include ms-bgColor-themeDark;
|
|
||||||
@include ms-fontColor-white;
|
|
||||||
|
|
||||||
box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 25px 50px 0 rgba(0, 0, 0, 0.1);
|
|
||||||
max-width: 700px;
|
|
||||||
margin: 0 auto;
|
|
||||||
padding: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.column {
|
|
||||||
@include ms-Grid-col;
|
|
||||||
@include ms-u-lg10;
|
|
||||||
@include ms-u-xl8;
|
|
||||||
@include ms-u-lgPush1;
|
|
||||||
@include ms-u-xlPush2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title {
|
|
||||||
@include ms-font-xl;
|
|
||||||
@include ms-fontColor-white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subtitle {
|
|
||||||
@include ms-font-l;
|
|
||||||
@include ms-fontColor-white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.description {
|
|
||||||
@include ms-font-l;
|
|
||||||
@include ms-fontColor-white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.button {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
@ -1,3 +0,0 @@
|
|||||||
export interface IAngularMsGraphWebPartProps {
|
|
||||||
description: string;
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
declare interface IAngularMsGraphStrings {
|
|
||||||
PropertyPaneDescription: string;
|
|
||||||
BasicGroupName: string;
|
|
||||||
DescriptionFieldLabel: string;
|
|
||||||
}
|
|
||||||
|
|
||||||
declare module 'angularMsGraphStrings' {
|
|
||||||
const strings: IAngularMsGraphStrings;
|
|
||||||
export = strings;
|
|
||||||
}
|
|
@ -0,0 +1,3 @@
|
|||||||
|
export interface IMsGraphWebPartProps {
|
||||||
|
description: string;
|
||||||
|
}
|
@ -0,0 +1,52 @@
|
|||||||
|
.helloWorld {
|
||||||
|
.container {
|
||||||
|
max-width: 700px;
|
||||||
|
margin: 0px auto;
|
||||||
|
box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 25px 50px 0 rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.row {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.listItem {
|
||||||
|
max-width: 715px;
|
||||||
|
margin: 5px auto 5px auto;
|
||||||
|
box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2), 0 25px 50px 0 rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.button {
|
||||||
|
// Our button
|
||||||
|
text-decoration: none;
|
||||||
|
height: 32px;
|
||||||
|
|
||||||
|
// Primary Button
|
||||||
|
min-width: 80px;
|
||||||
|
background-color: #0078d7;
|
||||||
|
border-color: #0078d7;
|
||||||
|
color: #ffffff;
|
||||||
|
|
||||||
|
// Basic Button
|
||||||
|
outline: transparent;
|
||||||
|
position: relative;
|
||||||
|
font-family: "Segoe UI WestEuropean","Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,"Helvetica Neue",sans-serif;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
border-width: 0;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0 16px;
|
||||||
|
|
||||||
|
.label {
|
||||||
|
font-weight: 600;
|
||||||
|
font-size: 14px;
|
||||||
|
height: 32px;
|
||||||
|
line-height: 32px;
|
||||||
|
margin: 0 4px;
|
||||||
|
vertical-align: top;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,20 +1,20 @@
|
|||||||
{
|
{
|
||||||
"$schema": "../../../node_modules/@microsoft/sp-module-interfaces/lib/manifestSchemas/jsonSchemas/clientSideComponentManifestSchema.json",
|
"$schema": "../../../node_modules/@microsoft/sp-module-interfaces/lib/manifestSchemas/jsonSchemas/clientSideComponentManifestSchema.json",
|
||||||
|
|
||||||
"id": "28f73bab-e0d2-48b4-8611-c1187765331c",
|
"id": "e6e4354f-45d2-411e-8110-8d4f5d4398c6",
|
||||||
"alias": "AngularMsGraphWebPart",
|
"alias": "MsGraphWebPart",
|
||||||
"componentType": "WebPart",
|
"componentType": "WebPart",
|
||||||
"version": "0.0.1",
|
"version": "0.0.1",
|
||||||
"manifestVersion": 2,
|
"manifestVersion": 2,
|
||||||
|
|
||||||
"preconfiguredEntries": [{
|
"preconfiguredEntries": [{
|
||||||
"groupId": "28f73bab-e0d2-48b4-8611-c1187765331c",
|
"groupId": "e6e4354f-45d2-411e-8110-8d4f5d4398c6",
|
||||||
"group": { "default": "Under Development" },
|
"group": { "default": "Under Development" },
|
||||||
"title": { "default": "AngularMSGraph" },
|
"title": { "default": "MSGraph" },
|
||||||
"description": { "default": "AngularMSGraph description" },
|
"description": { "default": "MSGraph description" },
|
||||||
"officeFabricIconFontName": "Page",
|
"officeFabricIconFontName": "Page",
|
||||||
"properties": {
|
"properties": {
|
||||||
"description": "AngularMSGraph"
|
"description": "MSGraph"
|
||||||
}
|
}
|
||||||
}]
|
}]
|
||||||
}
|
}
|
@ -3,22 +3,22 @@ import {
|
|||||||
BaseClientSideWebPart,
|
BaseClientSideWebPart,
|
||||||
IPropertyPaneConfiguration,
|
IPropertyPaneConfiguration,
|
||||||
PropertyPaneTextField,
|
PropertyPaneTextField,
|
||||||
IWebPartContext,
|
IWebPartContext
|
||||||
} from '@microsoft/sp-webpart-base';
|
} from '@microsoft/sp-webpart-base';
|
||||||
import { SPComponentLoader } from '@microsoft/sp-loader';
|
|
||||||
import { escape } from '@microsoft/sp-lodash-subset';
|
import { escape } from '@microsoft/sp-lodash-subset';
|
||||||
|
import { SPComponentLoader } from '@microsoft/sp-loader';
|
||||||
|
|
||||||
import styles from './AngularMsGraph.module.scss';
|
import styles from './MsGraph.module.scss';
|
||||||
import * as strings from 'angularMsGraphStrings';
|
import * as strings from 'msGraphStrings';
|
||||||
import { IAngularMsGraphWebPartProps } from './IAngularMsGraphWebPartProps';
|
import { IMsGraphWebPartProps } from './IMsGraphWebPartProps';
|
||||||
|
|
||||||
import * as angular from 'angular';
|
import * as angular from 'angular';
|
||||||
import 'ng-office-ui-fabric';
|
import 'ng-office-fabric-ui';
|
||||||
import 'hellojs';
|
import 'hellojs';
|
||||||
import './app/aad';
|
import './app/aad';
|
||||||
import './app/app.module';
|
import './app/app.module';
|
||||||
|
|
||||||
export default class AngularMsGraphWebPart extends BaseClientSideWebPart<IAngularMsGraphWebPartProps> {
|
export default class MsGraphWebPart extends BaseClientSideWebPart<IMsGraphWebPartProps> {
|
||||||
private $injector: angular.auto.IInjectorService;
|
private $injector: angular.auto.IInjectorService;
|
||||||
|
|
||||||
public constructor(context: IWebPartContext) {
|
public constructor(context: IWebPartContext) {
|
||||||
@ -30,7 +30,7 @@ export default class AngularMsGraphWebPart extends BaseClientSideWebPart<IAngula
|
|||||||
|
|
||||||
public render(): void {
|
public render(): void {
|
||||||
if (this.renderedOnce === false){
|
if (this.renderedOnce === false){
|
||||||
this.domElement.innerHTML = `<angulargraphapi></angulargraphapi>`;
|
this.domElement.innerHTML = '<angulargraphapi></angulargraphapi>';
|
||||||
this.$injector = angular.bootstrap(this.domElement, ['angularconnectsp']);
|
this.$injector = angular.bootstrap(this.domElement, ['angularconnectsp']);
|
||||||
}
|
}
|
||||||
}
|
}
|
10
samples/angular-msgraph/src/webparts/msGraph/loc/mystrings.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
declare interface IMsGraphStrings {
|
||||||
|
PropertyPaneDescription: string;
|
||||||
|
BasicGroupName: string;
|
||||||
|
DescriptionFieldLabel: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare module 'msGraphStrings' {
|
||||||
|
const strings: IMsGraphStrings;
|
||||||
|
export = strings;
|
||||||
|
}
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
import { assert } from 'chai';
|
import { assert } from 'chai';
|
||||||
|
|
||||||
describe('AngularMsGraphWebPart', () => {
|
describe('MsGraphWebPart', () => {
|
||||||
it('should do something', () => {
|
it('should do something', () => {
|
||||||
assert.ok(true);
|
assert.ok(true);
|
||||||
});
|
});
|
@ -7,6 +7,8 @@
|
|||||||
"declaration": true,
|
"declaration": true,
|
||||||
"sourceMap": true,
|
"sourceMap": true,
|
||||||
"types": [
|
"types": [
|
||||||
|
"es6-promise",
|
||||||
|
"es6-collections",
|
||||||
"webpack-env"
|
"webpack-env"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
// Type definitions for Microsoft ODSP projects
|
// Type definitions for Microsoft ODSP projects
|
||||||
// Project: ODSP
|
// Project: ODSP
|
||||||
|
|
||||||
/* Global definition for UNIT_TEST builds */
|
/* Global definition for UNIT_TEST builds
|
||||||
|
Code that is wrapped inside an if(UNIT_TEST) {...}
|
||||||
|
block will not be included in the final bundle when the
|
||||||
|
--ship flag is specified */
|
||||||
declare const UNIT_TEST: boolean;
|
declare const UNIT_TEST: boolean;
|
@ -1,15 +0,0 @@
|
|||||||
// Type definitions for assertion-error 1.0.0
|
|
||||||
// Project: https://github.com/chaijs/assertion-error
|
|
||||||
// Definitions by: Bart van der Schoor <https://github.com/Bartvds>
|
|
||||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
|
||||||
|
|
||||||
declare module 'assertion-error' {
|
|
||||||
class AssertionError implements Error {
|
|
||||||
constructor(message: string, props?: any, ssf?: Function);
|
|
||||||
name: string;
|
|
||||||
message: string;
|
|
||||||
showDiff: boolean;
|
|
||||||
stack: string;
|
|
||||||
}
|
|
||||||
export = AssertionError;
|
|
||||||
}
|
|
@ -1,631 +0,0 @@
|
|||||||
// Type definitions for Knockout v3.2.0
|
|
||||||
// Project: http://knockoutjs.com
|
|
||||||
// Definitions by: Boris Yankov <https://github.com/borisyankov/>, Igor Oleinikov <https://github.com/Igorbek/>, Clément Bourgeois <https://github.com/moonpyk/>
|
|
||||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
|
||||||
|
|
||||||
|
|
||||||
interface KnockoutSubscribableFunctions<T> {
|
|
||||||
[key: string]: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
notifySubscribers(valueToWrite?: T, event?: string): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutComputedFunctions<T> {
|
|
||||||
[key: string]: KnockoutBindingHandler;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutObservableFunctions<T> {
|
|
||||||
[key: string]: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
equalityComparer(a: any, b: any): boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutObservableArrayFunctions<T> {
|
|
||||||
// General Array functions
|
|
||||||
indexOf(searchElement: T, fromIndex?: number): number;
|
|
||||||
slice(start: number, end?: number): T[];
|
|
||||||
splice(start: number): T[];
|
|
||||||
splice(start: number, deleteCount: number, ...items: T[]): T[];
|
|
||||||
pop(): T;
|
|
||||||
push(...items: T[]): void;
|
|
||||||
shift(): T;
|
|
||||||
unshift(...items: T[]): number;
|
|
||||||
reverse(): KnockoutObservableArray<T>;
|
|
||||||
sort(): KnockoutObservableArray<T>;
|
|
||||||
sort(compareFunction: (left: T, right: T) => number): KnockoutObservableArray<T>;
|
|
||||||
|
|
||||||
// Ko specific
|
|
||||||
[key: string]: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
replace(oldItem: T, newItem: T): void;
|
|
||||||
|
|
||||||
remove(item: T): T[];
|
|
||||||
remove(removeFunction: (item: T) => boolean): T[];
|
|
||||||
removeAll(items: T[]): T[];
|
|
||||||
removeAll(): T[];
|
|
||||||
|
|
||||||
destroy(item: T): void;
|
|
||||||
destroy(destroyFunction: (item: T) => boolean): void;
|
|
||||||
destroyAll(items: T[]): void;
|
|
||||||
destroyAll(): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutSubscribableStatic {
|
|
||||||
fn: KnockoutSubscribableFunctions<any>;
|
|
||||||
|
|
||||||
new <T>(): KnockoutSubscribable<T>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutSubscription {
|
|
||||||
dispose(): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutSubscribable<T> extends KnockoutSubscribableFunctions<T> {
|
|
||||||
subscribe(callback: (newValue: T) => void, target?: any, event?: string): KnockoutSubscription;
|
|
||||||
subscribe<TEvent>(callback: (newValue: TEvent) => void, target: any, event: string): KnockoutSubscription;
|
|
||||||
extend(requestedExtenders: { [key: string]: any; }): KnockoutSubscribable<T>;
|
|
||||||
getSubscriptionsCount(): number;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutComputedStatic {
|
|
||||||
fn: KnockoutComputedFunctions<any>;
|
|
||||||
|
|
||||||
<T>(): KnockoutComputed<T>;
|
|
||||||
<T>(func: () => T, context?: any, options?: any): KnockoutComputed<T>;
|
|
||||||
<T>(def: KnockoutComputedDefine<T>, context?: any): KnockoutComputed<T>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutComputed<T> extends KnockoutObservable<T>, KnockoutComputedFunctions<T> {
|
|
||||||
fn: KnockoutComputedFunctions<any>;
|
|
||||||
|
|
||||||
dispose(): void;
|
|
||||||
isActive(): boolean;
|
|
||||||
getDependenciesCount(): number;
|
|
||||||
extend(requestedExtenders: { [key: string]: any; }): KnockoutComputed<T>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutObservableArrayStatic {
|
|
||||||
fn: KnockoutObservableArrayFunctions<any>;
|
|
||||||
|
|
||||||
<T>(value?: T[]): KnockoutObservableArray<T>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutObservableArray<T> extends KnockoutObservable<T[]>, KnockoutObservableArrayFunctions<T> {
|
|
||||||
extend(requestedExtenders: { [key: string]: any; }): KnockoutObservableArray<T>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutObservableStatic {
|
|
||||||
fn: KnockoutObservableFunctions<any>;
|
|
||||||
|
|
||||||
<T>(value?: T): KnockoutObservable<T>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutObservable<T> extends KnockoutSubscribable<T>, KnockoutObservableFunctions<T> {
|
|
||||||
(): T;
|
|
||||||
(value: T): void;
|
|
||||||
|
|
||||||
peek(): T;
|
|
||||||
valueHasMutated?:{(): void;};
|
|
||||||
valueWillMutate?:{(): void;};
|
|
||||||
extend(requestedExtenders: { [key: string]: any; }): KnockoutObservable<T>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutComputedDefine<T> {
|
|
||||||
read(): T;
|
|
||||||
write? (value: T): void;
|
|
||||||
disposeWhenNodeIsRemoved?: Node;
|
|
||||||
disposeWhen? (): boolean;
|
|
||||||
owner?: any;
|
|
||||||
deferEvaluation?: boolean;
|
|
||||||
pure?: boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutBindingContext {
|
|
||||||
$parent: any;
|
|
||||||
$parents: any[];
|
|
||||||
$root: any;
|
|
||||||
$data: any;
|
|
||||||
$rawData: any | KnockoutObservable<any>;
|
|
||||||
$index?: KnockoutObservable<number>;
|
|
||||||
$parentContext?: KnockoutBindingContext;
|
|
||||||
$component: any;
|
|
||||||
$componentTemplateNodes: Node[];
|
|
||||||
|
|
||||||
extend(properties: any): any;
|
|
||||||
createChildContext(dataItemOrAccessor: any, dataItemAlias?: any, extendCallback?: Function): any;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutAllBindingsAccessor {
|
|
||||||
(): any;
|
|
||||||
get(name: string): any;
|
|
||||||
has(name: string): boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutBindingHandler {
|
|
||||||
after?: Array<string>;
|
|
||||||
init?: (element: any, valueAccessor: () => any, allBindingsAccessor?: KnockoutAllBindingsAccessor, viewModel?: any, bindingContext?: KnockoutBindingContext) => void | { controlsDescendantBindings: boolean; };
|
|
||||||
update?: (element: any, valueAccessor: () => any, allBindingsAccessor?: KnockoutAllBindingsAccessor, viewModel?: any, bindingContext?: KnockoutBindingContext) => void;
|
|
||||||
options?: any;
|
|
||||||
preprocess?: (value: string, name: string, addBindingCallback?: (name: string, value: string) => void) => string;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutBindingHandlers {
|
|
||||||
[bindingHandler: string]: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
// Controlling text and appearance
|
|
||||||
visible: KnockoutBindingHandler;
|
|
||||||
text: KnockoutBindingHandler;
|
|
||||||
html: KnockoutBindingHandler;
|
|
||||||
css: KnockoutBindingHandler;
|
|
||||||
style: KnockoutBindingHandler;
|
|
||||||
attr: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
// Control Flow
|
|
||||||
foreach: KnockoutBindingHandler;
|
|
||||||
if: KnockoutBindingHandler;
|
|
||||||
ifnot: KnockoutBindingHandler;
|
|
||||||
with: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
// Working with form fields
|
|
||||||
click: KnockoutBindingHandler;
|
|
||||||
event: KnockoutBindingHandler;
|
|
||||||
submit: KnockoutBindingHandler;
|
|
||||||
enable: KnockoutBindingHandler;
|
|
||||||
disable: KnockoutBindingHandler;
|
|
||||||
value: KnockoutBindingHandler;
|
|
||||||
textInput: KnockoutBindingHandler;
|
|
||||||
hasfocus: KnockoutBindingHandler;
|
|
||||||
checked: KnockoutBindingHandler;
|
|
||||||
options: KnockoutBindingHandler;
|
|
||||||
selectedOptions: KnockoutBindingHandler;
|
|
||||||
uniqueName: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
// Rendering templates
|
|
||||||
template: KnockoutBindingHandler;
|
|
||||||
|
|
||||||
// Components (new for v3.2)
|
|
||||||
component: KnockoutBindingHandler;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutMemoization {
|
|
||||||
memoize(callback: () => string): string;
|
|
||||||
unmemoize(memoId: string, callbackParams: any[]): boolean;
|
|
||||||
unmemoizeDomNodeAndDescendants(domNode: any, extraCallbackParamsArray: any[]): boolean;
|
|
||||||
parseMemoText(memoText: string): string;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutVirtualElement {}
|
|
||||||
|
|
||||||
interface KnockoutVirtualElements {
|
|
||||||
allowedBindings: { [bindingName: string]: boolean; };
|
|
||||||
emptyNode(node: KnockoutVirtualElement ): void;
|
|
||||||
firstChild(node: KnockoutVirtualElement ): KnockoutVirtualElement;
|
|
||||||
insertAfter( container: KnockoutVirtualElement, nodeToInsert: Node, insertAfter: Node ): void;
|
|
||||||
nextSibling(node: KnockoutVirtualElement): Node;
|
|
||||||
prepend(node: KnockoutVirtualElement, toInsert: Node ): void;
|
|
||||||
setDomNodeChildren(node: KnockoutVirtualElement, newChildren: { length: number;[index: number]: Node; } ): void;
|
|
||||||
childNodes(node: KnockoutVirtualElement ): Node[];
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutExtenders {
|
|
||||||
throttle(target: any, timeout: number): KnockoutComputed<any>;
|
|
||||||
notify(target: any, notifyWhen: string): any;
|
|
||||||
|
|
||||||
rateLimit(target: any, timeout: number): any;
|
|
||||||
rateLimit(target: any, options: { timeout: number; method?: string; }): any;
|
|
||||||
|
|
||||||
trackArrayChanges(target: any): any;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// NOTE TO MAINTAINERS AND CONTRIBUTORS : pay attention to only include symbols that are
|
|
||||||
// publicly exported in the minified version of ko, without that you can give the false
|
|
||||||
// impression that some functions will be available in production builds.
|
|
||||||
//
|
|
||||||
interface KnockoutUtils {
|
|
||||||
//////////////////////////////////
|
|
||||||
// utils.domData.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
domData: {
|
|
||||||
get (node: Element, key: string): any;
|
|
||||||
|
|
||||||
set (node: Element, key: string, value: any): void;
|
|
||||||
|
|
||||||
getAll(node: Element, createIfNotFound: boolean): any;
|
|
||||||
|
|
||||||
clear(node: Element): boolean;
|
|
||||||
};
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// utils.domNodeDisposal.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
domNodeDisposal: {
|
|
||||||
addDisposeCallback(node: Element, callback: Function): void;
|
|
||||||
|
|
||||||
removeDisposeCallback(node: Element, callback: Function): void;
|
|
||||||
|
|
||||||
cleanNode(node: Node): Element;
|
|
||||||
|
|
||||||
removeNode(node: Node): void;
|
|
||||||
};
|
|
||||||
|
|
||||||
addOrRemoveItem<T>(array: T[] | KnockoutObservable<T>, value: T, included: T): void;
|
|
||||||
|
|
||||||
arrayFilter<T>(array: T[], predicate: (item: T) => boolean): T[];
|
|
||||||
|
|
||||||
arrayFirst<T>(array: T[], predicate: (item: T) => boolean, predicateOwner?: any): T;
|
|
||||||
|
|
||||||
arrayForEach<T>(array: T[], action: (item: T, index: number) => void): void;
|
|
||||||
|
|
||||||
arrayGetDistinctValues<T>(array: T[]): T[];
|
|
||||||
|
|
||||||
arrayIndexOf<T>(array: T[], item: T): number;
|
|
||||||
|
|
||||||
arrayMap<T, U>(array: T[], mapping: (item: T) => U): U[];
|
|
||||||
|
|
||||||
arrayPushAll<T>(array: T[] | KnockoutObservableArray<T>, valuesToPush: T[]): T[];
|
|
||||||
|
|
||||||
arrayRemoveItem(array: any[], itemToRemove: any): void;
|
|
||||||
|
|
||||||
compareArrays<T>(a: T[], b: T[]): Array<KnockoutArrayChange<T>>;
|
|
||||||
|
|
||||||
extend(target: Object, source: Object): Object;
|
|
||||||
|
|
||||||
fieldsIncludedWithJsonPost: any[];
|
|
||||||
|
|
||||||
getFormFields(form: any, fieldName: string): any[];
|
|
||||||
|
|
||||||
objectForEach(obj: any, action: (key: any, value: any) => void): void;
|
|
||||||
|
|
||||||
parseHtmlFragment(html: string): any[];
|
|
||||||
|
|
||||||
parseJson(jsonString: string): any;
|
|
||||||
|
|
||||||
postJson(urlOrForm: any, data: any, options: any): void;
|
|
||||||
|
|
||||||
peekObservable<T>(value: KnockoutObservable<T>): T;
|
|
||||||
|
|
||||||
range(min: any, max: any): any;
|
|
||||||
|
|
||||||
registerEventHandler(element: any, eventType: any, handler: Function): void;
|
|
||||||
|
|
||||||
setHtml(node: Element, html: () => string): void;
|
|
||||||
|
|
||||||
setHtml(node: Element, html: string): void;
|
|
||||||
|
|
||||||
setTextContent(element: any, textContent: string | KnockoutObservable<string>): void;
|
|
||||||
|
|
||||||
stringifyJson(data: any, replacer?: Function, space?: string): string;
|
|
||||||
|
|
||||||
toggleDomNodeCssClass(node: any, className: string, shouldHaveClass: boolean): void;
|
|
||||||
|
|
||||||
triggerEvent(element: any, eventType: any): void;
|
|
||||||
|
|
||||||
unwrapObservable<T>(value: KnockoutObservable<T> | T): T;
|
|
||||||
|
|
||||||
// NOT PART OF THE MINIFIED API SURFACE (ONLY IN knockout-{version}.debug.js) https://github.com/SteveSanderson/knockout/issues/670
|
|
||||||
// forceRefresh(node: any): void;
|
|
||||||
// ieVersion: number;
|
|
||||||
// isIe6: boolean;
|
|
||||||
// isIe7: boolean;
|
|
||||||
// jQueryHtmlParse(html: string): any[];
|
|
||||||
// makeArray(arrayLikeObject: any): any[];
|
|
||||||
// moveCleanedNodesToContainerElement(nodes: any[]): HTMLElement;
|
|
||||||
// replaceDomNodes(nodeToReplaceOrNodeArray: any, newNodesArray: any[]): void;
|
|
||||||
// setDomNodeChildren(domNode: any, childNodes: any[]): void;
|
|
||||||
// setElementName(element: any, name: string): void;
|
|
||||||
// setOptionNodeSelectionState(optionNode: any, isSelected: boolean): void;
|
|
||||||
// simpleHtmlParse(html: string): any[];
|
|
||||||
// stringStartsWith(str: string, startsWith: string): boolean;
|
|
||||||
// stringTokenize(str: string, delimiter: string): string[];
|
|
||||||
// stringTrim(str: string): string;
|
|
||||||
// tagNameLower(element: any): string;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutArrayChange<T> {
|
|
||||||
status: string;
|
|
||||||
value: T;
|
|
||||||
index: number;
|
|
||||||
moved?: number;
|
|
||||||
}
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// templateSources.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
interface KnockoutTemplateSourcesDomElement {
|
|
||||||
text(): any;
|
|
||||||
text(value: any): void;
|
|
||||||
|
|
||||||
data(key: string): any;
|
|
||||||
data(key: string, value: any): any;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutTemplateAnonymous extends KnockoutTemplateSourcesDomElement {
|
|
||||||
nodes(): any;
|
|
||||||
nodes(value: any): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutTemplateSources {
|
|
||||||
|
|
||||||
domElement: {
|
|
||||||
prototype: KnockoutTemplateSourcesDomElement
|
|
||||||
new (element: Element): KnockoutTemplateSourcesDomElement
|
|
||||||
};
|
|
||||||
|
|
||||||
anonymousTemplate: {
|
|
||||||
prototype: KnockoutTemplateAnonymous;
|
|
||||||
new (element: Element): KnockoutTemplateAnonymous;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// nativeTemplateEngine.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
interface KnockoutNativeTemplateEngine {
|
|
||||||
|
|
||||||
renderTemplateSource(templateSource: Object, bindingContext?: KnockoutBindingContext, options?: Object): any[];
|
|
||||||
}
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// templateEngine.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
interface KnockoutTemplateEngine extends KnockoutNativeTemplateEngine {
|
|
||||||
|
|
||||||
createJavaScriptEvaluatorBlock(script: string): string;
|
|
||||||
|
|
||||||
makeTemplateSource(template: any, templateDocument?: Document): any;
|
|
||||||
|
|
||||||
renderTemplate(template: any, bindingContext: KnockoutBindingContext, options: Object, templateDocument: Document): any;
|
|
||||||
|
|
||||||
isTemplateRewritten(template: any, templateDocument: Document): boolean;
|
|
||||||
|
|
||||||
rewriteTemplate(template: any, rewriterCallback: Function, templateDocument: Document): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
/////////////////////////////////
|
|
||||||
|
|
||||||
interface KnockoutStatic {
|
|
||||||
utils: KnockoutUtils;
|
|
||||||
memoization: KnockoutMemoization;
|
|
||||||
|
|
||||||
bindingHandlers: KnockoutBindingHandlers;
|
|
||||||
getBindingHandler(handler: string): KnockoutBindingHandler;
|
|
||||||
|
|
||||||
virtualElements: KnockoutVirtualElements;
|
|
||||||
extenders: KnockoutExtenders;
|
|
||||||
|
|
||||||
applyBindings(viewModelOrBindingContext?: any, rootNode?: any): void;
|
|
||||||
applyBindingsToDescendants(viewModelOrBindingContext: any, rootNode: any): void;
|
|
||||||
applyBindingAccessorsToNode(node: Node, bindings: (bindingContext: KnockoutBindingContext, node: Node) => {}, bindingContext: KnockoutBindingContext): void;
|
|
||||||
applyBindingAccessorsToNode(node: Node, bindings: {}, bindingContext: KnockoutBindingContext): void;
|
|
||||||
applyBindingAccessorsToNode(node: Node, bindings: (bindingContext: KnockoutBindingContext, node: Node) => {}, viewModel: any): void;
|
|
||||||
applyBindingAccessorsToNode(node: Node, bindings: {}, viewModel: any): void;
|
|
||||||
applyBindingsToNode(node: Node, bindings: any, viewModelOrBindingContext?: any): any;
|
|
||||||
|
|
||||||
subscribable: KnockoutSubscribableStatic;
|
|
||||||
observable: KnockoutObservableStatic;
|
|
||||||
|
|
||||||
computed: KnockoutComputedStatic;
|
|
||||||
pureComputed<T>(evaluatorFunction: () => T, context?: any): KnockoutComputed<T>;
|
|
||||||
pureComputed<T>(options: KnockoutComputedDefine<T>, context?: any): KnockoutComputed<T>;
|
|
||||||
|
|
||||||
observableArray: KnockoutObservableArrayStatic;
|
|
||||||
|
|
||||||
contextFor(node: any): any;
|
|
||||||
isSubscribable(instance: any): boolean;
|
|
||||||
toJSON(viewModel: any, replacer?: Function, space?: any): string;
|
|
||||||
toJS(viewModel: any): any;
|
|
||||||
isObservable(instance: any): boolean;
|
|
||||||
isWriteableObservable(instance: any): boolean;
|
|
||||||
isComputed(instance: any): boolean;
|
|
||||||
dataFor(node: any): any;
|
|
||||||
removeNode(node: Element): void;
|
|
||||||
cleanNode(node: Element): Element;
|
|
||||||
renderTemplate(template: Function, viewModel: any, options?: any, target?: any, renderMode?: any): any;
|
|
||||||
renderTemplate(template: string, viewModel: any, options?: any, target?: any, renderMode?: any): any;
|
|
||||||
unwrap<T>(value: KnockoutObservable<T> | T): T;
|
|
||||||
|
|
||||||
computedContext: KnockoutComputedContext;
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// templateSources.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
templateSources: KnockoutTemplateSources;
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// templateEngine.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
templateEngine: {
|
|
||||||
|
|
||||||
prototype: KnockoutTemplateEngine;
|
|
||||||
|
|
||||||
new (): KnockoutTemplateEngine;
|
|
||||||
};
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// templateRewriting.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
templateRewriting: {
|
|
||||||
|
|
||||||
ensureTemplateIsRewritten(template: Node, templateEngine: KnockoutTemplateEngine, templateDocument: Document): any;
|
|
||||||
ensureTemplateIsRewritten(template: string, templateEngine: KnockoutTemplateEngine, templateDocument: Document): any;
|
|
||||||
|
|
||||||
memoizeBindingAttributeSyntax(htmlString: string, templateEngine: KnockoutTemplateEngine): any;
|
|
||||||
|
|
||||||
applyMemoizedBindingsToNextSibling(bindings: any, nodeName: string): string;
|
|
||||||
};
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// nativeTemplateEngine.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
nativeTemplateEngine: {
|
|
||||||
|
|
||||||
prototype: KnockoutNativeTemplateEngine;
|
|
||||||
|
|
||||||
new (): KnockoutNativeTemplateEngine;
|
|
||||||
|
|
||||||
instance: KnockoutNativeTemplateEngine;
|
|
||||||
};
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// jqueryTmplTemplateEngine.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
jqueryTmplTemplateEngine: {
|
|
||||||
|
|
||||||
prototype: KnockoutTemplateEngine;
|
|
||||||
|
|
||||||
renderTemplateSource(templateSource: Object, bindingContext: KnockoutBindingContext, options: Object): Node[];
|
|
||||||
|
|
||||||
createJavaScriptEvaluatorBlock(script: string): string;
|
|
||||||
|
|
||||||
addTemplate(templateName: string, templateMarkup: string): void;
|
|
||||||
};
|
|
||||||
|
|
||||||
//////////////////////////////////
|
|
||||||
// templating.js
|
|
||||||
//////////////////////////////////
|
|
||||||
|
|
||||||
setTemplateEngine(templateEngine: KnockoutNativeTemplateEngine): void;
|
|
||||||
|
|
||||||
renderTemplate(template: Function, dataOrBindingContext: KnockoutBindingContext, options: Object, targetNodeOrNodeArray: Node, renderMode: string): any;
|
|
||||||
renderTemplate(template: any, dataOrBindingContext: KnockoutBindingContext, options: Object, targetNodeOrNodeArray: Node, renderMode: string): any;
|
|
||||||
renderTemplate(template: Function, dataOrBindingContext: any, options: Object, targetNodeOrNodeArray: Node, renderMode: string): any;
|
|
||||||
renderTemplate(template: any, dataOrBindingContext: any, options: Object, targetNodeOrNodeArray: Node, renderMode: string): any;
|
|
||||||
renderTemplate(template: Function, dataOrBindingContext: KnockoutBindingContext, options: Object, targetNodeOrNodeArray: Node[], renderMode: string): any;
|
|
||||||
renderTemplate(template: any, dataOrBindingContext: KnockoutBindingContext, options: Object, targetNodeOrNodeArray: Node[], renderMode: string): any;
|
|
||||||
renderTemplate(template: Function, dataOrBindingContext: any, options: Object, targetNodeOrNodeArray: Node[], renderMode: string): any;
|
|
||||||
renderTemplate(template: any, dataOrBindingContext: any, options: Object, targetNodeOrNodeArray: Node[], renderMode: string): any;
|
|
||||||
|
|
||||||
renderTemplateForEach(template: Function, arrayOrObservableArray: any[], options: Object, targetNode: Node, parentBindingContext: KnockoutBindingContext): any;
|
|
||||||
renderTemplateForEach(template: any, arrayOrObservableArray: any[], options: Object, targetNode: Node, parentBindingContext: KnockoutBindingContext): any;
|
|
||||||
renderTemplateForEach(template: Function, arrayOrObservableArray: KnockoutObservable<any>, options: Object, targetNode: Node, parentBindingContext: KnockoutBindingContext): any;
|
|
||||||
renderTemplateForEach(template: any, arrayOrObservableArray: KnockoutObservable<any>, options: Object, targetNode: Node, parentBindingContext: KnockoutBindingContext): any;
|
|
||||||
|
|
||||||
expressionRewriting: {
|
|
||||||
bindingRewriteValidators: any;
|
|
||||||
parseObjectLiteral: { (objectLiteralString: string): any[] }
|
|
||||||
};
|
|
||||||
|
|
||||||
/////////////////////////////////
|
|
||||||
|
|
||||||
bindingProvider: {
|
|
||||||
instance: KnockoutBindingProvider;
|
|
||||||
new (): KnockoutBindingProvider;
|
|
||||||
}
|
|
||||||
|
|
||||||
/////////////////////////////////
|
|
||||||
// selectExtensions.js
|
|
||||||
/////////////////////////////////
|
|
||||||
|
|
||||||
selectExtensions: {
|
|
||||||
|
|
||||||
readValue(element: HTMLElement): any;
|
|
||||||
|
|
||||||
writeValue(element: HTMLElement, value: any): void;
|
|
||||||
};
|
|
||||||
|
|
||||||
components: KnockoutComponents;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutBindingProvider {
|
|
||||||
nodeHasBindings(node: Node): boolean;
|
|
||||||
getBindings(node: Node, bindingContext: KnockoutBindingContext): {};
|
|
||||||
getBindingAccessors?(node: Node, bindingContext: KnockoutBindingContext): { [key: string]: string; };
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutComputedContext {
|
|
||||||
getDependenciesCount(): number;
|
|
||||||
isInitial: () => boolean;
|
|
||||||
isSleeping: boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// refactored types into a namespace to reduce global pollution
|
|
||||||
// and used Union Types to simplify overloads (requires TypeScript 1.4)
|
|
||||||
//
|
|
||||||
declare module KnockoutComponentTypes {
|
|
||||||
|
|
||||||
interface Config {
|
|
||||||
viewModel?: ViewModelFunction | ViewModelSharedInstance | ViewModelFactoryFunction | AMDModule;
|
|
||||||
template: string | Node[]| DocumentFragment | TemplateElement | AMDModule;
|
|
||||||
synchronous?: boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface ComponentConfig {
|
|
||||||
viewModel?: ViewModelFunction | ViewModelSharedInstance | ViewModelFactoryFunction | AMDModule;
|
|
||||||
template: any;
|
|
||||||
createViewModel?: any;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface EmptyConfig {
|
|
||||||
}
|
|
||||||
|
|
||||||
// common AMD type
|
|
||||||
interface AMDModule {
|
|
||||||
require: string;
|
|
||||||
}
|
|
||||||
|
|
||||||
// viewmodel types
|
|
||||||
interface ViewModelFunction {
|
|
||||||
(params?: any): any;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface ViewModelSharedInstance {
|
|
||||||
instance: any;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface ViewModelFactoryFunction {
|
|
||||||
createViewModel: (params?: any, componentInfo?: ComponentInfo) => any;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface ComponentInfo {
|
|
||||||
element: Node;
|
|
||||||
templateNodes: Node[];
|
|
||||||
}
|
|
||||||
|
|
||||||
interface TemplateElement {
|
|
||||||
element: string | Node;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface Loader {
|
|
||||||
getConfig? (componentName: string, callback: (result: ComponentConfig) => void): void;
|
|
||||||
loadComponent? (componentName: string, config: ComponentConfig, callback: (result: Definition) => void): void;
|
|
||||||
loadTemplate? (componentName: string, templateConfig: any, callback: (result: Node[]) => void): void;
|
|
||||||
loadViewModel? (componentName: string, viewModelConfig: any, callback: (result: any) => void): void;
|
|
||||||
suppressLoaderExceptions?: boolean;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface Definition {
|
|
||||||
template: Node[];
|
|
||||||
createViewModel? (params: any, options: { element: Node; }): any;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
interface KnockoutComponents {
|
|
||||||
// overloads for register method:
|
|
||||||
register(componentName: string, config: KnockoutComponentTypes.Config | KnockoutComponentTypes.EmptyConfig): void;
|
|
||||||
|
|
||||||
isRegistered(componentName: string): boolean;
|
|
||||||
unregister(componentName: string): void;
|
|
||||||
get(componentName: string, callback: (definition: KnockoutComponentTypes.Definition) => void): void;
|
|
||||||
clearCachedDefinition(componentName: string): void
|
|
||||||
defaultLoader: KnockoutComponentTypes.Loader;
|
|
||||||
loaders: KnockoutComponentTypes.Loader[];
|
|
||||||
getComponentNameForNode(node: Node): string;
|
|
||||||
}
|
|
||||||
|
|
||||||
declare var ko: KnockoutStatic;
|
|
||||||
|
|
||||||
declare module "knockout" {
|
|
||||||
export = ko;
|
|
||||||
}
|
|
2
samples/angular-msgraph/typings/tsd.d.ts
vendored
@ -1,3 +1 @@
|
|||||||
/// <reference path="@ms/odsp.d.ts" />
|
/// <reference path="@ms/odsp.d.ts" />
|
||||||
/// <reference path="assertion-error/assertion-error.d.ts" />
|
|
||||||
/// <reference path="knockout/knockout.d.ts" />
|
|
||||||
|