From 603aaf9cbf96577ad435216e4869caab6a48d63e Mon Sep 17 00:00:00 2001 From: Satyam Seth Date: Sun, 13 Oct 2024 15:28:43 +0530 Subject: [PATCH 1/3] remove old css, favicon and index.html --- assets/favicon.ico | Bin 1150 -> 0 bytes dist/css/main.css | 2 -- dist/css/maps/main.css.map | 1 - index.html | 13 ------------- 4 files changed, 16 deletions(-) delete mode 100644 assets/favicon.ico delete mode 100644 dist/css/main.css delete mode 100644 dist/css/maps/main.css.map delete mode 100644 index.html diff --git a/assets/favicon.ico b/assets/favicon.ico deleted file mode 100644 index 7c212f15bc090d97cd118eb59dc03d0d542099fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1150 zcmchXO=uHA6vw9^^k}?z5yX@9DxN%e@gR8dqKA5s?p9NK5WymfA_n{bv4yBasx{QZ z`c;~M65WQjw1+e#&E~`1d9&FMP|-jS(qsJCUB)+QB5O#{gSg9o-^}d%X5Rj1d4vq$ z9f=Tp?jdKk5wepIGK9h*9N8MjKnT9Of2sGs9 zFzS8QS+E(rDXp#MEr5fz33sxuUY2cuF_g5FNogv3{~Xz%7e8tQ=b%>MPZGB|vLiOo zLTp0fHs}vs2Jz{s7{5^6Z1!St?EA?Y-v!n3>|!RRx~93`G2v2vCHvZCY}hvGu?K~E zb&Cx?U<}aj2F9=WJ-DWq6W{JIn$Wd%#R1rd{P}kKc!^rW6uhQ5Z)8`64-$BB z?8l-S-!AyvlFF0!Zng4v7!>Z_yvSV>rsvt`l-N6|ISu?l2ZW-)cZ(SIT==)PtQI@| zrIkmz@UIRaQPme&*E`Q2@s(W^#9o3t!_s1CZ6Us=5Gn8slj;E-M_PC1O7>Sn@y z%$cX3K5pf2QKL8$ztPHH_&*cB&Y@P;!}Gh_Mx|utma`4q?+E&*yiGsbKrb(&2NRi; nvQek+=DV4H+b4v7M8!~86#TY2^#O~DC?JFkqOSceJU;Rh*art6 diff --git a/dist/css/main.css b/dist/css/main.css deleted file mode 100644 index 6e614c9..0000000 --- a/dist/css/main.css +++ /dev/null @@ -1,2 +0,0 @@ -html{box-sizing:border-box}*,*::before,*::after{margin:0;padding:0;box-sizing:inherit}body{width:100%;height:100dvh;color:#f5f5f5;background-color:#000}body{width:100%;height:100vh;display:grid;grid-auto-flow:column;place-items:center}input{font-size:2rem;width:60px;margin:1rem;text-align:center;border-radius:1rem;opacity:.75}input:focus{opacity:1} -/*# sourceMappingURL=maps/main.css.map */ diff --git a/dist/css/maps/main.css.map b/dist/css/maps/main.css.map deleted file mode 100644 index aa65a8f..0000000 --- a/dist/css/maps/main.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["base/_resets.scss","main.scss"],"names":[],"mappings":"AAGA,KACI,sBASJ,qBAGI,SACA,UACA,mBAMJ,KACI,WACA,cACA,cACA,sBCvBJ,KACI,WACA,aACA,aACA,sBACA,mBAIJ,MACI,eACA,WACA,YACA,kBACA,mBAEA,YAEA,YACI","file":"../main.css","sourcesContent":["/**\r\n * Set up a decent box model on the root element\r\n */\r\nhtml {\r\n box-sizing: border-box;\r\n}\r\n\r\n/**\r\n * Make all elements from the DOM inherit from the parent box-sizing\r\n * Since `*` has a specificity of 0, it does not override the `html` value\r\n * making all elements inheriting from the root box-sizing value\r\n * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/\r\n */\r\n*,\r\n*::before,\r\n*::after {\r\n margin: 0;\r\n padding: 0;\r\n box-sizing: inherit;\r\n}\r\n\r\n/**\r\n * Basic body style\r\n */\r\nbody {\r\n width: 100%;\r\n height: 100dvh;\r\n color: whitesmoke;\r\n background-color: black;\r\n}","@charset \"UTF-8\";\r\n\r\n// Base stuff\r\n@import 'base/resets';\r\n\r\nbody {\r\n width: 100%;\r\n height: 100vh;\r\n display: grid;\r\n grid-auto-flow: column;\r\n place-items: center;\r\n}\r\n\r\n\r\ninput {\r\n font-size: 2rem;\r\n width: 60px;\r\n margin: 1rem;\r\n text-align: center;\r\n border-radius: 1rem;\r\n\r\n opacity: 0.75;\r\n\r\n &:focus {\r\n opacity: 1;\r\n }\r\n}"]} \ No newline at end of file diff --git a/index.html b/index.html deleted file mode 100644 index ab91f1d..0000000 --- a/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - OTP Field - - - - - From d9636213d7405e662c715dafbfb79ce97d61a673 Mon Sep 17 00:00:00 2001 From: Satyam Seth Date: Sun, 13 Oct 2024 15:30:52 +0530 Subject: [PATCH 2/3] add otp field and box scss --- src/scss/_box.scss | 35 +++++++++++++++++++++++++++++++++++ src/scss/_field.scss | 30 ++++++++++++++++++++++++++++++ src/scss/base/_resets.scss | 30 ------------------------------ src/scss/main.scss | 27 --------------------------- src/ts/components/field.ts | 2 ++ 5 files changed, 67 insertions(+), 57 deletions(-) create mode 100644 src/scss/_box.scss create mode 100644 src/scss/_field.scss delete mode 100644 src/scss/base/_resets.scss delete mode 100644 src/scss/main.scss diff --git a/src/scss/_box.scss b/src/scss/_box.scss new file mode 100644 index 0000000..5b7ddb7 --- /dev/null +++ b/src/scss/_box.scss @@ -0,0 +1,35 @@ +@mixin otp-box { + .otp-box { + width: 3rem; + height: 3rem; + padding: 0.25rem; + opacity: 0.9; + text-align: center; + color: #333; + font-size: 2rem; + background-color: white; + border-radius: 0.5rem; + border: 0.25rem solid gray; + transition: all 0.3s; + + &:focus { + outline: none; + border-color: #007bff; + opacity: 1; + transform: scale(1.1); + } + + &:disabled { + border: none; + cursor: not-allowed; + opacity: 0.75; + transform: scale(0.9); + } + + &::placeholder { + color: gray; + } + + @content; + } +} diff --git a/src/scss/_field.scss b/src/scss/_field.scss new file mode 100644 index 0000000..852db18 --- /dev/null +++ b/src/scss/_field.scss @@ -0,0 +1,30 @@ +@import './box'; + +@mixin otp-field { + .otp-field { + display: flex; + gap: 1rem; + + @include otp-box; + + &.error input.otp-box { + color: #721c24; + border-color: #dc3545; + background-color: #f8d7da; + } + + &.success input.otp-box { + color: #155724; + border-color: #28a745; + background-color: #d4edda; + } + + &.warning input.otp-box { + color: #856404; + border-color: #ffc107; + background-color: #fff3cd; + } + + @content; + } +} diff --git a/src/scss/base/_resets.scss b/src/scss/base/_resets.scss deleted file mode 100644 index 9e28e19..0000000 --- a/src/scss/base/_resets.scss +++ /dev/null @@ -1,30 +0,0 @@ -/** - * Set up a decent box model on the root element - */ -html { - box-sizing: border-box; -} - -/** - * Make all elements from the DOM inherit from the parent box-sizing - * Since `*` has a specificity of 0, it does not override the `html` value - * making all elements inheriting from the root box-sizing value - * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ - */ -*, -*::before, -*::after { - margin: 0; - padding: 0; - box-sizing: inherit; -} - -/** - * Basic body style - */ -body { - width: 100%; - height: 100dvh; - color: whitesmoke; - background-color: black; -} \ No newline at end of file diff --git a/src/scss/main.scss b/src/scss/main.scss deleted file mode 100644 index b425d6d..0000000 --- a/src/scss/main.scss +++ /dev/null @@ -1,27 +0,0 @@ -@charset "UTF-8"; - -// Base stuff -@import 'base/resets'; - -body { - width: 100%; - height: 100vh; - display: grid; - grid-auto-flow: column; - place-items: center; -} - - -input { - font-size: 2rem; - width: 60px; - margin: 1rem; - text-align: center; - border-radius: 1rem; - - opacity: 0.75; - - &:focus { - opacity: 1; - } -} \ No newline at end of file diff --git a/src/ts/components/field.ts b/src/ts/components/field.ts index 7c20530..9b012e1 100644 --- a/src/ts/components/field.ts +++ b/src/ts/components/field.ts @@ -88,6 +88,7 @@ export class OTPField { * @remarks * This method creates a single OTP input box (HTML `input` element) and sets its properties: * - `id`: A unique ID for the input box, generated by `getBoxId(index)`. + * - `className`: CSS class of 'otp-box' to allow for easy styling and manipulation. * - `type`: Set to `'text'` to allow text input. * - `maxLength`: Restricts the input to a single character. * - `autocomplete`: Disabled to prevent suggestions from the browser. @@ -103,6 +104,7 @@ export class OTPField { const box = document.createElement('input'); box.id = this.getBoxId(index); // Assign unique ID and basic attributes + box.className = 'otp-box'; // Assign CSS class box.type = 'text'; // Text input field box.maxLength = 1; // Restrict to 1 character box.autocomplete = 'off'; // Disable browser autocomplete From b647bfcd92b20f4de03bb786a85094afa2e2d265 Mon Sep 17 00:00:00 2001 From: Satyam Seth Date: Sun, 13 Oct 2024 15:32:45 +0530 Subject: [PATCH 3/3] remve scss build gulp task --- gulpfile.js | 23 +-- package-lock.json | 388 ---------------------------------------------- package.json | 5 - 3 files changed, 2 insertions(+), 414 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index 481a205..7322869 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,19 +1,6 @@ const gulp = require('gulp'); -const dartSass = require('sass'); -const sass = require('gulp-sass')(dartSass); -const sourcemaps = require('gulp-sourcemaps'); const ts = require('gulp-typescript'); -// build scss -const buildScss = () => { - return gulp - .src('src/scss/**/*.scss') - .pipe(sourcemaps.init()) - .pipe(sass({ outputStyle: 'compressed' }).on('error', sass.logError)) - .pipe(sourcemaps.write('./maps')) - .pipe(gulp.dest('dist/css')); -}; - // build typescript const buildTs = () => { const tsProject = ts.createProject('tsconfig.json'); @@ -23,16 +10,10 @@ const buildTs = () => { .pipe(gulp.dest(tsProject.config.compilerOptions.outDir)); }; -// task to build scss -gulp.task('build-scss', buildScss); - // task to build typescript -gulp.task('build-ts', buildTs); - -// default task -gulp.task('default', gulp.parallel(buildScss, buildTs)); +gulp.task('default', buildTs); // watch for change gulp.task('watch', () => { - gulp.watch(['src'], gulp.parallel(buildScss, buildTs)); + gulp.watch(['src'], buildTs); }); diff --git a/package-lock.json b/package-lock.json index e24a7b3..3e16287 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,15 +23,12 @@ "eslint-plugin-import": "^2.28.0", "eslint-plugin-prettier": "^5.0.0", "gulp": "^4.0.0", - "gulp-sass": "^5.1.0", - "gulp-sourcemaps": "^3.0.0", "gulp-typescript": "^6.0.0-alpha.1", "jsdom": "^22.1.0", "jsdom-global": "^3.0.2", "mocha": "^10.2.0", "nyc": "^15.1.0", "prettier": "^3.0.1", - "sass": "^1.65.1", "sass-lint": "^1.13.1", "sinon": "^16.0.0", "ts-node": "^10.9.1", @@ -531,78 +528,6 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@gulp-sourcemaps/identity-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-2.0.1.tgz", - "integrity": "sha512-Tb+nSISZku+eQ4X1lAkevcQa+jknn/OVUgZ3XCxEKIsLsqYuPoJwJOPQeaOk75X3WPftb29GWY1eqE7GLsXb1Q==", - "dev": true, - "dependencies": { - "acorn": "^6.4.1", - "normalize-path": "^3.0.0", - "postcss": "^7.0.16", - "source-map": "^0.6.0", - "through2": "^3.0.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/@gulp-sourcemaps/identity-map/node_modules/acorn": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", - "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/@gulp-sourcemaps/identity-map/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@gulp-sourcemaps/identity-map/node_modules/through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - }, - "node_modules/@gulp-sourcemaps/map-sources": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", - "integrity": "sha512-o/EatdaGt8+x2qpb0vFLC/2Gug/xYPRXb6a+ET1wGYKozKN3krDWC/zZFZAtrzxJHuDL12mwdfEFKcKMNvc55A==", - "dev": true, - "dependencies": { - "normalize-path": "^2.0.1", - "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/@gulp-sourcemaps/map-sources/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@humanwhocodes/config-array": { "version": "0.13.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", @@ -2510,26 +2435,6 @@ "node": ">= 8" } }, - "node_modules/css": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", - "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "source-map": "^0.6.1", - "source-map-resolve": "^0.6.0" - } - }, - "node_modules/css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/cssstyle": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-3.0.0.tgz", @@ -2637,26 +2542,6 @@ } } }, - "node_modules/debug-fabulous": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-1.1.0.tgz", - "integrity": "sha512-GZqvGIgKNlUnHUPQhepnUZFIMoi3dgZKQBzKDeL2g7oJF9SNAji/AAu36dusFUas0O+pae74lNeoIPHqXWDkLg==", - "dev": true, - "dependencies": { - "debug": "3.X", - "memoizee": "0.4.X", - "object-assign": "4.X" - } - }, - "node_modules/debug-fabulous/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -2799,15 +2684,6 @@ "node": ">=0.10.0" } }, - "node_modules/detect-newline": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", - "integrity": "sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/diff": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", @@ -4873,87 +4749,6 @@ "node": ">= 0.10" } }, - "node_modules/gulp-sass": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-5.1.0.tgz", - "integrity": "sha512-7VT0uaF+VZCmkNBglfe1b34bxn/AfcssquLKVDYnCDJ3xNBaW7cUuI3p3BQmoKcoKFrs9jdzUxyb+u+NGfL4OQ==", - "dev": true, - "dependencies": { - "lodash.clonedeep": "^4.5.0", - "picocolors": "^1.0.0", - "plugin-error": "^1.0.1", - "replace-ext": "^2.0.0", - "strip-ansi": "^6.0.1", - "vinyl-sourcemaps-apply": "^0.2.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/gulp-sass/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gulp-sass/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gulp-sourcemaps": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-3.0.0.tgz", - "integrity": "sha512-RqvUckJkuYqy4VaIH60RMal4ZtG0IbQ6PXMNkNsshEGJ9cldUPRb/YCgboYae+CLAs1HQNb4ADTKCx65HInquQ==", - "dev": true, - "dependencies": { - "@gulp-sourcemaps/identity-map": "^2.0.1", - "@gulp-sourcemaps/map-sources": "^1.0.0", - "acorn": "^6.4.1", - "convert-source-map": "^1.0.0", - "css": "^3.0.0", - "debug-fabulous": "^1.0.0", - "detect-newline": "^2.0.0", - "graceful-fs": "^4.0.0", - "source-map": "^0.6.0", - "strip-bom-string": "^1.0.0", - "through2": "^2.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/gulp-sourcemaps/node_modules/acorn": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", - "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/gulp-sourcemaps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/gulp-typescript": { "version": "6.0.0-alpha.1", "resolved": "https://registry.npmjs.org/gulp-typescript/-/gulp-typescript-6.0.0-alpha.1.tgz", @@ -5255,12 +5050,6 @@ "node": ">= 4" } }, - "node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", - "dev": true - }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -5700,12 +5489,6 @@ "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", "dev": true }, - "node_modules/is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", - "dev": true - }, "node_modules/is-property": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", @@ -6369,12 +6152,6 @@ "integrity": "sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==", "dev": true }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", - "dev": true - }, "node_modules/lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", @@ -6503,15 +6280,6 @@ "yallist": "^3.0.2" } }, - "node_modules/lru-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", - "integrity": "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==", - "dev": true, - "dependencies": { - "es5-ext": "~0.10.2" - } - }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -6722,25 +6490,6 @@ "node": ">=0.10.0" } }, - "node_modules/memoizee": { - "version": "0.4.17", - "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.17.tgz", - "integrity": "sha512-DGqD7Hjpi/1or4F/aYAspXKNm5Yili0QDAFAY4QYvpqpgiY6+1jOfqpmByzjxbWd/T9mChbCArXAbDAsTm5oXA==", - "dev": true, - "dependencies": { - "d": "^1.0.2", - "es5-ext": "^0.10.64", - "es6-weak-map": "^2.0.3", - "event-emitter": "^0.3.5", - "is-promise": "^2.2.2", - "lru-queue": "^0.1.0", - "next-tick": "^1.1.0", - "timers-ext": "^0.1.7" - }, - "engines": { - "node": ">=0.12" - } - }, "node_modules/merge": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz", @@ -8534,38 +8283,6 @@ "node": ">= 0.4" } }, - "node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/postcss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -9060,15 +8777,6 @@ "node": ">=0.10" } }, - "node_modules/replace-ext": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz", - "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, "node_modules/replace-homedir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz", @@ -9352,23 +9060,6 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, - "node_modules/sass": { - "version": "1.79.4", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.79.4.tgz", - "integrity": "sha512-K0QDSNPXgyqO4GZq2HO5Q70TLxTH6cIT59RdoCHMivrC8rqzaTw5ab9prjz9KUN1El4FLXrBXJhik61JR4HcGg==", - "dev": true, - "dependencies": { - "chokidar": "^4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/sass-lint": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/sass-lint/-/sass-lint-1.13.1.tgz", @@ -9672,34 +9363,6 @@ "inherits": "2.0.3" } }, - "node_modules/sass/node_modules/chokidar": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", - "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", - "dev": true, - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass/node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", - "dev": true, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, "node_modules/saxes": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", @@ -10035,26 +9698,6 @@ "node": ">=0.10.0" } }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, "node_modules/source-map-url": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", @@ -10293,15 +9936,6 @@ "node": ">=8" } }, - "node_modules/strip-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -10511,19 +10145,6 @@ "node": ">=0.10.0" } }, - "node_modules/timers-ext": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.8.tgz", - "integrity": "sha512-wFH7+SEAcKfJpfLPkrgMPvvwnEtj8W4IurvEyrKsDleXnKLCDw71w8jltvfLa8Rm4qQxxT4jmDBYbJG/z7qoww==", - "dev": true, - "dependencies": { - "es5-ext": "^0.10.64", - "next-tick": "^1.1.0" - }, - "engines": { - "node": ">=0.12" - } - }, "node_modules/to-absolute-glob": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", @@ -11341,15 +10962,6 @@ "node": ">=0.10.0" } }, - "node_modules/vinyl-sourcemaps-apply": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", - "integrity": "sha512-+oDh3KYZBoZC8hfocrbrxbLUeaYtQK7J5WU5Br9VqWqmCll3tFJqKp97GC9GmMsVIL0qnx2DgEDVxdo5EZ5sSw==", - "dev": true, - "dependencies": { - "source-map": "^0.5.1" - } - }, "node_modules/vinyl/node_modules/replace-ext": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", diff --git a/package.json b/package.json index 8548208..807dd3e 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,6 @@ "typings": "dist/js/main", "scripts": { "build": "gulp", - "build-ts": "gulp build-ts", - "build-scss": "gulp build-scss", "watch": "gulp watch", "dev": "gulp && gulp watch", "format": "prettier --write src/ts/**/*.ts", @@ -37,15 +35,12 @@ "eslint-plugin-import": "^2.28.0", "eslint-plugin-prettier": "^5.0.0", "gulp": "^4.0.0", - "gulp-sass": "^5.1.0", - "gulp-sourcemaps": "^3.0.0", "gulp-typescript": "^6.0.0-alpha.1", "jsdom": "^22.1.0", "jsdom-global": "^3.0.2", "mocha": "^10.2.0", "nyc": "^15.1.0", "prettier": "^3.0.1", - "sass": "^1.65.1", "sass-lint": "^1.13.1", "sinon": "^16.0.0", "ts-node": "^10.9.1",