@qotaq/lalphgram 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/Events/package.json +6 -0
- package/LICENSE +21 -0
- package/Main/package.json +6 -0
- package/README.md +1 -0
- package/dist/cjs/Events.js +55 -0
- package/dist/cjs/Events.js.map +1 -0
- package/dist/cjs/LalphMain.js +59 -0
- package/dist/cjs/LalphMain.js.map +1 -0
- package/dist/cjs/Main.js +115 -0
- package/dist/cjs/Main.js.map +1 -0
- package/dist/cjs/index.js +281 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/lib/AnalysisPrompts.js +61 -0
- package/dist/cjs/lib/AnalysisPrompts.js.map +1 -0
- package/dist/cjs/lib/BranchParser.js +45 -0
- package/dist/cjs/lib/BranchParser.js.map +1 -0
- package/dist/cjs/lib/MermaidToPlantUml.js +96 -0
- package/dist/cjs/lib/MermaidToPlantUml.js.map +1 -0
- package/dist/cjs/lib/SpecHtmlGenerator.js +160 -0
- package/dist/cjs/lib/SpecHtmlGenerator.js.map +1 -0
- package/dist/cjs/lib/StreamJsonParser.js +88 -0
- package/dist/cjs/lib/StreamJsonParser.js.map +1 -0
- package/dist/cjs/lib/TelegramFormatter.js +122 -0
- package/dist/cjs/lib/TelegramFormatter.js.map +1 -0
- package/dist/cjs/lib/TelegraphHtml.js +65 -0
- package/dist/cjs/lib/TelegraphHtml.js.map +1 -0
- package/dist/cjs/lib/TelegraphMarkdown.js +346 -0
- package/dist/cjs/lib/TelegraphMarkdown.js.map +1 -0
- package/dist/cjs/schemas/CredentialSchemas.js +31 -0
- package/dist/cjs/schemas/CredentialSchemas.js.map +1 -0
- package/dist/cjs/schemas/GitHubSchemas.js +60 -0
- package/dist/cjs/schemas/GitHubSchemas.js.map +1 -0
- package/dist/cjs/schemas/LinearSchemas.js +63 -0
- package/dist/cjs/schemas/LinearSchemas.js.map +1 -0
- package/dist/cjs/schemas/ProjectSchemas.js +26 -0
- package/dist/cjs/schemas/ProjectSchemas.js.map +1 -0
- package/dist/cjs/schemas/TrackerSchemas.js +35 -0
- package/dist/cjs/schemas/TrackerSchemas.js.map +1 -0
- package/dist/cjs/services/AppContext.js +57 -0
- package/dist/cjs/services/AppContext.js.map +1 -0
- package/dist/cjs/services/AppRuntimeConfig.js +35 -0
- package/dist/cjs/services/AppRuntimeConfig.js.map +1 -0
- package/dist/cjs/services/AutoMerge.js +140 -0
- package/dist/cjs/services/AutoMerge.js.map +1 -0
- package/dist/cjs/services/ChatMachine.js +873 -0
- package/dist/cjs/services/ChatMachine.js.map +1 -0
- package/dist/cjs/services/CommentTimer.js +81 -0
- package/dist/cjs/services/CommentTimer.js.map +1 -0
- package/dist/cjs/services/CredentialStore.js +68 -0
- package/dist/cjs/services/CredentialStore.js.map +1 -0
- package/dist/cjs/services/CredentialWatcher.js +76 -0
- package/dist/cjs/services/CredentialWatcher.js.map +1 -0
- package/dist/cjs/services/Credentials.js +130 -0
- package/dist/cjs/services/Credentials.js.map +1 -0
- package/dist/cjs/services/EventLoop.js +203 -0
- package/dist/cjs/services/EventLoop.js.map +1 -0
- package/dist/cjs/services/GitHubClient/GitHubClient.js +236 -0
- package/dist/cjs/services/GitHubClient/GitHubClient.js.map +1 -0
- package/dist/cjs/services/GitHubClient/OctokitClient.js +329 -0
- package/dist/cjs/services/GitHubClient/OctokitClient.js.map +1 -0
- package/dist/cjs/services/GitHubClient.js +236 -0
- package/dist/cjs/services/GitHubClient.js.map +1 -0
- package/dist/cjs/services/GitHubEventSource.js +145 -0
- package/dist/cjs/services/GitHubEventSource.js.map +1 -0
- package/dist/cjs/services/GitHubIssueTracker.js +118 -0
- package/dist/cjs/services/GitHubIssueTracker.js.map +1 -0
- package/dist/cjs/services/LalphConfig.js +139 -0
- package/dist/cjs/services/LalphConfig.js.map +1 -0
- package/dist/cjs/services/LalphConfigReader.js +82 -0
- package/dist/cjs/services/LalphConfigReader.js.map +1 -0
- package/dist/cjs/services/LalphDirectory.js +45 -0
- package/dist/cjs/services/LalphDirectory.js.map +1 -0
- package/dist/cjs/services/LinearSdkClient.js +149 -0
- package/dist/cjs/services/LinearSdkClient.js.map +1 -0
- package/dist/cjs/services/LinearTracker.js +89 -0
- package/dist/cjs/services/LinearTracker.js.map +1 -0
- package/dist/cjs/services/MessengerAdapter/MessengerAdapter.js +30 -0
- package/dist/cjs/services/MessengerAdapter/MessengerAdapter.js.map +1 -0
- package/dist/cjs/services/MessengerAdapter/TelegramAdapter.js +131 -0
- package/dist/cjs/services/MessengerAdapter/TelegramAdapter.js.map +1 -0
- package/dist/cjs/services/MessengerAdapter/TelegramConfig.js +81 -0
- package/dist/cjs/services/MessengerAdapter/TelegramConfig.js.map +1 -0
- package/dist/cjs/services/MessengerAdapter.js +30 -0
- package/dist/cjs/services/MessengerAdapter.js.map +1 -0
- package/dist/cjs/services/OctokitClient.js +350 -0
- package/dist/cjs/services/OctokitClient.js.map +1 -0
- package/dist/cjs/services/PlanOverviewUploader.js +119 -0
- package/dist/cjs/services/PlanOverviewUploader.js.map +1 -0
- package/dist/cjs/services/PlanOverviewUploaderMap.js +25 -0
- package/dist/cjs/services/PlanOverviewUploaderMap.js.map +1 -0
- package/dist/cjs/services/PlanSession.js +489 -0
- package/dist/cjs/services/PlanSession.js.map +1 -0
- package/dist/cjs/services/ProjectStore.js +107 -0
- package/dist/cjs/services/ProjectStore.js.map +1 -0
- package/dist/cjs/services/PullRequestTracker.js +186 -0
- package/dist/cjs/services/PullRequestTracker.js.map +1 -0
- package/dist/cjs/services/SpecUploader.js +111 -0
- package/dist/cjs/services/SpecUploader.js.map +1 -0
- package/dist/cjs/services/SpecUploaderMap.js +25 -0
- package/dist/cjs/services/SpecUploaderMap.js.map +1 -0
- package/dist/cjs/services/TaskEventSource.js +58 -0
- package/dist/cjs/services/TaskEventSource.js.map +1 -0
- package/dist/cjs/services/TaskTracker/GitHubIssueTracker.js +155 -0
- package/dist/cjs/services/TaskTracker/GitHubIssueTracker.js.map +1 -0
- package/dist/cjs/services/TaskTracker/LinearSdkClient.js +149 -0
- package/dist/cjs/services/TaskTracker/LinearSdkClient.js.map +1 -0
- package/dist/cjs/services/TaskTracker/LinearTracker.js +126 -0
- package/dist/cjs/services/TaskTracker/LinearTracker.js.map +1 -0
- package/dist/cjs/services/TaskTracker/TaskTracker.js +20 -0
- package/dist/cjs/services/TaskTracker/TaskTracker.js.map +1 -0
- package/dist/cjs/services/TaskTracker/TrackerLayerMap.js +27 -0
- package/dist/cjs/services/TaskTracker/TrackerLayerMap.js.map +1 -0
- package/dist/cjs/services/TaskTracker/buildEventStream.js +55 -0
- package/dist/cjs/services/TaskTracker/buildEventStream.js.map +1 -0
- package/dist/cjs/services/TaskTracker.js +20 -0
- package/dist/cjs/services/TaskTracker.js.map +1 -0
- package/dist/cjs/services/TelegramAdapter.js +125 -0
- package/dist/cjs/services/TelegramAdapter.js.map +1 -0
- package/dist/cjs/services/TelegramConfig.js +81 -0
- package/dist/cjs/services/TelegramConfig.js.map +1 -0
- package/dist/cjs/services/TelegramConfigStore.js +81 -0
- package/dist/cjs/services/TelegramConfigStore.js.map +1 -0
- package/dist/cjs/services/TelegramNotifier.js +50 -0
- package/dist/cjs/services/TelegramNotifier.js.map +1 -0
- package/dist/cjs/services/TrackerLayerMap.js +27 -0
- package/dist/cjs/services/TrackerLayerMap.js.map +1 -0
- package/dist/cjs/services/TrackerResolver.js +45 -0
- package/dist/cjs/services/TrackerResolver.js.map +1 -0
- package/dist/cjs/services/messenger/MessengerAdapter.js +30 -0
- package/dist/cjs/services/messenger/MessengerAdapter.js.map +1 -0
- package/dist/cjs/services/messenger/TelegramAdapter.js +125 -0
- package/dist/cjs/services/messenger/TelegramAdapter.js.map +1 -0
- package/dist/cjs/services/task-tracker/GitHubIssueTracker.js +157 -0
- package/dist/cjs/services/task-tracker/GitHubIssueTracker.js.map +1 -0
- package/dist/cjs/services/task-tracker/LinearTracker.js +127 -0
- package/dist/cjs/services/task-tracker/LinearTracker.js.map +1 -0
- package/dist/cjs/services/task-tracker/TaskTracker.js +20 -0
- package/dist/cjs/services/task-tracker/TaskTracker.js.map +1 -0
- package/dist/cjs/services/task-tracker/TrackerLayerMap.js +27 -0
- package/dist/cjs/services/task-tracker/TrackerLayerMap.js.map +1 -0
- package/dist/cjs/shim/bin.js +31 -0
- package/dist/cjs/shim/bin.js.map +1 -0
- package/dist/cjs/shim/main.js +217 -0
- package/dist/cjs/shim/main.js.map +1 -0
- package/dist/cjs/shim/parseArgs.js +45 -0
- package/dist/cjs/shim/parseArgs.js.map +1 -0
- package/dist/cjs/shim/schemas.js +35 -0
- package/dist/cjs/shim/schemas.js.map +1 -0
- package/dist/dts/Events.d.ts +108 -0
- package/dist/dts/Events.d.ts.map +1 -0
- package/dist/dts/LalphMain.d.ts +2 -0
- package/dist/dts/LalphMain.d.ts.map +1 -0
- package/dist/dts/Main.d.ts +2 -0
- package/dist/dts/Main.d.ts.map +1 -0
- package/dist/dts/index.d.ts +101 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/dts/lib/AnalysisPrompts.d.ts +12 -0
- package/dist/dts/lib/AnalysisPrompts.d.ts.map +1 -0
- package/dist/dts/lib/BranchParser.d.ts +40 -0
- package/dist/dts/lib/BranchParser.d.ts.map +1 -0
- package/dist/dts/lib/MermaidToPlantUml.d.ts +19 -0
- package/dist/dts/lib/MermaidToPlantUml.d.ts.map +1 -0
- package/dist/dts/lib/SpecHtmlGenerator.d.ts +18 -0
- package/dist/dts/lib/SpecHtmlGenerator.d.ts.map +1 -0
- package/dist/dts/lib/StreamJsonParser.d.ts +147 -0
- package/dist/dts/lib/StreamJsonParser.d.ts.map +1 -0
- package/dist/dts/lib/TelegramFormatter.d.ts +35 -0
- package/dist/dts/lib/TelegramFormatter.d.ts.map +1 -0
- package/dist/dts/lib/TelegraphHtml.d.ts +11 -0
- package/dist/dts/lib/TelegraphHtml.d.ts.map +1 -0
- package/dist/dts/lib/TelegraphMarkdown.d.ts +21 -0
- package/dist/dts/lib/TelegraphMarkdown.d.ts.map +1 -0
- package/dist/dts/schemas/CredentialSchemas.d.ts +41 -0
- package/dist/dts/schemas/CredentialSchemas.d.ts.map +1 -0
- package/dist/dts/schemas/GitHubSchemas.d.ts +130 -0
- package/dist/dts/schemas/GitHubSchemas.d.ts.map +1 -0
- package/dist/dts/schemas/LinearSchemas.d.ts +121 -0
- package/dist/dts/schemas/LinearSchemas.d.ts.map +1 -0
- package/dist/dts/schemas/ProjectSchemas.d.ts +40 -0
- package/dist/dts/schemas/ProjectSchemas.d.ts.map +1 -0
- package/dist/dts/schemas/TrackerSchemas.d.ts +57 -0
- package/dist/dts/schemas/TrackerSchemas.d.ts.map +1 -0
- package/dist/dts/services/AppContext.d.ts +40 -0
- package/dist/dts/services/AppContext.d.ts.map +1 -0
- package/dist/dts/services/AppRuntimeConfig.d.ts +51 -0
- package/dist/dts/services/AppRuntimeConfig.d.ts.map +1 -0
- package/dist/dts/services/AutoMerge.d.ts +42 -0
- package/dist/dts/services/AutoMerge.d.ts.map +1 -0
- package/dist/dts/services/ChatMachine.d.ts +478 -0
- package/dist/dts/services/ChatMachine.d.ts.map +1 -0
- package/dist/dts/services/CommentTimer.d.ts +44 -0
- package/dist/dts/services/CommentTimer.d.ts.map +1 -0
- package/dist/dts/services/CredentialStore.d.ts +43 -0
- package/dist/dts/services/CredentialStore.d.ts.map +1 -0
- package/dist/dts/services/CredentialWatcher.d.ts +41 -0
- package/dist/dts/services/CredentialWatcher.d.ts.map +1 -0
- package/dist/dts/services/Credentials.d.ts +44 -0
- package/dist/dts/services/Credentials.d.ts.map +1 -0
- package/dist/dts/services/EventLoop.d.ts +26 -0
- package/dist/dts/services/EventLoop.d.ts.map +1 -0
- package/dist/dts/services/GitHubClient/GitHubClient.d.ts +69 -0
- package/dist/dts/services/GitHubClient/GitHubClient.d.ts.map +1 -0
- package/dist/dts/services/GitHubClient/OctokitClient.d.ts +214 -0
- package/dist/dts/services/GitHubClient/OctokitClient.d.ts.map +1 -0
- package/dist/dts/services/GitHubClient.d.ts +69 -0
- package/dist/dts/services/GitHubClient.d.ts.map +1 -0
- package/dist/dts/services/GitHubEventSource.d.ts +43 -0
- package/dist/dts/services/GitHubEventSource.d.ts.map +1 -0
- package/dist/dts/services/GitHubIssueTracker.d.ts +9 -0
- package/dist/dts/services/GitHubIssueTracker.d.ts.map +1 -0
- package/dist/dts/services/LalphConfig.d.ts +44 -0
- package/dist/dts/services/LalphConfig.d.ts.map +1 -0
- package/dist/dts/services/LalphConfigReader.d.ts +66 -0
- package/dist/dts/services/LalphConfigReader.d.ts.map +1 -0
- package/dist/dts/services/LalphDirectory.d.ts +39 -0
- package/dist/dts/services/LalphDirectory.d.ts.map +1 -0
- package/dist/dts/services/LinearSdkClient.d.ts +71 -0
- package/dist/dts/services/LinearSdkClient.d.ts.map +1 -0
- package/dist/dts/services/LinearTracker.d.ts +9 -0
- package/dist/dts/services/LinearTracker.d.ts.map +1 -0
- package/dist/dts/services/MessengerAdapter/MessengerAdapter.d.ts +69 -0
- package/dist/dts/services/MessengerAdapter/MessengerAdapter.d.ts.map +1 -0
- package/dist/dts/services/MessengerAdapter/TelegramAdapter.d.ts +13 -0
- package/dist/dts/services/MessengerAdapter/TelegramAdapter.d.ts.map +1 -0
- package/dist/dts/services/MessengerAdapter/TelegramConfig.d.ts +58 -0
- package/dist/dts/services/MessengerAdapter/TelegramConfig.d.ts.map +1 -0
- package/dist/dts/services/MessengerAdapter.d.ts +69 -0
- package/dist/dts/services/MessengerAdapter.d.ts.map +1 -0
- package/dist/dts/services/OctokitClient.d.ts +232 -0
- package/dist/dts/services/OctokitClient.d.ts.map +1 -0
- package/dist/dts/services/PlanOverviewUploader.d.ts +55 -0
- package/dist/dts/services/PlanOverviewUploader.d.ts.map +1 -0
- package/dist/dts/services/PlanOverviewUploaderMap.d.ts +14 -0
- package/dist/dts/services/PlanOverviewUploaderMap.d.ts.map +1 -0
- package/dist/dts/services/PlanSession.d.ts +169 -0
- package/dist/dts/services/PlanSession.d.ts.map +1 -0
- package/dist/dts/services/ProjectStore.d.ts +50 -0
- package/dist/dts/services/ProjectStore.d.ts.map +1 -0
- package/dist/dts/services/PullRequestTracker.d.ts +42 -0
- package/dist/dts/services/PullRequestTracker.d.ts.map +1 -0
- package/dist/dts/services/SpecUploader.d.ts +51 -0
- package/dist/dts/services/SpecUploader.d.ts.map +1 -0
- package/dist/dts/services/SpecUploaderMap.d.ts +14 -0
- package/dist/dts/services/SpecUploaderMap.d.ts.map +1 -0
- package/dist/dts/services/TaskEventSource.d.ts +21 -0
- package/dist/dts/services/TaskEventSource.d.ts.map +1 -0
- package/dist/dts/services/TaskTracker/GitHubIssueTracker.d.ts +10 -0
- package/dist/dts/services/TaskTracker/GitHubIssueTracker.d.ts.map +1 -0
- package/dist/dts/services/TaskTracker/LinearSdkClient.d.ts +71 -0
- package/dist/dts/services/TaskTracker/LinearSdkClient.d.ts.map +1 -0
- package/dist/dts/services/TaskTracker/LinearTracker.d.ts +10 -0
- package/dist/dts/services/TaskTracker/LinearTracker.d.ts.map +1 -0
- package/dist/dts/services/TaskTracker/TaskTracker.d.ts +39 -0
- package/dist/dts/services/TaskTracker/TaskTracker.d.ts.map +1 -0
- package/dist/dts/services/TaskTracker/TrackerLayerMap.d.ts +14 -0
- package/dist/dts/services/TaskTracker/TrackerLayerMap.d.ts.map +1 -0
- package/dist/dts/services/TaskTracker/buildEventStream.d.ts +16 -0
- package/dist/dts/services/TaskTracker/buildEventStream.d.ts.map +1 -0
- package/dist/dts/services/TaskTracker.d.ts +38 -0
- package/dist/dts/services/TaskTracker.d.ts.map +1 -0
- package/dist/dts/services/TelegramAdapter.d.ts +13 -0
- package/dist/dts/services/TelegramAdapter.d.ts.map +1 -0
- package/dist/dts/services/TelegramConfig.d.ts +58 -0
- package/dist/dts/services/TelegramConfig.d.ts.map +1 -0
- package/dist/dts/services/TelegramConfigStore.d.ts +57 -0
- package/dist/dts/services/TelegramConfigStore.d.ts.map +1 -0
- package/dist/dts/services/TelegramNotifier.d.ts +40 -0
- package/dist/dts/services/TelegramNotifier.d.ts.map +1 -0
- package/dist/dts/services/TrackerLayerMap.d.ts +14 -0
- package/dist/dts/services/TrackerLayerMap.d.ts.map +1 -0
- package/dist/dts/services/TrackerResolver.d.ts +43 -0
- package/dist/dts/services/TrackerResolver.d.ts.map +1 -0
- package/dist/dts/services/messenger/MessengerAdapter.d.ts +69 -0
- package/dist/dts/services/messenger/MessengerAdapter.d.ts.map +1 -0
- package/dist/dts/services/messenger/TelegramAdapter.d.ts +13 -0
- package/dist/dts/services/messenger/TelegramAdapter.d.ts.map +1 -0
- package/dist/dts/services/task-tracker/GitHubIssueTracker.d.ts +10 -0
- package/dist/dts/services/task-tracker/GitHubIssueTracker.d.ts.map +1 -0
- package/dist/dts/services/task-tracker/LinearTracker.d.ts +10 -0
- package/dist/dts/services/task-tracker/LinearTracker.d.ts.map +1 -0
- package/dist/dts/services/task-tracker/TaskTracker.d.ts +38 -0
- package/dist/dts/services/task-tracker/TaskTracker.d.ts.map +1 -0
- package/dist/dts/services/task-tracker/TrackerLayerMap.d.ts +14 -0
- package/dist/dts/services/task-tracker/TrackerLayerMap.d.ts.map +1 -0
- package/dist/dts/shim/bin.d.ts +3 -0
- package/dist/dts/shim/bin.d.ts.map +1 -0
- package/dist/dts/shim/main.d.ts +36 -0
- package/dist/dts/shim/main.d.ts.map +1 -0
- package/dist/dts/shim/parseArgs.d.ts +11 -0
- package/dist/dts/shim/parseArgs.d.ts.map +1 -0
- package/dist/dts/shim/schemas.d.ts +55 -0
- package/dist/dts/shim/schemas.d.ts.map +1 -0
- package/dist/esm/Events.js +41 -0
- package/dist/esm/Events.js.map +1 -0
- package/dist/esm/LalphMain.js +56 -0
- package/dist/esm/LalphMain.js.map +1 -0
- package/dist/esm/Main.js +112 -0
- package/dist/esm/Main.js.map +1 -0
- package/dist/esm/index.js +101 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lib/AnalysisPrompts.js +54 -0
- package/dist/esm/lib/AnalysisPrompts.js.map +1 -0
- package/dist/esm/lib/BranchParser.js +36 -0
- package/dist/esm/lib/BranchParser.js.map +1 -0
- package/dist/esm/lib/MermaidToPlantUml.js +89 -0
- package/dist/esm/lib/MermaidToPlantUml.js.map +1 -0
- package/dist/esm/lib/SpecHtmlGenerator.js +153 -0
- package/dist/esm/lib/SpecHtmlGenerator.js.map +1 -0
- package/dist/esm/lib/StreamJsonParser.js +79 -0
- package/dist/esm/lib/StreamJsonParser.js.map +1 -0
- package/dist/esm/lib/TelegramFormatter.js +114 -0
- package/dist/esm/lib/TelegramFormatter.js.map +1 -0
- package/dist/esm/lib/TelegraphHtml.js +57 -0
- package/dist/esm/lib/TelegraphHtml.js.map +1 -0
- package/dist/esm/lib/TelegraphMarkdown.js +338 -0
- package/dist/esm/lib/TelegraphMarkdown.js.map +1 -0
- package/dist/esm/package.json +4 -0
- package/dist/esm/schemas/CredentialSchemas.js +22 -0
- package/dist/esm/schemas/CredentialSchemas.js.map +1 -0
- package/dist/esm/schemas/GitHubSchemas.js +50 -0
- package/dist/esm/schemas/GitHubSchemas.js.map +1 -0
- package/dist/esm/schemas/LinearSchemas.js +52 -0
- package/dist/esm/schemas/LinearSchemas.js.map +1 -0
- package/dist/esm/schemas/ProjectSchemas.js +18 -0
- package/dist/esm/schemas/ProjectSchemas.js.map +1 -0
- package/dist/esm/schemas/TrackerSchemas.js +26 -0
- package/dist/esm/schemas/TrackerSchemas.js.map +1 -0
- package/dist/esm/services/AppContext.js +48 -0
- package/dist/esm/services/AppContext.js.map +1 -0
- package/dist/esm/services/AppRuntimeConfig.js +26 -0
- package/dist/esm/services/AppRuntimeConfig.js.map +1 -0
- package/dist/esm/services/AutoMerge.js +131 -0
- package/dist/esm/services/AutoMerge.js.map +1 -0
- package/dist/esm/services/ChatMachine.js +855 -0
- package/dist/esm/services/ChatMachine.js.map +1 -0
- package/dist/esm/services/CommentTimer.js +72 -0
- package/dist/esm/services/CommentTimer.js.map +1 -0
- package/dist/esm/services/CredentialStore.js +59 -0
- package/dist/esm/services/CredentialStore.js.map +1 -0
- package/dist/esm/services/CredentialWatcher.js +67 -0
- package/dist/esm/services/CredentialWatcher.js.map +1 -0
- package/dist/esm/services/Credentials.js +121 -0
- package/dist/esm/services/Credentials.js.map +1 -0
- package/dist/esm/services/EventLoop.js +128 -0
- package/dist/esm/services/EventLoop.js.map +1 -0
- package/dist/esm/services/GitHubClient/GitHubClient.js +227 -0
- package/dist/esm/services/GitHubClient/GitHubClient.js.map +1 -0
- package/dist/esm/services/GitHubClient/OctokitClient.js +320 -0
- package/dist/esm/services/GitHubClient/OctokitClient.js.map +1 -0
- package/dist/esm/services/GitHubClient.js +227 -0
- package/dist/esm/services/GitHubClient.js.map +1 -0
- package/dist/esm/services/GitHubEventSource.js +136 -0
- package/dist/esm/services/GitHubEventSource.js.map +1 -0
- package/dist/esm/services/GitHubIssueTracker.js +111 -0
- package/dist/esm/services/GitHubIssueTracker.js.map +1 -0
- package/dist/esm/services/LalphConfig.js +130 -0
- package/dist/esm/services/LalphConfig.js.map +1 -0
- package/dist/esm/services/LalphConfigReader.js +71 -0
- package/dist/esm/services/LalphConfigReader.js.map +1 -0
- package/dist/esm/services/LalphDirectory.js +36 -0
- package/dist/esm/services/LalphDirectory.js.map +1 -0
- package/dist/esm/services/LinearSdkClient.js +140 -0
- package/dist/esm/services/LinearSdkClient.js.map +1 -0
- package/dist/esm/services/LinearTracker.js +82 -0
- package/dist/esm/services/LinearTracker.js.map +1 -0
- package/dist/esm/services/MessengerAdapter/MessengerAdapter.js +21 -0
- package/dist/esm/services/MessengerAdapter/MessengerAdapter.js.map +1 -0
- package/dist/esm/services/MessengerAdapter/TelegramAdapter.js +124 -0
- package/dist/esm/services/MessengerAdapter/TelegramAdapter.js.map +1 -0
- package/dist/esm/services/MessengerAdapter/TelegramConfig.js +71 -0
- package/dist/esm/services/MessengerAdapter/TelegramConfig.js.map +1 -0
- package/dist/esm/services/MessengerAdapter.js +21 -0
- package/dist/esm/services/MessengerAdapter.js.map +1 -0
- package/dist/esm/services/OctokitClient.js +341 -0
- package/dist/esm/services/OctokitClient.js.map +1 -0
- package/dist/esm/services/PlanOverviewUploader.js +109 -0
- package/dist/esm/services/PlanOverviewUploader.js.map +1 -0
- package/dist/esm/services/PlanOverviewUploaderMap.js +17 -0
- package/dist/esm/services/PlanOverviewUploaderMap.js.map +1 -0
- package/dist/esm/services/PlanSession.js +471 -0
- package/dist/esm/services/PlanSession.js.map +1 -0
- package/dist/esm/services/ProjectStore.js +98 -0
- package/dist/esm/services/ProjectStore.js.map +1 -0
- package/dist/esm/services/PullRequestTracker.js +177 -0
- package/dist/esm/services/PullRequestTracker.js.map +1 -0
- package/dist/esm/services/SpecUploader.js +101 -0
- package/dist/esm/services/SpecUploader.js.map +1 -0
- package/dist/esm/services/SpecUploaderMap.js +17 -0
- package/dist/esm/services/SpecUploaderMap.js.map +1 -0
- package/dist/esm/services/TaskEventSource.js +50 -0
- package/dist/esm/services/TaskEventSource.js.map +1 -0
- package/dist/esm/services/TaskTracker/GitHubIssueTracker.js +148 -0
- package/dist/esm/services/TaskTracker/GitHubIssueTracker.js.map +1 -0
- package/dist/esm/services/TaskTracker/LinearSdkClient.js +140 -0
- package/dist/esm/services/TaskTracker/LinearSdkClient.js.map +1 -0
- package/dist/esm/services/TaskTracker/LinearTracker.js +119 -0
- package/dist/esm/services/TaskTracker/LinearTracker.js.map +1 -0
- package/dist/esm/services/TaskTracker/TaskTracker.js +12 -0
- package/dist/esm/services/TaskTracker/TaskTracker.js.map +1 -0
- package/dist/esm/services/TaskTracker/TrackerLayerMap.js +19 -0
- package/dist/esm/services/TaskTracker/TrackerLayerMap.js.map +1 -0
- package/dist/esm/services/TaskTracker/buildEventStream.js +47 -0
- package/dist/esm/services/TaskTracker/buildEventStream.js.map +1 -0
- package/dist/esm/services/TaskTracker.js +12 -0
- package/dist/esm/services/TaskTracker.js.map +1 -0
- package/dist/esm/services/TelegramAdapter.js +118 -0
- package/dist/esm/services/TelegramAdapter.js.map +1 -0
- package/dist/esm/services/TelegramConfig.js +71 -0
- package/dist/esm/services/TelegramConfig.js.map +1 -0
- package/dist/esm/services/TelegramConfigStore.js +71 -0
- package/dist/esm/services/TelegramConfigStore.js.map +1 -0
- package/dist/esm/services/TelegramNotifier.js +41 -0
- package/dist/esm/services/TelegramNotifier.js.map +1 -0
- package/dist/esm/services/TrackerLayerMap.js +19 -0
- package/dist/esm/services/TrackerLayerMap.js.map +1 -0
- package/dist/esm/services/TrackerResolver.js +36 -0
- package/dist/esm/services/TrackerResolver.js.map +1 -0
- package/dist/esm/services/messenger/MessengerAdapter.js +21 -0
- package/dist/esm/services/messenger/MessengerAdapter.js.map +1 -0
- package/dist/esm/services/messenger/TelegramAdapter.js +118 -0
- package/dist/esm/services/messenger/TelegramAdapter.js.map +1 -0
- package/dist/esm/services/task-tracker/GitHubIssueTracker.js +150 -0
- package/dist/esm/services/task-tracker/GitHubIssueTracker.js.map +1 -0
- package/dist/esm/services/task-tracker/LinearTracker.js +120 -0
- package/dist/esm/services/task-tracker/LinearTracker.js.map +1 -0
- package/dist/esm/services/task-tracker/TaskTracker.js +12 -0
- package/dist/esm/services/task-tracker/TaskTracker.js.map +1 -0
- package/dist/esm/services/task-tracker/TrackerLayerMap.js +19 -0
- package/dist/esm/services/task-tracker/TrackerLayerMap.js.map +1 -0
- package/dist/esm/shim/bin.js +28 -0
- package/dist/esm/shim/bin.js.map +1 -0
- package/dist/esm/shim/main.js +196 -0
- package/dist/esm/shim/main.js.map +1 -0
- package/dist/esm/shim/parseArgs.js +39 -0
- package/dist/esm/shim/parseArgs.js.map +1 -0
- package/dist/esm/shim/schemas.js +28 -0
- package/dist/esm/shim/schemas.js.map +1 -0
- package/lib/AnalysisPrompts/package.json +6 -0
- package/lib/BranchParser/package.json +6 -0
- package/lib/MermaidToPlantUml/package.json +6 -0
- package/lib/SpecHtmlGenerator/package.json +6 -0
- package/lib/StreamJsonParser/package.json +6 -0
- package/lib/TelegramFormatter/package.json +6 -0
- package/lib/TelegraphMarkdown/package.json +6 -0
- package/package.json +360 -0
- package/schemas/CredentialSchemas/package.json +6 -0
- package/schemas/GitHubSchemas/package.json +6 -0
- package/schemas/LinearSchemas/package.json +6 -0
- package/schemas/ProjectSchemas/package.json +6 -0
- package/schemas/TrackerSchemas/package.json +6 -0
- package/services/AppContext/package.json +6 -0
- package/services/AppRuntimeConfig/package.json +6 -0
- package/services/AutoMerge/package.json +6 -0
- package/services/ChatMachine/package.json +6 -0
- package/services/CommentTimer/package.json +6 -0
- package/services/EventLoop/package.json +6 -0
- package/services/GitHubClient/package.json +6 -0
- package/services/LalphConfig/package.json +6 -0
- package/services/LinearSdkClient/package.json +6 -0
- package/services/MessengerAdapter/MessengerAdapter/package.json +6 -0
- package/services/MessengerAdapter/TelegramAdapter/package.json +6 -0
- package/services/OctokitClient/package.json +6 -0
- package/services/PlanOverviewUploader/package.json +6 -0
- package/services/PlanOverviewUploaderMap/package.json +6 -0
- package/services/PlanSession/package.json +6 -0
- package/services/ProjectStore/package.json +6 -0
- package/services/PullRequestTracker/package.json +6 -0
- package/services/TaskTracker/GitHubIssueTracker/package.json +6 -0
- package/services/TaskTracker/LinearTracker/package.json +6 -0
- package/services/TaskTracker/TaskTracker/package.json +6 -0
- package/services/TelegramConfig/package.json +6 -0
- package/services/TrackerLayerMap/package.json +6 -0
- package/shim/bin/package.json +6 -0
- package/shim/main/package.json +6 -0
- package/shim/parseArgs/package.json +6 -0
- package/shim/schemas/package.json +6 -0
- package/src/Events.ts +98 -0
- package/src/Main.ts +177 -0
- package/src/index.ts +124 -0
- package/src/lib/AnalysisPrompts.ts +54 -0
- package/src/lib/BranchParser.ts +58 -0
- package/src/lib/MermaidToPlantUml.ts +103 -0
- package/src/lib/SpecHtmlGenerator.ts +199 -0
- package/src/lib/StreamJsonParser.ts +99 -0
- package/src/lib/TelegramFormatter.ts +151 -0
- package/src/lib/TelegraphMarkdown.ts +305 -0
- package/src/schemas/CredentialSchemas.ts +23 -0
- package/src/schemas/GitHubSchemas.ts +50 -0
- package/src/schemas/LinearSchemas.ts +57 -0
- package/src/schemas/ProjectSchemas.ts +18 -0
- package/src/schemas/TrackerSchemas.ts +27 -0
- package/src/services/AppContext.ts +72 -0
- package/src/services/AppRuntimeConfig.ts +23 -0
- package/src/services/AutoMerge.ts +198 -0
- package/src/services/ChatMachine.ts +911 -0
- package/src/services/CommentTimer.ts +133 -0
- package/src/services/EventLoop.ts +321 -0
- package/src/services/GitHubClient.ts +282 -0
- package/src/services/LalphConfig.ts +218 -0
- package/src/services/LinearSdkClient.ts +181 -0
- package/src/services/MessengerAdapter/MessengerAdapter.ts +53 -0
- package/src/services/MessengerAdapter/TelegramAdapter.ts +145 -0
- package/src/services/OctokitClient.ts +628 -0
- package/src/services/PlanOverviewUploader.ts +160 -0
- package/src/services/PlanOverviewUploaderMap.ts +17 -0
- package/src/services/PlanSession.ts +589 -0
- package/src/services/ProjectStore.ts +140 -0
- package/src/services/PullRequestTracker.ts +253 -0
- package/src/services/TaskTracker/GitHubIssueTracker.ts +162 -0
- package/src/services/TaskTracker/LinearTracker.ts +141 -0
- package/src/services/TaskTracker/TaskTracker.ts +34 -0
- package/src/services/TelegramConfig.ts +120 -0
- package/src/services/TrackerLayerMap.ts +19 -0
- package/src/shim/bin.ts +36 -0
- package/src/shim/main.ts +255 -0
- package/src/shim/parseArgs.ts +43 -0
- package/src/shim/schemas.ts +38 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpecHtmlGenerator.js","names":["escapeHtml","text","replaceAll","markdownToHtml","placeholders","counter","makePlaceholder","htmlContent","key","push","result","replace","_","lang","code","escaped","lines","split","output","inList","line","headerMatch","exec","level","length","listMatch","trim","join","renderFileSection","file","heading","name","mermaid","content","generateSpecHtml","files","sections","map"],"sources":["../../../src/lib/SpecHtmlGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NDJSON parser for Claude Code `--output-format stream-json` output
|
|
3
|
+
* @since 1.0.0
|
|
4
|
+
*/
|
|
5
|
+
import { Effect, flow, identity, Schema, Stream } from "effect";
|
|
6
|
+
/**
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
* @category schemas
|
|
9
|
+
*/
|
|
10
|
+
export const ContentBlock = /*#__PURE__*/Schema.Struct({
|
|
11
|
+
type: Schema.String,
|
|
12
|
+
id: /*#__PURE__*/Schema.optional(Schema.String),
|
|
13
|
+
text: /*#__PURE__*/Schema.optional(Schema.String),
|
|
14
|
+
name: /*#__PURE__*/Schema.optional(Schema.String),
|
|
15
|
+
input: /*#__PURE__*/Schema.optional(Schema.Unknown)
|
|
16
|
+
});
|
|
17
|
+
/**
|
|
18
|
+
* @since 1.0.0
|
|
19
|
+
* @category schemas
|
|
20
|
+
*/
|
|
21
|
+
export class StreamJsonMessage extends /*#__PURE__*/Schema.Class("StreamJsonMessage")({
|
|
22
|
+
type: Schema.String,
|
|
23
|
+
subtype: /*#__PURE__*/Schema.optional(Schema.String),
|
|
24
|
+
session_id: /*#__PURE__*/Schema.optional(Schema.String),
|
|
25
|
+
message: /*#__PURE__*/Schema.optional(/*#__PURE__*/Schema.Struct({
|
|
26
|
+
id: /*#__PURE__*/Schema.optional(Schema.String),
|
|
27
|
+
content: /*#__PURE__*/Schema.optional(/*#__PURE__*/Schema.Array(ContentBlock))
|
|
28
|
+
}))
|
|
29
|
+
}) {}
|
|
30
|
+
/**
|
|
31
|
+
* @since 1.0.0
|
|
32
|
+
* @category schemas
|
|
33
|
+
*/
|
|
34
|
+
export const QuestionOption = /*#__PURE__*/Schema.Struct({
|
|
35
|
+
label: Schema.String,
|
|
36
|
+
description: /*#__PURE__*/Schema.optional(Schema.String)
|
|
37
|
+
});
|
|
38
|
+
/**
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
* @category schemas
|
|
41
|
+
*/
|
|
42
|
+
export const Question = /*#__PURE__*/Schema.Struct({
|
|
43
|
+
question: Schema.String,
|
|
44
|
+
header: /*#__PURE__*/Schema.optional(Schema.String),
|
|
45
|
+
options: /*#__PURE__*/Schema.optional(/*#__PURE__*/Schema.Array(QuestionOption)),
|
|
46
|
+
multiSelect: /*#__PURE__*/Schema.optional(Schema.Boolean)
|
|
47
|
+
});
|
|
48
|
+
/**
|
|
49
|
+
* @since 1.0.0
|
|
50
|
+
* @category schemas
|
|
51
|
+
*/
|
|
52
|
+
export const AskUserQuestionInput = /*#__PURE__*/Schema.Struct({
|
|
53
|
+
questions: /*#__PURE__*/Schema.optional(/*#__PURE__*/Schema.Array(Question))
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* @since 1.0.0
|
|
57
|
+
* @category schemas
|
|
58
|
+
*/
|
|
59
|
+
export class StreamJsonInput extends /*#__PURE__*/Schema.Class("StreamJsonInput")({
|
|
60
|
+
type: /*#__PURE__*/Schema.Literal("user"),
|
|
61
|
+
message: /*#__PURE__*/Schema.Struct({
|
|
62
|
+
role: /*#__PURE__*/Schema.Literal("user"),
|
|
63
|
+
content: Schema.String
|
|
64
|
+
}),
|
|
65
|
+
session_id: Schema.String,
|
|
66
|
+
parent_tool_use_id: /*#__PURE__*/Schema.NullOr(Schema.String)
|
|
67
|
+
}) {}
|
|
68
|
+
const decodeJsonMessage = /*#__PURE__*/Schema.decodeUnknown(/*#__PURE__*/Schema.parseJson(StreamJsonMessage));
|
|
69
|
+
/**
|
|
70
|
+
* Splits a string stream into lines and parses each as a StreamJsonMessage,
|
|
71
|
+
* silently filtering out lines that don't match.
|
|
72
|
+
* @since 1.0.0
|
|
73
|
+
* @category parsers
|
|
74
|
+
*/
|
|
75
|
+
export const parseNdjsonMessages = /*#__PURE__*/flow(Stream.splitLines, /*#__PURE__*/Stream.filter(line => line.trim().length > 0), /*#__PURE__*/Stream.mapEffect(line => decodeJsonMessage(line).pipe(Effect.tapError(err => Effect.logWarning("Non-JSON stdout line, skipping").pipe(Effect.annotateLogs({
|
|
76
|
+
line: line.slice(0, 300),
|
|
77
|
+
error: err.message.slice(0, 100)
|
|
78
|
+
}))), Effect.option)), /*#__PURE__*/Stream.filterMap(identity));
|
|
79
|
+
//# sourceMappingURL=StreamJsonParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StreamJsonParser.js","names":["Effect","flow","identity","Schema","Stream","ContentBlock","Struct","type","String","id","optional","text","name","input","Unknown","StreamJsonMessage","Class","subtype","session_id","message","content","Array","QuestionOption","label","description","Question","question","header","options","multiSelect","Boolean","AskUserQuestionInput","questions","StreamJsonInput","Literal","role","parent_tool_use_id","NullOr","decodeJsonMessage","decodeUnknown","parseJson","parseNdjsonMessages","splitLines","filter","line","trim","length","mapEffect","pipe","tapError","err","logWarning","annotateLogs","slice","error","option","filterMap"],"sources":["../../../src/lib/StreamJsonParser.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Markdown-to-Telegram-HTML converter.
|
|
3
|
+
*
|
|
4
|
+
* Telegram supports a narrow HTML subset: `<b>`, `<i>`, `<code>`, `<pre>`,
|
|
5
|
+
* `<a href>`, `<s>`. This module converts common markdown patterns to that
|
|
6
|
+
* subset while preserving code blocks verbatim.
|
|
7
|
+
*
|
|
8
|
+
* Ported from `repos/claude-code-telegram/src/bot/utils/html_format.py`.
|
|
9
|
+
* @since 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
const escapeHtml = text => text.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">");
|
|
12
|
+
/**
|
|
13
|
+
* Convert markdown text to Telegram-compatible HTML.
|
|
14
|
+
*
|
|
15
|
+
* Order of operations:
|
|
16
|
+
* 1. Extract fenced code blocks → placeholders
|
|
17
|
+
* 2. Extract inline code → placeholders
|
|
18
|
+
* 3. HTML-escape remaining text
|
|
19
|
+
* 4. Bold (`**text**` / `__text__`)
|
|
20
|
+
* 5. Italic (`*text*`, `_text_` at word boundaries)
|
|
21
|
+
* 6. Links (`[text](url)`)
|
|
22
|
+
* 7. Headers (`# Header` → `<b>Header</b>`)
|
|
23
|
+
* 8. Strikethrough (`~~text~~`)
|
|
24
|
+
* 9. Restore placeholders
|
|
25
|
+
* @since 1.0.0
|
|
26
|
+
*/
|
|
27
|
+
export const markdownToTelegramHtml = text => {
|
|
28
|
+
const placeholders = [];
|
|
29
|
+
let counter = 0;
|
|
30
|
+
const makePlaceholder = htmlContent => {
|
|
31
|
+
const key = `\x00PH${counter}\x00`;
|
|
32
|
+
counter++;
|
|
33
|
+
placeholders.push([key, htmlContent]);
|
|
34
|
+
return key;
|
|
35
|
+
};
|
|
36
|
+
// 1. Extract fenced code blocks
|
|
37
|
+
let result = text.replace(/```(\w+)?\n([\s\S]*?)```/g, (_, lang, code) => {
|
|
38
|
+
const escaped = escapeHtml(code);
|
|
39
|
+
if (lang) {
|
|
40
|
+
return makePlaceholder(`<pre><code class="language-${escapeHtml(lang)}">${escaped}</code></pre>`);
|
|
41
|
+
}
|
|
42
|
+
return makePlaceholder(`<pre><code>${escaped}</code></pre>`);
|
|
43
|
+
});
|
|
44
|
+
// 2. Extract inline code
|
|
45
|
+
result = result.replace(/`([^`\n]+)`/g, (_, code) => makePlaceholder(`<code>${escapeHtml(code)}</code>`));
|
|
46
|
+
// 3. HTML-escape remaining text
|
|
47
|
+
result = escapeHtml(result);
|
|
48
|
+
// 4. Bold: **text** or __text__
|
|
49
|
+
result = result.replace(/\*\*(.+?)\*\*/g, "<b>$1</b>");
|
|
50
|
+
result = result.replace(/__(.+?)__/g, "<b>$1</b>");
|
|
51
|
+
// 5. Italic: *text* (non-space bounded)
|
|
52
|
+
result = result.replace(/\*(\S.*?\S|\S)\*/g, "<i>$1</i>");
|
|
53
|
+
// _text_ only at word boundaries (avoid my_var_name)
|
|
54
|
+
result = result.replace(/(?<!\w)_(\S.*?\S|\S)_(?!\w)/g, "<i>$1</i>");
|
|
55
|
+
// 6. Links: [text](url)
|
|
56
|
+
result = result.replace(/\[([^\]]+)\]\(([^)]+)\)/g, "<a href=\"$2\">$1</a>");
|
|
57
|
+
// 7. Headers: # Header -> <b>Header</b>
|
|
58
|
+
result = result.replace(/^#{1,6}\s+(.+)$/gm, "<b>$1</b>");
|
|
59
|
+
// 8. Strikethrough: ~~text~~
|
|
60
|
+
result = result.replace(/~~(.+?)~~/g, "<s>$1</s>");
|
|
61
|
+
// 9. Restore placeholders
|
|
62
|
+
for (const [key, htmlContent] of placeholders) {
|
|
63
|
+
result = result.replace(key, htmlContent);
|
|
64
|
+
}
|
|
65
|
+
return result;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Split a message into chunks that fit within Telegram's message size limit.
|
|
69
|
+
*
|
|
70
|
+
* Splits on `\n\n` boundaries first; if a single paragraph still exceeds the
|
|
71
|
+
* limit, splits on `\n`.
|
|
72
|
+
* @since 1.0.0
|
|
73
|
+
*/
|
|
74
|
+
export const splitMessage = (text, maxLen = 4096) => {
|
|
75
|
+
if (text.length <= maxLen) {
|
|
76
|
+
return [text];
|
|
77
|
+
}
|
|
78
|
+
const chunks = [];
|
|
79
|
+
const paragraphs = text.split("\n\n");
|
|
80
|
+
let current = "";
|
|
81
|
+
for (const para of paragraphs) {
|
|
82
|
+
const candidate = current.length === 0 ? para : `${current}\n\n${para}`;
|
|
83
|
+
if (candidate.length <= maxLen) {
|
|
84
|
+
current = candidate;
|
|
85
|
+
} else {
|
|
86
|
+
if (current.length > 0) {
|
|
87
|
+
chunks.push(current);
|
|
88
|
+
current = "";
|
|
89
|
+
}
|
|
90
|
+
// If the paragraph itself exceeds maxLen, split on \n
|
|
91
|
+
if (para.length > maxLen) {
|
|
92
|
+
const lines = para.split("\n");
|
|
93
|
+
for (const line of lines) {
|
|
94
|
+
const lineCandidate = current.length === 0 ? line : `${current}\n${line}`;
|
|
95
|
+
if (lineCandidate.length <= maxLen) {
|
|
96
|
+
current = lineCandidate;
|
|
97
|
+
} else {
|
|
98
|
+
if (current.length > 0) {
|
|
99
|
+
chunks.push(current);
|
|
100
|
+
}
|
|
101
|
+
current = line;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
current = para;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
if (current.length > 0) {
|
|
110
|
+
chunks.push(current);
|
|
111
|
+
}
|
|
112
|
+
return chunks;
|
|
113
|
+
};
|
|
114
|
+
//# sourceMappingURL=TelegramFormatter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TelegramFormatter.js","names":["escapeHtml","text","replaceAll","markdownToTelegramHtml","placeholders","counter","makePlaceholder","htmlContent","key","push","result","replace","_","lang","code","escaped","splitMessage","maxLen","length","chunks","paragraphs","split","current","para","candidate","lines","line","lineCandidate"],"sources":["../../../src/lib/TelegramFormatter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transforms HTML from generateSpecHtml into Telegraph-compatible Node array.
|
|
3
|
+
* Replaces Mermaid diagram blocks with pre-rendered PlantUML images via kroki.io.
|
|
4
|
+
* Uses better-telegraph's parseHtml for HTML → Telegraph Node conversion.
|
|
5
|
+
* @since 1.0.0
|
|
6
|
+
*/
|
|
7
|
+
import { parseHtml } from "better-telegraph";
|
|
8
|
+
import { deflateSync } from "node:zlib";
|
|
9
|
+
import { mermaidToPlantUml } from "./MermaidToPlantUml.js";
|
|
10
|
+
/**
|
|
11
|
+
* Unescape HTML entities back to raw text.
|
|
12
|
+
*/
|
|
13
|
+
const unescapeHtml = html => html.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replaceAll(""", "\"");
|
|
14
|
+
/**
|
|
15
|
+
* Encode a PlantUML diagram for the kroki.io API.
|
|
16
|
+
* Uses zlib deflate + base64url encoding.
|
|
17
|
+
*/
|
|
18
|
+
const encodeForKroki = plantuml => {
|
|
19
|
+
const compressed = deflateSync(Buffer.from(plantuml, "utf-8"));
|
|
20
|
+
return compressed.toString("base64url");
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Build a kroki.io PlantUML SVG URL from a Mermaid class diagram string.
|
|
24
|
+
*/
|
|
25
|
+
const mermaidToKrokiUrl = mermaidContent => {
|
|
26
|
+
const plantuml = mermaidToPlantUml(mermaidContent);
|
|
27
|
+
const encoded = encodeForKroki(plantuml);
|
|
28
|
+
return `https://kroki.io/plantuml/svg/${encoded}`;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Transform HTML produced by `generateSpecHtml` into Telegraph-compatible content.
|
|
32
|
+
*
|
|
33
|
+
* - Extracts `<body>` content (strips doctype, head, scripts, styles)
|
|
34
|
+
* - Replaces `<pre class="mermaid">content</pre>` with `<img src="kroki_url">`
|
|
35
|
+
* - Parses via `better-telegraph`'s `parseHtml` which handles heading downgrades
|
|
36
|
+
* and converts to Telegraph's Node format
|
|
37
|
+
* @since 1.0.0
|
|
38
|
+
*/
|
|
39
|
+
export const toTelegraphContent = html => {
|
|
40
|
+
// Extract body content
|
|
41
|
+
const bodyMatch = /<body>([\s\S]*)<\/body>/i.exec(html);
|
|
42
|
+
let content = bodyMatch?.[1] ?? html;
|
|
43
|
+
// Strip <script> tags
|
|
44
|
+
content = content.replace(/<script[\s\S]*?<\/script>/gi, "");
|
|
45
|
+
// Strip <style> tags
|
|
46
|
+
content = content.replace(/<style[\s\S]*?<\/style>/gi, "");
|
|
47
|
+
// Replace <pre class="mermaid">content</pre> with <img> tags
|
|
48
|
+
content = content.replace(/<pre class="mermaid">([\s\S]*?)<\/pre>/g, (_, mermaidHtml) => {
|
|
49
|
+
const rawMermaid = unescapeHtml(mermaidHtml);
|
|
50
|
+
const url = mermaidToKrokiUrl(rawMermaid);
|
|
51
|
+
return `<img src="${url}">`;
|
|
52
|
+
});
|
|
53
|
+
const parsed = parseHtml(content);
|
|
54
|
+
if (parsed == null) return [];
|
|
55
|
+
return typeof parsed === "string" ? [parsed] : parsed;
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=TelegraphHtml.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TelegraphHtml.js","names":["parseHtml","deflateSync","mermaidToPlantUml","unescapeHtml","html","replaceAll","encodeForKroki","plantuml","compressed","Buffer","from","toString","mermaidToKrokiUrl","mermaidContent","encoded","toTelegraphContent","bodyMatch","exec","content","replace","_","mermaidHtml","rawMermaid","url","parsed"],"sources":["../../../src/lib/TelegraphHtml.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;AAMA,SAASA,SAAS,QAAQ,kBAAkB;AAC5C,SAASC,WAAW,QAAQ,WAAW;AACvC,SAASC,iBAAiB,QAAQ,wBAAwB;AAE1D;;;AAGA,MAAMC,YAAY,GAAIC,IAAY,IAChCA,IAAI,CACDC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CACxBA,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CACvBA,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CACvBA,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC;AAE/B;;;;AAIA,MAAMC,cAAc,GAAIC,QAAgB,IAAY;EAClD,MAAMC,UAAU,GAAGP,WAAW,CAACQ,MAAM,CAACC,IAAI,CAACH,QAAQ,EAAE,OAAO,CAAC,CAAC;EAC9D,OAAOC,UAAU,CAACG,QAAQ,CAAC,WAAW,CAAC;AACzC,CAAC;AAED;;;AAGA,MAAMC,iBAAiB,GAAIC,cAAsB,IAAY;EAC3D,MAAMN,QAAQ,GAAGL,iBAAiB,CAACW,cAAc,CAAC;EAClD,MAAMC,OAAO,GAAGR,cAAc,CAACC,QAAQ,CAAC;EACxC,OAAO,iCAAiCO,OAAO,EAAE;AACnD,CAAC;AAED;;;;;;;;;AASA,OAAO,MAAMC,kBAAkB,GAAIX,IAAY,IAA4B;EACzE;EACA,MAAMY,SAAS,GAAG,0BAA0B,CAACC,IAAI,CAACb,IAAI,CAAC;EACvD,IAAIc,OAAO,GAAGF,SAAS,GAAG,CAAC,CAAC,IAAIZ,IAAI;EAEpC;EACAc,OAAO,GAAGA,OAAO,CAACC,OAAO,CAAC,6BAA6B,EAAE,EAAE,CAAC;EAE5D;EACAD,OAAO,GAAGA,OAAO,CAACC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC;EAE1D;EACAD,OAAO,GAAGA,OAAO,CAACC,OAAO,CACvB,yCAAyC,EACzC,CAACC,CAAC,EAAEC,WAAmB,KAAI;IACzB,MAAMC,UAAU,GAAGnB,YAAY,CAACkB,WAAW,CAAC;IAC5C,MAAME,GAAG,GAAGX,iBAAiB,CAACU,UAAU,CAAC;IACzC,OAAO,aAAaC,GAAG,IAAI;EAC7B,CAAC,CACF;EAED,MAAMC,MAAM,GAAGxB,SAAS,CAACkB,OAAO,CAAC;EACjC,IAAIM,MAAM,IAAI,IAAI,EAAE,OAAO,EAAE;EAC7B,OAAO,OAAOA,MAAM,KAAK,QAAQ,GAAG,CAACA,MAAM,CAAC,GAAGA,MAAM;AACvD,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
import { deflateSync } from "node:zlib";
|
|
2
|
+
import { mermaidToPlantUml } from "./MermaidToPlantUml.js";
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// Block-level parser
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
const isBlockStart = line => /^#{1,6}\s/.test(line) || /^[-*]\s+/.test(line) || /^\d+\.\s+/.test(line) || /^>/.test(line) || /^```/.test(line) || /^(?:---+|\*\*\*+|___+)\s*$/.test(line);
|
|
7
|
+
const parseBlocks = markdown => {
|
|
8
|
+
const lines = markdown.split("\n");
|
|
9
|
+
const blocks = [];
|
|
10
|
+
let i = 0;
|
|
11
|
+
while (i < lines.length) {
|
|
12
|
+
const line = lines[i] ?? "";
|
|
13
|
+
// Code fence
|
|
14
|
+
const fenceMatch = /^```(\w*)/.exec(line);
|
|
15
|
+
if (fenceMatch) {
|
|
16
|
+
const lang = fenceMatch[1] || undefined;
|
|
17
|
+
const codeLines = [];
|
|
18
|
+
i++;
|
|
19
|
+
while (i < lines.length) {
|
|
20
|
+
const codeLine = lines[i] ?? "";
|
|
21
|
+
if (/^```\s*$/.test(codeLine)) break;
|
|
22
|
+
codeLines.push(codeLine);
|
|
23
|
+
i++;
|
|
24
|
+
}
|
|
25
|
+
blocks.push({
|
|
26
|
+
_tag: "codeBlock",
|
|
27
|
+
lang,
|
|
28
|
+
code: codeLines.join("\n")
|
|
29
|
+
});
|
|
30
|
+
if (i < lines.length) i++; // skip closing ```
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
// Heading
|
|
34
|
+
const headingMatch = /^(#{1,6})\s+(.+)$/.exec(line);
|
|
35
|
+
if (headingMatch) {
|
|
36
|
+
const hashes = headingMatch[1] ?? "#";
|
|
37
|
+
const text = headingMatch[2] ?? "";
|
|
38
|
+
blocks.push({
|
|
39
|
+
_tag: "heading",
|
|
40
|
+
level: hashes.length,
|
|
41
|
+
text
|
|
42
|
+
});
|
|
43
|
+
i++;
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
// HR (must come before list check since *** could look like a list start)
|
|
47
|
+
if (/^(?:---+|\*\*\*+|___+)\s*$/.test(line)) {
|
|
48
|
+
blocks.push({
|
|
49
|
+
_tag: "hr"
|
|
50
|
+
});
|
|
51
|
+
i++;
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
// Unordered list
|
|
55
|
+
const ulMatch = /^[-*]\s+(.+)$/.exec(line);
|
|
56
|
+
if (ulMatch) {
|
|
57
|
+
const items = [ulMatch[1] ?? ""];
|
|
58
|
+
i++;
|
|
59
|
+
while (i < lines.length) {
|
|
60
|
+
const nextLine = lines[i] ?? "";
|
|
61
|
+
const nextMatch = /^[-*]\s+(.+)$/.exec(nextLine);
|
|
62
|
+
if (!nextMatch) break;
|
|
63
|
+
items.push(nextMatch[1] ?? "");
|
|
64
|
+
i++;
|
|
65
|
+
}
|
|
66
|
+
blocks.push({
|
|
67
|
+
_tag: "unorderedList",
|
|
68
|
+
items
|
|
69
|
+
});
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
// Ordered list
|
|
73
|
+
const olMatch = /^\d+\.\s+(.+)$/.exec(line);
|
|
74
|
+
if (olMatch) {
|
|
75
|
+
const items = [olMatch[1] ?? ""];
|
|
76
|
+
i++;
|
|
77
|
+
while (i < lines.length) {
|
|
78
|
+
const nextLine = lines[i] ?? "";
|
|
79
|
+
const nextMatch = /^\d+\.\s+(.+)$/.exec(nextLine);
|
|
80
|
+
if (!nextMatch) break;
|
|
81
|
+
items.push(nextMatch[1] ?? "");
|
|
82
|
+
i++;
|
|
83
|
+
}
|
|
84
|
+
blocks.push({
|
|
85
|
+
_tag: "orderedList",
|
|
86
|
+
items
|
|
87
|
+
});
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
// Blockquote
|
|
91
|
+
const bqMatch = /^>\s?(.*)$/.exec(line);
|
|
92
|
+
if (bqMatch) {
|
|
93
|
+
const bqLines = [bqMatch[1] ?? ""];
|
|
94
|
+
i++;
|
|
95
|
+
while (i < lines.length) {
|
|
96
|
+
const nextLine = lines[i] ?? "";
|
|
97
|
+
const nextBq = /^>\s?(.*)$/.exec(nextLine);
|
|
98
|
+
if (!nextBq) break;
|
|
99
|
+
bqLines.push(nextBq[1] ?? "");
|
|
100
|
+
i++;
|
|
101
|
+
}
|
|
102
|
+
blocks.push({
|
|
103
|
+
_tag: "blockquote",
|
|
104
|
+
text: bqLines.join(" ")
|
|
105
|
+
});
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
// Blank line — skip
|
|
109
|
+
if (line.trim() === "") {
|
|
110
|
+
i++;
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
// Paragraph — accumulate non-blank, non-block-start lines
|
|
114
|
+
const paraLines = [line];
|
|
115
|
+
i++;
|
|
116
|
+
while (i < lines.length) {
|
|
117
|
+
const nextLine = lines[i] ?? "";
|
|
118
|
+
if (nextLine.trim() === "" || isBlockStart(nextLine)) break;
|
|
119
|
+
paraLines.push(nextLine);
|
|
120
|
+
i++;
|
|
121
|
+
}
|
|
122
|
+
blocks.push({
|
|
123
|
+
_tag: "paragraph",
|
|
124
|
+
text: paraLines.join(" ")
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
return blocks;
|
|
128
|
+
};
|
|
129
|
+
// ---------------------------------------------------------------------------
|
|
130
|
+
// Inline parser — "find earliest match" recursive scanner
|
|
131
|
+
// ---------------------------------------------------------------------------
|
|
132
|
+
const inlinePatterns = [{
|
|
133
|
+
type: "code",
|
|
134
|
+
regex: /`([^`]+)`/
|
|
135
|
+
}, {
|
|
136
|
+
type: "link",
|
|
137
|
+
regex: /\[([^\]]+)\]\(([^)]+)\)/
|
|
138
|
+
}, {
|
|
139
|
+
type: "bold_star",
|
|
140
|
+
regex: /\*\*(.+?)\*\*/
|
|
141
|
+
}, {
|
|
142
|
+
type: "bold_under",
|
|
143
|
+
regex: /__(.+?)__/
|
|
144
|
+
}, {
|
|
145
|
+
type: "strike",
|
|
146
|
+
regex: /~~(.+?)~~/
|
|
147
|
+
}, {
|
|
148
|
+
type: "italic_star",
|
|
149
|
+
regex: /(?<![*])\*(?!\*)(.+?)(?<![*])\*(?!\*)/
|
|
150
|
+
}, {
|
|
151
|
+
type: "italic_under",
|
|
152
|
+
regex: /(?<!\w)_(.+?)_(?!\w)/
|
|
153
|
+
}];
|
|
154
|
+
const parseInline = text => {
|
|
155
|
+
if (text === "") return [];
|
|
156
|
+
const nodes = [];
|
|
157
|
+
let remaining = text;
|
|
158
|
+
while (remaining.length > 0) {
|
|
159
|
+
let earliestIndex = remaining.length;
|
|
160
|
+
let earliestType;
|
|
161
|
+
let earliestMatch;
|
|
162
|
+
for (const {
|
|
163
|
+
regex,
|
|
164
|
+
type
|
|
165
|
+
} of inlinePatterns) {
|
|
166
|
+
const match = regex.exec(remaining);
|
|
167
|
+
if (match && match.index < earliestIndex) {
|
|
168
|
+
earliestIndex = match.index;
|
|
169
|
+
earliestType = type;
|
|
170
|
+
earliestMatch = match;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
if (!earliestMatch || !earliestType) {
|
|
174
|
+
nodes.push(remaining);
|
|
175
|
+
break;
|
|
176
|
+
}
|
|
177
|
+
// Text before the match
|
|
178
|
+
if (earliestIndex > 0) {
|
|
179
|
+
nodes.push(remaining.slice(0, earliestIndex));
|
|
180
|
+
}
|
|
181
|
+
const group1 = earliestMatch[1] ?? "";
|
|
182
|
+
const group2 = earliestMatch[2] ?? "";
|
|
183
|
+
switch (earliestType) {
|
|
184
|
+
case "code":
|
|
185
|
+
nodes.push({
|
|
186
|
+
tag: "code",
|
|
187
|
+
children: [group1]
|
|
188
|
+
});
|
|
189
|
+
break;
|
|
190
|
+
case "link":
|
|
191
|
+
nodes.push({
|
|
192
|
+
tag: "a",
|
|
193
|
+
attrs: {
|
|
194
|
+
href: group2
|
|
195
|
+
},
|
|
196
|
+
children: parseInline(group1)
|
|
197
|
+
});
|
|
198
|
+
break;
|
|
199
|
+
case "bold_star":
|
|
200
|
+
case "bold_under":
|
|
201
|
+
nodes.push({
|
|
202
|
+
tag: "strong",
|
|
203
|
+
children: parseInline(group1)
|
|
204
|
+
});
|
|
205
|
+
break;
|
|
206
|
+
case "italic_star":
|
|
207
|
+
case "italic_under":
|
|
208
|
+
nodes.push({
|
|
209
|
+
tag: "em",
|
|
210
|
+
children: parseInline(group1)
|
|
211
|
+
});
|
|
212
|
+
break;
|
|
213
|
+
case "strike":
|
|
214
|
+
nodes.push({
|
|
215
|
+
tag: "s",
|
|
216
|
+
children: parseInline(group1)
|
|
217
|
+
});
|
|
218
|
+
break;
|
|
219
|
+
}
|
|
220
|
+
remaining = remaining.slice(earliestIndex + earliestMatch[0].length);
|
|
221
|
+
}
|
|
222
|
+
return nodes;
|
|
223
|
+
};
|
|
224
|
+
// ---------------------------------------------------------------------------
|
|
225
|
+
// Block → Node conversion
|
|
226
|
+
// ---------------------------------------------------------------------------
|
|
227
|
+
const codeToChildren = code => {
|
|
228
|
+
const lines = code.split("\n");
|
|
229
|
+
const children = [];
|
|
230
|
+
for (let i = 0; i < lines.length; i++) {
|
|
231
|
+
if (i > 0) children.push({
|
|
232
|
+
tag: "br"
|
|
233
|
+
});
|
|
234
|
+
children.push(lines[i] ?? "");
|
|
235
|
+
}
|
|
236
|
+
return children;
|
|
237
|
+
};
|
|
238
|
+
const blockToNodes = block => {
|
|
239
|
+
switch (block._tag) {
|
|
240
|
+
case "codeBlock":
|
|
241
|
+
return [{
|
|
242
|
+
tag: "pre",
|
|
243
|
+
children: codeToChildren(block.code)
|
|
244
|
+
}];
|
|
245
|
+
case "heading":
|
|
246
|
+
{
|
|
247
|
+
const tag = block.level <= 2 ? "h3" : "h4";
|
|
248
|
+
return [{
|
|
249
|
+
tag,
|
|
250
|
+
children: parseInline(block.text)
|
|
251
|
+
}];
|
|
252
|
+
}
|
|
253
|
+
case "hr":
|
|
254
|
+
return [{
|
|
255
|
+
tag: "hr"
|
|
256
|
+
}];
|
|
257
|
+
case "unorderedList":
|
|
258
|
+
return [{
|
|
259
|
+
tag: "ul",
|
|
260
|
+
children: block.items.map(item => ({
|
|
261
|
+
tag: "li",
|
|
262
|
+
children: parseInline(item)
|
|
263
|
+
}))
|
|
264
|
+
}];
|
|
265
|
+
case "orderedList":
|
|
266
|
+
return [{
|
|
267
|
+
tag: "ol",
|
|
268
|
+
children: block.items.map(item => ({
|
|
269
|
+
tag: "li",
|
|
270
|
+
children: parseInline(item)
|
|
271
|
+
}))
|
|
272
|
+
}];
|
|
273
|
+
case "blockquote":
|
|
274
|
+
return [{
|
|
275
|
+
tag: "blockquote",
|
|
276
|
+
children: parseInline(block.text)
|
|
277
|
+
}];
|
|
278
|
+
case "paragraph":
|
|
279
|
+
return [{
|
|
280
|
+
tag: "p",
|
|
281
|
+
children: parseInline(block.text)
|
|
282
|
+
}];
|
|
283
|
+
}
|
|
284
|
+
};
|
|
285
|
+
// ---------------------------------------------------------------------------
|
|
286
|
+
// Public API
|
|
287
|
+
// ---------------------------------------------------------------------------
|
|
288
|
+
/**
|
|
289
|
+
* Convert a markdown string directly to Telegraph Node array.
|
|
290
|
+
* @since 1.0.0
|
|
291
|
+
*/
|
|
292
|
+
export const markdownToTelegraphNodes = md => parseBlocks(md).flatMap(blockToNodes);
|
|
293
|
+
/**
|
|
294
|
+
* Encode a PlantUML diagram for the kroki.io API.
|
|
295
|
+
* Uses zlib deflate + base64url encoding.
|
|
296
|
+
*/
|
|
297
|
+
const encodeForKroki = plantuml => {
|
|
298
|
+
const compressed = deflateSync(Buffer.from(plantuml, "utf-8"));
|
|
299
|
+
return compressed.toString("base64url");
|
|
300
|
+
};
|
|
301
|
+
/**
|
|
302
|
+
* Build a kroki.io PlantUML SVG URL from a Mermaid class diagram string.
|
|
303
|
+
*/
|
|
304
|
+
const mermaidToKrokiUrl = mermaidContent => {
|
|
305
|
+
const plantuml = mermaidToPlantUml(mermaidContent);
|
|
306
|
+
const encoded = encodeForKroki(plantuml);
|
|
307
|
+
return `https://kroki.io/plantuml/svg/${encoded}`;
|
|
308
|
+
};
|
|
309
|
+
/**
|
|
310
|
+
* Convert spec files to Telegraph Node array.
|
|
311
|
+
* Adds file name as h3 heading per file.
|
|
312
|
+
* Mermaid files become kroki.io PlantUML SVG images.
|
|
313
|
+
* @since 1.0.0
|
|
314
|
+
*/
|
|
315
|
+
export const specFilesToTelegraphNodes = files => {
|
|
316
|
+
const nodes = [];
|
|
317
|
+
for (const file of files) {
|
|
318
|
+
nodes.push({
|
|
319
|
+
tag: "h3",
|
|
320
|
+
children: [file.name]
|
|
321
|
+
});
|
|
322
|
+
if (file.mermaid) {
|
|
323
|
+
const url = mermaidToKrokiUrl(file.content);
|
|
324
|
+
nodes.push({
|
|
325
|
+
tag: "img",
|
|
326
|
+
attrs: {
|
|
327
|
+
src: url
|
|
328
|
+
}
|
|
329
|
+
});
|
|
330
|
+
} else {
|
|
331
|
+
for (const node of markdownToTelegraphNodes(file.content)) {
|
|
332
|
+
nodes.push(node);
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
return nodes;
|
|
337
|
+
};
|
|
338
|
+
//# sourceMappingURL=TelegraphMarkdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TelegraphMarkdown.js","names":["deflateSync","mermaidToPlantUml","isBlockStart","line","test","parseBlocks","markdown","lines","split","blocks","i","length","fenceMatch","exec","lang","undefined","codeLines","codeLine","push","_tag","code","join","headingMatch","hashes","text","level","ulMatch","items","nextLine","nextMatch","olMatch","bqMatch","bqLines","nextBq","trim","paraLines","inlinePatterns","type","regex","parseInline","nodes","remaining","earliestIndex","earliestType","earliestMatch","match","index","slice","group1","group2","tag","children","attrs","href","codeToChildren","blockToNodes","block","map","item","markdownToTelegraphNodes","md","flatMap","encodeForKroki","plantuml","compressed","Buffer","from","toString","mermaidToKrokiUrl","mermaidContent","encoded","specFilesToTelegraphNodes","files","file","name","mermaid","url","content","src","node"],"sources":["../../../src/lib/TelegraphMarkdown.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Credential schemas
|
|
3
|
+
* @since 1.0.0
|
|
4
|
+
*/
|
|
5
|
+
import { Schema } from "effect";
|
|
6
|
+
/**
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
* @category schemas
|
|
9
|
+
*/
|
|
10
|
+
export class LalphGithubToken extends /*#__PURE__*/Schema.Class("LalphGithubToken")({
|
|
11
|
+
token: Schema.String
|
|
12
|
+
}) {}
|
|
13
|
+
/**
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
* @category schemas
|
|
16
|
+
*/
|
|
17
|
+
export class LalphLinearToken extends /*#__PURE__*/Schema.Class("LalphLinearToken")({
|
|
18
|
+
token: Schema.String,
|
|
19
|
+
expiresAt: Schema.String,
|
|
20
|
+
refreshToken: Schema.String
|
|
21
|
+
}) {}
|
|
22
|
+
//# sourceMappingURL=CredentialSchemas.js.map
|