@memberjunction/ng-shared 4.2.0 → 4.3.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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=shared.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.test.d.ts","sourceRoot":"","sources":["../../../src/lib/__tests__/shared.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,272 @@
1
+ /**
2
+ * Tests for shared package utilities:
3
+ * - SimpleTextFormatPipe
4
+ * - URLPipe
5
+ * - TitleService
6
+ * - EventCodes / HtmlListType constants
7
+ */
8
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
9
+ // Mock Angular dependencies
10
+ vi.mock('@angular/core', () => ({
11
+ Pipe: () => (target) => target,
12
+ PipeTransform: class {
13
+ },
14
+ Injectable: () => (target) => target,
15
+ Directive: () => (target) => target,
16
+ Input: () => () => { },
17
+ Output: () => () => { },
18
+ EventEmitter: class {
19
+ emit() { }
20
+ },
21
+ ElementRef: class {
22
+ },
23
+ OnInit: class {
24
+ },
25
+ OnDestroy: class {
26
+ },
27
+ Injector: class {
28
+ },
29
+ }));
30
+ vi.mock('@angular/platform-browser', () => ({
31
+ Title: class {
32
+ title = '';
33
+ setTitle(t) { this.title = t; }
34
+ getTitle() { return this.title; }
35
+ }
36
+ }));
37
+ vi.mock('@memberjunction/core', () => ({
38
+ Metadata: class {
39
+ },
40
+ CompositeKey: class {
41
+ },
42
+ LogError: vi.fn(),
43
+ LogStatus: vi.fn(),
44
+ StartupManager: { Instance: { Startup: vi.fn() } },
45
+ LocalCacheManager: class {
46
+ },
47
+ BaseEntity: class {
48
+ },
49
+ RunView: class {
50
+ },
51
+ }));
52
+ vi.mock('@memberjunction/core-entities', () => ({
53
+ ResourcePermissionEngine: { Instance: { ResourceTypes: [] } },
54
+ UserInfoEngine: { Instance: { GetSetting: vi.fn(), SetSetting: vi.fn() } },
55
+ ResourceTypeEntity: class {
56
+ },
57
+ UserNotificationEntity: class {
58
+ },
59
+ ArtifactMetadataEngine: { Instance: { Config: vi.fn() } },
60
+ DashboardEngine: { Instance: { Config: vi.fn() } },
61
+ ViewColumnInfo: class {
62
+ },
63
+ DashboardEntityExtended: class {
64
+ },
65
+ ResourceData: class {
66
+ ResourceRecordID = '';
67
+ },
68
+ }));
69
+ vi.mock('@memberjunction/global', () => ({
70
+ MJGlobal: { Instance: { GetEventListener: vi.fn(() => ({ subscribe: vi.fn() })) } },
71
+ MJEventType: { LoggedIn: 'LoggedIn', ComponentEvent: 'ComponentEvent' },
72
+ ConvertMarkdownStringToHtmlList: vi.fn((type, text) => `<${type}>${text}</${type}>`),
73
+ InvokeManualResize: vi.fn(),
74
+ }));
75
+ vi.mock('@memberjunction/ai-engine-base', () => ({
76
+ AIEngineBase: { Instance: { Config: vi.fn() } },
77
+ }));
78
+ vi.mock('@memberjunction/entity-communications-base', () => ({
79
+ EntityCommunicationsEngineBase: { Instance: { Config: vi.fn() } },
80
+ }));
81
+ vi.mock('@memberjunction/graphql-dataprovider', () => ({
82
+ GraphQLDataProvider: class {
83
+ },
84
+ }));
85
+ vi.mock('@progress/kendo-angular-notification', () => ({
86
+ NotificationService: class {
87
+ },
88
+ }));
89
+ vi.mock('@memberjunction/ng-notifications', () => ({
90
+ MJNotificationService: class {
91
+ static UserNotifications = [];
92
+ static UnreadUserNotifications = [];
93
+ static UnreadUserNotificationCount = 0;
94
+ static RefreshUserNotifications = vi.fn();
95
+ CreateNotification = vi.fn();
96
+ CreateSimpleNotification = vi.fn();
97
+ },
98
+ }));
99
+ vi.mock('@memberjunction/ng-base-types', () => ({
100
+ BaseAngularComponent: class {
101
+ },
102
+ }));
103
+ vi.mock('@memberjunction/ng-base-application', () => ({
104
+ WorkspaceStateManager: class {
105
+ },
106
+ ApplicationManager: class {
107
+ GetActiveApp = vi.fn();
108
+ GetAppByName = vi.fn();
109
+ GetAppById = vi.fn();
110
+ },
111
+ NavItem: class {
112
+ },
113
+ TabRequest: class {
114
+ },
115
+ }));
116
+ vi.mock('rxjs', async () => {
117
+ const actual = await vi.importActual('rxjs');
118
+ return actual;
119
+ });
120
+ // ======================= SimpleTextFormatPipe =======================
121
+ describe('SimpleTextFormatPipe', () => {
122
+ let pipe;
123
+ beforeEach(async () => {
124
+ const mod = await import('../simpleTextFormat');
125
+ pipe = new mod.SimpleTextFormatPipe();
126
+ });
127
+ it('should replace newlines with <br> tags', () => {
128
+ expect(pipe.transform('hello\nworld')).toBe('hello<br>world');
129
+ });
130
+ it('should replace tabs with non-breaking spaces', () => {
131
+ expect(pipe.transform('col1\tcol2')).toBe('col1&nbsp;&nbsp;&nbsp;&nbsp;col2');
132
+ });
133
+ it('should handle mixed newlines and tabs', () => {
134
+ expect(pipe.transform('line1\n\tindented')).toBe('line1<br>&nbsp;&nbsp;&nbsp;&nbsp;indented');
135
+ });
136
+ it('should return falsy values as-is', () => {
137
+ expect(pipe.transform('')).toBe('');
138
+ expect(pipe.transform(null)).toBeNull();
139
+ expect(pipe.transform(undefined)).toBeUndefined();
140
+ });
141
+ it('should return plain text unchanged', () => {
142
+ expect(pipe.transform('no special chars')).toBe('no special chars');
143
+ });
144
+ });
145
+ // ======================= URLPipe =======================
146
+ describe('URLPipe', () => {
147
+ let pipe;
148
+ beforeEach(async () => {
149
+ const mod = await import('../urlPipe');
150
+ pipe = new mod.URLPipe();
151
+ });
152
+ it('should prepend https:// when no protocol is present', () => {
153
+ expect(pipe.transform('example.com')).toBe('https://example.com');
154
+ });
155
+ it('should not modify URLs that already have http', () => {
156
+ expect(pipe.transform('http://example.com')).toBe('http://example.com');
157
+ });
158
+ it('should not modify URLs that already have https', () => {
159
+ expect(pipe.transform('https://example.com')).toBe('https://example.com');
160
+ });
161
+ it('should return falsy values as-is', () => {
162
+ expect(pipe.transform('')).toBe('');
163
+ expect(pipe.transform(null)).toBeNull();
164
+ });
165
+ });
166
+ // ======================= TitleService =======================
167
+ describe('TitleService', () => {
168
+ let service;
169
+ beforeEach(async () => {
170
+ const mod = await import('../title.service');
171
+ const { Title } = await import('@angular/platform-browser');
172
+ service = new mod.TitleService(new Title(document));
173
+ });
174
+ it('should have default base title of MemberJunction', () => {
175
+ expect(service.getBaseTitle()).toBe('MemberJunction');
176
+ });
177
+ it('should build title with base only when no context is set', () => {
178
+ expect(service.getFullTitle()).toBe('MemberJunction');
179
+ });
180
+ it('should build title with app name', () => {
181
+ service.setAppName('Sales');
182
+ expect(service.getFullTitle()).toBe('Sales - MemberJunction');
183
+ });
184
+ it('should build title with resource name', () => {
185
+ service.setResourceName('Contacts');
186
+ expect(service.getFullTitle()).toBe('Contacts - MemberJunction');
187
+ });
188
+ it('should build title with both app and resource (resource first)', () => {
189
+ service.setAppName('Sales');
190
+ service.setResourceName('Contacts');
191
+ expect(service.getFullTitle()).toBe('Contacts - Sales - MemberJunction');
192
+ });
193
+ it('should update base title', () => {
194
+ service.setBaseTitle('Skip');
195
+ expect(service.getFullTitle()).toBe('Skip');
196
+ });
197
+ it('should set context in one call', () => {
198
+ service.setContext('Marketing', 'Campaigns');
199
+ expect(service.getFullTitle()).toBe('Campaigns - Marketing - MemberJunction');
200
+ });
201
+ it('should reset to just base title', () => {
202
+ service.setContext('Marketing', 'Campaigns');
203
+ service.reset();
204
+ expect(service.getFullTitle()).toBe('MemberJunction');
205
+ expect(service.getAppName()).toBeNull();
206
+ expect(service.getResourceName()).toBeNull();
207
+ });
208
+ it('should clear app name with null', () => {
209
+ service.setAppName('Sales');
210
+ service.setAppName(null);
211
+ expect(service.getFullTitle()).toBe('MemberJunction');
212
+ });
213
+ });
214
+ // ======================= EventCodes & HtmlListType =======================
215
+ describe('EventCodes', () => {
216
+ it('should export expected event codes', async () => {
217
+ const { EventCodes } = await import('../shared.service');
218
+ expect(EventCodes.ViewClicked).toBe('ViewClicked');
219
+ expect(EventCodes.EntityRecordClicked).toBe('EntityRecordClicked');
220
+ expect(EventCodes.AddDashboard).toBe('AddDashboard');
221
+ expect(EventCodes.RunSearch).toBe('RunSearch');
222
+ expect(EventCodes.CloseCurrentTab).toBe('CloseCurrentTab');
223
+ expect(EventCodes.AvatarUpdated).toBe('AvatarUpdated');
224
+ });
225
+ });
226
+ describe('HtmlListType', () => {
227
+ it('should export Unordered and Ordered list types', async () => {
228
+ const { HtmlListType } = await import('../shared.service');
229
+ expect(HtmlListType.Unordered).toBe('Unordered');
230
+ expect(HtmlListType.Ordered).toBe('Ordered');
231
+ });
232
+ });
233
+ // ======================= SharedService resource type mapping =======================
234
+ describe('SharedService resource type mapping', () => {
235
+ it('should map resource type names to route segments', async () => {
236
+ const { SharedService } = await import('../shared.service');
237
+ // Construct with mocked dependencies
238
+ const notif = { show: vi.fn() };
239
+ const mjNotif = { CreateNotification: vi.fn(), CreateSimpleNotification: vi.fn() };
240
+ const injector = { get: vi.fn() };
241
+ const svc = new SharedService(notif, mjNotif, injector);
242
+ expect(svc.mapResourceTypeNameToRouteSegment('Records')).toBe('record');
243
+ expect(svc.mapResourceTypeNameToRouteSegment('User Views')).toBe('view');
244
+ expect(svc.mapResourceTypeNameToRouteSegment('Dashboards')).toBe('dashboard');
245
+ expect(svc.mapResourceTypeNameToRouteSegment('Reports')).toBe('report');
246
+ expect(svc.mapResourceTypeNameToRouteSegment('Search Results')).toBe('search');
247
+ expect(svc.mapResourceTypeNameToRouteSegment('Queries')).toBe('query');
248
+ expect(svc.mapResourceTypeNameToRouteSegment('Lists')).toBe('list');
249
+ expect(svc.mapResourceTypeNameToRouteSegment('Unknown')).toBeNull();
250
+ });
251
+ it('should map route segments to resource type names', async () => {
252
+ const { SharedService } = await import('../shared.service');
253
+ const notif = { show: vi.fn() };
254
+ const mjNotif = { CreateNotification: vi.fn(), CreateSimpleNotification: vi.fn() };
255
+ const injector = { get: vi.fn() };
256
+ const svc = new SharedService(notif, mjNotif, injector);
257
+ expect(svc.mapResourceTypeRouteSegmentToName('record')).toBe('records');
258
+ expect(svc.mapResourceTypeRouteSegmentToName('view')).toBe('user views');
259
+ expect(svc.mapResourceTypeRouteSegmentToName('dashboard')).toBe('dashboards');
260
+ expect(svc.mapResourceTypeRouteSegmentToName('nonexistent')).toBeNull();
261
+ });
262
+ it('should be case-insensitive for resource type mapping', async () => {
263
+ const { SharedService } = await import('../shared.service');
264
+ const notif = { show: vi.fn() };
265
+ const mjNotif = { CreateNotification: vi.fn(), CreateSimpleNotification: vi.fn() };
266
+ const injector = { get: vi.fn() };
267
+ const svc = new SharedService(notif, mjNotif, injector);
268
+ expect(svc.mapResourceTypeNameToRouteSegment('RECORDS')).toBe('record');
269
+ expect(svc.mapResourceTypeNameToRouteSegment(' Records ')).toBe('record');
270
+ });
271
+ });
272
+ //# sourceMappingURL=shared.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.test.js","sourceRoot":"","sources":["../../../src/lib/__tests__/shared.test.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE9D,4BAA4B;AAC5B,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9B,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,MAAgB,EAAE,EAAE,CAAC,MAAM;IACxC,aAAa,EAAE;KAAQ;IACvB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,MAAgB,EAAE,EAAE,CAAC,MAAM;IAC9C,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,MAAgB,EAAE,EAAE,CAAC,MAAM;IAC7C,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;IACrB,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC;IACtB,YAAY,EAAE;QAAQ,IAAI,KAAI,CAAC;KAAE;IACjC,UAAU,EAAE;KAAQ;IACpB,MAAM,EAAE;KAAQ;IAChB,SAAS,EAAE;KAAQ;IACnB,QAAQ,EAAE;KAAQ;CACnB,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,KAAK,EAAE;QACG,KAAK,GAAG,EAAE,CAAC;QACnB,QAAQ,CAAC,CAAS,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QACvC,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;KAClC;CACF,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;IACrC,QAAQ,EAAE;KAAQ;IAClB,YAAY,EAAE;KAAQ;IACtB,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;IACjB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IAClD,iBAAiB,EAAE;KAAQ;IAC3B,UAAU,EAAE;KAAQ;IACpB,OAAO,EAAE;KAAQ;CAClB,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9C,wBAAwB,EAAE,EAAE,QAAQ,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;IAC7D,cAAc,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IAC1E,kBAAkB,EAAE;KAAQ;IAC5B,sBAAsB,EAAE;KAAQ;IAChC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IACzD,eAAe,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;IAClD,cAAc,EAAE;KAAQ;IACxB,uBAAuB,EAAE;KAAQ;IACjC,YAAY,EAAE;QACZ,gBAAgB,GAAG,EAAE,CAAC;KACvB;CACF,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC;IACvC,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,gBAAgB,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE;IACnF,WAAW,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE;IACvE,+BAA+B,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,GAAG,CAAC;IACpG,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE;CAC5B,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/C,YAAY,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;CAChD,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE,CAAC,CAAC;IAC3D,8BAA8B,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;CAClE,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE,CAAC,CAAC;IACrD,mBAAmB,EAAE;KAAQ;CAC9B,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE,CAAC,CAAC;IACrD,mBAAmB,EAAE;KAAQ;CAC9B,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE,CAAC,CAAC;IACjD,qBAAqB,EAAE;QACrB,MAAM,CAAC,iBAAiB,GAAY,EAAE,CAAC;QACvC,MAAM,CAAC,uBAAuB,GAAY,EAAE,CAAC;QAC7C,MAAM,CAAC,2BAA2B,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,wBAAwB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,kBAAkB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,wBAAwB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;KACpC;CACF,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9C,oBAAoB,EAAE;KAAQ;CAC/B,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,qBAAqB,EAAE;KAAQ;IAC/B,kBAAkB,EAAE;QAClB,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACvB,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACvB,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;KACtB;IACD,OAAO,EAAE;KAAQ;IACjB,UAAU,EAAE;KAAQ;CACrB,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;IACzB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,YAAY,CAAwB,MAAM,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC,CAAC;AAEH,uEAAuE;AACvE,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,IAAI,IAA0C,CAAC;IAE/C,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChD,IAAI,GAAG,IAAI,GAAG,CAAC,oBAAoB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAyB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAA8B,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,0DAA0D;AAC1D,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,IAAI,IAA0C,CAAC;IAE/C,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAyB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,+DAA+D;AAC/D,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,OAAqE,CAAC;IAE1E,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC7C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC5D,OAAO,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5B,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC7C,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,4EAA4E;AAC5E,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnD,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACnE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACrD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC3D,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC3D,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,sFAAsF;AACtF,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC5D,qCAAqC;QACrC,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,wBAAwB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACnF,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,KAAc,EAAE,OAAgB,EAAE,QAAiB,CAAC,CAAC;QAEnF,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9E,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/E,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,wBAAwB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACnF,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,KAAc,EAAE,OAAgB,EAAE,QAAiB,CAAC,CAAC;QAEnF,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9E,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,EAAE,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,wBAAwB,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACnF,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,KAAc,EAAE,OAAgB,EAAE,QAAiB,CAAC,CAAC;QAEnF,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-shared",
3
- "version": "4.2.0",
3
+ "version": "4.3.0",
4
4
  "description": "MemberJunction: MJ Explorer Angular Shared Package - utility functions and other reusable elements used across other MJ Angular packages within the MJ Explorer App - do not use outside of MJ Explorer.",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -8,7 +8,7 @@
