framework7 9.0.4 → 9.1.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.
@@ -13,9 +13,14 @@ export default {
13
13
  }
14
14
  }
15
15
  };
16
+ // Allow passing modal-specific params via a `<type>Options` object
17
+ // (e.g. sheetOptions, popupOptions, popoverOptions, panelOptions, loginScreenOptions)
18
+ const openInType = options.openIn.split(':')[0];
16
19
  const params = {
17
- ...options
20
+ ...options,
21
+ ...(options[`${openInType}Options`] || {})
18
22
  };
23
+ delete params[`${openInType}Options`];
19
24
  const component = (props, ctx) => {
20
25
  const {
21
26
  $h,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "framework7",
3
- "version": "9.0.4",
3
+ "version": "9.1.0",
4
4
  "description": "Full featured mobile HTML framework for building iOS & Android apps",
5
5
  "type": "module",
6
6
  "exports": {
@@ -472,5 +472,5 @@
472
472
  "ssr-window": "^5.0.1",
473
473
  "swiper": "^12.0.3"
474
474
  },
475
- "releaseDate": "April 29, 2026"
475
+ "releaseDate": "June 29, 2026"
476
476
  }
package/shared/utils.js CHANGED
@@ -181,6 +181,7 @@ export function merge(...args) {
181
181
  const keysArray = Object.keys(Object(nextSource));
182
182
  for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {
183
183
  const nextKey = keysArray[nextIndex];
184
+ if (nextKey === '__proto__' || nextKey === 'constructor' || nextKey === 'prototype') continue; // eslint-disable-line
184
185
  const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);
185
186
  if (desc !== undefined && desc.enumerable) {
186
187
  to[nextKey] = nextSource[nextKey];
@@ -210,6 +211,7 @@ export function extend(...args) {
210
211
  const keysArray = Object.keys(Object(nextSource));
211
212
  for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {
212
213
  const nextKey = keysArray[nextIndex];
214
+ if (nextKey === '__proto__' || nextKey === 'constructor' || nextKey === 'prototype') continue; // eslint-disable-line
213
215
  const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);
214
216
  if (desc !== undefined && desc.enumerable) {
215
217
  if (!deep) {