@zthun/romulator-web 1.3.1 → 1.3.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/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.3.2](https://github.com/zthun/romulator/compare/v1.3.1...v1.3.2) (2025-07-18)
7
+
8
+ **Note:** Version bump only for package @zthun/romulator-web
9
+
10
+
11
+
12
+
13
+
6
14
  ## [1.3.1](https://github.com/zthun/romulator/compare/v1.3.0...v1.3.1) (2025-07-01)
7
15
 
8
16
  **Note:** Version bump only for package @zthun/romulator-web
@@ -1,39 +1,31 @@
1
1
  true &&(function polyfill() {
2
- const relList = document.createElement("link").relList;
3
- if (relList && relList.supports && relList.supports("modulepreload")) {
4
- return;
5
- }
6
- for (const link of document.querySelectorAll('link[rel="modulepreload"]')) {
7
- processPreload(link);
8
- }
9
- new MutationObserver((mutations) => {
10
- for (const mutation of mutations) {
11
- if (mutation.type !== "childList") {
12
- continue;
13
- }
14
- for (const node of mutation.addedNodes) {
15
- if (node.tagName === "LINK" && node.rel === "modulepreload")
16
- processPreload(node);
17
- }
18
- }
19
- }).observe(document, { childList: true, subtree: true });
20
- function getFetchOpts(link) {
21
- const fetchOpts = {};
22
- if (link.integrity) fetchOpts.integrity = link.integrity;
23
- if (link.referrerPolicy) fetchOpts.referrerPolicy = link.referrerPolicy;
24
- if (link.crossOrigin === "use-credentials")
25
- fetchOpts.credentials = "include";
26
- else if (link.crossOrigin === "anonymous") fetchOpts.credentials = "omit";
27
- else fetchOpts.credentials = "same-origin";
28
- return fetchOpts;
29
- }
30
- function processPreload(link) {
31
- if (link.ep)
32
- return;
33
- link.ep = true;
34
- const fetchOpts = getFetchOpts(link);
35
- fetch(link.href, fetchOpts);
36
- }
2
+ const relList = document.createElement("link").relList;
3
+ if (relList && relList.supports && relList.supports("modulepreload")) return;
4
+ for (const link of document.querySelectorAll("link[rel=\"modulepreload\"]")) processPreload(link);
5
+ new MutationObserver((mutations) => {
6
+ for (const mutation of mutations) {
7
+ if (mutation.type !== "childList") continue;
8
+ for (const node of mutation.addedNodes) if (node.tagName === "LINK" && node.rel === "modulepreload") processPreload(node);
9
+ }
10
+ }).observe(document, {
11
+ childList: true,
12
+ subtree: true
13
+ });
14
+ function getFetchOpts(link) {
15
+ const fetchOpts = {};
16
+ if (link.integrity) fetchOpts.integrity = link.integrity;
17
+ if (link.referrerPolicy) fetchOpts.referrerPolicy = link.referrerPolicy;
18
+ if (link.crossOrigin === "use-credentials") fetchOpts.credentials = "include";
19
+ else if (link.crossOrigin === "anonymous") fetchOpts.credentials = "omit";
20
+ else fetchOpts.credentials = "same-origin";
21
+ return fetchOpts;
22
+ }
23
+ function processPreload(link) {
24
+ if (link.ep) return;
25
+ link.ep = true;
26
+ const fetchOpts = getFetchOpts(link);
27
+ fetch(link.href, fetchOpts);
28
+ }
37
29
  }());
38
30
 
39
31
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
@@ -15452,256 +15444,16 @@ function rulesheet (callback) {
15452
15444
  }
15453
15445
  }
15454
15446
 
