{"context":{"domain":"lucca-playground"},"layers":{"ApplicationLayer":{"reference":"ApplicationLayer","availableInstances":[{"reference":"ComponentsDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"component":"data2-core@DataSet","reference":"SystemsDataSet","params":{"filter":{"domain":"data2"},"pagination":{"size":1},"datasource":{"component":"data2-core-types@ProcessReference","params":{"reference":"SystemsDataSource"}}}},{"reference":"ExternalComponentInstancesDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"reference":"SystemsDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[{"_id":"5e3b796d6228227ca637d0f4","name":"data2","domain":"data2","organization":"62292184611f480b3191c37c","visibility":"public","updatedAt":"2026-07-27T14:19:36.810Z"}]}},{"reference":"OrganizationsDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"reference":"DataComponentInstancesDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"component":"data2-core@DataSet","reference":"OneFileComponentInstancesDataSet","params":{"pagination":{"size":1},"master":{"dataset":{"component":"data2-core-types@ProcessReference","params":{"reference":"SystemsDataSet"}},"localField":"system","masterField":"_id"},"datasource":{"component":"data2-core-types@ProcessReference","params":{"reference":"FileComponentInstancesDataSource"}}}},{"reference":"ApplicationsDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"reference":"ComponentInstancesDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"reference":"ServiceComponentInstancesDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"component":"data2-core@Data2TableDataSource","reference":"FileComponentInstancesDataSource","params":{"table":"fileComponentInstances","schema":[{"component":"data2-core-types@Field","params":{"key":"component","title":"Component","component":"data2-core-primitives@String"}},{"component":"data2-core-types@Field","params":{"key":"system","title":"System","component":"data2-core-primitives@ObjectId"}},{"component":"data2-core-types@Field","params":{"key":"displayName","title":"Display Name","component":"data2-core-primitives@String"}},{"component":"data2-core-types@Field","params":{"key":"params","title":"Params","component":"data2-core-primitives@Object"}},{"component":"data2-core-types@Field","params":{"key":"reference","title":"Reference","component":"data2-core-primitives@String"}}]}},{"component":"data2-core@MemoryDataSource","reference":"EmptyDataSource","params":{"initialData":[]}},{"reference":"ComponentsDataSet","component":"data2-core@DataSet","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"EmptyDataSource"}}}},{"reference":"UserComponentsDataSet","component":"data2-core@DataSet","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"EmptyDataSource"}}}},{"reference":"DataComponentInstancesDataSet","component":"data2-core@DataSet","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"EmptyDataSource"}}}},{"reference":"ServiceComponentInstancesDataSet","component":"data2-core@DataSet","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"EmptyDataSource"}}}},{"reference":"ComponentInstancesDataSet","component":"data2-core@DataSet","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"EmptyDataSource"}}}},{"reference":"ExternalComponentInstancesDataSet","component":"data2-core@DataSet","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"EmptyDataSource"}}}},{"reference":"ApplicationsDataSet","component":"data2-core@DataSet","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"EmptyDataSource"}}}}],"processesParams":{}},"HostApplicationLayer":{"reference":"HostApplicationLayer","availableInstances":[{"_id":"5f15ff190528b92601890f71","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"SystemsTableDataSource"}},"filter":{"domain":{"component":"data2-core-types@Reference","params":{"reference":"domain"}}},"pk":"_id","fields":[{"component":"data2-core-types@FieldReference","params":{"key":"_id"}},{"component":"data2-core-types@FieldReference","params":{"key":"name"}},{"component":"data2-core-types@FieldReference","params":{"key":"domain"}},{"component":"data2-core-types@FieldReference","params":{"key":"visibility"}},{"component":"data2-core-types@FieldReference","params":{"key":{"component":"data2-core-primitives@String","params":{"content":"customDomains"}}},"break":true},{"component":"data2-core-types@FieldReference","params":{"key":{"component":"data2-core-primitives@String","params":{"content":"organization._id"}}},"break":true},{"component":"data2-core-types@FieldReference","params":{"key":{"component":"data2-core-primitives@String","params":{"content":"organization.name"}}},"break":true},{"component":"data2-core-types@FieldReference","params":{"key":{"component":"data2-core-primitives@String","params":{"content":"organization.billingStatus"}}},"break":true},{"component":"data2-core-types@FieldReference","params":{"key":{"component":"data2-core-primitives@String","params":{"content":"organization.publicTrial.active"}}},"break":true},{"component":"data2-core-types@FieldReference","params":{"key":{"component":"data2-core-primitives@String","params":{"content":"settings.defaultAccessPolicy"}}},"break":true}],"pagination":{"size":{"component":"data2-core-primitives@Number","params":{"content":1}}},"staticPagination":{"size":{"component":"data2-core-primitives@Number","params":{"content":1}}},"policies":[{"component":"data2-core-auth@Policy","params":{"allow":{"params":{"actions":[{"params":{"components":[{"params":{"query":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$params.query"}}}},"field":{"component":"data2-core-primitives@String","params":{"content":"_id"}},"fieldType":"string"},"component":"data2@7KkQq0vK4a7D2gg6IVJT7"},{"params":{"query":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$params.query"}}}},"field":{"component":"data2-core-primitives@String","params":{"content":"domain"}},"fieldType":"string"},"component":"data2@7KkQq0vK4a7D2gg6IVJT7"},{"params":{"query":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$params.query"}}}},"field":{"component":"data2-core-primitives@String","params":{"content":"customDomains"}},"fieldType":"string"},"component":"data2@7KkQq0vK4a7D2gg6IVJT7"}]},"component":"data2-core-logical-operators@Or"}]},"component":"data2-core-flow@Series"}}}]},"reference":"SystemsDataSet","updatedAt":"2026-08-07T21:51:24.037Z","createdAt":"2020-07-20T20:31:21.838Z"},{"_id":"5f1601ce0528b92601890f7c","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"pagination":{"size":1000},"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"ComponentsTableDataSource"}},"sort":{"params.package":1,"params.component":1},"pk":"_id","autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"staticFilter":{"system":{"exists":{"params":{"content":false},"component":"data2-core-primitives@Boolean"}}},"filter":{"system":{"exists":{"params":{"content":false},"component":"data2-core-primitives@Boolean"}}}},"reference":"ComponentsDataSet","updatedAt":"2025-11-05T19:37:01.935Z","createdAt":"2020-07-20T20:42:54.898Z"},{"_id":"5f9041dbc8da12be8b94aea4","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"pagination":{"size":2000},"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"ComponentsTableDataSource"}},"pk":"_id","autoEdit":true,"master":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"policies":{"params":{"allowGet":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2@hkXy-UhMjhyfptdE6_fpW"}},"reference":"UserComponentsDataSet","updatedAt":"2025-11-06T21:06:58.095Z","createdAt":"2020-07-20T20:44:09.350Z"},{"_id":"65d8c4fabc9dbb8f94de8d53","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"ExternalComponentInstancesTableDataSource"}},"pk":"_id","autoEdit":true,"master":{"params":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"component":"data2-core-types@DataSetMaster"},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"policies":{"params":{"allowGet":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2@hkXy-UhMjhyfptdE6_fpW"}},"reference":"ExternalComponentInstancesDataSet","updatedAt":"2025-11-06T21:07:23.742Z","createdAt":"2024-02-23T16:17:01.816Z"},{"reference":"SystemsTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[{"_id":"6172b957976026c073ab9058","name":"Lucca`s Playground","domain":"lucca-playground","visibility":"public","settings":{"defaultAccessPolicy":"private"},"updatedAt":"2026-08-14T19:26:29.927Z"}]}},{"reference":"ComponentsTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[{"_id":"5f52a278a575399a45d239b4","component":"data2-core-types@Component","params":{"package":"data2-core-primitives","component":"Router","interactions":{"component":"data2-core-types@FieldSet","params":{"fields":{"goBack":{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-types@Function"}},"definition":{"component":"data2-core-functions@Function","params":{"body":{"preventEvaluation":true,"component":"data2-core-types@Getter","params":{"module":{"component":"data2-core-types@This","params":{}},"prop":"history.goBack","args":[]}}}},"icon":{"component":"data2-core-primitives@String","params":{"content":"arrow-left"}},"visibility":"public"}},"goTo":{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"definition":{"component":"data2-core-functions@Function","params":{"body":{"preventEvaluation":true,"component":"data2-core-types@Getter","params":{"module":{"component":"data2-core-types@This","params":{}},"prop":"history.push","args":[{"component":"data2-core-types@Reference","params":{"reference":"url"}},{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"preserveQuery"}}}}]}},"parameters":[{"component":"data2-core-primitives@String","params":{"content":"url"}},{"component":"data2-core-primitives@String","params":{"content":"preserveQuery"}}]},"break":true},"icon":{"component":"data2-core-primitives@String","params":{"content":"share"}},"visibility":"public","arguments":[{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Path to route"}},"description":{"component":"data2-core-primitives@String","params":{"content":"Path to redirect user"}},"visibility":"public","required":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2-core-types@ComponentParameter"},{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Boolean"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Preserve Query"}},"description":{"component":"data2-core-primitives@String","params":{"content":"Preserve query string parameters  preserve query parameters on navigating."}},"visibility":"public","required":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2-core-types@ComponentParameter"}]}},"open":{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-types@Function"}},"definition":{"component":"data2-core-functions@Function","params":{"body":{"preventEvaluation":true,"component":"data2-core-types@Getter","params":{"module":{"component":"data2-core-types@This","params":{}},"prop":"history.push","args":[{"pathname":{"component":"data2-core-types@Reference","params":{"reference":"value"}}}]}},"parameters":["value"]}},"icon":{"component":"data2-core-primitives@String","params":{"content":"share"}},"visibility":"public","arguments":[{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Link to open"}},"description":{"component":"data2-core-primitives@String","params":{"content":""}},"visibility":"public","required":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2-core-types@ComponentParameter"},{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Target"}},"description":{"component":"data2-core-primitives@String","params":{"content":"Where to open the link"}},"visibility":"public","required":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"oneOf":[{"params":{"content":"_blank"},"component":"data2-core-primitives@String"},{"params":{"content":"_self"},"component":"data2-core-primitives@String"},{"params":{"content":"_parent"},"component":"data2-core-primitives@String"},{"params":{"content":"_top"},"component":"data2-core-primitives@String"}]},"component":"data2-core-types@ComponentParameter"}]}},"close":{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-types@Function"}},"definition":{"component":"data2-core-functions@Function","params":{"body":{"preventEvaluation":true,"component":"data2-core-types@Getter","params":{"module":{"params":{},"component":"data2-core-web@Window"},"prop":"close"}},"parameters":["value"]}},"icon":{"component":"data2-core-primitives@String","params":{"content":"times"}},"visibility":"public","arguments":[{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Link to open"}},"description":{"component":"data2-core-primitives@String","params":{"content":""}},"visibility":"public","required":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2-core-types@ComponentParameter"},{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Target"}},"description":{"component":"data2-core-primitives@String","params":{"content":"Where to open the link"}},"visibility":"public","required":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"oneOf":[{"params":{"content":"_blank"},"component":"data2-core-primitives@String"},{"params":{"content":"_self"},"component":"data2-core-primitives@String"},{"params":{"content":"_parent"},"component":"data2-core-primitives@String"},{"params":{"content":"_top"},"component":"data2-core-primitives@String"}]},"component":"data2-core-types@ComponentParameter"}],"description":{"component":"data2-core-primitives@String","params":{"content":"Closes a window that was opened via router.open."}}}}}}}}},{"_id":"620d28658271aa4129919d89","component":"data2-core-types@Component","params":{"package":"data2-interface-services","component":"DeviceController","interactions":{"params":{"fields":{"postMessage":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":"data2-core-primitives@String","title":{"component":"data2-core-primitives@String","params":{"content":"data"}}}}]},"component":"data2-core-types@ComponentParameter"},"print":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"arguments":[{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Object"}},"flat":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"parameters":{"zoom":{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Number"}},"title":{"component":"data2-core-primitives@String","params":{"content":"zoom"}},"visibility":"public"}}},"visibility":"public"},"component":"data2-core-types@ComponentParameter"}],"visibility":"public"},"component":"data2-core-types@ComponentParameter"},"share":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}}},"component":"data2-core-types@ComponentParameter"},"clipboard.copy":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}}}}]},"component":"data2-core-types@ComponentParameter"},"clipboard.paste":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}}}}]},"component":"data2-core-types@ComponentParameter"},"download":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"visibility":"public","arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Filename"}}}},{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Content"}}}},{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Object"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Options"}},"parameters":{"params":{"fields":{"type":{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Mimetype"}}}}}},"component":"data2-core-types@FieldSet"}}}]},"component":"data2-core-types@ComponentParameter"},"downloadUrl":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"visibility":"public","arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Filename"}}}},{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Url"}}}}]},"component":"data2-core-types@ComponentParameter"},"promptFiles":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":"data2-core-primitives@Object","flat":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"parameters":{"params":{"fields":{"multiple":{"component":"data2-core-types@ComponentParameter","params":{"title":{"component":"data2-core-primitives@String","params":{"content":"Multiple"}},"description":{"component":"data2-core-primitives@String","params":{"content":"Whether or not to allow selecting multiple files"}},"component":"data2-core-primitives@Boolean"}},"acceptedFormats":{"component":"data2-core-types@ComponentParameter","params":{"title":{"component":"data2-core-primitives@String","params":{"content":"Accepted Formats"}},"description":{"component":"data2-core-primitives@String","params":{"content":"Accepted file formats"}},"component":"data2-core-primitives@String","list":{"component":"data2-core-primitives@Boolean","params":{"content":true}}}},"timeout":{"component":"data2-core-types@ComponentParameter","params":{"title":{"component":"data2-core-primitives@String","params":{"content":"Timeout"}},"description":{"component":"data2-core-primitives@String","params":{"content":"Max milliseconds to wait for file upload"}},"component":"data2-core-primitives@Number"}}}},"component":"data2-core-types@FieldSet"}}}],"visibility":"public"},"component":"data2-core-types@ComponentParameter"},"meetingRecord":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"visibility":"public","definition":{"params":{"actions":[{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"meeting"}},"script":{"component":"data2-core-primitives@String","params":{"content":"(function() {\n  let mediaRecorder;\n  let audioChunks = [];\n  let combinedStream;\n  let audioContext;\n  \n  window.meetingCapture = async function() {\n    try {\n      // Solicitar acesso ao áudio da guia (e vídeo, que será ignorado depois)\n      const tabStream = await navigator.mediaDevices.getDisplayMedia({ \n        video: true, // Necessário para alguns navegadores\n        audio: true\n      });\n      \n      // Remover a trilha de vídeo\n      const tabAudioTrack = tabStream.getAudioTracks()[0];\n      \n      // Solicitar acesso ao microfone\n      const micStream = await navigator.mediaDevices.getUserMedia({ audio: true });\n      const micAudioTrack = micStream.getAudioTracks()[0];\n      \n      // Criar um novo MediaStream com ambas as trilhas de áudio\n      combinedStream = new MediaStream([tabAudioTrack, micAudioTrack]);\n      \n      // Criar um contexto de áudio para misturar os streams\n      audioContext = new AudioContext();\n      const destination = audioContext.createMediaStreamDestination();\n      \n      // Conectar a trilha de áudio da guia\n      const tabSource = audioContext.createMediaStreamSource(new MediaStream([tabAudioTrack]));\n      tabSource.connect(destination);\n      \n      // Conectar a trilha de áudio do microfone\n      const micSource = audioContext.createMediaStreamSource(new MediaStream([micAudioTrack]));\n      micSource.connect(destination);\n      \n      // Iniciar gravação com o stream misturado\n      mediaRecorder = new MediaRecorder(destination.stream);\n      audioChunks = [];\n      mediaRecorder.ondataavailable = (e) => audioChunks.push(e.data);\n      mediaRecorder.start();\n      \n      console.log('Gravação iniciada. Chame meetingCaptureStop() para finalizar.');\n    } catch (error) {\n      console.error('Erro ao iniciar a captura:', error);\n    }\n  };\n  \n  window.meetingCaptureStop = function() {\n    return new Promise((resolve, reject) => {\n      if (!mediaRecorder) {\n        reject('Nenhuma gravação em andamento.');\n        return;\n      }\n      \n      mediaRecorder.onstop = () => {\n        const audioBlob = new Blob(audioChunks, { type: 'audio/webm' });\n        combinedStream.getTracks().forEach(track => track.stop());\n        audioContext.close();\n        \n        resolve(audioBlob);\n        console.log('Gravação finalizada. O arquivo de áudio está pronto para upload.');\n      };\n      \n      mediaRecorder.stop();\n    });\n  };\n})();"}}},"component":"data2-core-web@Script"},{"component":"data2-core-types@Getter","params":{"module":{"params":{},"component":"data2-core-web@Window"},"prop":{"component":"data2-core-primitives@String","params":{"content":"meetingCapture"}}}}]},"component":"data2-core-flow@Series"}},"component":"data2-core-types@ComponentParameter"},"meetingRecordStop":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"visibility":"public","arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Filename"}}}},{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Content"}}}},{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Object"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Options"}},"parameters":{"params":{"fields":{"type":{"component":"data2-core-types@ComponentParameter","params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@String"}},"title":{"component":"data2-core-primitives@String","params":{"content":"Mimetype"}}}}}},"component":"data2-core-types@FieldSet"}}}],"definition":{"params":{"actions":[{"component":"data2-core-types@Getter","params":{"module":{"params":{},"component":"data2-core-web@Window"},"prop":{"component":"data2-core-primitives@String","params":{"content":"meetingCaptureStop"}}}}]},"component":"data2-core-flow@Series"}},"component":"data2-core-types@ComponentParameter"},"notify":{"params":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core-primitives@Function"}},"visibility":"private","arguments":[{"component":"data2-core-types@ComponentParameter","params":{"component":"data2-core-primitives@Object","parameters":{"title":{"params":{"component":"data2-core-primitives@String","index":{"component":"data2-core-primitives@Number","params":{"content":0}},"title":{"component":"data2-core-primitives@String","params":{"content":"title"}}},"component":"data2-core-types@ComponentParameter"},"sound":{"params":{"component":"data2-core-types@FileComponentUrlReference","index":{"component":"data2-core-primitives@Number","params":{"content":1}},"title":{"component":"data2-core-primitives@String","params":{"content":"sound"}}},"component":"data2-core-types@ComponentParameter"}},"flat":{"component":"data2-core-primitives@Boolean","params":{"content":true}}}}]},"component":"data2-core-types@ComponentParameter"}}},"component":"data2-core-types@FieldSet"}}},{"_id":"6a73ee571204b3d36b63499e","component":"data2-core-types@Component","system":"6172b957976026c073ab9058","params":{"extends":"data2-core-primitives@Block","component":"pixeldoomEditor","package":"lucca-playground","definition":{"preventEvaluation":true,"component":"data2-core-types@Definition","params":{"def":{"component":"data2-code-components@CodeHost","params":{"code":{"component":"data2-core-primitives@String","params":{"content":"const CELL = 32\nconst TOOLS = [\n  { id: '0', label: 'Vazio', sw: '#2f3542' },\n  { id: '1', label: 'Parede 1', sw: '#b33939' },\n  { id: '2', label: 'Parede 2', sw: '#4a69bd' },\n  { id: '3', label: 'Parede 3', sw: '#38ada9' },\n  { id: '4', label: 'Parede 4', sw: '#e58e26' },\n  { id: '5', label: 'Saída', sw: '#f6e58d' },\n  { id: 'player', label: 'Início Jogador', sw: '#00e6e6' },\n  { id: 'enemy', label: 'Inimigo', sw: '#e84118' },\n]\nconst SWATCH = { '0': '#2f3542', '1': '#b33939', '2': '#4a69bd', '3': '#38ada9', '4': '#e58e26', '5': '#f6e58d' }\n\nfunction esc(v) {\n  return String(v == null ? '' : v).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\"/g, '&quot;')\n}\nfunction blankGrid(w, h) { return new Array(w * h).fill(0) }\nfunction resizeGrid(oldGrid, oldW, oldH, newW, newH) {\n  const g = new Array(newW * newH).fill(0)\n  const mh = Math.min(oldH, newH), mw = Math.min(oldW, newW)\n  for (let y = 0; y < mh; y++) {\n    for (let x = 0; x < mw; x++) g[y * newW + x] = oldGrid[y * oldW + x] || 0\n  }\n  return g\n}\nfunction drawGrid(cv, s, draftGrid) {\n  if (!cv || !s || !s.width) return\n  const w = s.width, h = s.height\n  const grid = draftGrid || s.grid || []\n  const dpr = window.devicePixelRatio || 1\n  const cssW = w * CELL, cssH = h * CELL\n  const needW = Math.round(cssW * dpr), needH = Math.round(cssH * dpr)\n  if (cv.width !== needW || cv.height !== needH) { cv.width = needW; cv.height = needH }\n  const ctx = cv.getContext('2d')\n  ctx.setTransform(dpr, 0, 0, dpr, 0, 0)\n  for (let y = 0; y < h; y++) {\n    for (let x = 0; x < w; x++) {\n      const v = grid[y * w + x] || 0\n      ctx.fillStyle = SWATCH[String(v)] || '#2f3542'\n      ctx.fillRect(x * CELL, y * CELL, CELL, CELL)\n      ctx.strokeStyle = 'rgba(0,0,0,0.25)'\n      ctx.strokeRect(x * CELL + 0.5, y * CELL + 0.5, CELL - 1, CELL - 1)\n    }\n  }\n  const things = s.things || []\n  ctx.font = `${Math.floor(CELL * 0.7)}px sans-serif`\n  ctx.textAlign = 'center'\n  ctx.textBaseline = 'middle'\n  things.forEach((t) => { if (t.type === 'enemy') ctx.fillText('👹', t.x * CELL, t.y * CELL) })\n  const ps = s.playerStart || { x: 1.5, y: 1.5, angle: 0 }\n  ctx.save()\n  ctx.translate(ps.x * CELL, ps.y * CELL)\n  ctx.rotate(ps.angle || 0)\n  ctx.fillStyle = '#00e6e6'\n  ctx.beginPath(); ctx.moveTo(12, 0); ctx.lineTo(-8, 8); ctx.lineTo(-8, -8); ctx.closePath(); ctx.fill()\n  ctx.restore()\n}\n\nexport default {\n  css: `\n    .app{position:absolute;inset:0;display:flex;font-family:'Courier New',monospace;background:#0d0f14;color:#e8e8ee;overflow:hidden}\n    .sidebar{width:300px;flex:0 0 300px;background:#161822;border-right:1px solid #2a2e3d;padding:16px;box-sizing:border-box;overflow-y:auto;display:flex;flex-direction:column;gap:12px}\n    .sidebar h1{font-size:15px;letter-spacing:2px;margin:0 0 4px;color:#f6e58d;text-transform:uppercase}\n    .field{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#9aa0b4}\n    .field input{background:#0d0f14;border:1px solid #2a2e3d;color:#e8e8ee;padding:6px 8px;border-radius:4px;font-family:inherit;box-sizing:border-box;width:100%}\n    .row2{display:flex;gap:8px}\n    .row2 .field{flex:1}\n    .toolgrid{display:grid;grid-template-columns:1fr 1fr;gap:6px}\n    .toolbtn{display:flex;align-items:center;gap:6px;background:#1d2030;border:1px solid #2a2e3d;color:#cfd2e0;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:11px;font-family:inherit}\n    .toolbtn .sw{width:14px;height:14px;border-radius:3px;background:var(--c);flex:0 0 14px;display:inline-block}\n    .toolbtn.active{border-color:#f6e58d;background:#2a2410;color:#f6e58d}\n    .actions{display:flex;flex-direction:column;gap:6px;margin-top:4px}\n    .btn{background:#2a2e3d;border:1px solid #3a3f52;color:#e8e8ee;padding:8px 10px;border-radius:4px;cursor:pointer;font-family:inherit;font-size:12px}\n    .btn.primary{background:#f6e58d;color:#161822;font-weight:700;border-color:#f6e58d}\n    .msg{font-size:11px;color:#78e08f;min-height:14px}\n    .levelList{display:flex;flex-direction:column;gap:4px;font-size:11px;border-top:1px solid #2a2e3d;padding-top:10px}\n    .levelList label{color:#9aa0b4;text-transform:uppercase;font-size:10px;letter-spacing:1px}\n    .levelItem{background:#1d2030;border:1px solid #2a2e3d;border-radius:4px;padding:6px 8px;cursor:pointer}\n    .levelItem.active{border-color:#00e6e6;color:#00e6e6}\n    .canvasArea{flex:1;overflow:auto;padding:24px;box-sizing:border-box}\n    .canvasWrap{position:relative;box-shadow:0 0 0 2px #2a2e3d}\n    .grid{display:block;width:100%;height:100%;cursor:crosshair}\n  `,\n  render(d2) {\n    const s = d2.state\n    const width = s.width || 12\n    const height = s.height || 12\n    const tool = s.tool || '1'\n    const name = s.name != null ? s.name : 'Novo Nível'\n    const msg = s.msg || ''\n    const levelId = s.levelId || null\n    const ds = d2.data('levels')\n    const rows = ds && !ds.loading ? ds.records() : []\n    const listHtml = rows.length\n      ? rows.map((r) => `<div class=\"levelItem ${r._id === levelId ? 'active' : ''}\" data-key=\"${r._id}\" data-id=\"${r._id}\">${esc(r.name)} (${r.width}x${r.height})</div>`).join('')\n      : `<div style=\"color:#666\">Nenhum nível salvo ainda.</div>`\n    const wrapW = width * CELL, wrapH = height * CELL\n    return `<div class=\"app\">\n      <div class=\"sidebar\">\n        <h1>PixelDoom · Editor</h1>\n        <div class=\"field\"><label>Nome do nível</label><input class=\"nameIn\" value=\"${esc(name)}\"/></div>\n        <div class=\"row2\">\n          <div class=\"field\"><label>Largura</label><input class=\"widthIn\" type=\"number\" min=\"4\" max=\"40\" value=\"${width}\"/></div>\n          <div class=\"field\"><label>Altura</label><input class=\"heightIn\" type=\"number\" min=\"4\" max=\"40\" value=\"${height}\"/></div>\n        </div>\n        <div class=\"field\"><label>Ferramentas</label>\n          <div class=\"toolgrid\">\n            ${TOOLS.map((t) => `<button class=\"toolbtn ${tool === t.id ? 'active' : ''}\" data-tool=\"${t.id}\" style=\"--c:${t.sw}\"><span class=\"sw\"></span>${t.label}</button>`).join('')}\n          </div>\n        </div>\n        <div class=\"actions\">\n          <button class=\"btn newBtn\">＋ Novo Nível</button>\n          <button class=\"btn saveBtn\">💾 Salvar</button>\n          <button class=\"btn primary playBtn\">▶ Jogar</button>\n        </div>\n        <div class=\"msg\">${esc(msg)}</div>\n        <div class=\"levelList\">\n          <label>Níveis salvos</label>\n          ${listHtml}\n        </div>\n      </div>\n      <div class=\"canvasArea\">\n        <div class=\"canvasWrap\" style=\"width:${wrapW}px;height:${wrapH}px\">\n          <canvas class=\"grid\" data-d2-static></canvas>\n        </div>\n      </div>\n    </div>`\n  },\n  mounted(d2) {\n    if (d2.state.width === undefined) {\n      d2.setState({\n        levelId: null, name: 'Novo Nível', width: 12, height: 12,\n        grid: blankGrid(12, 12), things: [], playerStart: { x: 1.5, y: 1.5, angle: 0 },\n        tool: '1', msg: 'Escolha uma ferramenta e desenhe o nível.',\n      })\n    }\n\n    let painting = false\n    let draft = null\n\n    const cellFromEvent = (e, cv) => {\n      const rect = cv.getBoundingClientRect()\n      const w = d2.state.width, h = d2.state.height\n      const cx = Math.floor(((e.clientX - rect.left) / rect.width) * w)\n      const cy = Math.floor(((e.clientY - rect.top) / rect.height) * h)\n      return { cx: Math.max(0, Math.min(w - 1, cx)), cy: Math.max(0, Math.min(h - 1, cy)) }\n    }\n\n    const applyTool = (cx, cy, gridRef) => {\n      const s = d2.state\n      const idx = cy * s.width + cx\n      if (s.tool === 'player') {\n        s.playerStart = { x: cx + 0.5, y: cy + 0.5, angle: (s.playerStart && s.playerStart.angle) || 0 }\n        return null\n      }\n      if (s.tool === 'enemy') {\n        const things = (s.things || []).slice()\n        const at = things.findIndex((t) => t.type === 'enemy' && Math.floor(t.x) === cx && Math.floor(t.y) === cy)\n        if (at >= 0) things.splice(at, 1)\n        else things.push({ x: cx + 0.5, y: cy + 0.5, type: 'enemy' })\n        s.things = things\n        return null\n      }\n      const val = Number(s.tool)\n      const g = gridRef.slice()\n      if (val === 5) { for (let i = 0; i < g.length; i++) if (g[i] === 5) g[i] = 0 }\n      g[idx] = val\n      return g\n    }\n\n    d2.on('.grid', 'mousedown', (e, cv) => {\n      const s = d2.state\n      if (s.tool === 'player' || s.tool === 'enemy') {\n        const { cx, cy } = cellFromEvent(e, cv)\n        applyTool(cx, cy, s.grid)\n        drawGrid(cv, d2.state, null)\n        return\n      }\n      painting = true\n      draft = s.grid.slice()\n      const { cx, cy } = cellFromEvent(e, cv)\n      const g2 = applyTool(cx, cy, draft)\n      if (g2) draft = g2\n      drawGrid(cv, d2.state, draft)\n    })\n    d2.on(window, 'mousemove', (e) => {\n      if (!painting) return\n      const cv = d2.$('.grid'); if (!cv) return\n      const { cx, cy } = cellFromEvent(e, cv)\n      const g2 = applyTool(cx, cy, draft)\n      if (g2) draft = g2\n      drawGrid(cv, d2.state, draft)\n    })\n    d2.on(window, 'mouseup', () => {\n      if (painting && draft) d2.state.grid = draft\n      painting = false\n      draft = null\n    })\n\n    d2.on('.toolbtn', 'click', (e, el) => { d2.state.tool = el.dataset.tool })\n    d2.on('.nameIn', 'input', (e, el) => { d2.state.name = el.value })\n    d2.on('.widthIn', 'change', (e, el) => {\n      const nw = Math.max(4, Math.min(40, parseInt(el.value, 10) || 12))\n      const s = d2.state\n      const ng = resizeGrid(s.grid, s.width, s.height, nw, s.height)\n      d2.setState({ grid: ng, width: nw })\n    })\n    d2.on('.heightIn', 'change', (e, el) => {\n      const nh = Math.max(4, Math.min(40, parseInt(el.value, 10) || 12))\n      const s = d2.state\n      const ng = resizeGrid(s.grid, s.width, s.height, s.width, nh)\n      d2.setState({ grid: ng, height: nh })\n    })\n\n    d2.on('.newBtn', 'click', () => {\n      d2.setState({\n        levelId: null, name: 'Novo Nível', width: 12, height: 12,\n        grid: blankGrid(12, 12), things: [], playerStart: { x: 1.5, y: 1.5, angle: 0 },\n        tool: '1', msg: 'Novo nível — comece a desenhar as paredes.',\n      })\n    })\n\n    d2.on('.levelItem', 'click', (e, el) => {\n      const ds = d2.data('levels')\n      const rec = (ds.records() || []).find((r) => r._id === el.dataset.id)\n      if (!rec) return\n      d2.setState({\n        levelId: rec._id, name: rec.name, width: rec.width, height: rec.height,\n        grid: (rec.grid || []).slice(), things: (rec.things || []).map((t) => ({ ...t })),\n        playerStart: rec.playerStart ? { ...rec.playerStart } : { x: 1.5, y: 1.5, angle: 0 },\n        msg: `Carregado: ${rec.name}`,\n      })\n    })\n\n    const doSave = async () => {\n      const s = d2.state\n      const ds = d2.data('levels')\n      const payload = {\n        name: s.name || 'Nível sem nome', width: s.width, height: s.height,\n        grid: s.grid, things: s.things || [], playerStart: s.playerStart || { x: 1.5, y: 1.5, angle: 0 },\n        updatedAt: new Date().toISOString(),\n      }\n      d2.state.msg = 'Salvando…'\n      try {\n        if (s.levelId) {\n          await ds.update({ _id: s.levelId, ...payload })\n        } else {\n          const rec = await ds.create(payload)\n          let newId = (rec && rec._id) || (rec && rec.data && rec.data._id) || null\n          if (!newId) {\n            await ds.refresh()\n            const all = (ds.records() || []).slice().sort((a, b) => (a._id < b._id ? 1 : -1))\n            newId = all[0] && all[0]._id\n          }\n          d2.state.levelId = newId\n        }\n        d2.state.msg = 'Salvo!'\n      } catch (err) {\n        d2.state.msg = 'Erro ao salvar.'\n      }\n    }\n    d2.on('.saveBtn', 'click', () => { doSave() })\n    d2.on('.playBtn', 'click', async () => {\n      await doSave()\n      const store = d2.store('gameStore')\n      if (store) store.set('selectedLevelId', d2.state.levelId)\n      window.location.href = d2.param('playUrl', '/')\n    })\n  },\n  updated(d2) {\n    const cv = d2.$('.grid')\n    if (cv) drawGrid(cv, d2.state, null)\n  },\n}\n"}},"levels":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"levels"}}}},"gameStore":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"gameStore"}}}},"playUrl":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"playUrl"}}}}}}}}}},{"_id":"6a73ee81d5c61d2c1c9a94e7","component":"data2-core-types@Component","system":"6172b957976026c073ab9058","params":{"extends":"data2-core-primitives@Block","component":"pixeldoomPlay","package":"lucca-playground","definition":{"preventEvaluation":true,"component":"data2-core-types@Definition","params":{"def":{"component":"data2-code-components@CodeHost","params":{"code":{"component":"data2-core-primitives@String","params":{"content":"const WALL_COLORS = {\n  1: [179, 57, 57],\n  2: [74, 105, 189],\n  3: [56, 173, 169],\n  4: [229, 142, 38],\n}\nconst FLOOR_COLOR = [26, 26, 26]\nconst SKY_COLOR = [40, 46, 66]\nconst RENDER_W = 320\nconst RENDER_H = 200\nconst FOV = (66 * Math.PI) / 180\nconst MINI = 160\n\nfunction isWallCell(v) { return v >= 1 && v <= 4 }\nfunction clamp(v, a, b) { return Math.max(a, Math.min(b, v)) }\n\nexport default {\n  css: `\n    .app{position:absolute;inset:0;background:#000;overflow:hidden;font-family:'Courier New',monospace;color:#e8e8ee}\n    .scene{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;cursor:crosshair}\n    .mini{position:absolute;top:16px;right:16px;width:160px;height:160px;border:2px solid #444;background:#0d0f14;opacity:0.92}\n    .hud{position:absolute;top:16px;left:16px;display:flex;flex-direction:column;gap:4px;pointer-events:none;text-shadow:0 1px 3px #000}\n    .hudName{font-size:14px;letter-spacing:2px;color:#f6e58d;text-transform:uppercase}\n    .hudKills{font-size:13px;color:#78e08f}\n    .crosshair{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px;pointer-events:none}\n    .crosshair::before,.crosshair::after{content:'';position:absolute;background:#fff;opacity:.85}\n    .crosshair::before{left:6px;top:0;width:2px;height:14px}\n    .crosshair::after{left:0;top:6px;width:14px;height:2px}\n    .backBtn{position:absolute;bottom:16px;left:16px;background:#1d2030;border:1px solid #3a3f52;color:#e8e8ee;padding:8px 14px;border-radius:4px;cursor:pointer;font-family:inherit;font-size:12px;z-index:5}\n    .loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0d0f14;color:#9aa0b4;font-size:14px;letter-spacing:2px;z-index:9}\n    .loading.hide{display:none}\n    .victory{position:absolute;inset:0;display:none;align-items:center;justify-content:center;flex-direction:column;gap:16px;background:rgba(10,12,18,0.9);z-index:10}\n    .victory.show{display:flex}\n    .victory h2{font-size:32px;color:#f6e58d;letter-spacing:4px;margin:0}\n    .victory button{background:#f6e58d;color:#161822;font-weight:700;border:0;padding:10px 20px;border-radius:4px;cursor:pointer;font-family:inherit;font-size:13px}\n    .hint{position:absolute;bottom:16px;right:16px;font-size:10px;color:#666;text-align:right;pointer-events:none}\n  `,\n  render() {\n    return `<div class=\"app\">\n      <canvas class=\"scene\" data-d2-static></canvas>\n      <canvas class=\"mini\" data-d2-static></canvas>\n      <div class=\"crosshair\" data-d2-static></div>\n      <div class=\"hud\">\n        <div class=\"hudName\">Carregando…</div>\n        <div class=\"hudKills\">Abates: 0/0</div>\n      </div>\n      <div class=\"hint\">WASD/Setas move · Q/E strafe · Espaço/Click atira</div>\n      <button class=\"backBtn\">← Voltar ao editor</button>\n      <div class=\"loading\">Carregando nível…</div>\n      <div class=\"victory\">\n        <h2>NÍVEL COMPLETO</h2>\n        <button class=\"victoryBtn\">Voltar ao editor</button>\n      </div>\n    </div>`\n  },\n  mounted(d2) {\n    const keys = {}\n    let level = null\n    let player = { x: 1.5, y: 1.5, angle: 0 }\n    let things = []\n    let kills = 0\n    let totalEnemies = 0\n    let gameWon = false\n    let ready = false\n    let lastT = null\n    const depthBuffer = new Array(RENDER_W).fill(1e9)\n\n    const goEditor = () => { window.location.href = d2.param('editorUrl', '/') }\n    d2.on('.backBtn', 'click', goEditor)\n    d2.on('.victoryBtn', 'click', goEditor)\n\n    function cellAt(gx, gy) {\n      if (gx < 0 || gy < 0 || gx >= level.width || gy >= level.height) return 1\n      return level.grid[gy * level.width + gx] || 0\n    }\n    function canStand(x, y) { return !isWallCell(cellAt(Math.floor(x), Math.floor(y))) }\n\n    function castRay(px, py, angle) {\n      const dirX = Math.cos(angle), dirY = Math.sin(angle)\n      let mapX = Math.floor(px), mapY = Math.floor(py)\n      const deltaDistX = dirX === 0 ? 1e30 : Math.abs(1 / dirX)\n      const deltaDistY = dirY === 0 ? 1e30 : Math.abs(1 / dirY)\n      let stepX, stepY, sideDistX, sideDistY\n      if (dirX < 0) { stepX = -1; sideDistX = (px - mapX) * deltaDistX } else { stepX = 1; sideDistX = (mapX + 1 - px) * deltaDistX }\n      if (dirY < 0) { stepY = -1; sideDistY = (py - mapY) * deltaDistY } else { stepY = 1; sideDistY = (mapY + 1 - py) * deltaDistY }\n      let side = 0, cellVal = 0\n      for (let i = 0; i < 64; i++) {\n        if (sideDistX < sideDistY) { sideDistX += deltaDistX; mapX += stepX; side = 0 } else { sideDistY += deltaDistY; mapY += stepY; side = 1 }\n        cellVal = cellAt(mapX, mapY)\n        if (isWallCell(cellVal)) break\n      }\n      let dist\n      if (side === 0) dist = (mapX - px + (1 - stepX) / 2) / (dirX || 1e-6)\n      else dist = (mapY - py + (1 - stepY) / 2) / (dirY || 1e-6)\n      return { dist: Math.max(dist, 0.0001), side, cellVal }\n    }\n\n    function shadeRGB(rgb, mult, fogT) {\n      const r = rgb[0] * mult, g = rgb[1] * mult, b = rgb[2] * mult\n      return [\n        r + (FLOOR_COLOR[0] - r) * fogT,\n        g + (FLOOR_COLOR[1] - g) * fogT,\n        b + (FLOOR_COLOR[2] - b) * fogT,\n      ]\n    }\n\n    function shoot() {\n      if (!ready || gameWon) return\n      const wallDist = castRay(player.x, player.y, player.angle).dist\n      let best = null, bestAngle = 999\n      for (const e of things) {\n        if (e.type !== 'enemy' || !e.alive) continue\n        const ex = e.x - player.x, ey = e.y - player.y\n        const dist = Math.hypot(ex, ey)\n        let ang = Math.atan2(ey, ex) - player.angle\n        while (ang > Math.PI) ang -= 2 * Math.PI\n        while (ang < -Math.PI) ang += 2 * Math.PI\n        if (Math.abs(ang) < 0.14 && dist < wallDist + 0.6 && Math.abs(ang) < bestAngle) { bestAngle = Math.abs(ang); best = e }\n      }\n      if (best) { best.alive = false; kills += 1 }\n    }\n    d2.on('.scene', 'click', shoot)\n    d2.on(window, 'keydown', (e) => {\n      const c = e.code\n      if (c === 'KeyW' || c === 'ArrowUp') keys.forward = true\n      else if (c === 'KeyS' || c === 'ArrowDown') keys.back = true\n      else if (c === 'KeyA' || c === 'ArrowLeft') keys.rotLeft = true\n      else if (c === 'KeyD' || c === 'ArrowRight') keys.rotRight = true\n      else if (c === 'KeyQ') keys.strafeLeft = true\n      else if (c === 'KeyE') keys.strafeRight = true\n      else if (c === 'Space') { e.preventDefault(); shoot() }\n    })\n    d2.on(window, 'keyup', (e) => {\n      const c = e.code\n      if (c === 'KeyW' || c === 'ArrowUp') keys.forward = false\n      else if (c === 'KeyS' || c === 'ArrowDown') keys.back = false\n      else if (c === 'KeyA' || c === 'ArrowLeft') keys.rotLeft = false\n      else if (c === 'KeyD' || c === 'ArrowRight') keys.rotRight = false\n      else if (c === 'KeyQ') keys.strafeLeft = false\n      else if (c === 'KeyE') keys.strafeRight = false\n    })\n\n    async function loadLevel() {\n      const store = d2.store('gameStore')\n      const ds = d2.data('levels')\n      await ds.refresh()\n      const selId = store ? store.get('selectedLevelId') : null\n      const rows = ds.records() || []\n      let rec = selId ? rows.find((r) => r._id === selId) : null\n      if (!rec) rec = rows[0]\n      if (!rec) {\n        const nameEl = d2.$('.hudName'); if (nameEl) nameEl.textContent = 'Nenhum nível encontrado'\n        return\n      }\n      level = { width: rec.width, height: rec.height, grid: rec.grid || [], name: rec.name || 'Nível' }\n      things = (rec.things || []).map((t) => ({ ...t, alive: true }))\n      const ps = rec.playerStart || { x: 1.5, y: 1.5, angle: 0 }\n      player = { x: ps.x, y: ps.y, angle: ps.angle || 0 }\n      kills = 0\n      totalEnemies = things.filter((t) => t.type === 'enemy').length\n      gameWon = false\n      const loadingEl = d2.$('.loading'); if (loadingEl) loadingEl.classList.add('hide')\n      const nameEl = d2.$('.hudName'); if (nameEl) nameEl.textContent = level.name\n      const killsEl = d2.$('.hudKills'); if (killsEl) killsEl.textContent = `Abates: 0/${totalEnemies}`\n      ready = true\n    }\n\n    function render3D(ctx) {\n      const img = ctx.createImageData(RENDER_W, RENDER_H)\n      for (let col = 0; col < RENDER_W; col++) {\n        const rayAngle = player.angle - FOV / 2 + (FOV * col) / RENDER_W\n        const { dist, side, cellVal } = castRay(player.x, player.y, rayAngle)\n        const perp = dist * Math.cos(rayAngle - player.angle)\n        depthBuffer[col] = perp\n        const lineH = Math.min(RENDER_H * 3, RENDER_H / Math.max(perp, 0.0001))\n        const drawStart = Math.floor(RENDER_H / 2 - lineH / 2)\n        const drawEnd = Math.floor(RENDER_H / 2 + lineH / 2)\n        const fogT = clamp(perp / 11, 0, 1)\n        const mult = side === 1 ? 1 : 0.7\n        const wc = shadeRGB(WALL_COLORS[cellVal] || WALL_COLORS[1], mult, fogT)\n        for (let y = 0; y < RENDER_H; y++) {\n          let color\n          if (y < drawStart) color = SKY_COLOR\n          else if (y > drawEnd) color = FLOOR_COLOR\n          else color = wc\n          const idx = (y * RENDER_W + col) * 4\n          img.data[idx] = color[0] | 0\n          img.data[idx + 1] = color[1] | 0\n          img.data[idx + 2] = color[2] | 0\n          img.data[idx + 3] = 255\n        }\n      }\n      ctx.putImageData(img, 0, 0)\n      const alive = things.filter((t) => t.type === 'enemy' && t.alive)\n      alive.sort((a, b) => {\n        const da = Math.hypot(a.x - player.x, a.y - player.y)\n        const db = Math.hypot(b.x - player.x, b.y - player.y)\n        return db - da\n      })\n      ctx.textAlign = 'center'\n      ctx.textBaseline = 'middle'\n      alive.forEach((e) => {\n        const ex = e.x - player.x, ey = e.y - player.y\n        const dist = Math.hypot(ex, ey)\n        let ang = Math.atan2(ey, ex) - player.angle\n        while (ang > Math.PI) ang -= 2 * Math.PI\n        while (ang < -Math.PI) ang += 2 * Math.PI\n        if (Math.abs(ang) > FOV / 2 + 0.4 || dist < 0.15) return\n        const screenX = (0.5 + Math.tan(ang) / Math.tan(FOV / 2) / 2) * RENDER_W\n        const col = Math.floor(screenX)\n        if (col < -20 || col > RENDER_W + 20) return\n        const cCol = clamp(col, 0, RENDER_W - 1)\n        if (dist > depthBuffer[cCol] + 0.35) return\n        const size = clamp(RENDER_H / dist, 10, RENDER_H * 1.6)\n        const fogT = clamp(dist / 11, 0, 1)\n        ctx.globalAlpha = 1 - fogT * 0.7\n        ctx.font = `${size}px sans-serif`\n        ctx.fillText('👹', screenX, RENDER_H / 2 + size * 0.08)\n        ctx.globalAlpha = 1\n      })\n    }\n\n    function renderMini(ctx) {\n      ctx.clearRect(0, 0, MINI, MINI)\n      ctx.fillStyle = '#0d0f14'\n      ctx.fillRect(0, 0, MINI, MINI)\n      if (!level) return\n      const cs = Math.min(MINI / level.width, MINI / level.height)\n      for (let y = 0; y < level.height; y++) {\n        for (let x = 0; x < level.width; x++) {\n          const v = level.grid[y * level.width + x] || 0\n          if (v === 0) continue\n          ctx.fillStyle = v === 5 ? 'rgb(246,229,141)' : '#666'\n          ctx.fillRect(x * cs, y * cs, cs, cs)\n        }\n      }\n      things.filter((t) => t.type === 'enemy' && t.alive).forEach((e) => {\n        ctx.fillStyle = '#e84118'\n        ctx.beginPath(); ctx.arc(e.x * cs, e.y * cs, Math.max(2, cs * 0.3), 0, 7); ctx.fill()\n      })\n      ctx.save()\n      ctx.translate(player.x * cs, player.y * cs)\n      ctx.rotate(player.angle)\n      ctx.fillStyle = '#00e6e6'\n      ctx.beginPath(); ctx.moveTo(6, 0); ctx.lineTo(-4, 4); ctx.lineTo(-4, -4); ctx.closePath(); ctx.fill()\n      ctx.restore()\n    }\n\n    function checkWin() {\n      if (gameWon || !ready) return\n      if (kills >= totalEnemies) {\n        const onExit = cellAt(Math.floor(player.x), Math.floor(player.y)) === 5\n        if (onExit) {\n          gameWon = true\n          const v = d2.$('.victory'); if (v) v.classList.add('show')\n        }\n      }\n    }\n\n    const scene = d2.$('.scene')\n    const mini = d2.$('.mini')\n    if (!scene || !mini) return\n    scene.width = RENDER_W\n    scene.height = RENDER_H\n    const sctx = scene.getContext('2d')\n    mini.width = MINI\n    mini.height = MINI\n    const mctx = mini.getContext('2d')\n\n    loadLevel()\n\n    d2.raf((t) => {\n      if (lastT == null) lastT = t\n      const dt = Math.min((t - lastT) / 1000, 0.05)\n      lastT = t\n      if (!ready) return\n      if (!gameWon) {\n        const moveSpeed = 3, rotSpeed = 2.4, strafeSpeed = 2.6\n        let dx = 0, dy = 0\n        if (keys.forward) { dx += Math.cos(player.angle) * moveSpeed * dt; dy += Math.sin(player.angle) * moveSpeed * dt }\n        if (keys.back) { dx -= Math.cos(player.angle) * moveSpeed * dt; dy -= Math.sin(player.angle) * moveSpeed * dt }\n        if (keys.strafeLeft) { dx += Math.cos(player.angle - Math.PI / 2) * strafeSpeed * dt; dy += Math.sin(player.angle - Math.PI / 2) * strafeSpeed * dt }\n        if (keys.strafeRight) { dx += Math.cos(player.angle + Math.PI / 2) * strafeSpeed * dt; dy += Math.sin(player.angle + Math.PI / 2) * strafeSpeed * dt }\n        if (keys.rotLeft) player.angle -= rotSpeed * dt\n        if (keys.rotRight) player.angle += rotSpeed * dt\n        if (dx !== 0) { const nx = player.x + dx; if (canStand(nx + Math.sign(dx) * 0.2, player.y)) player.x = nx }\n        if (dy !== 0) { const ny = player.y + dy; if (canStand(player.x, ny + Math.sign(dy) * 0.2)) player.y = ny }\n        checkWin()\n      }\n      render3D(sctx)\n      renderMini(mctx)\n      const killsEl = d2.$('.hudKills')\n      if (killsEl) killsEl.textContent = `Abates: ${kills}/${totalEnemies}`\n    })\n  },\n}\n"}},"levels":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"levels"}}}},"gameStore":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"gameStore"}}}},"editorUrl":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"editorUrl"}}}}}}}}}},{"_id":"5ecd05ded68ce41360f74b43","component":"data2-core-types@Component","params":{"extendable":{"placeholder":"children"},"component":"Block","package":"data2-core-primitives"}},{"_id":"60e6362dda3861ca6516d9b1","component":"data2-core-types@Component","params":{"definition":{"preventEvaluation":true,"component":"data2-core-types@Definition","params":{"def":{"component":"data2-controls@JsonViewer","params":{"json":{"params":{"reference":"json"},"component":"data2-core-types@Reference"},"theme":{"params":{"reference":"theme"},"component":"data2-core-types@Reference"},"collapsed":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"collapsed"}}},"component":"data2-core-types@Reference"}}}}},"component":"JsonViewer","package":"data2-blocks","extends":"data2-core-primitives@Block"}},{"_id":"6ab09c53cf0a1bc7810109ca","component":"data2-core-types@Component","system":"6172b957976026c073ab9058","params":{"component":"wWPU0TN2xdWGHJk5BtVxi","package":"lucca-playground","definition":{"params":{"then":{"params":{"actions":[{"component":"data2-core-types@Setter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressed"}},"value":{"params":{"content":true},"component":"data2-core-primitives@Boolean"}}},{"params":{"delay":{"component":"data2-core-primitives@Number","params":{"content":10}}},"component":"data2-core-flow@Delay"},{"params":{"resultName":{"component":"data2-core-primitives@String","params":{"content":"oldX"}},"action":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.x"}}}}},"component":"data2-core-flow@Step"},{"params":{"resultName":{"component":"data2-core-primitives@String","params":{"content":"oldY"}},"action":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.y"}}}}},"component":"data2-core-flow@Step"},{"params":{"resultName":{"component":"data2-core-primitives@String","params":{"content":"x"}},"action":{"params":{"defaultCase":{"params":{"content":0},"component":"data2-core-primitives@Number"},"expression":{"params":{"content":true},"component":"data2-core-primitives@Boolean"},"cases":[{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"right"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"content":0.5},"component":"data2-core-primitives@Number"}}},{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"left"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"content":-0.5},"component":"data2-core-primitives@Number"}}}]},"component":"data2-core-flow@Switch"}},"component":"data2-core-flow@Step"},{"params":{"resultName":{"component":"data2-core-primitives@String","params":{"content":"y"}},"action":{"params":{"defaultCase":{"params":{"content":0},"component":"data2-core-primitives@Number"},"expression":{"params":{"content":true},"component":"data2-core-primitives@Boolean"},"cases":[{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"up"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"content":-0.5},"component":"data2-core-primitives@Number"}}},{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"down"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"content":0.5},"component":"data2-core-primitives@Number"}}}]},"component":"data2-core-flow@Switch"}},"component":"data2-core-flow@Step"},{"params":{"x":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"x"}}},"component":"data2-core-types@Reference"},"y":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"y"}}},"component":"data2-core-types@Reference"}},"component":"mignom-playground@I8re7mu73UBtBkPmUezfK"},{"params":{"then":{"params":{"actions":[{"params":{"delay":{"component":"data2-core-primitives@Number","params":{"content":1660}}},"component":"data2-core-flow@Delay"},{"params":{"actions":[{"params":{"actions":[{"component":"data2-core-types@Setter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.stage"}},"value":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"9T-1InKfvPKhZtDTNsCOx"}},"prop":{"params":{"portions":[{"component":"data2-core-primitives@String","params":{"content":"data."}},{"params":{"value":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.x"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Divide"}},"component":"data2-core-functions@Floor"},{"component":"data2-core-primitives@String","params":{"content":"-"}},{"params":{"value":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.y"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Divide"}},"component":"data2-core-functions@Floor"}]},"component":"data2-core-functions@StringConcat"}}}}},{"params":{"actions":{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.stage"}}},"component":"data2-core-types@Getter"},"mapper":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"m"}},{"component":"data2-core-primitives@String","params":{"content":"i"}}],"body":{"params":{"compare":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"m"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"enemy"}}},"component":"data2-core-comparison-operators@Equal"},"then":{"component":"data2-core-types@Setter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.enemy"}},"value":{"live":{"params":{"content":true},"component":"data2-core-primitives@Boolean"},"x":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"prop":{"component":"data2-core-primitives@String","params":{"content":"0"}},"module":{"params":{"needle":{"component":"data2-core-primitives@String","params":{"content":"-"}},"haystack":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"i"}}},"component":"data2-core-types@Reference"}},"component":"data2-core-functions@Split"}}},{"params":{"components":[{"component":"data2-core-primitives@Number","params":{"content":16}},{"params":{"value":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.x"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Divide"}},"component":"data2-core-functions@Floor"}]},"component":"data2-core-numerical-operators@Multiply"}]},"component":"data2-core-numerical-operators@Add"},"y":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"prop":{"component":"data2-core-primitives@String","params":{"content":"1"}},"module":{"params":{"needle":{"component":"data2-core-primitives@String","params":{"content":"-"}},"haystack":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"i"}}},"component":"data2-core-types@Reference"}},"component":"data2-core-functions@Split"}}},{"params":{"components":[{"component":"data2-core-primitives@Number","params":{"content":16}},{"params":{"value":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.y"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Divide"}},"component":"data2-core-functions@Floor"}]},"component":"data2-core-numerical-operators@Multiply"}]},"component":"data2-core-numerical-operators@Add"}}}}},"component":"data2-core-flow@If"}}}},"component":"data2-core-functions@ArrayMap"}},"component":"data2-core-flow@Parallel"}]},"component":"data2-core-flow@Series"}]},"component":"data2-core-flow@Parallel"}]},"component":"data2-core-flow@Series"},"compare":{"params":{"components":[{"params":{"components":[{"params":{"then":{"params":{"subject":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.x"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Modulo"},"comparisonSubject":{"params":{"content":0},"component":"data2-core-primitives@Number"}},"component":"data2-core-comparison-operators@Equal"},"compare":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"x"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@Number","params":{"content":0}}},"component":"data2-core-comparison-operators@GreaterThan"},"else":{"params":{"subject":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.x"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Modulo"},"comparisonSubject":{"params":{"content":15.5},"component":"data2-core-primitives@Number"}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-flow@If"},{"params":{"comparisonSubject":{"params":{"content":0},"component":"data2-core-primitives@Number"},"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"x"}}},"component":"data2-core-types@Reference"}},"component":"data2-core-comparison-operators@Different"}]},"component":"data2-core-logical-operators@And"},{"params":{"components":[{"params":{"then":{"params":{"subject":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.y"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Modulo"},"comparisonSubject":{"params":{"content":0},"component":"data2-core-primitives@Number"}},"component":"data2-core-comparison-operators@Equal"},"compare":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"y"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@Number","params":{"content":0}}},"component":"data2-core-comparison-operators@GreaterThan"},"else":{"params":{"subject":{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.y"}}}},{"component":"data2-core-primitives@Number","params":{"content":16}}]},"component":"data2-core-numerical-operators@Modulo"},"comparisonSubject":{"params":{"content":15.5},"component":"data2-core-primitives@Number"}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-flow@If"},{"params":{"comparisonSubject":{"params":{"content":0},"component":"data2-core-primitives@Number"},"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"y"}}},"component":"data2-core-types@Reference"}},"component":"data2-core-comparison-operators@Different"}]},"component":"data2-core-logical-operators@And"}]},"component":"data2-core-logical-operators@Or"},"else":{"params":{"delay":{"component":"data2-core-primitives@Number","params":{"content":80}}},"component":"data2-core-flow@Delay"}},"component":"data2-core-flow@If"},{"component":"data2-core-types@Setter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressed"}},"value":{"params":{"content":false},"component":"data2-core-primitives@Boolean"}}},{"params":{"expression":{"params":{"content":true},"component":"data2-core-primitives@Boolean"},"defaultCase":{"params":{},"component":"data2-core-types@Interaction","disabled":true},"cases":[{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"up"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"axis":"y","value":{"component":"data2-core-primitives@Number","params":{"content":"-1"}}},"component":"mignom-playground@UAbv4TX9HBhygIDqq46da"}},"displayName":"up"},{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"down"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"axis":"y","value":{"component":"data2-core-primitives@Number","params":{"content":"1"}}},"component":"mignom-playground@UAbv4TX9HBhygIDqq46da"}},"displayName":"down"},{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"left"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"axis":"x","value":{"component":"data2-core-primitives@Number","params":{"content":"-1"}}},"component":"mignom-playground@UAbv4TX9HBhygIDqq46da"}},"displayName":"left"},{"component":"data2-core-flow@Case","params":{"expression":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}}},"pattern":{"component":"data2-core-primitives@String","params":{"content":"right"}}},"component":"data2-core-functions@Includes"},"value":{"params":{"axis":"x","value":{"component":"data2-core-primitives@Number","params":{"content":"1"}}},"component":"mignom-playground@UAbv4TX9HBhygIDqq46da"}},"displayName":"right"}]},"component":"data2-core-flow@Switch"}]},"component":"data2-core-flow@Series"},"compare":[{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys.length"}}}},"comparisonSubject":{"params":{"content":0},"component":"data2-core-primitives@Number"}},"component":"data2-core-comparison-operators@GreaterThan"},{"params":{"subject":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressed"}}}},"comparisonSubject":{"params":{"content":true},"component":"data2-core-primitives@Boolean"}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}]},"component":"data2-core-flow@If"}}}]}},{"reference":"ExternalComponentInstancesTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"_id":"5f060d9b1ca96def42f3c40a","displayName":"Builder AuthStrategy","component":"data2-core@AuthenticationStrategy","system":"5e3b796d6228227ca637d0f4","params":{"credentials":[{"component":"data2-core-types@DataSetColumnReference","params":{"column":"email"}},{"component":"data2-core-types@DataSetColumnReference","params":{"column":"password"}},{"component":"data2-core-types@DataSetColumnReference","params":{"column":"status"}}],"verifier":{"component":"data2-core-types@DataSetReference","params":{"reference":"UsersDataSet"}},"sessionShared":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"password":{"disabled":false,"component":"data2-core-types@DataSetColumnReference","params":{"column":"password"}},"email":{"disabled":false,"component":"data2-core-types@DataSetColumnReference","params":{"column":"email"}},"resetPassword":{"resetEmail":{"artboard":{"params":{"preventEvaluation":true,"reference":"nR6Q9d7qdaPtZhJ28Q8Dy"},"component":"data2-core-types@ArtboardReference"}},"resetSuccessEmail":{"artboard":{"params":{"preventEvaluation":true,"reference":"yPCJBTKo8q1Mw0B_3Kpwl"},"component":"data2-core-types@ArtboardReference"}}},"session":[{"component":"data2-core-types@DataSetColumnReference","params":{"column":"name"}},{"component":"data2-core-types@DataSetColumnReference","params":{"column":"email"}},{"component":"data2-core-types@DataSetColumnReference","params":{"column":"password"}},{"component":"data2-core-types@DataSetColumnReference","params":{"column":"status"}}],"sessionMetadata":{"params":{"actions":[{"params":{"compare":{"params":{"subject":{"params":{"components":[{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$user._id"}}}},{"params":{"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"active"}},"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$user.status"}}}}},"component":"data2-core-comparison-operators@Equal","displayName":"is active user"}]},"component":"data2-core-logical-operators@And","displayName":"is active and has _id"}},"component":"data2-core-logical-operators@Not"},"then":{"params":{"message":{"component":"data2-core-primitives@String","params":{"content":"Invalid Credentials"}},"code":{"component":"data2-core-primitives@String","params":{"content":"401"}}},"component":"data2-core-types@Error"}},"component":"data2-core-flow@If","displayName":"check $user"},{"params":{"action":{"params":{"pattern":{"component":"data2-core-primitives@String","params":{"content":"@data2.app"}},"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$user.email"}}}}},"component":"data2-core-functions@Includes","displayName":"isData2User"},"resultName":{"component":"data2-core-primitives@String","params":{"content":"is_data2_user"}}},"component":"data2-core-flow@Step"},{"params":{"action":{"params":{"pattern":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$metadata.d2_app"}}}},"subject":[{"component":"data2-core-primitives@String","params":{"content":"management"}}]},"component":"data2-core-functions@Includes","displayName":"isData2App Exception"},"resultName":{"component":"data2-core-primitives@String","params":{"content":"is_data2_app_exception"}}},"component":"data2-core-flow@Step"},{"params":{"resultName":{"component":"data2-core-primitives@String","params":{"content":"has_access"}},"action":{"params":{"compare":{"params":{"components":[{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"is_data2_user"}}}},{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"is_data2_app_exception"}}}}]},"component":"data2-core-logical-operators@Or"},"else":{"params":{"actions":[{"params":{"actions":[{"params":{"compare":{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$metadata.system"}}}}},"component":"data2-core-logical-operators@Not"},"then":{"params":{"message":{"component":"data2-core-primitives@String","params":{"content":"Invalid Credentials"}},"code":{"component":"data2-core-primitives@String","params":{"content":"401"}}},"component":"data2-core-types@Error"}},"component":"data2-core-flow@If","displayName":"check $metadata.system"},{"params":{"module":{"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"WuUa-VKHhW9uYU0E3-mJ8"}},"prop":"filter","args":[{"_id":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$metadata.system"}}}}}]},"component":"data2-core-types@Interaction"},{"params":{"compare":{"params":{"subject":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"WuUa-VKHhW9uYU0E3-mJ8"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records.length"}}}}},"component":"data2-core-logical-operators@Not","displayName":"systems not found"},"then":{"params":{"message":{"component":"data2-core-primitives@String","params":{"content":"Invalid Credentials"}},"code":{"component":"data2-core-primitives@String","params":{"content":"401"}}},"component":"data2-core-types@Error"}},"component":"data2-core-flow@If","displayName":"check system found"},{"params":{"actions":[{"params":{"module":{"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"Ok6Tsu5XkS7r8PyW_7TyW"}},"prop":"filter","args":[{"user":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$user._id"}}}},"organization":{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"WuUa-VKHhW9uYU0E3-mJ8"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"cursor.current.organization._id"}}}}}]},"component":"data2-core-types@Interaction"},{"params":{"module":{"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"NqKAY34n2ffFL64zamp7t"}},"prop":"filter","args":[{"user":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$user._id"}}}},"system":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$metadata.system"}}}}}]},"component":"data2-core-types@Interaction"}]},"component":"data2-core-flow@Parallel"}]},"component":"data2-core-flow@Series","displayName":"common setup"},{"params":{"then":{"params":{"content":true},"component":"data2-core-primitives@Boolean"},"else":{"params":{"content":false},"component":"data2-core-primitives@Boolean"},"compare":{"params":{"components":{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"WuUa-VKHhW9uYU0E3-mJ8"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records"}}},"component":"data2-core-types@Getter"},"mapper":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"system"}}],"body":{"params":{"expression":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"system.visibility"}}}},"defaultCase":{"params":{"content":false},"component":"data2-core-primitives@Boolean"},"cases":[{"component":"data2-core-flow@Case","params":{"expression":{"component":"data2-core-primitives@String","params":{"content":"public"}},"value":{"params":{"components":[{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"Ok6Tsu5XkS7r8PyW_7TyW"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records"}}},"component":"data2-core-types@Getter"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"member"}}],"body":{"params":{"components":[{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"member.organization._id"}}}},"comparisonSubject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"system.organization._id"}}}}},"component":"data2-core-comparison-operators@Equal","displayName":"is org member"},{"params":{"pattern":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"member.role"}}}},"subject":[{"component":"data2-core-primitives@String","params":{"content":"owner"}},{"component":"data2-core-primitives@String","params":{"content":"billing-owner"}},{"component":"data2-core-primitives@String","params":{"content":"admin"}},{"component":"data2-core-primitives@String","params":{"content":"member"}}]},"component":"data2-core-functions@Includes","displayName":"has role with access"}]},"component":"data2-core-logical-operators@And","displayName":"has org member role with access"}}}},"component":"data2-core-functions@ArrayFind","displayName":"is org member"},{"params":{"components":[{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"Ok6Tsu5XkS7r8PyW_7TyW"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records"}}},"component":"data2-core-types@Getter"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"member"}}],"body":{"params":{"components":[{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"member.organization._id"}}}},"comparisonSubject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"system.organization._id"}}}}},"component":"data2-core-comparison-operators@Equal","displayName":"is org member"},{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"member.role"}}}},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"collaborator"}}},"component":"data2-core-comparison-operators@Equal","displayName":"is collaborator"}]},"component":"data2-core-logical-operators@And","displayName":"is org member and collaborator"}}}},"component":"data2-core-functions@ArrayFind","displayName":"is collaborator"},{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"NqKAY34n2ffFL64zamp7t"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records"}}},"component":"data2-core-types@Getter"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"access"}}],"body":{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"access.system._id"}}}},"comparisonSubject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"system._id"}}}}},"component":"data2-core-comparison-operators@Equal"}}}},"component":"data2-core-functions@ArrayFind","displayName":"has system access"}]},"component":"data2-core-logical-operators@And","displayName":"is collaborator and has system access"}]},"component":"data2-core-logical-operators@Or"}}},{"component":"data2-core-flow@Case","params":{"expression":{"component":"data2-core-primitives@String","params":{"content":"private"}},"value":{"params":{"components":[{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"Ok6Tsu5XkS7r8PyW_7TyW"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records"}}},"component":"data2-core-types@Getter"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"member"}}],"body":{"params":{"components":[{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"member.organization._id"}}}},"comparisonSubject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"system.organization._id"}}}}},"component":"data2-core-comparison-operators@Equal","displayName":"is org member"},{"params":{"pattern":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"member.role"}}}},"subject":[{"component":"data2-core-primitives@String","params":{"content":"owner"}},{"component":"data2-core-primitives@String","params":{"content":"admin"}}]},"component":"data2-core-functions@Includes","displayName":"is owner/admin"}]},"component":"data2-core-logical-operators@And","displayName":"has org member role with access"}}}},"component":"data2-core-functions@ArrayFind","displayName":"is owner/admin"},{"params":{"components":[{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"Ok6Tsu5XkS7r8PyW_7TyW"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records"}}},"component":"data2-core-types@Getter"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"member"}}],"body":{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"member.organization._id"}}}},"comparisonSubject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"system.organization._id"}}}}},"component":"data2-core-comparison-operators@Equal"}}}},"component":"data2-core-functions@ArrayFind","displayName":"is org member"},{"params":{"array":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"NqKAY34n2ffFL64zamp7t"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.records"}}},"component":"data2-core-types@Getter"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"access"}}],"body":{"params":{"subject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"access.system._id"}}}},"comparisonSubject":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"system._id"}}}}},"component":"data2-core-comparison-operators@Equal"}}}},"component":"data2-core-functions@ArrayFind","displayName":"has system access"}]},"component":"data2-core-logical-operators@And","displayName":"is member and has system access"}]},"component":"data2-core-logical-operators@Or","displayName":"is owner/admin or has system access"}}}]},"component":"data2-core-flow@Switch"}}}},"component":"data2-core-functions@ArrayMap"}},"component":"data2-core-logical-operators@And","displayName":"has org member for all systems in request"}},"component":"data2-core-flow@If"}]},"component":"data2-core-flow@Series"},"then":{"params":{"content":true},"component":"data2-core-primitives@Boolean"}},"component":"data2-core-flow@If"}},"component":"data2-core-flow@Step"},{"params":{"then":{"system":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"$metadata.system"}}}}},"else":{"params":{"message":{"component":"data2-core-primitives@String","params":{"content":"Invalid Credentials"}},"code":{"component":"data2-core-primitives@String","params":{"content":"401"}}},"component":"data2-core-types@Error"},"compare":{"component":"data2-core-types@Reference","params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"has_access"}}}}},"component":"data2-core-flow@If"}]},"component":"data2-core-flow@Series"},"sessionExpiresIn":{"component":"data2-core-primitives@Number","params":{"content":604800}},"sessionRenewal":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"identityProviders":[{"provider":{"component":"data2-core-primitives@String","params":{"content":"GOOGLE"}},"clientId":{"component":"data2-core-primitives@String","params":{"content":"55470861603-22pvfc1t49lp8cjnbfk71s5ct9hp1q1v.apps.googleusercontent.com"}}}]},"reference":"Data2BuilderAuthentication","updatedAt":"2026-08-06T19:31:23.557Z"},{"_id":"5f060ee51ca96def42f3fbd1","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"UsersTableDataSource"}},"pagination":{"size":{"component":"data2-core-primitives@Number","params":{"content":1}}}},"reference":"UsersDataSet","updatedAt":"2026-03-04T21:16:40.291Z"},{"_id":"68f938cf5fb002e33752a43d","displayName":"InternalApplicationsAuthenticationStrategy","component":"data2-core@AuthenticationStrategy","system":"5e3b796d6228227ca637d0f4","params":{"resetPassword":{"resetEmail":{"artboard":{"params":{"preventEvaluation":true},"component":"data2-core-types@ArtboardReference"}},"resetSuccessEmail":{"artboard":{"params":{"preventEvaluation":true},"component":"data2-core-types@ArtboardReference"}}},"verifier":{"disabled":false,"component":"data2-core-types@DataSetReference","params":{"reference":"InternalApplicationsVerifierDataSet"}},"password":{"disabled":false,"component":"data2-core-types@DataSetColumnReference","params":{"column":"secret"}},"credentials":[{"component":"data2-core-types@FieldReference","params":{"key":"application"}},{"component":"data2-core-types@FieldReference","params":{"key":"secret"}},{"component":"data2-core-types@FieldReference","params":{"key":"status"}}],"session":[{"component":"data2-core-types@FieldReference","params":{"key":"application"}},{"component":"data2-core-types@FieldReference","params":{"key":"secret"}},{"component":"data2-core-types@FieldReference","params":{"key":"status"}}]},"reference":"InternalApplicationsAuthenticationStrategy","updatedAt":"2025-10-22T20:08:54.442Z","createdAt":"2025-10-22T20:04:31.198Z"},{"component":"data2-core@DataSet","reference":"SessionsDataSet","params":{"requiresConfirmation":false,"pk":"key","datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"data2sessionsdatasource"}}}},{"reference":"UsersTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}},{"component":"data2-core@ServerSessionsDataSource","reference":"data2sessionsdatasource","params":{}},{"_id":"5f1600b70528b92601890f75","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"ServiceComponentInstancesTableDataSource"}},"pk":"_id","autoEdit":true,"master":{"params":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"component":"data2-core-types@DataSetMaster"},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"policies":{"params":{"allowGet":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2@hkXy-UhMjhyfptdE6_fpW"}},"reference":"ServiceComponentInstancesDataSet","updatedAt":"2025-11-06T21:07:20.208Z","createdAt":"2020-07-20T20:38:15.436Z"},{"_id":"5f1602190528b92601890f7d","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"pagination":{"size":40000},"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"ComponentInstancesTableDataSource"}},"sort":{"_id":1},"pk":"_id","autoEdit":true,"master":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"policies":{"params":{"allowGet":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2@hkXy-UhMjhyfptdE6_fpW"}},"reference":"ComponentInstancesDataSet","updatedAt":"2025-11-06T21:07:07.089Z","createdAt":"2020-07-20T20:44:09.350Z"},{"_id":"5f16017f0528b92601890f7a","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"FileComponentInstancesTableDataSource"}},"pk":"_id","autoEdit":true,"filter":{"domain":{"component":"data2-core-types@Reference","params":{"reference":"clientApplicationDomain"}}},"master":{"params":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"component":"data2-core-types@DataSetMaster"},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}}},"reference":"FileComponentInstancesDataSet","updatedAt":"2023-08-03T16:08:18.193Z","createdAt":"2020-07-20T20:41:35.797Z"},{"_id":"5f1601990528b92601890f7b","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"ApplicationsTableDataSource"}},"pk":"_id","autoEdit":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"master":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"params":{"column":"_id"},"component":"data2-core-types@DataSetColumnReference"}},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}}},"reference":"ApplicationsDataSet","updatedAt":"2022-12-13T21:51:13.995Z","createdAt":"2020-07-20T20:42:01.657Z"},{"_id":"5f16172a0528b92601890f85","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"pagination":{"size":{"component":"data2-core-primitives@Number","params":{"content":10000}}},"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"DataComponentInstancesTableDataSource"}},"pk":"_id","autoEdit":true,"master":{"params":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"component":"data2-core-types@DataSetMaster"},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}},"policies":{"params":{"allowGet":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"component":"data2@hkXy-UhMjhyfptdE6_fpW"}},"reference":"DataComponentInstancesDataSet","updatedAt":"2025-11-06T21:07:12.831Z","createdAt":"2020-07-20T22:14:02.097Z"},{"_id":"60ddc1bbda3861ca65407c5a","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"FileComponentInstancesTableDataSource"}},"pk":"_id","autoEdit":true,"filter":{"domain":{"component":"data2-core-types@Reference","params":{"reference":"clientApplicationDomain"}}},"pagination":{"size":1},"master":{"params":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"component":"data2-core-types@DataSetMaster"}},"reference":"OneFileComponentInstancesDataSet","updatedAt":"2022-02-09T19:44:38.036Z","createdAt":"2020-07-20T20:41:35.797Z"},{"_id":"63ee3d38b8c9838c62fb05fb","displayName":"DriveFileComponentInstancesDataSet","component":"data2-core@DataSet","system":"5e3b796d6228227ca637d0f4","params":{"datasource":{"component":"data2-core-types@DataSourceReference","params":{"reference":"FileComponentInstancesTableDataSource"}},"pk":"_id","autoEdit":true,"filter":{"component":{"component":"data2-core-primitives@String","params":{"content":"data2-core@Drive"}}},"master":{"params":{"dataset":{"component":"data2-core-types@DataSetReference","params":{"reference":"SystemsDataSet"}},"localField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"system"}},"masterField":{"component":"data2-core-types@DataSetColumnReference","params":{"column":"_id"}}},"component":"data2-core-types@DataSetMaster"},"autoSelect":{"component":"data2-core-primitives@Boolean","params":{"content":false}}},"reference":"DriveFileComponentInstancesDataSet","updatedAt":"2025-12-04T21:58:32.367Z","createdAt":"2023-02-16T14:27:07.797Z"},{"reference":"ServiceComponentInstancesTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[{"_id":"6ab09bc51bc2d2e4fb32cf09","component":"data2-interface-services@HotkeysService","reference":"UNnONsWc0m3NRhq9W8pBu","system":"6172b957976026c073ab9058","params":{"initialEnabled":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"initialShortcuts":[{"event":"keydown","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowUp"}}],"handler":{"params":{"actions":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"up"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"},"item":{"component":"data2-core-primitives@String","params":{"content":"up"}}},"component":"data2-core-functions@ArrayPush"}},"component":"data2-core-types@Setter"},{"params":{"axis":"y","value":{"component":"data2-core-primitives@Number","params":{"content":"-1"}}},"component":"lucca-playground@wWPU0TN2xdWGHJk5BtVxi"}]},"component":"data2-core-flow@Series"}},{"event":"keydown","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowDown"}}],"handler":{"params":{"actions":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"down"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"},"item":{"component":"data2-core-primitives@String","params":{"content":"down"}}},"component":"data2-core-functions@ArrayPush"}},"component":"data2-core-types@Setter"},{"params":{"axis":"y","value":{"component":"data2-core-primitives@Number","params":{"content":"1"}}},"component":"lucca-playground@wWPU0TN2xdWGHJk5BtVxi"}]},"component":"data2-core-flow@Series"}},{"event":"keydown","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowLeft"}}],"handler":{"params":{"actions":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"left"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"},"item":{"component":"data2-core-primitives@String","params":{"content":"left"}}},"component":"data2-core-functions@ArrayPush"}},"component":"data2-core-types@Setter"},{"params":{"axis":"x","value":{"component":"data2-core-primitives@Number","params":{"content":"-1"}}},"component":"lucca-playground@wWPU0TN2xdWGHJk5BtVxi"}]},"component":"data2-core-flow@Series"}},{"event":"keydown","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowRight"}}],"handler":{"params":{"actions":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"right"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"},"item":{"component":"data2-core-primitives@String","params":{"content":"right"}}},"component":"data2-core-functions@ArrayPush"}},"component":"data2-core-types@Setter"},{"params":{"axis":"x","value":{"component":"data2-core-primitives@Number","params":{"content":"1"}}},"component":"lucca-playground@wWPU0TN2xdWGHJk5BtVxi"}]},"component":"data2-core-flow@Series"}},{"event":"keyup","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowUp"}}],"handler":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"up"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"}},"component":"data2-core-types@Setter"}},{"event":"keyup","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowDown"}}],"handler":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"down"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"}},"component":"data2-core-types@Setter"}},{"event":"keyup","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowLeft"}}],"handler":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"left"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"}},"component":"data2-core-types@Setter"}},{"event":"keyup","keys":[{"component":"data2-core-primitives@String","params":{"content":"ArrowRight"}}],"handler":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}},"value":{"params":{"array":{"params":{"components":[{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.pressedKeys"}}},"component":"data2-core-types@Getter"},[]]},"component":"data2-core-logical-operators@Or"},"filter":{"disabled":false,"component":"data2-core-functions@Function","params":{"parameters":[{"component":"data2-core-primitives@String","params":{"content":"f"}}],"body":{"params":{"subject":{"params":{"subject":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"f"}}},"component":"data2-core-types@Reference"},"comparisonSubject":{"component":"data2-core-primitives@String","params":{"content":"right"}}},"component":"data2-core-comparison-operators@Equal"}},"component":"data2-core-logical-operators@Not"}}}},"component":"data2-core-functions@ArrayFilter"}},"component":"data2-core-types@Setter"}}]},"deleteMetadata":{}}]}},{"reference":"ComponentInstancesTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[{"_id":"69483e4605714c8c39688670","parent":"69483e4605714c8c3968866c","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","displayName":"1","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(103,83,209,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"height":90,"exactHeight":90,"exactWidth":90,"width":90}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"exactX":false,"exactY":false,"x":96,"y":2}},"opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":100}},"transitions":[{"component":"data2-core-types@Transition","params":{"scope":"ALL","duration":"100","delay":"0","easing":"cubic-bezier(0.7368421052631579,0.21437499999999998,0.7828947368421053,0.262375)"}}]},"index":0,"reference":"1"},{"_id":"69483e4605714c8c3968866d","parent":"69483e4605714c8c3968866c","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","displayName":"2","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(103,83,209,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"height":90,"exactHeight":90,"exactWidth":90,"width":90}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"exactX":1.8199999999999998,"exactY":1.63,"x":2,"y":2}},"opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":100}},"transitions":[{"component":"data2-core-types@Transition","params":{"scope":"ALL","duration":"100","delay":"0","easing":"cubic-bezier(0.7368421052631579,0.21437499999999998,0.7828947368421053,0.262375)"}}]},"index":1,"reference":"2"},{"_id":"69483e4605714c8c3968866e","parent":"69483e4605714c8c3968866c","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","displayName":"3","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(103,83,209,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"height":90,"exactHeight":90,"exactWidth":90,"width":90}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"exactX":1.96,"exactY":96.42,"x":2,"y":96}},"opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":100}},"transitions":[{"component":"data2-core-types@Transition","params":{"scope":"ALL","duration":"100","delay":"0","easing":"cubic-bezier(0.7368421052631579,0.21437499999999998,0.7828947368421053,0.262375)"}}]},"index":2,"reference":"3"},{"_id":"69483e4605714c8c3968866f","parent":"69483e4605714c8c3968866c","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","displayName":"4","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(103,83,209,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"height":90,"exactHeight":90,"exactWidth":90,"width":90}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"exactX":1.75,"exactY":189.75,"x":2,"y":190}},"text":"","opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":100}},"transitions":[{"component":"data2-core-types@Transition","params":{"scope":"ALL","duration":"100","delay":"0","easing":"cubic-bezier(0.7368421052631579,0.21437499999999998,0.7828947368421053,0.262375)"}}]},"index":3,"reference":"4"},{"_id":"69483e4605714c8c3968865f","parent":"69483e4605714c8c3968865c","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","displayName":"5","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(103,83,209,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"height":90,"exactHeight":90,"exactWidth":90,"width":90}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"exactX":1.75,"exactY":189.75,"x":2,"y":190}},"text":"","opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":100}},"transitions":[{"component":"data2-core-types@Transition","params":{"scope":"ALL","duration":"100","delay":"0","easing":"cubic-bezier(0.7368421052631579,0.21437499999999998,0.7828947368421053,0.262375)"}}]},"index":0,"reference":"5"},{"_id":"6ab061fb78b9f9c6f6c11ef3","component":"data2-core-primitives@Artboard","system":"6172b957976026c073ab9058","displayName":"New Artboard (1340)","params":{"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":768}},"overflow":{"component":"data2-core-primitives@String","params":{"content":"hidden"}}},"reference":"qRsMTxiRUfo2gSgiOGRM9","deleteMetadata":{}},{"_id":"6ab0819d136d4356dafc7bd5","parent":"6ab061fb78b9f9c6f6c11ef3","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":768,"exactWidth":false,"exactHeight":false}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":0,"y":0,"exactX":false,"exactY":false,"bottom":true,"left":true,"top":true,"growV":false,"right":true,"growH":false}},"childrenMode":"reference","childrenReference":{"disabled":false,"component":"data2-core-types@ComponentInstanceReference","params":{"component":"data2-core-primitives@Artboard","reference":"3S2Pxv7eM7QJXIsxJ6-vr"}}},"deleteMetadata":{}},{"_id":"6ab08415136d4356dafc7bf6","parent":"6ab061fb78b9f9c6f6c11ef3","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":768,"exactWidth":false,"exactHeight":false}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":0,"y":0,"exactX":false,"exactY":false,"bottom":true,"left":true,"top":true,"growV":false,"right":true,"growH":false}},"childrenMode":"reference","childrenReference":{"disabled":false,"component":"data2-core-types@ComponentInstanceReference","params":{"component":"data2-core-primitives@Artboard","reference":"7zmWQPd25FlfK2MnSUtgw"}}},"deleteMetadata":{}},{"_id":"6ab02efe78b9f9c6f6c11ed8","component":"data2-core-primitives@Artboard","system":"6172b957976026c073ab9058","displayName":"New Artboard (1339)","params":{"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":768}},"childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"style":{"overflow":{"component":"data2-core-primitives@String","params":{"content":"hidden"}}}},"reference":"3S2Pxv7eM7QJXIsxJ6-vr","deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bd6","component":"data2-core-primitives@Artboard","system":"6172b957976026c073ab9058","displayName":"Copy of Copy of Copy of New Artboard (1330)","params":{"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":768}},"style":{"overflow":{"component":"data2-core-primitives@String","params":{"content":"hidden"}}},"text":"","border":{"component":"data2-core-types@Border","params":{"width":{"top":0,"right":0,"bottom":0,"left":0},"radius":{"leftTop":500,"rightTop":500,"leftBottom":500,"rightBottom":500},"color":"#808080","type":"solid"}}},"reference":"7zmWQPd25FlfK2MnSUtgw","deleteMetadata":{}},{"_id":"6ab07f81136d4356dafc7bd1","parent":"6ab02efe78b9f9c6f6c11ed8","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(0,120,220,0.3)"},"disabled":true},"gradient":{"disabled":true,"component":"data2-core-types@ColorGradient","params":{}},"image":{"component":"data2-core-types@FileComponentUrlReference","params":{"reference":"xVYJEXu9u6v2vLzJjMULm"}},"size":"contain","positionY":"center"},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":768,"exactWidth":false,"exactHeight":false}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":0,"y":0,"exactX":false,"exactY":false,"bottom":true,"left":true,"top":true,"growV":false,"right":true,"growH":false}}},"index":0,"deleteMetadata":{}},{"_id":"6ab0327578b9f9c6f6c11edc","parent":"6ab02efe78b9f9c6f6c11ed8","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":768,"exactWidth":false,"exactHeight":false}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":0,"y":0,"exactX":false,"exactY":false,"top":false,"left":true,"right":true,"growH":false,"bottom":true,"growV":false}},"style":{"image-rendering":{"component":"data2-core-primitives@String","params":{"content":"pixelated"}},"transform-style":{"component":"data2-core-primitives@String","params":{"content":"preserve-3d"}},"transform":{"params":{"portions":[{"component":"data2-core-primitives@String","params":{"content":"perspective(300px) scale("}},{"params":{"compare":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"builder"}}},"component":"data2-core-types@Reference"},"else":{"params":{"components":[{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__DeviceController"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"width"}}}},{"component":"data2-core-primitives@Number","params":{"content":1366}}]},"component":"data2-core-numerical-operators@Divide"},{"component":"data2-core-primitives@Number","params":{"content":1}}]},"component":"data2-core-numerical-operators@Add"},"then":{"component":"data2-core-primitives@String","params":{"content":"1"}}},"component":"data2-core-flow@If"},{"component":"data2-core-primitives@String","params":{"content":")"}}]},"component":"data2-core-functions@StringConcat"}},"childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}}},"index":1,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bd7","parent":"6ab0840e136d4356dafc7bd6","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(13,13,59,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1456,"height":139,"exactWidth":1455.73,"exactHeight":139}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":-30,"y":646,"exactY":false,"exactX":false,"bottom":true,"left":true,"right":true,"growH":false,"growV":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":-6}}],"childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"childrenMode":"reversed-cols"},"index":0,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7be4","parent":"6ab0840e136d4356dafc7bd6","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{"leftTop":7,"rightTop":7,"leftBottom":7,"rightBottom":7},"width":{"left":0,"top":0,"right":0,"bottom":0},"type":"solid"}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(13,13,59,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":305,"height":63,"exactWidth":305.47,"exactHeight":63.04}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":369,"y":553,"exactX":369.44,"exactY":553.23,"bottom":true,"left":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":-6}},{"component":"data2-core-types@Transform","params":{"kind":"skew","x":-15,"y":0}}],"textFormat":{"component":"data2-core-types@TextFormat","params":{"fontStyle":"normal"}}},"index":1,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7be6","parent":"6ab0840e136d4356dafc7bd6","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{"leftTop":7,"rightTop":7,"leftBottom":7,"rightBottom":7},"width":{"left":0,"top":0,"right":0,"bottom":0},"type":"solid"}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(13,13,59,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":357,"height":63,"exactWidth":356.52000000000004,"exactHeight":63.04}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":682,"y":517,"exactX":681.58,"exactY":517.37,"bottom":true,"left":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":-6}},{"component":"data2-core-types@Transform","params":{"kind":"skew","x":-15,"y":0}}],"textFormat":{"component":"data2-core-types@TextFormat","params":{"fontStyle":"normal"}}},"index":2,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7be1","parent":"6ab0840e136d4356dafc7bd6","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"rgba(18,130,255,1)","radius":{"leftTop":500,"rightTop":500,"leftBottom":500,"rightBottom":500},"width":{"left":5,"top":5,"right":5,"bottom":5},"type":"solid"}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":325,"height":325,"exactWidth":325,"exactHeight":325}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":95,"y":505,"exactY":505.02,"exactX":94.53999999999999,"bottom":true,"left":true}},"shadow":[{"component":"data2-core-types@Shadow","params":{"type":"inset","color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,1)"}},"spread":4}},{"component":"data2-core-types@Shadow","params":{"type":"inset","spread":8,"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,126,9,1)"}}}},{"component":"data2-core-types@Shadow","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(13,13,59,1)"}},"spread":8}}]},"index":4,"deleteMetadata":{}},{"_id":"6ab09408accbdf69dde4862e","parent":"6ab0840e136d4356dafc7bd6","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":393,"height":86,"exactWidth":392.88,"exactHeight":85.69}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":393,"y":475,"exactX":393.03,"exactY":474.99,"bottom":true,"left":true}},"text":{"component":"data2-core-primitives@String","params":{"content":"COMMANDS"}},"font":{"params":{"fontFamily":"Fredoka One"},"component":"data2-core-web@GoogleFont"},"textFormat":{"params":{"fontStyle":"normal","fontWeight":700},"component":"data2-core-types@TextFormat"},"textSize":{"component":"data2-core-primitives@Number","params":{"content":48}},"textColor":{"params":{"rgba":"rgba(255,255,255,1)"},"component":"data2-core-types@Color"},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":-6}},{"component":"data2-core-types@Transform","params":{"kind":"skew","x":-15,"y":0}}],"onVisibleOnScreen":{"disabled":false,"component":"data2-core-types@Interaction","params":{"module":{"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"UNnONsWc0m3NRhq9W8pBu"}},"prop":"enableHandlers"}}},"index":5,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bea","parent":"6ab0840e136d4356dafc7bd6","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":299,"height":49,"exactWidth":298.64,"exactHeight":49.3}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":818,"y":527,"exactX":818.4100000000001,"exactY":526.95,"right":true,"bottom":false,"growV":true,"top":false}},"text":{"component":"data2-core-primitives@String","params":{"content":"ALLIES"}},"font":{"params":{"fontFamily":"Fredoka One"},"component":"data2-core-web@GoogleFont"},"textFormat":{"params":{"fontStyle":"italic","fontWeight":700,"textOverflow":false,"verticalAlignment":"bottom"},"component":"data2-core-types@TextFormat"},"textSize":{"component":"data2-core-primitives@Number","params":{"content":32}},"textColor":{"params":{"rgba":"rgba(255,255,255,1)"},"component":"data2-core-types@Color"},"rotate":354},"index":6,"deleteMetadata":{}},{"_id":"6ab09da6f96548f19afa17df","parent":"6ab0840e136d4356dafc7bd6","component":"data2-blocks@JsonViewer","system":"6172b957976026c073ab9058","params":{"super":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(0,120,220,0.3)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1095,"height":250,"exactWidth":false,"exactHeight":false}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":271,"y":0,"exactX":false,"exactY":false,"right":true,"top":true}},"opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":54}},"scroll":{"disabled":false,"component":"data2-core-types@Scroll","params":{"y":true}}},"json":{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data"}}},"component":"data2-core-types@Getter"}},"deleteMetadata":{}},{"_id":"6ab0328878b9f9c6f6c11edf","parent":"6ab0327578b9f9c6f6c11edc","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":50,"height":50,"exactWidth":50,"exactHeight":50}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":658,"y":"418","exactX":false,"exactY":false,"top":false,"left":false,"bottom":true,"growV":false}},"style":{"transform-origin":{"params":{"portions":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032f178b9f9c6f6c11ee7"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"px "}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032f378b9f9c6f6c11ee8"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"px "}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032f478b9f9c6f6c11ee9"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"px "}}]},"component":"data2-core-functions@StringConcat"},"transform-style":{"component":"data2-core-primitives@String","params":{"content":"preserve-3d"}},"transform":{"params":{"portions":[{"component":"data2-core-primitives@String","params":{"content":"translatex("}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032bb78b9f9c6f6c11ee1"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"px)"}},{"component":"data2-core-primitives@String","params":{"content":"translatey("}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032de78b9f9c6f6c11ee2"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"px)"}},{"component":"data2-core-primitives@String","params":{"content":"translate3d(0px,0px,"}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032df78b9f9c6f6c11ee3"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"px) "}},{"component":"data2-core-primitives@String","params":{"content":"rotatex("}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032e878b9f9c6f6c11ee4"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"deg)"}},{"component":"data2-core-primitives@String","params":{"content":"rotatey("}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032eb78b9f9c6f6c11ee5"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"deg)"}},{"component":"data2-core-primitives@String","params":{"content":"rotatez("}},{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab032ec78b9f9c6f6c11ee6"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}}},{"component":"data2-core-primitives@String","params":{"content":"deg) scale3d("}},{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab0347278b9f9c6f6c11eea"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}},"component":"data2-core-types@Getter"},{"component":"data2-core-primitives@String","params":{"content":","}},{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab0347278b9f9c6f6c11eea"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}},"component":"data2-core-types@Getter"},{"component":"data2-core-primitives@String","params":{"content":","}},{"params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__UIState"}},"prop":{"component":"data2-core-user-interface@StateProp","params":{"componentId":{"component":"data2-core-primitives@String","params":{"content":"6ab0347278b9f9c6f6c11eea"}},"key":{"component":"data2-core-primitives@String","params":{"content":"a"}}}}},"component":"data2-core-types@Getter"},{"component":"data2-core-primitives@String","params":{"content":")"}}]},"component":"data2-core-functions@StringConcat"},"image-rendering":{"component":"data2-core-primitives@String","params":{"content":"pixelated"}}},"childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"childrenMode":"grid","repeat":{"params":{"content":"1200"},"component":"data2-core-primitives@Number"},"repeatReference":{"component":"data2-core-primitives@String","params":{"content":"c"}},"transitions":[{"component":"data2-core-types@Transition","params":{"scope":"ALL","duration":"20"}}]},"index":0,"deleteMetadata":{}},{"_id":"6ab053d478b9f9c6f6c11ef2","parent":"6ab0327578b9f9c6f6c11edc","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"component":"data2-core-types@Background","params":{"color":{"disabled":true,"component":"data2-core-types@Color","params":{}},"gradient":{"disabled":false,"component":"data2-core-types@ColorGradient","params":{"angle":180,"colors":[{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"transparent"}},"offset":"0%"}},{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(79,84,139,1)"}},"offset":"59%"}},{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"transparent"}},"offset":"95%"}}]}},"image":{"disabled":true,"component":"data2-core-types@String","params":{}}},"break":true},{"component":"data2-core-types@Background","params":{"color":{"disabled":true,"component":"data2-core-types@Color","params":{}},"gradient":{"disabled":true,"component":"data2-core-types@ColorGradient","params":{}},"image":{"component":"data2-core-types@FileComponentUrlReference","params":{"reference":"xVYJEXu9u6v2vLzJjMULm"}},"size":"cover","positionX":"center","positionY":{"params":{"content":"-675px"},"component":"data2-core-primitives@String"}},"break":true}]},"component":"data2-core-types@Fill","break":true},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":1366,"height":391,"exactWidth":false,"exactHeight":390.64}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":6,"y":4,"exactX":5.63,"exactY":4,"bottom":true,"left":true,"right":true,"growH":false,"top":true,"growV":false}},"style":{"transform":{"component":"data2-core-primitives@String","params":{"content":"translate3d(0px,100px,200px)"}},"transform-style":{"component":"data2-core-primitives@String","params":{"content":"preserve-3d"}},"mask-image":{"disabled":false,"component":"data2-core-types@ColorGradient","params":{"colors":[{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(40,27,125,1)"}},"offset":"60%"}},{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,0)"}},"offset":"68.60000000000001%"}},{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,0)"}},"offset":"93%"}}],"angle":180}},"transform-origin":{"component":"data2-core-primitives@String","params":{"content":"top center"}}},"childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":50}},"index":{"component":"data2-core-primitives@Number","params":{"content":"2"}},"text":""},"index":1,"deleteMetadata":{}},{"_id":"6ab09180accbdf69dde4862b","parent":"6ab0327578b9f9c6f6c11edc","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(0,120,220,0.81)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":50,"height":50,"exactWidth":50,"exactHeight":50}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":658,"y":"418","exactX":false,"exactY":false,"top":false,"left":false,"bottom":true,"growV":false}},"childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"style":{"transform":{"params":{"portions":[{"component":"data2-core-primitives@String","params":{"content":"perspective(600px) translate3d(0px,0px,150px)  "}},{"component":"data2-core-primitives@String","params":{"content":"translatex("}},{"params":{"components":[{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.x"}}}},{"component":"data2-core-primitives@Number","params":{"content":50}}]},"component":"data2-core-numerical-operators@Multiply"},{"component":"data2-core-primitives@String","params":{"content":"0"}}]},"component":"data2-core-logical-operators@Or"},{"component":"data2-core-primitives@String","params":{"content":"px) translatey("}},{"params":{"components":[{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"6_CXSttuJSU3mAisi9EMl"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"data.y"}}}},{"component":"data2-core-primitives@Number","params":{"content":50}}]},"component":"data2-core-numerical-operators@Multiply"},{"component":"data2-core-primitives@String","params":{"content":"0"}}]},"component":"data2-core-logical-operators@Or"},{"component":"data2-core-primitives@String","params":{"content":"px) "}}]},"component":"data2-core-functions@StringConcat"},"transform-style":{"component":"data2-core-primitives@String","params":{"content":"preserve-3d"}},"transform-origin":{"component":"data2-core-primitives@String","params":{"content":"top left"}}},"index":{"component":"data2-core-primitives@Number","params":{"content":"2"}}},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bd8","parent":"6ab0840e136d4356dafc7bd7","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":84,"height":127,"exactWidth":83.64999999999999,"exactHeight":127.31}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":false,"x":80,"y":-52,"exactX":80.47,"exactY":-52,"fixed":false,"right":false,"bottom":false,"left":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":6}},{"component":"data2-core-types@Transform","params":{"kind":"skew","x":0,"y":-6}}],"text":""},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bd9","parent":"6ab0840e136d4356dafc7bd7","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":84,"height":127,"exactWidth":83.64999999999999,"exactHeight":127.31}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":false,"x":10,"y":-52,"exactX":10.47,"exactY":-52,"fixed":false,"right":false,"bottom":false,"left":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":6}},{"component":"data2-core-types@Transform","params":{"kind":"skew","x":0,"y":-6}}],"text":""},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bda","parent":"6ab0840e136d4356dafc7bd7","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":84,"height":127,"exactWidth":83.64999999999999,"exactHeight":127.31}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":false,"x":11,"y":-52,"exactX":10.940000000000001,"exactY":-52,"fixed":false,"right":false,"bottom":false,"left":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":6}},{"component":"data2-core-types@Transform","params":{"kind":"skew","x":0,"y":-6}}]},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bdb","parent":"6ab0840e136d4356dafc7bd7","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(255,255,255,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":84,"height":127,"exactWidth":83.64999999999999,"exactHeight":127.31}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":false,"x":11,"y":-52,"exactX":11.41,"exactY":-52,"fixed":false,"right":false,"bottom":false,"left":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"rotate","angle":6}},{"component":"data2-core-types@Transform","params":{"kind":"skew","x":0,"y":-6}}],"text":""},"deleteMetadata":{}},{"_id":"6ab08546accbdf69dde48628","parent":"6ab0840e136d4356dafc7bd7","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":338,"height":67}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":471,"y":14,"top":true,"exactX":471.28000000000003,"exactY":14.02,"left":true}},"childrenMode":"reversed-cols","childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"style":{"transform":{"params":{"portions":[{"component":"data2-core-primitives@String","params":{"content":"scale("}},{"params":{"compare":{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"builder"}}},"component":"data2-core-types@Reference"},"then":{"component":"data2-core-primitives@String","params":{"content":"1"}},"else":{"params":{"components":[{"params":{"components":[{"component":"data2-core-types@Getter","params":{"module":{"disabled":false,"component":"data2-core-types@InteractiveModuleReference","params":{"reference":"__DeviceController"}},"prop":{"component":"data2-core-primitives@String","params":{"content":"width"}}}},{"component":"data2-core-primitives@Number","params":{"content":1366}}]},"component":"data2-core-numerical-operators@Divide"},{"component":"data2-core-primitives@Number","params":{"content":-0.5}}]},"component":"data2-core-numerical-operators@Add"}},"component":"data2-core-flow@If"},{"component":"data2-core-primitives@String","params":{"content":")"}}]},"component":"data2-core-functions@StringConcat"},"transform-origin":{"component":"data2-core-primitives@String","params":{"content":"top left"}}}},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7be5","parent":"6ab0840e136d4356dafc7be4","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":198,"height":50,"exactWidth":198.19,"exactHeight":50.05}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":73,"y":11,"exactX":73.3,"exactY":11.34}},"text":{"component":"data2-core-primitives@String","params":{"content":"ITEMS"}},"font":{"params":{"fontFamily":"Fredoka One"},"component":"data2-core-web@GoogleFont"},"textFormat":{"params":{"fontStyle":"normal","fontWeight":400,"letterSpacing":"","horizontalAlignment":"center"},"component":"data2-core-types@TextFormat"},"textSize":{"component":"data2-core-primitives@Number","params":{"content":"38"}},"textColor":{"params":{"rgba":"rgba(255,255,255,1)"},"component":"data2-core-types@Color"}},"index":4,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7be7","parent":"6ab0840e136d4356dafc7be6","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":210,"height":49,"exactWidth":210.39,"exactHeight":49.33}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":74,"y":11,"exactX":false,"exactY":false,"left":true}},"text":{"component":"data2-core-primitives@String","params":{"content":"MAGIKS"}},"font":{"params":{"fontFamily":"Fredoka One"},"component":"data2-core-web@GoogleFont"},"textFormat":{"params":{"fontStyle":"normal","fontWeight":400,"letterSpacing":"","horizontalAlignment":"center"},"component":"data2-core-types@TextFormat"},"textSize":{"component":"data2-core-primitives@Number","params":{"content":"38"}},"textColor":{"params":{"rgba":"rgba(255,255,255,1)"},"component":"data2-core-types@Color"}},"index":4,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7be2","parent":"6ab0840e136d4356dafc7be1","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(245,245,245,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":152,"height":232,"exactWidth":152,"exactHeight":232}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":81,"y":49,"exactX":81.37,"exactY":48.94}},"rotate":45},"deleteMetadata":{}},{"_id":"6ab0328878b9f9c6f6c11ee0","parent":"6ab0328878b9f9c6f6c11edf","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(0,120,220,0.3)"},"disabled":true},"gradient":{"disabled":true,"component":"data2-core-types@ColorGradient","params":{}},"image":{"component":"data2-core-types@FileComponentUrlReference","params":{"reference":"2v-7y-nWzDb-b-Cv43ur5"}},"size":{"params":{"content":"18.6px"},"component":"data2-core-primitives@String"},"positionX":"center","positionY":"center","repeat":"repeat-x"},"component":"data2-core-types@Background","break":true}]},"component":"data2-core-types@Fill","break":true},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":50,"height":50,"exactWidth":50,"exactHeight":50}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":0,"y":0,"exactX":false,"exactY":false,"left":true,"top":true}},"style":{"transform-origin":{"component":"data2-core-primitives@String","params":{"content":"center center center"}},"transform-style":{"component":"data2-core-primitives@String","params":{"content":"preserve-3d"}},"transform":{"params":{"portions":[{"component":"data2-core-primitives@String","params":{"content":"translatex("}},{"params":{"components":[{"params":{"components":[{"params":{"components":[{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"cRepeaterIndex"}}},"component":"data2-core-types@Reference"},{"component":"data2-core-primitives@Number","params":{"content":20}}]},"component":"data2-core-numerical-operators@Modulo"},{"component":"data2-core-primitives@Number","params":{"content":50}}]},"component":"data2-core-numerical-operators@Multiply"},{"component":"data2-core-primitives@Number","params":{"content":500}}]},"component":"data2-core-numerical-operators@Subtract"},{"component":"data2-core-primitives@String","params":{"content":"px) rotatex("}},{"params":{"components":[{"params":{"value":{"params":{"components":[{"params":{"reference":{"component":"data2-core-primitives@String","params":{"content":"cRepeaterIndex"}}},"component":"data2-core-types@Reference"},{"component":"data2-core-primitives@Number","params":{"content":20}}]},"component":"data2-core-numerical-operators@Divide"}},"component":"data2-core-functions@Floor"},{"component":"data2-core-primitives@Number","params":{"content":6}}]},"component":"data2-core-numerical-operators@Multiply"},{"component":"data2-core-primitives@String","params":{"content":"deg) translatez("}},{"params":{"components":[{"component":"data2-core-primitives@Number","params":{"content":50}},{"params":{"components":[{"component":"data2-core-primitives@Number","params":{"content":2}},{"params":{"formula":{"component":"data2-core-primitives@String","params":{"content":"sin(6/2)"}}},"component":"data2-core-types@Formula"}]},"component":"data2-core-numerical-operators@Multiply"}]},"component":"data2-core-numerical-operators@Divide"},{"component":"data2-core-primitives@String","params":{"content":"px)"}}]},"component":"data2-core-functions@StringConcat"},"image-rendering":{"component":"data2-core-primitives@String","params":{"content":"pixelated"}}},"childrenOverflow":{"component":"data2-core-primitives@Boolean","params":{"content":true}},"opacity":{"disabled":false,"component":"data2-core-types@Opacity","params":{"value":100}}},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bdc","parent":"6ab08546accbdf69dde48628","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":253,"height":34,"exactWidth":253,"exactHeight":33.93}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":0,"y":0,"exactX":0,"exactY":0,"bottom":false,"left":true,"top":true}},"text":{"component":"data2-core-primitives@String","params":{"content":"HP"}},"font":{"params":{"fontFamily":"Fredoka One"},"component":"data2-core-web@GoogleFont"},"textFormat":{"params":{"fontStyle":"italic","fontWeight":400},"component":"data2-core-types@TextFormat"},"textSize":{"component":"data2-core-primitives@Number","params":{"content":24}},"textColor":{"params":{"rgba":"rgba(255,255,255,1)"},"component":"data2-core-types@Color"}},"index":4,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bdd","parent":"6ab08546accbdf69dde48628","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":253,"height":33,"exactWidth":253,"exactHeight":32.94}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":0,"y":34,"exactX":0,"exactY":34,"bottom":false,"left":true,"top":true}},"text":{"component":"data2-core-primitives@String","params":{"content":"MP"}},"font":{"params":{"fontFamily":"Fredoka One"},"component":"data2-core-web@GoogleFont"},"textFormat":{"params":{"fontStyle":"italic","fontWeight":400},"component":"data2-core-types@TextFormat"},"textSize":{"component":"data2-core-primitives@Number","params":{"content":24}},"textColor":{"params":{"rgba":"rgba(255,255,255,1)"},"component":"data2-core-types@Color"}},"index":4,"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bde","parent":"6ab08546accbdf69dde48628","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(115,254,28,1)"},"disabled":true},"gradient":{"disabled":false,"component":"data2-core-types@ColorGradient","params":{"colors":[{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(79,237,18,1)"}},"offset":"0%"},"break":true},{"component":"data2-core-types@ColorGradientStop","params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(114,255,29,1)"}},"offset":"100%"},"break":true}],"angle":{"component":"data2-core-primitives@Number","params":{"content":90}}},"locked":false,"break":true},"image":{"disabled":true,"component":"data2-core-types@String","params":{}}},"component":"data2-core-types@Background","break":true}]},"component":"data2-core-types@Fill","break":true},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":286,"height":22,"exactWidth":286.39,"exactHeight":22}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":50,"y":2,"exactX":50,"exactY":2,"bottom":false,"left":true,"top":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"skew","x":-6,"y":0}}]},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7bdf","parent":"6ab08546accbdf69dde48628","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(0,255,255,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":282,"height":22,"exactWidth":282,"exactHeight":22}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":50,"y":37,"exactX":50,"exactY":37,"bottom":false,"left":true,"top":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"skew","x":-6,"y":0}}]},"deleteMetadata":{}},{"_id":"6ab0840e136d4356dafc7be0","parent":"6ab08546accbdf69dde48628","component":"data2-core-primitives@Block","system":"6172b957976026c073ab9058","params":{"border":{"component":"data2-core-types@Border","params":{"color":"#808080","radius":{},"width":{"left":"0","top":"0","right":"0","bottom":"0"}}},"fill":{"params":{"backgrounds":[{"params":{"color":{"component":"data2-core-types@Color","params":{"rgba":"rgba(0,255,255,1)"}}},"component":"data2-core-types@Background"}]},"component":"data2-core-types@Fill"},"dimensions":{"component":"data2-core-types@Dimensions","params":{"width":289,"height":27,"exactWidth":289,"exactHeight":26.72}},"position":{"component":"data2-core-types@Position","params":{"freeTransform":true,"x":49,"y":37,"exactX":49,"exactY":37,"bottom":false,"left":true,"top":true}},"transform":[{"component":"data2-core-types@Transform","params":{"kind":"perspective","distance":520}},{"component":"data2-core-types@Transform","params":{"kind":"rotateY","angle":-59}}],"style":{"transform-origin":{"component":"data2-core-primitives@String","params":{"content":"top left"}}}},"deleteMetadata":{}}]}},{"_id":"5fc4faeec8da12be8bf3d08a","component":"data2-core@Data2TableDataSource","system":"5e3b796d6228227ca637d0f4","params":{"paginate":{"default":1000},"super":{},"table":"fileComponentInstances","schema":[{"component":"data2-core-types@Field","params":{"key":"component","title":"Component","component":"data2-core-primitives@String"}},{"component":"data2-core-types@Field","params":{"key":"system","title":"System","component":"data2-core-primitives@ObjectId"}},{"component":"data2-core-types@Field","params":{"key":"displayName","title":"Display Name","component":"data2-core-primitives@String"}},{"component":"data2-core-types@Field","params":{"key":"params","title":"Params","component":"data2-core-primitives@Object"}},{"component":"data2-core-types@Field","params":{"key":"reference","title":"Reference","component":"data2-core-primitives@String"}},{"component":"data2-core-types@Field","params":{"key":{"component":"data2-core-primitives@String","params":{"content":"fileId"}},"title":"File ID","component":"data2-core-primitives@ObjectId"},"break":true}],"hooks":{"before":{"all":[{"hook":"softDelete"}],"find":[{"hook":"useCache","options":{"additionalGroupKeys":["$and.0.system","$and.1.system"],"skipCache":true}}],"create":[{"hook":"timestamp","options":{"fields":["createdAt","updatedAt"]}}],"update":[{"hook":"timestamp","options":{"fields":["updatedAt"]}}],"patch":[{"hook":"timestamp","options":{"fields":["updatedAt"]}}]},"after":{"all":[{"hook":"fileUrl","options":{"downloadField":"params.fileUrl","uploadField":"params.uploadFileUrl","enhanceSchema":false}}],"find":[{"hook":"useCache","options":{"additionalGroupKeys":["$and.0.system","$and.1.system"],"skipCache":true}}],"create":[{"hook":"invalidateCache","options":{"additionalGroupKeys":["system"],"secondaryUniqueKeys":["reference"]}},{"hook":"invalidateEnvCache"}],"update":[{"hook":"invalidateCache","options":{"additionalGroupKeys":["system"],"secondaryUniqueKeys":["reference"]}},{"hook":"invalidateEnvCache"}],"patch":[{"hook":"invalidateCache","options":{"additionalGroupKeys":["system"],"secondaryUniqueKeys":["reference"]}},{"hook":"invalidateEnvCache"}],"remove":[{"hook":"invalidateCache","options":{"additionalGroupKeys":["system"],"secondaryUniqueKeys":["reference"]}},{"hook":"invalidateEnvCache"}]}},"multi":["create"],"useEstimatedDocumentCount":true},"reference":"FileComponentInstancesTableDataSource","updatedAt":"2022-12-19T20:42:51.837Z","createdAt":"2020-11-30T13:59:52.294Z"},{"reference":"ApplicationsTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[{"_id":"6ab09cfef96548f19afa17de","displayName":"New Application (50)","reference":"GUYieIMlDv3LxUm7grFEd","params":{"domain":{"component":"data2-core-primitives@String","params":{"content":"new-magi"}},"entryPoint":{"disabled":false,"component":"data2-core-types@ComponentInstanceReference","params":{"component":"data2-core-primitives@Artboard","reference":"qRsMTxiRUfo2gSgiOGRM9"}}},"system":"6172b957976026c073ab9058","component":"data2-core-primitives@Application"}]}},{"reference":"DataComponentInstancesTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[{"_id":"6a73eb729b80399cc1ea52fb","component":"data2-core@Store","system":"6172b957976026c073ab9058","params":{"initialData":{"selectedLevelId":null}},"reference":"gameStore"},{"_id":"6ab0925faccbdf69dde4862c","component":"data2-core@Store","system":"6172b957976026c073ab9058","params":{"initialData":{"params":{"fields":{"x":{"params":{"content":0},"component":"data2-core-primitives@Number"},"y":{"params":{"content":0},"component":"data2-core-primitives@Number"},"move":{"params":{},"component":"data2-core-primitives@Boolean"},"game_start":{"params":{},"component":"data2-core-primitives@Boolean"},"stage":{"params":{"text":{"component":"data2-core-primitives@String","params":{"content":"{}"}}},"component":"data2-core-functions@JSONParse"},"tick":{"params":{},"component":"data2-core-primitives@Boolean"},"sprite":[]}},"component":"data2-core-types@FieldSet"}},"reference":"6_CXSttuJSU3mAisi9EMl","deleteMetadata":{}}]}},{"reference":"BundlesTableDataSource","component":"data2-core@MemoryDataSource","params":{"initialData":[]}}],"processesParams":{}}}}