From c5a1190781ccb32c7539c0bb06e710c2b910100e Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 09:58:19 +0200 Subject: [PATCH 01/11] Convert build.js to build.mjs --- .../javascript-wc-indexeddb/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../todomvc-localstorage/dist/base.css | 141 ------- .../todomvc-localstorage/dist/index.css | 393 ------------------ .../todomvc-localstorage/dist/index.html | 18 +- .../todomvc-localstorage/package.json | 2 +- .../todomvc-localstorage/scripts/build.mjs | 4 +- .../angular-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../backbone-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../backbone/package.json | 2 +- .../backbone/scripts/{build.js => build.mjs} | 4 +- .../jquery-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../architecture-examples/jquery/package.json | 2 +- .../jquery/scripts/{build.js => build.mjs} | 4 +- .../lit-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../preact-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../react-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../react-redux-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../svelte-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../vue-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../javascript-es5-complex/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../javascript-es5/package.json | 2 +- .../javascript-es5/scripts/build.mjs | 4 +- .../package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- .../javascript-web-components/package.json | 2 +- .../scripts/{build.js => build.mjs} | 4 +- 39 files changed, 63 insertions(+), 597 deletions(-) rename experimental/javascript-wc-indexeddb/scripts/{build.js => build.mjs} (98%) delete mode 100644 experimental/todomvc-localstorage/dist/base.css delete mode 100644 experimental/todomvc-localstorage/dist/index.css rename resources/todomvc/vanilla-examples/javascript-es5/scripts/build.js => experimental/todomvc-localstorage/scripts/build.mjs (96%) rename resources/todomvc/architecture-examples/angular-complex/scripts/{build.js => build.mjs} (88%) rename resources/todomvc/architecture-examples/backbone-complex/scripts/{build.js => build.mjs} (88%) rename resources/todomvc/architecture-examples/backbone/scripts/{build.js => build.mjs} (96%) rename resources/todomvc/architecture-examples/jquery-complex/scripts/{build.js => build.mjs} (88%) rename resources/todomvc/architecture-examples/jquery/scripts/{build.js => build.mjs} (96%) rename resources/todomvc/architecture-examples/lit-complex/scripts/{build.js => build.mjs} (91%) rename resources/todomvc/architecture-examples/preact-complex/scripts/{build.js => build.mjs} (86%) rename resources/todomvc/architecture-examples/react-complex/scripts/{build.js => build.mjs} (84%) rename resources/todomvc/architecture-examples/react-redux-complex/scripts/{build.js => build.mjs} (86%) rename resources/todomvc/architecture-examples/svelte-complex/scripts/{build.js => build.mjs} (86%) rename resources/todomvc/architecture-examples/vue-complex/scripts/{build.js => build.mjs} (86%) rename resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/{build.js => build.mjs} (88%) rename experimental/todomvc-localstorage/scripts/build.js => resources/todomvc/vanilla-examples/javascript-es5/scripts/build.mjs (96%) rename resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/{build.js => build.mjs} (85%) rename resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/{build.js => build.mjs} (91%) rename resources/todomvc/vanilla-examples/javascript-web-components/scripts/{build.js => build.mjs} (98%) diff --git a/experimental/javascript-wc-indexeddb/package.json b/experimental/javascript-wc-indexeddb/package.json index c8d06962c..2129abdd0 100644 --- a/experimental/javascript-wc-indexeddb/package.json +++ b/experimental/javascript-wc-indexeddb/package.json @@ -9,7 +9,7 @@ "private": true, "scripts": { "dev": "http-server ./ -p 7005 -c-1 --cors -o", - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7006 -c-1 --cors -o" }, "keywords": [], diff --git a/experimental/javascript-wc-indexeddb/scripts/build.js b/experimental/javascript-wc-indexeddb/scripts/build.mjs similarity index 98% rename from experimental/javascript-wc-indexeddb/scripts/build.js rename to experimental/javascript-wc-indexeddb/scripts/build.mjs index 8540a774e..331078d95 100644 --- a/experimental/javascript-wc-indexeddb/scripts/build.js +++ b/experimental/javascript-wc-indexeddb/scripts/build.mjs @@ -1,5 +1,5 @@ -const fs = require("fs").promises; -const { dirname } = require("path"); +import fs from "fs/promises"; +import { dirname } from "path"; /** * createDirectory diff --git a/experimental/todomvc-localstorage/dist/base.css b/experimental/todomvc-localstorage/dist/base.css deleted file mode 100644 index da65968a7..000000000 --- a/experimental/todomvc-localstorage/dist/base.css +++ /dev/null @@ -1,141 +0,0 @@ -hr { - margin: 20px 0; - border: 0; - border-top: 1px dashed #c5c5c5; - border-bottom: 1px dashed #f7f7f7; -} - -.learn a { - font-weight: normal; - text-decoration: none; - color: #b83f45; -} - -.learn a:hover { - text-decoration: underline; - color: #787e7e; -} - -.learn h3, -.learn h4, -.learn h5 { - margin: 10px 0; - font-weight: 500; - line-height: 1.2; - color: #000; -} - -.learn h3 { - font-size: 24px; -} - -.learn h4 { - font-size: 18px; -} - -.learn h5 { - margin-bottom: 0; - font-size: 14px; -} - -.learn ul { - padding: 0; - margin: 0 0 30px 25px; -} - -.learn li { - line-height: 20px; -} - -.learn p { - font-size: 15px; - font-weight: 300; - line-height: 1.3; - margin-top: 0; - margin-bottom: 0; -} - -#issue-count { - display: none; -} - -.quote { - border: none; - margin: 20px 0 60px 0; -} - -.quote p { - font-style: italic; -} - -.quote p:before { - content: '“'; - font-size: 50px; - opacity: .15; - position: absolute; - top: -20px; - left: 3px; -} - -.quote p:after { - content: '”'; - font-size: 50px; - opacity: .15; - position: absolute; - bottom: -42px; - right: 3px; -} - -.quote footer { - position: absolute; - bottom: -40px; - right: 0; -} - -.quote footer img { - border-radius: 3px; -} - -.quote footer a { - margin-left: 5px; - vertical-align: middle; -} - -.speech-bubble { - position: relative; - padding: 10px; - background: rgba(0, 0, 0, .04); - border-radius: 5px; -} - -.speech-bubble:after { - content: ''; - position: absolute; - top: 100%; - right: 30px; - border: 13px solid transparent; - border-top-color: rgba(0, 0, 0, .04); -} - -.learn-bar > .learn { - position: absolute; - width: 272px; - top: 8px; - left: -300px; - padding: 10px; - border-radius: 5px; - background-color: rgba(255, 255, 255, .6); - transition-property: left; - transition-duration: 500ms; -} - -@media (min-width: 899px) { - .learn-bar { - width: auto; - padding-left: 300px; - } - - .learn-bar > .learn { - left: 8px; - } -} diff --git a/experimental/todomvc-localstorage/dist/index.css b/experimental/todomvc-localstorage/dist/index.css deleted file mode 100644 index fcc3da583..000000000 --- a/experimental/todomvc-localstorage/dist/index.css +++ /dev/null @@ -1,393 +0,0 @@ -@charset "utf-8"; - -html, -body { - margin: 0; - padding: 0; -} - -button { - margin: 0; - padding: 0; - border: 0; - background: none; - font-size: 100%; - vertical-align: baseline; - font-family: inherit; - font-weight: inherit; - color: inherit; - -webkit-appearance: none; - appearance: none; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -body { - font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif; - line-height: 1.4em; - background: #f5f5f5; - color: #111111; - min-width: 230px; - max-width: 550px; - margin: 0 auto; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - font-weight: 300; -} - -.hidden { - display: none; -} - -.todoapp { - background: #fff; - margin: 130px 0 40px 0; - position: relative; - box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), - 0 25px 50px 0 rgba(0, 0, 0, 0.1); -} - -.todoapp input::-webkit-input-placeholder { - font-style: italic; - font-weight: 400; - color: rgba(0, 0, 0, 0.4); -} - -.todoapp input::-moz-placeholder { - font-style: italic; - font-weight: 400; - color: rgba(0, 0, 0, 0.4); -} - -.todoapp input::input-placeholder { - font-style: italic; - font-weight: 400; - color: rgba(0, 0, 0, 0.4); -} - -.todoapp h1 { - position: absolute; - top: -140px; - width: 100%; - font-size: 80px; - font-weight: 200; - text-align: center; - color: #b83f45; - -webkit-text-rendering: optimizeLegibility; - -moz-text-rendering: optimizeLegibility; - text-rendering: optimizeLegibility; -} - -.new-todo, -.edit { - position: relative; - margin: 0; - width: 100%; - font-size: 24px; - font-family: inherit; - font-weight: inherit; - line-height: 1.4em; - color: inherit; - padding: 6px; - border: 1px solid #999; - box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2); - box-sizing: border-box; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -.new-todo { - padding: 16px 16px 16px 60px; - height: 65px; - border: none; - background: rgba(0, 0, 0, 0.003); - box-shadow: inset 0 -2px 1px rgba(0,0,0,0.03); -} - -.main { - position: relative; - z-index: 2; - border-top: 1px solid #e6e6e6; -} - -.toggle-all { - width: 1px; - height: 1px; - border: none; /* Mobile Safari */ - opacity: 0; - position: absolute; - right: 100%; - bottom: 100%; -} - -.toggle-all + label { - display: flex; - align-items: center; - justify-content: center; - width: 45px; - height: 65px; - font-size: 0; - position: absolute; - top: -65px; - left: -0; -} - -.toggle-all + label:before { - content: '❯'; - display: inline-block; - font-size: 22px; - color: #949494; - padding: 10px 27px 10px 27px; - -webkit-transform: rotate(90deg); - transform: rotate(90deg); -} - -.toggle-all:checked + label:before { - color: #484848; -} - -.todo-list { - margin: 0; - padding: 0; - list-style: none; -} - -.todo-list li { - position: relative; - font-size: 24px; - border-bottom: 1px solid #ededed; -} - -.todo-list li:last-child { - border-bottom: none; -} - -.todo-list li.editing { - border-bottom: none; - padding: 0; -} - -.todo-list li.editing .edit { - display: block; - width: calc(100% - 43px); - padding: 12px 16px; - margin: 0 0 0 43px; -} - -.todo-list li.editing .view { - display: none; -} - -.todo-list li .toggle { - text-align: center; - width: 40px; - /* auto, since non-WebKit browsers doesn't support input styling */ - height: auto; - position: absolute; - top: 0; - bottom: 0; - margin: auto 0; - border: none; /* Mobile Safari */ - -webkit-appearance: none; - appearance: none; -} - -.todo-list li .toggle { - opacity: 0; -} - -.todo-list li .toggle + label { - /* - Firefox requires `#` to be escaped - https://bugzilla.mozilla.org/show_bug.cgi?id=922433 - IE and Edge requires *everything* to be escaped to render, so we do that instead of just the `#` - https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/7157459/ - */ - background-image: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%22-10%20-18%20100%20135%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2250%22%20fill%3D%22none%22%20stroke%3D%22%23949494%22%20stroke-width%3D%223%22/%3E%3C/svg%3E'); - background-repeat: no-repeat; - background-position: center left; -} - -.todo-list li .toggle:checked + label { - background-image: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%22-10%20-18%20100%20135%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2250%22%20fill%3D%22none%22%20stroke%3D%22%2359A193%22%20stroke-width%3D%223%22%2F%3E%3Cpath%20fill%3D%22%233EA390%22%20d%3D%22M72%2025L42%2071%2027%2056l-4%204%2020%2020%2034-52z%22%2F%3E%3C%2Fsvg%3E'); -} - -.todo-list li label { - word-break: break-all; - padding: 15px 15px 15px 60px; - display: block; - line-height: 1.2; - transition: color 0.4s; - font-weight: 400; - color: #484848; -} - -.todo-list li.completed label { - color: #949494; - text-decoration: line-through; -} - -.todo-list li .destroy { - display: none; - position: absolute; - top: 0; - right: 10px; - bottom: 0; - width: 40px; - height: 40px; - margin: auto 0; - font-size: 30px; - color: #949494; - transition: color 0.2s ease-out; -} - -.todo-list li .destroy:hover, -.todo-list li .destroy:focus { - color: #C18585; -} - -.todo-list li .destroy:after { - content: '×'; - display: block; - height: 100%; - line-height: 1.1; -} - -.todo-list li:hover .destroy { - display: block; -} - -.todo-list li .edit { - display: none; -} - -.todo-list li.editing:last-child { - margin-bottom: -1px; -} - -.footer { - padding: 10px 15px; - height: 20px; - text-align: center; - font-size: 15px; - border-top: 1px solid #e6e6e6; -} - -.footer:before { - content: ''; - position: absolute; - right: 0; - bottom: 0; - left: 0; - height: 50px; - overflow: hidden; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), - 0 8px 0 -3px #f6f6f6, - 0 9px 1px -3px rgba(0, 0, 0, 0.2), - 0 16px 0 -6px #f6f6f6, - 0 17px 2px -6px rgba(0, 0, 0, 0.2); -} - -.todo-count { - float: left; - text-align: left; -} - -.todo-count strong { - font-weight: 300; -} - -.filters { - margin: 0; - padding: 0; - list-style: none; - position: absolute; - right: 0; - left: 0; -} - -.filters li { - display: inline; -} - -.filters li a { - color: inherit; - margin: 3px; - padding: 3px 7px; - text-decoration: none; - border: 1px solid transparent; - border-radius: 3px; -} - -.filters li a:hover { - border-color: #DB7676; -} - -.filters li a.selected { - border-color: #CE4646; -} - -.clear-completed, -html .clear-completed:active { - float: right; - position: relative; - line-height: 19px; - text-decoration: none; - cursor: pointer; -} - -.clear-completed:hover { - text-decoration: underline; -} - -.info { - margin: 65px auto 0; - color: #4d4d4d; - font-size: 11px; - text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); - text-align: center; -} - -.info p { - line-height: 1; -} - -.info a { - color: inherit; - text-decoration: none; - font-weight: 400; -} - -.info a:hover { - text-decoration: underline; -} - -/* - Hack to remove background from Mobile Safari. - Can't use it globally since it destroys checkboxes in Firefox -*/ -@media screen and (-webkit-min-device-pixel-ratio:0) { - .toggle-all, - .todo-list li .toggle { - background: none; - } - - .todo-list li .toggle { - height: 40px; - } -} - -@media (max-width: 430px) { - .footer { - height: 50px; - } - - .filters { - bottom: 10px; - } -} - -:focus, -.toggle:focus + label, -.toggle-all:focus + label { - box-shadow: 0 0 2px 2px #CF7D7D; - outline: 0; -} diff --git a/experimental/todomvc-localstorage/dist/index.html b/experimental/todomvc-localstorage/dist/index.html index ab573ce1b..2b016620f 100644 --- a/experimental/todomvc-localstorage/dist/index.html +++ b/experimental/todomvc-localstorage/dist/index.html @@ -6,8 +6,8 @@ TodoMVC: JavaScript Es5 - - + +
@@ -44,12 +44,12 @@

todos

Press 'enter' to add the todo.

Double-click to edit a todo

- - - - - - - + + + + + + + diff --git a/experimental/todomvc-localstorage/package.json b/experimental/todomvc-localstorage/package.json index c55abb8ff..13ae66a90 100644 --- a/experimental/todomvc-localstorage/package.json +++ b/experimental/todomvc-localstorage/package.json @@ -9,7 +9,7 @@ "private": true, "scripts": { "dev": "http-server ./ -p 7001 -c-1 --cors", - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "dependencies": { diff --git a/resources/todomvc/vanilla-examples/javascript-es5/scripts/build.js b/experimental/todomvc-localstorage/scripts/build.mjs similarity index 96% rename from resources/todomvc/vanilla-examples/javascript-es5/scripts/build.js rename to experimental/todomvc-localstorage/scripts/build.mjs index 046de0e7e..cc923230e 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5/scripts/build.js +++ b/experimental/todomvc-localstorage/scripts/build.mjs @@ -1,5 +1,5 @@ -const fs = require("fs").promises; -const path = require("path"); +import fs from "fs/promises"; +import path from "path"; const rootDirectory = "./"; const sourceDirectory = "./src"; diff --git a/resources/todomvc/architecture-examples/angular-complex/package.json b/resources/todomvc/architecture-examples/angular-complex/package.json index 117910824..4b39a8321 100644 --- a/resources/todomvc/architecture-examples/angular-complex/package.json +++ b/resources/todomvc/architecture-examples/angular-complex/package.json @@ -8,7 +8,7 @@ "npm": ">=8.19.3" }, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/angular-complex/scripts/build.js b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs similarity index 88% rename from resources/todomvc/architecture-examples/angular-complex/scripts/build.js rename to resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs index 3a13c300a..5c4c5d2d8 100644 --- a/resources/todomvc/architecture-examples/angular-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC Angular Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/backbone-complex/package.json b/resources/todomvc/architecture-examples/backbone-complex/package.json index b75840505..419c73368 100644 --- a/resources/todomvc/architecture-examples/backbone-complex/package.json +++ b/resources/todomvc/architecture-examples/backbone-complex/package.json @@ -8,7 +8,7 @@ }, "private": true, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.js b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs similarity index 88% rename from resources/todomvc/architecture-examples/backbone-complex/scripts/build.js rename to resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs index 802c9f845..0a3a13d14 100644 --- a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC Backbone Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/backbone/package.json b/resources/todomvc/architecture-examples/backbone/package.json index c50e58031..eaa6428d1 100644 --- a/resources/todomvc/architecture-examples/backbone/package.json +++ b/resources/todomvc/architecture-examples/backbone/package.json @@ -8,7 +8,7 @@ }, "private": true, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "dev": "http-server ./ -p 7001 -c-1 --cors", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, diff --git a/resources/todomvc/architecture-examples/backbone/scripts/build.js b/resources/todomvc/architecture-examples/backbone/scripts/build.mjs similarity index 96% rename from resources/todomvc/architecture-examples/backbone/scripts/build.js rename to resources/todomvc/architecture-examples/backbone/scripts/build.mjs index ff06b6773..c6ec2b793 100644 --- a/resources/todomvc/architecture-examples/backbone/scripts/build.js +++ b/resources/todomvc/architecture-examples/backbone/scripts/build.mjs @@ -1,5 +1,5 @@ -const fs = require("fs").promises; -const path = require("path"); +import fs from "fs/promises"; +import path from "path"; const rootDirectory = "./"; const sourceDirectory = "./src"; diff --git a/resources/todomvc/architecture-examples/jquery-complex/package.json b/resources/todomvc/architecture-examples/jquery-complex/package.json index 65303e18a..d635cde0d 100644 --- a/resources/todomvc/architecture-examples/jquery-complex/package.json +++ b/resources/todomvc/architecture-examples/jquery-complex/package.json @@ -2,7 +2,7 @@ "name": "todomvc-jquery-complex", "private": true, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.js b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs similarity index 88% rename from resources/todomvc/architecture-examples/jquery-complex/scripts/build.js rename to resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs index 6f69450f0..7e3220e9b 100644 --- a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC jQuery Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/jquery/package.json b/resources/todomvc/architecture-examples/jquery/package.json index 70e1b5d10..910d0e360 100644 --- a/resources/todomvc/architecture-examples/jquery/package.json +++ b/resources/todomvc/architecture-examples/jquery/package.json @@ -3,7 +3,7 @@ "private": true, "scripts": { "dev": "http-server . -p 7001 -c-1 --cors", - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "dependencies": { diff --git a/resources/todomvc/architecture-examples/jquery/scripts/build.js b/resources/todomvc/architecture-examples/jquery/scripts/build.mjs similarity index 96% rename from resources/todomvc/architecture-examples/jquery/scripts/build.js rename to resources/todomvc/architecture-examples/jquery/scripts/build.mjs index 06924222d..e94df94b2 100644 --- a/resources/todomvc/architecture-examples/jquery/scripts/build.js +++ b/resources/todomvc/architecture-examples/jquery/scripts/build.mjs @@ -1,5 +1,5 @@ -const fs = require("fs").promises; -const path = require("path"); +import fs from "fs/promises"; +import path from "path"; const rootDirectory = "./"; const sourceDirectory = "./src"; diff --git a/resources/todomvc/architecture-examples/lit-complex/package.json b/resources/todomvc/architecture-examples/lit-complex/package.json index a48f27a2e..796c7e2ea 100644 --- a/resources/todomvc/architecture-examples/lit-complex/package.json +++ b/resources/todomvc/architecture-examples/lit-complex/package.json @@ -6,7 +6,7 @@ "npm": ">=8.19.3" }, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 8000 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/lit-complex/scripts/build.js b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs similarity index 91% rename from resources/todomvc/architecture-examples/lit-complex/scripts/build.js rename to resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs index a8b2448ca..4f1f886aa 100644 --- a/resources/todomvc/architecture-examples/lit-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC Lit Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/preact-complex/package.json b/resources/todomvc/architecture-examples/preact-complex/package.json index 181a955b4..50053e036 100644 --- a/resources/todomvc/architecture-examples/preact-complex/package.json +++ b/resources/todomvc/architecture-examples/preact-complex/package.json @@ -8,7 +8,7 @@ "npm": ">=8.19.3" }, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/preact-complex/scripts/build.js b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs similarity index 86% rename from resources/todomvc/architecture-examples/preact-complex/scripts/build.js rename to resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs index d9309af11..0629f911e 100644 --- a/resources/todomvc/architecture-examples/preact-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Build the TodoMVC Preact Complex DOM example. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/react-complex/package.json b/resources/todomvc/architecture-examples/react-complex/package.json index f04f6e93a..dab30bd09 100755 --- a/resources/todomvc/architecture-examples/react-complex/package.json +++ b/resources/todomvc/architecture-examples/react-complex/package.json @@ -8,7 +8,7 @@ "npm": ">=8.19.3" }, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/react-complex/scripts/build.js b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs similarity index 84% rename from resources/todomvc/architecture-examples/react-complex/scripts/build.js rename to resources/todomvc/architecture-examples/react-complex/scripts/build.mjs index 814d42210..589651810 100644 --- a/resources/todomvc/architecture-examples/react-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Build the TodoMVC: React Complex DOM example. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/react-redux-complex/package.json b/resources/todomvc/architecture-examples/react-redux-complex/package.json index 540dfea7e..55eb1184e 100644 --- a/resources/todomvc/architecture-examples/react-redux-complex/package.json +++ b/resources/todomvc/architecture-examples/react-redux-complex/package.json @@ -8,7 +8,7 @@ "npm": ">=8.19.3" }, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.js b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs similarity index 86% rename from resources/todomvc/architecture-examples/react-redux-complex/scripts/build.js rename to resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs index b51b34ec0..632ca516f 100644 --- a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC React-Redux Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/svelte-complex/package.json b/resources/todomvc/architecture-examples/svelte-complex/package.json index c87f3dd1c..c112b6b1c 100644 --- a/resources/todomvc/architecture-examples/svelte-complex/package.json +++ b/resources/todomvc/architecture-examples/svelte-complex/package.json @@ -8,7 +8,7 @@ }, "private": true, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.js b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs similarity index 86% rename from resources/todomvc/architecture-examples/svelte-complex/scripts/build.js rename to resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs index 42fcbdefc..d898dceb9 100644 --- a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC Svelte Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/vue-complex/package.json b/resources/todomvc/architecture-examples/vue-complex/package.json index 4d8012c9d..effae0f73 100644 --- a/resources/todomvc/architecture-examples/vue-complex/package.json +++ b/resources/todomvc/architecture-examples/vue-complex/package.json @@ -8,7 +8,7 @@ "npm": ">=8.19.3" }, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/architecture-examples/vue-complex/scripts/build.js b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs similarity index 86% rename from resources/todomvc/architecture-examples/vue-complex/scripts/build.js rename to resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs index cb46077d8..0d5e63188 100644 --- a/resources/todomvc/architecture-examples/vue-complex/scripts/build.js +++ b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC Vue Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/vanilla-examples/javascript-es5-complex/package.json b/resources/todomvc/vanilla-examples/javascript-es5-complex/package.json index 6666a2451..c76b8f402 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5-complex/package.json +++ b/resources/todomvc/vanilla-examples/javascript-es5-complex/package.json @@ -9,7 +9,7 @@ "private": true, "scripts": { "dev": "http-server ./ -p 7001 -c-1 --cors", - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.js b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs similarity index 88% rename from resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.js rename to resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs index 2590e7875..c9ebaf44d 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.js +++ b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC JavaScript Es5 Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/vanilla-examples/javascript-es5/package.json b/resources/todomvc/vanilla-examples/javascript-es5/package.json index 281884e84..3b8af42f9 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5/package.json +++ b/resources/todomvc/vanilla-examples/javascript-es5/package.json @@ -9,7 +9,7 @@ "private": true, "scripts": { "dev": "http-server ./ -p 7001 -c-1 --cors", - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "dependencies": { diff --git a/experimental/todomvc-localstorage/scripts/build.js b/resources/todomvc/vanilla-examples/javascript-es5/scripts/build.mjs similarity index 96% rename from experimental/todomvc-localstorage/scripts/build.js rename to resources/todomvc/vanilla-examples/javascript-es5/scripts/build.mjs index 046de0e7e..cc923230e 100644 --- a/experimental/todomvc-localstorage/scripts/build.js +++ b/resources/todomvc/vanilla-examples/javascript-es5/scripts/build.mjs @@ -1,5 +1,5 @@ -const fs = require("fs").promises; -const path = require("path"); +import fs from "fs/promises"; +import path from "path"; const rootDirectory = "./"; const sourceDirectory = "./src"; diff --git a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/package.json b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/package.json index b8f71f54f..83a0ea9e1 100644 --- a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/package.json +++ b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/package.json @@ -8,7 +8,7 @@ }, "private": true, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, "devDependencies": { diff --git a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.js b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs similarity index 85% rename from resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.js rename to resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs index 9e9481a91..529f1bd66 100644 --- a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.js +++ b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC JavaScript Es6 Webpack Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/vanilla-examples/javascript-web-components-complex/package.json b/resources/todomvc/vanilla-examples/javascript-web-components-complex/package.json index 22e9ec184..63f7bb872 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components-complex/package.json +++ b/resources/todomvc/vanilla-examples/javascript-web-components-complex/package.json @@ -8,7 +8,7 @@ }, "private": true, "scripts": { - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7006 -c-1 --cors -o" }, "keywords": [], diff --git a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.js b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs similarity index 91% rename from resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.js rename to resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs index 338594b9c..5dfc72b54 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.js +++ b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs @@ -1,8 +1,8 @@ /** * Builds the TodoMVC JavaScript Web Components Complex DOM. */ -const path = require("path"); -const { buildComplex } = require("big-dom-generator/utils/buildComplex"); +import path from "path"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/vanilla-examples/javascript-web-components/package.json b/resources/todomvc/vanilla-examples/javascript-web-components/package.json index d677c19c8..3e4fc42a9 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components/package.json +++ b/resources/todomvc/vanilla-examples/javascript-web-components/package.json @@ -9,7 +9,7 @@ "private": true, "scripts": { "dev": "http-server ./ -p 7005 -c-1 --cors -o", - "build": "node scripts/build.js", + "build": "node scripts/build.mjs", "serve": "http-server ./dist -p 7006 -c-1 --cors -o" }, "keywords": [], diff --git a/resources/todomvc/vanilla-examples/javascript-web-components/scripts/build.js b/resources/todomvc/vanilla-examples/javascript-web-components/scripts/build.mjs similarity index 98% rename from resources/todomvc/vanilla-examples/javascript-web-components/scripts/build.js rename to resources/todomvc/vanilla-examples/javascript-web-components/scripts/build.mjs index be4499d96..8586e96c5 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components/scripts/build.js +++ b/resources/todomvc/vanilla-examples/javascript-web-components/scripts/build.mjs @@ -1,5 +1,5 @@ -const fs = require("fs").promises; -const { dirname } = require("path"); +import fs from "fs/promises"; +import { dirname } from "path"; /** * createDirectory From 894fbde19cee2ea5a41a51e94c0f0b4e182636ee Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:01:38 +0200 Subject: [PATCH 02/11] Fix __dirname in build.mjs --- .../architecture-examples/angular-complex/scripts/build.mjs | 5 +++++ .../architecture-examples/backbone-complex/scripts/build.mjs | 5 +++++ .../architecture-examples/jquery-complex/scripts/build.mjs | 5 +++++ .../architecture-examples/lit-complex/scripts/build.mjs | 5 +++++ .../architecture-examples/preact-complex/scripts/build.mjs | 5 +++++ .../architecture-examples/react-complex/scripts/build.mjs | 5 +++++ .../react-redux-complex/scripts/build.mjs | 5 +++++ .../architecture-examples/svelte-complex/scripts/build.mjs | 5 +++++ .../architecture-examples/vue-complex/scripts/build.mjs | 5 +++++ .../javascript-es5-complex/scripts/build.mjs | 5 +++++ .../javascript-es6-webpack-complex/scripts/build.mjs | 5 +++++ .../javascript-web-components-complex/scripts/build.mjs | 5 +++++ 12 files changed, 60 insertions(+) diff --git a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs index 5c4c5d2d8..81254eeef 100644 --- a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs index 0a3a13d14..11d1da9f6 100644 --- a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs index 7e3220e9b..5d26b3337 100644 --- a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs index 4f1f886aa..2e54dad4f 100644 --- a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs index 0629f911e..824c35944 100644 --- a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs index 589651810..6b397a879 100644 --- a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs index 632ca516f..01be18a52 100644 --- a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs index d898dceb9..6a563cd76 100644 --- a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs index 0d5e63188..59cfa69e9 100644 --- a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs index c9ebaf44d..2bfb6d657 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs index 529f1bd66..47d6bc274 100644 --- a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), diff --git a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs index 5dfc72b54..5302da7f6 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs @@ -3,6 +3,11 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { fileURLToPath as _fileURLToPath } from "url"; +import { dirname as _dirname } from "path"; +const __filename = _fileURLToPath(import.meta.url); +const __dirname = _dirname(__filename); + const options = { callerDirectory: path.resolve(__dirname), From fbb878dca57f38f82ec411a15361b0b69d7e4af3 Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:02:57 +0200 Subject: [PATCH 03/11] Convert buildComplex.js to buildComplex.mjs --- .../angular-complex/scripts/build.mjs | 2 +- .../backbone-complex/scripts/build.mjs | 2 +- .../jquery-complex/scripts/build.mjs | 2 +- .../lit-complex/scripts/build.mjs | 2 +- .../preact-complex/scripts/build.mjs | 2 +- .../react-complex/scripts/build.mjs | 2 +- .../react-redux-complex/scripts/build.mjs | 2 +- .../svelte-complex/scripts/build.mjs | 2 +- .../vue-complex/scripts/build.mjs | 2 +- .../utils/{buildComplex.js => buildComplex.mjs} | 14 ++++++++++---- .../javascript-es5-complex/scripts/build.mjs | 2 +- .../scripts/build.mjs | 2 +- .../scripts/build.mjs | 2 +- 13 files changed, 22 insertions(+), 16 deletions(-) rename resources/todomvc/big-dom-generator/utils/{buildComplex.js => buildComplex.mjs} (95%) diff --git a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs index 81254eeef..9df2851fd 100644 --- a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC Angular Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs index 11d1da9f6..05e28173b 100644 --- a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC Backbone Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs index 5d26b3337..b258df4bf 100644 --- a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC jQuery Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs index 2e54dad4f..dbbdea3ef 100644 --- a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC Lit Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs index 824c35944..c31aa2a83 100644 --- a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Build the TodoMVC Preact Complex DOM example. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs index 6b397a879..b1eabc660 100644 --- a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Build the TodoMVC: React Complex DOM example. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs index 01be18a52..636658257 100644 --- a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC React-Redux Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs index 6a563cd76..a541482b4 100644 --- a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC Svelte Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs index 59cfa69e9..c57e961ee 100644 --- a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC Vue Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/big-dom-generator/utils/buildComplex.js b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs similarity index 95% rename from resources/todomvc/big-dom-generator/utils/buildComplex.js rename to resources/todomvc/big-dom-generator/utils/buildComplex.mjs index 0fbd7f629..70213f31c 100644 --- a/resources/todomvc/big-dom-generator/utils/buildComplex.js +++ b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs @@ -1,6 +1,12 @@ -const fs = require("fs"); -const path = require("path"); -const { execSync } = require("child_process"); +import fs from "fs"; +import path from "path"; +import { execSync } from "child_process"; +import { fileURLToPath } from "url"; +import { createRequire } from "module"; + +const require = createRequire(import.meta.url); +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); /** * Builds the complex version of TodoMVC. @@ -157,4 +163,4 @@ function getHtmlBodySync(filePath) { return htmlContent.substring(bodyStartIndex + 6, bodyEndIndex); } -module.exports = { buildComplex }; +export { buildComplex }; diff --git a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs index 2bfb6d657..063b55048 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC JavaScript Es5 Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs index 47d6bc274..abaaea339 100644 --- a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC JavaScript Es6 Webpack Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); diff --git a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs index 5302da7f6..46e18769b 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs @@ -2,7 +2,7 @@ * Builds the TodoMVC JavaScript Web Components Complex DOM. */ import path from "path"; -import { buildComplex } from "big-dom-generator/utils/buildComplex.js"; +import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; import { fileURLToPath as _fileURLToPath } from "url"; import { dirname as _dirname } from "path"; const __filename = _fileURLToPath(import.meta.url); From 511b711f429f3c978dfb25a084aaa1680877c52b Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:07:15 +0200 Subject: [PATCH 04/11] update --- .../utils/{createVariant.js => createVariant.mjs} | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) rename resources/todomvc/big-dom-generator/utils/{createVariant.js => createVariant.mjs} (91%) diff --git a/resources/todomvc/big-dom-generator/utils/createVariant.js b/resources/todomvc/big-dom-generator/utils/createVariant.mjs similarity index 91% rename from resources/todomvc/big-dom-generator/utils/createVariant.js rename to resources/todomvc/big-dom-generator/utils/createVariant.mjs index f3a1df4c5..9e6969e0a 100644 --- a/resources/todomvc/big-dom-generator/utils/createVariant.js +++ b/resources/todomvc/big-dom-generator/utils/createVariant.mjs @@ -1,11 +1,12 @@ +import fs from "fs"; +import postcss from "postcss"; + /** * Create a variant of big-dom.css by adding a property * that creates a CSS stacking context for the overflow scroller (
) * to trigger different code paths related to scrolling in browsers. */ try { - const fs = require("fs"); - const postcss = require("postcss"); const INPUT_FILE_PATH = "./dist/big-dom.css"; const OUTPUT_FILE_PATH = "./dist/big-dom-with-stacking-context-scrollable.css"; From 38c9b17b745c284f3775461cad3f7b6b521da57d Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:07:42 +0200 Subject: [PATCH 05/11] Convert createVariant.js to createVariant.mjs --- resources/todomvc/big-dom-generator/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/todomvc/big-dom-generator/package.json b/resources/todomvc/big-dom-generator/package.json index 4b9388c7a..342751d50 100644 --- a/resources/todomvc/big-dom-generator/package.json +++ b/resources/todomvc/big-dom-generator/package.json @@ -8,7 +8,7 @@ }, "scripts": { "build": "webpack --config webpack.prod.js", - "postbuild": "node dist/app.bundle.js && purgecss -css dist/big-dom.css --content dist/index.html --output=dist/big-dom.css && rm dist/app.bundle.js && rm dist/app.bundle.js.LICENSE.txt && node utils/createVariant.js", + "postbuild": "node dist/app.bundle.js && purgecss -css dist/big-dom.css --content dist/index.html --output=dist/big-dom.css && rm dist/app.bundle.js && rm dist/app.bundle.js.LICENSE.txt && node utils/createVariant.mjs", "dev": "webpack serve --open --config webpack.dev.js", "serve": "http-server ./dist -p 7002 -c-1 --cors" }, From a22c997ac10c3f84ea3fadde6d98ce4d535ea55d Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:08:02 +0200 Subject: [PATCH 06/11] partial-revert --- .../todomvc-localstorage/dist/base.css | 141 +++++++ .../todomvc-localstorage/dist/index.css | 393 ++++++++++++++++++ .../todomvc-localstorage/dist/index.html | 18 +- 3 files changed, 543 insertions(+), 9 deletions(-) create mode 100644 experimental/todomvc-localstorage/dist/base.css create mode 100644 experimental/todomvc-localstorage/dist/index.css diff --git a/experimental/todomvc-localstorage/dist/base.css b/experimental/todomvc-localstorage/dist/base.css new file mode 100644 index 000000000..da65968a7 --- /dev/null +++ b/experimental/todomvc-localstorage/dist/base.css @@ -0,0 +1,141 @@ +hr { + margin: 20px 0; + border: 0; + border-top: 1px dashed #c5c5c5; + border-bottom: 1px dashed #f7f7f7; +} + +.learn a { + font-weight: normal; + text-decoration: none; + color: #b83f45; +} + +.learn a:hover { + text-decoration: underline; + color: #787e7e; +} + +.learn h3, +.learn h4, +.learn h5 { + margin: 10px 0; + font-weight: 500; + line-height: 1.2; + color: #000; +} + +.learn h3 { + font-size: 24px; +} + +.learn h4 { + font-size: 18px; +} + +.learn h5 { + margin-bottom: 0; + font-size: 14px; +} + +.learn ul { + padding: 0; + margin: 0 0 30px 25px; +} + +.learn li { + line-height: 20px; +} + +.learn p { + font-size: 15px; + font-weight: 300; + line-height: 1.3; + margin-top: 0; + margin-bottom: 0; +} + +#issue-count { + display: none; +} + +.quote { + border: none; + margin: 20px 0 60px 0; +} + +.quote p { + font-style: italic; +} + +.quote p:before { + content: '“'; + font-size: 50px; + opacity: .15; + position: absolute; + top: -20px; + left: 3px; +} + +.quote p:after { + content: '”'; + font-size: 50px; + opacity: .15; + position: absolute; + bottom: -42px; + right: 3px; +} + +.quote footer { + position: absolute; + bottom: -40px; + right: 0; +} + +.quote footer img { + border-radius: 3px; +} + +.quote footer a { + margin-left: 5px; + vertical-align: middle; +} + +.speech-bubble { + position: relative; + padding: 10px; + background: rgba(0, 0, 0, .04); + border-radius: 5px; +} + +.speech-bubble:after { + content: ''; + position: absolute; + top: 100%; + right: 30px; + border: 13px solid transparent; + border-top-color: rgba(0, 0, 0, .04); +} + +.learn-bar > .learn { + position: absolute; + width: 272px; + top: 8px; + left: -300px; + padding: 10px; + border-radius: 5px; + background-color: rgba(255, 255, 255, .6); + transition-property: left; + transition-duration: 500ms; +} + +@media (min-width: 899px) { + .learn-bar { + width: auto; + padding-left: 300px; + } + + .learn-bar > .learn { + left: 8px; + } +} diff --git a/experimental/todomvc-localstorage/dist/index.css b/experimental/todomvc-localstorage/dist/index.css new file mode 100644 index 000000000..fcc3da583 --- /dev/null +++ b/experimental/todomvc-localstorage/dist/index.css @@ -0,0 +1,393 @@ +@charset "utf-8"; + +html, +body { + margin: 0; + padding: 0; +} + +button { + margin: 0; + padding: 0; + border: 0; + background: none; + font-size: 100%; + vertical-align: baseline; + font-family: inherit; + font-weight: inherit; + color: inherit; + -webkit-appearance: none; + appearance: none; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +body { + font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif; + line-height: 1.4em; + background: #f5f5f5; + color: #111111; + min-width: 230px; + max-width: 550px; + margin: 0 auto; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + font-weight: 300; +} + +.hidden { + display: none; +} + +.todoapp { + background: #fff; + margin: 130px 0 40px 0; + position: relative; + box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), + 0 25px 50px 0 rgba(0, 0, 0, 0.1); +} + +.todoapp input::-webkit-input-placeholder { + font-style: italic; + font-weight: 400; + color: rgba(0, 0, 0, 0.4); +} + +.todoapp input::-moz-placeholder { + font-style: italic; + font-weight: 400; + color: rgba(0, 0, 0, 0.4); +} + +.todoapp input::input-placeholder { + font-style: italic; + font-weight: 400; + color: rgba(0, 0, 0, 0.4); +} + +.todoapp h1 { + position: absolute; + top: -140px; + width: 100%; + font-size: 80px; + font-weight: 200; + text-align: center; + color: #b83f45; + -webkit-text-rendering: optimizeLegibility; + -moz-text-rendering: optimizeLegibility; + text-rendering: optimizeLegibility; +} + +.new-todo, +.edit { + position: relative; + margin: 0; + width: 100%; + font-size: 24px; + font-family: inherit; + font-weight: inherit; + line-height: 1.4em; + color: inherit; + padding: 6px; + border: 1px solid #999; + box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2); + box-sizing: border-box; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.new-todo { + padding: 16px 16px 16px 60px; + height: 65px; + border: none; + background: rgba(0, 0, 0, 0.003); + box-shadow: inset 0 -2px 1px rgba(0,0,0,0.03); +} + +.main { + position: relative; + z-index: 2; + border-top: 1px solid #e6e6e6; +} + +.toggle-all { + width: 1px; + height: 1px; + border: none; /* Mobile Safari */ + opacity: 0; + position: absolute; + right: 100%; + bottom: 100%; +} + +.toggle-all + label { + display: flex; + align-items: center; + justify-content: center; + width: 45px; + height: 65px; + font-size: 0; + position: absolute; + top: -65px; + left: -0; +} + +.toggle-all + label:before { + content: '❯'; + display: inline-block; + font-size: 22px; + color: #949494; + padding: 10px 27px 10px 27px; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); +} + +.toggle-all:checked + label:before { + color: #484848; +} + +.todo-list { + margin: 0; + padding: 0; + list-style: none; +} + +.todo-list li { + position: relative; + font-size: 24px; + border-bottom: 1px solid #ededed; +} + +.todo-list li:last-child { + border-bottom: none; +} + +.todo-list li.editing { + border-bottom: none; + padding: 0; +} + +.todo-list li.editing .edit { + display: block; + width: calc(100% - 43px); + padding: 12px 16px; + margin: 0 0 0 43px; +} + +.todo-list li.editing .view { + display: none; +} + +.todo-list li .toggle { + text-align: center; + width: 40px; + /* auto, since non-WebKit browsers doesn't support input styling */ + height: auto; + position: absolute; + top: 0; + bottom: 0; + margin: auto 0; + border: none; /* Mobile Safari */ + -webkit-appearance: none; + appearance: none; +} + +.todo-list li .toggle { + opacity: 0; +} + +.todo-list li .toggle + label { + /* + Firefox requires `#` to be escaped - https://bugzilla.mozilla.org/show_bug.cgi?id=922433 + IE and Edge requires *everything* to be escaped to render, so we do that instead of just the `#` - https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/7157459/ + */ + background-image: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%22-10%20-18%20100%20135%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2250%22%20fill%3D%22none%22%20stroke%3D%22%23949494%22%20stroke-width%3D%223%22/%3E%3C/svg%3E'); + background-repeat: no-repeat; + background-position: center left; +} + +.todo-list li .toggle:checked + label { + background-image: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%22-10%20-18%20100%20135%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2250%22%20fill%3D%22none%22%20stroke%3D%22%2359A193%22%20stroke-width%3D%223%22%2F%3E%3Cpath%20fill%3D%22%233EA390%22%20d%3D%22M72%2025L42%2071%2027%2056l-4%204%2020%2020%2034-52z%22%2F%3E%3C%2Fsvg%3E'); +} + +.todo-list li label { + word-break: break-all; + padding: 15px 15px 15px 60px; + display: block; + line-height: 1.2; + transition: color 0.4s; + font-weight: 400; + color: #484848; +} + +.todo-list li.completed label { + color: #949494; + text-decoration: line-through; +} + +.todo-list li .destroy { + display: none; + position: absolute; + top: 0; + right: 10px; + bottom: 0; + width: 40px; + height: 40px; + margin: auto 0; + font-size: 30px; + color: #949494; + transition: color 0.2s ease-out; +} + +.todo-list li .destroy:hover, +.todo-list li .destroy:focus { + color: #C18585; +} + +.todo-list li .destroy:after { + content: '×'; + display: block; + height: 100%; + line-height: 1.1; +} + +.todo-list li:hover .destroy { + display: block; +} + +.todo-list li .edit { + display: none; +} + +.todo-list li.editing:last-child { + margin-bottom: -1px; +} + +.footer { + padding: 10px 15px; + height: 20px; + text-align: center; + font-size: 15px; + border-top: 1px solid #e6e6e6; +} + +.footer:before { + content: ''; + position: absolute; + right: 0; + bottom: 0; + left: 0; + height: 50px; + overflow: hidden; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), + 0 8px 0 -3px #f6f6f6, + 0 9px 1px -3px rgba(0, 0, 0, 0.2), + 0 16px 0 -6px #f6f6f6, + 0 17px 2px -6px rgba(0, 0, 0, 0.2); +} + +.todo-count { + float: left; + text-align: left; +} + +.todo-count strong { + font-weight: 300; +} + +.filters { + margin: 0; + padding: 0; + list-style: none; + position: absolute; + right: 0; + left: 0; +} + +.filters li { + display: inline; +} + +.filters li a { + color: inherit; + margin: 3px; + padding: 3px 7px; + text-decoration: none; + border: 1px solid transparent; + border-radius: 3px; +} + +.filters li a:hover { + border-color: #DB7676; +} + +.filters li a.selected { + border-color: #CE4646; +} + +.clear-completed, +html .clear-completed:active { + float: right; + position: relative; + line-height: 19px; + text-decoration: none; + cursor: pointer; +} + +.clear-completed:hover { + text-decoration: underline; +} + +.info { + margin: 65px auto 0; + color: #4d4d4d; + font-size: 11px; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + text-align: center; +} + +.info p { + line-height: 1; +} + +.info a { + color: inherit; + text-decoration: none; + font-weight: 400; +} + +.info a:hover { + text-decoration: underline; +} + +/* + Hack to remove background from Mobile Safari. + Can't use it globally since it destroys checkboxes in Firefox +*/ +@media screen and (-webkit-min-device-pixel-ratio:0) { + .toggle-all, + .todo-list li .toggle { + background: none; + } + + .todo-list li .toggle { + height: 40px; + } +} + +@media (max-width: 430px) { + .footer { + height: 50px; + } + + .filters { + bottom: 10px; + } +} + +:focus, +.toggle:focus + label, +.toggle-all:focus + label { + box-shadow: 0 0 2px 2px #CF7D7D; + outline: 0; +} diff --git a/experimental/todomvc-localstorage/dist/index.html b/experimental/todomvc-localstorage/dist/index.html index 2b016620f..ab573ce1b 100644 --- a/experimental/todomvc-localstorage/dist/index.html +++ b/experimental/todomvc-localstorage/dist/index.html @@ -6,8 +6,8 @@ TodoMVC: JavaScript Es5 - - + +
@@ -44,12 +44,12 @@

todos

Press 'enter' to add the todo.

Double-click to edit a todo

- - - - - - - + + + + + + + From ee14bb5243e003e3893c9e17c53d159b1fac8324 Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:09:59 +0200 Subject: [PATCH 07/11] Use import.meta.dirname instead of url shim --- resources/todomvc/big-dom-generator/utils/buildComplex.mjs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/resources/todomvc/big-dom-generator/utils/buildComplex.mjs b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs index 70213f31c..1aba727ae 100644 --- a/resources/todomvc/big-dom-generator/utils/buildComplex.mjs +++ b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs @@ -1,12 +1,10 @@ import fs from "fs"; import path from "path"; import { execSync } from "child_process"; -import { fileURLToPath } from "url"; import { createRequire } from "module"; const require = createRequire(import.meta.url); -const __filename = fileURLToPath(import.meta.url); -const __dirname = path.dirname(__filename); +const __dirname = import.meta.dirname; /** * Builds the complex version of TodoMVC. From ce86fa0e60c25000714ac25968e3d220727f41d6 Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:11:30 +0200 Subject: [PATCH 08/11] Use import.meta.dirname instead of url shim --- .../architecture-examples/angular-complex/scripts/build.mjs | 5 +---- .../architecture-examples/backbone-complex/scripts/build.mjs | 5 +---- .../architecture-examples/jquery-complex/scripts/build.mjs | 5 +---- .../architecture-examples/lit-complex/scripts/build.mjs | 5 +---- .../architecture-examples/preact-complex/scripts/build.mjs | 5 +---- .../architecture-examples/react-complex/scripts/build.mjs | 5 +---- .../react-redux-complex/scripts/build.mjs | 5 +---- .../architecture-examples/svelte-complex/scripts/build.mjs | 5 +---- .../architecture-examples/vue-complex/scripts/build.mjs | 5 +---- .../javascript-es5-complex/scripts/build.mjs | 5 +---- .../javascript-es6-webpack-complex/scripts/build.mjs | 5 +---- .../javascript-web-components-complex/scripts/build.mjs | 5 +---- 12 files changed, 12 insertions(+), 48 deletions(-) diff --git a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs index 9df2851fd..13bc9a964 100644 --- a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs index 05e28173b..da3810aeb 100644 --- a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs index b258df4bf..302d57cee 100644 --- a/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/jquery-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs index dbbdea3ef..ee936371b 100644 --- a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs index c31aa2a83..e90fac6f1 100644 --- a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs index b1eabc660..7370d44e0 100644 --- a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs index 636658257..76ff7f52c 100644 --- a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs index a541482b4..c983334d4 100644 --- a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs index c57e961ee..9dce6c754 100644 --- a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs index 063b55048..d9f6c3d41 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs index abaaea339..810ac5453 100644 --- a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { diff --git a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs index 46e18769b..5987556ab 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs @@ -3,10 +3,7 @@ */ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; -import { fileURLToPath as _fileURLToPath } from "url"; -import { dirname as _dirname } from "path"; -const __filename = _fileURLToPath(import.meta.url); -const __dirname = _dirname(__filename); +const __dirname = import.meta.dirname; const options = { From c29b38a6e7285897f08ef0a0b70e113c049c8f0b Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 10:14:52 +0200 Subject: [PATCH 09/11] Use inline export for buildComplex --- resources/todomvc/big-dom-generator/utils/buildComplex.mjs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/resources/todomvc/big-dom-generator/utils/buildComplex.mjs b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs index 1aba727ae..f1b22c3a7 100644 --- a/resources/todomvc/big-dom-generator/utils/buildComplex.mjs +++ b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs @@ -25,7 +25,7 @@ const __dirname = import.meta.dirname; * @param {string} options.standaloneDirectory - The directory of the TodoMVC standalone version. * @param {string} options.complexDirectory - The directory of the TodoMVC complex version. */ -function buildComplex(options) { +export function buildComplex(options) { const { callerDirectory, sourceDirectory, @@ -161,4 +161,3 @@ function getHtmlBodySync(filePath) { return htmlContent.substring(bodyStartIndex + 6, bodyEndIndex); } -export { buildComplex }; From 9f2132b424e51a9c63ecc114ff4ef28f484e14aa Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 15:41:41 +0200 Subject: [PATCH 10/11] formatting --- .../architecture-examples/angular-complex/scripts/build.mjs | 1 - .../architecture-examples/backbone-complex/scripts/build.mjs | 1 - .../todomvc/architecture-examples/lit-complex/scripts/build.mjs | 1 - .../architecture-examples/preact-complex/scripts/build.mjs | 1 - .../architecture-examples/react-complex/scripts/build.mjs | 1 - .../architecture-examples/react-redux-complex/scripts/build.mjs | 1 - .../architecture-examples/svelte-complex/scripts/build.mjs | 1 - .../todomvc/architecture-examples/vue-complex/scripts/build.mjs | 1 - resources/todomvc/big-dom-generator/utils/buildComplex.mjs | 1 - resources/todomvc/big-dom-generator/utils/createVariant.mjs | 1 - .../vanilla-examples/javascript-es5-complex/scripts/build.mjs | 1 - .../javascript-es6-webpack-complex/scripts/build.mjs | 1 - .../javascript-web-components-complex/scripts/build.mjs | 1 - 13 files changed, 13 deletions(-) diff --git a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs index 13bc9a964..0967ca52d 100644 --- a/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/angular-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-angular", "dist"), diff --git a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs index da3810aeb..691f04619 100644 --- a/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/backbone-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-backbone", "dist"), diff --git a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs index ee936371b..894318a0c 100644 --- a/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/lit-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-lit", "dist"), diff --git a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs index e90fac6f1..133d2924a 100644 --- a/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/preact-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-preact", "dist"), diff --git a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs index 7370d44e0..49fdf8eaf 100644 --- a/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-react", "dist"), diff --git a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs index 76ff7f52c..870e615c8 100644 --- a/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/react-redux-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-react-redux", "dist"), diff --git a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs index c983334d4..ee7b201cd 100644 --- a/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/svelte-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-svelte", "dist"), diff --git a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs index 9dce6c754..b2a7e475c 100644 --- a/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs +++ b/resources/todomvc/architecture-examples/vue-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-vue", "dist"), diff --git a/resources/todomvc/big-dom-generator/utils/buildComplex.mjs b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs index f1b22c3a7..4e1cc1378 100644 --- a/resources/todomvc/big-dom-generator/utils/buildComplex.mjs +++ b/resources/todomvc/big-dom-generator/utils/buildComplex.mjs @@ -160,4 +160,3 @@ function getHtmlBodySync(filePath) { return htmlContent.substring(bodyStartIndex + 6, bodyEndIndex); } - diff --git a/resources/todomvc/big-dom-generator/utils/createVariant.mjs b/resources/todomvc/big-dom-generator/utils/createVariant.mjs index 9e6969e0a..934864288 100644 --- a/resources/todomvc/big-dom-generator/utils/createVariant.mjs +++ b/resources/todomvc/big-dom-generator/utils/createVariant.mjs @@ -7,7 +7,6 @@ import postcss from "postcss"; * to trigger different code paths related to scrolling in browsers. */ try { - const INPUT_FILE_PATH = "./dist/big-dom.css"; const OUTPUT_FILE_PATH = "./dist/big-dom-with-stacking-context-scrollable.css"; diff --git a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs index d9f6c3d41..2d75a1108 100644 --- a/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es5-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-javascript-es5", "dist"), diff --git a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs index 810ac5453..08c7f2bd7 100644 --- a/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-javascript-es6-webpack", "dist"), diff --git a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs index 5987556ab..45dce8bd3 100644 --- a/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs +++ b/resources/todomvc/vanilla-examples/javascript-web-components-complex/scripts/build.mjs @@ -5,7 +5,6 @@ import path from "path"; import { buildComplex } from "big-dom-generator/utils/buildComplex.mjs"; const __dirname = import.meta.dirname; - const options = { callerDirectory: path.resolve(__dirname), sourceDirectory: path.join("..", "node_modules", "todomvc-javascript-web-components", "dist"), From 95ffe2a411e12d14043533970c01b897eac3c0f5 Mon Sep 17 00:00:00 2001 From: Camillo Bruni Date: Thu, 11 Jun 2026 17:29:59 +0200 Subject: [PATCH 11/11] formatted --- resources/todomvc/big-dom-generator/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/todomvc/big-dom-generator/package.json b/resources/todomvc/big-dom-generator/package.json index 398c0e830..deff56c34 100644 --- a/resources/todomvc/big-dom-generator/package.json +++ b/resources/todomvc/big-dom-generator/package.json @@ -90,4 +90,4 @@ "webpack-dev-server": "^4.15.0", "webpack-merge": "^5.9.0" } -} \ No newline at end of file +}