@dxos/plugin-automation 0.8.4-staging.60fe92afc8 → 0.9.1-main.c7dcc2e112

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 (131) hide show
  1. package/dist/lib/neutral/{AutomationArticle-GN36NUX2.mjs → AutomationArticle-CG4ZML3C.mjs} +3 -2
  2. package/dist/lib/neutral/{AutomationCompanion-M26WR6VP.mjs → AutomationCompanion-67LW2WZS.mjs} +12 -13
  3. package/dist/lib/neutral/AutomationCompanion-67LW2WZS.mjs.map +7 -0
  4. package/dist/lib/neutral/AutomationPlugin.mjs +1 -1
  5. package/dist/lib/neutral/AutomationPlugin.node.mjs +4 -4
  6. package/dist/lib/neutral/AutomationPlugin.node.mjs.map +3 -3
  7. package/dist/lib/neutral/{AutomationSettings-YXUJDRQA.mjs → AutomationSettings-2XCCFX6X.mjs} +5 -5
  8. package/dist/lib/neutral/{AutomationSettings-YXUJDRQA.mjs.map → AutomationSettings-2XCCFX6X.mjs.map} +3 -3
  9. package/dist/lib/neutral/{TriggerSettings-XCHIZPOR.mjs → TriggerSettings-ABOTKRUA.mjs} +2 -2
  10. package/dist/lib/neutral/{app-graph-builder-BTTHS4VK.mjs → app-graph-builder-VX54SXD6.mjs} +6 -6
  11. package/dist/lib/neutral/app-graph-builder-VX54SXD6.mjs.map +7 -0
  12. package/dist/lib/neutral/capabilities/index.mjs +3 -3
  13. package/dist/lib/neutral/capabilities/node.mjs +1 -1
  14. package/dist/lib/neutral/{chunk-2JP77CMN.mjs → chunk-73DGSL37.mjs} +2 -2
  15. package/dist/lib/neutral/chunk-73DGSL37.mjs.map +7 -0
  16. package/dist/lib/neutral/{chunk-HPUHQ3L6.mjs → chunk-77QU5RSC.mjs} +3 -3
  17. package/dist/lib/neutral/chunk-77QU5RSC.mjs.map +7 -0
  18. package/dist/lib/neutral/chunk-D4RCXOP4.mjs +13 -0
  19. package/dist/lib/neutral/chunk-D4RCXOP4.mjs.map +7 -0
  20. package/dist/lib/neutral/{chunk-SONGOJRB.mjs → chunk-EJ5J22XS.mjs} +2 -2
  21. package/dist/lib/neutral/chunk-HHIFH3N3.mjs +45 -0
  22. package/dist/lib/neutral/chunk-HHIFH3N3.mjs.map +7 -0
  23. package/dist/lib/neutral/chunk-HQU5QWF4.mjs +349 -0
  24. package/dist/lib/neutral/chunk-HQU5QWF4.mjs.map +7 -0
  25. package/dist/lib/neutral/{chunk-FE7YFBX7.mjs → chunk-LVUL7GIN.mjs} +151 -60
  26. package/dist/lib/neutral/chunk-LVUL7GIN.mjs.map +7 -0
  27. package/dist/lib/neutral/{chunk-GARB7S5R.mjs → chunk-YHK7FWGV.mjs} +5 -3
  28. package/dist/lib/neutral/chunk-YHK7FWGV.mjs.map +7 -0
  29. package/dist/lib/neutral/components/index.mjs +36 -2
  30. package/dist/lib/neutral/components/index.mjs.map +3 -3
  31. package/dist/lib/neutral/containers/index.mjs +4 -4
  32. package/dist/lib/neutral/{create-automation-OE3TNXYE.mjs → create-automation-AGYTF62E.mjs} +5 -9
  33. package/dist/lib/neutral/create-automation-AGYTF62E.mjs.map +7 -0
  34. package/dist/lib/neutral/{create-trigger-from-template-TERHKWJM.mjs → create-trigger-from-template-TYGCSR3Z.mjs} +5 -5
  35. package/dist/lib/neutral/create-trigger-from-template-TYGCSR3Z.mjs.map +7 -0
  36. package/dist/lib/neutral/index.mjs +10 -2
  37. package/dist/lib/neutral/meta.json +1 -1
  38. package/dist/lib/neutral/meta.mjs +1 -1
  39. package/dist/lib/neutral/{navigation-resolver-I3L5FHJO.mjs → navigation-resolver-FSJNF3DQ.mjs} +3 -3
  40. package/dist/lib/neutral/navigation-resolver-FSJNF3DQ.mjs.map +7 -0
  41. package/dist/lib/neutral/operations/index.mjs +1 -1
  42. package/dist/lib/neutral/plugin.mjs +2 -2
  43. package/dist/lib/neutral/{react-surface-IBRWUKPC.mjs → react-surface-W3J3CDHA.mjs} +2 -2
  44. package/dist/lib/neutral/{react-surface-IBRWUKPC.mjs.map → react-surface-W3J3CDHA.mjs.map} +3 -3
  45. package/dist/lib/neutral/testing.mjs +1 -1
  46. package/dist/lib/neutral/translations.mjs +6 -2
  47. package/dist/lib/neutral/translations.mjs.map +3 -3
  48. package/dist/lib/neutral/types/index.mjs +1 -1
  49. package/dist/types/dx.config.d.ts +28 -0
  50. package/dist/types/dx.config.d.ts.map +1 -0
  51. package/dist/types/src/capabilities/index.d.ts +8 -13
  52. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  53. package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -1
  54. package/dist/types/src/capabilities/node.d.ts +5 -5
  55. package/dist/types/src/capabilities/node.d.ts.map +1 -1
  56. package/dist/types/src/capabilities/react-surface.d.ts +2 -2
  57. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  58. package/dist/types/src/components/CronBuilder/CronBuilder.d.ts +16 -0
  59. package/dist/types/src/components/CronBuilder/CronBuilder.d.ts.map +1 -0
  60. package/dist/types/src/components/CronBuilder/CronBuilder.stories.d.ts +194 -0
  61. package/dist/types/src/components/CronBuilder/CronBuilder.stories.d.ts.map +1 -0
  62. package/dist/types/src/components/CronBuilder/cron.d.ts +17 -0
  63. package/dist/types/src/components/CronBuilder/cron.d.ts.map +1 -0
  64. package/dist/types/src/components/CronBuilder/cron.test.d.ts +2 -0
  65. package/dist/types/src/components/CronBuilder/cron.test.d.ts.map +1 -0
  66. package/dist/types/src/components/CronBuilder/index.d.ts +4 -0
  67. package/dist/types/src/components/CronBuilder/index.d.ts.map +1 -0
  68. package/dist/types/src/components/CronBuilder/schema.d.ts +96 -0
  69. package/dist/types/src/components/CronBuilder/schema.d.ts.map +1 -0
  70. package/dist/types/src/components/index.d.ts +1 -0
  71. package/dist/types/src/components/index.d.ts.map +1 -1
  72. package/dist/types/src/containers/AutomationArticle/AutomationArticle.d.ts +6 -0
  73. package/dist/types/src/containers/AutomationArticle/AutomationArticle.d.ts.map +1 -1
  74. package/dist/types/src/containers/AutomationArticle/AutomationArticle.stories.d.ts +120 -0
  75. package/dist/types/src/containers/AutomationArticle/AutomationArticle.stories.d.ts.map +1 -0
  76. package/dist/types/src/containers/AutomationCompanion/AutomationCompanion.d.ts.map +1 -1
  77. package/dist/types/src/index.d.ts +1 -0
  78. package/dist/types/src/index.d.ts.map +1 -1
  79. package/dist/types/src/meta.d.ts +28 -2
  80. package/dist/types/src/meta.d.ts.map +1 -1
  81. package/dist/types/src/paths.d.ts +2 -0
  82. package/dist/types/src/paths.d.ts.map +1 -1
  83. package/dist/types/src/translations.d.ts +9 -1
  84. package/dist/types/src/translations.d.ts.map +1 -1
  85. package/dist/types/src/types/AutomationCapabilities.d.ts +6 -1
  86. package/dist/types/src/types/AutomationCapabilities.d.ts.map +1 -1
  87. package/dist/types/tsconfig.tsbuildinfo +1 -1
  88. package/dx.config.ts +34 -0
  89. package/package.json +40 -38
  90. package/src/AutomationPlugin.test.ts +1 -1
  91. package/src/AutomationPlugin.tsx +1 -1
  92. package/src/capabilities/app-graph-builder.ts +5 -5
  93. package/src/capabilities/navigation-resolver.ts +2 -2
  94. package/src/capabilities/react-surface.tsx +1 -1
  95. package/src/commands/trigger/create/queue.ts +2 -2
  96. package/src/commands/trigger/update/queue.ts +2 -2
  97. package/src/components/CreateAutomationPanel/CreateAutomationPanel.tsx +1 -1
  98. package/src/components/CronBuilder/CronBuilder.stories.tsx +72 -0
  99. package/src/components/CronBuilder/CronBuilder.tsx +94 -0
  100. package/src/components/CronBuilder/cron.test.ts +131 -0
  101. package/src/components/CronBuilder/cron.ts +138 -0
  102. package/src/components/CronBuilder/index.ts +7 -0
  103. package/src/components/CronBuilder/schema.ts +119 -0
  104. package/src/components/index.ts +1 -0
  105. package/src/containers/AutomationArticle/AutomationArticle.stories.tsx +73 -0
  106. package/src/containers/AutomationArticle/AutomationArticle.tsx +186 -56
  107. package/src/containers/AutomationCompanion/AutomationCompanion.tsx +79 -72
  108. package/src/containers/AutomationSettings/AutomationSettings.tsx +3 -3
  109. package/src/containers/TriggerSettings/TriggerSettings.tsx +1 -1
  110. package/src/index.ts +1 -0
  111. package/src/meta.ts +2 -26
  112. package/src/operations/create-trigger-from-template.ts +3 -3
  113. package/src/paths.ts +7 -2
  114. package/src/translations.ts +7 -2
  115. package/src/types/AutomationCapabilities.ts +9 -1
  116. package/src/types/AutomationOperation.ts +1 -1
  117. package/src/types/schema.ts +1 -1
  118. package/dist/lib/neutral/AutomationCompanion-M26WR6VP.mjs.map +0 -7
  119. package/dist/lib/neutral/app-graph-builder-BTTHS4VK.mjs.map +0 -7
  120. package/dist/lib/neutral/chunk-2JP77CMN.mjs.map +0 -7
  121. package/dist/lib/neutral/chunk-DUGOIM7G.mjs +0 -36
  122. package/dist/lib/neutral/chunk-DUGOIM7G.mjs.map +0 -7
  123. package/dist/lib/neutral/chunk-FE7YFBX7.mjs.map +0 -7
  124. package/dist/lib/neutral/chunk-GARB7S5R.mjs.map +0 -7
  125. package/dist/lib/neutral/chunk-HPUHQ3L6.mjs.map +0 -7
  126. package/dist/lib/neutral/create-automation-OE3TNXYE.mjs.map +0 -7
  127. package/dist/lib/neutral/create-trigger-from-template-TERHKWJM.mjs.map +0 -7
  128. package/dist/lib/neutral/navigation-resolver-I3L5FHJO.mjs.map +0 -7
  129. /package/dist/lib/neutral/{AutomationArticle-GN36NUX2.mjs.map → AutomationArticle-CG4ZML3C.mjs.map} +0 -0
  130. /package/dist/lib/neutral/{TriggerSettings-XCHIZPOR.mjs.map → TriggerSettings-ABOTKRUA.mjs.map} +0 -0
  131. /package/dist/lib/neutral/{chunk-SONGOJRB.mjs.map → chunk-EJ5J22XS.mjs.map} +0 -0
