@firebase/database-compat 1.0.6-canary.84fe88079 → 1.0.6-canary.f58d48cd4

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.
@@ -5,7 +5,7 @@ import { errorPrefix, validateArgCount, validateCallback, validateContextObject,
5
5
  import { Logger } from '@firebase/logger';
6
6
 
7
7
  const name = "@firebase/database-compat";
8
- const version = "1.0.6-canary.84fe88079";
8
+ const version = "1.0.6-canary.f58d48cd4";
9
9
 
10
10
  /**
11
11
  * @license
@@ -6,7 +6,7 @@ import { __extends } from 'tslib';
6
6
  import { Logger } from '@firebase/logger';
7
7
 
8
8
  var name = "@firebase/database-compat";
9
- var version = "1.0.6-canary.84fe88079";
9
+ var version = "1.0.6-canary.f58d48cd4";
10
10
 
11
11
  /**
12
12
  * @license
package/dist/index.js CHANGED
@@ -12,7 +12,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
12
12
  var firebase__default = /*#__PURE__*/_interopDefaultLegacy(firebase);
13
13
 
14
14
  var name = "@firebase/database-compat";
15
- var version = "1.0.6-canary.84fe88079";
15
+ var version = "1.0.6-canary.f58d48cd4";
16
16
 
17
17
  /**
18
18
  * @license
@@ -5282,6 +5282,8 @@ var FirebaseIFrameScriptHolder = /** @class */ (function () {
5282
5282
  var iframeContents = '<html><body>' + script + '</body></html>';
5283
5283
  try {
5284
5284
  this.myIFrame.doc.open();
5285
+ // TODO: Do not use document.write, since it can lead to XSS. Instead, use the safevalues
5286
+ // library to sanitize the HTML in the iframeContents.
5285
5287
  this.myIFrame.doc.write(iframeContents);
5286
5288
  this.myIFrame.doc.close();
5287
5289
  }
@@ -5507,6 +5509,10 @@ var FirebaseIFrameScriptHolder = /** @class */ (function () {
5507
5509
  var newScript_1 = _this.myIFrame.doc.createElement('script');
5508
5510
  newScript_1.type = 'text/javascript';
5509
5511
  newScript_1.async = true;
5512
+ // TODO: We cannot assign an arbitrary URL to a script attached to the DOM, since it is
5513
+ // at risk of XSS. We should use the safevalues library to create a safeScriptEl, and
5514
+ // assign a sanitized trustedResourceURL to it. Since the URL must be a template string
5515
+ // literal, this could require some heavy refactoring.
5510
5516
  newScript_1.src = url;
5511
5517
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
5512
5518
  newScript_1.onload = newScript_1.onreadystatechange =