@dxos/plugin-automation 0.8.4-main.3f58842 → 0.8.4-main.5ea62a8

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.
Files changed (92) hide show
  1. package/dist/lib/browser/{AutomationContainer-VZNV2ZQF.mjs → AutomationContainer-A46DB774.mjs} +6 -9
  2. package/dist/lib/browser/AutomationContainer-A46DB774.mjs.map +7 -0
  3. package/dist/lib/browser/{AutomationPanel-ZWA6GOFY.mjs → AutomationPanel-TQXXZHLR.mjs} +3 -3
  4. package/dist/lib/browser/{FunctionsContainer-IOB333TX.mjs → FunctionsContainer-U4HASI4P.mjs} +4 -7
  5. package/dist/lib/browser/FunctionsContainer-U4HASI4P.mjs.map +7 -0
  6. package/dist/lib/browser/{FunctionsPanel-56ZKRVM5.mjs → FunctionsPanel-I443Y6KB.mjs} +2 -2
  7. package/dist/lib/browser/{app-graph-builder-ZTAUTFI4.mjs → app-graph-builder-4OFKIRAI.mjs} +2 -2
  8. package/dist/lib/{node-esm/app-graph-builder-3FP63ZSG.mjs.map → browser/app-graph-builder-4OFKIRAI.mjs.map} +3 -3
  9. package/dist/lib/browser/{chunk-ECSTS2UI.mjs → chunk-IAUUJ5RL.mjs} +5 -5
  10. package/dist/lib/browser/{chunk-ERTIGJYE.mjs → chunk-PUUREQ2B.mjs} +9 -13
  11. package/dist/lib/browser/chunk-PUUREQ2B.mjs.map +7 -0
  12. package/dist/lib/browser/{chunk-FSJZXTS2.mjs → chunk-S4SM663I.mjs} +15 -15
  13. package/dist/lib/browser/chunk-S4SM663I.mjs.map +7 -0
  14. package/dist/lib/browser/{chunk-LYJVTIVD.mjs → chunk-Z5DT4MHW.mjs} +2 -2
  15. package/dist/lib/{node-esm/chunk-ZGPUV5VS.mjs.map → browser/chunk-Z5DT4MHW.mjs.map} +3 -3
  16. package/dist/lib/browser/index.mjs +7 -7
  17. package/dist/lib/browser/index.mjs.map +3 -3
  18. package/dist/lib/browser/{intent-resolver-U3ZAQEFW.mjs → intent-resolver-4PSYSQQG.mjs} +7 -6
  19. package/dist/lib/browser/intent-resolver-4PSYSQQG.mjs.map +7 -0
  20. package/dist/lib/browser/meta.json +1 -1
  21. package/dist/lib/browser/{react-surface-4DFSM7OX.mjs → react-surface-N4ZVZH4O.mjs} +3 -3
  22. package/dist/lib/node-esm/{AutomationContainer-WMIH3F4V.mjs → AutomationContainer-5S3BBZVY.mjs} +6 -9
  23. package/dist/lib/node-esm/AutomationContainer-5S3BBZVY.mjs.map +7 -0
  24. package/dist/lib/node-esm/{AutomationPanel-YYUMSK2W.mjs → AutomationPanel-KUP2555Y.mjs} +3 -3
  25. package/dist/lib/node-esm/{FunctionsContainer-DJWB6WFH.mjs → FunctionsContainer-VZIVURH6.mjs} +4 -7
  26. package/dist/lib/node-esm/FunctionsContainer-VZIVURH6.mjs.map +7 -0
  27. package/dist/lib/node-esm/{FunctionsPanel-KGIOZSPZ.mjs → FunctionsPanel-ELINCXPW.mjs} +2 -2
  28. package/dist/lib/node-esm/{app-graph-builder-3FP63ZSG.mjs → app-graph-builder-555IHYOB.mjs} +2 -2
  29. package/dist/lib/{browser/app-graph-builder-ZTAUTFI4.mjs.map → node-esm/app-graph-builder-555IHYOB.mjs.map} +3 -3
  30. package/dist/lib/node-esm/{chunk-SGZPTJ47.mjs → chunk-7XZGYNT6.mjs} +5 -5
  31. package/dist/lib/node-esm/{chunk-ZGPUV5VS.mjs → chunk-CX2AILIS.mjs} +2 -2
  32. package/dist/lib/{browser/chunk-LYJVTIVD.mjs.map → node-esm/chunk-CX2AILIS.mjs.map} +3 -3
  33. package/dist/lib/node-esm/{chunk-HIMYPGHF.mjs → chunk-JU7JA5X4.mjs} +9 -13
  34. package/dist/lib/node-esm/chunk-JU7JA5X4.mjs.map +7 -0
  35. package/dist/lib/node-esm/{chunk-AZH66CED.mjs → chunk-ZOJVKPCA.mjs} +15 -15
  36. package/dist/lib/node-esm/chunk-ZOJVKPCA.mjs.map +7 -0
  37. package/dist/lib/node-esm/index.mjs +7 -7
  38. package/dist/lib/node-esm/index.mjs.map +3 -3
  39. package/dist/lib/node-esm/{intent-resolver-3QWXEBPX.mjs → intent-resolver-6ZGBUILG.mjs} +7 -6
  40. package/dist/lib/node-esm/intent-resolver-6ZGBUILG.mjs.map +7 -0
  41. package/dist/lib/node-esm/meta.json +1 -1
  42. package/dist/lib/node-esm/{react-surface-3PNW7NDW.mjs → react-surface-XE7ILYWA.mjs} +3 -3
  43. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  44. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  45. package/dist/types/src/capabilities/index.d.ts +3 -3
  46. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  47. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  48. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  49. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  50. package/dist/types/src/components/AutomationContainer.d.ts.map +1 -1
  51. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts +2 -2
  52. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  53. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts +43 -3
  54. package/dist/types/src/components/AutomationPanel/AutomationPanel.stories.d.ts.map +1 -1
  55. package/dist/types/src/components/FunctionsContainer.d.ts.map +1 -1
  56. package/dist/types/src/components/FunctionsPanel/FunctionsPanel.d.ts.map +1 -1
  57. package/dist/types/src/components/TriggerEditor/SpecSelector.d.ts.map +1 -1
  58. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts +2 -2
  59. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  60. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts +43 -3
  61. package/dist/types/src/components/TriggerEditor/TriggerEditor.stories.d.ts.map +1 -1
  62. package/dist/types/tsconfig.tsbuildinfo +1 -1
  63. package/package.json +30 -28
  64. package/src/AutomationPlugin.tsx +2 -2
  65. package/src/capabilities/app-graph-builder.ts +2 -2
  66. package/src/capabilities/intent-resolver.ts +7 -7
  67. package/src/components/AutomationContainer.tsx +11 -13
  68. package/src/components/AutomationPanel/AutomationPanel.stories.tsx +10 -7
  69. package/src/components/AutomationPanel/AutomationPanel.tsx +10 -22
  70. package/src/components/FunctionsContainer.tsx +10 -12
  71. package/src/components/FunctionsPanel/FunctionsPanel.tsx +2 -2
  72. package/src/components/TriggerEditor/SpecSelector.tsx +14 -14
  73. package/src/components/TriggerEditor/TriggerEditor.stories.tsx +11 -8
  74. package/src/components/TriggerEditor/TriggerEditor.tsx +6 -12
  75. package/dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs.map +0 -7
  76. package/dist/lib/browser/FunctionsContainer-IOB333TX.mjs.map +0 -7
  77. package/dist/lib/browser/chunk-ERTIGJYE.mjs.map +0 -7
  78. package/dist/lib/browser/chunk-FSJZXTS2.mjs.map +0 -7
  79. package/dist/lib/browser/intent-resolver-U3ZAQEFW.mjs.map +0 -7
  80. package/dist/lib/node-esm/AutomationContainer-WMIH3F4V.mjs.map +0 -7
  81. package/dist/lib/node-esm/FunctionsContainer-DJWB6WFH.mjs.map +0 -7
  82. package/dist/lib/node-esm/chunk-AZH66CED.mjs.map +0 -7
  83. package/dist/lib/node-esm/chunk-HIMYPGHF.mjs.map +0 -7
  84. package/dist/lib/node-esm/intent-resolver-3QWXEBPX.mjs.map +0 -7
  85. /package/dist/lib/browser/{AutomationPanel-ZWA6GOFY.mjs.map → AutomationPanel-TQXXZHLR.mjs.map} +0 -0
  86. /package/dist/lib/browser/{FunctionsPanel-56ZKRVM5.mjs.map → FunctionsPanel-I443Y6KB.mjs.map} +0 -0
  87. /package/dist/lib/browser/{chunk-ECSTS2UI.mjs.map → chunk-IAUUJ5RL.mjs.map} +0 -0
  88. /package/dist/lib/browser/{react-surface-4DFSM7OX.mjs.map → react-surface-N4ZVZH4O.mjs.map} +0 -0
  89. /package/dist/lib/node-esm/{AutomationPanel-YYUMSK2W.mjs.map → AutomationPanel-KUP2555Y.mjs.map} +0 -0
  90. /package/dist/lib/node-esm/{FunctionsPanel-KGIOZSPZ.mjs.map → FunctionsPanel-ELINCXPW.mjs.map} +0 -0
  91. /package/dist/lib/node-esm/{chunk-SGZPTJ47.mjs.map → chunk-7XZGYNT6.mjs.map} +0 -0
  92. /package/dist/lib/node-esm/{react-surface-3PNW7NDW.mjs.map → react-surface-XE7ILYWA.mjs.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n LayoutAction,\n type PluginContext,\n contributes,\n createIntent,\n createResolver,\n} from '@dxos/app-framework';\nimport { Obj, Ref } from '@dxos/echo';\nimport { FunctionTrigger, FunctionType, ScriptType } from '@dxos/functions';\nimport { type DXN } from '@dxos/keys';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { Filter } from '@dxos/react-client/echo';\n\nimport { AutomationAction } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: AutomationAction.CreateTriggerFromTemplate,\n resolve: async ({ space, template, enabled = false, scriptName, input }) => {\n const trigger = Obj.make(FunctionTrigger, { enabled, input });\n\n // TODO(wittjosiah): Factor out function lookup by script name?\n if (scriptName) {\n const {\n objects: [script],\n } = await space.db.query(Filter.type(ScriptType, { name: scriptName })).run();\n if (script) {\n const {\n objects: [fn],\n } = await space.db.query(Filter.type(FunctionType, { source: Ref.make(script) })).run();\n if (fn) {\n trigger.function = Ref.make(fn);\n }\n }\n }\n\n switch (template.type) {\n case 'timer': {\n trigger.spec = { kind: 'timer', cron: template.cron };\n break;\n }\n case 'queue': {\n trigger.spec = { kind: 'queue', queue: (template.queueDXN as DXN).toString() };\n break;\n }\n default: {\n break;\n }\n }\n\n return {\n intents: [\n createIntent(SpaceAction.AddObject, { object: trigger, target: space, hidden: true }),\n createIntent(LayoutAction.Open, {\n part: 'main',\n subject: [`automation-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`],\n options: {\n workspace: space.id,\n },\n }),\n ],\n };\n },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;AAIA,SACEA,cACAC,cAEAC,aACAC,cACAC,sBACK;AACP,SAASC,KAAKC,WAAW;AACzB,SAASC,iBAAiBC,cAAcC,kBAAkB;AAE1D,SAASC,iCAAiC;AAC1C,SAASC,mBAAmB;AAC5B,SAASC,cAAc;AAIvB,IAAA,0BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,iBAAiBC;IACzBC,SAAS,OAAO,EAAEC,OAAOC,UAAUC,UAAU,OAAOC,YAAYC,MAAK,MAAE;AACrE,YAAMC,UAAUC,IAAIC,KAAKC,iBAAiB;QAAEN;QAASE;MAAM,CAAA;AAG3D,UAAID,YAAY;AACd,cAAM,EACJM,SAAS,CAACC,MAAAA,EAAO,IACf,MAAMV,MAAMW,GAAGC,MAAMC,OAAOC,KAAKC,YAAY;UAAEC,MAAMb;QAAW,CAAA,CAAA,EAAIc,IAAG;AAC3E,YAAIP,QAAQ;AACV,gBAAM,EACJD,SAAS,CAACS,EAAAA,EAAG,IACX,MAAMlB,MAAMW,GAAGC,MAAMC,OAAOC,KAAKK,cAAc;YAAEC,QAAQC,IAAId,KAAKG,MAAAA;UAAQ,CAAA,CAAA,EAAIO,IAAG;AACrF,cAAIC,IAAI;AACNb,oBAAQiB,WAAWD,IAAId,KAAKW,EAAAA;UAC9B;QACF;MACF;AAEA,cAAQjB,SAASa,MAAI;QACnB,KAAK,SAAS;AACZT,kBAAQkB,OAAO;YAAEC,MAAM;YAASC,MAAMxB,SAASwB;UAAK;AACpD;QACF;QACA,KAAK,SAAS;AACZpB,kBAAQkB,OAAO;YAAEC,MAAM;YAASE,OAAQzB,SAAS0B,SAAiBC,SAAQ;UAAG;AAC7E;QACF;QACA,SAAS;AACP;QACF;MACF;AAEA,aAAO;QACLC,SAAS;UACPC,aAAaC,YAAYC,WAAW;YAAEC,QAAQ5B;YAAS6B,QAAQlC;YAAOmC,QAAQ;UAAK,CAAA;UACnFL,aAAaM,aAAaC,MAAM;YAC9BC,MAAM;YACNC,SAAS;cAAC,sBAAsBC,yBAAAA,GAA4BxC,MAAMyC,EAAE;;YACpEC,SAAS;cACPC,WAAW3C,MAAMyC;YACnB;UACF,CAAA;;MAEJ;IACF;EACF,CAAA;CACD;",
6
+ "names": ["Capabilities", "LayoutAction", "contributes", "createIntent", "createResolver", "Obj", "Ref", "FunctionTrigger", "FunctionType", "ScriptType", "ATTENDABLE_PATH_SEPARATOR", "SpaceAction", "Filter", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "AutomationAction", "CreateTriggerFromTemplate", "resolve", "space", "template", "enabled", "scriptName", "input", "trigger", "Obj", "make", "FunctionTrigger", "objects", "script", "db", "query", "Filter", "type", "ScriptType", "name", "run", "fn", "FunctionType", "source", "Ref", "function", "spec", "kind", "cron", "queue", "queueDXN", "toString", "intents", "createIntent", "SpaceAction", "AddObject", "object", "target", "hidden", "LayoutAction", "Open", "part", "subject", "ATTENDABLE_PATH_SEPARATOR", "id", "options", "workspace"]
7
+ }
@@ -1 +1 @@
1
- {"inputs":{"src/components/TriggerEditor/FunctionInputEditor.tsx":{"bytes":8587,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"src/meta.ts":{"bytes":1682,"imports":[],"format":"esm"},"src/components/TriggerEditor/SpecSelector.tsx":{"bytes":7355,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/TriggerEditor/TriggerEditor.tsx":{"bytes":12329,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/components/TriggerEditor/FunctionInputEditor.tsx","kind":"import-statement","original":"./FunctionInputEditor"},{"path":"src/components/TriggerEditor/SpecSelector.tsx","kind":"import-statement","original":"./SpecSelector"}],"format":"esm"},"src/components/TriggerEditor/index.ts":{"bytes":503,"imports":[{"path":"src/components/TriggerEditor/TriggerEditor.tsx","kind":"import-statement","original":"./TriggerEditor"}],"format":"esm"},"src/components/AutomationPanel/AutomationPanel.tsx":{"bytes":21282,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/components/TriggerEditor/index.ts","kind":"import-statement","original":"../TriggerEditor"}],"format":"esm"},"src/components/AutomationPanel/index.ts":{"bytes":800,"imports":[{"path":"src/components/AutomationPanel/AutomationPanel.tsx","kind":"import-statement","original":"./AutomationPanel"},{"path":"src/components/AutomationPanel/AutomationPanel.tsx","kind":"import-statement","original":"./AutomationPanel"}],"format":"esm"},"src/components/AutomationContainer.tsx":{"bytes":3610,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"src/components/AutomationPanel/index.ts","kind":"import-statement","original":"./AutomationPanel"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/components/FunctionsPanel/FunctionsPanel.tsx":{"bytes":12138,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/FunctionsPanel/index.ts":{"bytes":783,"imports":[{"path":"src/components/FunctionsPanel/FunctionsPanel.tsx","kind":"import-statement","original":"./FunctionsPanel"},{"path":"src/components/FunctionsPanel/FunctionsPanel.tsx","kind":"import-statement","original":"./FunctionsPanel"}],"format":"esm"},"src/components/FunctionsContainer.tsx":{"bytes":3693,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"src/components/FunctionsPanel/index.ts","kind":"import-statement","original":"./FunctionsPanel"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/components/index.ts":{"bytes":1687,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/components/TriggerEditor/index.ts","kind":"import-statement","original":"./TriggerEditor"},{"path":"src/components/AutomationContainer.tsx","kind":"dynamic-import","original":"./AutomationContainer"},{"path":"src/components/AutomationPanel/index.ts","kind":"dynamic-import","original":"./AutomationPanel"},{"path":"src/components/FunctionsContainer.tsx","kind":"dynamic-import","original":"./FunctionsContainer"},{"path":"src/components/FunctionsPanel/index.ts","kind":"dynamic-import","original":"./FunctionsPanel"}],"format":"esm"},"src/capabilities/app-graph-builder.ts":{"bytes":11375,"imports":[{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/schema.ts":{"bytes":4024,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/index.ts":{"bytes":465,"imports":[{"path":"src/types/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/capabilities/intent-resolver.ts":{"bytes":9269,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/capabilities/react-surface.tsx":{"bytes":7273,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":1304,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/translations.ts":{"bytes":4690,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/AutomationPlugin.tsx":{"bytes":5379,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"src/index.ts":{"bytes":659,"imports":[{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/AutomationPlugin.tsx","kind":"import-statement","original":"./AutomationPlugin"}],"format":"esm"}},"outputs":{"dist/lib/browser/react-surface-4DFSM7OX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3604},"dist/lib/browser/react-surface-4DFSM7OX.mjs":{"imports":[{"path":"dist/lib/browser/chunk-ECSTS2UI.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-FSJZXTS2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface.tsx","inputs":{"src/capabilities/react-surface.tsx":{"bytesInOutput":1702}},"bytes":2002},"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5274},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-ECSTS2UI.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-FSJZXTS2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/app-graph-builder-ZTAUTFI4.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/intent-resolver-U3ZAQEFW.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/react-surface-4DFSM7OX.mjs","kind":"dynamic-import"}],"exports":["AUTOMATION_PLUGIN","AutomationContainer","AutomationPanel","AutomationPlugin","FunctionsContainer","FunctionsPanel","TriggerEditor","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/AutomationPlugin.tsx":{"bytesInOutput":1101},"src/capabilities/index.ts":{"bytesInOutput":268},"src/translations.ts":{"bytesInOutput":1362}},"bytes":3282},"dist/lib/browser/chunk-ECSTS2UI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":836},"dist/lib/browser/chunk-ECSTS2UI.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/AutomationPanel-ZWA6GOFY.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/FunctionsContainer-IOB333TX.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/FunctionsPanel-56ZKRVM5.mjs","kind":"dynamic-import"}],"exports":["AutomationContainer","AutomationPanel","FunctionsContainer","FunctionsPanel"],"inputs":{"src/components/index.ts":{"bytesInOutput":346}},"bytes":511},"dist/lib/browser/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/types/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-HN7OHFCB.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"}],"exports":["AutomationAction"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":158},"dist/lib/browser/AutomationPanel-ZWA6GOFY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/AutomationPanel-ZWA6GOFY.mjs":{"imports":[{"path":"dist/lib/browser/chunk-ERTIGJYE.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-FSJZXTS2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"}],"exports":["AutomationPanel","default"],"entryPoint":"src/components/AutomationPanel/index.ts","inputs":{},"bytes":269},"dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1782},"dist/lib/browser/AutomationContainer-VZNV2ZQF.mjs":{"imports":[{"path":"dist/lib/browser/chunk-ERTIGJYE.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-FSJZXTS2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["AutomationContainer","default"],"entryPoint":"src/components/AutomationContainer.tsx","inputs":{"src/components/AutomationContainer.tsx":{"bytesInOutput":968}},"bytes":1294},"dist/lib/browser/chunk-ERTIGJYE.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11702},"dist/lib/browser/chunk-ERTIGJYE.mjs":{"imports":[{"path":"dist/lib/browser/chunk-FSJZXTS2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"exports":["AutomationPanel","AutomationPanel_default"],"inputs":{"src/components/AutomationPanel/AutomationPanel.tsx":{"bytesInOutput":5288},"src/components/AutomationPanel/index.ts":{"bytesInOutput":47}},"bytes":5652},"dist/lib/browser/chunk-FSJZXTS2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14379},"dist/lib/browser/chunk-FSJZXTS2.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"exports":["TriggerEditor"],"inputs":{"src/components/TriggerEditor/TriggerEditor.tsx":{"bytesInOutput":2929},"src/components/TriggerEditor/FunctionInputEditor.tsx":{"bytesInOutput":2203},"src/components/TriggerEditor/SpecSelector.tsx":{"bytesInOutput":1877},"src/components/TriggerEditor/index.ts":{"bytesInOutput":0}},"bytes":7351},"dist/lib/browser/FunctionsPanel-56ZKRVM5.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/FunctionsPanel-56ZKRVM5.mjs":{"imports":[{"path":"dist/lib/browser/chunk-LYJVTIVD.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"}],"exports":["FunctionsPanel","default"],"entryPoint":"src/components/FunctionsPanel/index.ts","inputs":{},"bytes":233},"dist/lib/browser/FunctionsContainer-IOB333TX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1792},"dist/lib/browser/FunctionsContainer-IOB333TX.mjs":{"imports":[{"path":"dist/lib/browser/chunk-LYJVTIVD.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["FunctionsContainer","default"],"entryPoint":"src/components/FunctionsContainer.tsx","inputs":{"src/components/FunctionsContainer.tsx":{"bytesInOutput":980}},"bytes":1270},"dist/lib/browser/chunk-LYJVTIVD.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6639},"dist/lib/browser/chunk-LYJVTIVD.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"exports":["FunctionsPanel","FunctionsPanel_default"],"inputs":{"src/components/FunctionsPanel/FunctionsPanel.tsx":{"bytesInOutput":3203},"src/components/FunctionsPanel/index.ts":{"bytesInOutput":45}},"bytes":3504},"dist/lib/browser/app-graph-builder-ZTAUTFI4.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5343},"dist/lib/browser/app-graph-builder-ZTAUTFI4.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/app-graph-builder.ts","inputs":{"src/capabilities/app-graph-builder.ts":{"bytesInOutput":2525}},"bytes":2721},"dist/lib/browser/intent-resolver-U3ZAQEFW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4509},"dist/lib/browser/intent-resolver-U3ZAQEFW.mjs":{"imports":[{"path":"dist/lib/browser/chunk-HN7OHFCB.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/intent-resolver.ts","inputs":{"src/capabilities/intent-resolver.ts":{"bytesInOutput":2035}},"bytes":2268},"dist/lib/browser/chunk-HN7OHFCB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2058},"dist/lib/browser/chunk-HN7OHFCB.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["AutomationAction"],"inputs":{"src/types/schema.ts":{"bytesInOutput":963},"src/types/index.ts":{"bytesInOutput":0}},"bytes":1110},"dist/lib/browser/chunk-GW5U2DGT.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":814},"dist/lib/browser/chunk-GW5U2DGT.mjs":{"imports":[],"exports":["AUTOMATION_PLUGIN","meta"],"inputs":{"src/meta.ts":{"bytesInOutput":382}},"bytes":482}}}
1
+ {"inputs":{"src/components/TriggerEditor/FunctionInputEditor.tsx":{"bytes":8587,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"src/meta.ts":{"bytes":1682,"imports":[],"format":"esm"},"src/components/TriggerEditor/SpecSelector.tsx":{"bytes":6778,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/TriggerEditor/TriggerEditor.tsx":{"bytes":12185,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/components/TriggerEditor/FunctionInputEditor.tsx","kind":"import-statement","original":"./FunctionInputEditor"},{"path":"src/components/TriggerEditor/SpecSelector.tsx","kind":"import-statement","original":"./SpecSelector"}],"format":"esm"},"src/components/TriggerEditor/index.ts":{"bytes":503,"imports":[{"path":"src/components/TriggerEditor/TriggerEditor.tsx","kind":"import-statement","original":"./TriggerEditor"}],"format":"esm"},"src/components/AutomationPanel/AutomationPanel.tsx":{"bytes":20323,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/components/TriggerEditor/index.ts","kind":"import-statement","original":"../TriggerEditor"}],"format":"esm"},"src/components/AutomationPanel/index.ts":{"bytes":800,"imports":[{"path":"src/components/AutomationPanel/AutomationPanel.tsx","kind":"import-statement","original":"./AutomationPanel"},{"path":"src/components/AutomationPanel/AutomationPanel.tsx","kind":"import-statement","original":"./AutomationPanel"}],"format":"esm"},"src/components/AutomationContainer.tsx":{"bytes":3109,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"src/components/AutomationPanel/index.ts","kind":"import-statement","original":"./AutomationPanel"}],"format":"esm"},"src/components/FunctionsPanel/FunctionsPanel.tsx":{"bytes":12134,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/FunctionsPanel/index.ts":{"bytes":783,"imports":[{"path":"src/components/FunctionsPanel/FunctionsPanel.tsx","kind":"import-statement","original":"./FunctionsPanel"},{"path":"src/components/FunctionsPanel/FunctionsPanel.tsx","kind":"import-statement","original":"./FunctionsPanel"}],"format":"esm"},"src/components/FunctionsContainer.tsx":{"bytes":3192,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"src/components/FunctionsPanel/index.ts","kind":"import-statement","original":"./FunctionsPanel"}],"format":"esm"},"src/components/index.ts":{"bytes":1687,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/components/TriggerEditor/index.ts","kind":"import-statement","original":"./TriggerEditor"},{"path":"src/components/AutomationContainer.tsx","kind":"dynamic-import","original":"./AutomationContainer"},{"path":"src/components/AutomationPanel/index.ts","kind":"dynamic-import","original":"./AutomationPanel"},{"path":"src/components/FunctionsContainer.tsx","kind":"dynamic-import","original":"./FunctionsContainer"},{"path":"src/components/FunctionsPanel/index.ts","kind":"dynamic-import","original":"./FunctionsPanel"}],"format":"esm"},"src/capabilities/app-graph-builder.ts":{"bytes":11375,"imports":[{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/schema.ts":{"bytes":4024,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/index.ts":{"bytes":465,"imports":[{"path":"src/types/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/capabilities/intent-resolver.ts":{"bytes":9190,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/capabilities/react-surface.tsx":{"bytes":7273,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":1304,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/translations.ts":{"bytes":4690,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/AutomationPlugin.tsx":{"bytes":5379,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"src/index.ts":{"bytes":659,"imports":[{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/AutomationPlugin.tsx","kind":"import-statement","original":"./AutomationPlugin"}],"format":"esm"}},"outputs":{"dist/lib/browser/react-surface-N4ZVZH4O.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3604},"dist/lib/browser/react-surface-N4ZVZH4O.mjs":{"imports":[{"path":"dist/lib/browser/chunk-IAUUJ5RL.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-S4SM663I.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface.tsx","inputs":{"src/capabilities/react-surface.tsx":{"bytesInOutput":1702}},"bytes":2002},"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5278},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-IAUUJ5RL.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-S4SM663I.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/app-graph-builder-4OFKIRAI.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/intent-resolver-4PSYSQQG.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/react-surface-N4ZVZH4O.mjs","kind":"dynamic-import"}],"exports":["AUTOMATION_PLUGIN","AutomationContainer","AutomationPanel","AutomationPlugin","FunctionsContainer","FunctionsPanel","TriggerEditor","meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/AutomationPlugin.tsx":{"bytesInOutput":1101},"src/capabilities/index.ts":{"bytesInOutput":268},"src/translations.ts":{"bytesInOutput":1362}},"bytes":3282},"dist/lib/browser/chunk-IAUUJ5RL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":836},"dist/lib/browser/chunk-IAUUJ5RL.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"dist/lib/browser/AutomationContainer-A46DB774.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/AutomationPanel-TQXXZHLR.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/FunctionsContainer-U4HASI4P.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/FunctionsPanel-I443Y6KB.mjs","kind":"dynamic-import"}],"exports":["AutomationContainer","AutomationPanel","FunctionsContainer","FunctionsPanel"],"inputs":{"src/components/index.ts":{"bytesInOutput":346}},"bytes":511},"dist/lib/browser/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/types/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-HN7OHFCB.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"}],"exports":["AutomationAction"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":158},"dist/lib/browser/AutomationPanel-TQXXZHLR.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/AutomationPanel-TQXXZHLR.mjs":{"imports":[{"path":"dist/lib/browser/chunk-PUUREQ2B.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-S4SM663I.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"}],"exports":["AutomationPanel","default"],"entryPoint":"src/components/AutomationPanel/index.ts","inputs":{},"bytes":269},"dist/lib/browser/AutomationContainer-A46DB774.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1513},"dist/lib/browser/AutomationContainer-A46DB774.mjs":{"imports":[{"path":"dist/lib/browser/chunk-PUUREQ2B.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-S4SM663I.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"exports":["AutomationContainer","default"],"entryPoint":"src/components/AutomationContainer.tsx","inputs":{"src/components/AutomationContainer.tsx":{"bytesInOutput":811}},"bytes":1137},"dist/lib/browser/chunk-PUUREQ2B.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11141},"dist/lib/browser/chunk-PUUREQ2B.mjs":{"imports":[{"path":"dist/lib/browser/chunk-S4SM663I.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"exports":["AutomationPanel","AutomationPanel_default"],"inputs":{"src/components/AutomationPanel/AutomationPanel.tsx":{"bytesInOutput":5085},"src/components/AutomationPanel/index.ts":{"bytesInOutput":47}},"bytes":5449},"dist/lib/browser/chunk-S4SM663I.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":13994},"dist/lib/browser/chunk-S4SM663I.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"exports":["TriggerEditor"],"inputs":{"src/components/TriggerEditor/TriggerEditor.tsx":{"bytesInOutput":2917},"src/components/TriggerEditor/FunctionInputEditor.tsx":{"bytesInOutput":2203},"src/components/TriggerEditor/SpecSelector.tsx":{"bytesInOutput":1764},"src/components/TriggerEditor/index.ts":{"bytesInOutput":0}},"bytes":7226},"dist/lib/browser/FunctionsPanel-I443Y6KB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/FunctionsPanel-I443Y6KB.mjs":{"imports":[{"path":"dist/lib/browser/chunk-Z5DT4MHW.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"}],"exports":["FunctionsPanel","default"],"entryPoint":"src/components/FunctionsPanel/index.ts","inputs":{},"bytes":233},"dist/lib/browser/FunctionsContainer-U4HASI4P.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1531},"dist/lib/browser/FunctionsContainer-U4HASI4P.mjs":{"imports":[{"path":"dist/lib/browser/chunk-Z5DT4MHW.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"exports":["FunctionsContainer","default"],"entryPoint":"src/components/FunctionsContainer.tsx","inputs":{"src/components/FunctionsContainer.tsx":{"bytesInOutput":823}},"bytes":1113},"dist/lib/browser/chunk-Z5DT4MHW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6640},"dist/lib/browser/chunk-Z5DT4MHW.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"exports":["FunctionsPanel","FunctionsPanel_default"],"inputs":{"src/components/FunctionsPanel/FunctionsPanel.tsx":{"bytesInOutput":3203},"src/components/FunctionsPanel/index.ts":{"bytesInOutput":45}},"bytes":3504},"dist/lib/browser/app-graph-builder-4OFKIRAI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5344},"dist/lib/browser/app-graph-builder-4OFKIRAI.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/app-graph-builder.ts","inputs":{"src/capabilities/app-graph-builder.ts":{"bytesInOutput":2525}},"bytes":2721},"dist/lib/browser/intent-resolver-4PSYSQQG.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4442},"dist/lib/browser/intent-resolver-4PSYSQQG.mjs":{"imports":[{"path":"dist/lib/browser/chunk-HN7OHFCB.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/functions","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/intent-resolver.ts","inputs":{"src/capabilities/intent-resolver.ts":{"bytesInOutput":2028}},"bytes":2261},"dist/lib/browser/chunk-HN7OHFCB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2058},"dist/lib/browser/chunk-HN7OHFCB.mjs":{"imports":[{"path":"dist/lib/browser/chunk-GW5U2DGT.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true}],"exports":["AutomationAction"],"inputs":{"src/types/schema.ts":{"bytesInOutput":963},"src/types/index.ts":{"bytesInOutput":0}},"bytes":1110},"dist/lib/browser/chunk-GW5U2DGT.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":814},"dist/lib/browser/chunk-GW5U2DGT.mjs":{"imports":[],"exports":["AUTOMATION_PLUGIN","meta"],"inputs":{"src/meta.ts":{"bytesInOutput":382}},"bytes":482}}}
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  AutomationContainer,
3
3
  FunctionsContainer
