diff --git a/src/lib/datepicker/datepicker-toggle.ts b/src/lib/datepicker/datepicker-toggle.ts index c5ba0b0b79c8..f6382d7b49a4 100644 --- a/src/lib/datepicker/datepicker-toggle.ts +++ b/src/lib/datepicker/datepicker-toggle.ts @@ -9,8 +9,8 @@ import {MdDatepickerIntl} from './datepicker-intl'; template: '', styleUrls: ['datepicker-toggle.css'], host: { - '[attr.type]': 'type', - '[class.mat-datepicker-toggle]': 'true', + 'type': 'button', + 'class': 'mat-datepicker-toggle', '[attr.aria-label]': '_intl.openCalendarLabel', '(click)': '_open($event)', }, @@ -21,9 +21,6 @@ export class MdDatepickerToggle { /** Datepicker instance that the button will toggle. */ @Input('mdDatepickerToggle') datepicker: MdDatepicker; - /** Type of the button. */ - @Input() type: string = 'button'; - @Input('matDatepickerToggle') get _datepicker() { return this.datepicker; } set _datepicker(v: MdDatepicker) { this.datepicker = v; } diff --git a/src/lib/datepicker/datepicker.ts b/src/lib/datepicker/datepicker.ts index 2748b75059d3..5d7a68c3b272 100644 --- a/src/lib/datepicker/datepicker.ts +++ b/src/lib/datepicker/datepicker.ts @@ -43,7 +43,7 @@ let datepickerUid = 0; * MdCalendar directly as the content so we can control the initial focus. This also gives us a * place to put additional features of the popup that are not part of the calendar itself in the * future. (e.g. confirmation buttons). - * @docs-internal + * @docs-private */ @Component({ moduleId: module.id, diff --git a/tools/dgeni/index.js b/tools/dgeni/index.js index f37d76df3689..1cffe289dc0b 100644 --- a/tools/dgeni/index.js +++ b/tools/dgeni/index.js @@ -91,6 +91,7 @@ let apiDocsPackage = new DgeniPackage('material2-api-docs', dgeniPackageDeps) 'checkbox/index.ts', 'chips/index.ts', 'core/index.ts', + 'datepicker/index.ts', 'dialog/index.ts', 'grid-list/index.ts', 'icon/index.ts', @@ -143,4 +144,4 @@ let apiDocsPackage = new DgeniPackage('material2-api-docs', dgeniPackageDeps) }); -module.exports = apiDocsPackage; \ No newline at end of file +module.exports = apiDocsPackage; diff --git a/tools/dgeni/processors/categorizer.js b/tools/dgeni/processors/categorizer.js index 12e6c61a67e1..91238dbf9d62 100644 --- a/tools/dgeni/processors/categorizer.js +++ b/tools/dgeni/processors/categorizer.js @@ -90,9 +90,9 @@ module.exports = function categorizer() { } }; -/** Function that walks through all inherited docs and collects public methods. */ +/** Walks through all inherited docs and collects public methods. */ function resolveMethods(classDoc) { - let methods = classDoc.members.filter(member => member.hasOwnProperty('parameters')); + let methods = classDoc.members.filter(isMethod); if (classDoc.inheritedDoc) { methods = methods.concat(resolveMethods(classDoc.inheritedDoc)); @@ -101,9 +101,9 @@ function resolveMethods(classDoc) { return methods; } -/** Function that walks through all inherited docs and collects public properties. */ +/** Walks through all inherited docs and collects public properties. */ function resolveProperties(classDoc) { - let properties = classDoc.members.filter(member => !member.hasOwnProperty('parameters')); + let properties = classDoc.members.filter(isProperty); if (classDoc.inheritedDoc) { properties = properties.concat(resolveProperties(classDoc.inheritedDoc)); @@ -153,6 +153,18 @@ function normalizeMethodParameters(method) { } } +function isMethod(doc) { + return doc.hasOwnProperty('parameters'); +} + +function isGenericTypeParameter(doc) { + return doc.classDoc.typeParams && `<${doc.name}>` === doc.classDoc.typeParams; +} + +function isProperty(doc) { + return doc.docType === 'member' && !isMethod(doc) && !isGenericTypeParameter(doc); +} + function isDirective(doc) { return hasClassDecorator(doc, 'Component') || hasClassDecorator(doc, 'Directive'); }