@microsoft/sp-component-base 1.23.1 → 1.24.0-beta.2
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/467dc675-7cc5-4709-8aac-78e3b71bd2f6.manifest.json +136 -141
- package/dist/{chunk.legacy-third-party-fabric-core-localfont_none_9e84ea19c68fdc8b9094.js → chunk.legacy-third-party-fabric-core-localfont_none_b7f7978a3e90166c361b.js} +1 -1
- package/dist/chunk.teams-apps-client_none_27d3c7c1d01080e4f131.js +2 -0
- package/dist/index-internal-beta.d.ts +30 -8
- package/dist/index-internal-public.d.ts +30 -8
- package/dist/index-internal.d.ts +30 -8
- package/dist/sp-component-base_default_8d535b51fa18aa47002b.js +22 -0
- package/dist/sp-component-base_en-us_8ce25dfb69a7786caece.js +22 -0
- package/dist/sp-component-base_qps-ploc_4fec831895d90df8aa7a.js +22 -0
- package/dist/sp-component-base_qps-ploca_b80610c8dff04dcec755.js +22 -0
- package/dist/tsdoc-metadata.json +1 -1
- package/lib-commonjs/BaseComponent.js +110 -145
- package/lib-commonjs/BaseComponentContext.js +126 -183
- package/lib-commonjs/DynamicDataProvider.js +251 -268
- package/lib-commonjs/DynamicDataSourceManager.js +218 -241
- package/lib-commonjs/DynamicProperty.js +232 -280
- package/lib-commonjs/EnsureIsolatedDomainUrl.js +14 -14
- package/lib-commonjs/IComponentPosition.js +8 -3
- package/lib-commonjs/IComponentPropertyMetadata.js +10 -3
- package/lib-commonjs/ISerializedServerProcessedData.js +24 -21
- package/lib-commonjs/LegacyThirdPartyFabricCoreLoader.js +53 -87
- package/lib-commonjs/PropertyMetadataProcessor.js +117 -150
- package/lib-commonjs/RenderableComponentContext.js +37 -0
- package/lib-commonjs/ShimmerFactory.js +66 -51
- package/lib-commonjs/chunks/legacy-third-party-fabric-core/FabricLocalFont.js +6 -4
- package/lib-commonjs/common/Flights.js +22 -10
- package/lib-commonjs/common/KillSwitches.js +13 -6
- package/lib-commonjs/dataCollector/IWebPartLoadData.js +35 -30
- package/lib-commonjs/dataCollector/WebPartLoadDataCollector.js +82 -91
- package/lib-commonjs/index.js +78 -38
- package/lib-commonjs/teams/DeferredTeamsAppsClient.js +30 -52
- package/lib-commonjs/teams/ITeamsAppCatalog.js +10 -3
- package/lib-commonjs/teams/TeamsAppsClient.js +189 -231
- package/lib-commonjs/test-api/MockComponent.js +38 -23
- package/lib-commonjs/test-api/MockComponentContext.js +21 -14
- package/lib-commonjs/test-api/index.js +21 -7
- package/lib-commonjs/themeProvider/ThemeProvider.js +68 -82
- package/lib-commonjs/themeProvider/themeInterfaces/IFontStyles.js +5 -2
- package/lib-commonjs/themeProvider/themeInterfaces/IPalette.js +10 -3
- package/lib-commonjs/themeProvider/themeInterfaces/ISemanticColors.js +59 -3
- package/lib-commonjs/themeProvider/themeInterfaces/ISemanticTextColors.js +10 -3
- package/lib-commonjs/themeProvider/themeInterfaces/ITheme.js +5 -2
- package/{lib → lib-dts}/BaseComponent.d.ts +8 -8
- package/{lib → lib-dts}/BaseComponentContext.d.ts +5 -5
- package/lib-dts/RenderableComponentContext.d.ts +35 -0
- package/{lib → lib-dts}/index.d.ts +1 -0
- package/lib-esm/BaseComponent.js +123 -0
- package/lib-esm/BaseComponentContext.js +157 -0
- package/lib-esm/DynamicDataProvider.js +401 -0
- package/lib-esm/DynamicDataSourceManager.js +358 -0
- package/lib-esm/DynamicProperty.js +344 -0
- package/{lib → lib-esm}/EnsureIsolatedDomainUrl.js +6 -6
- package/lib-esm/IComponentPosition.js +5 -0
- package/lib-esm/IComponentPropertyMetadata.js +7 -0
- package/lib-esm/ISerializedServerProcessedData.js +24 -0
- package/lib-esm/LegacyThirdPartyFabricCoreLoader.js +76 -0
- package/{lib → lib-esm}/PropertyMetadataProcessor.js +92 -127
- package/lib-esm/RenderableComponentContext.js +26 -0
- package/lib-esm/ShimmerFactory.js +74 -0
- package/{lib → lib-esm}/chunks/legacy-third-party-fabric-core/FabricLocalFont.js +3 -3
- package/{lib → lib-esm}/common/Flights.js +4 -3
- package/{lib → lib-esm}/common/KillSwitches.js +3 -2
- package/lib-esm/dataCollector/IWebPartLoadData.js +33 -0
- package/lib-esm/dataCollector/WebPartLoadDataCollector.js +125 -0
- package/{lib → lib-esm}/index.js +4 -3
- package/lib-esm/teams/DeferredTeamsAppsClient.js +32 -0
- package/lib-esm/teams/ITeamsAppCatalog.js +9 -0
- package/lib-esm/teams/TeamsAppsClient.js +395 -0
- package/lib-esm/test-api/MockComponent.js +38 -0
- package/{lib → lib-esm}/test-api/MockComponentContext.js +10 -11
- package/{lib → lib-esm}/test-api/index.js +2 -1
- package/lib-esm/themeProvider/ThemeProvider.js +79 -0
- package/lib-esm/themeProvider/themeInterfaces/IFontStyles.js +7 -0
- package/lib-esm/themeProvider/themeInterfaces/IPalette.js +7 -0
- package/lib-esm/themeProvider/themeInterfaces/ISemanticColors.js +56 -0
- package/lib-esm/themeProvider/themeInterfaces/ISemanticTextColors.js +7 -0
- package/lib-esm/themeProvider/themeInterfaces/ITheme.js +7 -0
- package/package.json +41 -14
- package/dist/chunk.teams-apps-client_none_f9872389cb6ea9ad28e2.js +0 -2
- package/dist/sp-component-base_default_5ba07be39b0dc8968f7b.js +0 -2
- package/dist/sp-component-base_en-us_eb9bebb3acce0ae83f1c.js +0 -2
- package/dist/sp-component-base_qps-ploc_45f37623d87c3d848f2a.js +0 -2
- package/dist/sp-component-base_qps-ploca_b3f3b7bf97c4185b0fd6.js +0 -2
- package/lib/BaseComponent.d.ts.map +0 -1
- package/lib/BaseComponent.js +0 -161
- package/lib/BaseComponentContext.d.ts.map +0 -1
- package/lib/BaseComponentContext.js +0 -222
- package/lib/DynamicDataProvider.d.ts.map +0 -1
- package/lib/DynamicDataProvider.js +0 -420
- package/lib/DynamicDataSourceManager.d.ts.map +0 -1
- package/lib/DynamicDataSourceManager.js +0 -382
- package/lib/DynamicProperty.d.ts.map +0 -1
- package/lib/DynamicProperty.js +0 -390
- package/lib/EnsureIsolatedDomainUrl.d.ts.map +0 -1
- package/lib/IComponentPosition.d.ts.map +0 -1
- package/lib/IComponentPosition.js +0 -2
- package/lib/IComponentPropertyMetadata.d.ts.map +0 -1
- package/lib/IComponentPropertyMetadata.js +0 -2
- package/lib/ISerializedServerProcessedData.d.ts.map +0 -1
- package/lib/ISerializedServerProcessedData.js +0 -28
- package/lib/LegacyThirdPartyFabricCoreLoader.d.ts.map +0 -1
- package/lib/LegacyThirdPartyFabricCoreLoader.js +0 -90
- package/lib/PropertyMetadataProcessor.d.ts.map +0 -1
- package/lib/ShimmerFactory.d.ts.map +0 -1
- package/lib/ShimmerFactory.js +0 -62
- package/lib/chunks/legacy-third-party-fabric-core/FabricLocalFont.d.ts.map +0 -1
- package/lib/common/Flights.d.ts.map +0 -1
- package/lib/common/KillSwitches.d.ts.map +0 -1
- package/lib/dataCollector/IWebPartLoadData.d.ts.map +0 -1
- package/lib/dataCollector/IWebPartLoadData.js +0 -40
- package/lib/dataCollector/WebPartLoadDataCollector.d.ts.map +0 -1
- package/lib/dataCollector/WebPartLoadDataCollector.js +0 -137
- package/lib/index.d.ts.map +0 -1
- package/lib/teams/DeferredTeamsAppsClient.d.ts.map +0 -1
- package/lib/teams/DeferredTeamsAppsClient.js +0 -39
- package/lib/teams/ITeamsAppCatalog.d.ts.map +0 -1
- package/lib/teams/ITeamsAppCatalog.js +0 -2
- package/lib/teams/TeamsAppsClient.d.ts.map +0 -1
- package/lib/teams/TeamsAppsClient.js +0 -440
- package/lib/test-api/MockComponent.d.ts.map +0 -1
- package/lib/test-api/MockComponent.js +0 -31
- package/lib/test-api/MockComponentContext.d.ts.map +0 -1
- package/lib/test-api/index.d.ts.map +0 -1
- package/lib/themeProvider/ThemeProvider.d.ts.map +0 -1
- package/lib/themeProvider/ThemeProvider.js +0 -99
- package/lib/themeProvider/themeInterfaces/IFontStyles.d.ts.map +0 -1
- package/lib/themeProvider/themeInterfaces/IFontStyles.js +0 -2
- package/lib/themeProvider/themeInterfaces/IPalette.d.ts.map +0 -1
- package/lib/themeProvider/themeInterfaces/IPalette.js +0 -2
- package/lib/themeProvider/themeInterfaces/ISemanticColors.d.ts.map +0 -1
- package/lib/themeProvider/themeInterfaces/ISemanticColors.js +0 -2
- package/lib/themeProvider/themeInterfaces/ISemanticTextColors.d.ts.map +0 -1
- package/lib/themeProvider/themeInterfaces/ISemanticTextColors.js +0 -2
- package/lib/themeProvider/themeInterfaces/ITheme.d.ts.map +0 -1
- package/lib/themeProvider/themeInterfaces/ITheme.js +0 -2
- /package/{lib → lib-dts}/DynamicDataProvider.d.ts +0 -0
- /package/{lib → lib-dts}/DynamicDataSourceManager.d.ts +0 -0
- /package/{lib → lib-dts}/DynamicProperty.d.ts +0 -0
- /package/{lib → lib-dts}/EnsureIsolatedDomainUrl.d.ts +0 -0
- /package/{lib → lib-dts}/IComponentPosition.d.ts +0 -0
- /package/{lib → lib-dts}/IComponentPropertyMetadata.d.ts +0 -0
- /package/{lib → lib-dts}/ISerializedServerProcessedData.d.ts +0 -0
- /package/{lib → lib-dts}/LegacyThirdPartyFabricCoreLoader.d.ts +0 -0
- /package/{lib → lib-dts}/PropertyMetadataProcessor.d.ts +0 -0
- /package/{lib → lib-dts}/ShimmerFactory.d.ts +0 -0
- /package/{lib → lib-dts}/chunks/legacy-third-party-fabric-core/FabricLocalFont.d.ts +0 -0
- /package/{lib → lib-dts}/common/Flights.d.ts +0 -0
- /package/{lib → lib-dts}/common/KillSwitches.d.ts +0 -0
- /package/{lib → lib-dts}/dataCollector/IWebPartLoadData.d.ts +0 -0
- /package/{lib → lib-dts}/dataCollector/WebPartLoadDataCollector.d.ts +0 -0
- /package/{lib → lib-dts}/loc/Strings.resx.d.ts +0 -0
- /package/{lib → lib-dts}/teams/DeferredTeamsAppsClient.d.ts +0 -0
- /package/{lib → lib-dts}/teams/ITeamsAppCatalog.d.ts +0 -0
- /package/{lib → lib-dts}/teams/TeamsAppsClient.d.ts +0 -0
- /package/{lib → lib-dts}/test-api/MockComponent.d.ts +0 -0
- /package/{lib → lib-dts}/test-api/MockComponentContext.d.ts +0 -0
- /package/{lib → lib-dts}/test-api/index.d.ts +0 -0
- /package/{lib → lib-dts}/themeProvider/ThemeProvider.d.ts +0 -0
- /package/{lib → lib-dts}/themeProvider/themeInterfaces/IFontStyles.d.ts +0 -0
- /package/{lib → lib-dts}/themeProvider/themeInterfaces/IPalette.d.ts +0 -0
- /package/{lib → lib-dts}/themeProvider/themeInterfaces/ISemanticColors.d.ts +0 -0
- /package/{lib → lib-dts}/themeProvider/themeInterfaces/ISemanticTextColors.d.ts +0 -0
- /package/{lib → lib-dts}/themeProvider/themeInterfaces/ITheme.d.ts +0 -0
- /package/{lib → lib-esm}/chunks/legacy-third-party-fabric-core/fabric-core-sass/Fabric.LocalFont.global.scss.css +0 -0
- /package/{lib → lib-esm}/chunks/legacy-third-party-fabric-core/fabric-core-sass/Fabric.LocalFontKillSwitchActivated.scss.css +0 -0
- /package/{lib → lib-esm}/chunks/legacy-third-party-fabric-core/fabric-core-shim.global.scss.css +0 -0
- /package/{lib → lib-esm}/chunks/legacy-third-party-fabric-core/fabric-core-shimKillSwitchActivated.scss.css +0 -0
- /package/{lib → lib-esm}/chunks/legacy-third-party-fabric-core/iconDefinitions.css +0 -0
- /package/{lib → lib-esm}/loc/Strings.resx.json +0 -0
- /package/{lib → lib-esm}/sp-component-base.manifest.json +0 -0
- /package/{lib → lib-esm}/styles/shimmer.module.scss.css +0 -0
|
@@ -1,15 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
isBotAcesFromTeamsEnabled: function() {
|
|
13
|
+
return isBotAcesFromTeamsEnabled;
|
|
14
|
+
},
|
|
15
|
+
isServerPropertiesSanitizedEnabled: function() {
|
|
16
|
+
return isServerPropertiesSanitizedEnabled;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _spcorelibrary = require("@microsoft/sp-core-library");
|
|
6
20
|
function isBotAcesFromTeamsEnabled() {
|
|
7
|
-
return
|
|
21
|
+
return _spcorelibrary._SPFlight.isEnabled(60693 /* APEXBotAceFromTeamsClient */ );
|
|
8
22
|
}
|
|
9
|
-
exports.isBotAcesFromTeamsEnabled = isBotAcesFromTeamsEnabled;
|
|
10
|
-
// cross-project flight
|
|
11
23
|
function isServerPropertiesSanitizedEnabled() {
|
|
12
|
-
return
|
|
24
|
+
return _spcorelibrary._SPFlight.isEnabled(61389 /* APEXServerPropertiesSanitizedEnabled */ );
|
|
13
25
|
}
|
|
14
|
-
|
|
15
|
-
//# sourceMappingURL
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=./Flights.js.map
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "isExemptWebPartWithDynamicDataFromLazyLoadKSActivated", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return isExemptWebPartWithDynamicDataFromLazyLoadKSActivated;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _spcorelibrary = require("@microsoft/sp-core-library");
|
|
5
12
|
function isExemptWebPartWithDynamicDataFromLazyLoadKSActivated() {
|
|
6
|
-
return
|
|
13
|
+
return _spcorelibrary._SPKillSwitch.isActivated('bbd78e03-ff18-40ed-9a94-973fc659366c' /* '12/01/2022', 'Update getWebPartsExemptedFromViewPortLoading to check for containsDynamicDataSource' */ );
|
|
7
14
|
}
|
|
8
|
-
|
|
9
|
-
//# sourceMappingURL
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=./KillSwitches.js.map
|
|
@@ -1,43 +1,48 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports._CacheMissReason = exports.CacheStatus = void 0;
|
|
4
1
|
/**
|
|
5
2
|
* @internal
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
exports
|
|
3
|
+
*/ // eslint-disable-next-line @typescript-eslint/typedef
|
|
4
|
+
"use strict";
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
function _export(target, all) {
|
|
9
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: all[name]
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
_export(exports, {
|
|
15
|
+
CacheStatus: function() {
|
|
16
|
+
return CacheStatus;
|
|
17
|
+
},
|
|
18
|
+
_CacheMissReason: function() {
|
|
19
|
+
return _CacheMissReason;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const CacheStatus = {
|
|
9
23
|
True: 'true',
|
|
10
24
|
False: 'false',
|
|
11
25
|
NotAvailable: 'N/A'
|
|
12
26
|
};
|
|
13
|
-
|
|
14
|
-
* @internal
|
|
15
|
-
*/
|
|
16
|
-
// eslint-disable-next-line @typescript-eslint/typedef
|
|
17
|
-
exports._CacheMissReason = {
|
|
27
|
+
const _CacheMissReason = {
|
|
18
28
|
/**
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
CacheConfigMissmatch: 'CacheConfigMissmatch',
|
|
29
|
+
* Cache was available but config requested has changed.
|
|
30
|
+
*/ CacheConfigMissmatch: 'CacheConfigMissmatch',
|
|
22
31
|
/**
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
LateFlush: 'LateFlush',
|
|
32
|
+
* Cache did not arrvie by the time web part requested it.
|
|
33
|
+
*/ LateFlush: 'LateFlush',
|
|
26
34
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
CachedItemNotFound: 'CachedItemNotFound',
|
|
35
|
+
* Cache is available but there is no cache entry for the web part.
|
|
36
|
+
*/ CachedItemNotFound: 'CachedItemNotFound',
|
|
30
37
|
/**
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
CacheExpired: 'CacheExpired',
|
|
38
|
+
* Cache is available, config is also good but is too stale for use.
|
|
39
|
+
*/ CacheExpired: 'CacheExpired',
|
|
34
40
|
/**
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
NotSpecified: 'NotSpecified',
|
|
41
|
+
* Cache miss happened but reason is not specified.
|
|
42
|
+
*/ NotSpecified: 'NotSpecified',
|
|
38
43
|
/**
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
NotApplicable: 'N/A'
|
|
44
|
+
* Not Applicable if there was cache hit.
|
|
45
|
+
*/ NotApplicable: 'N/A'
|
|
42
46
|
};
|
|
43
|
-
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=./IWebPartLoadData.js.map
|
|
@@ -1,76 +1,72 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright (c) Microsoft. All rights reserved.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
*/
|
|
14
|
-
var WebPartLoadDataCollector = /** @class */ (function () {
|
|
15
|
-
function WebPartLoadDataCollector() {
|
|
2
|
+
// This file contains code for the WebPartLoadDataCollector. This class will collect webpart data on load
|
|
3
|
+
// and upload it for monitoring purposes.
|
|
4
|
+
"use strict";
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
Object.defineProperty(exports, "WebPartLoadDataCollector", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function() {
|
|
11
|
+
return WebPartLoadDataCollector;
|
|
16
12
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
13
|
+
});
|
|
14
|
+
const _sptelemetry = require("@msinternal/sp-telemetry");
|
|
15
|
+
const _IWebPartLoadData = require("./IWebPartLoadData");
|
|
16
|
+
const _spcorelibrary = require("@microsoft/sp-core-library");
|
|
17
|
+
const NOT_AVAILABLE = 'N/A';
|
|
18
|
+
class WebPartLoadDataCollector {
|
|
19
|
+
static collect(manifest, webPartTag, pageContext) {
|
|
20
|
+
const getTime = (key)=>{
|
|
21
|
+
return _sptelemetry._PerformanceLogger.readComponentBreakdown(webPartTag, key) || _sptelemetry._PerformanceLogger.readTempData(`${webPartTag}.${key}`);
|
|
21
22
|
};
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
23
|
+
const start = getTime('start');
|
|
24
|
+
const moduleLoaded = getTime('modulesLoaded');
|
|
25
|
+
const initialized = getTime('init');
|
|
26
|
+
const end = getTime('end');
|
|
27
|
+
const isSpinnyShown = !!getTime('displaySpinner');
|
|
28
|
+
const isMultiGeo = Boolean(pageContext && pageContext.legacyPageContext && pageContext.legacyPageContext.isMultiGeoTenant);
|
|
29
|
+
let dataProvider = NOT_AVAILABLE;
|
|
30
|
+
let layoutID = NOT_AVAILABLE;
|
|
31
|
+
let webPartCacheHit = _IWebPartLoadData.CacheStatus.NotAvailable;
|
|
32
|
+
let cacheMissReason = _IWebPartLoadData._CacheMissReason.NotApplicable;
|
|
32
33
|
// Collect data for first-party web parts only. This ideally should be done outside of spfx.
|
|
33
34
|
// VSO#855246 Refactor WebPartLoadDataCollector to move out first-party only logging logic.
|
|
34
35
|
if (manifest.isInternal) {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
webPartCacheHit = isCacheApplicable
|
|
40
|
-
? cacheHit
|
|
41
|
-
? IWebPartLoadData_1.CacheStatus.True
|
|
42
|
-
: IWebPartLoadData_1.CacheStatus.False
|
|
43
|
-
: IWebPartLoadData_1.CacheStatus.NotAvailable;
|
|
36
|
+
const cacheHit = getTime('CacheHit');
|
|
37
|
+
const cacheMiss = getTime('CacheMiss');
|
|
38
|
+
const prefetechedData = getTime('prefetchedData');
|
|
39
|
+
const isCacheApplicable = Boolean(cacheHit || cacheMiss);
|
|
40
|
+
webPartCacheHit = isCacheApplicable ? cacheHit ? _IWebPartLoadData.CacheStatus.True : _IWebPartLoadData.CacheStatus.False : _IWebPartLoadData.CacheStatus.NotAvailable;
|
|
44
41
|
cacheMissReason = WebPartLoadDataCollector._getCacheMissReason(cacheHit, getTime);
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
42
|
+
let dataProviderTime = _sptelemetry._PerformanceLogger.now();
|
|
43
|
+
const layoutKey = _sptelemetry._PerformanceDataDimensions.Layout;
|
|
44
|
+
const dataProviderKey = _sptelemetry._PerformanceDataDimensions.DataProvider;
|
|
45
|
+
const perfBreakDown = _sptelemetry._PerformanceLogger.readFullEUPLBreakDown();
|
|
49
46
|
// WebParts which have different layouts and dataproviders, will have perf marks such as
|
|
50
47
|
// webPartTag.dataProvider: [dataProviderName]
|
|
51
48
|
// webPartTag.Layout: [Layout]
|
|
52
49
|
// The logic below will extract the data provider and layout, and log them for perf measurements.
|
|
53
|
-
Object.keys(
|
|
50
|
+
Object.keys(perfBreakDown).forEach((key)=>{
|
|
54
51
|
if (key.indexOf(webPartTag) > -1) {
|
|
55
52
|
// We only have 1 layout
|
|
56
|
-
if (layoutID === NOT_AVAILABLE && key.indexOf(
|
|
57
|
-
layoutID = key.split(
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
else if (key.indexOf(dataProviderKey_1) > -1) {
|
|
53
|
+
if (layoutID === NOT_AVAILABLE && key.indexOf(layoutKey) > -1) {
|
|
54
|
+
layoutID = key.split(layoutKey)[1];
|
|
55
|
+
// Focus on primary data provider
|
|
56
|
+
} else if (key.indexOf(dataProviderKey) > -1) {
|
|
61
57
|
// Pick earliest data provider, in case there are multiple
|
|
62
|
-
if (dataProvider === NOT_AVAILABLE ||
|
|
63
|
-
dataProvider = key.split(
|
|
64
|
-
|
|
58
|
+
if (dataProvider === NOT_AVAILABLE || perfBreakDown[key] < dataProviderTime) {
|
|
59
|
+
dataProvider = key.split(dataProviderKey)[1];
|
|
60
|
+
dataProviderTime = perfBreakDown[key];
|
|
65
61
|
}
|
|
66
62
|
}
|
|
67
63
|
}
|
|
68
64
|
});
|
|
69
65
|
dataProvider = prefetechedData ? 'Prefetch' : dataProvider;
|
|
70
66
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
67
|
+
const webpartPerfFlights = _sptelemetry._PerformanceLogger.getWebpartFlightsAndExperiments(webPartTag);
|
|
68
|
+
const syncRenderTime = this._getSyncRenderTime(layoutID, getTime);
|
|
69
|
+
const retVal = {
|
|
74
70
|
alias: manifest.alias,
|
|
75
71
|
isMultiGeo: isMultiGeo,
|
|
76
72
|
isInternal: manifest.isInternal,
|
|
@@ -79,62 +75,57 @@ var WebPartLoadDataCollector = /** @class */ (function () {
|
|
|
79
75
|
moduleLoadTime: Math.floor(moduleLoaded - start),
|
|
80
76
|
initTime: Math.floor(initialized - moduleLoaded),
|
|
81
77
|
renderTime: Math.floor(end - initialized),
|
|
82
|
-
syncRenderTime
|
|
83
|
-
scenarioId:
|
|
84
|
-
isFullPage:
|
|
85
|
-
dataProvider
|
|
78
|
+
syncRenderTime,
|
|
79
|
+
scenarioId: _sptelemetry._PerformanceLogger.getScenarioId(),
|
|
80
|
+
isFullPage: _sptelemetry._PerformanceLogger.fullPageLoad,
|
|
81
|
+
dataProvider,
|
|
86
82
|
layout: layoutID,
|
|
87
83
|
mySiteCacheHit: webPartCacheHit,
|
|
88
|
-
cacheMissReason
|
|
84
|
+
cacheMissReason,
|
|
89
85
|
flights: webpartPerfFlights,
|
|
90
86
|
storeAppId: manifest.storeAppId,
|
|
91
87
|
mpnId: manifest.mpnId,
|
|
92
88
|
componentDeveloperName: manifest.componentDeveloperName
|
|
93
89
|
};
|
|
94
|
-
retVal.teamsHosted =
|
|
90
|
+
retVal.teamsHosted = _spcorelibrary._BrowserUtilities.isTeamsHosted();
|
|
95
91
|
return retVal;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
|
|
92
|
+
}
|
|
93
|
+
static _getSyncRenderTime(layoutID, getTime) {
|
|
94
|
+
let syncRenderTime = undefined;
|
|
99
95
|
syncRenderTime = Math.floor(getTime('syncRender') - getTime('getDataComplete'));
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
96
|
+
const postRenderCompleteTime = getTime('postRenderComplete');
|
|
97
|
+
const loadLayoutEnd = getTime('loadLayoutEnd');
|
|
98
|
+
const syncLayoutRenderComplete = getTime('syncLayoutRenderComplete');
|
|
103
99
|
if (loadLayoutEnd && syncLayoutRenderComplete) {
|
|
104
100
|
// render layout and items inside it
|
|
105
101
|
syncRenderTime = Math.floor(syncRenderTime + (syncLayoutRenderComplete - loadLayoutEnd));
|
|
106
102
|
}
|
|
107
103
|
if (postRenderCompleteTime) {
|
|
108
|
-
syncRenderTime = Math.floor(
|
|
109
|
-
|
|
110
|
-
syncRenderTime + (postRenderCompleteTime - getTime(sp_telemetry_1._PerformanceDataDimensions.Layout + layoutID)));
|
|
104
|
+
syncRenderTime = Math.floor(// transposeRow + transposeItems + render + syncPostRender
|
|
105
|
+
syncRenderTime + (postRenderCompleteTime - getTime(_sptelemetry._PerformanceDataDimensions.Layout + layoutID)));
|
|
111
106
|
}
|
|
112
107
|
return syncRenderTime;
|
|
113
|
-
}
|
|
114
|
-
|
|
108
|
+
}
|
|
109
|
+
static _getCacheMissReason(cacheHit, getTime) {
|
|
115
110
|
if (cacheHit) {
|
|
116
|
-
return
|
|
111
|
+
return _IWebPartLoadData._CacheMissReason.NotApplicable;
|
|
117
112
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
113
|
+
const mySiteCacheMissOnConfgMismatch = !!getTime('CacheMissConfigMismatch');
|
|
114
|
+
const mySiteCacheMissOnLateFlush = !!getTime('LateFlush');
|
|
115
|
+
const cachedWebPartNotFound = !!getTime('CachedWebPartNotFound');
|
|
116
|
+
const cacheExpired = !!getTime('CacheExpired');
|
|
117
|
+
let cacheMissReason = _IWebPartLoadData._CacheMissReason.NotSpecified;
|
|
123
118
|
if (mySiteCacheMissOnConfgMismatch) {
|
|
124
|
-
cacheMissReason =
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
else if (
|
|
130
|
-
cacheMissReason =
|
|
131
|
-
}
|
|
132
|
-
else if (cacheExpired) {
|
|
133
|
-
cacheMissReason = IWebPartLoadData_1._CacheMissReason.CacheExpired;
|
|
119
|
+
cacheMissReason = _IWebPartLoadData._CacheMissReason.CacheConfigMissmatch;
|
|
120
|
+
} else if (mySiteCacheMissOnLateFlush) {
|
|
121
|
+
cacheMissReason = _IWebPartLoadData._CacheMissReason.LateFlush;
|
|
122
|
+
} else if (cachedWebPartNotFound) {
|
|
123
|
+
cacheMissReason = _IWebPartLoadData._CacheMissReason.CachedItemNotFound;
|
|
124
|
+
} else if (cacheExpired) {
|
|
125
|
+
cacheMissReason = _IWebPartLoadData._CacheMissReason.CacheExpired;
|
|
134
126
|
}
|
|
135
127
|
return cacheMissReason;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
//# sourceMappingURL=WebPartLoadDataCollector.js.map
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
//# sourceMappingURL=./WebPartLoadDataCollector.js.map
|
package/lib-commonjs/index.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
/**
|
|
3
2
|
* SharePoint Framework support for building client-side components
|
|
4
3
|
*
|
|
@@ -9,40 +8,81 @@
|
|
|
9
8
|
* common across all client-side component types.
|
|
10
9
|
*
|
|
11
10
|
* @packagedocumentation
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
11
|
+
*/ "use strict";
|
|
12
|
+
Object.defineProperty(exports, "__esModule", {
|
|
13
|
+
value: true
|
|
14
|
+
});
|
|
15
|
+
function _export(target, all) {
|
|
16
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: all[name]
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
_export(exports, {
|
|
22
|
+
BaseComponent: function() {
|
|
23
|
+
return _BaseComponent.default;
|
|
24
|
+
},
|
|
25
|
+
BaseComponentContext: function() {
|
|
26
|
+
return _BaseComponentContext.default;
|
|
27
|
+
},
|
|
28
|
+
DynamicDataProvider: function() {
|
|
29
|
+
return _DynamicDataProvider.default;
|
|
30
|
+
},
|
|
31
|
+
DynamicDataSourceManager: function() {
|
|
32
|
+
return _DynamicDataSourceManager.default;
|
|
33
|
+
},
|
|
34
|
+
DynamicProperty: function() {
|
|
35
|
+
return _DynamicProperty.default;
|
|
36
|
+
},
|
|
37
|
+
RenderableComponentContext: function() {
|
|
38
|
+
return _RenderableComponentContext.default;
|
|
39
|
+
},
|
|
40
|
+
ThemeChangedEventArgs: function() {
|
|
41
|
+
return _ThemeProvider.ThemeChangedEventArgs;
|
|
42
|
+
},
|
|
43
|
+
ThemeProvider: function() {
|
|
44
|
+
return _ThemeProvider.ThemeProvider;
|
|
45
|
+
},
|
|
46
|
+
_CacheMissReason: function() {
|
|
47
|
+
return _IWebPartLoadData._CacheMissReason;
|
|
48
|
+
},
|
|
49
|
+
_DeferredTeamsAppsClient: function() {
|
|
50
|
+
return _DeferredTeamsAppsClient.DeferredTeamsAppsClient;
|
|
51
|
+
},
|
|
52
|
+
_LegacyThirdPartyFabricCoreLoader: function() {
|
|
53
|
+
return _LegacyThirdPartyFabricCoreLoader.default;
|
|
54
|
+
},
|
|
55
|
+
_PropertyMetadataProcessor: function() {
|
|
56
|
+
return _PropertyMetadataProcessor.PropertyMetadataProcessor;
|
|
57
|
+
},
|
|
58
|
+
_ServerProcessedDataType: function() {
|
|
59
|
+
return _ISerializedServerProcessedData.ServerProcessedDataType;
|
|
60
|
+
},
|
|
61
|
+
_ShimmerFactory: function() {
|
|
62
|
+
return _ShimmerFactory.default;
|
|
63
|
+
},
|
|
64
|
+
_WebPartLoadDataCollector: function() {
|
|
65
|
+
return _WebPartLoadDataCollector.WebPartLoadDataCollector;
|
|
66
|
+
},
|
|
67
|
+
_ensureIsolatedDomainUrl: function() {
|
|
68
|
+
return _EnsureIsolatedDomainUrl.ensureIsolatedDomainUrl;
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
72
|
+
const _BaseComponent = /*#__PURE__*/ _interop_require_default._(require("./BaseComponent"));
|
|
73
|
+
const _BaseComponentContext = /*#__PURE__*/ _interop_require_default._(require("./BaseComponentContext"));
|
|
74
|
+
const _RenderableComponentContext = /*#__PURE__*/ _interop_require_default._(require("./RenderableComponentContext"));
|
|
75
|
+
const _DynamicDataProvider = /*#__PURE__*/ _interop_require_default._(require("./DynamicDataProvider"));
|
|
76
|
+
const _DynamicDataSourceManager = /*#__PURE__*/ _interop_require_default._(require("./DynamicDataSourceManager"));
|
|
77
|
+
const _DynamicProperty = /*#__PURE__*/ _interop_require_default._(require("./DynamicProperty"));
|
|
78
|
+
const _LegacyThirdPartyFabricCoreLoader = /*#__PURE__*/ _interop_require_default._(require("./LegacyThirdPartyFabricCoreLoader"));
|
|
79
|
+
const _PropertyMetadataProcessor = require("./PropertyMetadataProcessor");
|
|
80
|
+
const _ISerializedServerProcessedData = require("./ISerializedServerProcessedData");
|
|
81
|
+
const _ThemeProvider = require("./themeProvider/ThemeProvider");
|
|
82
|
+
const _ShimmerFactory = /*#__PURE__*/ _interop_require_default._(require("./ShimmerFactory"));
|
|
83
|
+
const _EnsureIsolatedDomainUrl = require("./EnsureIsolatedDomainUrl");
|
|
84
|
+
const _WebPartLoadDataCollector = require("./dataCollector/WebPartLoadDataCollector");
|
|
85
|
+
const _IWebPartLoadData = require("./dataCollector/IWebPartLoadData");
|
|
86
|
+
const _DeferredTeamsAppsClient = require("./teams/DeferredTeamsAppsClient");
|
|
87
|
+
|
|
88
|
+
//# sourceMappingURL=./index.js.map
|
|
@@ -1,63 +1,41 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
17
4
|
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.DeferredTeamsAppsClient = void 0;
|
|
27
|
-
var sp_core_library_1 = require("@microsoft/sp-core-library");
|
|
28
|
-
var sp_diagnostics_1 = require("@microsoft/sp-diagnostics");
|
|
29
|
-
/**
|
|
30
|
-
* @internal
|
|
31
|
-
*/
|
|
32
|
-
var DeferredTeamsAppsClient = /** @class */ (function () {
|
|
33
|
-
function DeferredTeamsAppsClient(serviceScope) {
|
|
34
|
-
this._serviceScope = serviceScope;
|
|
5
|
+
Object.defineProperty(exports, "DeferredTeamsAppsClient", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return DeferredTeamsAppsClient;
|
|
35
9
|
}
|
|
36
|
-
|
|
37
|
-
|
|
10
|
+
});
|
|
11
|
+
const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
|
|
12
|
+
const _spcorelibrary = require("@microsoft/sp-core-library");
|
|
13
|
+
const _spdiagnostics = require("@microsoft/sp-diagnostics");
|
|
14
|
+
class DeferredTeamsAppsClient {
|
|
15
|
+
getClient() {
|
|
38
16
|
if (this._teamsAppsClient) {
|
|
39
17
|
return Promise.resolve(this._teamsAppsClient);
|
|
40
18
|
}
|
|
41
19
|
if (!this._teamsAppsClientPromise) {
|
|
42
|
-
|
|
43
|
-
this._teamsAppsClientPromise = Promise.resolve().then(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
return
|
|
48
|
-
})
|
|
49
|
-
.
|
|
50
|
-
loadMonitor_1.writeUnexpectedFailure(undefined, error);
|
|
20
|
+
const loadMonitor = new _spdiagnostics._QosMonitor('DeferredTeamsAppsClient.LoadTeamsAppClient');
|
|
21
|
+
this._teamsAppsClientPromise = Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard._(require(/* webpackChunkName: 'teams-apps-client' */ "./TeamsAppsClient")))// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
22
|
+
.then(({ TeamsAppsClient })=>{
|
|
23
|
+
this._teamsAppsClient = new TeamsAppsClient(this._serviceScope);
|
|
24
|
+
loadMonitor.writeSuccess();
|
|
25
|
+
return this._teamsAppsClient;
|
|
26
|
+
}).catch((error)=>{
|
|
27
|
+
loadMonitor.writeUnexpectedFailure(undefined, error);
|
|
51
28
|
throw error;
|
|
52
29
|
});
|
|
53
30
|
}
|
|
54
31
|
return this._teamsAppsClientPromise;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
32
|
+
}
|
|
33
|
+
constructor(serviceScope){
|
|
34
|
+
this._serviceScope = serviceScope;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The service key for DeferredTeamsAppsClient.
|
|
39
|
+
*/ DeferredTeamsAppsClient.serviceKey = _spcorelibrary.ServiceKey.create('sp-teams-apps-client', DeferredTeamsAppsClient);
|
|
40
|
+
|
|
41
|
+
//# sourceMappingURL=./DeferredTeamsAppsClient.js.map
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Top level teams app item in app catalogs fetched using the Graph API.
|
|
3
|
+
*
|
|
4
|
+
* @internal
|
|
5
|
+
*/ "use strict";
|
|
6
|
+
Object.defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=./ITeamsAppCatalog.js.map
|