@mj-biz-apps/common-ng 5.38.0 → 5.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/data/__tests__/directory-stats.test.js +9 -2
- package/dist/lib/data/__tests__/directory-stats.test.js.map +1 -1
- package/dist/lib/data/__tests__/directory-views.test.d.ts +2 -0
- package/dist/lib/data/__tests__/directory-views.test.d.ts.map +1 -0
- package/dist/lib/data/__tests__/directory-views.test.js +26 -0
- package/dist/lib/data/__tests__/directory-views.test.js.map +1 -0
- package/dist/lib/data/directory-queries.d.ts +17 -1
- package/dist/lib/data/directory-queries.d.ts.map +1 -1
- package/dist/lib/data/directory-queries.js +124 -1
- package/dist/lib/data/directory-queries.js.map +1 -1
- package/dist/lib/data/directory-stats.d.ts +7 -0
- package/dist/lib/data/directory-stats.d.ts.map +1 -1
- package/dist/lib/data/directory-stats.js +13 -1
- package/dist/lib/data/directory-stats.js.map +1 -1
- package/dist/lib/data/directory-views.d.ts +75 -0
- package/dist/lib/data/directory-views.d.ts.map +1 -0
- package/dist/lib/data/directory-views.js +111 -0
- package/dist/lib/data/directory-views.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.js +34 -30
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.js +2 -2
- package/dist/lib/pages/common-dashboard.page.d.ts +14 -7
- package/dist/lib/pages/common-dashboard.page.d.ts.map +1 -1
- package/dist/lib/pages/common-dashboard.page.js +150 -203
- package/dist/lib/pages/common-dashboard.page.js.map +1 -1
- package/dist/lib/pages/organizations-list.page.d.ts +6 -7
- package/dist/lib/pages/organizations-list.page.d.ts.map +1 -1
- package/dist/lib/pages/organizations-list.page.js +47 -135
- package/dist/lib/pages/organizations-list.page.js.map +1 -1
- package/dist/lib/pages/people-list.page.d.ts +6 -9
- package/dist/lib/pages/people-list.page.d.ts.map +1 -1
- package/dist/lib/pages/people-list.page.js +47 -142
- package/dist/lib/pages/people-list.page.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { BuildDirectoryQueues, CountByDay, CountByLabel, EscapeFilterValue, PeopleMissingEmail, PersonEmail, } from '../directory-stats';
|
|
2
|
+
import { BuildDirectoryQueues, CountByDay, CountByLabel, EscapeFilterValue, EscapeLikeValue, PeopleMissingEmail, PersonEmail, } from '../directory-stats';
|
|
3
3
|
import { COMMON_ENTITIES } from '../entity-names';
|
|
4
4
|
function person(partial) {
|
|
5
5
|
return {
|
|
@@ -72,8 +72,15 @@ describe('directory-stats', () => {
|
|
|
72
72
|
expect(rows[0]).toEqual({ Label: 'Company', Value: 2 });
|
|
73
73
|
expect(rows[1]).toEqual({ Label: 'Chapter', Value: 1 });
|
|
74
74
|
});
|
|
75
|
-
it('escapes quotes for ExtraFilter', () => {
|
|
75
|
+
it('escapes quotes and drops NULs for ExtraFilter', () => {
|
|
76
76
|
expect(EscapeFilterValue("O'Brien")).toBe("O''Brien");
|
|
77
|
+
expect(EscapeFilterValue('a\0b')).toBe('ab');
|
|
78
|
+
});
|
|
79
|
+
it('bracket-escapes LIKE wildcards in EscapeLikeValue', () => {
|
|
80
|
+
expect(EscapeLikeValue('100%')).toBe('100[%]');
|
|
81
|
+
expect(EscapeLikeValue('a_b')).toBe('a[_]b');
|
|
82
|
+
expect(EscapeLikeValue('[x]')).toBe('[[]x]');
|
|
83
|
+
expect(EscapeLikeValue("O'Brien\0")).toBe("O''Brien");
|
|
77
84
|
});
|
|
78
85
|
});
|
|
79
86
|
//# sourceMappingURL=directory-stats.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory-stats.test.js","sourceRoot":"","sources":["../../../../src/lib/data/__tests__/directory-stats.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"directory-stats.test.js","sourceRoot":"","sources":["../../../../src/lib/data/__tests__/directory-stats.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directory-views.test.d.ts","sourceRoot":"","sources":["../../../../src/lib/data/__tests__/directory-views.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { DIRECTORY_VIEW_NAMES, LatestPeopleGridState, OrganizationsDirectoryGridState, PeopleDirectoryGridState, RelationshipsGridState, } from '../directory-views';
|
|
3
|
+
describe('directory views', () => {
|
|
4
|
+
it('puts PhotoURL first on people grids so the viewer can render a thumbnail', () => {
|
|
5
|
+
expect(PeopleDirectoryGridState().columnSettings[0].Name).toBe('PhotoURL');
|
|
6
|
+
expect(LatestPeopleGridState().columnSettings[0].Name).toBe('PhotoURL');
|
|
7
|
+
expect(PeopleDirectoryGridState().columnSettings[0].format).toEqual({ type: 'image' });
|
|
8
|
+
});
|
|
9
|
+
it('puts LogoURL first on the organizations grid', () => {
|
|
10
|
+
expect(OrganizationsDirectoryGridState().columnSettings[0].Name).toBe('LogoURL');
|
|
11
|
+
expect(OrganizationsDirectoryGridState().columnSettings[0].format).toEqual({ type: 'image' });
|
|
12
|
+
});
|
|
13
|
+
it('keeps relationship columns as names, not photos', () => {
|
|
14
|
+
const names = RelationshipsGridState().columnSettings.map((c) => c.Name);
|
|
15
|
+
expect(names).toContain('FromPerson');
|
|
16
|
+
expect(names).toContain('ToOrganization');
|
|
17
|
+
expect(names.some((n) => /photo|logo/i.test(n))).toBe(false);
|
|
18
|
+
});
|
|
19
|
+
it('uses stable view names for metadata lookup', () => {
|
|
20
|
+
expect(DIRECTORY_VIEW_NAMES.People).toBe('Common: People directory');
|
|
21
|
+
expect(DIRECTORY_VIEW_NAMES.LatestPeople).toBe('Common: Latest people');
|
|
22
|
+
expect(DIRECTORY_VIEW_NAMES.Organizations).toBe('Common: Organizations directory');
|
|
23
|
+
expect(DIRECTORY_VIEW_NAMES.LatestRelationships).toBe('Common: Latest relationships');
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
//# sourceMappingURL=directory-views.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directory-views.test.js","sourceRoot":"","sources":["../../../../src/lib/data/__tests__/directory-views.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACH,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAC/B,wBAAwB,EACxB,sBAAsB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAChF,MAAM,CAAC,wBAAwB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,qBAAqB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxE,MAAM,CAAC,wBAAwB,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,+BAA+B,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,MAAM,CAAC,+BAA+B,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACvD,MAAM,KAAK,GAAG,sBAAsB,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACrE,MAAM,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACxE,MAAM,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QACnF,MAAM,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,20 @@
|
|
|
1
|
-
import type { DirectoryOrganizationRow, DirectoryPersonRow, DirectoryRelationshipRow } from './directory-types';
|
|
1
|
+
import type { DirectoryAttentionItem, DirectoryBarRow, DirectoryDayBar, DirectoryOrganizationRow, DirectoryPersonRow, DirectoryQueue, DirectoryRelationshipRow } from './directory-types';
|
|
2
|
+
export interface DirectoryDashboardSummary {
|
|
3
|
+
ActivePeopleCount: number;
|
|
4
|
+
TotalPeopleCount: number;
|
|
5
|
+
ActiveOrganizationCount: number;
|
|
6
|
+
TotalOrganizationCount: number;
|
|
7
|
+
RelationshipCount: number;
|
|
8
|
+
PeopleMissingEmail: number;
|
|
9
|
+
PeopleMissingOrganization: number;
|
|
10
|
+
OrganizationsMissingType: number;
|
|
11
|
+
OrganizationsMissingWebsite: number;
|
|
12
|
+
PeoplePerDay: DirectoryDayBar[];
|
|
13
|
+
OrganizationTypeMix: DirectoryBarRow[];
|
|
14
|
+
WorthALook: DirectoryAttentionItem[];
|
|
15
|
+
Queues: DirectoryQueue[];
|
|
16
|
+
}
|
|
17
|
+
export declare function LoadDirectoryDashboardSummary(): Promise<DirectoryDashboardSummary | null>;
|
|
2
18
|
/** Cheap directory load — one round trip, no aggregates. */
|
|
3
19
|
export declare function LoadDirectorySnapshot(): Promise<{
|
|
4
20
|
People: DirectoryPersonRow[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory-queries.d.ts","sourceRoot":"","sources":["../../../src/lib/data/directory-queries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"directory-queries.d.ts","sourceRoot":"","sources":["../../../src/lib/data/directory-queries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EAC3B,MAAM,mBAAmB,CAAC;AAK3B,MAAM,WAAW,yBAAyB;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,uBAAuB,EAAE,MAAM,CAAC;IAChC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,yBAAyB,EAAE,MAAM,CAAC;IAClC,wBAAwB,EAAE,MAAM,CAAC;IACjC,2BAA2B,EAAE,MAAM,CAAC;IACpC,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,mBAAmB,EAAE,eAAe,EAAE,CAAC;IACvC,UAAU,EAAE,sBAAsB,EAAE,CAAC;IACrC,MAAM,EAAE,cAAc,EAAE,CAAC;CAC5B;AAkBD,wBAAsB,6BAA6B,IAAI,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CA6G/F;AAkDD,4DAA4D;AAC5D,wBAAsB,qBAAqB,IAAI,OAAO,CAAC;IACnD,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,aAAa,EAAE,wBAAwB,EAAE,CAAC;IAC1C,aAAa,EAAE,wBAAwB,EAAE,CAAC;CAC7C,CAAC,CA+BD;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAW5F;AAED,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAWzG"}
|
|
@@ -1,5 +1,128 @@
|
|
|
1
|
-
import { RunView } from '@memberjunction/core';
|
|
1
|
+
import { LogError, RunQuery, RunView } from '@memberjunction/core';
|
|
2
2
|
import { COMMON_ENTITIES } from './entity-names';
|
|
3
|
+
const DIRECTORY_SUMMARY_QUERY = 'Common: Directory Dashboard Summary';
|
|
4
|
+
const DIRECTORY_SUMMARY_CATEGORY = 'Common';
|
|
5
|
+
function num(v) {
|
|
6
|
+
return v === null || v === undefined || v === '' ? 0 : Number(v);
|
|
7
|
+
}
|
|
8
|
+
function str(v) {
|
|
9
|
+
if (v === null || v === undefined)
|
|
10
|
+
return null;
|
|
11
|
+
const s = String(v).trim();
|
|
12
|
+
return s.length ? s : null;
|
|
13
|
+
}
|
|
14
|
+
function weekdayUtc(daysAgo) {
|
|
15
|
+
const d = new Date();
|
|
16
|
+
d.setUTCDate(d.getUTCDate() - daysAgo);
|
|
17
|
+
return d.toLocaleDateString('en-US', { weekday: 'short', timeZone: 'UTC' });
|
|
18
|
+
}
|
|
19
|
+
export async function LoadDirectoryDashboardSummary() {
|
|
20
|
+
const result = await new RunQuery().RunQuery({
|
|
21
|
+
QueryName: DIRECTORY_SUMMARY_QUERY,
|
|
22
|
+
CategoryPath: DIRECTORY_SUMMARY_CATEGORY,
|
|
23
|
+
});
|
|
24
|
+
if (!result?.Success) {
|
|
25
|
+
LogError(`Common: Directory Dashboard Summary failed — ${result?.ErrorMessage ?? 'unknown error'}`);
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
const row = (result.Results ?? [])[0];
|
|
29
|
+
if (!row) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
const queues = [
|
|
33
|
+
{
|
|
34
|
+
Label: 'People without email',
|
|
35
|
+
Note: 'Hard to reach, and every other app asks for it',
|
|
36
|
+
Count: num(row['PeopleMissingEmail']),
|
|
37
|
+
Icon: 'fa-solid fa-envelope',
|
|
38
|
+
Tone: 'warning',
|
|
39
|
+
PageId: 'people',
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
Label: 'People without an organization',
|
|
43
|
+
Note: 'Not linked to a current employer or member org',
|
|
44
|
+
Count: num(row['PeopleMissingOrganization']),
|
|
45
|
+
Icon: 'fa-solid fa-building-user',
|
|
46
|
+
Tone: 'info',
|
|
47
|
+
PageId: 'people',
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
Label: 'Organizations without a type',
|
|
51
|
+
Note: 'Company, chapter, vendor — the directory cannot sort them',
|
|
52
|
+
Count: num(row['OrganizationsMissingType']),
|
|
53
|
+
Icon: 'fa-solid fa-tags',
|
|
54
|
+
Tone: 'warning',
|
|
55
|
+
PageId: 'organizations',
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
Label: 'Organizations without a website',
|
|
59
|
+
Note: 'The first thing a person looks up',
|
|
60
|
+
Count: num(row['OrganizationsMissingWebsite']),
|
|
61
|
+
Icon: 'fa-solid fa-globe',
|
|
62
|
+
Tone: 'neutral',
|
|
63
|
+
PageId: 'organizations',
|
|
64
|
+
},
|
|
65
|
+
];
|
|
66
|
+
const mixRaw = str(row['OrgTypeMixJson']);
|
|
67
|
+
let mix = [];
|
|
68
|
+
if (mixRaw) {
|
|
69
|
+
try {
|
|
70
|
+
const parsed = JSON.parse(mixRaw);
|
|
71
|
+
mix = parsed
|
|
72
|
+
.map((item) => ({ Label: item.Label || 'Unspecified', Value: num(item.Value) }))
|
|
73
|
+
.sort((a, b) => b.Value - a.Value);
|
|
74
|
+
}
|
|
75
|
+
catch (e) {
|
|
76
|
+
LogError(`Common: Directory Dashboard Summary OrgTypeMixJson parse failed — ${e}`);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
const worth = [];
|
|
80
|
+
const emailId = str(row['AttentionEmailPersonID']);
|
|
81
|
+
if (emailId && num(row['PeopleMissingEmail']) > 0) {
|
|
82
|
+
const name = str(row['AttentionEmailName']) || 'Someone';
|
|
83
|
+
const org = str(row['AttentionEmailOrg']);
|
|
84
|
+
worth.push({
|
|
85
|
+
Kind: 'person',
|
|
86
|
+
RecordID: emailId,
|
|
87
|
+
Tone: 'warning',
|
|
88
|
+
Icon: 'fa-solid fa-envelope',
|
|
89
|
+
Headline: `${name} has no email.`,
|
|
90
|
+
Detail: org ? `Active at ${org}.` : 'No organization on file either.',
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
const typeId = str(row['AttentionTypeOrgID']);
|
|
94
|
+
if (typeId && num(row['OrganizationsMissingType']) > 0) {
|
|
95
|
+
const name = str(row['AttentionTypeOrgName']) || 'An organization';
|
|
96
|
+
const site = str(row['AttentionTypeWebsite']);
|
|
97
|
+
worth.push({
|
|
98
|
+
Kind: 'organization',
|
|
99
|
+
RecordID: typeId,
|
|
100
|
+
Tone: 'warning',
|
|
101
|
+
Icon: 'fa-solid fa-tags',
|
|
102
|
+
Headline: `${name} has no organization type.`,
|
|
103
|
+
Detail: site ? site : 'No website on file either.',
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
return {
|
|
107
|
+
ActivePeopleCount: num(row['ActivePeople']),
|
|
108
|
+
TotalPeopleCount: num(row['TotalPeople']),
|
|
109
|
+
ActiveOrganizationCount: num(row['ActiveOrganizations']),
|
|
110
|
+
TotalOrganizationCount: num(row['TotalOrganizations']),
|
|
111
|
+
RelationshipCount: num(row['RelationshipCount']),
|
|
112
|
+
PeopleMissingEmail: num(row['PeopleMissingEmail']),
|
|
113
|
+
PeopleMissingOrganization: num(row['PeopleMissingOrganization']),
|
|
114
|
+
OrganizationsMissingType: num(row['OrganizationsMissingType']),
|
|
115
|
+
OrganizationsMissingWebsite: num(row['OrganizationsMissingWebsite']),
|
|
116
|
+
PeoplePerDay: [6, 5, 4, 3, 2, 1, 0].map((ago) => ({
|
|
117
|
+
Label: weekdayUtc(ago),
|
|
118
|
+
Value: num(row[`PeopleAddedD${ago}`]),
|
|
119
|
+
Current: ago === 0,
|
|
120
|
+
})),
|
|
121
|
+
OrganizationTypeMix: mix,
|
|
122
|
+
WorthALook: worth,
|
|
123
|
+
Queues: queues.filter((q) => q.Count > 0),
|
|
124
|
+
};
|
|
125
|
+
}
|
|
3
126
|
const PERSON_FIELDS = [
|
|
4
127
|
'ID',
|
|
5
128
|
'DisplayName',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory-queries.js","sourceRoot":"","sources":["../../../src/lib/data/directory-queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"directory-queries.js","sourceRoot":"","sources":["../../../src/lib/data/directory-queries.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,5 +20,12 @@ export declare function LatestByCreated<T extends {
|
|
|
20
20
|
export declare function BuildDirectoryQueues(people: readonly DirectoryPersonRow[], orgs: readonly DirectoryOrganizationRow[]): DirectoryQueue[];
|
|
21
21
|
export declare function BuildAttentionItems(people: readonly DirectoryPersonRow[], orgs: readonly DirectoryOrganizationRow[]): DirectoryAttentionItem[];
|
|
22
22
|
export declare function RelationshipParty(row: DirectoryRelationshipRow): string;
|
|
23
|
+
/** Escape free text for use inside a SQL string literal: drop NULs, double single quotes. */
|
|
23
24
|
export declare function EscapeFilterValue(value: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* Escape free text for use inside a SQL Server LIKE pattern: everything EscapeFilterValue does,
|
|
27
|
+
* plus bracket-escaping the LIKE wildcards so a user typing `%`, `_` or `[` searches for the
|
|
28
|
+
* literal character instead of widening the match.
|
|
29
|
+
*/
|
|
30
|
+
export declare function EscapeLikeValue(value: string): string;
|
|
24
31
|
//# sourceMappingURL=directory-stats.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory-stats.d.ts","sourceRoot":"","sources":["../../../src/lib/data/directory-stats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EAC3B,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI,CAErE;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI,CAErE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAOxD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAExF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAAG,wBAAwB,EAAE,CAEzG;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAE9F;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAErG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAAG,wBAAwB,EAAE,CAE9G;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAAG,wBAAwB,EAAE,CAEjH;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;IAAE,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,EAAE,EAAE,IAAI,SAAI,GAAG,eAAe,EAAE,CAc1G;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,eAAe,EAAE,CASlF;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,SAAI,GAAG,CAAC,EAAE,CAI9G;AAED,wBAAgB,oBAAoB,CAChC,MAAM,EAAE,SAAS,kBAAkB,EAAE,EACrC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAC1C,cAAc,EAAE,CAoClB;AAED,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,SAAS,kBAAkB,EAAE,EACrC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAC1C,sBAAsB,EAAE,CA6B1B;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,wBAAwB,GAAG,MAAM,CAIvE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
1
|
+
{"version":3,"file":"directory-stats.d.ts","sourceRoot":"","sources":["../../../src/lib/data/directory-stats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EAC3B,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI,CAErE;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI,CAErE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAOxD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAExF;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAAG,wBAAwB,EAAE,CAEzG;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAE9F;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAErG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAAG,wBAAwB,EAAE,CAE9G;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAAG,wBAAwB,EAAE,CAEjH;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS;IAAE,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,EAAE,EAAE,IAAI,SAAI,GAAG,eAAe,EAAE,CAc1G;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,eAAe,EAAE,CASlF;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,SAAI,GAAG,CAAC,EAAE,CAI9G;AAED,wBAAgB,oBAAoB,CAChC,MAAM,EAAE,SAAS,kBAAkB,EAAE,EACrC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAC1C,cAAc,EAAE,CAoClB;AAED,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,SAAS,kBAAkB,EAAE,EACrC,IAAI,EAAE,SAAS,wBAAwB,EAAE,GAC1C,sBAAsB,EAAE,CA6B1B;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,wBAAwB,GAAG,MAAM,CAIvE;AAED,6FAA6F;AAC7F,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKrD"}
|
|
@@ -131,7 +131,19 @@ export function RelationshipParty(row) {
|
|
|
131
131
|
const to = row.ToPerson || row.ToOrganization || '—';
|
|
132
132
|
return `${from} → ${to}`;
|
|
133
133
|
}
|
|
134
|
+
/** Escape free text for use inside a SQL string literal: drop NULs, double single quotes. */
|
|
134
135
|
export function EscapeFilterValue(value) {
|
|
135
|
-
return value.replace(/'/g, "''");
|
|
136
|
+
return value.replace(/\0/g, '').replace(/'/g, "''");
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Escape free text for use inside a SQL Server LIKE pattern: everything EscapeFilterValue does,
|
|
140
|
+
* plus bracket-escaping the LIKE wildcards so a user typing `%`, `_` or `[` searches for the
|
|
141
|
+
* literal character instead of widening the match.
|
|
142
|
+
*/
|
|
143
|
+
export function EscapeLikeValue(value) {
|
|
144
|
+
return EscapeFilterValue(value)
|
|
145
|
+
.replace(/\[/g, '[[]')
|
|
146
|
+
.replace(/%/g, '[%]')
|
|
147
|
+
.replace(/_/g, '[_]');
|
|
136
148
|
}
|
|
137
149
|
//# sourceMappingURL=directory-stats.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory-stats.js","sourceRoot":"","sources":["../../../src/lib/data/directory-stats.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"directory-stats.js","sourceRoot":"","sources":["../../../src/lib/data/directory-stats.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,WAAW,CAAC,MAA0B;IAClD,OAAO,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAA0B;IAClD,OAAO,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAoB;IAC5C,MAAM,IAAI,GAAG,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3D,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpD,OAAO,GAAG,IAAI,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAqC;IAC9D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAyC;IACzE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAqC;IACpE,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,MAAqC;IAC3E,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAyC;IAC9E,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAAyC;IACjF,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAkD,EAAE,IAAI,GAAG,CAAC;IACnF,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,IAAI,GAAsB,EAAE,CAAC;IACnC,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC;YACN,KAAK,EAAE,GAAG,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;YAC5D,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM;YAC3E,OAAO,EAAE,IAAI,KAAK,CAAC;SACtB,CAAC,CAAC;IACP,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAkC;IAC3D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,aAAa,CAAC;QACzC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;SACvB,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;SAC3C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,eAAe,CAA8C,IAAkB,EAAE,IAAI,GAAG,CAAC;IACrG,OAAO,CAAC,GAAG,IAAI,CAAC;SACX,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;SAChF,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAChC,MAAqC,EACrC,IAAyC;IAEzC,MAAM,MAAM,GAAqB;QAC7B;YACI,KAAK,EAAE,sBAAsB;YAC7B,IAAI,EAAE,gDAAgD;YACtD,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM;YACxC,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,QAAQ;SACnB;QACD;YACI,KAAK,EAAE,gCAAgC;YACvC,IAAI,EAAE,gDAAgD;YACtD,KAAK,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC,MAAM;YAC/C,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,QAAQ;SACnB;QACD;YACI,KAAK,EAAE,8BAA8B;YACrC,IAAI,EAAE,2DAA2D;YACjE,KAAK,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC,MAAM;YAC5C,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,eAAe;SAC1B;QACD;YACI,KAAK,EAAE,iCAAiC;YACxC,IAAI,EAAE,mCAAmC;YACzC,KAAK,EAAE,2BAA2B,CAAC,IAAI,CAAC,CAAC,MAAM;YAC/C,IAAI,EAAE,mBAAmB;YACzB,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,eAAe;SAC1B;KACJ,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAC/B,MAAqC,EACrC,IAAyC;IAEzC,MAAM,KAAK,GAA6B,EAAE,CAAC;IAC3C,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,IAAI,YAAY,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,YAAY,CAAC,EAAE;YACzB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,sBAAsB;YAC5B,QAAQ,EAAE,GAAG,YAAY,CAAC,WAAW,gBAAgB;YACrD,MAAM,EAAE,YAAY,CAAC,uBAAuB;gBACxC,CAAC,CAAC,aAAa,YAAY,CAAC,uBAAuB,GAAG;gBACtD,CAAC,CAAC,iCAAiC;SAC1C,CAAC,CAAC;IACP,CAAC;IAED,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,IAAI,WAAW,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,WAAW,CAAC,EAAE;YACxB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,kBAAkB;YACxB,QAAQ,EAAE,GAAG,WAAW,CAAC,IAAI,4BAA4B;YACzD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,4BAA4B;SACnF,CAAC,CAAC;IACP,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAA6B;IAC3D,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,gBAAgB,IAAI,GAAG,CAAC;IAC3D,MAAM,EAAE,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC;IACrD,OAAO,GAAG,IAAI,MAAM,EAAE,EAAE,CAAC;AAC7B,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa;IACzC,OAAO,iBAAiB,CAAC,KAAK,CAAC;SAC1B,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { EntityInfo } from '@memberjunction/core';
|
|
2
|
+
import type { MJUserViewEntityExtended } from '@memberjunction/core-entities';
|
|
3
|
+
import { COMMON_ENTITIES } from './entity-names';
|
|
4
|
+
export declare const DIRECTORY_VIEW_NAMES: {
|
|
5
|
+
readonly People: "Common: People directory";
|
|
6
|
+
readonly LatestPeople: "Common: Latest people";
|
|
7
|
+
readonly Organizations: "Common: Organizations directory";
|
|
8
|
+
readonly Relationships: "Common: Relationships";
|
|
9
|
+
readonly LatestRelationships: "Common: Latest relationships";
|
|
10
|
+
};
|
|
11
|
+
type GridCol = {
|
|
12
|
+
Name: string;
|
|
13
|
+
DisplayName: string;
|
|
14
|
+
orderIndex: number;
|
|
15
|
+
width: number;
|
|
16
|
+
pinned?: 'left' | 'right' | null;
|
|
17
|
+
format?: Record<string, unknown>;
|
|
18
|
+
};
|
|
19
|
+
declare function grid(sortField: string, dir: 'asc' | 'desc', columns: GridCol[]): {
|
|
20
|
+
sortSettings: {
|
|
21
|
+
field: string;
|
|
22
|
+
dir: "asc" | "desc";
|
|
23
|
+
}[];
|
|
24
|
+
columnSettings: GridCol[];
|
|
25
|
+
};
|
|
26
|
+
export declare function PeopleDirectoryGridState(): {
|
|
27
|
+
sortSettings: {
|
|
28
|
+
field: string;
|
|
29
|
+
dir: "asc" | "desc";
|
|
30
|
+
}[];
|
|
31
|
+
columnSettings: GridCol[];
|
|
32
|
+
};
|
|
33
|
+
export declare function LatestPeopleGridState(): {
|
|
34
|
+
sortSettings: {
|
|
35
|
+
field: string;
|
|
36
|
+
dir: "asc" | "desc";
|
|
37
|
+
}[];
|
|
38
|
+
columnSettings: GridCol[];
|
|
39
|
+
};
|
|
40
|
+
export declare function OrganizationsDirectoryGridState(): {
|
|
41
|
+
sortSettings: {
|
|
42
|
+
field: string;
|
|
43
|
+
dir: "asc" | "desc";
|
|
44
|
+
}[];
|
|
45
|
+
columnSettings: GridCol[];
|
|
46
|
+
};
|
|
47
|
+
export declare function RelationshipsGridState(): {
|
|
48
|
+
sortSettings: {
|
|
49
|
+
field: string;
|
|
50
|
+
dir: "asc" | "desc";
|
|
51
|
+
}[];
|
|
52
|
+
columnSettings: GridCol[];
|
|
53
|
+
};
|
|
54
|
+
export declare function LoadDirectoryView(entityName: string, viewName: string, gridState: ReturnType<typeof grid>, orderBy: string): Promise<{
|
|
55
|
+
entity: EntityInfo | null;
|
|
56
|
+
view: MJUserViewEntityExtended | null;
|
|
57
|
+
}>;
|
|
58
|
+
export declare function LoadPeopleDirectoryView(): Promise<{
|
|
59
|
+
entity: EntityInfo | null;
|
|
60
|
+
view: MJUserViewEntityExtended | null;
|
|
61
|
+
}>;
|
|
62
|
+
export declare function LoadLatestPeopleView(): Promise<{
|
|
63
|
+
entity: EntityInfo | null;
|
|
64
|
+
view: MJUserViewEntityExtended | null;
|
|
65
|
+
}>;
|
|
66
|
+
export declare function LoadOrganizationsDirectoryView(): Promise<{
|
|
67
|
+
entity: EntityInfo | null;
|
|
68
|
+
view: MJUserViewEntityExtended | null;
|
|
69
|
+
}>;
|
|
70
|
+
export declare function LoadLatestRelationshipsView(): Promise<{
|
|
71
|
+
entity: EntityInfo | null;
|
|
72
|
+
view: MJUserViewEntityExtended | null;
|
|
73
|
+
}>;
|
|
74
|
+
export { COMMON_ENTITIES };
|
|
75
|
+
//# sourceMappingURL=directory-views.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directory-views.d.ts","sourceRoot":"","sources":["../../../src/lib/data/directory-views.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,eAAO,MAAM,oBAAoB;;;;;;CAMvB,CAAC;AAEX,KAAK,OAAO,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC;AAEF,iBAAS,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE;;;;;;EAEvE;AAED,wBAAgB,wBAAwB;;;;;;EAUvC;AAED,wBAAgB,qBAAqB;;;;;;EAQpC;AAED,wBAAgB,+BAA+B;;;;;;EAS9C;AAED,wBAAgB,sBAAsB;;;;;;EAUrC;AAoCD,wBAAsB,iBAAiB,CACnC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,EAClC,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,wBAAwB,GAAG,IAAI,CAAA;CAAE,CAAC,CAO/E;AAED,wBAAsB,uBAAuB;YATxB,UAAU,GAAG,IAAI;UAAQ,wBAAwB,GAAG,IAAI;GAW5E;AAED,wBAAsB,oBAAoB;YAbrB,UAAU,GAAG,IAAI;UAAQ,wBAAwB,GAAG,IAAI;GAe5E;AAED,wBAAsB,8BAA8B;YAjB/B,UAAU,GAAG,IAAI;UAAQ,wBAAwB,GAAG,IAAI;GAmB5E;AAED,wBAAsB,2BAA2B;YArB5B,UAAU,GAAG,IAAI;UAAQ,wBAAwB,GAAG,IAAI;GAuB5E;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Named User Views for Directory grids. `mj-entity-viewer` reads columns from
|
|
3
|
+
* `UserView.GridState`. PhotoURL / LogoURL are first so the viewer can render
|
|
4
|
+
* thumbnails (entity-viewer image cells). Until metadata is pushed, we fall
|
|
5
|
+
* back to an in-memory view with the same GridState.
|
|
6
|
+
*/
|
|
7
|
+
import { Metadata, RunView } from '@memberjunction/core';
|
|
8
|
+
import { COMMON_ENTITIES } from './entity-names';
|
|
9
|
+
export const DIRECTORY_VIEW_NAMES = {
|
|
10
|
+
People: 'Common: People directory',
|
|
11
|
+
LatestPeople: 'Common: Latest people',
|
|
12
|
+
Organizations: 'Common: Organizations directory',
|
|
13
|
+
Relationships: 'Common: Relationships',
|
|
14
|
+
LatestRelationships: 'Common: Latest relationships',
|
|
15
|
+
};
|
|
16
|
+
function grid(sortField, dir, columns) {
|
|
17
|
+
return { sortSettings: [{ field: sortField, dir }], columnSettings: columns };
|
|
18
|
+
}
|
|
19
|
+
export function PeopleDirectoryGridState() {
|
|
20
|
+
return grid('DisplayName', 'asc', [
|
|
21
|
+
{ Name: 'PhotoURL', DisplayName: 'Photo', orderIndex: 0, width: 72, format: { type: 'image' } },
|
|
22
|
+
{ Name: 'DisplayName', DisplayName: 'Name', orderIndex: 1, width: 220, pinned: 'left' },
|
|
23
|
+
{ Name: 'Title', DisplayName: 'Title', orderIndex: 2, width: 160 },
|
|
24
|
+
{ Name: 'CurrentOrganizationName', DisplayName: 'Organization', orderIndex: 3, width: 200 },
|
|
25
|
+
{ Name: 'PrimaryEmail', DisplayName: 'Email', orderIndex: 4, width: 200 },
|
|
26
|
+
{ Name: 'PrimaryPhone', DisplayName: 'Phone', orderIndex: 5, width: 140 },
|
|
27
|
+
{ Name: 'Status', DisplayName: 'Status', orderIndex: 6, width: 110 },
|
|
28
|
+
]);
|
|
29
|
+
}
|
|
30
|
+
export function LatestPeopleGridState() {
|
|
31
|
+
return grid('__mj_CreatedAt', 'desc', [
|
|
32
|
+
{ Name: 'PhotoURL', DisplayName: 'Photo', orderIndex: 0, width: 72, format: { type: 'image' } },
|
|
33
|
+
{ Name: 'DisplayName', DisplayName: 'Name', orderIndex: 1, width: 220, pinned: 'left' },
|
|
34
|
+
{ Name: 'CurrentOrganizationName', DisplayName: 'Organization', orderIndex: 2, width: 200 },
|
|
35
|
+
{ Name: 'PrimaryEmail', DisplayName: 'Email', orderIndex: 3, width: 200 },
|
|
36
|
+
{ Name: '__mj_CreatedAt', DisplayName: 'Added', orderIndex: 4, width: 140, format: { type: 'date', dateFormat: 'medium' } },
|
|
37
|
+
]);
|
|
38
|
+
}
|
|
39
|
+
export function OrganizationsDirectoryGridState() {
|
|
40
|
+
return grid('Name', 'asc', [
|
|
41
|
+
{ Name: 'LogoURL', DisplayName: 'Logo', orderIndex: 0, width: 72, format: { type: 'image' } },
|
|
42
|
+
{ Name: 'Name', DisplayName: 'Organization', orderIndex: 1, width: 240, pinned: 'left' },
|
|
43
|
+
{ Name: 'OrganizationType', DisplayName: 'Type', orderIndex: 2, width: 140 },
|
|
44
|
+
{ Name: 'Website', DisplayName: 'Website', orderIndex: 3, width: 200 },
|
|
45
|
+
{ Name: 'PrimaryAddressCity', DisplayName: 'City', orderIndex: 4, width: 140 },
|
|
46
|
+
{ Name: 'Status', DisplayName: 'Status', orderIndex: 5, width: 110 },
|
|
47
|
+
]);
|
|
48
|
+
}
|
|
49
|
+
export function RelationshipsGridState() {
|
|
50
|
+
return grid('__mj_CreatedAt', 'desc', [
|
|
51
|
+
{ Name: 'RelationshipType', DisplayName: 'Type', orderIndex: 0, width: 140 },
|
|
52
|
+
{ Name: 'Title', DisplayName: 'Title', orderIndex: 1, width: 200 },
|
|
53
|
+
{ Name: 'FromPerson', DisplayName: 'From person', orderIndex: 2, width: 180 },
|
|
54
|
+
{ Name: 'FromOrganization', DisplayName: 'From org', orderIndex: 3, width: 180 },
|
|
55
|
+
{ Name: 'ToPerson', DisplayName: 'To person', orderIndex: 4, width: 180 },
|
|
56
|
+
{ Name: 'ToOrganization', DisplayName: 'To org', orderIndex: 5, width: 180 },
|
|
57
|
+
{ Name: 'Status', DisplayName: 'Status', orderIndex: 6, width: 110 },
|
|
58
|
+
]);
|
|
59
|
+
}
|
|
60
|
+
async function loadViewByName(name) {
|
|
61
|
+
const rv = new RunView();
|
|
62
|
+
const found = await rv.RunView({
|
|
63
|
+
EntityName: 'MJ: User Views',
|
|
64
|
+
ExtraFilter: `Name = '${name.replace(/'/g, "''")}'`,
|
|
65
|
+
Fields: ['ID'],
|
|
66
|
+
MaxRows: 1,
|
|
67
|
+
ResultType: 'simple',
|
|
68
|
+
});
|
|
69
|
+
const id = found.Success ? found.Results?.[0]?.ID : undefined;
|
|
70
|
+
if (!id)
|
|
71
|
+
return null;
|
|
72
|
+
const md = new Metadata();
|
|
73
|
+
const view = await md.GetEntityObject('MJ: User Views');
|
|
74
|
+
const ok = await view.Load(id);
|
|
75
|
+
return ok ? view : null;
|
|
76
|
+
}
|
|
77
|
+
function synthetic(entity, name, gridState, orderBy) {
|
|
78
|
+
return {
|
|
79
|
+
EntityID: entity.ID,
|
|
80
|
+
Entity: entity.Name,
|
|
81
|
+
Name: name,
|
|
82
|
+
WhereClause: '',
|
|
83
|
+
GridState: JSON.stringify(gridState),
|
|
84
|
+
GridStateObject: gridState,
|
|
85
|
+
OrderByClause: orderBy,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
export async function LoadDirectoryView(entityName, viewName, gridState, orderBy) {
|
|
89
|
+
const md = new Metadata();
|
|
90
|
+
const entity = md.EntityByName(entityName) ?? null;
|
|
91
|
+
if (!entity)
|
|
92
|
+
return { entity: null, view: null };
|
|
93
|
+
const named = await loadViewByName(viewName);
|
|
94
|
+
if (named)
|
|
95
|
+
return { entity, view: named };
|
|
96
|
+
return { entity, view: synthetic(entity, viewName, gridState, orderBy) };
|
|
97
|
+
}
|
|
98
|
+
export async function LoadPeopleDirectoryView() {
|
|
99
|
+
return LoadDirectoryView(COMMON_ENTITIES.Person, DIRECTORY_VIEW_NAMES.People, PeopleDirectoryGridState(), 'DisplayName ASC');
|
|
100
|
+
}
|
|
101
|
+
export async function LoadLatestPeopleView() {
|
|
102
|
+
return LoadDirectoryView(COMMON_ENTITIES.Person, DIRECTORY_VIEW_NAMES.LatestPeople, LatestPeopleGridState(), '__mj_CreatedAt DESC');
|
|
103
|
+
}
|
|
104
|
+
export async function LoadOrganizationsDirectoryView() {
|
|
105
|
+
return LoadDirectoryView(COMMON_ENTITIES.Organization, DIRECTORY_VIEW_NAMES.Organizations, OrganizationsDirectoryGridState(), 'Name ASC');
|
|
106
|
+
}
|
|
107
|
+
export async function LoadLatestRelationshipsView() {
|
|
108
|
+
return LoadDirectoryView(COMMON_ENTITIES.Relationship, DIRECTORY_VIEW_NAMES.LatestRelationships, RelationshipsGridState(), '__mj_CreatedAt DESC');
|
|
109
|
+
}
|
|
110
|
+
export { COMMON_ENTITIES };
|
|
111
|
+
//# sourceMappingURL=directory-views.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directory-views.js","sourceRoot":"","sources":["../../../src/lib/data/directory-views.ts"],"names":[],"mappings":"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"}
|