@stencil/angular-output-target
Advanced tools
Comparing version 0.6.1-dev.11662151255.17ea4066 to 0.6.1-dev.11662577182.1c45c8de
@@ -44,4 +44,4 @@ import { createComponentEventTypeImports, dashToPascalCase, formatToQuotedList } from './utils'; | ||
selector: '${tagName}', | ||
changeDetection: ChangeDetectionStrategy.OnPush, | ||
template: '<ng-content></ng-content>', | ||
changeDetection: ChangeDetectionStrategy.OnPush, | ||
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property | ||
@@ -109,10 +109,9 @@ inputs: [${formattedInputs}], | ||
export const createComponentTypeDefinition = (tagNameAsPascal, events, componentCorePackage, includeImportCustomElements = false, customElementsDir) => { | ||
const typeDefinition = `${createComponentEventTypeImports(tagNameAsPascal, events, { | ||
const publicEvents = events.filter(ev => !ev.internal); | ||
const eventTypeImports = createComponentEventTypeImports(tagNameAsPascal, publicEvents, { | ||
componentCorePackage, | ||
includeImportCustomElements, | ||
customElementsDir, | ||
})} | ||
export interface ${tagNameAsPascal} extends Components.${tagNameAsPascal} { | ||
${events | ||
}); | ||
const eventTypes = publicEvents | ||
.map((event) => { | ||
@@ -122,6 +121,9 @@ const comment = createDocComment(event.docs); | ||
${event.name}: EventEmitter<CustomEvent<${formatOutputType(tagNameAsPascal, event)}>>;`; | ||
}) | ||
.join('\n')} | ||
}`; | ||
}); | ||
const interfaceDeclaration = `export declare interface ${tagNameAsPascal} extends Components.${tagNameAsPascal} {`; | ||
const typeDefinition = (eventTypeImports.length > 0 ? `${eventTypeImports + '\n\n'}` : '') | ||
+ `${interfaceDeclaration}${eventTypes.length === 0 ? '}' : ` | ||
${eventTypes.join('\n')} | ||
}`}`; | ||
return typeDefinition; | ||
}; |
@@ -175,4 +175,4 @@ 'use strict'; | ||
selector: '${tagName}', | ||
changeDetection: ChangeDetectionStrategy.OnPush, | ||
template: '<ng-content></ng-content>', | ||
changeDetection: ChangeDetectionStrategy.OnPush, | ||
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property | ||
@@ -240,10 +240,9 @@ inputs: [${formattedInputs}], | ||
const createComponentTypeDefinition = (tagNameAsPascal, events, componentCorePackage, includeImportCustomElements = false, customElementsDir) => { | ||
const typeDefinition = `${createComponentEventTypeImports(tagNameAsPascal, events, { | ||
const publicEvents = events.filter(ev => !ev.internal); | ||
const eventTypeImports = createComponentEventTypeImports(tagNameAsPascal, publicEvents, { | ||
componentCorePackage, | ||
includeImportCustomElements, | ||
customElementsDir, | ||
})} | ||
export interface ${tagNameAsPascal} extends Components.${tagNameAsPascal} { | ||
${events | ||
}); | ||
const eventTypes = publicEvents | ||
.map((event) => { | ||
@@ -253,5 +252,8 @@ const comment = createDocComment(event.docs); | ||
${event.name}: EventEmitter<CustomEvent<${formatOutputType(tagNameAsPascal, event)}>>;`; | ||
}) | ||
.join('\n')} | ||
}`; | ||
}); | ||
const interfaceDeclaration = `export declare interface ${tagNameAsPascal} extends Components.${tagNameAsPascal} {`; | ||
const typeDefinition = (eventTypeImports.length > 0 ? `${eventTypeImports + '\n\n'}` : '') | ||
+ `${interfaceDeclaration}${eventTypes.length === 0 ? '}' : ` | ||
${eventTypes.join('\n')} | ||
}`}`; | ||
return typeDefinition; | ||
@@ -478,3 +480,7 @@ }; | ||
const componentTypeDefinition = createComponentTypeDefinition(tagNameAsPascal, cmpMeta.events, componentCorePackage, includeImportCustomElements, customElementsDir); | ||
proxyFileOutput.push(componentDefinition, '\n', createSingleComponentAngularModules ? moduleDefinition : '', '\n', componentTypeDefinition, '\n'); | ||
proxyFileOutput.push(componentDefinition, '\n'); | ||
if (createSingleComponentAngularModules) { | ||
proxyFileOutput.push(moduleDefinition, '\n'); | ||
} | ||
proxyFileOutput.push(componentTypeDefinition, '\n'); | ||
} | ||
@@ -481,0 +487,0 @@ const final = [imports, typeImports, sourceImports, ...proxyFileOutput]; |
@@ -167,4 +167,4 @@ import path from 'path'; | ||
selector: '${tagName}', | ||
changeDetection: ChangeDetectionStrategy.OnPush, | ||
template: '<ng-content></ng-content>', | ||
changeDetection: ChangeDetectionStrategy.OnPush, | ||
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property | ||
@@ -232,10 +232,9 @@ inputs: [${formattedInputs}], | ||
const createComponentTypeDefinition = (tagNameAsPascal, events, componentCorePackage, includeImportCustomElements = false, customElementsDir) => { | ||
const typeDefinition = `${createComponentEventTypeImports(tagNameAsPascal, events, { | ||
const publicEvents = events.filter(ev => !ev.internal); | ||
const eventTypeImports = createComponentEventTypeImports(tagNameAsPascal, publicEvents, { | ||
componentCorePackage, | ||
includeImportCustomElements, | ||
customElementsDir, | ||
})} | ||
export interface ${tagNameAsPascal} extends Components.${tagNameAsPascal} { | ||
${events | ||
}); | ||
const eventTypes = publicEvents | ||
.map((event) => { | ||
@@ -245,5 +244,8 @@ const comment = createDocComment(event.docs); | ||
${event.name}: EventEmitter<CustomEvent<${formatOutputType(tagNameAsPascal, event)}>>;`; | ||
}) | ||
.join('\n')} | ||
}`; | ||
}); | ||
const interfaceDeclaration = `export declare interface ${tagNameAsPascal} extends Components.${tagNameAsPascal} {`; | ||
const typeDefinition = (eventTypeImports.length > 0 ? `${eventTypeImports + '\n\n'}` : '') | ||
+ `${interfaceDeclaration}${eventTypes.length === 0 ? '}' : ` | ||
${eventTypes.join('\n')} | ||
}`}`; | ||
return typeDefinition; | ||
@@ -470,3 +472,7 @@ }; | ||
const componentTypeDefinition = createComponentTypeDefinition(tagNameAsPascal, cmpMeta.events, componentCorePackage, includeImportCustomElements, customElementsDir); | ||
proxyFileOutput.push(componentDefinition, '\n', createSingleComponentAngularModules ? moduleDefinition : '', '\n', componentTypeDefinition, '\n'); | ||
proxyFileOutput.push(componentDefinition, '\n'); | ||
if (createSingleComponentAngularModules) { | ||
proxyFileOutput.push(moduleDefinition, '\n'); | ||
} | ||
proxyFileOutput.push(componentTypeDefinition, '\n'); | ||
} | ||
@@ -473,0 +479,0 @@ const final = [imports, typeImports, sourceImports, ...proxyFileOutput]; |
@@ -133,3 +133,7 @@ import path from 'path'; | ||
const componentTypeDefinition = createComponentTypeDefinition(tagNameAsPascal, cmpMeta.events, componentCorePackage, includeImportCustomElements, customElementsDir); | ||
proxyFileOutput.push(componentDefinition, '\n', createSingleComponentAngularModules ? moduleDefinition : '', '\n', componentTypeDefinition, '\n'); | ||
proxyFileOutput.push(componentDefinition, '\n'); | ||
if (createSingleComponentAngularModules) { | ||
proxyFileOutput.push(moduleDefinition, '\n'); | ||
} | ||
proxyFileOutput.push(componentTypeDefinition, '\n'); | ||
} | ||
@@ -136,0 +140,0 @@ const final = [imports, typeImports, sourceImports, ...proxyFileOutput]; |
{ | ||
"name": "@stencil/angular-output-target", | ||
"version": "0.6.1-dev.11662151255.17ea4066", | ||
"version": "0.6.1-dev.11662577182.1c45c8de", | ||
"description": "Angular output target for @stencil/core components.", | ||
@@ -61,3 +61,3 @@ "main": "dist/index.cjs.js", | ||
}, | ||
"gitHead": "7ea40666153180bc16a62602feba11b767d8e396" | ||
"gitHead": "c45c8deb595afb1d5321159783c838fb7131f087" | ||
} |
92518
1856