4
- } from "./chunk-ECSTS2UI.mjs";
5
- import "./chunk-FSJZXTS2.mjs";
4
+ } from "./chunk-IAUUJ5RL.mjs";
5
+ import "./chunk-S4SM663I.mjs";
6
6
  import {
7
7
  meta
8
8
  } from "./chunk-GW5U2DGT.mjs";
@@ -61,4 +61,4 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
61
61
  export {
62
62
  react_surface_default as default
63
63
  };
64
- //# sourceMappingURL=react-surface-4DFSM7OX.mjs.map
64
+ //# sourceMappingURL=react-surface-N4ZVZH4O.mjs.map
@@ -1,8 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  AutomationPanel
4
- } from "./chunk-HIMYPGHF.mjs";
5
- import "./chunk-AZH66CED.mjs";
4
+ } from "./chunk-JU7JA5X4.mjs";
5
+ import "./chunk-ZOJVKPCA.mjs";
6
6
  import {
7
7
  AUTOMATION_PLUGIN
8
8
  } from "./chunk-NK5N3QKD.mjs";
@@ -11,22 +11,19 @@ import {
11
11
  import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
12
12
  import React from "react";
13
13
  import { useTranslation } from "@dxos/react-ui";
14
- import { ControlSection, ControlPage } from "@dxos/react-ui-form";
15
- import { StackItem } from "@dxos/react-ui-stack";
14
+ import { ControlPage, ControlSection } from "@dxos/react-ui-form";
16
15
  var AutomationContainer = (props) => {
17
16
  var _effect = _useSignals();
18
17
  try {
19
18
  const { t } = useTranslation(AUTOMATION_PLUGIN);
20
- return /* @__PURE__ */ React.createElement(StackItem.Content, {
21
- classNames: "block overflow-y-auto"
22
- }, /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
19
+ return /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
23
20
  title: t("automation verbose label", {
24
21
  ns: AUTOMATION_PLUGIN
25
22
  }),
26
23
  description: t("automation description", {
27
24
  ns: AUTOMATION_PLUGIN
28
25
  })
29
- }, /* @__PURE__ */ React.createElement(AutomationPanel, props))));
26
+ }, /* @__PURE__ */ React.createElement(AutomationPanel, props)));
30
27
  } finally {
31
28
  _effect.f();
32
29
  }
