@memberjunction/ng-file-storage 2.47.0 → 2.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { Component, EventEmitter, Output } from '@angular/core';
11
2
  import { Metadata, RunView } from '@memberjunction/core';
12
3
  import * as i0 from "@angular/core";
@@ -93,72 +84,65 @@ function CategoryTreeComponent_kendo_dialog_9_Template(rf, ctx) { if (rf & 1) {
93
84
  i0.ɵɵproperty("disabled", ctx_r1.isLoading || !ctx_r1.renameFileCategory.Dirty);
94
85
  } }
95
86
  export class CategoryTreeComponent {
87
+ sharedService;
88
+ categorySelected = new EventEmitter();
89
+ isLoading = false;
90
+ showNew = false;
91
+ newCategoryName = '';
92
+ selectedKeys = [];
93
+ renameFileCategory;
94
+ categoriesData = [];
95
+ md = new Metadata();
96
96
  constructor(sharedService) {
97
97
  this.sharedService = sharedService;
98
- this.categorySelected = new EventEmitter();
99
- this.isLoading = false;
100
- this.showNew = false;
101
- this.newCategoryName = '';
102
- this.selectedKeys = [];
103
- this.categoriesData = [];
104
- this.md = new Metadata();
105
98
  }
106
99
  ngOnInit() {
107
100
  this.Refresh();
108
101
  }
109
- createNewCategory() {
110
- return __awaiter(this, void 0, void 0, function* () {
111
- this.showNew = true;
112
- });
102
+ async createNewCategory() {
103
+ this.showNew = true;
113
104
  }
114
105
  cancelNewCategory() {
115
106
  this.showNew = false;
116
107
  }
117
- handleDrop(e) {
118
- return __awaiter(this, void 0, void 0, function* () {
119
- console.log(e);
120
- const sourceCategory = e.sourceItem.item.dataItem;
121
- const targetCategory = e.destinationItem.item.dataItem;
122
- sourceCategory.ParentID = targetCategory.ID;
123
- this.isLoading = true;
124
- yield sourceCategory.Save();
125
- this.isLoading = false;
126
- });
108
+ async handleDrop(e) {
109
+ console.log(e);
110
+ const sourceCategory = e.sourceItem.item.dataItem;
111
+ const targetCategory = e.destinationItem.item.dataItem;
112
+ sourceCategory.ParentID = targetCategory.ID;
113
+ this.isLoading = true;
114
+ await sourceCategory.Save();
115
+ this.isLoading = false;
127
116
  }
128
- saveNewCategory() {
129
- return __awaiter(this, void 0, void 0, function* () {
130
- this.isLoading = true;
131
- const categoryEntity = yield this.md.GetEntityObject('File Categories');
132
- categoryEntity.NewRecord();
133
- categoryEntity.Name = this.newCategoryName;
134
- yield (categoryEntity === null || categoryEntity === void 0 ? void 0 : categoryEntity.Save());
135
- this.categoriesData = [...this.categoriesData, categoryEntity];
136
- this.showNew = false;
137
- this.isLoading = false;
138
- });
117
+ async saveNewCategory() {
118
+ this.isLoading = true;
119
+ const categoryEntity = await this.md.GetEntityObject('File Categories');
120
+ categoryEntity.NewRecord();
121
+ categoryEntity.Name = this.newCategoryName;
122
+ await categoryEntity?.Save();
123
+ this.categoriesData = [...this.categoriesData, categoryEntity];
124
+ this.showNew = false;
125
+ this.isLoading = false;
139
126
  }
140
- deleteCategory(fileCategory) {
141
- return __awaiter(this, void 0, void 0, function* () {
142
- this.isLoading = true;
143
- const { ID } = fileCategory;
144
- const success = yield fileCategory.Delete();
145
- if (!success) {
146
- console.error('Unable to delete file category:', fileCategory);
147
- this.sharedService.CreateSimpleNotification(`Unable to delete category '${fileCategory.Name}'`, 'error');
148
- return;
149
- }
150
- this.categoriesData = this.categoriesData.filter((c) => c.ID !== ID);
151
- this.clearSelection();
152
- this.isLoading = false;
153
- });
127
+ async deleteCategory(fileCategory) {
128
+ this.isLoading = true;
129
+ const { ID } = fileCategory;
130
+ const success = await fileCategory.Delete();
131
+ if (!success) {
132
+ console.error('Unable to delete file category:', fileCategory);
133
+ this.sharedService.CreateSimpleNotification(`Unable to delete category '${fileCategory.Name}'`, 'error');
134
+ return;
135
+ }
136
+ this.categoriesData = this.categoriesData.filter((c) => c.ID !== ID);
137
+ this.clearSelection();
138
+ this.isLoading = false;
154
139
  }
155
140
  clearSelection() {
156
141
  this.selectedKeys = [];
157
142
  this.categorySelected.emit(undefined);
158
143
  }
159
144
  handleMenuSelect(e) {
160
- var _a, _b, _c;
161
- const action = (_c = (_b = (_a = e.item) === null || _a === void 0 ? void 0 : _a.text) === null || _b === void 0 ? void 0 : _b.toLowerCase()) !== null && _c !== void 0 ? _c : '';
145
+ const action = e.item?.text?.toLowerCase() ?? '';
162
146
  switch (action) {
163
147
  case 'rename':
164
148
  this.renameFileCategory = e.item.data;
@@ -171,61 +155,55 @@ export class CategoryTreeComponent {
171
155
  }
172
156
  }
173
157
  cancelRename() {
174
- var _a;
175
- (_a = this.renameFileCategory) === null || _a === void 0 ? void 0 : _a.Revert();
158
+ this.renameFileCategory?.Revert();
176
159
  this.renameFileCategory = undefined;
177
160
  }
178
- saveRename() {
179
- return __awaiter(this, void 0, void 0, function* () {
180
- var _a;
181
- this.isLoading = true;
182
- yield ((_a = this.renameFileCategory) === null || _a === void 0 ? void 0 : _a.Save());
183
- this.renameFileCategory = undefined;
184
- this.isLoading = false;
185
- });
161
+ async saveRename() {
162
+ this.isLoading = true;
163
+ await this.renameFileCategory?.Save();
164
+ this.renameFileCategory = undefined;
165
+ this.isLoading = false;
186
166
  }
187
- Refresh() {
188
- return __awaiter(this, void 0, void 0, function* () {
189
- this.isLoading = true;
190
- const rv = new RunView();
191
- const result = yield rv.RunView({
192
- EntityName: 'File Categories',
193
- ResultType: 'entity_object',
194
- });
195
- if (result.Success) {
196
- this.categoriesData = result.Results;
197
- }
198
- else {
199
- throw new Error('Error loading file categories: ' + result.ErrorMessage);
200
- }
201
- this.isLoading = false;
167
+ async Refresh() {
168
+ this.isLoading = true;
169
+ const rv = new RunView();
170
+ const result = await rv.RunView({
171
+ EntityName: 'File Categories',
172
+ ResultType: 'entity_object',
202
173
  });
174
+ if (result.Success) {
175
+ this.categoriesData = result.Results;
176
+ }
177
+ else {
178
+ throw new Error('Error loading file categories: ' + result.ErrorMessage);
179
+ }
180
+ this.isLoading = false;
203
181
  }
182
+ static ɵfac = function CategoryTreeComponent_Factory(t) { return new (t || CategoryTreeComponent)(i0.ɵɵdirectiveInject(i1.SharedService)); };
183
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CategoryTreeComponent, selectors: [["mj-files-category-tree"]], outputs: { categorySelected: "categorySelected" }, decls: 10, vars: 4, consts: [["target", ""], ["templateForm", "ngForm"], [1, "container"], [1, "tree-header"], [3, "click"], ["size", "small", 3, "click"], ["textField", "Name", "kendoTreeViewExpandable", "", "kendoTreeViewFlatDataBinding", "", "idField", "ID", "parentIdField", "ParentID", "kendoTreeViewDragAndDrop", "", "kendoTreeViewSelectable", "", 3, "selectionChange", "addItem", "nodes", "selectedKeys"], ["kendoTreeViewNodeTemplate", ""], ["title", "New file category", 3, "minWidth", "width", "close", 4, "ngIf"], ["title", "Rename file category", 3, "minWidth", "width", "close", 4, "ngIf"], [3, "select", "target"], ["text", "Rename", 3, "data"], ["text", "Delete", 3, "data", "disabled"], ["title", "New file category", 3, "close", "minWidth", "width"], ["text", "Name", 1, "k-form"], ["name", "name", "showErrorIcon", "initial", "required", "", 3, "ngModelChange", "ngModel", "showSuccessIcon", "disabled"], ["kendoButton", "", 3, "click", "disabled"], ["kendoButton", "", "themeColor", "primary", 3, "click", "disabled"], ["title", "Rename file category", 3, "close", "minWidth", "width"], ["name", "Name", "showErrorIcon", "initial", "required", "", 3, "ngModelChange", "ngModel", "showSuccessIcon", "disabled"]], template: function CategoryTreeComponent_Template(rf, ctx) { if (rf & 1) {
184
+ i0.ɵɵelementStart(0, "div", 2)(1, "div", 3)(2, "kendo-button", 4);
185
+ i0.ɵɵlistener("click", function CategoryTreeComponent_Template_kendo_button_click_2_listener() { return ctx.clearSelection(); });
186
+ i0.ɵɵtext(3, "All Files");
187
+ i0.ɵɵelementEnd();
188
+ i0.ɵɵelementStart(4, "kendo-button", 5);
189
+ i0.ɵɵlistener("click", function CategoryTreeComponent_Template_kendo_button_click_4_listener() { return ctx.createNewCategory(); });
190
+ i0.ɵɵtext(5, "Add category");
191
+ i0.ɵɵelementEnd()();
192
+ i0.ɵɵelementStart(6, "kendo-treeview", 6);
193
+ i0.ɵɵlistener("selectionChange", function CategoryTreeComponent_Template_kendo_treeview_selectionChange_6_listener($event) { return ctx.categorySelected.emit($event.dataItem.ID); })("addItem", function CategoryTreeComponent_Template_kendo_treeview_addItem_6_listener($event) { return ctx.handleDrop($event); });
194
+ i0.ɵɵtemplate(7, CategoryTreeComponent_ng_template_7_Template, 6, 5, "ng-template", 7);
195
+ i0.ɵɵelementEnd();
196
+ i0.ɵɵtemplate(8, CategoryTreeComponent_kendo_dialog_8_Template, 11, 7, "kendo-dialog", 8)(9, CategoryTreeComponent_kendo_dialog_9_Template, 11, 7, "kendo-dialog", 9);
197
+ i0.ɵɵelementEnd();
198
+ } if (rf & 2) {
199
+ i0.ɵɵadvance(6);
200
+ i0.ɵɵproperty("nodes", ctx.categoriesData)("selectedKeys", ctx.selectedKeys);
201
+ i0.ɵɵadvance(2);
202
+ i0.ɵɵproperty("ngIf", ctx.showNew);
203
+ i0.ɵɵadvance();
204
+ i0.ɵɵproperty("ngIf", !!ctx.renameFileCategory);
205
+ } }, dependencies: [i2.NgIf, i3.TreeViewComponent, i3.NodeTemplateDirective, i3.ExpandDirective, i3.SelectDirective, i3.FlatDataBindingDirective, i3.DragAndDropDirective, i4.ɵNgNoValidate, i4.NgControlStatus, i4.NgControlStatusGroup, i4.RequiredValidator, i4.NgModel, i4.NgForm, i5.DialogComponent, i5.DialogActionsComponent, i6.ButtonComponent, i7.LabelComponent, i8.TextBoxComponent, i9.MenuItemComponent, i9.ContextMenuComponent], styles: ["\n\n.container[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n}\n\nkendo-treeview[_ngcontent-%COMP%] {\n width: 250px;\n}\n\n.tree-header[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n padding-right: 4px;\n}\n\nkendo-label[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n align-items: center;\n column-gap: 12px;\n margin-bottom: 4px;\n}\n\nkendo-label[_ngcontent-%COMP%] kendo-textbox[_ngcontent-%COMP%] {\n width: 100%;\n}\n\nkendo-loader[_ngcontent-%COMP%] {\n padding-left: 4px;\n}"] });
204
206
  }
205
- CategoryTreeComponent.ɵfac = function CategoryTreeComponent_Factory(t) { return new (t || CategoryTreeComponent)(i0.ɵɵdirectiveInject(i1.SharedService)); };
206
- CategoryTreeComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CategoryTreeComponent, selectors: [["mj-files-category-tree"]], outputs: { categorySelected: "categorySelected" }, decls: 10, vars: 4, consts: [["target", ""], ["templateForm", "ngForm"], [1, "container"], [1, "tree-header"], [3, "click"], ["size", "small", 3, "click"], ["textField", "Name", "kendoTreeViewExpandable", "", "kendoTreeViewFlatDataBinding", "", "idField", "ID", "parentIdField", "ParentID", "kendoTreeViewDragAndDrop", "", "kendoTreeViewSelectable", "", 3, "selectionChange", "addItem", "nodes", "selectedKeys"], ["kendoTreeViewNodeTemplate", ""], ["title", "New file category", 3, "minWidth", "width", "close", 4, "ngIf"], ["title", "Rename file category", 3, "minWidth", "width", "close", 4, "ngIf"], [3, "select", "target"], ["text", "Rename", 3, "data"], ["text", "Delete", 3, "data", "disabled"], ["title", "New file category", 3, "close", "minWidth", "width"], ["text", "Name", 1, "k-form"], ["name", "name", "showErrorIcon", "initial", "required", "", 3, "ngModelChange", "ngModel", "showSuccessIcon", "disabled"], ["kendoButton", "", 3, "click", "disabled"], ["kendoButton", "", "themeColor", "primary", 3, "click", "disabled"], ["title", "Rename file category", 3, "close", "minWidth", "width"], ["name", "Name", "showErrorIcon", "initial", "required", "", 3, "ngModelChange", "ngModel", "showSuccessIcon", "disabled"]], template: function CategoryTreeComponent_Template(rf, ctx) { if (rf & 1) {
207
- i0.ɵɵelementStart(0, "div", 2)(1, "div", 3)(2, "kendo-button", 4);
208
- i0.ɵɵlistener("click", function CategoryTreeComponent_Template_kendo_button_click_2_listener() { return ctx.clearSelection(); });
209
- i0.ɵɵtext(3, "All Files");
210
- i0.ɵɵelementEnd();
211
- i0.ɵɵelementStart(4, "kendo-button", 5);
212
- i0.ɵɵlistener("click", function CategoryTreeComponent_Template_kendo_button_click_4_listener() { return ctx.createNewCategory(); });
213
- i0.ɵɵtext(5, "Add category");
214
- i0.ɵɵelementEnd()();
215
- i0.ɵɵelementStart(6, "kendo-treeview", 6);
216
- i0.ɵɵlistener("selectionChange", function CategoryTreeComponent_Template_kendo_treeview_selectionChange_6_listener($event) { return ctx.categorySelected.emit($event.dataItem.ID); })("addItem", function CategoryTreeComponent_Template_kendo_treeview_addItem_6_listener($event) { return ctx.handleDrop($event); });
217
- i0.ɵɵtemplate(7, CategoryTreeComponent_ng_template_7_Template, 6, 5, "ng-template", 7);
218
- i0.ɵɵelementEnd();
219
- i0.ɵɵtemplate(8, CategoryTreeComponent_kendo_dialog_8_Template, 11, 7, "kendo-dialog", 8)(9, CategoryTreeComponent_kendo_dialog_9_Template, 11, 7, "kendo-dialog", 9);
220
- i0.ɵɵelementEnd();
221
- } if (rf & 2) {
222
- i0.ɵɵadvance(6);
223
- i0.ɵɵproperty("nodes", ctx.categoriesData)("selectedKeys", ctx.selectedKeys);
224
- i0.ɵɵadvance(2);
225
- i0.ɵɵproperty("ngIf", ctx.showNew);
226
- i0.ɵɵadvance();
227
- i0.ɵɵproperty("ngIf", !!ctx.renameFileCategory);
228
- } }, dependencies: [i2.NgIf, i3.TreeViewComponent, i3.NodeTemplateDirective, i3.ExpandDirective, i3.SelectDirective, i3.FlatDataBindingDirective, i3.DragAndDropDirective, i4.ɵNgNoValidate, i4.NgControlStatus, i4.NgControlStatusGroup, i4.RequiredValidator, i4.NgModel, i4.NgForm, i5.DialogComponent, i5.DialogActionsComponent, i6.ButtonComponent, i7.LabelComponent, i8.TextBoxComponent, i9.MenuItemComponent, i9.ContextMenuComponent], styles: ["\n\n.container[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n}\n\nkendo-treeview[_ngcontent-%COMP%] {\n width: 250px;\n}\n\n.tree-header[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n padding-right: 4px;\n}\n\nkendo-label[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n align-items: center;\n column-gap: 12px;\n margin-bottom: 4px;\n}\n\nkendo-label[_ngcontent-%COMP%] kendo-textbox[_ngcontent-%COMP%] {\n width: 100%;\n}\n\nkendo-loader[_ngcontent-%COMP%] {\n padding-left: 4px;\n}"] });
229
207
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CategoryTreeComponent, [{
230
208
  type: Component,
231
209
  args: [{ selector: 'mj-files-category-tree', template: "<div class=\"container\">\n <div class=\"tree-header\">\n <kendo-button (click)=\"clearSelection()\">All Files</kendo-button>\n <kendo-button (click)=\"createNewCategory()\" size=\"small\">Add category</kendo-button>\n </div>\n <kendo-treeview\n [nodes]=\"categoriesData\"\n textField=\"Name\"\n kendoTreeViewExpandable\n kendoTreeViewFlatDataBinding\n idField=\"ID\"\n parentIdField=\"ParentID\"\n (selectionChange)=\"categorySelected.emit($event.dataItem.ID)\"\n kendoTreeViewDragAndDrop\n kendoTreeViewSelectable\n (addItem)=\"handleDrop($event)\"\n [selectedKeys]=\"selectedKeys\"\n >\n <ng-template kendoTreeViewNodeTemplate let-dataItem>\n <span #target>{{ dataItem.Name }} </span>\n <kendo-contextmenu [target]=\"target\" (select)=\"handleMenuSelect($event)\">\n <kendo-menu-item text=\"Rename\" [data]=\"dataItem\"> </kendo-menu-item>\n <kendo-menu-item text=\"Delete\" [data]=\"dataItem\" [disabled]=\"true\"> </kendo-menu-item>\n </kendo-contextmenu>\n </ng-template>\n </kendo-treeview>\n\n <kendo-dialog title=\"New file category\" *ngIf=\"showNew\" (close)=\"cancelNewCategory()\" [minWidth]=\"250\" [width]=\"450\">\n <div class=\"container\">\n <form #templateForm=\"ngForm\">\n <kendo-label class=\"k-form\" text=\"Name\">\n <kendo-textbox\n name=\"name\"\n [(ngModel)]=\"newCategoryName\"\n [showSuccessIcon]=\"newCategoryName.length > 0\"\n showErrorIcon=\"initial\"\n required\n [disabled]=\"isLoading\"\n ></kendo-textbox>\n </kendo-label>\n </form>\n </div>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"cancelNewCategory()\" [disabled]=\"isLoading\">Cancel</button>\n <button kendoButton (click)=\"saveNewCategory()\" [disabled]=\"isLoading\" themeColor=\"primary\">Save</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n\n <kendo-dialog title=\"Rename file category\" *ngIf=\"!!renameFileCategory\" (close)=\"cancelRename()\" [minWidth]=\"250\" [width]=\"450\">\n <div class=\"container\">\n <form #templateForm=\"ngForm\">\n <kendo-label class=\"k-form\" text=\"Name\">\n <kendo-textbox\n name=\"Name\"\n [(ngModel)]=\"renameFileCategory.Name\"\n [showSuccessIcon]=\"renameFileCategory.Name.length > 0\"\n showErrorIcon=\"initial\"\n required\n [disabled]=\"isLoading\"\n ></kendo-textbox>\n </kendo-label>\n </form>\n </div>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"cancelRename()\" [disabled]=\"isLoading\">Cancel</button>\n <button kendoButton (click)=\"saveRename()\" [disabled]=\"isLoading || !renameFileCategory.Dirty\" themeColor=\"primary\">Save</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n</div>\n", styles: ["/* Styles for category tree */\n.container {\n display: flex;\n flex-direction: column;\n}\n\nkendo-treeview {\n width: 250px;\n}\n\n.tree-header {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n padding-right: 4px;\n}\n\nkendo-label {\n display: flex;\n flex-direction: row;\n align-items: center;\n column-gap: 12px;\n margin-bottom: 4px;\n}\n\nkendo-label kendo-textbox {\n width: 100%;\n}\n\nkendo-loader {\n padding-left: 4px;\n}"] }]
@@ -1 +1 @@
1
- {"version":3,"file":"category-tree.js","sourceRoot":"","sources":["../../../src/lib/category-tree/category-tree.ts","../../../src/lib/category-tree/category-tree.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"category-tree.js","sourceRoot":"","sources":["../../../src/lib/category-tree/category-tree.ts","../../../src/lib/category-tree/category-tree.html"],"names":[],"mappings":"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"}
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
11
2
  import { Metadata, RunView } from '@memberjunction/core';
12
3
  import { FileSchema } from '@memberjunction/core-entities';
@@ -74,31 +65,28 @@ const FileUploadMutationSchema = z.object({
74
65
  }),
75
66
  });
76
67
  export class FileUploadComponent {
68
+ ConfirmQueue = [];
69
+ UploadQueue = [];
70
+ defaultProviderID = '';
71
+ md = new Metadata();
77
72
  get IsUploading() {
78
73
  return this.UploadQueue.length + this.ConfirmQueue.length > 0;
79
74
  }
80
- constructor() {
81
- this.ConfirmQueue = [];
82
- this.UploadQueue = [];
83
- this.defaultProviderID = '';
84
- this.md = new Metadata();
85
- this.disabled = false;
86
- this.CategoryID = undefined;
87
- this.uploadStarted = new EventEmitter();
88
- this.fileUpload = new EventEmitter();
89
- }
75
+ constructor() { }
76
+ disabled = false;
77
+ CategoryID = undefined;
78
+ uploadStarted = new EventEmitter();
79
+ fileUpload = new EventEmitter();
90
80
  ngOnInit() {
91
81
  this.Refresh();
92
82
  }
93
- Refresh() {
94
- return __awaiter(this, void 0, void 0, function* () {
95
- const rv = new RunView();
96
- const viewResults = yield rv.RunView({ EntityName: 'File Storage Providers', ExtraFilter: 'IsActive = 1', OrderBy: 'Priority DESC' });
97
- const provider = viewResults.Results[0];
98
- if (typeof (provider === null || provider === void 0 ? void 0 : provider.ID) === 'string') {
99
- this.defaultProviderID = provider.ID;
100
- }
101
- });
83
+ async Refresh() {
84
+ const rv = new RunView();
85
+ const viewResults = await rv.RunView({ EntityName: 'File Storage Providers', ExtraFilter: 'IsActive = 1', OrderBy: 'Priority DESC' });
86
+ const provider = viewResults.Results[0];
87
+ if (typeof provider?.ID === 'string') {
88
+ this.defaultProviderID = provider.ID;
89
+ }
102
90
  }
103
91
  Confirm() {
104
92
  const confirmed = this.ConfirmQueue.shift();
@@ -106,99 +94,91 @@ export class FileUploadComponent {
106
94
  this._uploadFile(...confirmed);
107
95
  }
108
96
  }
109
- CancelConfirm() {
110
- return __awaiter(this, void 0, void 0, function* () {
111
- const cancelled = this.ConfirmQueue.shift();
112
- if (cancelled) {
113
- const [file, fileRecord] = cancelled;
114
- const fileEntity = yield this.md.GetEntityObject('Files');
115
- yield fileEntity.LoadFromData(fileRecord);
116
- yield fileEntity.Delete();
117
- this.fileUpload.emit({ success: false, file });
118
- }
119
- });
97
+ async CancelConfirm() {
98
+ const cancelled = this.ConfirmQueue.shift();
99
+ if (cancelled) {
100
+ const [file, fileRecord] = cancelled;
101
+ const fileEntity = await this.md.GetEntityObject('Files');
102
+ await fileEntity.LoadFromData(fileRecord);
103
+ await fileEntity.Delete();
104
+ this.fileUpload.emit({ success: false, file });
105
+ }
120
106
  }
121
- SelectEventHandler(e) {
122
- return __awaiter(this, void 0, void 0, function* () {
123
- e.preventDefault();
124
- this.uploadStarted.emit();
125
- this.UploadQueue = e.files;
126
- this._processUploadQueue();
127
- });
107
+ async SelectEventHandler(e) {
108
+ e.preventDefault();
109
+ this.uploadStarted.emit();
110
+ this.UploadQueue = e.files;
111
+ this._processUploadQueue();
128
112
  }
129
- _processUploadQueue() {
130
- return __awaiter(this, void 0, void 0, function* () {
131
- // for each selected file to upload
132
- let file = this.UploadQueue.shift();
133
- while (file) {
134
- const input = {
135
- Name: file.name,
136
- ProviderID: this.defaultProviderID,
137
- Status: 'Pending',
138
- CategoryID: this.CategoryID,
139
- };
140
- // call the gql
141
- const result = yield GraphQLDataProvider.ExecuteGQL(FileUploadMutation, { input });
142
- // make sure the response is correct
143
- const parsedResult = FileUploadMutationSchema.safeParse(result);
144
- if (parsedResult.success) {
145
- const { File, UploadUrl, NameExists } = parsedResult.data.CreateFile;
146
- const uploadTuple = [file, File, UploadUrl];
147
- // Confirm we want to overwrite
148
- if (NameExists) {
149
- this.ConfirmQueue.push(uploadTuple);
150
- }
151
- else {
152
- yield this._uploadFile(...uploadTuple);
153
- }
113
+ async _processUploadQueue() {
114
+ // for each selected file to upload
115
+ let file = this.UploadQueue.shift();
116
+ while (file) {
117
+ const input = {
118
+ Name: file.name,
119
+ ProviderID: this.defaultProviderID,
120
+ Status: 'Pending',
121
+ CategoryID: this.CategoryID,
122
+ };
123
+ // call the gql
124
+ const result = await GraphQLDataProvider.ExecuteGQL(FileUploadMutation, { input });
125
+ // make sure the response is correct
126
+ const parsedResult = FileUploadMutationSchema.safeParse(result);
127
+ if (parsedResult.success) {
128
+ const { File, UploadUrl, NameExists } = parsedResult.data.CreateFile;
129
+ const uploadTuple = [file, File, UploadUrl];
130
+ // Confirm we want to overwrite
131
+ if (NameExists) {
132
+ this.ConfirmQueue.push(uploadTuple);
154
133
  }
155
134
  else {
156
- console.error('The API returned an unexpected result', parsedResult.error.issues);
157
- this.fileUpload.emit({ success: false, file });
135
+ await this._uploadFile(...uploadTuple);
158
136
  }
159
- file = this.UploadQueue.shift();
160
137
  }
161
- });
162
- }
163
- _uploadFile(file, fileRecord, uploadUrl) {
164
- return __awaiter(this, void 0, void 0, function* () {
165
- try {
166
- // now upload to the url
167
- yield window.fetch(uploadUrl, {
168
- method: 'PUT',
169
- headers: { 'x-ms-blob-type': 'BlockBlob' },
170
- body: file.rawFile,
171
- });
172
- // now update that file to set status
173
- const fileEntity = yield this.md.GetEntityObject('Files');
174
- yield fileEntity.LoadFromData(fileRecord);
175
- fileEntity.Status = 'Uploaded';
176
- yield fileEntity.Save();
177
- // emit an event about a new file uploaded, include the file data
178
- this.fileUpload.emit({ success: true, file: fileEntity });
179
- // Could also emit a progress event with each iteration
180
- }
181
- catch (e) {
182
- console.error(e);
183
- // something failed when actually uploading or when updating the API, what do to about pending file?
138
+ else {
139
+ console.error('The API returned an unexpected result', parsedResult.error.issues);
184
140
  this.fileUpload.emit({ success: false, file });
185
141
  }
186
- });
142
+ file = this.UploadQueue.shift();
143
+ }
144
+ }
145
+ async _uploadFile(file, fileRecord, uploadUrl) {
146
+ try {
147
+ // now upload to the url
148
+ await window.fetch(uploadUrl, {
149
+ method: 'PUT',
150
+ headers: { 'x-ms-blob-type': 'BlockBlob' },
151
+ body: file.rawFile,
152
+ });
153
+ // now update that file to set status
154
+ const fileEntity = await this.md.GetEntityObject('Files');
155
+ await fileEntity.LoadFromData(fileRecord);
156
+ fileEntity.Status = 'Uploaded';
157
+ await fileEntity.Save();
158
+ // emit an event about a new file uploaded, include the file data
159
+ this.fileUpload.emit({ success: true, file: fileEntity });
160
+ // Could also emit a progress event with each iteration
161
+ }
162
+ catch (e) {
163
+ console.error(e);
164
+ // something failed when actually uploading or when updating the API, what do to about pending file?
165
+ this.fileUpload.emit({ success: false, file });
166
+ }
187
167
  }
168
+ static ɵfac = function FileUploadComponent_Factory(t) { return new (t || FileUploadComponent)(); };
169
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FileUploadComponent, selectors: [["mj-files-file-upload"]], inputs: { disabled: "disabled", CategoryID: "CategoryID" }, outputs: { uploadStarted: "uploadStarted", fileUpload: "fileUpload" }, decls: 3, vars: 3, consts: [[3, "select", "disabled", "multiple"], ["title", "Please confirm", 3, "minWidth", "width", "close", 4, "ngIf"], ["title", "Please confirm", 3, "close", "minWidth", "width"], [2, "margin", "30px", "text-align", "center"], ["kendoButton", "", 3, "click"], ["kendoButton", "", "themeColor", "primary", 3, "click"]], template: function FileUploadComponent_Template(rf, ctx) { if (rf & 1) {
170
+ i0.ɵɵelementStart(0, "div")(1, "kendo-fileselect", 0);
171
+ i0.ɵɵlistener("select", function FileUploadComponent_Template_kendo_fileselect_select_1_listener($event) { return ctx.SelectEventHandler($event); });
172
+ i0.ɵɵelementEnd();
173
+ i0.ɵɵtemplate(2, FileUploadComponent_kendo_dialog_2_Template, 8, 3, "kendo-dialog", 1);
174
+ i0.ɵɵelementEnd();
175
+ } if (rf & 2) {
176
+ i0.ɵɵadvance();
177
+ i0.ɵɵproperty("disabled", ctx.IsUploading || ctx.disabled)("multiple", false);
178
+ i0.ɵɵadvance();
179
+ i0.ɵɵproperty("ngIf", ctx.ConfirmQueue.length > 0);
180
+ } }, dependencies: [i1.NgIf, i2.DialogComponent, i2.DialogActionsComponent, i3.ButtonComponent, i4.FileSelectComponent] });
188
181
  }
189
- FileUploadComponent.ɵfac = function FileUploadComponent_Factory(t) { return new (t || FileUploadComponent)(); };
190
- FileUploadComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FileUploadComponent, selectors: [["mj-files-file-upload"]], inputs: { disabled: "disabled", CategoryID: "CategoryID" }, outputs: { uploadStarted: "uploadStarted", fileUpload: "fileUpload" }, decls: 3, vars: 3, consts: [[3, "select", "disabled", "multiple"], ["title", "Please confirm", 3, "minWidth", "width", "close", 4, "ngIf"], ["title", "Please confirm", 3, "close", "minWidth", "width"], [2, "margin", "30px", "text-align", "center"], ["kendoButton", "", 3, "click"], ["kendoButton", "", "themeColor", "primary", 3, "click"]], template: function FileUploadComponent_Template(rf, ctx) { if (rf & 1) {
191
- i0.ɵɵelementStart(0, "div")(1, "kendo-fileselect", 0);
192
- i0.ɵɵlistener("select", function FileUploadComponent_Template_kendo_fileselect_select_1_listener($event) { return ctx.SelectEventHandler($event); });
193
- i0.ɵɵelementEnd();
194
- i0.ɵɵtemplate(2, FileUploadComponent_kendo_dialog_2_Template, 8, 3, "kendo-dialog", 1);
195
- i0.ɵɵelementEnd();
196
- } if (rf & 2) {
197
- i0.ɵɵadvance();
198
- i0.ɵɵproperty("disabled", ctx.IsUploading || ctx.disabled)("multiple", false);
199
- i0.ɵɵadvance();
200
- i0.ɵɵproperty("ngIf", ctx.ConfirmQueue.length > 0);
201
- } }, dependencies: [i1.NgIf, i2.DialogComponent, i2.DialogActionsComponent, i3.ButtonComponent, i4.FileSelectComponent] });
202
182
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FileUploadComponent, [{
203
183
  type: Component,
204
184
  args: [{ selector: 'mj-files-file-upload', template: "<div>\n <kendo-fileselect [disabled]=\"IsUploading || disabled\" [multiple]=\"false\" (select)=\"SelectEventHandler($event)\"> </kendo-fileselect>\n <kendo-dialog title=\"Please confirm\" *ngIf=\"ConfirmQueue.length > 0\" (close)=\"CancelConfirm()\" [minWidth]=\"250\" [width]=\"450\">\n <p style=\"margin: 30px; text-align: center\">\n This will overwrite an existing file named '{{ConfirmQueue[0][0].name}}'. Are you sure you want to continue?\n </p>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"CancelConfirm()\">Cancel</button>\n <button kendoButton (click)=\"Confirm()\" themeColor=\"primary\">Overwrite</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n</div>\n" }]
@@ -1 +1 @@
1
- {"version":3,"file":"file-upload.js","sourceRoot":"","sources":["../../../src/lib/file-upload/file-upload.ts","../../../src/lib/file-upload/file-upload.html"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAc,UAAU,EAA6B,MAAM,+BAA+B,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,sCAAsC,CAAC;AAGhF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;;;;;;;;ICJtB,uCAA8H;IAAzD,8LAAS,sBAAe,KAAC;IAC5F,4BAA4C;IAC1C,YACF;IAAA,iBAAI;IAEF,AADF,4CAAsB,gBAC0B;IAA1B,wLAAS,sBAAe,KAAC;IAAC,sBAAM;IAAA,iBAAS;IAC7D,iCAA6D;IAAzC,wLAAS,gBAAS,KAAC;IAAsB,yBAAS;IAE1E,AADE,AADwE,iBAAS,EAC1D,EACV;;;IARiG,AAAjB,8BAAgB,cAAc;IAEzH,eACF;IADE,gJACF;;ADKJ,MAAM,kBAAkB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;CAe7B,CAAC;AAEF,MAAM,kBAAkB,GAAG,GAAG,CAAA;IAC1B,kBAAkB;;;;;;;;;;CAUrB,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;QACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;KACpF,CAAC;CACH,CAAC,CAAC;AAUH,MAAM,OAAO,mBAAmB;IAM9B,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IAChE,CAAC;IAED;QATO,iBAAY,GAAuB,EAAE,CAAC;QACtC,gBAAW,GAAoB,EAAE,CAAC;QACjC,sBAAiB,GAAG,EAAE,CAAC;QACvB,OAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;QAQnB,aAAQ,GAAG,KAAK,CAAC;QACjB,eAAU,GAAuB,SAAS,CAAC;QAC1C,kBAAa,GAAG,IAAI,YAAY,EAAQ,CAAC;QACzC,eAAU,GAAG,IAAI,YAAY,EAAmB,CAAC;IAL5C,CAAC;IAOhB,QAAQ;QACN,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAEK,OAAO;;YACX,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,wBAAwB,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;YACtI,MAAM,QAAQ,GAA0C,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC/E,IAAI,OAAO,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,EAAE,CAAA,KAAK,QAAQ,EAAE,CAAC;gBACrC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KAAA;IAED,OAAO;QACL,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC5C,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAEK,aAAa;;YACjB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YAC5C,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC;gBAErC,MAAM,UAAU,GAAe,MAAM,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;gBACtE,MAAM,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAC1C,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;gBAE1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;KAAA;IAEK,kBAAkB,CAAC,CAAc;;YACrC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAE1B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC;YAC3B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7B,CAAC;KAAA;IAEa,mBAAmB;;YAC/B,mCAAmC;YACnC,IAAI,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YACpC,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,KAAK,GAAG;oBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,UAAU,EAAE,IAAI,CAAC,iBAAiB;oBAClC,MAAM,EAAE,SAAS;oBACjB,UAAU,EAAE,IAAI,CAAC,UAAU;iBAC5B,CAAC;gBAEF,eAAe;gBACf,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBAEnF,oCAAoC;gBACpC,MAAM,YAAY,GAAG,wBAAwB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAChE,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACzB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;oBACrE,MAAM,WAAW,GAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;oBAEzD,+BAA+B;oBAC/B,IAAI,UAAU,EAAE,CAAC;wBACf,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACtC,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,CAAC;oBACzC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAClF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjD,CAAC;gBACD,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;KAAA;IAEa,WAAW,CAAC,IAAc,EAAE,UAAmB,EAAE,SAAiB;;YAC9E,IAAI,CAAC;gBACH,wBAAwB;gBACxB,MAAM,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE;oBAC5B,MAAM,EAAE,KAAK;oBACb,OAAO,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE;oBAC1C,IAAI,EAAE,IAAI,CAAC,OAAO;iBACnB,CAAC,CAAC;gBAEH,qCAAqC;gBACrC,MAAM,UAAU,GAAe,MAAM,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;gBACtE,MAAM,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAC1C,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC;gBAC/B,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;gBAExB,iEAAiE;gBACjE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC1D,uDAAuD;YACzD,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,oGAAoG;gBACpG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;KAAA;;sFAnHU,mBAAmB;sEAAnB,mBAAmB;QCvD9B,AADF,2BAAK,0BAC6G;QAAtC,kHAAU,8BAA0B,IAAC;QAAE,iBAAmB;QACpI,sFAA8H;QAShI,iBAAM;;QAVc,cAAoC;QAAC,AAArC,0DAAoC,mBAAmB;QACnC,cAA6B;QAA7B,kDAA6B;;iFDsDxD,mBAAmB;cAL/B,SAAS;2BACE,sBAAsB;oBAgBvB,QAAQ;kBAAhB,KAAK;YACG,UAAU;kBAAlB,KAAK;YACI,aAAa;kBAAtB,MAAM;YACG,UAAU;kBAAnB,MAAM;;kFAfI,mBAAmB"}
1
+ {"version":3,"file":"file-upload.js","sourceRoot":"","sources":["../../../src/lib/file-upload/file-upload.ts","../../../src/lib/file-upload/file-upload.html"],"names":[],"mappings":"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"}
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { Component, Input } from '@angular/core';
11
2
  import { RunView } from '@memberjunction/core';
12
3
  import { GraphQLDataProvider, gql } from '@memberjunction/graphql-dataprovider';
@@ -84,14 +75,13 @@ function FilesGridComponent_kendo_dialog_10_Template(rf, ctx) { if (rf & 1) {
84
75
  * @param contentType - The content type of the file. Defaults to 'application/octet-stream'.
85
76
  * @returns Promise<void> - A promise that resolves when the file download is complete.
86
77
  */
87
- const downloadFromUrl = (url, fileName, contentType) => __awaiter(void 0, void 0, void 0, function* () {
88
- var _a;
78
+ const downloadFromUrl = async (url, fileName, contentType) => {
89
79
  // First, fetch the data and create a blob with the correct content type
90
- const response = yield fetch(url);
80
+ const response = await fetch(url);
91
81
  if (!response.ok) {
92
82
  return false;
93
83
  }
94
- const rawBlob = yield response.blob();
84
+ const rawBlob = await response.blob();
95
85
  const blob = new Blob([rawBlob], { type: contentType || 'application/octet-stream' });
96
86
  // Then add a temporary link to the document and click it
97
87
  const link = document.createElement('a');
@@ -100,10 +90,10 @@ const downloadFromUrl = (url, fileName, contentType) => __awaiter(void 0, void 0
100
90
  link.setAttribute('download', fileName);
101
91
  document.body.appendChild(link);
102
92
  link.click();
103
- (_a = link.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(link);
93
+ link.parentNode?.removeChild(link);
104
94
  window.URL.revokeObjectURL(blobUrl);
105
95
  return true;
106
- });
96
+ };
107
97
  const FileDownloadQuery = gql `
108
98
  query FileDownloadUrl($FileID: String!) {
109
99
  File(ID: $FileID) {
@@ -119,59 +109,14 @@ const FileDownloadQuerySchema = z.object({
119
109
  }),
120
110
  });
121
111
  export class FilesGridComponent {
112
+ sharedService;
113
+ files = [];
114
+ isLoading = false;
115
+ editFile;
122
116
  constructor(sharedService) {
123
117
  this.sharedService = sharedService;
124
- this.files = [];
125
- this.isLoading = false;
126
- this.CategoryID = undefined;
127
- /**
128
- * Downloads a file using the provided FileEntity.
129
- *
130
- * @param file - The FileEntity representing the file to be downloaded.
131
- * @returns Promise<void> - A promise that resolves when the file download is complete.
132
- * @throws Error - If there is an error during the file download process.
133
- */
134
- this.downloadFile = (file) => __awaiter(this, void 0, void 0, function* () {
135
- this.isLoading = true;
136
- const result = yield GraphQLDataProvider.ExecuteGQL(FileDownloadQuery, {
137
- FileID: file.ID,
138
- });
139
- const parsedResult = FileDownloadQuerySchema.safeParse(result);
140
- if (parsedResult.success) {
141
- const downloadUrl = parsedResult.data.File.DownloadUrl;
142
- const success = downloadFromUrl(downloadUrl, file.Name, file.ContentType);
143
- if (!success) {
144
- this.sharedService.CreateSimpleNotification(`Unable to download file ${file.ID} ${file.Name}`, 'error');
145
- }
146
- }
147
- else {
148
- console.error(parsedResult.error);
149
- this.sharedService.CreateSimpleNotification(`Unable to download file ${file.ID} ${file.Name}`, 'error');
150
- }
151
- this.isLoading = false;
152
- });
153
- /**
154
- * Deletes a file using the provided FileEntity.
155
- *
156
- * @param file - The FileEntity representing the file to be deleted.
157
- * @returns Promise<void> - A promise that resolves when the file deletion is complete.
158
- * @throws Error - If there is an error during the file deletion process.
159
- */
160
- this.deleteFile = (file) => __awaiter(this, void 0, void 0, function* () {
161
- this.isLoading = true;
162
- const ID = file.ID;
163
- const Name = file.Name;
164
- const deleteResult = yield file.Delete();
165
- if (deleteResult) {
166
- this.sharedService.CreateSimpleNotification(`Successfully deleted file ${ID} ${Name}`, 'info');
167
- this.files = this.files.filter((f) => typeof f.ID === 'string' && f.ID !== ID);
168
- }
169
- else {
170
- this.sharedService.CreateSimpleNotification(`Unable to delete file ${ID} ${Name}`, 'error');
171
- }
172
- this.isLoading = false;
173
- });
174
118
  }
119
+ CategoryID = undefined;
175
120
  ngOnInit() {
176
121
  this.Refresh();
177
122
  }
@@ -188,8 +133,7 @@ export class FilesGridComponent {
188
133
  * @returns void
189
134
  */
190
135
  resetEditFile() {
191
- var _a;
192
- (_a = this.editFile) === null || _a === void 0 ? void 0 : _a.Revert();
136
+ this.editFile?.Revert();
193
137
  this.editFile = undefined;
194
138
  }
195
139
  /**
@@ -200,23 +144,47 @@ export class FilesGridComponent {
200
144
  * @returns Promise<void> - A promise that resolves when the save operation is complete.
201
145
  * @throws Error - If there is an error during the save operation.
202
146
  */
203
- saveEditFile() {
204
- return __awaiter(this, void 0, void 0, function* () {
205
- if (this.editFile) {
206
- this.isLoading = true;
207
- //
208
- const success = yield this.editFile.Save();
209
- if (success) {
210
- this.sharedService.CreateSimpleNotification(`Successfully saved file ${this.editFile.ID} ${this.editFile.Name}`, 'success');
211
- this.editFile = undefined;
212
- }
213
- else {
214
- this.sharedService.CreateSimpleNotification(`Unable to save file ${this.editFile.ID} ${this.editFile.Name}`, 'error');
215
- }
216
- this.isLoading = false;
147
+ async saveEditFile() {
148
+ if (this.editFile) {
149
+ this.isLoading = true;
150
+ //
151
+ const success = await this.editFile.Save();
152
+ if (success) {
153
+ this.sharedService.CreateSimpleNotification(`Successfully saved file ${this.editFile.ID} ${this.editFile.Name}`, 'success');
154
+ this.editFile = undefined;
217
155
  }
218
- });
156
+ else {
157
+ this.sharedService.CreateSimpleNotification(`Unable to save file ${this.editFile.ID} ${this.editFile.Name}`, 'error');
158
+ }
159
+ this.isLoading = false;
160
+ }
219
161
  }
162
+ /**
163
+ * Downloads a file using the provided FileEntity.
164
+ *
165
+ * @param file - The FileEntity representing the file to be downloaded.
166
+ * @returns Promise<void> - A promise that resolves when the file download is complete.
167
+ * @throws Error - If there is an error during the file download process.
168
+ */
169
+ downloadFile = async (file) => {
170
+ this.isLoading = true;
171
+ const result = await GraphQLDataProvider.ExecuteGQL(FileDownloadQuery, {
172
+ FileID: file.ID,
173
+ });
174
+ const parsedResult = FileDownloadQuerySchema.safeParse(result);
175
+ if (parsedResult.success) {
176
+ const downloadUrl = parsedResult.data.File.DownloadUrl;
177
+ const success = downloadFromUrl(downloadUrl, file.Name, file.ContentType);
178
+ if (!success) {
179
+ this.sharedService.CreateSimpleNotification(`Unable to download file ${file.ID} ${file.Name}`, 'error');
180
+ }
181
+ }
182
+ else {
183
+ console.error(parsedResult.error);
184
+ this.sharedService.CreateSimpleNotification(`Unable to download file ${file.ID} ${file.Name}`, 'error');
185
+ }
186
+ this.isLoading = false;
187
+ };
220
188
  /**
221
189
  * Determines whether a file can be deleted based on its status and creation time.
222
190
  *
@@ -229,6 +197,27 @@ export class FilesGridComponent {
229
197
  // console.log({ status, deletable, ID: file.ID, CreatedAt: file.CreatedAt });
230
198
  return deletable;
231
199
  }
200
+ /**
201
+ * Deletes a file using the provided FileEntity.
202
+ *
203
+ * @param file - The FileEntity representing the file to be deleted.
204
+ * @returns Promise<void> - A promise that resolves when the file deletion is complete.
205
+ * @throws Error - If there is an error during the file deletion process.
206
+ */
207
+ deleteFile = async (file) => {
208
+ this.isLoading = true;
209
+ const ID = file.ID;
210
+ const Name = file.Name;
211
+ const deleteResult = await file.Delete();
212
+ if (deleteResult) {
213
+ this.sharedService.CreateSimpleNotification(`Successfully deleted file ${ID} ${Name}`, 'info');
214
+ this.files = this.files.filter((f) => typeof f.ID === 'string' && f.ID !== ID);
215
+ }
216
+ else {
217
+ this.sharedService.CreateSimpleNotification(`Unable to delete file ${ID} ${Name}`, 'error');
218
+ }
219
+ this.isLoading = false;
220
+ };
232
221
  /**
233
222
  * Handles the file upload event, sending a notification in case of failure and otherwise adding
234
223
  * the newly uploaded files to the files currently displayed.
@@ -247,42 +236,43 @@ export class FilesGridComponent {
247
236
  * Refreshes the data by running a view and loading the files.
248
237
  * @returns {Promise<void>} - A promise that resolves when the data is refreshed.
249
238
  */
250
- Refresh() {
251
- return __awaiter(this, void 0, void 0, function* () {
252
- var _a;
253
- this.isLoading = true;
254
- const rv = new RunView();
255
- const result = yield rv.RunView(Object.assign({ EntityName: 'Files', ResultType: 'entity_object' }, (this.CategoryID !== undefined && { ExtraFilter: `CategoryID='${this.CategoryID}'` })));
256
- if (result.Success) {
257
- this.files = (_a = result.Results) !== null && _a !== void 0 ? _a : [];
258
- }
259
- else {
260
- throw new Error('Error loading files: ' + result.ErrorMessage);
261
- }
262
- this.isLoading = false;
239
+ async Refresh() {
240
+ this.isLoading = true;
241
+ const rv = new RunView();
242
+ const result = await rv.RunView({
243
+ EntityName: 'Files',
244
+ ResultType: 'entity_object',
245
+ ...(this.CategoryID !== undefined && { ExtraFilter: `CategoryID='${this.CategoryID}'` }),
263
246
  });
247
+ if (result.Success) {
248
+ this.files = result.Results ?? [];
249
+ }
250
+ else {
251
+ throw new Error('Error loading files: ' + result.ErrorMessage);
252
+ }
253
+ this.isLoading = false;
264
254
  }
255
+ static ɵfac = function FilesGridComponent_Factory(t) { return new (t || FilesGridComponent)(i0.ɵɵdirectiveInject(i1.SharedService)); };
256
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilesGridComponent, selectors: [["mj-files-grid"]], inputs: { CategoryID: "CategoryID" }, features: [i0.ɵɵNgOnChangesFeature], decls: 11, vars: 5, consts: [["templateForm", "ngForm"], [1, "container"], [3, "data", "loading"], ["field", "ID", "title", "ID"], ["field", "Category", "title", "Category"], ["field", "Name", "title", "Name"], ["field", "Description", "title", "Description"], ["field", "Status", "title", "Status"], ["field", "Actions"], ["kendoGridCellTemplate", ""], [3, "uploadStarted", "fileUpload", "CategoryID", "disabled"], ["title", "Edit file", 3, "minWidth", "width", "close", 4, "ngIf"], [3, "click", "disabled"], [1, "fa-solid", "fa-download"], [1, "fa-solid", "fa-trash-can"], [1, "fa-solid", "fa-pen-to-square"], ["title", "Edit file", 3, "close", "minWidth", "width"], ["text", "Name", 1, "k-form"], ["name", "name", "showErrorIcon", "initial", "required", "", 3, "ngModelChange", "ngModel", "showSuccessIcon", "disabled"], ["text", "Description", 1, "k-form"], ["name", "description", 3, "ngModelChange", "ngModel", "disabled"], ["kendoButton", "", 3, "click", "disabled"], ["kendoButton", "", "themeColor", "primary", 3, "click", "disabled"]], template: function FilesGridComponent_Template(rf, ctx) { if (rf & 1) {
257
+ i0.ɵɵelementStart(0, "div", 1)(1, "kendo-grid", 2);
258
+ i0.ɵɵelement(2, "kendo-grid-column", 3)(3, "kendo-grid-column", 4)(4, "kendo-grid-column", 5)(5, "kendo-grid-column", 6)(6, "kendo-grid-column", 7);
259
+ i0.ɵɵelementStart(7, "kendo-grid-column", 8);
260
+ i0.ɵɵtemplate(8, FilesGridComponent_ng_template_8_Template, 6, 3, "ng-template", 9);
261
+ i0.ɵɵelementEnd()();
262
+ i0.ɵɵelementStart(9, "mj-files-file-upload", 10);
263
+ i0.ɵɵlistener("uploadStarted", function FilesGridComponent_Template_mj_files_file_upload_uploadStarted_9_listener() { return ctx.isLoading = true; })("fileUpload", function FilesGridComponent_Template_mj_files_file_upload_fileUpload_9_listener($event) { return ctx.handleFileUpload($event); });
264
+ i0.ɵɵelementEnd();
265
+ i0.ɵɵtemplate(10, FilesGridComponent_kendo_dialog_10_Template, 13, 9, "kendo-dialog", 11);
266
+ i0.ɵɵelementEnd();
267
+ } if (rf & 2) {
268
+ i0.ɵɵadvance();
269
+ i0.ɵɵproperty("data", ctx.files)("loading", ctx.isLoading);
270
+ i0.ɵɵadvance(8);
271
+ i0.ɵɵproperty("CategoryID", ctx.CategoryID)("disabled", ctx.isLoading);
272
+ i0.ɵɵadvance();
273
+ i0.ɵɵproperty("ngIf", ctx.editFile);
274
+ } }, dependencies: [i2.NgIf, i3.ɵNgNoValidate, i3.NgControlStatus, i3.NgControlStatusGroup, i3.RequiredValidator, i3.NgModel, i3.NgForm, i4.DialogComponent, i4.DialogActionsComponent, i5.ButtonComponent, i6.LabelComponent, i7.GridComponent, i7.ColumnComponent, i7.CellTemplateDirective, i8.TextBoxComponent, i9.FileUploadComponent], styles: [".container[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n}\n\nkendo-label[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n align-items: center;\n column-gap: 12px;\n margin-bottom: 4px;\n}\n\nkendo-label[_ngcontent-%COMP%] kendo-textbox[_ngcontent-%COMP%] {\n width: 100%;\n}"] });
265
275
  }
266
- FilesGridComponent.ɵfac = function FilesGridComponent_Factory(t) { return new (t || FilesGridComponent)(i0.ɵɵdirectiveInject(i1.SharedService)); };
267
- FilesGridComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilesGridComponent, selectors: [["mj-files-grid"]], inputs: { CategoryID: "CategoryID" }, features: [i0.ɵɵNgOnChangesFeature], decls: 11, vars: 5, consts: [["templateForm", "ngForm"], [1, "container"], [3, "data", "loading"], ["field", "ID", "title", "ID"], ["field", "Category", "title", "Category"], ["field", "Name", "title", "Name"], ["field", "Description", "title", "Description"], ["field", "Status", "title", "Status"], ["field", "Actions"], ["kendoGridCellTemplate", ""], [3, "uploadStarted", "fileUpload", "CategoryID", "disabled"], ["title", "Edit file", 3, "minWidth", "width", "close", 4, "ngIf"], [3, "click", "disabled"], [1, "fa-solid", "fa-download"], [1, "fa-solid", "fa-trash-can"], [1, "fa-solid", "fa-pen-to-square"], ["title", "Edit file", 3, "close", "minWidth", "width"], ["text", "Name", 1, "k-form"], ["name", "name", "showErrorIcon", "initial", "required", "", 3, "ngModelChange", "ngModel", "showSuccessIcon", "disabled"], ["text", "Description", 1, "k-form"], ["name", "description", 3, "ngModelChange", "ngModel", "disabled"], ["kendoButton", "", 3, "click", "disabled"], ["kendoButton", "", "themeColor", "primary", 3, "click", "disabled"]], template: function FilesGridComponent_Template(rf, ctx) { if (rf & 1) {
268
- i0.ɵɵelementStart(0, "div", 1)(1, "kendo-grid", 2);
269
- i0.ɵɵelement(2, "kendo-grid-column", 3)(3, "kendo-grid-column", 4)(4, "kendo-grid-column", 5)(5, "kendo-grid-column", 6)(6, "kendo-grid-column", 7);
270
- i0.ɵɵelementStart(7, "kendo-grid-column", 8);
271
- i0.ɵɵtemplate(8, FilesGridComponent_ng_template_8_Template, 6, 3, "ng-template", 9);
272
- i0.ɵɵelementEnd()();
273
- i0.ɵɵelementStart(9, "mj-files-file-upload", 10);
274
- i0.ɵɵlistener("uploadStarted", function FilesGridComponent_Template_mj_files_file_upload_uploadStarted_9_listener() { return ctx.isLoading = true; })("fileUpload", function FilesGridComponent_Template_mj_files_file_upload_fileUpload_9_listener($event) { return ctx.handleFileUpload($event); });
275
- i0.ɵɵelementEnd();
276
- i0.ɵɵtemplate(10, FilesGridComponent_kendo_dialog_10_Template, 13, 9, "kendo-dialog", 11);
277
- i0.ɵɵelementEnd();
278
- } if (rf & 2) {
279
- i0.ɵɵadvance();
280
- i0.ɵɵproperty("data", ctx.files)("loading", ctx.isLoading);
281
- i0.ɵɵadvance(8);
282
- i0.ɵɵproperty("CategoryID", ctx.CategoryID)("disabled", ctx.isLoading);
283
- i0.ɵɵadvance();
284
- i0.ɵɵproperty("ngIf", ctx.editFile);
285
- } }, dependencies: [i2.NgIf, i3.ɵNgNoValidate, i3.NgControlStatus, i3.NgControlStatusGroup, i3.RequiredValidator, i3.NgModel, i3.NgForm, i4.DialogComponent, i4.DialogActionsComponent, i5.ButtonComponent, i6.LabelComponent, i7.GridComponent, i7.ColumnComponent, i7.CellTemplateDirective, i8.TextBoxComponent, i9.FileUploadComponent], styles: [".container[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n}\n\nkendo-label[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n align-items: center;\n column-gap: 12px;\n margin-bottom: 4px;\n}\n\nkendo-label[_ngcontent-%COMP%] kendo-textbox[_ngcontent-%COMP%] {\n width: 100%;\n}"] });
286
276
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FilesGridComponent, [{
287
277
  type: Component,
288
278
  args: [{ selector: 'mj-files-grid', template: "<div class=\"container\">\n <kendo-grid [data]=\"files\" [loading]=\"isLoading\">\n <kendo-grid-column field=\"ID\" title=\"ID\"> </kendo-grid-column>\n <kendo-grid-column field=\"Category\" title=\"Category\"> </kendo-grid-column>\n <kendo-grid-column field=\"Name\" title=\"Name\"> </kendo-grid-column>\n <kendo-grid-column field=\"Description\" title=\"Description\"> </kendo-grid-column>\n <kendo-grid-column field=\"Status\" title=\"Status\"> </kendo-grid-column>\n <kendo-grid-column field=\"Actions\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <kendo-button\n [disabled]=\"dataItem.Status!=='Uploaded'\"\n (click)=\"downloadFile(dataItem)\"\n >\n <span class=\"fa-solid fa-download\"></span>\n </kendo-button>\n <kendo-button [disabled]=\"!canBeDeleted(dataItem)\" (click)=\"deleteFile(dataItem)\">\n <span class=\"fa-solid fa-trash-can\"></span>\n </kendo-button>\n <kendo-button\n [disabled]=\"dataItem.Status!=='Uploaded'\"\n (click)=\"editFile = dataItem\"\n >\n <span class=\"fa-solid fa-pen-to-square\"></span>\n </kendo-button>\n </ng-template>\n </kendo-grid-column>\n </kendo-grid>\n\n <mj-files-file-upload\n [CategoryID]=\"CategoryID\"\n [disabled]=\"isLoading\"\n (uploadStarted)=\"isLoading = true\"\n (fileUpload)=\"handleFileUpload($event)\"\n ></mj-files-file-upload>\n\n <kendo-dialog title=\"Edit file\" *ngIf=\"editFile\" (close)=\"resetEditFile()\" [minWidth]=\"250\" [width]=\"450\">\n <div class=\"container\">\n <form #templateForm=\"ngForm\">\n <kendo-label class=\"k-form\" text=\"Name\">\n <kendo-textbox\n name=\"name\"\n [(ngModel)]=\"editFile.Name\"\n [showSuccessIcon]=\"editFile.Name.length > 0\"\n showErrorIcon=\"initial\"\n required\n [disabled]=\"isLoading\"\n ></kendo-textbox>\n </kendo-label>\n <kendo-label class=\"k-form\" text=\"Description\">\n <kendo-textbox name=\"description\" [(ngModel)]=\"editFile.Description\" [disabled]=\"isLoading\"></kendo-textbox>\n </kendo-label>\n </form>\n </div>\n <kendo-dialog-actions>\n <button kendoButton (click)=\"resetEditFile()\" [disabled]=\"isLoading\">Cancel</button>\n <button kendoButton (click)=\"saveEditFile()\" [disabled]=\"isLoading || !editFile.Dirty\" themeColor=\"primary\">Save</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n</div>\n", styles: [".container {\n display: flex;\n flex-direction: column;\n}\n\nkendo-label {\n display: flex;\n flex-direction: row;\n align-items: center;\n column-gap: 12px;\n margin-bottom: 4px;\n}\n\nkendo-label kendo-textbox {\n width: 100%;\n}"] }]
@@ -1 +1 @@
1
- {"version":3,"file":"files-grid.js","sourceRoot":"","sources":["../../../src/lib/files-grid/files-grid.ts","../../../src/lib/files-grid/files-grid.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files-grid.js","sourceRoot":"","sources":["../../../src/lib/files-grid/files-grid.ts","../../../src/lib/files-grid/files-grid.html"],"names":[],"mappings":"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"}
@@ -22,26 +22,26 @@ import { FileUploadComponent } from './file-upload/file-upload';
22
22
  import { FilesGridComponent } from './files-grid/files-grid';
23
23
  import * as i0 from "@angular/core";
24
24
  export class FileStorageModule {
25
+ static ɵfac = function FileStorageModule_Factory(t) { return new (t || FileStorageModule)(); };
26
+ static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: FileStorageModule });
27
+ static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
28
+ TreeViewModule,
29
+ FormsModule,
30
+ DialogsModule,
31
+ ExcelExportModule,
32
+ CompareRecordsModule,
33
+ ContainerDirectivesModule,
34
+ ButtonsModule,
35
+ LabelModule,
36
+ GridModule,
37
+ DropDownsModule,
38
+ BrowserModule,
39
+ BrowserAnimationsModule,
40
+ InputsModule,
41
+ UploadsModule,
42
+ MenusModule,
43
+ IndicatorsModule] });
25
44
  }
26
- FileStorageModule.ɵfac = function FileStorageModule_Factory(t) { return new (t || FileStorageModule)(); };
27
- FileStorageModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: FileStorageModule });
28
- FileStorageModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
29
- TreeViewModule,
30
- FormsModule,
31
- DialogsModule,
32
- ExcelExportModule,
33
- CompareRecordsModule,
34
- ContainerDirectivesModule,
35
- ButtonsModule,
36
- LabelModule,
37
- GridModule,
38
- DropDownsModule,
39
- BrowserModule,
40
- BrowserAnimationsModule,
41
- InputsModule,
42
- UploadsModule,
43
- MenusModule,
44
- IndicatorsModule] });
45
45
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FileStorageModule, [{
46
46
  type: NgModule,
47
47
  args: [{
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/lib/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;;AAyB7D,MAAM,OAAO,iBAAiB;;kFAAjB,iBAAiB;mEAAjB,iBAAiB;uEApB1B,YAAY;QACZ,cAAc;QACd,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,oBAAoB;QACpB,yBAAyB;QACzB,aAAa;QACb,WAAW;QACX,UAAU;QACV,eAAe;QACf,aAAa;QACb,uBAAuB;QACvB,YAAY;QACZ,aAAa;QACb,WAAW;QACX,gBAAgB;iFAIP,iBAAiB;cAvB7B,QAAQ;eAAC;gBACR,YAAY,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC;gBAC9E,OAAO,EAAE;oBACP,YAAY;oBACZ,cAAc;oBACd,WAAW;oBACX,aAAa;oBACb,iBAAiB;oBACjB,oBAAoB;oBACpB,yBAAyB;oBACzB,aAAa;oBACb,WAAW;oBACX,UAAU;oBACV,eAAe;oBACf,aAAa;oBACb,uBAAuB;oBACvB,YAAY;oBACZ,aAAa;oBACb,WAAW;oBACX,gBAAgB;iBACjB;gBACD,OAAO,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC;aAC1E;;wFACY,iBAAiB,mBAtBb,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,aAE3E,YAAY;QACZ,cAAc;QACd,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,oBAAoB;QACpB,yBAAyB;QACzB,aAAa;QACb,WAAW;QACX,UAAU;QACV,eAAe;QACf,aAAa;QACb,uBAAuB;QACvB,YAAY;QACZ,aAAa;QACb,WAAW;QACX,gBAAgB,aAER,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/lib/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;;AAyB7D,MAAM,OAAO,iBAAiB;2EAAjB,iBAAiB;4DAAjB,iBAAiB;gEApB1B,YAAY;YACZ,cAAc;YACd,WAAW;YACX,aAAa;YACb,iBAAiB;YACjB,oBAAoB;YACpB,yBAAyB;YACzB,aAAa;YACb,WAAW;YACX,UAAU;YACV,eAAe;YACf,aAAa;YACb,uBAAuB;YACvB,YAAY;YACZ,aAAa;YACb,WAAW;YACX,gBAAgB;;iFAIP,iBAAiB;cAvB7B,QAAQ;eAAC;gBACR,YAAY,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC;gBAC9E,OAAO,EAAE;oBACP,YAAY;oBACZ,cAAc;oBACd,WAAW;oBACX,aAAa;oBACb,iBAAiB;oBACjB,oBAAoB;oBACpB,yBAAyB;oBACzB,aAAa;oBACb,WAAW;oBACX,UAAU;oBACV,eAAe;oBACf,aAAa;oBACb,uBAAuB;oBACvB,YAAY;oBACZ,aAAa;oBACb,WAAW;oBACX,gBAAgB;iBACjB;gBACD,OAAO,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC;aAC1E;;wFACY,iBAAiB,mBAtBb,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,aAE3E,YAAY;QACZ,cAAc;QACd,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,oBAAoB;QACpB,yBAAyB;QACzB,aAAa;QACb,WAAW;QACX,UAAU;QACV,eAAe;QACf,aAAa;QACb,uBAAuB;QACvB,YAAY;QACZ,aAAa;QACb,WAAW;QACX,gBAAgB,aAER,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-file-storage",
3
- "version": "2.47.0",
3
+ "version": "2.49.0",
4
4
  "description": "MemberJunction: Angular components for managing files, and related components.",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -26,12 +26,12 @@
26
26
  "@angular/router": "18.0.2"
27
27
  },
28
28
  "dependencies": {
29
- "@memberjunction/core": "2.47.0",
30
- "@memberjunction/core-entities": "2.47.0",
31
- "@memberjunction/global": "2.47.0",
32
- "@memberjunction/graphql-dataprovider": "2.47.0",
33
- "@memberjunction/ng-container-directives": "2.47.0",
34
- "@memberjunction/ng-shared": "2.47.0",
29
+ "@memberjunction/core": "2.49.0",
30
+ "@memberjunction/core-entities": "2.49.0",
31
+ "@memberjunction/global": "2.49.0",
32
+ "@memberjunction/graphql-dataprovider": "2.49.0",
33
+ "@memberjunction/ng-container-directives": "2.49.0",
34
+ "@memberjunction/ng-shared": "2.49.0",
35
35
  "@progress/kendo-angular-buttons": "16.2.0",
36
36
  "@progress/kendo-angular-dialog": "16.2.0",
37
37
  "@progress/kendo-angular-dropdowns": "16.2.0",