15455
- var dist = {};
15456
-
15457
- var hasRequiredDist;
15458
-
15459
- function requireDist () {
15460
- if (hasRequiredDist) return dist;
15461
- hasRequiredDist = 1;
15462
- Object.defineProperty(dist, "__esModule", { value: true });
15463
- dist.parse = parse;
15464
- dist.serialize = serialize;
15465
- /**
15466
- * RegExp to match cookie-name in RFC 6265 sec 4.1.1
15467
- * This refers out to the obsoleted definition of token in RFC 2616 sec 2.2
15468
- * which has been replaced by the token definition in RFC 7230 appendix B.
15469
- *
15470
- * cookie-name = token
15471
- * token = 1*tchar
15472
- * tchar = "!" / "#" / "$" / "%" / "&" / "'" /
15473
- * "*" / "+" / "-" / "." / "^" / "_" /
15474
- * "`" / "|" / "~" / DIGIT / ALPHA
15475
- *
15476
- * Note: Allowing more characters - https://github.com/jshttp/cookie/issues/191
15477
- * Allow same range as cookie value, except `=`, which delimits end of name.
15478
- */
15479
- const cookieNameRegExp = /^[\u0021-\u003A\u003C\u003E-\u007E]+$/;
15480
- /**
15481
- * RegExp to match cookie-value in RFC 6265 sec 4.1.1
15482
- *
15483
- * cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )
15484
- * cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E
15485
- * ; US-ASCII characters excluding CTLs,
15486
- * ; whitespace DQUOTE, comma, semicolon,
15487
- * ; and backslash
15488
- *
15489
- * Allowing more characters: https://github.com/jshttp/cookie/issues/191
15490
- * Comma, backslash, and DQUOTE are not part of the parsing algorithm.
15491
- */
15492
- const cookieValueRegExp = /^[\u0021-\u003A\u003C-\u007E]*$/;
15493
- /**
15494
- * RegExp to match domain-value in RFC 6265 sec 4.1.1
15495
- *
15496
- * domain-value = <subdomain>
15497
- * ; defined in [RFC1034], Section 3.5, as
15498
- * ; enhanced by [RFC1123], Section 2.1
15499
- * <subdomain> = <label> | <subdomain> "." <label>
15500
- * <label> = <let-dig> [ [ <ldh-str> ] <let-dig> ]
15501
- * Labels must be 63 characters or less.
15502
- * 'let-dig' not 'letter' in the first char, per RFC1123
15503
- * <ldh-str> = <let-dig-hyp> | <let-dig-hyp> <ldh-str>
15504
- * <let-dig-hyp> = <let-dig> | "-"
15505
- * <let-dig> = <letter> | <digit>
15506
- * <letter> = any one of the 52 alphabetic characters A through Z in
15507
- * upper case and a through z in lower case
15508
- * <digit> = any one of the ten digits 0 through 9
15509
- *
15510
- * Keep support for leading dot: https://github.com/jshttp/cookie/issues/173
15511
- *
15512
- * > (Note that a leading %x2E ("."), if present, is ignored even though that
15513
- * character is not permitted, but a trailing %x2E ("."), if present, will
15514
- * cause the user agent to ignore the attribute.)
15515
- */
15516
- const domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;
15517
- /**
15518
- * RegExp to match path-value in RFC 6265 sec 4.1.1
15519
- *
15520
- * path-value = <any CHAR except CTLs or ";">
15521
- * CHAR = %x01-7F
15522
- * ; defined in RFC 5234 appendix B.1
15523
- */
15524
- const pathValueRegExp = /^[\u0020-\u003A\u003D-\u007E]*$/;
15525
- const __toString = Object.prototype.toString;
15526
- const NullObject = /* @__PURE__ */ (() => {
15527
- const C = function () { };
15528
- C.prototype = Object.create(null);
15529
- return C;
15530
- })();
15531
- /**
15532
- * Parse a cookie header.
15533
- *
15534
- * Parse the given cookie header string into an object
15535
- * The object has the various cookies as keys(names) => values
15536
- */
15537
- function parse(str, options) {
15538
- const obj = new NullObject();
15539
- const len = str.length;
15540
- // RFC 6265 sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.
15541
- if (len < 2)
15542
- return obj;
15543
- const dec = options?.decode || decode;
15544
- let index = 0;
15545
- do {
15546
- const eqIdx = str.indexOf("=", index);
15547
- if (eqIdx === -1)
15548
- break; // No more cookie pairs.
15549
- const colonIdx = str.indexOf(";", index);
15550
- const endIdx = colonIdx === -1 ? len : colonIdx;
15551
- if (eqIdx > endIdx) {
15552
- // backtrack on prior semicolon
15553
- index = str.lastIndexOf(";", eqIdx - 1) + 1;
15554
- continue;
15555
- }
15556
- const keyStartIdx = startIndex(str, index, eqIdx);
15557
- const keyEndIdx = endIndex(str, eqIdx, keyStartIdx);
15558
- const key = str.slice(keyStartIdx, keyEndIdx);
15559
- // only assign once
15560
- if (obj[key] === undefined) {
15561
- let valStartIdx = startIndex(str, eqIdx + 1, endIdx);
15562
- let valEndIdx = endIndex(str, endIdx, valStartIdx);
15563
- const value = dec(str.slice(valStartIdx, valEndIdx));
15564
- obj[key] = value;
15565
- }
15566
- index = endIdx + 1;
15567
- } while (index < len);
15568
- return obj;
15569
- }
15570
- function startIndex(str, index, max) {
15571
- do {
15572
- const code = str.charCodeAt(index);
15573
- if (code !== 0x20 /* */ && code !== 0x09 /* \t */)
15574
- return index;
15575
- } while (++index < max);
15576
- return max;
15577
- }
15578
- function endIndex(str, index, min) {
15579
- while (index > min) {
15580
- const code = str.charCodeAt(--index);
15581
- if (code !== 0x20 /* */ && code !== 0x09 /* \t */)
15582
- return index + 1;
15583
- }
15584
- return min;
15585
- }
15586
- /**
15587
- * Serialize data into a cookie header.
15588
- *
15589
- * Serialize a name value pair into a cookie string suitable for
15590
- * http headers. An optional options object specifies cookie parameters.
15591
- *
15592
- * serialize('foo', 'bar', { httpOnly: true })
15593
- * => "foo=bar; httpOnly"
15594
- */
15595
- function serialize(name, val, options) {
15596
- const enc = options?.encode || encodeURIComponent;
15597
- if (!cookieNameRegExp.test(name)) {
15598
- throw new TypeError(`argument name is invalid: ${name}`);
15599
- }
15600
- const value = enc(val);
15601
- if (!cookieValueRegExp.test(value)) {
15602
- throw new TypeError(`argument val is invalid: ${val}`);
15603
- }
15604
- let str = name + "=" + value;
15605
- if (!options)
15606
- return str;
15607
- if (options.maxAge !== undefined) {
15608
- if (!Number.isInteger(options.maxAge)) {
15609
- throw new TypeError(`option maxAge is invalid: ${options.maxAge}`);
15610
- }
15611
- str += "; Max-Age=" + options.maxAge;
15612
- }
15613
- if (options.domain) {
15614
- if (!domainValueRegExp.test(options.domain)) {
15615
- throw new TypeError(`option domain is invalid: ${options.domain}`);
15616
- }
15617
- str += "; Domain=" + options.domain;
15618
- }
15619
- if (options.path) {
15620
- if (!pathValueRegExp.test(options.path)) {
15621
- throw new TypeError(`option path is invalid: ${options.path}`);
15622
- }
15623
- str += "; Path=" + options.path;
15624
- }
15625
- if (options.expires) {
15626
- if (!isDate(options.expires) ||
15627
- !Number.isFinite(options.expires.valueOf())) {
15628
- throw new TypeError(`option expires is invalid: ${options.expires}`);
15629
- }
15630
- str += "; Expires=" + options.expires.toUTCString();
15631
- }
15632
- if (options.httpOnly) {
15633
- str += "; HttpOnly";
15634
- }
15635
- if (options.secure) {
15636
- str += "; Secure";
15637
- }
15638
- if (options.partitioned) {
15639
- str += "; Partitioned";
15640
- }
15641
- if (options.priority) {
15642
- const priority = typeof options.priority === "string"
15643
- ? options.priority.toLowerCase()
15644
- : undefined;
15645
- switch (priority) {
15646
- case "low":
15647
- str += "; Priority=Low";
15648
- break;
15649
- case "medium":
15650
- str += "; Priority=Medium";
15651
- break;
15652
- case "high":
15653
- str += "; Priority=High";
15654
- break;
15655
- default:
15656
- throw new TypeError(`option priority is invalid: ${options.priority}`);
15657
- }
15658
- }
15659
- if (options.sameSite) {
15660
- const sameSite = typeof options.sameSite === "string"
15661
- ? options.sameSite.toLowerCase()
15662
- : options.sameSite;
15663
- switch (sameSite) {
15664
- case true:
15665
- case "strict":
15666
- str += "; SameSite=Strict";
15667
- break;
15668
- case "lax":
15669
- str += "; SameSite=Lax";
15670
- break;
15671
- case "none":
15672
- str += "; SameSite=None";
15673
- break;
15674
- default:
15675
- throw new TypeError(`option sameSite is invalid: ${options.sameSite}`);
15676
- }
15677
- }
15678
- return str;
15679
- }
15680
- /**
15681
- * URL-decode string value. Optimized to skip native call when no %.
15682
- */
15683
- function decode(str) {
15684
- if (str.indexOf("%") === -1)
15685
- return str;
15686
- try {
15687
- return decodeURIComponent(str);
15688
- }
15689
- catch (e) {
15690
- return str;
15691
- }
15692
- }
15693
- /**
15694
- * Determine if value is a Date.
15695
- */
15696
- function isDate(val) {
15697
- return __toString.call(val) === "[object Date]";
15698
- }
15699
-
15700
- return dist;
15701
- }
15702
-
15703
- requireDist();
15704
-
15447
+ /**
15448
+ * react-router v7.7.0
15449
+ *
15450
+ * Copyright (c) Remix Software Inc.
15451
+ *
15452
+ * This source code is licensed under the MIT license found in the
15453
+ * LICENSE.md file in the root directory of this source tree.
15454
+ *
15455
+ * @license MIT
15456
+ */
15705
15457
  var PopStateEventType = "popstate";
