@dxos/plugin-automation 0.8.1-staging.391c573 → 0.8.1-staging.97aedb1

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 (94) hide show
  1. package/dist/lib/browser/{AutomationPanel-KNXI72FK.mjs → AutomationPanel-YAHFXQX6.mjs} +27 -20
  2. package/dist/lib/browser/AutomationPanel-YAHFXQX6.mjs.map +7 -0
  3. package/dist/lib/browser/app-graph-builder-K3BIQFWW.mjs +40 -0
  4. package/dist/lib/browser/app-graph-builder-K3BIQFWW.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-FALBBJNO.mjs +138 -0
  6. package/dist/lib/browser/chunk-FALBBJNO.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-MT3FZH4V.mjs +8 -0
  8. package/dist/lib/browser/{chunk-OFDNNRLE.mjs → chunk-WKKQV4PC.mjs} +2 -2
  9. package/dist/lib/browser/chunk-WKKQV4PC.mjs.map +7 -0
  10. package/dist/lib/browser/index.mjs +32 -17
  11. package/dist/lib/browser/index.mjs.map +3 -3
  12. package/dist/lib/browser/meta.json +1 -1
  13. package/dist/lib/browser/react-surface-4QQSJR4A.mjs +42 -0
  14. package/dist/lib/browser/react-surface-4QQSJR4A.mjs.map +7 -0
  15. package/dist/lib/node/{AutomationPanel-SVNHL4NI.cjs → AutomationPanel-ZKAMIU6O.cjs} +28 -21
  16. package/dist/lib/node/AutomationPanel-ZKAMIU6O.cjs.map +7 -0
  17. package/dist/lib/node/app-graph-builder-HO4FPGZ5.cjs +56 -0
  18. package/dist/lib/node/app-graph-builder-HO4FPGZ5.cjs.map +7 -0
  19. package/dist/lib/node/{chunk-ORMEYEBE.cjs → chunk-7GXNXMSM.cjs} +4 -4
  20. package/dist/lib/node/chunk-7GXNXMSM.cjs.map +7 -0
  21. package/dist/lib/node/{chunk-Z7QSJQ4S.cjs → chunk-AGJ6XTDN.cjs} +5 -5
  22. package/dist/lib/node/chunk-FTEDH5Q6.cjs +167 -0
  23. package/dist/lib/node/chunk-FTEDH5Q6.cjs.map +7 -0
  24. package/dist/lib/node/index.cjs +37 -22
  25. package/dist/lib/node/index.cjs.map +3 -3
  26. package/dist/lib/node/meta.json +1 -1
  27. package/dist/lib/node/{react-surface-O6QXBWRG.cjs → react-surface-52M54VWV.cjs} +28 -13
  28. package/dist/lib/node/react-surface-52M54VWV.cjs.map +7 -0
  29. package/dist/lib/node-esm/{AutomationPanel-YP556U5O.mjs → AutomationPanel-XF7YPSKM.mjs} +27 -20
  30. package/dist/lib/node-esm/AutomationPanel-XF7YPSKM.mjs.map +7 -0
  31. package/dist/lib/node-esm/app-graph-builder-XCJR33VS.mjs +41 -0
  32. package/dist/lib/node-esm/app-graph-builder-XCJR33VS.mjs.map +7 -0
  33. package/dist/lib/node-esm/{chunk-6MUUH67V.mjs → chunk-DZ44LGYT.mjs} +2 -2
  34. package/dist/lib/node-esm/chunk-DZ44LGYT.mjs.map +7 -0
  35. package/dist/lib/node-esm/chunk-M4QXMIIB.mjs +139 -0
  36. package/dist/lib/node-esm/chunk-M4QXMIIB.mjs.map +7 -0
  37. package/dist/lib/node-esm/chunk-OA75PSGH.mjs +10 -0
  38. package/dist/lib/node-esm/index.mjs +32 -17
  39. package/dist/lib/node-esm/index.mjs.map +3 -3
  40. package/dist/lib/node-esm/meta.json +1 -1
  41. package/dist/lib/node-esm/react-surface-MGKM3OO3.mjs +43 -0
  42. package/dist/lib/node-esm/react-surface-MGKM3OO3.mjs.map +7 -0
  43. package/dist/types/src/AutomationPlugin.d.ts.map +1 -1
  44. package/dist/types/src/capabilities/app-graph-builder.d.ts +181 -0
  45. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  46. package/dist/types/src/capabilities/index.d.ts +177 -1
  47. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  48. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  49. package/dist/types/src/components/AutomationPanel/AutomationPanel.d.ts.map +1 -1
  50. package/dist/types/src/components/TriggerEditor/TriggerEditor.d.ts.map +1 -1
  51. package/dist/types/src/meta.d.ts +2 -7
  52. package/dist/types/src/meta.d.ts.map +1 -1
  53. package/dist/types/src/translations.d.ts +5 -3
  54. package/dist/types/src/translations.d.ts.map +1 -1
  55. package/package.json +24 -20
  56. package/src/AutomationPlugin.tsx +14 -5
  57. package/src/capabilities/app-graph-builder.ts +31 -0
  58. package/src/capabilities/index.ts +1 -1
  59. package/src/capabilities/react-surface.tsx +22 -7
  60. package/src/components/AutomationPanel/AutomationPanel.tsx +59 -55
  61. package/src/components/TriggerEditor/TriggerEditor.tsx +89 -80
  62. package/src/meta.ts +2 -2
  63. package/src/translations.ts +6 -4
  64. package/dist/lib/browser/AutomationPanel-KNXI72FK.mjs.map +0 -7
  65. package/dist/lib/browser/chunk-HRHRMTAE.mjs +0 -8
  66. package/dist/lib/browser/chunk-NZZED7GX.mjs +0 -119
  67. package/dist/lib/browser/chunk-NZZED7GX.mjs.map +0 -7
  68. package/dist/lib/browser/chunk-OFDNNRLE.mjs.map +0 -7
  69. package/dist/lib/browser/complementary-panel-4CPOJL4Y.mjs +0 -56
  70. package/dist/lib/browser/complementary-panel-4CPOJL4Y.mjs.map +0 -7
  71. package/dist/lib/browser/react-surface-KZ3CT4BI.mjs +0 -27
  72. package/dist/lib/browser/react-surface-KZ3CT4BI.mjs.map +0 -7
  73. package/dist/lib/node/AutomationPanel-SVNHL4NI.cjs.map +0 -7
  74. package/dist/lib/node/chunk-ORMEYEBE.cjs.map +0 -7
  75. package/dist/lib/node/chunk-TTISAT2O.cjs +0 -148
  76. package/dist/lib/node/chunk-TTISAT2O.cjs.map +0 -7
  77. package/dist/lib/node/complementary-panel-ZYJJ42ZU.cjs +0 -72
  78. package/dist/lib/node/complementary-panel-ZYJJ42ZU.cjs.map +0 -7
  79. package/dist/lib/node/react-surface-O6QXBWRG.cjs.map +0 -7
  80. package/dist/lib/node-esm/AutomationPanel-YP556U5O.mjs.map +0 -7
  81. package/dist/lib/node-esm/chunk-5A5YUVH2.mjs +0 -10
  82. package/dist/lib/node-esm/chunk-6MUUH67V.mjs.map +0 -7
  83. package/dist/lib/node-esm/chunk-I2V2NGYF.mjs +0 -120
  84. package/dist/lib/node-esm/chunk-I2V2NGYF.mjs.map +0 -7
  85. package/dist/lib/node-esm/complementary-panel-S42RIIAY.mjs +0 -57
  86. package/dist/lib/node-esm/complementary-panel-S42RIIAY.mjs.map +0 -7
  87. package/dist/lib/node-esm/react-surface-F4NLSDP6.mjs +0 -28
  88. package/dist/lib/node-esm/react-surface-F4NLSDP6.mjs.map +0 -7
  89. package/dist/types/src/capabilities/complementary-panel.d.ts +0 -4
  90. package/dist/types/src/capabilities/complementary-panel.d.ts.map +0 -1
  91. package/src/capabilities/complementary-panel.ts +0 -56
  92. /package/dist/lib/browser/{chunk-HRHRMTAE.mjs.map → chunk-MT3FZH4V.mjs.map} +0 -0
  93. /package/dist/lib/node/{chunk-Z7QSJQ4S.cjs.map → chunk-AGJ6XTDN.cjs.map} +0 -0
  94. /package/dist/lib/node-esm/{chunk-5A5YUVH2.mjs.map → chunk-OA75PSGH.mjs.map} +0 -0
