@xxmachina/components 19.32.0 → 19.33.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.
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-templates-agent.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/templates/agent/agent-messages.ts","../../../../../packages/@xxmachina/components/src/lib/templates/agent/agent.template.ts","../../../../../packages/@xxmachina/components/src/lib/templates/agent/xxmachina-components-templates-agent.ts"],"sourcesContent":["import chalk from 'chalk';\n\n/**\n * コアメッセージ(共通部分)\n */\nconst CORE_MESSAGE = `${chalk.cyan('● What is Plan X?')}\n Plan X is a modern WebRTC-based session manager, an alternative to SSH and Tmux.\n Connect any machine worldwide with a single command and deploy AI agents anywhere.\n\n${chalk.cyan(`● Vision: ${chalk.bold.yellow('\"The Planet is the Computer\"')}`)}\n Building a planetary-scale operating system\n AI agents autonomously optimize distributed systems\n\n${chalk.cyan('● Agentic Shell')}\n Unified interface to distributed resources\n Express your intent in natural language, AI plans the execution\n\n${chalk.cyan('● Meta-Kernel')}\n Distributed abstraction layer running on top of existing OSes (Linux/Mac/Win)\n Just as kernels abstract hardware, Plan X abstracts the network\n\n${chalk.cyan('● Autopoiesis')}\n Self-improving, self-sustaining, self-replicating living system\n Agents evolve themselves and spawn new agents`;\n\n/**\n * ウェルカムメッセージ(起動時に表示)\n */\nexport const WELCOME_MESSAGE = `${chalk.cyan(`● Welcome to ${chalk.bold.yellow('Plan X')}`)}\n\n${CORE_MESSAGE}\n\n${chalk.gray('powered by Plan X Agent LLC.')}\n`;\n\n/**\n * aboutコマンドのメッセージ\n */\nexport const ABOUT_MESSAGE = `${chalk.bold.cyan('● Plan X - OS for the LLM Era')}\n\n${CORE_MESSAGE}\n\n${chalk.cyan('● QTP/ATC Patterns')}\n Query-Transformer-Presenter: Retrieve information\n Action-Transformer-Command: Execute actions\n New interaction model replacing stdio\n\n${chalk.cyan('● Learn More')}\n Sign in to access more features\n\n${chalk.gray('powered by Plan X Agent LLC.')}`;\n","import { ChangeDetectionStrategy, Component, inject, ChangeDetectorRef, ElementRef, AfterViewInit, Provider, viewChild, computed, HostListener, input } from '@angular/core';\nimport { NgAtomicComponent, provideComponent } from '@ng-atomic/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { AutoLayoutFrame } from '@ng-atomic/components/frames/auto-layout';\nimport { CardFrame } from '@ng-atomic/components/frames/card';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\nimport { ActionButtonsSectionOrganism } from '@ng-atomic/components/organisms/action-buttons-section';\nimport { HeadingOrganism } from '@ng-atomic/components/organisms/heading';\nimport { NgAtomicFormSectionBuilder } from '@ng-atomic/components/templates/form';\nimport { EntranceTemplateStore } from '@ng-atomic/components/templates/entrance';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { injectAuthState } from '@ng-atomic/common/services/auth';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { Terminal } from '@xterm/xterm';\nimport { XtermOrganism, svgToSixel } from '@xxmachina/components/organisms/xterm';\nimport { NavigatorOrganismStore } from '@ng-atomic/components/organisms/navigator';\nimport chalk from 'chalk';\nimport { WELCOME_MESSAGE, ABOUT_MESSAGE } from './agent-messages';\n\n\nenum ActionId {\n SIGN_IN = '[@ng-atomic/components] Sign In',\n SIGN_IN_WITH_GOOGLE = '[@ng-atomic/components] Sign In With Google',\n SIGN_IN_WITH_TWITTER = '[@ng-atomic/components] Sign In With Twitter',\n SIGN_OUT = '[@ng-atomic/components] Sign Out',\n}\n\n@Component({\n selector: 'templates-agent',\n imports: [\n FormsModule,\n AutoLayoutFrame,\n CardFrame,\n ScrollFrame,\n ActionButtonsSectionOrganism,\n HeadingOrganism,\n NgAtomicFormSectionBuilder,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n XtermOrganism,\n NavigatorOrganismStore\n],\n template: `\n <frames-scroll class=\"terminal-window\">\n <organisms-navigator top injectable class=\"terminal-header\"\n [startActions]=\"navStartActions()\"\n [endActions]=\"endActions()\"\n (action)=\"onNavAction($event)\"\n >Machina Agent</organisms-navigator>\n\n <organisms-xterm\n class=\"terminal-display\"\n (terminalReady)=\"onTerminalReady($event)\"\n (githubLinkClick)=\"onGitHubLinkClick($event)\"\n (click)=\"focusInput()\"\n #xtermComponent\n />\n\n <div bottom class=\"input-area\">\n <div class=\"input-line\">\n <span class=\"input-prefix\">></span>\n <div class=\"textarea-wrapper\">\n <span class=\"arrow-prefix\">></span>\n <div class=\"input-container\">\n <textarea\n #inputField\n class=\"terminal-input\"\n [(ngModel)]=\"currentInput\"\n (keydown.enter)=\"handleEnter($event)\"\n (keydown.arrowUp)=\"navigateHistory($event, -1)\"\n (keydown.arrowDown)=\"navigateHistory($event, 1)\"\n (keydown.control.k)=\"generateCommand($event)\"\n (keydown.meta.k)=\"generateCommand($event)\"\n (keydown)=\"preventPrefixDeletion($event)\"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleBlur()\"\n (keyup)=\"updateCursorPosition()\"\n (click)=\"updateCursorPosition()\"\n (scroll)=\"updateCursorPosition()\"\n [disabled]=\"isProcessing\"\n placeholder=\"Type a command...\"\n rows=\"1\"\n ></textarea>\n <div class=\"block-cursor\"\n [class.visible]=\"showCursor\"\n [style.left.px]=\"cursorLeft\"\n [style.top.px]=\"cursorTop\"\n ></div>\n </div>\n </div>\n </div>\n </div>\n </frames-scroll>\n `,\n styleUrls: ['./agent.template.scss'],\n host: {\n class: 'template'\n },\n changeDetection: ChangeDetectionStrategy.Default,\n hostDirectives: [\n {\n directive: EntranceTemplateStore,\n inputs: [\n 'form',\n 'actions',\n 'title',\n 'fieldMap',\n ],\n },\n ]\n})\nexport class AgentTemplate extends NgAtomicComponent implements AfterViewInit {\n static ActionId = ActionId;\n protected ActionId = ActionId;\n protected store = inject(EntranceTemplateStore);\n private cdr = inject(ChangeDetectorRef);\n private app = inject(AppService);\n\n // 認証状態のチェック(非ログイン時は閉じるボタンを非表示)\n private readonly authState = injectAuthState();\n protected readonly isLoggedIn = computed(() => !!this.authState());\n\n readonly endActions = input<any[]>([]);\n\n protected navStartActions = computed(() => {\n if (!this.isLoggedIn()) return [];\n return [{ id: 'close-side-app', icon: 'close', name: '閉じる' }];\n });\n\n readonly xtermComponent = viewChild<XtermOrganism>('xtermComponent');\n readonly inputField = viewChild<ElementRef<HTMLTextAreaElement>>('inputField');\n\n protected statusText = 'Ready';\n protected isProcessing = false;\n protected showCursor = false;\n protected cursorLeft = 60;\n protected cursorTop = 12;\n\n // xterm関連\n private terminal!: Terminal;\n private commandHistory: string[] = [];\n private historyIndex = -1;\n \n // 入力管理\n protected currentInput = '';\n\n ngAfterViewInit() {\n // 入力フィールドにフォーカス\n setTimeout(() => {\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n textarea.focus();\n // 初期高さを適切に設定\n this.adjustTextareaHeight();\n }\n }, 100);\n }\n\n @HostListener('window:resize')\n onWindowResize() {\n // ウィンドウリサイズ時にターミナルをフィット\n this.xtermComponent()?.fit();\n }\n\n onTerminalReady(terminal: Terminal) {\n this.terminal = terminal;\n\n // 初期化時にターミナルをコンテナサイズにフィット\n setTimeout(() => {\n this.xtermComponent()?.fit();\n }, 50);\n\n // 初期メッセージの表示\n this.showWelcomeMessage();\n\n // 初回ロード時は最上部にスクロール(アスキーアートから見えるように)\n setTimeout(() => {\n this.terminal.scrollToTop();\n }, 100);\n\n // 入力フィールドにフォーカスと高さ調整\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n textarea.focus();\n this.adjustTextareaHeight();\n }\n }\n\n onGitHubLinkClick(issueNumber: number) {\n const url = `https://github.com/nontangent/x_x_machina/issues/${issueNumber}`;\n window.open(url, '_blank');\n }\n\n private async showWelcomeMessage() {\n this.terminal.writeln('');\n\n // assetsからSVGを読み込んでSIXELフォーマットで表示\n try {\n const response = await fetch('/assets/machina-ascii-art.svg');\n const svgString = await response.text();\n const sixelData = await svgToSixel(svgString, { width: 400, height: 130 });\n this.terminal.write(sixelData);\n this.terminal.writeln('');\n } catch (error) {\n console.warn('SIXEL logo display failed, using ASCII fallback:', error);\n // フォールバック: ASCII artでX_Xロゴを表示\n this.terminal.writeln(`${chalk.cyan(' ██╗ ██╗ ██╗ ██╗')}`);\n this.terminal.writeln(`${chalk.cyan(' ╚██╗██╔╝ ╚██╗██╔╝ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ╚███╔╝ ╚███╔╝ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ██╔██╗ ██╔██╗ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ██╔╝ ██╗ ██╔╝ ██╗ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ╚═╝ ╚═╝ ╚═╝ ╚═╝ ')}`);\n }\n this.terminal.writeln('');\n\n // ウェルカムメッセージを表示\n WELCOME_MESSAGE.split('\\n').forEach(line => this.terminal.writeln(line));\n\n this.terminal.writeln('');\n this.terminal.writeln(`${chalk.cyan('● Type \\x1b[1;36mlogin\\x1b[1;33m to sign in with Google\\x1b[0m')}`);\n this.terminal.writeln(`${chalk.cyan('● Type \\x1b[1;36mhelp\\x1b[1;33m for more commands\\x1b[0m')}`);\n this.terminal.writeln('');\n\n // プロンプト表示\n this.showPrompt();\n }\n\n\n private showPrompt() {\n // プロンプトはHTML側の入力フィールドで表示するため不要\n }\n\n private processCommand(command: string) {\n this.isProcessing = true;\n this.statusText = 'Processing...';\n this.cdr.markForCheck();\n\n // ログインコマンド\n if (command === 'login') {\n this.terminal.writeln('\\x1b[1;32m● Initiating Google authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN_WITH_GOOGLE });\n this.completeProcessing();\n }, 300);\n }\n else if (command.startsWith('auth')) {\n if (command.includes('google')) {\n this.terminal.writeln('\\x1b[1;32m● Initiating Google authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN_WITH_GOOGLE });\n this.completeProcessing();\n }, 300);\n } else if (command.includes('twitter')) {\n this.terminal.writeln('\\x1b[1;32m● Initiating Twitter authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN_WITH_TWITTER });\n this.completeProcessing();\n }, 300);\n } else if (command.includes('local')) {\n this.terminal.writeln('\\x1b[1;32m● Initiating local authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN });\n this.completeProcessing();\n }, 300);\n } else {\n this.terminal.writeln('\\x1b[1;32m● Available authentication methods:\\x1b[0m');\n this.terminal.writeln(' - auth --provider=google');\n this.terminal.writeln(' - auth --provider=twitter');\n this.terminal.writeln(' - auth --provider=local');\n this.completeProcessing();\n }\n }\n // ログアウトコマンド\n else if (command === 'logout' || command === 'signout') {\n this.terminal.writeln('\\x1b[1;32m● Signing out...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_OUT });\n setTimeout(() => {\n this.terminal.writeln('\\x1b[1;32m● You have been signed out.\\x1b[0m');\n this.terminal.writeln('\\x1b[1;33m● Type \"login\" to sign in again.\\x1b[0m');\n this.completeProcessing();\n }, 500);\n }, 300);\n }\n // ヘルプコマンド\n else if (command === 'help' || command === '?') {\n this.terminal.writeln('\\x1b[1;32m● Available commands:\\x1b[0m');\n this.terminal.writeln(' \\x1b[36mlogin\\x1b[0m - Sign in with Google (default)');\n this.terminal.writeln(' \\x1b[36mauth\\x1b[0m --provider=\\x1b[33mgoogle\\x1b[0m - Sign in with Google');\n this.terminal.writeln(' \\x1b[36mauth\\x1b[0m --provider=\\x1b[33mtwitter\\x1b[0m - Sign in with Twitter');\n this.terminal.writeln(' \\x1b[36mauth\\x1b[0m --provider=\\x1b[33mlocal\\x1b[0m - Sign in with email/password');\n this.terminal.writeln(' \\x1b[36mlogout\\x1b[0m / \\x1b[36msignout\\x1b[0m - Sign out from the application');\n this.terminal.writeln(' \\x1b[36mabout\\x1b[0m - Show company information');\n this.terminal.writeln(' \\x1b[36mclear\\x1b[0m - Clear terminal');\n this.terminal.writeln(' \\x1b[36mhelp\\x1b[0m / \\x1b[36m?\\x1b[0m - Show this help');\n this.terminal.writeln('');\n this.terminal.writeln('\\x1b[1;33m● Keyboard shortcuts:\\x1b[0m');\n this.terminal.writeln(' \\x1b[36m⌘K\\x1b[0m / \\x1b[36mCtrl+K\\x1b[0m - Generate command suggestions');\n this.terminal.writeln(' \\x1b[36m↑\\x1b[0m / \\x1b[36m↓\\x1b[0m - Navigate command history');\n this.completeProcessing();\n }\n // machina情報コマンド\n else if (command === 'about') {\n ABOUT_MESSAGE.split('\\n').forEach(line => this.terminal.writeln(line));\n this.completeProcessing();\n }\n // クリアコマンド\n else if (command === 'clear' || command === 'cls') {\n this.terminal.clear();\n this.terminal.scrollToBottom();\n this.completeProcessing();\n }\n // 不明なコマンド\n else {\n this.terminal.writeln(`\\x1b[1;31m● Command not found: ${command}\\x1b[0m`);\n this.terminal.writeln(' Type \"help\" for available commands.');\n this.completeProcessing();\n }\n }\n\n private completeProcessing() {\n this.isProcessing = false;\n this.statusText = 'Ready';\n this.cdr.markForCheck();\n this.terminal.writeln('');\n \n // 最新の出力が見えるようにスクロール\n this.terminal.scrollToBottom();\n \n // 入力フィールドにフォーカスを戻す\n setTimeout(() => {\n this.inputField()?.nativeElement?.focus();\n }, 100);\n }\n\n handleEnter(event: KeyboardEvent) {\n // Shift+EnterまたはCtrl+Enterの場合は改行を許可\n if (event.shiftKey || event.ctrlKey) {\n return; // デフォルト動作(改行)を許可\n }\n\n event.preventDefault();\n const actualCommand = this.currentInput.trim();\n\n if (actualCommand) {\n // コマンドをターミナルに表示(改行を含む場合は適切に処理)\n const displayCommand = actualCommand.split('\\n').map(line => '\\x1b[32m> \\x1b[0m' + line).join('\\r\\n');\n this.terminal.write(displayCommand + '\\r\\n');\n\n // 履歴に追加\n this.commandHistory.push(actualCommand);\n this.historyIndex = this.commandHistory.length;\n\n // コマンドを処理\n this.processCommand(actualCommand);\n\n // 入力を初期状態にリセット\n this.currentInput = '';\n\n // textareaの高さをリセット\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n textarea.style.height = 'auto';\n }\n }\n }\n \n navigateHistory(event: KeyboardEvent, direction: number) {\n event.preventDefault();\n\n if (direction === -1 && this.historyIndex > 0) {\n // 上矢印\n this.historyIndex--;\n this.currentInput = this.commandHistory[this.historyIndex];\n } else if (direction === 1) {\n // 下矢印\n if (this.historyIndex < this.commandHistory.length - 1) {\n this.historyIndex++;\n this.currentInput = this.commandHistory[this.historyIndex];\n } else {\n this.historyIndex = this.commandHistory.length;\n this.currentInput = '';\n }\n }\n }\n \n generateCommand(event?: KeyboardEvent) {\n if (event) {\n event.preventDefault();\n }\n \n this.terminal.writeln('');\n this.terminal.writeln('\\x1b[1;32m● Generating command suggestions...\\x1b[0m');\n \n setTimeout(() => {\n this.terminal.writeln('\\x1b[1;33m● Suggested commands:\\x1b[0m');\n this.terminal.writeln(' 1. \\x1b[36mauth --provider=google\\x1b[0m');\n this.terminal.writeln(' 2. \\x1b[36mlogin\\x1b[0m');\n this.terminal.writeln(' 3. \\x1b[36mhelp\\x1b[0m');\n this.terminal.writeln('');\n this.cdr.markForCheck();\n }, 500);\n }\n\n onNavAction(action: any) {\n if (action.id === 'close-side-app') {\n this.app.sideApp.collapse();\n return;\n }\n this.dispatch(action);\n }\n\n // 入力フィールドにフォーカスを設定\n focusInput() {\n this.inputField()?.nativeElement?.focus();\n }\n\n // textareaの高さを内容に合わせて調整\n adjustTextareaHeight() {\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n // 一旦高さをリセット\n textarea.style.height = '20px';\n // scrollHeightを確認し、実際に必要な高さを設定\n const scrollHeight = textarea.scrollHeight;\n // パディングを考慮した最小高さ\n const minHeight = 44; // padding: 12px * 2 + line-height: 20px\n textarea.style.height = Math.max(minHeight, scrollHeight) + 'px';\n }\n }\n\n // キーダウンイベントのハンドラ(プレフィックス削除防止は不要になったためノーオペレーション)\n preventPrefixDeletion(_event: KeyboardEvent) {\n // No-op: prefix protection no longer needed\n }\n\n // 入力時の処理\n handleInput(event: Event) {\n const textarea = event.target as HTMLTextAreaElement;\n\n // 高さ調整(改行が含まれている場合のみ)\n if (this.currentInput.includes('\\n')) {\n this.adjustTextareaHeight();\n } else {\n // 1行の場合は固定高さ\n textarea.style.height = '44px';\n }\n\n // カーソル位置を更新\n this.updateCursorPosition();\n }\n\n // フォーカス時の処理\n handleFocus() {\n this.showCursor = true;\n this.updateCursorPosition();\n }\n\n // ブラー時の処理\n handleBlur() {\n this.showCursor = false;\n }\n\n // カーソル位置の更新\n updateCursorPosition() {\n const textarea = this.inputField()?.nativeElement;\n if (!textarea) return;\n \n const cursorPos = textarea.selectionStart;\n const textBeforeCursor = this.currentInput.substring(0, cursorPos);\n \n // 改行で分割\n const lines = textBeforeCursor.split('\\n');\n const currentLineIndex = lines.length - 1;\n const currentLineText = lines[currentLineIndex];\n \n // 仮のcanvasを使って現在の行のテキスト幅を計算\n const canvas = document.createElement('canvas');\n const context = canvas.getContext('2d');\n if (context) {\n context.font = '14px \"SF Mono\", Monaco, monospace';\n const textWidth = context.measureText(currentLineText).width;\n \n // カーソル位置を設定(パディング分を考慮)\n this.cursorLeft = 8 + textWidth; // 8px は textarea の左パディング\n \n // 垂直位置を調整(行数に基づいて、スクロール位置も考慮)\n const scrollTop = textarea.scrollTop;\n this.cursorTop = 12 + (currentLineIndex * 20) - scrollTop; // スクロール分を引く\n }\n }\n}\n\nexport function provideAgentTemplate(): Provider[] {\n return [\n provideComponent(EntranceTemplateStore, () => AgentTemplate),\n ];\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xxmachina-components-templates-agent.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/templates/agent/agent-messages.ts","../../../../../packages/@xxmachina/components/src/lib/templates/agent/agent.template.ts","../../../../../packages/@xxmachina/components/src/lib/templates/agent/xxmachina-components-templates-agent.ts"],"sourcesContent":["import chalk from 'chalk';\n\n/**\n * コアメッセージ(共通部分)\n */\nconst CORE_MESSAGE = `${chalk.cyan('● What is Plan X?')}\n Plan X is a modern WebRTC-based session manager, an alternative to SSH and Tmux.\n Connect any machine worldwide with a single command and deploy AI agents anywhere.\n\n${chalk.cyan(`● Vision: ${chalk.bold.yellow('\"The Planet is the Computer\"')}`)}\n Building a planetary-scale operating system\n AI agents autonomously optimize distributed systems\n\n${chalk.cyan('● Agentic Shell')}\n Unified interface to distributed resources\n Express your intent in natural language, AI plans the execution\n\n${chalk.cyan('● Meta-Kernel')}\n Distributed abstraction layer running on top of existing OSes (Linux/Mac/Win)\n Just as kernels abstract hardware, Plan X abstracts the network\n\n${chalk.cyan('● Autopoiesis')}\n Self-improving, self-sustaining, self-replicating living system\n Agents evolve themselves and spawn new agents`;\n\n/**\n * ウェルカムメッセージ(起動時に表示)\n */\nexport const WELCOME_MESSAGE = `${chalk.cyan(`● Welcome to ${chalk.bold.yellow('Plan X')}`)}\n\n${CORE_MESSAGE}\n\n${chalk.gray('powered by Plan X Agent LLC.')}\n`;\n\n/**\n * aboutコマンドのメッセージ\n */\nexport const ABOUT_MESSAGE = `${chalk.bold.cyan('● Plan X - OS for the LLM Era')}\n\n${CORE_MESSAGE}\n\n${chalk.cyan('● QTP/ATC Patterns')}\n Query-Transformer-Presenter: Retrieve information\n Action-Transformer-Command: Execute actions\n New interaction model replacing stdio\n\n${chalk.cyan('● Learn More')}\n Sign in to access more features\n\n${chalk.gray('powered by Plan X Agent LLC.')}`;\n","import { ChangeDetectionStrategy, Component, inject, ChangeDetectorRef, ElementRef, AfterViewInit, Provider, viewChild, computed, HostListener, input } from '@angular/core';\nimport { NgAtomicComponent, provideComponent } from '@ng-atomic/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { AutoLayoutFrame } from '@ng-atomic/components/frames/auto-layout';\nimport { CardFrame } from '@ng-atomic/components/frames/card';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\nimport { ActionButtonsSectionOrganism } from '@ng-atomic/components/organisms/action-buttons-section';\nimport { HeadingOrganism } from '@ng-atomic/components/organisms/heading';\nimport { NgAtomicFormSectionBuilder } from '@ng-atomic/components/templates/form';\nimport { EntranceTemplateStore } from '@ng-atomic/components/templates/entrance';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { injectAuthState } from '@ng-atomic/common/services/auth';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { Terminal } from '@xterm/xterm';\nimport { XtermOrganism, svgToSixel } from '@xxmachina/components/organisms/xterm';\nimport { NavigatorOrganismStore } from '@ng-atomic/components/organisms/navigator';\nimport chalk from 'chalk';\nimport { WELCOME_MESSAGE, ABOUT_MESSAGE } from './agent-messages';\n\n\nenum ActionId {\n SIGN_IN = '[@ng-atomic/components] Sign In',\n SIGN_IN_WITH_GOOGLE = '[@ng-atomic/components] Sign In With Google',\n SIGN_IN_WITH_TWITTER = '[@ng-atomic/components] Sign In With Twitter',\n SIGN_OUT = '[@ng-atomic/components] Sign Out',\n NAVIGATE = '[@ng-atomic/components] Navigate',\n}\n\n@Component({\n selector: 'templates-agent',\n imports: [\n FormsModule,\n AutoLayoutFrame,\n CardFrame,\n ScrollFrame,\n ActionButtonsSectionOrganism,\n HeadingOrganism,\n NgAtomicFormSectionBuilder,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n XtermOrganism,\n NavigatorOrganismStore\n],\n template: `\n <frames-scroll class=\"terminal-window\">\n <organisms-navigator top injectable class=\"terminal-header\"\n [startActions]=\"navStartActions()\"\n [endActions]=\"endActions()\"\n (action)=\"onNavAction($event)\"\n >Machina Agent</organisms-navigator>\n\n <organisms-xterm\n class=\"terminal-display\"\n (terminalReady)=\"onTerminalReady($event)\"\n (githubLinkClick)=\"onGitHubLinkClick($event)\"\n (click)=\"focusInput()\"\n #xtermComponent\n />\n\n <div bottom class=\"input-area\">\n <div class=\"input-line\">\n <span class=\"input-prefix\">></span>\n <div class=\"textarea-wrapper\">\n <span class=\"arrow-prefix\">></span>\n <div class=\"input-container\">\n <textarea\n #inputField\n class=\"terminal-input\"\n [(ngModel)]=\"currentInput\"\n (keydown.enter)=\"handleEnter($event)\"\n (keydown.arrowUp)=\"navigateHistory($event, -1)\"\n (keydown.arrowDown)=\"navigateHistory($event, 1)\"\n (keydown.control.k)=\"generateCommand($event)\"\n (keydown.meta.k)=\"generateCommand($event)\"\n (keydown)=\"preventPrefixDeletion($event)\"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleBlur()\"\n (keyup)=\"updateCursorPosition()\"\n (click)=\"updateCursorPosition()\"\n (scroll)=\"updateCursorPosition()\"\n [disabled]=\"isProcessing\"\n placeholder=\"Type a command...\"\n rows=\"1\"\n ></textarea>\n <div class=\"block-cursor\"\n [class.visible]=\"showCursor\"\n [style.left.px]=\"cursorLeft\"\n [style.top.px]=\"cursorTop\"\n ></div>\n </div>\n </div>\n </div>\n </div>\n </frames-scroll>\n `,\n styleUrls: ['./agent.template.scss'],\n host: {\n class: 'template'\n },\n changeDetection: ChangeDetectionStrategy.Default,\n hostDirectives: [\n {\n directive: EntranceTemplateStore,\n inputs: [\n 'form',\n 'actions',\n 'title',\n 'fieldMap',\n ],\n },\n ]\n})\nexport class AgentTemplate extends NgAtomicComponent implements AfterViewInit {\n static ActionId = ActionId;\n protected ActionId = ActionId;\n protected store = inject(EntranceTemplateStore);\n private cdr = inject(ChangeDetectorRef);\n private app = inject(AppService);\n\n // 認証状態のチェック(非ログイン時は閉じるボタンを非表示)\n private readonly authState = injectAuthState();\n protected readonly isLoggedIn = computed(() => !!this.authState());\n\n readonly endActions = input<any[]>([]);\n\n protected navStartActions = computed(() => {\n if (!this.isLoggedIn()) return [];\n return [{ id: 'close-side-app', icon: 'close', name: '閉じる' }];\n });\n\n readonly xtermComponent = viewChild<XtermOrganism>('xtermComponent');\n readonly inputField = viewChild<ElementRef<HTMLTextAreaElement>>('inputField');\n\n protected statusText = 'Ready';\n protected isProcessing = false;\n protected showCursor = false;\n protected cursorLeft = 60;\n protected cursorTop = 12;\n\n // xterm関連\n private terminal!: Terminal;\n private commandHistory: string[] = [];\n private historyIndex = -1;\n \n // 入力管理\n protected currentInput = '';\n\n ngAfterViewInit() {\n // 入力フィールドにフォーカス\n setTimeout(() => {\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n textarea.focus();\n // 初期高さを適切に設定\n this.adjustTextareaHeight();\n }\n }, 100);\n }\n\n @HostListener('window:resize')\n onWindowResize() {\n // ウィンドウリサイズ時にターミナルをフィット\n this.xtermComponent()?.fit();\n }\n\n onTerminalReady(terminal: Terminal) {\n this.terminal = terminal;\n\n // 初期化時にターミナルをコンテナサイズにフィット\n setTimeout(() => {\n this.xtermComponent()?.fit();\n }, 50);\n\n // 初期メッセージの表示\n this.showWelcomeMessage();\n\n // 初回ロード時は最上部にスクロール(アスキーアートから見えるように)\n setTimeout(() => {\n this.terminal.scrollToTop();\n }, 100);\n\n // 入力フィールドにフォーカスと高さ調整\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n textarea.focus();\n this.adjustTextareaHeight();\n }\n }\n\n onGitHubLinkClick(issueNumber: number) {\n const url = `https://github.com/nontangent/x_x_machina/issues/${issueNumber}`;\n window.open(url, '_blank');\n }\n\n private async showWelcomeMessage() {\n this.terminal.writeln('');\n\n // assetsからSVGを読み込んでSIXELフォーマットで表示\n try {\n const response = await fetch('/assets/machina-ascii-art.svg');\n const svgString = await response.text();\n const sixelData = await svgToSixel(svgString, { width: 400, height: 130 });\n this.terminal.write(sixelData);\n this.terminal.writeln('');\n } catch (error) {\n console.warn('SIXEL logo display failed, using ASCII fallback:', error);\n // フォールバック: ASCII artでX_Xロゴを表示\n this.terminal.writeln(`${chalk.cyan(' ██╗ ██╗ ██╗ ██╗')}`);\n this.terminal.writeln(`${chalk.cyan(' ╚██╗██╔╝ ╚██╗██╔╝ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ╚███╔╝ ╚███╔╝ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ██╔██╗ ██╔██╗ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ██╔╝ ██╗ ██╔╝ ██╗ ')}`);\n this.terminal.writeln(`${chalk.cyan(' ╚═╝ ╚═╝ ╚═╝ ╚═╝ ')}`);\n }\n this.terminal.writeln('');\n\n // ウェルカムメッセージを表示\n WELCOME_MESSAGE.split('\\n').forEach(line => this.terminal.writeln(line));\n\n this.terminal.writeln('');\n this.terminal.writeln(`${chalk.cyan('● Type \\x1b[1;36mlogin\\x1b[1;33m to sign in with Google\\x1b[0m')}`);\n this.terminal.writeln(`${chalk.cyan('● Type \\x1b[1;36mhelp\\x1b[1;33m for more commands\\x1b[0m')}`);\n this.terminal.writeln('');\n\n // プロンプト表示\n this.showPrompt();\n }\n\n\n private showPrompt() {\n // プロンプトはHTML側の入力フィールドで表示するため不要\n }\n\n private processCommand(command: string) {\n this.isProcessing = true;\n this.statusText = 'Processing...';\n this.cdr.markForCheck();\n\n // ログインコマンド\n if (command === 'login') {\n this.terminal.writeln('\\x1b[1;32m● Initiating Google authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN_WITH_GOOGLE });\n this.completeProcessing();\n }, 300);\n }\n else if (command.startsWith('auth')) {\n if (command.includes('google')) {\n this.terminal.writeln('\\x1b[1;32m● Initiating Google authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN_WITH_GOOGLE });\n this.completeProcessing();\n }, 300);\n } else if (command.includes('twitter')) {\n this.terminal.writeln('\\x1b[1;32m● Initiating Twitter authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN_WITH_TWITTER });\n this.completeProcessing();\n }, 300);\n } else if (command.includes('local')) {\n this.terminal.writeln('\\x1b[1;32m● Initiating local authentication...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_IN });\n this.completeProcessing();\n }, 300);\n } else {\n this.terminal.writeln('\\x1b[1;32m● Available authentication methods:\\x1b[0m');\n this.terminal.writeln(' - auth --provider=google');\n this.terminal.writeln(' - auth --provider=twitter');\n this.terminal.writeln(' - auth --provider=local');\n this.completeProcessing();\n }\n }\n // ログアウトコマンド\n else if (command === 'logout' || command === 'signout') {\n this.terminal.writeln('\\x1b[1;32m● Signing out...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.SIGN_OUT });\n setTimeout(() => {\n this.terminal.writeln('\\x1b[1;32m● You have been signed out.\\x1b[0m');\n this.terminal.writeln('\\x1b[1;33m● Type \"login\" to sign in again.\\x1b[0m');\n this.completeProcessing();\n }, 500);\n }, 300);\n }\n // ヘルプコマンド\n else if (command === 'help' || command === '?') {\n this.terminal.writeln('\\x1b[1;32m● Available commands:\\x1b[0m');\n this.terminal.writeln(' \\x1b[36mlogin\\x1b[0m - Sign in with Google (default)');\n this.terminal.writeln(' \\x1b[36mauth\\x1b[0m --provider=\\x1b[33mgoogle\\x1b[0m - Sign in with Google');\n this.terminal.writeln(' \\x1b[36mauth\\x1b[0m --provider=\\x1b[33mtwitter\\x1b[0m - Sign in with Twitter');\n this.terminal.writeln(' \\x1b[36mauth\\x1b[0m --provider=\\x1b[33mlocal\\x1b[0m - Sign in with email/password');\n this.terminal.writeln(' \\x1b[36mlogout\\x1b[0m / \\x1b[36msignout\\x1b[0m - Sign out from the application');\n this.terminal.writeln(' \\x1b[36mterms\\x1b[0m - View Terms of Service');\n this.terminal.writeln(' \\x1b[36mabout\\x1b[0m - Show company information');\n this.terminal.writeln(' \\x1b[36mclear\\x1b[0m - Clear terminal');\n this.terminal.writeln(' \\x1b[36mhelp\\x1b[0m / \\x1b[36m?\\x1b[0m - Show this help');\n this.terminal.writeln('');\n this.terminal.writeln('\\x1b[1;33m● Keyboard shortcuts:\\x1b[0m');\n this.terminal.writeln(' \\x1b[36m⌘K\\x1b[0m / \\x1b[36mCtrl+K\\x1b[0m - Generate command suggestions');\n this.terminal.writeln(' \\x1b[36m↑\\x1b[0m / \\x1b[36m↓\\x1b[0m - Navigate command history');\n this.completeProcessing();\n }\n // machina情報コマンド\n else if (command === 'about') {\n ABOUT_MESSAGE.split('\\n').forEach(line => this.terminal.writeln(line));\n this.completeProcessing();\n }\n // 利用規約コマンド\n else if (command === 'terms') {\n this.terminal.writeln('\\x1b[1;32m● Opening Terms of Service...\\x1b[0m');\n setTimeout(() => {\n this.dispatch({ id: ActionId.NAVIGATE, payload: 'terms' });\n this.completeProcessing();\n }, 300);\n }\n // クリアコマンド\n else if (command === 'clear' || command === 'cls') {\n this.terminal.clear();\n this.terminal.scrollToBottom();\n this.completeProcessing();\n }\n // 不明なコマンド\n else {\n this.terminal.writeln(`\\x1b[1;31m● Command not found: ${command}\\x1b[0m`);\n this.terminal.writeln(' Type \"help\" for available commands.');\n this.completeProcessing();\n }\n }\n\n private completeProcessing() {\n this.isProcessing = false;\n this.statusText = 'Ready';\n this.cdr.markForCheck();\n this.terminal.writeln('');\n \n // 最新の出力が見えるようにスクロール\n this.terminal.scrollToBottom();\n \n // 入力フィールドにフォーカスを戻す\n setTimeout(() => {\n this.inputField()?.nativeElement?.focus();\n }, 100);\n }\n\n handleEnter(event: KeyboardEvent) {\n // Shift+EnterまたはCtrl+Enterの場合は改行を許可\n if (event.shiftKey || event.ctrlKey) {\n return; // デフォルト動作(改行)を許可\n }\n\n event.preventDefault();\n const actualCommand = this.currentInput.trim();\n\n if (actualCommand) {\n // コマンドをターミナルに表示(改行を含む場合は適切に処理)\n const displayCommand = actualCommand.split('\\n').map(line => '\\x1b[32m> \\x1b[0m' + line).join('\\r\\n');\n this.terminal.write(displayCommand + '\\r\\n');\n\n // 履歴に追加\n this.commandHistory.push(actualCommand);\n this.historyIndex = this.commandHistory.length;\n\n // コマンドを処理\n this.processCommand(actualCommand);\n\n // 入力を初期状態にリセット\n this.currentInput = '';\n\n // textareaの高さをリセット\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n textarea.style.height = 'auto';\n }\n }\n }\n \n navigateHistory(event: KeyboardEvent, direction: number) {\n event.preventDefault();\n\n if (direction === -1 && this.historyIndex > 0) {\n // 上矢印\n this.historyIndex--;\n this.currentInput = this.commandHistory[this.historyIndex];\n } else if (direction === 1) {\n // 下矢印\n if (this.historyIndex < this.commandHistory.length - 1) {\n this.historyIndex++;\n this.currentInput = this.commandHistory[this.historyIndex];\n } else {\n this.historyIndex = this.commandHistory.length;\n this.currentInput = '';\n }\n }\n }\n \n generateCommand(event?: KeyboardEvent) {\n if (event) {\n event.preventDefault();\n }\n \n this.terminal.writeln('');\n this.terminal.writeln('\\x1b[1;32m● Generating command suggestions...\\x1b[0m');\n \n setTimeout(() => {\n this.terminal.writeln('\\x1b[1;33m● Suggested commands:\\x1b[0m');\n this.terminal.writeln(' 1. \\x1b[36mauth --provider=google\\x1b[0m');\n this.terminal.writeln(' 2. \\x1b[36mlogin\\x1b[0m');\n this.terminal.writeln(' 3. \\x1b[36mhelp\\x1b[0m');\n this.terminal.writeln('');\n this.cdr.markForCheck();\n }, 500);\n }\n\n onNavAction(action: any) {\n if (action.id === 'close-side-app') {\n this.app.sideApp.collapse();\n return;\n }\n this.dispatch(action);\n }\n\n // 入力フィールドにフォーカスを設定\n focusInput() {\n this.inputField()?.nativeElement?.focus();\n }\n\n // textareaの高さを内容に合わせて調整\n adjustTextareaHeight() {\n const textarea = this.inputField()?.nativeElement;\n if (textarea) {\n // 一旦高さをリセット\n textarea.style.height = '20px';\n // scrollHeightを確認し、実際に必要な高さを設定\n const scrollHeight = textarea.scrollHeight;\n // パディングを考慮した最小高さ\n const minHeight = 44; // padding: 12px * 2 + line-height: 20px\n textarea.style.height = Math.max(minHeight, scrollHeight) + 'px';\n }\n }\n\n // キーダウンイベントのハンドラ(プレフィックス削除防止は不要になったためノーオペレーション)\n preventPrefixDeletion(_event: KeyboardEvent) {\n // No-op: prefix protection no longer needed\n }\n\n // 入力時の処理\n handleInput(event: Event) {\n const textarea = event.target as HTMLTextAreaElement;\n\n // 高さ調整(改行が含まれている場合のみ)\n if (this.currentInput.includes('\\n')) {\n this.adjustTextareaHeight();\n } else {\n // 1行の場合は固定高さ\n textarea.style.height = '44px';\n }\n\n // カーソル位置を更新\n this.updateCursorPosition();\n }\n\n // フォーカス時の処理\n handleFocus() {\n this.showCursor = true;\n this.updateCursorPosition();\n }\n\n // ブラー時の処理\n handleBlur() {\n this.showCursor = false;\n }\n\n // カーソル位置の更新\n updateCursorPosition() {\n const textarea = this.inputField()?.nativeElement;\n if (!textarea) return;\n \n const cursorPos = textarea.selectionStart;\n const textBeforeCursor = this.currentInput.substring(0, cursorPos);\n \n // 改行で分割\n const lines = textBeforeCursor.split('\\n');\n const currentLineIndex = lines.length - 1;\n const currentLineText = lines[currentLineIndex];\n \n // 仮のcanvasを使って現在の行のテキスト幅を計算\n const canvas = document.createElement('canvas');\n const context = canvas.getContext('2d');\n if (context) {\n context.font = '14px \"SF Mono\", Monaco, monospace';\n const textWidth = context.measureText(currentLineText).width;\n \n // カーソル位置を設定(パディング分を考慮)\n this.cursorLeft = 8 + textWidth; // 8px は textarea の左パディング\n \n // 垂直位置を調整(行数に基づいて、スクロール位置も考慮)\n const scrollTop = textarea.scrollTop;\n this.cursorTop = 12 + (currentLineIndex * 20) - scrollTop; // スクロール分を引く\n }\n }\n}\n\nexport function provideAgentTemplate(): Provider[] {\n return [\n provideComponent(EntranceTemplateStore, () => AgentTemplate),\n ];\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -187,8 +187,9 @@ class FlowTemplate extends NgAtomicComponent {
187
187
  edges = input([], ...(ngDevMode ? [{ debugName: "edges" }] : []));
188
188
  interactionMode = input('desktop', ...(ngDevMode ? [{ debugName: "interactionMode" }] : []));
189
189
  deleteKeyCode = input(null, ...(ngDevMode ? [{ debugName: "deleteKeyCode" }] : []));
190
- panOnDrag_ = computed(() => this.interactionMode() === 'touch' ? [2] : true, ...(ngDevMode ? [{ debugName: "panOnDrag_" }] : []));
190
+ panOnDrag_ = true;
191
191
  nodesDraggable_ = computed(() => this.interactionMode() !== 'touch', ...(ngDevMode ? [{ debugName: "nodesDraggable_" }] : []));
192
+ elementsSelectable_ = computed(() => this.interactionMode() !== 'touch', ...(ngDevMode ? [{ debugName: "elementsSelectable_" }] : []));
192
193
  defaultEdgeOptions = input({
193
194
  type: 'smoothstep',
194
195
  animated: true,
@@ -240,9 +241,9 @@ class FlowTemplate extends NgAtomicComponent {
240
241
  [defaultViewport]="{ x: 0, y: 0, zoom: 0.3 }"
241
242
  [nodesDraggable]="nodesDraggable_()"
242
243
  [nodesConnectable]="true"
243
- [elementsSelectable]="true"
244
+ [elementsSelectable]="elementsSelectable_()"
244
245
  [onlyRenderVisibleElements]="true"
245
- [panOnDrag]="panOnDrag_()"
246
+ [panOnDrag]="panOnDrag_"
246
247
  [panOnScroll]="true"
247
248
  [selectionOnDrag]="false"
248
249
  [zoomOnScroll]="true"
@@ -303,9 +304,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImpor
303
304
  [defaultViewport]="{ x: 0, y: 0, zoom: 0.3 }"
304
305
  [nodesDraggable]="nodesDraggable_()"
305
306
  [nodesConnectable]="true"
306
- [elementsSelectable]="true"
307
+ [elementsSelectable]="elementsSelectable_()"
307
308
  [onlyRenderVisibleElements]="true"
308
- [panOnDrag]="panOnDrag_()"
309
+ [panOnDrag]="panOnDrag_"
309
310
  [panOnScroll]="true"
310
311
  [selectionOnDrag]="false"
311
312
  [zoomOnScroll]="true"
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-templates-flow.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/templates/flow/nodes/group/group.node.ts","../../../../../packages/@xxmachina/components/src/lib/templates/flow/nodes/group/group.node.meta.ts","../../../../../packages/@xxmachina/components/src/lib/templates/flow/flow.template.ts","../../../../../packages/@xxmachina/components/src/lib/templates/flow/xxmachina-components-templates-flow.ts"],"sourcesContent":["import { Component, input, output } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { NgAtomicComponent } from '@ng-atomic/core';\n\nexport interface GroupNodeData {\n label: string;\n status?: string;\n assignee?: string;\n assigneeIcon?: string;\n childCount?: number;\n expanded?: boolean;\n}\n\nenum ActionId {\n EXPANDED_CHANGE = 'EXPANDED_CHANGE',\n}\n\n@Component({\n selector: 'flow-group-node',\n standalone: true,\n imports: [MatIconModule],\n template: `\n <div class=\"group-node\" [class]=\"'s-' + data()?.status\">\n <div class=\"group-header\">\n <span class=\"dot\"></span>\n <span class=\"status-badge\">{{ getStatusLabel(data()?.status) }}</span>\n @if (data()?.childCount) {\n <span class=\"child-count\">{{ data()?.childCount }}</span>\n }\n </div>\n <div class=\"group-title\">{{ data()?.label }}</div>\n @if (data()?.assignee) {\n <div class=\"group-footer\">\n <span class=\"assignee\">\n @if (data()?.assigneeIcon) {\n <img [src]=\"data()?.assigneeIcon\" class=\"assignee-avatar\" alt=\"\" />\n } @else {\n <mat-icon class=\"assignee-icon\">group</mat-icon>\n }\n {{ data()?.assignee }}\n </span>\n </div>\n }\n </div>\n `,\n styles: [`\n :host { display: block; width: 180px; }\n\n .group-node {\n background: #0a0a0a;\n border: 1px solid rgba(51, 51, 51, 0.8);\n border-radius: 10px;\n padding: 12px;\n font-family: 'SF Mono', Monaco, monospace;\n transition: all 0.2s ease;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5);\n }\n\n .group-node:hover {\n transform: translateY(-2px);\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6);\n border-color: rgba(80, 80, 80, 0.8);\n }\n\n .group-node.s-root { border-color: rgba(99, 102, 241, 0.6); }\n .group-node.s-completed { border-color: rgba(16, 185, 129, 0.6); }\n .group-node.s-in_progress { border-color: rgba(59, 130, 246, 0.6); }\n .group-node.s-pending { border-color: rgba(136, 136, 136, 0.6); }\n .group-node.s-sprint_planned { border-color: rgba(139, 92, 246, 0.6); }\n .group-node.s-needs_breakdown { border-color: rgba(245, 158, 11, 0.6); }\n\n .group-header {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 8px;\n }\n\n .dot {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n flex-shrink: 0;\n box-shadow: 0 0 10px currentColor;\n }\n\n .s-root .dot { background: #6366f1; color: #6366f1; }\n .s-completed .dot { background: #10b981; color: #10b981; }\n .s-in_progress .dot { background: #3b82f6; color: #3b82f6; animation: pulse 2s infinite; }\n .s-pending .dot { background: #888; color: #888; }\n .s-sprint_planned .dot { background: #8b5cf6; color: #8b5cf6; }\n .s-needs_breakdown .dot { background: #f59e0b; color: #f59e0b; }\n\n @keyframes pulse {\n 0%, 100% { box-shadow: 0 0 4px rgba(59, 130, 246, 0.4); }\n 50% { box-shadow: 0 0 12px rgba(59, 130, 246, 0.8); }\n }\n\n .status-badge {\n font-size: 10px;\n font-weight: 600;\n padding: 2px 8px;\n border-radius: 10px;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n }\n\n .s-root .status-badge { background: rgba(99, 102, 241, 0.2); color: #6366f1; }\n .s-completed .status-badge { background: rgba(16, 185, 129, 0.2); color: #10b981; }\n .s-in_progress .status-badge { background: rgba(59, 130, 246, 0.2); color: #3b82f6; }\n .s-pending .status-badge { background: rgba(136, 136, 136, 0.2); color: #888; }\n .s-sprint_planned .status-badge { background: rgba(139, 92, 246, 0.2); color: #8b5cf6; }\n .s-needs_breakdown .status-badge { background: rgba(245, 158, 11, 0.2); color: #f59e0b; }\n\n .child-count {\n margin-left: auto;\n font-size: 11px;\n font-weight: 600;\n color: #888;\n background: rgba(255, 255, 255, 0.05);\n padding: 2px 8px;\n border-radius: 10px;\n }\n\n .group-title {\n font-size: 14px;\n font-weight: 500;\n color: #e0e0e0;\n line-height: 1.4;\n margin-bottom: 8px;\n }\n\n .group-footer {\n padding-top: 8px;\n border-top: 1px solid rgba(51, 51, 51, 0.5);\n }\n\n .assignee {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n font-size: 11px;\n color: #888;\n font-weight: 500;\n }\n\n .assignee-icon {\n font-size: 14px;\n width: 14px;\n height: 14px;\n color: #666;\n }\n\n .assignee-avatar {\n width: 18px;\n height: 18px;\n border-radius: 50%;\n object-fit: cover;\n border: 1px solid rgba(255, 255, 255, 0.1);\n }\n `]\n})\nexport class GroupNodeComponent extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n\n readonly data = input<GroupNodeData>();\n readonly expandedChange = output<boolean>();\n\n getStatusLabel(status?: string): string {\n const labels: Record<string, string> = {\n 'root': 'ROOT',\n 'in_progress': 'WIP',\n 'completed': 'DONE',\n 'pending': 'TODO',\n 'sprint_planned': 'PLAN',\n 'needs_breakdown': 'BREAK',\n 'under_consideration': 'REVIEW',\n 'abandoned': 'DROP'\n };\n return labels[status || ''] || status?.toUpperCase() || '';\n }\n\n onExpandedChange(expanded: boolean): void {\n this.dispatch({id: ActionId.EXPANDED_CHANGE, payload: { expanded, data: this.data() }});\n }\n}\n","import { Type } from '@angular/core';\nimport { GroupNodeComponent, GroupNodeData } from './group.node';\n\ninterface ComponentMeta<T = unknown> {\n title: string;\n group?: 'atoms' | 'molecules' | 'organisms' | 'templates' | 'presenters' | 'extras';\n component: Type<T>;\n inputs?: Record<string, unknown>;\n viewport?: { width?: number; height?: number };\n variants?: { name: string; inputs: Record<string, unknown> }[];\n}\n\nexport const groupNodeMeta: ComponentMeta = {\n title: 'Flow Group Node',\n group: 'molecules',\n component: GroupNodeComponent,\n viewport: { width: 280, height: 180 },\n variants: [\n {\n name: 'root',\n inputs: {\n data: {\n label: 'Project Tasks',\n status: 'root',\n childCount: 12,\n } as GroupNodeData,\n },\n },\n {\n name: 'in progress',\n inputs: {\n data: {\n label: 'Sprint 1 Tasks',\n status: 'in_progress',\n assignee: 'Team Alpha',\n childCount: 5,\n } as GroupNodeData,\n },\n },\n {\n name: 'completed',\n inputs: {\n data: {\n label: 'Completed Features',\n status: 'completed',\n assignee: 'Team Beta',\n childCount: 8,\n } as GroupNodeData,\n },\n },\n {\n name: 'pending',\n inputs: {\n data: {\n label: 'Backlog Items',\n status: 'pending',\n childCount: 15,\n } as GroupNodeData,\n },\n },\n {\n name: 'sprint planned',\n inputs: {\n data: {\n label: 'Sprint 2 Planned',\n status: 'sprint_planned',\n assignee: 'Team Gamma',\n childCount: 6,\n } as GroupNodeData,\n },\n },\n {\n name: 'with avatar',\n inputs: {\n data: {\n label: 'Design Review',\n status: 'in_progress',\n assignee: 'Design Team',\n assigneeIcon: 'https://api.dicebear.com/7.x/avataaars/svg?seed=Team',\n childCount: 3,\n } as GroupNodeData,\n },\n },\n ],\n};\n","import { Component, computed, Directive, input, output, Type } from '@angular/core';\nimport { ReactFlowComponent, FlowNodeDirective } from '@xxmachina/components/extras/flow';\nimport { Node, Edge, NodeChange, EdgeChange, Connection, MarkerType, Viewport, ReactFlowInstance } from 'reactflow';\nimport { GroupNodeComponent } from './nodes/group';\nimport { TaskNodeComponent } from './nodes/task';\nimport { Effect, InjectableComponent, NgAtomicComponent, provideComponent, TokenizedType } from '@ng-atomic/core';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\n\nexport type FlowInteractionMode = 'desktop' | 'touch';\n\nenum ActionId {\n EXPANDED_CHANGE = '[FlowTemplate] EXPANDED_CHANGE',\n}\n\n@TokenizedType()\n@Directive({ standalone: true, selector: 'flow-node' })\nexport class FlowNodeStore<T> extends InjectableComponent {\n static provideComponent(loader: () => Promise<Type<any>> | Type<any>) {\n return provideComponent(FlowNodeStore, loader);\n }\n\n readonly data = input<T>();\n}\n\n@Component({\n selector: 'templates-flow',\n standalone: true,\n imports: [\n ReactFlowComponent,\n FlowNodeDirective,\n GroupNodeComponent,\n FlowNodeStore,\n ScrollFrame,\n],\n template: `\n <frames-scroll>\n <ng-content select=\"[top]\" top />\n <machina-react-flow\n [nodes]=\"nodes()\"\n [edges]=\"edges()\"\n [deleteKeyCode]=\"deleteKeyCode()\"\n [defaultEdgeOptions]=\"defaultEdgeOptions()\"\n [enableTouchPassthrough]=\"interactionMode() === 'touch'\"\n [minZoom]=\"0.05\"\n [maxZoom]=\"2\"\n [fitView]=\"true\"\n [fitViewOptions]=\"{ padding: 0.1, minZoom: 0.1, maxZoom: 0.5 }\"\n [defaultViewport]=\"{ x: 0, y: 0, zoom: 0.3 }\"\n [nodesDraggable]=\"nodesDraggable_()\"\n [nodesConnectable]=\"true\"\n [elementsSelectable]=\"true\"\n [onlyRenderVisibleElements]=\"true\"\n [panOnDrag]=\"panOnDrag_()\"\n [panOnScroll]=\"true\"\n [selectionOnDrag]=\"false\"\n [zoomOnScroll]=\"true\"\n [zoomOnPinch]=\"true\"\n [zoomOnDoubleClick]=\"true\"\n (action)=\"dispatch($event)\"\n (onNodeClick)=\"nodeClick.emit($event)\"\n (onNodesChange)=\"nodesChange.emit($event)\"\n (onNodeDragStop)=\"nodeDragStop.emit($event)\"\n (onEdgesChange)=\"edgesChange.emit($event)\"\n (onConnect)=\"connect.emit($event)\"\n (onNodeResizeEnd)=\"nodeResizeEnd.emit($event)\"\n (onMove)=\"onViewportMove($event)\"\n (onMoveEnd)=\"onViewportMove($event)\"\n (onInit)=\"onFlowInit($event)\"\n >\n <flow-node injectable\n *flowNode=\"'task'; let data\"\n [data]=\"data\"\n (action)=\"dispatch($event)\"\n />\n <flow-group-node\n *flowNode=\"'group'; let data; let node\"\n [data]=\"data\"\n (action)=\"dispatch($event)\"\n />\n </machina-react-flow>\n </frames-scroll>\n `,\n styleUrl: './flow.template.scss',\n})\nexport class FlowTemplate extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n\n readonly nodes = input<Node[]>([]);\n readonly edges = input<Edge[]>([]);\n readonly interactionMode = input<FlowInteractionMode>('desktop');\n readonly deleteKeyCode = input<string | null>(null);\n protected readonly panOnDrag_ = computed(() => this.interactionMode() === 'touch' ? [2] : true);\n protected readonly nodesDraggable_ = computed(() => this.interactionMode() !== 'touch');\n readonly defaultEdgeOptions = input({\n type: 'smoothstep',\n animated: true,\n markerEnd: {\n type: MarkerType.ArrowClosed,\n },\n style: {\n stroke: '#333',\n strokeWidth: 2,\n }\n });\n\n readonly nodeClick = output<[MouseEvent, Node]>();\n readonly nodesChange = output<NodeChange[]>();\n readonly nodeDragStop = output<[MouseEvent, Node, Node[]]>();\n readonly edgesChange = output<EdgeChange[]>();\n readonly connect = output<Connection>();\n readonly nodeData = output<[string, any]>();\n readonly nodeResizeEnd = output<{ nodeId: string; width: number; height: number }>();\n readonly viewportChange = output<Viewport>();\n\n protected onViewportMove([_event, viewport]: [MouseEvent, Viewport]): void {\n this.viewportChange.emit(viewport);\n }\n\n protected onFlowInit([instance]: [ReactFlowInstance]): void {\n requestAnimationFrame(() => {\n const viewport = instance.getViewport();\n this.viewportChange.emit(viewport);\n });\n }\n\n @Effect(GroupNodeComponent.ActionId.EXPANDED_CHANGE)\n protected onGroupExpandedChange(payload: { expanded: boolean, data: any }): void {\n const nodeId = payload.data?.task?.id;\n if (nodeId) {\n this.dispatch({ id: ActionId.EXPANDED_CHANGE, payload: { nodeId, expanded: payload.expanded } });\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["ActionId"],"mappings":"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"}
1
+ {"version":3,"file":"xxmachina-components-templates-flow.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/templates/flow/nodes/group/group.node.ts","../../../../../packages/@xxmachina/components/src/lib/templates/flow/nodes/group/group.node.meta.ts","../../../../../packages/@xxmachina/components/src/lib/templates/flow/flow.template.ts","../../../../../packages/@xxmachina/components/src/lib/templates/flow/xxmachina-components-templates-flow.ts"],"sourcesContent":["import { Component, input, output } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { NgAtomicComponent } from '@ng-atomic/core';\n\nexport interface GroupNodeData {\n label: string;\n status?: string;\n assignee?: string;\n assigneeIcon?: string;\n childCount?: number;\n expanded?: boolean;\n}\n\nenum ActionId {\n EXPANDED_CHANGE = 'EXPANDED_CHANGE',\n}\n\n@Component({\n selector: 'flow-group-node',\n standalone: true,\n imports: [MatIconModule],\n template: `\n <div class=\"group-node\" [class]=\"'s-' + data()?.status\">\n <div class=\"group-header\">\n <span class=\"dot\"></span>\n <span class=\"status-badge\">{{ getStatusLabel(data()?.status) }}</span>\n @if (data()?.childCount) {\n <span class=\"child-count\">{{ data()?.childCount }}</span>\n }\n </div>\n <div class=\"group-title\">{{ data()?.label }}</div>\n @if (data()?.assignee) {\n <div class=\"group-footer\">\n <span class=\"assignee\">\n @if (data()?.assigneeIcon) {\n <img [src]=\"data()?.assigneeIcon\" class=\"assignee-avatar\" alt=\"\" />\n } @else {\n <mat-icon class=\"assignee-icon\">group</mat-icon>\n }\n {{ data()?.assignee }}\n </span>\n </div>\n }\n </div>\n `,\n styles: [`\n :host { display: block; width: 180px; }\n\n .group-node {\n background: #0a0a0a;\n border: 1px solid rgba(51, 51, 51, 0.8);\n border-radius: 10px;\n padding: 12px;\n font-family: 'SF Mono', Monaco, monospace;\n transition: all 0.2s ease;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5);\n }\n\n .group-node:hover {\n transform: translateY(-2px);\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6);\n border-color: rgba(80, 80, 80, 0.8);\n }\n\n .group-node.s-root { border-color: rgba(99, 102, 241, 0.6); }\n .group-node.s-completed { border-color: rgba(16, 185, 129, 0.6); }\n .group-node.s-in_progress { border-color: rgba(59, 130, 246, 0.6); }\n .group-node.s-pending { border-color: rgba(136, 136, 136, 0.6); }\n .group-node.s-sprint_planned { border-color: rgba(139, 92, 246, 0.6); }\n .group-node.s-needs_breakdown { border-color: rgba(245, 158, 11, 0.6); }\n\n .group-header {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 8px;\n }\n\n .dot {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n flex-shrink: 0;\n box-shadow: 0 0 10px currentColor;\n }\n\n .s-root .dot { background: #6366f1; color: #6366f1; }\n .s-completed .dot { background: #10b981; color: #10b981; }\n .s-in_progress .dot { background: #3b82f6; color: #3b82f6; animation: pulse 2s infinite; }\n .s-pending .dot { background: #888; color: #888; }\n .s-sprint_planned .dot { background: #8b5cf6; color: #8b5cf6; }\n .s-needs_breakdown .dot { background: #f59e0b; color: #f59e0b; }\n\n @keyframes pulse {\n 0%, 100% { box-shadow: 0 0 4px rgba(59, 130, 246, 0.4); }\n 50% { box-shadow: 0 0 12px rgba(59, 130, 246, 0.8); }\n }\n\n .status-badge {\n font-size: 10px;\n font-weight: 600;\n padding: 2px 8px;\n border-radius: 10px;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n }\n\n .s-root .status-badge { background: rgba(99, 102, 241, 0.2); color: #6366f1; }\n .s-completed .status-badge { background: rgba(16, 185, 129, 0.2); color: #10b981; }\n .s-in_progress .status-badge { background: rgba(59, 130, 246, 0.2); color: #3b82f6; }\n .s-pending .status-badge { background: rgba(136, 136, 136, 0.2); color: #888; }\n .s-sprint_planned .status-badge { background: rgba(139, 92, 246, 0.2); color: #8b5cf6; }\n .s-needs_breakdown .status-badge { background: rgba(245, 158, 11, 0.2); color: #f59e0b; }\n\n .child-count {\n margin-left: auto;\n font-size: 11px;\n font-weight: 600;\n color: #888;\n background: rgba(255, 255, 255, 0.05);\n padding: 2px 8px;\n border-radius: 10px;\n }\n\n .group-title {\n font-size: 14px;\n font-weight: 500;\n color: #e0e0e0;\n line-height: 1.4;\n margin-bottom: 8px;\n }\n\n .group-footer {\n padding-top: 8px;\n border-top: 1px solid rgba(51, 51, 51, 0.5);\n }\n\n .assignee {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n font-size: 11px;\n color: #888;\n font-weight: 500;\n }\n\n .assignee-icon {\n font-size: 14px;\n width: 14px;\n height: 14px;\n color: #666;\n }\n\n .assignee-avatar {\n width: 18px;\n height: 18px;\n border-radius: 50%;\n object-fit: cover;\n border: 1px solid rgba(255, 255, 255, 0.1);\n }\n `]\n})\nexport class GroupNodeComponent extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n\n readonly data = input<GroupNodeData>();\n readonly expandedChange = output<boolean>();\n\n getStatusLabel(status?: string): string {\n const labels: Record<string, string> = {\n 'root': 'ROOT',\n 'in_progress': 'WIP',\n 'completed': 'DONE',\n 'pending': 'TODO',\n 'sprint_planned': 'PLAN',\n 'needs_breakdown': 'BREAK',\n 'under_consideration': 'REVIEW',\n 'abandoned': 'DROP'\n };\n return labels[status || ''] || status?.toUpperCase() || '';\n }\n\n onExpandedChange(expanded: boolean): void {\n this.dispatch({id: ActionId.EXPANDED_CHANGE, payload: { expanded, data: this.data() }});\n }\n}\n","import { Type } from '@angular/core';\nimport { GroupNodeComponent, GroupNodeData } from './group.node';\n\ninterface ComponentMeta<T = unknown> {\n title: string;\n group?: 'atoms' | 'molecules' | 'organisms' | 'templates' | 'presenters' | 'extras';\n component: Type<T>;\n inputs?: Record<string, unknown>;\n viewport?: { width?: number; height?: number };\n variants?: { name: string; inputs: Record<string, unknown> }[];\n}\n\nexport const groupNodeMeta: ComponentMeta = {\n title: 'Flow Group Node',\n group: 'molecules',\n component: GroupNodeComponent,\n viewport: { width: 280, height: 180 },\n variants: [\n {\n name: 'root',\n inputs: {\n data: {\n label: 'Project Tasks',\n status: 'root',\n childCount: 12,\n } as GroupNodeData,\n },\n },\n {\n name: 'in progress',\n inputs: {\n data: {\n label: 'Sprint 1 Tasks',\n status: 'in_progress',\n assignee: 'Team Alpha',\n childCount: 5,\n } as GroupNodeData,\n },\n },\n {\n name: 'completed',\n inputs: {\n data: {\n label: 'Completed Features',\n status: 'completed',\n assignee: 'Team Beta',\n childCount: 8,\n } as GroupNodeData,\n },\n },\n {\n name: 'pending',\n inputs: {\n data: {\n label: 'Backlog Items',\n status: 'pending',\n childCount: 15,\n } as GroupNodeData,\n },\n },\n {\n name: 'sprint planned',\n inputs: {\n data: {\n label: 'Sprint 2 Planned',\n status: 'sprint_planned',\n assignee: 'Team Gamma',\n childCount: 6,\n } as GroupNodeData,\n },\n },\n {\n name: 'with avatar',\n inputs: {\n data: {\n label: 'Design Review',\n status: 'in_progress',\n assignee: 'Design Team',\n assigneeIcon: 'https://api.dicebear.com/7.x/avataaars/svg?seed=Team',\n childCount: 3,\n } as GroupNodeData,\n },\n },\n ],\n};\n","import { Component, computed, Directive, input, output, Type } from '@angular/core';\nimport { ReactFlowComponent, FlowNodeDirective } from '@xxmachina/components/extras/flow';\nimport { Node, Edge, NodeChange, EdgeChange, Connection, MarkerType, Viewport, ReactFlowInstance } from 'reactflow';\nimport { GroupNodeComponent } from './nodes/group';\nimport { TaskNodeComponent } from './nodes/task';\nimport { Effect, InjectableComponent, NgAtomicComponent, provideComponent, TokenizedType } from '@ng-atomic/core';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\n\nexport type FlowInteractionMode = 'desktop' | 'touch';\n\nenum ActionId {\n EXPANDED_CHANGE = '[FlowTemplate] EXPANDED_CHANGE',\n}\n\n@TokenizedType()\n@Directive({ standalone: true, selector: 'flow-node' })\nexport class FlowNodeStore<T> extends InjectableComponent {\n static provideComponent(loader: () => Promise<Type<any>> | Type<any>) {\n return provideComponent(FlowNodeStore, loader);\n }\n\n readonly data = input<T>();\n}\n\n@Component({\n selector: 'templates-flow',\n standalone: true,\n imports: [\n ReactFlowComponent,\n FlowNodeDirective,\n GroupNodeComponent,\n FlowNodeStore,\n ScrollFrame,\n],\n template: `\n <frames-scroll>\n <ng-content select=\"[top]\" top />\n <machina-react-flow\n [nodes]=\"nodes()\"\n [edges]=\"edges()\"\n [deleteKeyCode]=\"deleteKeyCode()\"\n [defaultEdgeOptions]=\"defaultEdgeOptions()\"\n [enableTouchPassthrough]=\"interactionMode() === 'touch'\"\n [minZoom]=\"0.05\"\n [maxZoom]=\"2\"\n [fitView]=\"true\"\n [fitViewOptions]=\"{ padding: 0.1, minZoom: 0.1, maxZoom: 0.5 }\"\n [defaultViewport]=\"{ x: 0, y: 0, zoom: 0.3 }\"\n [nodesDraggable]=\"nodesDraggable_()\"\n [nodesConnectable]=\"true\"\n [elementsSelectable]=\"elementsSelectable_()\"\n [onlyRenderVisibleElements]=\"true\"\n [panOnDrag]=\"panOnDrag_\"\n [panOnScroll]=\"true\"\n [selectionOnDrag]=\"false\"\n [zoomOnScroll]=\"true\"\n [zoomOnPinch]=\"true\"\n [zoomOnDoubleClick]=\"true\"\n (action)=\"dispatch($event)\"\n (onNodeClick)=\"nodeClick.emit($event)\"\n (onNodesChange)=\"nodesChange.emit($event)\"\n (onNodeDragStop)=\"nodeDragStop.emit($event)\"\n (onEdgesChange)=\"edgesChange.emit($event)\"\n (onConnect)=\"connect.emit($event)\"\n (onNodeResizeEnd)=\"nodeResizeEnd.emit($event)\"\n (onMove)=\"onViewportMove($event)\"\n (onMoveEnd)=\"onViewportMove($event)\"\n (onInit)=\"onFlowInit($event)\"\n >\n <flow-node injectable\n *flowNode=\"'task'; let data\"\n [data]=\"data\"\n (action)=\"dispatch($event)\"\n />\n <flow-group-node\n *flowNode=\"'group'; let data; let node\"\n [data]=\"data\"\n (action)=\"dispatch($event)\"\n />\n </machina-react-flow>\n </frames-scroll>\n `,\n styleUrl: './flow.template.scss',\n})\nexport class FlowTemplate extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n\n readonly nodes = input<Node[]>([]);\n readonly edges = input<Edge[]>([]);\n readonly interactionMode = input<FlowInteractionMode>('desktop');\n readonly deleteKeyCode = input<string | null>(null);\n protected readonly panOnDrag_ = true;\n protected readonly nodesDraggable_ = computed(() => this.interactionMode() !== 'touch');\n protected readonly elementsSelectable_ = computed(() => this.interactionMode() !== 'touch');\n readonly defaultEdgeOptions = input({\n type: 'smoothstep',\n animated: true,\n markerEnd: {\n type: MarkerType.ArrowClosed,\n },\n style: {\n stroke: '#333',\n strokeWidth: 2,\n }\n });\n\n readonly nodeClick = output<[MouseEvent, Node]>();\n readonly nodesChange = output<NodeChange[]>();\n readonly nodeDragStop = output<[MouseEvent, Node, Node[]]>();\n readonly edgesChange = output<EdgeChange[]>();\n readonly connect = output<Connection>();\n readonly nodeData = output<[string, any]>();\n readonly nodeResizeEnd = output<{ nodeId: string; width: number; height: number }>();\n readonly viewportChange = output<Viewport>();\n\n protected onViewportMove([_event, viewport]: [MouseEvent, Viewport]): void {\n this.viewportChange.emit(viewport);\n }\n\n protected onFlowInit([instance]: [ReactFlowInstance]): void {\n requestAnimationFrame(() => {\n const viewport = instance.getViewport();\n this.viewportChange.emit(viewport);\n });\n }\n\n @Effect(GroupNodeComponent.ActionId.EXPANDED_CHANGE)\n protected onGroupExpandedChange(payload: { expanded: boolean, data: any }): void {\n const nodeId = payload.data?.task?.id;\n if (nodeId) {\n this.dispatch({ id: ActionId.EXPANDED_CHANGE, payload: { nodeId, expanded: payload.expanded } });\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["ActionId"],"mappings":"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"}
@@ -234,7 +234,7 @@ class SessionNavigatorOrganism extends NgAtomicComponent {
234
234
  }
235
235
  </div>
236
236
  </mat-toolbar>
237
- `, isInline: true, styles: [":host{display:block;--text: #e0e0e0;--text-SCOPED-IN-session-navigator-4n2S: var(--text);--sys: #888;--sys-SCOPED-IN-session-navigator-4n2S: var(--sys);--border: rgba(51, 51, 51, .5);--border-SCOPED-IN-session-navigator-4n2S: var(--border);--primary-color: #0f0f11;--primary-color-SCOPED-IN-session-navigator-4n2S: var(--primary-color);--on-primary-color: #e0e0e0;--on-primary-color-SCOPED-IN-session-navigator-4n2S: var(--on-primary-color);--secondary-color: #888;--secondary-color-SCOPED-IN-session-navigator-4n2S: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-session-navigator-4n2S: var(--on-secondary-color);--background-color: #0f0f11;--background-color-SCOPED-IN-session-navigator-4n2S: var(--background-color);--on-background-color: #e0e0e0;--on-background-color-SCOPED-IN-session-navigator-4n2S: var(--on-background-color)}:host{display:block;width:100%;height:56px}:host mat-toolbar{display:flex;width:100%;height:100%;justify-content:space-between;align-items:center;overflow:hidden;transition:background .5s ease-in-out;background-color:var(--primary-color-SCOPED-IN-session-navigator-4n2S);color:var(--on-primary-color-SCOPED-IN-session-navigator-4n2S);border-bottom:1px solid var(--border-SCOPED-IN-session-navigator-4n2S)!important;font-family:SF Mono,Monaco,monospace!important;font-size:12px!important;--mat-toolbar-title-text-size: 12px !important;--mat-sys-title-large-size: 12px !important}:host mat-toolbar>div:first-child,:host mat-toolbar>div:last-child{flex:0 0 auto}:host mat-toolbar>div:nth-child(2){flex:1 1 auto;display:flex;justify-content:flex-start;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:host mat-toolbar *:not(.mat-icon){font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar span,:host mat-toolbar div,:host mat-toolbar h1,:host mat-toolbar h2,:host mat-toolbar h3,:host mat-toolbar h4,:host mat-toolbar h5,:host mat-toolbar h6{font-size:12px!important;font-family:SF Mono,Monaco,monospace!important;color:var(--text-SCOPED-IN-session-navigator-4n2S)!important}:host mat-toolbar .mat-button{color:var(--sys-SCOPED-IN-session-navigator-4n2S)!important;font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar .mat-button:hover{color:var(--text-SCOPED-IN-session-navigator-4n2S)!important}:host mat-toolbar .mat-icon-button{color:var(--sys-SCOPED-IN-session-navigator-4n2S)!important;opacity:.7}:host mat-toolbar .mat-icon-button:hover{color:var(--text-SCOPED-IN-session-navigator-4n2S)!important;opacity:1}:host mat-toolbar .mat-icon-button .mat-icon{font-family:Material Icons!important;font-size:24px!important}:host div{display:flex;justify-content:center;align-items:center;line-height:1}:host atoms-menu-button{display:flex;align-items:center;line-height:1}@media(prefers-color-scheme:light){:host{--text: #333;--text-SCOPED-IN-session-navigator-4n2S: var(--text);--sys: #666;--sys-SCOPED-IN-session-navigator-4n2S: var(--sys);--border: #ddd;--border-SCOPED-IN-session-navigator-4n2S: var(--border)}}@media(max-width:600px){:host mat-toolbar span{font-size:11px!important}}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i1$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: MenuButtonAtomStore, selector: "atoms-menu-button, atoms-smart-menu-button", inputs: ["actions", "type", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
237
+ `, isInline: true, styles: [":host{display:block;--text: #e0e0e0;--text-SCOPED-IN-session-navigator-Bcyk: var(--text);--sys: #888;--sys-SCOPED-IN-session-navigator-Bcyk: var(--sys);--border: rgba(51, 51, 51, .5);--border-SCOPED-IN-session-navigator-Bcyk: var(--border);--primary-color: #0f0f11;--primary-color-SCOPED-IN-session-navigator-Bcyk: var(--primary-color);--on-primary-color: #e0e0e0;--on-primary-color-SCOPED-IN-session-navigator-Bcyk: var(--on-primary-color);--secondary-color: #888;--secondary-color-SCOPED-IN-session-navigator-Bcyk: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-session-navigator-Bcyk: var(--on-secondary-color);--background-color: #0f0f11;--background-color-SCOPED-IN-session-navigator-Bcyk: var(--background-color);--on-background-color: #e0e0e0;--on-background-color-SCOPED-IN-session-navigator-Bcyk: var(--on-background-color)}:host{display:block;width:100%;height:56px}:host mat-toolbar{display:flex;width:100%;height:100%;padding:0!important;justify-content:space-between;align-items:center;overflow:hidden;transition:background .5s ease-in-out;background-color:var(--primary-color-SCOPED-IN-session-navigator-Bcyk);color:var(--on-primary-color-SCOPED-IN-session-navigator-Bcyk);border-bottom:1px solid var(--border-SCOPED-IN-session-navigator-Bcyk)!important;font-family:SF Mono,Monaco,monospace!important;font-size:12px!important;--mat-toolbar-title-text-size: 12px !important;--mat-sys-title-large-size: 12px !important}:host mat-toolbar>div:first-child,:host mat-toolbar>div:last-child{flex:0 0 auto}:host mat-toolbar>div:nth-child(2){flex:1 1 auto;display:flex;justify-content:flex-start;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:host mat-toolbar *:not(.mat-icon){font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar span,:host mat-toolbar div,:host mat-toolbar h1,:host mat-toolbar h2,:host mat-toolbar h3,:host mat-toolbar h4,:host mat-toolbar h5,:host mat-toolbar h6{font-size:12px!important;font-family:SF Mono,Monaco,monospace!important;color:var(--text-SCOPED-IN-session-navigator-Bcyk)!important}:host mat-toolbar .mat-button{color:var(--sys-SCOPED-IN-session-navigator-Bcyk)!important;font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar .mat-button:hover{color:var(--text-SCOPED-IN-session-navigator-Bcyk)!important}:host mat-toolbar .mat-icon-button{color:var(--sys-SCOPED-IN-session-navigator-Bcyk)!important;opacity:.7}:host mat-toolbar .mat-icon-button:hover{color:var(--text-SCOPED-IN-session-navigator-Bcyk)!important;opacity:1}:host mat-toolbar .mat-icon-button .mat-icon{font-family:Material Icons!important;font-size:24px!important}:host div{display:flex;justify-content:center;align-items:center;line-height:1}:host atoms-menu-button{display:flex;align-items:center;line-height:1}@media(prefers-color-scheme:light){:host{--text: #333;--text-SCOPED-IN-session-navigator-Bcyk: var(--text);--sys: #666;--sys-SCOPED-IN-session-navigator-Bcyk: var(--sys);--border: #ddd;--border-SCOPED-IN-session-navigator-Bcyk: var(--border)}}@media(max-width:600px){:host mat-toolbar span{font-size:11px!important}}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i1$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: MenuButtonAtomStore, selector: "atoms-menu-button, atoms-smart-menu-button", inputs: ["actions", "type", "action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
238
238
  }
239
239
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: SessionNavigatorOrganism, decorators: [{
240
240
  type: Component,
@@ -268,7 +268,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImpor
268
268
  directive: SessionNavigatorOrganismStore,
269
269
  inputs: ['startActions', 'endActions', 'title'],
270
270
  }
271
- ], styles: [":host{display:block;--text: #e0e0e0;--text-SCOPED-IN-session-navigator-4n2S: var(--text);--sys: #888;--sys-SCOPED-IN-session-navigator-4n2S: var(--sys);--border: rgba(51, 51, 51, .5);--border-SCOPED-IN-session-navigator-4n2S: var(--border);--primary-color: #0f0f11;--primary-color-SCOPED-IN-session-navigator-4n2S: var(--primary-color);--on-primary-color: #e0e0e0;--on-primary-color-SCOPED-IN-session-navigator-4n2S: var(--on-primary-color);--secondary-color: #888;--secondary-color-SCOPED-IN-session-navigator-4n2S: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-session-navigator-4n2S: var(--on-secondary-color);--background-color: #0f0f11;--background-color-SCOPED-IN-session-navigator-4n2S: var(--background-color);--on-background-color: #e0e0e0;--on-background-color-SCOPED-IN-session-navigator-4n2S: var(--on-background-color)}:host{display:block;width:100%;height:56px}:host mat-toolbar{display:flex;width:100%;height:100%;justify-content:space-between;align-items:center;overflow:hidden;transition:background .5s ease-in-out;background-color:var(--primary-color-SCOPED-IN-session-navigator-4n2S);color:var(--on-primary-color-SCOPED-IN-session-navigator-4n2S);border-bottom:1px solid var(--border-SCOPED-IN-session-navigator-4n2S)!important;font-family:SF Mono,Monaco,monospace!important;font-size:12px!important;--mat-toolbar-title-text-size: 12px !important;--mat-sys-title-large-size: 12px !important}:host mat-toolbar>div:first-child,:host mat-toolbar>div:last-child{flex:0 0 auto}:host mat-toolbar>div:nth-child(2){flex:1 1 auto;display:flex;justify-content:flex-start;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:host mat-toolbar *:not(.mat-icon){font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar span,:host mat-toolbar div,:host mat-toolbar h1,:host mat-toolbar h2,:host mat-toolbar h3,:host mat-toolbar h4,:host mat-toolbar h5,:host mat-toolbar h6{font-size:12px!important;font-family:SF Mono,Monaco,monospace!important;color:var(--text-SCOPED-IN-session-navigator-4n2S)!important}:host mat-toolbar .mat-button{color:var(--sys-SCOPED-IN-session-navigator-4n2S)!important;font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar .mat-button:hover{color:var(--text-SCOPED-IN-session-navigator-4n2S)!important}:host mat-toolbar .mat-icon-button{color:var(--sys-SCOPED-IN-session-navigator-4n2S)!important;opacity:.7}:host mat-toolbar .mat-icon-button:hover{color:var(--text-SCOPED-IN-session-navigator-4n2S)!important;opacity:1}:host mat-toolbar .mat-icon-button .mat-icon{font-family:Material Icons!important;font-size:24px!important}:host div{display:flex;justify-content:center;align-items:center;line-height:1}:host atoms-menu-button{display:flex;align-items:center;line-height:1}@media(prefers-color-scheme:light){:host{--text: #333;--text-SCOPED-IN-session-navigator-4n2S: var(--text);--sys: #666;--sys-SCOPED-IN-session-navigator-4n2S: var(--sys);--border: #ddd;--border-SCOPED-IN-session-navigator-4n2S: var(--border)}}@media(max-width:600px){:host mat-toolbar span{font-size:11px!important}}\n"] }]
271
+ ], styles: [":host{display:block;--text: #e0e0e0;--text-SCOPED-IN-session-navigator-Bcyk: var(--text);--sys: #888;--sys-SCOPED-IN-session-navigator-Bcyk: var(--sys);--border: rgba(51, 51, 51, .5);--border-SCOPED-IN-session-navigator-Bcyk: var(--border);--primary-color: #0f0f11;--primary-color-SCOPED-IN-session-navigator-Bcyk: var(--primary-color);--on-primary-color: #e0e0e0;--on-primary-color-SCOPED-IN-session-navigator-Bcyk: var(--on-primary-color);--secondary-color: #888;--secondary-color-SCOPED-IN-session-navigator-Bcyk: var(--secondary-color);--on-secondary-color: #f0f0f0;--on-secondary-color-SCOPED-IN-session-navigator-Bcyk: var(--on-secondary-color);--background-color: #0f0f11;--background-color-SCOPED-IN-session-navigator-Bcyk: var(--background-color);--on-background-color: #e0e0e0;--on-background-color-SCOPED-IN-session-navigator-Bcyk: var(--on-background-color)}:host{display:block;width:100%;height:56px}:host mat-toolbar{display:flex;width:100%;height:100%;padding:0!important;justify-content:space-between;align-items:center;overflow:hidden;transition:background .5s ease-in-out;background-color:var(--primary-color-SCOPED-IN-session-navigator-Bcyk);color:var(--on-primary-color-SCOPED-IN-session-navigator-Bcyk);border-bottom:1px solid var(--border-SCOPED-IN-session-navigator-Bcyk)!important;font-family:SF Mono,Monaco,monospace!important;font-size:12px!important;--mat-toolbar-title-text-size: 12px !important;--mat-sys-title-large-size: 12px !important}:host mat-toolbar>div:first-child,:host mat-toolbar>div:last-child{flex:0 0 auto}:host mat-toolbar>div:nth-child(2){flex:1 1 auto;display:flex;justify-content:flex-start;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:host mat-toolbar *:not(.mat-icon){font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar span,:host mat-toolbar div,:host mat-toolbar h1,:host mat-toolbar h2,:host mat-toolbar h3,:host mat-toolbar h4,:host mat-toolbar h5,:host mat-toolbar h6{font-size:12px!important;font-family:SF Mono,Monaco,monospace!important;color:var(--text-SCOPED-IN-session-navigator-Bcyk)!important}:host mat-toolbar .mat-button{color:var(--sys-SCOPED-IN-session-navigator-Bcyk)!important;font-family:SF Mono,Monaco,monospace!important}:host mat-toolbar .mat-button:hover{color:var(--text-SCOPED-IN-session-navigator-Bcyk)!important}:host mat-toolbar .mat-icon-button{color:var(--sys-SCOPED-IN-session-navigator-Bcyk)!important;opacity:.7}:host mat-toolbar .mat-icon-button:hover{color:var(--text-SCOPED-IN-session-navigator-Bcyk)!important;opacity:1}:host mat-toolbar .mat-icon-button .mat-icon{font-family:Material Icons!important;font-size:24px!important}:host div{display:flex;justify-content:center;align-items:center;line-height:1}:host atoms-menu-button{display:flex;align-items:center;line-height:1}@media(prefers-color-scheme:light){:host{--text: #333;--text-SCOPED-IN-session-navigator-Bcyk: var(--text);--sys: #666;--sys-SCOPED-IN-session-navigator-Bcyk: var(--sys);--border: #ddd;--border-SCOPED-IN-session-navigator-Bcyk: var(--border)}}@media(max-width:600px){:host mat-toolbar span{font-size:11px!important}}\n"] }]
272
272
  }] });
273
273
 
274
274
  var InvoiceAppActionId;
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/debug/debug.service.ts","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/logo.atom.ts","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/logo.atom.html","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/machina-logo.atom.ts","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/machina-logo.atom.html","../../../../../packages/@xxmachina/components/src/lib/app.ts","../../../../../packages/@xxmachina/components/src/lib/router/index.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/session-navigator/session-navigator.organism.ts","../../../../../packages/@xxmachina/components/src/lib/index.ts","../../../../../packages/@xxmachina/components/src/lib/xxmachina-components.ts"],"sourcesContent":["import { effect, inject, Injectable, signal, provideAppInitializer } from \"@angular/core\";\nimport { SnackBarService } from \"@ng-atomic/common/services/snack-bar\";\n\n@Injectable({providedIn: 'root'})\nexport class MachinaDevService {\n readonly isDevMode = signal(false);\n protected readonly snackBar = inject(SnackBarService);\n\n toggleDevMode() {\n this.isDevMode.update(isDevMode => !isDevMode);\n }\n\n constructor() {\n window.addEventListener('keydown', (event) => {\n if (event.ctrlKey && event.shiftKey && event.key === 'D') {\n this.toggleDevMode();\n }\n });\n\n let initialized = false;\n\n effect(() => {\n const isDevMode = this.isDevMode();\n if (initialized) {\n this.snackBar.open(`開発モード: ${isDevMode ? 'ON' : 'OFF'}`);\n }\n initialized = true;\n });\n }\n}\n\nexport function provideMachinaDevService() {\n return provideAppInitializer(() => {\n const initializerFn = (() => {\n const service = inject(MachinaDevService);\n return () => {};\n })();\n return initializerFn();\n })\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { NgAtomicComponent, provideComponent } from '@ng-atomic/core';\nimport { LogoAtomStore } from '@ng-atomic/components/atoms/logo';\n\n@Component({\n selector: 'atoms-logo',\n standalone: true,\n imports: [],\n templateUrl: './logo.atom.html',\n styleUrls: ['./logo.atom.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: LogoAtomStore,\n inputs: ['alt', 'height', 'width'],\n }\n ]\n})\nexport class LogoAtom extends NgAtomicComponent {\n protected readonly store = inject(LogoAtomStore);\n}\n\nexport function providePlanXLogoAtom() {\n return provideComponent(LogoAtomStore, () => LogoAtom);\n}\n","<svg width=\"660\" height=\"200\" viewBox=\"0 0 660 200\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <text x=\"250\" y=\"141\" font-family=\"system-ui, -apple-system, 'Segoe UI', sans-serif\" font-size=\"130\" font-weight=\"100\" fill=\"white\" letter-spacing=\"4\">Plan X</text>\n <path d=\"M111.118 85.5383L117.65 98.0402L124.264 85.5383H130.244L120.488 102.483L130.547 119.871H124.649L117.76 106.988L110.87 119.871H104.945L114.976 102.483L105.248 85.5383H111.118Z\" fill=\"white\"/>\n <path d=\"M101.858 120.061V124.631H85.9839V120.061H101.858Z\" fill=\"white\"/>\n <path d=\"M60.4095 85.5383L66.941 98.0402L73.5552 85.5383H79.5355L69.7796 102.483L79.8386 119.871H73.941L67.0513 106.988L60.1615 119.871H54.2363L64.2678 102.483L54.5395 85.5383H60.4095Z\" fill=\"white\"/>\n <path d=\"M36.7912 100.388L17.1968 91.5989V85.5383L40.7322 97.5325V101.245L36.7912 100.388ZM17.1968 108.131L36.8463 99.1508L40.7322 98.4844V102.165L17.1968 114.191V108.131Z\" fill=\"white\"/>\n <path d=\"M147 50C158.598 50.0002 168 59.4021 168 71V128C168 139.598 158.598 149 147 149H21C9.40215 149 0.00016537 139.598 0 128V71C0 59.402 9.40205 50 21 50H147ZM18.4863 53.0459C9.6499 53.046 2.48646 60.2095 2.48633 69.0459V129.589C2.48633 138.425 9.64983 145.589 18.4863 145.589H149.514C158.35 145.589 165.514 138.425 165.514 129.589V69.0459C165.514 60.2095 158.35 53.046 149.514 53.0459H18.4863Z\" fill=\"white\"/>\n <rect class=\"cursor\" x=\"132.016\" y=\"63\" width=\"14.765\" height=\"62\" fill=\"white\"/>\n</svg>\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { NgAtomicComponent, provideComponent } from '@ng-atomic/core';\nimport { LogoAtomStore } from '@ng-atomic/components/atoms/logo';\n\n@Component({\n selector: 'atoms-logo',\n standalone: true,\n imports: [],\n templateUrl: './machina-logo.atom.html',\n styleUrls: ['./logo.atom.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: LogoAtomStore,\n inputs: ['alt', 'height', 'width'],\n }\n ]\n})\nexport class MachinaLogoAtom extends NgAtomicComponent {\n protected readonly store = inject(LogoAtomStore);\n}\n\nexport function provideMachinaLogoAtom() {\n return provideComponent(LogoAtomStore, () => MachinaLogoAtom);\n}\n","<svg width=\"839\" height=\"200\" viewBox=\"0 0 839 200\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M715.485 128.875V94C715.485 90.7917 714.818 88.0208 713.485 85.6875C712.152 83.3542 710.193 81.5625 707.61 80.3125C705.027 79.0625 701.839 78.4375 698.047 78.4375C694.547 78.4375 691.422 79.0625 688.672 80.3125C685.964 81.5208 683.818 83.1667 682.235 85.25C680.693 87.2917 679.922 89.5625 679.922 92.0625L672.422 92C672.422 89.4583 673.047 87 674.297 84.625C675.547 82.25 677.318 80.125 679.61 78.25C681.902 76.375 684.631 74.8958 687.797 73.8125C691.006 72.6875 694.527 72.125 698.36 72.125C703.193 72.125 707.443 72.9375 711.11 74.5625C714.818 76.1875 717.714 78.625 719.797 81.875C721.881 85.125 722.922 89.2083 722.922 94.125V126.812C722.922 129.146 723.089 131.562 723.422 134.062C723.797 136.562 724.318 138.625 724.985 140.25V141H717.047C716.547 139.5 716.152 137.625 715.86 135.375C715.61 133.083 715.485 130.917 715.485 128.875ZM717.235 101.625L717.36 107.375H702.672C698.839 107.375 695.402 107.729 692.36 108.438C689.36 109.104 686.818 110.104 684.735 111.438C682.652 112.729 681.047 114.292 679.922 116.125C678.839 117.958 678.297 120.042 678.297 122.375C678.297 124.792 678.902 127 680.11 129C681.36 131 683.11 132.604 685.36 133.812C687.652 134.979 690.36 135.562 693.485 135.562C697.652 135.562 701.318 134.792 704.485 133.25C707.693 131.708 710.339 129.688 712.422 127.188C714.506 124.688 715.902 121.958 716.61 119L719.86 123.312C719.318 125.396 718.318 127.542 716.86 129.75C715.443 131.917 713.589 133.958 711.297 135.875C709.006 137.75 706.297 139.292 703.172 140.5C700.089 141.667 696.589 142.25 692.672 142.25C688.256 142.25 684.402 141.417 681.11 139.75C677.86 138.083 675.318 135.812 673.485 132.938C671.693 130.021 670.797 126.729 670.797 123.062C670.797 119.729 671.506 116.75 672.922 114.125C674.339 111.458 676.381 109.208 679.047 107.375C681.756 105.5 685.006 104.083 688.797 103.125C692.631 102.125 696.922 101.625 701.672 101.625H717.235Z\" fill=\"white\"/>\n <path d=\"M608.862 87.8125V141H601.425V73.375H608.55L608.862 87.8125ZM607.175 103L603.862 101.125C604.112 97.125 604.925 93.375 606.3 89.875C607.675 86.375 609.529 83.2917 611.862 80.625C614.237 77.9583 617.008 75.875 620.175 74.375C623.383 72.875 626.925 72.125 630.8 72.125C634.175 72.125 637.196 72.5833 639.862 73.5C642.529 74.4167 644.8 75.875 646.675 77.875C648.55 79.875 649.966 82.4375 650.925 85.5625C651.925 88.6875 652.425 92.5 652.425 97V141H644.925V96.9375C644.925 92.2708 644.279 88.625 642.987 86C641.696 83.3333 639.862 81.4375 637.487 80.3125C635.112 79.1875 632.3 78.625 629.05 78.625C625.466 78.625 622.321 79.4167 619.612 81C616.946 82.5417 614.696 84.5625 612.862 87.0625C611.071 89.5208 609.696 92.1667 608.737 95C607.779 97.7917 607.258 100.458 607.175 103Z\" fill=\"white\"/>\n <path d=\"M578.427 73.375V141H570.99V73.375H578.427ZM569.677 53.8125C569.677 52.3958 570.115 51.2083 570.99 50.25C571.906 49.25 573.156 48.75 574.74 48.75C576.323 48.75 577.573 49.25 578.49 50.25C579.448 51.2083 579.927 52.3958 579.927 53.8125C579.927 55.1875 579.448 56.375 578.49 57.375C577.573 58.3333 576.323 58.8125 574.74 58.8125C573.156 58.8125 571.906 58.3333 570.99 57.375C570.115 56.375 569.677 55.1875 569.677 53.8125Z\" fill=\"white\"/>\n <path d=\"M504.743 45V141H497.305V45H504.743ZM503.055 103L499.743 101.125C499.993 97.125 500.805 93.375 502.18 89.875C503.555 86.375 505.409 83.2917 507.743 80.625C510.118 77.9583 512.889 75.875 516.055 74.375C519.264 72.875 522.805 72.125 526.68 72.125C530.055 72.125 533.076 72.5833 535.743 73.5C538.409 74.4167 540.68 75.875 542.555 77.875C544.43 79.875 545.847 82.4375 546.805 85.5625C547.805 88.6875 548.305 92.5 548.305 97V141H540.805V96.9375C540.805 92.2708 540.159 88.625 538.868 86C537.576 83.3333 535.743 81.4375 533.368 80.3125C530.993 79.1875 528.18 78.625 524.93 78.625C521.347 78.625 518.201 79.4167 515.493 81C512.826 82.5417 510.576 84.5625 508.743 87.0625C506.951 89.5208 505.576 92.1667 504.618 95C503.659 97.7917 503.139 100.458 503.055 103Z\" fill=\"white\"/>\n <path d=\"M453.683 135.812C456.849 135.812 459.808 135.229 462.558 134.062C465.349 132.854 467.641 131.083 469.433 128.75C471.266 126.375 472.308 123.479 472.558 120.062H479.683C479.474 124.354 478.162 128.188 475.745 131.562C473.37 134.896 470.245 137.521 466.37 139.438C462.537 141.312 458.308 142.25 453.683 142.25C448.974 142.25 444.808 141.396 441.183 139.688C437.599 137.979 434.599 135.604 432.183 132.562C429.766 129.479 427.933 125.896 426.683 121.812C425.474 117.688 424.87 113.25 424.87 108.5V105.875C424.87 101.125 425.474 96.7083 426.683 92.625C427.933 88.5 429.766 84.9167 432.183 81.875C434.599 78.7917 437.599 76.3958 441.183 74.6875C444.766 72.9792 448.912 72.125 453.62 72.125C458.453 72.125 462.787 73.1042 466.62 75.0625C470.495 77.0208 473.578 79.7917 475.87 83.375C478.203 86.9583 479.474 91.2083 479.683 96.125H472.558C472.349 92.5 471.391 89.375 469.683 86.75C467.974 84.125 465.724 82.1042 462.933 80.6875C460.141 79.2708 457.037 78.5625 453.62 78.5625C449.787 78.5625 446.516 79.3125 443.808 80.8125C441.099 82.2708 438.891 84.2917 437.183 86.875C435.516 89.4167 434.287 92.3333 433.495 95.625C432.703 98.875 432.308 102.292 432.308 105.875V108.5C432.308 112.125 432.683 115.583 433.433 118.875C434.224 122.125 435.453 125.021 437.12 127.562C438.828 130.104 441.037 132.125 443.745 133.625C446.495 135.083 449.808 135.812 453.683 135.812Z\" fill=\"white\"/>\n <path d=\"M398.685 128.875V94C398.685 90.7917 398.018 88.0208 396.685 85.6875C395.352 83.3542 393.393 81.5625 390.81 80.3125C388.227 79.0625 385.039 78.4375 381.248 78.4375C377.748 78.4375 374.623 79.0625 371.873 80.3125C369.164 81.5208 367.018 83.1667 365.435 85.25C363.893 87.2917 363.123 89.5625 363.123 92.0625L355.623 92C355.623 89.4583 356.248 87 357.498 84.625C358.748 82.25 360.518 80.125 362.81 78.25C365.102 76.375 367.831 74.8958 370.998 73.8125C374.206 72.6875 377.727 72.125 381.56 72.125C386.393 72.125 390.643 72.9375 394.31 74.5625C398.018 76.1875 400.914 78.625 402.998 81.875C405.081 85.125 406.123 89.2083 406.123 94.125V126.812C406.123 129.146 406.289 131.562 406.623 134.062C406.998 136.562 407.518 138.625 408.185 140.25V141H400.248C399.748 139.5 399.352 137.625 399.06 135.375C398.81 133.083 398.685 130.917 398.685 128.875ZM400.435 101.625L400.56 107.375H385.873C382.039 107.375 378.602 107.729 375.56 108.438C372.56 109.104 370.018 110.104 367.935 111.438C365.852 112.729 364.248 114.292 363.123 116.125C362.039 117.958 361.498 120.042 361.498 122.375C361.498 124.792 362.102 127 363.31 129C364.56 131 366.31 132.604 368.56 133.812C370.852 134.979 373.56 135.562 376.685 135.562C380.852 135.562 384.518 134.792 387.685 133.25C390.893 131.708 393.539 129.688 395.623 127.188C397.706 124.688 399.102 121.958 399.81 119L403.06 123.312C402.518 125.396 401.518 127.542 400.06 129.75C398.643 131.917 396.789 133.958 394.498 135.875C392.206 137.75 389.498 139.292 386.373 140.5C383.289 141.667 379.789 142.25 375.873 142.25C371.456 142.25 367.602 141.417 364.31 139.75C361.06 138.083 358.518 135.812 356.685 132.938C354.893 130.021 353.998 126.729 353.998 123.062C353.998 119.729 354.706 116.75 356.123 114.125C357.539 111.458 359.581 109.208 362.248 107.375C364.956 105.5 368.206 104.083 371.998 103.125C375.831 102.125 380.123 101.625 384.873 101.625H400.435Z\" fill=\"white\"/>\n <path d=\"M248.375 50H256.125L289.75 130.125L323.438 50H331.125L292.687 141H286.812L248.375 50ZM246 50H252.812L253.625 101.25V141H246V50ZM326.812 50H333.625V141H325.938V101.25L326.812 50Z\" fill=\"white\"/>\n <path d=\"M111.118 85.5383L117.65 98.0402L124.264 85.5383H130.244L120.488 102.483L130.547 119.871H124.649L117.76 106.988L110.87 119.871H104.945L114.976 102.483L105.248 85.5383H111.118Z\" fill=\"white\"/>\n <path d=\"M101.858 120.061V124.631H85.9839V120.061H101.858Z\" fill=\"white\"/>\n <path d=\"M60.4095 85.5383L66.941 98.0402L73.5552 85.5383H79.5355L69.7796 102.483L79.8386 119.871H73.941L67.0513 106.988L60.1615 119.871H54.2363L64.2678 102.483L54.5395 85.5383H60.4095Z\" fill=\"white\"/>\n <path d=\"M36.7912 100.388L17.1968 91.5989V85.5383L40.7322 97.5325V101.245L36.7912 100.388ZM17.1968 108.131L36.8463 99.1508L40.7322 98.4844V102.165L17.1968 114.191V108.131Z\" fill=\"white\"/>\n <path d=\"M147 50C158.598 50.0002 168 59.4021 168 71V128C168 139.598 158.598 149 147 149H21C9.40215 149 0.00016537 139.598 0 128V71C0 59.402 9.40205 50 21 50H147ZM18.4863 53.0459C9.6499 53.046 2.48646 60.2095 2.48633 69.0459V129.589C2.48633 138.425 9.64983 145.589 18.4863 145.589H149.514C158.35 145.589 165.514 138.425 165.514 129.589V69.0459C165.514 60.2095 158.35 53.046 149.514 53.0459H18.4863Z\" fill=\"white\"/>\n <rect class=\"cursor\" x=\"132.016\" y=\"63\" width=\"14.765\" height=\"62\" fill=\"white\"/>\n</svg>\n","import { inject, Signal } from '@angular/core';\nimport { provideNgAtomicComponents } from '@ng-atomic/components';\nimport { AppFrameStore } from '@ng-atomic/components/frames/app';\nimport { provideNgAtomicCommon } from '@ng-atomic/common';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { InMemoryCache } from '@apollo/client/cache';\nimport { provideApollo } from 'apollo-angular';\nimport { merge } from 'lodash-es';\nimport { RootPropertyService } from '@ng-atomic/common/services/root-property';\nimport { MachinaDevService, provideMachinaDevService } from './services/debug';\nimport { providePlanXLogoAtom } from './atoms/logo';\n\ntype UnwrapSignal<T> = T extends Signal<infer U> ? U : never;\n\nexport function provideMachinaApp(config: {\n appFrame?: Partial<UnwrapSignal<ReturnType<typeof AppFrameStore.DI.Config.inject>>>,\n style?: Partial<UnwrapSignal<ReturnType<typeof RootPropertyService.Config.inject>>>,\n} = {}) {\n return [\n provideMachinaDevService(),\n provideNgAtomicCommon(),\n provideNgAtomicComponents(),\n providePlanXLogoAtom(),\n provideApollo(() => ({\n cache: new InMemoryCache(),\n })),\n AppFrameStore.DI.Config.provide(() => {\n const app = inject(AppService);\n const dev = inject(MachinaDevService);\n return _config => {\n return merge({\n ..._config,\n isEntrance: false,\n isLoading: app.loading.isLoading(),\n fabActions: [\n { id: AppFrameStore.ActionId.OPEN_SIDE_APP, icon: 'chat' },\n ],\n title: 'Plan X',\n sideNavActions: [\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'クエリ', icon: 'smart_toy', payload: ['queries'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: '請求書', icon: 'receipt', payload: ['invoices'] },\n ].filter(Boolean),\n sideNavBottomActions: dev.isDevMode() ? [\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'クエリ', icon: 'search', payload: ['queries'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'コマンド', icon: 'api', payload: ['commands'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'Transformers', icon: 'transform', payload: ['transformers'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'リソース', icon: 'hub', payload: ['resources'] },\n { id: AppFrameStore.ActionId.SIGN_OUT, name: 'ログアウト', icon: 'logout' },\n ] : [\n { id: AppFrameStore.ActionId.SIGN_OUT, name: 'ログアウト', icon: 'logout' },\n ],\n entranceActions: [\n { id: AppFrameStore.ActionId.SIGN_IN_WITH_GOOGLE, name: 'Googleでログイン', icon: 'google' },\n ],\n sideAppOutletName: 'side',\n sideAppWidth: 'var(--page-width-lv1)',\n }, {...config.appFrame});\n };\n }),\n RootPropertyService.Config.provide(() => _config => ({ ..._config, ...config.style })),\n ];\n}\n","import { LoadChildrenCallback, provideRouter, withComponentInputBinding, withPreloading, withRouterConfig } from '@angular/router';\nimport { recursiveWrapRoute, recursiveWrapRoutes, wrapLoadChildren } from '@ng-atomic/core';\nimport { SideAppFrameStore } from '@ng-atomic/components/frames/side-app';\nimport { MachinaPreloadingStrategy } from '@xxmachina/components/routes/preloading';\nimport { xxRoutes } from '@xxmachina/components/routes';\nimport { ngAtomicRoute } from '@ng-atomic/components/frames/router-outlet';\n\nexport function provideMachinaRouter({\n appLoadChildren,\n sideAppLoadChildren = () => import('@xxmachina/components/routes/side').then(m => m.routes),\n}: {\n appLoadChildren: LoadChildrenCallback,\n sideAppLoadChildren?: LoadChildrenCallback,\n}) {\n return provideRouter(\n [\n recursiveWrapRoute({\n path: '',\n loadChildren: () => wrapLoadChildren(appLoadChildren).then(routes => recursiveWrapRoutes(xxRoutes(routes), ngAtomicRoute)),\n }),\n SideAppFrameStore.route({ loadChildren: sideAppLoadChildren }),\n ],\n withPreloading(MachinaPreloadingStrategy),\n withComponentInputBinding(),\n withRouterConfig({\n // MEMO(@NozomuMiyamoto): 'always'にするとinjectRouteSkipが正常に動作しないため、'emptyOnly'にしている\n // paramsInheritanceStrategy: 'always'\n })\n );\n}\n","import { ChangeDetectionStrategy, Component, computed, Directive, inject, input } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { Action, Actions, ActionsFactory, InjectableComponent, TokenizedType, _computed } from '@ng-atomic/core';\nimport { NgAtomicComponent } from '@ng-atomic/core';\nimport { MenuButtonAtomStore } from '@ng-atomic/components/atoms/menu-button';\nimport { makeConfig } from '@ng-atomic/common/services/ui';\n\nfunction resolveActions<T = any>(actions: ActionsFactory | Action[] | Action[][]): Action<T>[] {\n if (Array.isArray(actions)) {\n return actions.map((actionOrArray) => {\n if (Array.isArray(actionOrArray) && actionOrArray.length) {\n return {\n id: 'menu',\n name: 'menu',\n icon: 'more_vert',\n children: actionOrArray,\n };\n }\n return {...actionOrArray};\n });\n } else if (typeof actions === 'function') {\n const factoryResult = actions();\n return Array.isArray(factoryResult) && factoryResult?.length ? [\n {\n id: 'menu',\n name: 'menu',\n icon: 'more_vert',\n children: factoryResult,\n }\n ] : [];\n }\n}\n\n\n@TokenizedType()\n@Directive({ standalone: true, selector: 'organisms-session-navigator' })\nexport class SessionNavigatorOrganismStore extends InjectableComponent {\n static readonly Config = makeConfig(() => {\n return () => ({\n title: undefined as string | undefined,\n startActions: <Actions>[{ id: 'menu', icon: 'menu', name: 'menu' }],\n endActions: <Actions | Action[][]>[],\n });\n }, ['components', 'organisms', 'session-navigator']);\n protected readonly config = SessionNavigatorOrganismStore.Config.inject();\n readonly startActions = input(_computed(() => this.config().startActions));\n readonly resolvedStartActions = computed(() => resolveActions(this.startActions()));\n readonly endActions = input(_computed(() => this.config().endActions));\n readonly resolvedEndActions = computed(() => resolveActions(this.endActions()));\n readonly title = input(_computed(() => this.config().title));\n}\n\n@Component({\n selector: 'organisms-session-navigator',\n standalone: true,\n imports: [\n MatButtonModule,\n MatIconModule,\n MatToolbarModule,\n MenuButtonAtomStore,\n ],\n template: `\n <mat-toolbar color=\"primary\">\n <div>\n @for (action of store.resolvedStartActions(); track trackByFn($index, action) ) {\n <atoms-menu-button [action]=\"action\" (action)=\"dispatch($event)\" injectable/>\n }\n </div>\n <div>\n @if (store.title()) {\n <span>{{ store.title() }}</span>\n } @else {\n <ng-content />\n }\n </div>\n <div>\n @for (action of store.resolvedEndActions(); track trackByFn($index, action)) {\n <atoms-menu-button [action]=\"action\" (action)=\"dispatch($event)\" injectable/>\n }\n </div>\n </mat-toolbar>\n `,\n styleUrl: './session-navigator.organism.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: SessionNavigatorOrganismStore,\n inputs: ['startActions', 'endActions', 'title'],\n }\n ],\n})\nexport class SessionNavigatorOrganism extends NgAtomicComponent {\n protected readonly store = inject(SessionNavigatorOrganismStore);\n trackByFn = (_: number, action: Action) => action;\n}\n","export * from './app';\nexport * from './router';\nexport * from './organisms/session-navigator';\n\nexport enum InvoiceAppActionId {\n UPDATE_JSON = 'UPDATE_JSON',\n NEXT_KEY_DOWN = 'NEXT_KEY_DOWN',\n PRE_KEY_DOWN = 'PRE_KEY_DOWN',\n DOWNLOAD_PDF = 'DOWNLOAD_PDF',\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xxmachina-components.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/debug/debug.service.ts","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/logo.atom.ts","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/logo.atom.html","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/machina-logo.atom.ts","../../../../../packages/@xxmachina/components/src/lib/atoms/logo/machina-logo.atom.html","../../../../../packages/@xxmachina/components/src/lib/app.ts","../../../../../packages/@xxmachina/components/src/lib/router/index.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/session-navigator/session-navigator.organism.ts","../../../../../packages/@xxmachina/components/src/lib/index.ts","../../../../../packages/@xxmachina/components/src/lib/xxmachina-components.ts"],"sourcesContent":["import { effect, inject, Injectable, signal, provideAppInitializer } from \"@angular/core\";\nimport { SnackBarService } from \"@ng-atomic/common/services/snack-bar\";\n\n@Injectable({providedIn: 'root'})\nexport class MachinaDevService {\n readonly isDevMode = signal(false);\n protected readonly snackBar = inject(SnackBarService);\n\n toggleDevMode() {\n this.isDevMode.update(isDevMode => !isDevMode);\n }\n\n constructor() {\n window.addEventListener('keydown', (event) => {\n if (event.ctrlKey && event.shiftKey && event.key === 'D') {\n this.toggleDevMode();\n }\n });\n\n let initialized = false;\n\n effect(() => {\n const isDevMode = this.isDevMode();\n if (initialized) {\n this.snackBar.open(`開発モード: ${isDevMode ? 'ON' : 'OFF'}`);\n }\n initialized = true;\n });\n }\n}\n\nexport function provideMachinaDevService() {\n return provideAppInitializer(() => {\n const initializerFn = (() => {\n const service = inject(MachinaDevService);\n return () => {};\n })();\n return initializerFn();\n })\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { NgAtomicComponent, provideComponent } from '@ng-atomic/core';\nimport { LogoAtomStore } from '@ng-atomic/components/atoms/logo';\n\n@Component({\n selector: 'atoms-logo',\n standalone: true,\n imports: [],\n templateUrl: './logo.atom.html',\n styleUrls: ['./logo.atom.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: LogoAtomStore,\n inputs: ['alt', 'height', 'width'],\n }\n ]\n})\nexport class LogoAtom extends NgAtomicComponent {\n protected readonly store = inject(LogoAtomStore);\n}\n\nexport function providePlanXLogoAtom() {\n return provideComponent(LogoAtomStore, () => LogoAtom);\n}\n","<svg width=\"660\" height=\"200\" viewBox=\"0 0 660 200\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <text x=\"250\" y=\"141\" font-family=\"system-ui, -apple-system, 'Segoe UI', sans-serif\" font-size=\"130\" font-weight=\"100\" fill=\"white\" letter-spacing=\"4\">Plan X</text>\n <path d=\"M111.118 85.5383L117.65 98.0402L124.264 85.5383H130.244L120.488 102.483L130.547 119.871H124.649L117.76 106.988L110.87 119.871H104.945L114.976 102.483L105.248 85.5383H111.118Z\" fill=\"white\"/>\n <path d=\"M101.858 120.061V124.631H85.9839V120.061H101.858Z\" fill=\"white\"/>\n <path d=\"M60.4095 85.5383L66.941 98.0402L73.5552 85.5383H79.5355L69.7796 102.483L79.8386 119.871H73.941L67.0513 106.988L60.1615 119.871H54.2363L64.2678 102.483L54.5395 85.5383H60.4095Z\" fill=\"white\"/>\n <path d=\"M36.7912 100.388L17.1968 91.5989V85.5383L40.7322 97.5325V101.245L36.7912 100.388ZM17.1968 108.131L36.8463 99.1508L40.7322 98.4844V102.165L17.1968 114.191V108.131Z\" fill=\"white\"/>\n <path d=\"M147 50C158.598 50.0002 168 59.4021 168 71V128C168 139.598 158.598 149 147 149H21C9.40215 149 0.00016537 139.598 0 128V71C0 59.402 9.40205 50 21 50H147ZM18.4863 53.0459C9.6499 53.046 2.48646 60.2095 2.48633 69.0459V129.589C2.48633 138.425 9.64983 145.589 18.4863 145.589H149.514C158.35 145.589 165.514 138.425 165.514 129.589V69.0459C165.514 60.2095 158.35 53.046 149.514 53.0459H18.4863Z\" fill=\"white\"/>\n <rect class=\"cursor\" x=\"132.016\" y=\"63\" width=\"14.765\" height=\"62\" fill=\"white\"/>\n</svg>\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { NgAtomicComponent, provideComponent } from '@ng-atomic/core';\nimport { LogoAtomStore } from '@ng-atomic/components/atoms/logo';\n\n@Component({\n selector: 'atoms-logo',\n standalone: true,\n imports: [],\n templateUrl: './machina-logo.atom.html',\n styleUrls: ['./logo.atom.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: LogoAtomStore,\n inputs: ['alt', 'height', 'width'],\n }\n ]\n})\nexport class MachinaLogoAtom extends NgAtomicComponent {\n protected readonly store = inject(LogoAtomStore);\n}\n\nexport function provideMachinaLogoAtom() {\n return provideComponent(LogoAtomStore, () => MachinaLogoAtom);\n}\n","<svg width=\"839\" height=\"200\" viewBox=\"0 0 839 200\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M715.485 128.875V94C715.485 90.7917 714.818 88.0208 713.485 85.6875C712.152 83.3542 710.193 81.5625 707.61 80.3125C705.027 79.0625 701.839 78.4375 698.047 78.4375C694.547 78.4375 691.422 79.0625 688.672 80.3125C685.964 81.5208 683.818 83.1667 682.235 85.25C680.693 87.2917 679.922 89.5625 679.922 92.0625L672.422 92C672.422 89.4583 673.047 87 674.297 84.625C675.547 82.25 677.318 80.125 679.61 78.25C681.902 76.375 684.631 74.8958 687.797 73.8125C691.006 72.6875 694.527 72.125 698.36 72.125C703.193 72.125 707.443 72.9375 711.11 74.5625C714.818 76.1875 717.714 78.625 719.797 81.875C721.881 85.125 722.922 89.2083 722.922 94.125V126.812C722.922 129.146 723.089 131.562 723.422 134.062C723.797 136.562 724.318 138.625 724.985 140.25V141H717.047C716.547 139.5 716.152 137.625 715.86 135.375C715.61 133.083 715.485 130.917 715.485 128.875ZM717.235 101.625L717.36 107.375H702.672C698.839 107.375 695.402 107.729 692.36 108.438C689.36 109.104 686.818 110.104 684.735 111.438C682.652 112.729 681.047 114.292 679.922 116.125C678.839 117.958 678.297 120.042 678.297 122.375C678.297 124.792 678.902 127 680.11 129C681.36 131 683.11 132.604 685.36 133.812C687.652 134.979 690.36 135.562 693.485 135.562C697.652 135.562 701.318 134.792 704.485 133.25C707.693 131.708 710.339 129.688 712.422 127.188C714.506 124.688 715.902 121.958 716.61 119L719.86 123.312C719.318 125.396 718.318 127.542 716.86 129.75C715.443 131.917 713.589 133.958 711.297 135.875C709.006 137.75 706.297 139.292 703.172 140.5C700.089 141.667 696.589 142.25 692.672 142.25C688.256 142.25 684.402 141.417 681.11 139.75C677.86 138.083 675.318 135.812 673.485 132.938C671.693 130.021 670.797 126.729 670.797 123.062C670.797 119.729 671.506 116.75 672.922 114.125C674.339 111.458 676.381 109.208 679.047 107.375C681.756 105.5 685.006 104.083 688.797 103.125C692.631 102.125 696.922 101.625 701.672 101.625H717.235Z\" fill=\"white\"/>\n <path d=\"M608.862 87.8125V141H601.425V73.375H608.55L608.862 87.8125ZM607.175 103L603.862 101.125C604.112 97.125 604.925 93.375 606.3 89.875C607.675 86.375 609.529 83.2917 611.862 80.625C614.237 77.9583 617.008 75.875 620.175 74.375C623.383 72.875 626.925 72.125 630.8 72.125C634.175 72.125 637.196 72.5833 639.862 73.5C642.529 74.4167 644.8 75.875 646.675 77.875C648.55 79.875 649.966 82.4375 650.925 85.5625C651.925 88.6875 652.425 92.5 652.425 97V141H644.925V96.9375C644.925 92.2708 644.279 88.625 642.987 86C641.696 83.3333 639.862 81.4375 637.487 80.3125C635.112 79.1875 632.3 78.625 629.05 78.625C625.466 78.625 622.321 79.4167 619.612 81C616.946 82.5417 614.696 84.5625 612.862 87.0625C611.071 89.5208 609.696 92.1667 608.737 95C607.779 97.7917 607.258 100.458 607.175 103Z\" fill=\"white\"/>\n <path d=\"M578.427 73.375V141H570.99V73.375H578.427ZM569.677 53.8125C569.677 52.3958 570.115 51.2083 570.99 50.25C571.906 49.25 573.156 48.75 574.74 48.75C576.323 48.75 577.573 49.25 578.49 50.25C579.448 51.2083 579.927 52.3958 579.927 53.8125C579.927 55.1875 579.448 56.375 578.49 57.375C577.573 58.3333 576.323 58.8125 574.74 58.8125C573.156 58.8125 571.906 58.3333 570.99 57.375C570.115 56.375 569.677 55.1875 569.677 53.8125Z\" fill=\"white\"/>\n <path d=\"M504.743 45V141H497.305V45H504.743ZM503.055 103L499.743 101.125C499.993 97.125 500.805 93.375 502.18 89.875C503.555 86.375 505.409 83.2917 507.743 80.625C510.118 77.9583 512.889 75.875 516.055 74.375C519.264 72.875 522.805 72.125 526.68 72.125C530.055 72.125 533.076 72.5833 535.743 73.5C538.409 74.4167 540.68 75.875 542.555 77.875C544.43 79.875 545.847 82.4375 546.805 85.5625C547.805 88.6875 548.305 92.5 548.305 97V141H540.805V96.9375C540.805 92.2708 540.159 88.625 538.868 86C537.576 83.3333 535.743 81.4375 533.368 80.3125C530.993 79.1875 528.18 78.625 524.93 78.625C521.347 78.625 518.201 79.4167 515.493 81C512.826 82.5417 510.576 84.5625 508.743 87.0625C506.951 89.5208 505.576 92.1667 504.618 95C503.659 97.7917 503.139 100.458 503.055 103Z\" fill=\"white\"/>\n <path d=\"M453.683 135.812C456.849 135.812 459.808 135.229 462.558 134.062C465.349 132.854 467.641 131.083 469.433 128.75C471.266 126.375 472.308 123.479 472.558 120.062H479.683C479.474 124.354 478.162 128.188 475.745 131.562C473.37 134.896 470.245 137.521 466.37 139.438C462.537 141.312 458.308 142.25 453.683 142.25C448.974 142.25 444.808 141.396 441.183 139.688C437.599 137.979 434.599 135.604 432.183 132.562C429.766 129.479 427.933 125.896 426.683 121.812C425.474 117.688 424.87 113.25 424.87 108.5V105.875C424.87 101.125 425.474 96.7083 426.683 92.625C427.933 88.5 429.766 84.9167 432.183 81.875C434.599 78.7917 437.599 76.3958 441.183 74.6875C444.766 72.9792 448.912 72.125 453.62 72.125C458.453 72.125 462.787 73.1042 466.62 75.0625C470.495 77.0208 473.578 79.7917 475.87 83.375C478.203 86.9583 479.474 91.2083 479.683 96.125H472.558C472.349 92.5 471.391 89.375 469.683 86.75C467.974 84.125 465.724 82.1042 462.933 80.6875C460.141 79.2708 457.037 78.5625 453.62 78.5625C449.787 78.5625 446.516 79.3125 443.808 80.8125C441.099 82.2708 438.891 84.2917 437.183 86.875C435.516 89.4167 434.287 92.3333 433.495 95.625C432.703 98.875 432.308 102.292 432.308 105.875V108.5C432.308 112.125 432.683 115.583 433.433 118.875C434.224 122.125 435.453 125.021 437.12 127.562C438.828 130.104 441.037 132.125 443.745 133.625C446.495 135.083 449.808 135.812 453.683 135.812Z\" fill=\"white\"/>\n <path d=\"M398.685 128.875V94C398.685 90.7917 398.018 88.0208 396.685 85.6875C395.352 83.3542 393.393 81.5625 390.81 80.3125C388.227 79.0625 385.039 78.4375 381.248 78.4375C377.748 78.4375 374.623 79.0625 371.873 80.3125C369.164 81.5208 367.018 83.1667 365.435 85.25C363.893 87.2917 363.123 89.5625 363.123 92.0625L355.623 92C355.623 89.4583 356.248 87 357.498 84.625C358.748 82.25 360.518 80.125 362.81 78.25C365.102 76.375 367.831 74.8958 370.998 73.8125C374.206 72.6875 377.727 72.125 381.56 72.125C386.393 72.125 390.643 72.9375 394.31 74.5625C398.018 76.1875 400.914 78.625 402.998 81.875C405.081 85.125 406.123 89.2083 406.123 94.125V126.812C406.123 129.146 406.289 131.562 406.623 134.062C406.998 136.562 407.518 138.625 408.185 140.25V141H400.248C399.748 139.5 399.352 137.625 399.06 135.375C398.81 133.083 398.685 130.917 398.685 128.875ZM400.435 101.625L400.56 107.375H385.873C382.039 107.375 378.602 107.729 375.56 108.438C372.56 109.104 370.018 110.104 367.935 111.438C365.852 112.729 364.248 114.292 363.123 116.125C362.039 117.958 361.498 120.042 361.498 122.375C361.498 124.792 362.102 127 363.31 129C364.56 131 366.31 132.604 368.56 133.812C370.852 134.979 373.56 135.562 376.685 135.562C380.852 135.562 384.518 134.792 387.685 133.25C390.893 131.708 393.539 129.688 395.623 127.188C397.706 124.688 399.102 121.958 399.81 119L403.06 123.312C402.518 125.396 401.518 127.542 400.06 129.75C398.643 131.917 396.789 133.958 394.498 135.875C392.206 137.75 389.498 139.292 386.373 140.5C383.289 141.667 379.789 142.25 375.873 142.25C371.456 142.25 367.602 141.417 364.31 139.75C361.06 138.083 358.518 135.812 356.685 132.938C354.893 130.021 353.998 126.729 353.998 123.062C353.998 119.729 354.706 116.75 356.123 114.125C357.539 111.458 359.581 109.208 362.248 107.375C364.956 105.5 368.206 104.083 371.998 103.125C375.831 102.125 380.123 101.625 384.873 101.625H400.435Z\" fill=\"white\"/>\n <path d=\"M248.375 50H256.125L289.75 130.125L323.438 50H331.125L292.687 141H286.812L248.375 50ZM246 50H252.812L253.625 101.25V141H246V50ZM326.812 50H333.625V141H325.938V101.25L326.812 50Z\" fill=\"white\"/>\n <path d=\"M111.118 85.5383L117.65 98.0402L124.264 85.5383H130.244L120.488 102.483L130.547 119.871H124.649L117.76 106.988L110.87 119.871H104.945L114.976 102.483L105.248 85.5383H111.118Z\" fill=\"white\"/>\n <path d=\"M101.858 120.061V124.631H85.9839V120.061H101.858Z\" fill=\"white\"/>\n <path d=\"M60.4095 85.5383L66.941 98.0402L73.5552 85.5383H79.5355L69.7796 102.483L79.8386 119.871H73.941L67.0513 106.988L60.1615 119.871H54.2363L64.2678 102.483L54.5395 85.5383H60.4095Z\" fill=\"white\"/>\n <path d=\"M36.7912 100.388L17.1968 91.5989V85.5383L40.7322 97.5325V101.245L36.7912 100.388ZM17.1968 108.131L36.8463 99.1508L40.7322 98.4844V102.165L17.1968 114.191V108.131Z\" fill=\"white\"/>\n <path d=\"M147 50C158.598 50.0002 168 59.4021 168 71V128C168 139.598 158.598 149 147 149H21C9.40215 149 0.00016537 139.598 0 128V71C0 59.402 9.40205 50 21 50H147ZM18.4863 53.0459C9.6499 53.046 2.48646 60.2095 2.48633 69.0459V129.589C2.48633 138.425 9.64983 145.589 18.4863 145.589H149.514C158.35 145.589 165.514 138.425 165.514 129.589V69.0459C165.514 60.2095 158.35 53.046 149.514 53.0459H18.4863Z\" fill=\"white\"/>\n <rect class=\"cursor\" x=\"132.016\" y=\"63\" width=\"14.765\" height=\"62\" fill=\"white\"/>\n</svg>\n","import { inject, Signal } from '@angular/core';\nimport { provideNgAtomicComponents } from '@ng-atomic/components';\nimport { AppFrameStore } from '@ng-atomic/components/frames/app';\nimport { provideNgAtomicCommon } from '@ng-atomic/common';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { InMemoryCache } from '@apollo/client/cache';\nimport { provideApollo } from 'apollo-angular';\nimport { merge } from 'lodash-es';\nimport { RootPropertyService } from '@ng-atomic/common/services/root-property';\nimport { MachinaDevService, provideMachinaDevService } from './services/debug';\nimport { providePlanXLogoAtom } from './atoms/logo';\n\ntype UnwrapSignal<T> = T extends Signal<infer U> ? U : never;\n\nexport function provideMachinaApp(config: {\n appFrame?: Partial<UnwrapSignal<ReturnType<typeof AppFrameStore.DI.Config.inject>>>,\n style?: Partial<UnwrapSignal<ReturnType<typeof RootPropertyService.Config.inject>>>,\n} = {}) {\n return [\n provideMachinaDevService(),\n provideNgAtomicCommon(),\n provideNgAtomicComponents(),\n providePlanXLogoAtom(),\n provideApollo(() => ({\n cache: new InMemoryCache(),\n })),\n AppFrameStore.DI.Config.provide(() => {\n const app = inject(AppService);\n const dev = inject(MachinaDevService);\n return _config => {\n return merge({\n ..._config,\n isEntrance: false,\n isLoading: app.loading.isLoading(),\n fabActions: [\n { id: AppFrameStore.ActionId.OPEN_SIDE_APP, icon: 'chat' },\n ],\n title: 'Plan X',\n sideNavActions: [\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'クエリ', icon: 'smart_toy', payload: ['queries'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: '請求書', icon: 'receipt', payload: ['invoices'] },\n ].filter(Boolean),\n sideNavBottomActions: dev.isDevMode() ? [\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'クエリ', icon: 'search', payload: ['queries'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'コマンド', icon: 'api', payload: ['commands'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'Transformers', icon: 'transform', payload: ['transformers'] },\n { id: AppFrameStore.ActionId.NAVIGATE, name: 'リソース', icon: 'hub', payload: ['resources'] },\n { id: AppFrameStore.ActionId.SIGN_OUT, name: 'ログアウト', icon: 'logout' },\n ] : [\n { id: AppFrameStore.ActionId.SIGN_OUT, name: 'ログアウト', icon: 'logout' },\n ],\n entranceActions: [\n { id: AppFrameStore.ActionId.SIGN_IN_WITH_GOOGLE, name: 'Googleでログイン', icon: 'google' },\n ],\n sideAppOutletName: 'side',\n sideAppWidth: 'var(--page-width-lv1)',\n }, {...config.appFrame});\n };\n }),\n RootPropertyService.Config.provide(() => _config => ({ ..._config, ...config.style })),\n ];\n}\n","import { LoadChildrenCallback, provideRouter, withComponentInputBinding, withPreloading, withRouterConfig } from '@angular/router';\nimport { recursiveWrapRoute, recursiveWrapRoutes, wrapLoadChildren } from '@ng-atomic/core';\nimport { SideAppFrameStore } from '@ng-atomic/components/frames/side-app';\nimport { MachinaPreloadingStrategy } from '@xxmachina/components/routes/preloading';\nimport { xxRoutes } from '@xxmachina/components/routes';\nimport { ngAtomicRoute } from '@ng-atomic/components/frames/router-outlet';\n\nexport function provideMachinaRouter({\n appLoadChildren,\n sideAppLoadChildren = () => import('@xxmachina/components/routes/side').then(m => m.routes),\n}: {\n appLoadChildren: LoadChildrenCallback,\n sideAppLoadChildren?: LoadChildrenCallback,\n}) {\n return provideRouter(\n [\n recursiveWrapRoute({\n path: '',\n loadChildren: () => wrapLoadChildren(appLoadChildren).then(routes => recursiveWrapRoutes(xxRoutes(routes), ngAtomicRoute)),\n }),\n SideAppFrameStore.route({ loadChildren: sideAppLoadChildren }),\n ],\n withPreloading(MachinaPreloadingStrategy),\n withComponentInputBinding(),\n withRouterConfig({\n // MEMO(@NozomuMiyamoto): 'always'にするとinjectRouteSkipが正常に動作しないため、'emptyOnly'にしている\n // paramsInheritanceStrategy: 'always'\n })\n );\n}\n","import { ChangeDetectionStrategy, Component, computed, Directive, inject, input } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { Action, Actions, ActionsFactory, InjectableComponent, TokenizedType, _computed } from '@ng-atomic/core';\nimport { NgAtomicComponent } from '@ng-atomic/core';\nimport { MenuButtonAtomStore } from '@ng-atomic/components/atoms/menu-button';\nimport { makeConfig } from '@ng-atomic/common/services/ui';\n\nfunction resolveActions<T = any>(actions: ActionsFactory | Action[] | Action[][]): Action<T>[] {\n if (Array.isArray(actions)) {\n return actions.map((actionOrArray) => {\n if (Array.isArray(actionOrArray) && actionOrArray.length) {\n return {\n id: 'menu',\n name: 'menu',\n icon: 'more_vert',\n children: actionOrArray,\n };\n }\n return {...actionOrArray};\n });\n } else if (typeof actions === 'function') {\n const factoryResult = actions();\n return Array.isArray(factoryResult) && factoryResult?.length ? [\n {\n id: 'menu',\n name: 'menu',\n icon: 'more_vert',\n children: factoryResult,\n }\n ] : [];\n }\n}\n\n\n@TokenizedType()\n@Directive({ standalone: true, selector: 'organisms-session-navigator' })\nexport class SessionNavigatorOrganismStore extends InjectableComponent {\n static readonly Config = makeConfig(() => {\n return () => ({\n title: undefined as string | undefined,\n startActions: <Actions>[{ id: 'menu', icon: 'menu', name: 'menu' }],\n endActions: <Actions | Action[][]>[],\n });\n }, ['components', 'organisms', 'session-navigator']);\n protected readonly config = SessionNavigatorOrganismStore.Config.inject();\n readonly startActions = input(_computed(() => this.config().startActions));\n readonly resolvedStartActions = computed(() => resolveActions(this.startActions()));\n readonly endActions = input(_computed(() => this.config().endActions));\n readonly resolvedEndActions = computed(() => resolveActions(this.endActions()));\n readonly title = input(_computed(() => this.config().title));\n}\n\n@Component({\n selector: 'organisms-session-navigator',\n standalone: true,\n imports: [\n MatButtonModule,\n MatIconModule,\n MatToolbarModule,\n MenuButtonAtomStore,\n ],\n template: `\n <mat-toolbar color=\"primary\">\n <div>\n @for (action of store.resolvedStartActions(); track trackByFn($index, action) ) {\n <atoms-menu-button [action]=\"action\" (action)=\"dispatch($event)\" injectable/>\n }\n </div>\n <div>\n @if (store.title()) {\n <span>{{ store.title() }}</span>\n } @else {\n <ng-content />\n }\n </div>\n <div>\n @for (action of store.resolvedEndActions(); track trackByFn($index, action)) {\n <atoms-menu-button [action]=\"action\" (action)=\"dispatch($event)\" injectable/>\n }\n </div>\n </mat-toolbar>\n `,\n styleUrl: './session-navigator.organism.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: SessionNavigatorOrganismStore,\n inputs: ['startActions', 'endActions', 'title'],\n }\n ],\n})\nexport class SessionNavigatorOrganism extends NgAtomicComponent {\n protected readonly store = inject(SessionNavigatorOrganismStore);\n trackByFn = (_: number, action: Action) => action;\n}\n","export * from './app';\nexport * from './router';\nexport * from './organisms/session-navigator';\n\nexport enum InvoiceAppActionId {\n UPDATE_JSON = 'UPDATE_JSON',\n NEXT_KEY_DOWN = 'NEXT_KEY_DOWN',\n PRE_KEY_DOWN = 'PRE_KEY_DOWN',\n DOWNLOAD_PDF = 'DOWNLOAD_PDF',\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xxmachina/components",
3
- "version": "19.32.0",
3
+ "version": "19.33.0",
4
4
  "license": "MIT",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",
@@ -9,7 +9,8 @@ declare enum XtermActionId {
9
9
  DATA_INPUT = "xterm:data-input",
10
10
  RESIZED = "xterm:resized",
11
11
  GITHUB_LINK_CLICK = "xterm:github-link-click",
12
- FILE_LINK_CLICK = "xterm:file-link-click"
12
+ FILE_LINK_CLICK = "xterm:file-link-click",
13
+ FOCUS_INPUT_REQUEST = "xterm:focus-input-request"
13
14
  }
14
15
  declare class XtermOrganismStore extends InjectableComponent {
15
16
  static readonly DI: {
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-organisms-xterm.d.ts","sources":["../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/xterm.organism.store.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/xterm.organism.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/github-link.provider.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/github-links.addon.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/web-links.addon.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/image.utils.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":";;;;;;;AAIA;AACE;AACA;AACA;AACA;AACD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAO4C;AAE1C;;;;;AAAuD;;;;;;;;;;;AAexD;;ACzBD;AAkDA;;AAcE;AACA;;;;;;;;;;;;AAcA;;;;AA+CA;AAsBA;;;;;;;AAOG;AACH;;AAqDA;;AAoGA;;AAmCO;AAIA;AAIA;AAIA;AAIA;AAIA;AAIA;;;;AAsBP;;;;AAIG;AACI;AACL;AACA;;;AAGD;AAuBD;;AAEG;;;;AAIJ;;;;ACnbA;AAED;;;AAEE;AAGmB;AAInB;AA0CA;AAyBD;;AC/ED;;;;AAKqB;AAGnB;AAOA;AAGD;;AClBD;;;AAGG;AACH;AAII;;;AAGF;AAMA;AAGD;;ACvBD;;AAEG;;;;;;AAOF;AAED;;;AAGG;AACH;AAmBA;;AAEG;AACH;;;AAEyD;AAgCzD;;AAEG;AACH;AA6KA;;AAEG;AACH;;;"}
1
+ {"version":3,"file":"xxmachina-components-organisms-xterm.d.ts","sources":["../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/xterm.organism.store.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/xterm.organism.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/github-link.provider.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/github-links.addon.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/web-links.addon.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/xterm/image.utils.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":";;;;;;;AAIA;AACE;AACA;AACA;AACA;AACA;AACD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAO4C;AAE1C;;;;;AAAuD;;;;;;;;;;;AAexD;;AC1BD;AAkDA;;AAcE;AACA;;;;;;;;;;;;AAcA;;;;AA+CA;AAsBA;;;;;;;AAOG;AACH;;AAqDA;;AAoGA;;AAmCO;AAIA;AAIA;AAIA;AAIA;AAIA;AAIA;;;;AAsBP;;;;AAIG;AACI;AACL;AACA;;;AAGD;AAuBD;;AAEG;;;;AAIJ;;;;ACnbA;AAED;;;AAEE;AAGmB;AAInB;AA0CA;AAyBD;;AC/ED;;;;AAKqB;AAGnB;AAOA;AAGD;;AClBD;;;AAGG;AACH;AAII;;;AAGF;AAMA;AAGD;;ACvBD;;AAEG;;;;;;AAOF;AAED;;;AAGG;AACH;AAmBA;;AAEG;AACH;;;AAEyD;AAgCzD;;AAEG;AACH;AA6KA;;AAEG;AACH;;;"}
@@ -10,7 +10,8 @@ declare enum ActionId {
10
10
  SIGN_IN = "[@ng-atomic/components] Sign In",
11
11
  SIGN_IN_WITH_GOOGLE = "[@ng-atomic/components] Sign In With Google",
12
12
  SIGN_IN_WITH_TWITTER = "[@ng-atomic/components] Sign In With Twitter",
13
- SIGN_OUT = "[@ng-atomic/components] Sign Out"
13
+ SIGN_OUT = "[@ng-atomic/components] Sign Out",
14
+ NAVIGATE = "[@ng-atomic/components] Navigate"
14
15
  }
15
16
  declare class AgentTemplate extends NgAtomicComponent implements AfterViewInit {
16
17
  static ActionId: typeof ActionId;
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-templates-agent.d.ts","sources":["../../../../../packages/@xxmachina/components/src/lib/templates/agent/agent.template.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAuBA,aAAA,QAAA;AACE;AACA;AACA;AACA;AACD;AAED,cAAA,aAAA,SAAA,iBAAA,YAAA,aAAA;;;;;;AA8FE;AACA,mCAA6B,aAAA,CAAA,MAAA;yBAEV,aAAA,CAAA,WAAA;AAEnB,+BAAyB,aAAA,CAAA,MAAA;;;;AAGtB;6BAEoB,aAAA,CAAA,MAAA,CAAA,aAAA;yBACJ,aAAA,CAAA,MAAA,CAAA,UAAA,CAAA,mBAAA;;;;;;;;;;;;;;;AAkGnB;AAIA;AAwFA;;AA+CA,2BAAA,aAAA;AAmBA,4BAAA,aAAA;;;;;;;;;;;AAyGD;AAED,iBAAA,oBAAA,IAAA,QAAA;;;;"}
1
+ {"version":3,"file":"xxmachina-components-templates-agent.d.ts","sources":["../../../../../packages/@xxmachina/components/src/lib/templates/agent/agent.template.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAuBA,aAAA,QAAA;AACE;AACA;AACA;AACA;AACA;AACD;AAED,cAAA,aAAA,SAAA,iBAAA,YAAA,aAAA;;;;;;AA8FE;AACA,mCAA6B,aAAA,CAAA,MAAA;yBAEV,aAAA,CAAA,WAAA;AAEnB,+BAAyB,aAAA,CAAA,MAAA;;;;AAGtB;6BAEoB,aAAA,CAAA,MAAA,CAAA,aAAA;yBACJ,aAAA,CAAA,MAAA,CAAA,UAAA,CAAA,mBAAA;;;;;;;;;;;;;;;AAkGnB;AAIA;AAiGA;;AA+CA,2BAAA,aAAA;AAmBA,4BAAA,aAAA;;;;;;;;;;;AAyGD;AAED,iBAAA,oBAAA,IAAA,QAAA;;;;"}