15706
15458
  function createHashHistory(options = {}) {
15707
15459
  function createHashLocation(window2, globalHistory) {
@@ -15723,13 +15475,13 @@ function createHashHistory(options = {}) {
15723
15475
  }
15724
15476
  function createHashHref(window2, to) {
15725
15477
  let base = window2.document.querySelector("base");
15726
- let href2 = "";
15478
+ let href = "";
15727
15479
  if (base && base.getAttribute("href")) {
15728
15480
  let url = window2.location.href;
15729
15481
  let hashIndex = url.indexOf("#");
15730
- href2 = hashIndex === -1 ? url : url.slice(0, hashIndex);
15482
+ href = hashIndex === -1 ? url : url.slice(0, hashIndex);
15731
15483
  }
15732
- return href2 + "#" + (typeof to === "string" ? to : createPath(to));
15484
+ return href + "#" + (typeof to === "string" ? to : createPath(to));
15733
15485
  }
15734
15486
  function validateHashLocation(location, to) {
15735
15487
  warning(
@@ -15916,12 +15668,12 @@ function createBrowserURLImpl(to, isAbsolute = false) {
15916
15668
  base = window.location.origin !== "null" ? window.location.origin : window.location.href;
15917
15669
  }
15918
15670
  invariant(base, "No window.location.(origin|href) available to create URL");
15919
- let href2 = typeof to === "string" ? to : createPath(to);
15920
- href2 = href2.replace(/ $/, "%20");
15921
- if (!isAbsolute && href2.startsWith("//")) {
15922
- href2 = base + href2;
15671
+ let href = typeof to === "string" ? to : createPath(to);
15672
+ href = href.replace(/ $/, "%20");
15673
+ if (!isAbsolute && href.startsWith("//")) {
15674
+ href = base + href;
15923
15675
  }
15924
- return new URL(href2, base);
15676
+ return new URL(href, base);
15925
15677
  }
15926
15678
  function matchRoutes(routes, locationArg, basename = "/") {
15927
15679
  return matchRoutesImpl(routes, locationArg, basename, false);
@@ -16294,6 +16046,7 @@ var DataRouterContext = reactExports.createContext(null);
16294
16046
  DataRouterContext.displayName = "DataRouter";
16295
16047
  var DataRouterStateContext = reactExports.createContext(null);
16296
16048
  DataRouterStateContext.displayName = "DataRouterState";
16049
+ reactExports.createContext(false);
16297
16050
  var ViewTransitionContext = reactExports.createContext({
16298
16051
  isTransitioning: false
16299
16052
  });
@@ -17054,11 +16807,28 @@ function getFormSubmissionInfo(target, basename) {
17054
16807
  }
17055
16808
  return { action, method: method.toLowerCase(), encType, formData, body };
17056
16809
  }
16810
+ Object.getOwnPropertyNames(Object.prototype).sort().join("\0");
17057
16811
  function invariant2(value, message) {
17058
16812
  if (value === false || value === null || typeof value === "undefined") {
17059
16813
  throw new Error(message);
17060
16814
  }
17061
16815
  }
16816
+ function singleFetchUrl(reqUrl, basename, extension) {
16817
+ let url = typeof reqUrl === "string" ? new URL(
16818
+ reqUrl,
16819
+ // This can be called during the SSR flow via PrefetchPageLinksImpl so
16820
+ // don't assume window is available
16821
+ typeof window === "undefined" ? "server://singlefetch/" : window.location.origin
16822
+ ) : reqUrl;
16823
+ if (url.pathname === "/") {
16824
+ url.pathname = `_root.${extension}`;
16825
+ } else if (basename && stripBasename(url.pathname, basename) === "/") {
16826
+ url.pathname = `${basename.replace(/\/$/, "")}/_root.${extension}`;
16827
+ } else {
16828
+ url.pathname = `${url.pathname.replace(/\/$/, "")}.${extension}`;
16829
+ }
16830
+ return url;
16831
+ }
17062
16832
  async function loadRouteModule(route, routeModulesCache) {
17063
16833
  if (route.id in routeModulesCache) {
17064
16834
  return routeModulesCache[route.id];
@@ -17201,24 +16971,6 @@ function dedupeLinkDescriptors(descriptors, preloads) {
17201
16971
  return deduped;
17202
16972
  }, []);
17203
16973
  }
17204
- Object.getOwnPropertyNames(Object.prototype).sort().join("\0");
17205
- var NO_BODY_STATUS_CODES = /* @__PURE__ */ new Set([100, 101, 204, 205]);
17206
- function singleFetchUrl(reqUrl, basename) {
17207
- let url = typeof reqUrl === "string" ? new URL(
17208
- reqUrl,
17209
- // This can be called during the SSR flow via PrefetchPageLinksImpl so
17210
- // don't assume window is available
17211
- typeof window === "undefined" ? "server://singlefetch/" : window.location.origin
17212
- ) : reqUrl;
17213
- if (url.pathname === "/") {
17214
- url.pathname = "_root.data";
17215
- } else if (basename && stripBasename(url.pathname, basename) === "/") {
17216
- url.pathname = `${basename.replace(/\/$/, "")}/_root.data`;
17217
- } else {
17218
- url.pathname = `${url.pathname.replace(/\/$/, "")}.data`;
17219
- }
17220
- return url;
17221
- }
17222
16974
  function useDataRouterContext2() {
17223
16975
  let context = reactExports.useContext(DataRouterContext);
17224
16976
  invariant2(
@@ -17396,7 +17148,7 @@ function PrefetchPageLinksImpl({
17396
17148
  if (routesParams.size === 0) {
17397
17149
  return [];
17398
17150
  }
17399
- let url = singleFetchUrl(page, basename);
17151
+ let url = singleFetchUrl(page, basename, "data");
17400
17152
  if (foundOptOutRoute && routesParams.size > 0) {
17401
17153
  url.searchParams.set(
17402
17154
  "_routes",
@@ -17419,7 +17171,7 @@ function PrefetchPageLinksImpl({
17419
17171
  [newMatchesForAssets, manifest]
17420
17172
  );
17421
17173
  let keyedPrefetchLinks = useKeyedPrefetchLinks(newMatchesForAssets);
17422
- return /* @__PURE__ */ reactExports.createElement(reactExports.Fragment, null, dataHrefs.map((href2) => /* @__PURE__ */ reactExports.createElement("link", { key: href2, rel: "prefetch", as: "fetch", href: href2, ...linkProps })), moduleHrefs.map((href2) => /* @__PURE__ */ reactExports.createElement("link", { key: href2, rel: "modulepreload", href: href2, ...linkProps })), keyedPrefetchLinks.map(({ key, link }) => (
17174
+ return /* @__PURE__ */ reactExports.createElement(reactExports.Fragment, null, dataHrefs.map((href) => /* @__PURE__ */ reactExports.createElement("link", { key: href, rel: "prefetch", as: "fetch", href, ...linkProps })), moduleHrefs.map((href) => /* @__PURE__ */ reactExports.createElement("link", { key: href, rel: "modulepreload", href, ...linkProps })), keyedPrefetchLinks.map(({ key, link }) => (
17423
17175
  // these don't spread `linkProps` because they are full link descriptors
17424
17176
  // already with their own props
17425
17177
  /* @__PURE__ */ reactExports.createElement("link", { key, ...link })
@@ -17439,7 +17191,8 @@ function mergeRefs(...refs) {
17439
17191
  var isBrowser = typeof window !== "undefined" && typeof window.document !== "undefined" && typeof window.document.createElement !== "undefined";
17440
17192
  try {
17441
17193
  if (isBrowser) {
17442
- window.__reactRouterVersion = "7.6.2";
17194
+ window.__reactRouterVersion = // @ts-expect-error
17195
+ "7.7.0";
17443
17196
  }
17444
17197
  } catch (e) {
17445
17198
  }
@@ -17511,7 +17264,7 @@ var Link = reactExports.forwardRef(
17511
17264
  }
17512
17265
  }
17513
17266
  }
17514
- let href2 = useHref(to, { relative });
17267
+ let href = useHref(to, { relative });
17515
17268
  let [shouldPrefetch, prefetchRef, prefetchHandlers] = usePrefetchBehavior(
17516
17269
  prefetch,
17517
17270
  rest
@@ -17537,7 +17290,7 @@ var Link = reactExports.forwardRef(
17537
17290
  {
17538
17291
  ...rest,
17539
17292
  ...prefetchHandlers,
17540
- href: absoluteHref || href2,
17293
+ href: absoluteHref || href,
17541
17294
  onClick: isExternal || reloadDocument ? onClick : handleClick,
17542
17295
  ref: mergeRefs(forwardedRef, prefetchRef),
17543
17296
  target,
@@ -17545,7 +17298,7 @@ var Link = reactExports.forwardRef(
17545
17298
  }
17546
17299
  )
17547
17300
  );
17548
- return shouldPrefetch && !isAbsolute ? /* @__PURE__ */ reactExports.createElement(reactExports.Fragment, null, link, /* @__PURE__ */ reactExports.createElement(PrefetchPageLinks, { page: href2 })) : link;
17301
+ return shouldPrefetch && !isAbsolute ? /* @__PURE__ */ reactExports.createElement(reactExports.Fragment, null, link, /* @__PURE__ */ reactExports.createElement(PrefetchPageLinks, { page: href })) : link;
17549
17302
  }
17550
17303
  );
17551
17304
  Link.displayName = "Link";
@@ -17802,10 +17555,6 @@ function useViewTransitionState(to, opts = {}) {
17802
17555
  let nextPath = stripBasename(vtContext.nextLocation.pathname, basename) || vtContext.nextLocation.pathname;
17803
17556
  return matchPath(path.pathname, nextPath) != null || matchPath(path.pathname, currentPath) != null;
17804
17557
  }
17805
- /* @__PURE__ */ new Set([
17806
- ...NO_BODY_STATUS_CODES,
17807
- 304
17808
- ]);
17809
17558
 
17810
17559
  var reactDom = {exports: {}};
17811
17560
 
package/dist/index.html CHANGED
@@ -4,7 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>Romulator: Organize your Games</title>
7
- <script type="module" crossorigin src="/assets/index-Dsf8H9t4.js"></script>
7
+ <script type="module" crossorigin src="/assets/index-Dl0pX58K.js"></script>
8
8
  </head>
9
9
  <body>
10
10
  <div id="zthunworks-romulator"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zthun/romulator-web",
3
- "version": "1.3.1",
3
+ "version": "1.3.2",
4
4
  "description": "Romulator frontend",
5
5
  "author": "Anthony Bonta",
6
6
  "license": "MIT",
@@ -18,31 +18,31 @@
18
18
  "access": "public"
19
19
  },
20
20
  "devDependencies": {
21
- "@types/node": "^24.0.7",
21
+ "@types/node": "^24.0.14",
22
22
  "@vitejs/plugin-react-swc": "^3.10.2",
23
- "@zthun/cirque": "^7.1.5",
24
- "@zthun/cirque-du-react": "^7.1.5",
25
- "@zthun/fashion-boutique": "^10.2.2",
26
- "@zthun/fashion-tailor": "^10.2.1",
27
- "@zthun/fashion-theme": "^10.2.1",
28
- "@zthun/helpful-fn": "^9.4.0",
29
- "@zthun/helpful-query": "^9.4.0",
30
- "@zthun/helpful-react": "^9.4.1",
31
- "@zthun/janitor-build-config": "^19.2.6",
32
- "@zthun/romulator-client": "^1.3.1",
33
- "@zthun/webigail-http": "^4.0.4",
34
- "@zthun/webigail-rest": "^4.0.4",
35
- "@zthun/webigail-url": "^4.0.4",
23
+ "@zthun/cirque": "^7.1.6",
24
+ "@zthun/cirque-du-react": "^7.1.6",
25
+ "@zthun/fashion-boutique": "^10.2.4",
26
+ "@zthun/fashion-tailor": "^10.2.4",
27
+ "@zthun/fashion-theme": "^10.2.4",
28
+ "@zthun/helpful-fn": "^9.4.2",
29
+ "@zthun/helpful-query": "^9.4.2",
30
+ "@zthun/helpful-react": "^9.4.2",
31
+ "@zthun/janitor-build-config": "^19.3.1",
32
+ "@zthun/romulator-client": "^1.3.2",
33
+ "@zthun/webigail-http": "^4.0.5",
34
+ "@zthun/webigail-rest": "^4.0.5",
35
+ "@zthun/webigail-url": "^4.0.5",
36
36
  "history": "^5.3.0",
37
37
  "lodash-es": "^4.17.21",
38
38
  "react": "^19.1.0",
39
39
  "react-dom": "^19.1.0",
40
40
  "tsconfig-paths": "^4.2.0",
41
41
  "typescript": "^5.8.3",
42
- "vite": "^6.3.5",
42
+ "vite": "^7.0.5",
43
43
  "vite-tsconfig-paths": "^5.1.4",
44
44
  "vitest": "^3.2.4",
45
45
  "vitest-mock-extended": "^3.1.0"
46
46
  },
47
- "gitHead": "d4a87d541e1a587abd3a7e483555e9a6a7bb58d1"
47
+ "gitHead": "294c18a698b388ad47b7a9bbd7f076e7eac76959"
48
48
  }