@@ -1,3 +1,179 @@
1
- export declare const ComplementaryPanel: (props?: import("@dxos/app-framework").PluginsContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/plugin-deck/types").Panel> | import("@dxos/app-framework").AnyCapability[]>>;
1
+ export declare const AppGraphBuilder: (props?: import("@dxos/app-framework").PluginsContext | undefined) => Promise<() => Promise<import("@dxos/app-framework").Capability<Readonly<{
2
+ id: string;
3
+ position: import("@dxos/util").Position;
4
+ resolver?: import("@dxos/app-graph").ResolverExtension;
5
+ connector?: import("@dxos/app-graph").ConnectorExtension;
6
+ relation?: import("@dxos/app-graph").Relation;
7
+ type?: string;
8
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
9
+ }> | Readonly<{
10
+ id: string;
11
+ position: import("@dxos/util").Position;
12
+ resolver?: import("@dxos/app-graph").ResolverExtension;
13
+ connector?: import("@dxos/app-graph").ConnectorExtension;
14
+ relation?: import("@dxos/app-graph").Relation;
15
+ type?: string;
16
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
17
+ }>[] | (Readonly<{
18
+ id: string;
19
+ position: import("@dxos/util").Position;
20
+ resolver?: import("@dxos/app-graph").ResolverExtension;
21
+ connector?: import("@dxos/app-graph").ConnectorExtension;
22
+ relation?: import("@dxos/app-graph").Relation;
23
+ type?: string;
24
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
25
+ }> | Readonly<{
26
+ id: string;
27
+ position: import("@dxos/util").Position;
28
+ resolver?: import("@dxos/app-graph").ResolverExtension;
29
+ connector?: import("@dxos/app-graph").ConnectorExtension;
30
+ relation?: import("@dxos/app-graph").Relation;
31
+ type?: string;
32
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
33
+ }>[] | (Readonly<{
34
+ id: string;
35
+ position: import("@dxos/util").Position;
36
+ resolver?: import("@dxos/app-graph").ResolverExtension;
37
+ connector?: import("@dxos/app-graph").ConnectorExtension;
38
+ relation?: import("@dxos/app-graph").Relation;
39
+ type?: string;
40
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
41
+ }> | Readonly<{
42
+ id: string;
43
+ position: import("@dxos/util").Position;
44
+ resolver?: import("@dxos/app-graph").ResolverExtension;
45
+ connector?: import("@dxos/app-graph").ConnectorExtension;
46
+ relation?: import("@dxos/app-graph").Relation;
47
+ type?: string;
48
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
49
+ }>[] | (Readonly<{
50
+ id: string;
51
+ position: import("@dxos/util").Position;
52
+ resolver?: import("@dxos/app-graph").ResolverExtension;
53
+ connector?: import("@dxos/app-graph").ConnectorExtension;
54
+ relation?: import("@dxos/app-graph").Relation;
55
+ type?: string;
56
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
57
+ }> | Readonly<{
58
+ id: string;
59
+ position: import("@dxos/util").Position;
60
+ resolver?: import("@dxos/app-graph").ResolverExtension;
61
+ connector?: import("@dxos/app-graph").ConnectorExtension;
62
+ relation?: import("@dxos/app-graph").Relation;
63
+ type?: string;
64
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
65
+ }>[] | (Readonly<{
66
+ id: string;
67
+ position: import("@dxos/util").Position;
68
+ resolver?: import("@dxos/app-graph").ResolverExtension;
69
+ connector?: import("@dxos/app-graph").ConnectorExtension;
70
+ relation?: import("@dxos/app-graph").Relation;
71
+ type?: string;
72
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
73
+ }> | Readonly<{
74
+ id: string;
75
+ position: import("@dxos/util").Position;
76
+ resolver?: import("@dxos/app-graph").ResolverExtension;
77
+ connector?: import("@dxos/app-graph").ConnectorExtension;
78
+ relation?: import("@dxos/app-graph").Relation;
79
+ type?: string;
80
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
81
+ }>[] | (Readonly<{
82
+ id: string;
83
+ position: import("@dxos/util").Position;
84
+ resolver?: import("@dxos/app-graph").ResolverExtension;
85
+ connector?: import("@dxos/app-graph").ConnectorExtension;
86
+ relation?: import("@dxos/app-graph").Relation;
87
+ type?: string;
88
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
89
+ }> | Readonly<{
90
+ id: string;
91
+ position: import("@dxos/util").Position;
92
+ resolver?: import("@dxos/app-graph").ResolverExtension;
93
+ connector?: import("@dxos/app-graph").ConnectorExtension;
94
+ relation?: import("@dxos/app-graph").Relation;
95
+ type?: string;
96
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
97
+ }>[] | (Readonly<{
98
+ id: string;
99
+ position: import("@dxos/util").Position;
100
+ resolver?: import("@dxos/app-graph").ResolverExtension;
101
+ connector?: import("@dxos/app-graph").ConnectorExtension;
102
+ relation?: import("@dxos/app-graph").Relation;
103
+ type?: string;
104
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
105
+ }> | Readonly<{
106
+ id: string;
107
+ position: import("@dxos/util").Position;
108
+ resolver?: import("@dxos/app-graph").ResolverExtension;
109
+ connector?: import("@dxos/app-graph").ConnectorExtension;
110
+ relation?: import("@dxos/app-graph").Relation;
111
+ type?: string;
112
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
113
+ }>[] | (Readonly<{
114
+ id: string;
115
+ position: import("@dxos/util").Position;
116
+ resolver?: import("@dxos/app-graph").ResolverExtension;
117
+ connector?: import("@dxos/app-graph").ConnectorExtension;
118
+ relation?: import("@dxos/app-graph").Relation;
119
+ type?: string;
120
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
121
+ }> | Readonly<{
122
+ id: string;
123
+ position: import("@dxos/util").Position;
124
+ resolver?: import("@dxos/app-graph").ResolverExtension;
125
+ connector?: import("@dxos/app-graph").ConnectorExtension;
126
+ relation?: import("@dxos/app-graph").Relation;
127
+ type?: string;
128
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
129
+ }>[] | (Readonly<{
130
+ id: string;
131
+ position: import("@dxos/util").Position;
132
+ resolver?: import("@dxos/app-graph").ResolverExtension;
133
+ connector?: import("@dxos/app-graph").ConnectorExtension;
134
+ relation?: import("@dxos/app-graph").Relation;
135
+ type?: string;
136
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
137
+ }> | Readonly<{
138
+ id: string;
139
+ position: import("@dxos/util").Position;
140
+ resolver?: import("@dxos/app-graph").ResolverExtension;
141
+ connector?: import("@dxos/app-graph").ConnectorExtension;
142
+ relation?: import("@dxos/app-graph").Relation;
143
+ type?: string;
144
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
145
+ }>[] | (Readonly<{
146
+ id: string;
147
+ position: import("@dxos/util").Position;
148
+ resolver?: import("@dxos/app-graph").ResolverExtension;
149
+ connector?: import("@dxos/app-graph").ConnectorExtension;
150
+ relation?: import("@dxos/app-graph").Relation;
151
+ type?: string;
152
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
153
+ }> | Readonly<{
154
+ id: string;
155
+ position: import("@dxos/util").Position;
156
+ resolver?: import("@dxos/app-graph").ResolverExtension;
157
+ connector?: import("@dxos/app-graph").ConnectorExtension;
158
+ relation?: import("@dxos/app-graph").Relation;
159
+ type?: string;
160
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
161
+ }>[] | (any[] | Readonly<{
162
+ id: string;
163
+ position: import("@dxos/util").Position;
164
+ resolver?: import("@dxos/app-graph").ResolverExtension;
165
+ connector?: import("@dxos/app-graph").ConnectorExtension;
166
+ relation?: import("@dxos/app-graph").Relation;
167
+ type?: string;
168
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
169
+ }> | Readonly<{
170
+ id: string;
171
+ position: import("@dxos/util").Position;
172
+ resolver?: import("@dxos/app-graph").ResolverExtension;
173
+ connector?: import("@dxos/app-graph").ConnectorExtension;
174
+ relation?: import("@dxos/app-graph").Relation;
175
+ type?: string;
176
+ filter?: (node: import("@dxos/app-graph").Node) => boolean;
177
+ }>[])[])[])[])[])[])[])[])[])[])[]> | import("@dxos/app-framework").AnyCapability[]>>;
2
178
  export declare const ReactSurface: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").Capabilities.ReactSurface> | import("@dxos/app-framework").AnyCapability[]>>;
3
179
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,kBAAkB,iOAA8C,CAAC;AAC9E,eAAO,MAAM,YAAY,gMAAwC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe;;qBAEypG,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;qFAFp5V,CAAC;AACzE,eAAO,MAAM,YAAY,gMAAwC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAA8B,MAAM,qBAAqB,CAAC;;AAM/E,wBASK"}
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAA8B,MAAM,qBAAqB,CAAC;;AAS/E,wBAqBK"}
@@ -1 +1 @@
1
- {"version":3,"file":"AutomationPanel.d.ts","sourceRoot":"","sources":["../../../../../src/components/AutomationPanel/AutomationPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,OAAO,EAA4B,KAAK,KAAK,EAAE,KAAK,cAAc,EAAY,MAAM,yBAAyB,CAAC;AAU9G,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;CAC9B,CAAC;AAGF,eAAO,MAAM,eAAe,sBAAuB,oBAAoB,sBAoGtE,CAAC"}
1
+ {"version":3,"file":"AutomationPanel.d.ts","sourceRoot":"","sources":["../../../../../src/components/AutomationPanel/AutomationPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,OAAO,EAA4B,KAAK,KAAK,EAAE,KAAK,cAAc,EAAY,MAAM,yBAAyB,CAAC;AAY9G,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;CAC9B,CAAC;AAGF,eAAO,MAAM,eAAe,sBAAuB,oBAAoB,sBAsGtE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/TriggerEditor/TriggerEditor.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAGnD,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAGrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAoB,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAMvE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,mBAAmB,CAAC;IAC7B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,aAAa,yCAA0C,kBAAkB,sBAiGrF,CAAC"}
1
+ {"version":3,"file":"TriggerEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/TriggerEditor/TriggerEditor.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAGzE,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAGrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAoB,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAMvE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,mBAAmB,CAAC;IAC7B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AA0BF,eAAO,MAAM,aAAa,yCAA0C,kBAAkB,sBAkFrF,CAAC"}
@@ -1,9 +1,4 @@
1
+ import { type PluginMeta } from '@dxos/app-framework';
1
2
  export declare const AUTOMATION_PLUGIN = "dxos.org/plugin/automation";
2
- export declare const meta: {
3
- id: string;
4
- name: string;
5
- description: string;
6
- icon: string;
7
- source: string;
8
- };
3
+ export declare const meta: PluginMeta;
9
4
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,iBAAiB,+BAA+B,CAAC;AAE9D,eAAO,MAAM,IAAI;;;;;;CAOK,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,eAAO,MAAM,iBAAiB,+BAA+B,CAAC;AAE9D,eAAO,MAAM,IAAI,EAAE,UAOlB,CAAC"}
@@ -3,6 +3,8 @@ declare const _default: {
3
3
  "dxos.org/plugin/automation": {
4
4
  'plugin name': string;
5
5
  'automation panel label': string;
6
+ 'script automation label': string;
7
+ 'trigger editor title': string;
6
8
  'new trigger label': string;
7
9
  'trigger type timer': string;
8
10
  'trigger type webhook': string;
@@ -12,9 +14,9 @@ declare const _default: {
12
14
  'trigger type queue': string;
13
15
  'trigger copy url': string;
14
16
  'trigger copy email': string;
15
- 'trigger meta add': string;
16
- 'trigger meta remove': string;
17
- 'trigger meta prop name placeholder': string;
17
+ 'trigger payload add': string;
18
+ 'trigger payload remove': string;
19
+ 'trigger payload prop name placeholder': string;
18
20
  };
19
21
  };
20
22
  }[];
@@ -1 +1 @@
1
- {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAMA,wBAwBE"}
1
+ {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAMA,wBA0BE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/plugin-automation",
3
- "version": "0.8.1-staging.391c573",
3
+ "version": "0.8.1-staging.97aedb1",
4
4
  "description": "Prompt chain plugin",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -26,20 +26,24 @@
26
26
  ],
27
27
  "dependencies": {
28
28
  "@preact/signals-core": "^1.6.0",
29
- "@dxos/async": "0.8.1-staging.391c573",
30
- "@dxos/conductor": "0.8.1-staging.391c573",
31
- "@dxos/app-framework": "0.8.1-staging.391c573",
32
- "@dxos/echo-schema": "0.8.1-staging.391c573",
33
- "@dxos/functions": "0.8.1-staging.391c573",
34
- "@dxos/invariant": "0.8.1-staging.391c573",
35
- "@dxos/log": "0.8.1-staging.391c573",
36
- "@dxos/live-object": "0.8.1-staging.391c573",
37
- "@dxos/plugin-client": "0.8.1-staging.391c573",
38
- "@dxos/react-client": "0.8.1-staging.391c573",
39
- "@dxos/react-ui-form": "0.8.1-staging.391c573",
40
- "@dxos/plugin-deck": "0.8.1-staging.391c573",
41
- "@dxos/react-ui-list": "0.8.1-staging.391c573",
42
- "@dxos/util": "0.8.1-staging.391c573"
29
+ "@dxos/app-framework": "0.8.1-staging.97aedb1",
30
+ "@dxos/conductor": "0.8.1-staging.97aedb1",
31
+ "@dxos/functions": "0.8.1-staging.97aedb1",
32
+ "@dxos/echo-schema": "0.8.1-staging.97aedb1",
33
+ "@dxos/async": "0.8.1-staging.97aedb1",
34
+ "@dxos/live-object": "0.8.1-staging.97aedb1",
35
+ "@dxos/log": "0.8.1-staging.97aedb1",
36
+ "@dxos/invariant": "0.8.1-staging.97aedb1",
37
+ "@dxos/plugin-client": "0.8.1-staging.97aedb1",
38
+ "@dxos/plugin-deck": "0.8.1-staging.97aedb1",
39
+ "@dxos/plugin-graph": "0.8.1-staging.97aedb1",
40
+ "@dxos/plugin-script": "0.8.1-staging.97aedb1",
41
+ "@dxos/plugin-space": "0.8.1-staging.97aedb1",
42
+ "@dxos/react-client": "0.8.1-staging.97aedb1",
43
+ "@dxos/react-ui-form": "0.8.1-staging.97aedb1",
44
+ "@dxos/react-ui-stack": "0.8.1-staging.97aedb1",
45
+ "@dxos/react-ui-list": "0.8.1-staging.97aedb1",
46
+ "@dxos/util": "0.8.1-staging.97aedb1"
43
47
  },
44
48
  "devDependencies": {
45
49
  "@types/react": "~18.2.0",
@@ -47,15 +51,15 @@
47
51
  "react": "~18.2.0",
48
52
  "react-dom": "~18.2.0",
49
53
  "vite": "5.4.7",
50
- "@dxos/react-ui": "0.8.1-staging.391c573",
51
- "@dxos/react-ui-theme": "0.8.1-staging.391c573",
52
- "@dxos/storybook-utils": "0.8.1-staging.391c573"
54
+ "@dxos/react-ui-theme": "0.8.1-staging.97aedb1",
55
+ "@dxos/storybook-utils": "0.8.1-staging.97aedb1",
56
+ "@dxos/react-ui": "0.8.1-staging.97aedb1"
53
57
  },
54
58
  "peerDependencies": {
55
59
  "react": "~18.2.0",
56
60
  "react-dom": "~18.2.0",
57
- "@dxos/react-ui": "0.8.1-staging.391c573",
58
- "@dxos/react-ui-theme": "0.8.1-staging.391c573"
61
+ "@dxos/react-ui-theme": "0.8.1-staging.97aedb1",
62
+ "@dxos/react-ui": "0.8.1-staging.97aedb1"
59
63
  },
60
64
  "publishConfig": {
61
65
  "access": "public"
@@ -5,9 +5,9 @@
5
5
  import { Capabilities, contributes, defineModule, definePlugin, Events } from '@dxos/app-framework';
6
6
  import { FunctionType, FunctionTrigger } from '@dxos/functions/types';
7
7
  import { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';
8
- import { DeckEvents } from '@dxos/plugin-deck';
8
+ import { SpaceCapabilities, SpaceEvents } from '@dxos/plugin-space';
9
9
 
10
- import { ComplementaryPanel, ReactSurface } from './capabilities';
10
+ import { AppGraphBuilder, ReactSurface } from './capabilities';
11
11
  import { meta } from './meta';
12
12
  import translations from './translations';
13
13
 
@@ -24,9 +24,18 @@ export const AutomationPlugin = () =>
24
24
  activate: () => contributes(ClientCapabilities.Schema, [FunctionType, FunctionTrigger]),
25
25
  }),
26
26
  defineModule({
27
- id: `${meta.id}/module/complementary-panels`,
28
- activatesOn: DeckEvents.SetupComplementaryPanels,
29
- activate: ComplementaryPanel,
27
+ id: `${meta.id}/module/app-graph-builder`,
28
+ activatesOn: Events.SetupAppGraph,
29
+ activate: AppGraphBuilder,
30
+ }),
31
+ defineModule({
32
+ id: `${meta.id}/module/space-settings`,
33
+ activatesOn: SpaceEvents.SetupSettingsPanel,
34
+ activate: () =>
35
+ contributes(SpaceCapabilities.SettingsSection, {
36
+ id: 'automation',
37
+ label: ['automation panel label', { ns: meta.id }],
38
+ }),
30
39
  }),
31
40
  defineModule({
32
41
  id: `${meta.id}/module/react-surface`,
@@ -0,0 +1,31 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';
6
+ import { isInstanceOf } from '@dxos/echo-schema';
7
+ import { ScriptType } from '@dxos/functions';
8
+ import { PLANK_COMPANION_TYPE, ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';
9
+ import { createExtension, type Node } from '@dxos/plugin-graph';
10
+ import { SCRIPT_PLUGIN } from '@dxos/plugin-script/types';
11
+
12
+ import { meta } from '../meta';
13
+
14
+ export default (context: PluginsContext) =>
15
+ contributes(Capabilities.AppGraphBuilder, [
16
+ createExtension({
17
+ id: `${SCRIPT_PLUGIN}/script-companion`,
18
+ filter: (node): node is Node<ScriptType> => isInstanceOf(ScriptType, node.data),
19
+ connector: ({ node }) => [
20
+ {
21
+ id: [node.id, 'automation'].join(ATTENDABLE_PATH_SEPARATOR),
22
+ type: PLANK_COMPANION_TYPE,
23
+ data: 'automation',
24
+ properties: {
25
+ label: ['script automation label', { ns: meta.id }],
26
+ icon: 'ph--lightning--regular',
27
+ },
28
+ },
29
+ ],
30
+ }),
31
+ ]);
@@ -4,5 +4,5 @@
4
4
 
5
5
  import { lazy } from '@dxos/app-framework';
6
6
 
7
- export const ComplementaryPanel = lazy(() => import('./complementary-panel'));
7
+ export const AppGraphBuilder = lazy(() => import('./app-graph-builder'));
8
8
  export const ReactSurface = lazy(() => import('./react-surface'));
@@ -5,18 +5,33 @@
5
5
  import React from 'react';
6
6
 
7
7
  import { Capabilities, contributes, createSurface } from '@dxos/app-framework';
8
- import { getSpace, isEchoObject, type ReactiveEchoObject } from '@dxos/react-client/echo';
8
+ import { isInstanceOf } from '@dxos/echo-schema';
9
+ import { ScriptType } from '@dxos/functions/types';
10
+ import { getSpace, isSpace, type Space } from '@dxos/react-client/echo';
11
+ import { StackItem } from '@dxos/react-ui-stack';
9
12
 
10
13
  import { AutomationPanel } from '../components';
11
- import { AUTOMATION_PLUGIN } from '../meta';
14
+ import { meta } from '../meta';
12
15
 
13
16
  export default () =>
14
17
  contributes(Capabilities.ReactSurface, [
15
18
  createSurface({
16
- id: `${AUTOMATION_PLUGIN}/automation`,
17
- role: 'complementary--automation',
18
- filter: (data): data is { subject: ReactiveEchoObject<any> } =>
19
- isEchoObject(data.subject) && !!getSpace(data.subject),
20
- component: ({ data }) => <AutomationPanel space={getSpace(data.subject)!} object={data.subject} />,
19
+ id: `${meta.id}/automation`,
20
+ role: 'space-settings--automation',
21
+ filter: (data): data is { subject: Space } => isSpace(data.subject),
22
+ component: ({ data }) => <AutomationPanel space={data.subject} />,
23
+ }),
24
+ createSurface({
25
+ id: `${meta.id}/companion/automation`,
26
+ role: 'article',
27
+ filter: (data): data is { companionTo: ScriptType; subject: 'automation' } =>
28
+ isInstanceOf(ScriptType, data.companionTo) && data.subject === 'automation',
29
+ component: ({ data, role }) => {
30
+ return (
31
+ <StackItem.Content role={role}>
32
+ <AutomationPanel space={getSpace(data.companionTo)!} object={data.companionTo} />
33
+ </StackItem.Content>
34
+ );
35
+ },
21
36
  }),
22
37
  ]);
@@ -15,8 +15,10 @@ import {
15
15
  } from '@dxos/functions/types';
16
16
  import { type Client, useClient } from '@dxos/react-client';
17
17
  import { create, Filter, useQuery, type Space, type ReactiveObject, getSpace } from '@dxos/react-client/echo';
18
- import { Clipboard, IconButton, Input, useTranslation } from '@dxos/react-ui';
18
+ import { Clipboard, IconButton, Input, Separator, useTranslation } from '@dxos/react-ui';
19
+ import { ControlItem, controlItemClasses } from '@dxos/react-ui-form';
19
20
  import { List } from '@dxos/react-ui-list';
21
+ import { StackItem } from '@dxos/react-ui-stack';
20
22
  import { ghostHover, mx } from '@dxos/react-ui-theme';
21
23
 
22
24
  import { AUTOMATION_PLUGIN } from '../../meta';
@@ -47,7 +49,7 @@ export const AutomationPanel = ({ space, object }: AutomationPanelProps) => {
47
49
  };
48
50
 
49
51
  const handleAdd = () => {
50
- setTrigger(create(FunctionTriggerSchema, { meta: {} }));
52
+ setTrigger(create(FunctionTriggerSchema, {}));
51
53
  setSelected(undefined);
52
54
  };
53
55
 
@@ -74,60 +76,62 @@ export const AutomationPanel = ({ space, object }: AutomationPanelProps) => {
74
76
 
75
77
  return (
76
78
  <Clipboard.Provider>
77
- <div className='flex flex-col w-full'>
78
- {!trigger && (
79
- <List.Root<FunctionTrigger> items={triggers} isItem={S.is(FunctionTrigger)} getId={(field) => field.id}>
80
- {({ items: triggers }) => (
81
- <div role='list' className='flex flex-col w-full'>
82
- {triggers?.map((trigger) => {
83
- const copyAction = getCopyAction(client, trigger);
84
- return (
85
- <List.Item<FunctionTrigger>
86
- key={trigger.id}
87
- item={trigger}
88
- classNames={mx(grid, ghostHover, 'items-center', 'px-2')}
89
- >
90
- <Input.Root>
91
- <Input.Switch
92
- checked={trigger.enabled}
93
- onCheckedChange={(checked) => (trigger.enabled = checked)}
94
- />
95
- </Input.Root>
96
-
97
- <div className={'flex'}>
98
- <List.ItemTitle
99
- classNames='px-1 cursor-pointer w-0 shrink truncate'
100
- onClick={() => handleSelect(trigger)}
79
+ <StackItem.Content classNames='block overflow-y-auto'>
80
+ <div className='flex flex-col w-full'>
81
+ {trigger ? (
82
+ <ControlItem title={t('trigger editor title')}>
83
+ <TriggerEditor space={space} trigger={trigger} onSave={handleSave} onCancel={handleCancel} />
84
+ </ControlItem>
85
+ ) : (
86
+ <div role='none' className={controlItemClasses}>
87
+ <List.Root<FunctionTrigger> items={triggers} isItem={S.is(FunctionTrigger)} getId={(field) => field.id}>
88
+ {({ items: triggers }) => (
89
+ <div role='list' className='flex flex-col w-full'>
90
+ {triggers?.map((trigger) => {
91
+ const copyAction = getCopyAction(client, trigger);
92
+ return (
93
+ <List.Item<FunctionTrigger>
94
+ key={trigger.id}
95
+ item={trigger}
96
+ classNames={mx(grid, ghostHover, 'items-center', 'px-2')}
101
97
  >
102
- {getFunctionName(scripts, functions, trigger) ?? '∅'}
103
- </List.ItemTitle>
104
-
105
- {/* TODO: a better way to expose copy action */}
106
- {copyAction && (
107
- <Clipboard.IconButton
108
- label={t(copyAction.translationKey)}
109
- value={copyAction.contentProvider()}
110
- />
111
- )}
112
- </div>
113
-
114
- <List.ItemDeleteButton onClick={() => handleDelete(trigger)} />
115
- </List.Item>
116
- );
117
- })}
118
- </div>
119
- )}
120
- </List.Root>
121
- )}
122
-
123
- {trigger && <TriggerEditor space={space} trigger={trigger} onSave={handleSave} onCancel={handleCancel} />}
124
-
125
- {!trigger && (
126
- <div className='flex p-2 justify-center'>
127
- <IconButton icon='ph--plus--regular' label={t('new trigger label')} onClick={handleAdd} />
128
- </div>
129
- )}
130
- </div>
98
+ <Input.Root>
99
+ <Input.Switch
100
+ checked={trigger.enabled}
101
+ onCheckedChange={(checked) => (trigger.enabled = checked)}
102
+ />
103
+ </Input.Root>
104
+
105
+ <div className={'flex'}>
106
+ <List.ItemTitle
107
+ classNames='px-1 cursor-pointer w-0 shrink truncate'
108
+ onClick={() => handleSelect(trigger)}
109
+ >
110
+ {getFunctionName(scripts, functions, trigger) ?? '∅'}
111
+ </List.ItemTitle>
112
+
113
+ {/* TODO: a better way to expose copy action */}
114
+ {copyAction && (
115
+ <Clipboard.IconButton
116
+ label={t(copyAction.translationKey)}
117
+ value={copyAction.contentProvider()}
118
+ />
119
+ )}
120
+ </div>
121
+
122
+ <List.ItemDeleteButton onClick={() => handleDelete(trigger)} />
123
+ </List.Item>
124
+ );
125
+ })}
126
+ </div>
127
+ )}
128
+ </List.Root>
129
+ {triggers.length > 0 && <Separator classNames='mlb-4' />}
130
+ <IconButton icon='ph--plus--regular' label={t('new trigger label')} onClick={handleAdd} />
131
+ </div>
132
+ )}
133
+ </div>
134
+ </StackItem.Content>
131
135
  </Clipboard.Provider>
132
136
  );
133
137
  };