8
8
  "/dist"
9
9
  ],
10
10
  "scripts": {
11
- "test": "echo \"Error: no test specified\" && exit 1",
11
+ "test": "echo \"No tests configured yet\"",
12
12
  "build": "ngc"
13
13
  },
14
14
  "keywords": [
@@ -29,16 +29,16 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@angular/platform-browser": "21.1.3",
32
- "@memberjunction/ai-engine-base": "4.2.0",
33
- "@memberjunction/core": "4.2.0",
34
- "@memberjunction/core-entities": "4.2.0",
35
- "@memberjunction/global": "4.2.0",
36
- "@memberjunction/graphql-dataprovider": "4.2.0",
37
- "@memberjunction/entity-communications-base": "4.2.0",
38
- "@memberjunction/ng-base-application": "4.2.0",
39
- "@memberjunction/ng-base-types": "4.2.0",
40
- "@memberjunction/ng-notifications": "4.2.0",
41
- "@memberjunction/ng-shared-generic": "4.2.0",
32
+ "@memberjunction/ai-engine-base": "4.3.0",
33
+ "@memberjunction/core": "4.3.0",
34
+ "@memberjunction/core-entities": "4.3.0",
35
+ "@memberjunction/global": "4.3.0",
36
+ "@memberjunction/graphql-dataprovider": "4.3.0",
37
+ "@memberjunction/entity-communications-base": "4.3.0",
38
+ "@memberjunction/ng-base-application": "4.3.0",
39
+ "@memberjunction/ng-base-types": "4.3.0",
40
+ "@memberjunction/ng-notifications": "4.3.0",
41
+ "@memberjunction/ng-shared-generic": "4.3.0",
42
42
  "@progress/kendo-angular-notification": "22.0.1",
43
43
  "tslib": "^2.8.1"
44
44
  },