@dynatrace/react-native-plugin 2.317.1 → 2.317.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/README.md CHANGED
@@ -1461,8 +1461,9 @@ If you are struggling with a problem, submit a support ticket to Dynatrace (supp
1461
1461
  <br/><br/>
1462
1462
  ## Changelog
1463
1463
 
1464
- 2.317.1
1464
+ 2.317.2
1465
1465
  * Updated Android (8.317.1.1007) & iOS Agent (8.317.1.1003)
1466
+ * Webrequest correlation with user action fixed for iOS
1466
1467
 
1467
1468
  2.313.1
1468
1469
  * Updated Android (8.313.1.1004) & iOS Agent (8.313.1.1016)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynatrace/react-native-plugin",
3
- "version": "2.317.1",
3
+ "version": "2.317.2",
4
4
  "description": "This plugin gives you the ability to use the Dynatrace Mobile agent in your react native application.",
5
5
  "main": "index.js",
6
6
  "types": "typings/react-native-dynatrace.d.ts",
package/scripts/Ios.js CHANGED
@@ -2,7 +2,7 @@
2
2
  'use strict';
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  const nodePath = require("path");
5
- const plist = require("plist");
5
+ const plist_1 = require("plist");
6
6
  const Logger_1 = require("./Logger");
7
7
  const FileOperationHelper_1 = require("./FileOperationHelper");
8
8
  const PathsConstants_1 = require("./PathsConstants");
@@ -62,20 +62,20 @@ const modifyPListFile = (pathToPList, iosConfig, removeOnly) => {
62
62
  };
63
63
  const removePListConfig = (file) => {
64
64
  const pListContent = FileOperationHelper_1.default.readTextFromFileSync(file);
65
- const pListObj = plist.parse(pListContent);
65
+ const pListObj = (0, plist_1.parse)(pListContent);
66
66
  const pListObjCopy = Object.assign({}, pListObj);
67
67
  for (const property in pListObj) {
68
68
  if (property.startsWith('DTX')) {
69
69
  delete pListObjCopy[property];
70
70
  }
71
71
  }
72
- FileOperationHelper_1.default.writeTextToFileSync(file, plist.build(pListObjCopy));
72
+ FileOperationHelper_1.default.writeTextToFileSync(file, (0, plist_1.build)(pListObjCopy));
73
73
  Logger_1.default.logMessageSync('Removed old configuration in plist file: ' + file, Logger_1.default.INFO);
74
74
  };
75
75
  const addAgentConfigToPListFile = (file, config) => {
76
76
  const pListContent = FileOperationHelper_1.default.readTextFromFileSync(file);
77
77
  const newPListContent = PlistConstants_1.START_PLIST + config + PlistConstants_1.END_PLIST;
78
- FileOperationHelper_1.default.writeTextToFileSync(file, plist.build(Object.assign(Object.assign({}, plist.parse(pListContent)), plist.parse(newPListContent))));
78
+ FileOperationHelper_1.default.writeTextToFileSync(file, (0, plist_1.build)(Object.assign(Object.assign({}, (0, plist_1.parse)(pListContent)), (0, plist_1.parse)(newPListContent))));
79
79
  Logger_1.default.logMessageSync('Updated configuration in plist file: ' + file, Logger_1.default.INFO);
80
80
  };
81
81
  const findPListFile = () => {
@@ -106,13 +106,13 @@ const findPListFile = () => {
106
106
  };
107
107
  const parsePList = (file) => {
108
108
  const pListContent = FileOperationHelper_1.default.readTextFromFileSync(file);
109
- let pListObj = plist.parse(pListContent);
109
+ let pListObj = (0, plist_1.parse)(pListContent);
110
110
  return pListObj = Object.assign({}, pListObj);
111
111
  };
112
112
  const isAutoStartEnabled = (config) => {
113
113
  if (config !== undefined && config.indexOf(PlistConstants_1.AUTO_START_PROP) >= 0) {
114
114
  const configObj = PlistConstants_1.START_PLIST + config + PlistConstants_1.END_PLIST;
115
- const configObjCopy = plist.parse(configObj);
115
+ const configObjCopy = (0, plist_1.parse)(configObj);
116
116
  const configKeys = Object.keys(configObjCopy);
117
117
  const configValues = Object.values(configObjCopy);
118
118
  for (const key in configKeys) {
@@ -142,7 +142,7 @@ const updatedExcludedStr = (config) => {
142
142
  };
143
143
  const isPropertyCountEqual = (parsedPList, config) => {
144
144
  const configObj = PlistConstants_1.START_PLIST + config + PlistConstants_1.END_PLIST;
145
- const configObjCopy = plist.parse(configObj);
145
+ const configObjCopy = (0, plist_1.parse)(configObj);
146
146
  return Object.keys(parsedPList)
147
147
  .filter((pListDtxKeys) => pListDtxKeys.startsWith('DTX')).length === Object.keys(configObjCopy)
148
148
  .filter((configDtxKeys) => configDtxKeys.startsWith('DTX')).length;
@@ -162,7 +162,7 @@ const areConfigsEqual = (parsedPList, configObj) => {
162
162
  };
163
163
  const comparePListAndConfig = (pListObj, config) => {
164
164
  const configObj = PlistConstants_1.START_PLIST + config + PlistConstants_1.END_PLIST;
165
- const configObjCopy = plist.parse(configObj);
165
+ const configObjCopy = (0, plist_1.parse)(configObj);
166
166
  removeNonDTXProperties(pListObj);
167
167
  removeNonDTXProperties(configObjCopy);
168
168
  return areConfigsEqual(pListObj, configObjCopy);
@@ -183,7 +183,7 @@ const hasDuplicateProperties = (config) => {
183
183
  return !newConfigArr.every((property) => newConfigArr.indexOf(property) === newConfigArr.lastIndexOf(property));
184
184
  };
185
185
  const createNewPListIfRequired = (parsedPList, configProps, pathToPList) => {
186
- const configIncludingFlavor = configProps + PlistConstants_1.FLAVOR_PROP + updatedExcludedStr(configProps);
186
+ const configIncludingFlavor = configProps + getAdditionalInternalPluginKeys() + updatedExcludedStr(configProps);
187
187
  if (isPropertyCountEqual(parsedPList, configIncludingFlavor) && comparePListAndConfig(parsedPList, configIncludingFlavor)) {
188
188
  Logger_1.default.logMessageSync('Not generating a new plist as the current plist and ' +
189
189
  ' dynatrace.config.js iOS properties are identical!', Logger_1.default.INFO);
@@ -195,6 +195,7 @@ const createNewPListIfRequired = (parsedPList, configProps, pathToPList) => {
195
195
  addAgentConfigToPListFile(pathToPList, configIncludingFlavor);
196
196
  }
197
197
  };
198
+ const getAdditionalInternalPluginKeys = () => PlistConstants_1.FLAVOR_PROP + PlistConstants_1.WEBREQUEST_FALLBACK_PROP;
198
199
  exports.default = {
199
200
  modifyPListFile,
200
201
  findPListFile,
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CONTROLS_PROP_OPTIONS = exports.END_CONTROLS_PROP = exports.START_CONTROLS_PROP = exports.DEFAULT_CONTROLS_PROP = exports.FLAVOR_PROP = exports.AUTO_START_PROP = exports.END_PLIST = exports.START_PLIST = void 0;
3
+ exports.CONTROLS_PROP_OPTIONS = exports.END_CONTROLS_PROP = exports.START_CONTROLS_PROP = exports.DEFAULT_CONTROLS_PROP = exports.WEBREQUEST_FALLBACK_PROP = exports.FLAVOR_PROP = exports.AUTO_START_PROP = exports.END_PLIST = exports.START_PLIST = void 0;
4
4
  exports.START_PLIST = '<plist><dict>';
5
5
  exports.END_PLIST = '</dict></plist>';
6
6
  exports.AUTO_START_PROP = '<key>DTXAutoStart</key>';
7
7
  exports.FLAVOR_PROP = '<key>DTXFlavor</key>\n<string>react_native</string>';
8
+ exports.WEBREQUEST_FALLBACK_PROP = '<key>DTXDisableWebRequestsInstrumentationV2</key>\n<true/>';
8
9
  exports.DEFAULT_CONTROLS_PROP = '<key>DTXExcludedControls</key>\n<array>\n\t<string>PickerView</string>\n\t<string>Switch</string>\n</array>';
9
10
  exports.START_CONTROLS_PROP = '<key>DTXExcludedControls</key>\n<array>';
10
11
  exports.END_CONTROLS_PROP = '\n</array>';