@mikezimm/fps-library-v2 1.0.182 → 1.0.184
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/CHANGELOG.md +60 -36
- package/lib/banner/FPSWebPartClass/FPSBaseClass.d.ts +1 -0
- package/lib/banner/FPSWebPartClass/FPSBaseClass.d.ts.map +1 -1
- package/lib/banner/FPSWebPartClass/FPSBaseClass.js +1 -0
- package/lib/banner/FPSWebPartClass/FPSBaseClass.js.map +1 -1
- package/lib/banner/FPSWebPartClass/IThisFPSWebPartClass.d.ts +1 -0
- package/lib/banner/FPSWebPartClass/IThisFPSWebPartClass.d.ts.map +1 -1
- package/lib/banner/FPSWebPartClass/runSuperOnInit.d.ts.map +1 -1
- package/lib/banner/FPSWebPartClass/runSuperOnInit.js +4 -2
- package/lib/banner/FPSWebPartClass/runSuperOnInit.js.map +1 -1
- package/lib/banner/FPSWebPartClass/runWebPartRender.js +1 -1
- package/lib/banner/FPSWebPartClass/runWebPartRender.js.map +1 -1
- package/lib/banner/bannerX/FetchBannerX.d.ts.map +1 -1
- package/lib/banner/bannerX/FetchBannerX.js +6 -1
- package/lib/banner/bannerX/FetchBannerX.js.map +1 -1
- package/lib/banner/components/SingleHelpPage/makeTricksTable.d.ts +1 -0
- package/lib/banner/components/SingleHelpPage/makeTricksTable.d.ts.map +1 -1
- package/lib/banner/components/SingleHelpPage/makeTricksTable.js +2 -0
- package/lib/banner/components/SingleHelpPage/makeTricksTable.js.map +1 -1
- package/lib/banner/features/PageStyle/renderCustStyles.d.ts.map +1 -1
- package/lib/banner/features/PageStyle/renderCustStyles.js.map +1 -1
- package/lib/common/PropPaneHelp/preconfig/ApplyPresets.d.ts.map +1 -1
- package/lib/common/PropPaneHelp/preconfig/ApplyPresets.js +3 -1
- package/lib/common/PropPaneHelp/preconfig/ApplyPresets.js.map +1 -1
- package/lib/components/molecules/RelatedItems/GetItems.d.ts +5 -0
- package/lib/components/molecules/RelatedItems/GetItems.d.ts.map +1 -0
- package/lib/components/molecules/RelatedItems/GetItems.js +151 -0
- package/lib/components/molecules/RelatedItems/GetItems.js.map +1 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsProps.d.ts +33 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsProps.d.ts.map +1 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsProps.js +2 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsProps.js.map +1 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsState.d.ts +25 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsState.d.ts.map +1 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsState.js +2 -0
- package/lib/components/molecules/RelatedItems/IRelatedItemsState.js.map +1 -0
- package/lib/components/molecules/RelatedItems/IRelatedWebPartProps.d.ts +43 -0
- package/lib/components/molecules/RelatedItems/IRelatedWebPartProps.d.ts.map +1 -0
- package/lib/components/molecules/RelatedItems/IRelatedWebPartProps.js +8 -0
- package/lib/components/molecules/RelatedItems/IRelatedWebPartProps.js.map +1 -0
- package/lib/components/molecules/RelatedItems/RelatedItems.d.ts +26 -0
- package/lib/components/molecules/RelatedItems/RelatedItems.d.ts.map +1 -0
- package/lib/components/molecules/RelatedItems/RelatedItems.js +232 -0
- package/lib/components/molecules/RelatedItems/RelatedItems.js.map +1 -0
- package/lib/components/molecules/RelatedItems/RelatedItemsPropGroup.d.ts +5 -0
- package/lib/components/molecules/RelatedItems/RelatedItemsPropGroup.d.ts.map +1 -0
- package/lib/components/molecules/RelatedItems/RelatedItemsPropGroup.js +70 -0
- package/lib/components/molecules/RelatedItems/RelatedItemsPropGroup.js.map +1 -0
- package/lib/logic/DOM/Headings/Interfaces.d.ts +2 -1
- package/lib/logic/DOM/Headings/Interfaces.d.ts.map +1 -1
- package/lib/logic/DOM/Headings/Interfaces.js +1 -1
- package/lib/logic/DOM/Headings/Interfaces.js.map +1 -1
- package/lib/logic/DOM/Headings/functions.d.ts +17 -0
- package/lib/logic/DOM/Headings/functions.d.ts.map +1 -1
- package/lib/logic/DOM/Headings/functions.js +46 -41
- package/lib/logic/DOM/Headings/functions.js.map +1 -1
- package/lib/logic/DOM/Tags/Interfaces.d.ts +2 -1
- package/lib/logic/DOM/Tags/Interfaces.d.ts.map +1 -1
- package/lib/logic/DOM/Tags/regexHtmlTags.js +1 -0
- package/lib/logic/DOM/Tags/regexHtmlTags.js.map +1 -1
- package/lib/pnpjs/Common/IStateSource.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
// import { Web, ISite } from '@pnp/sp/presets/all';
|
|
2
|
+
// import "@pnp/sp/webs";
|
|
3
|
+
// import "@pnp/sp/lists";
|
|
4
|
+
// import "@pnp/sp/items";
|
|
5
|
+
// import "@pnp/sp/webs";
|
|
6
|
+
import "@pnp/sp/clientside-pages/web";
|
|
7
|
+
import { replaceHTMLEntities } from '../../../logic/Strings/html';
|
|
8
|
+
import { checkDeepProperty } from '../../../logic/Objects/deep';
|
|
9
|
+
import { sortObjectArrayByStringKey } from '../../../logic/indexes/ArraySortingObjects';
|
|
10
|
+
import { getSourceItems } from "../../../pnpjs/SourceItems/getSourceItems";
|
|
11
|
+
// import { replaceHTMLEntities } from '../Services/Strings_/html';
|
|
12
|
+
//Standards are really site pages, supporting docs are files
|
|
13
|
+
export async function getRelatedItems(fetchInfo) {
|
|
14
|
+
// let errMess = '';
|
|
15
|
+
// if ( !fetchInfo.web ) { errMess += 'Web url, '; }
|
|
16
|
+
// if ( !fetchInfo.listTitle ) { errMess += 'ListTitle, '; }
|
|
17
|
+
// if ( !fetchInfo.displayProp ) { errMess += 'LabelColumn, '; }
|
|
18
|
+
// if ( errMess ) {
|
|
19
|
+
// errMess += ' are Required! Tip: Click yellow button for prop pane help :)';
|
|
20
|
+
// return { items: [], filtered: [], error: errMess , fetchInfo: fetchInfo };
|
|
21
|
+
// }
|
|
22
|
+
// // debugger;
|
|
23
|
+
// let web = await Web( `${window.location.origin}${fetchInfo.web}` );
|
|
24
|
+
// if ( fetchInfo.canvasImgs === true || fetchInfo.canvasLinks === true ) {
|
|
25
|
+
// fetchInfo.linkProp = 'CanvasContent1';
|
|
26
|
+
// fetchInfo.displayProp = '';
|
|
27
|
+
// }
|
|
28
|
+
// let baseSelectColumns = ['ID'];
|
|
29
|
+
// if ( fetchInfo.displayProp ) baseSelectColumns.push( fetchInfo.displayProp );
|
|
30
|
+
// if ( fetchInfo.linkProp ) baseSelectColumns.push( fetchInfo.linkProp );
|
|
31
|
+
// if ( fetchInfo.itemsAreFiles ) baseSelectColumns.push( 'ServerRedirectedEmbedUrl' );
|
|
32
|
+
// let expColumns = getExpandColumns( baseSelectColumns );
|
|
33
|
+
// let selColumns = getSelectColumns( baseSelectColumns );
|
|
34
|
+
// let expandThese = expColumns.length > 1 ? expColumns.join(",") : expColumns[0];
|
|
35
|
+
// if ( !expandThese ) expandThese = ''; //Added this for cases where there are no expanded columns and therefore expColumns is undefined.
|
|
36
|
+
//Do not get * columns when using standards so you don't pull WikiFields
|
|
37
|
+
//itemFetchCol
|
|
38
|
+
//let selectThese = '*,WikiField,FileRef,FileLeafRef,' + selColumns.join(",");
|
|
39
|
+
if (fetchInfo.canvasImgs === true || fetchInfo.canvasLinks === true) {
|
|
40
|
+
fetchInfo.linkProp = 'CanvasContent1';
|
|
41
|
+
fetchInfo.displayProp = '';
|
|
42
|
+
}
|
|
43
|
+
let baseSelectColumns = ['ID', 'Title'];
|
|
44
|
+
if (fetchInfo.displayProp)
|
|
45
|
+
baseSelectColumns.push(fetchInfo.displayProp);
|
|
46
|
+
if (fetchInfo.linkProp)
|
|
47
|
+
baseSelectColumns.push(fetchInfo.linkProp);
|
|
48
|
+
if (fetchInfo.itemsAreFiles)
|
|
49
|
+
baseSelectColumns.push('ServerRedirectedEmbedUrl');
|
|
50
|
+
const sourceProps = {
|
|
51
|
+
//These are specific to ISourceProps
|
|
52
|
+
key: 'related',
|
|
53
|
+
defType: 'related',
|
|
54
|
+
webRelativeLink: '',
|
|
55
|
+
searchSource: 'Related',
|
|
56
|
+
searchSourceDesc: 'Related Items',
|
|
57
|
+
webUrl: fetchInfo.web,
|
|
58
|
+
listTitle: fetchInfo.listTitle,
|
|
59
|
+
itemFetchCol: [],
|
|
60
|
+
columns: [...baseSelectColumns],
|
|
61
|
+
searchProps: [...baseSelectColumns],
|
|
62
|
+
selectThese: [...baseSelectColumns],
|
|
63
|
+
fetchCount: 500,
|
|
64
|
+
orderBy: {
|
|
65
|
+
prop: fetchInfo.displayProp,
|
|
66
|
+
order: 'asc',
|
|
67
|
+
asc: true,
|
|
68
|
+
},
|
|
69
|
+
performanceSettings: { label: 'RelatedItems', updateMiliseconds: true, includeMsStr: true, op: 'fetch11' },
|
|
70
|
+
defSearchButtons: [],
|
|
71
|
+
};
|
|
72
|
+
const stateSource = await getSourceItems({ ...sourceProps, ...{ editMode: null } }, false, true);
|
|
73
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars, prefer-const
|
|
74
|
+
let { items, errorInfo, } = stateSource;
|
|
75
|
+
if (errorInfo && errorInfo.returnMess.indexOf(`"List 'Site Pages' does not exist`) > 1)
|
|
76
|
+
alert(`I'm sorry, this site does NOT have a library Titled 'Site Pages :(`);
|
|
77
|
+
// let filtered: IAnyContent[] = [];
|
|
78
|
+
// console.log('getRelatedItems: fetchInfo', fetchInfo );
|
|
79
|
+
// try {
|
|
80
|
+
// items = await web.lists.getByTitle( fetchInfo.listTitle ).items
|
|
81
|
+
// .select(selectTheseString).filter(fetchInfo.restFilter).expand(expandThese).getAll();
|
|
82
|
+
// } catch (e) {
|
|
83
|
+
// errMess = getHelpfullErrorV2( e, true, true, 'getRelatedItems ~ 60');
|
|
84
|
+
// console.log('getRelatedItems: fetchInfo', fetchInfo );
|
|
85
|
+
// }
|
|
86
|
+
items.map(item => {
|
|
87
|
+
item.images = [];
|
|
88
|
+
item.links = [];
|
|
89
|
+
item.linkAlt = '';
|
|
90
|
+
if ((fetchInfo.canvasImgs === true || fetchInfo.canvasLinks === true) && item.CanvasContent1) {
|
|
91
|
+
item.CanvasContent1 = replaceHTMLEntities(item.CanvasContent1);
|
|
92
|
+
if (fetchInfo.canvasImgs === true) {
|
|
93
|
+
let sourceStrings = item.CanvasContent1.split('"imageSources":');
|
|
94
|
+
if (sourceStrings.length > 1) {
|
|
95
|
+
sourceStrings.map((source, idx) => {
|
|
96
|
+
if (idx > 0) { //Always skip index 0 because it is the string before the first tag.
|
|
97
|
+
let sourceString = source.substring(0, source.indexOf('}') + 1);
|
|
98
|
+
let sources = JSON.parse(sourceString);
|
|
99
|
+
Object.keys(sources).map(key => {
|
|
100
|
+
let url = decodeURI(sources[key]);
|
|
101
|
+
//Address https://github.com/mikezimm/PageInfo/issues/79
|
|
102
|
+
if (fetchInfo.ignoreDefaultImages !== true) { //Always push if this setting is false
|
|
103
|
+
item.images.push({ url: url, embed: 'gotoLink' });
|
|
104
|
+
//Else it's true and we need to only push if it does not contain this string.
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
let pushMe = true;
|
|
108
|
+
if (url.toLowerCase().indexOf('/_LAYOUTS/IMAGES/REPORTSITEDEFAULT'.toLowerCase()) > -1) {
|
|
109
|
+
pushMe = false;
|
|
110
|
+
}
|
|
111
|
+
else if (url.toLowerCase().indexOf('https://go.microsoft.com/fwlink/?link'.toLowerCase()) > -1) {
|
|
112
|
+
pushMe = false;
|
|
113
|
+
}
|
|
114
|
+
if (pushMe === true) {
|
|
115
|
+
item.images.push({ url: url, embed: 'gotoLink' });
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (fetchInfo.canvasLinks === true) {
|
|
124
|
+
let sourceStrings = item.CanvasContent1.split('<a ');
|
|
125
|
+
if (sourceStrings.length > 1) {
|
|
126
|
+
sourceStrings.map((source, idx) => {
|
|
127
|
+
if (idx > 0) { //Always skip index 0 because it is the string before the first tag.
|
|
128
|
+
let sourceString = source.substring(source.indexOf(' href="') + 7);
|
|
129
|
+
sourceString = sourceString.substring(0, sourceString.indexOf('"'));
|
|
130
|
+
item.links.push({ url: sourceString, embed: 'gotoLink' });
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
item.linkUrl = checkDeepProperty(item, fetchInfo.linkProp.split('/'), 'ShortError');
|
|
138
|
+
item.linkText = checkDeepProperty(item, fetchInfo.displayProp.split('/'), 'ShortError');
|
|
139
|
+
item.linkText = item.linkText ? decodeURI(item.linkText) : item.linkText;
|
|
140
|
+
if (item.linkText === '...Title = undef') {
|
|
141
|
+
item.linkText = 'No Title - Possibly DRAFT';
|
|
142
|
+
}
|
|
143
|
+
item.CanvasContent1 = '';
|
|
144
|
+
item.linkAlt = item.ServerRedirectedEmbedUrl ? item.ServerRedirectedEmbedUrl : '';
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
items = !fetchInfo.displayProp ? items : sortObjectArrayByStringKey(items, 'asc', 'linkText');
|
|
148
|
+
console.log('getRelatedItems: fetchInfo, items', fetchInfo, items);
|
|
149
|
+
return stateSource;
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=GetItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GetItems.js","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/GetItems.ts"],"names":[],"mappings":"AACA,oDAAoD;AAEpD,yBAAyB;AACzB,0BAA0B;AAC1B,0BAA0B;AAE1B,yBAAyB;AACzB,OAAO,8BAA8B,CAAC;AAiBtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AAExF,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAG3E,mEAAmE;AAEnE,4DAA4D;AAC3D,MAAM,CAAC,KAAK,UAAU,eAAe,CAAE,SAA4B;IAClE,oBAAoB;IAEpB,uDAAuD;IACvD,+DAA+D;IAC/D,mEAAmE;IACnE,qBAAqB;IACrB,oFAAoF;IACpF,iFAAiF;IACjF,MAAM;IAEN,iBAAiB;IACjB,wEAAwE;IAExE,6EAA6E;IAC7E,6CAA6C;IAC7C,kCAAkC;IAClC,MAAM;IAEJ,kCAAkC;IAClC,gFAAgF;IAChF,0EAA0E;IAC1E,uFAAuF;IAEvF,0DAA0D;IAC1D,0DAA0D;IAE1D,kFAAkF;IAClF,0IAA0I;IAE1I,wEAAwE;IAGxE,cAAc;IACd,8EAA8E;IAE9E,IAAK,SAAS,CAAC,UAAU,KAAK,IAAI,IAAI,SAAS,CAAC,WAAW,KAAK,IAAI,EAAG;QACrE,SAAS,CAAC,QAAQ,GAAG,gBAAgB,CAAC;QACtC,SAAS,CAAC,WAAW,GAAG,EAAE,CAAC;KAC5B;IAED,IAAI,iBAAiB,GAAG,CAAE,IAAI,EAAE,OAAO,CAAE,CAAC;IAC1C,IAAK,SAAS,CAAC,WAAW;QAAG,iBAAiB,CAAC,IAAI,CAAE,SAAS,CAAC,WAAW,CAAE,CAAC;IAC7E,IAAK,SAAS,CAAC,QAAQ;QAAG,iBAAiB,CAAC,IAAI,CAAE,SAAS,CAAC,QAAQ,CAAE,CAAC;IACvE,IAAK,SAAS,CAAC,aAAa;QAAG,iBAAiB,CAAC,IAAI,CAAE,0BAA0B,CAAE,CAAC;IAEpF,MAAM,WAAW,GAAiB;QAC9B,oCAAoC;QACpC,GAAG,EAAE,SAAS;QACd,OAAO,EAAE,SAAS;QAClB,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE,SAAS;QACvB,gBAAgB,EAAG,eAAe;QAClC,MAAM,EAAE,SAAS,CAAC,GAAG;QACrB,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,YAAY,EAAE,EAAE;QAChB,OAAO,EAAE,CAAE,GAAG,iBAAiB,CAAE;QACjC,WAAW,EAAE,CAAE,GAAG,iBAAiB,CAAE;QACrC,WAAW,EAAE,CAAE,GAAG,iBAAiB,CAAE;QAErC,UAAU,EAAE,GAAG;QACf,OAAO,EAAE;YACP,IAAI,EAAE,SAAS,CAAC,WAAW;YAC3B,KAAK,EAAE,KAAK;YACZ,GAAG,EAAE,IAAI;SACV;QAED,mBAAmB,EAAE,EAAG,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAG;QAC5G,gBAAgB,EAAE,EAAE;KAEvB,CAAA;IAED,MAAM,WAAW,GAAiB,MAAM,cAAc,CAAE,EAAE,GAAG,WAAW,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,CAAkB,CAAC;IAEjI,2EAA2E;IAC3E,IAAI,EAAE,KAAK,EAAE,SAAS,GAAG,GAAG,WAAW,CAAC;IAExC,IAAK,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,mCAAmC,CAAC,GAAG,CAAC;QAAG,KAAK,CAAE,oEAAoE,CAAC,CAAC;IAEvK,oCAAoC;IAEpC,yDAAyD;IAEzD,QAAQ;IACR,oEAAoE;IACpE,0FAA0F;IAE1F,gBAAgB;IAChB,0EAA0E;IAC1E,2DAA2D;IAE3D,IAAI;IAEJ,KAAK,CAAC,GAAG,CAAG,IAAI,CAAC,EAAE;QACjB,IAAI,CAAC,MAAM,GAAC,EAAE,CAAC;QACf,IAAI,CAAC,KAAK,GAAC,EAAE,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAK,CAAE,SAAS,CAAC,UAAU,KAAK,IAAI,IAAI,SAAS,CAAC,WAAW,KAAK,IAAI,CAAE,IAAI,IAAI,CAAC,cAAc,EAAG;YAChG,IAAI,CAAC,cAAc,GAAG,mBAAmB,CAAE,IAAI,CAAC,cAAc,CAAE,CAAC;YACjE,IAAK,SAAS,CAAC,UAAU,KAAK,IAAI,EAAG;gBACnC,IAAI,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACjE,IAAK,aAAa,CAAC,MAAM,GAAG,CAAC,EAAG;oBAC9B,aAAa,CAAC,GAAG,CAAE,CAAC,MAAc,EAAE,GAAW,EAAE,EAAE;wBACjD,IAAK,GAAG,GAAG,CAAC,EAAG,EAAE,oEAAoE;4BACnF,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAG,CAAE;4BACnE,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAE,YAAY,CAAE,CAAC;4BACzC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAE,GAAG,CAAC,EAAE;gCAC9B,IAAI,GAAG,GAAG,SAAS,CAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gCAEnC,wDAAwD;gCACxD,IAAK,SAAS,CAAC,mBAAmB,KAAK,IAAI,EAAG,EAAE,sCAAsC;oCACpF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,CAAE,CAAC;oCAEtD,6EAA6E;iCAC9E;qCAAM;oCACL,IAAI,MAAM,GAAY,IAAI,CAAC;oCAC3B,IAAK,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,oCAAoC,CAAC,WAAW,EAAE,CAAE,GAAG,CAAC,CAAC,EAAI;wCACxF,MAAM,GAAG,KAAK,CAAC;qCAClB;yCAAM,IAAK,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,uCAAuC,CAAC,WAAW,EAAE,CAAE,GAAG,CAAC,CAAC,EAAI;wCAClG,MAAM,GAAG,KAAK,CAAC;qCAClB;oCACD,IAAK,MAAM,KAAK,IAAI,EAAI;wCAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,CAAE,CAAC;qCAAE;iCACnF;4BAEC,CAAC,CAAC,CAAC;yBACJ;oBACH,CAAC,CAAC,CAAC;iBACJ;aACF;YAED,IAAK,SAAS,CAAC,WAAW,KAAK,IAAI,EAAG;gBACpC,IAAI,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrD,IAAK,aAAa,CAAC,MAAM,GAAG,CAAC,EAAG;oBAC9B,aAAa,CAAC,GAAG,CAAE,CAAC,MAAc,EAAE,GAAW,EAAE,EAAE;wBACjD,IAAK,GAAG,GAAG,CAAC,EAAG,EAAE,oEAAoE;4BACnF,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAE;4BACrE,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;4BACpE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAE,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,CAAE,CAAC;yBAC7D;oBACH,CAAC,CAAC,CAAC;iBACJ;aACF;SAEF;aAAM;YACL,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,YAAY,CAAE,CAAC;YACtF,IAAI,CAAC,QAAQ,GAAG,iBAAiB,CAAE,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,YAAY,CAAE,CAAC;YAC1F,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;YACzE,IAAK,IAAI,CAAC,QAAQ,KAAK,kBAAkB,EAAG;gBAAE,IAAI,CAAC,QAAQ,GAAG,2BAA2B,CAAC;aAAE;YAC5F,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YAEzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;SACnF;IAEH,CAAC,CAAC,CAAC;IAEH,KAAK,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAE,CAAC;IAEhG,OAAO,CAAC,GAAG,CAAE,mCAAmC,EAAE,SAAS,EAAG,KAAK,CAAE,CAAC;IAEtE,OAAO,WAAW,CAAC;AAErB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { WebPartContext } from "@microsoft/sp-webpart-base";
|
|
2
|
+
import { IReadonlyTheme } from '@microsoft/sp-component-base';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { IAnyContentRelated } from './IRelatedItemsState';
|
|
5
|
+
export interface IRelatedFetchInfo {
|
|
6
|
+
web: string;
|
|
7
|
+
listTitle: string;
|
|
8
|
+
restFilter: string;
|
|
9
|
+
itemsAreFiles: boolean;
|
|
10
|
+
linkProp: string;
|
|
11
|
+
displayProp: string;
|
|
12
|
+
canvasLinks?: boolean;
|
|
13
|
+
canvasImgs?: boolean;
|
|
14
|
+
ignoreDefaultImages?: boolean;
|
|
15
|
+
textFilter?: string;
|
|
16
|
+
textFilterProps?: string[];
|
|
17
|
+
}
|
|
18
|
+
export type IRelatedKey = 'related1' | 'related2' | 'pageLinks';
|
|
19
|
+
export interface IRelatedItemsProps {
|
|
20
|
+
context?: WebPartContext;
|
|
21
|
+
parentKey: IRelatedKey;
|
|
22
|
+
heading: string;
|
|
23
|
+
showItems: boolean;
|
|
24
|
+
isExpanded: boolean;
|
|
25
|
+
fetchInfo: IRelatedFetchInfo;
|
|
26
|
+
items?: IAnyContentRelated[];
|
|
27
|
+
linkSearchBox?: boolean;
|
|
28
|
+
linkFilter?: string;
|
|
29
|
+
linkTrimmed?: boolean;
|
|
30
|
+
themeVariant: IReadonlyTheme | undefined;
|
|
31
|
+
itemsStyle: React.CSSProperties;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=IRelatedItemsProps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IRelatedItemsProps.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/IRelatedItemsProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAG,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAE5B;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;AAEhE,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,iBAAiB,CAAC;IAE7B,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAE7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,YAAY,EAAE,cAAc,GAAG,SAAS,CAAC;IAEzC,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC;CACjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IRelatedItemsProps.js","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/IRelatedItemsProps.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IStateSource } from "../../../pnpjs/Common/IStateSource";
|
|
2
|
+
import { IAnySourceItem } from "../SourceList/IAnyContent";
|
|
3
|
+
export interface IUrlPairs {
|
|
4
|
+
url: string;
|
|
5
|
+
embed: string;
|
|
6
|
+
}
|
|
7
|
+
export interface IAnyContentRelated extends IAnySourceItem {
|
|
8
|
+
FileLeafRef: string;
|
|
9
|
+
FileRef: string;
|
|
10
|
+
linkUrl: string;
|
|
11
|
+
linkAlt: string;
|
|
12
|
+
linkText: string;
|
|
13
|
+
CanvasContent1: string;
|
|
14
|
+
images: IUrlPairs[];
|
|
15
|
+
links: IUrlPairs[];
|
|
16
|
+
}
|
|
17
|
+
export interface IRelatedItemsState {
|
|
18
|
+
relatedItems: IStateSource;
|
|
19
|
+
linkFilter: string;
|
|
20
|
+
textFilter: string;
|
|
21
|
+
filteredItems: IAnyContentRelated[];
|
|
22
|
+
canvasLinksExpanded: boolean;
|
|
23
|
+
canvasImagesExpanded: boolean;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=IRelatedItemsState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IRelatedItemsState.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/IRelatedItemsState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IAExD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IAEjB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,SAAS,EAAE,CAAC;CAOpB;AAED,MAAM,WAAW,kBAAkB;IAEjC,YAAY,EAAE,YAAY,CAAC;IAM3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,kBAAkB,EAAE,CAAC;IAEpC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;CAE/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IRelatedItemsState.js","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/IRelatedItemsState.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export declare const changeRelated1: string[];
|
|
2
|
+
export declare const changeRelated2: string[];
|
|
3
|
+
export interface IMinRelatedWPProps {
|
|
4
|
+
relatedStyle: string;
|
|
5
|
+
related1heading?: string;
|
|
6
|
+
related1showItems?: boolean;
|
|
7
|
+
related1isExpanded?: boolean;
|
|
8
|
+
related1web?: string;
|
|
9
|
+
related1listTitle?: string;
|
|
10
|
+
related1AreFiles?: boolean;
|
|
11
|
+
related1restFilter?: string;
|
|
12
|
+
related1linkProp?: string;
|
|
13
|
+
related1displayProp?: string;
|
|
14
|
+
related2heading?: string;
|
|
15
|
+
related2showItems?: boolean;
|
|
16
|
+
related2isExpanded?: boolean;
|
|
17
|
+
related2web?: string;
|
|
18
|
+
related2listTitle?: string;
|
|
19
|
+
related2AreFiles?: boolean;
|
|
20
|
+
related2restFilter?: string;
|
|
21
|
+
related2linkProp?: string;
|
|
22
|
+
related2displayProp?: string;
|
|
23
|
+
pageLinksshowItems?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export declare const changePageLinks: string[];
|
|
26
|
+
export interface IMinPageLinksProps {
|
|
27
|
+
relatedStyle: string;
|
|
28
|
+
pageLinksheading?: string;
|
|
29
|
+
pageLinksshowItems?: boolean;
|
|
30
|
+
pageLinksisExpanded?: boolean;
|
|
31
|
+
pageLinksweb?: string;
|
|
32
|
+
pageLinkslistTitle?: string;
|
|
33
|
+
pageLinksrestFilter?: string;
|
|
34
|
+
pageLinkslinkProp?: string;
|
|
35
|
+
pageLinksdisplayProp?: string;
|
|
36
|
+
canvasLinks?: boolean;
|
|
37
|
+
canvasImgs?: boolean;
|
|
38
|
+
ignoreDefaultImages?: boolean;
|
|
39
|
+
linkSearchBox?: boolean;
|
|
40
|
+
related1showItems?: boolean;
|
|
41
|
+
related2showItems?: boolean;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=IRelatedWebPartProps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IRelatedWebPartProps.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/IRelatedWebPartProps.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,cAAc,UAC+E,CAAC;AAE3G,eAAO,MAAM,cAAc,UAC+D,CAAC;AAE3F,MAAM,WAAW,kBAAkB;IAC/B,YAAY,EAAE,MAAM,CAAC;IAErB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAEhC;AAGD,eAAO,MAAM,eAAe,UAEO,CAAC;AAEpC,MAAM,WAAW,kBAAkB;IAC/B,YAAY,EAAE,MAAM,CAAC;IAErB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IAGxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAE/B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export const changeRelated1 = ['related1heading', 'related1showItems', 'related1isExpanded', 'related1web',
|
|
2
|
+
'related1listTitle', 'related1restFilter', 'related1linkProp', 'related1displayProp', 'relatedStyle'];
|
|
3
|
+
export const changeRelated2 = ['related2heading', 'related2showItems', 'related2isExpanded', 'related2web',
|
|
4
|
+
'related2listTitle', 'related2restFilter', 'related2linkProp', 'related2displayProp'];
|
|
5
|
+
export const changePageLinks = ['pageLinksheading', 'pageLinksshowItems', 'pageLinksisExpanded', 'pageLinksweb',
|
|
6
|
+
'pageLinkslistTitle', 'pageLinksrestFilter', 'pageLinkslinkProp', 'pageLinksdisplayProp', 'canvasLinks',
|
|
7
|
+
'canvasImgs', 'linkSearchBox'];
|
|
8
|
+
//# sourceMappingURL=IRelatedWebPartProps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IRelatedWebPartProps.js","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/IRelatedWebPartProps.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAE,iBAAiB,EAAE,mBAAmB,EAAG,oBAAoB,EAAG,aAAa;IACzG,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,cAAc,CAAE,CAAC;AAE3G,MAAM,CAAC,MAAM,cAAc,GAAG,CAAE,iBAAiB,EAAE,mBAAmB,EAAG,oBAAoB,EAAG,aAAa;IACzG,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,qBAAqB,CAAE,CAAC;AA+B3F,MAAM,CAAC,MAAM,eAAe,GAAG,CAAE,kBAAkB,EAAE,oBAAoB,EAAG,qBAAqB,EAAG,cAAc;IAC9G,oBAAoB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,aAAa;IACvG,YAAY,EAAE,eAAe,CAAE,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RelatedItems originally copied from
|
|
3
|
+
* https://github.com/pnp/sp-dev-fx-webparts/tree/main/samples/react-page-navigator
|
|
4
|
+
*/
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import { IRelatedItemsProps } from './IRelatedItemsProps';
|
|
7
|
+
import { IRelatedItemsState } from './IRelatedItemsState';
|
|
8
|
+
export default class RelatedItems extends React.Component<IRelatedItemsProps, IRelatedItemsState> {
|
|
9
|
+
private regExpOrigin;
|
|
10
|
+
private regExpWeb;
|
|
11
|
+
constructor(props: IRelatedItemsProps);
|
|
12
|
+
componentDidMount(): void;
|
|
13
|
+
componentDidUpdate(prevProps: IRelatedItemsProps): void;
|
|
14
|
+
/**
|
|
15
|
+
* WHY IS textFilter a param that is passed into state but then the filtering uses the state version?
|
|
16
|
+
* @param textFilter
|
|
17
|
+
* @param linkFilter
|
|
18
|
+
*/
|
|
19
|
+
private _getRelatedItems;
|
|
20
|
+
private filterUrlPairs;
|
|
21
|
+
private filterRelatedItems;
|
|
22
|
+
render(): React.ReactElement<IRelatedItemsProps>;
|
|
23
|
+
private toggleRelated;
|
|
24
|
+
private onLinkClick;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=RelatedItems.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RelatedItems.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/RelatedItems.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAsB,kBAAkB,EAAa,MAAM,sBAAsB,CAAC;AASzF,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,KAAK,CAAC,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAE/F,OAAO,CAAC,YAAY,CAAoD;IACxE,OAAO,CAAC,SAAS,CAAsD;gBAE3D,KAAK,EAAE,kBAAkB;IAsB9B,iBAAiB;IAIjB,kBAAkB,CAAC,SAAS,EAAE,kBAAkB;IAkBvD;;;;OAIG;YACW,gBAAgB;IAoD9B,OAAO,CAAC,cAAc;IA+BtB,OAAO,CAAC,kBAAkB;IA6BnB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC;IAwDvD,OAAO,CAAC,aAAa;YAkBP,WAAW;CAkC1B"}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RelatedItems originally copied from
|
|
3
|
+
* https://github.com/pnp/sp-dev-fx-webparts/tree/main/samples/react-page-navigator
|
|
4
|
+
*/
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import { Web, } from '@pnp/sp/presets/all';
|
|
7
|
+
import { Icon, } from 'office-ui-fabric-react/lib/Icon';
|
|
8
|
+
import { getRelatedItems } from './GetItems';
|
|
9
|
+
import { complexStringSearch } from '../../../logic/Strings/filtering';
|
|
10
|
+
import { makeid } from '../../../logic/Strings/guids';
|
|
11
|
+
// import { complexStringSearch } from '../Services/Strings_/filtering';
|
|
12
|
+
require('@mikezimm/fps-styles/dist/RelatedItems.css');
|
|
13
|
+
export default class RelatedItems extends React.Component {
|
|
14
|
+
constructor(props) {
|
|
15
|
+
super(props);
|
|
16
|
+
this.regExpOrigin = new RegExp(`${window.location.origin}`, 'gim');
|
|
17
|
+
this.regExpWeb = new RegExp(`${this.props.fetchInfo.web}`, 'gim');
|
|
18
|
+
let fetched = false;
|
|
19
|
+
let items = [];
|
|
20
|
+
if (this.props.items && this.props.items.length > 0) {
|
|
21
|
+
items = this.props.items;
|
|
22
|
+
fetched = true;
|
|
23
|
+
}
|
|
24
|
+
this.state = {
|
|
25
|
+
relatedItems: { items: [], index: [], loaded: false, refreshId: makeid(5), status: 'Unknown', e: null },
|
|
26
|
+
textFilter: this.props.fetchInfo.textFilter ? this.props.fetchInfo.textFilter : '',
|
|
27
|
+
linkFilter: this.props.linkFilter ? this.props.linkFilter : '',
|
|
28
|
+
filteredItems: items,
|
|
29
|
+
canvasImagesExpanded: false,
|
|
30
|
+
canvasLinksExpanded: false,
|
|
31
|
+
};
|
|
32
|
+
// this.onLinkClick = this.onLinkClick.bind(this);
|
|
33
|
+
}
|
|
34
|
+
componentDidMount() {
|
|
35
|
+
this._getRelatedItems(this.props.fetchInfo.textFilter, this.props.linkFilter);
|
|
36
|
+
}
|
|
37
|
+
componentDidUpdate(prevProps) {
|
|
38
|
+
// if (JSON.stringify(prevProps.items) !== JSON.stringify(this.props.items)) {
|
|
39
|
+
// this.setState({ items: this.props.items, selectedKey: this.props.items[0] ? this.props.items[0].key : '' });
|
|
40
|
+
// } else if (prevProps.showItems !== this.props.showItems) { //Force component update in case it was not previously rendered
|
|
41
|
+
if (prevProps.showItems !== this.props.showItems) { //Force component update in case it was not previously rendered
|
|
42
|
+
this._getRelatedItems(this.props.fetchInfo.textFilter, this.props.linkFilter);
|
|
43
|
+
}
|
|
44
|
+
else if (prevProps.isExpanded !== this.props.isExpanded) { //Force component update in case it was not previously rendered
|
|
45
|
+
this._getRelatedItems(this.props.fetchInfo.textFilter, this.props.linkFilter);
|
|
46
|
+
}
|
|
47
|
+
else if (prevProps.linkFilter !== this.props.linkFilter) { //Force component update in case it was not previously rendered
|
|
48
|
+
this._getRelatedItems(this.props.fetchInfo.textFilter, this.props.linkFilter);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* WHY IS textFilter a param that is passed into state but then the filtering uses the state version?
|
|
53
|
+
* @param textFilter
|
|
54
|
+
* @param linkFilter
|
|
55
|
+
*/
|
|
56
|
+
async _getRelatedItems(textFilter, linkFilter) {
|
|
57
|
+
// this.setState({ items: this.props.items, selectedKey: this.props.items[0] ? this.props.items[0].key : '' });
|
|
58
|
+
let canvasImagesExpanded = linkFilter ? true : this.state.canvasImagesExpanded;
|
|
59
|
+
let canvasLinksExpanded = linkFilter ? true : this.state.canvasLinksExpanded;
|
|
60
|
+
if (this.props.showItems === true && this.props.isExpanded === true && this.state.relatedItems.loaded !== true) {
|
|
61
|
+
let results = await getRelatedItems(this.props.fetchInfo);
|
|
62
|
+
let fetched = results.loaded;
|
|
63
|
+
let filteredItems = results.items;
|
|
64
|
+
if (this.state.textFilter && results.items && results.items.length > 0) {
|
|
65
|
+
filteredItems = [];
|
|
66
|
+
results.items.map(item => {
|
|
67
|
+
let pushItem = true;
|
|
68
|
+
if (this.props && this.props.fetchInfo && this.props.fetchInfo.textFilterProps && this.props.fetchInfo.textFilterProps.length > 0) {
|
|
69
|
+
//Search all props ( must be string values or it will error )
|
|
70
|
+
this.props.fetchInfo.textFilterProps.map((key) => {
|
|
71
|
+
//If key does not exist or the key.lowerCase !== textFilter.lowerCase, do not push item.
|
|
72
|
+
const itemKey = typeof item[key] === 'string' ? item[key] : ''; //Added to resolve typing error
|
|
73
|
+
if (item[key] === null || item[key] === undefined || itemKey.toLowerCase().indexOf(this.state.textFilter.toLowerCase()) < 0) {
|
|
74
|
+
pushItem = false;
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
if (pushItem === true) {
|
|
79
|
+
filteredItems.push(item);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
this.setState({ relatedItems: results, filteredItems: filteredItems,
|
|
84
|
+
textFilter: textFilter ? textFilter : '', linkFilter: linkFilter ? linkFilter : '',
|
|
85
|
+
canvasImagesExpanded: canvasImagesExpanded,
|
|
86
|
+
canvasLinksExpanded: canvasLinksExpanded,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
else if (this.props.showItems === true && this.props.isExpanded === true) { //Already fetched, just update filters
|
|
90
|
+
this.setState({
|
|
91
|
+
linkFilter: linkFilter ? linkFilter : '',
|
|
92
|
+
canvasImagesExpanded: canvasImagesExpanded,
|
|
93
|
+
canvasLinksExpanded: canvasLinksExpanded,
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// private onLinkClick(ev: React.MouseEvent<HTMLElement>, item?: INavLink) {
|
|
98
|
+
// this.setState({ selectedKey: item.key });
|
|
99
|
+
// }
|
|
100
|
+
filterUrlPairs(items, linkFilter, expanded, UrlType) {
|
|
101
|
+
const showPropsStyles = expanded === true ? 'showProperties' : 'hideProperties';
|
|
102
|
+
let returnItems = [];
|
|
103
|
+
items.map(item => {
|
|
104
|
+
// https://github.com/mikezimm/PageInfo/issues/114
|
|
105
|
+
const descLong = decodeURI(item.url.replace(this.regExpOrigin, '').replace(this.regExpWeb, '/ThisSite'));
|
|
106
|
+
let desc = this.props.linkTrimmed === false ? descLong : descLong.replace(/(?<=\/ThisSite\/).*(?=\/)/gi, '...');
|
|
107
|
+
let showItem = complexStringSearch(linkFilter, desc, ';', '<>', true);
|
|
108
|
+
// if ( linkFilter && desc.toLowerCase().indexOf( linkFilter.toLowerCase() ) < 0) { showItem = false; }
|
|
109
|
+
if (showItem === true) {
|
|
110
|
+
let label = React.createElement("span", { className: 'trimText' }, desc);
|
|
111
|
+
if (item.url) {
|
|
112
|
+
let liTitle = `Go to ${item.url}`;
|
|
113
|
+
// return <li className = { 'isLink' } style={ this.props.itemsStyle } title={liTitle} onClick={ () => { this.onLinkClick.bind( this, item.url, item.embed ); }}>{ label }
|
|
114
|
+
returnItems.push(React.createElement("li", { className: 'isLink', style: this.props.itemsStyle, title: liTitle, onClick: this.onLinkClick.bind(this, item.url, item.embed) },
|
|
115
|
+
label,
|
|
116
|
+
React.createElement(Icon, { title: `Go to ${item.url}`, iconName: 'OpenInNewTab' })));
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
returnItems.push(React.createElement("li", { style: this.props.itemsStyle }, label));
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
let headingCount = linkFilter && linkFilter.length > 0 ? `${returnItems.length} of ${items.length}` : `${returnItems.length}`;
|
|
124
|
+
let heading = `Embedded ${UrlType} ( ${headingCount} )`;
|
|
125
|
+
return React.createElement("div", null,
|
|
126
|
+
React.createElement("div", { className: 'relatedSubTitle', onClick: () => { this.toggleRelated(`canvas${UrlType}Expanded`); }, title: `Click to toggle ${UrlType}` },
|
|
127
|
+
" ",
|
|
128
|
+
heading,
|
|
129
|
+
" "),
|
|
130
|
+
React.createElement("div", { className: showPropsStyles }, returnItems));
|
|
131
|
+
}
|
|
132
|
+
filterRelatedItems(items, textFilter) {
|
|
133
|
+
let returnItems = [];
|
|
134
|
+
items.map(item => {
|
|
135
|
+
let searchLinkText = typeof item.linkText === 'string' ? item.linkText : '';
|
|
136
|
+
let searchLinkUrl = typeof item.linkUrl === 'string' ? item.linkUrl : '';
|
|
137
|
+
let searchString = [searchLinkText, searchLinkUrl].join(' || ');
|
|
138
|
+
let showItem = true;
|
|
139
|
+
if (textFilter && searchString.toLowerCase().indexOf(textFilter.toLowerCase()) < 0) {
|
|
140
|
+
showItem = false;
|
|
141
|
+
}
|
|
142
|
+
if (showItem === true) {
|
|
143
|
+
let label = React.createElement("span", { className: 'trimText' }, item.linkText);
|
|
144
|
+
if (item.linkUrl) {
|
|
145
|
+
let liTitle = `Go to ${item.linkText}`;
|
|
146
|
+
// return <li className = { 'isLink' } style={ this.props.itemsStyle } title={liTitle} onClick={ () => { this.onLinkClick.bind( this, item.linkUrl, item.linkAlt ); }}>{ label }
|
|
147
|
+
returnItems.push(React.createElement("li", { className: 'isLink', style: this.props.itemsStyle, title: liTitle, onClick: this.onLinkClick.bind(this, item.linkUrl, item.linkAlt) },
|
|
148
|
+
label,
|
|
149
|
+
React.createElement(Icon, { title: `Go to ${item.linkUrl}`, iconName: 'OpenInNewTab' })));
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
returnItems.push(React.createElement("li", { style: this.props.itemsStyle }, label));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
return returnItems;
|
|
157
|
+
}
|
|
158
|
+
render() {
|
|
159
|
+
// const { semanticColors }: IReadonlyTheme = this.props.themeVariant;
|
|
160
|
+
if (this.props.showItems === false) {
|
|
161
|
+
return (null);
|
|
162
|
+
}
|
|
163
|
+
else { //If there is a null value, it will just show it
|
|
164
|
+
const { relatedItems, textFilter, linkFilter, canvasImagesExpanded, canvasLinksExpanded } = this.state;
|
|
165
|
+
const { errorInfo, items, } = relatedItems;
|
|
166
|
+
let linksElement = null;
|
|
167
|
+
if (this.props.parentKey !== 'pageLinks') {
|
|
168
|
+
let noItemsMessage = errorInfo.returnMess ? React.createElement("div", { style: { color: 'red', fontWeight: 600 } }, errorInfo.returnMess)
|
|
169
|
+
: 'There are no related items ;(';
|
|
170
|
+
linksElement = items.length === 0 ? React.createElement("div", { style: { paddingLeft: '20px', paddingBottom: '10px', fontSize: 'larger' } }, noItemsMessage) :
|
|
171
|
+
React.createElement("div", null, this.filterRelatedItems(items, textFilter));
|
|
172
|
+
}
|
|
173
|
+
let imgList = null;
|
|
174
|
+
if (this.props.fetchInfo.canvasImgs === true && items.length > 0 && items[0].images.length > 0) {
|
|
175
|
+
imgList = this.filterUrlPairs(items[0].images, linkFilter, canvasImagesExpanded, 'Images');
|
|
176
|
+
}
|
|
177
|
+
let linksList = null;
|
|
178
|
+
if (this.props.fetchInfo.canvasLinks === true && items.length > 0 && items[0].links.length > 0) {
|
|
179
|
+
let paddingTop = imgList ? '10px' : undefined;
|
|
180
|
+
linksList = this.filterUrlPairs(items[0].links, linkFilter, canvasLinksExpanded, 'Links');
|
|
181
|
+
}
|
|
182
|
+
return (React.createElement("div", { className: 'relatedItems' },
|
|
183
|
+
linksElement,
|
|
184
|
+
imgList,
|
|
185
|
+
linksList));
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
toggleRelated(propToToggle) {
|
|
189
|
+
let newExpanded = this.state[propToToggle] === true ? false : true;
|
|
190
|
+
if (propToToggle === 'canvasImagesExpanded') {
|
|
191
|
+
this.setState({ canvasImagesExpanded: newExpanded });
|
|
192
|
+
}
|
|
193
|
+
else if (propToToggle === 'canvasLinksExpanded') {
|
|
194
|
+
this.setState({ canvasLinksExpanded: newExpanded });
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
alert(`Whhhooaaa, was not expecting this propToToggle: ${propToToggle} ~ RelatedItems 171`);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
// private async onLinkClick( gotoLink: string, altLink: string, ev: MouseEvent ) {
|
|
201
|
+
async onLinkClick(gotoLink, altLink, ev) {
|
|
202
|
+
// alert('Going to ' + gotoLink );
|
|
203
|
+
console.log('onLinkClick ev:', ev);
|
|
204
|
+
if (ev.altKey === true && altLink) {
|
|
205
|
+
if (altLink !== 'gotoLink') {
|
|
206
|
+
window.open(altLink, '_blank');
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
let decodedLink = decodeURI(gotoLink);
|
|
210
|
+
try {
|
|
211
|
+
let web = Web(`${window.location.origin}${this.props.fetchInfo.web}`);
|
|
212
|
+
const item = await web.getFileByServerRelativePath(decodedLink).select('*,ServerRedirectedEmbedUrl').getItem();
|
|
213
|
+
console.log('onLinkClick alt-click item: ', decodedLink, item);
|
|
214
|
+
if (item.ServerRedirectedEmbedUrl) {
|
|
215
|
+
window.open(item.ServerRedirectedEmbedUrl, '_blank');
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
window.open(decodedLink, '_blank');
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
catch (e) {
|
|
222
|
+
console.log('onLinkClick alt-click error: ', decodedLink, e);
|
|
223
|
+
window.open(decodedLink, '_blank');
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
window.open(gotoLink, '_blank');
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=RelatedItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RelatedItems.js","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/RelatedItems.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IPropertyPaneGroup } from '@microsoft/sp-property-pane';
|
|
2
|
+
import { IRelatedKey } from './IRelatedItemsProps';
|
|
3
|
+
import { IMinPageLinksProps, IMinRelatedWPProps } from './IRelatedWebPartProps';
|
|
4
|
+
export declare function buildRelatedItemsPropsGroup(wpProps: IMinRelatedWPProps | IMinPageLinksProps, name: IRelatedKey): IPropertyPaneGroup;
|
|
5
|
+
//# sourceMappingURL=RelatedItemsPropGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RelatedItemsPropGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/RelatedItems/RelatedItemsPropGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAEJ,kBAAkB,EAiBpB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAQhF,wBAAgB,2BAA2B,CAAE,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,EAAE,IAAI,EAAE,WAAW,sBA6D/G"}
|