@pillar-ai/sdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +129 -0
- package/dist/actions/definitions/analytics.d.ts +18 -0
- package/dist/actions/definitions/content.d.ts +40 -0
- package/dist/actions/definitions/index.d.ts +26 -0
- package/dist/actions/definitions/navigation.d.ts +65 -0
- package/dist/actions/definitions/settings.d.ts +162 -0
- package/dist/actions/definitions/sources.d.ts +44 -0
- package/dist/actions/definitions/support.d.ts +15 -0
- package/dist/actions/definitions/team.d.ts +120 -0
- package/dist/actions/index.d.ts +33 -0
- package/dist/actions/registry.d.ts +110 -0
- package/dist/actions/types.d.ts +388 -0
- package/dist/api/client.d.ts +186 -0
- package/dist/api/mcp-client.d.ts +226 -0
- package/dist/button/FloatingButton.d.ts +44 -0
- package/dist/cli/sync.d.ts +2 -0
- package/dist/components/Button/EdgeTrigger.d.ts +78 -0
- package/dist/components/Button/FloatingButton.d.ts +46 -0
- package/dist/components/Button/index.d.ts +5 -0
- package/dist/components/Cards/ConfirmActionCard.d.ts +23 -0
- package/dist/components/Cards/index.d.ts +6 -0
- package/dist/components/Panel/ChatInput.d.ts +5 -0
- package/dist/components/Panel/ContextTag.d.ts +18 -0
- package/dist/components/Panel/Header.d.ts +14 -0
- package/dist/components/Panel/Panel.d.ts +104 -0
- package/dist/components/Panel/PanelContent.d.ts +6 -0
- package/dist/components/Panel/TaskButton.d.ts +59 -0
- package/dist/components/Panel/UnifiedChatInput.d.ts +23 -0
- package/dist/components/Panel/WorkflowChecklist.d.ts +9 -0
- package/dist/components/Panel/index.d.ts +13 -0
- package/dist/components/Panel/styles.d.ts +20 -0
- package/dist/components/Plan/InlinePlanView.d.ts +24 -0
- package/dist/components/Plan/PlanStepItem.d.ts +18 -0
- package/dist/components/Plan/PlanView.d.ts +10 -0
- package/dist/components/Plan/index.d.ts +8 -0
- package/dist/components/TextSelection/TextSelectionManager.d.ts +34 -0
- package/dist/components/TextSelection/TextSelectionPopover.d.ts +14 -0
- package/dist/components/TextSelection/index.d.ts +6 -0
- package/dist/components/TextSelection/styles.d.ts +5 -0
- package/dist/components/Tooltips/Tooltip.d.ts +46 -0
- package/dist/components/Tooltips/TooltipManager.d.ts +41 -0
- package/dist/components/Tooltips/index.d.ts +6 -0
- package/dist/components/Tooltips/styles.d.ts +5 -0
- package/dist/components/Views/ArticleChatView.d.ts +9 -0
- package/dist/components/Views/ArticleView.d.ts +10 -0
- package/dist/components/Views/CategoryView.d.ts +11 -0
- package/dist/components/Views/ChatView.d.ts +5 -0
- package/dist/components/Views/DeveloperView.d.ts +6 -0
- package/dist/components/Views/HomeView.d.ts +5 -0
- package/dist/components/Views/SearchView.d.ts +10 -0
- package/dist/components/Views/index.d.ts +5 -0
- package/dist/components/context.d.ts +21 -0
- package/dist/components/index.d.ts +9 -0
- package/dist/components/shared/ArticleCard.d.ts +17 -0
- package/dist/components/shared/CategoryCard.d.ts +17 -0
- package/dist/components/shared/Empty.d.ts +11 -0
- package/dist/components/shared/Loading.d.ts +6 -0
- package/dist/components/shared/MessageInputArea.d.ts +19 -0
- package/dist/components/shared/QuestionChip.d.ts +14 -0
- package/dist/components/shared/index.d.ts +7 -0
- package/dist/content/extensions/AccordionNode.d.ts +10 -0
- package/dist/content/extensions/CalloutNode.d.ts +11 -0
- package/dist/content/extensions/index.d.ts +5 -0
- package/dist/content/index.d.ts +5 -0
- package/dist/content/renderer.d.ts +24 -0
- package/dist/core/Pillar.d.ts +454 -0
- package/dist/core/config.d.ts +253 -0
- package/dist/core/context.d.ts +71 -0
- package/dist/core/events.d.ts +228 -0
- package/dist/core/plan-executor.d.ts +101 -0
- package/dist/core/plan.d.ts +155 -0
- package/dist/core/workflow.d.ts +89 -0
- package/dist/index.d.ts +32 -0
- package/dist/panel/Panel.d.ts +53 -0
- package/dist/panel/PanelUI.d.ts +43 -0
- package/dist/panel/components/ArticleCard.d.ts +10 -0
- package/dist/panel/components/CategoryCard.d.ts +10 -0
- package/dist/panel/components/ChatInput.d.ts +36 -0
- package/dist/panel/components/Header.d.ts +16 -0
- package/dist/panel/components/SearchInput.d.ts +11 -0
- package/dist/panel/styles.d.ts +5 -0
- package/dist/panel/views/ArticleView.d.ts +21 -0
- package/dist/panel/views/CategoryView.d.ts +20 -0
- package/dist/panel/views/ChatView.d.ts +30 -0
- package/dist/panel/views/HomeView.d.ts +18 -0
- package/dist/panel/views/SearchView.d.ts +22 -0
- package/dist/pillar.esm.js +10338 -0
- package/dist/pillar.esm.js.map +1 -0
- package/dist/pillar.js +10362 -0
- package/dist/pillar.js.map +1 -0
- package/dist/pillar.min.js +2 -0
- package/dist/pillar.min.js.map +1 -0
- package/dist/store/chat.d.ts +85 -0
- package/dist/store/context.d.ts +46 -0
- package/dist/store/developer.d.ts +19 -0
- package/dist/store/index.d.ts +10 -0
- package/dist/store/panel.d.ts +43 -0
- package/dist/store/plan-persistence.d.ts +47 -0
- package/dist/store/plan.d.ts +45 -0
- package/dist/store/router.d.ts +18 -0
- package/dist/store/tooltips.d.ts +21 -0
- package/dist/store/workflow.d.ts +48 -0
- package/dist/tooltips/Tooltip.d.ts +63 -0
- package/dist/tooltips/TooltipManager.d.ts +42 -0
- package/dist/tooltips/styles.d.ts +5 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/user-context.d.ts +29 -0
- package/dist/utils/dom.d.ts +46 -0
- package/dist/utils/markdown.d.ts +9 -0
- package/dist/utils/positioning.d.ts +52 -0
- package/dist/utils/urlParams.d.ts +27 -0
- package/package.json +86 -0
- package/src/actions/types.ts +468 -0
- package/src/cli/sync.ts +477 -0
package/README.md
ADDED
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
# @pillar-ai/sdk
|
|
2
|
+
|
|
3
|
+
Pillar Embedded Help SDK - Add contextual help, tooltips, and AI chat to your application.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @pillar-ai/sdk
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
### Script Tag (CDN)
|
|
14
|
+
|
|
15
|
+
```html
|
|
16
|
+
<script src="https://cdn.trypillar.com/sdk/pillar.min.js"></script>
|
|
17
|
+
<script>
|
|
18
|
+
Pillar.init({
|
|
19
|
+
helpCenter: 'your-help-center',
|
|
20
|
+
publicKey: 'pk_live_xxx',
|
|
21
|
+
});
|
|
22
|
+
</script>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Or with auto-initialization via data attributes:
|
|
26
|
+
|
|
27
|
+
```html
|
|
28
|
+
<script
|
|
29
|
+
src="https://cdn.trypillar.com/sdk/pillar.min.js"
|
|
30
|
+
data-help-center="your-help-center"
|
|
31
|
+
data-public-key="pk_live_xxx"
|
|
32
|
+
></script>
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### ES Modules
|
|
36
|
+
|
|
37
|
+
```javascript
|
|
38
|
+
import { Pillar } from '@pillar-ai/sdk';
|
|
39
|
+
|
|
40
|
+
await Pillar.init({
|
|
41
|
+
helpCenter: 'your-help-center',
|
|
42
|
+
publicKey: 'pk_live_xxx',
|
|
43
|
+
});
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Configuration
|
|
47
|
+
|
|
48
|
+
```javascript
|
|
49
|
+
Pillar.init({
|
|
50
|
+
// Required
|
|
51
|
+
helpCenter: 'your-help-center',
|
|
52
|
+
publicKey: 'pk_live_xxx',
|
|
53
|
+
|
|
54
|
+
// Optional configuration
|
|
55
|
+
config: {
|
|
56
|
+
// Panel configuration
|
|
57
|
+
panel: {
|
|
58
|
+
position: 'right', // 'left' | 'right'
|
|
59
|
+
mode: 'overlay', // 'overlay' | 'push'
|
|
60
|
+
},
|
|
61
|
+
|
|
62
|
+
// Floating button
|
|
63
|
+
floatingButton: {
|
|
64
|
+
enabled: true,
|
|
65
|
+
position: 'bottom-right',
|
|
66
|
+
},
|
|
67
|
+
|
|
68
|
+
// Tooltips
|
|
69
|
+
tooltips: {
|
|
70
|
+
enabled: true,
|
|
71
|
+
trigger: 'hover', // 'hover' | 'click'
|
|
72
|
+
},
|
|
73
|
+
|
|
74
|
+
// Theme
|
|
75
|
+
theme: {
|
|
76
|
+
mode: 'system', // 'light' | 'dark' | 'system'
|
|
77
|
+
colors: {
|
|
78
|
+
primary: '#6366f1',
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Features
|
|
86
|
+
|
|
87
|
+
- **AI Chat**: Embedded AI assistant that understands your product
|
|
88
|
+
- **Contextual Help**: Show relevant help based on user context
|
|
89
|
+
- **Tooltips**: Attach interactive tooltips to any element
|
|
90
|
+
- **Text Selection**: Allow users to ask questions about selected text
|
|
91
|
+
- **Customizable UI**: Full control over positioning, theming, and behavior
|
|
92
|
+
|
|
93
|
+
## API Reference
|
|
94
|
+
|
|
95
|
+
### Pillar.init(config)
|
|
96
|
+
|
|
97
|
+
Initialize the SDK with your configuration.
|
|
98
|
+
|
|
99
|
+
### Pillar.open()
|
|
100
|
+
|
|
101
|
+
Open the help panel.
|
|
102
|
+
|
|
103
|
+
### Pillar.close()
|
|
104
|
+
|
|
105
|
+
Close the help panel.
|
|
106
|
+
|
|
107
|
+
### Pillar.toggle()
|
|
108
|
+
|
|
109
|
+
Toggle the help panel open/closed.
|
|
110
|
+
|
|
111
|
+
### Pillar.setContext(context)
|
|
112
|
+
|
|
113
|
+
Update the user/product context.
|
|
114
|
+
|
|
115
|
+
### Pillar.on(event, callback)
|
|
116
|
+
|
|
117
|
+
Subscribe to SDK events.
|
|
118
|
+
|
|
119
|
+
## React Integration
|
|
120
|
+
|
|
121
|
+
For React applications, use the `@pillar-ai/react` package for a more idiomatic integration with hooks and components.
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
npm install @pillar-ai/react
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## License
|
|
128
|
+
|
|
129
|
+
MIT
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const analyticsActions: {
|
|
2
|
+
view_search_analytics: {
|
|
3
|
+
description: string;
|
|
4
|
+
type: "navigate";
|
|
5
|
+
path: string;
|
|
6
|
+
autoRun: true;
|
|
7
|
+
autoComplete: true;
|
|
8
|
+
handler: () => void;
|
|
9
|
+
};
|
|
10
|
+
view_ai_analytics: {
|
|
11
|
+
description: string;
|
|
12
|
+
type: "navigate";
|
|
13
|
+
path: string;
|
|
14
|
+
autoRun: true;
|
|
15
|
+
autoComplete: true;
|
|
16
|
+
handler: () => void;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export declare const contentActions: {
|
|
2
|
+
view_all_articles: {
|
|
3
|
+
description: string;
|
|
4
|
+
type: "navigate";
|
|
5
|
+
path: string;
|
|
6
|
+
autoRun: true;
|
|
7
|
+
autoComplete: true;
|
|
8
|
+
handler: () => void;
|
|
9
|
+
};
|
|
10
|
+
view_article: {
|
|
11
|
+
description: string;
|
|
12
|
+
type: "trigger_action";
|
|
13
|
+
autoRun: false;
|
|
14
|
+
autoComplete: false;
|
|
15
|
+
defaultData: {
|
|
16
|
+
action: string;
|
|
17
|
+
};
|
|
18
|
+
handler: () => void;
|
|
19
|
+
};
|
|
20
|
+
filter_stale: {
|
|
21
|
+
description: string;
|
|
22
|
+
type: "trigger_action";
|
|
23
|
+
autoRun: false;
|
|
24
|
+
autoComplete: false;
|
|
25
|
+
defaultData: {
|
|
26
|
+
action: string;
|
|
27
|
+
};
|
|
28
|
+
handler: () => void;
|
|
29
|
+
};
|
|
30
|
+
view_categories: {
|
|
31
|
+
description: string;
|
|
32
|
+
type: "trigger_action";
|
|
33
|
+
autoRun: false;
|
|
34
|
+
autoComplete: false;
|
|
35
|
+
defaultData: {
|
|
36
|
+
action: string;
|
|
37
|
+
};
|
|
38
|
+
handler: () => void;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Action Definitions Index
|
|
3
|
+
*
|
|
4
|
+
* Imports and registers all action definitions for the Pillar Admin app.
|
|
5
|
+
* These are code-first action definitions that get synced to the backend
|
|
6
|
+
* during CI/CD builds.
|
|
7
|
+
*
|
|
8
|
+
* To use in your app:
|
|
9
|
+
* 1. Import this file early in your app initialization
|
|
10
|
+
* 2. Or create your own action definitions using defineActions()
|
|
11
|
+
*
|
|
12
|
+
* The action metadata is extracted via `npm run extract-actions` and
|
|
13
|
+
* synced to the backend via `npm run sync-actions`.
|
|
14
|
+
*/
|
|
15
|
+
import './navigation';
|
|
16
|
+
import './settings';
|
|
17
|
+
import './sources';
|
|
18
|
+
import './analytics';
|
|
19
|
+
import './team';
|
|
20
|
+
import './support';
|
|
21
|
+
export { navigationActions } from './navigation';
|
|
22
|
+
export { settingsActions } from './settings';
|
|
23
|
+
export { sourcesActions } from './sources';
|
|
24
|
+
export { analyticsActions } from './analytics';
|
|
25
|
+
export { teamActions } from './team';
|
|
26
|
+
export { supportActions } from './support';
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
export declare const navigationActions: {
|
|
2
|
+
open_knowledge: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "navigate";
|
|
6
|
+
path: string;
|
|
7
|
+
autoRun: true;
|
|
8
|
+
autoComplete: true;
|
|
9
|
+
handler: () => void;
|
|
10
|
+
};
|
|
11
|
+
open_settings: {
|
|
12
|
+
description: string;
|
|
13
|
+
examples: string[];
|
|
14
|
+
type: "navigate";
|
|
15
|
+
path: string;
|
|
16
|
+
autoRun: true;
|
|
17
|
+
autoComplete: true;
|
|
18
|
+
handler: () => void;
|
|
19
|
+
};
|
|
20
|
+
open_actions: {
|
|
21
|
+
description: string;
|
|
22
|
+
examples: string[];
|
|
23
|
+
type: "navigate";
|
|
24
|
+
path: string;
|
|
25
|
+
autoRun: true;
|
|
26
|
+
autoComplete: true;
|
|
27
|
+
handler: () => void;
|
|
28
|
+
};
|
|
29
|
+
open_analytics: {
|
|
30
|
+
description: string;
|
|
31
|
+
examples: string[];
|
|
32
|
+
type: "navigate";
|
|
33
|
+
path: string;
|
|
34
|
+
autoRun: true;
|
|
35
|
+
autoComplete: true;
|
|
36
|
+
handler: () => void;
|
|
37
|
+
};
|
|
38
|
+
open_ai_tester: {
|
|
39
|
+
description: string;
|
|
40
|
+
examples: string[];
|
|
41
|
+
type: "navigate";
|
|
42
|
+
path: string;
|
|
43
|
+
autoRun: true;
|
|
44
|
+
autoComplete: true;
|
|
45
|
+
handler: () => void;
|
|
46
|
+
};
|
|
47
|
+
open_configure: {
|
|
48
|
+
description: string;
|
|
49
|
+
examples: string[];
|
|
50
|
+
type: "navigate";
|
|
51
|
+
path: string;
|
|
52
|
+
autoRun: true;
|
|
53
|
+
autoComplete: true;
|
|
54
|
+
handler: () => void;
|
|
55
|
+
};
|
|
56
|
+
create_new_action: {
|
|
57
|
+
description: string;
|
|
58
|
+
examples: string[];
|
|
59
|
+
type: "navigate";
|
|
60
|
+
path: string;
|
|
61
|
+
autoRun: true;
|
|
62
|
+
autoComplete: true;
|
|
63
|
+
handler: () => void;
|
|
64
|
+
};
|
|
65
|
+
};
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
export declare const settingsActions: {
|
|
2
|
+
open_branding_settings: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "navigate";
|
|
6
|
+
path: string;
|
|
7
|
+
autoRun: true;
|
|
8
|
+
autoComplete: true;
|
|
9
|
+
handler: () => void;
|
|
10
|
+
};
|
|
11
|
+
open_layout_settings: {
|
|
12
|
+
description: string;
|
|
13
|
+
examples: string[];
|
|
14
|
+
type: "navigate";
|
|
15
|
+
path: string;
|
|
16
|
+
autoRun: true;
|
|
17
|
+
autoComplete: true;
|
|
18
|
+
handler: () => void;
|
|
19
|
+
};
|
|
20
|
+
open_header_settings: {
|
|
21
|
+
description: string;
|
|
22
|
+
examples: string[];
|
|
23
|
+
type: "navigate";
|
|
24
|
+
path: string;
|
|
25
|
+
autoRun: true;
|
|
26
|
+
autoComplete: true;
|
|
27
|
+
handler: () => void;
|
|
28
|
+
};
|
|
29
|
+
open_footer_settings: {
|
|
30
|
+
description: string;
|
|
31
|
+
examples: string[];
|
|
32
|
+
type: "navigate";
|
|
33
|
+
path: string;
|
|
34
|
+
autoRun: true;
|
|
35
|
+
autoComplete: true;
|
|
36
|
+
handler: () => void;
|
|
37
|
+
};
|
|
38
|
+
open_features_settings: {
|
|
39
|
+
description: string;
|
|
40
|
+
examples: string[];
|
|
41
|
+
type: "navigate";
|
|
42
|
+
path: string;
|
|
43
|
+
autoRun: true;
|
|
44
|
+
autoComplete: true;
|
|
45
|
+
handler: () => void;
|
|
46
|
+
};
|
|
47
|
+
open_ai_settings: {
|
|
48
|
+
description: string;
|
|
49
|
+
examples: string[];
|
|
50
|
+
type: "navigate";
|
|
51
|
+
path: string;
|
|
52
|
+
autoRun: true;
|
|
53
|
+
autoComplete: true;
|
|
54
|
+
handler: () => void;
|
|
55
|
+
};
|
|
56
|
+
open_seo_settings: {
|
|
57
|
+
description: string;
|
|
58
|
+
examples: string[];
|
|
59
|
+
type: "navigate";
|
|
60
|
+
path: string;
|
|
61
|
+
autoRun: true;
|
|
62
|
+
autoComplete: true;
|
|
63
|
+
handler: () => void;
|
|
64
|
+
};
|
|
65
|
+
enable_ai_assistant: {
|
|
66
|
+
description: string;
|
|
67
|
+
type: "trigger_action";
|
|
68
|
+
autoRun: false;
|
|
69
|
+
autoComplete: false;
|
|
70
|
+
defaultData: {
|
|
71
|
+
action: string;
|
|
72
|
+
target: string;
|
|
73
|
+
};
|
|
74
|
+
handler: () => void;
|
|
75
|
+
};
|
|
76
|
+
disable_ai_assistant: {
|
|
77
|
+
description: string;
|
|
78
|
+
type: "trigger_action";
|
|
79
|
+
autoRun: false;
|
|
80
|
+
autoComplete: false;
|
|
81
|
+
defaultData: {
|
|
82
|
+
action: string;
|
|
83
|
+
target: string;
|
|
84
|
+
};
|
|
85
|
+
handler: () => void;
|
|
86
|
+
};
|
|
87
|
+
enable_dark_mode: {
|
|
88
|
+
description: string;
|
|
89
|
+
examples: string[];
|
|
90
|
+
type: "trigger_action";
|
|
91
|
+
autoRun: true;
|
|
92
|
+
autoComplete: true;
|
|
93
|
+
defaultData: {
|
|
94
|
+
action: string;
|
|
95
|
+
theme: string;
|
|
96
|
+
};
|
|
97
|
+
handler: () => void;
|
|
98
|
+
};
|
|
99
|
+
disable_dark_mode: {
|
|
100
|
+
description: string;
|
|
101
|
+
examples: string[];
|
|
102
|
+
type: "trigger_action";
|
|
103
|
+
autoRun: true;
|
|
104
|
+
autoComplete: true;
|
|
105
|
+
defaultData: {
|
|
106
|
+
action: string;
|
|
107
|
+
theme: string;
|
|
108
|
+
};
|
|
109
|
+
handler: () => void;
|
|
110
|
+
};
|
|
111
|
+
toggle_dark_mode: {
|
|
112
|
+
description: string;
|
|
113
|
+
examples: string[];
|
|
114
|
+
type: "trigger_action";
|
|
115
|
+
autoRun: true;
|
|
116
|
+
autoComplete: true;
|
|
117
|
+
defaultData: {
|
|
118
|
+
action: string;
|
|
119
|
+
};
|
|
120
|
+
handler: () => void;
|
|
121
|
+
};
|
|
122
|
+
change_theme: {
|
|
123
|
+
description: string;
|
|
124
|
+
type: "trigger_action";
|
|
125
|
+
autoRun: true;
|
|
126
|
+
autoComplete: true;
|
|
127
|
+
defaultData: {
|
|
128
|
+
action: string;
|
|
129
|
+
};
|
|
130
|
+
handler: () => void;
|
|
131
|
+
};
|
|
132
|
+
update_logo: {
|
|
133
|
+
description: string;
|
|
134
|
+
type: "trigger_action";
|
|
135
|
+
autoRun: true;
|
|
136
|
+
autoComplete: true;
|
|
137
|
+
defaultData: {
|
|
138
|
+
action: string;
|
|
139
|
+
};
|
|
140
|
+
handler: () => void;
|
|
141
|
+
};
|
|
142
|
+
add_footer_link: {
|
|
143
|
+
description: string;
|
|
144
|
+
type: "trigger_action";
|
|
145
|
+
autoRun: true;
|
|
146
|
+
autoComplete: true;
|
|
147
|
+
defaultData: {
|
|
148
|
+
action: string;
|
|
149
|
+
};
|
|
150
|
+
handler: () => void;
|
|
151
|
+
};
|
|
152
|
+
configure_suggested_questions: {
|
|
153
|
+
description: string;
|
|
154
|
+
type: "trigger_action";
|
|
155
|
+
autoRun: true;
|
|
156
|
+
autoComplete: true;
|
|
157
|
+
defaultData: {
|
|
158
|
+
action: string;
|
|
159
|
+
};
|
|
160
|
+
handler: () => void;
|
|
161
|
+
};
|
|
162
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export declare const sourcesActions: {
|
|
2
|
+
add_new_source: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "navigate";
|
|
6
|
+
path: string;
|
|
7
|
+
autoRun: true;
|
|
8
|
+
autoComplete: true;
|
|
9
|
+
dataSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {
|
|
12
|
+
type: {
|
|
13
|
+
type: "string";
|
|
14
|
+
description: string;
|
|
15
|
+
};
|
|
16
|
+
url: {
|
|
17
|
+
type: "string";
|
|
18
|
+
description: string;
|
|
19
|
+
};
|
|
20
|
+
name: {
|
|
21
|
+
type: "string";
|
|
22
|
+
description: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
handler: () => void;
|
|
27
|
+
};
|
|
28
|
+
crawl_website: {
|
|
29
|
+
description: string;
|
|
30
|
+
type: "navigate";
|
|
31
|
+
path: string;
|
|
32
|
+
autoRun: true;
|
|
33
|
+
autoComplete: true;
|
|
34
|
+
handler: () => void;
|
|
35
|
+
};
|
|
36
|
+
connect_cloud_storage: {
|
|
37
|
+
description: string;
|
|
38
|
+
type: "navigate";
|
|
39
|
+
path: string;
|
|
40
|
+
autoRun: true;
|
|
41
|
+
autoComplete: true;
|
|
42
|
+
handler: () => void;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const supportActions: {
|
|
2
|
+
escalate: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "external_link";
|
|
6
|
+
externalUrl: string;
|
|
7
|
+
handler: () => void;
|
|
8
|
+
};
|
|
9
|
+
defer: {
|
|
10
|
+
description: string;
|
|
11
|
+
examples: string[];
|
|
12
|
+
type: "trigger_action";
|
|
13
|
+
handler: () => void;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
export declare const teamActions: {
|
|
2
|
+
open_team_settings: {
|
|
3
|
+
description: string;
|
|
4
|
+
type: "navigate";
|
|
5
|
+
path: string;
|
|
6
|
+
autoRun: true;
|
|
7
|
+
autoComplete: true;
|
|
8
|
+
handler: () => void;
|
|
9
|
+
};
|
|
10
|
+
invite_team_member: {
|
|
11
|
+
description: string;
|
|
12
|
+
type: "inline_ui";
|
|
13
|
+
autoRun: false;
|
|
14
|
+
autoComplete: false;
|
|
15
|
+
defaultData: {
|
|
16
|
+
card_type: string;
|
|
17
|
+
emails: never[];
|
|
18
|
+
role: string;
|
|
19
|
+
};
|
|
20
|
+
dataSchema: {
|
|
21
|
+
type: "object";
|
|
22
|
+
properties: {
|
|
23
|
+
emails: {
|
|
24
|
+
type: "array";
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
role: {
|
|
28
|
+
type: "string";
|
|
29
|
+
description: string;
|
|
30
|
+
enum: string[];
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
required: string[];
|
|
34
|
+
};
|
|
35
|
+
requiredContext: {
|
|
36
|
+
userRole: string;
|
|
37
|
+
};
|
|
38
|
+
handler: () => void;
|
|
39
|
+
};
|
|
40
|
+
view_pending_invitations: {
|
|
41
|
+
description: string;
|
|
42
|
+
type: "trigger_action";
|
|
43
|
+
autoRun: true;
|
|
44
|
+
autoComplete: true;
|
|
45
|
+
defaultData: {
|
|
46
|
+
action: string;
|
|
47
|
+
};
|
|
48
|
+
requiredContext: {
|
|
49
|
+
userRole: string;
|
|
50
|
+
};
|
|
51
|
+
handler: () => void;
|
|
52
|
+
};
|
|
53
|
+
resend_invitation: {
|
|
54
|
+
description: string;
|
|
55
|
+
type: "trigger_action";
|
|
56
|
+
autoRun: false;
|
|
57
|
+
autoComplete: false;
|
|
58
|
+
defaultData: {
|
|
59
|
+
action: string;
|
|
60
|
+
};
|
|
61
|
+
requiredContext: {
|
|
62
|
+
userRole: string;
|
|
63
|
+
};
|
|
64
|
+
handler: () => void;
|
|
65
|
+
};
|
|
66
|
+
cancel_invitation: {
|
|
67
|
+
description: string;
|
|
68
|
+
type: "trigger_action";
|
|
69
|
+
autoRun: false;
|
|
70
|
+
autoComplete: false;
|
|
71
|
+
defaultData: {
|
|
72
|
+
action: string;
|
|
73
|
+
};
|
|
74
|
+
requiredContext: {
|
|
75
|
+
userRole: string;
|
|
76
|
+
};
|
|
77
|
+
handler: () => void;
|
|
78
|
+
};
|
|
79
|
+
remove_team_member: {
|
|
80
|
+
description: string;
|
|
81
|
+
type: "trigger_action";
|
|
82
|
+
autoRun: false;
|
|
83
|
+
autoComplete: false;
|
|
84
|
+
defaultData: {
|
|
85
|
+
action: string;
|
|
86
|
+
};
|
|
87
|
+
requiredContext: {
|
|
88
|
+
userRole: string;
|
|
89
|
+
};
|
|
90
|
+
handler: () => void;
|
|
91
|
+
};
|
|
92
|
+
promote_to_admin: {
|
|
93
|
+
description: string;
|
|
94
|
+
type: "trigger_action";
|
|
95
|
+
autoRun: false;
|
|
96
|
+
autoComplete: false;
|
|
97
|
+
defaultData: {
|
|
98
|
+
action: string;
|
|
99
|
+
role: string;
|
|
100
|
+
};
|
|
101
|
+
requiredContext: {
|
|
102
|
+
userRole: string;
|
|
103
|
+
};
|
|
104
|
+
handler: () => void;
|
|
105
|
+
};
|
|
106
|
+
demote_to_member: {
|
|
107
|
+
description: string;
|
|
108
|
+
type: "trigger_action";
|
|
109
|
+
autoRun: false;
|
|
110
|
+
autoComplete: false;
|
|
111
|
+
defaultData: {
|
|
112
|
+
action: string;
|
|
113
|
+
role: string;
|
|
114
|
+
};
|
|
115
|
+
requiredContext: {
|
|
116
|
+
userRole: string;
|
|
117
|
+
};
|
|
118
|
+
handler: () => void;
|
|
119
|
+
};
|
|
120
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Actions Module - Code-first action definitions for Pillar SDK.
|
|
3
|
+
*
|
|
4
|
+
* This module enables developers to define actions in their application code
|
|
5
|
+
* rather than in the admin UI. Action metadata is synced to the server during
|
|
6
|
+
* CI/CD builds via the `pillar-sync` CLI.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* // 1. Define actions in your app (e.g., lib/pillar/actions.ts)
|
|
11
|
+
* import type { SyncActionDefinitions } from '@pillar-ai/sdk';
|
|
12
|
+
*
|
|
13
|
+
* export const actions: SyncActionDefinitions = {
|
|
14
|
+
* open_settings: {
|
|
15
|
+
* description: 'Navigate to settings page',
|
|
16
|
+
* type: 'navigate',
|
|
17
|
+
* path: '/settings',
|
|
18
|
+
* autoRun: true,
|
|
19
|
+
* },
|
|
20
|
+
* };
|
|
21
|
+
*
|
|
22
|
+
* // 2. Sync actions via CI/CD
|
|
23
|
+
* // npx pillar-sync --actions ./lib/pillar/actions.ts
|
|
24
|
+
*
|
|
25
|
+
* // 3. Register handlers at runtime
|
|
26
|
+
* pillar.onTask('open_settings', () => router.push('/settings'));
|
|
27
|
+
* pillar.onTask('navigate', ({ path }) => router.push(path));
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @module actions
|
|
31
|
+
*/
|
|
32
|
+
export type { ActionType, ActionDataSchema, ActionDefinition, ActionDefinitions, ActionManifest, ActionManifestEntry, ClientInfo, Platform, SyncActionDefinition, SyncActionDefinitions, ActionTypeDataMap, NavigateActionData, TriggerActionData, InlineUIData, ExternalLinkData, CopyTextData, ActionDataType, ActionNames, TypedTaskHandler, TypedOnTask, TypedPillarMethods, } from './types';
|
|
33
|
+
export { defineActions, setClientInfo, getClientInfo, getHandler, getActionDefinition, hasAction, getActionNames, getManifest, clearRegistry, getActionCount, } from './registry';
|