@@ -0,0 +1,96 @@
1
+ import * as Schema from 'effect/Schema';
2
+ export declare const MinutelySpec: Schema.Struct<{
3
+ frequency: Schema.Literal<["minutely"]>;
4
+ interval: Schema.refine<number, typeof Schema.Number>;
5
+ }>;
6
+ export declare const HourlySpec: Schema.Struct<{
7
+ frequency: Schema.Literal<["hourly"]>;
8
+ interval: Schema.refine<number, typeof Schema.Number>;
9
+ minute: Schema.refine<number, typeof Schema.Number>;
10
+ }>;
11
+ export declare const DailySpec: Schema.Struct<{
12
+ frequency: Schema.Literal<["daily"]>;
13
+ hour: Schema.refine<number, typeof Schema.Number>;
14
+ minute: Schema.refine<number, typeof Schema.Number>;
15
+ }>;
16
+ export declare const DayOfWeek: Schema.Literal<["sun", "mon", "tue", "wed", "thu", "fri", "sat"]>;
17
+ export type DayOfWeek = Schema.Schema.Type<typeof DayOfWeek>;
18
+ export declare const WeeklySpec: Schema.Struct<{
19
+ frequency: Schema.Literal<["weekly"]>;
20
+ daysOfWeek: Schema.Array$<Schema.Literal<["sun", "mon", "tue", "wed", "thu", "fri", "sat"]>>;
21
+ hour: Schema.refine<number, typeof Schema.Number>;
22
+ minute: Schema.refine<number, typeof Schema.Number>;
23
+ }>;
24
+ export declare const MonthlySpec: Schema.Struct<{
25
+ frequency: Schema.Literal<["monthly"]>;
26
+ daysOfMonth: Schema.Array$<Schema.refine<number, typeof Schema.Number>>;
27
+ hour: Schema.refine<number, typeof Schema.Number>;
28
+ minute: Schema.refine<number, typeof Schema.Number>;
29
+ }>;
30
+ export declare const CustomSpec: Schema.Struct<{
31
+ frequency: Schema.Literal<["custom"]>;
32
+ cronExpression: Schema.SchemaClass<string, string, never>;
33
+ }>;
34
+ export declare const CronSpec: Schema.Union<[Schema.Struct<{
35
+ frequency: Schema.Literal<["minutely"]>;
36
+ interval: Schema.refine<number, typeof Schema.Number>;
37
+ }>, Schema.Struct<{
38
+ frequency: Schema.Literal<["hourly"]>;
39
+ interval: Schema.refine<number, typeof Schema.Number>;
40
+ minute: Schema.refine<number, typeof Schema.Number>;
41
+ }>, Schema.Struct<{
42
+ frequency: Schema.Literal<["daily"]>;
43
+ hour: Schema.refine<number, typeof Schema.Number>;
44
+ minute: Schema.refine<number, typeof Schema.Number>;
45
+ }>, Schema.Struct<{
46
+ frequency: Schema.Literal<["weekly"]>;
47
+ daysOfWeek: Schema.Array$<Schema.Literal<["sun", "mon", "tue", "wed", "thu", "fri", "sat"]>>;
48
+ hour: Schema.refine<number, typeof Schema.Number>;
49
+ minute: Schema.refine<number, typeof Schema.Number>;
50
+ }>, Schema.Struct<{
51
+ frequency: Schema.Literal<["monthly"]>;
52
+ daysOfMonth: Schema.Array$<Schema.refine<number, typeof Schema.Number>>;
53
+ hour: Schema.refine<number, typeof Schema.Number>;
54
+ minute: Schema.refine<number, typeof Schema.Number>;
55
+ }>, Schema.Struct<{
56
+ frequency: Schema.Literal<["custom"]>;
57
+ cronExpression: Schema.SchemaClass<string, string, never>;
58
+ }>]>;
59
+ export type CronSpecType = Schema.Schema.Type<typeof CronSpec>;
60
+ export type Frequency = CronSpecType['frequency'];
61
+ export declare const Frequencies: readonly ["minutely", "hourly", "daily", "weekly", "monthly", "custom"];
62
+ export declare const FrequencyLabels: Record<Frequency, string>;
63
+ export declare const FrequencyDefaults: {
64
+ [K in Frequency]: Extract<CronSpecType, {
65
+ frequency: K;
66
+ }>;
67
+ };
68
+ export declare const CronBuilderSchema: Schema.Struct<{
69
+ spec: Schema.Union<[Schema.Struct<{
70
+ frequency: Schema.Literal<["minutely"]>;
71
+ interval: Schema.refine<number, typeof Schema.Number>;
72
+ }>, Schema.Struct<{
73
+ frequency: Schema.Literal<["hourly"]>;
74
+ interval: Schema.refine<number, typeof Schema.Number>;
75
+ minute: Schema.refine<number, typeof Schema.Number>;
76
+ }>, Schema.Struct<{
77
+ frequency: Schema.Literal<["daily"]>;
78
+ hour: Schema.refine<number, typeof Schema.Number>;
79
+ minute: Schema.refine<number, typeof Schema.Number>;
80
+ }>, Schema.Struct<{
81
+ frequency: Schema.Literal<["weekly"]>;
82
+ daysOfWeek: Schema.Array$<Schema.Literal<["sun", "mon", "tue", "wed", "thu", "fri", "sat"]>>;
83
+ hour: Schema.refine<number, typeof Schema.Number>;
84
+ minute: Schema.refine<number, typeof Schema.Number>;
85
+ }>, Schema.Struct<{
86
+ frequency: Schema.Literal<["monthly"]>;
87
+ daysOfMonth: Schema.Array$<Schema.refine<number, typeof Schema.Number>>;
88
+ hour: Schema.refine<number, typeof Schema.Number>;
89
+ minute: Schema.refine<number, typeof Schema.Number>;
90
+ }>, Schema.Struct<{
91
+ frequency: Schema.Literal<["custom"]>;
92
+ cronExpression: Schema.SchemaClass<string, string, never>;
93
+ }>]>;
94
+ }>;
95
+ export type CronBuilderSchemaType = Schema.Schema.Type<typeof CronBuilderSchema>;
96
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../src/components/CronBuilder/schema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,eAAO,MAAM,YAAY;;;EAMvB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;EAUrB,CAAC;AAEH,eAAO,MAAM,SAAS;;;;EAUpB,CAAC;AAGH,eAAO,MAAM,SAAS,mEAAkE,CAAC;AACzF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,CAAC;AAE7D,eAAO,MAAM,UAAU;;;;;EAWrB,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;EAatB,CAAC;AAEH,eAAO,MAAM,UAAU;;;EAMrB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;IAOO,CAAC;AAE7B,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC/D,MAAM,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;AAElD,eAAO,MAAM,WAAW,yEAOiB,CAAC;AAE1C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAOrD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE;KAAG,CAAC,IAAI,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE;QAAE,SAAS,EAAE,CAAC,CAAA;KAAE,CAAC;CAO1F,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;EAAoC,CAAC;AACnE,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export * from './CreateAutomationPanel';
2
+ export * from './CronBuilder';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAIA,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAIA,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC"}
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import { type AppSurface } from '@dxos/app-toolkit/ui';
3
3
  import { Trigger } from '@dxos/compute';