@@ -36,4 +33,4 @@ export {
36
33
  AutomationContainer,
37
34
  AutomationContainer_default as default
38
35
  };
39
- //# sourceMappingURL=AutomationContainer-WMIH3F4V.mjs.map
36
+ //# sourceMappingURL=AutomationContainer-5S3BBZVY.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/AutomationContainer.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { useTranslation } from '@dxos/react-ui';\nimport { ControlPage, ControlSection } from '@dxos/react-ui-form';\n\nimport { AUTOMATION_PLUGIN } from '../meta';\n\nimport { AutomationPanel, type AutomationPanelProps } from './AutomationPanel';\n\nexport const AutomationContainer = (props: AutomationPanelProps) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n return (\n <ControlPage>\n <ControlSection\n title={t('automation verbose label', { ns: AUTOMATION_PLUGIN })}\n description={t('automation description', { ns: AUTOMATION_PLUGIN })}\n >\n <AutomationPanel {...props} />\n </ControlSection>\n </ControlPage>\n );\n};\n\nexport default AutomationContainer;\n"],
5
+ "mappings": ";;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,sBAAsB;AAC/B,SAASC,aAAaC,sBAAsB;AAMrC,IAAMC,sBAAsB,CAACC,UAAAA;;;AAClC,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,WACE,sBAAA,cAACC,aAAAA,MACC,sBAAA,cAACC,gBAAAA;MACCC,OAAOL,EAAE,4BAA4B;QAAEM,IAAIJ;MAAkB,CAAA;MAC7DK,aAAaP,EAAE,0BAA0B;QAAEM,IAAIJ;MAAkB,CAAA;OAEjE,sBAAA,cAACM,iBAAoBT,KAAAA,CAAAA,CAAAA;;;;AAI7B;AAEA,IAAA,8BAAeD;",
6
+ "names": ["React", "useTranslation", "ControlPage", "ControlSection", "AutomationContainer", "props", "t", "useTranslation", "AUTOMATION_PLUGIN", "ControlPage", "ControlSection", "title", "ns", "description", "AutomationPanel"]
7
+ }
@@ -2,11 +2,11 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  AutomationPanel,
4
4
  AutomationPanel_default
