Lines Matching refs:node
113 export function processCustomComponent(node: ts.ExpressionStatement, newStatements: ts.Statement[],
123 const componentNode: ts.CallExpression = getCustomComponentNode(node);
145 const newNode: ts.ExpressionStatement = ts.factory.updateExpressionStatement(node,
163 bindComponentAttr(node, ts.factory.createIdentifier(COMPONENT_COMMON), commomComponentNode,
175 bindComponentAttr(node, ts.factory.createIdentifier(COMPONENT_COMMON), newStatements, log);
181 addCustomComponent(node, newStatements, customComponentNewExpression, log, name, componentNode,
220 function isHasChild(node: ts.CallExpression): boolean {
221 return node.arguments && node.arguments[0] && ts.isObjectLiteralExpression(node.arguments[0]) &&
222 node.arguments[0].properties && node.arguments[0].properties.length > 0;
235 function changeNodeFromCallToArrow(node: ts.CallExpression): ts.ConditionalExpression {
236 let builderBindThis: ts.ExpressionStatement = ts.factory.createExpressionStatement(node);
237 if (ts.isCallExpression(node) && node.expression && ts.isIdentifier(node.expression) &&
238 GLOBAL_CUSTOM_BUILDER_METHOD.has(node.expression.escapedText.toString())) {
239 …builderBindThis = transferBuilderCall(ts.factory.createExpressionStatement(node), node.expression.…
241 return changeNodeFromCallToArrowDetermine(node, builderBindThis);
244 function changeNodeFromCallToArrowDetermine(node: ts.CallExpression, builderBindThis: ts.Expression…
245 if (ts.isCallExpression(node)) {
248 ts.factory.createTypeOfExpression(node),
253 node,
270 function addCustomComponent(node: ts.ExpressionStatement, newStatements: ts.Statement[],
277 addCustomComponentStatements(node, newStatements, newNode, name, propertyArray, componentNode,
282 function addCustomComponentStatements(node: ts.ExpressionStatement, newStatements: ts.Statement[],
290 ts.factory.updateExpressionStatement(node, createViewCreate(newNode)),
298 function createChildElmtId(node: ts.CallExpression, name: string): ts.PropertyAssignment[] {
310 if (node.arguments[0].properties) {
311 node.arguments[0].properties.forEach(item => {
599 function validateCustomComponentPrams(node: ts.CallExpression, name: string,
602 const nodeArguments: ts.NodeArray<ts.Expression> = node.arguments;
621 validateInitDecorator(node, name, curChildProps, log);
622 validateMandatoryToInitViaParam(node, name, curChildProps, log);
625 function getCustomComponentNode(node: ts.ExpressionStatement): ts.CallExpression {
626 let temp: any = node.expression;
659 function isThisProperty(node: ts.ObjectLiteralElementLike, propertySet: Set<string>): boolean {
660 if (ts.isPropertyAssignment(node) && ts.isIdentifier(node.name) &&
661 propertySet.has(node.name.escapedText.toString())) {
667 function isNonThisProperty(node: ts.ObjectLiteralElementLike, propertySet: Set<string>): boolean {
668 if (ts.isPropertyAssignment(node) && ts.isIdentifier(node.name) &&
669 (node.initializer.escapedText && node.initializer.escapedText.includes('$') ||
670 ts.isPropertyAccessExpression(node.initializer) && node.initializer.expression &&
671 node.initializer.expression.kind === ts.SyntaxKind.ThisKeyword &&
672 …ts.isIdentifier(node.initializer.name) && node.initializer.name.escapedText.toString().includes('$…
675 if (ts.isPropertyAssignment(node) && ts.isIdentifier(node.name) &&
676 !propertySet.has(node.name.escapedText.toString())) {
682 function validateStateManagement(node: ts.ObjectLiteralElementLike, customComponentName: string,
684 validateForbiddenToInitViaParam(node, customComponentName, log);
685 checkFromParentToChild(node, customComponentName, log, isBuilder);
688 function checkFromParentToChild(node: ts.ObjectLiteralElementLike, customComponentName: string,
691 if (ts.isIdentifier(node.name)) {
692 propertyName = node.name.escapedText.toString();
697 if (isInitFromParent(node)) {
699 getParentPropertyName(node as ts.PropertyAssignment, curPropertyKind, log);
706 node, propertyName, curPropertyKind, parentPropertyName, parentPropertyKind, log);
708 } else if (isInitFromLocal(node) && ts.isPropertyAssignment(node) &&
711 validateIllegalInitFromParent(node, propertyName, curPropertyKind,
712 node.initializer.getText(), COMPONENT_NON_DECORATOR, log);
714 } else if (curPropertyKind === COMPONENT_OBJECT_LINK_DECORATOR && node.initializer &&
715 (ts.isPropertyAccessExpression(node.initializer) ||
716 ts.isElementAccessExpression(node.initializer) || ts.isIdentifier(node.initializer))) {
720 getParentPropertyName(node as ts.PropertyAssignment, curPropertyKind, log) || propertyName;
723 if (isBuilder && judgeStructAssigned$$(node)) {
729 pos: node.initializer ? node.initializer.getStart() : node.getStart()
733 … node, propertyName, curPropertyKind, parentPropertyName, parentPropertyKind, log, LogType.WARN);
740 function judgeStructAssigned$$(node: ts.ObjectLiteralElementLike): boolean {
741 return partialUpdateConfig.partialUpdateMode && node.initializer &&
742 ts.isPropertyAccessExpression(node.initializer) &&
743 node.initializer.expression && ts.isIdentifier(node.initializer.expression) &&
744 node.initializer.expression.escapedText.toString() === $$;
747 function isInitFromParent(node: ts.ObjectLiteralElementLike): boolean {
748 if (ts.isPropertyAssignment(node) && node.initializer) {
749 if (ts.isPropertyAccessExpression(node.initializer) && node.initializer.expression &&
750 node.initializer.expression.kind === ts.SyntaxKind.ThisKeyword &&
751 ts.isIdentifier(node.initializer.name)) {
753 } else if (ts.isIdentifier(node.initializer) &&
754 matchStartWithDollar(node.initializer.getText())) {
760 function isInitFromLocal(node: ts.ObjectLiteralElementLike): boolean {
761 if (ts.isPropertyAssignment(node) && ts.isIdentifier(node.initializer) &&
762 !matchStartWithDollar(node.initializer.getText())) {
767 function getParentPropertyName(node: ts.PropertyAssignment, curPropertyKind: string,
769 const initExpression: ts.Expression = node.initializer;
784 validateNonLinkWithDollar(node, log);
787 if (node.initializer && node.initializer.name) {
788 parentPropertyName = node.initializer.name.getText();
851 function createCustomComponentIfStatement(id: string, node: ts.ExpressionStatement,
858 ts.factory.createBlock([node], true),
896 function validateForbiddenToInitViaParam(node: ts.ObjectLiteralElementLike,
905 if (isThisProperty(node, forbiddenToInitViaParamSet) || isThisProperty(node, localStorageSet)) {
908 … message: `Property '${node.name.getText()}' in the custom component '${customComponentName}'` +
910 pos: node.name.getStart()
915 function validateMandatoryToInitViaParam(node: ts.CallExpression, customComponentName: string,
926 pos: node.getStart()
932 function validateInitDecorator(node: ts.CallExpression, customComponentName: string,
945 pos: node.getStart()
951 function validateIllegalInitFromParent(node: ts.ObjectLiteralElementLike, propertyName: string,
966 pos: node.initializer ? node.initializer.getStart() : node.getStart()
970 function validateNonLinkWithDollar(node: ts.PropertyAssignment, log: LogInfo[]): void {
973 message: `Property '${node.name.getText()}' cannot initialize` +
975 pos: node.initializer.getStart()