@memberjunction/ng-core-entity-forms 5.22.0 → 5.24.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/lib/custom/AIAgents/add-action-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js +55 -59
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js +0 -1
- package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js +54 -71
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js +1053 -1096
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts +2 -3
- package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-management.service.js +39 -82
- package/dist/lib/custom/AIAgents/ai-agent-management.service.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js +28 -31
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +15 -14
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts +4 -7
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +77 -124
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts +2 -2
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.js +10 -11
- package/dist/lib/custom/AIAgents/new-agent-dialog.service.js.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +18 -18
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js +59 -80
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +23 -24
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +862 -906
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js +4 -5
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +448 -499
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts +2 -2
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js +6 -11
- package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js.map +1 -1
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts +4 -5
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js +16 -15
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-execution-log-form.component.js +160 -166
- package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.js +93 -94
- package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
- package/dist/lib/custom/ContentSources/content-source-form.component.d.ts +22 -0
- package/dist/lib/custom/ContentSources/content-source-form.component.d.ts.map +1 -0
- package/dist/lib/custom/ContentSources/content-source-form.component.js +165 -0
- package/dist/lib/custom/ContentSources/content-source-form.component.js.map +1 -0
- package/dist/lib/custom/Entities/entity-form.component.js +2 -2
- package/dist/lib/custom/Lists/list-form.component.js +61 -63
- package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-category-dialog.component.js +33 -59
- package/dist/lib/custom/Queries/query-category-dialog.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-form.component.js +354 -360
- package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.js +62 -71
- package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.js +128 -124
- package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
- package/dist/lib/custom/Templates/template-params-grid.component.d.ts +45 -22
- package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/template-params-grid.component.js +380 -384
- package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
- package/dist/lib/custom/Templates/templates-form.component.js +34 -36
- package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.js +8 -9
- package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-feedback-form.component.js +4 -4
- package/dist/lib/custom/Tests/test-run-feedback-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-form.component.js +7 -7
- package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.js +6 -7
- package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-run-form.component.js +6 -7
- package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +381 -409
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +74 -63
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js +10 -10
- package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +352 -332
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
- package/dist/lib/custom/custom-forms.module.d.ts +25 -29
- package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
- package/dist/lib/custom/custom-forms.module.js +57 -82
- package/dist/lib/custom/custom-forms.module.js.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts +4 -5
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.js +59 -66
- package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js +176 -156
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.js +65 -0
- package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.js +89 -0
- package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js +98 -44
- package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js +35 -17
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.js +79 -20
- package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.js +73 -0
- package/dist/lib/generated/Entities/MJContentItemDuplicate/mjcontentitemduplicate.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJContentItemTag/mjcontentitemtag.form.component.js +11 -6
- package/dist/lib/generated/Entities/MJContentItemTag/mjcontentitemtag.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentProcessRun/mjcontentprocessrun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJContentProcessRun/mjcontentprocessrun.form.component.js +49 -8
- package/dist/lib/generated/Entities/MJContentProcessRun/mjcontentprocessrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.js +107 -0
- package/dist/lib/generated/Entities/MJContentProcessRunDetail/mjcontentprocessrundetail.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.js +57 -0
- package/dist/lib/generated/Entities/MJContentProcessRunPromptRun/mjcontentprocessrunpromptrun.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js +71 -24
- package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentSourceType/mjcontentsourcetype.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJContentSourceType/mjcontentsourcetype.form.component.js +43 -15
- package/dist/lib/generated/Entities/MJContentSourceType/mjcontentsourcetype.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.js +43 -17
- package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJDuplicateRun/mjduplicaterun.form.component.js +21 -11
- package/dist/lib/generated/Entities/MJDuplicateRun/mjduplicaterun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJDuplicateRunDetail/mjduplicaterundetail.form.component.js +19 -13
- package/dist/lib/generated/Entities/MJDuplicateRunDetail/mjduplicaterundetail.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js +7 -9
- package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js +78 -60
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js +24 -6
- package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js +21 -9
- package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntityRecordDocument/mjentityrecorddocument.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntityRecordDocument/mjentityrecorddocument.form.component.js +23 -5
- package/dist/lib/generated/Entities/MJEntityRecordDocument/mjentityrecorddocument.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.js +77 -0
- package/dist/lib/generated/Entities/MJKnowledgeHubSavedSearch/mjknowledgehubsavedsearch.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJScheduledAction/mjscheduledaction.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJScheduledAction/mjscheduledaction.form.component.js +22 -4
- package/dist/lib/generated/Entities/MJScheduledAction/mjscheduledaction.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js +139 -19
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.js +67 -0
- package/dist/lib/generated/Entities/MJTagAuditLog/mjtagauditlog.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.js +65 -0
- package/dist/lib/generated/Entities/MJTagCoOccurrence/mjtagcooccurrence.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJTaggedItem/mjtaggeditem.form.component.js +10 -8
- package/dist/lib/generated/Entities/MJTaggedItem/mjtaggeditem.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js +226 -154
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js +41 -5
- package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js.map +1 -1
- package/dist/lib/generated/generated-forms.module.d.ts +286 -279
- package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
- package/dist/lib/generated/generated-forms.module.js +192 -214
- package/dist/lib/generated/generated-forms.module.js.map +1 -1
- package/dist/lib/shared/components/template-editor.component.js +14 -15
- package/dist/lib/shared/components/template-editor.component.js.map +1 -1
- package/package.json +34 -41
|
@@ -3,10 +3,7 @@ import { MJNotificationService } from '@memberjunction/ng-notifications';
|
|
|
3
3
|
import { Metadata } from '@memberjunction/core';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "@angular/forms";
|
|
6
|
-
import * as i2 from "@
|
|
7
|
-
import * as i3 from "@progress/kendo-angular-dialog";
|
|
8
|
-
import * as i4 from "@progress/kendo-angular-inputs";
|
|
9
|
-
import * as i5 from "@progress/kendo-angular-buttons";
|
|
6
|
+
import * as i2 from "@memberjunction/ng-ui-components";
|
|
10
7
|
const _forTrack0 = ($index, $item) => $item.name;
|
|
11
8
|
const _forTrack1 = ($index, $item) => $item.field;
|
|
12
9
|
function QueryRunDialogComponent_Conditional_0_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -47,8 +44,8 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8
|
|
|
47
44
|
} }
|
|
48
45
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_12_Template(rf, ctx) { if (rf & 1) {
|
|
49
46
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
50
|
-
i0.ɵɵelementStart(0, "
|
|
51
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
47
|
+
i0.ɵɵelementStart(0, "input", 41);
|
|
48
|
+
i0.ɵɵtwoWayListener("ngModelChange", function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_12_Template_input_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r6); const param_r5 = i0.ɵɵnextContext().$implicit; i0.ɵɵtwoWayBindingSet(param_r5.value, $event) || (param_r5.value = $event); return i0.ɵɵresetView($event); });
|
|
52
49
|
i0.ɵɵelementEnd();
|
|
53
50
|
} if (rf & 2) {
|
|
54
51
|
const param_r5 = i0.ɵɵnextContext().$implicit;
|
|
@@ -56,13 +53,13 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8
|
|
|
56
53
|
} }
|
|
57
54
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
58
55
|
const _r7 = i0.ɵɵgetCurrentView();
|
|
59
|
-
i0.ɵɵelementStart(0, "
|
|
60
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
56
|
+
i0.ɵɵelementStart(0, "textarea", 42);
|
|
57
|
+
i0.ɵɵtwoWayListener("ngModelChange", function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_13_Template_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r7); const param_r5 = i0.ɵɵnextContext().$implicit; i0.ɵɵtwoWayBindingSet(param_r5.value, $event) || (param_r5.value = $event); return i0.ɵɵresetView($event); });
|
|
58
|
+
i0.ɵɵtext(1, " ");
|
|
61
59
|
i0.ɵɵelementEnd();
|
|
62
60
|
} if (rf & 2) {
|
|
63
61
|
const param_r5 = i0.ɵɵnextContext().$implicit;
|
|
64
62
|
i0.ɵɵtwoWayProperty("ngModel", param_r5.value);
|
|
65
|
-
i0.ɵɵproperty("rows", 2);
|
|
66
63
|
} }
|
|
67
64
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
68
65
|
i0.ɵɵelementStart(0, "div", 40);
|
|
@@ -88,7 +85,7 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8
|
|
|
88
85
|
i0.ɵɵelementEnd();
|
|
89
86
|
i0.ɵɵconditionalCreate(11, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_11_Template, 1, 0, "i", 37);
|
|
90
87
|
i0.ɵɵelementEnd()();
|
|
91
|
-
i0.ɵɵconditionalCreate(12, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_12_Template, 1, 1, "
|
|
88
|
+
i0.ɵɵconditionalCreate(12, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_12_Template, 1, 1, "input", 38)(13, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_13_Template, 2, 1, "textarea", 39);
|
|
92
89
|
i0.ɵɵconditionalCreate(14, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8_Conditional_14_Template, 4, 1, "div", 40);
|
|
93
90
|
i0.ɵɵelementEnd();
|
|
94
91
|
} if (rf & 2) {
|
|
@@ -111,8 +108,8 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_For_8
|
|
|
111
108
|
} }
|
|
112
109
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
113
110
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
114
|
-
i0.ɵɵelementStart(0, "
|
|
115
|
-
i0.ɵɵtwoWayListener("
|
|
111
|
+
i0.ɵɵelementStart(0, "mj-accordion-panel", 22);
|
|
112
|
+
i0.ɵɵtwoWayListener("ExpandedChange", function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_Template_mj_accordion_panel_ExpandedChange_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.parametersExpanded, $event) || (ctx_r1.parametersExpanded = $event); return i0.ɵɵresetView($event); });
|
|
116
113
|
i0.ɵɵtemplate(1, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_ng_template_1_Template, 5, 1, "ng-template", 11);
|
|
117
114
|
i0.ɵɵelementStart(2, "div", 12)(3, "div", 23);
|
|
118
115
|
i0.ɵɵelement(4, "i", 24);
|
|
@@ -123,7 +120,7 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_Templ
|
|
|
123
120
|
i0.ɵɵelementEnd()()();
|
|
124
121
|
} if (rf & 2) {
|
|
125
122
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
126
|
-
i0.ɵɵtwoWayProperty("
|
|
123
|
+
i0.ɵɵtwoWayProperty("Expanded", ctx_r1.parametersExpanded);
|
|
127
124
|
i0.ɵɵadvance(7);
|
|
128
125
|
i0.ɵɵrepeater(ctx_r1.parameterPairs);
|
|
129
126
|
} }
|
|
@@ -153,54 +150,50 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_ng_template_3_Templ
|
|
|
153
150
|
i0.ɵɵadvance(3);
|
|
154
151
|
i0.ɵɵconditional(ctx_r1.maxRows && ctx_r1.maxRows > 0 ? 3 : -1);
|
|
155
152
|
} }
|
|
156
|
-
function
|
|
157
|
-
i0.ɵɵ
|
|
158
|
-
i0.ɵɵtext(1);
|
|
159
|
-
i0.ɵɵelementEnd();
|
|
153
|
+
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_1_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
154
|
+
i0.ɵɵtext(0);
|
|
160
155
|
} if (rf & 2) {
|
|
161
156
|
const ctx_r1 = i0.ɵɵnextContext(6);
|
|
162
|
-
i0.ɵɵ
|
|
163
|
-
i0.ɵɵtextInterpolate1(" of ", ctx_r1.runResult.TotalRowCount, " total ");
|
|
157
|
+
i0.ɵɵtextInterpolate1(" of ", ctx_r1.runResult.TotalRowCount, " total");
|
|
164
158
|
} }
|
|
165
|
-
function
|
|
166
|
-
i0.ɵɵelementStart(0, "span",
|
|
159
|
+
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_1_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
160
|
+
i0.ɵɵelementStart(0, "span", 51);
|
|
167
161
|
i0.ɵɵtext(1);
|
|
168
162
|
i0.ɵɵelementEnd();
|
|
169
|
-
i0.ɵɵconditionalCreate(2, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_3_Conditional_2_Template, 2, 1, "span", 29);
|
|
170
163
|
} if (rf & 2) {
|
|
171
|
-
const ctx_r1 = i0.ɵɵnextContext(
|
|
172
|
-
i0.ɵɵadvance();
|
|
173
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r1.runResult.RowCount, " rows ");
|
|
164
|
+
const ctx_r1 = i0.ɵɵnextContext(6);
|
|
174
165
|
i0.ɵɵadvance();
|
|
175
|
-
i0.ɵɵ
|
|
176
|
-
} }
|
|
177
|
-
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
178
|
-
i0.ɵɵelementStart(0, "span", 50);
|
|
179
|
-
i0.ɵɵtext(1, " Error ");
|
|
180
|
-
i0.ɵɵelementEnd();
|
|
166
|
+
i0.ɵɵtextInterpolate1("\u2014 ", ctx_r1.runResult.ExecutionTime, "ms");
|
|
181
167
|
} }
|
|
182
|
-
function
|
|
183
|
-
i0.ɵɵ
|
|
184
|
-
i0.ɵɵtext(1);
|
|
168
|
+
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
169
|
+
i0.ɵɵelement(0, "i", 49);
|
|
170
|
+
i0.ɵɵtext(1, " Query Results ");
|
|
171
|
+
i0.ɵɵelementStart(2, "span", 50);
|
|
172
|
+
i0.ɵɵtext(3);
|
|
173
|
+
i0.ɵɵconditionalCreate(4, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_1_Conditional_4_Template, 1, 1);
|
|
185
174
|
i0.ɵɵelementEnd();
|
|
175
|
+
i0.ɵɵconditionalCreate(5, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_1_Conditional_5_Template, 2, 1, "span", 51);
|
|
186
176
|
} if (rf & 2) {
|
|
187
177
|
const ctx_r1 = i0.ɵɵnextContext(5);
|
|
178
|
+
i0.ɵɵadvance(3);
|
|
179
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.runResult.RowCount, " rows");
|
|
180
|
+
i0.ɵɵadvance();
|
|
181
|
+
i0.ɵɵconditional(ctx_r1.runResult.TotalRowCount > ctx_r1.runResult.RowCount ? 4 : -1);
|
|
188
182
|
i0.ɵɵadvance();
|
|
189
|
-
i0.ɵɵ
|
|
183
|
+
i0.ɵɵconditional(ctx_r1.runResult.ExecutionTime ? 5 : -1);
|
|
184
|
+
} }
|
|
185
|
+
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
186
|
+
i0.ɵɵelement(0, "i", 52);
|
|
187
|
+
i0.ɵɵtext(1, " Query Results \u2014 Error ");
|
|
190
188
|
} }
|
|
191
189
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
192
190
|
i0.ɵɵelementStart(0, "span", 27);
|
|
193
|
-
i0.ɵɵ
|
|
194
|
-
i0.ɵɵtext(2, " Query Results ");
|
|
195
|
-
i0.ɵɵconditionalCreate(3, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_3_Template, 3, 2)(4, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_4_Template, 2, 0, "span", 50);
|
|
196
|
-
i0.ɵɵconditionalCreate(5, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_5_Template, 2, 1, "span", 51);
|
|
191
|
+
i0.ɵɵconditionalCreate(1, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_1_Template, 6, 3)(2, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Conditional_2_Template, 2, 0);
|
|
197
192
|
i0.ɵɵelementEnd();
|
|
198
193
|
} if (rf & 2) {
|
|
199
194
|
const ctx_r1 = i0.ɵɵnextContext(4);
|
|
200
|
-
i0.ɵɵadvance(
|
|
201
|
-
i0.ɵɵconditional(ctx_r1.runResult.Success ?
|
|
202
|
-
i0.ɵɵadvance(2);
|
|
203
|
-
i0.ɵɵconditional(ctx_r1.runResult.ExecutionTime ? 5 : -1);
|
|
195
|
+
i0.ɵɵadvance();
|
|
196
|
+
i0.ɵɵconditional(ctx_r1.runResult.Success ? 1 : 2);
|
|
204
197
|
} }
|
|
205
198
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Conditional_3_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
206
199
|
const _r10 = i0.ɵɵgetCurrentView();
|
|
@@ -343,30 +336,30 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Cond
|
|
|
343
336
|
} }
|
|
344
337
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Template(rf, ctx) { if (rf & 1) {
|
|
345
338
|
const _r8 = i0.ɵɵgetCurrentView();
|
|
346
|
-
i0.ɵɵelementStart(0, "
|
|
347
|
-
i0.ɵɵtwoWayListener("
|
|
348
|
-
i0.ɵɵtemplate(1, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Template,
|
|
339
|
+
i0.ɵɵelementStart(0, "mj-accordion-panel", 46);
|
|
340
|
+
i0.ɵɵtwoWayListener("ExpandedChange", function QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Template_mj_accordion_panel_ExpandedChange_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r1 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r1.resultsExpanded, $event) || (ctx_r1.resultsExpanded = $event); return i0.ɵɵresetView($event); });
|
|
341
|
+
i0.ɵɵtemplate(1, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_ng_template_1_Template, 3, 1, "ng-template", 11);
|
|
349
342
|
i0.ɵɵelementStart(2, "div", 47);
|
|
350
343
|
i0.ɵɵconditionalCreate(3, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Conditional_3_Template, 2, 1)(4, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Conditional_4_Template, 6, 1, "div", 48);
|
|
351
344
|
i0.ɵɵelementEnd()();
|
|
352
345
|
} if (rf & 2) {
|
|
353
346
|
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
354
|
-
i0.ɵɵtwoWayProperty("
|
|
347
|
+
i0.ɵɵtwoWayProperty("Expanded", ctx_r1.resultsExpanded);
|
|
355
348
|
i0.ɵɵadvance(3);
|
|
356
349
|
i0.ɵɵconditional(ctx_r1.runResult.Success ? 3 : 4);
|
|
357
350
|
} }
|
|
358
351
|
function QueryRunDialogComponent_Conditional_0_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
359
352
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
360
|
-
i0.ɵɵconditionalCreate(0, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_Template, 9, 1, "
|
|
361
|
-
i0.ɵɵelementStart(2, "
|
|
362
|
-
i0.ɵɵtwoWayListener("
|
|
353
|
+
i0.ɵɵconditionalCreate(0, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_0_Template, 9, 1, "mj-accordion-panel", 8)(1, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_1_Template, 3, 0, "div", 9);
|
|
354
|
+
i0.ɵɵelementStart(2, "mj-accordion-panel", 10);
|
|
355
|
+
i0.ɵɵtwoWayListener("ExpandedChange", function QueryRunDialogComponent_Conditional_0_Conditional_7_Template_mj_accordion_panel_ExpandedChange_2_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.paginationExpanded, $event) || (ctx_r1.paginationExpanded = $event); return i0.ɵɵresetView($event); });
|
|
363
356
|
i0.ɵɵtemplate(3, QueryRunDialogComponent_Conditional_0_Conditional_7_ng_template_3_Template, 4, 1, "ng-template", 11);
|
|
364
357
|
i0.ɵɵelementStart(4, "div", 12)(5, "div", 13)(6, "div", 14)(7, "label", 15);
|
|
365
358
|
i0.ɵɵelement(8, "i", 16);
|
|
366
359
|
i0.ɵɵtext(9, " Max Rows: ");
|
|
367
360
|
i0.ɵɵelementEnd();
|
|
368
|
-
i0.ɵɵelementStart(10, "
|
|
369
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
361
|
+
i0.ɵɵelementStart(10, "input", 17);
|
|
362
|
+
i0.ɵɵtwoWayListener("ngModelChange", function QueryRunDialogComponent_Conditional_0_Conditional_7_Template_input_ngModelChange_10_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.maxRows, $event) || (ctx_r1.maxRows = $event); return i0.ɵɵresetView($event); });
|
|
370
363
|
i0.ɵɵelementEnd();
|
|
371
364
|
i0.ɵɵelementStart(11, "span", 18);
|
|
372
365
|
i0.ɵɵtext(12, " Leave empty to return all rows ");
|
|
@@ -375,24 +368,22 @@ function QueryRunDialogComponent_Conditional_0_Conditional_7_Template(rf, ctx) {
|
|
|
375
368
|
i0.ɵɵelement(15, "i", 19);
|
|
376
369
|
i0.ɵɵtext(16, " Start Row: ");
|
|
377
370
|
i0.ɵɵelementEnd();
|
|
378
|
-
i0.ɵɵelementStart(17, "
|
|
379
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
371
|
+
i0.ɵɵelementStart(17, "input", 20);
|
|
372
|
+
i0.ɵɵtwoWayListener("ngModelChange", function QueryRunDialogComponent_Conditional_0_Conditional_7_Template_input_ngModelChange_17_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.startRow, $event) || (ctx_r1.startRow = $event); return i0.ɵɵresetView($event); });
|
|
380
373
|
i0.ɵɵelementEnd();
|
|
381
374
|
i0.ɵɵelementStart(18, "span", 18);
|
|
382
375
|
i0.ɵɵtext(19, " 0-based offset for pagination ");
|
|
383
376
|
i0.ɵɵelementEnd()()()()();
|
|
384
|
-
i0.ɵɵconditionalCreate(20, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Template, 5, 2, "
|
|
377
|
+
i0.ɵɵconditionalCreate(20, QueryRunDialogComponent_Conditional_0_Conditional_7_Conditional_20_Template, 5, 2, "mj-accordion-panel", 21);
|
|
385
378
|
} if (rf & 2) {
|
|
386
379
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
387
380
|
i0.ɵɵconditional(ctx_r1.parameterPairs.length > 0 ? 0 : 1);
|
|
388
381
|
i0.ɵɵadvance(2);
|
|
389
|
-
i0.ɵɵtwoWayProperty("
|
|
382
|
+
i0.ɵɵtwoWayProperty("Expanded", ctx_r1.paginationExpanded);
|
|
390
383
|
i0.ɵɵadvance(8);
|
|
391
384
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r1.maxRows);
|
|
392
|
-
i0.ɵɵproperty("min", 1)("step", 100);
|
|
393
385
|
i0.ɵɵadvance(7);
|
|
394
386
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r1.startRow);
|
|
395
|
-
i0.ɵɵproperty("min", 0)("step", 1);
|
|
396
387
|
i0.ɵɵadvance(3);
|
|
397
388
|
i0.ɵɵconditional(ctx_r1.runResult ? 20 : -1);
|
|
398
389
|
} }
|
|
@@ -418,7 +409,7 @@ function QueryRunDialogComponent_Conditional_0_Conditional_9_Template(rf, ctx) {
|
|
|
418
409
|
} if (rf & 2) {
|
|
419
410
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
420
411
|
i0.ɵɵadvance(3);
|
|
421
|
-
i0.ɵɵproperty("
|
|
412
|
+
i0.ɵɵproperty("disabled", ctx_r1.isRunning || ctx_r1.hasInvalidParameters());
|
|
422
413
|
i0.ɵɵadvance();
|
|
423
414
|
i0.ɵɵconditional(ctx_r1.isRunning ? 4 : 5);
|
|
424
415
|
} }
|
|
@@ -437,25 +428,25 @@ function QueryRunDialogComponent_Conditional_0_Conditional_10_Template(rf, ctx)
|
|
|
437
428
|
} if (rf & 2) {
|
|
438
429
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
439
430
|
i0.ɵɵadvance(3);
|
|
440
|
-
i0.ɵɵproperty("
|
|
431
|
+
i0.ɵɵproperty("disabled", ctx_r1.isRunning);
|
|
441
432
|
} }
|
|
442
433
|
function QueryRunDialogComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
443
434
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
444
|
-
i0.ɵɵelementStart(0, "
|
|
445
|
-
i0.ɵɵlistener("
|
|
446
|
-
i0.ɵɵelementStart(1, "
|
|
435
|
+
i0.ɵɵelementStart(0, "mj-dialog", 1);
|
|
436
|
+
i0.ɵɵlistener("Close", function QueryRunDialogComponent_Conditional_0_Template_mj_dialog_Close_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.close()); });
|
|
437
|
+
i0.ɵɵelementStart(1, "mj-dialog-titlebar")(2, "div", 2);
|
|
447
438
|
i0.ɵɵelement(3, "i", 3);
|
|
448
439
|
i0.ɵɵtext(4);
|
|
449
440
|
i0.ɵɵelementEnd()();
|
|
450
441
|
i0.ɵɵelementStart(5, "div", 4);
|
|
451
|
-
i0.ɵɵconditionalCreate(6, QueryRunDialogComponent_Conditional_0_Conditional_6_Template, 4, 0, "div", 5)(7, QueryRunDialogComponent_Conditional_0_Conditional_7_Template, 21,
|
|
442
|
+
i0.ɵɵconditionalCreate(6, QueryRunDialogComponent_Conditional_0_Conditional_6_Template, 4, 0, "div", 5)(7, QueryRunDialogComponent_Conditional_0_Conditional_7_Template, 21, 5);
|
|
452
443
|
i0.ɵɵelementEnd();
|
|
453
|
-
i0.ɵɵelementStart(8, "
|
|
454
|
-
i0.ɵɵconditionalCreate(9, QueryRunDialogComponent_Conditional_0_Conditional_9_Template, 6,
|
|
444
|
+
i0.ɵɵelementStart(8, "mj-dialog-actions");
|
|
445
|
+
i0.ɵɵconditionalCreate(9, QueryRunDialogComponent_Conditional_0_Conditional_9_Template, 6, 2)(10, QueryRunDialogComponent_Conditional_0_Conditional_10_Template, 6, 1);
|
|
455
446
|
i0.ɵɵelementEnd()();
|
|
456
447
|
} if (rf & 2) {
|
|
457
448
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
458
|
-
i0.ɵɵproperty("
|
|
449
|
+
i0.ɵɵproperty("Visible", true)("Width", 900);
|
|
459
450
|
i0.ɵɵadvance(4);
|
|
460
451
|
i0.ɵɵtextInterpolate1(" Run Query: ", (ctx_r1.query == null ? null : ctx_r1.query.Name) || "Untitled", " ");
|
|
461
452
|
i0.ɵɵadvance(2);
|
|
@@ -767,15 +758,15 @@ export class QueryRunDialogComponent {
|
|
|
767
758
|
}
|
|
768
759
|
}
|
|
769
760
|
static { this.ɵfac = function QueryRunDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QueryRunDialogComponent)(); }; }
|
|
770
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryRunDialogComponent, selectors: [["mj-query-run-dialog"]], inputs: { query: "query", parameters: "parameters", isVisible: "isVisible" }, outputs: { isVisibleChange: "isVisibleChange", onClose: "onClose" }, standalone: false, features: [i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[3, "
|
|
771
|
-
i0.ɵɵconditionalCreate(0, QueryRunDialogComponent_Conditional_0_Template, 11, 5, "
|
|
761
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QueryRunDialogComponent, selectors: [["mj-query-run-dialog"]], inputs: { query: "query", parameters: "parameters", isVisible: "isVisible" }, outputs: { isVisibleChange: "isVisibleChange", onClose: "onClose" }, standalone: false, features: [i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[3, "Visible", "Width"], [3, "Close", "Visible", "Width"], [2, "display", "flex", "align-items", "center", "gap", "8px"], [1, "fa-solid", "fa-play-circle", 2, "color", "var(--mj-brand-primary)"], [2, "display", "flex", "flex-direction", "column", "height", "100%", "overflow-y", "auto", "overflow-x", "hidden"], [2, "display", "flex", "align-items", "center", "justify-content", "center", "padding", "40px"], [1, "fa-solid", "fa-spinner", "fa-spin", 2, "font-size", "24px", "color", "var(--mj-text-muted)", "margin-right", "12px"], [2, "color", "var(--mj-text-muted)"], [2, "margin-bottom", "16px", "flex-shrink", "0", 3, "Expanded"], [2, "padding", "20px", "background", "var(--mj-bg-surface-sunken)", "border-radius", "6px", "margin-bottom", "16px", "text-align", "center", "color", "var(--mj-text-muted)"], [2, "margin-bottom", "16px", 3, "ExpandedChange", "Expanded"], ["mjAccordionTitle", ""], [2, "padding", "12px 0"], [2, "display", "flex", "flex-direction", "column", "gap", "12px"], [2, "display", "flex", "align-items", "center", "gap", "12px"], [2, "font-weight", "600", "color", "var(--mj-text-secondary)", "white-space", "nowrap", "min-width", "100px"], [1, "fa-solid", "fa-list-ol", 2, "color", "var(--mj-text-muted)", "margin-right", "6px"], ["type", "number", "min", "1", "step", "100", "placeholder", "All rows", 1, "mj-input", 2, "width", "150px", 3, "ngModelChange", "ngModel"], [2, "font-size", "0.85em", "color", "var(--mj-text-muted)"], [1, "fa-solid", "fa-forward", 2, "color", "var(--mj-text-muted)", "margin-right", "6px"], ["type", "number", "min", "0", "step", "1", "placeholder", "0", 1, "mj-input", 2, "width", "150px", 3, "ngModelChange", "ngModel"], [2, "flex", "1", "display", "flex", "flex-direction", "column", "overflow", "hidden", "min-height", "0", 3, "Expanded"], [2, "margin-bottom", "16px", "flex-shrink", "0", 3, "ExpandedChange", "Expanded"], [2, "margin-bottom", "12px", "color", "var(--mj-text-muted)", "font-size", "0.85em"], [1, "fa-solid", "fa-info-circle"], [2, "display", "flex", "flex-direction", "column", "gap", "16px"], [2, "background", "var(--mj-bg-surface-sunken)", "border", "1px solid var(--mj-border-default)", "border-radius", "6px", "padding", "16px"], [2, "display", "flex", "align-items", "center", "gap", "8px", "font-weight", "600"], [1, "fa-solid", "fa-sliders", 2, "color", "var(--mj-text-muted)"], [2, "background", "var(--mj-status-info)", "color", "var(--mj-text-inverse)", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], [2, "display", "flex", "justify-content", "space-between", "align-items", "flex-start", "margin-bottom", "8px"], [2, "font-weight", "600", "color", "var(--mj-text-secondary)", "display", "flex", "align-items", "center", "gap", "6px"], [1, "fa-solid", "fa-at", 2, "color", "var(--mj-brand-primary)"], [2, "color", "#dc3545"], [2, "font-size", "0.85em", "color", "var(--mj-text-muted)", "margin-top", "4px"], [2, "display", "flex", "gap", "8px", "align-items", "center"], [1, "badge", 2, "background", "var(--mj-text-muted)", "color", "white", "padding", "2px 6px", "border-radius", "4px", "font-size", "0.75em"], ["title", "Required parameter is empty", 1, "fa-solid", "fa-exclamation-triangle", 2, "color", "#dc3545"], ["type", "number", "placeholder", "Enter number value...", 1, "mj-input", 2, "width", "100%", 3, "ngModel"], ["rows", "2", "placeholder", "Enter value (JSON, string, or number)...", 1, "mj-input", 2, "width", "100%", "font-family", "'Courier New', monospace", 3, "ngModel"], [2, "font-size", "0.8em", "color", "var(--mj-text-muted)", "margin-top", "4px"], ["type", "number", "placeholder", "Enter number value...", 1, "mj-input", 2, "width", "100%", 3, "ngModelChange", "ngModel"], ["rows", "2", "placeholder", "Enter value (JSON, string, or number)...", 1, "mj-input", 2, "width", "100%", "font-family", "'Courier New', monospace", 3, "ngModelChange", "ngModel"], [2, "background", "var(--mj-bg-surface-sunken)", "padding", "2px 4px", "border-radius", "3px"], [1, "fa-solid", "fa-table-list", 2, "color", "var(--mj-text-muted)"], [2, "background", "var(--mj-text-muted)", "color", "var(--mj-text-inverse)", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], [2, "flex", "1", "display", "flex", "flex-direction", "column", "overflow", "hidden", "min-height", "0", 3, "ExpandedChange", "Expanded"], [2, "flex", "1", "display", "flex", "flex-direction", "column", "overflow", "hidden", "min-height", "0"], [2, "padding", "20px", "background", "#f8d7da", "border", "1px solid #f5c6cb", "border-radius", "6px", "margin", "12px"], [1, "fa-solid", "fa-table", 2, "color", "var(--mj-status-success)"], [2, "background", "var(--mj-status-success)", "color", "var(--mj-text-inverse)", "padding", "2px 6px", "border-radius", "10px", "font-size", "0.7em"], [2, "color", "var(--mj-text-muted)", "font-size", "0.85em", "font-weight", "normal"], [1, "fa-solid", "fa-exclamation-circle", 2, "color", "var(--mj-status-error)"], [2, "display", "flex", "align-items", "center", "justify-content", "center", "height", "200px", "color", "var(--mj-text-muted)"], [2, "display", "flex", "justify-content", "space-between", "align-items", "center", "padding", "12px", "border-bottom", "1px solid var(--mj-border-default)"], [2, "display", "flex", "gap", "8px"], ["mjButton", "", "variant", "flat", "title", "Copy to clipboard", 3, "click"], [1, "fa-solid", "fa-copy"], ["mjButton", "", "variant", "flat", "title", "Export to CSV", 3, "click"], [1, "fa-solid", "fa-download"], [1, "results-table-container", 2, "flex", "1", "overflow", "auto", "border", "1px solid var(--mj-border-default)", "border-radius", "4px", "min-height", "0"], [1, "results-table", 2, "width", "100%", "border-collapse", "collapse", "font-size", "14px"], [2, "position", "sticky", "top", "0", "background", "var(--mj-bg-surface-sunken)", "z-index", "10"], [2, "padding", "12px 16px", "text-align", "left", "font-weight", "600", "color", "var(--mj-text-secondary)", "border-bottom", "2px solid var(--mj-border-default)", "background", "var(--mj-bg-surface-sunken)", "white-space", "nowrap"], [2, "border-bottom", "1px solid var(--mj-border-default)", "transition", "background-color 0.2s"], [2, "padding", "40px", "text-align", "center", "color", "var(--mj-text-muted)"], [2, "font-size", "0.9em", "color", "var(--mj-text-muted)"], [2, "display", "flex", "gap", "4px"], ["mjButton", "", "variant", "flat", "title", "First page", 3, "click", "disabled"], [1, "fa-solid", "fa-angles-left"], ["mjButton", "", "variant", "flat", "title", "Previous page", 3, "click", "disabled"], [1, "fa-solid", "fa-angle-left"], ["mjButton", "", "variant", "flat", "title", "Next page", 3, "click", "disabled"], [1, "fa-solid", "fa-angle-right"], ["mjButton", "", "variant", "flat", "title", "Last page", 3, "click", "disabled"], [1, "fa-solid", "fa-angles-right"], [2, "padding", "10px 16px", "color", "var(--mj-text-primary)", "max-width", "300px", "overflow", "hidden", "text-overflow", "ellipsis", "white-space", "nowrap", 3, "title"], [1, "fa-solid", "fa-table", 2, "font-size", "48px", "margin-bottom", "12px", "opacity", "0.3"], [1, "fa-solid", "fa-inbox", 2, "font-size", "48px", "margin-bottom", "12px"], [2, "color", "#721c24"], [1, "fa-solid", "fa-exclamation-circle"], [2, "margin-top", "8px", "font-family", "'Courier New', monospace", "font-size", "0.9em"], ["mjButton", "", 3, "click"], [1, "fa-solid", "fa-times"], ["mjButton", "", "variant", "primary", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "fa-solid", "fa-play"], [1, "fa-solid", "fa-refresh"]], template: function QueryRunDialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
762
|
+
i0.ɵɵconditionalCreate(0, QueryRunDialogComponent_Conditional_0_Template, 11, 5, "mj-dialog", 0);
|
|
772
763
|
} if (rf & 2) {
|
|
773
764
|
i0.ɵɵconditional(ctx.isVisible ? 0 : -1);
|
|
774
|
-
} }, dependencies: [i1.
|
|
765
|
+
} }, dependencies: [i1.DefaultValueAccessor, i1.NumberValueAccessor, i1.NgControlStatus, i1.MinValidator, i1.NgModel, i2.MJButtonDirective, i2.MJAccordionPanelComponent, i2.MJAccordionTitleDirective, i2.MJDialogComponent, i2.MJDialogTitlebarComponent, i2.MJDialogActionsComponent], styles: [".param-value[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%] {\n resize: vertical;\n min-height: 60px;\n}\n\n.loading-state[_ngcontent-%COMP%] {\n color: var(--mj-text-muted);\n}\n\n.badge[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n\n\n.results-table-container[_ngcontent-%COMP%] {\n background: var(--mj-bg-surface);\n box-shadow: var(--mj-shadow-sm);\n display: flex;\n flex-direction: column;\n}\n\n.results-table-container[_ngcontent-%COMP%]::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n}\n\n.results-table-container[_ngcontent-%COMP%]::-webkit-scrollbar-track {\n background: var(--mj-bg-surface-sunken);\n}\n\n.results-table-container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb {\n background: var(--mj-border-strong);\n border-radius: var(--mj-radius-sm);\n}\n\n.results-table-container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover {\n background: var(--mj-text-disabled);\n}\n\n.results-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover {\n background-color: var(--mj-bg-surface-card) !important;\n}\n\n.results-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even) {\n background-color: var(--mj-bg-surface-card);\n}\n\n.dialog-content[_ngcontent-%COMP%] {\n overflow-y: auto;\n}\n\n.header-section[_ngcontent-%COMP%] {\n flex-shrink: 0;\n}\n\n.param-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n min-width: 30px;\n padding: 4px 6px;\n}\n\n\n\n .k-expander-content-wrapper {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n .k-expander-content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}"] }); }
|
|
775
766
|
}
|
|
776
767
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryRunDialogComponent, [{
|
|
777
768
|
type: Component,
|
|
778
|
-
args: [{ standalone: false, selector: 'mj-query-run-dialog', template: "@if (isVisible) {\n <kendo-dialog\n [width]=\"900\"\n [height]=\"800\"\n (close)=\"close()\">\n <kendo-dialog-titlebar>\n <div style=\"display: flex; align-items: center; gap: 8px;\">\n <i class=\"fa-solid fa-play-circle\" style=\"color: var(--mj-brand-primary);\"></i>\n Run Query: {{ query?.Name || 'Untitled' }}\n </div>\n </kendo-dialog-titlebar>\n <div style=\"display: flex; flex-direction: column; height: 100%; overflow-y: auto; overflow-x: hidden;\">\n @if (isLoadingParams) {\n <div style=\"display: flex; align-items: center; justify-content: center; padding: 40px;\">\n <i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 24px; color: var(--mj-text-muted); margin-right: 12px;\"></i>\n <span style=\"color: var(--mj-text-muted);\">Loading query parameters...</span>\n </div>\n } @else {\n <!-- Query Parameters Section -->\n @if (parameterPairs.length > 0) {\n <kendo-expansionpanel\n [(expanded)]=\"parametersExpanded\"\n style=\"margin-bottom: 16px; flex-shrink: 0;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-sliders\" style=\"color: var(--mj-text-muted);\"></i>\n Query Parameters\n <span class=\"badge\" style=\"background: #17a2b8; color: white; padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ parameterPairs.length }}\n </span>\n </span>\n </ng-template>\n <div style=\"padding: 12px 0;\">\n <div style=\"margin-bottom: 12px; color: var(--mj-text-muted); font-size: 0.85em;\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Configure parameter values for query execution.\n </div>\n <!-- Parameters List -->\n <div style=\"display: flex; flex-direction: column; gap: 16px;\">\n @for (param of parameterPairs; track param.name) {\n <div style=\"background: var(--mj-bg-surface-sunken); border: 1px solid var(--mj-border-default); border-radius: 6px; padding: 16px;\">\n <div style=\"display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 8px;\">\n <div>\n <label style=\"font-weight: 600; color: var(--mj-text-secondary); display: flex; align-items: center; gap: 6px;\">\n <i class=\"fa-solid fa-at\" style=\"color: var(--mj-brand-primary);\"></i>\n {{ param.name }}\n @if (param.isRequired) {\n <span style=\"color: #dc3545;\">*</span>\n }\n </label>\n @if (param.description) {\n <div style=\"font-size: 0.85em; color: var(--mj-text-muted); margin-top: 4px;\">\n {{ param.description }}\n </div>\n }\n </div>\n <div style=\"display: flex; gap: 8px; align-items: center;\">\n <span class=\"badge\" style=\"background: var(--mj-text-muted); color: white; padding: 2px 6px; border-radius: 4px; font-size: 0.75em;\">\n {{ param.type }}\n </span>\n @if (!isParameterValid(param)) {\n <i class=\"fa-solid fa-exclamation-triangle\" style=\"color: #dc3545;\" title=\"Required parameter is empty\"></i>\n }\n </div>\n </div>\n <!-- Parameter Value Input -->\n @if (param.type === 'number') {\n <kendo-numerictextbox\n [(ngModel)]=\"param.value\"\n placeholder=\"Enter number value...\"\n style=\"width: 100%;\">\n </kendo-numerictextbox>\n } @else {\n <kendo-textarea\n [(ngModel)]=\"param.value\"\n [rows]=\"2\"\n placeholder=\"Enter value (JSON, string, or number)...\"\n style=\"width: 100%; font-family: 'Courier New', monospace;\">\n </kendo-textarea>\n }\n @if (param.defaultValue) {\n <div style=\"font-size: 0.8em; color: var(--mj-text-muted); margin-top: 4px;\">\n Default: <code style=\"background: var(--mj-bg-surface-sunken); padding: 2px 4px; border-radius: 3px;\">{{ param.defaultValue }}</code>\n </div>\n }\n </div>\n }\n </div>\n </div>\n </kendo-expansionpanel>\n } @else {\n <div style=\"padding: 20px; background: var(--mj-bg-surface-sunken); border-radius: 6px; margin-bottom: 16px; text-align: center; color: var(--mj-text-muted);\">\n <i class=\"fa-solid fa-info-circle\"></i> This query has no parameters.\n </div>\n }\n <!-- Pagination Settings -->\n <kendo-expansionpanel\n [(expanded)]=\"paginationExpanded\"\n style=\"margin-bottom: 16px;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-table-list\" style=\"color: var(--mj-text-muted);\"></i>\n Pagination Settings\n @if (maxRows && maxRows > 0) {\n <span class=\"badge\" style=\"background: var(--mj-text-muted); color: white; padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ maxRows }} rows/page\n </span>\n }\n </span>\n </ng-template>\n <div style=\"padding: 12px 0;\">\n <div style=\"display: flex; flex-direction: column; gap: 12px;\">\n <!-- Max Rows -->\n <div style=\"display: flex; align-items: center; gap: 12px;\">\n <label style=\"font-weight: 600; color: var(--mj-text-secondary); white-space: nowrap; min-width: 100px;\">\n <i class=\"fa-solid fa-list-ol\" style=\"color: var(--mj-text-muted); margin-right: 6px;\"></i>\n Max Rows:\n </label>\n <kendo-numerictextbox\n [(ngModel)]=\"maxRows\"\n [min]=\"1\"\n [step]=\"100\"\n placeholder=\"All rows\"\n style=\"width: 150px;\">\n </kendo-numerictextbox>\n <span style=\"font-size: 0.85em; color: var(--mj-text-muted);\">\n Leave empty to return all rows\n </span>\n </div>\n <!-- Start Row -->\n <div style=\"display: flex; align-items: center; gap: 12px;\">\n <label style=\"font-weight: 600; color: var(--mj-text-secondary); white-space: nowrap; min-width: 100px;\">\n <i class=\"fa-solid fa-forward\" style=\"color: var(--mj-text-muted); margin-right: 6px;\"></i>\n Start Row:\n </label>\n <kendo-numerictextbox\n [(ngModel)]=\"startRow\"\n [min]=\"0\"\n [step]=\"1\"\n placeholder=\"0\"\n style=\"width: 150px;\">\n </kendo-numerictextbox>\n <span style=\"font-size: 0.85em; color: var(--mj-text-muted);\">\n 0-based offset for pagination\n </span>\n </div>\n </div>\n </div>\n </kendo-expansionpanel>\n <!-- Results Section -->\n @if (runResult) {\n <kendo-expansionpanel\n [(expanded)]=\"resultsExpanded\"\n style=\"flex: 1; display: flex; flex-direction: column; overflow: hidden; min-height: 0;\">\n <ng-template kendoExpansionPanelTitleDirective>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-table\" style=\"color: #28a745;\"></i>\n Query Results\n @if (runResult.Success) {\n <span class=\"badge\" style=\"background: #28a745; color: white; padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ runResult.RowCount }} rows\n </span>\n @if (runResult.TotalRowCount > runResult.RowCount) {\n <span class=\"badge\" style=\"background: #17a2b8; color: white; padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n of {{ runResult.TotalRowCount }} total\n </span>\n }\n } @else {\n <span class=\"badge\" style=\"background: #dc3545; color: white; padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n Error\n </span>\n }\n @if (runResult.ExecutionTime) {\n <span style=\"font-size: 0.8em; color: var(--mj-text-muted); font-weight: normal;\">\n ({{ runResult.ExecutionTime }}ms)\n </span>\n }\n </span>\n </ng-template>\n <div style=\"flex: 1; display: flex; flex-direction: column; overflow: hidden; min-height: 0;\">\n @if (runResult.Success) {\n @if (resultRows.length > 0) {\n <!-- Export and Pagination Controls -->\n <div style=\"display: flex; justify-content: space-between; align-items: center; padding: 12px; border-bottom: 1px solid var(--mj-border-default);\">\n <!-- Pagination Info and Controls -->\n <div style=\"display: flex; align-items: center; gap: 12px;\">\n @if (runResult.TotalRowCount > runResult.RowCount || startRow > 0) {\n <span style=\"font-size: 0.9em; color: var(--mj-text-muted);\">\n Showing rows {{ startRow + 1 }} - {{ startRow + runResult.RowCount }} of {{ runResult.TotalRowCount }}\n </span>\n <div style=\"display: flex; gap: 4px;\">\n <button kendoButton\n fillMode=\"flat\"\n size=\"small\"\n [disabled]=\"startRow === 0\"\n (click)=\"goToFirstPage()\"\n title=\"First page\">\n <i class=\"fa-solid fa-angles-left\"></i>\n </button>\n <button kendoButton\n fillMode=\"flat\"\n size=\"small\"\n [disabled]=\"startRow === 0\"\n (click)=\"goToPreviousPage()\"\n title=\"Previous page\">\n <i class=\"fa-solid fa-angle-left\"></i>\n </button>\n <button kendoButton\n fillMode=\"flat\"\n size=\"small\"\n [disabled]=\"startRow + runResult.RowCount >= runResult.TotalRowCount\"\n (click)=\"goToNextPage()\"\n title=\"Next page\">\n <i class=\"fa-solid fa-angle-right\"></i>\n </button>\n <button kendoButton\n fillMode=\"flat\"\n size=\"small\"\n [disabled]=\"startRow + runResult.RowCount >= runResult.TotalRowCount\"\n (click)=\"goToLastPage()\"\n title=\"Last page\">\n <i class=\"fa-solid fa-angles-right\"></i>\n </button>\n </div>\n }\n </div>\n <!-- Export Buttons -->\n <div style=\"display: flex; gap: 8px;\">\n <button kendoButton\n fillMode=\"flat\"\n (click)=\"copyToClipboard()\"\n title=\"Copy to clipboard\">\n <i class=\"fa-solid fa-copy\"></i> Copy\n </button>\n <button kendoButton\n fillMode=\"flat\"\n (click)=\"exportToCSV()\"\n title=\"Export to CSV\">\n <i class=\"fa-solid fa-download\"></i> Export CSV\n </button>\n </div>\n </div>\n <!-- Results Grid -->\n <div class=\"results-table-container\" style=\"flex: 1; overflow: auto; border: 1px solid var(--mj-border-default); border-radius: 4px; min-height: 0;\">\n <table class=\"results-table\" style=\"width: 100%; border-collapse: collapse; font-size: 14px;\">\n <thead style=\"position: sticky; top: 0; background: var(--mj-bg-surface-sunken); z-index: 10;\">\n <tr>\n @for (col of resultColumns; track col.field) {\n <th style=\"padding: 12px 16px; text-align: left; font-weight: 600; color: var(--mj-text-secondary); border-bottom: 2px solid var(--mj-border-default); background: var(--mj-bg-surface-sunken); white-space: nowrap;\">\n {{ col.title }}\n </th>\n }\n </tr>\n </thead>\n <tbody>\n @for (row of resultRows; track $index) {\n <tr style=\"border-bottom: 1px solid var(--mj-border-default); transition: background-color 0.2s;\">\n @for (col of resultColumns; track col.field) {\n <td style=\"padding: 10px 16px; color: var(--mj-text-primary); max-width: 300px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\"\n [title]=\"row[col.field]\">\n {{ row[col.field] || '' }}\n </td>\n }\n </tr>\n }\n </tbody>\n </table>\n @if (resultRows.length === 0) {\n <div style=\"padding: 40px; text-align: center; color: var(--mj-text-muted);\">\n <i class=\"fa-solid fa-table\" style=\"font-size: 48px; margin-bottom: 12px; opacity: 0.3;\"></i>\n <p>No data in results</p>\n </div>\n }\n </div>\n } @else {\n <div style=\"display: flex; align-items: center; justify-content: center; height: 200px; color: var(--mj-text-muted);\">\n <i class=\"fa-solid fa-inbox\" style=\"font-size: 48px; margin-bottom: 12px;\"></i>\n <p>No results returned</p>\n </div>\n }\n } @else {\n <div style=\"padding: 20px; background: #f8d7da; border: 1px solid #f5c6cb; border-radius: 6px; margin: 12px;\">\n <div style=\"color: #721c24;\">\n <i class=\"fa-solid fa-exclamation-circle\"></i>\n <strong>Query execution failed</strong>\n </div>\n @if (runResult.ErrorMessage) {\n <div style=\"margin-top: 8px; font-family: 'Courier New', monospace; font-size: 0.9em;\">\n {{ runResult.ErrorMessage }}\n </div>\n }\n </div>\n }\n </div>\n </kendo-expansionpanel>\n }\n }\n </div>\n <kendo-dialog-actions>\n @if (!runResult) {\n <button kendoButton (click)=\"close()\">\n <i class=\"fa-solid fa-times\"></i> Cancel\n </button>\n <button kendoButton\n [themeColor]=\"'primary'\"\n [disabled]=\"isRunning || hasInvalidParameters()\"\n (click)=\"runQuery()\">\n @if (isRunning) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Running...\n } @else {\n <i class=\"fa-solid fa-play\"></i> Run Query\n }\n </button>\n } @else {\n <button kendoButton (click)=\"close()\">\n <i class=\"fa-solid fa-times\"></i> Close\n </button>\n <button kendoButton\n [themeColor]=\"'primary'\"\n [disabled]=\"isRunning\"\n (click)=\"runQuery()\">\n <i class=\"fa-solid fa-refresh\"></i> Run Again\n </button>\n }\n </kendo-dialog-actions>\n </kendo-dialog>\n}", styles: [".param-value textarea {\n resize: vertical;\n min-height: 60px;\n}\n\n.loading-state {\n color: var(--mj-text-muted);\n}\n\n.badge {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n/* Professional Results Table Styling */\n.results-table-container {\n background: var(--mj-bg-surface);\n box-shadow: var(--mj-shadow-sm);\n display: flex;\n flex-direction: column;\n}\n\n.results-table-container::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n}\n\n.results-table-container::-webkit-scrollbar-track {\n background: var(--mj-bg-surface-sunken);\n}\n\n.results-table-container::-webkit-scrollbar-thumb {\n background: var(--mj-border-strong);\n border-radius: var(--mj-radius-sm);\n}\n\n.results-table-container::-webkit-scrollbar-thumb:hover {\n background: var(--mj-text-disabled);\n}\n\n.results-table tbody tr:hover {\n background-color: var(--mj-bg-surface-card) !important;\n}\n\n.results-table tbody tr:nth-child(even) {\n background-color: var(--mj-bg-surface-card);\n}\n\n.dialog-content {\n overflow-y: auto;\n}\n\n.header-section {\n flex-shrink: 0;\n}\n\n.param-actions button {\n min-width: 30px;\n padding: 4px 6px;\n}\n\n/* Ensure expansion panel content flexes properly */\n::ng-deep .k-expander-content-wrapper {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n::ng-deep .k-expander-content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n"] }]
|
|
769
|
+
args: [{ standalone: false, selector: 'mj-query-run-dialog', template: "@if (isVisible) {\n <mj-dialog\n [Visible]=\"true\"\n [Width]=\"900\"\n (Close)=\"close()\">\n <mj-dialog-titlebar>\n <div style=\"display: flex; align-items: center; gap: 8px;\">\n <i class=\"fa-solid fa-play-circle\" style=\"color: var(--mj-brand-primary);\"></i>\n Run Query: {{ query?.Name || 'Untitled' }}\n </div>\n </mj-dialog-titlebar>\n <div style=\"display: flex; flex-direction: column; height: 100%; overflow-y: auto; overflow-x: hidden;\">\n @if (isLoadingParams) {\n <div style=\"display: flex; align-items: center; justify-content: center; padding: 40px;\">\n <i class=\"fa-solid fa-spinner fa-spin\" style=\"font-size: 24px; color: var(--mj-text-muted); margin-right: 12px;\"></i>\n <span style=\"color: var(--mj-text-muted);\">Loading query parameters...</span>\n </div>\n } @else {\n <!-- Query Parameters Section -->\n @if (parameterPairs.length > 0) {\n <mj-accordion-panel\n [(Expanded)]=\"parametersExpanded\"\n style=\"margin-bottom: 16px; flex-shrink: 0;\">\n <ng-template mjAccordionTitle>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-sliders\" style=\"color: var(--mj-text-muted);\"></i>\n Query Parameters\n <span style=\"background: var(--mj-status-info); color: var(--mj-text-inverse); padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ parameterPairs.length }}\n </span>\n </span>\n </ng-template>\n <div style=\"padding: 12px 0;\">\n <div style=\"margin-bottom: 12px; color: var(--mj-text-muted); font-size: 0.85em;\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Configure parameter values for query execution.\n </div>\n <!-- Parameters List -->\n <div style=\"display: flex; flex-direction: column; gap: 16px;\">\n @for (param of parameterPairs; track param.name) {\n <div style=\"background: var(--mj-bg-surface-sunken); border: 1px solid var(--mj-border-default); border-radius: 6px; padding: 16px;\">\n <div style=\"display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 8px;\">\n <div>\n <label style=\"font-weight: 600; color: var(--mj-text-secondary); display: flex; align-items: center; gap: 6px;\">\n <i class=\"fa-solid fa-at\" style=\"color: var(--mj-brand-primary);\"></i>\n {{ param.name }}\n @if (param.isRequired) {\n <span style=\"color: #dc3545;\">*</span>\n }\n </label>\n @if (param.description) {\n <div style=\"font-size: 0.85em; color: var(--mj-text-muted); margin-top: 4px;\">\n {{ param.description }}\n </div>\n }\n </div>\n <div style=\"display: flex; gap: 8px; align-items: center;\">\n <span class=\"badge\" style=\"background: var(--mj-text-muted); color: white; padding: 2px 6px; border-radius: 4px; font-size: 0.75em;\">\n {{ param.type }}\n </span>\n @if (!isParameterValid(param)) {\n <i class=\"fa-solid fa-exclamation-triangle\" style=\"color: #dc3545;\" title=\"Required parameter is empty\"></i>\n }\n </div>\n </div>\n <!-- Parameter Value Input -->\n @if (param.type === 'number') {\n <input type=\"number\" class=\"mj-input\"\n [(ngModel)]=\"param.value\"\n placeholder=\"Enter number value...\"\n style=\"width: 100%;\" />\n } @else {\n <textarea class=\"mj-input\"\n [(ngModel)]=\"param.value\"\n rows=\"2\"\n placeholder=\"Enter value (JSON, string, or number)...\"\n style=\"width: 100%; font-family: 'Courier New', monospace;\">\n </textarea>\n }\n @if (param.defaultValue) {\n <div style=\"font-size: 0.8em; color: var(--mj-text-muted); margin-top: 4px;\">\n Default: <code style=\"background: var(--mj-bg-surface-sunken); padding: 2px 4px; border-radius: 3px;\">{{ param.defaultValue }}</code>\n </div>\n }\n </div>\n }\n </div>\n </div>\n </mj-accordion-panel>\n } @else {\n <div style=\"padding: 20px; background: var(--mj-bg-surface-sunken); border-radius: 6px; margin-bottom: 16px; text-align: center; color: var(--mj-text-muted);\">\n <i class=\"fa-solid fa-info-circle\"></i> This query has no parameters.\n </div>\n }\n <!-- Pagination Settings -->\n <mj-accordion-panel\n [(Expanded)]=\"paginationExpanded\"\n style=\"margin-bottom: 16px;\">\n <ng-template mjAccordionTitle>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n <i class=\"fa-solid fa-table-list\" style=\"color: var(--mj-text-muted);\"></i>\n Pagination Settings\n @if (maxRows && maxRows > 0) {\n <span style=\"background: var(--mj-text-muted); color: var(--mj-text-inverse); padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ maxRows }} rows/page\n </span>\n }\n </span>\n </ng-template>\n <div style=\"padding: 12px 0;\">\n <div style=\"display: flex; flex-direction: column; gap: 12px;\">\n <!-- Max Rows -->\n <div style=\"display: flex; align-items: center; gap: 12px;\">\n <label style=\"font-weight: 600; color: var(--mj-text-secondary); white-space: nowrap; min-width: 100px;\">\n <i class=\"fa-solid fa-list-ol\" style=\"color: var(--mj-text-muted); margin-right: 6px;\"></i>\n Max Rows:\n </label>\n <input type=\"number\" class=\"mj-input\"\n [(ngModel)]=\"maxRows\"\n min=\"1\"\n step=\"100\"\n placeholder=\"All rows\"\n style=\"width: 150px;\" />\n <span style=\"font-size: 0.85em; color: var(--mj-text-muted);\">\n Leave empty to return all rows\n </span>\n </div>\n <!-- Start Row -->\n <div style=\"display: flex; align-items: center; gap: 12px;\">\n <label style=\"font-weight: 600; color: var(--mj-text-secondary); white-space: nowrap; min-width: 100px;\">\n <i class=\"fa-solid fa-forward\" style=\"color: var(--mj-text-muted); margin-right: 6px;\"></i>\n Start Row:\n </label>\n <input type=\"number\" class=\"mj-input\"\n [(ngModel)]=\"startRow\"\n min=\"0\"\n step=\"1\"\n placeholder=\"0\"\n style=\"width: 150px;\" />\n <span style=\"font-size: 0.85em; color: var(--mj-text-muted);\">\n 0-based offset for pagination\n </span>\n </div>\n </div>\n </div>\n </mj-accordion-panel>\n <!-- Results Section -->\n @if (runResult) {\n <mj-accordion-panel\n [(Expanded)]=\"resultsExpanded\"\n style=\"flex: 1; display: flex; flex-direction: column; overflow: hidden; min-height: 0;\">\n <ng-template mjAccordionTitle>\n <span style=\"display: flex; align-items: center; gap: 8px; font-weight: 600;\">\n @if (runResult.Success) {\n <i class=\"fa-solid fa-table\" style=\"color: var(--mj-status-success);\"></i>\n Query Results\n <span style=\"background: var(--mj-status-success); color: var(--mj-text-inverse); padding: 2px 6px; border-radius: 10px; font-size: 0.7em;\">\n {{ runResult.RowCount }} rows@if (runResult.TotalRowCount > runResult.RowCount) { of {{ runResult.TotalRowCount }} total}\n </span>\n @if (runResult.ExecutionTime) {\n <span style=\"color: var(--mj-text-muted); font-size: 0.85em; font-weight: normal;\">— {{ runResult.ExecutionTime }}ms</span>\n }\n } @else {\n <i class=\"fa-solid fa-exclamation-circle\" style=\"color: var(--mj-status-error);\"></i>\n Query Results — Error\n }\n </span>\n </ng-template>\n <div style=\"flex: 1; display: flex; flex-direction: column; overflow: hidden; min-height: 0;\">\n @if (runResult.Success) {\n @if (resultRows.length > 0) {\n <!-- Export and Pagination Controls -->\n <div style=\"display: flex; justify-content: space-between; align-items: center; padding: 12px; border-bottom: 1px solid var(--mj-border-default);\">\n <!-- Pagination Info and Controls -->\n <div style=\"display: flex; align-items: center; gap: 12px;\">\n @if (runResult.TotalRowCount > runResult.RowCount || startRow > 0) {\n <span style=\"font-size: 0.9em; color: var(--mj-text-muted);\">\n Showing rows {{ startRow + 1 }} - {{ startRow + runResult.RowCount }} of {{ runResult.TotalRowCount }}\n </span>\n <div style=\"display: flex; gap: 4px;\">\n <button mjButton\n variant=\"flat\"\n [disabled]=\"startRow === 0\"\n (click)=\"goToFirstPage()\"\n title=\"First page\">\n <i class=\"fa-solid fa-angles-left\"></i>\n </button>\n <button mjButton\n variant=\"flat\"\n [disabled]=\"startRow === 0\"\n (click)=\"goToPreviousPage()\"\n title=\"Previous page\">\n <i class=\"fa-solid fa-angle-left\"></i>\n </button>\n <button mjButton\n variant=\"flat\"\n [disabled]=\"startRow + runResult.RowCount >= runResult.TotalRowCount\"\n (click)=\"goToNextPage()\"\n title=\"Next page\">\n <i class=\"fa-solid fa-angle-right\"></i>\n </button>\n <button mjButton\n variant=\"flat\"\n [disabled]=\"startRow + runResult.RowCount >= runResult.TotalRowCount\"\n (click)=\"goToLastPage()\"\n title=\"Last page\">\n <i class=\"fa-solid fa-angles-right\"></i>\n </button>\n </div>\n }\n </div>\n <!-- Export Buttons -->\n <div style=\"display: flex; gap: 8px;\">\n <button mjButton\n variant=\"flat\"\n (click)=\"copyToClipboard()\"\n title=\"Copy to clipboard\">\n <i class=\"fa-solid fa-copy\"></i> Copy\n </button>\n <button mjButton\n variant=\"flat\"\n (click)=\"exportToCSV()\"\n title=\"Export to CSV\">\n <i class=\"fa-solid fa-download\"></i> Export CSV\n </button>\n </div>\n </div>\n <!-- Results Grid -->\n <div class=\"results-table-container\" style=\"flex: 1; overflow: auto; border: 1px solid var(--mj-border-default); border-radius: 4px; min-height: 0;\">\n <table class=\"results-table\" style=\"width: 100%; border-collapse: collapse; font-size: 14px;\">\n <thead style=\"position: sticky; top: 0; background: var(--mj-bg-surface-sunken); z-index: 10;\">\n <tr>\n @for (col of resultColumns; track col.field) {\n <th style=\"padding: 12px 16px; text-align: left; font-weight: 600; color: var(--mj-text-secondary); border-bottom: 2px solid var(--mj-border-default); background: var(--mj-bg-surface-sunken); white-space: nowrap;\">\n {{ col.title }}\n </th>\n }\n </tr>\n </thead>\n <tbody>\n @for (row of resultRows; track $index) {\n <tr style=\"border-bottom: 1px solid var(--mj-border-default); transition: background-color 0.2s;\">\n @for (col of resultColumns; track col.field) {\n <td style=\"padding: 10px 16px; color: var(--mj-text-primary); max-width: 300px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\"\n [title]=\"row[col.field]\">\n {{ row[col.field] || '' }}\n </td>\n }\n </tr>\n }\n </tbody>\n </table>\n @if (resultRows.length === 0) {\n <div style=\"padding: 40px; text-align: center; color: var(--mj-text-muted);\">\n <i class=\"fa-solid fa-table\" style=\"font-size: 48px; margin-bottom: 12px; opacity: 0.3;\"></i>\n <p>No data in results</p>\n </div>\n }\n </div>\n } @else {\n <div style=\"display: flex; align-items: center; justify-content: center; height: 200px; color: var(--mj-text-muted);\">\n <i class=\"fa-solid fa-inbox\" style=\"font-size: 48px; margin-bottom: 12px;\"></i>\n <p>No results returned</p>\n </div>\n }\n } @else {\n <div style=\"padding: 20px; background: #f8d7da; border: 1px solid #f5c6cb; border-radius: 6px; margin: 12px;\">\n <div style=\"color: #721c24;\">\n <i class=\"fa-solid fa-exclamation-circle\"></i>\n <strong>Query execution failed</strong>\n </div>\n @if (runResult.ErrorMessage) {\n <div style=\"margin-top: 8px; font-family: 'Courier New', monospace; font-size: 0.9em;\">\n {{ runResult.ErrorMessage }}\n </div>\n }\n </div>\n }\n </div>\n </mj-accordion-panel>\n }\n }\n </div>\n <mj-dialog-actions>\n @if (!runResult) {\n <button mjButton (click)=\"close()\">\n <i class=\"fa-solid fa-times\"></i> Cancel\n </button>\n <button mjButton\n variant=\"primary\"\n [disabled]=\"isRunning || hasInvalidParameters()\"\n (click)=\"runQuery()\">\n @if (isRunning) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i> Running...\n } @else {\n <i class=\"fa-solid fa-play\"></i> Run Query\n }\n </button>\n } @else {\n <button mjButton (click)=\"close()\">\n <i class=\"fa-solid fa-times\"></i> Close\n </button>\n <button mjButton\n variant=\"primary\"\n [disabled]=\"isRunning\"\n (click)=\"runQuery()\">\n <i class=\"fa-solid fa-refresh\"></i> Run Again\n </button>\n }\n </mj-dialog-actions>\n </mj-dialog>\n}\n", styles: [".param-value textarea {\n resize: vertical;\n min-height: 60px;\n}\n\n.loading-state {\n color: var(--mj-text-muted);\n}\n\n.badge {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n/* Professional Results Table Styling */\n.results-table-container {\n background: var(--mj-bg-surface);\n box-shadow: var(--mj-shadow-sm);\n display: flex;\n flex-direction: column;\n}\n\n.results-table-container::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n}\n\n.results-table-container::-webkit-scrollbar-track {\n background: var(--mj-bg-surface-sunken);\n}\n\n.results-table-container::-webkit-scrollbar-thumb {\n background: var(--mj-border-strong);\n border-radius: var(--mj-radius-sm);\n}\n\n.results-table-container::-webkit-scrollbar-thumb:hover {\n background: var(--mj-text-disabled);\n}\n\n.results-table tbody tr:hover {\n background-color: var(--mj-bg-surface-card) !important;\n}\n\n.results-table tbody tr:nth-child(even) {\n background-color: var(--mj-bg-surface-card);\n}\n\n.dialog-content {\n overflow-y: auto;\n}\n\n.header-section {\n flex-shrink: 0;\n}\n\n.param-actions button {\n min-width: 30px;\n padding: 4px 6px;\n}\n\n/* Ensure expansion panel content flexes properly */\n::ng-deep .k-expander-content-wrapper {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n::ng-deep .k-expander-content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n"] }]
|
|
779
770
|
}], null, { query: [{
|
|
780
771
|
type: Input
|
|
781
772
|
}], parameters: [{
|