4
4
  import { type Database } from '@dxos/echo';
5
+ import { type FormFieldRendererProps } from '@dxos/react-ui-form';
5
6
  import { Automation } from '#types';
6
7
  export type AutomationArticleProps = AppSurface.ObjectArticleProps<Automation.Automation>;
7
8
  export declare const AutomationArticle: ({ role, subject }: AutomationArticleProps) => React.JSX.Element | null;
@@ -32,4 +33,9 @@ export declare const AutomationInlineForm: ({ automation, db, }: {
32
33
  automation: Automation.Automation;
33
34
  db: Database.Database;
34
35
  }) => React.JSX.Element;
36
+ declare function CronField(props: FormFieldRendererProps): React.JSX.Element;
37
+ declare namespace CronField {
38
+ var displayName: string;
39
+ }
40
+ export {};
35
41
  //# sourceMappingURL=AutomationArticle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutomationArticle.d.ts","sourceRoot":"","sources":["../../../../../src/containers/AutomationArticle/AutomationArticle.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAsB,OAAO,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,KAAK,QAAQ,EAAkE,MAAM,YAAY,CAAC;AAe3G,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAIpC,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAE1F,eAAO,MAAM,iBAAiB,sBAAuB,sBAAsB,6BA8B1E,CAAC;AAYF;;;;GAIG;AACH,eAAO,MAAM,cAAc,6BAGxB;IACD,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;CAC3B,sBAgBA,CAAC;AAmDF,eAAO,MAAM,aAAa,iCAIvB;IACD,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;CAC3B,sBAwBA,CAAC;AA+FF,eAAO,MAAM,cAAc,iCAIxB;IACD,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;CAC3B,sBA2BA,CAAC;AAcF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,wBAG9B;IACD,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACvB,sBAiBA,CAAC"}
