refactor: deprecate i18n.t (#13039)
* refactor: deprecate i18n.t * revert: deprecate i18n.t This reverts commit 7dbf873a2f745040ee723df5db659acacff84e12. * chore: reimpl
This commit is contained in:
		
							parent
							
								
									a637b4e282
								
							
						
					
					
						commit
						7881f06be0
					
				
					 84 changed files with 7311 additions and 222 deletions
				
			
		| 
						 | 
				
			
			@ -16,32 +16,40 @@ function createMemberType(item) {
 | 
			
		|||
		item.matchAll(parameterRegExp),
 | 
			
		||||
		([, parameter]) => parameter,
 | 
			
		||||
	);
 | 
			
		||||
	if (!parameters.length) {
 | 
			
		||||
		return ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword);
 | 
			
		||||
	}
 | 
			
		||||
	return ts.factory.createTypeReferenceNode(
 | 
			
		||||
		ts.factory.createIdentifier('ParameterizedString'),
 | 
			
		||||
		[
 | 
			
		||||
			ts.factory.createUnionTypeNode(
 | 
			
		||||
				parameters.map((parameter) =>
 | 
			
		||||
					ts.factory.createLiteralTypeNode(
 | 
			
		||||
						ts.factory.createStringLiteral(parameter),
 | 
			
		||||
	return parameters.length
 | 
			
		||||
		? ts.factory.createTypeReferenceNode(
 | 
			
		||||
				ts.factory.createIdentifier('ParameterizedString'),
 | 
			
		||||
				[
 | 
			
		||||
					ts.factory.createUnionTypeNode(
 | 
			
		||||
						parameters.map((parameter) =>
 | 
			
		||||
							ts.factory.createStringLiteral(parameter),
 | 
			
		||||
						),
 | 
			
		||||
					),
 | 
			
		||||
				),
 | 
			
		||||
			),
 | 
			
		||||
		],
 | 
			
		||||
	);
 | 
			
		||||
				],
 | 
			
		||||
			)
 | 
			
		||||
		: ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function createMembers(record) {
 | 
			
		||||
	return Object.entries(record).map(([k, v]) =>
 | 
			
		||||
		ts.factory.createPropertySignature(
 | 
			
		||||
	return Object.entries(record).map(([k, v]) => {
 | 
			
		||||
		const node = ts.factory.createPropertySignature(
 | 
			
		||||
			undefined,
 | 
			
		||||
			ts.factory.createStringLiteral(k),
 | 
			
		||||
			undefined,
 | 
			
		||||
			createMemberType(v),
 | 
			
		||||
		),
 | 
			
		||||
	);
 | 
			
		||||
		);
 | 
			
		||||
		if (typeof v === 'string') {
 | 
			
		||||
			ts.addSyntheticLeadingComment(
 | 
			
		||||
				node,
 | 
			
		||||
				ts.SyntaxKind.MultiLineCommentTrivia,
 | 
			
		||||
				`*
 | 
			
		||||
 * ${v.replace(/\n/g, '\n * ')}
 | 
			
		||||
 `,
 | 
			
		||||
				true,
 | 
			
		||||
			);
 | 
			
		||||
		}
 | 
			
		||||
		return node;
 | 
			
		||||
	});
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default function generateDTS() {
 | 
			
		||||
| 
						 | 
				
			
			@ -72,10 +80,8 @@ export default function generateDTS() {
 | 
			
		|||
				ts.factory.createTypeParameterDeclaration(
 | 
			
		||||
					undefined,
 | 
			
		||||
					ts.factory.createIdentifier('T'),
 | 
			
		||||
					ts.factory.createTypeReferenceNode(
 | 
			
		||||
						ts.factory.createIdentifier('string'),
 | 
			
		||||
						undefined,
 | 
			
		||||
					),
 | 
			
		||||
					ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
 | 
			
		||||
					ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
 | 
			
		||||
				),
 | 
			
		||||
			],
 | 
			
		||||
			undefined,
 | 
			
		||||
| 
						 | 
				
			
			@ -115,7 +121,6 @@ export default function generateDTS() {
 | 
			
		|||
						ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
 | 
			
		||||
						ts.factory.createTypeReferenceNode(
 | 
			
		||||
							ts.factory.createIdentifier('ParameterizedString'),
 | 
			
		||||
							[ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword)],
 | 
			
		||||
						),
 | 
			
		||||
						ts.factory.createTypeReferenceNode(
 | 
			
		||||
							ts.factory.createIdentifier('ILocale'),
 | 
			
		||||
| 
						 | 
				
			
			@ -187,6 +192,24 @@ export default function generateDTS() {
 | 
			
		|||
		),
 | 
			
		||||
		ts.factory.createExportDefault(ts.factory.createIdentifier('locales')),
 | 
			
		||||
	];
 | 
			
		||||
	ts.addSyntheticLeadingComment(
 | 
			
		||||
		elements[0],
 | 
			
		||||
		ts.SyntaxKind.MultiLineCommentTrivia,
 | 
			
		||||
		' eslint-disable ',
 | 
			
		||||
		true,
 | 
			
		||||
	);
 | 
			
		||||
	ts.addSyntheticLeadingComment(
 | 
			
		||||
		elements[0],
 | 
			
		||||
		ts.SyntaxKind.SingleLineCommentTrivia,
 | 
			
		||||
		' This file is generated by locales/generateDTS.js',
 | 
			
		||||
		true,
 | 
			
		||||
	);
 | 
			
		||||
	ts.addSyntheticLeadingComment(
 | 
			
		||||
		elements[0],
 | 
			
		||||
		ts.SyntaxKind.SingleLineCommentTrivia,
 | 
			
		||||
		' Do not edit this file directly.',
 | 
			
		||||
		true,
 | 
			
		||||
	);
 | 
			
		||||
	const printed = ts
 | 
			
		||||
		.createPrinter({
 | 
			
		||||
			newLine: ts.NewLineKind.LineFeed,
 | 
			
		||||
| 
						 | 
				
			
			@ -203,12 +226,5 @@ export default function generateDTS() {
 | 
			
		|||
			),
 | 
			
		||||
		);
 | 
			
		||||
 | 
			
		||||
	fs.writeFileSync(
 | 
			
		||||
		`${__dirname}/index.d.ts`,
 | 
			
		||||
		`/* eslint-disable */
 | 
			
		||||
// This file is generated by locales/generateDTS.js
 | 
			
		||||
// Do not edit this file directly.
 | 
			
		||||
${printed}`,
 | 
			
		||||
		'utf-8',
 | 
			
		||||
	);
 | 
			
		||||
	fs.writeFileSync(`${__dirname}/index.d.ts`, printed, 'utf-8');
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										6878
									
								
								locales/index.d.ts
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										6878
									
								
								locales/index.d.ts
									
										
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue