@eclipse-docks/extension-command-palette 0.7.83 → 0.7.84
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{command-palette-extension-DP53lL4g.js → command-palette-extension-DiaN6znP.js} +8 -3
- package/dist/{command-palette-extension-DP53lL4g.js.map → command-palette-extension-DiaN6znP.js.map} +1 -1
- package/dist/docks-command-palette.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/{command-palette-extension-DP53lL4g.js → command-palette-extension-DiaN6znP.js}
RENAMED
|
@@ -233,8 +233,12 @@ var DocksCommandPalette = class DocksCommandPalette extends DocksWidget {
|
|
|
233
233
|
static {
|
|
234
234
|
this.styles = css`
|
|
235
235
|
:host {
|
|
236
|
-
|
|
237
|
-
|
|
236
|
+
/* inline-flex + no width:100% keeps this on one row with siblings inside wa-button-group (flex-wrap: wrap). */
|
|
237
|
+
display: inline-flex;
|
|
238
|
+
flex-direction: column;
|
|
239
|
+
align-items: stretch;
|
|
240
|
+
width: auto;
|
|
241
|
+
flex: 0 1 auto;
|
|
238
242
|
max-width: 600px;
|
|
239
243
|
min-width: 300px;
|
|
240
244
|
position: relative;
|
|
@@ -412,10 +416,11 @@ registerAll({
|
|
|
412
416
|
} }
|
|
413
417
|
});
|
|
414
418
|
contributionRegistry.registerContribution(TOOLBAR_MAIN_CENTER, {
|
|
419
|
+
name: "commandPalette.toolbar",
|
|
415
420
|
label: "Command Palette",
|
|
416
421
|
icon: "terminal",
|
|
417
422
|
component: () => html$1`<docks-command-palette></docks-command-palette>`
|
|
418
423
|
});
|
|
419
424
|
//#endregion
|
|
420
425
|
|
|
421
|
-
//# sourceMappingURL=command-palette-extension-
|
|
426
|
+
//# sourceMappingURL=command-palette-extension-DiaN6znP.js.map
|
package/dist/{command-palette-extension-DP53lL4g.js.map → command-palette-extension-DiaN6znP.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-palette-extension-DP53lL4g.js","names":[],"sources":["../src/docks-command-palette.ts","../src/command-palette-extension.ts"],"sourcesContent":["import { html } from \"lit\";\nimport { css } from \"lit\";\nimport { customElement, state } from \"lit/decorators.js\";\nimport { createRef, ref, type Ref } from \"lit/directives/ref.js\";\nimport { DocksWidget, commandRegistry, type ExecutionContext, i18n, toastError } from \"@eclipse-docks/core\";\n\nexport const t = await i18n(import.meta.glob(\"./commandpalette*.json\"));\n\n// Event topic for opening the command palette\nexport const TOPIC_OPEN_COMMAND_PALETTE = \"commandpalette/open\";\n\n@customElement(\"docks-command-palette\")\nexport class DocksCommandPalette extends DocksWidget {\n @state()\n private inputValue: string = \"\";\n\n @state()\n private filteredCommands: any[] = [];\n\n @state()\n private allCommands: any[] = [];\n\n @state()\n private showParameterPrompt: boolean = false;\n\n @state()\n private selectedCommand: any = null;\n\n @state()\n private parameterValues: { [key: string]: string } = {};\n\n @state()\n private isPaletteOpen: boolean = false;\n\n private inputRef: Ref<any> = createRef();\n private dialogRef: Ref<any> = createRef();\n private boundDocumentClickHandler?: (e: MouseEvent) => void;\n private executionContext: ExecutionContext | undefined;\n\n protected doInitUI() {\n this.subscribe(TOPIC_OPEN_COMMAND_PALETTE, () => {\n this.openPalette();\n });\n\n this.boundDocumentClickHandler = this.handleDocumentClick.bind(this);\n document.addEventListener(\"click\", this.boundDocumentClickHandler);\n }\n\n private async handleDocumentClick(e: MouseEvent) {\n if (!this.isPaletteOpen && !this.showParameterPrompt) return;\n\n await this.updateComplete;\n const target = e.target as Node;\n\n if (this.contains(target)) return;\n\n if (this.dialogRef.value) {\n const dialog = this.dialogRef.value as HTMLElement;\n if (dialog.contains(target)) return;\n }\n\n let element = target as HTMLElement;\n while (element) {\n if (element.tagName === \"WA-DIALOG\") return;\n element = element.parentElement as HTMLElement;\n }\n\n this.closePalette();\n this.closeParameterPrompt();\n }\n\n private handleDialogClick(e: Event) {\n e.stopPropagation();\n }\n\n private handleInputFocus() {\n requestAnimationFrame(() => {\n this.isPaletteOpen = true;\n });\n }\n\n private handleInputClick(e: Event) {\n e.stopPropagation();\n this.openPalette();\n }\n\n private handleInputMouseDown(e: Event) {\n e.stopPropagation();\n }\n\n private updateCommandList() {\n const commands = commandRegistry.listCommands(this.executionContext || {});\n this.allCommands = Object.values(commands)\n .filter((cmd: any) => cmd.id !== \"commandpalette.open\")\n .map((cmd: any) => ({\n id: cmd.id,\n name: cmd.name,\n description: cmd.description,\n icon: cmd.icon,\n keyBinding: cmd.keyBinding,\n }));\n\n this.filteredCommands = [...this.allCommands];\n }\n\n public async openPalette() {\n this.executionContext = commandRegistry.createExecutionContext();\n this.inputValue = \"\";\n this.updateCommandList();\n this.showParameterPrompt = false;\n this.isPaletteOpen = true;\n\n await this.updateComplete;\n\n if (this.inputRef.value) {\n this.inputRef.value.focus();\n }\n }\n\n private closePalette() {\n this.isPaletteOpen = false;\n this.inputValue = \"\";\n this.showParameterPrompt = false;\n this.executionContext = undefined;\n }\n\n private handleInputChange(e: Event) {\n const input = e.target as any;\n this.inputValue = input.value;\n this.filterCommands();\n }\n\n private filterCommands() {\n if (!this.inputValue.trim()) {\n this.filteredCommands = [...this.allCommands];\n } else {\n const searchLower = this.inputValue.toLowerCase();\n this.filteredCommands = this.allCommands.filter(\n (cmd) =>\n cmd.name.toLowerCase().includes(searchLower) ||\n cmd.id.toLowerCase().includes(searchLower) ||\n (cmd.description && cmd.description.toLowerCase().includes(searchLower)),\n );\n }\n }\n\n private handleKeyDown(e: KeyboardEvent) {\n if (e.key === \"Escape\") {\n e.preventDefault();\n this.closePalette();\n }\n }\n\n private handleCommandClick(e: Event, command: any) {\n if (!command) return;\n e.stopPropagation();\n this.inputValue = \"\";\n this.filterCommands();\n this.runCommand(command);\n }\n\n private handleContainerClick(e: Event) {\n e.stopPropagation();\n }\n\n private runCommand(command: any) {\n if (!command) return;\n\n const fullCommand = commandRegistry.getCommand(command.id);\n const hasParameters = fullCommand?.parameters && fullCommand.parameters.length > 0;\n\n if (hasParameters) {\n this.selectedCommand = fullCommand;\n this.parameterValues = {};\n this.showParameterPrompt = true;\n } else {\n void this.executeCommandWithParams(command.id, {});\n }\n }\n\n private async executeCommandWithParams(commandId: string, params: any) {\n try {\n await commandRegistry.execute(commandId, { ...(this.executionContext || {}), params });\n this.closePalette();\n this.closeParameterPrompt();\n } catch (error: any) {\n console.error(\"Failed to execute command:\", error);\n }\n }\n\n private closeParameterPrompt() {\n this.showParameterPrompt = false;\n this.selectedCommand = null;\n this.parameterValues = {};\n }\n\n private handleParameterInput(paramName: string, value: string) {\n this.parameterValues = {\n ...this.parameterValues,\n [paramName]: value,\n };\n }\n\n private executeWithParameters() {\n if (!this.selectedCommand) return;\n\n const missingParams = this.selectedCommand.parameters\n ?.filter((p: any) => p.required && !this.parameterValues[p.name])\n .map((p: any) => p.name);\n\n if (missingParams && missingParams.length > 0) {\n toastError(t.MISSING_REQUIRED_PARAMS({ params: missingParams.join(\", \") }));\n return;\n }\n\n void this.executeCommandWithParams(this.selectedCommand.id, this.parameterValues);\n }\n\n protected render() {\n return html`\n <wa-input\n appearance=\"filled\"\n ${ref(this.inputRef)}\n placeholder=\"${t.PLACEHOLDER}\"\n .value=${this.inputValue}\n @input=${this.handleInputChange}\n @keydown=${this.handleKeyDown}\n @focus=${this.handleInputFocus}\n @click=${this.handleInputClick}\n @mousedown=${this.handleInputMouseDown}\n autocomplete=\"off\"\n size=\"small\"\n >\n <wa-icon slot=\"start\" name=\"terminal\" label=\"Terminal\"></wa-icon>\n </wa-input>\n\n <div class=\"commands-container ${this.isPaletteOpen ? \"open\" : \"\"}\" @click=${this.handleContainerClick}>\n ${this.filteredCommands.length > 0\n ? html`${this.filteredCommands.map(\n (cmd) => html`\n <div class=\"command-item\" @click=${(e: Event) => this.handleCommandClick(e, cmd)}>\n ${cmd.icon\n ? html`<div class=\"command-icon\">\n <wa-icon name=\"${cmd.icon}\" label=\"${cmd.name}\"></wa-icon>\n </div>`\n : html`<div class=\"command-icon\">\n <wa-icon name=\"terminal\" label=\"Command\"></wa-icon>\n </div>`}\n <div class=\"command-info\">\n <div class=\"command-name\">${cmd.name}</div>\n <div class=\"command-id\">${cmd.id}</div>\n ${cmd.description\n ? html`<div class=\"command-description\">${cmd.description}</div>`\n : \"\"}\n </div>\n ${cmd.keyBinding\n ? html`<div class=\"command-keybinding\">${cmd.keyBinding}</div>`\n : \"\"}\n </div>\n `,\n )}`\n : html`<div class=\"no-results\">\n <wa-icon\n name=\"search\"\n label=\"${t.NO_COMMANDS_FOUND}\"\n style=\"font-size: 24px; margin-bottom: 4px; opacity: 0.3;\"\n ></wa-icon>\n <div>${t.NO_COMMANDS_FOUND}</div>\n </div>`}\n </div>\n\n ${this.showParameterPrompt && this.selectedCommand\n ? html`<wa-dialog\n ${ref(this.dialogRef)}\n label=\"${this.selectedCommand.name} - ${t.PARAMETERS}\"\n open\n @wa-request-close=${this.closeParameterPrompt}\n @click=${this.handleDialogClick}\n >\n <div class=\"parameter-prompt-title\">\n ${t.ENTER_PARAMETERS({ commandName: this.selectedCommand.name })}\n </div>\n ${this.selectedCommand.parameters?.map(\n (param: any) => html`<div class=\"parameter-field\">\n <wa-input\n label=\"${param.name}${param.required ? \" *\" : \"\"}\"\n hint=${param.description || \"\"}\n placeholder=${param.description || t.ENTER_PARAM({ paramName: param.name })}\n .value=${this.parameterValues[param.name] || \"\"}\n @input=${(e: Event) => this.handleParameterInput(param.name, (e.target as any).value)}\n ></wa-input>\n </div>`,\n )}\n <div class=\"parameter-actions\">\n <wa-button variant=\"default\" @click=${this.closeParameterPrompt}>${t.CANCEL}</wa-button>\n <wa-button variant=\"primary\" @click=${this.executeWithParameters}>${t.EXECUTE}</wa-button>\n </div>\n </wa-dialog>`\n : \"\"}\n `;\n }\n\n protected doClose() {\n if (this.boundDocumentClickHandler) {\n document.removeEventListener(\"click\", this.boundDocumentClickHandler);\n this.boundDocumentClickHandler = undefined;\n }\n }\n\n static styles = css`\n :host {\n display: block;\n width: 100%;\n max-width: 600px;\n min-width: 300px;\n position: relative;\n }\n\n wa-input {\n max-width: 300px;\n }\n\n .commands-container {\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n margin-top: 4px;\n background: var(--wa-color-neutral-05);\n border: 1px solid var(--wa-color-neutral-25);\n border-radius: 4px;\n max-height: 400px;\n overflow-y: auto;\n z-index: 1000;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.8);\n display: none;\n }\n\n :host-context(.wa-light) .commands-container {\n background: var(--wa-color-neutral-95);\n border: 1px solid var(--wa-color-neutral-75);\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);\n }\n\n .commands-container.open {\n display: block;\n }\n\n .command-item {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 16px;\n cursor: pointer;\n transition: background-color 0.15s;\n border-bottom: 1px solid var(--wa-color-neutral-15);\n }\n\n :host-context(.wa-light) .command-item {\n border-bottom: 1px solid var(--wa-color-neutral-85);\n }\n\n .command-item:last-child {\n border-bottom: none;\n }\n\n .command-item:hover {\n background: var(--wa-color-neutral-20);\n }\n\n :host-context(.wa-light) .command-item:hover {\n background: var(--wa-color-neutral-80);\n }\n\n .command-icon {\n flex-shrink: 0;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0.7;\n }\n\n .command-info {\n flex: 1;\n min-width: 0;\n }\n\n .command-name {\n font-size: 14px;\n font-weight: 500;\n margin-bottom: 2px;\n }\n\n .command-id {\n font-size: 11px;\n opacity: 0.5;\n font-family: monospace;\n margin-bottom: 2px;\n }\n\n .command-description {\n font-size: 12px;\n opacity: 0.7;\n }\n\n .command-keybinding {\n flex-shrink: 0;\n margin-left: auto;\n padding: 2px 8px;\n background: var(--wa-color-neutral-15);\n border: 1px solid var(--wa-color-neutral-25);\n border-radius: 3px;\n font-size: 11px;\n font-family: monospace;\n opacity: 0.7;\n }\n\n :host-context(.wa-light) .command-keybinding {\n background: var(--wa-color-neutral-85);\n border: 1px solid var(--wa-color-neutral-75);\n }\n\n .no-results {\n padding: 20px;\n text-align: center;\n color: var(--wa-color-neutral-60);\n }\n\n :host-context(.wa-light) .no-results {\n color: var(--wa-color-neutral-40);\n }\n\n wa-dialog::part(panel) {\n max-width: 600px;\n width: 90vw;\n }\n\n wa-dialog::part(body) {\n padding: 20px;\n }\n\n .parameter-prompt-title {\n font-size: 16px;\n font-weight: 600;\n margin-bottom: 16px;\n }\n\n .parameter-field {\n margin-bottom: 12px;\n }\n\n .parameter-field wa-input {\n width: 100%;\n }\n\n .parameter-actions {\n display: flex;\n gap: 8px;\n justify-content: flex-end;\n margin-top: 20px;\n }\n `;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"docks-command-palette\": DocksCommandPalette;\n }\n}\n","import { contributionRegistry, registerAll, TOOLBAR_MAIN_CENTER, publish } from \"@eclipse-docks/core\";\nimport { t, TOPIC_OPEN_COMMAND_PALETTE } from \"./docks-command-palette\";\nimport { html } from \"@eclipse-docks/core/externals/lit\";\n\nregisterAll({\n command: {\n id: \"commandpalette.open\",\n name: t.OPEN_COMMAND_PALETTE,\n description: t.OPEN_COMMAND_PALETTE_DESC,\n icon: \"terminal\",\n keyBinding: \"CTRL+SHIFT+P\",\n },\n handler: {\n execute: () => {\n publish(TOPIC_OPEN_COMMAND_PALETTE, null);\n return null;\n },\n },\n});\n\ncontributionRegistry.registerContribution(TOOLBAR_MAIN_CENTER, {\n label: \"Command Palette\",\n icon: \"terminal\",\n component: () => html`<docks-command-palette></docks-command-palette>`,\n});\n\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"command-palette-extension-DiaN6znP.js","names":[],"sources":["../src/docks-command-palette.ts","../src/command-palette-extension.ts"],"sourcesContent":["import { html } from \"lit\";\nimport { css } from \"lit\";\nimport { customElement, state } from \"lit/decorators.js\";\nimport { createRef, ref, type Ref } from \"lit/directives/ref.js\";\nimport { DocksWidget, commandRegistry, type ExecutionContext, i18n, toastError } from \"@eclipse-docks/core\";\n\nexport const t = await i18n(import.meta.glob(\"./commandpalette*.json\"));\n\n// Event topic for opening the command palette\nexport const TOPIC_OPEN_COMMAND_PALETTE = \"commandpalette/open\";\n\n@customElement(\"docks-command-palette\")\nexport class DocksCommandPalette extends DocksWidget {\n @state()\n private inputValue: string = \"\";\n\n @state()\n private filteredCommands: any[] = [];\n\n @state()\n private allCommands: any[] = [];\n\n @state()\n private showParameterPrompt: boolean = false;\n\n @state()\n private selectedCommand: any = null;\n\n @state()\n private parameterValues: { [key: string]: string } = {};\n\n @state()\n private isPaletteOpen: boolean = false;\n\n private inputRef: Ref<any> = createRef();\n private dialogRef: Ref<any> = createRef();\n private boundDocumentClickHandler?: (e: MouseEvent) => void;\n private executionContext: ExecutionContext | undefined;\n\n protected doInitUI() {\n this.subscribe(TOPIC_OPEN_COMMAND_PALETTE, () => {\n this.openPalette();\n });\n\n this.boundDocumentClickHandler = this.handleDocumentClick.bind(this);\n document.addEventListener(\"click\", this.boundDocumentClickHandler);\n }\n\n private async handleDocumentClick(e: MouseEvent) {\n if (!this.isPaletteOpen && !this.showParameterPrompt) return;\n\n await this.updateComplete;\n const target = e.target as Node;\n\n if (this.contains(target)) return;\n\n if (this.dialogRef.value) {\n const dialog = this.dialogRef.value as HTMLElement;\n if (dialog.contains(target)) return;\n }\n\n let element = target as HTMLElement;\n while (element) {\n if (element.tagName === \"WA-DIALOG\") return;\n element = element.parentElement as HTMLElement;\n }\n\n this.closePalette();\n this.closeParameterPrompt();\n }\n\n private handleDialogClick(e: Event) {\n e.stopPropagation();\n }\n\n private handleInputFocus() {\n requestAnimationFrame(() => {\n this.isPaletteOpen = true;\n });\n }\n\n private handleInputClick(e: Event) {\n e.stopPropagation();\n this.openPalette();\n }\n\n private handleInputMouseDown(e: Event) {\n e.stopPropagation();\n }\n\n private updateCommandList() {\n const commands = commandRegistry.listCommands(this.executionContext || {});\n this.allCommands = Object.values(commands)\n .filter((cmd: any) => cmd.id !== \"commandpalette.open\")\n .map((cmd: any) => ({\n id: cmd.id,\n name: cmd.name,\n description: cmd.description,\n icon: cmd.icon,\n keyBinding: cmd.keyBinding,\n }));\n\n this.filteredCommands = [...this.allCommands];\n }\n\n public async openPalette() {\n this.executionContext = commandRegistry.createExecutionContext();\n this.inputValue = \"\";\n this.updateCommandList();\n this.showParameterPrompt = false;\n this.isPaletteOpen = true;\n\n await this.updateComplete;\n\n if (this.inputRef.value) {\n this.inputRef.value.focus();\n }\n }\n\n private closePalette() {\n this.isPaletteOpen = false;\n this.inputValue = \"\";\n this.showParameterPrompt = false;\n this.executionContext = undefined;\n }\n\n private handleInputChange(e: Event) {\n const input = e.target as any;\n this.inputValue = input.value;\n this.filterCommands();\n }\n\n private filterCommands() {\n if (!this.inputValue.trim()) {\n this.filteredCommands = [...this.allCommands];\n } else {\n const searchLower = this.inputValue.toLowerCase();\n this.filteredCommands = this.allCommands.filter(\n (cmd) =>\n cmd.name.toLowerCase().includes(searchLower) ||\n cmd.id.toLowerCase().includes(searchLower) ||\n (cmd.description && cmd.description.toLowerCase().includes(searchLower)),\n );\n }\n }\n\n private handleKeyDown(e: KeyboardEvent) {\n if (e.key === \"Escape\") {\n e.preventDefault();\n this.closePalette();\n }\n }\n\n private handleCommandClick(e: Event, command: any) {\n if (!command) return;\n e.stopPropagation();\n this.inputValue = \"\";\n this.filterCommands();\n this.runCommand(command);\n }\n\n private handleContainerClick(e: Event) {\n e.stopPropagation();\n }\n\n private runCommand(command: any) {\n if (!command) return;\n\n const fullCommand = commandRegistry.getCommand(command.id);\n const hasParameters = fullCommand?.parameters && fullCommand.parameters.length > 0;\n\n if (hasParameters) {\n this.selectedCommand = fullCommand;\n this.parameterValues = {};\n this.showParameterPrompt = true;\n } else {\n void this.executeCommandWithParams(command.id, {});\n }\n }\n\n private async executeCommandWithParams(commandId: string, params: any) {\n try {\n await commandRegistry.execute(commandId, { ...(this.executionContext || {}), params });\n this.closePalette();\n this.closeParameterPrompt();\n } catch (error: any) {\n console.error(\"Failed to execute command:\", error);\n }\n }\n\n private closeParameterPrompt() {\n this.showParameterPrompt = false;\n this.selectedCommand = null;\n this.parameterValues = {};\n }\n\n private handleParameterInput(paramName: string, value: string) {\n this.parameterValues = {\n ...this.parameterValues,\n [paramName]: value,\n };\n }\n\n private executeWithParameters() {\n if (!this.selectedCommand) return;\n\n const missingParams = this.selectedCommand.parameters\n ?.filter((p: any) => p.required && !this.parameterValues[p.name])\n .map((p: any) => p.name);\n\n if (missingParams && missingParams.length > 0) {\n toastError(t.MISSING_REQUIRED_PARAMS({ params: missingParams.join(\", \") }));\n return;\n }\n\n void this.executeCommandWithParams(this.selectedCommand.id, this.parameterValues);\n }\n\n protected render() {\n return html`\n <wa-input\n appearance=\"filled\"\n ${ref(this.inputRef)}\n placeholder=\"${t.PLACEHOLDER}\"\n .value=${this.inputValue}\n @input=${this.handleInputChange}\n @keydown=${this.handleKeyDown}\n @focus=${this.handleInputFocus}\n @click=${this.handleInputClick}\n @mousedown=${this.handleInputMouseDown}\n autocomplete=\"off\"\n size=\"small\"\n >\n <wa-icon slot=\"start\" name=\"terminal\" label=\"Terminal\"></wa-icon>\n </wa-input>\n\n <div class=\"commands-container ${this.isPaletteOpen ? \"open\" : \"\"}\" @click=${this.handleContainerClick}>\n ${this.filteredCommands.length > 0\n ? html`${this.filteredCommands.map(\n (cmd) => html`\n <div class=\"command-item\" @click=${(e: Event) => this.handleCommandClick(e, cmd)}>\n ${cmd.icon\n ? html`<div class=\"command-icon\">\n <wa-icon name=\"${cmd.icon}\" label=\"${cmd.name}\"></wa-icon>\n </div>`\n : html`<div class=\"command-icon\">\n <wa-icon name=\"terminal\" label=\"Command\"></wa-icon>\n </div>`}\n <div class=\"command-info\">\n <div class=\"command-name\">${cmd.name}</div>\n <div class=\"command-id\">${cmd.id}</div>\n ${cmd.description\n ? html`<div class=\"command-description\">${cmd.description}</div>`\n : \"\"}\n </div>\n ${cmd.keyBinding\n ? html`<div class=\"command-keybinding\">${cmd.keyBinding}</div>`\n : \"\"}\n </div>\n `,\n )}`\n : html`<div class=\"no-results\">\n <wa-icon\n name=\"search\"\n label=\"${t.NO_COMMANDS_FOUND}\"\n style=\"font-size: 24px; margin-bottom: 4px; opacity: 0.3;\"\n ></wa-icon>\n <div>${t.NO_COMMANDS_FOUND}</div>\n </div>`}\n </div>\n\n ${this.showParameterPrompt && this.selectedCommand\n ? html`<wa-dialog\n ${ref(this.dialogRef)}\n label=\"${this.selectedCommand.name} - ${t.PARAMETERS}\"\n open\n @wa-request-close=${this.closeParameterPrompt}\n @click=${this.handleDialogClick}\n >\n <div class=\"parameter-prompt-title\">\n ${t.ENTER_PARAMETERS({ commandName: this.selectedCommand.name })}\n </div>\n ${this.selectedCommand.parameters?.map(\n (param: any) => html`<div class=\"parameter-field\">\n <wa-input\n label=\"${param.name}${param.required ? \" *\" : \"\"}\"\n hint=${param.description || \"\"}\n placeholder=${param.description || t.ENTER_PARAM({ paramName: param.name })}\n .value=${this.parameterValues[param.name] || \"\"}\n @input=${(e: Event) => this.handleParameterInput(param.name, (e.target as any).value)}\n ></wa-input>\n </div>`,\n )}\n <div class=\"parameter-actions\">\n <wa-button variant=\"default\" @click=${this.closeParameterPrompt}>${t.CANCEL}</wa-button>\n <wa-button variant=\"primary\" @click=${this.executeWithParameters}>${t.EXECUTE}</wa-button>\n </div>\n </wa-dialog>`\n : \"\"}\n `;\n }\n\n protected doClose() {\n if (this.boundDocumentClickHandler) {\n document.removeEventListener(\"click\", this.boundDocumentClickHandler);\n this.boundDocumentClickHandler = undefined;\n }\n }\n\n static styles = css`\n :host {\n /* inline-flex + no width:100% keeps this on one row with siblings inside wa-button-group (flex-wrap: wrap). */\n display: inline-flex;\n flex-direction: column;\n align-items: stretch;\n width: auto;\n flex: 0 1 auto;\n max-width: 600px;\n min-width: 300px;\n position: relative;\n }\n\n wa-input {\n max-width: 300px;\n }\n\n .commands-container {\n position: absolute;\n top: 100%;\n left: 0;\n right: 0;\n margin-top: 4px;\n background: var(--wa-color-neutral-05);\n border: 1px solid var(--wa-color-neutral-25);\n border-radius: 4px;\n max-height: 400px;\n overflow-y: auto;\n z-index: 1000;\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.8);\n display: none;\n }\n\n :host-context(.wa-light) .commands-container {\n background: var(--wa-color-neutral-95);\n border: 1px solid var(--wa-color-neutral-75);\n box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);\n }\n\n .commands-container.open {\n display: block;\n }\n\n .command-item {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 16px;\n cursor: pointer;\n transition: background-color 0.15s;\n border-bottom: 1px solid var(--wa-color-neutral-15);\n }\n\n :host-context(.wa-light) .command-item {\n border-bottom: 1px solid var(--wa-color-neutral-85);\n }\n\n .command-item:last-child {\n border-bottom: none;\n }\n\n .command-item:hover {\n background: var(--wa-color-neutral-20);\n }\n\n :host-context(.wa-light) .command-item:hover {\n background: var(--wa-color-neutral-80);\n }\n\n .command-icon {\n flex-shrink: 0;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0.7;\n }\n\n .command-info {\n flex: 1;\n min-width: 0;\n }\n\n .command-name {\n font-size: 14px;\n font-weight: 500;\n margin-bottom: 2px;\n }\n\n .command-id {\n font-size: 11px;\n opacity: 0.5;\n font-family: monospace;\n margin-bottom: 2px;\n }\n\n .command-description {\n font-size: 12px;\n opacity: 0.7;\n }\n\n .command-keybinding {\n flex-shrink: 0;\n margin-left: auto;\n padding: 2px 8px;\n background: var(--wa-color-neutral-15);\n border: 1px solid var(--wa-color-neutral-25);\n border-radius: 3px;\n font-size: 11px;\n font-family: monospace;\n opacity: 0.7;\n }\n\n :host-context(.wa-light) .command-keybinding {\n background: var(--wa-color-neutral-85);\n border: 1px solid var(--wa-color-neutral-75);\n }\n\n .no-results {\n padding: 20px;\n text-align: center;\n color: var(--wa-color-neutral-60);\n }\n\n :host-context(.wa-light) .no-results {\n color: var(--wa-color-neutral-40);\n }\n\n wa-dialog::part(panel) {\n max-width: 600px;\n width: 90vw;\n }\n\n wa-dialog::part(body) {\n padding: 20px;\n }\n\n .parameter-prompt-title {\n font-size: 16px;\n font-weight: 600;\n margin-bottom: 16px;\n }\n\n .parameter-field {\n margin-bottom: 12px;\n }\n\n .parameter-field wa-input {\n width: 100%;\n }\n\n .parameter-actions {\n display: flex;\n gap: 8px;\n justify-content: flex-end;\n margin-top: 20px;\n }\n `;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"docks-command-palette\": DocksCommandPalette;\n }\n}\n","import { contributionRegistry, registerAll, TOOLBAR_MAIN_CENTER, publish } from \"@eclipse-docks/core\";\nimport { t, TOPIC_OPEN_COMMAND_PALETTE } from \"./docks-command-palette\";\nimport { html } from \"@eclipse-docks/core/externals/lit\";\n\nregisterAll({\n command: {\n id: \"commandpalette.open\",\n name: t.OPEN_COMMAND_PALETTE,\n description: t.OPEN_COMMAND_PALETTE_DESC,\n icon: \"terminal\",\n keyBinding: \"CTRL+SHIFT+P\",\n },\n handler: {\n execute: () => {\n publish(TOPIC_OPEN_COMMAND_PALETTE, null);\n return null;\n },\n },\n});\n\ncontributionRegistry.registerContribution(TOOLBAR_MAIN_CENTER, {\n name: 'commandPalette.toolbar',\n label: \"Command Palette\",\n icon: \"terminal\",\n component: () => html`<docks-command-palette></docks-command-palette>`,\n});\n\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docks-command-palette.d.ts","sourceRoot":"","sources":["../src/docks-command-palette.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA4D,MAAM,qBAAqB,CAAC;AAE5G,eAAO,MAAM,CAAC;;CAAyD,CAAC;AAGxE,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAEhE,qBACa,mBAAoB,SAAQ,WAAW;IAElD,OAAO,CAAC,UAAU,CAAc;IAGhC,OAAO,CAAC,gBAAgB,CAAa;IAGrC,OAAO,CAAC,WAAW,CAAa;IAGhC,OAAO,CAAC,mBAAmB,CAAkB;IAG7C,OAAO,CAAC,eAAe,CAAa;IAGpC,OAAO,CAAC,eAAe,CAAiC;IAGxD,OAAO,CAAC,aAAa,CAAkB;IAEvC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,yBAAyB,CAAC,CAA0B;IAC5D,OAAO,CAAC,gBAAgB,CAA+B;IAEvD,SAAS,CAAC,QAAQ;YASJ,mBAAmB;IAuBjC,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,iBAAiB;IAeZ,WAAW;IAcxB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,UAAU;YAeJ,wBAAwB;IAUtC,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,qBAAqB;IAe7B,SAAS,CAAC,MAAM;IAoFhB,SAAS,CAAC,OAAO;IAOjB,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"docks-command-palette.d.ts","sourceRoot":"","sources":["../src/docks-command-palette.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA4D,MAAM,qBAAqB,CAAC;AAE5G,eAAO,MAAM,CAAC;;CAAyD,CAAC;AAGxE,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAEhE,qBACa,mBAAoB,SAAQ,WAAW;IAElD,OAAO,CAAC,UAAU,CAAc;IAGhC,OAAO,CAAC,gBAAgB,CAAa;IAGrC,OAAO,CAAC,WAAW,CAAa;IAGhC,OAAO,CAAC,mBAAmB,CAAkB;IAG7C,OAAO,CAAC,eAAe,CAAa;IAGpC,OAAO,CAAC,eAAe,CAAiC;IAGxD,OAAO,CAAC,aAAa,CAAkB;IAEvC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,yBAAyB,CAAC,CAA0B;IAC5D,OAAO,CAAC,gBAAgB,CAA+B;IAEvD,SAAS,CAAC,QAAQ;YASJ,mBAAmB;IAuBjC,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,iBAAiB;IAeZ,WAAW;IAcxB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,UAAU;YAeJ,wBAAwB;IAUtC,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,qBAAqB;IAe7B,SAAS,CAAC,MAAM;IAoFhB,SAAS,CAAC,OAAO;IAOjB,MAAM,CAAC,MAAM,0BA8JX;CACH;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,uBAAuB,EAAE,mBAAmB,CAAC;KAC9C;CACF"}
|
package/dist/index.js
CHANGED
|
@@ -9,7 +9,7 @@ extensionRegistry.registerExtension({
|
|
|
9
9
|
id: pkg.name,
|
|
10
10
|
name: t.EXT_COMMANDPALETTE_NAME,
|
|
11
11
|
description: t.EXT_COMMANDPALETTE_DESC,
|
|
12
|
-
loader: () => import("./command-palette-extension-
|
|
12
|
+
loader: () => import("./command-palette-extension-DiaN6znP.js"),
|
|
13
13
|
icon: "terminal"
|
|
14
14
|
});
|
|
15
15
|
//#endregion
|