1
+ {"version":3,"file":"AutomationArticle.d.ts","sourceRoot":"","sources":["../../../../../src/containers/AutomationArticle/AutomationArticle.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAG9E,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAuC,OAAO,EAAgB,MAAM,eAAe,CAAC;AAE3F,OAAO,EAAE,KAAK,QAAQ,EAAkE,MAAM,YAAY,CAAC;AAQ3G,OAAO,EAEL,KAAK,sBAAsB,EAK5B,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAQpC,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAE1F,eAAO,MAAM,iBAAiB,sBAAuB,sBAAsB,6BAgC1E,CAAC;AAYF;;;;GAIG;AACH,eAAO,MAAM,cAAc,6BAGxB;IACD,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;CAC3B,sBAgBA,CAAC;AA8JF,eAAO,MAAM,aAAa,iCAIvB;IACD,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;CAC3B,sBAwBA,CAAC;AAkGF,eAAO,MAAM,cAAc,iCAIxB;IACD,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;CAC3B,sBAkBA,CAAC;AAcF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,wBAG9B;IACD,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;IAClC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACvB,sBAiBA,CAAC;2BAOiB,KAAK,EAAE,sBAAsB"}
@@ -0,0 +1,120 @@
1
+ import { type StoryObj } from '@storybook/react-vite';
2
+ import React from 'react';
3
+ declare const meta: {
4
+ title: string;
5
+ render: () => React.JSX.Element;
6
+ decorators: import("@storybook/react").Decorator[];
7
+ parameters: {
8
+ layout: string;
9
+ translations: [{
10
+ readonly 'en-US': {
11
+ readonly [x: string]: {
12
+ readonly 'typename.label': 'Automation';
13
+ readonly 'typename.label_zero': 'Automations';
14
+ readonly 'typename.label_one': 'Automation';
15
+ readonly 'typename.label_other': 'Automations';
16
+ readonly 'object-name.placeholder': 'New automation';
17
+ readonly 'add-object.label': 'Add automation';
18
+ readonly 'rename-object.label': 'Rename automation';
19
+ readonly 'delete-object.label': 'Delete automation';
20
+ readonly 'plugin.name'?: undefined;
21
+ readonly 'automation-panel.label'?: undefined;
22
+ readonly 'create-panel.template.placeholder'?: undefined;
23
+ readonly 'automation-name.label'?: undefined;
24
+ readonly 'general.title'?: undefined;
25
+ readonly 'general.description'?: undefined;
26
+ readonly 'action.title'?: undefined;
27
+ readonly 'action.description'?: undefined;
28
+ readonly 'action.placeholder'?: undefined;
29
+ readonly 'action-input.label'?: undefined;
30
+ readonly 'action-kind.operation.label'?: undefined;
31
+ readonly 'action-kind.routine.label'?: undefined;
32
+ readonly 'trigger-picker.title'?: undefined;
33
+ readonly 'trigger-picker.description'?: undefined;
34
+ readonly 'trigger-kind.placeholder'?: undefined;
35
+ readonly 'trigger-kind.timer.label'?: undefined;
36
+ readonly 'trigger-kind.feed.label'?: undefined;
37
+ readonly 'cron.placeholder'?: undefined;
38
+ readonly 'feed.placeholder'?: undefined;
39
+ readonly 'enabled.label'?: undefined;
40
+ readonly 'enabled.description'?: undefined;
41
+ readonly 'add-trigger.label'?: undefined;
42
+ readonly 'add-trigger-first.message'?: undefined;
43
+ readonly 'remove-trigger.label'?: undefined;
44
+ readonly 'select-action-first.message'?: undefined;
45
+ readonly 'automation-companion.label'?: undefined;
46
+ readonly 'no-automations.message'?: undefined;
47
+ readonly 'automation-not-associated.message'?: undefined;
48
+ readonly 'automation-detached.message'?: undefined;
49
+ readonly 'testing.title'?: undefined;
50
+ readonly 'force-run.label'?: undefined;
51
+ readonly 'reset-cursor.label'?: undefined;
52
+ readonly 'reset-cursor-confirm.label'?: undefined;
53
+ readonly 'automation-verbose.label'?: undefined;
54
+ readonly 'automation.description'?: undefined;
55
+ readonly 'runtime.label'?: undefined;
56
+ readonly 'runtime.description'?: undefined;
57
+ readonly 'runtime.disabled.label'?: undefined;
58
+ readonly 'runtime.local.label'?: undefined;
59
+ readonly 'runtime.edge.label'?: undefined;
60
+ } | {
61
+ readonly 'typename.label'?: undefined;
62
+ readonly 'typename.label_zero'?: undefined;
63
+ readonly 'typename.label_one'?: undefined;
64
+ readonly 'typename.label_other'?: undefined;
65
+ readonly 'object-name.placeholder'?: undefined;
66
+ readonly 'add-object.label'?: undefined;
67
+ readonly 'rename-object.label'?: undefined;
68
+ readonly 'delete-object.label'?: undefined;
69
+ readonly 'plugin.name': 'Automation';
70
+ readonly 'automation-panel.label': 'Automations';
71
+ readonly 'create-panel.template.placeholder': 'Search templates...';
72
+ readonly 'automation-name.label': 'Name';
73
+ readonly 'general.title': 'General';
74
+ readonly 'general.description': 'Name and status.';
75
+ readonly 'action.title': 'Action';
76
+ readonly 'action.description': 'What this automation runs.';
77
+ readonly 'action.placeholder': 'Select an operation or routine';
78
+ readonly 'action-input.label': 'Input';
79
+ readonly 'action-kind.operation.label': 'Operation';
80
+ readonly 'action-kind.routine.label': 'Routine';
81
+ readonly 'trigger-picker.title': 'Trigger';
82
+ readonly 'trigger-picker.description': 'When this automation runs.';
83
+ readonly 'trigger-kind.placeholder': 'Select trigger type';
84
+ readonly 'trigger-kind.timer.label': 'Schedule';
85
+ readonly 'trigger-kind.feed.label': 'Feed';
86
+ readonly 'cron.placeholder': '0 0 * * *';
87
+ readonly 'feed.placeholder': 'Select a feed';
88
+ readonly 'enabled.label': 'Enabled';
89
+ readonly 'enabled.description': 'Turn this automation on or off.';
90
+ readonly 'add-trigger.label': 'Add trigger';
91
+ readonly 'add-trigger-first.message': 'Add a trigger to enable.';
92
+ readonly 'remove-trigger.label': 'Remove';
93
+ readonly 'select-action-first.message': 'Select an action first.';
94
+ readonly 'automation-companion.label': 'Automation';
95
+ readonly 'no-automations.message': 'No automations for this object.';
96
+ readonly 'automation-not-associated.message': 'Not yet associated with this object.';
97
+ readonly 'automation-detached.message': 'No longer associated with this object.';
98
+ readonly 'testing.title': 'Testing';
99
+ readonly 'force-run.label': 'Force run';
100
+ readonly 'reset-cursor.label': 'Reset feed cursor';
101
+ readonly 'reset-cursor-confirm.label': 'Confirm reset feed cursor';
102
+ readonly 'automation-verbose.label': 'Manage automations';
103
+ readonly 'automation.description': 'Manage where automations in this space run.';
104
+ readonly 'runtime.label': 'Runtime location';
105
+ readonly 'runtime.description': 'Determines where automations in this space run.';
106
+ readonly 'runtime.disabled.label': 'Disabled';
107
+ readonly 'runtime.local.label': 'Local';
108
+ readonly 'runtime.edge.label': 'EDGE (experimental)';
109
+ };
110
+ };
111
+ }];
112
+ };
113
+ };
114
+ export default meta;
115
+ type Story = StoryObj<typeof meta>;
116
+ /** Empty automation — no trigger or action yet. Exercises the disabled enabled-switch message. */
117
+ export declare const Empty: Story;
118
+ /** Automation with a timer trigger pre-configured for a daily 9 AM schedule. */
119
+ export declare const WithTimerTrigger: Story;
120
+ //# sourceMappingURL=AutomationArticle.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutomationArticle.stories.d.ts","sourceRoot":"","sources":["../../../../../src/containers/AutomationArticle/AutomationArticle.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAsB1B,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmB2B,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,kGAAkG;AAClG,eAAO,MAAM,KAAK,EAAE,KAAU,CAAC;AAE/B,gFAAgF;AAChF,eAAO,MAAM,gBAAgB,EAAE,KAgB9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AutomationCompanion.d.ts","sourceRoot":"","sources":["../../../../../src/containers/AutomationCompanion/AutomationCompanion.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAiD,MAAM,OAAO,CAAC;AAGtE,OAAO,EAAE,KAAK,QAAQ,EAAU,GAAG,EAAQ,MAAM,YAAY,CAAC;AAW9D,MAAM,MAAM,wBAAwB,GAAG;IACrC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC;CACrB,CAAC;AAKF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,mBAAoB,wBAAwB,sBA+E3E,CAAC"}
1
+ {"version":3,"file":"AutomationCompanion.d.ts","sourceRoot":"","sources":["../../../../../src/containers/AutomationCompanion/AutomationCompanion.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAiD,MAAM,OAAO,CAAC;AAGtE,OAAO,EAAE,KAAK,QAAQ,EAAU,GAAG,EAAQ,MAAM,YAAY,CAAC;AAe9D,MAAM,MAAM,wBAAwB,GAAG;IACrC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC;CACrB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,mBAAoB,wBAAwB,sBAqF3E,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './meta';
2
+ export * from './paths';
2
3
  export * from './types';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -1,3 +1,29 @@
1
- import { Plugin } from '@dxos/app-framework';
2
- export declare const meta: Plugin.Meta;
1
+ export declare const meta: {
2
+ readonly profile: {
3
+ readonly key: string;
4
+ readonly name: string;
5
+ readonly description?: string | undefined;
6
+ readonly homePage?: string | undefined;
7
+ readonly source?: string | undefined;
8
+ readonly tags?: readonly string[] | undefined;
9
+ readonly screenshots?: readonly {
10
+ readonly light?: string | undefined;
11
+ readonly dark?: string | undefined;
12
+ }[] | undefined;
13
+ readonly icon?: {
14
+ readonly key: string;
15
+ readonly hue?: string | undefined;
16
+ } | undefined;
17
+ readonly dependsOn?: readonly string[] | undefined;
18
+ readonly spec?: string | undefined;
19
+ readonly author?: string | undefined;
20
+ };
21
+ readonly release?: {
22
+ readonly version: string;
23
+ readonly moduleUrl: string;
24
+ readonly dependencies?: {
25
+ readonly [x: string]: string;
26
+ } | undefined;
27
+ } | undefined;
28
+ };
3
29
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI7C,eAAO,MAAM,IAAI,aAwBf,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAmC,CAAC"}
@@ -1,3 +1,5 @@
1
1
  declare const getAutomationsPath: (spaceId: string) => string, getAutomationPath: (spaceId: string, objectId: string) => string;
2
+ /** Path to the automations settings section for a given space. */
3
+ export declare const getAutomationsSettingsPath: (spaceId: string) => string;
2
4
  export { getAutomationsPath, getAutomationPath };
3
5
  //# sourceMappingURL=paths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../../src/paths.ts"],"names":[],"mappings":"AAQA,QAAA,MAAwB,kBAAkB,+BAAiB,iBAAiB,+CAE3E,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../../src/paths.ts"],"names":[],"mappings":"AASA,QAAA,MAAwB,kBAAkB,+BAAiB,iBAAiB,+CAE3E,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,0BAA0B,YAAa,MAAM,KAAG,MACe,CAAC;AAE7E,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,CAAC"}
@@ -38,6 +38,10 @@ export declare const translations: [{
38
38
  readonly 'no-automations.message'?: undefined;
39
39
  readonly 'automation-not-associated.message'?: undefined;
40
40
  readonly 'automation-detached.message'?: undefined;
41
+ readonly 'testing.title'?: undefined;
42
+ readonly 'force-run.label'?: undefined;
43
+ readonly 'reset-cursor.label'?: undefined;
44
+ readonly 'reset-cursor-confirm.label'?: undefined;
41
45
  readonly 'automation-verbose.label'?: undefined;
42
46
  readonly 'automation.description'?: undefined;
43
47
  readonly 'runtime.label'?: undefined;
@@ -69,7 +73,7 @@ export declare const translations: [{
69
73
  readonly 'trigger-picker.title': 'Trigger';
70
74
  readonly 'trigger-picker.description': 'When this automation runs.';
71
75
  readonly 'trigger-kind.placeholder': 'Select trigger type';
72
- readonly 'trigger-kind.timer.label': 'Schedule (cron)';
76
+ readonly 'trigger-kind.timer.label': 'Schedule';
73
77
  readonly 'trigger-kind.feed.label': 'Feed';
74
78
  readonly 'cron.placeholder': '0 0 * * *';
75
79
  readonly 'feed.placeholder': 'Select a feed';
@@ -83,6 +87,10 @@ export declare const translations: [{
83
87
  readonly 'no-automations.message': 'No automations for this object.';
84
88
  readonly 'automation-not-associated.message': 'Not yet associated with this object.';
85
89
  readonly 'automation-detached.message': 'No longer associated with this object.';
90
+ readonly 'testing.title': 'Testing';
91
+ readonly 'force-run.label': 'Force run';
92
+ readonly 'reset-cursor.label': 'Reset feed cursor';
93
+ readonly 'reset-cursor-confirm.label': 'Confirm reset feed cursor';
86
94
  readonly 'automation-verbose.label': 'Manage automations';
87
95
  readonly 'automation.description': 'Manage where automations in this space run.';
88
96
  readonly 'runtime.label': 'Runtime location';
@@ -1 +1 @@
1
- {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY;;;uCAIC,YAAY;4CACP,aAAa;2CACd,YAAY;6CACV,aAAa;gDACV,gBAAgB;yCACvB,gBAAgB;4CACb,mBAAmB;4CACnB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAG3B,YAAY;+CACD,aAAa;0DACF,qBAAqB;8CAEjC,MAAM;sCACd,SAAS;4CACH,kBAAkB;qCACzB,QAAQ;2CACF,4BAA4B;2CAC5B,gCAAgC;2CAChC,OAAO;oDACE,WAAW;kDACb,SAAS;6CACd,SAAS;mDACH,4BAA4B;iDAC9B,qBAAqB;iDACrB,iBAAiB;gDAClB,MAAM;yCACb,WAAW;yCACX,eAAe;sCAClB,SAAS;4CACH,iCAAiC;0CACnC,aAAa;kDACL,0BAA0B;6CAC/B,QAAQ;oDACD,yBAAyB;mDAC1B,YAAY;+CAChB,iCAAiC;0DACtB,sCAAsC;oDAC5C,wCAAwC;iDAE3C,oBAAoB;+CACtB,6CAA6C;sCAEtD,kBAAkB;4CACZ,iDAAiD;+CAC9C,UAAU;4CACb,OAAO;2CACR,qBAAqB;;;EAIpB,CAAC"}
1
+ {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY;;;uCAIC,YAAY;4CACP,aAAa;2CACd,YAAY;6CACV,aAAa;gDACV,gBAAgB;yCACvB,gBAAgB;4CACb,mBAAmB;4CACnB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAG3B,YAAY;+CACD,aAAa;0DACF,qBAAqB;8CAEjC,MAAM;sCACd,SAAS;4CACH,kBAAkB;qCACzB,QAAQ;2CACF,4BAA4B;2CAC5B,gCAAgC;2CAChC,OAAO;oDACE,WAAW;kDACb,SAAS;6CACd,SAAS;mDACH,4BAA4B;iDAC9B,qBAAqB;iDACrB,UAAU;gDACX,MAAM;yCACb,WAAW;yCACX,eAAe;sCAClB,SAAS;4CACH,iCAAiC;0CACnC,aAAa;kDACL,0BAA0B;6CAC/B,QAAQ;oDACD,yBAAyB;mDAC1B,YAAY;+CAChB,iCAAiC;0DACtB,sCAAsC;oDAC5C,wCAAwC;sCAEtD,SAAS;wCACP,WAAW;2CACR,mBAAmB;mDACX,2BAA2B;iDAE7B,oBAAoB;+CACtB,6CAA6C;sCAEtD,kBAAkB;4CACZ,iDAAiD;+CAC9C,UAAU;4CACb,OAAO;2CACR,qBAAqB;;;EAIpB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type * as Effect from 'effect/Effect';
2
2
  import { Capability } from '@dxos/app-framework';
3
3
  import type { Database, Obj } from '@dxos/echo';
4
- import { type DelegationStrategy } from '@dxos/functions-runtime';
4
+ import type { CompletionGuard, DelegationStrategy } from '@dxos/functions-runtime';
5
5
  import * as Automation from './Automation';
6
6
  /**
7
7
  * Optional supervisor strategy for the agent chat service. When contributed (by a plugin that knows
@@ -10,6 +10,11 @@ import * as Automation from './Automation';
10
10
  * LayerSpec; absent by default (a plain conversational agent).
11
11
  */
12
12
  export declare const AgentDelegationStrategy: Capability.InterfaceDef<DelegationStrategy>;
13
+ /**
14
+ * Optional plan-completion guard for the agent chat service. When contributed, the agent process
15
+ * runs an ephemeral stop/continue check before succeeding if open plan tasks remain.
16
+ */
17
+ export declare const AgentCompletionGuard: Capability.InterfaceDef<CompletionGuard>;
13
18
  /**
14
19
  * An automation template contributed by a plugin. The create dialog and the per-object "Automations"
15
20
  * companion list contributed templates (`Capability.getAll(AutomationCapabilities.Template)`) and run the
@@ -1 +1 @@
1
- {"version":3,"file":"AutomationCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/types/AutomationCapabilities.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,6CAEnC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;KACvB,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CACrE,CAAC;AAEF,eAAO,MAAM,QAAQ,mCAA8E,CAAC"}
1
+ {"version":3,"file":"AutomationCapabilities.d.ts","sourceRoot":"","sources":["../../../../src/types/AutomationCapabilities.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAEnF,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,6CAEnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,0CAEhC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;KACvB,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CACrE,CAAC;AAEF,eAAO,MAAM,QAAQ,mCAA8E,CAAC"}