@tamagui/core 1.139.0 → 1.139.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/native.cjs CHANGED
@@ -1250,19 +1250,26 @@ var THEME_NAME_SEPARATOR = "_", THEME_CLASSNAME_PREFIX = "t_", FONT_DATA_ATTRIBU
1250
1250
  minWidth: 0,
1251
1251
  flexShrink: 0
1252
1252
  }, MISSING_THEME_MESSAGE = "Missing theme.";
1253
- var conf$1, getSetting = function(key) {
1254
- var _conf_settings_key;
1255
- return (_conf_settings_key = conf$1.settings[key]) !== null && _conf_settings_key !== void 0 ? _conf_settings_key : (
1253
+ var conf$1, getConfigFromGlobalOrLocal = function() {
1254
+ return conf$1 || (globalThis.__tamaguiConfig ? globalThis.__tamaguiConfig : null);
1255
+ }, getSetting = function(key) {
1256
+ var config = getConfigFromGlobalOrLocal();
1257
+ var _config_settings_key;
1258
+ return (_config_settings_key = config.settings[key]) !== null && _config_settings_key !== void 0 ? _config_settings_key : (
1256
1259
  // @ts-expect-error
1257
- conf$1[key]
1260
+ config[key]
1258
1261
  );
1259
1262
  }, setConfig = function(next) {
1260
- conf$1 = next;
1263
+ conf$1 = next, globalThis.__tamaguiConfig = next;
1261
1264
  }, setConfigFont = function(name, font, fontParsed) {
1262
- conf$1.fonts[name] = font, conf$1.fontsParsed[`$${name}`] = fontParsed;
1265
+ var config = getConfigFromGlobalOrLocal();
1266
+ config.fonts[name] = font, config.fontsParsed[`$${name}`] = fontParsed;
1263
1267
  }, getConfig = function() {
1264
- if (!conf$1) throw new Error("Err0");
1265
- return conf$1;
1268
+ var config = getConfigFromGlobalOrLocal();
1269
+ if (!config) throw new Error("Err0");
1270
+ return config;
1271
+ }, getConfigMaybe = function() {
1272
+ return getConfigFromGlobalOrLocal();
1266
1273
  }, tokensMerged;
1267
1274
  function setTokens(_) {
1268
1275
  tokensMerged = _;
@@ -1275,15 +1282,15 @@ var getTokens = function() {
1275
1282
  * Force either with $ or without $ prefix
1276
1283
  */
1277
1284
  {}
1278
- );
1285
+ ), config = getConfigFromGlobalOrLocal();
1279
1286
  var {
1280
1287
  tokens,
1281
1288
  tokensParsed
1282
- } = conf$1;
1289
+ } = config;
1283
1290
  return prefixed === false ? tokens : prefixed === true ? tokensParsed : tokensMerged;
1284
1291
  }, getTokenObject = function(value, group) {
1285
- var _tokensMerged_group, _tokensMerged_, _conf_specificTokens_value;
1286
- return (_conf_specificTokens_value = conf$1.specificTokens[value]) !== null && _conf_specificTokens_value !== void 0 ? _conf_specificTokens_value : group ? (_tokensMerged_group = tokensMerged[group]) === null || _tokensMerged_group === void 0 ? void 0 : _tokensMerged_group[value] : (_tokensMerged_ = tokensMerged[Object.keys(tokensMerged).find(function(cat) {
1292
+ var _tokensMerged_group, _tokensMerged_, config = getConfigFromGlobalOrLocal(), _config_specificTokens_value;
1293
+ return (_config_specificTokens_value = config.specificTokens[value]) !== null && _config_specificTokens_value !== void 0 ? _config_specificTokens_value : group ? (_tokensMerged_group = tokensMerged[group]) === null || _tokensMerged_group === void 0 ? void 0 : _tokensMerged_group[value] : (_tokensMerged_ = tokensMerged[Object.keys(tokensMerged).find(function(cat) {
1287
1294
  return tokensMerged[cat][value];
1288
1295
  }) || ""]) === null || _tokensMerged_ === void 0 ? void 0 : _tokensMerged_[value];
1289
1296
  }, getToken = function(value, group) {
@@ -1292,11 +1299,13 @@ var getTokens = function() {
1292
1299
  }, getTokenValue = function(value, group) {
1293
1300
  if (!(value === "unset" || value === "auto")) return getToken(value, group, false);
1294
1301
  }, getThemes = function() {
1295
- return conf$1.themes;
1302
+ return getConfigFromGlobalOrLocal().themes;
1296
1303
  }, configListeners = /* @__PURE__ */ new Set(), onConfiguredOnce = function(cb) {
1297
- conf$1 ? cb(conf$1) : configListeners.add(cb);
1304
+ var config = getConfigFromGlobalOrLocal();
1305
+ config ? cb(config) : configListeners.add(cb);
1298
1306
  }, updateConfig = function(key, value) {
1299
- Object.assign(conf$1[key], value);
1307
+ var config = getConfigFromGlobalOrLocal();
1308
+ Object.assign(config[key], value);
1300
1309
  }, getFont = function(name) {
1301
1310
  var _Object_entries_find, conf2 = getConfig(), _conf_fontsParsed_name;
1302
1311
  return (_conf_fontsParsed_name = conf2.fontsParsed[name]) !== null && _conf_fontsParsed_name !== void 0 ? _conf_fontsParsed_name : (_Object_entries_find = Object.entries(conf2.fontsParsed).find(function(param) {
@@ -4460,7 +4469,8 @@ var Tamagui = /* @__PURE__ */ (function() {
4460
4469
  identifierToValue.set(identifier, value);
4461
4470
  };
4462
4471
  function createTamagui$1(configIn) {
4463
- var _configIn_settings;
4472
+ var _configIn_settings, existingConfig = getConfigMaybe();
4473
+ existingConfig && (configIn = __spreadValues(__spreadValues({}, existingConfig), configIn));
4464
4474
  var tokensParsed = {}, tokens = createVariables(configIn.tokens || {});
4465
4475
  if (configIn.tokens) {
4466
4476
  var tokensMerged2 = {};
@@ -525,27 +525,26 @@ var THEME_NAME_SEPARATOR = "_", THEME_CLASSNAME_PREFIX = "t_", FONT_DATA_ATTRIBU
525
525
  minWidth: 0,
526
526
  flexShrink: 0
527
527
  }, MISSING_THEME_MESSAGE = "Missing theme.";
528
- var hasLogged = false;
529
- function loadDuplicatedConfig() {
530
- return globalThis.__tamaguiConfig ? (hasLogged = true, hasLogged || console.warn(`Warning: You have duplicate Tamagui dependencies which can cause major, confusing issues.
531
- In dev/test, we're working around this by loading a previously loaded config.
532
- In production, this will error.`), globalThis.__tamaguiConfig) : null;
533
- }
534
- var conf$1, getSetting = function(key) {
535
- var _conf_settings_key;
536
- return (_conf_settings_key = conf$1.settings[key]) !== null && _conf_settings_key !== void 0 ? _conf_settings_key : (
528
+ var conf$1, getConfigFromGlobalOrLocal = function() {
529
+ return conf$1 || (globalThis.__tamaguiConfig ? globalThis.__tamaguiConfig : null);
530
+ }, getSetting = function(key) {
531
+ var config = getConfigFromGlobalOrLocal();
532
+ var _config_settings_key;
533
+ return (_config_settings_key = config.settings[key]) !== null && _config_settings_key !== void 0 ? _config_settings_key : (
537
534
  // @ts-expect-error
538
- conf$1[key]
535
+ config[key]
539
536
  );
540
537
  }, setConfig = function(next) {
541
- conf$1 = next;
538
+ conf$1 = next, globalThis.__tamaguiConfig = next;
542
539
  }, setConfigFont = function(name, font, fontParsed) {
543
- conf$1.fonts[name] = font, conf$1.fontsParsed[`$${name}`] = fontParsed;
540
+ var config = getConfigFromGlobalOrLocal();
541
+ config.fonts[name] = font, config.fontsParsed[`$${name}`] = fontParsed;
544
542
  }, getConfig = function() {
545
- var dup = loadDuplicatedConfig();
546
- if (dup) return dup;
547
- if (!conf$1) throw new Error("Missing tamagui config, you either have a duplicate config, or haven't set it up. Be sure createTamagui is called before rendering. Also, make sure all of your tamagui dependencies are on the same version (`tamagui`, `@tamagui/package-name`, etc.) not just in your package.json, but in your lockfile.");
548
- return conf$1;
543
+ var config = getConfigFromGlobalOrLocal();
544
+ if (!config) throw new Error("Missing tamagui config, you either have a duplicate config, or haven't set it up. Be sure createTamagui is called before rendering. Also, make sure all of your tamagui dependencies are on the same version (`tamagui`, `@tamagui/package-name`, etc.) not just in your package.json, but in your lockfile.");
545
+ return config;
546
+ }, getConfigMaybe = function() {
547
+ return getConfigFromGlobalOrLocal();
549
548
  }, tokensMerged;
550
549
  function setTokens(_) {
551
550
  tokensMerged = _;
@@ -558,15 +557,15 @@ var getTokens = function() {
558
557
  * Force either with $ or without $ prefix
559
558
  */
560
559
  {}
561
- );
560
+ ), config = getConfigFromGlobalOrLocal();
562
561
  var {
563
562
  tokens,
564
563
  tokensParsed
565
- } = conf$1;
564
+ } = config;
566
565
  return prefixed === false ? tokens : prefixed === true ? tokensParsed : tokensMerged;
567
566
  }, getTokenObject = function(value, group) {
568
- var _tokensMerged_group, _tokensMerged_, _conf_specificTokens_value;
569
- return (_conf_specificTokens_value = conf$1.specificTokens[value]) !== null && _conf_specificTokens_value !== void 0 ? _conf_specificTokens_value : group ? (_tokensMerged_group = tokensMerged[group]) === null || _tokensMerged_group === void 0 ? void 0 : _tokensMerged_group[value] : (_tokensMerged_ = tokensMerged[Object.keys(tokensMerged).find(function(cat) {
567
+ var _tokensMerged_group, _tokensMerged_, config = getConfigFromGlobalOrLocal(), _config_specificTokens_value;
568
+ return (_config_specificTokens_value = config.specificTokens[value]) !== null && _config_specificTokens_value !== void 0 ? _config_specificTokens_value : group ? (_tokensMerged_group = tokensMerged[group]) === null || _tokensMerged_group === void 0 ? void 0 : _tokensMerged_group[value] : (_tokensMerged_ = tokensMerged[Object.keys(tokensMerged).find(function(cat) {
570
569
  return tokensMerged[cat][value];
571
570
  }) || ""]) === null || _tokensMerged_ === void 0 ? void 0 : _tokensMerged_[value];
572
571
  }, getToken = function(value, group) {
@@ -575,11 +574,13 @@ var getTokens = function() {
575
574
  }, getTokenValue = function(value, group) {
576
575
  if (!(value === "unset" || value === "auto")) return getToken(value, group, false);
577
576
  }, getThemes = function() {
578
- return conf$1.themes;
577
+ return getConfigFromGlobalOrLocal().themes;
579
578
  }, configListeners = /* @__PURE__ */ new Set(), onConfiguredOnce = function(cb) {
580
- conf$1 ? cb(conf$1) : configListeners.add(cb);
579
+ var config = getConfigFromGlobalOrLocal();
580
+ config ? cb(config) : configListeners.add(cb);
581
581
  }, updateConfig = function(key, value) {
582
- Object.assign(conf$1[key], value);
582
+ var config = getConfigFromGlobalOrLocal();
583
+ Object.assign(config[key], value);
583
584
  }, getFont = function(name) {
584
585
  var _Object_entries_find, conf2 = getConfig(), _conf_fontsParsed_name;
585
586
  return (_conf_fontsParsed_name = conf2.fontsParsed[name]) !== null && _conf_fontsParsed_name !== void 0 ? _conf_fontsParsed_name : (_Object_entries_find = Object.entries(conf2.fontsParsed).find(function(param) {
@@ -4290,8 +4291,8 @@ var Tamagui = /* @__PURE__ */ (function() {
4290
4291
  identifierToValue.set(identifier, value);
4291
4292
  };
4292
4293
  function createTamagui$1(configIn) {
4293
- var _configIn_settings, dup = loadDuplicatedConfig();
4294
- if (dup) return dup;
4294
+ var _configIn_settings, existingConfig = getConfigMaybe();
4295
+ existingConfig && (configIn = __spreadValues(__spreadValues({}, existingConfig), configIn));
4295
4296
  var tokensParsed = {}, tokens = createVariables(configIn.tokens || {});
4296
4297
  if (configIn.tokens) {
4297
4298
  var tokensMerged2 = {};
@@ -4389,7 +4390,7 @@ function createTamagui$1(configIn) {
4389
4390
  specificTokens,
4390
4391
  defaultFontToken
4391
4392
  });
4392
- if (setConfig(config), configureMedia(config), globalThis.__tamaguiConfig = config, configListeners.size && (configListeners.forEach(function(cb) {
4393
+ if (setConfig(config), configureMedia(config), configListeners.size && (configListeners.forEach(function(cb) {
4393
4394
  return cb(config);
4394
4395
  }), configListeners.clear()), false) ;
4395
4396
  return config;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/core",
3
- "version": "1.139.0",
3
+ "version": "1.139.2",
4
4
  "type": "module",
5
5
  "source": "src/index.tsx",
6
6
  "main": "dist/cjs",
@@ -33,18 +33,18 @@
33
33
  "native-test.d.ts"
34
34
  ],
35
35
  "dependencies": {
36
- "@tamagui/helpers": "1.139.0",
37
- "@tamagui/react-native-media-driver": "1.139.0",
38
- "@tamagui/react-native-use-pressable": "1.139.0",
39
- "@tamagui/react-native-use-responder-events": "1.139.0",
40
- "@tamagui/use-element-layout": "1.139.0",
41
- "@tamagui/use-event": "1.139.0",
42
- "@tamagui/web": "1.139.0"
36
+ "@tamagui/helpers": "1.139.2",
37
+ "@tamagui/react-native-media-driver": "1.139.2",
38
+ "@tamagui/react-native-use-pressable": "1.139.2",
39
+ "@tamagui/react-native-use-responder-events": "1.139.2",
40
+ "@tamagui/use-element-layout": "1.139.2",
41
+ "@tamagui/use-event": "1.139.2",
42
+ "@tamagui/web": "1.139.2"
43
43
  },
44
44
  "devDependencies": {
45
- "@tamagui/build": "1.139.0",
46
- "@tamagui/native-bundle": "1.139.0",
47
- "@tamagui/react-native-web-lite": "1.139.0",
45
+ "@tamagui/build": "1.139.2",
46
+ "@tamagui/native-bundle": "1.139.2",
47
+ "@tamagui/react-native-web-lite": "1.139.2",
48
48
  "@testing-library/react": "^16.1.0",
49
49
  "csstype": "^3.0.10",
50
50
  "react": "*",