34 lines
881 B
TypeScript
34 lines
881 B
TypeScript
import { PartialTemplate } from '../types/PartialTemplate'
|
|
import { delayProperties } from '../data/delayProperties'
|
|
import { categories } from '../data/categories'
|
|
|
|
/**
|
|
* The template of the sequentialDelayer gate
|
|
*/
|
|
const sequentialDelayerTemplate: PartialTemplate = {
|
|
metadata: {
|
|
name: 'sequential delayer'
|
|
},
|
|
material: {
|
|
type: 'image',
|
|
fill: require('../../../assets/sequential.svg')
|
|
},
|
|
code: {
|
|
activation: `
|
|
const i = context.get(0)
|
|
return new Promise((res, rej) => {
|
|
setTimeout(() => {
|
|
res()
|
|
},context.getProperty('delay'))
|
|
}).then(() => {
|
|
context.set(0,i)
|
|
})
|
|
`,
|
|
async: true
|
|
},
|
|
properties: delayProperties,
|
|
category: categories.time
|
|
}
|
|
|
|
export default sequentialDelayerTemplate
|