narrat 0.8.3 → 0.8.4
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/LICENSE +21 -21
- package/README.md +30 -30
- package/lib/index.esm.js +64 -40
- package/lib/index.js +64 -40
- package/lib/utils/images-loader.d.ts +1 -1
- package/lib/utils/logger.d.ts +8 -0
- package/package.json +82 -82
- package/CHANGELOG.md +0 -133
package/lib/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Version: 0.8.
|
|
1
|
+
// Version: 0.8.4 - June 4, 2022 18:58:52
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
@@ -34,7 +34,7 @@ function styleInject(css, ref) {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
var css_248z = "/*! @import */\n\n/*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\n:root {\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'] {\n -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nbutton {\n background-color: transparent;\n background-image: none;\n}\n\n/**\n * Work around a Firefox/IE bug where the transparent `button` background\n * results in a loss of the default `button` focus styles.\n */\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nol,\nul {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n * sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n * to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 1 */\n line-height: 1.5; /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n font-family: inherit;\n line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n * We used to set this in the html element and inherit from\n * the parent element for everything else. This caused issues\n * in shadow-dom-enhanced elements like <details> where the content\n * is wrapped by a div with box-sizing set to `content-box`.\n *\n * https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n * By default, the way the browser specifies that an element should have no\n * border is by setting it's border-style to `none` in the user-agent\n * stylesheet.\n *\n * In order to easily add borders to elements by just setting the `border-width`\n * property, we change the default border-style for all elements to `solid`, and\n * use border-width to hide them instead. This way our `border` utilities only\n * need to set the `border-width` property instead of the entire `border`\n * shorthand, making our border utilities much more straightforward to compose.\n *\n * https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n border-style: solid;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n color: #9ca3af;\n}\n\nbutton {\n cursor: pointer;\n}\n\ntable {\n border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n padding: 0;\n line-height: inherit;\n color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * Make replaced elements `display: block` by default as that's\n * the behavior you want almost all of the time. Inspired by\n * CSS Remedy, with `svg` added as well.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their instrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n.container {\n width: 100%;\n}\n\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n\n.bg-gray-800 {\n --tw-bg-opacity: 1;\n background-color: rgba(31, 41, 55, var(--tw-bg-opacity));\n}\n\n.border {\n border-width: 1px;\n}\n\n.flex {\n display: flex;\n}\n\n.table {\n display: table;\n}\n\n.grid {\n display: grid;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.flex-shrink {\n flex-shrink: 1;\n}\n\n.list-disc {\n list-style-type: disc;\n}\n\n.absolute {\n position: absolute;\n}\n\n.resize {\n resize: both;\n}\n\n* {\n --tw-shadow: 0 0 #0000;\n}\n\n* {\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgba(59, 130, 246, 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n}\n\n.table-auto {\n table-layout: auto;\n}\n\n.line-through {\n text-decoration: line-through;\n}\n\n.w-full {\n width: 100%;\n}\n\n.gap-4 {\n gap: 1rem;\n}\n\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n.transform {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.transition {\n transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n@-webkit-keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n@-webkit-keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@-webkit-keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@-webkit-keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\n.list-item {\n display: inline-block;\n margin-right: 10px;\n}\n\n.list-enter-active,\n.list-leave-active {\n transition: all 0.3s ease;\n}\n\n/* .list-move {\n transition: transform 0.3s ease;\n} */\n\n.list-enter-from,\n.list-leave-to {\n opacity: 0;\n transform: translateX(300px);\n}\n\n.notification-item {\n display: inline-block;\n margin-right: 10px;\n}\n\n.notification-enter-active,\n.notification-leave-active {\n transition: all 0.3s ease;\n}\n\n/* .notification-move {\n transition: transform 0.3s ease;\n} */\n\n.notification-enter-from,\n.notification-leave-to {\n opacity: 0;\n transform: translateY(-300px);\n}\n\n.fade-enter-active,\n.fade-leave-active {\n transition: opacity 0.3s ease;\n}\n\n.fade-enter-from,\n.fade-leave-to {\n opacity: 0;\n}\n\n.fade-in-enter-active {\n transition: opacity 0.1s ease;\n}\n\n.fade-in-enter-from {\n opacity: 0;\n}\n\nbody {\n padding: 0;\n margin: 0;\n font-family: Arial, sans-serif;\n}\n\nselect {\n background-color: grey;\n}\n\n.button {\n background-color: #72080f;\n color: white;\n border-radius: 15px;\n padding: 10px;\n font-weight: 800;\n font-size: 16px;\n margin: 10px;\n}\n\na {\n color: pink;\n text-decoration: underline;\n}\n\nth,\ntd {\n padding: 4px;\n border: 1px solid white;\n text-align: center;\n}\n\n#game-holder {\n width: 100vw;\n height: 100vh;\n padding: 0;\n margin: 0;\n top: 0;\n left: 0;\n background-color: black;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: -webkit-fill-available;\n}\n\n.title {\n font-size: 30px;\n font-weight: 700;\n text-align: center;\n}\n\n.container {\n padding: 20px;\n}\n\n@media (min-width: 640px) {\n}\n\n@media (min-width: 768px) {\n}\n\n@media (min-width: 1024px) {\n}\n\n@media (min-width: 1280px) {\n}\n\n@media (min-width: 1536px) {\n}\n";
|
|
37
|
+
var css_248z = "/*! @import */\n\n/*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\n:root {\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'] {\n -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nbutton {\n background-color: transparent;\n background-image: none;\n}\n\n/**\n * Work around a Firefox/IE bug where the transparent `button` background\n * results in a loss of the default `button` focus styles.\n */\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nol,\nul {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n * sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n * to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 1 */\n line-height: 1.5; /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n font-family: inherit;\n line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n * We used to set this in the html element and inherit from\n * the parent element for everything else. This caused issues\n * in shadow-dom-enhanced elements like <details> where the content\n * is wrapped by a div with box-sizing set to `content-box`.\n *\n * https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n * By default, the way the browser specifies that an element should have no\n * border is by setting it's border-style to `none` in the user-agent\n * stylesheet.\n *\n * In order to easily add borders to elements by just setting the `border-width`\n * property, we change the default border-style for all elements to `solid`, and\n * use border-width to hide them instead. This way our `border` utilities only\n * need to set the `border-width` property instead of the entire `border`\n * shorthand, making our border utilities much more straightforward to compose.\n *\n * https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n border-style: solid;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n color: #9ca3af;\n}\n\nbutton {\n cursor: pointer;\n}\n\ntable {\n border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n padding: 0;\n line-height: inherit;\n color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * Make replaced elements `display: block` by default as that's\n * the behavior you want almost all of the time. Inspired by\n * CSS Remedy, with `svg` added as well.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their instrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n.container {\n width: 100%;\n}\n\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n\n.bg-gray-800 {\n --tw-bg-opacity: 1;\n background-color: rgba(31, 41, 55, var(--tw-bg-opacity));\n}\n\n.border {\n border-width: 1px;\n}\n\n.flex {\n display: flex;\n}\n\n.table {\n display: table;\n}\n\n.grid {\n display: grid;\n}\n\n.flex-col {\n flex-direction: column;\n}\n\n.flex-grow {\n flex-grow: 1;\n}\n\n.flex-shrink {\n flex-shrink: 1;\n}\n\n.list-disc {\n list-style-type: disc;\n}\n\n.absolute {\n position: absolute;\n}\n\n.resize {\n resize: both;\n}\n\n* {\n --tw-shadow: 0 0 #0000;\n}\n\n* {\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgba(59, 130, 246, 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n}\n\n.table-auto {\n table-layout: auto;\n}\n\n.line-through {\n text-decoration: line-through;\n}\n\n.w-full {\n width: 100%;\n}\n\n.gap-4 {\n gap: 1rem;\n}\n\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n\n.transform {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n\n.transition {\n transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n@-webkit-keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n@-webkit-keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@-webkit-keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@-webkit-keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\n.list-item {\n display: inline-block;\n margin-right: 10px;\n}\n\n.list-enter-active,\r\n.list-leave-active {\n transition: all 0.3s ease;\n}\n\n/* .list-move {\r\n transition: transform 0.3s ease;\r\n} */\n\n.list-enter-from,\r\n.list-leave-to {\n opacity: 0;\n transform: translateX(300px);\n}\n\n.notification-item {\n display: inline-block;\n margin-right: 10px;\n}\n\n.notification-enter-active,\r\n.notification-leave-active {\n transition: all 0.3s ease;\n}\n\n/* .notification-move {\r\n transition: transform 0.3s ease;\r\n} */\n\n.notification-enter-from,\r\n.notification-leave-to {\n opacity: 0;\n transform: translateY(-300px);\n}\n\n.fade-enter-active,\r\n.fade-leave-active {\n transition: opacity 0.3s ease;\n}\n\n.fade-enter-from,\r\n.fade-leave-to {\n opacity: 0;\n}\n\n.fade-in-enter-active {\n transition: opacity 0.1s ease;\n}\n\n.fade-in-enter-from {\n opacity: 0;\n}\n\nbody {\n padding: 0;\n margin: 0;\n font-family: Arial, sans-serif;\n}\n\nselect {\n background-color: grey;\n}\n\n.button {\n background-color: #72080f;\n color: white;\n border-radius: 15px;\n padding: 10px;\n font-weight: 800;\n font-size: 16px;\n margin: 10px;\n}\n\na {\n color: pink;\n text-decoration: underline;\n}\n\nth,\r\ntd {\n padding: 4px;\n border: 1px solid white;\n text-align: center;\n}\n\n#game-holder {\n width: 100vw;\n height: 100vh;\n padding: 0;\n margin: 0;\n top: 0;\n left: 0;\n background-color: black;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: -webkit-fill-available;\n}\n\n.title {\n font-size: 30px;\n font-weight: 700;\n text-align: center;\n}\n\n.container {\n padding: 20px;\n}\n\n@media (min-width: 640px) {\n}\n\n@media (min-width: 768px) {\n}\n\n@media (min-width: 1024px) {\n}\n\n@media (min-width: 1280px) {\n}\n\n@media (min-width: 1536px) {\n}\r\n";
|
|
38
38
|
styleInject(css_248z);
|
|
39
39
|
|
|
40
40
|
const f=vue.ref([]),v=vue.ref(null),m=vue.ref(null),g=vue.ref(null),h=vue.reactive({current:""}),y=[],b=vue.ref(!1),k=vue.readonly(f),w=vue.readonly(v),M=vue.readonly(m),q=vue.readonly(g),x=vue.readonly(h),$=(e=w.value)=>{h.current=e;const t=k.value.findIndex((t=>t.name===e)),n=k.value.map((e=>e.name));for(let a=0;a<n.length;a++){if(a>0&&a<n.length-1){const e=n[a]+"Minus",r=n[a]+"Plus";h[e]=t<=a,h[r]=t>=a;}h[n[a]]=n[a]===e;}},V=(e=M.value)=>{h.orientation=e,h.isLandscape="landscape"===e,h.isPortrait="portrait"===e;},O=(e=q.value||"light")=>{h.theme=e,h.isDark="dark"===e,h.isLight="light"===e;};function j(e,t){if("undefined"==typeof window||!window.matchMedia)return !1;if("undefined"!=typeof window&&!window.matchMedia)return console.error("Vue3 Mq: No MatchMedia support detected in this browser. Responsive breakpoints not available."),!1;{b.value=!0;const n=window.matchMedia(e),a=({matches:e})=>{e&&t();};y.push({mql:n,cb:a});n.addEventListener&&"function"==typeof n.addEventListener?n.addEventListener("change",a):n.addListener(a),a(n);}}var L=Object.freeze({__proto__:null,[Symbol.toStringTag]:"Module",bootstrap5:{xs:0,sm:576,md:768,lg:992,xl:1200,xxl:1400},bootstrap4:{xs:0,sm:576,md:768,lg:992,xl:1200},bootstrap3:{xs:0,sm:768,md:992,lg:1200},vuetify:{xs:0,sm:600,md:960,lg:1264,xl:1904},tailwind:{xs:0,sm:640,md:768,lg:1024,xl:1280,xxl:1536},devices:{phone:0,tablet:768,laptop:1370,desktop:1906}});const T=e=>{if(!e||"object"!=typeof e)return !1;const t=[];for(let n in e){const a=parseFloat(e[n]);n&&"string"==typeof n?/^[^a-z]/i.test(n)||/[^a-zA-Z0-9_]/.test(n)?console.warn(`Vue3 Mq: "${n}" is an invalid breakpoint key. Breakpoint keys must start with a letter and contain only alphanumeric characters and underscores. Skipping.`):!a&&0!==a||isNaN(a)||a<0?console.warn(`Vue3 Mq: "${n}: ${e[n]}" is not a valid breakpoint. Breakpoints should be a number of zero or above. Skipping.`):t.push({name:n,min:a}):console.warn(`Vue3 Mq: Invalid or missing breakpoint key (${JSON.stringify(n)}). Skipping.`);}t.some((e=>0===e.min))||console.warn("Vue3 Mq: You have not declared a breakpoint with a minimum value of 0. There may be screen sizes to which Vue3Mq does not respond.");return new Set(t.map((e=>e.min))).size<t.length&&console.warn("Vue3 Mq: Your breakpoint configuration contains duplicate values. Behaviour may be unpredictable."),0!==t.length&&t.sort(((e,t)=>e.min-t.min))};function R({breakpoints:e,preset:t}){const n=(e=>{if("string"==typeof e&&L[e])return L[e];{const t=Object.keys(L);return console.error(`Vue3 Mq: "${e}" is not a valid preset. Available options are: ${t.join(", ")}`),!1}})(t),a=T(e);if(!1===n&&!a)throw new TypeError("Vue3 Mq: You must provide a valid preset, or valid breakpoint settings.");var r;r=a||T(n),f.value=r,function(){for(;y.length>0;){const e=y.shift();if(e&&"object"==typeof e){const{mql:t,cb:n}=e;t.addEventListener&&"function"==typeof t.addEventListener?t.removeEventListener("change",n):t.removeListener(n);}}}(),(()=>{const e=Object.keys(h);for(let t of e)delete h[t];$(),V(),O();})();const o=k.value.reduce(((e,t,n,a)=>{const r=`(min-width: ${t.min}px)`,o=n<a.length-1?`(max-width: ${a[n+1].min-1}px)`:null,i=r+(o?" and "+o:"");return Object.assign(e,{[t.name]:i})}),{});for(const i in o){j(o[i],(()=>{$(i);}));}["portrait","landscape"].forEach((e=>{j(`(orientation: ${e})`,(()=>{V(e);}));})),["light","dark"].forEach((e=>{j(`(prefers-color-scheme: ${e})`,(()=>{O(e);}));}));}var N={install:(e,{preset:t="bootstrap5",breakpoints:n,defaultBreakpoint:a,defaultOrientation:r="landscape",defaultTheme:o}={})=>{try{const l=!1===["landscape","portrait"].includes(s=r)?(console.error(`Vue3 Mq: "${s}" is not a valid default orientation. Reverting to unset value.`),null):s,u=((e=null)=>!1===["dark","light"].includes(e)&&null!==e?(console.error(`Vue3 Mq: "${e}" is not a valid default theme. Reverting to unset value.`),null):e)(o);i=a,v.value=i,(e=>{m.value=e;})(l),(e=>{g.value=e;})(u),e.provide("mq",x),e.provide("updateBreakpoints",R),R({breakpoints:n,preset:t});}catch(l){console.error(l);}var i,s;}};
|
|
@@ -243,7 +243,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
243
243
|
], 4))
|
|
244
244
|
}
|
|
245
245
|
|
|
246
|
-
var css_248z$1 = ".dialog-title {\n font-size: 20px;\n font-weight: bold;\n}\n\n.dialog-text {\n font-size: 16px;\n}\n\n.dialog-box {\n /* border-radius: 10px; */\n /* border: 1px solid #a8a8a8; */\n color: white;\n /* background-color: #2e2e2e; */\n padding: 10px;\n padding-left: 2em;\n margin-bottom: 10px;\n}\n\n.dialog-choice {\n color: orange;\n}\n\n.dialog-choice:hover {\n color: white;\n cursor: pointer;\n}\n\n.buttons-container {\n width: 100%;\n padding: 10px;\n display: flex;\n justify-content: space-evenly;\n align-items: stretch;\n box-sizing: border-box;\n}\n\n.interact-button {\n height: 50px;\n background-color: #72080f;\n color: white;\n border: 1px solid black;\n font-weight: bold;\n font-size: 24px;\n text-align: center;\n flex-grow: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n\n.interact-button:not(:last-child) {\n margin-right: 10px;\n}\n";
|
|
246
|
+
var css_248z$1 = ".dialog-title {\n font-size: 20px;\n font-weight: bold;\n}\n\n.dialog-text {\n font-size: 16px;\n}\n\n.dialog-box {\n /* border-radius: 10px; */\n /* border: 1px solid #a8a8a8; */\n color: white;\n /* background-color: #2e2e2e; */\n padding: 10px;\n padding-left: 2em;\n margin-bottom: 10px;\n}\n\n.dialog-choice {\n color: orange;\n}\n\n.dialog-choice:hover {\n color: white;\n cursor: pointer;\n}\n\n.buttons-container {\n width: 100%;\n padding: 10px;\n display: flex;\n justify-content: space-evenly;\n align-items: stretch;\n box-sizing: border-box;\n}\n\n.interact-button {\n height: 50px;\n background-color: #72080f;\n color: white;\n border: 1px solid black;\n font-weight: bold;\n font-size: 24px;\n text-align: center;\n flex-grow: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n\n.interact-button:not(:last-child) {\n margin-right: 10px;\n}\r\n";
|
|
247
247
|
styleInject(css_248z$1);
|
|
248
248
|
|
|
249
249
|
script.render = render;
|
|
@@ -307,11 +307,27 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
307
307
|
], 4))
|
|
308
308
|
}
|
|
309
309
|
|
|
310
|
-
var css_248z$2 = ".dialog-picture {\n position: absolute;\n width: 80px;\n height: 80px;\n border: 2px solid white;\n border-radius: 10px;\n background-color: grey;\n z-index: 99;\n}\n\n.dialog-picture img {\n width: 100%;\n height: 100%;\n}\n";
|
|
310
|
+
var css_248z$2 = ".dialog-picture {\n position: absolute;\n width: 80px;\n height: 80px;\n border: 2px solid white;\n border-radius: 10px;\n background-color: grey;\n z-index: 99;\n}\n\n.dialog-picture img {\n width: 100%;\n height: 100%;\n}\r\n";
|
|
311
311
|
styleInject(css_248z$2);
|
|
312
312
|
|
|
313
313
|
script$1.render = render$1;
|
|
314
314
|
|
|
315
|
+
class Logger {
|
|
316
|
+
debug;
|
|
317
|
+
constructor(debug) {
|
|
318
|
+
this.debug = debug;
|
|
319
|
+
}
|
|
320
|
+
setDebug(debug) {
|
|
321
|
+
this.debug = debug;
|
|
322
|
+
}
|
|
323
|
+
log(...args) {
|
|
324
|
+
if (this.debug) {
|
|
325
|
+
console.log(...args);
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
const logger = new Logger(false);
|
|
330
|
+
|
|
315
331
|
function getPlayTime(startedAt, previousTime) {
|
|
316
332
|
return Date.now() - startedAt + previousTime;
|
|
317
333
|
}
|
|
@@ -377,7 +393,7 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
377
393
|
}))
|
|
378
394
|
}
|
|
379
395
|
|
|
380
|
-
var css_248z$3 = ".modal-mask {\n position: fixed;\n z-index: 9998;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.5);\n display: table;\n transition: opacity 0.3s ease;\n}\n\n.modal-wrapper {\n display: table-cell;\n vertical-align: middle;\n}\n\n.modal-container {\n min-width: 300px;\n max-width: 90vw;\n max-height: 75vh;\n overflow-y: auto;\n margin: 0px auto;\n padding: 20px 30px;\n border-radius: 2px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.33);\n transition: all 0.3s ease;\n font-family: Helvetica, Arial, sans-serif;\n}\n\n.modal-header h3 {\n margin-top: 0;\n color: #42b983;\n}\n\n.modal-body {\n margin: 20px 0;\n}\n\n.modal-default-button {\n float: right;\n}\n\n/*\n * The following styles are auto-applied to elements with\n * transition=\"modal\" when their visibility is toggled\n * by Vue.js.\n *\n * You can easily play with the modal transition by editing\n * these styles.\n */\n\n.modal-enter {\n opacity: 0;\n}\n\n.modal-leave-active {\n opacity: 0;\n}\n\n.modal-enter .modal-container,\n.modal-leave-active .modal-container {\n transform: scale(1.1);\n}\n";
|
|
396
|
+
var css_248z$3 = ".modal-mask {\n position: fixed;\n z-index: 9998;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.5);\n display: table;\n transition: opacity 0.3s ease;\n}\n\n.modal-wrapper {\n display: table-cell;\n vertical-align: middle;\n}\n\n.modal-container {\n min-width: 300px;\n max-width: 90vw;\n max-height: 75vh;\n overflow-y: auto;\n margin: 0px auto;\n padding: 20px 30px;\n border-radius: 2px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.33);\n transition: all 0.3s ease;\n font-family: Helvetica, Arial, sans-serif;\n}\n\n.modal-header h3 {\n margin-top: 0;\n color: #42b983;\n}\n\n.modal-body {\n margin: 20px 0;\n}\n\n.modal-default-button {\n float: right;\n}\n\n/*\r\n * The following styles are auto-applied to elements with\r\n * transition=\"modal\" when their visibility is toggled\r\n * by Vue.js.\r\n *\r\n * You can easily play with the modal transition by editing\r\n * these styles.\r\n */\n\n.modal-enter {\n opacity: 0;\n}\n\n.modal-leave-active {\n opacity: 0;\n}\n\n.modal-enter .modal-container,\r\n.modal-leave-active .modal-container {\n transform: scale(1.1);\n}\r\n";
|
|
381
397
|
styleInject(css_248z$3);
|
|
382
398
|
|
|
383
399
|
script$2.render = render$2;
|
|
@@ -412,7 +428,7 @@ var script$3 = vue.defineComponent({
|
|
|
412
428
|
wordCount() {
|
|
413
429
|
const scripts = Object.values(this.$store.state.machine.script);
|
|
414
430
|
const count = scripts.reduce((count, script) => {
|
|
415
|
-
|
|
431
|
+
logger.log(count);
|
|
416
432
|
return count + this.countWordsInScriptBranch(script);
|
|
417
433
|
}, 0);
|
|
418
434
|
alert(`You have ${count} words`);
|
|
@@ -603,7 +619,7 @@ function render$3(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
603
619
|
]))
|
|
604
620
|
}
|
|
605
621
|
|
|
606
|
-
var css_248z$4 = ".debug-menu {\n z-index: 9999;\n}\n\n.debug-button {\n background-color: #4fc08d;\n position: fixed;\n bottom: 10px;\n right: 10px;\n padding: 5px;\n}\n\n.error-message {\n color: orangered;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n\n.error-filename {\n color: grey;\n text-decoration: underline;\n}\n";
|
|
622
|
+
var css_248z$4 = ".debug-menu {\n z-index: 9999;\n}\n\n.debug-button {\n background-color: #4fc08d;\n position: fixed;\n bottom: 10px;\n right: 10px;\n padding: 5px;\n}\n\n.error-message {\n color: orangered;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n\n.error-filename {\n color: grey;\n text-decoration: underline;\n}\r\n";
|
|
607
623
|
styleInject(css_248z$4);
|
|
608
624
|
|
|
609
625
|
script$3.render = render$3;
|
|
@@ -3867,10 +3883,8 @@ var script$4 = vue.defineComponent({
|
|
|
3867
3883
|
},
|
|
3868
3884
|
methods: {
|
|
3869
3885
|
changeVolume(event) {
|
|
3870
|
-
console.log(event);
|
|
3871
3886
|
const target = event.target;
|
|
3872
3887
|
howler.Howler.volume(target.value);
|
|
3873
|
-
console.log(target.value);
|
|
3874
3888
|
},
|
|
3875
3889
|
toggleMute() {
|
|
3876
3890
|
if (this.muted) {
|
|
@@ -3909,7 +3923,7 @@ function render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
3909
3923
|
]))
|
|
3910
3924
|
}
|
|
3911
3925
|
|
|
3912
|
-
var css_248z$5 = ".volume-label {\n margin: 5px 20px;\n}\n\n.volume-controls {\n color: white;\n font-size: 20px;\n display: flex;\n align-items: center;\n}\n\n.volume-slider {\n width: 200px;\n background-color: blue;\n}\n";
|
|
3926
|
+
var css_248z$5 = ".volume-label {\n margin: 5px 20px;\n}\n\n.volume-controls {\n color: white;\n font-size: 20px;\n display: flex;\n align-items: center;\n}\n\n.volume-slider {\n width: 200px;\n background-color: blue;\n}\r\n";
|
|
3913
3927
|
styleInject(css_248z$5);
|
|
3914
3928
|
|
|
3915
3929
|
script$4.render = render$4;
|
|
@@ -3965,7 +3979,7 @@ function render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
3965
3979
|
], 4))
|
|
3966
3980
|
}
|
|
3967
3981
|
|
|
3968
|
-
var css_248z$6 = ".hud {\n position: absolute;\n right: 0;\n top: 0;\n display: flex;\n flex-direction: row-reverse;\n z-index: 3;\n}\n\n.hud-stat {\n border: 1px dotted white;\n background-color: rgba(0, 0, 0, 0.4);\n color: white;\n padding: 5px;\n}\n\n.hud-icon {\n display: inline-block;\n height: 1em;\n}\n";
|
|
3982
|
+
var css_248z$6 = ".hud {\n position: absolute;\n right: 0;\n top: 0;\n display: flex;\n flex-direction: row-reverse;\n z-index: 3;\n}\n\n.hud-stat {\n border: 1px dotted white;\n background-color: rgba(0, 0, 0, 0.4);\n color: white;\n padding: 5px;\n}\n\n.hud-icon {\n display: inline-block;\n height: 1em;\n}\r\n";
|
|
3969
3983
|
styleInject(css_248z$6);
|
|
3970
3984
|
|
|
3971
3985
|
script$5.render = render$5;
|
|
@@ -4002,7 +4016,7 @@ function render$6(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4002
4016
|
]))
|
|
4003
4017
|
}
|
|
4004
4018
|
|
|
4005
|
-
var css_248z$7 = ".loading-bar {\n position: relative;\n width: 40vw;\n height: 10vh;\n border: 1px solid black;\n background-color: lightgrey;\n}\n\n.inner-loading-bar {\n height: 100%;\n background-color: lightgreen;\n color: black;\n}\n\n.loading-text {\n z-index: 99999;\n display: flex;\n align-items: center;\n justify-content: space-around;\n position: absolute;\n width: 100%;\n height: 100%;\n color: black;\n top: 0;\n}\n";
|
|
4019
|
+
var css_248z$7 = ".loading-bar {\n position: relative;\n width: 40vw;\n height: 10vh;\n border: 1px solid black;\n background-color: lightgrey;\n}\n\n.inner-loading-bar {\n height: 100%;\n background-color: lightgreen;\n color: black;\n}\n\n.loading-text {\n z-index: 99999;\n display: flex;\n align-items: center;\n justify-content: space-around;\n position: absolute;\n width: 100%;\n height: 100%;\n color: black;\n top: 0;\n}\r\n";
|
|
4006
4020
|
styleInject(css_248z$7);
|
|
4007
4021
|
|
|
4008
4022
|
script$6.render = render$6;
|
|
@@ -4037,7 +4051,7 @@ function render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4037
4051
|
}))
|
|
4038
4052
|
}
|
|
4039
4053
|
|
|
4040
|
-
var css_248z$8 = ".notifications-holder {\n position: fixed;\n top: 0;\n left: 0;\n padding: 10px;\n display: flex;\n flex-direction: column-reverse;\n align-items: center;\n pointer-events: none;\n}\n\n.notification {\n margin-top: 10px;\n margin-bottom: 10px;\n border-radius: 10px;\n padding: 15px;\n background-color: darkslateblue;\n color: white;\n width: 40vh;\n text-align: center;\n}\n";
|
|
4054
|
+
var css_248z$8 = ".notifications-holder {\n position: fixed;\n top: 0;\n left: 0;\n padding: 10px;\n display: flex;\n flex-direction: column-reverse;\n align-items: center;\n pointer-events: none;\n}\n\n.notification {\n margin-top: 10px;\n margin-bottom: 10px;\n border-radius: 10px;\n padding: 15px;\n background-color: darkslateblue;\n color: white;\n width: 40vh;\n text-align: center;\n}\r\n";
|
|
4041
4055
|
styleInject(css_248z$8);
|
|
4042
4056
|
|
|
4043
4057
|
script$7.render = render$7;
|
|
@@ -4136,7 +4150,7 @@ const images = {};
|
|
|
4136
4150
|
let imagesToLoad = 0;
|
|
4137
4151
|
let imagesLoaded = 0;
|
|
4138
4152
|
function loadImages(config) {
|
|
4139
|
-
|
|
4153
|
+
logger.log(`Loading images`);
|
|
4140
4154
|
return new Promise((resolve, reject) => {
|
|
4141
4155
|
for (const key in config.images) {
|
|
4142
4156
|
const path = config.images[key];
|
|
@@ -4146,19 +4160,19 @@ function loadImages(config) {
|
|
|
4146
4160
|
}
|
|
4147
4161
|
function loadImage(key, path, resolver, rejecter) {
|
|
4148
4162
|
imagesToLoad++;
|
|
4149
|
-
|
|
4163
|
+
logger.log(`Loading image ${key} at ${path}`);
|
|
4150
4164
|
const image = new Image();
|
|
4151
4165
|
image.onload = () => {
|
|
4152
4166
|
imagesLoaded += 1;
|
|
4153
4167
|
images[key] = image;
|
|
4154
|
-
|
|
4168
|
+
logger.log(`Loaded image ${key} successfully`);
|
|
4155
4169
|
if (imagesLoaded >= imagesToLoad) {
|
|
4156
|
-
|
|
4170
|
+
logger.log(`All images loaded`);
|
|
4157
4171
|
resolver();
|
|
4158
4172
|
}
|
|
4159
4173
|
};
|
|
4160
4174
|
image.onerror = (e) => {
|
|
4161
|
-
console.
|
|
4175
|
+
console.error(`Error loading image ${key}`);
|
|
4162
4176
|
rejecter(e);
|
|
4163
4177
|
};
|
|
4164
4178
|
image.src = path;
|
|
@@ -4167,7 +4181,7 @@ function loadImage(key, path, resolver, rejecter) {
|
|
|
4167
4181
|
const audio = {};
|
|
4168
4182
|
howler.Howler.volume(0.5);
|
|
4169
4183
|
async function loadAudioAssets(config) {
|
|
4170
|
-
|
|
4184
|
+
logger.log(`Loading audio`);
|
|
4171
4185
|
const loadingPromises = [];
|
|
4172
4186
|
for (const key in config.music) {
|
|
4173
4187
|
// Backward compatibility with old music list
|
|
@@ -4197,7 +4211,7 @@ async function loadAudioAssets(config) {
|
|
|
4197
4211
|
}
|
|
4198
4212
|
async function loadAudio(key, config) {
|
|
4199
4213
|
return new Promise((resolve, reject) => {
|
|
4200
|
-
|
|
4214
|
+
logger.log(`Loading audio ${config.src}`);
|
|
4201
4215
|
const sound = new howler.Howl({
|
|
4202
4216
|
...config,
|
|
4203
4217
|
});
|
|
@@ -4383,12 +4397,11 @@ function render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4383
4397
|
]))
|
|
4384
4398
|
}
|
|
4385
4399
|
|
|
4386
|
-
var css_248z$9 = ".menu-content {\n margin: 50px;\n text-align: center;\n}\n\n.menu-toggle-button {\n margin: 0;\n padding: 2px;\n border-radius: 5px;\n}\n\n.quit-button {\n margin: 50px;\n text-align: center;\n}\n";
|
|
4400
|
+
var css_248z$9 = ".menu-content {\n margin: 50px;\n text-align: center;\n}\n\n.menu-toggle-button {\n margin: 0;\n padding: 2px;\n border-radius: 5px;\n}\n\n.quit-button {\n margin: 50px;\n text-align: center;\n}\r\n";
|
|
4387
4401
|
styleInject(css_248z$9);
|
|
4388
4402
|
|
|
4389
4403
|
script$8.render = render$8;
|
|
4390
4404
|
|
|
4391
|
-
console.log('hello app');
|
|
4392
4405
|
var script$9 = vue.defineComponent({
|
|
4393
4406
|
$refs: {
|
|
4394
4407
|
dialogContainer: HTMLInputElement,
|
|
@@ -4448,7 +4461,6 @@ var script$9 = vue.defineComponent({
|
|
|
4448
4461
|
dialogLength(newCount, oldCount) {
|
|
4449
4462
|
if (this.$refs.dialog) {
|
|
4450
4463
|
const dialog = this.$refs.dialog;
|
|
4451
|
-
console.log('hello dialog');
|
|
4452
4464
|
dialog.scrollTop = dialog.scrollHeight + 100000;
|
|
4453
4465
|
}
|
|
4454
4466
|
},
|
|
@@ -4779,7 +4791,7 @@ function render$9(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4779
4791
|
], 4))
|
|
4780
4792
|
}
|
|
4781
4793
|
|
|
4782
|
-
var css_248z$a = "#app {\n background-color: black;\n width: 100%;\n height: 100%;\n position: absolute;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n color: white;\n box-sizing: border-box;\n overflow: hidden;\n transform-origin: center center;\n}\n\n.game {\n background-color: black;\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n.interact-button {\n height: 50px;\n background-color: #72080f;\n border: 1px solid black;\n font-weight: bold;\n font-size: 20px;\n text-align: center;\n flex-grow: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n\n.interact-button:not(:last-child) {\n margin-right: 10px;\n}\n\n.dialog-container {\n flex-shrink: 2;\n /* padding: 20px; */\n min-height: 100%;\n width: 100%;\n background-color: #171717;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n overflow-x: hidden;\n}\n\n.dialog {\n overflow-y: auto;\n overflow-x: hidden;\n position: relative;\n -ms-overflow-style: none; /* IE and Edge */\n scrollbar-width: none; /* Firefox */\n}\n\n.dialog::-webkit-scrollbar {\n display: none; /* webkit */\n}\n\n.dialog * {\n overflow-anchor: none;\n}\n\n.background {\n margin: 0;\n}\n\n#background-canvas {\n height: 100%;\n}\n\n.anchor {\n overflow-anchor: auto;\n height: 1px;\n}\n\n.menu-toggle {\n position: fixed;\n bottom: 0px;\n right: 15%;\n z-index: 108398;\n}\n";
|
|
4794
|
+
var css_248z$a = "#app {\n background-color: black;\n width: 100%;\n height: 100%;\n position: absolute;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n color: white;\n box-sizing: border-box;\n overflow: hidden;\n transform-origin: center center;\n}\n\n.game {\n background-color: black;\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n.interact-button {\n height: 50px;\n background-color: #72080f;\n border: 1px solid black;\n font-weight: bold;\n font-size: 20px;\n text-align: center;\n flex-grow: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n\n.interact-button:not(:last-child) {\n margin-right: 10px;\n}\n\n.dialog-container {\n flex-shrink: 2;\n /* padding: 20px; */\n min-height: 100%;\n width: 100%;\n background-color: #171717;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n overflow-x: hidden;\n}\n\n.dialog {\n overflow-y: auto;\n overflow-x: hidden;\n position: relative;\n -ms-overflow-style: none; /* IE and Edge */\n scrollbar-width: none; /* Firefox */\n}\n\n.dialog::-webkit-scrollbar {\n display: none; /* webkit */\n}\n\n.dialog * {\n overflow-anchor: none;\n}\n\n.background {\n margin: 0;\n}\n\n#background-canvas {\n height: 100%;\n}\n\n.anchor {\n overflow-anchor: auto;\n height: 1px;\n}\n\n.menu-toggle {\n position: fixed;\n bottom: 0px;\n right: 15%;\n z-index: 108398;\n}\r\n";
|
|
4783
4795
|
styleInject(css_248z$a);
|
|
4784
4796
|
|
|
4785
4797
|
script$9.render = render$9;
|
|
@@ -4828,7 +4840,7 @@ function runSkillCheck(ctx, params) {
|
|
|
4828
4840
|
}
|
|
4829
4841
|
roll += state.skills[params.skill].level * skillChecks.skillMultiplier;
|
|
4830
4842
|
const skill = skills[params.skill];
|
|
4831
|
-
|
|
4843
|
+
logger.log(`roll `, roll, params.value);
|
|
4832
4844
|
if (roll < params.value) {
|
|
4833
4845
|
success = false;
|
|
4834
4846
|
}
|
|
@@ -4844,7 +4856,7 @@ function runSkillCheck(ctx, params) {
|
|
|
4844
4856
|
function runConditionCommand(ctx, command) {
|
|
4845
4857
|
const options = command.options;
|
|
4846
4858
|
const result = runCondition(ctx, options.condition);
|
|
4847
|
-
|
|
4859
|
+
logger.log(result);
|
|
4848
4860
|
if (result) {
|
|
4849
4861
|
return options.success;
|
|
4850
4862
|
}
|
|
@@ -4915,6 +4927,7 @@ async function runCommand(context, cmd, choices) {
|
|
|
4915
4927
|
currentIndex: 0,
|
|
4916
4928
|
};
|
|
4917
4929
|
commit('setStack', newStack);
|
|
4930
|
+
await dispatch('saveGame');
|
|
4918
4931
|
await dispatch('runLine');
|
|
4919
4932
|
break;
|
|
4920
4933
|
case 'text':
|
|
@@ -4965,7 +4978,6 @@ async function runCommand(context, cmd, choices) {
|
|
|
4965
4978
|
commit('clearDialog');
|
|
4966
4979
|
return dispatch('nextLine');
|
|
4967
4980
|
case 'set_button':
|
|
4968
|
-
console.log(cmd.args);
|
|
4969
4981
|
commit('changeButton', {
|
|
4970
4982
|
button: cmd.args[0],
|
|
4971
4983
|
enabled: cmd.args[1],
|
|
@@ -5052,11 +5064,11 @@ async function runCommand(context, cmd, choices) {
|
|
|
5052
5064
|
}
|
|
5053
5065
|
}
|
|
5054
5066
|
catch (err) {
|
|
5055
|
-
|
|
5067
|
+
logger.log(`Error at: `, state.machine.stack[state.machine.stack.length - 1].label);
|
|
5056
5068
|
console.error(err);
|
|
5057
|
-
error(commit, `Narrat script runtime error at <span class="error-filename">${cmd.fileName}:${cmd.line + 1}</span>
|
|
5058
|
-
<b>${err}</b>
|
|
5059
|
-
Script: ${cmd.code}
|
|
5069
|
+
error(commit, `Narrat script runtime error at <span class="error-filename">${cmd.fileName}:${cmd.line + 1}</span>
|
|
5070
|
+
<b>${err}</b>
|
|
5071
|
+
Script: ${cmd.code}
|
|
5060
5072
|
Label: ${state.machine.stack[state.machine.stack.length - 1].label}`);
|
|
5061
5073
|
}
|
|
5062
5074
|
}
|
|
@@ -5131,7 +5143,6 @@ async function runChoice(context, cmd) {
|
|
|
5131
5143
|
const skill = config.skills[check.skill];
|
|
5132
5144
|
const level = context.state.skills[check.skill].level;
|
|
5133
5145
|
const difficultyScore = check.value - level * config.skillChecks.skillMultiplier;
|
|
5134
|
-
console.log(`Check `, check, `score `, difficultyScore);
|
|
5135
5146
|
const skillCheckState = getSkillCheckState(context, choice.skillCheck.id);
|
|
5136
5147
|
let found = false;
|
|
5137
5148
|
let i = 0;
|
|
@@ -5418,7 +5429,7 @@ function parseRenpyScript(errorHandler, code, fileName) {
|
|
|
5418
5429
|
};
|
|
5419
5430
|
ctx.indentSize = detectIndentation(ctx, code);
|
|
5420
5431
|
const lines = findRenpyLines(ctx, code);
|
|
5421
|
-
|
|
5432
|
+
logger.log(lines);
|
|
5422
5433
|
const script = {};
|
|
5423
5434
|
for (const line of lines) {
|
|
5424
5435
|
if (line.code.search(':') === -1) {
|
|
@@ -5600,7 +5611,7 @@ function detectIndentation(ctx, script) {
|
|
|
5600
5611
|
if (result.length < 2) {
|
|
5601
5612
|
ctx.error(0, `Can't detect indentation level. Make sure you indent with at least 2 spaces and consistently`);
|
|
5602
5613
|
}
|
|
5603
|
-
|
|
5614
|
+
logger.log(result);
|
|
5604
5615
|
return result[1].length;
|
|
5605
5616
|
}
|
|
5606
5617
|
|
|
@@ -5614,7 +5625,8 @@ function setupStore(options) {
|
|
|
5614
5625
|
}
|
|
5615
5626
|
// define injection key
|
|
5616
5627
|
key = Symbol('Store Injection Key');
|
|
5617
|
-
|
|
5628
|
+
logger.setDebug(options.debug);
|
|
5629
|
+
logger.log('setup store');
|
|
5618
5630
|
store = vuex.createStore({
|
|
5619
5631
|
state: {
|
|
5620
5632
|
machine: {
|
|
@@ -5684,7 +5696,7 @@ function setupStore(options) {
|
|
|
5684
5696
|
};
|
|
5685
5697
|
}
|
|
5686
5698
|
const end = Date.now();
|
|
5687
|
-
|
|
5699
|
+
logger.log(`script parsed in ${end - start} ms`);
|
|
5688
5700
|
commit('setButtons', payload.config.buttons);
|
|
5689
5701
|
commit('setScript', scripts);
|
|
5690
5702
|
commit('setupSkills', payload.config.skills);
|
|
@@ -5706,7 +5718,6 @@ function setupStore(options) {
|
|
|
5706
5718
|
this.dispatch('runLine');
|
|
5707
5719
|
},
|
|
5708
5720
|
async runLine(context) {
|
|
5709
|
-
await this.dispatch('saveGame');
|
|
5710
5721
|
await runLine(context);
|
|
5711
5722
|
},
|
|
5712
5723
|
nextLine(context) {
|
|
@@ -5724,13 +5735,22 @@ function setupStore(options) {
|
|
|
5724
5735
|
lastLabel: state.lastLabel,
|
|
5725
5736
|
skillChecks: state.skillChecks,
|
|
5726
5737
|
playTime: getPlayTime(state.playTime.start, state.playTime.previousPlaytime),
|
|
5738
|
+
hudStats: state.hudStats,
|
|
5739
|
+
currentScreen: state.currentScreen,
|
|
5740
|
+
audio: {
|
|
5741
|
+
currentMusic: state.audio.currentMusic,
|
|
5742
|
+
},
|
|
5727
5743
|
};
|
|
5728
5744
|
localStorage.setItem(SAVE_FILE, JSON.stringify(save));
|
|
5729
5745
|
},
|
|
5730
|
-
loadGame(
|
|
5746
|
+
loadGame(ctx, saveFile) {
|
|
5747
|
+
const { commit, dispatch } = ctx;
|
|
5731
5748
|
if (saveFile) {
|
|
5732
5749
|
const save = JSON.parse(saveFile);
|
|
5733
5750
|
commit('setLoadedData', save);
|
|
5751
|
+
if (save.audio.currentMusic) {
|
|
5752
|
+
changeMusic(ctx, save.audio.currentMusic);
|
|
5753
|
+
}
|
|
5734
5754
|
dispatch('runLabel', save.lastLabel);
|
|
5735
5755
|
}
|
|
5736
5756
|
},
|
|
@@ -5753,6 +5773,9 @@ function setupStore(options) {
|
|
|
5753
5773
|
state.lastLabel = save.lastLabel;
|
|
5754
5774
|
state.skillChecks = save.skillChecks;
|
|
5755
5775
|
state.playTime.previousPlaytime = save.playTime;
|
|
5776
|
+
state.hudStats = save.hudStats;
|
|
5777
|
+
state.currentScreen = save.currentScreen;
|
|
5778
|
+
state.audio = save.audio;
|
|
5756
5779
|
},
|
|
5757
5780
|
reset(state) {
|
|
5758
5781
|
state.ready = false;
|
|
@@ -5822,6 +5845,7 @@ function setupStore(options) {
|
|
|
5822
5845
|
},
|
|
5823
5846
|
setStack(state, newStack) {
|
|
5824
5847
|
state.machine.stack = [];
|
|
5848
|
+
state.lastLabel = newStack.label;
|
|
5825
5849
|
state.machine.stack.push(newStack);
|
|
5826
5850
|
},
|
|
5827
5851
|
setData(state, { path, value }) {
|
|
@@ -5881,7 +5905,7 @@ function setupStore(options) {
|
|
|
5881
5905
|
return id;
|
|
5882
5906
|
},
|
|
5883
5907
|
deleteNotification(state, id) {
|
|
5884
|
-
|
|
5908
|
+
logger.log('delete notif', id);
|
|
5885
5909
|
delete state.notifications[id];
|
|
5886
5910
|
},
|
|
5887
5911
|
},
|
|
@@ -5906,7 +5930,7 @@ async function startApp(config, options) {
|
|
|
5906
5930
|
mousePos.x = e.clientX;
|
|
5907
5931
|
mousePos.y = e.clientY;
|
|
5908
5932
|
});
|
|
5909
|
-
console.log('%c Narrat game engine – 0.8.
|
|
5933
|
+
console.log('%c Narrat game engine – 0.8.4 - June 4, 2022 18:58:52', 'background: #222; color: #bada55');
|
|
5910
5934
|
const storeSetup = setupStore(options);
|
|
5911
5935
|
store$1 = storeSetup.store;
|
|
5912
5936
|
app = vue.createApp(script$9, {
|
package/package.json
CHANGED
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "narrat",
|
|
3
|
-
"version": "0.8.
|
|
4
|
-
"description": "narrat narrative engine",
|
|
5
|
-
"main": "lib/index.js",
|
|
6
|
-
"module": "lib/index.esm.js",
|
|
7
|
-
"files": [
|
|
8
|
-
"lib/"
|
|
9
|
-
],
|
|
10
|
-
"scripts": {
|
|
11
|
-
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
|
-
"start": "snowpack dev",
|
|
13
|
-
"version": "npm run build",
|
|
14
|
-
"build": "cross-env NODE_ENV=production rollup -c",
|
|
15
|
-
"build-demo": "snowpack build",
|
|
16
|
-
"lint": "eslint src --ext=.js,.jsx,.ts,.tsx",
|
|
17
|
-
"preversion": "npm run build && npm run lint",
|
|
18
|
-
"postversion": "git push && git push --tags"
|
|
19
|
-
},
|
|
20
|
-
"keywords": [
|
|
21
|
-
"game"
|
|
22
|
-
],
|
|
23
|
-
"author": "Liana Pigeot <liana.pigeot@protonmail.com>",
|
|
24
|
-
"license": "MIT",
|
|
25
|
-
"devDependencies": {
|
|
26
|
-
"@babel/core": "^7.12.10",
|
|
27
|
-
"@babel/preset-env": "^7.12.11",
|
|
28
|
-
"@rollup/plugin-commonjs": "^16.0.0",
|
|
29
|
-
"@rollup/plugin-node-resolve": "^10.0.0",
|
|
30
|
-
"@rollup/plugin-typescript": "^8.2.5",
|
|
31
|
-
"@snowpack/plugin-postcss": "^1.4.3",
|
|
32
|
-
"@snowpack/plugin-sass": "^1.4.0",
|
|
33
|
-
"@snowpack/plugin-typescript": "^1.2.1",
|
|
34
|
-
"@snowpack/plugin-vue": "^2.6.2",
|
|
35
|
-
"@types/howler": "^2.2.3",
|
|
36
|
-
"@typescript-eslint/eslint-plugin": "^4.28.3",
|
|
37
|
-
"@typescript-eslint/parser": "^4.28.3",
|
|
38
|
-
"@vue/compiler-sfc": "^3.0.4",
|
|
39
|
-
"babel-loader": "^8.2.2",
|
|
40
|
-
"babel-plugin-syntax-dynamic-import": "^6.18.0",
|
|
41
|
-
"babel-preset-vue": "^2.0.2",
|
|
42
|
-
"cross-env": "^7.0.3",
|
|
43
|
-
"css-loader": "^5.0.1",
|
|
44
|
-
"es6-promise": "^4.2.8",
|
|
45
|
-
"eslint": "^7.30.0",
|
|
46
|
-
"eslint-config-airbnb-base": "^14.2.1",
|
|
47
|
-
"eslint-config-prettier": "^8.3.0",
|
|
48
|
-
"eslint-config-standard": "^16.0.3",
|
|
49
|
-
"eslint-import-resolver-typescript": "^2.4.0",
|
|
50
|
-
"eslint-plugin-import": "^2.23.4",
|
|
51
|
-
"eslint-plugin-node": "^11.1.0",
|
|
52
|
-
"eslint-plugin-promise": "^5.1.0",
|
|
53
|
-
"eslint-plugin-vue": "^7.13.0",
|
|
54
|
-
"postcss": "^8.2.1",
|
|
55
|
-
"postcss-cli": "^8.3.1",
|
|
56
|
-
"prettier": "2.3.2",
|
|
57
|
-
"rollup": "^2.35.1",
|
|
58
|
-
"rollup-plugin-analyzer": "^4.0.0",
|
|
59
|
-
"rollup-plugin-inject-process-env": "^1.3.1",
|
|
60
|
-
"rollup-plugin-paths": "^0.0.4",
|
|
61
|
-
"rollup-plugin-peer-deps-external": "^2.2.4",
|
|
62
|
-
"rollup-plugin-postcss": "^4.0.0",
|
|
63
|
-
"rollup-plugin-typescript2": "^0.30.0",
|
|
64
|
-
"rollup-plugin-version-injector": "^1.3.0",
|
|
65
|
-
"rollup-plugin-vue": "^6.0.0-beta.11",
|
|
66
|
-
"snowpack": "^3.8.6",
|
|
67
|
-
"tailwindcss": "^2.0.2",
|
|
68
|
-
"typescript": "^4.2.3",
|
|
69
|
-
"vue": "^3.2.2",
|
|
70
|
-
"vuex": "^4.0.0-rc.2"
|
|
71
|
-
},
|
|
72
|
-
"peerDependencies": {
|
|
73
|
-
"es6-promise": "^4.2.8",
|
|
74
|
-
"vue": "^3.0.4",
|
|
75
|
-
"vuex": "^4.0.0-rc.2"
|
|
76
|
-
},
|
|
77
|
-
"dependencies": {
|
|
78
|
-
"autoprefixer": "^10.2.6",
|
|
79
|
-
"howler": "^2.2.3",
|
|
80
|
-
"vue3-mq": "^3.0.0"
|
|
81
|
-
}
|
|
82
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "narrat",
|
|
3
|
+
"version": "0.8.4",
|
|
4
|
+
"description": "narrat narrative engine",
|
|
5
|
+
"main": "lib/index.js",
|
|
6
|
+
"module": "lib/index.esm.js",
|
|
7
|
+
"files": [
|
|
8
|
+
"lib/"
|
|
9
|
+
],
|
|
10
|
+
"scripts": {
|
|
11
|
+
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
|
+
"start": "snowpack dev",
|
|
13
|
+
"version": "npm run build",
|
|
14
|
+
"build": "cross-env NODE_ENV=production rollup -c",
|
|
15
|
+
"build-demo": "snowpack build",
|
|
16
|
+
"lint": "eslint src --ext=.js,.jsx,.ts,.tsx",
|
|
17
|
+
"preversion": "npm run build && npm run lint",
|
|
18
|
+
"postversion": "git push && git push --tags"
|
|
19
|
+
},
|
|
20
|
+
"keywords": [
|
|
21
|
+
"game"
|
|
22
|
+
],
|
|
23
|
+
"author": "Liana Pigeot <liana.pigeot@protonmail.com>",
|
|
24
|
+
"license": "MIT",
|
|
25
|
+
"devDependencies": {
|
|
26
|
+
"@babel/core": "^7.12.10",
|
|
27
|
+
"@babel/preset-env": "^7.12.11",
|
|
28
|
+
"@rollup/plugin-commonjs": "^16.0.0",
|
|
29
|
+
"@rollup/plugin-node-resolve": "^10.0.0",
|
|
30
|
+
"@rollup/plugin-typescript": "^8.2.5",
|
|
31
|
+
"@snowpack/plugin-postcss": "^1.4.3",
|
|
32
|
+
"@snowpack/plugin-sass": "^1.4.0",
|
|
33
|
+
"@snowpack/plugin-typescript": "^1.2.1",
|
|
34
|
+
"@snowpack/plugin-vue": "^2.6.2",
|
|
35
|
+
"@types/howler": "^2.2.3",
|
|
36
|
+
"@typescript-eslint/eslint-plugin": "^4.28.3",
|
|
37
|
+
"@typescript-eslint/parser": "^4.28.3",
|
|
38
|
+
"@vue/compiler-sfc": "^3.0.4",
|
|
39
|
+
"babel-loader": "^8.2.2",
|
|
40
|
+
"babel-plugin-syntax-dynamic-import": "^6.18.0",
|
|
41
|
+
"babel-preset-vue": "^2.0.2",
|
|
42
|
+
"cross-env": "^7.0.3",
|
|
43
|
+
"css-loader": "^5.0.1",
|
|
44
|
+
"es6-promise": "^4.2.8",
|
|
45
|
+
"eslint": "^7.30.0",
|
|
46
|
+
"eslint-config-airbnb-base": "^14.2.1",
|
|
47
|
+
"eslint-config-prettier": "^8.3.0",
|
|
48
|
+
"eslint-config-standard": "^16.0.3",
|
|
49
|
+
"eslint-import-resolver-typescript": "^2.4.0",
|
|
50
|
+
"eslint-plugin-import": "^2.23.4",
|
|
51
|
+
"eslint-plugin-node": "^11.1.0",
|
|
52
|
+
"eslint-plugin-promise": "^5.1.0",
|
|
53
|
+
"eslint-plugin-vue": "^7.13.0",
|
|
54
|
+
"postcss": "^8.2.1",
|
|
55
|
+
"postcss-cli": "^8.3.1",
|
|
56
|
+
"prettier": "2.3.2",
|
|
57
|
+
"rollup": "^2.35.1",
|
|
58
|
+
"rollup-plugin-analyzer": "^4.0.0",
|
|
59
|
+
"rollup-plugin-inject-process-env": "^1.3.1",
|
|
60
|
+
"rollup-plugin-paths": "^0.0.4",
|
|
61
|
+
"rollup-plugin-peer-deps-external": "^2.2.4",
|
|
62
|
+
"rollup-plugin-postcss": "^4.0.0",
|
|
63
|
+
"rollup-plugin-typescript2": "^0.30.0",
|
|
64
|
+
"rollup-plugin-version-injector": "^1.3.0",
|
|
65
|
+
"rollup-plugin-vue": "^6.0.0-beta.11",
|
|
66
|
+
"snowpack": "^3.8.6",
|
|
67
|
+
"tailwindcss": "^2.0.2",
|
|
68
|
+
"typescript": "^4.2.3",
|
|
69
|
+
"vue": "^3.2.2",
|
|
70
|
+
"vuex": "^4.0.0-rc.2"
|
|
71
|
+
},
|
|
72
|
+
"peerDependencies": {
|
|
73
|
+
"es6-promise": "^4.2.8",
|
|
74
|
+
"vue": "^3.0.4",
|
|
75
|
+
"vuex": "^4.0.0-rc.2"
|
|
76
|
+
},
|
|
77
|
+
"dependencies": {
|
|
78
|
+
"autoprefixer": "^10.2.6",
|
|
79
|
+
"howler": "^2.2.3",
|
|
80
|
+
"vue3-mq": "^3.0.0"
|
|
81
|
+
}
|
|
82
|
+
}
|