5
- } from "./chunk-HIMYPGHF.mjs";
6
- import "./chunk-AZH66CED.mjs";
5
+ } from "./chunk-JU7JA5X4.mjs";
6
+ import "./chunk-ZOJVKPCA.mjs";
7
7
  import "./chunk-NK5N3QKD.mjs";
8
8
  export {
9
9
  AutomationPanel,
10
10
  AutomationPanel_default as default
11
11
  };
12
- //# sourceMappingURL=AutomationPanel-YYUMSK2W.mjs.map
12
+ //# sourceMappingURL=AutomationPanel-KUP2555Y.mjs.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  FunctionsPanel
4
- } from "./chunk-ZGPUV5VS.mjs";
4
+ } from "./chunk-CX2AILIS.mjs";
5
5
  import {
6
6
  AUTOMATION_PLUGIN
7
7
  } from "./chunk-NK5N3QKD.mjs";
@@ -11,14 +11,11 @@ import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
11
11
  import React from "react";
12
12
  import { useTranslation } from "@dxos/react-ui";
13
13
  import { ControlPage, ControlSection } from "@dxos/react-ui-form";
14
- import { StackItem } from "@dxos/react-ui-stack";
15
14
  var FunctionsContainer = ({ space }) => {
16
15
  var _effect = _useSignals();
17
16
  try {
18
17
  const { t } = useTranslation(AUTOMATION_PLUGIN);
19
- return /* @__PURE__ */ React.createElement(StackItem.Content, {
20
- classNames: "block overflow-y-auto"
21
- }, /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
18
+ return /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
22
19
  title: t("functions verbose label", {
23
20
  ns: AUTOMATION_PLUGIN
24
21
  }),
@@ -27,7 +24,7 @@ var FunctionsContainer = ({ space }) => {
27
24
  })
28
25
  }, /* @__PURE__ */ React.createElement(FunctionsPanel, {
29
26
  space
30
- }))));
27
+ })));
31
28
  } finally {
32
29
  _effect.f();
33
30
  }
@@ -37,4 +34,4 @@ export {
37
34
  FunctionsContainer,
38
35
  FunctionsContainer_default as default
39
36
  };
40
- //# sourceMappingURL=FunctionsContainer-DJWB6WFH.mjs.map
37
+ //# sourceMappingURL=FunctionsContainer-VZIVURH6.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/FunctionsContainer.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type Space } from '@dxos/react-client/echo';\nimport { useTranslation } from '@dxos/react-ui';\nimport { ControlPage, ControlSection } from '@dxos/react-ui-form';\n\nimport { AUTOMATION_PLUGIN } from '../meta';\n\nimport { FunctionsPanel } from './FunctionsPanel';\n\nexport const FunctionsContainer = ({ space }: { space: Space }) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n return (\n <ControlPage>\n <ControlSection\n title={t('functions verbose label', { ns: AUTOMATION_PLUGIN })}\n description={t('functions description', { ns: AUTOMATION_PLUGIN })}\n >\n <FunctionsPanel space={space} />\n </ControlSection>\n </ControlPage>\n );\n};\n\nexport default FunctionsContainer;\n"],
5
+ "mappings": ";;;;;;;;;;AAIA,OAAOA,WAAW;AAGlB,SAASC,sBAAsB;AAC/B,SAASC,aAAaC,sBAAsB;AAMrC,IAAMC,qBAAqB,CAAC,EAAEC,MAAK,MAAoB;;;AAC5D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,WACE,sBAAA,cAACC,aAAAA,MACC,sBAAA,cAACC,gBAAAA;MACCC,OAAOL,EAAE,2BAA2B;QAAEM,IAAIJ;MAAkB,CAAA;MAC5DK,aAAaP,EAAE,yBAAyB;QAAEM,IAAIJ;MAAkB,CAAA;OAEhE,sBAAA,cAACM,gBAAAA;MAAeT;;;;;AAIxB;AAEA,IAAA,6BAAeD;",
6
+ "names": ["React", "useTranslation", "ControlPage", "ControlSection", "FunctionsContainer", "space", "t", "useTranslation", "AUTOMATION_PLUGIN", "ControlPage", "ControlSection", "title", "ns", "description", "FunctionsPanel"]
7
+ }
@@ -2,10 +2,10 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  FunctionsPanel,
4
4
  FunctionsPanel_default
5
- } from "./chunk-ZGPUV5VS.mjs";
5
+ } from "./chunk-CX2AILIS.mjs";
6
6
  import "./chunk-NK5N3QKD.mjs";
7
7
  export {
8
8
  FunctionsPanel,
9
9
  FunctionsPanel_default as default
10
10
  };
11
- //# sourceMappingURL=FunctionsPanel-KGIOZSPZ.mjs.map
11
+ //# sourceMappingURL=FunctionsPanel-ELINCXPW.mjs.map
@@ -9,7 +9,7 @@ import { Option, pipe } from "effect";
9
9
  import { Capabilities, contributes } from "@dxos/app-framework";
10
10
  import { Obj } from "@dxos/echo";
11
11
  import { ScriptType } from "@dxos/functions";
