proto-sudoku-wc 0.0.687 → 0.0.689
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/cjs/{index-38369b07.js → index-4683daff.js} +31 -6
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/proto-sudoku-wc.cjs.js +2 -2
- package/dist/cjs/proto-sudoku.cjs.entry.js +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/esm/{index-55ed9a0e.js → index-3ccc3f4a.js} +31 -6
- package/dist/esm/loader.js +2 -2
- package/dist/esm/proto-sudoku-wc.js +3 -3
- package/dist/esm/proto-sudoku.entry.js +1 -1
- package/dist/proto-sudoku-wc/{p-d518f590.entry.js → p-4a14cce4.entry.js} +1 -1
- package/dist/proto-sudoku-wc/p-4ab7e5a2.js +2 -0
- package/dist/proto-sudoku-wc/proto-sudoku-wc.esm.js +1 -1
- package/package.json +4 -4
- package/dist/proto-sudoku-wc/p-c433930f.js +0 -2
@@ -50,6 +50,13 @@ const uniqueTime = (key, measureText) => {
|
|
50
50
|
}
|
51
51
|
};
|
52
52
|
const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
|
53
|
+
/**
|
54
|
+
* Constant for styles to be globally applied to `slot-fb` elements for pseudo-slot behavior.
|
55
|
+
*
|
56
|
+
* Two cascading rules must be used instead of a `:not()` selector due to Stencil browser
|
57
|
+
* support as of Stencil v4.
|
58
|
+
*/
|
59
|
+
const SLOT_FB_CSS = 'slot-fb{display:contents}slot-fb[hidden]{display:none}';
|
53
60
|
/**
|
54
61
|
* Default style mode id
|
55
62
|
*/
|
@@ -326,6 +333,10 @@ const addStyle = (styleContainerNode, cmpMeta, mode) => {
|
|
326
333
|
}
|
327
334
|
styleContainerNode.insertBefore(styleElm, styleContainerNode.querySelector('link'));
|
328
335
|
}
|
336
|
+
// Add styles for `slot-fb` elements if we're using slots outside the Shadow DOM
|
337
|
+
if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
|
338
|
+
styleElm.innerHTML += SLOT_FB_CSS;
|
339
|
+
}
|
329
340
|
if (appliedStyles) {
|
330
341
|
appliedStyles.add(scopeId);
|
331
342
|
}
|
@@ -1480,12 +1491,13 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
1480
1491
|
const customElements = win.customElements;
|
1481
1492
|
const head = doc.head;
|
1482
1493
|
const metaCharset = /*@__PURE__*/ head.querySelector('meta[charset]');
|
1483
|
-
const
|
1494
|
+
const dataStyles = /*@__PURE__*/ doc.createElement('style');
|
1484
1495
|
const deferredConnectedCallbacks = [];
|
1485
1496
|
let appLoadFallback;
|
1486
1497
|
let isBootstrapping = true;
|
1487
1498
|
Object.assign(plt, options);
|
1488
1499
|
plt.$resourcesUrl$ = new URL(options.resourcesUrl || './', doc.baseURI).href;
|
1500
|
+
let hasSlotRelocation = false;
|
1489
1501
|
lazyBundles.map((lazyBundle) => {
|
1490
1502
|
lazyBundle[1].map((compactMeta) => {
|
1491
1503
|
const cmpMeta = {
|
@@ -1494,6 +1506,11 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
1494
1506
|
$members$: compactMeta[2],
|
1495
1507
|
$listeners$: compactMeta[3],
|
1496
1508
|
};
|
1509
|
+
// Check if we are using slots outside the shadow DOM in this component.
|
1510
|
+
// We'll use this information later to add styles for `slot-fb` elements
|
1511
|
+
if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
|
1512
|
+
hasSlotRelocation = true;
|
1513
|
+
}
|
1497
1514
|
{
|
1498
1515
|
cmpMeta.$members$ = compactMeta[2];
|
1499
1516
|
}
|
@@ -1544,15 +1561,23 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
1544
1561
|
}
|
1545
1562
|
});
|
1546
1563
|
});
|
1564
|
+
// Add styles for `slot-fb` elements if any of our components are using slots outside the Shadow DOM
|
1565
|
+
if (hasSlotRelocation) {
|
1566
|
+
dataStyles.innerHTML += SLOT_FB_CSS;
|
1567
|
+
}
|
1568
|
+
// Add hydration styles
|
1547
1569
|
{
|
1548
|
-
|
1549
|
-
|
1570
|
+
dataStyles.innerHTML += cmpTags + HYDRATED_CSS;
|
1571
|
+
}
|
1572
|
+
// If we have styles, add them to the DOM
|
1573
|
+
if (dataStyles.innerHTML.length) {
|
1574
|
+
dataStyles.setAttribute('data-styles', '');
|
1575
|
+
head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
|
1550
1576
|
// Apply CSP nonce to the style tag if it exists
|
1551
1577
|
const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
|
1552
1578
|
if (nonce != null) {
|
1553
|
-
|
1579
|
+
dataStyles.setAttribute('nonce', nonce);
|
1554
1580
|
}
|
1555
|
-
head.insertBefore(visibilityStyle, metaCharset ? metaCharset.nextSibling : head.firstChild);
|
1556
1581
|
}
|
1557
1582
|
// Process deferred connectedCallbacks now all components have been registered
|
1558
1583
|
isBootstrapping = false;
|
@@ -1704,7 +1729,7 @@ const flush = () => {
|
|
1704
1729
|
}
|
1705
1730
|
}
|
1706
1731
|
};
|
1707
|
-
const nextTick =
|
1732
|
+
const nextTick = (cb) => promiseResolve().then(cb);
|
1708
1733
|
const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
|
1709
1734
|
|
1710
1735
|
exports.bootstrapLazy = bootstrapLazy;
|
package/dist/cjs/loader.cjs.js
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
const index = require('./index-
|
5
|
+
const index = require('./index-4683daff.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-
|
5
|
+
const index = require('./index-4683daff.js');
|
6
6
|
|
7
7
|
/*
|
8
|
-
Stencil Client Patch Browser v4.7.
|
8
|
+
Stencil Client Patch Browser v4.7.2 | 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));
|
@@ -28,6 +28,13 @@ const uniqueTime = (key, measureText) => {
|
|
28
28
|
}
|
29
29
|
};
|
30
30
|
const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
|
31
|
+
/**
|
32
|
+
* Constant for styles to be globally applied to `slot-fb` elements for pseudo-slot behavior.
|
33
|
+
*
|
34
|
+
* Two cascading rules must be used instead of a `:not()` selector due to Stencil browser
|
35
|
+
* support as of Stencil v4.
|
36
|
+
*/
|
37
|
+
const SLOT_FB_CSS = 'slot-fb{display:contents}slot-fb[hidden]{display:none}';
|
31
38
|
/**
|
32
39
|
* Default style mode id
|
33
40
|
*/
|
@@ -304,6 +311,10 @@ const addStyle = (styleContainerNode, cmpMeta, mode) => {
|
|
304
311
|
}
|
305
312
|
styleContainerNode.insertBefore(styleElm, styleContainerNode.querySelector('link'));
|
306
313
|
}
|
314
|
+
// Add styles for `slot-fb` elements if we're using slots outside the Shadow DOM
|
315
|
+
if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
|
316
|
+
styleElm.innerHTML += SLOT_FB_CSS;
|
317
|
+
}
|
307
318
|
if (appliedStyles) {
|
308
319
|
appliedStyles.add(scopeId);
|
309
320
|
}
|
@@ -1458,12 +1469,13 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
1458
1469
|
const customElements = win.customElements;
|
1459
1470
|
const head = doc.head;
|
1460
1471
|
const metaCharset = /*@__PURE__*/ head.querySelector('meta[charset]');
|
1461
|
-
const
|
1472
|
+
const dataStyles = /*@__PURE__*/ doc.createElement('style');
|
1462
1473
|
const deferredConnectedCallbacks = [];
|
1463
1474
|
let appLoadFallback;
|
1464
1475
|
let isBootstrapping = true;
|
1465
1476
|
Object.assign(plt, options);
|
1466
1477
|
plt.$resourcesUrl$ = new URL(options.resourcesUrl || './', doc.baseURI).href;
|
1478
|
+
let hasSlotRelocation = false;
|
1467
1479
|
lazyBundles.map((lazyBundle) => {
|
1468
1480
|
lazyBundle[1].map((compactMeta) => {
|
1469
1481
|
const cmpMeta = {
|
@@ -1472,6 +1484,11 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
1472
1484
|
$members$: compactMeta[2],
|
1473
1485
|
$listeners$: compactMeta[3],
|
1474
1486
|
};
|
1487
|
+
// Check if we are using slots outside the shadow DOM in this component.
|
1488
|
+
// We'll use this information later to add styles for `slot-fb` elements
|
1489
|
+
if (cmpMeta.$flags$ & 4 /* CMP_FLAGS.hasSlotRelocation */) {
|
1490
|
+
hasSlotRelocation = true;
|
1491
|
+
}
|
1475
1492
|
{
|
1476
1493
|
cmpMeta.$members$ = compactMeta[2];
|
1477
1494
|
}
|
@@ -1522,15 +1539,23 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
|
|
1522
1539
|
}
|
1523
1540
|
});
|
1524
1541
|
});
|
1542
|
+
// Add styles for `slot-fb` elements if any of our components are using slots outside the Shadow DOM
|
1543
|
+
if (hasSlotRelocation) {
|
1544
|
+
dataStyles.innerHTML += SLOT_FB_CSS;
|
1545
|
+
}
|
1546
|
+
// Add hydration styles
|
1525
1547
|
{
|
1526
|
-
|
1527
|
-
|
1548
|
+
dataStyles.innerHTML += cmpTags + HYDRATED_CSS;
|
1549
|
+
}
|
1550
|
+
// If we have styles, add them to the DOM
|
1551
|
+
if (dataStyles.innerHTML.length) {
|
1552
|
+
dataStyles.setAttribute('data-styles', '');
|
1553
|
+
head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);
|
1528
1554
|
// Apply CSP nonce to the style tag if it exists
|
1529
1555
|
const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
|
1530
1556
|
if (nonce != null) {
|
1531
|
-
|
1557
|
+
dataStyles.setAttribute('nonce', nonce);
|
1532
1558
|
}
|
1533
|
-
head.insertBefore(visibilityStyle, metaCharset ? metaCharset.nextSibling : head.firstChild);
|
1534
1559
|
}
|
1535
1560
|
// Process deferred connectedCallbacks now all components have been registered
|
1536
1561
|
isBootstrapping = false;
|
@@ -1682,7 +1707,7 @@ const flush = () => {
|
|
1682
1707
|
}
|
1683
1708
|
}
|
1684
1709
|
};
|
1685
|
-
const nextTick =
|
1710
|
+
const nextTick = (cb) => promiseResolve().then(cb);
|
1686
1711
|
const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
|
1687
1712
|
|
1688
1713
|
export { bootstrapLazy as b, forceUpdate as f, getRenderingRef as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
|
package/dist/esm/loader.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
import { b as bootstrapLazy } from './index-
|
2
|
-
export { s as setNonce } from './index-
|
1
|
+
import { b as bootstrapLazy } from './index-3ccc3f4a.js';
|
2
|
+
export { s as setNonce } from './index-3ccc3f4a.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-
|
2
|
-
export { s as setNonce } from './index-
|
1
|
+
import { p as promiseResolve, b as bootstrapLazy } from './index-3ccc3f4a.js';
|
2
|
+
export { s as setNonce } from './index-3ccc3f4a.js';
|
3
3
|
|
4
4
|
/*
|
5
|
-
Stencil Client Patch Browser v4.7.
|
5
|
+
Stencil Client Patch Browser v4.7.2 | 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-
|
1
|
+
import { h, g as getRenderingRef, f as forceUpdate, r as registerInstance } from './index-3ccc3f4a.js';
|
2
2
|
|
3
3
|
const Alien = props => {
|
4
4
|
const hex = props.hex || 'currentColor';
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{h as t,g as e,f as r,r as o}from"./p-c433930f.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,P=Symbol("stop"),U={json:!0,parseJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,fetch:!0},B={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,dispatcher:!0,duplex:!0},N=t=>O.includes(t)?t.toUpperCase():t,q=[413,429,503],H={limit:2,methods:["get","put","head","delete","options","trace"],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:q,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:t=>.3*2**(t-1)*1e3},_=(t={})=>{if("number"==typeof t)return{...H,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{...H,...t,afterStatusCodes:q}};class D{static create(t,e){const r=new D(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:N(e.method??this._input.method),prefixUrl:String(e.prefixUrl||""),retry:_(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}const e=this._options.retry.delay(this._retryCount);return Math.min(this._options.retry.backoffLimit,e)}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})===P)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}const t=((t,e)=>{const r={};for(const o in e)o in B||o in U||o in t||(r[o]=e[o]);return r})(this.request,this._options);return!1===this._options.timeout?this._options.fetch(this.request.clone(),t):async function(t,e,r,o){return new Promise(((s,n)=>{const a=setTimeout((()=>{r&&r.abort(),n(new v(t))}),o.timeout);o.fetch(t,e).then(s).catch(n).then((()=>{clearTimeout(a)}))}))}(this.request.clone(),t,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-4ab7e5a2.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,P=Symbol("stop"),U={json:!0,parseJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,fetch:!0},B={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,dispatcher:!0,duplex:!0},N=t=>O.includes(t)?t.toUpperCase():t,q=[413,429,503],H={limit:2,methods:["get","put","head","delete","options","trace"],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:q,maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:t=>.3*2**(t-1)*1e3},_=(t={})=>{if("number"==typeof t)return{...H,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{...H,...t,afterStatusCodes:q}};class D{static create(t,e){const r=new D(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:N(e.method??this._input.method),prefixUrl:String(e.prefixUrl||""),retry:_(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}const e=this._options.retry.delay(this._retryCount);return Math.min(this._options.retry.backoffLimit,e)}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})===P)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}const t=((t,e)=>{const r={};for(const o in e)o in B||o in U||o in t||(r[o]=e[o]);return r})(this.request,this._options);return!1===this._options.timeout?this._options.fetch(this.request.clone(),t):async function(t,e,r,o){return new Promise(((s,n)=>{const a=setTimeout((()=>{r&&r.abort(),n(new v(t))}),o.timeout);o.fetch(t,e).then(s).catch(n).then((()=>{clearTimeout(a)}))}))}(this.request.clone(),t,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 $=t=>{const e=(e,r)=>D.create(e,k(t,r));for(const r of O)e[r]=(e,o)=>D.create(e,k(t,o,{method:r}));return e.create=t=>$(k(t)),e.extend=e=>$(k(t,e)),e.stop=P,e},L=$(),J={list:[],keys:[],locs:[],loading:!1,solved:!1,error:void 0,pick:void 0,data:void 0},{state:I}=(()=>{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)))}}})(J,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})(),W=new Map([["row",new Map],["column",new Map],["box",new Map]]),X=["1","2","3","4","5","6","7","8","9"],Z=t=>{if(void 0!==t&&t.indx!=I.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)=>{W.get(r).get(e).forEach((e=>{e!==t&&n.add(e)}))})),Array.from(n)})(r,o,s,n),i=e?[]:(t=>{const{list:e}=I,r=new Set;return t.map((t=>{const{key:o}=e[t];"."!=o&&r.add(o)})),X.filter((t=>!r.has(t)))})(a);I.pick=r,I.keys=i,I.locs=a}else I.pick=void 0,I.keys=[],I.locs=[];Y(I.pick)};let F;const K={netlify:"/.netlify/functions",vercel:"https://sudoku-rust-api.vercel.app/api"},V=t=>{f(t)},Y=t=>{p(t)},G=(t=!1)=>{I.list=[],I.keys=[],I.locs=[],I.loading=t,I.solved=!1,I.error=void 0,I.pick=void 0,I.data=void 0},Q=(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=W.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),I.data=t,I.list=a}else I.data=void 0,I.list=[]})({puzzle:r,ref:o})},tt=t=>{I.list=[...t],t.length=0},et={initApp:t=>{(t=>{const e=(t=>{const e=Object.keys(K).includes(t)?t:"vercel";return K[e]})(t);F=L.extend({hooks:{beforeRequest:[t=>{t.headers.set("X-Requested-With","ky"),t.headers.set("X-Custom-Header","foobar")}]},prefixUrl:e,timeout:1e4})})(t),G();const e=c(a),r=u();if(e&&(Q(e,!1),r>=0)){const{list:t}=I;Z(t[r])}},refresh:async()=>{G(!0),V([]),Y(I.pick);try{const t=await F.get("puzzle").json();Q(t)}catch(t){const{message:e}=t;console.log("-- ",e),console.log(t),I.error=e}finally{I.loading=!1}},select:t=>{Z(t)},check:()=>{const{list:t}=I,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;V(o?e:[]),r>0?tt(t):81===n&&(I.solved=!0)},input:t=>{const{pick:e,list:r}=I;r[e].key=t,tt(r)}},rt=(...t)=>t.filter(Boolean).join(" "),ot=e=>{const r=e.hex||"currentColor",o=e.label||"loading...",s=e.size||24;return t("svg",{class:rt(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"}))},st=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?ot:s,{class:"mr-2"}),o?t("label",{class:"mr-1 font-bold"},o,":"):"",t("label",{class:"italic"},r))},nt=()=>{const{solved:e,loading:r,error:o}=I;return t("div",{class:"flex flex-col"},r||o||e?"":t(st,{message:"Welcome, are you ready to play?..."}),r?t(st,{message:"Loading...",spinner:!0}):"",o?t(st,{message:o,salute:"ERROR"}):"",e?t(st,{message:"You solved the puzzle!!"}):"")},at=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"}))},it="eswat2",lt=()=>t("a",{class:"absolute right-0 top-0 text-clrs-gray hover:text-clrs-navy",href:"https://eswat2.dev","aria-label":it,target:"blank",title:it},t(at,{label:it})),ct=(e,r)=>t("h1",{class:rt("text-center uppercase text-clrs-red","mb-11 ml-0 mr-0 mt-11","text-6xl font-thin")},r),dt=e=>{const{label:r,callback:o,matched:s=!1}=e;return t("button",{class:rt("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)},ht=()=>{const{keys:e,list:r,pick:o,solved:s}=I,n=t=>()=>{et.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(dt,{label:"x",callback:n(".")}),a.map((e=>t(dt,{label:e,callback:n(e),matched:i.key===e}))))},ft=[2,5,11,14,20,23,29,32,38,41,47,50,56,59,65,68,74,77],ut=ft.map((t=>t+1)),pt=[18,19,20,21,22,23,24,25,26,45,46,47,48,49,50,51,52,53],bt=pt.map((t=>t+9)),gt=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:rt(`cell-${l}`,ft.includes(l)?"border-xbr-clrs-navy":"",ut.includes(l)?"border-xbl-clrs-navy":"",pt.includes(l)?"border-xbb-clrs-navy":"",bt.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||et.select(t)})(r,n)},c)},wt=()=>{const{list:e,pick:r,locs:o,solved:s}=I;return t("div",{class:rt("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(gt,{cell:e,focus:i,selected:a,solved:s})})))},mt=()=>t("label",{class:"ml-auto align-top text-xs italic text-clrs-slate4"},"Tailwind ","3.3.5"),yt=t=>()=>{t.refresh()},xt=t=>()=>{t.check()},vt=()=>{const{list:e,solved:r}=I;return t("div",{class:"flex flex-row"},t(dt,{label:g,callback:yt(et)}),81!==e.length||r?"":t(dt,{label:b,callback:xt(et)}),t(mt,null))},Ct=class{constructor(t){o(this,t),this.tag="proto-sudoku",this.platform="vercel"}componentDidLoad(){et.initApp(this.platform)}render(){return t("div",{id:"app",class:"ds1-main relative max-w-min p-0.5"},t(lt,null),t(ct,null,"Sudoku"),t(wt,null),t(ht,null),t("hr",{class:"ml-0 mr-0"}),t(vt,null),t(nt,null))}};Ct.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{Ct as proto_sudoku}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
let n,t,e=!1,l=null,o=!1;const s="slot-fb{display:contents}slot-fb[hidden]{display:none}",i={},r=n=>"object"==(n=typeof n)||"function"===n;function c(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 u=(n,t,...e)=>{let l=null,o=!1,s=!1;const i=[],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&&!r(l))&&(l+=""),o&&s?i[i.length-1].t+=l:i.push(o?a(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,i,d);const u=a(n,null);return u.l=t,i.length>0&&(u.o=i),u},a=(n,t)=>({i:0,u:n,t,p:null,o:null,l:null}),f={},d={forEach:(n,t)=>n.map(p).forEach(t),map:(n,t)=>n.map(p).map(t).map(y)},p=n=>({vattrs:n.l,vchildren:n.o,vkey:n.h,vname:n.v,vtag:n.u,vtext:n.t}),y=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),u(n.vtag,t,...n.vchildren||[])}const t=a(n.vtag,n.vtext);return t.l=n.vattrs,t.o=n.vchildren,t.h=n.vkey,t.v=n.vname,t},h=new WeakMap,v=n=>"sc-"+n.m,m=(n,t,e,l,o,s)=>{if(e!==l){let i=J(n,t),c=t.toLowerCase();if("class"===t){const t=n.classList,o=w(e),s=w(l);t.remove(...o.filter((n=>n&&!s.includes(n)))),t.add(...s.filter((n=>n&&!o.includes(n))))}else if(i||"o"!==t[0]||"n"!==t[1]){const c=r(l);if((i||c&&null!==l)&&!o)try{if(n.tagName.includes("-"))n[t]=l;else{const o=null==l?"":l;"list"===t?i=!1:null!=e&&n[t]==o||(n[t]=o)}}catch(n){}null==l||!1===l?!1===l&&""!==n.getAttribute(t)||n.removeAttribute(t):(!i||4&s||o)&&!c&&n.setAttribute(t,l=!0===l?"":l)}else if(t="-"===t[2]?t.slice(3):J(Z,c)?c.slice(2):c[2]+t.slice(3),e||l){const o=t.endsWith(b);t=t.replace(g,""),e&&tn.rel(n,t,e,o),l&&tn.ael(n,t,l,o)}}},$=/\s/,w=n=>n?n.split($):[],b="Capture",g=RegExp(b+"$"),j=(n,t,e,l)=>{const o=11===t.p.nodeType&&t.p.host?t.p.host:t.p,s=n&&n.l||i,r=t.l||i;for(l in s)l in r||m(o,l,s[l],void 0,e,t.i);for(l in r)m(o,l,s[l],r[l],e,t.i)},S=(t,l,o)=>{const s=l.o[o];let i,r,c=0;if(null!==s.t)i=s.p=nn.createTextNode(s.t);else{if(e||(e="svg"===s.u),i=s.p=nn.createElementNS(e?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",s.u),e&&"foreignObject"===s.u&&(e=!1),j(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=S(t,s,c),r&&i.appendChild(r);"svg"===s.u?e=!1:"foreignObject"===i.tagName&&(e=!0)}return i},O=(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=S(null,l,s),r&&(o[s].p=r,c.insertBefore(r,e)))},k=(n,t,e)=>{for(let l=t;l<=e;++l){const t=n[l];if(t){const n=t.p;n&&n.remove()}}},M=(n,t)=>n.u===t.u,C=(n,t)=>{const l=t.p=n.p,o=n.o,s=t.o,i=t.u,r=t.t;null===r?(e="svg"===i||"foreignObject"!==i&&e,j(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]:M(c,f)?(C(c,f),c=t[++s],f=l[++i]):M(u,d)?(C(u,d),u=t[--r],d=l[--a]):M(c,d)?(C(c,d),n.insertBefore(c.p,u.p.nextSibling),c=t[++s],d=l[--a]):M(u,f)?(C(u,f),n.insertBefore(u.p,c.p),u=t[--r],f=l[++i]):(o=S(t&&t[i],e,i),f=l[++i],o&&c.p.parentNode.insertBefore(o,c.p));s>r?O(n,null==l[a+1]?null:l[a+1].p,e,l,i,a):i>a&&k(t,s,r)})(l,o,t,s):null!==s?(null!==n.t&&(l.textContent=""),O(l,null,t,s,0,s.length-1)):null!==o&&k(o,0,o.length-1),e&&"svg"===i&&(e=!1)):n.t!==r&&(l.data=r)},x=(n,t)=>{t&&!n.$&&t["s-p"]&&t["s-p"].push(new Promise((t=>n.$=t)))},E=(n,t)=>{if(n.i|=16,!(4&n.i))return x(n,n.j),fn((()=>P(n,t)));n.i|=512},P=(n,t)=>{const e=n.S;return A(void 0,(()=>N(n,e,t)))},A=(n,t)=>L(n)?n.then(t):t(),L=n=>n instanceof Promise||n&&n.then&&"function"==typeof n.then,N=async(n,t,e)=>{var l;const o=n.$hostElement$,i=o["s-rc"];e&&(n=>{const t=n.O,e=n.$hostElement$,l=t.i,o=((n,t)=>{var e;const l=v(t),o=Y.get(l);if(n=11===n.nodeType?n:nn,o)if("string"==typeof o){let i,r=h.get(n=n.head||n);if(r||h.set(n,r=new Set),!r.has(l)){{i=nn.createElement("style"),i.innerHTML=o;const t=null!==(e=tn.k)&&void 0!==e?e:c(nn);null!=t&&i.setAttribute("nonce",t),n.insertBefore(i,n.querySelector("link"))}4&t.i&&(i.innerHTML+=s),r&&r.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);R(n,t,o,e),i&&(i.map((n=>n())),o["s-rc"]=void 0);{const t=null!==(l=o["s-p"])&&void 0!==l?l:[],e=()=>U(n);0===t.length?e():(Promise.all(t).then(e),n.i|=4,t.length=0)}},R=(e,o,s,i)=>{try{l=o,o=o.render(),e.i&=-17,e.i|=2,((e,l,o=!1)=>{const s=e.$hostElement$,i=e.M||a(null,null),r=(n=>n&&n.u===f)(l)?l:u(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.p=i.p=s.shadowRoot||s,n=s["s-sc"],C(i,r)})(e,o,i)}catch(n){K(n,e.$hostElement$)}return l=null,null},T=()=>l,U=n=>{const t=n.$hostElement$,e=n.S,l=n.j;64&n.i||(n.i|=64,F(t),D(e,"componentDidLoad"),n.C(t),l||q()),n.$&&(n.$(),n.$=void 0),512&n.i&&an((()=>E(n,!1))),n.i&=-517},W=n=>{{const t=B(n),e=t.$hostElement$.isConnected;return e&&2==(18&t.i)&&E(t,!1),e}},q=()=>{F(nn.documentElement),an((()=>(n=>{const t=tn.ce("appload",{detail:{namespace:"proto-sudoku-wc"}});return n.dispatchEvent(t),t})(Z)))},D=(n,t,e)=>{if(n&&n[t])try{return n[t](e)}catch(n){K(n)}},F=n=>n.classList.add("hydrated"),H=(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)=>B(this).A.get(t))(0,n)},set(e){((n,t,e,l)=>{const o=B(n),s=o.A.get(t),i=o.i,c=o.S;e=((n,t)=>null==n||r(n)?n:1&t?n+"":n)(e,l.P[t][0]),8&i&&void 0!==s||e===s||Number.isNaN(s)&&Number.isNaN(e)||(o.A.set(t,e),c&&2==(18&i)&&E(o,!1))})(this,n,e,t)},configurable:!0,enumerable:!0})})),1&e){const e=new Map;s.attributeChangedCallback=function(n,l,o){tn.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=B(this),s=null==e?void 0:e.i;if(!(8&s)&&128&s&&o!==l){const s=e.S,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},V=(n,t={})=>{var e;const l=[],o=t.exclude||[],i=Z.customElements,r=nn.head,u=r.querySelector("meta[charset]"),a=nn.createElement("style"),f=[];let d,p=!0;Object.assign(tn,t),tn.N=new URL(t.resourcesUrl||"./",nn.baseURI).href;let y=!1;if(n.map((n=>{n[1].map((t=>{const e={i:t[0],m:t[1],P:t[2],R:t[3]};4&e.i&&(y=!0),e.P=t[2];const s=e.m,r=class extends HTMLElement{constructor(n){super(n),I(n=this,e),1&e.i&&n.attachShadow({mode:"open"})}connectedCallback(){d&&(clearTimeout(d),d=null),p?f.push(this):tn.jmp((()=>(n=>{if(0==(1&tn.i)){const t=B(n),e=t.O,l=()=>{};if(1&t.i)(null==t?void 0:t.S)||(null==t?void 0:t.T)&&t.T.then((()=>{}));else{t.i|=1;{let e=n;for(;e=e.parentNode||e.host;)if(e["s-p"]){x(t,t.j=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)=>{let l;if(0==(32&t.i)){t.i|=32;{if(l=X(e),l.then){const n=()=>{};l=await l,n()}l.isProxied||(H(l,e,2),l.isProxied=!0);const n=()=>{};t.i|=8;try{new l(t)}catch(n){K(n)}t.i&=-9,n()}if(l.style){let n=l.style;const t=v(e);if(!Y.has(t)){const l=()=>{};((n,t,e)=>{let l=Y.get(n);ln&&e?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,Y.set(n,l)})(t,n,!!(1&e.i)),l()}}}const o=t.j,s=()=>E(t,!0);o&&o["s-rc"]?o["s-rc"].push(s):s()})(0,t,e)}l()}})(this)))}disconnectedCallback(){tn.jmp((()=>(async()=>{if(0==(1&tn.i)){const n=B(this);(null==n?void 0:n.S)||(null==n?void 0:n.T)&&n.T.then((()=>{}))}})()))}componentOnReady(){return B(this).T}};e.U=n[0],o.includes(s)||i.get(s)||(l.push(s),i.define(s,H(r,e,1)))}))})),y&&(a.innerHTML+=s),a.innerHTML+=l+"{visibility:hidden}.hydrated{visibility:inherit}",a.innerHTML.length){a.setAttribute("data-styles",""),r.insertBefore(a,u?u.nextSibling:r.firstChild);const n=null!==(e=tn.k)&&void 0!==e?e:c(nn);null!=n&&a.setAttribute("nonce",n)}p=!1,f.length?f.map((n=>n.connectedCallback())):tn.jmp((()=>d=setTimeout(q,30)))},_=n=>tn.k=n,z=new WeakMap,B=n=>z.get(n),G=(n,t)=>z.set(t.S=n,t),I=(n,t)=>{const e={i:0,$hostElement$:n,O:t,A:new Map};return e.T=new Promise((n=>e.C=n)),n["s-p"]=[],n["s-rc"]=[],z.set(n,e)},J=(n,t)=>t in n,K=(n,t)=>(0,console.error)(n,t),Q=new Map,X=n=>{const t=n.m.replace(/-/g,"_"),e=n.U,l=Q.get(e);return l?l[t]:import(`./${e}.entry.js`).then((n=>(Q.set(e,n),n[t])),K)
|
2
|
+
/*!__STENCIL_STATIC_IMPORT_SWITCH__*/},Y=new Map,Z="undefined"!=typeof window?window:{},nn=Z.document||{head:{}},tn={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)},en=n=>Promise.resolve(n),ln=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(n){}return!1})(),on=[],sn=[],rn=(n,t)=>e=>{n.push(e),o||(o=!0,t&&4&tn.i?an(un):tn.raf(un))},cn=n=>{for(let t=0;t<n.length;t++)try{n[t](performance.now())}catch(n){K(n)}n.length=0},un=()=>{cn(on),cn(sn),(o=on.length>0)&&tn.raf(un)},an=n=>en().then(n),fn=rn(sn,!0);export{V as b,W as f,T as g,u as h,en as p,G as r,_ as s}
|
@@ -1 +1 @@
|
|
1
|
-
import{p as
|
1
|
+
import{p as a,b as o}from"./p-4ab7e5a2.js";export{s as setNonce}from"./p-4ab7e5a2.js";(()=>{const o=import.meta.url,t={};return""!==o&&(t.resourcesUrl=new URL(".",o).href),a(t)})().then((a=>o([["p-4a14cce4",[[1,"proto-sudoku",{tag:[1],platform:[1]}]]]],a)));
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "proto-sudoku-wc",
|
3
|
-
"version": "0.0.
|
3
|
+
"version": "0.0.689",
|
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,10 +27,10 @@
|
|
27
27
|
"format": "prettier --write src"
|
28
28
|
},
|
29
29
|
"dependencies": {
|
30
|
-
"@stencil/core": "4.7.
|
30
|
+
"@stencil/core": "4.7.2",
|
31
31
|
"@stencil/store": "2.0.11",
|
32
32
|
"ky": "1.1.3",
|
33
|
-
"proto-tailwindcss-clrs": "0.0.
|
33
|
+
"proto-tailwindcss-clrs": "0.0.287",
|
34
34
|
"tailwindcss": "3.3.5"
|
35
35
|
},
|
36
36
|
"devDependencies": {
|
@@ -40,7 +40,7 @@
|
|
40
40
|
"cssnano": "6.0.1",
|
41
41
|
"eslint": "8.53.0",
|
42
42
|
"postcss": "8.4.31",
|
43
|
-
"prettier": "3.0
|
43
|
+
"prettier": "3.1.0",
|
44
44
|
"prettier-plugin-tailwindcss": "0.5.7",
|
45
45
|
"typescript": "5.2.2"
|
46
46
|
},
|
@@ -1,2 +0,0 @@
|
|
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,p:null,o:null,l:null}),a={},f={forEach:(n,t)=>n.map(d).forEach(t),map:(n,t)=>n.map(d).map(t).map(p)},d=n=>({vattrs:n.l,vchildren:n.o,vkey:n.v,vname:n.h,vtag:n.u,vtext:n.t}),p=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.v=n.vkey,t.h=n.vname,t},v=new WeakMap,y=n=>"sc-"+n.m,h=(n,t,e,l,o,s)=>{if(e!==l){let r=I(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 if(t="-"===t[2]?t.slice(3):I(Y,c)?c.slice(2):c[2]+t.slice(3),e||l){const o=t.endsWith(w);t=t.replace(b,""),e&&nn.rel(n,t,e,o),l&&nn.ael(n,t,l,o)}}},m=/\s/,$=n=>n?n.split(m):[],w="Capture",b=RegExp(w+"$"),g=(n,t,e,l)=>{const o=11===t.p.nodeType&&t.p.host?t.p.host:t.p,i=n&&n.l||s,r=t.l||s;for(l in i)l in r||h(o,l,i[l],void 0,e,t.i);for(l in r)h(o,l,i[l],r[l],e,t.i)},j=(t,l,o)=>{const s=l.o[o];let i,r,c=0;if(null!==s.t)i=s.p=Z.createTextNode(s.t);else{if(e||(e="svg"===s.u),i=s.p=Z.createElementNS(e?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",s.u),e&&"foreignObject"===s.u&&(e=!1),g(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=j(t,s,c),r&&i.appendChild(r);"svg"===s.u?e=!1:"foreignObject"===i.tagName&&(e=!0)}return i},S=(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=j(null,l,s),r&&(o[s].p=r,c.insertBefore(r,e)))},O=(n,t,e)=>{for(let l=t;l<=e;++l){const t=n[l];if(t){const n=t.p;n&&n.remove()}}},k=(n,t)=>n.u===t.u,M=(n,t)=>{const l=t.p=n.p,o=n.o,s=t.o,i=t.u,r=t.t;null===r?(e="svg"===i||"foreignObject"!==i&&e,g(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]:k(c,f)?(M(c,f),c=t[++s],f=l[++i]):k(u,d)?(M(u,d),u=t[--r],d=l[--a]):k(c,d)?(M(c,d),n.insertBefore(c.p,u.p.nextSibling),c=t[++s],d=l[--a]):k(u,f)?(M(u,f),n.insertBefore(u.p,c.p),u=t[--r],f=l[++i]):(o=j(t&&t[i],e,i),f=l[++i],o&&c.p.parentNode.insertBefore(o,c.p));s>r?S(n,null==l[a+1]?null:l[a+1].p,e,l,i,a):i>a&&O(t,s,r)})(l,o,t,s):null!==s?(null!==n.t&&(l.textContent=""),S(l,null,t,s,0,s.length-1)):null!==o&&O(o,0,o.length-1),e&&"svg"===i&&(e=!1)):n.t!==r&&(l.data=r)},C=(n,t)=>{t&&!n.$&&t["s-p"]&&t["s-p"].push(new Promise((t=>n.$=t)))},x=(n,t)=>{if(n.i|=16,!(4&n.i))return C(n,n.j),an((()=>E(n,t)));n.i|=512},E=(n,t)=>{const e=n.S;return P(void 0,(()=>L(n,e,t)))},P=(n,t)=>A(n)?n.then(t):t(),A=n=>n instanceof Promise||n&&n.then&&"function"==typeof n.then,L=async(n,t,e)=>{var l;const o=n.$hostElement$,s=o["s-rc"];e&&(n=>{const t=n.O,e=n.$hostElement$,l=t.i,o=((n,t)=>{var e;const l=y(t),o=X.get(l);if(n=11===n.nodeType?n:Z,o)if("string"==typeof o){let t,s=v.get(n=n.head||n);if(s||v.set(n,s=new Set),!s.has(l)){{t=Z.createElement("style"),t.innerHTML=o;const l=null!==(e=nn.k)&&void 0!==e?e:r(Z);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);N(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=()=>T(n);0===t.length?e():(Promise.all(t).then(e),n.i|=4,t.length=0)}},N=(e,o,s,i)=>{try{l=o,o=o.render(),e.i&=-17,e.i|=2,((e,l,o=!1)=>{const s=e.$hostElement$,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.p=i.p=s.shadowRoot||s,n=s["s-sc"],M(i,r)})(e,o,i)}catch(n){J(n,e.$hostElement$)}return l=null,null},R=()=>l,T=n=>{const t=n.$hostElement$,e=n.S,l=n.j;64&n.i||(n.i|=64,D(t),q(e,"componentDidLoad"),n.C(t),l||W()),n.$&&(n.$(),n.$=void 0),512&n.i&&un((()=>x(n,!1))),n.i&=-517},U=n=>{{const t=z(n),e=t.$hostElement$.isConnected;return e&&2==(18&t.i)&&x(t,!1),e}},W=()=>{D(Z.documentElement),un((()=>(n=>{const t=nn.ce("appload",{detail:{namespace:"proto-sudoku-wc"}});return n.dispatchEvent(t),t})(Y)))},q=(n,t,e)=>{if(n&&n[t])try{return n[t](e)}catch(n){J(n)}},D=n=>n.classList.add("hydrated"),F=(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)=>z(this).A.get(t))(0,n)},set(e){((n,t,e,l)=>{const o=z(n),s=o.A.get(t),r=o.i,c=o.S;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)&&x(o,!1))})(this,n,e,t)},configurable:!0,enumerable:!0})})),1&e){const e=new Map;s.attributeChangedCallback=function(n,l,o){nn.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=z(this),s=null==e?void 0:e.i;if(!(8&s)&&128&s&&o!==l){const s=e.S,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},H=(n,t={})=>{var e;const l=[],o=t.exclude||[],s=Y.customElements,i=Z.head,c=i.querySelector("meta[charset]"),u=Z.createElement("style"),a=[];let f,d=!0;Object.assign(nn,t),nn.N=new URL(t.resourcesUrl||"./",Z.baseURI).href,n.map((n=>{n[1].map((t=>{const e={i:t[0],m:t[1],P:t[2],R:t[3]};e.P=t[2];const i=e.m,r=class extends HTMLElement{constructor(n){super(n),G(n=this,e),1&e.i&&n.attachShadow({mode:"open"})}connectedCallback(){f&&(clearTimeout(f),f=null),d?a.push(this):nn.jmp((()=>(n=>{if(0==(1&nn.i)){const t=z(n),e=t.O,l=()=>{};if(1&t.i)(null==t?void 0:t.S)||(null==t?void 0:t.T)&&t.T.then((()=>{}));else{t.i|=1;{let e=n;for(;e=e.parentNode||e.host;)if(e["s-p"]){C(t,t.j=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)=>{let l;if(0==(32&t.i)){t.i|=32;{if(l=Q(e),l.then){const n=()=>{};l=await l,n()}l.isProxied||(F(l,e,2),l.isProxied=!0);const n=()=>{};t.i|=8;try{new l(t)}catch(n){J(n)}t.i&=-9,n()}if(l.style){let n=l.style;const t=y(e);if(!X.has(t)){const l=()=>{};((n,t,e)=>{let l=X.get(n);en&&e?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,X.set(n,l)})(t,n,!!(1&e.i)),l()}}}const o=t.j,s=()=>x(t,!0);o&&o["s-rc"]?o["s-rc"].push(s):s()})(0,t,e)}l()}})(this)))}disconnectedCallback(){nn.jmp((()=>(async()=>{if(0==(1&nn.i)){const n=z(this);(null==n?void 0:n.S)||(null==n?void 0:n.T)&&n.T.then((()=>{}))}})()))}componentOnReady(){return z(this).T}};e.U=n[0],o.includes(i)||s.get(i)||(l.push(i),s.define(i,F(r,e,1)))}))}));{u.innerHTML=l+"{visibility:hidden}.hydrated{visibility:inherit}",u.setAttribute("data-styles","");const n=null!==(e=nn.k)&&void 0!==e?e:r(Z);null!=n&&u.setAttribute("nonce",n),i.insertBefore(u,c?c.nextSibling:i.firstChild)}d=!1,a.length?a.map((n=>n.connectedCallback())):nn.jmp((()=>f=setTimeout(W,30)))},V=n=>nn.k=n,_=new WeakMap,z=n=>_.get(n),B=(n,t)=>_.set(t.S=n,t),G=(n,t)=>{const e={i:0,$hostElement$:n,O:t,A:new Map};return e.T=new Promise((n=>e.C=n)),n["s-p"]=[],n["s-rc"]=[],_.set(n,e)},I=(n,t)=>t in n,J=(n,t)=>(0,console.error)(n,t),K=new Map,Q=n=>{const t=n.m.replace(/-/g,"_"),e=n.U,l=K.get(e);return l?l[t]:import(`./${e}.entry.js`).then((n=>(K.set(e,n),n[t])),J)
|
2
|
-
/*!__STENCIL_STATIC_IMPORT_SWITCH__*/},X=new Map,Y="undefined"!=typeof window?window:{},Z=Y.document||{head:{}},nn={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)},tn=n=>Promise.resolve(n),en=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(n){}return!1})(),ln=[],on=[],sn=(n,t)=>e=>{n.push(e),o||(o=!0,t&&4&nn.i?un(cn):nn.raf(cn))},rn=n=>{for(let t=0;t<n.length;t++)try{n[t](performance.now())}catch(n){J(n)}n.length=0},cn=()=>{rn(ln),rn(on),(o=ln.length>0)&&nn.raf(cn)},un=n=>tn().then(n),an=sn(on,!0);export{H as b,U as f,R as g,c as h,tn as p,B as r,V as s}
|