
export default function *() {
	// Get current store from state or else set a default if it exists
	var store = this.getState('Core', {
		tutorialMode: false,
		steps: null
	});

	this.on('store.Core.setMode', function *(mode) {
		var store = this.getState('Core');
		
		if (mode === 'tutorial') {
			store.tutorialMode = true;
			store.steps = [
				{
					'title': '#1 选型',
					'content': '请根据你手上的实物设备，选择设备名称；及所配置的传输口。',
					'position': 'tutorial-position-1'
				},
				{
					'title': '#2 拖拉模块',
					'content': '左侧选择功能模块，拖拉连接到右侧相应的脚位。',
					'position': 'tutorial-position-2'
				},
				{
					'title': '#3 小功能',
					'content': '硬件检测：帮助你检查是否硬件链接成功。说明：硬件模块的使用方法描述，及逻辑范例。',
					'position': 'tutorial-position-3'
				},
				{
					'title': '#4 逻辑拼接',
					'content': '切换到逻辑编写区，为你的硬件编写一段工作指令。',
					'position': 'tutorial-position-4'
				},
				{
					'title': '#5 逻辑拖拉',
					'content': '把已连接模块，从左侧逻辑语法区，拖拉到右侧逻辑编辑区。',
					'position': 'tutorial-position-5'
				},
				{
					'title': '#6 代码烧录',
					'content': '把拼接好的逻辑语句转换成代码语言，并烧录到你的设备里去。',
					'position': 'tutorial-position-6'
				},
				{
					'title': '#恭喜你顺利完成新手入门',
					'content': '马上开始使用 match UP 开启创客之旅。',
					'position': 'tutorial-position-7'
				}
			];
		}

		// Notify view that time to update
		this.dispatch('store.Core', 'change');
	});
};