12
- import { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from "@dxos/plugin-deck/types";
12
+ import { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
13
13
  import { createExtension } from "@dxos/plugin-graph";
14
14
  import { SPACE_PLUGIN } from "@dxos/plugin-space";
15
15
  var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBuilder, [
@@ -78,4 +78,4 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
78
78
  export {
79
79
  app_graph_builder_default as default
80
80
  };
81
- //# sourceMappingURL=app-graph-builder-3FP63ZSG.mjs.map
81
+ //# sourceMappingURL=app-graph-builder-555IHYOB.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport { Option, pipe } from 'effect';\n\nimport { Capabilities, contributes, type PluginContext } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { ScriptType } from '@dxos/functions';\nimport { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport { createExtension } from '@dxos/plugin-graph';\nimport { SPACE_PLUGIN } from '@dxos/plugin-space';\n\nimport { meta } from '../meta';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${meta.id}/space-settings-automation`,\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${SPACE_PLUGIN}/settings` ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: `automation-${node.id}`,\n type: `${meta.id}/space-settings-automation`,\n data: `${meta.id}/space-settings-automation`,\n properties: {\n label: ['automation panel label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/space-settings-functions`,\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${SPACE_PLUGIN}/settings` ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: `functions-${node.id}`,\n type: `${meta.id}/space-settings-functions`,\n data: `${meta.id}/space-settings-functions`,\n properties: {\n label: ['functions panel label', { ns: meta.id }],\n icon: 'ph--function--regular',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/script-companion`,\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(ScriptType, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'automation'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'automation',\n properties: {\n label: ['script automation label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n"],
5
- "mappings": ";;;;;AAIA,SAASA,UAAU;AACnB,SAASC,QAAQC,YAAY;AAE7B,SAASC,cAAcC,mBAAuC;AAC9D,SAASC,WAAW;AACpB,SAASC,kBAAkB;AAC3B,SAASC,sBAAsBC,iCAAiC;AAChE,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAI7B,IAAA,4BAAe,CAACC,YACdC,YAAYC,aAAaC,iBAAiB;EACxCC,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUA,MAAKO,SAAS,GAAGC,YAAAA,cAA0BH,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACpGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI,cAAcG,MAAKH,EAAE;QACzBU,MAAM,GAAGT,KAAKD,EAAE;QAChBe,MAAM,GAAGd,KAAKD,EAAE;QAChBgB,YAAY;UACVC,OAAO;YAAC;YAA0B;cAAEC,IAAIjB,KAAKD;YAAG;;UAChDmB,MAAM;QACR;MACF;KACD,GACDX,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACArB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUA,MAAKO,SAAS,GAAGC,YAAAA,cAA0BH,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACpGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI,aAAaG,MAAKH,EAAE;QACxBU,MAAM,GAAGT,KAAKD,EAAE;QAChBe,MAAM,GAAGd,KAAKD,EAAE;QAChBgB,YAAY;UACVC,OAAO;YAAC;YAAyB;cAAEC,IAAIjB,KAAKD;YAAG;;UAC/CmB,MAAM;QACR;MACF;KACD,GACDX,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACArB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUkB,IAAIC,WAAWC,YAAYpB,MAAKY,IAAI,IAAIP,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACjGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI;UAACG,MAAKH;UAAI;UAAcwB,KAAKC,yBAAAA;QACjCf,MAAMgB;QACNX,MAAM;QACNC,YAAY;UACVC,OAAO;YAAC;YAA2B;cAAEC,IAAIjB,KAAKD;YAAG;;UACjDmB,MAAM;UACNQ,aAAa;QACf;MACF;KACD,GACDnB,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;CACD;",
6
- "names": ["Rx", "Option", "pipe", "Capabilities", "contributes", "Obj", "ScriptType", "PLANK_COMPANION_TYPE", "ATTENDABLE_PATH_SEPARATOR", "createExtension", "SPACE_PLUGIN", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "meta", "connector", "node", "Rx", "make", "get", "pipe", "Option", "flatMap", "type", "SPACE_PLUGIN", "some", "none", "map", "data", "properties", "label", "ns", "icon", "getOrElse", "Obj", "instanceOf", "ScriptType", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "disposition"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\nimport { Option, pipe } from 'effect';\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { ScriptType } from '@dxos/functions';\nimport { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { createExtension } from '@dxos/plugin-graph';\nimport { SPACE_PLUGIN } from '@dxos/plugin-space';\n\nimport { meta } from '../meta';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${meta.id}/space-settings-automation`,\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${SPACE_PLUGIN}/settings` ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: `automation-${node.id}`,\n type: `${meta.id}/space-settings-automation`,\n data: `${meta.id}/space-settings-automation`,\n properties: {\n label: ['automation panel label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/space-settings-functions`,\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (node.type === `${SPACE_PLUGIN}/settings` ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: `functions-${node.id}`,\n type: `${meta.id}/space-settings-functions`,\n data: `${meta.id}/space-settings-functions`,\n properties: {\n label: ['functions panel label', { ns: meta.id }],\n icon: 'ph--function--regular',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/script-companion`,\n connector: (node) =>\n Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(ScriptType, node.data) ? Option.some(node) : Option.none())),\n Option.map((node) => [\n {\n id: [node.id, 'automation'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'automation',\n properties: {\n label: ['script automation label', { ns: meta.id }],\n icon: 'ph--lightning--regular',\n disposition: 'hidden',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;AAIA,SAASA,UAAU;AACnB,SAASC,QAAQC,YAAY;AAE7B,SAASC,cAAkCC,mBAAmB;AAC9D,SAASC,WAAW;AACpB,SAASC,kBAAkB;AAC3B,SAASC,2BAA2BC,4BAA4B;AAChE,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAI7B,IAAA,4BAAe,CAACC,YACdC,YAAYC,aAAaC,iBAAiB;EACxCC,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUA,MAAKO,SAAS,GAAGC,YAAAA,cAA0BH,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACpGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI,cAAcG,MAAKH,EAAE;QACzBU,MAAM,GAAGT,KAAKD,EAAE;QAChBe,MAAM,GAAGd,KAAKD,EAAE;QAChBgB,YAAY;UACVC,OAAO;YAAC;YAA0B;cAAEC,IAAIjB,KAAKD;YAAG;;UAChDmB,MAAM;QACR;MACF;KACD,GACDX,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACArB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUA,MAAKO,SAAS,GAAGC,YAAAA,cAA0BH,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACpGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI,aAAaG,MAAKH,EAAE;QACxBU,MAAM,GAAGT,KAAKD,EAAE;QAChBe,MAAM,GAAGd,KAAKD,EAAE;QAChBgB,YAAY;UACVC,OAAO;YAAC;YAAyB;cAAEC,IAAIjB,KAAKD;YAAG;;UAC/CmB,MAAM;QACR;MACF;KACD,GACDX,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;EACArB,gBAAgB;IACdC,IAAI,GAAGC,KAAKD,EAAE;IACdE,WAAW,CAACC,SACVC,GAAGC,KAAK,CAACC,QACPC,KACED,IAAIH,IAAAA,GACJK,OAAOC,QAAQ,CAACN,UAAUkB,IAAIC,WAAWC,YAAYpB,MAAKY,IAAI,IAAIP,OAAOI,KAAKT,KAAAA,IAAQK,OAAOK,KAAI,CAAA,GACjGL,OAAOM,IAAI,CAACX,UAAS;MACnB;QACEH,IAAI;UAACG,MAAKH;UAAI;UAAcwB,KAAKC,yBAAAA;QACjCf,MAAMgB;QACNX,MAAM;QACNC,YAAY;UACVC,OAAO;YAAC;YAA2B;cAAEC,IAAIjB,KAAKD;YAAG;;UACjDmB,MAAM;UACNQ,aAAa;QACf;MACF;KACD,GACDnB,OAAOY,UAAU,MAAM,CAAA,CAAE,CAAA,CAAA;EAGjC,CAAA;CACD;",
6
+ "names": ["Rx", "Option", "pipe", "Capabilities", "contributes", "Obj", "ScriptType", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "createExtension", "SPACE_PLUGIN", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "meta", "connector", "node", "Rx", "make", "get", "pipe", "Option", "flatMap", "type", "SPACE_PLUGIN", "some", "none", "map", "data", "properties", "label", "ns", "icon", "getOrElse", "Obj", "instanceOf", "ScriptType", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "disposition"]
7
7
  }
@@ -2,10 +2,10 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
 
3
3
  // src/components/index.ts
4
4
  import { lazy } from "react";
5
- var AutomationContainer = lazy(() => import("./AutomationContainer-WMIH3F4V.mjs"));
6
- var AutomationPanel = lazy(() => import("./AutomationPanel-YYUMSK2W.mjs"));
7
- var FunctionsContainer = lazy(() => import("./FunctionsContainer-DJWB6WFH.mjs"));
8
- var FunctionsPanel = lazy(() => import("./FunctionsPanel-KGIOZSPZ.mjs"));
5
+ var AutomationContainer = lazy(() => import("./AutomationContainer-5S3BBZVY.mjs"));
6
+ var AutomationPanel = lazy(() => import("./AutomationPanel-KUP2555Y.mjs"));
7
+ var FunctionsContainer = lazy(() => import("./FunctionsContainer-VZIVURH6.mjs"));
8
+ var FunctionsPanel = lazy(() => import("./FunctionsPanel-ELINCXPW.mjs"));
9
9
 
10
10
  export {
11
11
  AutomationContainer,
@@ -13,4 +13,4 @@ export {
13
13
  FunctionsContainer,
14
14
  FunctionsPanel
15
15
  };
16
- //# sourceMappingURL=chunk-SGZPTJ47.mjs.map
16
+ //# sourceMappingURL=chunk-7XZGYNT6.mjs.map
@@ -7,7 +7,7 @@ import {
7
7
  import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
8
8
  import { Schema } from "effect";
9
9
  import React, { useCallback, useMemo } from "react";
10
- import { createIntent, LayoutAction, useIntentDispatcher } from "@dxos/app-framework";
10
+ import { LayoutAction, createIntent, useIntentDispatcher } from "@dxos/app-framework";
11
11
  import { FunctionType, ScriptType } from "@dxos/functions";
12
12
  import { Filter, fullyQualifiedId, useQuery } from "@dxos/react-client/echo";
13
13
  import { Button, useTranslation } from "@dxos/react-ui";
@@ -92,4 +92,4 @@ export {
92
92
  FunctionsPanel,
93
93
  FunctionsPanel_default
94
94
  };
95
- //# sourceMappingURL=chunk-ZGPUV5VS.mjs.map
95
+ //# sourceMappingURL=chunk-CX2AILIS.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/FunctionsPanel/FunctionsPanel.tsx", "../../../src/components/FunctionsPanel/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\nimport React, { useCallback, useMemo } from 'react';\n\nimport { createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { FunctionType, ScriptType } from '@dxos/functions';\nimport { Filter, fullyQualifiedId, useQuery, type Space } from '@dxos/react-client/echo';\nimport { Button, useTranslation } from '@dxos/react-ui';\nimport { controlItemClasses } from '@dxos/react-ui-form';\nimport { List } from '@dxos/react-ui-list';\nimport { ghostHover, mx } from '@dxos/react-ui-theme';\n\nimport { AUTOMATION_PLUGIN } from '../../meta';\n\nconst grid = 'grid grid-cols-[1fr_auto] min-bs-[2.5rem]';\n\nexport type FunctionsPanelProps = {\n space: Space;\n};\n\nexport const FunctionsPanel = ({ space }: FunctionsPanelProps) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n const functions = useQuery(space, Filter.type(FunctionType));\n const scripts = useQuery(space, Filter.type(ScriptType));\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n\n const functionToScriptMap = useMemo(\n () =>\n functions.reduce(\n (map, func) => {\n const scriptId = func.source?.target?.id;\n if (scriptId) {\n const script = scripts.find((s) => s.id === scriptId);\n if (script) {\n map[func.id] = script;\n }\n }\n return map;\n },\n {} as Record<string, ScriptType>,\n ),\n [functions, scripts],\n );\n\n const getScriptName = useCallback(\n (func: FunctionType) => {\n const script = functionToScriptMap[func.id];\n return script?.name;\n },\n [functionToScriptMap],\n );\n\n const handleGoToScript = useCallback(\n (func: FunctionType) => {\n const script = functionToScriptMap[func.id];\n if (script) {\n void dispatch(createIntent(LayoutAction.Open, { part: 'main', subject: [fullyQualifiedId(script)] }));\n }\n },\n [functionToScriptMap, dispatch],\n );\n\n return (\n <div role='none' className={mx(controlItemClasses)}>\n {functions.length > 0 && (\n <List.Root<FunctionType> items={functions} isItem={Schema.is(FunctionType)} getId={(func) => func.id}>\n {({ items }) => (\n <div role='list' className='flex flex-col w-full'>\n {items?.map((func) => (\n <List.Item<FunctionType>\n key={func.id}\n item={func}\n classNames={mx(grid, ghostHover, 'items-center', 'pli-2', 'min-bs-[3rem]')}\n >\n <div className='flex flex-col truncate'>\n <List.ItemTitle classNames='truncate'>{func.name}</List.ItemTitle>\n {getScriptName(func) && (\n <div className='text-xs text-description truncate'>{getScriptName(func)}</div>\n )}\n </div>\n {functionToScriptMap[func.id] && (\n <Button onClick={() => handleGoToScript(func)}>{t('go to function source button label')}</Button>\n )}\n </List.Item>\n ))}\n </div>\n )}\n </List.Root>\n )}\n\n {functions.length === 0 && <div className='text-center plb-4 text-gray-500'>{t('no functions found')}</div>}\n </div>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { FunctionsPanel } from './FunctionsPanel';\n\nexport * from './FunctionsPanel';\nexport default FunctionsPanel;\n"],
5
- "mappings": ";;;;;;AAIA,SAASA,cAAc;AACvB,OAAOC,SAASC,aAAaC,eAAe;AAE5C,SAASC,cAAcC,cAAcC,2BAA2B;AAChE,SAASC,cAAcC,kBAAkB;AACzC,SAASC,QAAQC,kBAAkBC,gBAA4B;AAC/D,SAASC,QAAQC,sBAAsB;AACvC,SAASC,0BAA0B;AACnC,SAASC,YAAY;AACrB,SAASC,YAAYC,UAAU;AAI/B,IAAMC,OAAO;AAMN,IAAMC,iBAAiB,CAAC,EAAEC,MAAK,MAAuB;;;AAC3D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,UAAMC,YAAYC,SAASL,OAAOM,OAAOC,KAAKC,YAAAA,CAAAA;AAC9C,UAAMC,UAAUJ,SAASL,OAAOM,OAAOC,KAAKG,UAAAA,CAAAA;AAC5C,UAAM,EAAEC,iBAAiBC,SAAQ,IAAKC,oBAAAA;AAEtC,UAAMC,sBAAsBC,QAC1B,MACEX,UAAUY,OACR,CAACC,KAAKC,SAAAA;AACJ,YAAMC,WAAWD,KAAKE,QAAQC,QAAQC;AACtC,UAAIH,UAAU;AACZ,cAAMI,SAASd,QAAQe,KAAK,CAACC,MAAMA,EAAEH,OAAOH,QAAAA;AAC5C,YAAII,QAAQ;AACVN,cAAIC,KAAKI,EAAE,IAAIC;QACjB;MACF;AACA,aAAON;IACT,GACA,CAAC,CAAA,GAEL;MAACb;MAAWK;KAAQ;AAGtB,UAAMiB,gBAAgBC,YACpB,CAACT,SAAAA;AACC,YAAMK,SAAST,oBAAoBI,KAAKI,EAAE;AAC1C,aAAOC,QAAQK;IACjB,GACA;MAACd;KAAoB;AAGvB,UAAMe,mBAAmBF,YACvB,CAACT,SAAAA;AACC,YAAMK,SAAST,oBAAoBI,KAAKI,EAAE;AAC1C,UAAIC,QAAQ;AACV,aAAKX,SAASkB,aAAaC,aAAaC,MAAM;UAAEC,MAAM;UAAQC,SAAS;YAACC,iBAAiBZ,MAAAA;;QAAS,CAAA,CAAA;MACpG;IACF,GACA;MAACT;MAAqBF;KAAS;AAGjC,WACE,sBAAA,cAACwB,OAAAA;MAAIC,MAAK;MAAOC,WAAWC,GAAGC,kBAAAA;OAC5BpC,UAAUqC,SAAS,KAClB,sBAAA,cAACC,KAAKC,MAAI;MAAeC,OAAOxC;MAAWyC,QAAQC,OAAOC,GAAGvC,YAAAA;MAAewC,OAAO,CAAC9B,SAASA,KAAKI;OAC/F,CAAC,EAAEsB,MAAK,MACP,sBAAA,cAACR,OAAAA;MAAIC,MAAK;MAAOC,WAAU;OACxBM,OAAO3B,IAAI,CAACC,SACX,sBAAA,cAACwB,KAAKO,MAAI;MACRC,KAAKhC,KAAKI;MACV6B,MAAMjC;MACNkC,YAAYb,GAAGzC,MAAMuD,YAAY,gBAAgB,SAAS,eAAA;OAE1D,sBAAA,cAACjB,OAAAA;MAAIE,WAAU;OACb,sBAAA,cAACI,KAAKY,WAAS;MAACF,YAAW;OAAYlC,KAAKU,IAAI,GAC/CF,cAAcR,IAAAA,KACb,sBAAA,cAACkB,OAAAA;MAAIE,WAAU;OAAqCZ,cAAcR,IAAAA,CAAAA,CAAAA,GAGrEJ,oBAAoBI,KAAKI,EAAE,KAC1B,sBAAA,cAACiC,QAAAA;MAAOC,SAAS,MAAM3B,iBAAiBX,IAAAA;OAAQjB,EAAE,oCAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAS/DG,UAAUqC,WAAW,KAAK,sBAAA,cAACL,OAAAA;MAAIE,WAAU;OAAmCrC,EAAE,oBAAA,CAAA,CAAA;;;;AAGrF;;;ACzFA,IAAA,yBAAewD;",
6
- "names": ["Schema", "React", "useCallback", "useMemo", "createIntent", "LayoutAction", "useIntentDispatcher", "FunctionType", "ScriptType", "Filter", "fullyQualifiedId", "useQuery", "Button", "useTranslation", "controlItemClasses", "List", "ghostHover", "mx", "grid", "FunctionsPanel", "space", "t", "useTranslation", "AUTOMATION_PLUGIN", "functions", "useQuery", "Filter", "type", "FunctionType", "scripts", "ScriptType", "dispatchPromise", "dispatch", "useIntentDispatcher", "functionToScriptMap", "useMemo", "reduce", "map", "func", "scriptId", "source", "target", "id", "script", "find", "s", "getScriptName", "useCallback", "name", "handleGoToScript", "createIntent", "LayoutAction", "Open", "part", "subject", "fullyQualifiedId", "div", "role", "className", "mx", "controlItemClasses", "length", "List", "Root", "items", "isItem", "Schema", "is", "getId", "Item", "key", "item", "classNames", "ghostHover", "ItemTitle", "Button", "onClick", "FunctionsPanel"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\nimport React, { useCallback, useMemo } from 'react';\n\nimport { LayoutAction, createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { FunctionType, ScriptType } from '@dxos/functions';\nimport { Filter, type Space, fullyQualifiedId, useQuery } from '@dxos/react-client/echo';\nimport { Button, useTranslation } from '@dxos/react-ui';\nimport { controlItemClasses } from '@dxos/react-ui-form';\nimport { List } from '@dxos/react-ui-list';\nimport { ghostHover, mx } from '@dxos/react-ui-theme';\n\nimport { AUTOMATION_PLUGIN } from '../../meta';\n\nconst grid = 'grid grid-cols-[1fr_auto] min-bs-[2.5rem]';\n\nexport type FunctionsPanelProps = {\n space: Space;\n};\n\nexport const FunctionsPanel = ({ space }: FunctionsPanelProps) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n const functions = useQuery(space, Filter.type(FunctionType));\n const scripts = useQuery(space, Filter.type(ScriptType));\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n\n const functionToScriptMap = useMemo(\n () =>\n functions.reduce(\n (map, func) => {\n const scriptId = func.source?.target?.id;\n if (scriptId) {\n const script = scripts.find((s) => s.id === scriptId);\n if (script) {\n map[func.id] = script;\n }\n }\n return map;\n },\n {} as Record<string, ScriptType>,\n ),\n [functions, scripts],\n );\n\n const getScriptName = useCallback(\n (func: FunctionType) => {\n const script = functionToScriptMap[func.id];\n return script?.name;\n },\n [functionToScriptMap],\n );\n\n const handleGoToScript = useCallback(\n (func: FunctionType) => {\n const script = functionToScriptMap[func.id];\n if (script) {\n void dispatch(createIntent(LayoutAction.Open, { part: 'main', subject: [fullyQualifiedId(script)] }));\n }\n },\n [functionToScriptMap, dispatch],\n );\n\n return (\n <div role='none' className={mx(controlItemClasses)}>\n {functions.length > 0 && (\n <List.Root<FunctionType> items={functions} isItem={Schema.is(FunctionType)} getId={(func) => func.id}>\n {({ items }) => (\n <div role='list' className='flex flex-col w-full'>\n {items?.map((func) => (\n <List.Item<FunctionType>\n key={func.id}\n item={func}\n classNames={mx(grid, ghostHover, 'items-center', 'pli-2', 'min-bs-[3rem]')}\n >\n <div className='flex flex-col truncate'>\n <List.ItemTitle classNames='truncate'>{func.name}</List.ItemTitle>\n {getScriptName(func) && (\n <div className='text-xs text-description truncate'>{getScriptName(func)}</div>\n )}\n </div>\n {functionToScriptMap[func.id] && (\n <Button onClick={() => handleGoToScript(func)}>{t('go to function source button label')}</Button>\n )}\n </List.Item>\n ))}\n </div>\n )}\n </List.Root>\n )}\n\n {functions.length === 0 && <div className='text-center plb-4 text-gray-500'>{t('no functions found')}</div>}\n </div>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { FunctionsPanel } from './FunctionsPanel';\n\nexport * from './FunctionsPanel';\nexport default FunctionsPanel;\n"],
5
+ "mappings": ";;;;;;;AAIA,SAASA,cAAc;AACvB,OAAOC,SAASC,aAAaC,eAAe;AAE5C,SAASC,cAAcC,cAAcC,2BAA2B;AAChE,SAASC,cAAcC,kBAAkB;AACzC,SAASC,QAAoBC,kBAAkBC,gBAAgB;AAC/D,SAASC,QAAQC,sBAAsB;AACvC,SAASC,0BAA0B;AACnC,SAASC,YAAY;AACrB,SAASC,YAAYC,UAAU;AAI/B,IAAMC,OAAO;AAMN,IAAMC,iBAAiB,CAAC,EAAEC,MAAK,MAAuB;;;AAC3D,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,UAAMC,YAAYC,SAASL,OAAOM,OAAOC,KAAKC,YAAAA,CAAAA;AAC9C,UAAMC,UAAUJ,SAASL,OAAOM,OAAOC,KAAKG,UAAAA,CAAAA;AAC5C,UAAM,EAAEC,iBAAiBC,SAAQ,IAAKC,oBAAAA;AAEtC,UAAMC,sBAAsBC,QAC1B,MACEX,UAAUY,OACR,CAACC,KAAKC,SAAAA;AACJ,YAAMC,WAAWD,KAAKE,QAAQC,QAAQC;AACtC,UAAIH,UAAU;AACZ,cAAMI,SAASd,QAAQe,KAAK,CAACC,MAAMA,EAAEH,OAAOH,QAAAA;AAC5C,YAAII,QAAQ;AACVN,cAAIC,KAAKI,EAAE,IAAIC;QACjB;MACF;AACA,aAAON;IACT,GACA,CAAC,CAAA,GAEL;MAACb;MAAWK;KAAQ;AAGtB,UAAMiB,gBAAgBC,YACpB,CAACT,SAAAA;AACC,YAAMK,SAAST,oBAAoBI,KAAKI,EAAE;AAC1C,aAAOC,QAAQK;IACjB,GACA;MAACd;KAAoB;AAGvB,UAAMe,mBAAmBF,YACvB,CAACT,SAAAA;AACC,YAAMK,SAAST,oBAAoBI,KAAKI,EAAE;AAC1C,UAAIC,QAAQ;AACV,aAAKX,SAASkB,aAAaC,aAAaC,MAAM;UAAEC,MAAM;UAAQC,SAAS;YAACC,iBAAiBZ,MAAAA;;QAAS,CAAA,CAAA;MACpG;IACF,GACA;MAACT;MAAqBF;KAAS;AAGjC,WACE,sBAAA,cAACwB,OAAAA;MAAIC,MAAK;MAAOC,WAAWC,GAAGC,kBAAAA;OAC5BpC,UAAUqC,SAAS,KAClB,sBAAA,cAACC,KAAKC,MAAI;MAAeC,OAAOxC;MAAWyC,QAAQC,OAAOC,GAAGvC,YAAAA;MAAewC,OAAO,CAAC9B,SAASA,KAAKI;OAC/F,CAAC,EAAEsB,MAAK,MACP,sBAAA,cAACR,OAAAA;MAAIC,MAAK;MAAOC,WAAU;OACxBM,OAAO3B,IAAI,CAACC,SACX,sBAAA,cAACwB,KAAKO,MAAI;MACRC,KAAKhC,KAAKI;MACV6B,MAAMjC;MACNkC,YAAYb,GAAGzC,MAAMuD,YAAY,gBAAgB,SAAS,eAAA;OAE1D,sBAAA,cAACjB,OAAAA;MAAIE,WAAU;OACb,sBAAA,cAACI,KAAKY,WAAS;MAACF,YAAW;OAAYlC,KAAKU,IAAI,GAC/CF,cAAcR,IAAAA,KACb,sBAAA,cAACkB,OAAAA;MAAIE,WAAU;OAAqCZ,cAAcR,IAAAA,CAAAA,CAAAA,GAGrEJ,oBAAoBI,KAAKI,EAAE,KAC1B,sBAAA,cAACiC,QAAAA;MAAOC,SAAS,MAAM3B,iBAAiBX,IAAAA;OAAQjB,EAAE,oCAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAS/DG,UAAUqC,WAAW,KAAK,sBAAA,cAACL,OAAAA;MAAIE,WAAU;OAAmCrC,EAAE,oBAAA,CAAA,CAAA;;;;AAGrF;;;ACzFA,IAAA,yBAAewD;",
6
+ "names": ["Schema", "React", "useCallback", "useMemo", "LayoutAction", "createIntent", "useIntentDispatcher", "FunctionType", "ScriptType", "Filter", "fullyQualifiedId", "useQuery", "Button", "useTranslation", "controlItemClasses", "List", "ghostHover", "mx", "grid", "FunctionsPanel", "space", "t", "useTranslation", "AUTOMATION_PLUGIN", "functions", "useQuery", "Filter", "type", "FunctionType", "scripts", "ScriptType", "dispatchPromise", "dispatch", "useIntentDispatcher", "functionToScriptMap", "useMemo", "reduce", "map", "func", "scriptId", "source", "target", "id", "script", "find", "s", "getScriptName", "useCallback", "name", "handleGoToScript", "createIntent", "LayoutAction", "Open", "part", "subject", "fullyQualifiedId", "div", "role", "className", "mx", "controlItemClasses", "length", "List", "Root", "items", "isItem", "Schema", "is", "getId", "Item", "key", "item", "classNames", "ghostHover", "ItemTitle", "Button", "onClick", "FunctionsPanel"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  TriggerEditor
4
- } from "./chunk-AZH66CED.mjs";
4
+ } from "./chunk-ZOJVKPCA.mjs";
5
5
  import {
6
6
  AUTOMATION_PLUGIN
7
7
  } from "./chunk-NK5N3QKD.mjs";
@@ -11,9 +11,9 @@ import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
11
11
  import { Schema } from "effect";
12
12
  import React, { useState } from "react";
13
13
  import { Filter, Obj } from "@dxos/echo";
14
- import { FunctionType, FunctionTrigger, FunctionTriggerSchema, ScriptType, TriggerKind } from "@dxos/functions";
14
+ import { FunctionTrigger, FunctionType, ScriptType } from "@dxos/functions";
15
15
  import { useClient } from "@dxos/react-client";
16
- import { useQuery, getSpace } from "@dxos/react-client/echo";
16
+ import { getSpace, useQuery } from "@dxos/react-client/echo";
17
17
  import { Clipboard, IconButton, Input, Separator, useTranslation } from "@dxos/react-ui";
18
18
  import { ControlItem, controlItemClasses } from "@dxos/react-ui-form";
19
19
  import { List } from "@dxos/react-ui-list";
@@ -30,12 +30,11 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
30
30
  const [trigger, setTrigger] = useState(initialTrigger);
31
31
  const [selected, setSelected] = useState();
32
32
  const handleSelect = (trigger2) => {
33
- const { id: _, ...values } = trigger2;
34
- setTrigger(values);
33
+ setTrigger(trigger2);
35
34
  setSelected(trigger2);
36
35
  };
37
36
  const handleAdd = () => {
38
- setTrigger(Obj.make(FunctionTriggerSchema, {}));
37
+ setTrigger(Obj.make(FunctionTrigger, {}));
39
38
  setSelected(void 0);
40
39
  };
41
40
  const handleDelete = (trigger2) => {
@@ -108,13 +107,13 @@ var AutomationPanel = ({ space, object, initialTrigger, onDone }) => {
108
107
  }
109
108
  };
110
109
  var getCopyAction = (client, trigger) => {
111
- if (trigger?.spec?.kind === TriggerKind.Email) {
110
+ if (trigger?.spec?.kind === "email") {
112
111
  return {
113
112
  translationKey: "trigger copy email",
114
113
  contentProvider: () => `${getSpace(trigger).id}@dxos.network`
115
114
  };
116
115
  }
117
- if (trigger?.spec?.kind === TriggerKind.Webhook) {
116
+ if (trigger?.spec?.kind === "webhook") {
118
117
  return {
119
118
  translationKey: "trigger copy url",
120
119
  contentProvider: () => getWebhookUrl(client, trigger)
@@ -132,10 +131,7 @@ var getWebhookUrl = (client, trigger) => {
132
131
  var getFunctionName = (scripts, functions, trigger) => {
133
132
  const shortId = trigger.function && `${trigger.function.dxn.toString().slice(0, 16)}\u2026`;
134
133
  const functionObject = functions.find((fn) => fn === trigger.function?.target);
135
- if (!functionObject) {
136
- return shortId;
137
- }
138
- return scripts.find((s) => functionObject.source?.target?.id === s.id)?.name ?? shortId;
134
+ return functionObject?.name ?? shortId;
139
135
  };
140
136
 
141
137
  // src/components/AutomationPanel/index.ts
@@ -145,4 +141,4 @@ export {
145
141
  AutomationPanel,
146
142
  AutomationPanel_default
147
143
  };
148
- //# sourceMappingURL=chunk-HIMYPGHF.mjs.map
144
+ //# sourceMappingURL=chunk-JU7JA5X4.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/AutomationPanel/AutomationPanel.tsx", "../../../src/components/AutomationPanel/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Schema } from 'effect';\nimport React, { useState } from 'react';\n\nimport { Filter, Obj } from '@dxos/echo';\nimport { FunctionTrigger, FunctionType, ScriptType } from '@dxos/functions';\nimport { type Client, useClient } from '@dxos/react-client';\nimport { type Space, getSpace, useQuery } from '@dxos/react-client/echo';\nimport { Clipboard, IconButton, Input, Separator, useTranslation } from '@dxos/react-ui';\nimport { ControlItem, controlItemClasses } from '@dxos/react-ui-form';\nimport { List } from '@dxos/react-ui-list';\nimport { ghostHover, mx } from '@dxos/react-ui-theme';\n\nimport { AUTOMATION_PLUGIN } from '../../meta';\nimport { TriggerEditor, type TriggerEditorProps } from '../TriggerEditor';\n\nconst grid = 'grid grid-cols-[40px_1fr_32px] min-bs-[2.5rem]';\n\nexport type AutomationPanelProps = {\n space: Space;\n object?: Obj.Any;\n initialTrigger?: FunctionTrigger;\n onDone?: () => void;\n};\n\n// TODO(burdon): Factor out common layout with ViewEditor.\nexport const AutomationPanel = ({ space, object, initialTrigger, onDone }: AutomationPanelProps) => {\n const { t } = useTranslation(AUTOMATION_PLUGIN);\n const client = useClient();\n const triggers = useQuery(space, Filter.type(FunctionTrigger));\n const functions = useQuery(space, Filter.type(FunctionType));\n const scripts = useQuery(space, Filter.type(ScriptType));\n\n const [trigger, setTrigger] = useState<FunctionTrigger | undefined>(initialTrigger);\n const [selected, setSelected] = useState<FunctionTrigger>();\n\n const handleSelect = (trigger: FunctionTrigger) => {\n setTrigger(trigger);\n setSelected(trigger);\n };\n\n const handleAdd = () => {\n setTrigger(Obj.make(FunctionTrigger, {}));\n setSelected(undefined);\n };\n\n const handleDelete = (trigger: FunctionTrigger) => {\n space.db.remove(trigger);\n setTrigger(undefined);\n setSelected(undefined);\n };\n\n const handleSave: TriggerEditorProps['onSave'] = (trigger) => {\n if (selected) {\n Object.assign(selected, trigger);\n } else {\n space.db.add(Obj.make(FunctionTrigger, trigger));\n }\n\n setTrigger(undefined);\n setSelected(undefined);\n onDone?.();\n };\n\n const handleCancel: TriggerEditorProps['onCancel'] = () => {\n setTrigger(undefined);\n onDone?.();\n };\n\n if (trigger) {\n return (\n <ControlItem title={t('trigger editor title')}>\n <TriggerEditor space={space} trigger={trigger} onSave={handleSave} onCancel={handleCancel} />\n </ControlItem>\n );\n }\n\n return (\n <div className={controlItemClasses}>\n {triggers.length > 0 && (\n <List.Root<FunctionTrigger> items={triggers} isItem={Schema.is(FunctionTrigger)} getId={(field) => field.id}>\n {({ items: triggers }) => (\n <div role='list' className='flex flex-col w-full'>\n {triggers?.map((trigger) => {\n const copyAction = getCopyAction(client, trigger);\n return (\n <List.Item<FunctionTrigger>\n key={trigger.id}\n item={trigger}\n classNames={mx(grid, ghostHover, 'items-center', 'px-2')}\n >\n <Input.Root>\n <Input.Switch\n checked={trigger.enabled}\n onCheckedChange={(checked) => (trigger.enabled = checked)}\n />\n </Input.Root>\n\n <div className={'flex'}>\n <List.ItemTitle\n classNames='px-1 cursor-pointer w-0 shrink truncate'\n onClick={() => handleSelect(trigger)}\n >\n {getFunctionName(scripts, functions, trigger) ?? '∅'}\n </List.ItemTitle>\n\n {/* TODO: a better way to expose copy action */}\n {copyAction && (\n <Clipboard.IconButton\n label={t(copyAction.translationKey)}\n value={copyAction.contentProvider()}\n />\n )}\n </div>\n\n <List.ItemDeleteButton onClick={() => handleDelete(trigger)} />\n </List.Item>\n );\n })}\n </div>\n )}\n </List.Root>\n )}\n {triggers.length > 0 && <Separator classNames='mlb-4' />}\n <IconButton icon='ph--plus--regular' label={t('new trigger label')} onClick={handleAdd} />\n </div>\n );\n};\n\nconst getCopyAction = (client: Client, trigger: FunctionTrigger | undefined) => {\n if (trigger?.spec?.kind === 'email') {\n return { translationKey: 'trigger copy email', contentProvider: () => `${getSpace(trigger)!.id}@dxos.network` };\n }\n\n if (trigger?.spec?.kind === 'webhook') {\n return { translationKey: 'trigger copy url', contentProvider: () => getWebhookUrl(client, trigger) };\n }\n\n return undefined;\n};\n\nconst getWebhookUrl = (client: Client, trigger: FunctionTrigger) => {\n const spaceId = getSpace(trigger)!.id;\n const edgeUrl = new URL(client.config.values.runtime!.services!.edge!.url!);\n const isSecure = edgeUrl.protocol.startsWith('https') || edgeUrl.protocol.startsWith('wss');\n edgeUrl.protocol = isSecure ? 'https' : 'http';\n return new URL(`/webhook/${spaceId}:${trigger.id}`, edgeUrl).toString();\n};\n\nconst getFunctionName = (scripts: ScriptType[], functions: FunctionType[], trigger: FunctionTrigger) => {\n // TODO(wittjosiah): Truncation should be done in the UI.\n // Warning that the List component is currently a can of worms.\n const shortId = trigger.function && `${trigger.function.dxn.toString().slice(0, 16)}…`;\n const functionObject = functions.find((fn) => fn === trigger.function?.target);\n return functionObject?.name ?? shortId;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { AutomationPanel } from './AutomationPanel';\n\nexport * from './AutomationPanel';\n\nexport default AutomationPanel;\n"],
5
+ "mappings": ";;;;;;;;;;AAIA,SAASA,cAAc;AACvB,OAAOC,SAASC,gBAAgB;AAEhC,SAASC,QAAQC,WAAW;AAC5B,SAASC,iBAAiBC,cAAcC,kBAAkB;AAC1D,SAAsBC,iBAAiB;AACvC,SAAqBC,UAAUC,gBAAgB;AAC/C,SAASC,WAAWC,YAAYC,OAAOC,WAAWC,sBAAsB;AACxE,SAASC,aAAaC,0BAA0B;AAChD,SAASC,YAAY;AACrB,SAASC,YAAYC,UAAU;AAK/B,IAAMC,OAAO;AAUN,IAAMC,kBAAkB,CAAC,EAAEC,OAAOC,QAAQC,gBAAgBC,OAAM,MAAwB;;;AAC7F,UAAM,EAAEC,EAAC,IAAKC,eAAeC,iBAAAA;AAC7B,UAAMC,SAASC,UAAAA;AACf,UAAMC,WAAWC,SAASV,OAAOW,OAAOC,KAAKC,eAAAA,CAAAA;AAC7C,UAAMC,YAAYJ,SAASV,OAAOW,OAAOC,KAAKG,YAAAA,CAAAA;AAC9C,UAAMC,UAAUN,SAASV,OAAOW,OAAOC,KAAKK,UAAAA,CAAAA;AAE5C,UAAM,CAACC,SAASC,UAAAA,IAAcC,SAAsClB,cAAAA;AACpE,UAAM,CAACmB,UAAUC,WAAAA,IAAeF,SAAAA;AAEhC,UAAMG,eAAe,CAACL,aAAAA;AACpBC,iBAAWD,QAAAA;AACXI,kBAAYJ,QAAAA;IACd;AAEA,UAAMM,YAAY,MAAA;AAChBL,iBAAWM,IAAIC,KAAKb,iBAAiB,CAAC,CAAA,CAAA;AACtCS,kBAAYK,MAAAA;IACd;AAEA,UAAMC,eAAe,CAACV,aAAAA;AACpBlB,YAAM6B,GAAGC,OAAOZ,QAAAA;AAChBC,iBAAWQ,MAAAA;AACXL,kBAAYK,MAAAA;IACd;AAEA,UAAMI,aAA2C,CAACb,aAAAA;AAChD,UAAIG,UAAU;AACZW,eAAOC,OAAOZ,UAAUH,QAAAA;MAC1B,OAAO;AACLlB,cAAM6B,GAAGK,IAAIT,IAAIC,KAAKb,iBAAiBK,QAAAA,CAAAA;MACzC;AAEAC,iBAAWQ,MAAAA;AACXL,kBAAYK,MAAAA;AACZxB,eAAAA;IACF;AAEA,UAAMgC,eAA+C,MAAA;AACnDhB,iBAAWQ,MAAAA;AACXxB,eAAAA;IACF;AAEA,QAAIe,SAAS;AACX,aACE,sBAAA,cAACkB,aAAAA;QAAYC,OAAOjC,EAAE,sBAAA;SACpB,sBAAA,cAACkC,eAAAA;QAActC;QAAckB;QAAkBqB,QAAQR;QAAYS,UAAUL;;IAGnF;AAEA,WACE,sBAAA,cAACM,OAAAA;MAAIC,WAAWC;OACblC,SAASmC,SAAS,KACjB,sBAAA,cAACC,KAAKC,MAAI;MAAkBC,OAAOtC;MAAUuC,QAAQC,OAAOC,GAAGrC,eAAAA;MAAkBsC,OAAO,CAACC,UAAUA,MAAMC;OACtG,CAAC,EAAEN,OAAOtC,UAAQ,MACjB,sBAAA,cAACgC,OAAAA;MAAIa,MAAK;MAAOZ,WAAU;OACxBjC,WAAU8C,IAAI,CAACrC,aAAAA;AACd,YAAMsC,aAAaC,cAAclD,QAAQW,QAAAA;AACzC,aACE,sBAAA,cAAC2B,KAAKa,MAAI;QACRC,KAAKzC,SAAQmC;QACbO,MAAM1C;QACN2C,YAAYC,GAAGhE,MAAMiE,YAAY,gBAAgB,MAAA;SAEjD,sBAAA,cAACC,MAAMlB,MAAI,MACT,sBAAA,cAACkB,MAAMC,QAAM;QACXC,SAAShD,SAAQiD;QACjBC,iBAAiB,CAACF,YAAahD,SAAQiD,UAAUD;WAIrD,sBAAA,cAACzB,OAAAA;QAAIC,WAAW;SACd,sBAAA,cAACG,KAAKwB,WAAS;QACbR,YAAW;QACXS,SAAS,MAAM/C,aAAaL,QAAAA;SAE3BqD,gBAAgBvD,SAASF,WAAWI,QAAAA,KAAY,QAAA,GAIlDsC,cACC,sBAAA,cAACgB,UAAUC,YAAU;QACnBC,OAAOtE,EAAEoD,WAAWmB,cAAc;QAClCC,OAAOpB,WAAWqB,gBAAe;WAKvC,sBAAA,cAAChC,KAAKiC,kBAAgB;QAACR,SAAS,MAAM1C,aAAaV,QAAAA;;IAGzD,CAAA,CAAA,CAAA,GAKPT,SAASmC,SAAS,KAAK,sBAAA,cAACmC,WAAAA;MAAUlB,YAAW;QAC9C,sBAAA,cAACY,YAAAA;MAAWO,MAAK;MAAoBN,OAAOtE,EAAE,mBAAA;MAAsBkE,SAAS9C;;;;;AAGnF;AAEA,IAAMiC,gBAAgB,CAAClD,QAAgBW,YAAAA;AACrC,MAAIA,SAAS+D,MAAMC,SAAS,SAAS;AACnC,WAAO;MAAEP,gBAAgB;MAAsBE,iBAAiB,MAAM,GAAGM,SAASjE,OAAAA,EAAUmC,EAAE;IAAgB;EAChH;AAEA,MAAInC,SAAS+D,MAAMC,SAAS,WAAW;AACrC,WAAO;MAAEP,gBAAgB;MAAoBE,iBAAiB,MAAMO,cAAc7E,QAAQW,OAAAA;IAAS;EACrG;AAEA,SAAOS;AACT;AAEA,IAAMyD,gBAAgB,CAAC7E,QAAgBW,YAAAA;AACrC,QAAMmE,UAAUF,SAASjE,OAAAA,EAAUmC;AACnC,QAAMiC,UAAU,IAAIC,IAAIhF,OAAOiF,OAAOC,OAAOC,QAASC,SAAUC,KAAMC,GAAG;AACzE,QAAMC,WAAWR,QAAQS,SAASC,WAAW,OAAA,KAAYV,QAAQS,SAASC,WAAW,KAAA;AACrFV,UAAQS,WAAWD,WAAW,UAAU;AACxC,SAAO,IAAIP,IAAI,YAAYF,OAAAA,IAAWnE,QAAQmC,EAAE,IAAIiC,OAAAA,EAASW,SAAQ;AACvE;AAEA,IAAM1B,kBAAkB,CAACvD,SAAuBF,WAA2BI,YAAAA;AAGzE,QAAMgF,UAAUhF,QAAQiF,YAAY,GAAGjF,QAAQiF,SAASC,IAAIH,SAAQ,EAAGI,MAAM,GAAG,EAAA,CAAA;AAChF,QAAMC,iBAAiBxF,UAAUyF,KAAK,CAACC,OAAOA,OAAOtF,QAAQiF,UAAUM,MAAAA;AACvE,SAAOH,gBAAgBI,QAAQR;AACjC;;;ACtJA,IAAA,0BAAeS;",
6
+ "names": ["Schema", "React", "useState", "Filter", "Obj", "FunctionTrigger", "FunctionType", "ScriptType", "useClient", "getSpace", "useQuery", "Clipboard", "IconButton", "Input", "Separator", "useTranslation", "ControlItem", "controlItemClasses", "List", "ghostHover", "mx", "grid", "AutomationPanel", "space", "object", "initialTrigger", "onDone", "t", "useTranslation", "AUTOMATION_PLUGIN", "client", "useClient", "triggers", "useQuery", "Filter", "type", "FunctionTrigger", "functions", "FunctionType", "scripts", "ScriptType", "trigger", "setTrigger", "useState", "selected", "setSelected", "handleSelect", "handleAdd", "Obj", "make", "undefined", "handleDelete", "db", "remove", "handleSave", "Object", "assign", "add", "handleCancel", "ControlItem", "title", "TriggerEditor", "onSave", "onCancel", "div", "className", "controlItemClasses", "length", "List", "Root", "items", "isItem", "Schema", "is", "getId", "field", "id", "role", "map", "copyAction", "getCopyAction", "Item", "key", "item", "classNames", "mx", "ghostHover", "Input", "Switch", "checked", "enabled", "onCheckedChange", "ItemTitle", "onClick", "getFunctionName", "Clipboard", "IconButton", "label", "translationKey", "value", "contentProvider", "ItemDeleteButton", "Separator", "icon", "spec", "kind", "getSpace", "getWebhookUrl", "spaceId", "edgeUrl", "URL", "config", "values", "runtime", "services", "edge", "url", "isSecure", "protocol", "startsWith", "toString", "shortId", "function", "dxn", "slice", "functionObject", "find", "fn", "target", "name", "AutomationPanel"]
7
+ }