types
1.0.0
لا يوفر Scratch تعريفات النوع لمكتباتها ، لذلك كتبنا خاصة بنا.
يحتوي هذا المستودع فقط على أنواع وقت تشغيل ومحرر الخدش الفانيليا (LLK). للاطلاع على الأنواع الإضافية في أوقات تشغيل Turbowarp ، انظر @TurbowArp/Types-TW.
يمكن العثور على نسخة أكثر قابلية للقراءة البشرية من تعريفات TypeScript على: https://turbowarp.github.io/types/
| الوحدة النمطية | حالة |
|---|---|
| Scratch-VM | ✅ |
| أجندة الخدش | ✅ |
| Scratch-SVG-Renderer | ✅ |
| خدش المقرن | ✅ |
| Scratch-Audio | ✅ |
| تخزين الخدش | ✅ |
| خدش بارز | ✅ |
| حاصرات الخدش | ؟ |
| scratch-gui redux | ✅ |
| خدش ريدكس | ✅ |
| خدش www redux |
أولاً ، قم بتثبيت الأنواع:
npm install @turbowarp/types
بعد ذلك ، يجب عليك استخدام tsconfig.json لتكوين TypeScript لمعرفة كيفية العثور على الأنواع.
{
"compilerOptions" : {
// If you use require() or "module": "CommonJS", remove these lines.
// If you use "module": "ES6", synthetic default imports are required.
"module" : "ES6" ,
"allowSyntheticDefaultImports" : true ,
// Tell TypeScript where to find the types for Scratch libraries.
"paths" : {
"scratch-vm" : [ "./node_modules/@turbowarp/types/index.d.ts" ] ,
"scratch-render" : [ "./node_modules/@turbowarp/types/index.d.ts" ] ,
"scratch-svg-renderer" : [ "./node_modules/@turbowarp/types/index.d.ts" ] ,
"scratch-render-fonts" : [ "./node_modules/@turbowarp/types/index.d.ts" ] ,
"scratch-storage" : [ "./node_modules/@turbowarp/types/index.d.ts" ] ,
"scratch-audio" : [ "./node_modules/@turbowarp/types/index.d.ts" ] ,
"scratch-parser" : [ "./node_modules/@turbowarp/types/index.d.ts" ] ,
"scratch-blocks" : [ "./node_modules/@turbowarp/types/index.d.ts" ]
} ,
// Recommended strictness settings. Change as you please.
"strictNullChecks" : true ,
"noImplicitAny" : true ,
"noImplicitThis" : true
}
}ثم في JavaScript أو TypeScript:
import VM from 'scratch-vm' ;
const vm = new VM ( ) ;
vm . loadProject ( /* read a project somehow */ new ArrayBuffer ( 100 ) )
. then ( ( ) => {
vm . start ( ) ;
vm . greenFlag ( ) ;
} ) ;أو إذا كنت لا تزال تستخدم مطلوب ():
const VM = require ( 'scratch-vm' ) ;
const vm = new VM ( ) ;
vm . loadProject ( /* read a project somehow */ new ArrayBuffer ( 100 ) )
. then ( ( ) => {
vm . start ( ) ;
vm . greenFlag ( ) ;
} ) ; هناك بعض الاختبارات في مجلد tests . لا يتم تشغيل هذه الملفات فعليًا ، ولكن سيتم فحص الرمز.
اكتب التعريفات ورمز الاختبار مرخصين بموجب ترخيص Apache 2.0.
قد تكون المكتبات التي يتم توثيقها تحت تراخيص مختلفة.