@acorex-platform/module-help-desk-client 0.0.30 → 0.0.33
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/fesm2022/{acorex-platform-module-help-desk-client-acorex-platform-module-help-desk-client-OtDtf3iY.mjs → acorex-platform-module-help-desk-client-acorex-platform-module-help-desk-client-8uBzGpHC.mjs} +7 -7
- package/fesm2022/{acorex-platform-module-help-desk-client-acorex-platform-module-help-desk-client-OtDtf3iY.mjs.map → acorex-platform-module-help-desk-client-acorex-platform-module-help-desk-client-8uBzGpHC.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-help-desk-client-capture-screen.component-AyM-9U5W.mjs → acorex-platform-module-help-desk-client-capture-screen.component-D8azYPyS.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-help-desk-client-capture-screen.component-AyM-9U5W.mjs.map → acorex-platform-module-help-desk-client-capture-screen.component-D8azYPyS.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entities-issue-type.mjs +258 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entities-issue-type.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entities-my-reported-issues.mjs +577 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entities-my-reported-issues.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entities-reported-issues.mjs +588 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entities-reported-issues.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-acorex-platform-module-help-desk-client-contracts-entity-catalog-otgMMFlK.mjs +63 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-acorex-platform-module-help-desk-client-contracts-entity-catalog-otgMMFlK.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-issue-type.entity-CAuZWL3c.mjs +216 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-issue-type.entity-CAuZWL3c.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-my-reported-issues.entity-Dpg2-NaY.mjs +535 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-my-reported-issues.entity-Dpg2-NaY.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-reported-issues.entity-Bb_nYMZe.mjs +546 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog-reported-issues.entity-Bb_nYMZe.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog.mjs +2 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts-entity-catalog.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-help-desk-client-contracts.mjs +1 -1283
- package/fesm2022/acorex-platform-module-help-desk-client-contracts.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-help-desk-client-download-log-file.command-eMaHHzLd.mjs → acorex-platform-module-help-desk-client-download-log-file.command-6OhUT3KQ.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-help-desk-client-download-log-file.command-eMaHHzLd.mjs.map → acorex-platform-module-help-desk-client-download-log-file.command-6OhUT3KQ.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-help-desk-client-local-entities.mjs +31 -0
- package/fesm2022/acorex-platform-module-help-desk-client-local-entities.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-help-desk-client-report-new-issue.component-C-vY_x_C.mjs → acorex-platform-module-help-desk-client-report-new-issue.component-DYlXM6Zs.mjs} +40 -17
- package/fesm2022/acorex-platform-module-help-desk-client-report-new-issue.component-DYlXM6Zs.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-help-desk-client-show-report-issue.command-q2fqdnAS.mjs → acorex-platform-module-help-desk-client-show-report-issue.command-D5riRQv7.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-help-desk-client-show-report-issue.command-q2fqdnAS.mjs.map → acorex-platform-module-help-desk-client-show-report-issue.command-D5riRQv7.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-help-desk-client.mjs +1 -1
- package/package.json +21 -1
- package/types/acorex-platform-module-help-desk-client-contracts-entities-issue-type.d.ts +5 -0
- package/types/acorex-platform-module-help-desk-client-contracts-entities-my-reported-issues.d.ts +5 -0
- package/types/acorex-platform-module-help-desk-client-contracts-entities-reported-issues.d.ts +5 -0
- package/types/acorex-platform-module-help-desk-client-contracts-entity-catalog.d.ts +10 -0
- package/types/acorex-platform-module-help-desk-client-contracts.d.ts +2 -8
- package/types/acorex-platform-module-help-desk-client-local-entities.d.ts +12 -0
- package/fesm2022/acorex-platform-module-help-desk-client-report-new-issue.component-C-vY_x_C.mjs.map +0 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AXPLocalEntityCatalog } from '@acorex-platform/framework-shared/entity';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Lazy per-entity layout factories. Do not re-export from the contracts barrel
|
|
5
|
+
* so RootConfig imports stay light. Server seed and client `local-entities`
|
|
6
|
+
* consume this catalog explicitly.
|
|
7
|
+
*/
|
|
8
|
+
declare const helpDeskLocalEntityCatalog: AXPLocalEntityCatalog;
|
|
9
|
+
|
|
10
|
+
export { helpDeskLocalEntityCatalog };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AXPEntityModel } from '@acorex-platform/framework-shared/entity';
|
|
2
2
|
|
|
3
3
|
interface AXMLogMessage {
|
|
4
4
|
type: 'log' | 'error' | 'warning';
|
|
@@ -93,16 +93,12 @@ declare const RootConfig: {
|
|
|
93
93
|
};
|
|
94
94
|
};
|
|
95
95
|
|
|
96
|
-
declare function issueTypeEntityFactory(): Promise<AXPEntity | null>;
|
|
97
|
-
|
|
98
96
|
interface AXMHelpDeskIssueTypeEntityModel extends AXPEntityModel<string> {
|
|
99
97
|
name: string;
|
|
100
98
|
title: string;
|
|
101
99
|
description?: string;
|
|
102
100
|
}
|
|
103
101
|
|
|
104
|
-
declare function myReportedIssuesEntityFactory(): Promise<AXPEntity | null>;
|
|
105
|
-
|
|
106
102
|
interface AXMHelpDeskMyReportedIssuesEntityModel extends AXPEntityModel<string> {
|
|
107
103
|
id: string;
|
|
108
104
|
user: any;
|
|
@@ -123,8 +119,6 @@ interface AXMHelpDeskMyReportedIssuesEntityModel extends AXPEntityModel<string>
|
|
|
123
119
|
createdAt: Date;
|
|
124
120
|
}
|
|
125
121
|
|
|
126
|
-
declare function reportedIssuesEntityFactory(): Promise<AXPEntity | null>;
|
|
127
|
-
|
|
128
122
|
interface AXMHelpDeskReportedIssuesEntityModel extends AXPEntityModel<string> {
|
|
129
123
|
id: string;
|
|
130
124
|
user: any;
|
|
@@ -145,5 +139,5 @@ interface AXMHelpDeskReportedIssuesEntityModel extends AXPEntityModel<string> {
|
|
|
145
139
|
createdAt: Date;
|
|
146
140
|
}
|
|
147
141
|
|
|
148
|
-
export { AXMPermissionsKeys, AXPCollaborationPermissionKeys, AXPHelpDeskMenuKeys, RootConfig
|
|
142
|
+
export { AXMPermissionsKeys, AXPCollaborationPermissionKeys, AXPHelpDeskMenuKeys, RootConfig };
|
|
149
143
|
export type { AXMHelpDeskIssueTypeEntityModel, AXMHelpDeskMyReportedIssuesEntityModel, AXMHelpDeskReportedIssuesEntityModel, AXMLogCaptureState, AXMLogMessage };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
export { helpDeskLocalEntityCatalog } from '@acorex-platform/module-help-desk-client/contracts/entity-catalog';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Registers help-desk layouts on the client from packaged factories.
|
|
6
|
+
* Each `import()` targets a secondary entry so unused entities stay out of the
|
|
7
|
+
* bundle. Do not add this to the demo app; demo continues to load layouts via
|
|
8
|
+
* `Domain:GetEntityLayout`.
|
|
9
|
+
*/
|
|
10
|
+
declare function provideHelpDeskLocalEntities(): _angular_core.EnvironmentProviders;
|
|
11
|
+
|
|
12
|
+
export { provideHelpDeskLocalEntities };
|
package/fesm2022/acorex-platform-module-help-desk-client-report-new-issue.component-C-vY_x_C.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-help-desk-client-report-new-issue.component-C-vY_x_C.mjs","sources":["../../../../libs/modules/help-desk/client/src/lib/features/report-issue/components/report-new-issue/report-new-issue.component.ts","../../../../libs/modules/help-desk/client/src/lib/features/report-issue/components/report-new-issue/report-new-issue.component.html"],"sourcesContent":["import { AXPFileListItem, type AXPFileStorageInfo, type AXPWidgetNode, AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { AXDataSource } from '@acorex/cdk/common';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormComponent, AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXMediaViewerData, AXMediaViewerModule } from '@acorex/components/media-viewer';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextAreaModule } from '@acorex/components/text-area';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\n// import { RootConfig } from '@acorex-platform/module-issue-management-client/contracts';\nimport { AXPSessionService } from '@acorex-platform/framework-client/auth';\n\nimport { AXPFileStorageService } from '@acorex-platform/framework-client/common';\n\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject, ViewChild, ChangeDetectionStrategy } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { RootConfig } from '@acorex-platform/module-help-desk-client/contracts';\nimport { AXMHelpDeskReportedIssuesEntityModel } from '@acorex-platform/module-help-desk-client/contracts';\nimport { AXMLogCaptureService } from '../../../console-monitor';\nimport { AXMReportNewIssueViewModel } from '../../services/report-new-issue.viewmodel';\n@Component({\n selector: 'axm-report-new-issue',\n templateUrl: './report-new-issue.component.html',\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [\n CommonModule,\n FormsModule,\n //\n AXTranslationModule,\n AXFormModule,\n AXLabelModule,\n AXTextBoxModule,\n AXSelectBoxModule,\n AXTextAreaModule,\n AXDecoratorModule,\n AXButtonModule,\n AXMediaViewerModule,\n AXPWidgetCoreModule,\n ],\n})\nexport class AXMReportNewIssueComponent extends AXBasePageComponent {\n private readonly entityService = inject(AXPEntityService);\n constructor() {\n super();\n }\n\n @ViewChild(AXFormComponent)\n private form!: AXFormComponent;\n protected vm = inject(AXMReportNewIssueViewModel);\n protected logCaptureService = inject(AXMLogCaptureService);\n protected sessionService = inject(AXPSessionService);\n protected issueTypeService = this.entityService.withEntity(RootConfig.module.name, RootConfig.entities.issueType.name).data<any, any>();\n protected reportedIssuesService = this.entityService.withEntity(RootConfig.module.name, RootConfig.entities.reportedIssues.name).data<any, any>();\n protected fileStorageService = inject(AXPFileStorageService);\n protected issueTypeDataSource = new AXDataSource({\n load: async (_) => {\n const issueTypeList = await this.issueTypeService.query();\n return issueTypeList;\n },\n pageSize: 20,\n });\n protected priorityList = [\n {\n title: 'Low',\n id: 1,\n },\n {\n title: 'Medium',\n id: 2,\n },\n {\n title: 'High',\n id: 3,\n },\n {\n title: 'Critical',\n id: 4,\n },\n ];\n attachNode: AXPWidgetNode = {\n type: AXPWidgetsCatalog.attachments,\n name: 'attach',\n path: 'attach',\n defaultValue: this.vm.media().map<AXPFileListItem>((el) => {\n // Handle url that can be string or () => Promise<string>\n const urlValue = typeof el.url === 'string' ? el.url : undefined;\n return {\n name: el.name ?? '',\n status: 'uploaded',\n id: el.id,\n size: parseInt(el.size ?? '0'),\n source: {\n kind: 'url',\n value: urlValue,\n },\n };\n }),\n options: {\n multiple: true,\n entity: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,\n record: this.vm.id(),\n },\n };\n context = {};\n\n protected async handleSubmitClick() {\n const formResult = await this.form.validate();\n if (formResult.result) {\n const params: AXMHelpDeskReportedIssuesEntityModel = {\n id: this.vm.id(),\n createdAt: new Date(),\n description: this.vm.data().description,\n errorLogs: this.logCaptureService.logs(),\n issueType: this.vm.data().issueType,\n priority: this.vm.data().priority,\n status: 'new',\n systemInfo: navigator.userAgent,\n title: this.vm.data().title,\n user: this.sessionService.user,\n };\n const reportedIssue = await this.reportedIssuesService.create(params);\n if (reportedIssue && reportedIssue.length) {\n const attachments: AXPFileListItem[] = [];\n for (const res of this.vm.media()) {\n const file = await this.fileStorageSaver(reportedIssue, res);\n console.log(file);\n attachments.push(file);\n\n // const fileStorageInfo: AXPFileStorageInfo = await this.fileStorageService.save({\n // file: await this.convertURLToFile(res.url, res.name as string),\n // refId: reportedIssue,\n // refType: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,\n // category: '',\n // name: res.name,\n // });\n // await this.fileStorageService.commit(fileStorageInfo.fileId);\n // attachments.push({\n // name: res.name ?? '',\n // status: 'uploaded',\n // id: fileStorageInfo.fileId,\n // size: parseInt(res.size ?? '0'),\n // source: {\n // kind: 'fileId',\n // value: fileStorageInfo.fileId,\n // },\n // });\n }\n await this.reportedIssuesService.update(reportedIssue, { attachments });\n this.vm.resetState();\n this.close({ insertResult: true });\n }\n }\n }\n\n private async fileStorageSaver(reportedIssueId: string, file: AXMediaViewerData): Promise<AXPFileListItem> {\n // Resolve url whether it's a string or a function that returns Promise<string>\n const resolvedUrl = typeof file.url === 'function' ? await file.url() : file.url;\n const fileStorageInfo: AXPFileStorageInfo = await this.fileStorageService.save({\n file: await this.convertURLToFile(resolvedUrl, file.name as string),\n refId: reportedIssueId,\n refType: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,\n category: '',\n name: file.name,\n });\n await this.fileStorageService.commit(fileStorageInfo.fileId);\n return {\n name: file.name ?? '',\n status: 'uploaded',\n id: fileStorageInfo.fileId,\n size: parseInt(file.size ?? '0'),\n source: {\n kind: 'fileId',\n value: fileStorageInfo.fileId,\n },\n };\n // attachments.push({\n // name: res.name ?? '',\n // status: 'uploaded',\n // id: fileStorageInfo.fileId,\n // size: parseInt(res.size ?? '0'),\n // source: {\n // kind: 'fileId',\n // value: fileStorageInfo.fileId,\n // },\n // });\n // await this.reportedIssuesService.updateOne(reportedIssueId, {\n // attachments: [\n // ...(this.vm.media() ?? []),\n // {\n // name: file.name ?? '',\n // status: 'uploaded',\n // id: fileStorageInfo.fileId,\n // size: parseInt(file.size ?? '0'),\n // source: {\n // kind: 'fileId',\n // value: fileStorageInfo.fileId,\n // },\n // },\n // ],\n // });\n }\n\n private async convertURLToFile(url: string, fileName: string): Promise<File> {\n const response = await fetch(url);\n const blob = await response.blob();\n const file = new File([blob], fileName);\n return file;\n }\n\n protected async handleStartRecordingClick() {\n await this.vm.startCapturing();\n this.close();\n }\n\n protected async onDeleteMediaClick(index: number) {\n this.vm.deleteCapturedItem(index);\n }\n\n protected async onCancelClick() {\n this.vm.resetState();\n this.close();\n }\n\n handleIssueTypeChange(event: any) {\n this.vm.data().issueType = event.component.selectedItems[0];\n }\n\n handlePriorityChange(event: any) {\n this.vm.data().priority = event.component.selectedItems[0];\n }\n\n override ngOnDestroy(): void {\n if (this.vm.status() !== 'recording') {\n this.vm.resetState();\n }\n }\n}\n","<div class=\"p-6\">\n <ax-form #form>\n <div class=\"grid gap-2\">\n <ax-form-field>\n <ax-label>{{ '@help-desk:report-new-issue.components.report-new-issue-form.fields.title' | translate | async }}</ax-label>\n <ax-text-box [(ngModel)]=\"vm.data().title\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ '@help-desk:report-new-issue.components.report-new-issue-form.fields.issue-type' | translate | async }}</ax-label>\n <ax-select-box\n valueField=\"id\"\n textField=\"title\"\n [dataSource]=\"issueTypeDataSource\"\n [value]=\"vm.data().issueType\"\n (onValueChanged)=\"handleIssueTypeChange($event)\"\n ></ax-select-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ '@help-desk:report-new-issue.components.report-new-issue-form.fields.priority' | translate | async }}</ax-label>\n <ax-select-box\n valueField=\"id\"\n textField=\"title\"\n [dataSource]=\"priorityList\"\n [value]=\"vm.data().priority\"\n (onValueChanged)=\"handlePriorityChange($event)\"\n ></ax-select-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ '@help-desk:report-new-issue.components.report-new-issue-form.fields.description' | translate | async }}</ax-label>\n <ax-text-area [(ngModel)]=\"vm.data().description\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-area>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ '@help-desk:report-new-issue.components.report-new-issue-form.fields.attachments' | translate | async }}</ax-label>\n <axp-widgets-container class=\"flex flex-col gap-2 p-4\" [context]=\"context\">\n <ng-container axp-widget-renderer [node]=\"attachNode\" [mode]=\"'edit'\"> </ng-container>\n </axp-widgets-container>\n </ax-form-field>\n </div>\n </ax-form>\n <!-- @if(vm.media().length > 0){\n <div class=\"py-4\">\n <ax-content>\n <ax-media-viewer-container #mediaViewer [dataArray]=\"vm.media()\" class=\"block\">\n <ax-header>\n <ax-file-info></ax-file-info>\n <ax-suffix>\n <ax-button class=\"ax-sm\" color=\"danger\" (onClick)=\"onDeleteMediaClick(mediaViewer.getActiveIndex())\">\n <ax-icon class=\"icon icon-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-header>\n <ax-prefix>\n <ax-button (click)=\"mediaViewer.next()\">\n <ax-icon class=\"icon icon-chevron-right\"> </ax-icon>\n </ax-button>\n </ax-prefix>\n <ax-suffix>\n <ax-button (click)=\"mediaViewer.prev()\">\n <ax-icon class=\"icon icon-chevron-left\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-media-viewer-container>\n </ax-content>\n </div>\n } -->\n <!-- <div>\n <ax-label>{{ t('report-new-issue.attach', { scope: 'help-desk' }) | async }}</ax-label>\n <div\n class=\"flex flex-col items-center justify-center border border-dashed border-secondary-500 rounded-lg p-6\"\n >\n <div class=\"rounded-full bg-surface px-4 py-3\">\n <ax-icon class=\"fa-solid fa-paperclip text-on-surface text-xl\"></ax-icon>\n </div>\n <p class=\"text-lg text-on-surface\">\n {{ t('report-new-issue.attach-box-description', { scope: 'help-desk' }) | async }}\n </p>\n <ax-button\n class=\"w-fit mt-6\"\n [text]=\"t('report-new-issue.start-capture-screen', { scope: 'help-desk' }) | async\"\n color=\"secondary\"\n (onClick)=\"handleStartRecordingClick()\"\n ></ax-button>\n </div>\n </div> -->\n</div>\n<ax-footer>\n <ax-suffix>\n <ax-button\n look=\"solid\"\n color=\"default\"\n [text]=\"'@general:actions.cancel.title' | translate | async\"\n (onClick)=\"onCancelClick()\"\n ></ax-button>\n <ax-button\n look=\"solid\"\n color=\"primary\"\n [text]=\"'@general:actions.save.title' | translate | async\"\n (onClick)=\"handleSubmitClick()\"\n ></ax-button>\n </ax-suffix>\n</ax-footer>\n"],"names":["i7","i8","i10"],"mappings":"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"}
|