@notis_ai/cli 0.2.13 → 0.2.15
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 +125 -21
- package/dist/agent-hooks/notis-agent-hook.mjs +19750 -0
- package/{skills → dist/base-skills}/notis-apps/SKILL.md +93 -58
- package/{skills → dist/base-skills}/notis-cli/SKILL.md +9 -9
- package/dist/base-skills/notis-query/SKILL.md +705 -0
- package/dist/skill-sync/index.js +1528 -0
- package/dist/skill-sync/index.js.map +7 -0
- package/package.json +5 -2
- package/skills/notis-apps/cli.md +44 -18
- package/skills/notis-cli/AGENT_INSTRUCTIONS.md +39 -0
- package/skills/notis-onboarding/BRIEF.md +16 -0
- package/src/agent-hook-entry.js +5 -0
- package/src/cli.js +23 -14
- package/src/command-specs/agents.js +392 -0
- package/src/command-specs/apps.js +1090 -418
- package/src/command-specs/auth.js +63 -10
- package/src/command-specs/handover.js +374 -0
- package/src/command-specs/index.js +9 -0
- package/src/command-specs/onboarding.js +69 -5
- package/src/command-specs/skills.js +56 -0
- package/src/command-specs/tools.js +6 -0
- package/src/runtime/agent-memory-state.js +126 -0
- package/src/runtime/agent-setup.js +383 -0
- package/src/runtime/app-dev-consumers.js +154 -0
- package/src/runtime/app-dev-host-lock.js +80 -0
- package/src/runtime/app-dev-roots.js +284 -0
- package/src/runtime/app-dev-server.js +229 -30
- package/src/runtime/app-dev-sessions.js +105 -145
- package/src/runtime/app-platform.js +1499 -161
- package/src/runtime/app-registry-scaffolds.js +367 -0
- package/src/runtime/base-skills.d.ts +20 -0
- package/src/runtime/base-skills.js +167 -0
- package/src/runtime/delegated-context.js +68 -0
- package/src/runtime/git.js +233 -0
- package/src/runtime/login-listener.js +15 -0
- package/src/runtime/oauth.js +1506 -141
- package/src/runtime/output.js +7 -0
- package/src/runtime/ports.js +16 -0
- package/src/runtime/profiles.js +0 -5
- package/src/runtime/skill-sync/cloud-client.ts +96 -0
- package/src/runtime/skill-sync/index.ts +644 -0
- package/src/runtime/skill-sync/local-scanner.ts +1046 -0
- package/src/runtime/skill-sync/symlink-manager.ts +383 -0
- package/src/runtime/skill-sync/sync-plan.ts +22 -0
- package/src/runtime/skill-sync/types.ts +103 -0
- package/src/runtime/skill-sync/write-cloud-skill.ts +50 -0
- package/src/runtime/store-screenshot.js +6 -1
- package/src/runtime/sync-skills.d.ts +37 -0
- package/src/runtime/sync-skills.js +215 -0
- package/src/runtime/transport.js +19 -2
- package/template/.harness/index.html.tmpl +116 -47
- package/template/app/layout.tsx +5 -1
- package/template/notis.config.ts +1 -0
- package/template/packages/sdk/package.json +2 -1
- package/template/packages/sdk/src/components/DocumentEditor.tsx +13 -3
- package/template/packages/sdk/src/components/MarkdownEditor.tsx +121 -0
- package/template/packages/sdk/src/components/MultiSelectActionBar.tsx +37 -119
- package/template/packages/sdk/src/components/MultiSelectCheckbox.tsx +5 -1
- package/template/packages/sdk/src/components/MultiSelectDragOverlay.tsx +1 -1
- package/template/packages/sdk/src/components/NotisSelectionBoundary.tsx +55 -0
- package/template/packages/sdk/src/components/ShortcutHints.tsx +56 -0
- package/template/packages/sdk/src/config.ts +71 -0
- package/template/packages/sdk/src/documents.ts +28 -1
- package/template/packages/sdk/src/hooks/useActiveResource.ts +19 -0
- package/template/packages/sdk/src/hooks/useCloudComputer.ts +97 -0
- package/template/packages/sdk/src/hooks/useCollectionInteractions.ts +709 -0
- package/template/packages/sdk/src/hooks/useDatabaseSubscription.ts +76 -0
- package/template/packages/sdk/src/hooks/useHandover.ts +78 -0
- package/template/packages/sdk/src/hooks/useMultiSelect.ts +44 -482
- package/template/packages/sdk/src/hooks/useTool.ts +5 -4
- package/template/packages/sdk/src/index.ts +64 -2
- package/template/packages/sdk/src/interactions/actions.ts +46 -0
- package/template/packages/sdk/src/interactions/shortcuts.tsx +628 -0
- package/template/packages/sdk/src/interactions.ts +41 -0
- package/template/packages/sdk/src/provider.tsx +2 -1
- package/template/packages/sdk/src/runtime.ts +219 -3
- package/dist/scaffolds/notis-database/CHANGELOG.md +0 -5
- package/dist/scaffolds/notis-database/app/globals.css +0 -44
- package/dist/scaffolds/notis-database/app/layout.tsx +0 -6
- package/dist/scaffolds/notis-database/app/page.tsx +0 -1088
- package/dist/scaffolds/notis-database/components/ui/badge.tsx +0 -28
- package/dist/scaffolds/notis-database/components/ui/button.tsx +0 -53
- package/dist/scaffolds/notis-database/components/ui/card.tsx +0 -56
- package/dist/scaffolds/notis-database/components/ui/table.tsx +0 -120
- package/dist/scaffolds/notis-database/components.json +0 -20
- package/dist/scaffolds/notis-database/index.html +0 -12
- package/dist/scaffolds/notis-database/lib/types.ts +0 -132
- package/dist/scaffolds/notis-database/lib/utils.ts +0 -6
- package/dist/scaffolds/notis-database/metadata/screenshot-1.png +0 -0
- package/dist/scaffolds/notis-database/metadata/screenshot-2.png +0 -0
- package/dist/scaffolds/notis-database/metadata/screenshot-3.png +0 -0
- package/dist/scaffolds/notis-database/metadata/screenshot-4.png +0 -0
- package/dist/scaffolds/notis-database/metadata/screenshot-5.png +0 -0
- package/dist/scaffolds/notis-database/metadata/screenshot-fixtures.json +0 -1839
- package/dist/scaffolds/notis-database/notis.config.ts +0 -73
- package/dist/scaffolds/notis-database/package-lock.json +0 -3935
- package/dist/scaffolds/notis-database/package.json +0 -32
- package/dist/scaffolds/notis-database/packages/sdk/package.json +0 -36
- package/dist/scaffolds/notis-database/packages/sdk/src/components/DocumentEditor.tsx +0 -93
- package/dist/scaffolds/notis-database/packages/sdk/src/components/Markdown.tsx +0 -60
- package/dist/scaffolds/notis-database/packages/sdk/src/components/MultiSelectActionBar.tsx +0 -278
- package/dist/scaffolds/notis-database/packages/sdk/src/components/MultiSelectCheckbox.tsx +0 -91
- package/dist/scaffolds/notis-database/packages/sdk/src/components/MultiSelectDragOverlay.tsx +0 -39
- package/dist/scaffolds/notis-database/packages/sdk/src/config.ts +0 -196
- package/dist/scaffolds/notis-database/packages/sdk/src/documents.ts +0 -229
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useBackend.ts +0 -41
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useDatabaseSchema.ts +0 -85
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useDocument.ts +0 -78
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useDocuments.ts +0 -121
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useMultiSelect.ts +0 -539
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useNotis.ts +0 -34
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useNotisNavigation.ts +0 -49
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useTool.ts +0 -64
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useTools.ts +0 -56
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useTopBarSearch.ts +0 -73
- package/dist/scaffolds/notis-database/packages/sdk/src/hooks/useUpsertDocument.ts +0 -95
- package/dist/scaffolds/notis-database/packages/sdk/src/index.ts +0 -83
- package/dist/scaffolds/notis-database/packages/sdk/src/provider.tsx +0 -43
- package/dist/scaffolds/notis-database/packages/sdk/src/runtime.ts +0 -220
- package/dist/scaffolds/notis-database/packages/sdk/src/styles.css +0 -186
- package/dist/scaffolds/notis-database/packages/sdk/src/ui.ts +0 -15
- package/dist/scaffolds/notis-database/packages/sdk/src/vite.ts +0 -56
- package/dist/scaffolds/notis-database/packages/sdk/tsconfig.json +0 -15
- package/dist/scaffolds/notis-database/postcss.config.mjs +0 -8
- package/dist/scaffolds/notis-database/src/dev-main.tsx +0 -23
- package/dist/scaffolds/notis-database/src/mock-runtime.ts +0 -561
- package/dist/scaffolds/notis-database/tailwind.config.ts +0 -59
- package/dist/scaffolds/notis-database/tsconfig.json +0 -23
- package/dist/scaffolds/notis-database/vite.config.ts +0 -22
- package/dist/scaffolds/notis-journal/CHANGELOG.md +0 -29
- package/dist/scaffolds/notis-journal/app/globals.css +0 -37
- package/dist/scaffolds/notis-journal/app/insights/page.tsx +0 -513
- package/dist/scaffolds/notis-journal/app/journal-core.tsx +0 -362
- package/dist/scaffolds/notis-journal/app/journal-ui.tsx +0 -337
- package/dist/scaffolds/notis-journal/app/layout.tsx +0 -6
- package/dist/scaffolds/notis-journal/app/page.tsx +0 -486
- package/dist/scaffolds/notis-journal/components/ui/badge.tsx +0 -28
- package/dist/scaffolds/notis-journal/components/ui/button.tsx +0 -53
- package/dist/scaffolds/notis-journal/components/ui/card.tsx +0 -56
- package/dist/scaffolds/notis-journal/components.json +0 -20
- package/dist/scaffolds/notis-journal/index.html +0 -12
- package/dist/scaffolds/notis-journal/lib/utils.ts +0 -6
- package/dist/scaffolds/notis-journal/metadata/screenshot-1.png +0 -0
- package/dist/scaffolds/notis-journal/metadata/screenshot-2.png +0 -0
- package/dist/scaffolds/notis-journal/metadata/screenshot-3.png +0 -0
- package/dist/scaffolds/notis-journal/metadata/screenshot-4.png +0 -0
- package/dist/scaffolds/notis-journal/metadata/screenshot-5.png +0 -0
- package/dist/scaffolds/notis-journal/metadata/screenshot-6.png +0 -0
- package/dist/scaffolds/notis-journal/metadata/screenshot-fixtures.json +0 -132
- package/dist/scaffolds/notis-journal/notis.config.ts +0 -93
- package/dist/scaffolds/notis-journal/package-lock.json +0 -4615
- package/dist/scaffolds/notis-journal/package.json +0 -34
- package/dist/scaffolds/notis-journal/packages/sdk/package.json +0 -36
- package/dist/scaffolds/notis-journal/packages/sdk/src/components/DocumentEditor.tsx +0 -93
- package/dist/scaffolds/notis-journal/packages/sdk/src/components/Markdown.tsx +0 -60
- package/dist/scaffolds/notis-journal/packages/sdk/src/components/MultiSelectActionBar.tsx +0 -278
- package/dist/scaffolds/notis-journal/packages/sdk/src/components/MultiSelectCheckbox.tsx +0 -91
- package/dist/scaffolds/notis-journal/packages/sdk/src/components/MultiSelectDragOverlay.tsx +0 -39
- package/dist/scaffolds/notis-journal/packages/sdk/src/config.ts +0 -196
- package/dist/scaffolds/notis-journal/packages/sdk/src/documents.ts +0 -229
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useBackend.ts +0 -41
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useDatabaseSchema.ts +0 -85
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useDocument.ts +0 -78
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useDocuments.ts +0 -121
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useMultiSelect.ts +0 -539
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useNotis.ts +0 -34
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useNotisNavigation.ts +0 -49
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useTool.ts +0 -64
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useTools.ts +0 -56
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useTopBarSearch.ts +0 -73
- package/dist/scaffolds/notis-journal/packages/sdk/src/hooks/useUpsertDocument.ts +0 -95
- package/dist/scaffolds/notis-journal/packages/sdk/src/index.ts +0 -83
- package/dist/scaffolds/notis-journal/packages/sdk/src/provider.tsx +0 -43
- package/dist/scaffolds/notis-journal/packages/sdk/src/runtime.ts +0 -220
- package/dist/scaffolds/notis-journal/packages/sdk/src/styles.css +0 -186
- package/dist/scaffolds/notis-journal/packages/sdk/src/ui.ts +0 -15
- package/dist/scaffolds/notis-journal/packages/sdk/src/vite.ts +0 -56
- package/dist/scaffolds/notis-journal/packages/sdk/tsconfig.json +0 -15
- package/dist/scaffolds/notis-journal/postcss.config.mjs +0 -8
- package/dist/scaffolds/notis-journal/skills/journal-onboarding/SKILL.md +0 -120
- package/dist/scaffolds/notis-journal/src/dev-main.tsx +0 -58
- package/dist/scaffolds/notis-journal/src/mock-runtime.ts +0 -197
- package/dist/scaffolds/notis-journal/tailwind.config.ts +0 -58
- package/dist/scaffolds/notis-journal/tsconfig.json +0 -23
- package/dist/scaffolds/notis-journal/vite.config.ts +0 -10
- package/dist/scaffolds/notis-notes/CHANGELOG.md +0 -5
- package/dist/scaffolds/notis-notes/app/globals.css +0 -3
- package/dist/scaffolds/notis-notes/app/layout.tsx +0 -6
- package/dist/scaffolds/notis-notes/app/page.tsx +0 -1943
- package/dist/scaffolds/notis-notes/app/phosphor-icons.ts +0 -596
- package/dist/scaffolds/notis-notes/components/ui/badge.tsx +0 -28
- package/dist/scaffolds/notis-notes/components/ui/button.tsx +0 -53
- package/dist/scaffolds/notis-notes/components/ui/card.tsx +0 -56
- package/dist/scaffolds/notis-notes/components.json +0 -20
- package/dist/scaffolds/notis-notes/lib/utils.ts +0 -6
- package/dist/scaffolds/notis-notes/lib/visible-properties.ts +0 -144
- package/dist/scaffolds/notis-notes/metadata/screenshot-1.png +0 -0
- package/dist/scaffolds/notis-notes/metadata/screenshot-2.png +0 -0
- package/dist/scaffolds/notis-notes/metadata/screenshot-3.png +0 -0
- package/dist/scaffolds/notis-notes/metadata/screenshot-4.png +0 -0
- package/dist/scaffolds/notis-notes/metadata/screenshot-5.png +0 -0
- package/dist/scaffolds/notis-notes/metadata/screenshot-fixtures.json +0 -752
- package/dist/scaffolds/notis-notes/notis.config.ts +0 -80
- package/dist/scaffolds/notis-notes/package-lock.json +0 -4636
- package/dist/scaffolds/notis-notes/package.json +0 -35
- package/dist/scaffolds/notis-notes/packages/sdk/package.json +0 -36
- package/dist/scaffolds/notis-notes/packages/sdk/src/components/DocumentEditor.tsx +0 -93
- package/dist/scaffolds/notis-notes/packages/sdk/src/components/Markdown.tsx +0 -60
- package/dist/scaffolds/notis-notes/packages/sdk/src/components/MultiSelectActionBar.tsx +0 -278
- package/dist/scaffolds/notis-notes/packages/sdk/src/components/MultiSelectCheckbox.tsx +0 -91
- package/dist/scaffolds/notis-notes/packages/sdk/src/components/MultiSelectDragOverlay.tsx +0 -39
- package/dist/scaffolds/notis-notes/packages/sdk/src/config.ts +0 -196
- package/dist/scaffolds/notis-notes/packages/sdk/src/documents.ts +0 -229
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useBackend.ts +0 -41
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useDatabaseSchema.ts +0 -85
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useDocument.ts +0 -78
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useDocuments.ts +0 -121
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useMultiSelect.ts +0 -539
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useNotis.ts +0 -34
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useNotisNavigation.ts +0 -49
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useTool.ts +0 -64
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useTools.ts +0 -56
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useTopBarSearch.ts +0 -73
- package/dist/scaffolds/notis-notes/packages/sdk/src/hooks/useUpsertDocument.ts +0 -95
- package/dist/scaffolds/notis-notes/packages/sdk/src/index.ts +0 -83
- package/dist/scaffolds/notis-notes/packages/sdk/src/provider.tsx +0 -43
- package/dist/scaffolds/notis-notes/packages/sdk/src/runtime.ts +0 -220
- package/dist/scaffolds/notis-notes/packages/sdk/src/styles.css +0 -186
- package/dist/scaffolds/notis-notes/packages/sdk/src/ui.ts +0 -15
- package/dist/scaffolds/notis-notes/packages/sdk/src/vite.ts +0 -56
- package/dist/scaffolds/notis-notes/packages/sdk/tsconfig.json +0 -15
- package/dist/scaffolds/notis-notes/postcss.config.mjs +0 -8
- package/dist/scaffolds/notis-notes/tailwind.config.ts +0 -58
- package/dist/scaffolds/notis-notes/tsconfig.json +0 -23
- package/dist/scaffolds/notis-notes/vite.config.ts +0 -10
- package/dist/scaffolds/notis-random/CHANGELOG.md +0 -15
- package/dist/scaffolds/notis-random/README.md +0 -33
- package/dist/scaffolds/notis-random/app/globals.css +0 -11
- package/dist/scaffolds/notis-random/app/history/page.tsx +0 -67
- package/dist/scaffolds/notis-random/app/layout.tsx +0 -7
- package/dist/scaffolds/notis-random/app/page.tsx +0 -289
- package/dist/scaffolds/notis-random/components/ui/button.tsx +0 -50
- package/dist/scaffolds/notis-random/components/ui/card.tsx +0 -16
- package/dist/scaffolds/notis-random/components/ui/input.tsx +0 -23
- package/dist/scaffolds/notis-random/components.json +0 -20
- package/dist/scaffolds/notis-random/index.html +0 -12
- package/dist/scaffolds/notis-random/lib/notis-tools.ts +0 -128
- package/dist/scaffolds/notis-random/lib/rng.ts +0 -202
- package/dist/scaffolds/notis-random/lib/roll-record.ts +0 -189
- package/dist/scaffolds/notis-random/lib/utils.ts +0 -25
- package/dist/scaffolds/notis-random/metadata/screenshot-1.png +0 -0
- package/dist/scaffolds/notis-random/metadata/screenshot-2.png +0 -0
- package/dist/scaffolds/notis-random/metadata/screenshot-3.png +0 -0
- package/dist/scaffolds/notis-random/metadata/screenshot-4.png +0 -0
- package/dist/scaffolds/notis-random/metadata/screenshot-5.png +0 -0
- package/dist/scaffolds/notis-random/metadata/screenshot-fixtures.json +0 -753
- package/dist/scaffolds/notis-random/notis.config.ts +0 -86
- package/dist/scaffolds/notis-random/package-lock.json +0 -4513
- package/dist/scaffolds/notis-random/package.json +0 -36
- package/dist/scaffolds/notis-random/packages/sdk/package.json +0 -36
- package/dist/scaffolds/notis-random/packages/sdk/src/components/DocumentEditor.tsx +0 -93
- package/dist/scaffolds/notis-random/packages/sdk/src/components/Markdown.tsx +0 -60
- package/dist/scaffolds/notis-random/packages/sdk/src/components/MultiSelectActionBar.tsx +0 -278
- package/dist/scaffolds/notis-random/packages/sdk/src/components/MultiSelectCheckbox.tsx +0 -91
- package/dist/scaffolds/notis-random/packages/sdk/src/components/MultiSelectDragOverlay.tsx +0 -39
- package/dist/scaffolds/notis-random/packages/sdk/src/config.ts +0 -196
- package/dist/scaffolds/notis-random/packages/sdk/src/documents.ts +0 -229
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useBackend.ts +0 -41
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useDatabaseSchema.ts +0 -85
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useDocument.ts +0 -78
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useDocuments.ts +0 -121
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useMultiSelect.ts +0 -539
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useNotis.ts +0 -34
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useNotisNavigation.ts +0 -49
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useTool.ts +0 -64
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useTools.ts +0 -56
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useTopBarSearch.ts +0 -73
- package/dist/scaffolds/notis-random/packages/sdk/src/hooks/useUpsertDocument.ts +0 -95
- package/dist/scaffolds/notis-random/packages/sdk/src/index.ts +0 -83
- package/dist/scaffolds/notis-random/packages/sdk/src/provider.tsx +0 -43
- package/dist/scaffolds/notis-random/packages/sdk/src/runtime.ts +0 -220
- package/dist/scaffolds/notis-random/packages/sdk/src/styles.css +0 -186
- package/dist/scaffolds/notis-random/packages/sdk/src/ui.ts +0 -15
- package/dist/scaffolds/notis-random/packages/sdk/src/vite.ts +0 -56
- package/dist/scaffolds/notis-random/packages/sdk/tsconfig.json +0 -15
- package/dist/scaffolds/notis-random/postcss.config.mjs +0 -6
- package/dist/scaffolds/notis-random/src/dev-main.tsx +0 -70
- package/dist/scaffolds/notis-random/src/mock-runtime.ts +0 -129
- package/dist/scaffolds/notis-random/tailwind.config.ts +0 -50
- package/dist/scaffolds/notis-random/tsconfig.json +0 -23
- package/dist/scaffolds/notis-random/vite.config.ts +0 -11
- package/dist/scaffolds.json +0 -49
- package/template/metadata/screenshot-1.png +0 -0
- package/template/metadata/screenshot-2.png +0 -0
- package/template/metadata/screenshot-3.png +0 -0
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Notis theme CSS variables.
|
|
3
|
-
*
|
|
4
|
-
* Import this in your app layout:
|
|
5
|
-
*
|
|
6
|
-
* import '@notis/sdk/styles.css';
|
|
7
|
-
*
|
|
8
|
-
* The portal injects the live Notis theme variables at render time.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
@tailwind base;
|
|
12
|
-
@tailwind components;
|
|
13
|
-
@tailwind utilities;
|
|
14
|
-
|
|
15
|
-
@layer base {
|
|
16
|
-
* {
|
|
17
|
-
@apply border-border;
|
|
18
|
-
}
|
|
19
|
-
[data-notis-app-root] {
|
|
20
|
-
color: hsl(var(--foreground));
|
|
21
|
-
display: block;
|
|
22
|
-
min-height: 100%;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
@layer components {
|
|
27
|
-
.notis-app-shell {
|
|
28
|
-
@apply mx-auto w-full max-w-[var(--portal-page-max-width)] px-4 py-6 md:px-4 md:py-8;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
.notis-app-surface {
|
|
32
|
-
@apply rounded-2xl border border-border bg-card text-card-foreground shadow-sm;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
.notis-app-section {
|
|
36
|
-
@apply p-5 md:p-6;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/*
|
|
41
|
-
* Markdown value-type rendering (see the `Markdown` component). Plain CSS on
|
|
42
|
-
* theme variables so it works inside the portal shadow root and the dev
|
|
43
|
-
* harness without depending on the app's Tailwind content scan.
|
|
44
|
-
*/
|
|
45
|
-
.notis-markdown {
|
|
46
|
-
font-size: 14px;
|
|
47
|
-
line-height: 1.65;
|
|
48
|
-
color: hsl(var(--foreground));
|
|
49
|
-
overflow-wrap: break-word;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.notis-markdown--sm {
|
|
53
|
-
font-size: 13px;
|
|
54
|
-
line-height: 1.55;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.notis-markdown > :first-child {
|
|
58
|
-
margin-top: 0;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.notis-markdown > :last-child {
|
|
62
|
-
margin-bottom: 0;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.notis-markdown p {
|
|
66
|
-
margin: 0.625em 0;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.notis-markdown h1,
|
|
70
|
-
.notis-markdown h2,
|
|
71
|
-
.notis-markdown h3,
|
|
72
|
-
.notis-markdown h4,
|
|
73
|
-
.notis-markdown h5,
|
|
74
|
-
.notis-markdown h6 {
|
|
75
|
-
margin: 1.25em 0 0.5em;
|
|
76
|
-
font-weight: 650;
|
|
77
|
-
letter-spacing: -0.01em;
|
|
78
|
-
line-height: 1.3;
|
|
79
|
-
color: hsl(var(--foreground));
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
.notis-markdown h1 { font-size: 1.5em; }
|
|
83
|
-
.notis-markdown h2 { font-size: 1.25em; }
|
|
84
|
-
.notis-markdown h3 { font-size: 1.1em; }
|
|
85
|
-
.notis-markdown h4,
|
|
86
|
-
.notis-markdown h5,
|
|
87
|
-
.notis-markdown h6 { font-size: 1em; }
|
|
88
|
-
|
|
89
|
-
.notis-markdown ul,
|
|
90
|
-
.notis-markdown ol {
|
|
91
|
-
margin: 0.625em 0;
|
|
92
|
-
padding-left: 1.5em;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
.notis-markdown ul { list-style-type: disc; }
|
|
96
|
-
.notis-markdown ol { list-style-type: decimal; }
|
|
97
|
-
|
|
98
|
-
.notis-markdown li {
|
|
99
|
-
margin: 0.25em 0;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
.notis-markdown li > ul,
|
|
103
|
-
.notis-markdown li > ol {
|
|
104
|
-
margin: 0.25em 0;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
.notis-markdown ul.contains-task-list {
|
|
108
|
-
list-style: none;
|
|
109
|
-
padding-left: 0.375em;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
.notis-markdown li.task-list-item input[type='checkbox'] {
|
|
113
|
-
margin-right: 0.5em;
|
|
114
|
-
accent-color: hsl(var(--primary));
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
.notis-markdown blockquote {
|
|
118
|
-
margin: 0.75em 0;
|
|
119
|
-
padding: 0.125em 0 0.125em 0.875em;
|
|
120
|
-
border-left: 3px solid hsl(var(--border));
|
|
121
|
-
color: hsl(var(--muted-foreground));
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
.notis-markdown a {
|
|
125
|
-
color: hsl(var(--primary));
|
|
126
|
-
text-decoration: underline;
|
|
127
|
-
text-decoration-color: hsl(var(--primary) / 0.35);
|
|
128
|
-
text-underline-offset: 2px;
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
.notis-markdown a:hover {
|
|
132
|
-
text-decoration-color: hsl(var(--primary));
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
.notis-markdown code {
|
|
136
|
-
font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
|
|
137
|
-
font-size: 0.875em;
|
|
138
|
-
padding: 0.125em 0.375em;
|
|
139
|
-
border-radius: 0.25rem;
|
|
140
|
-
background: hsl(var(--muted));
|
|
141
|
-
color: hsl(var(--foreground));
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
.notis-markdown pre {
|
|
145
|
-
margin: 0.75em 0;
|
|
146
|
-
padding: 0.75em 1em;
|
|
147
|
-
border-radius: 0.5rem;
|
|
148
|
-
background: hsl(var(--muted));
|
|
149
|
-
overflow-x: auto;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
.notis-markdown pre code {
|
|
153
|
-
padding: 0;
|
|
154
|
-
background: transparent;
|
|
155
|
-
font-size: 0.875em;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
.notis-markdown hr {
|
|
159
|
-
margin: 1.25em 0;
|
|
160
|
-
border: 0;
|
|
161
|
-
border-top: 1px solid hsl(var(--border));
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
.notis-markdown img {
|
|
165
|
-
max-width: 100%;
|
|
166
|
-
border-radius: 0.5rem;
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
.notis-markdown table {
|
|
170
|
-
margin: 0.75em 0;
|
|
171
|
-
width: 100%;
|
|
172
|
-
border-collapse: collapse;
|
|
173
|
-
font-size: 0.95em;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
.notis-markdown th,
|
|
177
|
-
.notis-markdown td {
|
|
178
|
-
padding: 0.375em 0.75em;
|
|
179
|
-
border: 1px solid hsl(var(--border));
|
|
180
|
-
text-align: left;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
.notis-markdown th {
|
|
184
|
-
background: hsl(var(--muted));
|
|
185
|
-
font-weight: 600;
|
|
186
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @notis/sdk/ui - Re-exported shadcn components for Notis apps.
|
|
3
|
-
*
|
|
4
|
-
* Apps include shadcn via their own `components.json` and `@/components/ui/*`
|
|
5
|
-
* imports. This entrypoint is provided as a convenience for apps that want to
|
|
6
|
-
* import directly from the SDK without setting up shadcn locally.
|
|
7
|
-
*
|
|
8
|
-
* For now, this is a placeholder. The scaffold template sets up shadcn
|
|
9
|
-
* directly in the app project, so components come from `@/components/ui/*`.
|
|
10
|
-
* This file can be expanded later to re-export a curated set of components
|
|
11
|
-
* pre-themed for Notis.
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
// Placeholder -- apps use shadcn directly via their project's components/ui/
|
|
15
|
-
export {};
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Vite config builder for Notis apps.
|
|
3
|
-
*
|
|
4
|
-
* Usage:
|
|
5
|
-
* ```ts
|
|
6
|
-
* // vite.config.ts
|
|
7
|
-
* import { notisViteConfig } from '@notis/sdk/vite';
|
|
8
|
-
* import appConfig from './notis.config';
|
|
9
|
-
* export default notisViteConfig(appConfig);
|
|
10
|
-
* ```
|
|
11
|
-
*
|
|
12
|
-
* Produces a library-mode ES module bundle with React externalized.
|
|
13
|
-
* Output: .notis/output/bundle/app.js + app.css
|
|
14
|
-
*/
|
|
15
|
-
|
|
16
|
-
import type { NotisAppConfig } from './config';
|
|
17
|
-
|
|
18
|
-
export function notisViteConfig(appConfig: NotisAppConfig) {
|
|
19
|
-
return {
|
|
20
|
-
plugins: [
|
|
21
|
-
// @vitejs/plugin-react is added by the consumer's vite.config.ts
|
|
22
|
-
// or auto-detected. We provide the config shape only.
|
|
23
|
-
],
|
|
24
|
-
build: {
|
|
25
|
-
lib: {
|
|
26
|
-
entry: '.notis/_entry.tsx',
|
|
27
|
-
formats: ['es'] as const,
|
|
28
|
-
fileName: () => 'app.js',
|
|
29
|
-
},
|
|
30
|
-
rollupOptions: {
|
|
31
|
-
external: ['react', 'react-dom', 'react-dom/client', 'react/jsx-runtime', 'react/jsx-dev-runtime'],
|
|
32
|
-
output: {
|
|
33
|
-
globals: {
|
|
34
|
-
react: 'window.React',
|
|
35
|
-
'react-dom': 'window.ReactDOM',
|
|
36
|
-
'react-dom/client': 'window.ReactDOMClient',
|
|
37
|
-
'react/jsx-runtime': 'window.React',
|
|
38
|
-
},
|
|
39
|
-
assetFileNames: 'app[extname]',
|
|
40
|
-
inlineDynamicImports: true,
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
outDir: '.notis/output/bundle',
|
|
44
|
-
emptyOutDir: true,
|
|
45
|
-
cssCodeSplit: false,
|
|
46
|
-
},
|
|
47
|
-
resolve: {
|
|
48
|
-
alias: {
|
|
49
|
-
'@': process.cwd(),
|
|
50
|
-
},
|
|
51
|
-
},
|
|
52
|
-
define: {
|
|
53
|
-
'process.env.NODE_ENV': JSON.stringify('production'),
|
|
54
|
-
},
|
|
55
|
-
};
|
|
56
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ES2022",
|
|
4
|
-
"module": "ESNext",
|
|
5
|
-
"moduleResolution": "bundler",
|
|
6
|
-
"jsx": "react-jsx",
|
|
7
|
-
"strict": true,
|
|
8
|
-
"esModuleInterop": true,
|
|
9
|
-
"skipLibCheck": true,
|
|
10
|
-
"declaration": true,
|
|
11
|
-
"outDir": "dist",
|
|
12
|
-
"rootDir": "src"
|
|
13
|
-
},
|
|
14
|
-
"include": ["src"]
|
|
15
|
-
}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
// Dev entrypoint: mounts the app pages with a tiny hash-router and the mock
|
|
2
|
-
// runtime. Not used in production — `vite build` uses .notis/_entry.tsx.
|
|
3
|
-
import { StrictMode, useEffect, useState } from 'react';
|
|
4
|
-
import { createRoot } from 'react-dom/client';
|
|
5
|
-
import { NotisProvider } from '@notis/sdk';
|
|
6
|
-
import AppShell from '../app/layout';
|
|
7
|
-
import HomePage from '../app/page';
|
|
8
|
-
import HistoryPage from '../app/history/page';
|
|
9
|
-
import { installMockRuntime, setMockRoute } from './mock-runtime';
|
|
10
|
-
|
|
11
|
-
const runtime = installMockRuntime(hashRoute());
|
|
12
|
-
|
|
13
|
-
function hashRoute(): 'home' | 'history' {
|
|
14
|
-
return window.location.hash === '#/history' ? 'history' : 'home';
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
function DevApp() {
|
|
18
|
-
const [route, setRoute] = useState<'home' | 'history'>(hashRoute());
|
|
19
|
-
|
|
20
|
-
useEffect(() => {
|
|
21
|
-
const onChange = () => {
|
|
22
|
-
const next = hashRoute();
|
|
23
|
-
setRoute(next);
|
|
24
|
-
setMockRoute(next);
|
|
25
|
-
};
|
|
26
|
-
window.addEventListener('hashchange', onChange);
|
|
27
|
-
return () => window.removeEventListener('hashchange', onChange);
|
|
28
|
-
}, []);
|
|
29
|
-
|
|
30
|
-
const Page = route === 'history' ? HistoryPage : HomePage;
|
|
31
|
-
|
|
32
|
-
return (
|
|
33
|
-
<AppShell>
|
|
34
|
-
<div className="mx-auto max-w-4xl px-4 pt-4">
|
|
35
|
-
<nav className="flex items-center gap-2 rounded-full border border-border bg-card p-1 text-sm w-fit">
|
|
36
|
-
<a
|
|
37
|
-
href="#/"
|
|
38
|
-
className={
|
|
39
|
-
(route === 'home' ? 'bg-accent text-accent-foreground ' : 'text-muted-foreground hover:text-foreground ') +
|
|
40
|
-
'rounded-full px-3 py-1 transition'
|
|
41
|
-
}
|
|
42
|
-
>
|
|
43
|
-
Generator
|
|
44
|
-
</a>
|
|
45
|
-
<a
|
|
46
|
-
href="#/history"
|
|
47
|
-
className={
|
|
48
|
-
(route === 'history' ? 'bg-accent text-accent-foreground ' : 'text-muted-foreground hover:text-foreground ') +
|
|
49
|
-
'rounded-full px-3 py-1 transition'
|
|
50
|
-
}
|
|
51
|
-
>
|
|
52
|
-
History
|
|
53
|
-
</a>
|
|
54
|
-
<span className="pl-2 pr-3 text-[10px] uppercase tracking-wide text-muted-foreground">dev preview</span>
|
|
55
|
-
</nav>
|
|
56
|
-
</div>
|
|
57
|
-
<Page />
|
|
58
|
-
</AppShell>
|
|
59
|
-
);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
const root = document.getElementById('root');
|
|
63
|
-
if (!root) throw new Error('#root element missing from index.html');
|
|
64
|
-
createRoot(root).render(
|
|
65
|
-
<StrictMode>
|
|
66
|
-
<NotisProvider runtime={runtime}>
|
|
67
|
-
<DevApp />
|
|
68
|
-
</NotisProvider>
|
|
69
|
-
</StrictMode>,
|
|
70
|
-
);
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import type { NotisRuntime } from '@notis/sdk';
|
|
2
|
-
|
|
3
|
-
interface MockDoc {
|
|
4
|
-
id: string;
|
|
5
|
-
title: string;
|
|
6
|
-
properties: Record<string, unknown>;
|
|
7
|
-
icon?: string | null;
|
|
8
|
-
databaseSlug?: string;
|
|
9
|
-
createdAt?: string | null;
|
|
10
|
-
lastEditedTime?: string | null;
|
|
11
|
-
contentBlocknote?: Array<Record<string, unknown>> | null;
|
|
12
|
-
contentMarkdown?: string | null;
|
|
13
|
-
plainText?: string | null;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const STATE: Record<string, MockDoc[]> = { rolls: [] };
|
|
17
|
-
|
|
18
|
-
declare global {
|
|
19
|
-
interface Window {
|
|
20
|
-
__NOTIS_RANDOM_RUNTIME__?: NotisRuntime;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export function installMockRuntime(initialRoute: 'home' | 'history' = 'home'): NotisRuntime {
|
|
25
|
-
const runtime: NotisRuntime = {
|
|
26
|
-
app: {
|
|
27
|
-
id: 'dev-notis-random',
|
|
28
|
-
name: 'Random Number Generator',
|
|
29
|
-
icon: 'phosphor:dice-five',
|
|
30
|
-
description: 'Dev preview — data is in-memory only.',
|
|
31
|
-
},
|
|
32
|
-
route: currentRoute(initialRoute),
|
|
33
|
-
databases: [],
|
|
34
|
-
context: {},
|
|
35
|
-
|
|
36
|
-
listTools: async () => [
|
|
37
|
-
{
|
|
38
|
-
name: 'LOCAL_NOTIS_DATABASE_QUERY',
|
|
39
|
-
inputSchema: { type: 'object', properties: { database_slug: { type: 'string' } } },
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
name: 'LOCAL_NOTIS_DATABASE_UPSERT_ROLLS',
|
|
43
|
-
inputSchema: { type: 'object', properties: {} },
|
|
44
|
-
},
|
|
45
|
-
],
|
|
46
|
-
callTool: async <TResult = unknown>(name: string, args?: Record<string, unknown>): Promise<TResult> => {
|
|
47
|
-
if (name === 'LOCAL_NOTIS_DATABASE_QUERY') {
|
|
48
|
-
const request = args ?? {};
|
|
49
|
-
const databaseSlug = typeof request.database_slug === 'string' ? request.database_slug : 'rolls';
|
|
50
|
-
const query = request.query && typeof request.query === 'object'
|
|
51
|
-
? request.query as Record<string, unknown>
|
|
52
|
-
: {};
|
|
53
|
-
const offset = typeof request.offset === 'number' ? request.offset : 0;
|
|
54
|
-
const all = STATE[databaseSlug] ?? [];
|
|
55
|
-
const sliced = all.slice(offset);
|
|
56
|
-
const pageSize = typeof query.page_size === 'number' ? query.page_size : undefined;
|
|
57
|
-
return { documents: typeof pageSize === 'number' ? sliced.slice(0, pageSize) : sliced } as TResult;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (name === 'LOCAL_NOTIS_DATABASE_UPSERT_ROLLS') {
|
|
61
|
-
const request = args ?? {};
|
|
62
|
-
const docs = STATE.rolls ?? [];
|
|
63
|
-
const now = new Date().toISOString();
|
|
64
|
-
const documentId = typeof request.document_id === 'string' ? request.document_id : undefined;
|
|
65
|
-
const existing = documentId ? docs.find((d) => d.id === documentId) : undefined;
|
|
66
|
-
const controlKeys = new Set(['document_id', 'title']);
|
|
67
|
-
const properties = Object.fromEntries(
|
|
68
|
-
Object.entries(request).filter(([key]) => !controlKeys.has(key)),
|
|
69
|
-
);
|
|
70
|
-
const doc: MockDoc = {
|
|
71
|
-
id: existing?.id ?? `dev-rolls-${Date.now()}`,
|
|
72
|
-
title: typeof request.title === 'string' ? request.title : existing?.title ?? 'Untitled',
|
|
73
|
-
properties: { ...(existing?.properties ?? {}), ...properties },
|
|
74
|
-
databaseSlug: 'rolls',
|
|
75
|
-
icon: null,
|
|
76
|
-
createdAt: existing?.createdAt ?? now,
|
|
77
|
-
lastEditedTime: now,
|
|
78
|
-
};
|
|
79
|
-
if (existing) docs[docs.indexOf(existing)] = doc;
|
|
80
|
-
else docs.unshift(doc);
|
|
81
|
-
STATE.rolls = docs;
|
|
82
|
-
return { status: 'success', document: doc } as TResult;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
throw new Error(`Tool calls unavailable in dev preview (${name}).`);
|
|
86
|
-
},
|
|
87
|
-
|
|
88
|
-
request: async () => {
|
|
89
|
-
throw new Error('Backend requests unavailable in dev preview.');
|
|
90
|
-
},
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
window.__NOTIS_RANDOM_RUNTIME__ = runtime;
|
|
94
|
-
return runtime;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
export function setMockRoute(route: 'home' | 'history') {
|
|
98
|
-
if (window.__NOTIS_RANDOM_RUNTIME__) {
|
|
99
|
-
window.__NOTIS_RANDOM_RUNTIME__.route = currentRoute(route);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
function currentRoute(route: 'home' | 'history') {
|
|
104
|
-
if (route === 'history') {
|
|
105
|
-
return {
|
|
106
|
-
slug: 'history',
|
|
107
|
-
path: '/history',
|
|
108
|
-
name: 'History',
|
|
109
|
-
icon: null,
|
|
110
|
-
parentSlug: null,
|
|
111
|
-
default: false,
|
|
112
|
-
collection: {
|
|
113
|
-
database: 'rolls',
|
|
114
|
-
titleProperty: 'Value',
|
|
115
|
-
parentProperty: null,
|
|
116
|
-
sidebar: { mode: 'flat-list' as const, allowCreate: false },
|
|
117
|
-
},
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
return {
|
|
121
|
-
slug: 'home',
|
|
122
|
-
path: '/',
|
|
123
|
-
name: 'Generator',
|
|
124
|
-
icon: 'phosphor:sparkle',
|
|
125
|
-
parentSlug: null,
|
|
126
|
-
default: true,
|
|
127
|
-
collection: null,
|
|
128
|
-
};
|
|
129
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { Config } from 'tailwindcss';
|
|
2
|
-
import tailwindAnimate from 'tailwindcss-animate';
|
|
3
|
-
|
|
4
|
-
const config: Config = {
|
|
5
|
-
darkMode: ['class'],
|
|
6
|
-
content: [
|
|
7
|
-
'./app/**/*.{ts,tsx}',
|
|
8
|
-
'./components/**/*.{ts,tsx}',
|
|
9
|
-
'./lib/**/*.{ts,tsx}',
|
|
10
|
-
'./src/**/*.{ts,tsx}',
|
|
11
|
-
],
|
|
12
|
-
theme: {
|
|
13
|
-
extend: {
|
|
14
|
-
colors: {
|
|
15
|
-
border: 'hsl(var(--border))',
|
|
16
|
-
input: 'hsl(var(--input))',
|
|
17
|
-
ring: 'hsl(var(--ring))',
|
|
18
|
-
background: 'hsl(var(--background))',
|
|
19
|
-
foreground: 'hsl(var(--foreground))',
|
|
20
|
-
muted: {
|
|
21
|
-
DEFAULT: 'hsl(var(--muted))',
|
|
22
|
-
foreground: 'hsl(var(--muted-foreground))',
|
|
23
|
-
},
|
|
24
|
-
primary: {
|
|
25
|
-
DEFAULT: 'hsl(var(--primary))',
|
|
26
|
-
foreground: 'hsl(var(--primary-foreground))',
|
|
27
|
-
},
|
|
28
|
-
accent: {
|
|
29
|
-
DEFAULT: 'hsl(var(--accent))',
|
|
30
|
-
foreground: 'hsl(var(--accent-foreground))',
|
|
31
|
-
},
|
|
32
|
-
card: {
|
|
33
|
-
DEFAULT: 'hsl(var(--card))',
|
|
34
|
-
foreground: 'hsl(var(--card-foreground))',
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
borderRadius: {
|
|
38
|
-
lg: 'var(--radius)',
|
|
39
|
-
md: 'calc(var(--radius) - 2px)',
|
|
40
|
-
sm: 'calc(var(--radius) - 4px)',
|
|
41
|
-
},
|
|
42
|
-
fontFamily: {
|
|
43
|
-
mono: ['ui-monospace', 'SFMono-Regular', 'Menlo', 'monospace'],
|
|
44
|
-
},
|
|
45
|
-
},
|
|
46
|
-
},
|
|
47
|
-
plugins: [tailwindAnimate],
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
export default config;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ES2017",
|
|
4
|
-
"lib": ["dom", "dom.iterable", "esnext"],
|
|
5
|
-
"allowJs": true,
|
|
6
|
-
"skipLibCheck": true,
|
|
7
|
-
"strict": true,
|
|
8
|
-
"noEmit": true,
|
|
9
|
-
"esModuleInterop": true,
|
|
10
|
-
"module": "esnext",
|
|
11
|
-
"moduleResolution": "bundler",
|
|
12
|
-
"preserveSymlinks": true,
|
|
13
|
-
"resolveJsonModule": true,
|
|
14
|
-
"isolatedModules": true,
|
|
15
|
-
"jsx": "react-jsx",
|
|
16
|
-
"types": ["vite/client", "node"],
|
|
17
|
-
"paths": {
|
|
18
|
-
"@/*": ["./*"]
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
"include": ["**/*.ts", "**/*.tsx"],
|
|
22
|
-
"exclude": ["node_modules", "dist"]
|
|
23
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { notisViteConfig } from '@notis/sdk/vite';
|
|
2
|
-
import react from '@vitejs/plugin-react';
|
|
3
|
-
import { defineConfig, type UserConfig } from 'vite';
|
|
4
|
-
import appConfig from './notis.config';
|
|
5
|
-
|
|
6
|
-
const libConfig = notisViteConfig(appConfig) as unknown as UserConfig;
|
|
7
|
-
|
|
8
|
-
export default defineConfig({
|
|
9
|
-
...libConfig,
|
|
10
|
-
plugins: [react(), ...((libConfig.plugins as UserConfig['plugins']) ?? [])],
|
|
11
|
-
});
|
package/dist/scaffolds.json
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"source": "scaffolds/*/notis.config.ts",
|
|
3
|
-
"scaffolds": [
|
|
4
|
-
{
|
|
5
|
-
"slug": "notis-database",
|
|
6
|
-
"name": "Databases",
|
|
7
|
-
"description": "A read-only catalog and schema explorer for every database in your Notis workspace. Browse databases grouped by the app that owns them, inspect each property with its type, select options, formats, and formulas, follow relations between databases, and page through the actual records stored in any of them.",
|
|
8
|
-
"icon": "phosphor:database",
|
|
9
|
-
"categories": [
|
|
10
|
-
"Product & Engineering",
|
|
11
|
-
"Operations"
|
|
12
|
-
],
|
|
13
|
-
"tagline": "Explore every database and schema in your Notis workspace."
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
"slug": "notis-journal",
|
|
17
|
-
"name": "5 Minutes Journal",
|
|
18
|
-
"description": "A display-only five-minute journal built from your morning and evening check-ins with Notis. Browse daily mood, energy, motivation, gratitude, intentions, affirmations, highlights, lessons, and free-form reflections, then use Stats to see trends and ritual consistency over time.",
|
|
19
|
-
"icon": "phosphor:notebook",
|
|
20
|
-
"categories": [
|
|
21
|
-
"Personal",
|
|
22
|
-
"Productivity"
|
|
23
|
-
],
|
|
24
|
-
"tagline": "Five intentional minutes with Notis, split between morning and evening."
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"slug": "notis-notes",
|
|
28
|
-
"name": "Notis Notes",
|
|
29
|
-
"description": "A home for every note Notis captures. Organise them into a nested folder tree, then read them as a gallery of cards, as a sortable table of all their properties, or on a calendar laid out by due date or by when they were created. Rename, refile, and archive notes in bulk, and create a new one without leaving the view.",
|
|
30
|
-
"icon": "phosphor:note-pencil",
|
|
31
|
-
"categories": [
|
|
32
|
-
"Productivity",
|
|
33
|
-
"Personal"
|
|
34
|
-
],
|
|
35
|
-
"tagline": "Folder-based notes with gallery, table, and calendar views."
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"slug": "notis-random",
|
|
39
|
-
"name": "Random Number Generator",
|
|
40
|
-
"description": "Draw a fair random number and keep every result. Pick whole numbers over any range, a continuous decimal range, or a standard polyhedral die from d4 to d20. Each draw uses the browser crypto source with rejection sampling, so every outcome is equally likely, and every roll is saved with the bounds it used so you can look back at the full history.",
|
|
41
|
-
"icon": "phosphor:dice-five",
|
|
42
|
-
"categories": [
|
|
43
|
-
"Personal",
|
|
44
|
-
"Productivity"
|
|
45
|
-
],
|
|
46
|
-
"tagline": "Fair random numbers, with every roll kept."
|
|
47
|
-
}
|
|
48
|
-
]
|
|
49
|
-
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|