@memberjunction/ng-dashboards 5.3.1 → 5.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AI/components/agents/agent-configuration.component.js.map +1 -1
- package/dist/AI/components/agents/agent-editor.component.js.map +1 -1
- package/dist/AI/components/agents/agent-filter-panel.component.js.map +1 -1
- package/dist/AI/components/charts/performance-heatmap.component.js.map +1 -1
- package/dist/AI/components/charts/time-series-chart.component.js.map +1 -1
- package/dist/AI/components/execution-monitoring.component.js.map +1 -1
- package/dist/AI/components/models/model-management.component.js.map +1 -1
- package/dist/AI/components/prompts/model-prompt-priority-matrix.component.js.map +1 -1
- package/dist/AI/components/prompts/prompt-filter-panel.component.js.map +1 -1
- package/dist/AI/components/prompts/prompt-management.component.js.map +1 -1
- package/dist/AI/components/prompts/prompt-version-control.component.js.map +1 -1
- package/dist/AI/components/system/system-config-filter-panel.component.js.map +1 -1
- package/dist/AI/components/system/system-configuration.component.js.map +1 -1
- package/dist/AI/components/widgets/kpi-card.component.js.map +1 -1
- package/dist/AI/components/widgets/live-execution-widget.component.js.map +1 -1
- package/dist/AI/index.js.map +1 -1
- package/dist/AI/services/ai-instrumentation.service.js.map +1 -1
- package/dist/APIKeys/api-applications-panel.component.js +2 -2
- package/dist/APIKeys/api-applications-panel.component.js.map +1 -1
- package/dist/APIKeys/api-key-create-dialog.component.js +2 -2
- package/dist/APIKeys/api-key-create-dialog.component.js.map +1 -1
- package/dist/APIKeys/api-key-edit-panel.component.js +2 -2
- package/dist/APIKeys/api-key-edit-panel.component.js.map +1 -1
- package/dist/APIKeys/api-key-list.component.js +2 -2
- package/dist/APIKeys/api-key-list.component.js.map +1 -1
- package/dist/APIKeys/api-keys-resource.component.js +2 -2
- package/dist/APIKeys/api-keys-resource.component.js.map +1 -1
- package/dist/APIKeys/api-scopes-panel.component.js +2 -2
- package/dist/APIKeys/api-scopes-panel.component.js.map +1 -1
- package/dist/APIKeys/api-usage-panel.component.js +2 -2
- package/dist/APIKeys/api-usage-panel.component.js.map +1 -1
- package/dist/APIKeys/index.js.map +1 -1
- package/dist/Actions/components/actions-list-view.component.js.map +1 -1
- package/dist/Actions/components/actions-overview.component.js.map +1 -1
- package/dist/Actions/components/categories-list-view.component.js.map +1 -1
- package/dist/Actions/components/code-management.component.js.map +1 -1
- package/dist/Actions/components/entity-integration.component.js.map +1 -1
- package/dist/Actions/components/execution-monitoring.component.js.map +1 -1
- package/dist/Actions/components/executions-list-view.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-breadcrumb.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-card.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-explorer.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-list-item.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-toolbar.component.js.map +1 -1
- package/dist/Actions/components/explorer/action-tree-panel.component.js.map +1 -1
- package/dist/Actions/components/explorer/index.js.map +1 -1
- package/dist/Actions/components/explorer/new-action-panel.component.js.map +1 -1
- package/dist/Actions/components/explorer/new-category-panel.component.js.map +1 -1
- package/dist/Actions/components/scheduled-actions.component.js.map +1 -1
- package/dist/Actions/components/security-permissions.component.js.map +1 -1
- package/dist/Actions/index.js.map +1 -1
- package/dist/Actions/services/action-explorer-state.service.js.map +1 -1
- package/dist/Communication/communication-dashboard.component.js.map +1 -1
- package/dist/Communication/communication-logs-resource.component.js.map +1 -1
- package/dist/Communication/communication-monitor-resource.component.js.map +1 -1
- package/dist/Communication/communication-providers-resource.component.js.map +1 -1
- package/dist/Communication/communication-runs-resource.component.js.map +1 -1
- package/dist/Communication/communication-templates-resource.component.js.map +1 -1
- package/dist/ComponentStudio/component-studio-dashboard.component.js.map +1 -1
- package/dist/ComponentStudio/components/ai-assistant/ai-assistant-panel.component.js.map +1 -1
- package/dist/ComponentStudio/components/artifact-load-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/artifact-selection-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/browser/component-browser.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/code-editor-panel.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/data-requirements-editor.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/requirements-editor.component.js.map +1 -1
- package/dist/ComponentStudio/components/editors/spec-editor.component.js.map +1 -1
- package/dist/ComponentStudio/components/new-component-dialog/new-component-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/text-import-dialog.component.js.map +1 -1
- package/dist/ComponentStudio/components/workspace/component-preview.component.js.map +1 -1
- package/dist/ComponentStudio/components/workspace/editor-tabs.component.js.map +1 -1
- package/dist/ComponentStudio/index.js.map +1 -1
- package/dist/ComponentStudio/services/component-studio-state.service.js.map +1 -1
- package/dist/ComponentStudio/services/component-version.service.js.map +1 -1
- package/dist/Credentials/components/credentials-audit-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-categories-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-list-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-overview-resource.component.js.map +1 -1
- package/dist/Credentials/components/credentials-types-resource.component.js.map +1 -1
- package/dist/Credentials/credentials-dashboard.component.js.map +1 -1
- package/dist/Credentials/index.js.map +1 -1
- package/dist/Credentials/pipes/group-by.pipe.js.map +1 -1
- package/dist/DashboardBrowser/dashboard-browser-resource.component.js.map +1 -1
- package/dist/DashboardBrowser/dashboard-share-dialog.component.js.map +1 -1
- package/dist/DataExplorer/components/filter-dialog/filter-dialog.component.js.map +1 -1
- package/dist/DataExplorer/components/navigation-panel/navigation-panel.component.d.ts +25 -3
- package/dist/DataExplorer/components/navigation-panel/navigation-panel.component.d.ts.map +1 -1
- package/dist/DataExplorer/components/navigation-panel/navigation-panel.component.js +158 -34
- package/dist/DataExplorer/components/navigation-panel/navigation-panel.component.js.map +1 -1
- package/dist/DataExplorer/components/view-selector/view-selector.component.js.map +1 -1
- package/dist/DataExplorer/data-explorer-dashboard.component.d.ts +57 -23
- package/dist/DataExplorer/data-explorer-dashboard.component.d.ts.map +1 -1
- package/dist/DataExplorer/data-explorer-dashboard.component.js +600 -445
- package/dist/DataExplorer/data-explorer-dashboard.component.js.map +1 -1
- package/dist/DataExplorer/data-explorer-resource.component.js.map +1 -1
- package/dist/DataExplorer/index.js.map +1 -1
- package/dist/DataExplorer/models/explorer-state.interface.d.ts +25 -0
- package/dist/DataExplorer/models/explorer-state.interface.d.ts.map +1 -1
- package/dist/DataExplorer/models/explorer-state.interface.js +6 -1
- package/dist/DataExplorer/models/explorer-state.interface.js.map +1 -1
- package/dist/DataExplorer/services/explorer-state.service.d.ts +21 -3
- package/dist/DataExplorer/services/explorer-state.service.d.ts.map +1 -1
- package/dist/DataExplorer/services/explorer-state.service.js +70 -36
- package/dist/DataExplorer/services/explorer-state.service.js.map +1 -1
- package/dist/EntityAdmin/entity-admin-dashboard.component.js +2 -2
- package/dist/EntityAdmin/entity-admin-dashboard.component.js.map +1 -1
- package/dist/Home/home-application.js.map +1 -1
- package/dist/Home/home-dashboard.component.d.ts +20 -5
- package/dist/Home/home-dashboard.component.d.ts.map +1 -1
- package/dist/Home/home-dashboard.component.js +128 -79
- package/dist/Home/home-dashboard.component.js.map +1 -1
- package/dist/Lists/components/lists-browse-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-categories-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-my-lists-resource.component.js.map +1 -1
- package/dist/Lists/components/lists-operations-resource.component.js.map +1 -1
- package/dist/Lists/components/venn-diagram/venn-diagram.component.js.map +1 -1
- package/dist/Lists/index.js.map +1 -1
- package/dist/Lists/services/list-set-operations.service.js.map +1 -1
- package/dist/MCP/components/mcp-connection-dialog.component.js.map +1 -1
- package/dist/MCP/components/mcp-log-detail-panel.component.js.map +1 -1
- package/dist/MCP/components/mcp-server-dialog.component.js.map +1 -1
- package/dist/MCP/components/mcp-test-tool-dialog.component.js.map +1 -1
- package/dist/MCP/index.js.map +1 -1
- package/dist/MCP/mcp-dashboard.component.js.map +1 -1
- package/dist/MCP/mcp-filter-panel.component.js.map +1 -1
- package/dist/MCP/mcp-resource.component.js.map +1 -1
- package/dist/MCP/mcp.module.js.map +1 -1
- package/dist/MCP/services/mcp-tools.service.js.map +1 -1
- package/dist/QueryBrowser/query-browser-resource.component.js.map +1 -1
- package/dist/Scheduling/components/index.js.map +1 -1
- package/dist/Scheduling/components/job-slideout.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-activity-resource.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-activity.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-jobs-resource.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-jobs.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-overview-resource.component.js.map +1 -1
- package/dist/Scheduling/components/scheduling-overview.component.js.map +1 -1
- package/dist/Scheduling/scheduling-dashboard.component.js.map +1 -1
- package/dist/Scheduling/services/scheduling-instrumentation.service.js.map +1 -1
- package/dist/SystemDiagnostics/index.js.map +1 -1
- package/dist/SystemDiagnostics/system-diagnostics.component.d.ts.map +1 -1
- package/dist/SystemDiagnostics/system-diagnostics.component.js +3 -3
- package/dist/SystemDiagnostics/system-diagnostics.component.js.map +1 -1
- package/dist/Testing/components/index.js.map +1 -1
- package/dist/Testing/components/testing-analytics-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-analytics.component.js.map +1 -1
- package/dist/Testing/components/testing-dashboard-tab-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-dashboard-tab.component.js.map +1 -1
- package/dist/Testing/components/testing-explorer-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-explorer.component.js.map +1 -1
- package/dist/Testing/components/testing-review-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-review.component.js.map +1 -1
- package/dist/Testing/components/testing-runs-resource.component.js.map +1 -1
- package/dist/Testing/components/testing-runs.component.js.map +1 -1
- package/dist/Testing/components/widgets/oracle-breakdown-table.component.js.map +1 -1
- package/dist/Testing/components/widgets/suite-tree.component.js.map +1 -1
- package/dist/Testing/components/widgets/test-run-detail-panel.component.js.map +1 -1
- package/dist/Testing/services/testing-instrumentation.service.js.map +1 -1
- package/dist/Testing/testing-dashboard.component.js.map +1 -1
- package/dist/VersionHistory/components/diff-resource.component.js.map +1 -1
- package/dist/VersionHistory/components/graph-resource.component.js.map +1 -1
- package/dist/VersionHistory/components/index.js.map +1 -1
- package/dist/VersionHistory/components/labels-resource.component.js.map +1 -1
- package/dist/VersionHistory/components/restore-resource.component.js.map +1 -1
- package/dist/VersionHistory/index.js.map +1 -1
- package/dist/__tests__/dashboards.test.js.map +1 -1
- package/dist/module.js.map +1 -1
- package/dist/public-api.js.map +1 -1
- package/dist/shared/pipes/highlight-search.pipe.js.map +1 -1
- package/dist/shared/pipes/index.js.map +1 -1
- package/dist/shared/shared-pipes.module.js.map +1 -1
- package/package.json +38 -38
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact-selection-dialog.component.js","sourceRoot":"","sources":["../../../src/ComponentStudio/components/artifact-selection-dialog.component.ts","../../../src/ComponentStudio/components/artifact-selection-dialog.component.html"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"artifact-selection-dialog.component.js","sourceRoot":"","sources":["../../../src/ComponentStudio/components/artifact-selection-dialog.component.ts","../../../src/ComponentStudio/components/artifact-selection-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { DialogRef } from '@progress/kendo-angular-dialog';\nimport { RunView, Metadata, UserInfo } from '@memberjunction/core';\nimport { MJArtifactEntity, MJArtifactVersionEntity } from '@memberjunction/core-entities';\nimport { Subject, debounceTime, distinctUntilChanged } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { MJNotificationService } from '@memberjunction/ng-notifications';\n\nexport interface ArtifactSelectionResult {\n artifact: MJArtifactEntity;\n action: 'new-version' | 'update-version';\n versionToUpdate?: MJArtifactVersionEntity;\n}\n\n@Component({\n standalone: false,\n selector: 'app-artifact-selection-dialog',\n templateUrl: './artifact-selection-dialog.component.html',\n styleUrl: './artifact-selection-dialog.component.css'\n})\nexport class ArtifactSelectionDialogComponent implements OnInit, OnDestroy {\n // Data\n artifacts: MJArtifactEntity[] = [];\n artifactVersions: MJArtifactVersionEntity[] = [];\n\n // Paging State\n currentPage = 0;\n pageSize = 25;\n totalArtifacts = 0;\n hasMorePages = false;\n\n // UI State\n isLoading = true;\n searchTerm = '';\n userEmail = '';\n selectedArtifactType = '';\n showNewArtifactForm = false;\n isFilterPanelCollapsed = false;\n\n\n // Selection State\n selectedArtifact: MJArtifactEntity | null = null;\n selectedVersion: MJArtifactVersionEntity | null = null;\n versionAction: 'new' | 'update' = 'new';\n \n // New Artifact Form\n newArtifactName = '';\n newArtifactDescription = '';\n \n private metadata = new Metadata();\n private currentUser: UserInfo | null = null;\n private destroy$ = new Subject<void>();\n private searchSubject = new Subject<string>();\n\n constructor(\n public dialog: DialogRef,\n private notificationService: MJNotificationService\n ) {}\n\n async ngOnInit() {\n // Setup search debouncing\n this.searchSubject.pipe(\n debounceTime(300),\n distinctUntilChanged(),\n takeUntil(this.destroy$)\n ).subscribe(() => {\n this.filterArtifacts();\n });\n \n await this.filterArtifacts();\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n async loadArtifacts() {\n this.isLoading = true;\n try {\n const rv = new RunView();\n\n // Calculate StartRow for server-side paging\n const startRow = this.currentPage * this.pageSize;\n\n // Load artifacts with paging\n const result = await rv.RunView<MJArtifactEntity>({\n ExtraFilter: this._artifactFilter,\n EntityName: 'MJ: Artifacts',\n OrderBy: '__mj_UpdatedAt DESC',\n MaxRows: this.pageSize,\n StartRow: startRow,\n ResultType: 'entity_object'\n });\n\n if (result.Success && result.Results) {\n this.artifacts = result.Results;\n\n // Calculate total pages using TotalRowCount from server\n this.totalArtifacts = result.TotalRowCount || 0;\n const totalPages = Math.ceil(this.totalArtifacts / this.pageSize);\n this.hasMorePages = this.currentPage < totalPages - 1;\n }\n } catch (error) {\n console.error('Error loading artifacts:', error);\n } finally {\n this.isLoading = false;\n }\n }\n\n private _artifactFilter: string | undefined= undefined;\n public async filterArtifacts() {\n // Reset to first page when filters change\n this.currentPage = 0;\n \n const filters: string[] = [];\n \n // Filter by search term\n if (this.searchTerm?.trim()) {\n const term = this.searchTerm.toLowerCase();\n filters.push(`(Name LIKE '%${term}%' OR Description LIKE '%${term}%')`);\n }\n \n // Filter by artifact type\n if (this.selectedArtifactType) {\n filters.push(`ArtifactTypeID IN (SELECT ID FROM __mj.vwArtifactTypes WHERE Name = '${this.selectedArtifactType}')`);\n }\n \n // Filter by user email if provided\n if (this.userEmail?.trim()) {\n const md = new Metadata();\n const schemaName = md.EntityByName(\"MJ: Users\")?.SchemaName || \"__mj\";\n const userFilter = `UserID IN (SELECT ID FROM ${schemaName}.vwUsers WHERE Email LIKE '%${this.userEmail.trim()}%')`;\n filters.push(userFilter);\n }\n \n // Combine all filters\n this._artifactFilter = filters.length > 0 ? filters.join(' AND ') : undefined;\n\n await this.loadArtifacts();\n }\n\n selectCreateNew() {\n this.showNewArtifactForm = true;\n this.selectedArtifact = null;\n this.selectedVersion = null;\n }\n\n async selectArtifact(artifact: MJArtifactEntity) {\n this.selectedArtifact = artifact;\n this.showNewArtifactForm = false;\n this.versionAction = 'new';\n this.selectedVersion = null;\n\n // Load versions for this artifact\n await this.loadVersions(artifact.ID);\n }\n\n async loadVersions(artifactId: string) {\n try {\n const rv = new RunView();\n const result = await rv.RunView<MJArtifactVersionEntity>({\n EntityName: 'MJ: Artifact Versions',\n ExtraFilter: `ArtifactID = '${artifactId}'`,\n OrderBy: 'VersionNumber DESC',\n ResultType: 'entity_object'\n });\n\n if (result.Success && result.Results) {\n this.artifactVersions = result.Results;\n }\n } catch (error) {\n console.error('Error loading versions:', error);\n this.artifactVersions = [];\n }\n }\n\n getNextVersionNumber(): number {\n if (this.artifactVersions.length === 0) return 1;\n return Math.max(...this.artifactVersions.map(v => v.VersionNumber)) + 1;\n }\n\n // Paging methods\n async nextPage() {\n if (this.hasMorePages) {\n this.currentPage++;\n await this.loadArtifacts();\n }\n }\n\n async previousPage() {\n if (this.currentPage > 0) {\n this.currentPage--;\n await this.loadArtifacts();\n }\n }\n\n canGoNext(): boolean {\n return this.hasMorePages;\n }\n\n canGoPrevious(): boolean {\n return this.currentPage > 0;\n }\n\n getTotalPages(): number {\n return Math.ceil(this.totalArtifacts / this.pageSize);\n }\n\n toggleFilterPanel() {\n this.isFilterPanelCollapsed = !this.isFilterPanelCollapsed;\n }\n\n onSearchInput() {\n this.searchSubject.next(this.searchTerm);\n }\n\n onArtifactTypeChange() {\n // Clear selected artifact when type changes\n this.selectedArtifact = null;\n this.selectedVersion = null;\n this.artifactVersions = [];\n this.filterArtifacts();\n }\n\n getActiveFilterCount(): number {\n let count = 0;\n if (this.searchTerm?.trim()) count++;\n if (this.selectedArtifactType) count++;\n if (this.userEmail?.trim()) count++;\n return count;\n }\n\n canSave(): boolean {\n if (this.showNewArtifactForm) {\n return this.newArtifactName.trim().length > 0;\n }\n \n if (!this.selectedArtifact) return false;\n \n if (this.versionAction === 'update') {\n return this.selectedVersion !== null;\n }\n \n return true;\n }\n\n getSaveButtonText(): string {\n if (this.showNewArtifactForm) {\n return 'Create & Save';\n }\n\n if (this.versionAction === 'update' && this.selectedVersion) {\n return `Update Version ${this.selectedVersion.VersionNumber}`;\n }\n\n return `Save as Version ${this.getNextVersionNumber()}`;\n }\n\n cancel() {\n this.dialog.close(undefined);\n }\n\n async save() {\n if (!this.canSave()) return;\n \n // Handle new artifact creation\n if (this.showNewArtifactForm) {\n const newArtifact = await this.createNewArtifact();\n if (newArtifact) {\n const result: ArtifactSelectionResult = {\n artifact: newArtifact,\n action: 'new-version'\n };\n this.dialog.close(result);\n }\n return;\n }\n \n // Handle existing artifact selection\n if (this.selectedArtifact) {\n const result: ArtifactSelectionResult = {\n artifact: this.selectedArtifact,\n action: this.versionAction === 'update' ? 'update-version' : 'new-version',\n versionToUpdate: this.versionAction === 'update' ? this.selectedVersion! : undefined\n };\n \n // If updating, show confirmation\n if (this.versionAction === 'update') {\n const confirm = window.confirm(\n `Are you sure you want to overwrite version ${this.selectedVersion!.VersionNumber}? This action cannot be undone.`\n );\n\n if (!confirm) return;\n }\n\n this.dialog.close(result);\n }\n }\n\n private async createNewArtifact(): Promise<MJArtifactEntity | null> {\n try {\n const artifact = await this.metadata.GetEntityObject<MJArtifactEntity>('MJ: Artifacts');\n artifact.Name = this.newArtifactName;\n artifact.Description = this.newArtifactDescription || null;\n\n // Get Component artifact type\n const rv = new RunView();\n const typeResult = await rv.RunView({\n EntityName: 'MJ: Artifact Types',\n ExtraFilter: `Name = 'Component'`,\n MaxRows: 1\n });\n\n if (typeResult.Success && typeResult.Results?.length > 0) {\n artifact.TypeID = typeResult.Results[0].ID;\n }\n\n // Set default environment if available from current user\n // Environment ID is optional - will be set by server if not provided\n const envId = (this.metadata.CurrentUser as any)?.EnvironmentID;\n if (envId) {\n artifact.EnvironmentID = envId;\n }\n\n artifact.Comments = 'Created from Component Studio';\n\n const saveResult = await artifact.Save();\n if (saveResult) {\n this.notificationService.CreateSimpleNotification(\n `Artifact \"${artifact.Name}\" created successfully`,\n 'success',\n 3000\n );\n return artifact;\n } else {\n console.error('Failed to create artifact - Full LatestResult:', artifact.LatestResult);\n this.notificationService.CreateSimpleNotification(\n 'Failed to create artifact',\n 'error'\n );\n return null;\n }\n } catch (error) {\n console.error('Error creating artifact:', error);\n this.notificationService.CreateSimpleNotification(\n 'Error creating artifact',\n 'error'\n );\n return null;\n }\n }\n}","<div>\n <kendo-dialog-titlebar (close)=\"cancel()\">\n <div style=\"font-size: 18px;\">\n <i class=\"fa-solid fa-save\"></i> Save Component to Artifact\n </div>\n </kendo-dialog-titlebar>\n\n <div class=\"artifact-selection-content\">\n <!-- Left Filter Panel -->\n <div class=\"filter-panel\" [style.width]=\"isFilterPanelCollapsed ? '40px' : '280px'\">\n <!-- Panel Header -->\n <div class=\"panel-header\">\n @if (!isFilterPanelCollapsed) {\n <span>Filters</span>\n }\n <button kendoButton (click)=\"toggleFilterPanel()\" \n [fillMode]=\"'flat'\"\n [class.filter-active]=\"getActiveFilterCount() > 0\"\n [themeColor]=\"getActiveFilterCount() > 0 ? 'primary' : 'base'\">\n <i class=\"fa-solid fa-filter\"></i>\n @if (isFilterPanelCollapsed && getActiveFilterCount() > 0) {\n <span class=\"filter-count\">{{ getActiveFilterCount() }}</span>\n }\n </button>\n </div>\n\n @if (!isFilterPanelCollapsed) {\n <div class=\"filter-content\">\n <!-- Search -->\n <div class=\"filter-group\">\n <label>Search</label>\n <input type=\"text\" \n [(ngModel)]=\"searchTerm\"\n (input)=\"onSearchInput()\"\n placeholder=\"Name or description...\"\n class=\"filter-input\">\n </div>\n\n <!-- Artifact Type -->\n <div class=\"filter-group\">\n <label>Artifact Type</label>\n <select [(ngModel)]=\"selectedArtifactType\" \n (change)=\"onArtifactTypeChange()\"\n class=\"filter-select\">\n <option value=\"\">All Types</option>\n <option value=\"Component\">Component</option>\n <option value=\"Report\">Report</option>\n <option value=\"Dashboard\">Dashboard</option>\n </select>\n </div>\n \n <!-- User Email -->\n <div class=\"filter-group\">\n <label>Filter by User</label>\n <input type=\"text\" \n [(ngModel)]=\"userEmail\"\n (input)=\"filterArtifacts()\"\n placeholder=\"Enter user email...\"\n class=\"filter-input\">\n </div>\n </div>\n }\n </div>\n\n <!-- Main Content Area -->\n <div class=\"main-content\">\n <!-- Paging Controls -->\n <div class=\"paging-controls\">\n <button kendoButton \n (click)=\"previousPage()\" \n [disabled]=\"!canGoPrevious()\"\n [themeColor]=\"'base'\">\n <i class=\"fa-solid fa-chevron-left\"></i> Previous\n </button>\n <span class=\"page-info\">\n Page {{ currentPage + 1 }} of {{ getTotalPages() }}\n ({{ totalArtifacts }} total items)\n </span>\n <button kendoButton \n (click)=\"nextPage()\" \n [disabled]=\"!canGoNext()\"\n [themeColor]=\"'base'\">\n Next <i class=\"fa-solid fa-chevron-right\"></i>\n </button>\n </div>\n\n <!-- Existing Artifacts -->\n <div class=\"artifacts-list\">\n @if (isLoading) {\n <div class=\"loading-state\">\n <mj-loading text=\"Loading artifacts...\" size=\"small\"></mj-loading>\n </div>\n } \n @else if (artifacts.length === 0) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-inbox\"></i>\n <p>No artifacts found</p>\n </div>\n } \n @else {\n @for (artifact of artifacts; track artifact.ID) {\n <div class=\"artifact-item\" \n [class.selected]=\"selectedArtifact?.ID === artifact.ID\"\n (click)=\"selectArtifact(artifact)\">\n <div class=\"artifact-content\">\n <div class=\"artifact-main\">\n <div class=\"artifact-name\">\n <i class=\"fa-solid fa-file-code\"></i>\n <span>{{ artifact.Name }}</span>\n </div>\n @if (artifact.Description) {\n <div class=\"artifact-description\">\n {{ artifact.Description }}\n </div>\n }\n </div>\n <div class=\"artifact-meta\">\n <div>{{ artifact.Type }}</div>\n <div>{{ artifact.__mj_UpdatedAt | date:'short' }}</div>\n </div>\n </div>\n </div>\n }\n }\n </div>\n \n <!-- Create New Artifact Section (at bottom) -->\n <div class=\"create-section\">\n <div class=\"divider\">OR CREATE NEW ARTIFACT</div>\n \n <button kendoButton \n (click)=\"selectCreateNew()\"\n [themeColor]=\"'primary'\"\n class=\"create-btn\">\n <i class=\"fa-solid fa-plus\"></i> Create New Artifact\n </button>\n \n @if (showNewArtifactForm) {\n <div class=\"new-artifact-form\">\n <kendo-textbox \n [(value)]=\"newArtifactName\"\n placeholder=\"Artifact name...\">\n </kendo-textbox>\n <kendo-textarea \n [(value)]=\"newArtifactDescription\"\n placeholder=\"Description (optional)...\">\n </kendo-textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Right Version Panel (only show when artifact selected) -->\n @if (selectedArtifact) {\n <div class=\"version-panel\">\n <div class=\"panel-header\">\n <h4><i class=\"fa-solid fa-code-branch\"></i> Version</h4>\n </div>\n \n @if (artifactVersions.length > 0) {\n <div class=\"version-content\">\n <div class=\"version-actions\">\n <label>Action</label>\n <label class=\"radio-label\">\n <input type=\"radio\" \n name=\"versionAction\" \n value=\"new\"\n [(ngModel)]=\"versionAction\"\n (change)=\"selectedVersion = null\">\n <span>Create New Version (v{{ getNextVersionNumber() }})</span>\n </label>\n \n <label class=\"radio-label\">\n <input type=\"radio\" \n name=\"versionAction\" \n value=\"update\"\n [(ngModel)]=\"versionAction\">\n <span>Update Existing Version</span>\n </label>\n </div>\n \n @if (versionAction === 'update') {\n <div class=\"version-selection\">\n <label>Select Version</label>\n @for (version of artifactVersions; track version.ID) {\n <label class=\"version-item\" \n [class.selected]=\"selectedVersion?.ID === version.ID\">\n <input type=\"radio\"\n name=\"selectedVersion\"\n [value]=\"version\"\n [(ngModel)]=\"selectedVersion\">\n <div class=\"version-info\">\n <div class=\"version-number\">Version {{ version.VersionNumber }}</div>\n <div class=\"version-date\">{{ version.__mj_UpdatedAt | date:'short' }}</div>\n </div>\n </label>\n }\n </div>\n \n @if (selectedVersion) {\n <div class=\"warning\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <span>Warning: This will overwrite version {{ selectedVersion.VersionNumber }}</span>\n </div>\n }\n }\n </div>\n } @else {\n <div class=\"info-state\">\n <i class=\"fa-solid fa-info-circle\"></i>\n <p>No versions available for this artifact.</p>\n <p>A new version will be created.</p>\n </div>\n }\n </div>\n }\n </div>\n\n <kendo-dialog-actions>\n <button kendoButton \n [themeColor]=\"versionAction === 'update' && selectedVersion ? 'warning' : 'primary'\" \n (click)=\"save()\"\n [disabled]=\"!canSave()\">\n <i class=\"fa-solid fa-save\"></i> \n {{ getSaveButtonText() }}\n </button>\n <button kendoButton (click)=\"cancel()\">Cancel</button>\n </kendo-dialog-actions>\n</div>\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-browser.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/browser/component-browser.component.ts","../../../../src/ComponentStudio/components/browser/component-browser.component.html"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EACN,YAAY,EAIb,MAAM,eAAe,CAAC;;;;;;;;;ICYX,AADF,8BAA2B,iBACsC;IAAjC,8LAAS,6BAAsB,KAAC;IAC5D,wBAAoC;IAAC,+BACvC;IAAA,iBAAS;IACT,kCAA2D;IAA7B,8LAAS,yBAAkB,KAAC;IACxD,wBAAgC;IAAC,2BACnC;IAAA,iBAAS;IACT,kCAA2D;IAA7B,8LAAS,yBAAkB,KAAC;IACxD,wBAAoC;IAAC,2BACvC;IACF,AADE,iBAAS,EACL;;;IAaN,gCAAiC;IAAA,YAAkC;IAAA,iBAAO;;;IAAzC,cAAkC;IAAlC,yDAAkC;;;IAiBrE,wBAA8C;;;IA4BpC,gCAA+B;IAAA,YAAkC;IAAA,iBAAO;;;IAAzC,cAAkC;IAAlC,kEAAkC;;;;IAanE,kCAIgD;IAA9C,kPAAS,6CAAmC,KAAC;IAC7C,gCAAwB;IAAA,YAAmB;IAAA,iBAAO;IAClD,gCAAyB;IAAA,YAAoB;IAC/C,AAD+C,iBAAO,EAC7C;;;;IAJP,iDAAqC;IADrC,2EAAwD;IAGhC,eAAmB;IAAnB,sCAAmB;IAClB,eAAoB;IAApB,uCAAoB;;;IAS7C,wBAAsC;IAAC,2BACzC;;;IACE,wBAAwC;IAAC,YAC3C;;;IAD2C,cAC3C;IAD2C,sFAC3C;;;;IAPF,kCAE4C;IAA1C,4NAAS,sCAA+B,KAAC;IAGvC,AAFF,6HAA+B,uGAEtB;IAGX,iBAAS;;;IALP,cAIC;IAJD,wDAIC;;;IArBL,AADF,+BAA4B,gBACU;IAAA,0BAAU;IAAA,iBAAQ;IACtD,+BAA4B;IAC1B,sKASC;IACH,iBAAM;IACN,6HAA4C;IAW9C,iBAAM;;;IAtBF,eASC;IATD,cAAA,mCAA4B,CAS3B;IAEH,eAUC;IAVD,sEAUC;;;;IAOD,AADF,+BAAiC,iBACiC;IAAlC,8MAAS,8BAAuB,KAAC;IAC7D,wBAAiC;IAAC,mCACpC;IACF,AADE,iBAAS,EACL;;;;IA3DN,AADF,AAHF,AADF,+BAA0B,cACU,cAGJ,gBACU;IAAA,6BAAa;IAAA,iBAAQ;IAGrD,AADF,AADF,+BAA4B,gBACK,gBAGgB;IAA3C,+LAAU,sCAA+B,KAAC;IAF5C,iBAE6C;IAC7C,wBAA2D;IAC3D,4BAAM;IAAA,+BAAc;IACtB,AADsB,iBAAO,EACrB;IAEN,AADF,kCAA+B,iBAGuB;IAAlD,gMAAU,6CAAsC,KAAC;IAFnD,iBAEoD;IACpD,yBAA+D;IAC/D,6BAAM;IAAA,iCACJ;IAAA,8GAAsC;IAM9C,AADE,AADE,AADE,iBAAO,EACD,EACJ,EACF;IAGN,6GAA4C;IA8B5C,6GAAwC;IAQ5C,AADE,iBAAM,EACF;;;IA1DM,eAAmC;IAAnC,wDAAmC;IAOnC,eAA0C;IAA1C,+DAA0C;IAI1C,eAEC;IAFD,iEAEC;IAOT,cA2BC;IA3BD,uEA2BC;IAGD,cAMC;IAND,mEAMC;;;IAQH,+BAA2B;IACzB,iCAAmE;IACrE,iBAAM;;;IAIF,wBAAmD;IACnD,6BAAuB;IAAA,mCAAmB;IAAA,iBAAI;IAC9C,6BAA0B;IAAA,oEAAoD;IAAA,iBAAI;;;IAElF,wBAA6C;IAC7C,6BAAuB;IAAA,sCAAsB;IAAA,iBAAI;IACjD,6BAA0B;IAAA,qDAAqC;IAAA,iBAAI;;;IARvE,+BAAyB;IAKrB,AAJF,gGAAwC,0EAI/B;IAKX,iBAAM;;;IATJ,cAQC;IARD,iEAQC;;;IAqBS,gCAAkE;IAChE,wBAAgE;IAChE,YACF;IAAA,iBAAO;;;;IAHkB,gEAAwC;IAC3C,cAAuC;IAAvC,+DAAuC;IAC3D,cACF;IADE,uEACF;;;IAyBE,wBAAgC;;;IAEhC,wBAAkC;;;;IARtC,kCAIuF;IADrF,8QAAS,6CAAmC,KAAC;IAI3C,AAFF,8HAAmC,wGAE1B;IAGX,iBAAS;;;;IARP,oEAAiD;IAEjD,4GAAoF;IACpF,cAIC;IAJD,+DAIC;;;;IAIH,kCAGoC;IADlC,8QAAS,kDAA8C,KAAC;IAExD,wBAAiC;IACnC,iBAAS;;;IAIP,wBAAsC;;;IAEtC,wBAAwC;;;IAWxC,AADF,+BAAgC,QAC3B;IAAA,YAA8C;IACnD,AADmD,iBAAI,EACjD;;;;IADD,eAA8C;IAA9C,wEAA8C;;;IAmB/C,AADF,+BAAuB,eACI;IAAA,sBAAM;IAAA,iBAAO;IACtC,gCAAyB;IAAA,YAA0D;;IACrF,AADqF,iBAAO,EACtF;;;;IADqB,eAA0D;IAA1D,oGAA0D;;;IAInF,AADF,+BAAuB,eACI;IAAA,uBAAO;IAAA,iBAAO;IACvC,gCAAyB;IAAA,YAA2D;;IACtF,AADsF,iBAAO,EACvF;;;;IADqB,eAA2D;IAA3D,qGAA2D;;;;IAOtF,iCAEoC;IAAlC,0OAAS,8BAAuB,KAAC;IACjC,wBAAgC;IAAC,sBACnC;IAAA,iBAAS;;IAHP,oCAAsB;;;;IAKxB,kCAGiD;IAA/C,8RAAS,8CAAoC,KAAC;IAC9C,wBAAwC;IAAC,gCAC3C;IAAA,iBAAS;;IAJP,mCAAqB;;;;IAMvB,iCAE8C;IAA5C,8RAAS,2CAAiC,KAAC;IAC3C,wBAAgC;IAAC,qBACnC;IAAA,iBAAS;;IAHP,sCAAwB;;;IAjDhC,+BAA0B;IACxB,gIAAgD;IAQ5C,AADF,AADF,+BAA8B,cACL,eACI;IAAA,oBAAI;IAAA,iBAAO;IACpC,gCAAyB;IAAA,YAAoD;IAC/E,AAD+E,iBAAO,EAChF;IAEJ,AADF,+BAAuB,eACI;IAAA,wBAAO;IAAA,iBAAO;IACvC,iCAAyB;IAAA,aAA0C;IACrE,AADqE,iBAAO,EACtE;IAEJ,AADF,gCAAuB,gBACI;IAAA,uBAAM;IAAA,iBAAO;IACtC,iCAAyB;IAAA,aAAoD;IAC/E,AAD+E,iBAAO,EAChF;IAMJ,AALF,kIAA8C,4GAKO;IAMvD,iBAAM;IAEN,gCAA4B;IAcxB,AAPA,AANF,qIAAqC,+GAMc,+GAO1C;IAQb,AADE,iBAAM,EACF;;;;IAtDJ,cAIC;IAJD,6EAIC;IAK4B,eAAoD;IAApD,8EAAoD;IAIpD,eAA0C;IAA1C,oEAA0C;IAI1C,eAAoD;IAApD,8EAAoD;IAE/E,cAUC;IAVD,oIAUC;IAID,eAmBC;IAnBD,yHAmBC;;;;IAtHP,AANF,+BAG+D,cAGU;IAA9C,iOAAS,6CAAmC,KAAC;IACpE,+BACiF;IAC/E,wBACgF;IAClF,iBAAM;IAIF,AADF,AADF,+BAAuB,cACO,eACF;IAAA,YAAuC;IAAA,iBAAO;IACtE,kHAA8C;IAMhD,iBAAM;IAEJ,AADF,+BAA2B,gBACG;IAAA,aAA2C;IAAA,iBAAO;IAC9E,iCAAsE;IACpE,aACF;IAAA,iBAAO;IACP,iCAEsE;IACpE,yBAAuC;IACvC,aACF;IAEJ,AADE,AADE,iBAAO,EACH,EACF;IAEN,gCAAsB;IACpB,sHAA+C;IAa/C,sHAA8C;IAQ9C,gCAA0B;IAGtB,AAFF,iHAA6B,2FAEpB;IAKf,AADE,AADE,iBAAM,EACF,EACF;IAGN,oHAA6B;IA0D/B,iBAAM;;;;IA7HJ,AADA,AADA,2DAAwC,oDACO,iEACa;IAKxD,eAA8E;IAA9E,wGAA8E;IAE5E,cAAyE;IAAzE,wGAAyE;IAKjD,eAAuC;IAAvC,iEAAuC;IAC/D,cAKC;IALD,2EAKC;IAG2B,eAA2C;IAA3C,0EAA2C;IAC5C,cAA0C;IAA1C,kEAA0C;IACnE,cACF;IADE,oEACF;IAEE,cAA0F;IAA1F,oHAA0F;IAC1F,2FAAmE;IAEnE,eACF;IADE,+GACF;IAKF,eAYC;IAZD,6EAYC;IACD,cAOC;IAPD,4EAOC;IAEC,eAIC;IAJD,2DAIC;IAMP,eAyDC;IAzDD,2DAyDC;;;IAhIL,qJAkIC;;;IAlID,8CAkIC;;ADvQP,MAAM,OAAO,yBAAyB;IAY3B;IACC;IAXA,YAAY,GAAG,IAAI,YAAY,EAAQ,CAAC;IACxC,cAAc,GAAG,IAAI,YAAY,EAAQ,CAAC;IAC1C,cAAc,GAAG,IAAI,YAAY,EAAQ,CAAC;IAC1C,kBAAkB,GAAG,IAAI,YAAY,EAAQ,CAAC;IAEjD,kBAAkB,GAAG,KAAK,CAAC;IAE1B,eAAe,GAAwB,IAAI,CAAC;IAEpD,YACS,KAAkC,EACjC,GAAsB;QADvB,UAAK,GAAL,KAAK,CAA6B;QACjC,QAAG,GAAH,GAAG,CAAmB;IAC7B,CAAC;IAEJ,QAAQ;QACN,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE;YAC5D,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW;QACT,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,SAAS;IACT,+DAA+D;IAE/D,cAAc,CAAC,KAAa;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,+DAA+D;IAC/D,iBAAiB;IACjB,+DAA+D;IAE/D,wBAAwB,CAAC,SAA2B;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB;YAC7C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;YACzD,CAAC,CAAC,IAAI,CAAC;QAET,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC3B,CAAC;IAED,UAAU,CAAC,SAA2B;QACpC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB;YAAE,OAAO,KAAK,CAAC;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC1G,CAAC;IAED,+DAA+D;IAC/D,uBAAuB;IACvB,+DAA+D;IAE/D,kBAAkB,CAAC,SAA2B;QAC5C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACzE,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC1G,CAAC;IAED,yBAAyB,CAAC,SAA2B;QACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACzE,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC1G,CAAC;IAED,+DAA+D;IAC/D,UAAU;IACV,+DAA+D;IAE/D,cAAc,CAAC,SAA2B,EAAE,KAAY;QACtD,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,CAAC,KAAY;QAC1B,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,iBAAiB,CAAC,SAA2B,EAAE,KAAY;QACzD,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED,gBAAgB,CAAC,SAA2B,EAAE,KAAY;QACxD,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,qBAAqB,CAAC,SAA8B,EAAE,KAAY;QAChE,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,+DAA+D;IAC/D,kBAAkB;IAClB,+DAA+D;IAE/D,oBAAoB;QAClB,IAAI,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC;IACrD,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;IACjC,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,+DAA+D;IAC/D,aAAa;IACb,+DAA+D;IAE/D,mBAAmB,CAAC,SAA2B;QAC7C,IAAI,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YACxD,IAAI,MAAM,KAAK,MAAM;gBAAE,OAAO,MAAM,CAAC;YACrC,IAAI,MAAM,KAAK,UAAU;gBAAE,OAAO,UAAU,CAAC;YAC7C,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,MAAM,KAAK,YAAY;YAAE,OAAO,YAAY,CAAC;QACjD,IAAI,MAAM,KAAK,WAAW;YAAE,OAAO,WAAW,CAAC;QAC/C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,cAAc,CAAC,SAA2B;QACxC,IAAI,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YACxD,OAAO,MAAM,IAAI,MAAM,CAAC;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC;IAC7D,CAAC;IAED,mBAAmB,CAAC,SAA2B;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,0BAA0B,CAAC;QACzD,IAAI,MAAM,KAAK,UAAU;YAAE,OAAO,sBAAsB,CAAC;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAC5D,OAAO,QAAQ,CAAC,CAAC,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC;IACnE,CAAC;IAED,iBAAiB,CAAC,SAA2B;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,aAAa,CAAC;QAC5C,IAAI,MAAM,KAAK,UAAU;YAAE,OAAO,UAAU,CAAC;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC;IAC9D,CAAC;IAED,gBAAgB,CAAC,SAA2B;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,aAAa,CAAC;QAC5C,IAAI,MAAM,KAAK,UAAU;YAAE,OAAO,aAAa,CAAC;QAChD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,kBAAkB,CAAC,MAAc,EAAE,SAA2B;QAC5D,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,mBAAmB,CAAC,MAAc,EAAE,QAA0B;QAC5D,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;mHAvLU,yBAAyB;6DAAzB,yBAAyB;YChBhC,AADF,AADF,AAHF,8BAA+B,aAGD,aACE,gBAGG;YAA3B,sGAAS,oBAAgB,IAAC;YAC1B,uBAAgC;YAAC,+BACnC;YAAA,iBAAS;YAEP,AADF,8BAA+D,gBAG1B;YAAjC,sGAAS,0BAAsB,IAAC;YAChC,uBAAuC;YAAC,wBACxC;YAAA,wBAAyD;YAC3D,iBAAS;YACT,8FAA0B;YAc9B,AADE,iBAAM,EACF;YAGJ,AADF,+BAAiC,kBAK2C;YADxE,uGAAS,6BAAyB,IAAC;YAEnC,yBAAmC;YACnC,+FAAwC;YAG1C,iBAAS;YACT,iCAA8B;YAC5B,aACF;YAEJ,AADE,AADE,iBAAO,EACH,EACF;YAIJ,AADF,gCAAwB,yBAKC;YAFrB,gIAAe,0BAAsB,IAAC;YAGtC,6FAAwC;YAI5C,AADE,iBAAgB,EACZ;YAGN,+FAAmC;YAwEnC,gCAA4B;YAiBxB,AAZA,AAJF,8FAAuB,wEAI6B,6DAY3C;YAsIb,AADE,iBAAM,EACF;;YAzRE,eAAwB;YAAxB,sCAAwB;YAIG,eAAiC;YAAjC,8CAAiC;YAE1D,cAAqB;YAArB,mCAAqB;YAKvB,eAYC;YAZD,kDAYC;YAOD,eAAgF;YAAhF,iGAAgF;YAEhF,yFAAuE;YAEvE,eAEC;YAFD,gEAEC;YAGD,eACF;YADE,4GACF;YAOA,eAA2B;YAG3B,AAHA,6CAA2B,qBAGP;YAQxB,eAqEC;YArED,2DAqEC;YAIC,eAoJC;YApJD,gGAoJC;;;iFDxQQ,yBAAyB;cANrC,SAAS;6BACI,KAAK,YACP,sBAAsB;;kBAM/B,MAAM;;kBACN,MAAM;;kBACN,MAAM;;kBACN,MAAM;;kFALI,yBAAyB"}
|
|
1
|
+
{"version":3,"file":"component-browser.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/browser/component-browser.component.ts","../../../../src/ComponentStudio/components/browser/component-browser.component.html"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Output,\n EventEmitter,\n OnInit,\n OnDestroy,\n ChangeDetectorRef\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport {\n ComponentStudioStateService,\n DisplayComponent,\n FileLoadedComponent\n} from '../../services/component-studio-state.service';\n\n@Component({\n standalone: false,\n selector: 'mj-component-browser',\n templateUrl: './component-browser.component.html',\n styleUrls: ['./component-browser.component.css']\n})\nexport class ComponentBrowserComponent implements OnInit, OnDestroy {\n\n @Output() NewComponent = new EventEmitter<void>();\n @Output() ImportFromFile = new EventEmitter<void>();\n @Output() ImportFromText = new EventEmitter<void>();\n @Output() ImportFromArtifact = new EventEmitter<void>();\n\n public ImportDropdownOpen = false;\n\n private stateChangedSub: Subscription | null = null;\n\n constructor(\n public State: ComponentStudioStateService,\n private cdr: ChangeDetectorRef\n ) {}\n\n ngOnInit(): void {\n this.stateChangedSub = this.State.StateChanged.subscribe(() => {\n this.cdr.detectChanges();\n });\n }\n\n ngOnDestroy(): void {\n if (this.stateChangedSub) {\n this.stateChangedSub.unsubscribe();\n this.stateChangedSub = null;\n }\n }\n\n // ============================================================\n // SEARCH\n // ============================================================\n\n OnSearchChange(value: string): void {\n this.State.SearchQuery = value;\n }\n\n // ============================================================\n // CARD EXPANSION\n // ============================================================\n\n ToggleComponentExpansion(component: DisplayComponent): void {\n const componentId = this.State.GetComponentId(component);\n const expandedId = this.State.ExpandedComponent\n ? this.State.GetComponentId(this.State.ExpandedComponent)\n : null;\n\n this.State.ExpandedComponent = expandedId === componentId ? null : component;\n this.cdr.detectChanges();\n }\n\n IsExpanded(component: DisplayComponent): boolean {\n if (!this.State.ExpandedComponent) return false;\n return this.State.GetComponentId(this.State.ExpandedComponent) === this.State.GetComponentId(component);\n }\n\n // ============================================================\n // RUNNING STATE CHECKS\n // ============================================================\n\n IsComponentRunning(component: DisplayComponent): boolean {\n if (!this.State.SelectedComponent || !this.State.IsRunning) return false;\n return this.State.GetComponentId(this.State.SelectedComponent) === this.State.GetComponentId(component);\n }\n\n IsAnotherComponentRunning(component: DisplayComponent): boolean {\n if (!this.State.SelectedComponent || !this.State.IsRunning) return false;\n return this.State.GetComponentId(this.State.SelectedComponent) !== this.State.GetComponentId(component);\n }\n\n // ============================================================\n // ACTIONS\n // ============================================================\n\n OnRunComponent(component: DisplayComponent, event: Event): void {\n event.stopPropagation();\n this.State.RunComponent(component);\n }\n\n OnStopComponent(event: Event): void {\n event.stopPropagation();\n this.State.StopComponent();\n }\n\n OnSwitchComponent(component: DisplayComponent, event: Event): void {\n event.stopPropagation();\n this.State.RunComponent(component);\n }\n\n OnToggleFavorite(component: DisplayComponent, event: Event): void {\n event.stopPropagation();\n this.State.ToggleFavorite(component);\n }\n\n OnRemoveFileComponent(component: FileLoadedComponent, event: Event): void {\n event.stopPropagation();\n this.State.RemoveFileLoadedComponent(component);\n }\n\n // ============================================================\n // IMPORT DROPDOWN\n // ============================================================\n\n ToggleImportDropdown(): void {\n this.ImportDropdownOpen = !this.ImportDropdownOpen;\n }\n\n CloseImportDropdown(): void {\n this.ImportDropdownOpen = false;\n }\n\n OnImportFromFile(): void {\n this.CloseImportDropdown();\n this.ImportFromFile.emit();\n }\n\n OnImportFromText(): void {\n this.CloseImportDropdown();\n this.ImportFromText.emit();\n }\n\n OnImportFromArtifact(): void {\n this.CloseImportDropdown();\n this.ImportFromArtifact.emit();\n }\n\n OnNewComponent(): void {\n this.NewComponent.emit();\n }\n\n // ============================================================\n // UI HELPERS\n // ============================================================\n\n GetStatusBadgeClass(component: DisplayComponent): string {\n if (this.State.IsFileLoadedComponent(component)) {\n const status = this.State.GetComponentStatus(component);\n if (status === 'Text') return 'text';\n if (status === 'Artifact') return 'artifact';\n return 'file';\n }\n const status = this.State.GetComponentStatus(component);\n if (status === 'Deprecated') return 'deprecated';\n if (status === 'Published') return 'published';\n return 'draft';\n }\n\n GetStatusLabel(component: DisplayComponent): string {\n if (this.State.IsFileLoadedComponent(component)) {\n const status = this.State.GetComponentStatus(component);\n return status || 'File';\n }\n return this.State.GetComponentStatus(component) || 'Draft';\n }\n\n GetFileBadgeTooltip(component: DisplayComponent): string {\n const status = this.State.GetComponentStatus(component);\n if (status === 'Text') return 'Imported from text input';\n if (status === 'Artifact') return 'Loaded from artifact';\n const filename = this.State.GetComponentFilename(component);\n return filename ? `Loaded from ${filename}` : 'Loaded from file';\n }\n\n GetFileBadgeLabel(component: DisplayComponent): string {\n const status = this.State.GetComponentStatus(component);\n if (status === 'Text') return 'Text Import';\n if (status === 'Artifact') return 'Artifact';\n return this.State.GetComponentFilename(component) || 'File';\n }\n\n GetFileBadgeIcon(component: DisplayComponent): string {\n const status = this.State.GetComponentStatus(component);\n if (status === 'Text') return 'fa-keyboard';\n if (status === 'Artifact') return 'fa-database';\n return 'fa-file';\n }\n\n TrackByComponentId(_index: number, component: DisplayComponent): string {\n return this.State.GetComponentId(component);\n }\n\n TrackByCategoryName(_index: number, category: { name: string }): string {\n return category.name;\n }\n}\n","<div class=\"component-browser\">\n\n <!-- Header -->\n <div class=\"browser-header\">\n <div class=\"header-top-row\">\n <button kendoButton\n [themeColor]=\"'primary'\"\n (click)=\"OnNewComponent()\">\n <i class=\"fa-solid fa-plus\"></i> New Component\n </button>\n <div class=\"import-dropdown\" [class.open]=\"ImportDropdownOpen\">\n <button kendoButton\n [themeColor]=\"'base'\"\n (click)=\"ToggleImportDropdown()\">\n <i class=\"fa-solid fa-file-import\"></i> Import\n <i class=\"fa-solid fa-chevron-down dropdown-chevron\"></i>\n </button>\n @if (ImportDropdownOpen) {\n <div class=\"dropdown-menu\">\n <button class=\"dropdown-item\" (click)=\"OnImportFromArtifact()\">\n <i class=\"fa-solid fa-database\"></i> From Artifact\n </button>\n <button class=\"dropdown-item\" (click)=\"OnImportFromFile()\">\n <i class=\"fa-solid fa-file\"></i> From File\n </button>\n <button class=\"dropdown-item\" (click)=\"OnImportFromText()\">\n <i class=\"fa-solid fa-keyboard\"></i> From Text\n </button>\n </div>\n }\n </div>\n </div>\n\n <div class=\"header-controls-row\">\n <button\n class=\"filter-toggle-btn\"\n [class.active]=\"State.IsFilterPanelExpanded || State.GetActiveFilterCount() > 0\"\n (click)=\"State.ToggleFilterPanel()\"\n [title]=\"State.IsFilterPanelExpanded ? 'Hide filters' : 'Show filters'\">\n <i class=\"fa-solid fa-sliders\"></i>\n @if (State.GetActiveFilterCount() > 0) {\n <span class=\"filter-count-badge\">{{ State.GetActiveFilterCount() }}</span>\n }\n </button>\n <span class=\"component-count\">\n {{ State.FilteredComponents.length }} of {{ State.AllComponents.length }}\n </span>\n </div>\n </div>\n\n <!-- Search -->\n <div class=\"search-box\">\n <kendo-textbox\n [value]=\"State.SearchQuery\"\n (valueChange)=\"OnSearchChange($event)\"\n placeholder=\"Search components...\"\n [clearButton]=\"true\">\n <ng-template kendoTextBoxPrefixTemplate>\n <i class=\"fa-solid fa-search search-icon\"></i>\n </ng-template>\n </kendo-textbox>\n </div>\n\n <!-- Collapsible Filter Panel -->\n @if (State.IsFilterPanelExpanded) {\n <div class=\"filter-panel\">\n <div class=\"filter-panel-content\">\n\n <!-- Quick Filters -->\n <div class=\"filter-section\">\n <label class=\"filter-section-label\">Quick Filters</label>\n <div class=\"filter-options\">\n <label class=\"filter-checkbox\">\n <input type=\"checkbox\"\n [checked]=\"State.ShowOnlyFavorites\"\n (change)=\"State.ToggleShowOnlyFavorites()\">\n <i class=\"fa-solid fa-star filter-icon favorites-icon\"></i>\n <span>Favorites only</span>\n </label>\n <label class=\"filter-checkbox\">\n <input type=\"checkbox\"\n [checked]=\"State.ShowDeprecatedComponents\"\n (change)=\"State.ToggleShowDeprecatedComponents()\">\n <i class=\"fa-solid fa-archive filter-icon deprecated-icon\"></i>\n <span>Show deprecated\n @if (State.GetDeprecatedCount() > 0) {\n <span class=\"deprecated-count\">({{ State.GetDeprecatedCount() }})</span>\n }\n </span>\n </label>\n </div>\n </div>\n\n <!-- Category Pills -->\n @if (State.AvailableCategories.length > 0) {\n <div class=\"filter-section\">\n <label class=\"filter-section-label\">Categories</label>\n <div class=\"category-pills\">\n @for (category of State.GetVisibleCategories(); track TrackByCategoryName($index, category)) {\n <button\n class=\"category-pill\"\n [class.active]=\"State.IsCategorySelected(category.name)\"\n [style.--pill-color]=\"category.color\"\n (click)=\"State.ToggleCategory(category.name)\">\n <span class=\"pill-name\">{{ category.name }}</span>\n <span class=\"pill-count\">{{ category.count }}</span>\n </button>\n }\n </div>\n @if (State.AvailableCategories.length > 5) {\n <button\n class=\"show-more-btn\"\n (click)=\"State.ToggleShowAllCategories()\">\n @if (State.ShowAllCategories) {\n <i class=\"fa-solid fa-chevron-up\"></i> Show less\n } @else {\n <i class=\"fa-solid fa-chevron-down\"></i> Show {{ State.AvailableCategories.length - 5 }} more\n }\n </button>\n }\n </div>\n }\n\n <!-- Clear All -->\n @if (State.GetActiveFilterCount() > 0) {\n <div class=\"filter-panel-footer\">\n <button class=\"clear-all-btn\" (click)=\"State.ClearAllFilters()\">\n <i class=\"fa-solid fa-times\"></i> Clear All Filters\n </button>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- Component Card List -->\n <div class=\"component-list\">\n @if (State.IsLoading) {\n <div class=\"loading-state\">\n <mj-loading text=\"Loading components...\" size=\"small\"></mj-loading>\n </div>\n } @else if (State.FilteredComponents.length === 0) {\n <div class=\"empty-state\">\n @if (State.AllComponents.length === 0) {\n <i class=\"fa-solid fa-puzzle-piece empty-icon\"></i>\n <p class=\"empty-title\">No components found</p>\n <p class=\"empty-subtitle\">Create a new component or import one to get started.</p>\n } @else {\n <i class=\"fa-solid fa-filter empty-icon\"></i>\n <p class=\"empty-title\">No matching components</p>\n <p class=\"empty-subtitle\">Try adjusting your search or filters.</p>\n }\n </div>\n } @else {\n @for (component of State.FilteredComponents; track TrackByComponentId($index, component)) {\n <div class=\"component-card\"\n [class.expanded]=\"IsExpanded(component)\"\n [class.running]=\"IsComponentRunning(component)\"\n [class.file-loaded]=\"State.IsFileLoadedComponent(component)\">\n\n <!-- Card Header (always visible) -->\n <div class=\"card-header\" (click)=\"ToggleComponentExpansion(component)\">\n <div class=\"card-type-icon\"\n [style.color]=\"State.GetComponentTypeColor(State.GetComponentType(component))\">\n <i class=\"fa-solid\"\n [ngClass]=\"State.GetComponentTypeIcon(State.GetComponentType(component))\"></i>\n </div>\n\n <div class=\"card-body\">\n <div class=\"card-title-row\">\n <span class=\"card-name\">{{ State.GetComponentName(component) }}</span>\n @if (State.IsFileLoadedComponent(component)) {\n <span class=\"file-badge\" [title]=\"GetFileBadgeTooltip(component)\">\n <i class=\"fa-solid\" [ngClass]=\"GetFileBadgeIcon(component)\"></i>\n {{ GetFileBadgeLabel(component) }}\n </span>\n }\n </div>\n <div class=\"card-meta-row\">\n <span class=\"version-badge\">v{{ State.GetComponentVersion(component) }}</span>\n <span class=\"status-badge\" [ngClass]=\"GetStatusBadgeClass(component)\">\n {{ GetStatusLabel(component) }}\n </span>\n <span class=\"namespace-chip\"\n [style.background-color]=\"State.GetNamespaceColor(State.GetComponentNamespace(component))\"\n [title]=\"State.GetComponentNamespace(component) || 'Uncategorized'\">\n <i class=\"fa-solid fa-folder-tree\"></i>\n {{ State.FormatNamespace(State.GetComponentNamespace(component)) }}\n </span>\n </div>\n </div>\n\n <div class=\"card-end\">\n @if (!State.IsFileLoadedComponent(component)) {\n <button\n class=\"favorite-btn\"\n [class.is-favorite]=\"State.IsFavorite(component)\"\n (click)=\"OnToggleFavorite(component, $event)\"\n [title]=\"State.IsFavorite(component) ? 'Remove from favorites' : 'Add to favorites'\">\n @if (State.IsFavorite(component)) {\n <i class=\"fa-solid fa-star\"></i>\n } @else {\n <i class=\"fa-regular fa-star\"></i>\n }\n </button>\n }\n @if (State.IsFileLoadedComponent(component)) {\n <button\n class=\"remove-btn\"\n (click)=\"OnRemoveFileComponent($any(component), $event)\"\n title=\"Remove imported component\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n }\n <div class=\"card-chevron\">\n @if (IsExpanded(component)) {\n <i class=\"fa-solid fa-chevron-up\"></i>\n } @else {\n <i class=\"fa-solid fa-chevron-down\"></i>\n }\n </div>\n </div>\n </div>\n\n <!-- Card Details (expanded) -->\n @if (IsExpanded(component)) {\n <div class=\"card-details\">\n @if (State.GetComponentDescription(component)) {\n <div class=\"detail-description\">\n <p>{{ State.GetComponentDescription(component) }}</p>\n </div>\n }\n\n <div class=\"detail-info-grid\">\n <div class=\"info-item\">\n <span class=\"info-label\">Type</span>\n <span class=\"info-value\">{{ State.GetComponentType(component) || 'Unknown' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Version</span>\n <span class=\"info-value\">{{ State.GetComponentVersion(component) }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Status</span>\n <span class=\"info-value\">{{ State.GetComponentStatus(component) || 'Draft' }}</span>\n </div>\n @if (State.IsFileLoadedComponent(component)) {\n <div class=\"info-item\">\n <span class=\"info-label\">Loaded</span>\n <span class=\"info-value\">{{ State.GetComponentLoadedAt(component) | date:'short' }}</span>\n </div>\n } @else if (State.GetComponentUpdatedAt(component)) {\n <div class=\"info-item\">\n <span class=\"info-label\">Updated</span>\n <span class=\"info-value\">{{ State.GetComponentUpdatedAt(component) | date:'short' }}</span>\n </div>\n }\n </div>\n\n <div class=\"detail-actions\">\n @if (IsComponentRunning(component)) {\n <button kendoButton\n [themeColor]=\"'error'\"\n (click)=\"OnStopComponent($event)\">\n <i class=\"fa-solid fa-stop\"></i> Stop\n </button>\n } @else if (IsAnotherComponentRunning(component)) {\n <button kendoButton\n [themeColor]=\"'base'\"\n title=\"Stop current component and run this one\"\n (click)=\"OnSwitchComponent(component, $event)\">\n <i class=\"fa-solid fa-exchange-alt\"></i> Switch To This\n </button>\n } @else {\n <button kendoButton\n [themeColor]=\"'primary'\"\n (click)=\"OnRunComponent(component, $event)\">\n <i class=\"fa-solid fa-play\"></i> Run\n </button>\n }\n </div>\n </div>\n }\n </div>\n }\n }\n </div>\n</div>\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-editor-panel.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/code-editor-panel.component.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"code-editor-panel.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/code-editor-panel.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, ChangeDetectorRef, ViewChild } from '@angular/core';\nimport { Extension } from '@codemirror/state';\nimport { EditorView } from '@codemirror/view';\nimport { unifiedMergeView, getChunks, goToNextChunk, goToPreviousChunk } from '@codemirror/merge';\nimport { ComponentStudioStateService, CodeSection } from '../../services/component-studio-state.service';\n\ntype CodeViewMode = 'current' | 'original' | 'diff';\n\n@Component({\n standalone: false,\n selector: 'mj-code-editor-panel',\n template: `\n <div class=\"code-editor-panel\">\n <!-- Tab bar: one tab per code section -->\n <div class=\"code-tab-bar\">\n @for (section of State.CodeSections; track section.title; let i = $index) {\n <button class=\"code-tab\"\n [class.active]=\"ActiveTabIndex === i\"\n (click)=\"SelectTab(i)\">\n @if (section.isDependency) {\n <i class=\"fa-solid fa-puzzle-piece dep-icon\"></i>\n }\n {{ section.title }}\n @if (HasChanges(section)) {\n <span class=\"modified-dot\" title=\"Modified\"></span>\n }\n </button>\n }\n </div>\n\n <!-- Toolbar: view mode toggle + actions -->\n <div class=\"code-toolbar\">\n <div class=\"view-mode-toggle\">\n <button class=\"mode-btn\" [class.active]=\"ViewMode === 'current'\" (click)=\"SetViewMode('current')\">\n Current\n </button>\n <button class=\"mode-btn\" [class.active]=\"ViewMode === 'original'\" (click)=\"SetViewMode('original')\">\n Original\n </button>\n <button class=\"mode-btn\" [class.active]=\"ViewMode === 'diff'\" (click)=\"SetViewMode('diff')\">\n <i class=\"fa-solid fa-code-compare\"></i> Diff\n </button>\n </div>\n @if (ViewMode === 'diff') {\n <div class=\"diff-nav\">\n <span class=\"diff-count\">{{ DiffChunkCount }} change{{ DiffChunkCount !== 1 ? 's' : '' }}</span>\n <button class=\"icon-btn\" (click)=\"GoToPreviousChunk()\" title=\"Previous change (↑)\" [disabled]=\"DiffChunkCount === 0\">\n <i class=\"fa-solid fa-chevron-up\"></i>\n </button>\n <button class=\"icon-btn\" (click)=\"GoToNextChunk()\" title=\"Next change (↓)\" [disabled]=\"DiffChunkCount === 0\">\n <i class=\"fa-solid fa-chevron-down\"></i>\n </button>\n </div>\n }\n <span class=\"toolbar-spacer\"></span>\n <button class=\"icon-btn\" (click)=\"CopyCode()\" title=\"Copy code to clipboard\">\n <i class=\"fa-solid fa-copy\"></i>\n </button>\n @if (State.IsEditingCode) {\n <div class=\"action-buttons\">\n <button kendoButton [themeColor]=\"'primary'\" (click)=\"ApplyChanges()\">\n <i class=\"fa-solid fa-check\"></i> Apply\n </button>\n <button kendoButton [themeColor]=\"'base'\" (click)=\"CancelChanges()\">\n Cancel\n </button>\n </div>\n }\n </div>\n\n <!-- Editor body -->\n <div class=\"code-editor-body\">\n @if (ActiveSection) {\n @switch (ViewMode) {\n @case ('current') {\n <div class=\"editor-pane\">\n <mj-code-editor\n [(ngModel)]=\"ActiveSection.code\"\n [language]=\"'javascript'\"\n [indentWithTab]=\"true\"\n [placeholder]=\"'Enter component code...'\"\n (ngModelChange)=\"OnCodeChanged()\">\n </mj-code-editor>\n </div>\n }\n @case ('original') {\n <div class=\"editor-pane\">\n <mj-code-editor\n [ngModel]=\"ActiveSection.originalCode\"\n [language]=\"'javascript'\"\n [readonly]=\"true\">\n </mj-code-editor>\n </div>\n }\n @case ('diff') {\n <div class=\"editor-pane diff-pane\">\n <mj-code-editor\n #diffEditor\n [ngModel]=\"ActiveSection.code\"\n [language]=\"'javascript'\"\n [readonly]=\"true\"\n [extensions]=\"DiffExtensions\">\n </mj-code-editor>\n </div>\n }\n }\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-file-code\"></i>\n <p>No code sections available. Select a component to view its code.</p>\n </div>\n }\n </div>\n </div>\n `,\n styles: [`\n .code-editor-panel {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n /* ---- Tab bar ---- */\n .code-tab-bar {\n display: flex;\n align-items: center;\n padding: 0 8px;\n height: 36px;\n background: var(--mat-sys-surface-container-low);\n border-bottom: 1px solid var(--mat-sys-outline-variant);\n flex-shrink: 0;\n gap: 2px;\n overflow-x: auto;\n }\n\n .code-tab {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 5px 12px;\n border: none;\n border-radius: 8px;\n background: transparent;\n color: var(--mat-sys-on-surface-variant);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n white-space: nowrap;\n font-family: inherit;\n position: relative;\n }\n\n .code-tab:hover {\n background: var(--mat-sys-surface-container);\n color: var(--mat-sys-on-surface);\n }\n\n .code-tab.active {\n background: var(--mat-sys-surface);\n color: var(--mat-sys-primary);\n font-weight: 600;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);\n }\n\n .dep-icon {\n font-size: 10px;\n color: var(--mat-sys-tertiary, #7c3aed);\n }\n\n .modified-dot {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: var(--mat-sys-error, #dc2626);\n display: inline-block;\n margin-left: 2px;\n }\n\n /* ---- Toolbar ---- */\n .code-toolbar {\n display: flex;\n align-items: center;\n padding: 4px 8px;\n background: var(--mat-sys-surface-container-lowest);\n border-bottom: 1px solid var(--mat-sys-outline-variant);\n flex-shrink: 0;\n gap: 8px;\n }\n\n .view-mode-toggle {\n display: inline-flex;\n border: 1px solid var(--mat-sys-outline);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .mode-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border: none;\n background: transparent;\n color: var(--mat-sys-on-surface-variant);\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n font-family: inherit;\n }\n\n .mode-btn:not(:last-child) {\n border-right: 1px solid var(--mat-sys-outline);\n }\n\n .mode-btn:hover {\n background: var(--mat-sys-surface-container);\n }\n\n .mode-btn.active {\n background: var(--mat-sys-primary);\n color: var(--mat-sys-on-primary, #fff);\n }\n\n .mode-btn i {\n font-size: 10px;\n }\n\n .toolbar-spacer {\n flex: 1;\n }\n\n .icon-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 6px;\n background: transparent;\n color: var(--mat-sys-on-surface-variant);\n cursor: pointer;\n font-size: 13px;\n transition: all 0.15s ease;\n }\n\n .icon-btn:hover {\n background: var(--mat-sys-surface-container-high);\n color: var(--mat-sys-on-surface);\n }\n\n .action-buttons {\n display: flex;\n gap: 6px;\n }\n\n .diff-nav {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n margin-left: 4px;\n }\n\n .diff-count {\n font-size: 11px;\n font-weight: 500;\n color: var(--mat-sys-on-surface-variant);\n padding: 0 4px;\n white-space: nowrap;\n }\n\n .icon-btn:disabled {\n opacity: 0.35;\n cursor: default;\n }\n\n /* ---- Editor body ---- */\n .code-editor-body {\n flex: 1;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n min-height: 0;\n }\n\n .editor-pane {\n flex: 1;\n overflow: hidden;\n min-height: 0;\n }\n\n .editor-pane mj-code-editor {\n display: block;\n height: 100%;\n }\n\n /* ---- Diff-specific styles ---- */\n :host ::ng-deep .diff-pane .cm-mergeView .cm-changedLine {\n background: rgba(var(--mat-sys-primary-rgb, 99, 102, 241), 0.08);\n }\n\n :host ::ng-deep .diff-pane .cm-mergeView .cm-deletedChunk {\n background: rgba(220, 38, 38, 0.08);\n }\n\n /* ---- Empty state ---- */\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: var(--mat-sys-on-surface-variant);\n flex: 1;\n }\n\n .empty-state i {\n font-size: 32px;\n margin-bottom: 12px;\n opacity: 0.4;\n }\n\n .empty-state p {\n margin: 0;\n font-size: 13px;\n text-align: center;\n }\n `]\n})\nexport class CodeEditorPanelComponent {\n ActiveTabIndex = 0;\n ViewMode: CodeViewMode = 'current';\n DiffExtensions: Extension[] = [];\n DiffChunkCount = 0;\n\n @ViewChild('diffEditor') set DiffEditorRef(ref: { view?: EditorView } | undefined) {\n if (ref?.view) {\n this.diffView = ref.view;\n this.updateChunkCount();\n }\n }\n private diffView: EditorView | null = null;\n\n constructor(\n public State: ComponentStudioStateService,\n private cdr: ChangeDetectorRef\n ) {}\n\n get ActiveSection(): CodeSection | null {\n const sections = this.State.CodeSections;\n if (sections.length === 0) return null;\n if (this.ActiveTabIndex >= sections.length) {\n this.ActiveTabIndex = 0;\n }\n return sections[this.ActiveTabIndex];\n }\n\n HasChanges(section: CodeSection): boolean {\n return section.code !== section.originalCode;\n }\n\n SelectTab(index: number): void {\n this.ActiveTabIndex = index;\n this.ViewMode = 'current';\n this.cdr.detectChanges();\n }\n\n SetViewMode(mode: CodeViewMode): void {\n this.ViewMode = mode;\n if (mode === 'diff') {\n this.buildDiffExtensions();\n }\n this.cdr.detectChanges();\n }\n\n OnCodeChanged(): void {\n this.State.IsEditingCode = true;\n }\n\n ApplyChanges(): void {\n this.State.ApplyCodeChanges();\n }\n\n CancelChanges(): void {\n this.State.InitializeEditors();\n this.ActiveTabIndex = 0;\n this.ViewMode = 'current';\n this.cdr.detectChanges();\n }\n\n CopyCode(): void {\n const section = this.ActiveSection;\n if (!section) return;\n\n const text = this.ViewMode === 'original' ? section.originalCode : section.code;\n navigator.clipboard.writeText(text).catch(err => {\n console.error('Failed to copy code to clipboard:', err);\n });\n }\n\n GoToNextChunk(): void {\n if (this.diffView) {\n goToNextChunk(this.diffView);\n }\n }\n\n GoToPreviousChunk(): void {\n if (this.diffView) {\n goToPreviousChunk(this.diffView);\n }\n }\n\n private updateChunkCount(): void {\n if (!this.diffView) {\n this.DiffChunkCount = 0;\n return;\n }\n // Schedule after the merge view has initialized\n Promise.resolve().then(() => {\n if (!this.diffView) return;\n const result = getChunks(this.diffView.state);\n this.DiffChunkCount = result ? result.chunks.length : 0;\n this.cdr.detectChanges();\n });\n }\n\n private buildDiffExtensions(): void {\n const section = this.ActiveSection;\n if (!section) {\n this.DiffExtensions = [];\n return;\n }\n\n this.DiffExtensions = unifiedMergeView({\n original: section.originalCode,\n highlightChanges: true,\n gutter: true\n });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-requirements-editor.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/data-requirements-editor.component.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"data-requirements-editor.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/data-requirements-editor.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, ChangeDetectorRef } from '@angular/core';\nimport { ComponentStudioStateService } from '../../services/component-studio-state.service';\nimport { ComponentSpec } from '@memberjunction/interactive-component-types';\n\n@Component({\n standalone: false,\n selector: 'mj-data-requirements-editor',\n template: `\n <div class=\"data-requirements-editor\">\n <div class=\"editor-header\">\n <span class=\"header-title\">\n <i class=\"fa-solid fa-database\"></i>\n Data Requirements\n </span>\n @if (IsEditing) {\n <div class=\"action-buttons\">\n <button kendoButton [themeColor]=\"'primary'\" (click)=\"ApplyChanges()\">\n <i class=\"fa-solid fa-check\"></i> Apply Changes\n </button>\n <button kendoButton [themeColor]=\"'base'\" (click)=\"CancelChanges()\">\n <i class=\"fa-solid fa-times\"></i> Cancel\n </button>\n </div>\n }\n </div>\n\n <div class=\"editor-body\">\n @if (State.SelectedComponent) {\n @if (HasDataRequirements) {\n <div class=\"summary-bar\">\n <span class=\"summary-item\">\n <i class=\"fa-solid fa-table\"></i>\n {{ EntityCount }} {{ EntityCount === 1 ? 'entity' : 'entities' }}\n </span>\n <span class=\"summary-item\">\n <i class=\"fa-solid fa-search\"></i>\n {{ QueryCount }} {{ QueryCount === 1 ? 'query' : 'queries' }}\n </span>\n <span class=\"summary-item mode-badge\">\n {{ DataMode }}\n </span>\n </div>\n }\n <div class=\"json-editor-container\">\n <mj-code-editor\n [(ngModel)]=\"EditableContent\"\n [language]=\"'json'\"\n [indentWithTab]=\"true\"\n [placeholder]=\"'Enter data requirements JSON...'\"\n (ngModelChange)=\"OnContentChanged()\">\n </mj-code-editor>\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-database\"></i>\n <p>Select a component to edit its data requirements.</p>\n </div>\n }\n </div>\n </div>\n `,\n styles: [`\n .data-requirements-editor {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n .editor-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 12px;\n border-bottom: 1px solid var(--mat-sys-outline-variant);\n background: var(--mat-sys-surface-container-lowest);\n flex-shrink: 0;\n }\n .header-title {\n font-weight: 600;\n font-size: 13px;\n color: var(--mat-sys-on-surface);\n }\n .header-title i {\n margin-right: 6px;\n color: var(--mat-sys-on-surface-variant);\n }\n .action-buttons {\n display: flex;\n gap: 6px;\n }\n .summary-bar {\n display: flex;\n gap: 12px;\n padding: 6px 12px;\n background: var(--mat-sys-primary-container);\n border-bottom: 1px solid var(--mat-sys-outline-variant);\n font-size: 12px;\n color: var(--mat-sys-on-primary-container);\n flex-shrink: 0;\n }\n .summary-item {\n display: flex;\n align-items: center;\n gap: 4px;\n }\n .mode-badge {\n background: var(--mat-sys-surface-container-high);\n color: var(--mat-sys-on-surface);\n padding: 1px 8px;\n border-radius: 10px;\n font-weight: 600;\n text-transform: uppercase;\n font-size: 10px;\n }\n .editor-body {\n flex: 1;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n }\n .json-editor-container {\n flex: 1;\n overflow: hidden;\n }\n .json-editor-container mj-code-editor {\n display: block;\n height: 100%;\n }\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: var(--mat-sys-on-surface-variant);\n flex: 1;\n }\n .empty-state i {\n font-size: 32px;\n margin-bottom: 12px;\n }\n .empty-state p {\n margin: 0;\n font-size: 13px;\n text-align: center;\n }\n `]\n})\nexport class DataRequirementsEditorComponent {\n EditableContent: string = '';\n IsEditing: boolean = false;\n\n private _parsedRequirements: Record<string, unknown> | null = null;\n\n constructor(\n public State: ComponentStudioStateService,\n private cdr: ChangeDetectorRef\n ) {}\n\n get HasDataRequirements(): boolean {\n return this._parsedRequirements != null;\n }\n\n get EntityCount(): number {\n if (!this._parsedRequirements) return 0;\n const entities = this._parsedRequirements['entities'];\n return Array.isArray(entities) ? entities.length : 0;\n }\n\n get QueryCount(): number {\n if (!this._parsedRequirements) return 0;\n const queries = this._parsedRequirements['queries'];\n return Array.isArray(queries) ? queries.length : 0;\n }\n\n get DataMode(): string {\n if (!this._parsedRequirements) return '';\n return (this._parsedRequirements['mode'] as string) || 'views';\n }\n\n ngOnInit(): void {\n this.loadContent();\n this.State.StateChanged.subscribe(() => {\n this.loadContent();\n this.cdr.detectChanges();\n });\n }\n\n OnContentChanged(): void {\n this.IsEditing = true;\n this.parseContent();\n }\n\n ApplyChanges(): void {\n try {\n const spec: ComponentSpec = JSON.parse(this.State.EditableSpec);\n const dataReq = JSON.parse(this.EditableContent);\n spec.dataRequirements = dataReq;\n this.State.UpdateSpec(spec);\n this.IsEditing = false;\n } catch (error) {\n console.error('Error applying data requirements changes:', error);\n }\n }\n\n CancelChanges(): void {\n this.loadContent();\n this.IsEditing = false;\n this.cdr.detectChanges();\n }\n\n private loadContent(): void {\n try {\n const spec = JSON.parse(this.State.EditableSpec);\n const dataReq = spec.dataRequirements || { mode: 'views', entities: [], queries: [] };\n this.EditableContent = JSON.stringify(dataReq, null, 2);\n this.parseContent();\n } catch {\n this.EditableContent = '';\n this._parsedRequirements = null;\n }\n }\n\n private parseContent(): void {\n try {\n this._parsedRequirements = JSON.parse(this.EditableContent);\n } catch {\n this._parsedRequirements = null;\n }\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requirements-editor.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/requirements-editor.component.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"requirements-editor.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/requirements-editor.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, Input, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { ComponentStudioStateService } from '../../services/component-studio-state.service';\nimport { ComponentSpec } from '@memberjunction/interactive-component-types';\n\ntype RequirementsField = 'functionalRequirements' | 'technicalDesign';\ntype EditorMode = 'preview' | 'edit';\n\n@Component({\n standalone: false,\n selector: 'mj-requirements-editor',\n template: `\n <div class=\"requirements-editor\">\n <div class=\"editor-header\">\n <span class=\"header-title\">\n <i class=\"fa-solid\" [ngClass]=\"FieldIcon\"></i>\n {{ Title }}\n </span>\n <div class=\"header-right\">\n @if (IsEditing) {\n <div class=\"action-buttons\">\n <button kendoButton [themeColor]=\"'primary'\" (click)=\"ApplyChanges()\" class=\"action-btn\">\n <i class=\"fa-solid fa-check\"></i> Apply\n </button>\n <button kendoButton [themeColor]=\"'base'\" (click)=\"CancelChanges()\" class=\"action-btn\">\n Cancel\n </button>\n </div>\n }\n <div class=\"mode-toggle\">\n <button class=\"mode-btn\" [class.active]=\"ViewMode === 'preview'\" (click)=\"SetViewMode('preview')\">\n <i class=\"fa-solid fa-eye\"></i> Preview\n </button>\n <button class=\"mode-btn\" [class.active]=\"ViewMode === 'edit'\" (click)=\"SetViewMode('edit')\">\n <i class=\"fa-solid fa-pencil\"></i> Edit\n </button>\n </div>\n </div>\n </div>\n\n <div class=\"editor-body\">\n @if (State.SelectedComponent) {\n @if (ViewMode === 'preview') {\n <div class=\"preview-container\">\n @if (EditableContent) {\n <mj-markdown [data]=\"EditableContent\" [enableCodeCopy]=\"true\"></mj-markdown>\n } @else {\n <div class=\"empty-preview\">\n <i class=\"fa-solid fa-file-lines\"></i>\n <p>No {{ Title | lowercase }} defined yet.</p>\n <button class=\"edit-link\" (click)=\"SetViewMode('edit')\">\n <i class=\"fa-solid fa-pencil\"></i> Start writing\n </button>\n </div>\n }\n </div>\n } @else {\n <div class=\"code-editor-container\">\n <mj-code-editor\n [(ngModel)]=\"EditableContent\"\n [language]=\"'markdown'\"\n [indentWithTab]=\"true\"\n [placeholder]=\"'Enter ' + Title + ' in markdown format...'\"\n (ngModelChange)=\"OnContentChanged()\">\n </mj-code-editor>\n </div>\n }\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-file-lines\"></i>\n <p>Select a component to view its {{ Title | lowercase }}.</p>\n </div>\n }\n </div>\n </div>\n `,\n styles: [`\n .requirements-editor {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n .editor-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 12px;\n border-bottom: 1px solid var(--mat-sys-outline-variant);\n background: var(--mat-sys-surface);\n flex-shrink: 0;\n gap: 8px;\n }\n\n .header-title {\n font-weight: 600;\n font-size: 13px;\n color: var(--mat-sys-on-surface);\n white-space: nowrap;\n }\n\n .header-title i {\n margin-right: 6px;\n color: var(--mat-sys-primary);\n }\n\n .header-right {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n .action-buttons {\n display: flex;\n gap: 6px;\n }\n\n .action-btn {\n font-size: 12px;\n }\n\n .mode-toggle {\n display: inline-flex;\n border: 1px solid var(--mat-sys-outline);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .mode-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border: none;\n background: transparent;\n color: var(--mat-sys-on-surface-variant);\n font-size: 11px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n font-family: inherit;\n }\n\n .mode-btn:not(:last-child) {\n border-right: 1px solid var(--mat-sys-outline);\n }\n\n .mode-btn:hover {\n background: var(--mat-sys-surface-container);\n }\n\n .mode-btn.active {\n background: var(--mat-sys-primary);\n color: var(--mat-sys-on-primary, #fff);\n }\n\n .mode-btn i {\n font-size: 10px;\n }\n\n .editor-body {\n flex: 1;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n }\n\n .preview-container {\n flex: 1;\n overflow: auto;\n padding: 16px 20px;\n }\n\n .code-editor-container {\n flex: 1;\n overflow: hidden;\n }\n\n .code-editor-container mj-code-editor {\n display: block;\n height: 100%;\n }\n\n .empty-preview {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: var(--mat-sys-on-surface-variant);\n }\n\n .empty-preview i {\n font-size: 32px;\n margin-bottom: 12px;\n opacity: 0.4;\n }\n\n .empty-preview p {\n margin: 0 0 12px;\n font-size: 13px;\n }\n\n .edit-link {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 6px 14px;\n border: 1px solid var(--mat-sys-outline);\n border-radius: 8px;\n background: transparent;\n color: var(--mat-sys-primary);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n font-family: inherit;\n }\n\n .edit-link:hover {\n background: var(--mat-sys-primary-container, #e0e7ff);\n }\n\n .empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: var(--mat-sys-on-surface-variant);\n flex: 1;\n }\n\n .empty-state i {\n font-size: 32px;\n margin-bottom: 12px;\n opacity: 0.4;\n }\n\n .empty-state p {\n margin: 0;\n font-size: 13px;\n text-align: center;\n }\n `]\n})\nexport class RequirementsEditorComponent implements OnInit, OnDestroy {\n @Input() Field: RequirementsField = 'functionalRequirements';\n @Input() Title: string = 'Functional Requirements';\n\n EditableContent: string = '';\n IsEditing: boolean = false;\n ViewMode: EditorMode = 'preview';\n\n private stateChangedSub: Subscription | null = null;\n\n constructor(\n public State: ComponentStudioStateService,\n private cdr: ChangeDetectorRef\n ) {}\n\n get FieldIcon(): string {\n return this.Field === 'functionalRequirements' ? 'fa-clipboard-list' : 'fa-drafting-compass';\n }\n\n ngOnInit(): void {\n this.loadContent();\n this.stateChangedSub = this.State.StateChanged.subscribe(() => {\n if (!this.IsEditing) {\n this.loadContent();\n }\n this.cdr.detectChanges();\n });\n }\n\n ngOnDestroy(): void {\n if (this.stateChangedSub) {\n this.stateChangedSub.unsubscribe();\n this.stateChangedSub = null;\n }\n }\n\n SetViewMode(mode: EditorMode): void {\n this.ViewMode = mode;\n this.cdr.detectChanges();\n }\n\n OnContentChanged(): void {\n this.IsEditing = true;\n }\n\n ApplyChanges(): void {\n try {\n const spec: ComponentSpec = JSON.parse(this.State.EditableSpec);\n spec[this.Field] = this.EditableContent;\n this.State.UpdateSpec(spec);\n this.IsEditing = false;\n this.ViewMode = 'preview';\n } catch (error) {\n console.error('Error applying requirements changes:', error);\n }\n }\n\n CancelChanges(): void {\n this.loadContent();\n this.IsEditing = false;\n this.ViewMode = 'preview';\n this.cdr.detectChanges();\n }\n\n private loadContent(): void {\n try {\n const spec = JSON.parse(this.State.EditableSpec);\n this.EditableContent = spec[this.Field] || '';\n } catch {\n this.EditableContent = '';\n }\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec-editor.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/spec-editor.component.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spec-editor.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/editors/spec-editor.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { ComponentStudioStateService } from '../../services/component-studio-state.service';\n\ntype SpecEditorMode = 'form' | 'json';\n\ninterface SpecFormModel {\n name: string;\n title: string;\n description: string;\n type: string;\n location: string;\n exampleUsage: string;\n}\n\nconst COMPONENT_TYPES = [\n 'Report', 'Dashboard', 'Form', 'Chart', 'Table', 'Widget', 'Navigation', 'Search', 'Utility'\n];\n\n@Component({\n standalone: false,\n selector: 'mj-spec-editor',\n template: `\n <div class=\"spec-editor\">\n <div class=\"editor-header\">\n <div class=\"mode-toggle\">\n <button class=\"mode-btn\" [class.active]=\"Mode === 'form'\" (click)=\"SetMode('form')\">\n <i class=\"fa-solid fa-wpforms\"></i> Form\n </button>\n <button class=\"mode-btn\" [class.active]=\"Mode === 'json'\" (click)=\"SetMode('json')\">\n <i class=\"fa-solid fa-code\"></i> JSON\n </button>\n </div>\n @if (State.IsEditingSpec) {\n <div class=\"action-buttons\">\n <button kendoButton [themeColor]=\"'primary'\" (click)=\"ApplyChanges()\" class=\"action-btn\">\n <i class=\"fa-solid fa-check\"></i> Apply\n </button>\n <button kendoButton [themeColor]=\"'base'\" (click)=\"CancelChanges()\" class=\"action-btn\">\n Cancel\n </button>\n </div>\n }\n </div>\n\n <div class=\"editor-body\">\n @if (Mode === 'form') {\n <div class=\"form-mode\">\n <div class=\"form-row\">\n <div class=\"form-field\">\n <label class=\"form-label\">Name</label>\n <input class=\"form-input\" [(ngModel)]=\"FormModel.name\" (ngModelChange)=\"OnFormChanged()\" />\n </div>\n <div class=\"form-field\">\n <label class=\"form-label\">Type</label>\n <select class=\"form-select\" [(ngModel)]=\"FormModel.type\" (ngModelChange)=\"OnFormChanged()\">\n @for (t of ComponentTypes; track t) {\n <option [value]=\"t\">{{ t }}</option>\n }\n </select>\n </div>\n </div>\n <div class=\"form-field\">\n <label class=\"form-label\">Title</label>\n <input class=\"form-input\" [(ngModel)]=\"FormModel.title\" (ngModelChange)=\"OnFormChanged()\" />\n </div>\n <div class=\"form-field\">\n <label class=\"form-label\">Description</label>\n <textarea class=\"form-textarea\" [(ngModel)]=\"FormModel.description\" (ngModelChange)=\"OnFormChanged()\" rows=\"3\"></textarea>\n </div>\n <div class=\"form-row\">\n <div class=\"form-field\">\n <label class=\"form-label\">Location</label>\n <select class=\"form-select\" [(ngModel)]=\"FormModel.location\" (ngModelChange)=\"OnFormChanged()\">\n <option value=\"embedded\">embedded</option>\n <option value=\"standalone\">standalone</option>\n </select>\n </div>\n <div class=\"form-field\">\n <label class=\"form-label\">Example Usage</label>\n <input class=\"form-input\" [(ngModel)]=\"FormModel.exampleUsage\" (ngModelChange)=\"OnFormChanged()\" placeholder=\"Optional\" />\n </div>\n </div>\n </div>\n } @else {\n <div class=\"json-mode\">\n <mj-code-editor\n [(ngModel)]=\"State.EditableSpec\"\n [language]=\"'json'\"\n [indentWithTab]=\"true\"\n (ngModelChange)=\"OnJsonChanged()\">\n </mj-code-editor>\n </div>\n }\n </div>\n </div>\n `,\n styles: [`\n .spec-editor {\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n .editor-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 12px;\n border-bottom: 1px solid var(--mat-sys-outline-variant);\n background: var(--mat-sys-surface);\n flex-shrink: 0;\n }\n\n .mode-toggle {\n display: inline-flex;\n border: 1px solid var(--mat-sys-outline);\n border-radius: 8px;\n overflow: hidden;\n }\n\n .mode-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 12px;\n border: none;\n background: transparent;\n color: var(--mat-sys-on-surface-variant);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.15s ease;\n font-family: inherit;\n }\n\n .mode-btn:not(:last-child) {\n border-right: 1px solid var(--mat-sys-outline);\n }\n\n .mode-btn:hover {\n background: var(--mat-sys-surface-container);\n }\n\n .mode-btn.active {\n background: var(--mat-sys-primary);\n color: var(--mat-sys-on-primary, #fff);\n }\n\n .mode-btn i {\n font-size: 11px;\n }\n\n .action-buttons {\n display: flex;\n gap: 6px;\n }\n\n .action-btn {\n font-size: 12px;\n }\n\n .editor-body {\n flex: 1;\n overflow: auto;\n }\n\n .form-mode {\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: 14px;\n }\n\n .form-field {\n display: flex;\n flex-direction: column;\n gap: 4px;\n flex: 1;\n }\n\n .form-label {\n font-size: 11px;\n font-weight: 600;\n color: var(--mat-sys-on-surface-variant);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n }\n\n .form-input {\n padding: 8px 12px;\n border: 1px solid var(--mat-sys-outline);\n border-radius: 6px;\n background: var(--mat-sys-surface);\n color: var(--mat-sys-on-surface);\n font-size: 13px;\n font-family: inherit;\n outline: none;\n transition: border-color 0.15s ease;\n }\n\n .form-input:focus {\n border-color: var(--mat-sys-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--mat-sys-primary) 15%, transparent);\n }\n\n .form-textarea {\n padding: 8px 12px;\n border: 1px solid var(--mat-sys-outline);\n border-radius: 6px;\n background: var(--mat-sys-surface);\n color: var(--mat-sys-on-surface);\n font-size: 13px;\n font-family: inherit;\n resize: vertical;\n min-height: 60px;\n outline: none;\n transition: border-color 0.15s ease;\n }\n\n .form-textarea:focus {\n border-color: var(--mat-sys-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--mat-sys-primary) 15%, transparent);\n }\n\n .form-select {\n padding: 8px 12px;\n border: 1px solid var(--mat-sys-outline);\n border-radius: 6px;\n background: var(--mat-sys-surface);\n color: var(--mat-sys-on-surface);\n font-size: 13px;\n font-family: inherit;\n outline: none;\n cursor: pointer;\n transition: border-color 0.15s ease;\n }\n\n .form-select:focus {\n border-color: var(--mat-sys-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--mat-sys-primary) 15%, transparent);\n }\n\n .form-row {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 12px;\n }\n\n .json-mode {\n height: 100%;\n }\n\n .json-mode mj-code-editor {\n display: block;\n height: 100%;\n }\n `]\n})\nexport class SpecEditorComponent implements OnInit, OnDestroy {\n Mode: SpecEditorMode = 'form';\n FormModel: SpecFormModel = { name: '', title: '', description: '', type: '', location: '', exampleUsage: '' };\n ComponentTypes: string[] = COMPONENT_TYPES;\n\n private stateChangedSub: Subscription | null = null;\n\n constructor(\n public State: ComponentStudioStateService,\n private cdr: ChangeDetectorRef\n ) {}\n\n ngOnInit(): void {\n this.syncSpecToForm();\n this.stateChangedSub = this.State.StateChanged.subscribe(() => {\n if (this.Mode === 'form' && !this.State.IsEditingSpec) {\n this.syncSpecToForm();\n }\n this.cdr.detectChanges();\n });\n }\n\n ngOnDestroy(): void {\n if (this.stateChangedSub) {\n this.stateChangedSub.unsubscribe();\n this.stateChangedSub = null;\n }\n }\n\n SetMode(mode: SpecEditorMode): void {\n if (mode === 'form') {\n this.syncSpecToForm();\n } else {\n this.syncFormToSpec();\n }\n this.Mode = mode;\n }\n\n OnFormChanged(): void {\n this.syncFormToSpec();\n this.State.IsEditingSpec = true;\n }\n\n OnJsonChanged(): void {\n this.State.IsEditingSpec = true;\n }\n\n ApplyChanges(): void {\n if (this.Mode === 'form') {\n this.syncFormToSpec();\n }\n this.State.ApplySpecChanges();\n }\n\n CancelChanges(): void {\n this.State.InitializeEditors();\n this.syncSpecToForm();\n this.cdr.detectChanges();\n }\n\n private syncSpecToForm(): void {\n try {\n const spec = JSON.parse(this.State.EditableSpec);\n this.FormModel = {\n name: spec.name || '',\n title: spec.title || '',\n description: spec.description || '',\n type: spec.type || '',\n location: spec.location || '',\n exampleUsage: spec.exampleUsage || ''\n };\n } catch {\n // If JSON is invalid, keep current form values\n }\n }\n\n private syncFormToSpec(): void {\n try {\n const spec = JSON.parse(this.State.EditableSpec);\n spec.name = this.FormModel.name;\n spec.title = this.FormModel.title;\n spec.description = this.FormModel.description;\n spec.type = this.FormModel.type;\n spec.location = this.FormModel.location;\n spec.exampleUsage = this.FormModel.exampleUsage;\n this.State.EditableSpec = JSON.stringify(spec, null, 2);\n } catch {\n // If JSON is invalid, skip sync\n }\n }\n}\n"]}
|
package/dist/ComponentStudio/components/new-component-dialog/new-component-dialog.component.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new-component-dialog.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/new-component-dialog/new-component-dialog.component.ts","../../../../src/ComponentStudio/components/new-component-dialog/new-component-dialog.component.html"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"new-component-dialog.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/new-component-dialog/new-component-dialog.component.ts","../../../../src/ComponentStudio/components/new-component-dialog/new-component-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, Input, Output, EventEmitter } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { NewComponentResult } from '../../component-studio-dashboard.component';\n\ninterface TypeOption {\n value: string;\n label: string;\n icon: string;\n description: string;\n}\n\n@Component({\n standalone: false,\n selector: 'mj-new-component-dialog',\n templateUrl: './new-component-dialog.component.html',\n styleUrls: ['./new-component-dialog.component.css']\n})\nexport class NewComponentDialogComponent {\n\n @Input() Visible: boolean = false;\n @Output() Close = new EventEmitter<NewComponentResult | null>();\n\n public form: FormGroup;\n public SelectedType: string = 'dashboard';\n\n public TypeOptions: TypeOption[] = [\n { value: 'dashboard', label: 'Dashboard', icon: 'fa-solid fa-gauge-high', description: 'Interactive data dashboard' },\n { value: 'report', label: 'Report', icon: 'fa-solid fa-file-lines', description: 'Formatted data report' },\n { value: 'chart', label: 'Chart', icon: 'fa-solid fa-chart-bar', description: 'Data visualization chart' },\n { value: 'form', label: 'Form', icon: 'fa-solid fa-rectangle-list', description: 'Interactive input form' },\n { value: 'component', label: 'Component', icon: 'fa-solid fa-puzzle-piece', description: 'Reusable UI component' }\n ];\n\n private lastAutoFilledTitle: string = '';\n\n constructor(private fb: FormBuilder) {\n this.form = this.fb.group({\n name: ['', Validators.required],\n title: [''],\n description: ['']\n });\n }\n\n OnNameChange(): void {\n const nameValue = this.form.get('name')?.value || '';\n const titleControl = this.form.get('title');\n if (!titleControl) return;\n\n const currentTitle = titleControl.value || '';\n if (currentTitle === '' || currentTitle === this.lastAutoFilledTitle) {\n titleControl.setValue(nameValue);\n this.lastAutoFilledTitle = nameValue;\n }\n }\n\n OnSelectType(type: string): void {\n this.SelectedType = type;\n }\n\n OnCreate(): void {\n if (!this.form.valid) return;\n\n const result: NewComponentResult = {\n name: this.form.get('name')?.value?.trim() || '',\n title: this.form.get('title')?.value?.trim() || this.form.get('name')?.value?.trim() || '',\n description: this.form.get('description')?.value?.trim() || '',\n type: this.SelectedType\n };\n\n this.resetForm();\n this.Close.emit(result);\n }\n\n OnCancel(): void {\n this.resetForm();\n this.Close.emit(null);\n }\n\n private resetForm(): void {\n this.form.reset();\n this.SelectedType = 'dashboard';\n this.lastAutoFilledTitle = '';\n }\n}\n","@if (Visible) {\n <kendo-dialog [title]=\"'Create New Component'\" (close)=\"OnCancel()\" [width]=\"520\" [minWidth]=\"400\">\n <form [formGroup]=\"form\">\n <div class=\"dialog-form\">\n <!-- Name field (required) -->\n <div class=\"form-field\">\n <label class=\"form-label\" for=\"component-name\">Name <span class=\"required\">*</span></label>\n <input\n id=\"component-name\"\n class=\"form-input\"\n type=\"text\"\n formControlName=\"name\"\n (input)=\"OnNameChange()\"\n placeholder=\"e.g. Sales Overview Dashboard\"\n autocomplete=\"off\">\n <span class=\"form-hint\">A unique name for your component</span>\n </div>\n\n <!-- Type selection (card grid) -->\n <div class=\"form-field\">\n <label class=\"form-label\">Type</label>\n <div class=\"type-options\">\n @for (option of TypeOptions; track option.value) {\n <div\n class=\"type-card\"\n [class.selected]=\"SelectedType === option.value\"\n (click)=\"OnSelectType(option.value)\">\n <div class=\"type-card-icon\">\n <i [class]=\"option.icon\"></i>\n </div>\n <div class=\"type-card-label\">{{ option.label }}</div>\n <div class=\"type-card-description\">{{ option.description }}</div>\n </div>\n }\n </div>\n </div>\n\n <!-- Title field (auto-filled from name) -->\n <div class=\"form-field\">\n <label class=\"form-label\" for=\"component-title\">Title</label>\n <input\n id=\"component-title\"\n class=\"form-input\"\n type=\"text\"\n formControlName=\"title\"\n placeholder=\"Display title (auto-filled from name)\"\n autocomplete=\"off\">\n <span class=\"form-hint\">The display title shown in the component header</span>\n </div>\n\n <!-- Description (optional textarea) -->\n <div class=\"form-field\">\n <label class=\"form-label\" for=\"component-description\">Description</label>\n <textarea\n id=\"component-description\"\n class=\"form-textarea\"\n formControlName=\"description\"\n placeholder=\"Describe what this component does...\"\n rows=\"3\"></textarea>\n <span class=\"form-hint\">Optional description of the component's purpose</span>\n </div>\n </div>\n </form>\n\n <kendo-dialog-actions>\n <button kendoButton (click)=\"OnCreate()\" [themeColor]=\"'primary'\" [disabled]=\"!form.valid\">\n <span class=\"fa-solid fa-plus\"></span> Create\n </button>\n <button kendoButton (click)=\"OnCancel()\">Cancel</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n}\n"]}
|
package/dist/ComponentStudio/components/save-version-dialog/save-version-dialog.component.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save-version-dialog.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/save-version-dialog/save-version-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;;;;;;;IAoBzD,+BAA4B;IAAA,YAA8B;IAAA,iBAAO;;;IAArC,cAA8B;IAA9B,0DAA8B;;;IAE1D,+BAAsC;IAAA,6BAAa;IAAA,iBAAO;;;;IAiBxD,AADF,AADF,8BAAuB,gBACyC,gBACS;IAArB,yTAAkB;IAAlE,iBAAqE;IAEnE,AADF,+BAA2B,eACC;IAAA,mCAAmB;IAAA,iBAAO;IACpD,gCAAyB;IAAA,YAAiC;IAE9D,AADE,AAD4D,iBAAO,EAC7D,EACA;IAEN,AADF,iCAAiE,gBACS;IAArB,yTAAkB;IAArE,iBAAwE;IAEtE,AADF,gCAA2B,gBACC;IAAA,uCAAsB;IAAA,iBAAO;IACvD,iCAAyB;IAAA,aAAgC;IAG/D,AADE,AADE,AAD2D,iBAAO,EAC5D,EACA,EACJ;;;IAdwB,cAAiC;IAAjC,iDAAiC;IACX,cAAkB;IAAlB,2CAAkB;IAGvC,eAAiC;IAAjC,6DAAiC;IAGlC,cAAoC;IAApC,oDAAoC;IACX,cAAkB;IAAlB,2CAAkB;IAG1C,eAAgC;IAAhC,4DAAgC;;;;IArCrE,uCAGuB;IAArB,oMAAS,iBAAU,KAAC;IAGlB,AADF,8BAAyB,aACM;IAGzB,AAFF,2GAA0B,qFAEjB;IAGX,iBAAM;IAGJ,AADF,8BAAwB,eAC0B;IAAA,uBAAO;IAAA,iBAAQ;IAC/D,gCAK0B;IAFxB,gTAAqB;IAGzB,AANE,iBAK0B,EACtB;IAEN,2GAA0B;IAkB5B,iBAAM;IAGJ,AADF,6CAAsB,kBAC4C;IAAnB,+LAAS,eAAQ,KAAC;IAC7D,yBAAgC;IAAC,uBACnC;IAAA,iBAAS;IACT,mCAA+D;IAArB,+LAAS,iBAAU,KAAC;IAC5D,yBACF;IAEJ,AADE,AADE,iBAAS,EACY,EACV;;;IAlDb,AADA,sCAAwB,cACX;IAKT,eAIC;IAJD,mDAIC;IAQC,eAAqB;IAArB,8CAAqB;IAKzB,cAiBC;IAjBD,oDAiBC;IAImB,eAAwB;IAAxB,sCAAwB;IAGxB,eAAqB;IAArB,mCAAqB;;AAqGnD,MAAM,OAAO,0BAA0B;IAC5B,OAAO,GAAG,KAAK,CAAC;IAChB,cAAc,GAAG,CAAC,CAAC;IAClB,IAAI,GAAG,IAAI,YAAY,EAAqB,CAAC;IAC7C,MAAM,GAAG,IAAI,YAAY,EAAQ,CAAC;IAE5C,OAAO,GAAG,EAAE,CAAC;IACb,IAAI,GAAqB,KAAK,CAAC;IAE/B,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,CAAC;oHAzBU,0BAA0B;6DAA1B,0BAA0B;YAtJnC,sGAAe;;YAAf,sCAsDC;;;iFAgGQ,0BAA0B;cA1JtC,SAAS;6BACI,KAAK,YACP,wBAAwB,YACxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDT;;kBAgGA,KAAK;;kBACL,KAAK;;kBACL,MAAM;;kBACN,MAAM;;kFAJI,0BAA0B"}
|
|
1
|
+
{"version":3,"file":"save-version-dialog.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/save-version-dialog/save-version-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;;;;;;;IAoBzD,+BAA4B;IAAA,YAA8B;IAAA,iBAAO;;;IAArC,cAA8B;IAA9B,0DAA8B;;;IAE1D,+BAAsC;IAAA,6BAAa;IAAA,iBAAO;;;;IAiBxD,AADF,AADF,8BAAuB,gBACyC,gBACS;IAArB,yTAAkB;IAAlE,iBAAqE;IAEnE,AADF,+BAA2B,eACC;IAAA,mCAAmB;IAAA,iBAAO;IACpD,gCAAyB;IAAA,YAAiC;IAE9D,AADE,AAD4D,iBAAO,EAC7D,EACA;IAEN,AADF,iCAAiE,gBACS;IAArB,yTAAkB;IAArE,iBAAwE;IAEtE,AADF,gCAA2B,gBACC;IAAA,uCAAsB;IAAA,iBAAO;IACvD,iCAAyB;IAAA,aAAgC;IAG/D,AADE,AADE,AAD2D,iBAAO,EAC5D,EACA,EACJ;;;IAdwB,cAAiC;IAAjC,iDAAiC;IACX,cAAkB;IAAlB,2CAAkB;IAGvC,eAAiC;IAAjC,6DAAiC;IAGlC,cAAoC;IAApC,oDAAoC;IACX,cAAkB;IAAlB,2CAAkB;IAG1C,eAAgC;IAAhC,4DAAgC;;;;IArCrE,uCAGuB;IAArB,oMAAS,iBAAU,KAAC;IAGlB,AADF,8BAAyB,aACM;IAGzB,AAFF,2GAA0B,qFAEjB;IAGX,iBAAM;IAGJ,AADF,8BAAwB,eAC0B;IAAA,uBAAO;IAAA,iBAAQ;IAC/D,gCAK0B;IAFxB,gTAAqB;IAGzB,AANE,iBAK0B,EACtB;IAEN,2GAA0B;IAkB5B,iBAAM;IAGJ,AADF,6CAAsB,kBAC4C;IAAnB,+LAAS,eAAQ,KAAC;IAC7D,yBAAgC;IAAC,uBACnC;IAAA,iBAAS;IACT,mCAA+D;IAArB,+LAAS,iBAAU,KAAC;IAC5D,yBACF;IAEJ,AADE,AADE,iBAAS,EACY,EACV;;;IAlDb,AADA,sCAAwB,cACX;IAKT,eAIC;IAJD,mDAIC;IAQC,eAAqB;IAArB,8CAAqB;IAKzB,cAiBC;IAjBD,oDAiBC;IAImB,eAAwB;IAAxB,sCAAwB;IAGxB,eAAqB;IAArB,mCAAqB;;AAqGnD,MAAM,OAAO,0BAA0B;IAC5B,OAAO,GAAG,KAAK,CAAC;IAChB,cAAc,GAAG,CAAC,CAAC;IAClB,IAAI,GAAG,IAAI,YAAY,EAAqB,CAAC;IAC7C,MAAM,GAAG,IAAI,YAAY,EAAQ,CAAC;IAE5C,OAAO,GAAG,EAAE,CAAC;IACb,IAAI,GAAqB,KAAK,CAAC;IAE/B,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACb,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,CAAC;oHAzBU,0BAA0B;6DAA1B,0BAA0B;YAtJnC,sGAAe;;YAAf,sCAsDC;;;iFAgGQ,0BAA0B;cA1JtC,SAAS;6BACI,KAAK,YACP,wBAAwB,YACxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDT;;kBAgGA,KAAK;;kBACL,KAAK;;kBACL,MAAM;;kBACN,MAAM;;kFAJI,0BAA0B","sourcesContent":["import { Component, Input, Output, EventEmitter } from '@angular/core';\n\nexport interface SaveVersionResult {\n Comment: string;\n Mode: 'new' | 'update';\n}\n\n@Component({\n standalone: false,\n selector: 'mj-save-version-dialog',\n template: `\n @if (Visible) {\n <kendo-dialog\n [title]=\"'Save Version'\"\n [width]=\"420\"\n (close)=\"OnCancel()\">\n\n <div class=\"dialog-body\">\n <div class=\"version-context\">\n @if (CurrentVersion > 0) {\n <span class=\"version-badge\">Current: v{{ CurrentVersion }}</span>\n } @else {\n <span class=\"version-badge new-badge\">First version</span>\n }\n </div>\n\n <div class=\"form-field\">\n <label class=\"field-label\" for=\"versionComment\">Comment</label>\n <input\n kendoTextBox\n id=\"versionComment\"\n [(ngModel)]=\"Comment\"\n placeholder=\"Describe what changed...\"\n class=\"comment-input\" />\n </div>\n\n @if (CurrentVersion > 0) {\n <div class=\"save-mode\">\n <label class=\"radio-option\" [class.selected]=\"Mode === 'new'\">\n <input type=\"radio\" name=\"saveMode\" value=\"new\" [(ngModel)]=\"Mode\" />\n <div class=\"radio-content\">\n <span class=\"radio-label\">Save as new version</span>\n <span class=\"radio-desc\">Creates v{{ CurrentVersion + 1 }}</span>\n </div>\n </label>\n <label class=\"radio-option\" [class.selected]=\"Mode === 'update'\">\n <input type=\"radio\" name=\"saveMode\" value=\"update\" [(ngModel)]=\"Mode\" />\n <div class=\"radio-content\">\n <span class=\"radio-label\">Update current version</span>\n <span class=\"radio-desc\">Overwrites v{{ CurrentVersion }}</span>\n </div>\n </label>\n </div>\n }\n </div>\n\n <kendo-dialog-actions>\n <button kendoButton [themeColor]=\"'primary'\" (click)=\"OnSave()\">\n <i class=\"fa-solid fa-save\"></i> Save\n </button>\n <button kendoButton [themeColor]=\"'base'\" (click)=\"OnCancel()\">\n Cancel\n </button>\n </kendo-dialog-actions>\n </kendo-dialog>\n }\n `,\n styles: [`\n .dialog-body {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 4px 0;\n }\n\n .version-context {\n display: flex;\n align-items: center;\n }\n\n .version-badge {\n display: inline-flex;\n align-items: center;\n padding: 3px 10px;\n border-radius: 12px;\n font-size: 12px;\n font-weight: 600;\n background: var(--mat-sys-primary-container, #e0e7ff);\n color: var(--mat-sys-on-primary-container, #1e1b4b);\n }\n\n .new-badge {\n background: var(--mat-sys-tertiary-container, #f3e8ff);\n color: var(--mat-sys-on-tertiary-container, #4a1d96);\n }\n\n .form-field {\n display: flex;\n flex-direction: column;\n gap: 6px;\n }\n\n .field-label {\n font-size: 13px;\n font-weight: 500;\n color: var(--mat-sys-on-surface, #1f2937);\n }\n\n .comment-input {\n width: 100%;\n }\n\n .save-mode {\n display: flex;\n flex-direction: column;\n gap: 8px;\n }\n\n .radio-option {\n display: flex;\n align-items: flex-start;\n gap: 10px;\n padding: 10px 12px;\n border: 1px solid var(--mat-sys-outline-variant, #d1d5db);\n border-radius: 8px;\n cursor: pointer;\n transition: all 0.15s ease;\n }\n\n .radio-option:hover {\n background: var(--mat-sys-surface-container, #f3f4f6);\n }\n\n .radio-option.selected {\n border-color: var(--mat-sys-primary, #6366f1);\n background: var(--mat-sys-primary-container, #e0e7ff);\n }\n\n .radio-option input[type=\"radio\"] {\n margin-top: 2px;\n accent-color: var(--mat-sys-primary, #6366f1);\n }\n\n .radio-content {\n display: flex;\n flex-direction: column;\n gap: 2px;\n }\n\n .radio-label {\n font-size: 13px;\n font-weight: 500;\n color: var(--mat-sys-on-surface, #1f2937);\n }\n\n .radio-desc {\n font-size: 11px;\n color: var(--mat-sys-on-surface-variant, #6b7280);\n }\n `]\n})\nexport class SaveVersionDialogComponent {\n @Input() Visible = false;\n @Input() CurrentVersion = 0;\n @Output() Save = new EventEmitter<SaveVersionResult>();\n @Output() Cancel = new EventEmitter<void>();\n\n Comment = '';\n Mode: 'new' | 'update' = 'new';\n\n OnSave(): void {\n this.Save.emit({\n Comment: this.Comment,\n Mode: this.Mode\n });\n this.ResetForm();\n }\n\n OnCancel(): void {\n this.Cancel.emit();\n this.ResetForm();\n }\n\n private ResetForm(): void {\n this.Comment = '';\n this.Mode = 'new';\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-import-dialog.component.js","sourceRoot":"","sources":["../../../src/ComponentStudio/components/text-import-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;;;;;;IA0BxD,8BAA2B;IACzB,uBAAgD;IAChD,YACF;IAAA,iBAAM;;;IADJ,eACF;IADE,oDACF;;AAmER,MAAM,OAAO,yBAAyB;IAC1B,UAAU,GAAG,IAAI,YAAY,EAAiB,CAAC;IAC/C,YAAY,GAAG,IAAI,YAAY,EAAQ,CAAC;IAE3C,aAAa,GAAG,EAAE,CAAC;IACnB,YAAY,GAAG,EAAE,CAAC;IAElB,MAAM;QACX,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/B,IAAI,CAAC,YAAY,GAAG,wCAAwC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAkB,CAAC;YAE7D,2BAA2B;YAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,YAAY,GAAG,gEAAgE,CAAC;gBACrF,OAAO;YACT,CAAC;YAED,uBAAuB;YACvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,GAAG,gDAAgD,CAAC;QACvE,CAAC;IACH,CAAC;IAEM,MAAM;QACX,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;mHAjCU,yBAAyB;6DAAzB,yBAAyB;YAvF9B,AADF,AADF,8BAAwC,aACX,SACrB;YAAA,0CAA0B;YAAA,iBAAK;YACnC,yBAAG;YAAA,sEAAsD;YAC3D,AAD2D,iBAAI,EACzD;YAGJ,AADF,8BAA8B,wBAQH;YANvB,sOAA2B;YAQ/B,AADE,iBAAiB,EACb;YAEN,2FAAoB;YAQlB,AADF,8BAA4B,iBACmC;YAAzC,uGAAS,YAAQ,IAAC;YACpC,yBACF;YAAA,iBAAS;YACT,kCAA4F;YAAxE,uGAAS,YAAQ,IAAC;YACpC,wBAAuC;YAAC,yBAC1C;YAEJ,AADE,AADE,iBAAS,EACL,EACF;;YAzBA,eAA2B;YAA3B,iDAA2B;YAK3B,AADA,AADA,AADA,AADA,iCAAmB,mBACD,uBACI,mBACJ,kEAC+C;YAKrE,cAKC;YALD,2CAKC;YAGwC,eAAqB;YAArB,mCAAqB;YAGrB,eAAwB;YAAC,AAAzB,sCAAwB,gCAA4B;;;iFA4DtF,yBAAyB;cA7FrC,SAAS;6BACI,KAAK,YACP,wBAAwB,YACxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCT;;kBAwDA,MAAM;;kBACN,MAAM;;kFAFI,yBAAyB"}
|
|
1
|
+
{"version":3,"file":"text-import-dialog.component.js","sourceRoot":"","sources":["../../../src/ComponentStudio/components/text-import-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;;;;;;IA0BxD,8BAA2B;IACzB,uBAAgD;IAChD,YACF;IAAA,iBAAM;;;IADJ,eACF;IADE,oDACF;;AAmER,MAAM,OAAO,yBAAyB;IAC1B,UAAU,GAAG,IAAI,YAAY,EAAiB,CAAC;IAC/C,YAAY,GAAG,IAAI,YAAY,EAAQ,CAAC;IAE3C,aAAa,GAAG,EAAE,CAAC;IACnB,YAAY,GAAG,EAAE,CAAC;IAElB,MAAM;QACX,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/B,IAAI,CAAC,YAAY,GAAG,wCAAwC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAkB,CAAC;YAE7D,2BAA2B;YAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,YAAY,GAAG,gEAAgE,CAAC;gBACrF,OAAO;YACT,CAAC;YAED,uBAAuB;YACvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,GAAG,gDAAgD,CAAC;QACvE,CAAC;IACH,CAAC;IAEM,MAAM;QACX,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;mHAjCU,yBAAyB;6DAAzB,yBAAyB;YAvF9B,AADF,AADF,8BAAwC,aACX,SACrB;YAAA,0CAA0B;YAAA,iBAAK;YACnC,yBAAG;YAAA,sEAAsD;YAC3D,AAD2D,iBAAI,EACzD;YAGJ,AADF,8BAA8B,wBAQH;YANvB,sOAA2B;YAQ/B,AADE,iBAAiB,EACb;YAEN,2FAAoB;YAQlB,AADF,8BAA4B,iBACmC;YAAzC,uGAAS,YAAQ,IAAC;YACpC,yBACF;YAAA,iBAAS;YACT,kCAA4F;YAAxE,uGAAS,YAAQ,IAAC;YACpC,wBAAuC;YAAC,yBAC1C;YAEJ,AADE,AADE,iBAAS,EACL,EACF;;YAzBA,eAA2B;YAA3B,iDAA2B;YAK3B,AADA,AADA,AADA,AADA,iCAAmB,mBACD,uBACI,mBACJ,kEAC+C;YAKrE,cAKC;YALD,2CAKC;YAGwC,eAAqB;YAArB,mCAAqB;YAGrB,eAAwB;YAAC,AAAzB,sCAAwB,gCAA4B;;;iFA4DtF,yBAAyB;cA7FrC,SAAS;6BACI,KAAK,YACP,wBAAwB,YACxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCT;;kBAwDA,MAAM;;kBACN,MAAM;;kFAFI,yBAAyB","sourcesContent":["import { Component, EventEmitter, Output } from '@angular/core';\nimport { ComponentSpec } from '@memberjunction/interactive-component-types';\n\n@Component({\n standalone: false,\n selector: 'app-text-import-dialog',\n template: `\n <div class=\"text-import-dialog-content\">\n <div class=\"dialog-header\">\n <h3>Import Component from Text</h3>\n <p>Paste or type your component specification JSON below:</p>\n </div>\n \n <div class=\"editor-container\">\n <mj-code-editor\n [(ngModel)]=\"componentJson\"\n [language]=\"'json'\"\n [autoFocus]=\"true\"\n [indentWithTab]=\"true\"\n [readonly]=\"false\"\n [placeholder]=\"'Paste your component specification JSON here...'\"\n style=\"height: 400px;\">\n </mj-code-editor>\n </div>\n \n @if (errorMessage) {\n <div class=\"error-message\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n {{ errorMessage }}\n </div>\n }\n \n <div class=\"dialog-actions\">\n <button kendoButton (click)=\"cancel()\" [themeColor]=\"'base'\">\n Cancel\n </button>\n <button kendoButton (click)=\"import()\" [themeColor]=\"'primary'\" [disabled]=\"!componentJson\">\n <i class=\"fa-solid fa-file-import\"></i> Import\n </button>\n </div>\n </div>\n `,\n styles: [`\n .text-import-dialog-content {\n padding: 20px;\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n \n .dialog-header {\n margin-bottom: 15px;\n }\n \n .dialog-header h3 {\n margin: 0 0 10px 0;\n color: #333;\n }\n \n .dialog-header p {\n margin: 0;\n color: #666;\n font-size: 14px;\n }\n \n .editor-container {\n flex: 1;\n border: 1px solid #ddd;\n border-radius: 4px;\n overflow: hidden;\n margin-bottom: 15px;\n }\n \n .error-message {\n background-color: #fff5f5;\n border: 1px solid #feb2b2;\n color: #c53030;\n padding: 10px;\n border-radius: 4px;\n margin-bottom: 15px;\n font-size: 14px;\n }\n \n .error-message i {\n margin-right: 8px;\n }\n \n .dialog-actions {\n display: flex;\n justify-content: flex-end;\n gap: 10px;\n padding-top: 15px;\n border-top: 1px solid #e0e0e0;\n }\n `]\n})\nexport class TextImportDialogComponent {\n @Output() importSpec = new EventEmitter<ComponentSpec>();\n @Output() cancelDialog = new EventEmitter<void>();\n \n public componentJson = '';\n public errorMessage = '';\n \n public import(): void {\n this.errorMessage = '';\n \n if (!this.componentJson.trim()) {\n this.errorMessage = 'Please enter a component specification';\n return;\n }\n \n try {\n const spec = JSON.parse(this.componentJson) as ComponentSpec;\n \n // Validate required fields\n if (!spec.name || !spec.code) {\n this.errorMessage = 'Invalid specification: missing required fields (name and code)';\n return;\n }\n \n // Emit the parsed spec\n this.importSpec.emit(spec);\n } catch (error) {\n this.errorMessage = 'Invalid JSON format. Please check your syntax.';\n }\n }\n \n public cancel(): void {\n this.cancelDialog.emit();\n }\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-preview.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/workspace/component-preview.component.ts","../../../../src/ComponentStudio/components/workspace/component-preview.component.html"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"component-preview.component.js","sourceRoot":"","sources":["../../../../src/ComponentStudio/components/workspace/component-preview.component.ts","../../../../src/ComponentStudio/components/workspace/component-preview.component.html"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Output,\n EventEmitter,\n OnInit,\n OnDestroy,\n ViewChild,\n ChangeDetectorRef\n} from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ComponentSpec } from '@memberjunction/interactive-component-types';\nimport { ReactComponentEvent, MJReactComponent } from '@memberjunction/ng-react';\nimport { CompositeKey } from '@memberjunction/core';\nimport { SharedService } from '@memberjunction/ng-shared';\nimport {\n ComponentStudioStateService,\n ComponentError\n} from '../../services/component-studio-state.service';\n\n/**\n * Viewport size preset for the component preview\n */\nexport type ViewportSize = 'mobile' | 'tablet' | 'desktop';\n\ninterface ViewportPreset {\n Size: ViewportSize;\n Label: string;\n Icon: string;\n MaxWidth: string;\n}\n\n/**\n * Component Preview - TOP section of CENTER panel.\n * Renders the live React component preview with toolbar controls.\n */\n@Component({\n standalone: false,\n selector: 'mj-component-preview',\n templateUrl: './component-preview.component.html',\n styleUrls: ['./component-preview.component.css']\n})\nexport class ComponentPreviewComponent implements OnInit, OnDestroy {\n\n @ViewChild('reactComponent') ReactComponentRef?: MJReactComponent;\n\n @Output() AskAIToFix = new EventEmitter<ComponentError>();\n\n // --- Viewport ---\n public ActiveViewport: ViewportSize = 'desktop';\n\n public readonly ViewportPresets: ViewportPreset[] = [\n { Size: 'mobile', Label: 'Mobile (375px)', Icon: 'fa-mobile-screen', MaxWidth: '375px' },\n { Size: 'tablet', Label: 'Tablet (768px)', Icon: 'fa-tablet-screen-button', MaxWidth: '768px' },\n { Size: 'desktop', Label: 'Desktop (100%)', Icon: 'fa-desktop', MaxWidth: '100%' }\n ];\n\n // --- Local spec for refresh cycle ---\n public LocalComponentSpec: ComponentSpec | null = null;\n\n private destroy$ = new Subject<void>();\n\n constructor(\n public State: ComponentStudioStateService,\n private cdr: ChangeDetectorRef\n ) {}\n\n ngOnInit(): void {\n this.syncSpecFromState();\n\n this.State.StateChanged\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.syncSpecFromState();\n this.cdr.detectChanges();\n });\n\n this.State.RefreshComponent\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.refreshPreview();\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n // ============================================================\n // TOOLBAR ACTIONS\n // ============================================================\n\n public RunSelectedComponent(): void {\n if (this.State.SelectedComponent) {\n this.State.RunComponent(this.State.SelectedComponent);\n }\n }\n\n public StopComponent(): void {\n MJReactComponent.forceClearRegistries();\n this.State.StopComponent();\n }\n\n public RefreshComponent(): void {\n if (this.State.SelectedComponent && this.State.IsRunning) {\n MJReactComponent.forceClearRegistries();\n this.refreshPreview();\n }\n }\n\n public SetViewport(size: ViewportSize): void {\n this.ActiveViewport = size;\n this.cdr.detectChanges();\n }\n\n public SendErrorToAI(): void {\n if (this.State.CurrentError) {\n this.AskAIToFix.emit(this.State.CurrentError);\n this.State.SendErrorToAI.emit(this.State.CurrentError);\n }\n }\n\n // ============================================================\n // VIEWPORT HELPERS\n // ============================================================\n\n public GetActivePreset(): ViewportPreset {\n return this.ViewportPresets.find(p => p.Size === this.ActiveViewport) || this.ViewportPresets[2];\n }\n\n public GetPreviewContainerMaxWidth(): string {\n return this.GetActivePreset().MaxWidth;\n }\n\n // ============================================================\n // REACT COMPONENT EVENTS\n // ============================================================\n\n public OnComponentEvent(event: ReactComponentEvent): void {\n if (event.type === 'error') {\n this.State.CurrentError = {\n type: event.payload?.source || 'Component Error',\n message: event.payload?.error || 'An error occurred while rendering the component',\n technicalDetails: event.payload?.errorInfo || event.payload\n };\n this.cdr.detectChanges();\n } else if (event.type === 'loaded') {\n const resolvedSpec = event.payload?.resolvedSpec as ComponentSpec | undefined;\n if (resolvedSpec) {\n this.State.UpdateWithResolvedSpec(resolvedSpec);\n }\n }\n }\n\n public OnOpenEntityRecord(event: { entityName: string; key: CompositeKey }): void {\n SharedService.Instance.OpenEntityRecord(event.entityName, event.key);\n }\n\n // ============================================================\n // STATE HELPERS\n // ============================================================\n\n public GetComponentName(): string {\n if (!this.State.SelectedComponent) return '';\n return this.State.GetComponentName(this.State.SelectedComponent);\n }\n\n public GetComponentDescription(): string | undefined {\n if (!this.State.SelectedComponent) return undefined;\n return this.State.GetComponentDescription(this.State.SelectedComponent);\n }\n\n // ============================================================\n // PRIVATE\n // ============================================================\n\n private syncSpecFromState(): void {\n this.LocalComponentSpec = this.State.ComponentSpec;\n }\n\n /**\n * Refresh the preview by nulling the spec, detecting changes,\n * then restoring the spec after a short delay.\n */\n private refreshPreview(): void {\n if (!this.State.SelectedComponent) return;\n\n const spec = this.State.GetComponentSpec(this.State.SelectedComponent);\n\n // Null out to force React to unmount\n this.LocalComponentSpec = null;\n this.cdr.detectChanges();\n\n // Re-set after a brief pause to force fresh mount\n setTimeout(() => {\n this.LocalComponentSpec = spec;\n this.State.ComponentSpec = spec;\n this.State.CurrentError = null;\n try {\n this.cdr.detectChanges();\n } catch (error) {\n console.error('Error during refresh detectChanges:', error);\n }\n }, 10);\n }\n}\n","<div class=\"component-preview\">\n <!-- Toolbar -->\n <div class=\"preview-toolbar\">\n <div class=\"toolbar-left\">\n @if (State.SelectedComponent) {\n @if (State.IsRunning) {\n <button class=\"toolbar-btn stop-btn\" (click)=\"StopComponent()\" title=\"Stop component\">\n <i class=\"fa-solid fa-stop\"></i>\n <span>Stop</span>\n </button>\n <button class=\"toolbar-btn\" (click)=\"RefreshComponent()\" title=\"Refresh component\">\n <i class=\"fa-solid fa-rotate-right\"></i>\n <span>Refresh</span>\n </button>\n } @else {\n <button class=\"toolbar-btn run-btn\" (click)=\"RunSelectedComponent()\" title=\"Run component\">\n <i class=\"fa-solid fa-play\"></i>\n <span>Run</span>\n </button>\n }\n }\n </div>\n\n <div class=\"toolbar-center\">\n <!-- Viewport Size Selector (segmented control) -->\n @if (State.IsRunning) {\n <div class=\"viewport-selector\">\n @for (preset of ViewportPresets; track preset.Size) {\n <button\n class=\"viewport-btn\"\n [class.active]=\"ActiveViewport === preset.Size\"\n (click)=\"SetViewport(preset.Size)\"\n [title]=\"preset.Label\">\n <i class=\"fa-solid\" [ngClass]=\"preset.Icon\"></i>\n </button>\n }\n </div>\n }\n </div>\n\n <div class=\"toolbar-right\">\n @if (State.CurrentError) {\n <button class=\"toolbar-btn ai-fix-btn\" (click)=\"SendErrorToAI()\" title=\"Ask AI to fix this error\">\n <i class=\"fa-solid fa-wand-magic-sparkles\"></i>\n <span>Ask AI to Fix</span>\n </button>\n }\n @if (State.IsRunning && State.SelectedComponent) {\n <span class=\"running-indicator\">\n <i class=\"fa-solid fa-circle running-dot\"></i>\n {{ GetComponentName() }}\n </span>\n }\n </div>\n </div>\n\n <!-- Preview Area -->\n <div class=\"preview-area\">\n @if (!State.SelectedComponent) {\n <!-- Empty State: No component selected -->\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-eye fa-3x\"></i>\n <h3>Select a component to preview</h3>\n <p>Choose a component from the sidebar to see its live preview here.</p>\n </div>\n } @else if (!State.IsRunning) {\n <!-- Component selected but not running -->\n <div class=\"empty-state run-state\">\n <i class=\"fa-solid fa-play-circle fa-3x\"></i>\n <h3>{{ GetComponentName() }}</h3>\n <p>{{ GetComponentDescription() || 'No description available' }}</p>\n <button class=\"run-component-btn\" (click)=\"RunSelectedComponent()\">\n <i class=\"fa-solid fa-play\"></i> Run Component\n </button>\n </div>\n } @else if (LocalComponentSpec) {\n <!-- Live Preview Container -->\n <div class=\"preview-container\"\n [style.max-width]=\"GetPreviewContainerMaxWidth()\"\n [class.mobile]=\"ActiveViewport === 'mobile'\"\n [class.tablet]=\"ActiveViewport === 'tablet'\"\n [class.desktop]=\"ActiveViewport === 'desktop'\">\n <mj-react-component\n #reactComponent\n [component]=\"LocalComponentSpec\"\n (componentEvent)=\"OnComponentEvent($event)\"\n (openEntityRecord)=\"OnOpenEntityRecord($event)\">\n </mj-react-component>\n </div>\n\n <!-- Error Overlay (inline, does not replace the component) -->\n @if (State.CurrentError) {\n <div class=\"error-overlay\">\n <div class=\"error-overlay-content\">\n <div class=\"error-overlay-header\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <span class=\"error-overlay-title\">{{ State.CurrentError.type }}</span>\n </div>\n <p class=\"error-overlay-message\">{{ State.CurrentError.message }}</p>\n <div class=\"error-overlay-actions\">\n <button class=\"toolbar-btn\" (click)=\"RefreshComponent()\">\n <i class=\"fa-solid fa-rotate-right\"></i> Retry\n </button>\n <button class=\"toolbar-btn ai-fix-btn\" (click)=\"SendErrorToAI()\">\n <i class=\"fa-solid fa-wand-magic-sparkles\"></i> Ask AI to Fix\n </button>\n </div>\n </div>\n </div>\n }\n }\n </div>\n</div>\n"]}
|