@bridgeline-digital/hawk-app-cli 0.1.0-dev.20261020202308 → 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/LICENSE +7 -7
- package/README.md +770 -770
- package/agents/AGENTS.md +192 -192
- package/agents/project/custom.md +21 -21
- package/agents/project/next-mui.md +21 -21
- package/agents/project/next.md +24 -24
- package/agents/project/vanilla.md +22 -22
- package/agents/project/vite.md +19 -19
- package/bin/hawk-app.mjs +0 -0
- package/docs/bridge/README.md +1315 -1315
- package/docs/showcase/README.md +47 -47
- package/docs/showcase/functions/echo.ts +12 -12
- package/docs/showcase/functions/long-task.ts +31 -31
- package/docs/showcase/functions/showcase.ts +186 -186
- package/docs/showcase/hawk-app.json +73 -73
- package/docs/showcase/queries/assistant-prompts-by-day.json +6 -6
- package/docs/showcase/queries/assistant-prompts-by-day.sql +8 -8
- package/docs/showcase/queries/searches-by-day.json +6 -6
- package/docs/showcase/queries/searches-by-day.sql +7 -7
- package/docs/showcase/src/App.tsx +1436 -1436
- package/docs/showcase/src/main.tsx +10 -10
- package/docs/showcase/src/styles.css +71 -71
- package/docs/showcase/src/useHawkApp.ts +44 -44
- package/docs/showcase/src/vite-env.d.ts +1 -1
- package/docs/ui/README.md +166 -166
- package/package.json +1 -1
- package/schema/hawk-app.schema.json +611 -611
- package/src/accessibility.mjs +105 -105
- package/src/agents.mjs +145 -145
- package/src/aliases.mjs +30 -30
- package/src/app-icon.mjs +82 -82
- package/src/channel.mjs +116 -116
- package/src/cli.mjs +825 -825
- package/src/clients.mjs +221 -221
- package/src/config.mjs +148 -148
- package/src/create.mjs +186 -186
- package/src/credentials.mjs +56 -56
- package/src/data.mjs +169 -169
- package/src/deploy.mjs +349 -349
- package/src/dev.mjs +459 -459
- package/src/doctor.mjs +176 -176
- package/src/env.mjs +140 -140
- package/src/functions.mjs +313 -313
- package/src/login.mjs +166 -166
- package/src/logs.mjs +64 -64
- package/src/manifest.mjs +425 -425
- package/src/mcp-docs.mjs +168 -168
- package/src/mcp-hawksearch.mjs +342 -342
- package/src/mcp-reports.mjs +130 -130
- package/src/mcp-rules.mjs +109 -109
- package/src/mcp.mjs +539 -539
- package/src/platform.mjs +116 -116
- package/src/project-checks.mjs +153 -153
- package/src/queries.mjs +289 -289
- package/src/scope-check.mjs +91 -91
- package/src/secrets.mjs +86 -86
- package/src/slug-guard.mjs +80 -80
- package/src/sso.mjs +182 -182
- package/src/telemetry.mjs +50 -50
- package/src/upgrade.mjs +406 -406
- package/src/versions.mjs +102 -102
- package/templates/next/next.config.ts +13 -13
- package/templates/next/package.json +26 -26
- package/templates/next/src/lib/useHawkApp.ts +46 -46
- package/templates/next-mui/next.config.ts +13 -13
- package/templates/next-mui/package.json +30 -30
- package/templates/next-mui/src/app/layout.tsx +19 -19
- package/templates/next-mui/src/app/page.tsx +78 -78
- package/templates/next-mui/src/app/providers.tsx +10 -10
- package/templates/preact/package.json +26 -26
- package/templates/preact/src/useHawkApp.ts +44 -44
- package/templates/preact/src/vite-env.d.ts +1 -1
- package/templates/preact/tsconfig.json +17 -17
- package/templates/preact/vite.config.ts +11 -11
- package/templates/react/package.json +29 -29
- package/templates/react/src/useHawkApp.ts +44 -44
- package/templates/react/src/vite-env.d.ts +1 -1
- package/templates/react/tsconfig.json +16 -16
- package/templates/react/vite.config.ts +11 -11
- package/templates/vanilla/package.json +15 -15
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "../../schemas/hawk-app.schema.json",
|
|
3
|
-
"slug": "showcase",
|
|
4
|
-
"name": "Hawk Apps Showcase",
|
|
5
|
-
"icon": "icon.svg",
|
|
6
|
-
"description": "Every Hawk Apps feature in one app: context, analytics, dashboard API, search, queries, functions, jobs, system parameters, storage, app config, AI and host messages.",
|
|
7
|
-
"category": "Showcase",
|
|
8
|
-
"version": "0.1.0",
|
|
9
|
-
"visibility": "internal",
|
|
10
|
-
"hosting": "static",
|
|
11
|
-
"scopes": [
|
|
12
|
-
"reports:read",
|
|
13
|
-
"hawksearch:read",
|
|
14
|
-
"hawksearch:write",
|
|
15
|
-
"data:read",
|
|
16
|
-
"functions:invoke",
|
|
17
|
-
"email:send",
|
|
18
|
-
"hawksearch:sysparams:write",
|
|
19
|
-
"hawksearch:search",
|
|
20
|
-
"hawksearch:recommendations",
|
|
21
|
-
"hawksearch:index",
|
|
22
|
-
"hawksearch:index:items",
|
|
23
|
-
"ai:invoke",
|
|
24
|
-
"storage"
|
|
25
|
-
],
|
|
26
|
-
"systemParameters": [
|
|
27
|
-
"Timezone",
|
|
28
|
-
"SearchPreviewURL",
|
|
29
|
-
"baseurl",
|
|
30
|
-
"packageTier"
|
|
31
|
-
],
|
|
32
|
-
"config": {
|
|
33
|
-
"showcaseGreeting": {
|
|
34
|
-
"type": "string",
|
|
35
|
-
"label": "Greeting",
|
|
36
|
-
"description": "Shown by the Config tab; set it globally or for one client to see the layers.",
|
|
37
|
-
"default": "Hello from the showcase"
|
|
38
|
-
},
|
|
39
|
-
"showcaseNotifyEmails": {
|
|
40
|
-
"type": "emails",
|
|
41
|
-
"label": "Notification recipients"
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
"externalOrigins": [],
|
|
45
|
-
"functions": {
|
|
46
|
-
"echo": {
|
|
47
|
-
"timeoutSeconds": 10,
|
|
48
|
-
"memoryMb": 256,
|
|
49
|
-
"secrets": [
|
|
50
|
-
"TEST_SECRET"
|
|
51
|
-
]
|
|
52
|
-
},
|
|
53
|
-
"showcase": {
|
|
54
|
-
"timeoutSeconds": 25,
|
|
55
|
-
"memoryMb": 512,
|
|
56
|
-
"secrets": [
|
|
57
|
-
"TEST_SECRET"
|
|
58
|
-
]
|
|
59
|
-
},
|
|
60
|
-
"long-task": {
|
|
61
|
-
"job": true,
|
|
62
|
-
"timeoutSeconds": 900,
|
|
63
|
-
"memoryMb": 256
|
|
64
|
-
}
|
|
65
|
-
},
|
|
66
|
-
"schedules": {
|
|
67
|
-
"daily-check": {
|
|
68
|
-
"function": "long-task",
|
|
69
|
-
"cron": "0 13 ? * * *",
|
|
70
|
-
"timezone": "America/Chicago"
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "../../schemas/hawk-app.schema.json",
|
|
3
|
+
"slug": "showcase",
|
|
4
|
+
"name": "Hawk Apps Showcase",
|
|
5
|
+
"icon": "icon.svg",
|
|
6
|
+
"description": "Every Hawk Apps feature in one app: context, analytics, dashboard API, search, queries, functions, jobs, system parameters, storage, app config, AI and host messages.",
|
|
7
|
+
"category": "Showcase",
|
|
8
|
+
"version": "0.1.0",
|
|
9
|
+
"visibility": "internal",
|
|
10
|
+
"hosting": "static",
|
|
11
|
+
"scopes": [
|
|
12
|
+
"reports:read",
|
|
13
|
+
"hawksearch:read",
|
|
14
|
+
"hawksearch:write",
|
|
15
|
+
"data:read",
|
|
16
|
+
"functions:invoke",
|
|
17
|
+
"email:send",
|
|
18
|
+
"hawksearch:sysparams:write",
|
|
19
|
+
"hawksearch:search",
|
|
20
|
+
"hawksearch:recommendations",
|
|
21
|
+
"hawksearch:index",
|
|
22
|
+
"hawksearch:index:items",
|
|
23
|
+
"ai:invoke",
|
|
24
|
+
"storage"
|
|
25
|
+
],
|
|
26
|
+
"systemParameters": [
|
|
27
|
+
"Timezone",
|
|
28
|
+
"SearchPreviewURL",
|
|
29
|
+
"baseurl",
|
|
30
|
+
"packageTier"
|
|
31
|
+
],
|
|
32
|
+
"config": {
|
|
33
|
+
"showcaseGreeting": {
|
|
34
|
+
"type": "string",
|
|
35
|
+
"label": "Greeting",
|
|
36
|
+
"description": "Shown by the Config tab; set it globally or for one client to see the layers.",
|
|
37
|
+
"default": "Hello from the showcase"
|
|
38
|
+
},
|
|
39
|
+
"showcaseNotifyEmails": {
|
|
40
|
+
"type": "emails",
|
|
41
|
+
"label": "Notification recipients"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"externalOrigins": [],
|
|
45
|
+
"functions": {
|
|
46
|
+
"echo": {
|
|
47
|
+
"timeoutSeconds": 10,
|
|
48
|
+
"memoryMb": 256,
|
|
49
|
+
"secrets": [
|
|
50
|
+
"TEST_SECRET"
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
"showcase": {
|
|
54
|
+
"timeoutSeconds": 25,
|
|
55
|
+
"memoryMb": 512,
|
|
56
|
+
"secrets": [
|
|
57
|
+
"TEST_SECRET"
|
|
58
|
+
]
|
|
59
|
+
},
|
|
60
|
+
"long-task": {
|
|
61
|
+
"job": true,
|
|
62
|
+
"timeoutSeconds": 900,
|
|
63
|
+
"memoryMb": 256
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"schedules": {
|
|
67
|
+
"daily-check": {
|
|
68
|
+
"function": "long-task",
|
|
69
|
+
"cron": "0 13 ? * * *",
|
|
70
|
+
"timezone": "America/Chicago"
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
{
|
|
2
|
-
"params": [
|
|
3
|
-
{ "name": "from", "type": "date" },
|
|
4
|
-
{ "name": "to", "type": "date" }
|
|
5
|
-
]
|
|
6
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"params": [
|
|
3
|
+
{ "name": "from", "type": "date" },
|
|
4
|
+
{ "name": "to", "type": "date" }
|
|
5
|
+
]
|
|
6
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
-- Sensitive table (agentprompts): works only when Engineering turns on "Allow sensitive data" for this app;
|
|
2
|
-
-- otherwise Athena reports TABLE_NOT_FOUND. Counts only, no prompt text.
|
|
3
|
-
SELECT event_date, count(*) AS prompts
|
|
4
|
-
FROM agentprompts
|
|
5
|
-
WHERE event_date BETWEEN ? AND ?
|
|
6
|
-
AND {{partitions(from, to)}}
|
|
7
|
-
GROUP BY event_date
|
|
8
|
-
ORDER BY event_date
|
|
1
|
+
-- Sensitive table (agentprompts): works only when Engineering turns on "Allow sensitive data" for this app;
|
|
2
|
+
-- otherwise Athena reports TABLE_NOT_FOUND. Counts only, no prompt text.
|
|
3
|
+
SELECT event_date, count(*) AS prompts
|
|
4
|
+
FROM agentprompts
|
|
5
|
+
WHERE event_date BETWEEN ? AND ?
|
|
6
|
+
AND {{partitions(from, to)}}
|
|
7
|
+
GROUP BY event_date
|
|
8
|
+
ORDER BY event_date
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
{
|
|
2
|
-
"params": [
|
|
3
|
-
{ "name": "from", "type": "date" },
|
|
4
|
-
{ "name": "to", "type": "date" }
|
|
5
|
-
]
|
|
6
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"params": [
|
|
3
|
+
{ "name": "from", "type": "date" },
|
|
4
|
+
{ "name": "to", "type": "date" }
|
|
5
|
+
]
|
|
6
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
-- Allowed table: searches per day for the selected range (partition-pruned via the macro).
|
|
2
|
-
SELECT search_date, sum(search_count) AS searches
|
|
3
|
-
FROM dailysearches
|
|
4
|
-
WHERE search_date BETWEEN ? AND ?
|
|
5
|
-
AND {{partitions(from, to)}}
|
|
6
|
-
GROUP BY search_date
|
|
7
|
-
ORDER BY search_date
|
|
1
|
+
-- Allowed table: searches per day for the selected range (partition-pruned via the macro).
|
|
2
|
+
SELECT search_date, sum(search_count) AS searches
|
|
3
|
+
FROM dailysearches
|
|
4
|
+
WHERE search_date BETWEEN ? AND ?
|
|
5
|
+
AND {{partitions(from, to)}}
|
|
6
|
+
GROUP BY search_date
|
|
7
|
+
ORDER BY search_date
|