proto-sudoku-wc 0.0.671 → 0.0.673

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.
@@ -1053,6 +1053,10 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1053
1053
  const callRender = (hostRef, instance, elm, isInitialLoad) => {
1054
1054
  try {
1055
1055
  renderingRef = instance;
1056
+ /**
1057
+ * minification optimization: `allRenderFn` is `true` if all components have a `render`
1058
+ * method, so we can call the method immediately. If not, check before calling it.
1059
+ */
1056
1060
  instance = instance.render() ;
1057
1061
  {
1058
1062
  hostRef.$flags$ &= ~16 /* HOST_FLAGS.isQueuedForUpdate */;
@@ -1140,6 +1144,16 @@ const appDidLoad = (who) => {
1140
1144
  }
1141
1145
  nextTick(() => emitEvent(win, 'appload', { detail: { namespace: NAMESPACE } }));
1142
1146
  };
1147
+ /**
1148
+ * Allows to safely call a method, e.g. `componentDidLoad`, on an instance,
1149
+ * e.g. custom element node. If a build figures out that e.g. no component
1150
+ * has a `componentDidLoad` method, the instance method gets removed from the
1151
+ * output bundle and this function returns `undefined`.
1152
+ * @param instance any object that may or may not contain methods
1153
+ * @param method method name
1154
+ * @param arg single arbitrary argument
1155
+ * @returns result of method call if it exists, otherwise `undefined`
1156
+ */
1143
1157
  const safeCall = (instance, method, arg) => {
1144
1158
  if (instance && instance[method]) {
1145
1159
  try {
@@ -1307,7 +1321,18 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1307
1321
  }
1308
1322
  return Cstr;
1309
1323
  };
1310
- const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => {
1324
+ /**
1325
+ * Initialize a Stencil component given a reference to its host element, its
1326
+ * runtime bookkeeping data structure, runtime metadata about the component,
1327
+ * and (optionally) an HMR version ID.
1328
+ *
1329
+ * @param elm a host element
1330
+ * @param hostRef the element's runtime bookkeeping object
1331
+ * @param cmpMeta runtime metadata for the Stencil component
1332
+ * @param hmrVersionId an (optional) HMR version ID
1333
+ */
1334
+ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1335
+ let Cstr;
1311
1336
  // initializeComponent
1312
1337
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
1313
1338
  // Let the runtime know that the component has been initialized
@@ -1539,22 +1564,49 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1539
1564
  * @returns void
1540
1565
  */
1541
1566
  const setNonce = (nonce) => (plt.$nonce$ = nonce);
1567
+ /**
1568
+ * A WeakMap mapping runtime component references to their corresponding host reference
1569
+ * instances.
1570
+ */
1542
1571
  const hostRefs = /*@__PURE__*/ new WeakMap();
1572
+ /**
1573
+ * Given a {@link d.RuntimeRef} retrieve the corresponding {@link d.HostRef}
1574
+ *
1575
+ * @param ref the runtime ref of interest
1576
+ * @returns the Host reference (if found) or undefined
1577
+ */
1543
1578
  const getHostRef = (ref) => hostRefs.get(ref);
1579
+ /**
1580
+ * Register a lazy instance with the {@link hostRefs} object so it's
1581
+ * corresponding {@link d.HostRef} can be retrieved later.
1582
+ *
1583
+ * @param lazyInstance the lazy instance of interest
1584
+ * @param hostRef that instances `HostRef` object
1585
+ * @returns a reference to the host ref WeakMap
1586
+ */
1544
1587
  const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
1545
- const registerHost = (elm, cmpMeta) => {
1588
+ /**
1589
+ * Register a host element for a Stencil component, setting up various metadata
1590
+ * and callbacks based on {@link BUILD} flags as well as the component's runtime
1591
+ * metadata.
1592
+ *
1593
+ * @param hostElement the host element to register
1594
+ * @param cmpMeta runtime metadata for that component
1595
+ * @returns a reference to the host ref WeakMap
1596
+ */
1597
+ const registerHost = (hostElement, cmpMeta) => {
1546
1598
  const hostRef = {
1547
1599
  $flags$: 0,
1548
- $hostElement$: elm,
1600
+ $hostElement$: hostElement,
1549
1601
  $cmpMeta$: cmpMeta,
1550
1602
  $instanceValues$: new Map(),
1551
1603
  };
1552
1604
  {
1553
1605
  hostRef.$onReadyPromise$ = new Promise((r) => (hostRef.$onReadyResolve$ = r));
1554
- elm['s-p'] = [];
1555
- elm['s-rc'] = [];
1606
+ hostElement['s-p'] = [];
1607
+ hostElement['s-rc'] = [];
1556
1608
  }
1557
- return hostRefs.set(elm, hostRef);
1609
+ return hostRefs.set(hostElement, hostRef);
1558
1610
  };
1559
1611
  const isMemberInElement = (elm, memberName) => memberName in elm;
1560
1612
  const consoleError = (e, el) => (0, console.error)(e, el);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-45972d8e.js');
5
+ const index = require('./index-42d4bb26.js');
6
6
 
7
7
  const defineCustomElements = (win, options) => {
8
8
  if (typeof window === 'undefined') return undefined;
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-45972d8e.js');
5
+ const index = require('./index-42d4bb26.js');
6
6
 
7
7
  /*
8
- Stencil Client Patch Browser v4.3.0 | MIT Licensed | https://stenciljs.com
8
+ Stencil Client Patch Browser v4.4.1 | MIT Licensed | https://stenciljs.com
9
9
  */
10
10
  const patchBrowser = () => {
11
11
  const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('proto-sudoku-wc.cjs.js', document.baseURI).href));
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-45972d8e.js');
5
+ const index = require('./index-42d4bb26.js');
6
6
 
7
7
  const Alien = props => {
8
8
  const hex = props.hex || 'currentColor';
@@ -4,8 +4,8 @@
4
4
  ],
5
5
  "compiler": {
6
6
  "name": "@stencil/core",
7
- "version": "4.3.0",
8
- "typescriptVersion": "5.1.6"
7
+ "version": "4.4.1",
8
+ "typescriptVersion": "5.2.2"
9
9
  },
10
10
  "collections": [],
11
11
  "bundles": []
@@ -1031,6 +1031,10 @@ const updateComponent = async (hostRef, instance, isInitialLoad) => {
1031
1031
  const callRender = (hostRef, instance, elm, isInitialLoad) => {
1032
1032
  try {
1033
1033
  renderingRef = instance;
1034
+ /**
1035
+ * minification optimization: `allRenderFn` is `true` if all components have a `render`
1036
+ * method, so we can call the method immediately. If not, check before calling it.
1037
+ */
1034
1038
  instance = instance.render() ;
1035
1039
  {
1036
1040
  hostRef.$flags$ &= ~16 /* HOST_FLAGS.isQueuedForUpdate */;
@@ -1118,6 +1122,16 @@ const appDidLoad = (who) => {
1118
1122
  }
1119
1123
  nextTick(() => emitEvent(win, 'appload', { detail: { namespace: NAMESPACE } }));
1120
1124
  };
1125
+ /**
1126
+ * Allows to safely call a method, e.g. `componentDidLoad`, on an instance,
1127
+ * e.g. custom element node. If a build figures out that e.g. no component
1128
+ * has a `componentDidLoad` method, the instance method gets removed from the
1129
+ * output bundle and this function returns `undefined`.
1130
+ * @param instance any object that may or may not contain methods
1131
+ * @param method method name
1132
+ * @param arg single arbitrary argument
1133
+ * @returns result of method call if it exists, otherwise `undefined`
1134
+ */
1121
1135
  const safeCall = (instance, method, arg) => {
1122
1136
  if (instance && instance[method]) {
1123
1137
  try {
@@ -1285,7 +1299,18 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1285
1299
  }
1286
1300
  return Cstr;
1287
1301
  };
1288
- const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => {
1302
+ /**
1303
+ * Initialize a Stencil component given a reference to its host element, its
1304
+ * runtime bookkeeping data structure, runtime metadata about the component,
1305
+ * and (optionally) an HMR version ID.
1306
+ *
1307
+ * @param elm a host element
1308
+ * @param hostRef the element's runtime bookkeeping object
1309
+ * @param cmpMeta runtime metadata for the Stencil component
1310
+ * @param hmrVersionId an (optional) HMR version ID
1311
+ */
1312
+ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {
1313
+ let Cstr;
1289
1314
  // initializeComponent
1290
1315
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
1291
1316
  // Let the runtime know that the component has been initialized
@@ -1517,22 +1542,49 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1517
1542
  * @returns void
1518
1543
  */
1519
1544
  const setNonce = (nonce) => (plt.$nonce$ = nonce);
1545
+ /**
1546
+ * A WeakMap mapping runtime component references to their corresponding host reference
1547
+ * instances.
1548
+ */
1520
1549
  const hostRefs = /*@__PURE__*/ new WeakMap();
1550
+ /**
1551
+ * Given a {@link d.RuntimeRef} retrieve the corresponding {@link d.HostRef}
1552
+ *
1553
+ * @param ref the runtime ref of interest
1554
+ * @returns the Host reference (if found) or undefined
1555
+ */
1521
1556
  const getHostRef = (ref) => hostRefs.get(ref);
1557
+ /**
1558
+ * Register a lazy instance with the {@link hostRefs} object so it's
1559
+ * corresponding {@link d.HostRef} can be retrieved later.
1560
+ *
1561
+ * @param lazyInstance the lazy instance of interest
1562
+ * @param hostRef that instances `HostRef` object
1563
+ * @returns a reference to the host ref WeakMap
1564
+ */
1522
1565
  const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef);
1523
- const registerHost = (elm, cmpMeta) => {
1566
+ /**
1567
+ * Register a host element for a Stencil component, setting up various metadata
1568
+ * and callbacks based on {@link BUILD} flags as well as the component's runtime
1569
+ * metadata.
1570
+ *
1571
+ * @param hostElement the host element to register
1572
+ * @param cmpMeta runtime metadata for that component
1573
+ * @returns a reference to the host ref WeakMap
1574
+ */
1575
+ const registerHost = (hostElement, cmpMeta) => {
1524
1576
  const hostRef = {
1525
1577
  $flags$: 0,
1526
- $hostElement$: elm,
1578
+ $hostElement$: hostElement,
1527
1579
  $cmpMeta$: cmpMeta,
1528
1580
  $instanceValues$: new Map(),
1529
1581
  };
1530
1582
  {
1531
1583
  hostRef.$onReadyPromise$ = new Promise((r) => (hostRef.$onReadyResolve$ = r));
1532
- elm['s-p'] = [];
1533
- elm['s-rc'] = [];
1584
+ hostElement['s-p'] = [];
1585
+ hostElement['s-rc'] = [];
1534
1586
  }
1535
- return hostRefs.set(elm, hostRef);
1587
+ return hostRefs.set(hostElement, hostRef);
1536
1588
  };
1537
1589
  const isMemberInElement = (elm, memberName) => memberName in elm;
1538
1590
  const consoleError = (e, el) => (0, console.error)(e, el);
@@ -1,5 +1,5 @@
1
- import { b as bootstrapLazy } from './index-4c3c0cb4.js';
2
- export { s as setNonce } from './index-4c3c0cb4.js';
1
+ import { b as bootstrapLazy } from './index-5dd078a3.js';
2
+ export { s as setNonce } from './index-5dd078a3.js';
3
3
 
4
4
  const defineCustomElements = (win, options) => {
5
5
  if (typeof window === 'undefined') return undefined;
@@ -1,8 +1,8 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-4c3c0cb4.js';
2
- export { s as setNonce } from './index-4c3c0cb4.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-5dd078a3.js';
2
+ export { s as setNonce } from './index-5dd078a3.js';
3
3
 
4
4
  /*
5
- Stencil Client Patch Browser v4.3.0 | MIT Licensed | https://stenciljs.com
5
+ Stencil Client Patch Browser v4.4.1 | MIT Licensed | https://stenciljs.com
6
6
  */
7
7
  const patchBrowser = () => {
8
8
  const importMeta = import.meta.url;
@@ -1,4 +1,4 @@
1
- import { h, g as getRenderingRef, f as forceUpdate, r as registerInstance } from './index-4c3c0cb4.js';
1
+ import { h, g as getRenderingRef, f as forceUpdate, r as registerInstance } from './index-5dd078a3.js';
2
2
 
3
3
  const Alien = props => {
4
4
  const hex = props.hex || 'currentColor';
@@ -1,2 +1,2 @@
1
- let n,t,e=!1,l=null,o=!1;const s={},i=n=>"object"==(n=typeof n)||"function"===n;function r(n){var t,e,l;return null!==(l=null===(e=null===(t=n.head)||void 0===t?void 0:t.querySelector('meta[name="csp-nonce"]'))||void 0===e?void 0:e.getAttribute("content"))&&void 0!==l?l:void 0}const c=(n,t,...e)=>{let l=null,o=!1,s=!1;const r=[],c=t=>{for(let e=0;e<t.length;e++)l=t[e],Array.isArray(l)?c(l):null!=l&&"boolean"!=typeof l&&((o="function"!=typeof n&&!i(l))&&(l+=""),o&&s?r[r.length-1].t+=l:r.push(o?u(null,l):l),s=o)};if(c(e),t){const n=t.className||t.class;n&&(t.class="object"!=typeof n?n:Object.keys(n).filter((t=>n[t])).join(" "))}if("function"==typeof n)return n(null===t?{}:t,r,f);const a=u(n,null);return a.l=t,r.length>0&&(a.o=r),a},u=(n,t)=>({i:0,u:n,t,v:null,o:null,l:null}),a={},f={forEach:(n,t)=>n.map(d).forEach(t),map:(n,t)=>n.map(d).map(t).map(v)},d=n=>({vattrs:n.l,vchildren:n.o,vkey:n.h,vname:n.p,vtag:n.u,vtext:n.t}),v=n=>{if("function"==typeof n.vtag){const t=Object.assign({},n.vattrs);return n.vkey&&(t.key=n.vkey),n.vname&&(t.name=n.vname),c(n.vtag,t,...n.vchildren||[])}const t=u(n.vtag,n.vtext);return t.l=n.vattrs,t.o=n.vchildren,t.h=n.vkey,t.p=n.vname,t},y=new WeakMap,h=n=>"sc-"+n.m,p=(n,t,e,l,o,s)=>{if(e!==l){let r=B(n,t),c=t.toLowerCase();if("class"===t){const t=n.classList,o=$(e),s=$(l);t.remove(...o.filter((n=>n&&!s.includes(n)))),t.add(...s.filter((n=>n&&!o.includes(n))))}else if(r||"o"!==t[0]||"n"!==t[1]){const c=i(l);if((r||c&&null!==l)&&!o)try{if(n.tagName.includes("-"))n[t]=l;else{const o=null==l?"":l;"list"===t?r=!1:null!=e&&n[t]==o||(n[t]=o)}}catch(n){}null==l||!1===l?!1===l&&""!==n.getAttribute(t)||n.removeAttribute(t):(!r||4&s||o)&&!c&&n.setAttribute(t,l=!0===l?"":l)}else t="-"===t[2]?t.slice(3):B(Q,c)?c.slice(2):c[2]+t.slice(3),e&&Y.rel(n,t,e,!1),l&&Y.ael(n,t,l,!1)}},m=/\s/,$=n=>n?n.split(m):[],w=(n,t,e,l)=>{const o=11===t.v.nodeType&&t.v.host?t.v.host:t.v,i=n&&n.l||s,r=t.l||s;for(l in i)l in r||p(o,l,i[l],void 0,e,t.i);for(l in r)p(o,l,i[l],r[l],e,t.i)},b=(t,l,o)=>{const s=l.o[o];let i,r,c=0;if(null!==s.t)i=s.v=X.createTextNode(s.t);else{if(e||(e="svg"===s.u),i=s.v=X.createElementNS(e?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",s.u),e&&"foreignObject"===s.u&&(e=!1),w(null,s,e),null!=n&&i["s-si"]!==n&&i.classList.add(i["s-si"]=n),s.o)for(c=0;c<s.o.length;++c)r=b(t,s,c),r&&i.appendChild(r);"svg"===s.u?e=!1:"foreignObject"===i.tagName&&(e=!0)}return i},g=(n,e,l,o,s,i)=>{let r,c=n;for(c.shadowRoot&&c.tagName===t&&(c=c.shadowRoot);s<=i;++s)o[s]&&(r=b(null,l,s),r&&(o[s].v=r,c.insertBefore(r,e)))},j=(n,t,e)=>{for(let l=t;l<=e;++l){const t=n[l];if(t){const n=t.v;n&&n.remove()}}},S=(n,t)=>n.u===t.u,O=(n,t)=>{const l=t.v=n.v,o=n.o,s=t.o,i=t.u,r=t.t;null===r?(e="svg"===i||"foreignObject"!==i&&e,w(n,t,e),null!==o&&null!==s?((n,t,e,l)=>{let o,s=0,i=0,r=t.length-1,c=t[0],u=t[r],a=l.length-1,f=l[0],d=l[a];for(;s<=r&&i<=a;)null==c?c=t[++s]:null==u?u=t[--r]:null==f?f=l[++i]:null==d?d=l[--a]:S(c,f)?(O(c,f),c=t[++s],f=l[++i]):S(u,d)?(O(u,d),u=t[--r],d=l[--a]):S(c,d)?(O(c,d),n.insertBefore(c.v,u.v.nextSibling),c=t[++s],d=l[--a]):S(u,f)?(O(u,f),n.insertBefore(u.v,c.v),u=t[--r],f=l[++i]):(o=b(t&&t[i],e,i),f=l[++i],o&&c.v.parentNode.insertBefore(o,c.v));s>r?g(n,null==l[a+1]?null:l[a+1].v,e,l,i,a):i>a&&j(t,s,r)})(l,o,t,s):null!==s?(null!==n.t&&(l.textContent=""),g(l,null,t,s,0,s.length-1)):null!==o&&j(o,0,o.length-1),e&&"svg"===i&&(e=!1)):n.t!==r&&(l.data=r)},k=(n,t)=>{t&&!n.$&&t["s-p"]&&t["s-p"].push(new Promise((t=>n.$=t)))},M=(n,t)=>{if(n.i|=16,!(4&n.i))return k(n,n.g),cn((()=>C(n,t)));n.i|=512},C=(n,t)=>{const e=n.j;return x(void 0,(()=>E(n,e,t)))},x=(n,t)=>P(n)?n.then(t):t(),P=n=>n instanceof Promise||n&&n.then&&"function"==typeof n.then,E=async(n,t,e)=>{var l;const o=n.S,s=o["s-rc"];e&&(n=>{const t=n.O,e=n.S,l=t.i,o=((n,t)=>{var e;const l=h(t),o=K.get(l);if(n=11===n.nodeType?n:X,o)if("string"==typeof o){let t,s=y.get(n=n.head||n);if(s||y.set(n,s=new Set),!s.has(l)){{t=X.createElement("style"),t.innerHTML=o;const l=null!==(e=Y.k)&&void 0!==e?e:r(X);null!=l&&t.setAttribute("nonce",l),n.insertBefore(t,n.querySelector("link"))}s&&s.add(l)}}else n.adoptedStyleSheets.includes(o)||(n.adoptedStyleSheets=[...n.adoptedStyleSheets,o]);return l})(e.shadowRoot?e.shadowRoot:e.getRootNode(),t);10&l&&(e["s-sc"]=o,e.classList.add(o+"-h"))})(n);A(n,t,o,e),s&&(s.map((n=>n())),o["s-rc"]=void 0);{const t=null!==(l=o["s-p"])&&void 0!==l?l:[],e=()=>N(n);0===t.length?e():(Promise.all(t).then(e),n.i|=4,t.length=0)}},A=(e,o,s,i)=>{try{l=o,o=o.render(),e.i&=-17,e.i|=2,((e,l,o=!1)=>{const s=e.S,i=e.M||u(null,null),r=(n=>n&&n.u===a)(l)?l:c(null,null,l);if(t=s.tagName,o&&r.l)for(const n of Object.keys(r.l))s.hasAttribute(n)&&!["key","ref","style","class"].includes(n)&&(r.l[n]=s[n]);r.u=null,r.i|=4,e.M=r,r.v=i.v=s.shadowRoot||s,n=s["s-sc"],O(i,r)})(e,o,i)}catch(n){G(n,e.S)}return l=null,null},L=()=>l,N=n=>{const t=n.S,e=n.j,l=n.g;64&n.i||(n.i|=64,W(t),U(e,"componentDidLoad"),n.C(t),l||R()),n.$&&(n.$(),n.$=void 0),512&n.i&&rn((()=>M(n,!1))),n.i&=-517},T=n=>{{const t=V(n),e=t.S.isConnected;return e&&2==(18&t.i)&&M(t,!1),e}},R=()=>{W(X.documentElement),rn((()=>(n=>{const t=Y.ce("appload",{detail:{namespace:"proto-sudoku-wc"}});return n.dispatchEvent(t),t})(Q)))},U=(n,t,e)=>{if(n&&n[t])try{return n[t](e)}catch(n){G(n)}},W=n=>n.classList.add("hydrated"),q=(n,t,e)=>{var l;if(t.P){const o=Object.entries(t.P),s=n.prototype;if(o.map((([n,[l]])=>{(31&l||2&e&&32&l)&&Object.defineProperty(s,n,{get(){return((n,t)=>V(this).A.get(t))(0,n)},set(e){((n,t,e,l)=>{const o=V(n),s=o.A.get(t),r=o.i,c=o.j;e=((n,t)=>null==n||i(n)?n:1&t?n+"":n)(e,l.P[t][0]),8&r&&void 0!==s||e===s||Number.isNaN(s)&&Number.isNaN(e)||(o.A.set(t,e),c&&2==(18&r)&&M(o,!1))})(this,n,e,t)},configurable:!0,enumerable:!0})})),1&e){const e=new Map;s.attributeChangedCallback=function(n,l,o){Y.jmp((()=>{const i=e.get(n);if(this.hasOwnProperty(i))o=this[i],delete this[i];else{if(s.hasOwnProperty(i)&&"number"==typeof this[i]&&this[i]==o)return;if(null==i){const e=V(this),s=null==e?void 0:e.i;if(!(8&s)&&128&s&&o!==l){const s=e.j,i=t.L[n];null==i||i.forEach((t=>{null!=s[t]&&s[t].call(s,o,l,n)}))}return}}this[i]=(null!==o||"boolean"!=typeof this[i])&&o}))},n.observedAttributes=Array.from(new Set([...Object.keys(null!==(l=t.L)&&void 0!==l?l:{}),...o.filter((([n,t])=>15&t[0])).map((([n,t])=>{const l=t[1]||n;return e.set(l,n),l}))]))}}return n},D=(n,t={})=>{var e;const l=[],o=t.exclude||[],s=Q.customElements,i=X.head,c=i.querySelector("meta[charset]"),u=X.createElement("style"),a=[];let f,d=!0;Object.assign(Y,t),Y.N=new URL(t.resourcesUrl||"./",X.baseURI).href,n.map((n=>{n[1].map((t=>{const e={i:t[0],m:t[1],P:t[2],T:t[3]};e.P=t[2];const i=e.m,r=class extends HTMLElement{constructor(n){super(n),z(n=this,e),1&e.i&&n.attachShadow({mode:"open"})}connectedCallback(){f&&(clearTimeout(f),f=null),d?a.push(this):Y.jmp((()=>(n=>{if(0==(1&Y.i)){const t=V(n),e=t.O,l=()=>{};if(1&t.i)(null==t?void 0:t.j)||(null==t?void 0:t.R)&&t.R.then((()=>{}));else{t.i|=1;{let e=n;for(;e=e.parentNode||e.host;)if(e["s-p"]){k(t,t.g=e);break}}e.P&&Object.entries(e.P).map((([t,[e]])=>{if(31&e&&n.hasOwnProperty(t)){const e=n[t];delete n[t],n[t]=e}})),(async(n,t,e,l,o)=>{if(0==(32&t.i)){t.i|=32;{if((o=J(e)).then){const n=()=>{};o=await o,n()}o.isProxied||(q(o,e,2),o.isProxied=!0);const n=()=>{};t.i|=8;try{new o(t)}catch(n){G(n)}t.i&=-9,n()}if(o.style){let n=o.style;const t=h(e);if(!K.has(t)){const l=()=>{};((n,t,e)=>{let l=K.get(n);nn&&e?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,K.set(n,l)})(t,n,!!(1&e.i)),l()}}}const s=t.g,i=()=>M(t,!0);s&&s["s-rc"]?s["s-rc"].push(i):i()})(0,t,e)}l()}})(this)))}disconnectedCallback(){Y.jmp((()=>(async()=>{if(0==(1&Y.i)){const n=V(this);(null==n?void 0:n.j)||(null==n?void 0:n.R)&&n.R.then((()=>{}))}})()))}componentOnReady(){return V(this).R}};e.U=n[0],o.includes(i)||s.get(i)||(l.push(i),s.define(i,q(r,e,1)))}))}));{u.innerHTML=l+"{visibility:hidden}.hydrated{visibility:inherit}",u.setAttribute("data-styles","");const n=null!==(e=Y.k)&&void 0!==e?e:r(X);null!=n&&u.setAttribute("nonce",n),i.insertBefore(u,c?c.nextSibling:i.firstChild)}d=!1,a.length?a.map((n=>n.connectedCallback())):Y.jmp((()=>f=setTimeout(R,30)))},F=n=>Y.k=n,H=new WeakMap,V=n=>H.get(n),_=(n,t)=>H.set(t.j=n,t),z=(n,t)=>{const e={i:0,S:n,O:t,A:new Map};return e.R=new Promise((n=>e.C=n)),n["s-p"]=[],n["s-rc"]=[],H.set(n,e)},B=(n,t)=>t in n,G=(n,t)=>(0,console.error)(n,t),I=new Map,J=n=>{const t=n.m.replace(/-/g,"_"),e=n.U,l=I.get(e);return l?l[t]:import(`./${e}.entry.js`).then((n=>(I.set(e,n),n[t])),G)
2
- /*!__STENCIL_STATIC_IMPORT_SWITCH__*/},K=new Map,Q="undefined"!=typeof window?window:{},X=Q.document||{head:{}},Y={i:0,N:"",jmp:n=>n(),raf:n=>requestAnimationFrame(n),ael:(n,t,e,l)=>n.addEventListener(t,e,l),rel:(n,t,e,l)=>n.removeEventListener(t,e,l),ce:(n,t)=>new CustomEvent(n,t)},Z=n=>Promise.resolve(n),nn=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(n){}return!1})(),tn=[],en=[],ln=(n,t)=>e=>{n.push(e),o||(o=!0,t&&4&Y.i?rn(sn):Y.raf(sn))},on=n=>{for(let t=0;t<n.length;t++)try{n[t](performance.now())}catch(n){G(n)}n.length=0},sn=()=>{on(tn),on(en),(o=tn.length>0)&&Y.raf(sn)},rn=n=>Z().then(n),cn=ln(en,!0);export{D as b,T as f,L as g,c as h,Z as p,_ as r,F as s}
1
+ let n,t,e=!1,l=null,o=!1;const s={},i=n=>"object"==(n=typeof n)||"function"===n;function r(n){var t,e,l;return null!==(l=null===(e=null===(t=n.head)||void 0===t?void 0:t.querySelector('meta[name="csp-nonce"]'))||void 0===e?void 0:e.getAttribute("content"))&&void 0!==l?l:void 0}const c=(n,t,...e)=>{let l=null,o=!1,s=!1;const r=[],c=t=>{for(let e=0;e<t.length;e++)l=t[e],Array.isArray(l)?c(l):null!=l&&"boolean"!=typeof l&&((o="function"!=typeof n&&!i(l))&&(l+=""),o&&s?r[r.length-1].t+=l:r.push(o?u(null,l):l),s=o)};if(c(e),t){const n=t.className||t.class;n&&(t.class="object"!=typeof n?n:Object.keys(n).filter((t=>n[t])).join(" "))}if("function"==typeof n)return n(null===t?{}:t,r,f);const a=u(n,null);return a.l=t,r.length>0&&(a.o=r),a},u=(n,t)=>({i:0,u:n,t,v:null,o:null,l:null}),a={},f={forEach:(n,t)=>n.map(d).forEach(t),map:(n,t)=>n.map(d).map(t).map(v)},d=n=>({vattrs:n.l,vchildren:n.o,vkey:n.h,vname:n.p,vtag:n.u,vtext:n.t}),v=n=>{if("function"==typeof n.vtag){const t=Object.assign({},n.vattrs);return n.vkey&&(t.key=n.vkey),n.vname&&(t.name=n.vname),c(n.vtag,t,...n.vchildren||[])}const t=u(n.vtag,n.vtext);return t.l=n.vattrs,t.o=n.vchildren,t.h=n.vkey,t.p=n.vname,t},y=new WeakMap,h=n=>"sc-"+n.m,p=(n,t,e,l,o,s)=>{if(e!==l){let r=B(n,t),c=t.toLowerCase();if("class"===t){const t=n.classList,o=$(e),s=$(l);t.remove(...o.filter((n=>n&&!s.includes(n)))),t.add(...s.filter((n=>n&&!o.includes(n))))}else if(r||"o"!==t[0]||"n"!==t[1]){const c=i(l);if((r||c&&null!==l)&&!o)try{if(n.tagName.includes("-"))n[t]=l;else{const o=null==l?"":l;"list"===t?r=!1:null!=e&&n[t]==o||(n[t]=o)}}catch(n){}null==l||!1===l?!1===l&&""!==n.getAttribute(t)||n.removeAttribute(t):(!r||4&s||o)&&!c&&n.setAttribute(t,l=!0===l?"":l)}else t="-"===t[2]?t.slice(3):B(Q,c)?c.slice(2):c[2]+t.slice(3),e&&Y.rel(n,t,e,!1),l&&Y.ael(n,t,l,!1)}},m=/\s/,$=n=>n?n.split(m):[],w=(n,t,e,l)=>{const o=11===t.v.nodeType&&t.v.host?t.v.host:t.v,i=n&&n.l||s,r=t.l||s;for(l in i)l in r||p(o,l,i[l],void 0,e,t.i);for(l in r)p(o,l,i[l],r[l],e,t.i)},b=(t,l,o)=>{const s=l.o[o];let i,r,c=0;if(null!==s.t)i=s.v=X.createTextNode(s.t);else{if(e||(e="svg"===s.u),i=s.v=X.createElementNS(e?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",s.u),e&&"foreignObject"===s.u&&(e=!1),w(null,s,e),null!=n&&i["s-si"]!==n&&i.classList.add(i["s-si"]=n),s.o)for(c=0;c<s.o.length;++c)r=b(t,s,c),r&&i.appendChild(r);"svg"===s.u?e=!1:"foreignObject"===i.tagName&&(e=!0)}return i},g=(n,e,l,o,s,i)=>{let r,c=n;for(c.shadowRoot&&c.tagName===t&&(c=c.shadowRoot);s<=i;++s)o[s]&&(r=b(null,l,s),r&&(o[s].v=r,c.insertBefore(r,e)))},j=(n,t,e)=>{for(let l=t;l<=e;++l){const t=n[l];if(t){const n=t.v;n&&n.remove()}}},S=(n,t)=>n.u===t.u,O=(n,t)=>{const l=t.v=n.v,o=n.o,s=t.o,i=t.u,r=t.t;null===r?(e="svg"===i||"foreignObject"!==i&&e,w(n,t,e),null!==o&&null!==s?((n,t,e,l)=>{let o,s=0,i=0,r=t.length-1,c=t[0],u=t[r],a=l.length-1,f=l[0],d=l[a];for(;s<=r&&i<=a;)null==c?c=t[++s]:null==u?u=t[--r]:null==f?f=l[++i]:null==d?d=l[--a]:S(c,f)?(O(c,f),c=t[++s],f=l[++i]):S(u,d)?(O(u,d),u=t[--r],d=l[--a]):S(c,d)?(O(c,d),n.insertBefore(c.v,u.v.nextSibling),c=t[++s],d=l[--a]):S(u,f)?(O(u,f),n.insertBefore(u.v,c.v),u=t[--r],f=l[++i]):(o=b(t&&t[i],e,i),f=l[++i],o&&c.v.parentNode.insertBefore(o,c.v));s>r?g(n,null==l[a+1]?null:l[a+1].v,e,l,i,a):i>a&&j(t,s,r)})(l,o,t,s):null!==s?(null!==n.t&&(l.textContent=""),g(l,null,t,s,0,s.length-1)):null!==o&&j(o,0,o.length-1),e&&"svg"===i&&(e=!1)):n.t!==r&&(l.data=r)},k=(n,t)=>{t&&!n.$&&t["s-p"]&&t["s-p"].push(new Promise((t=>n.$=t)))},M=(n,t)=>{if(n.i|=16,!(4&n.i))return k(n,n.j),cn((()=>C(n,t)));n.i|=512},C=(n,t)=>{const e=n.S;return x(void 0,(()=>E(n,e,t)))},x=(n,t)=>P(n)?n.then(t):t(),P=n=>n instanceof Promise||n&&n.then&&"function"==typeof n.then,E=async(n,t,e)=>{var l;const o=n.O,s=o["s-rc"];e&&(n=>{const t=n.k,e=n.O,l=t.i,o=((n,t)=>{var e;const l=h(t),o=K.get(l);if(n=11===n.nodeType?n:X,o)if("string"==typeof o){let t,s=y.get(n=n.head||n);if(s||y.set(n,s=new Set),!s.has(l)){{t=X.createElement("style"),t.innerHTML=o;const l=null!==(e=Y.M)&&void 0!==e?e:r(X);null!=l&&t.setAttribute("nonce",l),n.insertBefore(t,n.querySelector("link"))}s&&s.add(l)}}else n.adoptedStyleSheets.includes(o)||(n.adoptedStyleSheets=[...n.adoptedStyleSheets,o]);return l})(e.shadowRoot?e.shadowRoot:e.getRootNode(),t);10&l&&(e["s-sc"]=o,e.classList.add(o+"-h"))})(n);A(n,t,o,e),s&&(s.map((n=>n())),o["s-rc"]=void 0);{const t=null!==(l=o["s-p"])&&void 0!==l?l:[],e=()=>N(n);0===t.length?e():(Promise.all(t).then(e),n.i|=4,t.length=0)}},A=(e,o,s,i)=>{try{l=o,o=o.render(),e.i&=-17,e.i|=2,((e,l,o=!1)=>{const s=e.O,i=e.C||u(null,null),r=(n=>n&&n.u===a)(l)?l:c(null,null,l);if(t=s.tagName,o&&r.l)for(const n of Object.keys(r.l))s.hasAttribute(n)&&!["key","ref","style","class"].includes(n)&&(r.l[n]=s[n]);r.u=null,r.i|=4,e.C=r,r.v=i.v=s.shadowRoot||s,n=s["s-sc"],O(i,r)})(e,o,i)}catch(n){G(n,e.O)}return l=null,null},L=()=>l,N=n=>{const t=n.O,e=n.S,l=n.j;64&n.i||(n.i|=64,W(t),U(e,"componentDidLoad"),n.P(t),l||R()),n.$&&(n.$(),n.$=void 0),512&n.i&&rn((()=>M(n,!1))),n.i&=-517},T=n=>{{const t=V(n),e=t.O.isConnected;return e&&2==(18&t.i)&&M(t,!1),e}},R=()=>{W(X.documentElement),rn((()=>(n=>{const t=Y.ce("appload",{detail:{namespace:"proto-sudoku-wc"}});return n.dispatchEvent(t),t})(Q)))},U=(n,t,e)=>{if(n&&n[t])try{return n[t](e)}catch(n){G(n)}},W=n=>n.classList.add("hydrated"),q=(n,t,e)=>{var l;if(t.A){const o=Object.entries(t.A),s=n.prototype;if(o.map((([n,[l]])=>{(31&l||2&e&&32&l)&&Object.defineProperty(s,n,{get(){return((n,t)=>V(this).L.get(t))(0,n)},set(e){((n,t,e,l)=>{const o=V(n),s=o.L.get(t),r=o.i,c=o.S;e=((n,t)=>null==n||i(n)?n:1&t?n+"":n)(e,l.A[t][0]),8&r&&void 0!==s||e===s||Number.isNaN(s)&&Number.isNaN(e)||(o.L.set(t,e),c&&2==(18&r)&&M(o,!1))})(this,n,e,t)},configurable:!0,enumerable:!0})})),1&e){const e=new Map;s.attributeChangedCallback=function(n,l,o){Y.jmp((()=>{const i=e.get(n);if(this.hasOwnProperty(i))o=this[i],delete this[i];else{if(s.hasOwnProperty(i)&&"number"==typeof this[i]&&this[i]==o)return;if(null==i){const e=V(this),s=null==e?void 0:e.i;if(!(8&s)&&128&s&&o!==l){const s=e.S,i=t.N[n];null==i||i.forEach((t=>{null!=s[t]&&s[t].call(s,o,l,n)}))}return}}this[i]=(null!==o||"boolean"!=typeof this[i])&&o}))},n.observedAttributes=Array.from(new Set([...Object.keys(null!==(l=t.N)&&void 0!==l?l:{}),...o.filter((([n,t])=>15&t[0])).map((([n,t])=>{const l=t[1]||n;return e.set(l,n),l}))]))}}return n},D=(n,t={})=>{var e;const l=[],o=t.exclude||[],s=Q.customElements,i=X.head,c=i.querySelector("meta[charset]"),u=X.createElement("style"),a=[];let f,d=!0;Object.assign(Y,t),Y.T=new URL(t.resourcesUrl||"./",X.baseURI).href,n.map((n=>{n[1].map((t=>{const e={i:t[0],m:t[1],A:t[2],R:t[3]};e.A=t[2];const i=e.m,r=class extends HTMLElement{constructor(n){super(n),z(n=this,e),1&e.i&&n.attachShadow({mode:"open"})}connectedCallback(){f&&(clearTimeout(f),f=null),d?a.push(this):Y.jmp((()=>(n=>{if(0==(1&Y.i)){const t=V(n),e=t.k,l=()=>{};if(1&t.i)(null==t?void 0:t.S)||(null==t?void 0:t.U)&&t.U.then((()=>{}));else{t.i|=1;{let e=n;for(;e=e.parentNode||e.host;)if(e["s-p"]){k(t,t.j=e);break}}e.A&&Object.entries(e.A).map((([t,[e]])=>{if(31&e&&n.hasOwnProperty(t)){const e=n[t];delete n[t],n[t]=e}})),(async(n,t,e)=>{let l;if(0==(32&t.i)){t.i|=32;{if(l=J(e),l.then){const n=()=>{};l=await l,n()}l.isProxied||(q(l,e,2),l.isProxied=!0);const n=()=>{};t.i|=8;try{new l(t)}catch(n){G(n)}t.i&=-9,n()}if(l.style){let n=l.style;const t=h(e);if(!K.has(t)){const l=()=>{};((n,t,e)=>{let l=K.get(n);nn&&e?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,K.set(n,l)})(t,n,!!(1&e.i)),l()}}}const o=t.j,s=()=>M(t,!0);o&&o["s-rc"]?o["s-rc"].push(s):s()})(0,t,e)}l()}})(this)))}disconnectedCallback(){Y.jmp((()=>(async()=>{if(0==(1&Y.i)){const n=V(this);(null==n?void 0:n.S)||(null==n?void 0:n.U)&&n.U.then((()=>{}))}})()))}componentOnReady(){return V(this).U}};e.W=n[0],o.includes(i)||s.get(i)||(l.push(i),s.define(i,q(r,e,1)))}))}));{u.innerHTML=l+"{visibility:hidden}.hydrated{visibility:inherit}",u.setAttribute("data-styles","");const n=null!==(e=Y.M)&&void 0!==e?e:r(X);null!=n&&u.setAttribute("nonce",n),i.insertBefore(u,c?c.nextSibling:i.firstChild)}d=!1,a.length?a.map((n=>n.connectedCallback())):Y.jmp((()=>f=setTimeout(R,30)))},F=n=>Y.M=n,H=new WeakMap,V=n=>H.get(n),_=(n,t)=>H.set(t.S=n,t),z=(n,t)=>{const e={i:0,O:n,k:t,L:new Map};return e.U=new Promise((n=>e.P=n)),n["s-p"]=[],n["s-rc"]=[],H.set(n,e)},B=(n,t)=>t in n,G=(n,t)=>(0,console.error)(n,t),I=new Map,J=n=>{const t=n.m.replace(/-/g,"_"),e=n.W,l=I.get(e);return l?l[t]:import(`./${e}.entry.js`).then((n=>(I.set(e,n),n[t])),G)
2
+ /*!__STENCIL_STATIC_IMPORT_SWITCH__*/},K=new Map,Q="undefined"!=typeof window?window:{},X=Q.document||{head:{}},Y={i:0,T:"",jmp:n=>n(),raf:n=>requestAnimationFrame(n),ael:(n,t,e,l)=>n.addEventListener(t,e,l),rel:(n,t,e,l)=>n.removeEventListener(t,e,l),ce:(n,t)=>new CustomEvent(n,t)},Z=n=>Promise.resolve(n),nn=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(n){}return!1})(),tn=[],en=[],ln=(n,t)=>e=>{n.push(e),o||(o=!0,t&&4&Y.i?rn(sn):Y.raf(sn))},on=n=>{for(let t=0;t<n.length;t++)try{n[t](performance.now())}catch(n){G(n)}n.length=0},sn=()=>{on(tn),on(en),(o=tn.length>0)&&Y.raf(sn)},rn=n=>Z().then(n),cn=ln(en,!0);export{D as b,T as f,L as g,c as h,Z as p,_ as r,F as s}
@@ -1,2 +1,2 @@
1
- import{h as t,g as e,f as r,r as o}from"./p-d61d0701.js";const s=e=>{const r=e.hex||"currentColor",o=e.size||24;return t("svg",{class:e.class,width:o,height:o,viewBox:"0 0 24 24",role:"img","aria-label":"title"},t("title",null,e.label||"alien"),t("g",{fill:r},t("path",{d:"M10.31 10.93C11.33 12.57 11.18 14.5 9.96 15.28C8.74 16.04 6.92 15.33\n 5.89 13.69C4.87 12.05 5.03 10.1 6.25 9.34C7.47 8.58 9.29 9.29 10.31\n 10.93M12 17.75C14 17.75 14.5 17 14.5 17C14.5 17 14 19 12 19C10 19 9.5\n 17.03 9.5 17C9.5 17 10 17.75 12 17.75M17.75 9.34C18.97 10.1 19.13 12.05\n 18.11 13.69C17.08 15.33 15.26 16.04 14.04 15.28C12.82 14.5 12.67 12.57\n 13.69 10.93C14.71 9.29 16.53 8.58 17.75 9.34M12 20C14.5 20 20 14.86 20\n 11C20 7.14 16.41 4 12 4C7.59 4 4 7.14 4 11C4 14.86 9.5 20 12 20M12 2C17.5\n 2 22 6.04 22 11C22 15.08 16.32 22 12 22C7.68 22 2 15.08 2 11C2 6.04 6.5 2\n 12 2Z"})),t("path",{d:"M0 0h24v24H0z",fill:"none"}))},n="proto-sudoku",a=`${n}::data`,i=`${n}::inputs`,l=`${n}::pick`,c=t=>{const e=localStorage.getItem(t);return e?JSON.parse(e):void 0},d=(t,e)=>{const r=JSON.stringify(e);localStorage.setItem(t,r)},h=()=>[...c(i)],f=t=>{d(i,t.join(""))},u=()=>{const t=c(l);return null!==t?t:void 0},p=t=>{d(l,t>=0&&t<81?t:null)},b="Check ?",g="New Puzzle",w=t=>!("isConnected"in t)||t.isConnected,m=(()=>{let t;return(...e)=>{t&&clearTimeout(t),t=setTimeout((()=>{t=0,(t=>{for(let e of t.keys())t.set(e,t.get(e).filter(w))})(...e)}),2e3)}})(),y=t=>"function"==typeof t?t():t;class x extends Error{constructor(t,e,r){const o=`${t.status||0===t.status?t.status:""} ${t.statusText||""}`.trim();super("Request failed with "+(o?`status code ${o}`:"an unknown error")),Object.defineProperty(this,"response",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name="HTTPError",this.response=t,this.request=e,this.options=r}}class v extends Error{constructor(t){super("Request timed out"),Object.defineProperty(this,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name="TimeoutError",this.request=t}}const C=t=>null!==t&&"object"==typeof t,k=(...t)=>{for(const e of t)if((!C(e)||Array.isArray(e))&&void 0!==e)throw new TypeError("The `options` argument must be an object");return j({},...t)},T=(t={},e={})=>{const r=new globalThis.Headers(t),o=e instanceof globalThis.Headers,s=new globalThis.Headers(e);for(const[t,e]of s.entries())o&&"undefined"===e||void 0===e?r.delete(t):r.set(t,e);return r},j=(...t)=>{let e={},r={};for(const o of t)if(Array.isArray(o))Array.isArray(e)||(e=[]),e=[...e,...o];else if(C(o)){for(let[t,r]of Object.entries(o))C(r)&&t in e&&(r=j(e[t],r)),e={...e,[t]:r};C(o.headers)&&(r=T(r,o.headers),e.headers=r)}return e},M=(()=>{let t=!1,e=!1;const r="function"==typeof globalThis.ReadableStream,o="function"==typeof globalThis.Request;return r&&o&&(e=new globalThis.Request("https://empty.invalid",{body:new globalThis.ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type")),t&&!e})(),R="function"==typeof globalThis.AbortController,S="function"==typeof globalThis.ReadableStream,z="function"==typeof globalThis.FormData,O=["get","post","put","patch","head","delete"],A={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*"},E=2147483647,U=Symbol("stop"),B=t=>O.includes(t)?t.toUpperCase():t,N=[413,429,503],P={limit:2,methods:["get","put","head","delete","options","trace"],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:N,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY},q=(t={})=>{if("number"==typeof t)return{...P,limit:t};if(t.methods&&!Array.isArray(t.methods))throw new Error("retry.methods must be an array");if(t.statusCodes&&!Array.isArray(t.statusCodes))throw new Error("retry.statusCodes must be an array");return{...P,...t,afterStatusCodes:N}};class _{static create(t,e){const r=new _(t,e),o=async()=>{if("number"==typeof r._options.timeout&&r._options.timeout>E)throw new RangeError("The `timeout` option cannot be greater than 2147483647");await Promise.resolve();let t=await r._fetch();for(const e of r._options.hooks.afterResponse){const o=await e(r.request,r._options,r._decorateResponse(t.clone()));o instanceof globalThis.Response&&(t=o)}if(r._decorateResponse(t),!t.ok&&r._options.throwHttpErrors){let e=new x(t,r.request,r._options);for(const t of r._options.hooks.beforeError)e=await t(e);throw e}if(r._options.onDownloadProgress){if("function"!=typeof r._options.onDownloadProgress)throw new TypeError("The `onDownloadProgress` option must be a function");if(!S)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return r._stream(t.clone(),r._options.onDownloadProgress)}return t},s=r._options.retry.methods.includes(r.request.method.toLowerCase())?r._retry(o):o();for(const[t,o]of Object.entries(A))s[t]=async()=>{r.request.headers.set("accept",r.request.headers.get("accept")||o);const n=(await s).clone();if("json"===t){if(204===n.status)return"";if(0===(await n.clone().arrayBuffer()).byteLength)return"";if(e.parseJson)return e.parseJson(await n.text())}return n[t]()};return s}constructor(t,e={}){if(Object.defineProperty(this,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"abortController",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_retryCount",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_input",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._input=t,this._options={credentials:this._input.credentials||"same-origin",...e,headers:T(this._input.headers,e.headers),hooks:j({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},e.hooks),method:B(e.method??this._input.method),prefixUrl:String(e.prefixUrl||""),retry:q(e.retry),throwHttpErrors:!1!==e.throwHttpErrors,timeout:e.timeout??1e4,fetch:e.fetch??globalThis.fetch.bind(globalThis)},"string"!=typeof this._input&&!(this._input instanceof URL||this._input instanceof globalThis.Request))throw new TypeError("`input` must be a string, URL, or Request");if(this._options.prefixUrl&&"string"==typeof this._input){if(this._input.startsWith("/"))throw new Error("`input` must not begin with a slash when using `prefixUrl`");this._options.prefixUrl.endsWith("/")||(this._options.prefixUrl+="/"),this._input=this._options.prefixUrl+this._input}if(R){if(this.abortController=new globalThis.AbortController,this._options.signal){const t=this._options.signal;this._options.signal.addEventListener("abort",(()=>{this.abortController.abort(t.reason)}))}this._options.signal=this.abortController.signal}if(M&&(this._options.duplex="half"),this.request=new globalThis.Request(this._input,this._options),this._options.searchParams){const t="string"==typeof this._options.searchParams?this._options.searchParams.replace(/^\?/,""):new URLSearchParams(this._options.searchParams).toString(),e=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,"?"+t);!(z&&this._options.body instanceof globalThis.FormData||this._options.body instanceof URLSearchParams)||this._options.headers&&this._options.headers["content-type"]||this.request.headers.delete("content-type"),this.request=new globalThis.Request(new globalThis.Request(e,{...this.request}),this._options)}void 0!==this._options.json&&(this._options.body=JSON.stringify(this._options.json),this.request.headers.set("content-type",this._options.headers.get("content-type")??"application/json"),this.request=new globalThis.Request(this.request,{body:this._options.body}))}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount<this._options.retry.limit&&!(t instanceof v)){if(t instanceof x){if(!this._options.retry.statusCodes.includes(t.response.status))return 0;const e=t.response.headers.get("Retry-After");if(e&&this._options.retry.afterStatusCodes.includes(t.response.status)){let t=Number(e);return Number.isNaN(t)?t=Date.parse(e)-Date.now():t*=1e3,void 0!==this._options.retry.maxRetryAfter&&t>this._options.retry.maxRetryAfter?0:t}if(413===t.response.status)return 0}return Math.min(this._options.retry.backoffLimit,.3*2**(this._retryCount-1)*1e3)}return 0}_decorateResponse(t){return this._options.parseJson&&(t.json=async()=>this._options.parseJson(await t.text())),t}async _retry(t){try{return await t()}catch(e){const r=Math.min(this._calculateRetryDelay(e),E);if(0!==r&&this._retryCount>0){await async function(t,{signal:e}){return new Promise(((r,o)=>{function s(){clearTimeout(n),o(e.reason)}e&&(e.throwIfAborted(),e.addEventListener("abort",s,{once:!0}));const n=setTimeout((()=>{e?.removeEventListener("abort",s),r()}),t)}))}(r,{signal:this._options.signal});for(const t of this._options.hooks.beforeRetry)if(await t({request:this.request,options:this._options,error:e,retryCount:this._retryCount})===U)return;return this._retry(t)}throw e}}async _fetch(){for(const t of this._options.hooks.beforeRequest){const e=await t(this.request,this._options);if(e instanceof Request){this.request=e;break}if(e instanceof Response)return e}return!1===this._options.timeout?this._options.fetch(this.request.clone()):async function(t,e,r){return new Promise(((o,s)=>{const n=setTimeout((()=>{e&&e.abort(),s(new v(t))}),r.timeout);r.fetch(t).then(o).catch(s).then((()=>{clearTimeout(n)}))}))}(this.request.clone(),this.abortController,this._options)}_stream(t,e){const r=Number(t.headers.get("content-length"))||0;let o=0;return 204===t.status?(e&&e({percent:1,totalBytes:r,transferredBytes:o},new Uint8Array),new globalThis.Response(null,{status:t.status,statusText:t.statusText,headers:t.headers})):new globalThis.Response(new globalThis.ReadableStream({async start(s){const n=t.body.getReader();e&&e({percent:0,transferredBytes:0,totalBytes:r},new Uint8Array),await async function t(){const{done:a,value:i}=await n.read();a?s.close():(e&&(o+=i.byteLength,e({percent:0===r?0:o/r,transferredBytes:o,totalBytes:r},i)),s.enqueue(i),await t())}()}}),{status:t.status,statusText:t.statusText,headers:t.headers})}}
1
+ import{h as t,g as e,f as r,r as o}from"./p-730fc50c.js";const s=e=>{const r=e.hex||"currentColor",o=e.size||24;return t("svg",{class:e.class,width:o,height:o,viewBox:"0 0 24 24",role:"img","aria-label":"title"},t("title",null,e.label||"alien"),t("g",{fill:r},t("path",{d:"M10.31 10.93C11.33 12.57 11.18 14.5 9.96 15.28C8.74 16.04 6.92 15.33\n 5.89 13.69C4.87 12.05 5.03 10.1 6.25 9.34C7.47 8.58 9.29 9.29 10.31\n 10.93M12 17.75C14 17.75 14.5 17 14.5 17C14.5 17 14 19 12 19C10 19 9.5\n 17.03 9.5 17C9.5 17 10 17.75 12 17.75M17.75 9.34C18.97 10.1 19.13 12.05\n 18.11 13.69C17.08 15.33 15.26 16.04 14.04 15.28C12.82 14.5 12.67 12.57\n 13.69 10.93C14.71 9.29 16.53 8.58 17.75 9.34M12 20C14.5 20 20 14.86 20\n 11C20 7.14 16.41 4 12 4C7.59 4 4 7.14 4 11C4 14.86 9.5 20 12 20M12 2C17.5\n 2 22 6.04 22 11C22 15.08 16.32 22 12 22C7.68 22 2 15.08 2 11C2 6.04 6.5 2\n 12 2Z"})),t("path",{d:"M0 0h24v24H0z",fill:"none"}))},n="proto-sudoku",a=`${n}::data`,i=`${n}::inputs`,l=`${n}::pick`,c=t=>{const e=localStorage.getItem(t);return e?JSON.parse(e):void 0},d=(t,e)=>{const r=JSON.stringify(e);localStorage.setItem(t,r)},h=()=>[...c(i)],f=t=>{d(i,t.join(""))},u=()=>{const t=c(l);return null!==t?t:void 0},p=t=>{d(l,t>=0&&t<81?t:null)},b="Check ?",g="New Puzzle",w=t=>!("isConnected"in t)||t.isConnected,m=(()=>{let t;return(...e)=>{t&&clearTimeout(t),t=setTimeout((()=>{t=0,(t=>{for(let e of t.keys())t.set(e,t.get(e).filter(w))})(...e)}),2e3)}})(),y=t=>"function"==typeof t?t():t;class x extends Error{constructor(t,e,r){const o=`${t.status||0===t.status?t.status:""} ${t.statusText||""}`.trim();super("Request failed with "+(o?`status code ${o}`:"an unknown error")),Object.defineProperty(this,"response",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name="HTTPError",this.response=t,this.request=e,this.options=r}}class v extends Error{constructor(t){super("Request timed out"),Object.defineProperty(this,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name="TimeoutError",this.request=t}}const C=t=>null!==t&&"object"==typeof t,k=(...t)=>{for(const e of t)if((!C(e)||Array.isArray(e))&&void 0!==e)throw new TypeError("The `options` argument must be an object");return j({},...t)},T=(t={},e={})=>{const r=new globalThis.Headers(t),o=e instanceof globalThis.Headers,s=new globalThis.Headers(e);for(const[t,e]of s.entries())o&&"undefined"===e||void 0===e?r.delete(t):r.set(t,e);return r},j=(...t)=>{let e={},r={};for(const o of t)if(Array.isArray(o))Array.isArray(e)||(e=[]),e=[...e,...o];else if(C(o)){for(let[t,r]of Object.entries(o))C(r)&&t in e&&(r=j(e[t],r)),e={...e,[t]:r};C(o.headers)&&(r=T(r,o.headers),e.headers=r)}return e},M=(()=>{let t=!1,e=!1;const r="function"==typeof globalThis.ReadableStream,o="function"==typeof globalThis.Request;return r&&o&&(e=new globalThis.Request("https://empty.invalid",{body:new globalThis.ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type")),t&&!e})(),R="function"==typeof globalThis.AbortController,S="function"==typeof globalThis.ReadableStream,z="function"==typeof globalThis.FormData,O=["get","post","put","patch","head","delete"],A={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*"},E=2147483647,U=Symbol("stop"),B=t=>O.includes(t)?t.toUpperCase():t,N=[413,429,503],P={limit:2,methods:["get","put","head","delete","options","trace"],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:N,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY},q=(t={})=>{if("number"==typeof t)return{...P,limit:t};if(t.methods&&!Array.isArray(t.methods))throw new Error("retry.methods must be an array");if(t.statusCodes&&!Array.isArray(t.statusCodes))throw new Error("retry.statusCodes must be an array");return{...P,...t,afterStatusCodes:N}};class _{static create(t,e){const r=new _(t,e),o=async()=>{if("number"==typeof r._options.timeout&&r._options.timeout>E)throw new RangeError("The `timeout` option cannot be greater than 2147483647");await Promise.resolve();let t=await r._fetch();for(const e of r._options.hooks.afterResponse){const o=await e(r.request,r._options,r._decorateResponse(t.clone()));o instanceof globalThis.Response&&(t=o)}if(r._decorateResponse(t),!t.ok&&r._options.throwHttpErrors){let e=new x(t,r.request,r._options);for(const t of r._options.hooks.beforeError)e=await t(e);throw e}if(r._options.onDownloadProgress){if("function"!=typeof r._options.onDownloadProgress)throw new TypeError("The `onDownloadProgress` option must be a function");if(!S)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");return r._stream(t.clone(),r._options.onDownloadProgress)}return t},s=r._options.retry.methods.includes(r.request.method.toLowerCase())?r._retry(o):o();for(const[t,o]of Object.entries(A))s[t]=async()=>{r.request.headers.set("accept",r.request.headers.get("accept")||o);const n=(await s).clone();if("json"===t){if(204===n.status)return"";if(0===(await n.clone().arrayBuffer()).byteLength)return"";if(e.parseJson)return e.parseJson(await n.text())}return n[t]()};return s}constructor(t,e={}){if(Object.defineProperty(this,"request",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"abortController",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_retryCount",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_input",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_options",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this._input=t,this._options={credentials:this._input.credentials||"same-origin",...e,headers:T(this._input.headers,e.headers),hooks:j({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},e.hooks),method:B(e.method??this._input.method),prefixUrl:String(e.prefixUrl||""),retry:q(e.retry),throwHttpErrors:!1!==e.throwHttpErrors,timeout:e.timeout??1e4,fetch:e.fetch??globalThis.fetch.bind(globalThis)},"string"!=typeof this._input&&!(this._input instanceof URL||this._input instanceof globalThis.Request))throw new TypeError("`input` must be a string, URL, or Request");if(this._options.prefixUrl&&"string"==typeof this._input){if(this._input.startsWith("/"))throw new Error("`input` must not begin with a slash when using `prefixUrl`");this._options.prefixUrl.endsWith("/")||(this._options.prefixUrl+="/"),this._input=this._options.prefixUrl+this._input}if(R){if(this.abortController=new globalThis.AbortController,this._options.signal){const t=this._options.signal;this._options.signal.addEventListener("abort",(()=>{this.abortController.abort(t.reason)}))}this._options.signal=this.abortController.signal}if(M&&(this._options.duplex="half"),this.request=new globalThis.Request(this._input,this._options),this._options.searchParams){const t="string"==typeof this._options.searchParams?this._options.searchParams.replace(/^\?/,""):new URLSearchParams(this._options.searchParams).toString(),e=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,"?"+t);!(z&&this._options.body instanceof globalThis.FormData||this._options.body instanceof URLSearchParams)||this._options.headers&&this._options.headers["content-type"]||this.request.headers.delete("content-type"),this.request=new globalThis.Request(new globalThis.Request(e,{...this.request}),this._options)}void 0!==this._options.json&&(this._options.body=JSON.stringify(this._options.json),this.request.headers.set("content-type",this._options.headers.get("content-type")??"application/json"),this.request=new globalThis.Request(this.request,{body:this._options.body}))}_calculateRetryDelay(t){if(this._retryCount++,this._retryCount<this._options.retry.limit&&!(t instanceof v)){if(t instanceof x){if(!this._options.retry.statusCodes.includes(t.response.status))return 0;const e=t.response.headers.get("Retry-After");if(e&&this._options.retry.afterStatusCodes.includes(t.response.status)){let t=Number(e);return Number.isNaN(t)?t=Date.parse(e)-Date.now():t*=1e3,void 0!==this._options.retry.maxRetryAfter&&t>this._options.retry.maxRetryAfter?0:t}if(413===t.response.status)return 0}return Math.min(this._options.retry.backoffLimit,.3*2**(this._retryCount-1)*1e3)}return 0}_decorateResponse(t){return this._options.parseJson&&(t.json=async()=>this._options.parseJson(await t.text())),t}async _retry(t){try{return await t()}catch(e){const r=Math.min(this._calculateRetryDelay(e),E);if(0!==r&&this._retryCount>0){await async function(t,{signal:e}){return new Promise(((r,o)=>{function s(){clearTimeout(n),o(e.reason)}e&&(e.throwIfAborted(),e.addEventListener("abort",s,{once:!0}));const n=setTimeout((()=>{e?.removeEventListener("abort",s),r()}),t)}))}(r,{signal:this._options.signal});for(const t of this._options.hooks.beforeRetry)if(await t({request:this.request,options:this._options,error:e,retryCount:this._retryCount})===U)return;return this._retry(t)}throw e}}async _fetch(){for(const t of this._options.hooks.beforeRequest){const e=await t(this.request,this._options);if(e instanceof Request){this.request=e;break}if(e instanceof Response)return e}return!1===this._options.timeout?this._options.fetch(this.request.clone()):async function(t,e,r){return new Promise(((o,s)=>{const n=setTimeout((()=>{e&&e.abort(),s(new v(t))}),r.timeout);r.fetch(t).then(o).catch(s).then((()=>{clearTimeout(n)}))}))}(this.request.clone(),this.abortController,this._options)}_stream(t,e){const r=Number(t.headers.get("content-length"))||0;let o=0;return 204===t.status?(e&&e({percent:1,totalBytes:r,transferredBytes:o},new Uint8Array),new globalThis.Response(null,{status:t.status,statusText:t.statusText,headers:t.headers})):new globalThis.Response(new globalThis.ReadableStream({async start(s){const n=t.body.getReader();e&&e({percent:0,transferredBytes:0,totalBytes:r},new Uint8Array),await async function t(){const{done:a,value:i}=await n.read();a?s.close():(e&&(o+=i.byteLength,e({percent:0===r?0:o/r,transferredBytes:o,totalBytes:r},i)),s.enqueue(i),await t())}()}}),{status:t.status,statusText:t.statusText,headers:t.headers})}}
2
2
  /*! MIT License © Sindre Sorhus */const H=t=>{const e=(e,r)=>_.create(e,k(t,r));for(const r of O)e[r]=(e,o)=>_.create(e,k(t,o,{method:r}));return e.create=t=>H(k(t)),e.extend=e=>H(k(t,e)),e.stop=U,e},$=H(),D={list:[],keys:[],locs:[],loading:!1,solved:!1,error:void 0,pick:void 0,data:void 0},{state:L}=(()=>{const t=((t,e=((t,e)=>t!==e))=>{const r=y(t);let o=new Map(Object.entries(null!=r?r:{}));const s={dispose:[],get:[],set:[],reset:[]},n=()=>{var e;o=new Map(Object.entries(null!==(e=y(t))&&void 0!==e?e:{})),s.reset.forEach((t=>t()))},a=t=>(s.get.forEach((e=>e(t))),o.get(t)),i=(t,r)=>{const n=o.get(t);e(r,n,t)&&(o.set(t,r),s.set.forEach((e=>e(t,r,n))))},l="undefined"==typeof Proxy?{}:new Proxy(r,{get:(t,e)=>a(e),ownKeys:()=>Array.from(o.keys()),getOwnPropertyDescriptor:()=>({enumerable:!0,configurable:!0}),has:(t,e)=>o.has(e),set:(t,e,r)=>(i(e,r),!0)}),c=(t,e)=>(s[t].push(e),()=>{((t,e)=>{const r=t.indexOf(e);r>=0&&(t[r]=t[t.length-1],t.length--)})(s[t],e)});return{state:l,get:a,set:i,on:c,onChange:(e,r)=>{const o=c("set",((t,o)=>{t===e&&r(o)})),s=c("reset",(()=>r(y(t)[e])));return()=>{o(),s()}},use:(...t)=>{const e=t.reduce(((t,e)=>(e.set&&t.push(c("set",e.set)),e.get&&t.push(c("get",e.get)),e.reset&&t.push(c("reset",e.reset)),e.dispose&&t.push(c("dispose",e.dispose)),t)),[]);return()=>e.forEach((t=>t()))},dispose:()=>{s.dispose.forEach((t=>t())),n()},reset:n,forceUpdate:t=>{const e=o.get(t);s.set.forEach((r=>r(t,e,e)))}}})(D,void 0);return t.use((()=>{if("function"!=typeof e)return{};const t=new Map;return{dispose:()=>t.clear(),get:r=>{const o=e();o&&((t,e,r)=>{const o=t.get(e);o?o.includes(r)||o.push(r):t.set(e,[r])})(t,r,o)},set:e=>{const o=t.get(e);o&&t.set(e,o.filter(r)),m(t)},reset:()=>{t.forEach((t=>t.forEach(r))),m(t)}}})()),t})(),I=new Map([["row",new Map],["column",new Map],["box",new Map]]),J=["1","2","3","4","5","6","7","8","9"],W=t=>{if(void 0!==t&&t.indx!=L.pick){const{isClue:e,indx:r,row:o,column:s,box:n}=t,a=((t,e,r,o)=>{const s=new Map([["row",e],["column",r],["box",o]]),n=new Set;return s.forEach(((e,r)=>{I.get(r).get(e).forEach((e=>{e!==t&&n.add(e)}))})),Array.from(n)})(r,o,s,n),i=e?[]:(t=>{const{list:e}=L,r=new Set;return t.map((t=>{const{key:o}=e[t];"."!=o&&r.add(o)})),J.filter((t=>!r.has(t)))})(a);L.pick=r,L.keys=i,L.locs=a}else L.pick=void 0,L.keys=[],L.locs=[];K(L.pick)};let X;const Z={netlify:"/.netlify/functions",vercel:"https://sudoku-rust-api.vercel.app/api"},F=t=>{f(t)},K=t=>{p(t)},V=(t=!1)=>{L.list=[],L.keys=[],L.locs=[],L.loading=t,L.solved=!1,L.error=void 0,L.pick=void 0,L.data=void 0},Y=(t,e=!0)=>{const{puzzle:r,ref:o}=t;e&&(f([]),d(a,t)),(t=>{if(t){const{puzzle:e,ref:r}=t,o=e?[...e]:[],s=r?atob(r):void 0,n=s?[...s]:[],a=o.map(((t,e)=>{const r=n[e],o=t===r,s=Math.floor(e/9),a=e%9,i=((t,e)=>e<3?t<3?0:t<6?3:6:e<6?t<3?1:t<6?4:7:t<3?2:t<6?5:8)(s,a);return((t,e,r,o)=>{new Map([["row",e],["column",r],["box",o]]).forEach(((e,r)=>{const o=I.get(r);o.has(e)?o.get(e).add(t):o.set(e,new Set([t]))}))})(e,s,a,i),{key:t,isClue:o,value:r,indx:e,row:s,column:a,box:i}}));(t=>{h().forEach(((e,r)=>{const o=t[r],{isClue:s}=o;s||(o.key=e)}))})(a),L.data=t,L.list=a}else L.data=void 0,L.list=[]})({puzzle:r,ref:o})},G=t=>{L.list=[...t],t.length=0},Q={initApp:t=>{(t=>{const e=(t=>{const e=Object.keys(Z).includes(t)?t:"vercel";return Z[e]})(t);X=$.extend({hooks:{beforeRequest:[t=>{t.headers.set("X-Requested-With","ky"),t.headers.set("X-Custom-Header","foobar")}]},prefixUrl:e,timeout:1e4})})(t),V();const e=c(a),r=u();if(e&&(Y(e,!1),r>=0)){const{list:t}=L;W(t[r])}},refresh:async()=>{V(!0),F([]),K(L.pick);try{const t=await X.get("puzzle").json();Y(t)}catch(t){const{message:e}=t;console.log("-- ",e),console.log(t),L.error=e}finally{L.loading=!1}},select:t=>{W(t)},check:()=>{const{list:t}=L,e=[];let r=0,o=0,s=0;t.forEach((t=>{const{key:n,value:a,isClue:i}=t;i?s+=1:"."!==n&&(n!==a?(r+=1,t.key="."):o+=1),e.push(t.key)}));const n=s+o;F(o?e:[]),r>0?G(t):81===n&&(L.solved=!0)},input:t=>{const{pick:e,list:r}=L;r[e].key=t,G(r)}},tt=(...t)=>t.filter(Boolean).join(" "),et=e=>{const r=e.hex||"currentColor",o=e.label||"loading...",s=e.size||24;return t("svg",{class:tt(e.class||"","animate-spin"),width:s,height:s,fill:"none",viewBox:"0 0 24 24",role:"img","aria-label":"title"},t("title",null,o),t("g",null,t("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:r,"stroke-width":"4"}),t("path",{class:"opacity-75",fill:r,d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})),t("path",{d:"M0 0h24v24H0z",fill:"none"}))},rt=e=>{const{message:r,salute:o,spinner:n=!1}=e;return t("div",{class:"mt-5 flex h-24px flex-row items-center"},t(n?et:s,{class:"mr-2"}),o?t("label",{class:"mr-1 font-bold"},o,":"):"",t("label",{class:"italic"},r))},ot=()=>{const{solved:e,loading:r,error:o}=L;return t("div",{class:"flex flex-col"},r||o||e?"":t(rt,{message:"Welcome, are you ready to play?..."}),r?t(rt,{message:"Loading...",spinner:!0}):"",o?t(rt,{message:o,salute:"ERROR"}):"",e?t(rt,{message:"You solved the puzzle!!"}):"")},st=e=>{const r=e.hex||"currentColor",o=e.size||24;return t("svg",{class:e.class,width:o,height:o,viewBox:"0 0 24 24",role:"img","aria-label":"title"},t("title",null,e.label||"fingerprint"),t("g",{fill:r},t("path",{d:"M17.81,4.47C17.73,4.47 17.65,4.45 17.58,4.41C15.66,3.42 14,3\n 12,3C10.03,3 8.15,3.47 6.44,4.41C6.2,4.54 5.9,4.45 5.76,4.21C5.63,3.97\n 5.72,3.66 5.96,3.53C7.82,2.5 9.86,2 12,2C14.14,2 16,2.47\n 18.04,3.5C18.29,3.65 18.38,3.95 18.25,4.19C18.16,4.37 18,4.47\n 17.81,4.47M3.5,9.72C3.4,9.72 3.3,9.69 3.21,9.63C3,9.47 2.93,9.16\n 3.09,8.93C4.08,7.53 5.34,6.43 6.84,5.66C10,4.04 14,4.03\n 17.15,5.65C18.65,6.42 19.91,7.5 20.9,8.9C21.06,9.12 21,9.44\n 20.78,9.6C20.55,9.76 20.24,9.71 20.08,9.5C19.18,8.22 18.04,7.23\n 16.69,6.54C13.82,5.07 10.15,5.07 7.29,6.55C5.93,7.25 4.79,8.25\n 3.89,9.5C3.81,9.65 3.66,9.72 3.5,9.72M9.75,21.79C9.62,21.79 9.5,21.74\n 9.4,21.64C8.53,20.77 8.06,20.21 7.39,19C6.7,17.77 6.34,16.27\n 6.34,14.66C6.34,11.69 8.88,9.27 12,9.27C15.12,9.27 17.66,11.69\n 17.66,14.66A0.5,0.5 0 0,1 17.16,15.16A0.5,0.5 0 0,1\n 16.66,14.66C16.66,12.24 14.57,10.27 12,10.27C9.43,10.27 7.34,12.24\n 7.34,14.66C7.34,16.1 7.66,17.43 8.27,18.5C8.91,19.66 9.35,20.15\n 10.12,20.93C10.31,21.13 10.31,21.44 10.12,21.64C10,21.74 9.88,21.79\n 9.75,21.79M16.92,19.94C15.73,19.94 14.68,19.64 13.82,19.05C12.33,18.04\n 11.44,16.4 11.44,14.66A0.5,0.5 0 0,1 11.94,14.16A0.5,0.5 0 0,1\n 12.44,14.66C12.44,16.07 13.16,17.4 14.38,18.22C15.09,18.7 15.92,18.93\n 16.92,18.93C17.16,18.93 17.56,18.9 17.96,18.83C18.23,18.78 18.5,18.96\n 18.54,19.24C18.59,19.5 18.41,19.77 18.13,19.82C17.56,19.93 17.06,19.94\n 16.92,19.94M14.91,22C14.87,22 14.82,22 14.78,22C13.19,21.54 12.15,20.95\n 11.06,19.88C9.66,18.5 8.89,16.64 8.89,14.66C8.89,13.04 10.27,11.72\n 11.97,11.72C13.67,11.72 15.05,13.04 15.05,14.66C15.05,15.73 16,16.6\n 17.13,16.6C18.28,16.6 19.21,15.73 19.21,14.66C19.21,10.89 15.96,7.83\n 11.96,7.83C9.12,7.83 6.5,9.41 5.35,11.86C4.96,12.67 4.76,13.62\n 4.76,14.66C4.76,15.44 4.83,16.67 5.43,18.27C5.53,18.53 5.4,18.82\n 5.14,18.91C4.88,19 4.59,18.87 4.5,18.62C4,17.31 3.77,16\n 3.77,14.66C3.77,13.46 4,12.37 4.45,11.42C5.78,8.63 8.73,6.82\n 11.96,6.82C16.5,6.82 20.21,10.33 20.21,14.65C20.21,16.27 18.83,17.59\n 17.13,17.59C15.43,17.59 14.05,16.27 14.05,14.65C14.05,13.58 13.12,12.71\n 11.97,12.71C10.82,12.71 9.89,13.58 9.89,14.65C9.89,16.36 10.55,17.96\n 11.76,19.16C12.71,20.1 13.62,20.62 15.03,21C15.3,21.08 15.45,21.36\n 15.38,21.62C15.33,21.85 15.12,22 14.91,22Z"})),t("path",{d:"M0 0h24v24H0z",fill:"none"}))},nt="eswat2",at=()=>t("a",{class:"absolute right-0 top-0 text-clrs-gray hover:text-clrs-navy",href:"https://eswat2.dev","aria-label":nt,target:"blank",title:nt},t(st,{label:nt})),it=(e,r)=>t("h1",{class:tt("text-center uppercase text-clrs-red","mb-11 ml-0 mr-0 mt-11","text-6xl font-thin")},r),lt=e=>{const{label:r,callback:o,matched:s=!1}=e;return t("button",{class:tt("rounded-md border border-solid border-clrs-slate4 font-bold",r===b?"mr-2 bg-clrs-yellow px-3 py-2 text-clrs-navy":r===g?"mr-2 bg-clrs-navy px-3 py-2 text-white":"x"===r?"mr-1 bg-clrs-red px-2 py-1 text-white":s?"mr-1 bg-clrs-slate4 px-2 py-1 text-white":"mr-1 bg-gray-50 px-2 py-1 text-clrs-navy"),onClick:o},r)},ct=()=>{const{keys:e,list:r,pick:o,solved:s}=L,n=t=>()=>{Q.input(t)},a=s?[]:e,i=null!=o?r[o]:void 0;return t("div",{class:"mt-2 flex flex-row justify-end"},s||!i||i.isClue||"."==i.key?"":t(lt,{label:"x",callback:n(".")}),a.map((e=>t(lt,{label:e,callback:n(e),matched:i.key===e}))))},dt=[2,5,11,14,20,23,29,32,38,41,47,50,56,59,65,68,74,77],ht=dt.map((t=>t+1)),ft=[18,19,20,21,22,23,24,25,26,45,46,47,48,49,50,51,52,53],ut=ft.map((t=>t+9)),pt=e=>{const{cell:r,focus:o,selected:s,solved:n}=e,{key:a,isClue:i,indx:l}=r,c="."!=a?a:"";return t("label",{class:tt(`cell-${l}`,dt.includes(l)?"border-xbr-clrs-navy":"",ht.includes(l)?"border-xbl-clrs-navy":"",ft.includes(l)?"border-xbb-clrs-navy":"",ut.includes(l)?"border-xbt-clrs-navy":"","h-8 w-8 border border-solid text-center leading-8",s?"border-clrs-red bg-clrs-red-a50 text-clrs-red":o?"border-clrs-gray bg-clrs-green-a50 font-bold":i?"border-clrs-gray bg-clrs-silver":""!==c?"border-clrs-gray text-clrs-red":"border-clrs-gray"),onClick:((t,e)=>()=>{e||Q.select(t)})(r,n)},c)},bt=()=>{const{list:e,pick:r,locs:o,solved:s}=L;return t("div",{class:tt("flex flex-row flex-wrap","border border-solid border-clrs-navy","h-76p5 w-76p5 text-lg")},e.map(((e,n)=>{const a=!s&&n===r,i=!s&&o.includes(n);return t(pt,{cell:e,focus:i,selected:a,solved:s})})))},gt=()=>t("label",{class:"ml-auto align-top text-xs italic text-clrs-slate4"},"Tailwind ","3.3.3"),wt=t=>()=>{t.refresh()},mt=t=>()=>{t.check()},yt=()=>{const{list:e,solved:r}=L;return t("div",{class:"flex flex-row"},t(lt,{label:g,callback:wt(Q)}),81!==e.length||r?"":t(lt,{label:b,callback:mt(Q)}),t(gt,null))},xt=class{constructor(t){o(this,t),this.tag="proto-sudoku",this.platform="vercel"}componentDidLoad(){Q.initApp(this.platform)}render(){return t("div",{id:"app",class:"ds1-main relative max-w-min p-0.5"},t(at,null),t(it,null,"Sudoku"),t(bt,null),t(ct,null),t("hr",{class:"ml-0 mr-0"}),t(yt,null),t(ot,null))}};xt.style="*,::before,::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}.ds1-main{margin:1.5rem;display:flex;flex-direction:column;font-family:ui-sans-serif,\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n 'Helvetica Neue',\n Arial,\n 'Noto Sans',\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji',\n 'Segoe UI Symbol',\n 'Noto Color Emoji';color:var(--clrs-navy, #001f3f);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.absolute{position:absolute}.relative{position:relative}.right-0{right:0px}.top-0{top:0px}.mb-11{margin-bottom:2.75rem}.ml-0{margin-left:0px}.ml-auto{margin-left:auto}.mr-0{margin-right:0px}.mr-1{margin-right:0.25rem}.mr-2{margin-right:0.5rem}.mt-11{margin-top:2.75rem}.mt-2{margin-top:0.5rem}.mt-5{margin-top:1.25rem}.flex{display:flex}.h-24px{height:24px}.h-76p5{height:19.125rem}.h-8{height:2rem}.w-76p5{width:19.125rem}.w-8{width:2rem}.max-w-min{max-width:-moz-min-content;max-width:min-content}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-end{justify-content:flex-end}.rounded-md{border-radius:0.375rem}.border{border-width:1px}.border-solid{border-style:solid}.border-clrs-gray{border-color:var(--clrs-gray, #aaaaaa)}.border-clrs-navy{border-color:var(--clrs-navy, #001f3f)}.border-clrs-red{border-color:var(--clrs-red, #ff4136)}.border-clrs-slate4{border-color:var(--clrs-slate4, #4e5964)}.bg-clrs-green-a50{background-color:var(--clrs-green-a50, #2ecc4050)}.bg-clrs-navy{background-color:var(--clrs-navy, #001f3f)}.bg-clrs-red{background-color:var(--clrs-red, #ff4136)}.bg-clrs-red-a50{background-color:var(--clrs-red-a50, #ff413650)}.bg-clrs-silver{background-color:var(--clrs-silver, #dddddd)}.bg-clrs-slate4{background-color:var(--clrs-slate4, #4e5964)}.bg-clrs-yellow{background-color:var(--clrs-yellow, #ffdc00)}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.p-0{padding:0px}.p-0\\.5{padding:0.125rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.text-center{text-align:center}.align-top{vertical-align:top}.text-6xl{font-size:3.75rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xs{font-size:0.75rem;line-height:1rem}.font-bold{font-weight:700}.font-thin{font-weight:100}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-8{line-height:2rem}.text-clrs-gray{color:var(--clrs-gray, #aaaaaa)}.text-clrs-navy{color:var(--clrs-navy, #001f3f)}.text-clrs-red{color:var(--clrs-red, #ff4136)}.text-clrs-slate4{color:var(--clrs-slate4, #4e5964)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))}.opacity-25{opacity:0.25}.opacity-75{opacity:0.75}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),\n 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.border-xbb-clrs-navy{border-bottom:1px solid var(--clrs-navy, #001f3f) !important}.border-xbt-clrs-navy{border-top:1px solid var(--clrs-navy, #001f3f) !important}.border-xbl-clrs-navy{border-left:1px solid var(--clrs-navy, #001f3f) !important}.border-xbr-clrs-navy{border-right:1px solid var(--clrs-navy, #001f3f) !important}.hover\\:text-clrs-navy:hover{color:var(--clrs-navy, #001f3f)}";export{xt as proto_sudoku}
@@ -1 +1 @@
1
- import{p as o,b as t}from"./p-d61d0701.js";export{s as setNonce}from"./p-d61d0701.js";(()=>{const t=import.meta.url,p={};return""!==t&&(p.resourcesUrl=new URL(".",t).href),o(p)})().then((o=>t([["p-41c9d336",[[1,"proto-sudoku",{tag:[1],platform:[1]}]]]],o)));
1
+ import{p as o,b as t}from"./p-730fc50c.js";export{s as setNonce}from"./p-730fc50c.js";(()=>{const t=import.meta.url,p={};return""!==t&&(p.resourcesUrl=new URL(".",t).href),o(p)})().then((o=>t([["p-7784da3c",[[1,"proto-sudoku",{tag:[1],platform:[1]}]]]],o)));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "proto-sudoku-wc",
3
- "version": "0.0.671",
3
+ "version": "0.0.673",
4
4
  "description": "prototype - a simple Sudoku app rendered in Stencil and Tailwind",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -27,21 +27,21 @@
27
27
  "format": "prettier --write src"
28
28
  },
29
29
  "dependencies": {
30
- "@stencil/core": "4.3.0",
31
- "@stencil/store": "2.0.9",
30
+ "@stencil/core": "4.4.1",
31
+ "@stencil/store": "2.0.10",
32
32
  "ky": "1.0.1",
33
- "proto-tailwindcss-clrs": "0.0.275",
33
+ "proto-tailwindcss-clrs": "0.0.276",
34
34
  "tailwindcss": "3.3.3"
35
35
  },
36
36
  "devDependencies": {
37
37
  "autoprefixer": "10.4.16",
38
38
  "concurrently": "8.2.1",
39
- "cspell": "7.3.6",
39
+ "cspell": "7.3.7",
40
40
  "cssnano": "6.0.1",
41
- "eslint": "8.50.0",
42
- "postcss": "8.4.30",
41
+ "eslint": "8.51.0",
42
+ "postcss": "8.4.31",
43
43
  "prettier": "3.0.3",
44
- "prettier-plugin-tailwindcss": "0.5.4",
44
+ "prettier-plugin-tailwindcss": "0.5.6",
45
45
  "typescript": "5.2.2"
46
46
  },
47
47
  "license": "MIT"