@dxos/plugin-script 0.8.4-main.3eb6e50203 → 0.8.4-main.4a85c3132b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -13
- package/dist/lib/browser/{chunk-BU6CGVU2.mjs → DeploymentDialog-IIOXAS47.mjs} +11 -10
- package/dist/lib/browser/DeploymentDialog-IIOXAS47.mjs.map +7 -0
- package/dist/lib/browser/{NotebookContainer-UQ4I24R6.mjs → NotebookContainer-VVZOKGRC.mjs} +31 -26
- package/dist/lib/browser/NotebookContainer-VVZOKGRC.mjs.map +7 -0
- package/dist/lib/browser/ScriptContainer-A5SSIUH6.mjs +93 -0
- package/dist/lib/browser/ScriptContainer-A5SSIUH6.mjs.map +7 -0
- package/dist/lib/browser/ScriptObjectSettings-HYYC7KXC.mjs +294 -0
- package/dist/lib/browser/ScriptObjectSettings-HYYC7KXC.mjs.map +7 -0
- package/dist/lib/browser/ScriptPluginSettings-UTWA7CBT.mjs +55 -0
- package/dist/lib/browser/ScriptPluginSettings-UTWA7CBT.mjs.map +7 -0
- package/dist/lib/browser/ScriptProperties-HREPUE65.mjs +28 -0
- package/dist/lib/browser/ScriptProperties-HREPUE65.mjs.map +7 -0
- package/dist/lib/browser/TestContainer-D4Y2K2TT.mjs +39 -0
- package/dist/lib/browser/TestContainer-D4Y2K2TT.mjs.map +7 -0
- package/dist/lib/browser/{blueprint-definition-5RFKE7VK.mjs → blueprint-definition-YMZEJBAZ.mjs} +4 -5
- package/dist/lib/browser/blueprint-definition-YMZEJBAZ.mjs.map +7 -0
- package/dist/lib/browser/blueprints/index.mjs +3 -3
- package/dist/lib/browser/{chunk-3BSF5BIA.mjs → chunk-6IXFDTAI.mjs} +6 -6
- package/dist/lib/browser/{chunk-3BSF5BIA.mjs.map → chunk-6IXFDTAI.mjs.map} +3 -3
- package/dist/lib/browser/chunk-ATTZUDT7.mjs +67 -0
- package/dist/lib/browser/chunk-ATTZUDT7.mjs.map +7 -0
- package/dist/lib/browser/chunk-G3XIOLLI.mjs +174 -0
- package/dist/lib/browser/chunk-G3XIOLLI.mjs.map +7 -0
- package/dist/lib/browser/{chunk-4N5TLXEJ.mjs → chunk-J7PGML5B.mjs} +3 -3
- package/dist/lib/browser/chunk-J7PGML5B.mjs.map +7 -0
- package/dist/lib/browser/{chunk-WWCDIB6Z.mjs → chunk-MUEVLYXJ.mjs} +89 -249
- package/dist/lib/browser/chunk-MUEVLYXJ.mjs.map +7 -0
- package/dist/lib/browser/chunk-PLDBKKYO.mjs +789 -0
- package/dist/lib/browser/chunk-PLDBKKYO.mjs.map +7 -0
- package/dist/lib/browser/chunk-Q66L5EUR.mjs +20 -0
- package/dist/lib/browser/chunk-Q66L5EUR.mjs.map +7 -0
- package/dist/lib/browser/{chunk-F3QKSKSF.mjs → chunk-TW27W3EL.mjs} +11 -17
- package/dist/lib/browser/chunk-TW27W3EL.mjs.map +7 -0
- package/dist/lib/browser/chunk-ZYU2LP6U.mjs +11 -0
- package/dist/lib/browser/chunk-ZYU2LP6U.mjs.map +7 -0
- package/dist/lib/browser/{compiler-VPUVTFQD.mjs → compiler-53G6ZHQM.mjs} +10 -72
- package/dist/lib/browser/compiler-53G6ZHQM.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +24 -19
- package/dist/lib/browser/index.mjs.map +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{operation-resolver-NYDY7GDT.mjs → operation-resolver-CYEISDDK.mjs} +4 -8
- package/dist/lib/browser/operation-resolver-CYEISDDK.mjs.map +7 -0
- package/dist/lib/browser/{react-surface-FYOQSC6S.mjs → react-surface-26P6HAFD.mjs} +14 -13
- package/dist/lib/browser/react-surface-26P6HAFD.mjs.map +7 -0
- package/dist/lib/browser/{settings-5SF77MRH.mjs → settings-76UM7442.mjs} +3 -3
- package/dist/lib/browser/templates/index.mjs +1 -1
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node-esm/{chunk-U6PXM2HT.mjs → DeploymentDialog-ZHPHEV2H.mjs} +11 -10
- package/dist/lib/node-esm/DeploymentDialog-ZHPHEV2H.mjs.map +7 -0
- package/dist/lib/node-esm/{NotebookContainer-DQGZ6QHI.mjs → NotebookContainer-ZLWTNMQA.mjs} +31 -26
- package/dist/lib/node-esm/NotebookContainer-ZLWTNMQA.mjs.map +7 -0
- package/dist/lib/node-esm/ScriptContainer-S4UKQAWP.mjs +94 -0
- package/dist/lib/node-esm/ScriptContainer-S4UKQAWP.mjs.map +7 -0
- package/dist/lib/node-esm/ScriptObjectSettings-C5QBRERY.mjs +295 -0
- package/dist/lib/node-esm/ScriptObjectSettings-C5QBRERY.mjs.map +7 -0
- package/dist/lib/node-esm/ScriptPluginSettings-MFACDW4R.mjs +56 -0
- package/dist/lib/node-esm/ScriptPluginSettings-MFACDW4R.mjs.map +7 -0
- package/dist/lib/node-esm/ScriptProperties-FMNIX3KU.mjs +29 -0
- package/dist/lib/node-esm/ScriptProperties-FMNIX3KU.mjs.map +7 -0
- package/dist/lib/node-esm/TestContainer-AO45YPGV.mjs +40 -0
- package/dist/lib/node-esm/TestContainer-AO45YPGV.mjs.map +7 -0
- package/dist/lib/node-esm/{blueprint-definition-EYL5GNDC.mjs → blueprint-definition-5MGY6BRQ.mjs} +4 -5
- package/dist/lib/node-esm/blueprint-definition-5MGY6BRQ.mjs.map +7 -0
- package/dist/lib/node-esm/blueprints/index.mjs +3 -3
- package/dist/lib/node-esm/chunk-5BG7OJGQ.mjs +176 -0
- package/dist/lib/node-esm/chunk-5BG7OJGQ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-H46R2RS5.mjs +790 -0
- package/dist/lib/node-esm/chunk-H46R2RS5.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-JGN7TDJH.mjs +69 -0
- package/dist/lib/node-esm/chunk-JGN7TDJH.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-V37R7KB5.mjs → chunk-QG6ANK4B.mjs} +3 -3
- package/dist/lib/node-esm/chunk-QG6ANK4B.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-Y3G5NCTP.mjs → chunk-S7DSCLOW.mjs} +11 -16
- package/dist/lib/node-esm/chunk-S7DSCLOW.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-TZ2EBTPQ.mjs +22 -0
- package/dist/lib/node-esm/chunk-TZ2EBTPQ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-UFBVE33O.mjs +12 -0
- package/dist/lib/node-esm/chunk-UFBVE33O.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-KRVL7UYI.mjs → chunk-WWD5LUU6.mjs} +6 -6
- package/dist/lib/node-esm/{chunk-KRVL7UYI.mjs.map → chunk-WWD5LUU6.mjs.map} +3 -3
- package/dist/lib/node-esm/{chunk-ECRSTVR6.mjs → chunk-ZDJ2FI7E.mjs} +89 -249
- package/dist/lib/node-esm/chunk-ZDJ2FI7E.mjs.map +7 -0
- package/dist/lib/node-esm/{compiler-WUOSY6MS.mjs → compiler-HHQW7EP3.mjs} +10 -72
- package/dist/lib/node-esm/compiler-HHQW7EP3.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +24 -19
- package/dist/lib/node-esm/index.mjs.map +1 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{operation-resolver-AJNJXGCE.mjs → operation-resolver-HFFDXWND.mjs} +4 -8
- package/dist/lib/node-esm/operation-resolver-HFFDXWND.mjs.map +7 -0
- package/dist/lib/node-esm/{react-surface-LREMOVNJ.mjs → react-surface-THCIK266.mjs} +14 -13
- package/dist/lib/node-esm/react-surface-THCIK266.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-ILI762CY.mjs → settings-CCHDPLFJ.mjs} +3 -3
- package/dist/lib/node-esm/templates/index.mjs +1 -1
- package/dist/lib/node-esm/types/index.mjs +2 -2
- package/dist/types/src/blueprints/index.d.ts +1 -1
- package/dist/types/src/blueprints/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/script-blueprint.d.ts +3 -21
- package/dist/types/src/blueprints/script-blueprint.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +1 -1
- package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts +1 -1
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +1 -5
- package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +1 -1
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts +1 -1
- package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/compiler/compiler.d.ts +1 -1
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +1 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +1 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/settings/settings.d.ts +1 -1
- package/dist/types/src/components/FrameContainer/FrameContainer.d.ts.map +1 -1
- package/dist/types/src/components/NotebookStack/NotebookCell.d.ts.map +1 -1
- package/dist/types/src/components/NotebookStack/NotebookStack.stories.d.ts.map +1 -1
- package/dist/types/src/components/QueryEditor/QueryEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts +3 -2
- package/dist/types/src/components/ScriptToolbar/ScriptToolbar.d.ts.map +1 -1
- package/dist/types/src/components/ScriptToolbar/ScriptToolbar.stories.d.ts.map +1 -1
- package/dist/types/src/components/TestPanel/index.d.ts +0 -1
- package/dist/types/src/components/TestPanel/index.d.ts.map +1 -1
- package/dist/types/src/components/TypescriptEditor/TypescriptEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +4 -5
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/constants.d.ts +2 -0
- package/dist/types/src/constants.d.ts.map +1 -0
- package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.d.ts +0 -2
- package/dist/types/src/containers/DeploymentDialog/DeploymentDialog.d.ts.map +1 -0
- package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.stories.d.ts.map +1 -1
- package/dist/types/src/containers/DeploymentDialog/index.d.ts +3 -0
- package/dist/types/src/containers/DeploymentDialog/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/NotebookContainer}/NotebookContainer.d.ts +2 -3
- package/dist/types/src/containers/NotebookContainer/NotebookContainer.d.ts.map +1 -0
- package/dist/types/src/containers/NotebookContainer/NotebookContainer.stories.d.ts.map +1 -0
- package/dist/types/src/containers/NotebookContainer/index.d.ts +3 -0
- package/dist/types/src/containers/NotebookContainer/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/ScriptContainer}/ScriptContainer.d.ts +2 -3
- package/dist/types/src/containers/ScriptContainer/ScriptContainer.d.ts.map +1 -0
- package/dist/types/src/containers/ScriptContainer/index.d.ts +3 -0
- package/dist/types/src/containers/ScriptContainer/index.d.ts.map +1 -0
- package/dist/types/src/{components/Settings → containers/ScriptObjectSettings}/ScriptObjectSettings.d.ts +0 -1
- package/dist/types/src/containers/ScriptObjectSettings/ScriptObjectSettings.d.ts.map +1 -0
- package/dist/types/src/containers/ScriptObjectSettings/index.d.ts +3 -0
- package/dist/types/src/containers/ScriptObjectSettings/index.d.ts.map +1 -0
- package/dist/types/src/containers/ScriptPluginSettings/ScriptPluginSettings.d.ts.map +1 -0
- package/dist/types/src/containers/ScriptPluginSettings/index.d.ts +3 -0
- package/dist/types/src/containers/ScriptPluginSettings/index.d.ts.map +1 -0
- package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts +7 -0
- package/dist/types/src/containers/ScriptProperties/ScriptProperties.d.ts.map +1 -0
- package/dist/types/src/containers/ScriptProperties/index.d.ts +3 -0
- package/dist/types/src/containers/ScriptProperties/index.d.ts.map +1 -0
- package/dist/types/src/containers/TestContainer/TestContainer.d.ts.map +1 -0
- package/dist/types/src/containers/TestContainer/index.d.ts +3 -0
- package/dist/types/src/containers/TestContainer/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +9 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- package/dist/types/src/hooks/deploy.d.ts +2 -1
- package/dist/types/src/hooks/deploy.d.ts.map +1 -1
- package/dist/types/src/hooks/format.d.ts +1 -0
- package/dist/types/src/hooks/format.d.ts.map +1 -1
- package/dist/types/src/hooks/template.d.ts +1 -0
- package/dist/types/src/hooks/template.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/templates/chess-bot.d.ts.map +1 -1
- package/dist/types/src/templates/commentary.d.ts.map +1 -1
- package/dist/types/src/types/Notebook.d.ts +12 -4
- package/dist/types/src/types/Notebook.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +74 -74
- package/src/blueprints/index.ts +1 -1
- package/src/blueprints/script-blueprint.ts +14 -7
- package/src/capabilities/blueprint-definition/blueprint-definition.ts +4 -11
- package/src/capabilities/operation-resolver/operation-resolver.ts +1 -1
- package/src/capabilities/react-surface/react-surface.tsx +13 -11
- package/src/components/FrameContainer/FrameContainer.tsx +2 -3
- package/src/components/FrameContainer/frame.html +21 -21
- package/src/components/NotebookStack/NotebookCell.tsx +7 -9
- package/src/components/NotebookStack/NotebookStack.stories.tsx +2 -3
- package/src/components/NotebookStack/NotebookStack.tsx +3 -3
- package/src/components/QueryEditor/QueryEditor.stories.tsx +16 -14
- package/src/components/ScriptToolbar/ScriptToolbar.stories.tsx +4 -5
- package/src/components/ScriptToolbar/ScriptToolbar.tsx +7 -7
- package/src/components/TestPanel/TestPanel.tsx +6 -6
- package/src/components/TestPanel/index.ts +0 -1
- package/src/components/TypescriptEditor/TypescriptEditor.stories.tsx +16 -14
- package/src/components/TypescriptEditor/TypescriptEditor.tsx +1 -1
- package/src/components/index.ts +4 -9
- package/src/constants.ts +7 -0
- package/src/{components → containers}/DeploymentDialog/DeploymentDialog.stories.tsx +3 -4
- package/src/{components → containers}/DeploymentDialog/DeploymentDialog.tsx +2 -6
- package/src/containers/DeploymentDialog/index.ts +7 -0
- package/src/{components → containers/NotebookContainer}/NotebookContainer.stories.tsx +7 -7
- package/src/{components → containers/NotebookContainer}/NotebookContainer.tsx +36 -39
- package/src/containers/NotebookContainer/index.ts +7 -0
- package/src/{components → containers/ScriptContainer}/ScriptContainer.tsx +20 -20
- package/src/containers/ScriptContainer/index.ts +7 -0
- package/src/{components/Settings → containers/ScriptObjectSettings}/ScriptObjectSettings.tsx +3 -21
- package/src/containers/ScriptObjectSettings/index.ts +7 -0
- package/src/containers/ScriptPluginSettings/index.ts +7 -0
- package/src/containers/ScriptProperties/ScriptProperties.tsx +33 -0
- package/src/containers/ScriptProperties/index.ts +7 -0
- package/src/{components/TestPanel → containers/TestContainer}/TestContainer.tsx +7 -6
- package/src/containers/TestContainer/index.ts +7 -0
- package/src/containers/index.ts +13 -0
- package/src/e2e/deploy.test.ts +1 -1
- package/src/hooks/deploy.ts +5 -5
- package/src/hooks/format.ts +1 -0
- package/src/hooks/template.ts +2 -2
- package/src/index.ts +1 -0
- package/src/templates/chess-bot.ts +2 -2
- package/src/templates/commentary.ts +4 -3
- package/src/types/Notebook.ts +4 -4
- package/dist/lib/browser/DeploymentDialog-XUAFCNI7.mjs +0 -14
- package/dist/lib/browser/DeploymentDialog-XUAFCNI7.mjs.map +0 -7
- package/dist/lib/browser/NotebookContainer-UQ4I24R6.mjs.map +0 -7
- package/dist/lib/browser/ScriptContainer-NB76645V.mjs +0 -149
- package/dist/lib/browser/ScriptContainer-NB76645V.mjs.map +0 -7
- package/dist/lib/browser/blueprint-definition-5RFKE7VK.mjs.map +0 -7
- package/dist/lib/browser/chunk-4N5TLXEJ.mjs.map +0 -7
- package/dist/lib/browser/chunk-BKGEAUUH.mjs +0 -270
- package/dist/lib/browser/chunk-BKGEAUUH.mjs.map +0 -7
- package/dist/lib/browser/chunk-BU6CGVU2.mjs.map +0 -7
- package/dist/lib/browser/chunk-F3QKSKSF.mjs.map +0 -7
- package/dist/lib/browser/chunk-I7CSE6T3.mjs +0 -110
- package/dist/lib/browser/chunk-I7CSE6T3.mjs.map +0 -7
- package/dist/lib/browser/chunk-LYMPME7J.mjs +0 -609
- package/dist/lib/browser/chunk-LYMPME7J.mjs.map +0 -7
- package/dist/lib/browser/chunk-WWCDIB6Z.mjs.map +0 -7
- package/dist/lib/browser/compiler-VPUVTFQD.mjs.map +0 -7
- package/dist/lib/browser/operation-resolver-NYDY7GDT.mjs.map +0 -7
- package/dist/lib/browser/react-surface-FYOQSC6S.mjs.map +0 -7
- package/dist/lib/node-esm/DeploymentDialog-GGWDQMEB.mjs +0 -15
- package/dist/lib/node-esm/DeploymentDialog-GGWDQMEB.mjs.map +0 -7
- package/dist/lib/node-esm/NotebookContainer-DQGZ6QHI.mjs.map +0 -7
- package/dist/lib/node-esm/ScriptContainer-PCNJFUWX.mjs +0 -150
- package/dist/lib/node-esm/ScriptContainer-PCNJFUWX.mjs.map +0 -7
- package/dist/lib/node-esm/blueprint-definition-EYL5GNDC.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-3CKQUF55.mjs +0 -610
- package/dist/lib/node-esm/chunk-3CKQUF55.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-3QBXN6QC.mjs +0 -271
- package/dist/lib/node-esm/chunk-3QBXN6QC.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ECRSTVR6.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-SLU3KRV3.mjs +0 -112
- package/dist/lib/node-esm/chunk-SLU3KRV3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-U6PXM2HT.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-V37R7KB5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-Y3G5NCTP.mjs.map +0 -7
- package/dist/lib/node-esm/compiler-WUOSY6MS.mjs.map +0 -7
- package/dist/lib/node-esm/operation-resolver-AJNJXGCE.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-LREMOVNJ.mjs.map +0 -7
- package/dist/types/src/components/DeploymentDialog/DeploymentDialog.d.ts.map +0 -1
- package/dist/types/src/components/DeploymentDialog/index.d.ts +0 -4
- package/dist/types/src/components/DeploymentDialog/index.d.ts.map +0 -1
- package/dist/types/src/components/NotebookContainer.d.ts.map +0 -1
- package/dist/types/src/components/NotebookContainer.stories.d.ts.map +0 -1
- package/dist/types/src/components/ScriptContainer.d.ts.map +0 -1
- package/dist/types/src/components/Settings/ScriptObjectSettings.d.ts.map +0 -1
- package/dist/types/src/components/Settings/ScriptPluginSettings.d.ts.map +0 -1
- package/dist/types/src/components/Settings/index.d.ts +0 -3
- package/dist/types/src/components/Settings/index.d.ts.map +0 -1
- package/dist/types/src/components/TestPanel/TestContainer.d.ts.map +0 -1
- package/src/components/DeploymentDialog/index.ts +0 -9
- package/src/components/Settings/index.ts +0 -6
- /package/dist/lib/browser/{settings-5SF77MRH.mjs.map → settings-76UM7442.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-ILI762CY.mjs.map → settings-CCHDPLFJ.mjs.map} +0 -0
- /package/dist/types/src/{components → containers}/DeploymentDialog/DeploymentDialog.stories.d.ts +0 -0
- /package/dist/types/src/{components → containers/NotebookContainer}/NotebookContainer.stories.d.ts +0 -0
- /package/dist/types/src/{components/Settings → containers/ScriptPluginSettings}/ScriptPluginSettings.d.ts +0 -0
- /package/dist/types/src/{components/TestPanel → containers/TestContainer}/TestContainer.d.ts +0 -0
- /package/src/{components/Settings → containers/ScriptPluginSettings}/ScriptPluginSettings.tsx +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/operation-resolver/operation-resolver.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Octokit } from '@octokit/core';\nimport * as Effect from 'effect/Effect';\nimport * as Predicate from 'effect/Predicate';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Script } from '@dxos/functions';\nimport { Operation, OperationResolver } from '@dxos/operation';\nimport { TokenManagerOperation } from '@dxos/plugin-token-manager/types';\n\nimport { DEPLOYMENT_DIALOG } from '../../constants';\nimport { defaultScriptsForIntegration } from '../../meta';\nimport { templates } from '../../templates';\nimport { ScriptOperation } from '../../types';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n return Capability.contributes(Capabilities.OperationResolver, [\n OperationResolver.make({\n operation: ScriptOperation.CreateScript,\n handler: Effect.fnUntraced(function* ({ name, gistUrl, initialTemplateId }) {\n let source = templates[0].source;\n let scriptName = name;\n\n const gistId = gistUrl?.split('/').at(-1);\n if (gistId) {\n // TODO(wittjosiah): Capability which contributes Octokit?\n // NOTE: AccessToken not needed to read public gists.\n const octokit = new Octokit();\n const response = yield* Effect.promise(() =>\n octokit.request('GET /gists/{gist_id}', {\n gist_id: gistId,\n }),\n );\n const gistContent = Object.values(response.data.files ?? {})[0]?.content;\n if (gistContent) {\n source = gistContent;\n }\n }\n\n if (initialTemplateId) {\n const template = templates.find((template) => template.id === initialTemplateId);\n if (template) {\n source = template.source;\n scriptName = scriptName || template.name;\n }\n }\n\n return { object: Script.make({ name: scriptName, source }) };\n }),\n }),\n OperationResolver.make({\n operation: TokenManagerOperation.AccessTokenCreated,\n handler: Effect.fnUntraced(function* ({ accessToken }) {\n const scriptTemplates = (defaultScriptsForIntegration[accessToken.source] ?? [])\n .map((id) => templates.find((t) => t.id === id))\n .filter(Predicate.isNotNullable);\n\n if (scriptTemplates.length > 0) {\n yield* Operation.invoke(LayoutOperation.UpdateDialog, {\n subject: DEPLOYMENT_DIALOG,\n blockAlign: 'start',\n state: true,\n props: { accessToken, scriptTemplates },\n });\n }\n }),\n }),\n ]);\n }),\n);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;AAIA,SAASA,eAAe;AACxB,YAAYC,YAAY;AACxB,YAAYC,eAAe;AAE3B,SAASC,cAAcC,kBAAkB;AACzC,SAASC,uBAAuB;AAChC,SAASC,cAAc;AACvB,SAASC,WAAWC,yBAAyB;AAC7C,SAASC,6BAA6B;AAOtC,IAAA,6BAAeC,WAAWC,WACjBC,kBAAW,aAAA;AAChB,SAAOF,WAAWG,YAAYC,aAAaC,mBAAmB;IAC5DA,kBAAkBC,KAAK;MACrBC,WAAWC,gBAAgBC;MAC3BC,SAAgBR,kBAAW,WAAW,EAAES,MAAMC,SAASC,kBAAiB,GAAE;AACxE,YAAIC,SAASC,UAAU,CAAA,EAAGD;AAC1B,YAAIE,aAAaL;AAEjB,cAAMM,SAASL,SAASM,MAAM,GAAA,EAAKC,GAAG,EAAC;AACvC,YAAIF,QAAQ;AAGV,gBAAMG,UAAU,IAAIC,QAAAA;AACpB,gBAAMC,WAAW,OAAcC,eAAQ,MACrCH,QAAQI,QAAQ,wBAAwB;YACtCC,SAASR;UACX,CAAA,CAAA;AAEF,gBAAMS,cAAcC,OAAOC,OAAON,SAASO,KAAKC,SAAS,CAAC,CAAA,EAAG,CAAA,GAAIC;AACjE,cAAIL,aAAa;AACfZ,qBAASY;UACX;QACF;AAEA,YAAIb,mBAAmB;AACrB,gBAAMmB,WAAWjB,UAAUkB,KAAK,CAACD,cAAaA,UAASE,OAAOrB,iBAAAA;AAC9D,cAAImB,UAAU;AACZlB,qBAASkB,SAASlB;AAClBE,yBAAaA,cAAcgB,SAASrB;UACtC;QACF;AAEA,eAAO;UAAEwB,QAAQC,OAAO9B,KAAK;YAAEK,MAAMK;YAAYF;UAAO,CAAA;QAAG;MAC7D,CAAA;IACF,CAAA;IACAT,kBAAkBC,KAAK;MACrBC,WAAW8B,sBAAsBC;MACjC5B,SAAgBR,kBAAW,WAAW,EAAEqC,YAAW,GAAE;AACnD,cAAMC,mBAAmBC,6BAA6BF,YAAYzB,MAAM,KAAK,CAAA,GAC1E4B,IAAI,CAACR,OAAOnB,UAAUkB,KAAK,CAACU,MAAMA,EAAET,OAAOA,EAAAA,CAAAA,EAC3CU,OAAiBC,uBAAa;AAEjC,YAAIL,gBAAgBM,SAAS,GAAG;AAC9B,iBAAOC,UAAUC,OAAOC,gBAAgBC,cAAc;YACpDC,SAASC;YACTC,YAAY;YACZC,OAAO;YACPC,OAAO;cAAEhB;cAAaC;YAAgB;UACxC,CAAA;QACF;MACF,CAAA;IACF,CAAA;GACD;AACH,CAAA,CAAA;",
|
|
6
|
+
"names": ["Octokit", "Effect", "Predicate", "Capabilities", "Capability", "LayoutOperation", "Script", "Operation", "OperationResolver", "TokenManagerOperation", "Capability", "makeModule", "fnUntraced", "contributes", "Capabilities", "OperationResolver", "make", "operation", "ScriptOperation", "CreateScript", "handler", "name", "gistUrl", "initialTemplateId", "source", "templates", "scriptName", "gistId", "split", "at", "octokit", "Octokit", "response", "promise", "request", "gist_id", "gistContent", "Object", "values", "data", "files", "content", "template", "find", "id", "object", "Script", "TokenManagerOperation", "AccessTokenCreated", "accessToken", "scriptTemplates", "defaultScriptsForIntegration", "map", "t", "filter", "isNotNullable", "length", "Operation", "invoke", "LayoutOperation", "UpdateDialog", "subject", "DEPLOYMENT_DIALOG", "blockAlign", "state", "props"]
|
|
7
|
+
}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DEPLOYMENT_DIALOG
|
|
3
|
+
} from "./chunk-ZYU2LP6U.mjs";
|
|
1
4
|
import {
|
|
2
5
|
DeploymentDialog,
|
|
3
6
|
NotebookContainer,
|
|
@@ -6,20 +9,16 @@ import {
|
|
|
6
9
|
ScriptPluginSettings,
|
|
7
10
|
ScriptProperties,
|
|
8
11
|
TestContainer
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import {
|
|
11
|
-
DEPLOYMENT_DIALOG
|
|
12
|
-
} from "./chunk-BU6CGVU2.mjs";
|
|
12
|
+
} from "./chunk-Q66L5EUR.mjs";
|
|
13
13
|
import {
|
|
14
14
|
useCompiler
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-MUEVLYXJ.mjs";
|
|
16
|
+
import "./chunk-G3XIOLLI.mjs";
|
|
16
17
|
import {
|
|
17
18
|
Notebook_exports,
|
|
18
19
|
ScriptCapabilities
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-BKGEAUUH.mjs";
|
|
22
|
-
import "./chunk-I7CSE6T3.mjs";
|
|
20
|
+
} from "./chunk-6IXFDTAI.mjs";
|
|
21
|
+
import "./chunk-J7PGML5B.mjs";
|
|
23
22
|
import {
|
|
24
23
|
meta
|
|
25
24
|
} from "./chunk-WYR4QHPE.mjs";
|
|
@@ -35,7 +34,7 @@ import { InvocationTraceContainer } from "@dxos/devtools";
|
|
|
35
34
|
import { Obj } from "@dxos/echo";
|
|
36
35
|
import { Script } from "@dxos/functions";
|
|
37
36
|
import { getSpace } from "@dxos/react-client/echo";
|
|
38
|
-
import {
|
|
37
|
+
import { Panel } from "@dxos/react-ui";
|
|
39
38
|
var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Capabilities.ReactSurface, [
|
|
40
39
|
Surface.create({
|
|
41
40
|
id: `${meta.id}/plugin-settings`,
|
|
@@ -117,14 +116,16 @@ var react_surface_default = Capability.makeModule(() => Effect.succeed(Capabilit
|
|
|
117
116
|
component: ({ data, role }) => {
|
|
118
117
|
const space = getSpace(data.companionTo);
|
|
119
118
|
const queueDxn = space?.properties.invocationTraceQueue?.dxn;
|
|
120
|
-
return /* @__PURE__ */ React.createElement(
|
|
119
|
+
return /* @__PURE__ */ React.createElement(Panel.Root, {
|
|
121
120
|
role
|
|
121
|
+
}, /* @__PURE__ */ React.createElement(Panel.Content, {
|
|
122
|
+
asChild: true
|
|
122
123
|
}, /* @__PURE__ */ React.createElement(InvocationTraceContainer, {
|
|
123
124
|
db: space?.db,
|
|
124
125
|
queueDxn,
|
|
125
126
|
target: data.companionTo,
|
|
126
127
|
detailAxis: "block"
|
|
127
|
-
}));
|
|
128
|
+
})));
|
|
128
129
|
}
|
|
129
130
|
}),
|
|
130
131
|
Surface.create({
|
|
@@ -137,4 +138,4 @@ var react_surface_default = Capability.makeModule(() => Effect.succeed(Capabilit
|
|
|
137
138
|
export {
|
|
138
139
|
react_surface_default as default
|
|
139
140
|
};
|
|
140
|
-
//# sourceMappingURL=react-surface-
|
|
141
|
+
//# sourceMappingURL=react-surface-26P6HAFD.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface/react-surface.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface, useAtomCapability, useSettingsState } from '@dxos/app-framework/ui';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { InvocationTraceContainer } from '@dxos/devtools';\nimport { Obj } from '@dxos/echo';\nimport { Script } from '@dxos/functions';\nimport { getSpace } from '@dxos/react-client/echo';\nimport { Panel } from '@dxos/react-ui';\nimport { type AccessToken } from '@dxos/types';\n\nimport { DEPLOYMENT_DIALOG } from '../../constants';\nimport {\n DeploymentDialog,\n NotebookContainer,\n ScriptContainer,\n ScriptObjectSettings,\n ScriptPluginSettings,\n ScriptProperties,\n TestContainer,\n} from '../../containers';\nimport { useCompiler } from '../../hooks';\nimport { meta } from '../../meta';\nimport { Notebook, ScriptCapabilities, type ScriptSettings } from '../../types';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: `${meta.id}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: AppCapabilities.Settings } =>\n AppCapabilities.isSettings(data.subject) && data.subject.prefix === meta.id,\n component: ({ data: { subject } }) => {\n const { settings, updateSettings } = useSettingsState<ScriptSettings>(subject.atom);\n return <ScriptPluginSettings settings={settings} onSettingsChange={updateSettings} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/script/article`,\n role: ['article', 'section'],\n filter: (data): data is { subject: Script.Script } => Obj.instanceOf(Script.Script, data.subject),\n component: ({ data, role }) => {\n const compiler = useCompiler();\n const settings = useAtomCapability(ScriptCapabilities.Settings);\n // TODO(wittjosiah): Why? The editor should be allow to render even if the environment is not ready.\n if (!compiler?.environment) {\n return null;\n }\n\n return <ScriptContainer role={role} subject={data.subject} settings={settings} env={compiler?.environment} />;\n },\n }),\n Surface.create({\n id: `${meta.id}/notebook/article`,\n role: 'article',\n filter: (data): data is { subject: Notebook.Notebook } => Obj.instanceOf(Notebook.Notebook, data.subject),\n component: ({ data, role }) => {\n const compiler = useCompiler();\n return <NotebookContainer role={role} subject={data.subject} env={compiler?.environment} />;\n },\n }),\n // TODO(burdon): Standardize PluginSettings vs ObjectSettings.\n // TODO(burdon): Why is ScriptProperties different from ScriptObjectSettings?\n Surface.create({\n id: `${meta.id}/companion/base-settings`,\n role: 'base-object-settings',\n filter: (data): data is { subject: Script.Script } => Obj.instanceOf(Script.Script, data.subject),\n component: ({ data }) => <ScriptProperties object={data.subject} />,\n }),\n Surface.create({\n id: `${meta.id}/companion/settings`,\n role: 'object-settings',\n filter: (data): data is { subject: Script.Script } => Obj.instanceOf(Script.Script, data.subject),\n component: ({ data }) => <ScriptObjectSettings object={data.subject} />,\n }),\n Surface.create({\n id: `${meta.id}/companion/execute`,\n role: 'article',\n filter: (data): data is { companionTo: Script.Script } =>\n Obj.instanceOf(Script.Script, data.companionTo) && data.subject === 'execute',\n component: ({ data, role }) => <TestContainer script={data.companionTo} role={role} />,\n }),\n Surface.create({\n id: `${meta.id}/companion/logs`,\n role: 'article',\n filter: (data): data is { companionTo: Script.Script } =>\n Obj.instanceOf(Script.Script, data.companionTo) && data.subject === 'logs',\n component: ({ data, role }) => {\n const space = getSpace(data.companionTo);\n const queueDxn = space?.properties.invocationTraceQueue?.dxn;\n return (\n <Panel.Root role={role}>\n <Panel.Content asChild>\n <InvocationTraceContainer\n db={space?.db}\n queueDxn={queueDxn}\n target={data.companionTo}\n detailAxis='block'\n />\n </Panel.Content>\n </Panel.Root>\n );\n },\n }),\n Surface.create({\n id: DEPLOYMENT_DIALOG,\n role: 'dialog',\n filter: (data): data is { props: { accessToken: AccessToken.AccessToken; scriptTemplates: any } } =>\n data.component === DEPLOYMENT_DIALOG,\n component: ({ data }) => <DeploymentDialog {...data.props} />,\n }),\n ]),\n ),\n);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Effect", "React", "Capabilities", "Capability", "Surface", "useAtomCapability", "useSettingsState", "AppCapabilities", "InvocationTraceContainer", "Obj", "Script", "getSpace", "Panel", "Capability", "makeModule", "succeed", "contributes", "Capabilities", "ReactSurface", "Surface", "create", "id", "meta", "role", "filter", "data", "AppCapabilities", "isSettings", "subject", "prefix", "component", "settings", "updateSettings", "useSettingsState", "atom", "ScriptPluginSettings", "onSettingsChange", "Obj", "instanceOf", "Script", "compiler", "useCompiler", "useAtomCapability", "ScriptCapabilities", "Settings", "environment", "ScriptContainer", "env", "Notebook", "NotebookContainer", "ScriptProperties", "object", "ScriptObjectSettings", "companionTo", "TestContainer", "script", "space", "getSpace", "queueDxn", "properties", "invocationTraceQueue", "dxn", "Panel", "Root", "Content", "asChild", "InvocationTraceContainer", "db", "target", "detailAxis", "DEPLOYMENT_DIALOG", "DeploymentDialog", "props"]
|
|
7
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ScriptCapabilities,
|
|
3
3
|
ScriptSettings
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-6IXFDTAI.mjs";
|
|
5
|
+
import "./chunk-J7PGML5B.mjs";
|
|
6
6
|
import {
|
|
7
7
|
meta
|
|
8
8
|
} from "./chunk-WYR4QHPE.mjs";
|
|
@@ -33,4 +33,4 @@ var settings_default = Capability.makeModule(() => Effect.sync(() => {
|
|
|
33
33
|
export {
|
|
34
34
|
settings_default as default
|
|
35
35
|
};
|
|
36
|
-
//# sourceMappingURL=settings-
|
|
36
|
+
//# sourceMappingURL=settings-76UM7442.mjs.map
|
|
@@ -4,8 +4,8 @@ import {
|
|
|
4
4
|
ScriptEvents,
|
|
5
5
|
ScriptOperation,
|
|
6
6
|
ScriptSettings
|
|
7
|
-
} from "../chunk-
|
|
8
|
-
import "../chunk-
|
|
7
|
+
} from "../chunk-6IXFDTAI.mjs";
|
|
8
|
+
import "../chunk-J7PGML5B.mjs";
|
|
9
9
|
import "../chunk-WYR4QHPE.mjs";
|
|
10
10
|
import "../chunk-J5LGTIGS.mjs";
|
|
11
11
|
export {
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
useCreateAndDeployScriptTemplates
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ZDJ2FI7E.mjs";
|
|
5
|
+
import "./chunk-5BG7OJGQ.mjs";
|
|
6
|
+
import "./chunk-WWD5LUU6.mjs";
|
|
7
|
+
import "./chunk-QG6ANK4B.mjs";
|
|
5
8
|
import {
|
|
6
9
|
meta
|
|
7
10
|
} from "./chunk-5HSJPAK7.mjs";
|
|
11
|
+
import "./chunk-HSLMI22Q.mjs";
|
|
8
12
|
|
|
9
|
-
// src/
|
|
13
|
+
// src/containers/DeploymentDialog/DeploymentDialog.tsx
|
|
10
14
|
import React, { useEffect, useMemo } from "react";
|
|
11
15
|
import { useOperationInvoker } from "@dxos/app-framework/ui";
|
|
12
16
|
import { LayoutOperation } from "@dxos/app-toolkit";
|
|
13
17
|
import { getSpace } from "@dxos/react-client/echo";
|
|
14
18
|
import { Button, Dialog, IconButton, useTranslation } from "@dxos/react-ui";
|
|
15
|
-
var DEPLOYMENT_DIALOG = `${meta.id}/deployment/dialog`;
|
|
16
19
|
var DeploymentDialog = ({ accessToken, scriptTemplates }) => {
|
|
17
20
|
const { t } = useTranslation(meta.id);
|
|
18
21
|
const space = useMemo(() => getSpace(accessToken), [
|
|
@@ -100,11 +103,11 @@ var DeploymentDialog = ({ accessToken, scriptTemplates }) => {
|
|
|
100
103
|
variant: "ghost"
|
|
101
104
|
}))), /* @__PURE__ */ React.createElement("div", {
|
|
102
105
|
role: "none",
|
|
103
|
-
className: "
|
|
106
|
+
className: "py-4"
|
|
104
107
|
}, /* @__PURE__ */ React.createElement("p", null, t("deployment dialog scripts found message", {
|
|
105
108
|
count: scriptTemplates.length
|
|
106
109
|
})), /* @__PURE__ */ React.createElement("ul", {
|
|
107
|
-
className: "
|
|
110
|
+
className: "pt-2"
|
|
108
111
|
}, scriptTemplates.map((template) => {
|
|
109
112
|
return /* @__PURE__ */ React.createElement("li", {
|
|
110
113
|
key: template.id
|
|
@@ -128,11 +131,9 @@ var DeploymentDialog = ({ accessToken, scriptTemplates }) => {
|
|
|
128
131
|
}, t("deployment dialog skip button label")))));
|
|
129
132
|
};
|
|
130
133
|
|
|
131
|
-
// src/
|
|
134
|
+
// src/containers/DeploymentDialog/index.ts
|
|
132
135
|
var DeploymentDialog_default = DeploymentDialog;
|
|
133
|
-
|
|
134
136
|
export {
|
|
135
|
-
|
|
136
|
-
DeploymentDialog_default
|
|
137
|
+
DeploymentDialog_default as default
|
|
137
138
|
};
|
|
138
|
-
//# sourceMappingURL=
|
|
139
|
+
//# sourceMappingURL=DeploymentDialog-ZHPHEV2H.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/containers/DeploymentDialog/DeploymentDialog.tsx", "../../../src/containers/DeploymentDialog/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useEffect, useMemo } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { getSpace } from '@dxos/react-client/echo';\nimport { Button, Dialog, IconButton, useTranslation } from '@dxos/react-ui';\nimport { type AccessToken } from '@dxos/types';\n\nimport { useCreateAndDeployScriptTemplates } from '../../hooks';\nimport { meta } from '../../meta';\nimport { type Template } from '../../templates';\n\n// TODO(ZaymonFC):\n// - Show activity and feedback to the user.\n// - Only take an array of templateIds and get the name from the data.\n// - Pending / onError states.\n\nexport type DeploymentDialogProps = {\n accessToken: AccessToken.AccessToken;\n scriptTemplates: Template[];\n};\n\nexport const DeploymentDialog = ({ accessToken, scriptTemplates }: DeploymentDialogProps) => {\n const { t } = useTranslation(meta.id);\n const space = useMemo(() => getSpace(accessToken), [accessToken]);\n\n // TODO(ZaymonFC): Thinking further. All of this should get moved to intents to run async in the background.\n // Deployment shouldn't be tied to the lifecycle of the dialogue component.\n const { handleCreateAndDeployScripts, status } = useCreateAndDeployScriptTemplates(space, scriptTemplates);\n const { invokePromise } = useOperationInvoker();\n\n useEffect(() => {\n if (status === 'success') {\n // TODO(ZaymonFC): We can probably re-use this toast for normal script deployment.\n void invokePromise(LayoutOperation.AddToast, {\n id: `${meta.id}/deployment-success`,\n icon: 'ph--check--regular',\n duration: Infinity,\n title: ['script deployment toast label', { ns: meta.id, count: scriptTemplates.length }],\n description: ['script deployment toast description', { ns: meta.id, count: scriptTemplates.length }],\n closeLabel: ['script deployment toast close label', { ns: meta.id, count: scriptTemplates.length }],\n });\n void invokePromise(LayoutOperation.UpdateDialog, { state: false });\n }\n if (status === 'error') {\n void invokePromise(LayoutOperation.UpdateDialog, { state: false });\n void invokePromise(LayoutOperation.AddToast, {\n id: `${meta.id}/deployment-error`,\n icon: 'ph--warning--regular',\n duration: Infinity,\n title: ['script deployment error toast label', { ns: meta.id, count: scriptTemplates.length }],\n description: ['script deployment error toast description', { ns: meta.id, count: scriptTemplates.length }],\n closeLabel: ['script deployment error toast close label', { ns: meta.id, count: scriptTemplates.length }],\n });\n }\n }, [status, invokePromise]);\n\n return (\n <Dialog.Content>\n <div className='flex justify-between items-center'>\n <Dialog.Title>{t('deployment dialog title')}</Dialog.Title>\n <Dialog.Close asChild>\n <IconButton icon='ph--x--regular' size={4} label='Close' iconOnly density='fine' variant='ghost' />\n </Dialog.Close>\n </div>\n <div role='none' className='py-4'>\n {/* TODO: Implement deployment logic and UI. */}\n <p>\n {t('deployment dialog scripts found message', {\n count: scriptTemplates.length,\n })}\n </p>\n <ul className='pt-2'>\n {scriptTemplates.map((template) => {\n return <li key={template.id}>{template.name}</li>;\n })}\n </ul>\n </div>\n <div role='none' className='flex flex-row-reverse gap-1'>\n <Button variant='primary' onClick={handleCreateAndDeployScripts} disabled={status === 'pending'}>\n {status === 'pending'\n ? t('deployment dialog deploy functions pending button label', {\n count: scriptTemplates.length,\n })\n : t('deployment dialog deploy functions button label', {\n count: scriptTemplates.length,\n })}\n </Button>\n <Dialog.Close asChild disabled={status === 'pending'}>\n <Button disabled={status === 'pending'}>{t('deployment dialog skip button label')}</Button>\n </Dialog.Close>\n </div>\n </Dialog.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { DeploymentDialog } from './DeploymentDialog';\n\nexport default DeploymentDialog;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "useEffect", "useMemo", "useOperationInvoker", "LayoutOperation", "getSpace", "Button", "Dialog", "IconButton", "useTranslation", "DeploymentDialog", "accessToken", "scriptTemplates", "t", "useTranslation", "meta", "id", "space", "useMemo", "getSpace", "handleCreateAndDeployScripts", "status", "useCreateAndDeployScriptTemplates", "invokePromise", "useOperationInvoker", "useEffect", "LayoutOperation", "AddToast", "icon", "duration", "Infinity", "title", "ns", "count", "length", "description", "closeLabel", "UpdateDialog", "state", "Dialog", "Content", "div", "className", "Title", "Close", "asChild", "IconButton", "size", "label", "iconOnly", "density", "variant", "role", "p", "ul", "map", "template", "li", "key", "name", "Button", "onClick", "disabled", "DeploymentDialog"]
|
|
7
|
+
}
|
|
@@ -2,20 +2,24 @@ import { createRequire } from 'node:module';const require = createRequire(import
|
|
|
2
2
|
import {
|
|
3
3
|
NotebookMenu,
|
|
4
4
|
NotebookStack
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-H46R2RS5.mjs";
|
|
6
|
+
import "./chunk-JGN7TDJH.mjs";
|
|
7
|
+
import "./chunk-ZDJ2FI7E.mjs";
|
|
8
|
+
import "./chunk-5BG7OJGQ.mjs";
|
|
9
|
+
import "./chunk-WWD5LUU6.mjs";
|
|
10
|
+
import "./chunk-QG6ANK4B.mjs";
|
|
7
11
|
import {
|
|
8
12
|
meta
|
|
9
13
|
} from "./chunk-5HSJPAK7.mjs";
|
|
10
14
|
import "./chunk-HSLMI22Q.mjs";
|
|
11
15
|
|
|
12
|
-
// src/
|
|
16
|
+
// src/containers/NotebookContainer/NotebookContainer.tsx
|
|
13
17
|
import { RegistryContext } from "@effect-atom/atom-react";
|
|
14
18
|
import * as Cause from "effect/Cause";
|
|
15
19
|
import * as Effect from "effect/Effect";
|
|
16
20
|
import * as Exit from "effect/Exit";
|
|
17
21
|
import React, { useCallback, useContext, useMemo, useState } from "react";
|
|
18
|
-
import {
|
|
22
|
+
import { AgentFunctions } from "@dxos/assistant-toolkit";
|
|
19
23
|
import { Blueprint, Prompt } from "@dxos/blueprints";
|
|
20
24
|
import { Filter, Obj, Query, Ref } from "@dxos/echo";
|
|
21
25
|
import { QueryBuilder } from "@dxos/echo-query";
|
|
@@ -24,10 +28,9 @@ import { invariant as invariant2 } from "@dxos/invariant";
|
|
|
24
28
|
import { log as log2 } from "@dxos/log";
|
|
25
29
|
import { useComputeRuntimeCallback } from "@dxos/plugin-automation";
|
|
26
30
|
import { Graph } from "@dxos/plugin-explorer/types";
|
|
27
|
-
import { DropdownMenu, IconButton, Toolbar, useTranslation } from "@dxos/react-ui";
|
|
28
|
-
import { Layout } from "@dxos/react-ui";
|
|
31
|
+
import { DropdownMenu, IconButton, Panel, Toolbar, useTranslation } from "@dxos/react-ui";
|
|
29
32
|
import { useAttention } from "@dxos/react-ui-attention";
|
|
30
|
-
import { Text,
|
|
33
|
+
import { Text, ViewModel } from "@dxos/schema";
|
|
31
34
|
import { isNonNullable } from "@dxos/util";
|
|
32
35
|
|
|
33
36
|
// src/notebook/compute-graph.ts
|
|
@@ -570,10 +573,11 @@ var ComputeGraph = class {
|
|
|
570
573
|
}
|
|
571
574
|
};
|
|
572
575
|
|
|
573
|
-
// src/
|
|
574
|
-
var __dxlog_file3 = "/__w/dxos/dxos/packages/plugins/plugin-script/src/
|
|
576
|
+
// src/containers/NotebookContainer/NotebookContainer.tsx
|
|
577
|
+
var __dxlog_file3 = "/__w/dxos/dxos/packages/plugins/plugin-script/src/containers/NotebookContainer/NotebookContainer.tsx";
|
|
575
578
|
var INCLUDE_BLUEPRINTS = [
|
|
576
579
|
"dxos.org/blueprint/assistant",
|
|
580
|
+
"dxos.org/blueprint/database",
|
|
577
581
|
"dxos.org/blueprint/markdown"
|
|
578
582
|
];
|
|
579
583
|
var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
@@ -590,7 +594,7 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
590
594
|
const handleExecQueries = useCallback(async () => {
|
|
591
595
|
invariant2(db, void 0, {
|
|
592
596
|
F: __dxlog_file3,
|
|
593
|
-
L:
|
|
597
|
+
L: 55,
|
|
594
598
|
S: void 0,
|
|
595
599
|
A: [
|
|
596
600
|
"db",
|
|
@@ -607,7 +611,7 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
607
611
|
const ast = Query.select(filter).ast;
|
|
608
612
|
const graph2 = cell.graph?.target;
|
|
609
613
|
if (!graph2) {
|
|
610
|
-
const { view } = await
|
|
614
|
+
const { view } = await ViewModel.makeFromDatabase({
|
|
611
615
|
db
|
|
612
616
|
});
|
|
613
617
|
const newGraph = Graph.make({
|
|
@@ -651,7 +655,7 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
651
655
|
const handleExecPrompts = useComputeRuntimeCallback(db?.spaceId, Effect.fnUntraced(function* () {
|
|
652
656
|
invariant2(graph, void 0, {
|
|
653
657
|
F: __dxlog_file3,
|
|
654
|
-
L:
|
|
658
|
+
L: 99,
|
|
655
659
|
S: this,
|
|
656
660
|
A: [
|
|
657
661
|
"graph",
|
|
@@ -689,7 +693,7 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
689
693
|
const handleRearrange = useCallback((source, target) => {
|
|
690
694
|
invariant2(notebook, void 0, {
|
|
691
695
|
F: __dxlog_file3,
|
|
692
|
-
L:
|
|
696
|
+
L: 132,
|
|
693
697
|
S: void 0,
|
|
694
698
|
A: [
|
|
695
699
|
"notebook",
|
|
@@ -712,7 +716,7 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
712
716
|
const handleCellInsert = useCallback(async (type, after) => {
|
|
713
717
|
invariant2(notebook, void 0, {
|
|
714
718
|
F: __dxlog_file3,
|
|
715
|
-
L:
|
|
719
|
+
L: 149,
|
|
716
720
|
S: void 0,
|
|
717
721
|
A: [
|
|
718
722
|
"notebook",
|
|
@@ -753,7 +757,7 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
753
757
|
const handleCellDelete = useCallback((id) => {
|
|
754
758
|
invariant2(notebook, void 0, {
|
|
755
759
|
F: __dxlog_file3,
|
|
756
|
-
L:
|
|
760
|
+
L: 181,
|
|
757
761
|
S: void 0,
|
|
758
762
|
A: [
|
|
759
763
|
"notebook",
|
|
@@ -769,9 +773,11 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
769
773
|
}, [
|
|
770
774
|
notebook
|
|
771
775
|
]);
|
|
772
|
-
return /* @__PURE__ */ React.createElement(
|
|
776
|
+
return /* @__PURE__ */ React.createElement(Panel.Root, {
|
|
773
777
|
role,
|
|
774
|
-
|
|
778
|
+
className: "dx-article"
|
|
779
|
+
}, /* @__PURE__ */ React.createElement(Panel.Toolbar, {
|
|
780
|
+
asChild: true
|
|
775
781
|
}, /* @__PURE__ */ React.createElement(Toolbar.Root, {
|
|
776
782
|
disabled: !hasAttention,
|
|
777
783
|
textBlockWidth: true
|
|
@@ -789,11 +795,9 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
789
795
|
label: t("compute label"),
|
|
790
796
|
classNames: "text-green-500",
|
|
791
797
|
onClick: handleCompute
|
|
792
|
-
})), /* @__PURE__ */ React.createElement(
|
|
793
|
-
|
|
794
|
-
className: "flex bs-full overflow-hidden -mis-[1px] -mie-[1px]"
|
|
798
|
+
}))), /* @__PURE__ */ React.createElement(Panel.Content, {
|
|
799
|
+
asChild: true
|
|
795
800
|
}, /* @__PURE__ */ React.createElement(NotebookStack, {
|
|
796
|
-
classNames: "container-max-width border-l border-r border-subduedSeparator",
|
|
797
801
|
db,
|
|
798
802
|
notebook,
|
|
799
803
|
graph,
|
|
@@ -804,7 +808,6 @@ var NotebookContainer = ({ role, subject: notebook, env }) => {
|
|
|
804
808
|
onCellDelete: handleCellDelete
|
|
805
809
|
})));
|
|
806
810
|
};
|
|
807
|
-
var NotebookContainer_default = NotebookContainer;
|
|
808
811
|
var runPrompt = Effect.fn(function* ({ prompt, input, onResult }) {
|
|
809
812
|
const inputData = {
|
|
810
813
|
prompt,
|
|
@@ -817,13 +820,13 @@ var runPrompt = Effect.fn(function* ({ prompt, input, onResult }) {
|
|
|
817
820
|
data: {}
|
|
818
821
|
}
|
|
819
822
|
});
|
|
820
|
-
const result = yield* FunctionInvocationService.invokeFunction(
|
|
823
|
+
const result = yield* FunctionInvocationService.invokeFunction(AgentFunctions.Prompt, inputData).pipe(Effect.provide(trace.invocationTraceQueue ? TracingService.layerInvocation(trace) : TracingService.layerNoop), Effect.exit);
|
|
821
824
|
Exit.match(result, {
|
|
822
825
|
onFailure: (cause) => {
|
|
823
826
|
const error = Cause.prettyErrors(cause)[0];
|
|
824
827
|
log2.error(error.message, error.cause ?? error.stack, {
|
|
825
828
|
F: __dxlog_file3,
|
|
826
|
-
L:
|
|
829
|
+
L: 255,
|
|
827
830
|
S: this,
|
|
828
831
|
C: (f, a) => f(...a)
|
|
829
832
|
});
|
|
@@ -839,8 +842,10 @@ var runPrompt = Effect.fn(function* ({ prompt, input, onResult }) {
|
|
|
839
842
|
exception: Exit.isFailure(result) ? Cause.prettyErrors(result.cause)[0] : void 0
|
|
840
843
|
});
|
|
841
844
|
});
|
|
845
|
+
|
|
846
|
+
// src/containers/NotebookContainer/index.ts
|
|
847
|
+
var NotebookContainer_default = NotebookContainer;
|
|
842
848
|
export {
|
|
843
|
-
NotebookContainer,
|
|
844
849
|
NotebookContainer_default as default
|
|
845
850
|
};
|
|
846
|
-
//# sourceMappingURL=NotebookContainer-
|
|
851
|
+
//# sourceMappingURL=NotebookContainer-ZLWTNMQA.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/containers/NotebookContainer/NotebookContainer.tsx", "../../../src/notebook/compute-graph.ts", "../../../src/notebook/eval.ts", "../../../src/notebook/vfs-parser.ts", "../../../src/containers/NotebookContainer/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { RegistryContext } from '@effect-atom/atom-react';\nimport * as Cause from 'effect/Cause';\nimport * as Effect from 'effect/Effect';\nimport * as Exit from 'effect/Exit';\nimport type * as Types from 'effect/Types';\nimport React, { useCallback, useContext, useMemo, useState } from 'react';\n\nimport { type SurfaceComponentProps } from '@dxos/app-toolkit/ui';\nimport { AgentFunctions } from '@dxos/assistant-toolkit';\nimport { Blueprint, Prompt } from '@dxos/blueprints';\nimport { Filter, Obj, Query, Ref } from '@dxos/echo';\nimport { QueryBuilder } from '@dxos/echo-query';\nimport { type FunctionDefinition, FunctionInvocationService, TracingService } from '@dxos/functions';\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\nimport { useComputeRuntimeCallback } from '@dxos/plugin-automation';\nimport { Graph } from '@dxos/plugin-explorer/types';\nimport { DropdownMenu, IconButton, Panel, Toolbar, useTranslation } from '@dxos/react-ui';\nimport { useAttention } from '@dxos/react-ui-attention';\nimport { Text, ViewModel } from '@dxos/schema';\nimport { isNonNullable } from '@dxos/util';\n\nimport { NotebookMenu, NotebookStack, type NotebookStackProps, type TypescriptEditorProps } from '../../components';\nimport { meta } from '../../meta';\nimport { ComputeGraph } from '../../notebook';\nimport { type Notebook } from '../../types';\n\nconst INCLUDE_BLUEPRINTS = [\n 'dxos.org/blueprint/assistant',\n 'dxos.org/blueprint/database',\n 'dxos.org/blueprint/markdown',\n];\n\n// TODO(burdon): Support calling named deployed functions (as with sheet).\n\nexport type NotebookContainerProps = SurfaceComponentProps<Notebook.Notebook, Pick<TypescriptEditorProps, 'env'>>;\n\nexport const NotebookContainer = ({ role, subject: notebook, env }: NotebookContainerProps) => {\n const { t } = useTranslation(meta.id);\n const registry = useContext(RegistryContext);\n const db = notebook && Obj.getDatabase(notebook);\n const attendableId = notebook ? Obj.getDXN(notebook).toString() : '';\n const { hasAttention } = useAttention(attendableId);\n\n // TODO(burdon): Consolidate execution and state (with graph).\n // Generalize ComputeGraph evaluation function (using effects).\n const graph = useMemo(() => notebook && new ComputeGraph(notebook, registry), [notebook, registry]);\n\n const [queryValues, setQueryValues] = useState<Record<string, any>>({});\n const handleExecQueries = useCallback(async () => {\n invariant(db);\n\n const builder = new QueryBuilder();\n for (const cell of notebook?.cells ?? []) {\n if (cell.type === 'query') {\n if (cell.source?.target) {\n const source = cell.source.target.content;\n const { name, filter } = builder.build(source);\n if (filter) {\n const ast = Query.select(filter).ast;\n const graph = cell.graph?.target;\n if (!graph) {\n const { view } = await ViewModel.makeFromDatabase({ db });\n const newGraph = Graph.make({ query: { ast }, view });\n Obj.change(notebook!, (n) => {\n const c = n.cells.find((c) => c.id === cell.id);\n if (c) {\n c.graph = Ref.make(newGraph);\n c.name = name;\n }\n });\n } else {\n Obj.change(graph, (g) => {\n g.query.ast = ast as Obj.Mutable<typeof ast>;\n });\n }\n }\n }\n\n if (cell.name && cell.graph?.target) {\n const graph = Obj.getSnapshot(cell.graph?.target);\n const query = Query.fromAst(graph.query.ast);\n const objects = await db.query(query).run();\n const objectIds = objects?.map((obj) => obj.id);\n setQueryValues((prev) => ({ ...prev, [cell.name!]: objectIds }));\n }\n }\n }\n }, [db, notebook, graph]);\n\n const [promptResults, setPromptResults] = useState<Record<string, string>>({});\n const handleExecPrompts = useComputeRuntimeCallback(\n db?.spaceId,\n Effect.fnUntraced(function* () {\n invariant(graph);\n\n const prompts =\n notebook?.cells\n .filter((cell) => cell.type === 'prompt')\n .map((cell) => cell.prompt)\n .filter(isNonNullable) ?? [];\n\n for (const prompt of prompts) {\n yield* runPrompt({\n prompt,\n input: { ...queryValues, ...graph.getValuesByName() },\n onResult: (result) =>\n setPromptResults((prev) => ({\n ...prev,\n [prompt.dxn.toString()]: result,\n })),\n });\n }\n }),\n [notebook, graph, queryValues],\n );\n\n // TODO(burdon): Cache values in context (preserve when switched).\n const handleCompute = useCallback(async () => {\n // TODO(burdon): Generalize executors (dependencies).\n await graph?.evaluate();\n await handleExecQueries();\n await handleExecPrompts();\n }, [graph, handleExecQueries, handleExecPrompts]);\n\n const handleRearrange = useCallback<NonNullable<NotebookStackProps['onRearrange']>>(\n (source, target) => {\n invariant(notebook);\n const from = notebook.cells.findIndex((cell) => cell.id === source.id);\n const to = notebook.cells.findIndex((cell) => cell.id === target.id);\n if (from != null && to != null) {\n Obj.change(notebook, (n) => {\n const cell = n.cells.splice(from, 1)[0];\n if (cell) {\n n.cells.splice(to, 0, cell);\n }\n });\n }\n },\n [notebook],\n );\n\n const handleCellInsert = useCallback<NonNullable<NotebookStackProps['onCellInsert']>>(\n async (type, after) => {\n invariant(notebook);\n const cell: Types.Mutable<Notebook.Cell> = { id: crypto.randomUUID(), type };\n switch (type) {\n case 'markdown':\n case 'script':\n case 'query': {\n cell.source = Ref.make(Text.make());\n break;\n }\n\n case 'prompt': {\n if (db) {\n const objects = await db.query(Query.select(Filter.type(Blueprint.Blueprint))).run();\n const blueprints = objects\n .filter((blueprint) => INCLUDE_BLUEPRINTS.includes(blueprint.key))\n .map((blueprint) => Ref.make(blueprint));\n cell.prompt = Ref.make(Prompt.make({ instructions: '', blueprints }));\n }\n break;\n }\n }\n\n const idx = after ? notebook.cells.findIndex((cell) => cell.id === after) : notebook.cells.length;\n Obj.change(notebook, (n) => {\n n.cells.splice(idx, 0, cell);\n });\n },\n [db, notebook],\n );\n\n const handleCellDelete = useCallback<NonNullable<NotebookStackProps['onCellDelete']>>(\n (id) => {\n invariant(notebook);\n const idx = notebook.cells.findIndex((cell) => cell.id === id);\n if (idx !== -1) {\n Obj.change(notebook, (n) => {\n n.cells.splice(idx, 1);\n });\n }\n },\n [notebook],\n );\n\n return (\n <Panel.Root role={role} className='dx-article'>\n <Panel.Toolbar asChild>\n <Toolbar.Root disabled={!hasAttention} textBlockWidth>\n <DropdownMenu.Root>\n <DropdownMenu.Trigger asChild>\n <IconButton icon='ph--plus--regular' iconOnly label={t('notebook cell insert label')} />\n </DropdownMenu.Trigger>\n <NotebookMenu onCellInsert={handleCellInsert} />\n </DropdownMenu.Root>\n <Toolbar.IconButton\n icon='ph--play--fill'\n iconOnly\n label={t('compute label')}\n classNames='text-green-500'\n onClick={handleCompute}\n />\n </Toolbar.Root>\n </Panel.Toolbar>\n <Panel.Content asChild>\n <NotebookStack\n db={db}\n notebook={notebook}\n graph={graph}\n env={env}\n promptResults={promptResults}\n onRearrange={handleRearrange}\n onCellInsert={handleCellInsert}\n onCellDelete={handleCellDelete}\n />\n </Panel.Content>\n </Panel.Root>\n );\n};\n\n// TODO(wittjosiah): Factor out. Copied from PromptArticle in plugin-assistant.\nconst runPrompt = Effect.fn(function* ({\n prompt,\n input,\n onResult,\n}: {\n prompt: Ref.Ref<Prompt.Prompt>;\n input: Record<string, any>;\n onResult: (result: string) => void;\n}) {\n const inputData: FunctionDefinition.Input<typeof AgentFunctions.Prompt> = { prompt, input };\n const tracer = yield* TracingService;\n const trace = yield* tracer.traceInvocationStart({\n target: undefined,\n payload: {\n data: {},\n },\n });\n\n // Invoke the function.\n const result = yield* FunctionInvocationService.invokeFunction(AgentFunctions.Prompt, inputData).pipe(\n Effect.provide(trace.invocationTraceQueue ? TracingService.layerInvocation(trace) : TracingService.layerNoop),\n Effect.exit,\n );\n\n Exit.match(result, {\n onFailure: (cause) => {\n const error = Cause.prettyErrors(cause)[0];\n log.error(error.message, error.cause ?? error.stack);\n onResult(error.message);\n },\n onSuccess: (result: any) => {\n onResult(result.note);\n },\n });\n\n yield* tracer.traceInvocationEnd({\n trace,\n // TODO(dmaretskyi): Might miss errors.\n exception: Exit.isFailure(result) ? Cause.prettyErrors(result.cause)[0] : undefined,\n });\n});\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Atom, type Registry } from '@effect-atom/atom-react';\n\nimport { log } from '@dxos/log';\n\nimport { type Notebook } from '../types';\n\nimport { evalScript } from './eval';\nimport { type ParsedExpression, VirtualTypeScriptParser } from './vfs-parser';\n\n/**\n * Compute graph that evaluates the notebook cells.\n */\n// TODO(burdon): Reconcile with @dxos/conductor.\nexport class ComputeGraph {\n private readonly _parser = new VirtualTypeScriptParser();\n\n private _expressionsAtom = Atom.make<Record<string, ParsedExpression>>({});\n private _valuesByCellIdAtom = Atom.make<Record<string, any>>({});\n private _valuesByNameAtom = Atom.make<Record<string, any>>({});\n\n constructor(\n private readonly _notebook: Notebook.Notebook,\n private readonly _registry: Registry.Registry,\n ) {}\n\n /**\n * Atom for parsed expressions by cell ID.\n */\n get expressions(): Atom.Atom<Record<string, ParsedExpression>> {\n return this._expressionsAtom;\n }\n\n /**\n * Get current expressions by cell ID.\n */\n getExpressions(): Record<string, ParsedExpression> {\n return this._registry.get(this._expressionsAtom);\n }\n\n /**\n * Atom for computed values by cell ID.\n */\n get values(): Atom.Atom<Record<string, any>> {\n return this._valuesByCellIdAtom;\n }\n\n /**\n * Get computed values by cell ID.\n */\n getValues(): Record<string, any> {\n return this._registry.get(this._valuesByCellIdAtom);\n }\n\n /**\n * Atom for computed values by name.\n */\n get valuesByName(): Atom.Atom<Record<string, any>> {\n return this._valuesByNameAtom;\n }\n\n /**\n * Get current values by name.\n */\n getValuesByName(): Record<string, any> {\n return this._registry.get(this._valuesByNameAtom);\n }\n\n /**\n * Get computed value by cell ID.\n */\n getValue(cellId: string): any {\n return this._registry.get(this._valuesByCellIdAtom)[cellId];\n }\n\n /**\n * Compute values.\n */\n async evaluate() {\n // Parse expressions.\n const { expressions, dependencyGraph } = this.parse();\n this._registry.set(this._valuesByCellIdAtom, {});\n this._registry.set(this._valuesByNameAtom, {});\n\n // Create a map of cell IDs to expressions for easy lookup.\n const cellExpressions = new Map<string, ParsedExpression>();\n Object.entries(expressions).forEach(([id, expr]) => {\n cellExpressions.set(id, expr);\n });\n\n // Topological sort to determine evaluation order.\n const evaluationOrder = this.topologicalSort(Object.keys(expressions), dependencyGraph);\n\n // Values by reference name.\n const valuesByName: Record<string, any> = {};\n const valuesByCellId: Record<string, any> = {};\n\n // Evaluate cells in dependency order.\n for (const cellId of evaluationOrder) {\n const expr = cellExpressions.get(cellId);\n if (!expr) {\n log.error('no expression for cell', { cellId });\n continue;\n }\n\n const cellSource = this._notebook.cells.find((cell) => cell.id === cellId)?.source?.target?.content;\n if (!cellSource) {\n log.error('no source for cell', { cellId });\n continue;\n }\n\n try {\n // For assignments or declarations, evaluate and store the value.\n if (expr.name && expr.value !== undefined) {\n // If the parser extracted a literal value, use it directly.\n valuesByName[expr.name] = expr.value;\n valuesByCellId[cellId] = expr.value;\n } else if (expr.name) {\n // For non-literal assignments, we need to evaluate the expression.\n // The parser identifies it's an assignment, so we can extract the RHS.\n const equalIndex = cellSource.indexOf('=');\n if (equalIndex !== -1) {\n // Find the actual assignment operator (not in strings or other contexts).\n let rhs = cellSource.substring(equalIndex + 1).trim();\n\n // Handle semicolon at the end.\n if (rhs.endsWith(';')) {\n rhs = rhs.slice(0, -1).trim();\n }\n\n const result = await this.eval(rhs, valuesByName);\n valuesByName[expr.name] = result;\n if (typeof result !== 'function') {\n valuesByCellId[cellId] = result;\n }\n }\n } else {\n // For expressions without assignment, just evaluate.\n const result = await this.eval(cellSource, valuesByName);\n valuesByCellId[cellId] = result;\n }\n } catch (error) {\n // TODO(burdon): Set error state.\n log.error('error evaluating cell', { cellId, error });\n }\n }\n\n this._registry.set(this._valuesByCellIdAtom, valuesByCellId);\n this._registry.set(this._valuesByNameAtom, valuesByName);\n return valuesByCellId;\n }\n\n private async eval(source: string, values: Record<string, any>) {\n return evalScript(source, values);\n }\n\n /**\n * Parse expressions.\n */\n parse() {\n const expressions = this._notebook.cells\n .filter((cell) => cell.type === 'script')\n .reduce<Record<string, ParsedExpression>>((acc, cell) => {\n const text = cell.source?.target?.content.trim();\n if (text) {\n const parsed = this._parser.parseExpression(text);\n acc[cell.id] = parsed;\n }\n\n return acc;\n }, {});\n\n // Build dependency graph.\n const dependencyGraph = this.buildDependencyGraph(expressions);\n this._registry.set(this._expressionsAtom, expressions);\n return { expressions, dependencyGraph };\n }\n\n private topologicalSort(nodes: string[], dependencies: Record<string, string[]>): string[] {\n const visited = new Set<string>();\n const result: string[] = [];\n\n const visit = (node: string) => {\n if (visited.has(node)) {\n return;\n }\n\n visited.add(node);\n\n // Visit dependencies first.\n const deps = dependencies[node] || [];\n deps.forEach((dep) => visit(dep));\n result.push(node);\n };\n\n // Visit all nodes.\n nodes.forEach((node) => visit(node));\n return result;\n }\n\n private buildDependencyGraph(expressions: Record<string, ParsedExpression>): Record<string, string[]> {\n // Create a map of variable names to their cell IDs.\n const nameToCellId = new Map<string, string>();\n Object.entries(expressions).forEach(([id, expr]) => {\n if (expr.name) {\n nameToCellId.set(expr.name, id);\n }\n });\n\n // Build the dependency graph using cell IDs.\n const graph: Record<string, string[]> = {};\n Object.entries(expressions).forEach(([id, expr]) => {\n if (expr.references && expr.references.length > 0) {\n // Map variable references to cell IDs.\n const dependencyCellIds = expr.references\n .map((ref) => nameToCellId.get(ref))\n .filter((cellId): cellId is string => cellId !== undefined && cellId !== id);\n\n if (dependencyCellIds.length > 0) {\n graph[id] = dependencyCellIds;\n }\n }\n });\n\n return graph;\n }\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { trim } from '@dxos/util';\n\n/**\n * Evaluate the script (with dependencies as arguments).\n */\nexport const evalScript = async (code: string, deps: Record<string, any> = {}) => {\n // Create a sandboxed environment that blocks access to window and document.\n const sandbox = {\n ...deps,\n\n // Block access to global objects.\n console: undefined,\n document: undefined,\n global: undefined,\n globalThis: undefined,\n self: undefined,\n window: undefined,\n\n // Allow some safe globals.\n Array,\n Boolean,\n Date,\n Error,\n JSON,\n Map,\n Math,\n Number,\n Object,\n Promise,\n RegExp,\n Set,\n String,\n\n // Functions.\n isFinite,\n isNaN,\n parseFloat,\n parseInt,\n\n // Note: undefined and null are not included as they are keywords, not variables.\n };\n\n // Create function with all sandbox keys as parameters.\n const sandboxKeys = Object.keys(sandbox);\n const sandboxValues = Object.values(sandbox);\n\n // eslint-disable-next-line @typescript-eslint/no-implied-eval\n const fn = new Function(\n ...sandboxKeys,\n trim`\n 'use strict';\n return ${code};\n `,\n );\n\n return fn(...sandboxValues);\n};\n\n/**\n * Globals.\n */\nexport const builtIns = new Set([\n // Types.\n 'Array',\n 'Date',\n 'Error',\n 'JSON',\n 'Map',\n 'Math',\n 'Number',\n 'Object',\n 'Promise',\n 'RegExp',\n 'Set',\n 'String',\n\n // Functions.\n 'isFinite',\n 'isNaN',\n 'parseFloat',\n 'parseInt',\n]);\n\n/**\n * Default system definitions.\n */\nexport const systemDefinitions = trim`\n interface Array<T> { length: number; [n: number]: T; }\n interface Boolean {}\n interface Function {}\n interface IArguments {}\n interface Number {}\n interface Object {}\n interface RegExp {}\n interface String { length: number; }\n\n interface CallableFunction extends Function {}\n interface NewableFunction extends Function {}\n\n declare var console: { log(...args: any[]): void };\n`;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { createSystem, createVirtualTypeScriptEnvironment } from '@typescript/vfs';\nimport ts from 'typescript';\n\nimport { invariant } from '@dxos/invariant';\n\nimport { builtIns, systemDefinitions } from './eval';\n\n/**\n * Default system definitions.\n */\nconst systemFiles: VirtualFile[] = [\n {\n filename: '/lib.d.ts',\n content: systemDefinitions,\n },\n];\n\nexport type ParsedExpression = {\n name?: string;\n type?: 'function' | 'variable' | 'class' | 'interface';\n value?: any;\n valueType?: string;\n parameters?: Array<{ name: string; type: string }>;\n returnType?: string;\n references?: string[];\n};\n\nexport type VirtualFile = {\n filename: string;\n content: string;\n};\n\n/**\n * TypeScript parser using Virtual File System for browser compatibility.\n * This provides full TypeScript analysis including type information.\n */\nexport class VirtualTypeScriptParser {\n protected compilerOptions: ts.CompilerOptions = {\n target: ts.ScriptTarget.ES2020,\n module: ts.ModuleKind.ESNext,\n strict: true,\n esModuleInterop: true,\n skipLibCheck: true,\n forceConsistentCasingInfilenames: true,\n jsx: ts.JsxEmit.React,\n noLib: true, // Don't automatically include default lib files.\n };\n\n /**\n * Parse a single expression or statement.\n */\n parseExpression(input: string): ParsedExpression {\n invariant(input.trim() !== '', 'input must not be empty');\n const files: VirtualFile[] = [{ filename: '/temp.ts', content: input }];\n const analysis = this.analyzeFiles(files);\n\n // If no declarations found, check for standalone expression references.\n if (analysis.length === 0) {\n const sourcefilename = '/temp.ts';\n const env = this.createEnvironment([{ filename: sourcefilename, content: input }]);\n const sourceFile = env.getSourceFile(sourcefilename);\n const typeChecker = env.languageService.getProgram()?.getTypeChecker();\n\n if (sourceFile && typeChecker) {\n // Check for assignment expressions.\n const assignmentInfo = this.findAssignmentExpression(sourceFile, typeChecker);\n if (assignmentInfo) {\n return assignmentInfo;\n }\n\n const references = this.findAllReferences(sourceFile, typeChecker);\n return { references };\n }\n }\n\n return analysis[0];\n }\n\n /**\n * Analyze multiple files with full type information.\n */\n analyzeFiles(files: VirtualFile[]): ParsedExpression[] {\n const env = this.createEnvironment(files);\n const results: ParsedExpression[] = [];\n const typeChecker = env.languageService.getProgram()?.getTypeChecker();\n\n // Analyze each file.\n files.forEach((file) => {\n const sourceFile = env.getSourceFile(file.filename);\n if (!sourceFile || !typeChecker) return;\n\n const fileResults = this.analyzeSourceFile(sourceFile, typeChecker);\n results.push(...fileResults);\n });\n\n return results;\n }\n\n /**\n * Analyze a source file with type information.\n */\n protected analyzeSourceFile(sourceFile: ts.SourceFile, typeChecker: ts.TypeChecker): ParsedExpression[] {\n const results: ParsedExpression[] = [];\n\n const visit = (node: ts.Node) => {\n // Function declarations.\n if (ts.isFunctionDeclaration(node) && node.name) {\n const symbol = typeChecker.getSymbolAtLocation(node.name);\n const type = symbol && typeChecker.getTypeOfSymbolAtLocation(symbol, node);\n const signature = type && typeChecker.getSignaturesOfType(type, ts.SignatureKind.Call)[0];\n\n results.push({\n name: node.name.text,\n type: 'function',\n parameters: this.extractParameters(signature, typeChecker),\n returnType: signature ? typeChecker.typeToString(signature.getReturnType()) : 'any',\n references: this.findReferences(node, sourceFile, typeChecker),\n });\n }\n\n // Variable declarations.\n else if (ts.isVariableStatement(node)) {\n node.declarationList.declarations.forEach((declaration) => {\n if (ts.isIdentifier(declaration.name)) {\n const symbol = typeChecker.getSymbolAtLocation(declaration.name);\n const type = symbol && typeChecker.getTypeOfSymbolAtLocation(symbol, declaration);\n\n let kind: 'function' | 'variable' = 'variable';\n let parameters: Array<{ name: string; type: string }> | undefined;\n let returnType: string | undefined;\n let value: any;\n\n // Get the type string.\n const typeString = type ? typeChecker.typeToString(type) : 'any';\n\n // Check if it's a function.\n if (declaration.initializer) {\n if (ts.isArrowFunction(declaration.initializer) || ts.isFunctionExpression(declaration.initializer)) {\n kind = 'function';\n const funcType = typeChecker.getTypeAtLocation(declaration.initializer);\n const signature = typeChecker.getSignaturesOfType(funcType, ts.SignatureKind.Call)[0];\n if (signature) {\n parameters = this.extractParameters(signature, typeChecker);\n returnType = typeChecker.typeToString(signature.getReturnType());\n }\n } else {\n // Extract literal values\n if (ts.isNumericLiteral(declaration.initializer)) {\n value = Number(declaration.initializer.text);\n } else if (ts.isStringLiteral(declaration.initializer)) {\n value = declaration.initializer.text;\n }\n }\n }\n\n // Find references in the initializer only.\n const refs = declaration.initializer\n ? this.findReferences(declaration.initializer, sourceFile, typeChecker)\n : [];\n\n results.push({\n name: declaration.name.text,\n type: kind,\n valueType: typeString,\n value,\n parameters,\n returnType,\n references: refs,\n });\n }\n });\n }\n\n // Class declarations.\n else if (ts.isClassDeclaration(node) && node.name) {\n results.push({\n name: node.name.text,\n type: 'class',\n references: this.findReferences(node, sourceFile, typeChecker),\n });\n }\n\n // Interface declarations.\n else if (ts.isInterfaceDeclaration(node)) {\n results.push({\n name: node.name.text,\n type: 'interface',\n references: this.findReferences(node, sourceFile, typeChecker),\n });\n }\n\n ts.forEachChild(node, visit);\n };\n\n visit(sourceFile);\n return results;\n }\n\n /**\n * Extract parameter information from a signature.\n */\n private extractParameters(\n signature: ts.Signature | undefined,\n typeChecker: ts.TypeChecker,\n ): Array<{ name: string; type: string }> {\n if (!signature) return [];\n\n return signature.parameters.map((param) => ({\n name: param.getName(),\n type: typeChecker.typeToString(typeChecker.getTypeOfSymbolAtLocation(param, param.valueDeclaration!)),\n }));\n }\n\n /**\n * Find all references to variables used in a node.\n */\n private findReferences(node: ts.Node, _sourceFile: ts.SourceFile, _typeChecker: ts.TypeChecker): string[] {\n const references = new Set<string>();\n const localSymbols = new Set<string>();\n\n // First, collect local symbols (parameters, local variables).\n const collectLocalSymbols = (node: ts.Node) => {\n if (ts.isFunctionDeclaration(node) || ts.isArrowFunction(node) || ts.isFunctionExpression(node)) {\n node.parameters.forEach((param) => {\n if (ts.isIdentifier(param.name)) {\n localSymbols.add(param.name.text);\n }\n });\n }\n\n if (ts.isVariableDeclaration(node) && ts.isIdentifier(node.name)) {\n localSymbols.add(node.name.text);\n }\n\n ts.forEachChild(node, collectLocalSymbols);\n };\n\n collectLocalSymbols(node);\n\n // Then find all identifier references.\n const findRefs = (node: ts.Node) => {\n if (ts.isIdentifier(node)) {\n // Skip if it's a local symbol.\n if (!localSymbols.has(node.text)) {\n // Check if it's a reference (not a declaration).\n const parent = node.parent;\n const isDeclaration =\n (ts.isVariableDeclaration(parent) && parent.name === node) ||\n (ts.isFunctionDeclaration(parent) && parent.name === node) ||\n (ts.isParameter(parent) && parent.name === node);\n\n if (!isDeclaration && !this.isBuiltIn(node.text)) {\n references.add(node.text);\n }\n }\n }\n ts.forEachChild(node, findRefs);\n };\n\n findRefs(node);\n return Array.from(references);\n }\n\n /**\n * Check if a name is a built-in global.\n */\n protected isBuiltIn(name: string): boolean {\n return builtIns.has(name);\n }\n\n /**\n * Find assignment expressions in a source file.\n */\n private findAssignmentExpression(sourceFile: ts.SourceFile, typeChecker: ts.TypeChecker): ParsedExpression | null {\n let result: ParsedExpression | null = null;\n\n const visit = (node: ts.Node) => {\n if (ts.isExpressionStatement(node) && ts.isBinaryExpression(node.expression)) {\n const expr = node.expression;\n if (expr.operatorToken.kind === ts.SyntaxKind.EqualsToken && ts.isIdentifier(expr.left)) {\n const type = typeChecker.getTypeAtLocation(expr.right);\n const typeString = typeChecker.typeToString(type);\n\n // Get the literal value if it's a literal.\n let value: any;\n if (ts.isNumericLiteral(expr.right)) {\n value = Number(expr.right.text);\n } else if (ts.isStringLiteral(expr.right)) {\n value = expr.right.text;\n }\n\n // Find references in the right-hand side.\n const references = this.findReferences(expr.right, sourceFile, typeChecker);\n\n result = {\n name: expr.left.text,\n type: 'variable',\n valueType: typeString,\n value,\n references,\n };\n }\n }\n if (!result) {\n ts.forEachChild(node, visit);\n }\n };\n\n visit(sourceFile);\n return result;\n }\n\n /**\n * Find all identifier references in a source file.\n */\n protected findAllReferences(sourceFile: ts.SourceFile, _typeChecker: ts.TypeChecker): string[] {\n const references = new Set<string>();\n\n const visit = (node: ts.Node) => {\n if (ts.isIdentifier(node)) {\n // Skip if it's a declaration.\n const parent = node.parent;\n const isDeclaration =\n (ts.isVariableDeclaration(parent) && parent.name === node) ||\n (ts.isFunctionDeclaration(parent) && parent.name === node) ||\n (ts.isParameter(parent) && parent.name === node);\n\n // Skip if it's the left-hand side of an assignment.\n const isAssignmentTarget =\n ts.isBinaryExpression(parent) &&\n parent.operatorToken.kind === ts.SyntaxKind.EqualsToken &&\n parent.left === node;\n\n if (!isDeclaration && !isAssignmentTarget && !this.isBuiltIn(node.text)) {\n references.add(node.text);\n }\n }\n ts.forEachChild(node, visit);\n };\n\n visit(sourceFile);\n return Array.from(references);\n }\n\n protected createEnvironment(files: VirtualFile[]) {\n const allFiles = [...systemFiles, ...files];\n\n const fileMap = new Map<string, string>();\n allFiles.forEach(({ filename, content }) => {\n fileMap.set(filename, content);\n });\n\n const system = createSystem(fileMap);\n return createVirtualTypeScriptEnvironment(\n system,\n allFiles.map(({ filename }) => filename),\n ts,\n this.compilerOptions,\n );\n }\n}\n\n/**\n * Notebook-specific parser with dependency analysis.\n */\nexport class NotebookVirtualParser extends VirtualTypeScriptParser {\n /**\n * Analyze notebook cells with full type checking.\n */\n analyzeNotebook(cells: Array<{ id: string; code: string }>) {\n // Create cumulative environment where each cell can see previous cells.\n const cumulativeCode: string[] = [];\n const cellAnalysis: Map<\n string,\n {\n exports: ParsedExpression[];\n imports: string[];\n errors: ts.Diagnostic[];\n }\n > = new Map();\n\n cells.forEach((cell) => {\n // Create files for all cells up to current.\n const files: VirtualFile[] = [];\n\n // Add previous cells as context.\n if (cumulativeCode.length > 0) {\n files.push({\n filename: '/context.ts',\n content: cumulativeCode.join('\\n'),\n });\n }\n\n // Add current cell.\n const filename = `/cell/${cell.id}.ts`;\n files.push({\n filename,\n content: cell.code,\n });\n\n // Create environment.\n const env = this.createEnvironment(files);\n\n // Get diagnostics (errors).\n const diagnostics = env.languageService.getSemanticDiagnostics(filename);\n\n // Analyze current cell.\n const sourceFile = env.getSourceFile(filename);\n const typeChecker = env.languageService.getProgram()?.getTypeChecker();\n\n if (sourceFile && typeChecker) {\n const exports = this.analyzeSourceFile(sourceFile, typeChecker);\n\n // Find all references in the current cell.\n const allRefs = new Set<string>();\n exports.forEach((exp) => {\n exp.references?.forEach((ref) => allRefs.add(ref));\n });\n\n // Also check for references not in exports (e.g., console.log(y)).\n const additionalRefs = this.findAllReferences(sourceFile, typeChecker);\n additionalRefs.forEach((ref) => allRefs.add(ref));\n\n // Determine which references are imports from previous cells.\n const previousExports = new Set<string>();\n for (const [_prevCellId, prevAnalysis] of cellAnalysis) {\n prevAnalysis.exports.forEach((exp) => {\n if (exp.name) previousExports.add(exp.name);\n });\n }\n\n const imports = Array.from(allRefs).filter((ref) => previousExports.has(ref));\n\n cellAnalysis.set(cell.id, {\n exports,\n imports,\n errors: diagnostics,\n });\n }\n\n // Add current cell code to cumulative.\n cumulativeCode.push(cell.code);\n });\n\n return cellAnalysis;\n }\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { NotebookContainer } from './NotebookContainer';\n\nexport default NotebookContainer;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["RegistryContext", "Cause", "Effect", "Exit", "React", "useCallback", "useContext", "useMemo", "useState", "AgentFunctions", "Blueprint", "Prompt", "Filter", "Obj", "Query", "Ref", "QueryBuilder", "FunctionInvocationService", "TracingService", "invariant", "log", "useComputeRuntimeCallback", "Graph", "DropdownMenu", "IconButton", "Panel", "Toolbar", "useTranslation", "useAttention", "Text", "ViewModel", "isNonNullable", "Atom", "log", "trim", "evalScript", "code", "deps", "sandbox", "console", "undefined", "document", "global", "globalThis", "self", "window", "Array", "Boolean", "Date", "Error", "JSON", "Map", "Math", "Number", "Object", "Promise", "RegExp", "Set", "String", "isFinite", "isNaN", "parseFloat", "parseInt", "sandboxKeys", "keys", "sandboxValues", "values", "fn", "Function", "trim", "builtIns", "systemDefinitions", "createSystem", "createVirtualTypeScriptEnvironment", "ts", "invariant", "systemFiles", "filename", "content", "systemDefinitions", "VirtualTypeScriptParser", "compilerOptions", "target", "ts", "ScriptTarget", "ES2020", "module", "ModuleKind", "ESNext", "strict", "esModuleInterop", "skipLibCheck", "forceConsistentCasingInfilenames", "jsx", "JsxEmit", "React", "noLib", "parseExpression", "input", "invariant", "trim", "files", "analysis", "analyzeFiles", "length", "sourcefilename", "env", "createEnvironment", "sourceFile", "getSourceFile", "typeChecker", "languageService", "getProgram", "getTypeChecker", "assignmentInfo", "findAssignmentExpression", "references", "findAllReferences", "results", "forEach", "file", "fileResults", "analyzeSourceFile", "push", "visit", "node", "isFunctionDeclaration", "name", "symbol", "getSymbolAtLocation", "type", "getTypeOfSymbolAtLocation", "signature", "getSignaturesOfType", "SignatureKind", "Call", "text", "parameters", "extractParameters", "returnType", "typeToString", "getReturnType", "findReferences", "isVariableStatement", "declarationList", "declarations", "declaration", "isIdentifier", "kind", "value", "typeString", "initializer", "isArrowFunction", "isFunctionExpression", "funcType", "getTypeAtLocation", "isNumericLiteral", "Number", "isStringLiteral", "refs", "valueType", "isClassDeclaration", "isInterfaceDeclaration", "forEachChild", "map", "param", "getName", "valueDeclaration", "_sourceFile", "_typeChecker", "Set", "localSymbols", "collectLocalSymbols", "add", "isVariableDeclaration", "findRefs", "has", "parent", "isDeclaration", "isParameter", "isBuiltIn", "Array", "from", "builtIns", "result", "isExpressionStatement", "isBinaryExpression", "expression", "expr", "operatorToken", "SyntaxKind", "EqualsToken", "left", "right", "isAssignmentTarget", "allFiles", "fileMap", "Map", "set", "system", "createSystem", "createVirtualTypeScriptEnvironment", "ComputeGraph", "_parser", "VirtualTypeScriptParser", "_expressionsAtom", "Atom", "make", "_valuesByCellIdAtom", "_valuesByNameAtom", "_notebook", "_registry", "expressions", "getExpressions", "get", "values", "getValues", "valuesByName", "getValuesByName", "getValue", "cellId", "evaluate", "dependencyGraph", "parse", "set", "cellExpressions", "Map", "Object", "entries", "forEach", "id", "expr", "evaluationOrder", "topologicalSort", "keys", "valuesByCellId", "log", "error", "cellSource", "cells", "find", "cell", "source", "target", "content", "name", "value", "undefined", "equalIndex", "indexOf", "rhs", "substring", "trim", "endsWith", "slice", "result", "eval", "evalScript", "filter", "type", "reduce", "acc", "text", "parsed", "parseExpression", "buildDependencyGraph", "nodes", "dependencies", "visited", "Set", "visit", "node", "has", "add", "deps", "dep", "push", "nameToCellId", "graph", "references", "length", "dependencyCellIds", "map", "ref", "INCLUDE_BLUEPRINTS", "NotebookContainer", "role", "subject", "notebook", "env", "t", "useTranslation", "meta", "id", "registry", "useContext", "RegistryContext", "db", "Obj", "getDatabase", "attendableId", "getDXN", "toString", "hasAttention", "useAttention", "graph", "useMemo", "ComputeGraph", "queryValues", "setQueryValues", "useState", "handleExecQueries", "useCallback", "invariant", "builder", "QueryBuilder", "cell", "cells", "type", "source", "target", "content", "name", "filter", "build", "ast", "Query", "select", "view", "ViewModel", "makeFromDatabase", "newGraph", "Graph", "make", "query", "change", "n", "c", "find", "Ref", "g", "getSnapshot", "fromAst", "objects", "run", "objectIds", "map", "obj", "prev", "promptResults", "setPromptResults", "handleExecPrompts", "useComputeRuntimeCallback", "spaceId", "fnUntraced", "prompts", "prompt", "isNonNullable", "runPrompt", "input", "getValuesByName", "onResult", "result", "dxn", "handleCompute", "evaluate", "handleRearrange", "from", "findIndex", "to", "splice", "handleCellInsert", "after", "crypto", "randomUUID", "Text", "Filter", "Blueprint", "blueprints", "blueprint", "includes", "key", "Prompt", "instructions", "idx", "length", "handleCellDelete", "Panel", "Root", "className", "Toolbar", "asChild", "disabled", "textBlockWidth", "DropdownMenu", "Trigger", "IconButton", "icon", "iconOnly", "label", "NotebookMenu", "onCellInsert", "classNames", "onClick", "Content", "NotebookStack", "onRearrange", "onCellDelete", "fn", "inputData", "tracer", "TracingService", "trace", "traceInvocationStart", "undefined", "payload", "data", "FunctionInvocationService", "invokeFunction", "AgentFunctions", "pipe", "provide", "invocationTraceQueue", "layerInvocation", "layerNoop", "exit", "Exit", "match", "onFailure", "cause", "error", "prettyErrors", "log", "message", "stack", "onSuccess", "note", "traceInvocationEnd", "exception", "isFailure", "NotebookContainer"]
|
|
7
|
+
}
|