diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 5f18790..0000000 --- a/.editorconfig +++ /dev/null @@ -1,13 +0,0 @@ -root = true - -[*] -charset = utf-8 -end_of_line = lf -indent_size = 4 -indent_style = tab -insert_final_newline = false -max_line_length = 120 - -[*.{css,scss}] -tab_width = 2 -indent_size = tab diff --git a/.eleventy.js b/.eleventy.js deleted file mode 100644 index 522c4dd..0000000 --- a/.eleventy.js +++ /dev/null @@ -1,142 +0,0 @@ -/* jshint strict: false */ - -import fs from 'fs/promises'; -import {HtmlBasePlugin} from "@11ty/eleventy"; -import pluginWebc from "@11ty/eleventy-plugin-webc"; - -async function hasFiles(dirPath) { - try { - const entries = await fs.readdir(dirPath, {withFileTypes: true}); - return entries.some(entry => entry.isFile()); - } catch (err) { - console.error('Error reading directory:', err); - return false; - } -} - -// noinspection JSUnusedGlobalSymbols -export default async function (eleventyConfig) { - eleventyConfig.addPlugin(HtmlBasePlugin); - eleventyConfig.addPlugin(pluginWebc); - - eleventyConfig.setLiquidOptions({ - // greedy: false, - // trimOutputLeft: true, - // trimOutputRight: true, - // trimTagLeft: true, - // trimTagRight : true, - }); - - eleventyConfig.addGlobalData('permalink', () => { - return (data) => `${data.page.filePathStem}.${data.page.outputFileExtension}`; - }); - - const demoPath = await hasFiles('source/screens') ? '/demo/' : '/'; - - eleventyConfig.addGlobalData('hippie', { - brand: 'hippie', - titlePrefix: '', - titlePostfix: ' - HIPPIE', - placeholders: { - name: 'Vorname Nachname', - address: 'Straße Nr., PLZ Ort', - phone: '+49 (0)101 1337 48', - mail: 'name@domain.tld', - domain: 'https://domain.tld' - }, - demoPath: demoPath, - debugMode: true, - legacyMode: false - }); - - eleventyConfig.addShortcode('text', function (text, attrId, attrClass) { - return `${text}`; - }); - - eleventyConfig.addShortcode('link', function (target, text, attrId, attrClass) { - if (!text || text === '') { - text = target; - } - - if (target.indexOf('@') !== -1) { - target = 'mailto:' + target; - } - - return `${text}`; - }); - - eleventyConfig.addPairedShortcode('brand', function (content, attrClass = 'brand', direction = 'first') { - const logo = ` - - - - - - - - - -`; - let output = ''; - - switch (direction) { - case 'first': - output = logo + `${content}`; - break; - case 'last': - output = `${content}` + logo; - break; - } - - return `
` + output + `
`; - }); - - eleventyConfig.addPassthroughCopy({'source/art/images': 'art'}); - eleventyConfig.addPassthroughCopy({'source/art/favicons/**/*.+(ico|png|svg)': '.'}); - eleventyConfig.addPassthroughCopy({'source/code/**/*.js': 'js'}); - eleventyConfig.addPassthroughCopy({'source/data/**/*.json': 'json'}); - - eleventyConfig.addPassthroughCopy('vendor'); - eleventyConfig.addPassthroughCopy({'node_modules/bootstrap-icons': 'vendor/bootstrap-icons'}); - eleventyConfig.addPassthroughCopy({ - 'node_modules/jquery/dist/jquery.min.js': 'vendor/jquery.min.js', - 'node_modules/jquery/dist/jquery.min.map': 'vendor/jquery.min.map' - }); - eleventyConfig.addPassthroughCopy({'node_modules/hippie-script/index.js': 'vendor/hippie-script.js'}); - - eleventyConfig.addWatchTarget('./source/style/'); - - return { - dir: { - input: 'source/screens', - output: 'build', - includes: '../templates', - data: '../data' - }, - templateFormats: ['html', 'liquid', 'md', 'njk'] - }; -} diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 30984d4..0000000 --- a/.eslintrc.js +++ /dev/null @@ -1,27 +0,0 @@ -module.exports = { - "env": { - "browser": true, - "commonjs": true, - "es6": true, - "node": true - }, - "extends": "eslint:recommended", - "rules": { - "indent": [ - "error", - 2 - ], - "linebreak-style": [ - "error", - "unix" - ], - "quotes": [ - "error", - "single" - ], - "semi": [ - "error", - "always" - ] - } -}; \ No newline at end of file diff --git a/.gitignore b/.gitignore index 6ae690a..b251e3f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,67 +1,13 @@ -# HIPPIE -################### -build/** -deploy/** -reports/** -source/art/sprites/ -source/art/images/sprite.* +# ========================= +# Operating System Files +# ========================= -# IDE -.idea/ +# Windows +# ========================= -# https://gist.github.com/octocat/9257657 -################### -################### - -# Compiled source # -################### -*.com -*.class -*.dll -*.exe -*.o -*.so - -# Packages # -############ -# it's better to unpack these files and commit the raw source -# git has its own built in compression methods -*.7z -*.dmg -*.gz -*.iso -*.jar -*.rar -*.tar -*.zip - -# Logs and databases # -###################### -*.log -*.sql -*.sqlite - -# OS generated files # -###################### -.DS_Store -.DS_Store? -._* -.Spotlight-V100 -.Trashes - -# https://github.com/github/gitignore -################### -################### - -# https://github.com/github/gitignore/blob/master/Global/Windows.gitignore -################### -# Windows thumbnail cache files +# Windows image file caches Thumbs.db ehthumbs.db -ehthumbs_vista.db - -# Dump file -*.stackdump # Folder config file Desktop.ini @@ -78,22 +24,27 @@ $RECYCLE.BIN/ # Windows shortcuts *.lnk -# https://github.com/github/gitignore/blob/master/Global/macOS.gitignore -################### -# General -*.DS_Store +# OSX +# ========================= + +.DS_Store .AppleDouble .LSOverride # Icon must end with two \r Icon + +# Thumbnails +._* + # Files that might appear in the root of a volume .DocumentRevisions-V100 .fseventsd +.Spotlight-V100 .TemporaryItems +.Trashes .VolumeIcon.icns -.com.apple.timemachine.donotpresent # Directories potentially created on remote AFP share .AppleDB @@ -102,85 +53,9 @@ Network Trash Folder Temporary Items .apdisk -https://github.com/github/gitignore/blob/master/Global/Linux.gitignore -################### -*~ +# ========================= +# Other files +# ========================= -# temporary files which can be created if a process still has a handle open of a deleted file -.fuse_hidden* - -# KDE directory preferences -.directory - -# Linux trash folder which might appear on any partition or disk -.Trash-* - -# .nfs files are created when an open file is removed but is still being accessed -.nfs* - -# https://github.com/github/gitignore/blob/master/Node.gitignore -################### -# Logs -logs -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Bower dependency directory (https://bower.io/) -bower_components - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (http://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules/ -jspm_packages/ - -# Typescript v1 declaration files -typings/ - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# Yarn Integrity file -.yarn-integrity - -# dotenv environment variables file -.env - -# https://github.com/github/gitignore/blob/master/Sass.gitignore -################### .sass-cache/ *.css.map -*.sass.map -*.scss.map \ No newline at end of file diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 068fd29..0000000 --- a/.gitmodules +++ /dev/null @@ -1,4 +0,0 @@ -[submodule "source/style/hippie-style"] - path = source/style/hippie-style - url = https://quelltext.interaktionsweise.de/interaktionsweise/hippie-style.git - branch = development diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index 24ef2fe..0000000 --- a/.jshintrc +++ /dev/null @@ -1,33 +0,0 @@ -{ - "bitwise": true, - "curly": false, - "devel": true, - "eqeqeq": true, - "esversion": 11, - "forin": true, - "freeze": true, - "jquery": true, - "noarg": true, - "noempty": true, - "strict": true, - "undef": true, - "unused": false, - "browser": true, - "globals": { - "HIPPIE": false, - "hippie": true, - "viewHover": true, - "basicEase": true, - "debugOn": true, - "TimeDisplay": true, - "DateDisplay": true, - "checkButtonAndTarget": false, - "getClosestEdgeToElement": false, - "getClosestEdgeToMouse": false, - "centerElementUnderCursor": false, - "setAttributesAccordingToPosition": false, - "randomIntFrom": false, - "replaceLineBreaks": false, - "HippieTaskBar": true - } -} diff --git a/.sasslintrc b/.sasslintrc deleted file mode 100644 index 9fbd935..0000000 --- a/.sasslintrc +++ /dev/null @@ -1,55 +0,0 @@ -{ - "options": { - "merge-default-rules": false, - "formatter": "html" - }, - "rules": { - "extends-before-mixins": 2, - "extends-before-declarations": 2, - "placeholder-in-extend": 2, - "mixins-before-declarations": [ - 2, - { - "exclude": [ - "breakpoint", - "mq" - ] - } - ], - "no-warn": 1, - "no-debug": 1, - "no-ids": 2, - "no-important": 2, - "hex-notation": [ - 2, - { - "style": "uppercase" - } - ], - "indentation": [ - 2, - { - "size": 2 - } - ], - "property-sort-order": [ - 1, - { - "order": [ - "display", - "margin" - ], - "ignore-custom-properties": true - } - ], - "variable-for-property": [ - 2, - { - "properties": [ - "margin", - "content" - ] - } - ] - } -} diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index 2c9dd37..0000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,52 +0,0 @@ -| Commit | Version | Description | -| :--- | :----: | :--- | -| 6095870ce33fd3775718a1de3d33f604fd0630ab | 0.4.2 | Javascript again | -| 50a1a6d9257b272e076c2e3b5bac39c7d17b2793 | 0.5.0 | Changes to content | -| e2bbe9273a292a3806de1599f752258a2721d067 | 0.5.1 | | -| 3d4eef5eb0a1632b43e1e3372e38a70cd4b58914 | 0.5.2 | | -| 371cb450f81cd0d692c9005952af35ec066e01e1 | 0.6.0 | New es6 coding standard | -| 175816c3595d783e7d8b48f5336fbdd54dae145b | 0.6.1 | | -| 67e3cc1eca359bc2b927b8e971ccd7ba71f4c5a2 | 0.6.2 | | -| abeb843718988fab978de7c75d6d45806f5d35a7 | 0.6.3 | | -| 4401761a6bec9db19293353942479aea7bb8ead1 | 0.6.4 | | -| 83464a1cf4ba3efc6382eafb6f68f106c6650161 | 0.6.5 | | -| 6f95393409b502fef9ad9677b3c1ed1fe07ecc28 | 0.6.6 | | -| 63b54f2749ed5a4d9a7a53c27540e7d6f8dff63d | 0.6.7 | | -| 830037f5e5237d33ad66fe89ba45167a62d87829 | 0.6.8 | | -| d205031fff29ee4d48251e30b17090143ae5458c | 0.7.0 | switched to style submodule usage | -| d18254b61d87eb3d09d17b93783117dad7d13686 | 0.7.1 | | -| 9b9b0cb1c631273f574d3cd7618bd799f561db6c | 0.7.2 | | -| 11b30671d4948dfd30b7da14fe7295f386b54257 | 0.7.3 | | -| 767b3024fa3bbededab2a8d665b4b35b55854a1c | 0.7.4 | | -| 5c3cda58b147f16e1b9fdf1ed7b5499651df943d | 0.8.0 | changes to license file and submodule update | -| 8567604ea6b129ded8b0e6108362a30d039235a7 | 0.8.1 | | -| b2ea5b01aa47783b5f797310e16f1897e1839eb9 | 0.9.0 | Requirements updated and new nunjucks variables | -| df064b8a942f00dd3277a9dde696e91324dfd166 | 0.9.1 | | -| d812ed62084c90d4fac18b6c56a6dd3bf9bd7cba | 0.9.2 | | -| 84957f75a017d5d06a32874282d9eb9f3d537534 | 0.9.3 | | -| 489786aadc30bb589be769fe627389611c4f71f5 | 0.9.4 | | -| 003a1159231241140a262ae67bb1236978b22ec0 | 0.9.5 | | -| 731c19dd61215b8f373af9100ad5c23f19a4c2a3 | 0.9.6 | | -| dd5ff43e1695d2de0b5a0a9614c1f31ad7e7b85b | 0.9.7 | | -| dde26ec45eeb8d28a986093b8b5b29d8165e5a11 | 0.9.8 | | -| 06ba1113929183f51e8501d440c950e4b4d9f0d2 | 0.9.9 | | -| 827e6c1cde0aa4ca65e6c170174eae91da9aa4c9 | 0.9.10 | | -| 202729f9ba098b5ff07f6af43acce7a67007cd1b | 0.9.11 | | -| d22828400125f8572cfbe6243e2521ffab519adf | 0.9.12 | | -| bf1a6ca7421a0385f664f864a82850f0805522c0 | 0.9.13 | | -| 32215de810546f6ebd7f552816fc5bf3281a0a13 | 0.9.14 | | -| f7dd7c93e3a06bc430fcf4e12f4be3d3b1aa29c6 | 0.10.0 | Added card and portal modules | -| f54dbe92d912b9e7553a3a2263b009ed05017b0b | 0.10.1 | | -| 6b217b6ebbfcfa2f3e14bdf41e21bb36f88050a5 | 0.10.2 | | -| 534115ff282de4648c294ae78fe768d79e23d379 | 0.10.3 | | -| f7a5481fd2e1d1c96f7e9d82eb2c3db9483b5784 | 0.10.4 | | -| 31e896462e7693a4a6ba10d52657caf919e7f482 | 0.10.5 | | -| 778d7d14d5e8d4dbcce2f9cb996afbc4d7accf27 | 0.11.0 | logPerf without JQuery | -| 1d7f2eb839472524d73f395365ffb43e8fc5d115 | 0.12.0 | Migration to new home | -| 69c04c32349d3d11820da933ed2bbd648fabb040 | 0.12.1 | | -| 9415d4d9573a4f2a4e1c479c74c59abe3a69cd57 | 0.12.2 | | -| 6e7615b44d9ef26ade73a00102878804272cf717 | 0.12.3 | | -| b6ec313f26dde6b379da16edb65de082c6ca9b65 | 0.12.4 | | -| e856e5311439d5a64478f7cda79998476ebdfe33 | 0.12.5 | | -| ef9d665849f370b2284ae8d985d9625b5083fe37 | 0.13.0 | Introduced 11ty | -| 3358e1858bc764e520dad65cc614c842b4f66245 | 0.13.1 | | \ No newline at end of file diff --git a/LICENSE.md b/LICENSE similarity index 95% rename from LICENSE.md rename to LICENSE index 7f1b2db..58ebd36 100644 --- a/LICENSE.md +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2016 till today Stephan Hagedorn +Copyright (c) 2016 Stephan Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index e40ece3..bfa9760 100644 --- a/README.md +++ b/README.md @@ -1,108 +1,9 @@ # HIPPIE -Hippie interweaves preeminent personal interface elements +## USE -> WORK IN PROGRESS (it is not ready to be used) +Copy the source folder to your projects style folder. -This is a [Node.js](https://nodejs.org/) based generator for static HTML documents. -It uses the [Eleventy](https://www.11ty.dev/) project to fiddle everything together. +Compile the SCSS files, for example like a so `sass --watch source/:./`. -Styling is powered by the CSS extension language [SASS](https://sass-lang.com/). The HTML pages are written with -templating engines or directly as HTML files. Mainly [Liquid](https://liquidjs.com/) is used, -but [Markdown](https://daringfireball.net/projects/markdown/) and [Nunjucks](https://mozilla.github.io/nunjucks/) are -also options. - -## Installing - -Clone the repository `https://quelltext.interaktionsweise.de/interaktionsweise/hippie.git` to a folder to create your -build environment. - -Change to the newly created folder. By default, this would be *hippie*. - -Run the command `git submodule update --init`. -This will load the submodules. - -Run the command `npm install`. -This will install all dependencies into the folder *node_modules*. - -## Usage - -Different *scripts* are provided through `package.json`: - -Run the command `npm run serve` for a live development environment. -This will create a folder `/build` with the resulting files. -Also, the source files will be watched for changes which are reflected live at [localhost:8080](http://localhost:8080) -and the `/build` directory. - -`npm run build` will just create the resulting `/build` directory and `npm run deploy` will use a path prefix (*hippie* -by default) and create the results in `/deploy` ready for deployment. - -HIPPIE is intended to be used as a basis when creating HTML sites. It can be used without changes. It can be modified to -have a different look and feel. It also can be used to build a new basis on top of it. - -## Content - -### Intro - -There is an *intro* page which explains the main elements and their intended usage. It uses the default styling methods -and also shows variations. The page is written in german language. However, it has a semantic structure and the text -itself can also just be seen as example content. - -### Sass (CSS) - -Everything has its default style. - -CSS classes follow a naming scheme of `_`. - -- *Object* usually is the name of the HTML element. If it is not an element directly it is the thing which receives the - styling -- *Description* is a name of the style e.g. what it does, how it looks - -### JavaScript (JS) - -The codebase uses ECMAScript 2023 Language Specification (14th edition). -However, currently the JSHint configuration only allows 11 as highest version. - -ID values are written in *camelCase*. The scheme further uses parts for specific contexts. - -If the ID is for an interactive element the first part is an abbreviation of the action. - -- `add` - Add -- `qry` - Query -- `rmv` - Remove -- `set` - Set -- `slt` - Select -- `tgl` - Toggle - -## Versioning - -This project uses [SemVer](http://semver.org/) for versioning. For the versions available, see -the [tags on this repository](https://quelltext.interaktionsweise.de/interaktionsweise/hippie/tags). - -## Contribution - -For contribution please use the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#summary) -specification. -The commit *type* can include the following: - -- feat – A new feature is introduced with the changes -- fix – A bug fix has occurred -- chore – Changes that do not relate to a fix or feature and don't modify src or test files (for example updating - dependencies) -- refactor – Refactored code that neither fixes a bug nor adds a feature -- docs – Updates to documentation such as the README or other Markdown files -- style – Changes that do not affect the meaning of the code, likely related to code formatting such as white-space, - missing semicolons, and so on. -- test – Including new or correcting previous tests -- perf – Performance improvements -- ci – Continuous integration related -- build – Changes that affect the build system or external dependencies -- revert – Reverts a previous commit - -## Authors - -**Stephan Hagedorn** - *Initial work* - [Interaktionsweise](https://interaktionsweise.de) - -## License - -This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details. \ No newline at end of file +Load the screen.css file within the head section of your HTML document. `` diff --git a/TODO.md b/TODO.md deleted file mode 100644 index 6af7f1b..0000000 --- a/TODO.md +++ /dev/null @@ -1,144 +0,0 @@ -# General - -- Remove gulp and legacy files -- Better README with more info for the content section - - Explain eleventy usage -- Complete CHANGELOG -- Automatic versioning for package.json and CHANGELOG -- Add dynamic content to robots.txt during build process -- Add dynamic content to sitemap.xml - -# CSS - -- Check style for every basic element -- Uniform spelling of classes and identifiers -- Direct class dependencies instead of repeating element names in classes -- Change io stuff - - Find name for styled interactive elements - - Find name for io module with nested class names -- Change demo module - - Keep placeholder and demo stuff - - Move other things - - Prevent styles to be global - -# JS - -- Use delegation for action attributes like: https://javascript.info/event-delegation#delegation-example-actions-in-markup -- Proxy for class options: https://javascript.info/proxy - -# Content - -- *Intro* - - Complete with description for all basic elements, according to [HTML Standard - The elements of HTML](https://html.spec.whatwg.org/multipage/semantics.html#semantics) - - Sections - - [x] body - - [x] article - - [x] section - - [x] nav - - [x] aside - - [x] h1-h6 - - [x] hgroup - - [x] header - - [x] footer - - [x] address (put to grouping content) - - Grouping content - - [x] p - - [x] hr - - [x] pre - - [x] blockquote - - [x] ol - - [x] ul - - [ ] menu (new) - - [x] li - - [x] dl - - [x] dt - - [x] dd - - [x] figure - - [x] figcaption - - [x] main - - [ ] search (new) - - [x] div - - Text-level semantics - - [x] a - - [x] em - - [x] strong - - [x] small - - [x] s - - [x] cite - - [x] q - - [x] dfn - - [x] abbr - - [x] ruby - - [x] rb (deprecated) - - [x] rt - - [x] rtc (deprecated) - - [x] rp - - [x] data - - [x] time - - [x] code - - [x] var - - [x] samp - - [x] kbd - - [x] sub - - [x] sup - - [x] i - - [x] b - - [x] u - - [x] mark - - [x] bdi - - [x] bdo - - [x] span - - [x] br (mentioned in grouping content) - - [x] wbr - - Edits - - [x] ins - - [x] del - - Embedded content - - [x] picture - - [x] source - - [x] img - - [ ] iframe - - [ ] embed - - [ ] object - - [ ] param (deprecated) - - [ ] video - - [ ] audio - - [ ] track - - [ ] map - - [ ] area - - Tabular data - - [ ] table - - [ ] caption - - [ ] colgroup - - [ ] col - - [ ] tbody - - [ ] thead - - [ ] tfoot - - [ ] tr - - [ ] td - - [ ] th - - Forms - - [x] form - - [x] label - - [x] input - - [x] button - - [ ] select - - [ ] datalist - - [ ] optgroup - - [ ] option - - [ ] textarea - - [ ] output - - [ ] progress - - [ ] meter (new) - - [x] fieldset - - [x] legend - - Interactive elements - - [ ] details - - [ ] summary - - [ ] dialog - - Scripting - - [ ] script - - [ ] noscript - - [ ] template - - [ ] slot - - [ ] canvas \ No newline at end of file diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 913ed24..0000000 --- a/package-lock.json +++ /dev/null @@ -1,2266 +0,0 @@ -{ - "name": "hippie", - "version": "0.13.1", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "hippie", - "version": "0.13.1", - "license": "MIT", - "dependencies": { - "@11ty/eleventy": "^3.1.2", - "@11ty/eleventy-plugin-webc": "^0.11.2", - "bootstrap-icons": "^1.13.1", - "hippie-script": "git+https://quelltext.interaktionsweise.de/interaktionsweise/hippie-script.git", - "jquery": "^3.7.1", - "sass": "^1.93.0" - }, - "devDependencies": { - "normalize.css": "^8.0.1" - } - }, - "node_modules/@11ty/dependency-tree": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@11ty/dependency-tree/-/dependency-tree-4.0.2.tgz", - "integrity": "sha512-RTF6VTZHatYf7fSZBUN3RKwiUeJh5dhWV61gDPrHhQF2/gzruAkYz8yXuvGLx3w3ZBKreGrR+MfYpSVkdbdbLA==", - "license": "MIT", - "dependencies": { - "@11ty/eleventy-utils": "^2.0.1" - } - }, - "node_modules/@11ty/dependency-tree-esm": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@11ty/dependency-tree-esm/-/dependency-tree-esm-2.0.4.tgz", - "integrity": "sha512-MYKC0Ac77ILr1HnRJalzKDlb9Z8To3kXQCltx299pUXXUFtJ1RIONtULlknknqW8cLe19DLVgmxVCtjEFm7h0A==", - "license": "MIT", - "dependencies": { - "@11ty/eleventy-utils": "^2.0.7", - "acorn": "^8.15.0", - "dependency-graph": "^1.0.0", - "normalize-path": "^3.0.0" - } - }, - "node_modules/@11ty/eleventy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@11ty/eleventy/-/eleventy-3.1.2.tgz", - "integrity": "sha512-IcsDlbXnBf8cHzbM1YBv3JcTyLB35EK88QexmVyFdVJVgUU6bh9g687rpxryJirHzo06PuwnYaEEdVZQfIgRGg==", - "license": "MIT", - "dependencies": { - "@11ty/dependency-tree": "^4.0.0", - "@11ty/dependency-tree-esm": "^2.0.0", - "@11ty/eleventy-dev-server": "^2.0.8", - "@11ty/eleventy-plugin-bundle": "^3.0.6", - "@11ty/eleventy-utils": "^2.0.7", - "@11ty/lodash-custom": "^4.17.21", - "@11ty/posthtml-urls": "^1.0.1", - "@11ty/recursive-copy": "^4.0.2", - "@sindresorhus/slugify": "^2.2.1", - "bcp-47-normalize": "^2.3.0", - "chokidar": "^3.6.0", - "debug": "^4.4.1", - "dependency-graph": "^1.0.0", - "entities": "^6.0.1", - "filesize": "^10.1.6", - "gray-matter": "^4.0.3", - "iso-639-1": "^3.1.5", - "js-yaml": "^4.1.0", - "kleur": "^4.1.5", - "liquidjs": "^10.21.1", - "luxon": "^3.6.1", - "markdown-it": "^14.1.0", - "minimist": "^1.2.8", - "moo": "^0.5.2", - "node-retrieve-globals": "^6.0.1", - "nunjucks": "^3.2.4", - "picomatch": "^4.0.2", - "please-upgrade-node": "^3.2.0", - "posthtml": "^0.16.6", - "posthtml-match-helper": "^2.0.3", - "semver": "^7.7.2", - "slugify": "^1.6.6", - "tinyglobby": "^0.2.14" - }, - "bin": { - "eleventy": "cmd.cjs" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/eleventy-dev-server": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@11ty/eleventy-dev-server/-/eleventy-dev-server-2.0.8.tgz", - "integrity": "sha512-15oC5M1DQlCaOMUq4limKRYmWiGecDaGwryr7fTE/oM9Ix8siqMvWi+I8VjsfrGr+iViDvWcH/TVI6D12d93mA==", - "license": "MIT", - "dependencies": { - "@11ty/eleventy-utils": "^2.0.1", - "chokidar": "^3.6.0", - "debug": "^4.4.0", - "finalhandler": "^1.3.1", - "mime": "^3.0.0", - "minimist": "^1.2.8", - "morphdom": "^2.7.4", - "please-upgrade-node": "^3.2.0", - "send": "^1.1.0", - "ssri": "^11.0.0", - "urlpattern-polyfill": "^10.0.0", - "ws": "^8.18.1" - }, - "bin": { - "eleventy-dev-server": "cmd.js" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/eleventy-plugin-bundle": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@11ty/eleventy-plugin-bundle/-/eleventy-plugin-bundle-3.0.7.tgz", - "integrity": "sha512-QK1tRFBhQdZASnYU8GMzpTdsMMFLVAkuU0gVVILqNyp09xJJZb81kAS3AFrNrwBCsgLxTdWHJ8N64+OTTsoKkA==", - "license": "MIT", - "dependencies": { - "@11ty/eleventy-utils": "^2.0.2", - "debug": "^4.4.0", - "posthtml-match-helper": "^2.0.3" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/eleventy-plugin-webc": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/@11ty/eleventy-plugin-webc/-/eleventy-plugin-webc-0.11.2.tgz", - "integrity": "sha512-oa/XlAqI5KtVO7M14qaN92D2yJfBEMMSb66YWY6YZVbRqFSVbjO4WmRJ2Ti2ZZb1FNvxj4ypGNV8VJleGE69xw==", - "license": "MIT", - "dependencies": { - "@11ty/eleventy-plugin-bundle": "^1.0.4", - "@11ty/webc": "^0.11.0" - }, - "engines": { - "node": ">=14.18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/eleventy-plugin-webc/node_modules/@11ty/eleventy-plugin-bundle": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@11ty/eleventy-plugin-bundle/-/eleventy-plugin-bundle-1.0.5.tgz", - "integrity": "sha512-Esv97j+mOo/yfxjaWl4j8CyszOBsRjU/DOUWOBqVnnDLM8VDXeus2LTJUxF70nAU0g+z+b6fRn8fKnm6b2a/UQ==", - "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/eleventy-utils": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@11ty/eleventy-utils/-/eleventy-utils-2.0.7.tgz", - "integrity": "sha512-6QE+duqSQ0GY9rENXYb4iPR4AYGdrFpqnmi59tFp9VrleOl0QSh8VlBr2yd6dlhkdtj7904poZW5PvGr9cMiJQ==", - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/eleventy/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "license": "Python-2.0" - }, - "node_modules/@11ty/eleventy/node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/@11ty/eleventy/node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@11ty/eleventy/node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/@11ty/lodash-custom": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@11ty/lodash-custom/-/lodash-custom-4.17.21.tgz", - "integrity": "sha512-Mqt6im1xpb1Ykn3nbcCovWXK3ggywRJa+IXIdoz4wIIK+cvozADH63lexcuPpGS/gJ6/m2JxyyXDyupkMr5DHw==", - "engines": { - "node": ">=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/posthtml-urls": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@11ty/posthtml-urls/-/posthtml-urls-1.0.2.tgz", - "integrity": "sha512-0vaV3Wt0surZ+oS1VdKKe0axeeupuM+l7W/Z866WFQwF+dGg2Tc/nmhk/5l74/Y55P8KyImnLN9CdygNw2huHg==", - "license": "MIT", - "dependencies": { - "evaluate-value": "^2.0.0", - "http-equiv-refresh": "^2.0.1", - "list-to-array": "^1.1.0", - "parse-srcset": "^1.0.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@11ty/recursive-copy": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@11ty/recursive-copy/-/recursive-copy-4.0.3.tgz", - "integrity": "sha512-SX48BTLEGX8T/OsKWORsHAAeiDsbFl79Oa/0Wg/mv/d27b7trCVZs7fMHvpSgDvZz/fZqx5rDk8+nx5oyT7xBw==", - "license": "ISC", - "dependencies": { - "errno": "^1.0.0", - "junk": "^3.1.0", - "maximatch": "^0.1.0", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@11ty/webc": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/@11ty/webc/-/webc-0.11.4.tgz", - "integrity": "sha512-q1GMcjNnx9PxUr6jyTT5CdDFma3JWkT5D45wRNYUQ/B4cxTTxpC15b2rYdzNaGuSqB6tsArQ9Qh4BPqg6Xo9cA==", - "license": "MIT", - "dependencies": { - "@11ty/eleventy-utils": "^1.0.1", - "css-tree": "^2.3.1", - "dependency-graph": "^0.11.0", - "entities": "^4.4.0", - "fast-glob": "^3.2.12", - "is-glob": "^4.0.3", - "nanoid": "^4.0.1", - "node-retrieve-globals": "^2.0.7", - "parse5": "^7.1.2" - }, - "engines": { - "node": ">=14.18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/webc/node_modules/@11ty/eleventy-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@11ty/eleventy-utils/-/eleventy-utils-1.0.3.tgz", - "integrity": "sha512-nULO91om7vQw4Y/UBjM8i7nJ1xl+/nyK4rImZ41lFxiY2d+XUz7ChAj1CDYFjrLZeu0utAYJTZ45LlcHTkUG4g==", - "license": "MIT", - "dependencies": { - "normalize-path": "^3.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/11ty" - } - }, - "node_modules/@11ty/webc/node_modules/dependency-graph": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", - "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", - "license": "MIT", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/@11ty/webc/node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/@11ty/webc/node_modules/node-retrieve-globals": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/node-retrieve-globals/-/node-retrieve-globals-2.0.8.tgz", - "integrity": "sha512-mVimS/m8H28kyMdvOIfyMCM8wFNiKXM83ag1yHYP297iVmlCSmCh7Ih4b+ig9/DZ2+LbXZCPLDSZO4yRa5ttyg==", - "license": "MIT", - "dependencies": { - "acorn": "^8.8.2", - "acorn-walk": "^8.2.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@parcel/watcher": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", - "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.5.1", - "@parcel/watcher-darwin-arm64": "2.5.1", - "@parcel/watcher-darwin-x64": "2.5.1", - "@parcel/watcher-freebsd-x64": "2.5.1", - "@parcel/watcher-linux-arm-glibc": "2.5.1", - "@parcel/watcher-linux-arm-musl": "2.5.1", - "@parcel/watcher-linux-arm64-glibc": "2.5.1", - "@parcel/watcher-linux-arm64-musl": "2.5.1", - "@parcel/watcher-linux-x64-glibc": "2.5.1", - "@parcel/watcher-linux-x64-musl": "2.5.1", - "@parcel/watcher-win32-arm64": "2.5.1", - "@parcel/watcher-win32-ia32": "2.5.1", - "@parcel/watcher-win32-x64": "2.5.1" - } - }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", - "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", - "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", - "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", - "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", - "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm-musl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", - "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", - "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", - "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", - "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", - "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", - "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", - "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", - "cpu": [ - "ia32" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", - "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/@sindresorhus/slugify": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/slugify/-/slugify-2.2.1.tgz", - "integrity": "sha512-MkngSCRZ8JdSOCHRaYd+D01XhvU3Hjy6MGl06zhOk614hp9EOAp5gIkBeQg7wtmxpitU6eAL4kdiRMcJa2dlrw==", - "license": "MIT", - "dependencies": { - "@sindresorhus/transliterate": "^1.0.0", - "escape-string-regexp": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@sindresorhus/transliterate": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/transliterate/-/transliterate-1.6.0.tgz", - "integrity": "sha512-doH1gimEu3A46VX6aVxpHTeHrytJAG6HgdxntYnCFiIFHEM/ZGpG8KiZGBChchjQmG0XFIBL552kBTjVcMZXwQ==", - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/a-sync-waterfall": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/a-sync-waterfall/-/a-sync-waterfall-1.0.1.tgz", - "integrity": "sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA==" - }, - "node_modules/acorn": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", - "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.3.5", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz", - "integrity": "sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==", - "license": "MIT", - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-differ": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", - "integrity": "sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", - "license": "MIT", - "dependencies": { - "array-uniq": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "license": "MIT" - }, - "node_modules/bcp-47": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/bcp-47/-/bcp-47-2.1.0.tgz", - "integrity": "sha512-9IIS3UPrvIa1Ej+lVDdDwO7zLehjqsaByECw0bu2RRGP73jALm6FYbzI5gWbgHLvNdkvfXB5YrSbocZdOS0c0w==", - "license": "MIT", - "dependencies": { - "is-alphabetical": "^2.0.0", - "is-alphanumerical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/bcp-47-match": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-2.0.3.tgz", - "integrity": "sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/bcp-47-normalize": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/bcp-47-normalize/-/bcp-47-normalize-2.3.0.tgz", - "integrity": "sha512-8I/wfzqQvttUFz7HVJgIZ7+dj3vUaIyIxYXaTRP1YWoSDfzt6TUmxaKZeuXR62qBmYr+nvuWINFRl6pZ5DlN4Q==", - "license": "MIT", - "dependencies": { - "bcp-47": "^2.0.0", - "bcp-47-match": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/bootstrap-icons": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/bootstrap-icons/-/bootstrap-icons-1.13.1.tgz", - "integrity": "sha512-ijombt4v6bv5CLeXvRWKy7CuM3TRTuPEuGaGKvTV5cz65rQSY8RQ2JcHt6b90cBBAC7s8fsf2EkQDldzCoXUjw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/twbs" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/bootstrap" - } - ], - "license": "MIT" - }, - "node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "license": "MIT", - "engines": { - "node": ">=14" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "license": "MIT" - }, - "node_modules/css-tree": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", - "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", - "license": "MIT", - "dependencies": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" - } - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/dependency-graph": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-1.0.0.tgz", - "integrity": "sha512-cW3gggJ28HZ/LExwxP2B++aiKxhJXMSIt9K48FOXQkm+vuG5gyatXnLsONRJdzO/7VfjDIiaOOa/bs4l464Lwg==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "license": "Apache-2.0", - "optional": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/dom-serializer/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "license": "MIT" - }, - "node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/errno": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/errno/-/errno-1.0.0.tgz", - "integrity": "sha512-3zV5mFS1E8/1bPxt/B0xxzI1snsg3uSCIh6Zo1qKg6iMw93hzPANk9oBFzSFBFrwuVoQuE3rLoouAUfwOAj1wQ==", - "license": "MIT", - "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "license": "MIT" - }, - "node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/esm-import-transformer": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/esm-import-transformer/-/esm-import-transformer-3.0.5.tgz", - "integrity": "sha512-1GKLvfuMnnpI75l8c6sHoz0L3Z872xL5akGuBudgqTDPv4Vy6f2Ec7jEMKTxlqWl/3kSvNbHELeimJtnqgYniw==", - "license": "MIT", - "dependencies": { - "acorn": "^8.15.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/evaluate-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/evaluate-value/-/evaluate-value-2.0.0.tgz", - "integrity": "sha512-VonfiuDJc0z4sOO7W0Pd130VLsXN6vmBWZlrog1mCb/o7o/Nl5Lr25+Kj/nkCCAhG+zqeeGjxhkK9oHpkgTHhQ==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fastq": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", - "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/filesize": { - "version": "10.1.6", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-10.1.6.tgz", - "integrity": "sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==", - "license": "BSD-3-Clause", - "engines": { - "node": ">= 10.4.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.2.tgz", - "integrity": "sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==", - "license": "MIT", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "~2.4.1", - "parseurl": "~1.3.3", - "statuses": "~2.0.2", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "license": "MIT" - }, - "node_modules/fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", - "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/hippie-script": { - "version": "1.2.1", - "resolved": "git+https://quelltext.interaktionsweise.de/interaktionsweise/hippie-script.git#dfc13e61586fbf466a7bbdb5667c5b02f41abd44", - "license": "MIT" - }, - "node_modules/htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" - } - }, - "node_modules/http-equiv-refresh": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/http-equiv-refresh/-/http-equiv-refresh-2.0.1.tgz", - "integrity": "sha512-XJpDL/MLkV3dKwLzHwr2dY05dYNfBNlyPu4STQ8WvKCFdc6vC5tPXuq28of663+gHVg03C+16pHHs/+FmmDjcw==", - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", - "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", - "license": "MIT", - "dependencies": { - "depd": "~2.0.0", - "inherits": "~2.0.4", - "setprototypeof": "~1.2.0", - "statuses": "~2.0.2", - "toidentifier": "~1.0.1" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/immutable": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.4.tgz", - "integrity": "sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==", - "license": "MIT" - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "license": "ISC" - }, - "node_modules/is-alphabetical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", - "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", - "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", - "license": "MIT", - "dependencies": { - "is-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-decimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", - "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-json": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-json/-/is-json-2.0.1.tgz", - "integrity": "sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA==" - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/iso-639-1": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/iso-639-1/-/iso-639-1-3.1.5.tgz", - "integrity": "sha512-gXkz5+KN7HrG0Q5UGqSMO2qB9AsbEeyLP54kF1YrMsIxmu+g4BdB7rflReZTSTZGpfj8wywu6pfPBCylPIzGQA==", - "license": "MIT", - "engines": { - "node": ">=6.0" - } - }, - "node_modules/jquery": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", - "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", - "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/junk": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", - "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/kleur": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "engines": { - "node": ">=6" - } - }, - "node_modules/linkify-it": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", - "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", - "license": "MIT", - "dependencies": { - "uc.micro": "^2.0.0" - } - }, - "node_modules/liquidjs": { - "version": "10.24.0", - "resolved": "https://registry.npmjs.org/liquidjs/-/liquidjs-10.24.0.tgz", - "integrity": "sha512-TAUNAdgwaAXjjcUFuYVJm9kOVH7zc0mTKxsG9t9Lu4qdWjB2BEblyVIYpjWcmJLMGgiYqnGNJjpNMHx0gp/46A==", - "license": "MIT", - "dependencies": { - "commander": "^10.0.0" - }, - "bin": { - "liquid": "bin/liquid.js", - "liquidjs": "bin/liquid.js" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/liquidjs" - } - }, - "node_modules/list-to-array": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/list-to-array/-/list-to-array-1.1.0.tgz", - "integrity": "sha512-+dAZZ2mM+/m+vY9ezfoueVvrgnHIGi5FvgSymbIgJOFwiznWyA59mav95L+Mc6xPtL3s9gm5eNTlNtxJLbNM1g==", - "license": "MIT" - }, - "node_modules/luxon": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.7.2.tgz", - "integrity": "sha512-vtEhXh/gNjI9Yg1u4jX/0YVPMvxzHuGgCm6tC5kZyb08yjGWGnqAjGJvcXbqQR2P3MyMEFnRbpcdFS6PBcLqew==", - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "node_modules/markdown-it": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.1.tgz", - "integrity": "sha512-BuU2qnTti9YKgK5N+IeMubp14ZUKUUw7yeJbkjtosvHiP0AZ5c8IAgEMk79D0eC8F23r4Ac/q8cAIFdm2FtyoA==", - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1", - "entities": "^4.4.0", - "linkify-it": "^5.0.0", - "mdurl": "^2.0.0", - "punycode.js": "^2.3.1", - "uc.micro": "^2.1.0" - }, - "bin": { - "markdown-it": "bin/markdown-it.mjs" - } - }, - "node_modules/markdown-it/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "license": "Python-2.0" - }, - "node_modules/markdown-it/node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/maximatch": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/maximatch/-/maximatch-0.1.0.tgz", - "integrity": "sha512-9ORVtDUFk4u/NFfo0vG/ND/z7UQCVZBL539YW0+U1I7H1BkZwizcPx5foFv7LCPcBnm2U6RjFnQOsIvN4/Vm2A==", - "license": "MIT", - "dependencies": { - "array-differ": "^1.0.0", - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "minimatch": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mdn-data": { - "version": "2.0.30", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", - "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", - "license": "CC0-1.0" - }, - "node_modules/mdurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", - "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", - "license": "MIT", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.54.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", - "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", - "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", - "license": "MIT", - "dependencies": { - "mime-db": "^1.54.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/minimatch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", - "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minipass": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", - "license": "BlueOak-1.0.0", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/moo": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", - "integrity": "sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==" - }, - "node_modules/morphdom": { - "version": "2.7.8", - "resolved": "https://registry.npmjs.org/morphdom/-/morphdom-2.7.8.tgz", - "integrity": "sha512-D/fR4xgGUyVRbdMGU6Nejea1RFzYxYtyurG4Fbv2Fi/daKlWKuXGLOdXtl+3eIwL110cI2hz1ZojGICjjFLgTg==", - "license": "MIT" - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" - }, - "node_modules/nanoid": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz", - "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.js" - }, - "engines": { - "node": "^14 || ^16 || >=18" - } - }, - "node_modules/node-addon-api": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", - "license": "MIT", - "optional": true - }, - "node_modules/node-retrieve-globals": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/node-retrieve-globals/-/node-retrieve-globals-6.0.1.tgz", - "integrity": "sha512-j0DeFuZ/Wg3VlklfbxUgZF/mdHMTEiEipBb3q0SpMMbHaV3AVfoUQF8UGxh1s/yjqO0TgRZd4Pi/x2yRqoQ4Eg==", - "license": "MIT", - "dependencies": { - "acorn": "^8.14.1", - "acorn-walk": "^8.3.4", - "esm-import-transformer": "^3.0.3" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize.css": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz", - "integrity": "sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==", - "dev": true, - "license": "MIT" - }, - "node_modules/nunjucks": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.4.tgz", - "integrity": "sha512-26XRV6BhkgK0VOxfbU5cQI+ICFUtMLixv1noZn1tGU38kQH5A5nmmbk/O45xdyBhD1esk47nKrY0mvQpZIhRjQ==", - "dependencies": { - "a-sync-waterfall": "^1.0.0", - "asap": "^2.0.3", - "commander": "^5.1.0" - }, - "bin": { - "nunjucks-precompile": "bin/precompile" - }, - "engines": { - "node": ">= 6.9.0" - }, - "peerDependencies": { - "chokidar": "^3.3.0" - }, - "peerDependenciesMeta": { - "chokidar": { - "optional": true - } - } - }, - "node_modules/nunjucks/node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "license": "MIT", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/parse-srcset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", - "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==", - "license": "MIT" - }, - "node_modules/parse5": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", - "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", - "license": "MIT", - "dependencies": { - "entities": "^6.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5/node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/please-upgrade-node": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", - "license": "MIT", - "dependencies": { - "semver-compare": "^1.0.0" - } - }, - "node_modules/posthtml": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.16.6.tgz", - "integrity": "sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==", - "peer": true, - "dependencies": { - "posthtml-parser": "^0.11.0", - "posthtml-render": "^3.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/posthtml-match-helper": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/posthtml-match-helper/-/posthtml-match-helper-2.0.3.tgz", - "integrity": "sha512-p9oJgTdMF2dyd7WE54QI1LvpBIkNkbSiiECKezNnDVYhGhD1AaOnAkw0Uh0y5TW+OHO8iBdSqnd8Wkpb6iUqmw==", - "license": "MIT", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "posthtml": "^0.16.6" - } - }, - "node_modules/posthtml-parser": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.11.0.tgz", - "integrity": "sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==", - "dependencies": { - "htmlparser2": "^7.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/posthtml-render": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/posthtml-render/-/posthtml-render-3.0.0.tgz", - "integrity": "sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA==", - "dependencies": { - "is-json": "^2.0.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "license": "MIT" - }, - "node_modules/punycode.js": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", - "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/sass": { - "version": "1.93.2", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.93.2.tgz", - "integrity": "sha512-t+YPtOQHpGW1QWsh1CHQ5cPIr9lbbGZLZnbihP/D/qZj/yuV68m8qarcV17nvkOX81BCrvzAlq2klCQFZghyTg==", - "license": "MIT", - "dependencies": { - "chokidar": "^4.0.0", - "immutable": "^5.0.2", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - }, - "optionalDependencies": { - "@parcel/watcher": "^2.4.1" - } - }, - "node_modules/sass/node_modules/chokidar": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", - "license": "MIT", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/sass/node_modules/readdirp": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", - "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", - "license": "MIT", - "engines": { - "node": ">= 14.18.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", - "license": "MIT" - }, - "node_modules/send": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz", - "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==", - "license": "MIT", - "dependencies": { - "debug": "^4.4.3", - "encodeurl": "^2.0.0", - "escape-html": "^1.0.3", - "etag": "^1.8.1", - "fresh": "^2.0.0", - "http-errors": "^2.0.1", - "mime-types": "^3.0.2", - "ms": "^2.1.3", - "on-finished": "^2.4.1", - "range-parser": "^1.2.1", - "statuses": "^2.0.2" - }, - "engines": { - "node": ">= 18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "license": "ISC" - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/slugify": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", - "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" - }, - "node_modules/ssri": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-11.0.0.tgz", - "integrity": "sha512-aZpUoMN/Jj2MqA4vMCeiKGnc/8SuSyHbGSBdgFbZxP8OJGF/lFkIuElzPxsN0q8TQQ+prw3P4EDfB3TBHHgfXw==", - "license": "ISC", - "dependencies": { - "minipass": "^7.0.3" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "node_modules/statuses": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", - "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", - "license": "MIT", - "engines": { - "node": ">= 0.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==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tinyglobby": { - "version": "0.2.15", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", - "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", - "license": "MIT", - "dependencies": { - "fdir": "^6.5.0", - "picomatch": "^4.0.3" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/SuperchupuDev" - } - }, - "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", - "license": "MIT", - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/tinyglobby/node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "license": "MIT", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/uc.micro": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", - "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", - "license": "MIT" - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/urlpattern-polyfill": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.1.0.tgz", - "integrity": "sha512-IGjKp/o0NL3Bso1PymYURCJxMPNAf/ILOpendP9f5B6e1rTJgdgiOvgfoT8VxCAdY+Wisb9uhGaJJf3yZ2V9nw==", - "license": "MIT" - }, - "node_modules/ws": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", - "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index 1d127ed..0000000 --- a/package.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "hippie", - "version": "0.13.1", - "description": "Hippie interweaves preeminent personal interface elements", - "keywords": [ - "hippie", - "www site template" - ], - "homepage": "https://quelltext.interaktionsweise.de/interaktionsweise/hippie", - "bugs": "https://quelltext.interaktionsweise.de/interaktionsweise/hippie/issues", - "license": "MIT", - "author": "Stephan Hagedorn (https://karte.interaktionsweise.de)", - "main": "", - "repository": { - "type": "git", - "url": "https://quelltext.interaktionsweise.de/interaktionsweise/hippie.git" - }, - "type": "module", - "scripts": { - "hello": "echo -n \"This is \" && node -p \"process.env.npm_package_name\" | tr '[:lower:]' '[:upper:]'", - "test": "echo \"Error: no test specified\" && exit 1", - "clean": "npm run clean:build & npm run clean:deploy & npm run clean:report & npm run clean:test", - "clean:build": "rm -rf build/*", - "clean:deploy": "rm -rf deploy/*", - "clean:report": "rm -rf report/*", - "clean:test": "rm -rf test/*", - "style:compile": "sass source/style:build/css --load-path=vendor", - "style:deploy": "sass source/style:deploy/css --load-path=vendor", - "style:watch": "sass --watch source/style:build/css --load-path=vendor", - "build:new": "npm run clean:build && npx @11ty/eleventy && npm run style:compile", - "build": "npx @11ty/eleventy && npm run style:compile", - "deploy": "npm run clean:deploy && npx @11ty/eleventy --output=deploy --pathprefix=hippie && npm run style:deploy", - "serve": "npm run style:watch & npx @11ty/eleventy --serve" - }, - "private": true, - "devDependencies": { - "normalize.css": "^8.0.1" - }, - "dependencies": { - "@11ty/eleventy": "^3.1.2", - "@11ty/eleventy-plugin-webc": "^0.11.2", - "bootstrap-icons": "^1.13.1", - "hippie-script": "git+https://quelltext.interaktionsweise.de/interaktionsweise/hippie-script.git", - "jquery": "^3.7.1", - "sass": "^1.93.0" - } -} diff --git a/robots.txt b/robots.txt deleted file mode 100644 index aa661c6..0000000 --- a/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -user-agent: * -disallow: /private/ -sitemap: http://domain.tld/sitemap.xml diff --git a/sitemap.xml b/sitemap.xml deleted file mode 100644 index 5778295..0000000 --- a/sitemap.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - http://domain.tld/ - YYYY-MM-DD - monthly - 1.0 - - \ No newline at end of file diff --git a/source/art/favicons/favicon.ico b/source/art/favicons/favicon.ico deleted file mode 100644 index 745351c..0000000 Binary files a/source/art/favicons/favicon.ico and /dev/null differ diff --git a/source/art/images/bullet.gif b/source/art/images/bullet.gif deleted file mode 100644 index 55a84ab..0000000 Binary files a/source/art/images/bullet.gif and /dev/null differ diff --git a/source/art/images/flag_websafe_128x80.gif b/source/art/images/flag_websafe_128x80.gif deleted file mode 100644 index 7be5d95..0000000 Binary files a/source/art/images/flag_websafe_128x80.gif and /dev/null differ diff --git a/source/art/images/flag_websafe_128x80.webp b/source/art/images/flag_websafe_128x80.webp deleted file mode 100644 index 71a25db..0000000 Binary files a/source/art/images/flag_websafe_128x80.webp and /dev/null differ diff --git a/source/code/drag.js b/source/code/drag.js deleted file mode 100644 index 7bdd8e9..0000000 --- a/source/code/drag.js +++ /dev/null @@ -1,115 +0,0 @@ -// Creates a div element which is draggable -class NewDiv { - constructor(x, y, width, height, backgroundColor, content) { - this.x = x; - this.y = y; - this.width = width; - this.height = height; - this.backgroundColor = backgroundColor; - this.element = null; - this.content = content; - } - - // Create the div element - createDiv() { - this.element = this._content; - this.element.style.position = 'absolute'; - this.element.style.left = `${this.x}px`; - this.element.style.top = `${this.y}px`; - this.element.style.width = `${this.width}px`; - this.element.style.height = `${this.height}px`; - this.element.style.background = this.backgroundColor; - this.element.style.cursor = 'move'; - - // Add event listeners for dragging - let isDown = false; - let offset = [0, 0]; - - this - .element - .addEventListener('mousedown', (event) => { - if (event.button === 0) { // Left mouse button - isDown = true; - offset = [ - this.element.offsetLeft - event.clientX, - this.element.offsetTop - event.clientY - ]; - } - }); - - document.addEventListener('mouseup', () => { - isDown = false; - }); - - document.addEventListener('mousemove', (event) => { - if (isDown) { - const maxX = window.innerWidth - this.element.offsetWidth; - const maxY = window.innerHeight - this.element.offsetHeight; - let x = event.clientX + offset[0]; - let y = event.clientY + offset[1]; - - // Boundary checks - if (x < 0) - x = 0; - if (y < 0) - y = 0; - if (x > maxX) - x = maxX; - if (y > maxY) - y = maxY; - - this.element.style.left = `${x}px`; - this.element.style.top = `${y}px`; - } - }); - - // Save position and size - const saveData = () => { - const data = { - x: this.element.offsetLeft, - y: this.element.offsetTop, - width: this.element.offsetWidth, - height: this.element.offsetHeight - }; - // Save data to local storage or a database - localStorage.setItem(`divData${this.element.id}`, JSON.stringify(data)); - }; - - // Load saved data - const loadData = () => { - const data = localStorage.getItem(`divData${this.element.id}`); - if (data) { - const parsedData = JSON.parse(data); - this.element.style.left = `${parsedData.x}px`; - this.element.style.top = `${parsedData.y}px`; - this.element.style.width = `${parsedData.width}px`; - this.element.style.height = `${parsedData.height}px`; - } - }; - - // Call the save function when the user stops dragging - document.addEventListener('mouseup', saveData); - - // Load saved data on page load - loadData(); - } - - // FIXME: this.element wird von appendToFrame() verwendet - get content() { - return this._content = this.content; - } - - set content(value) { - if (!value) { - value = document.createElement('div'); - } - - this._content = value; - } - - // Append the div to the space - appendToFrame(space) { - this.element.id = `newDiv${space.children.length}`; - space.appendChild(this.element); - } -} diff --git a/source/code/hippie/app.js b/source/code/hippie/app.js deleted file mode 100644 index 50efe38..0000000 --- a/source/code/hippie/app.js +++ /dev/null @@ -1,729 +0,0 @@ -// TODO: Inhalte angleichen nach Zusammenfassung von app.js und function.js. -// Benennung und Beschreibungen verbessern. - -// This is called everytime -function setup() { - 'use strict'; - - console.group('Document information'); - console.info('\n', HIPPIE.brand, '\n\n'); - console.info('HTML:', hippie.screen, '\nBODY:', hippie.body); - console.groupEnd(); - if (debugOn) { - console.group('Debug information'); - console.dir(hippie); - console.groupEnd(); - } -} - -// MODULE Scroll navigation -// Using constructor function -function HippieScroll($tp, $dn) { - 'use strict'; - - // this.$tp = $tp; - // Define initial situation - let initLeft = false; - const initY = hippie.screen.vh; - - $tp.addClass('di_none'); - - // Check scroll position and toggle element - this.check = function () { - hippie.screen.y = Math.min($(document).scrollTop(), document.documentElement.scrollTop); - if (hippie.screen.y > initY) { - if (!initLeft) { - $tp.removeClass('di_none'); - console.info('Initial viewport left'); - } - initLeft = true; - } else { - if (initLeft) { - $tp.addClass('di_none'); - console.info('Initial viewport entered'); - } - initLeft = false; - } - }; - - // Add events to navigation elements - $tp.click(function (event) { - event.preventDefault(); - $('html, body').stop().animate({ - scrollTop: 0 - }, basicEase); - // console.log('Scrolled to top'); - }); - $dn.click(function (event) { - event.preventDefault(); - const pos = Math.max(hippie.screen.dh, hippie.body.h) - hippie.screen.vh; - $('html').scrollTop(pos); - // document.documentElement.scrollTop = pos; - console.info('Scrolled down to', pos); - }); -} - -function HippieFade(toggleElement, initState) { - 'use strict'; - - const fragment = document.createDocumentFragment(); - const overlay = document.createElement('div'); - - overlay.id = 'mouse-overlay'; - - if (initState) { - overlay.classList.add('active'); - } - - toggleElement.addEventListener('click', function () { - overlay.classList.toggle('active'); - }); - - fragment.appendChild(overlay); - document.body.style.position = 'relative'; - document.body.prepend(fragment); -} - -// MODULE Meta elements -function HippieMeta($ma, $pp) { - 'use strict'; - - let metaOn = false; - - $ma.click(function () { - let $wrap, $pop; - - // if (metaOn !== true) { - if (!metaOn) { - metaOn = true; - - $pp.each(function () { - // if ($(this).css('position') === 'static') { - // $(this).addClass('js_changed_pos'); - // $(this).css('position', 'relative'); - // } - // $pop = $(this).next('.exp_pop').detach(); - // $wrap = $(this).wrap('').parent().prepend('').prepend(''); - // $wrap.after($pop); - - $('
').addClass('exp_overlay').css({ - position: 'absolute', - width: '100%', - height: '100%', - top: 0, - left: 0 - }).appendTo($(this).addClass('exp_wrap')); - - // Displays explanation popup following the mouse - $(this).on({ - mouseenter: function () { - // if ($(this).attr('emmet')) { - // - // } - $(this).next('.exp_pop').show(); - }, - mouseleave: function () { - $(this).next('.exp_pop').hide(); - }, - mousemove: function (event) { - $(this).next('.exp_pop').css({ - 'top': event.pageY - $(this).next('.exp_pop').outerHeight() - 4, - 'left': event.pageX + 8 - // 'left': event.pageX - $(this).offset().left + 8 - }); - } - }); - }); - - } else { - $pp.each(function () { - $(this).off('mouseenter mouseleave mousemove'); - - $(this).removeClass('exp_wrap').find('.exp_overlay').remove(); - // $wrap = $(this).parent('.exp_wrap'); - // $pop = $wrap.next('.exp_pop').detach(); - // $wrap.find('.exp_marker_pop').remove(); - // $(this).unwrap('.exp_wrap'); - // $(this).after($pop); - // if ($(this).hasClass('js_changed_pos')) { - // $(this).css('position', ''); - // if ($(this).attr('style') === '') { - // $(this).removeAttr('style'); - // } - // $(this).removeClass('js_changed_pos'); - // } - }); - - metaOn = false; - } - console.log('Explanation mode', metaOn); - }); -} - -// Sets the href attribute to mailto: with given information -function composeMail(tag, name, prov, suffix, text, topic) { - 'use strict'; - - let trigger = tag.indexOf('.'); - let mailString = name + '@' + prov + '.' + suffix; - let textString = mailString.replace(/@/g, '(at)'); - let descString = 'Nachricht an ' + mailString; - - if (!text) { - text = mailString; - } else if (text === 'at') { - text = textString; - } else if (text === 'to') { - text = descString; - } - - if (topic) { - topic = '?subject=' + topic; - } else { - topic = ''; - } - - if (trigger === -1) { - const el = document.getElementById(tag); - const elContent = el.innerHTML; - - el.innerHTML = elContent + text; - el.setAttribute('href', 'mailto:' + mailString + topic); - } else { - const els = document.getElementsByClassName(tag.slice(1)); - - for (let el of els) { - const elContent = el.innerHTML; - - el.innerHTML = elContent + text; - el.setAttribute('href', 'mailto:' + mailString + topic); - } - } -} - -// get document coordinates of the element -// function getCoords (elem) { -// let box = elem.getBoundingClientRect(); -// -// return { -// top: box.top + pageYOffset, -// left: box.left + pageXOffset -// }; -// } - -// https://stackoverflow.com/a/488073/1444149 -// function Utils () {} -// -// Utils.prototype = { -// constructor: Utils, -// isElementInView: function (element, fullyInView) { -// var pageTop = $(window).scrollTop(); -// var pageBottom = pageTop + $(window).height(); -// var elementTop = $(element).offset().top; -// var elementBottom = elementTop + $(element).height(); -// -// if (fullyInView === true) { -// return ((pageTop < elementTop) && (pageBottom > elementBottom)); -// } else { -// return ((elementTop <= pageBottom) && (elementBottom >= pageTop)); -// } -// } -// }; -// -// var Utils = new Utils(); - -class TimeDisplay { - constructor(element, options, interval) { - this.element = element; - this.options = options || {hour: '2-digit', minute: '2-digit', second: '2-digit', hour12: false}; - this.interval = interval || 1000; - this.isPaused = false; - this.locale = navigator.language || 'en-US'; - - this.updateTime(); - - console.group('Time information'); - console.info('\nOptions:', this.options, '\n\n'); - console.info('Interval:', this.interval); - console.groupEnd(); - } - - formatTime(time) { - return time.toLocaleTimeString(this.locale, this.options); - } - - // TODO: Zeit nur im Sekundentakt aktualisieren wenn Sekunden angezeigt werden - async updateTime() { - while (true) { - if (!this.isPaused) { - const now = new Date(); - this.element.textContent = this.formatTime(now); - } - await new Promise(resolve => setTimeout(resolve, this.interval)); - } - } - - pause() { - this.isPaused = true; - } - - resume() { - this.isPaused = false; - } -} - -class DateDisplay { - constructor(element, options, direction) { - this.element = element; - this.options = options || {year: 'numeric', month: 'long', day: 'numeric'}; - this.direction = direction || 0; - - this.updateDate(); - this.checkForDateChange(); - - console.group('Date information'); - console.info('\nOptions:', this.options, '\n\n'); - console.info('Remaining minutes:', Math.floor(this.getTimeUntilNextMidnight() / 3600)); - console.groupEnd(); - } - - formatDate(date) { - const formatter = new Intl.DateTimeFormat(navigator.language, this.options); - - switch (this.direction) { - case 1: - const dateString = formatter - .formatToParts(date) - .map(({type, value}) => { - // if (type === 'day' || type === 'month') { - if (type === 'literal') { - return `${value}
`; - } else { - return value; - } - }) - .join(''); - - return dateString; - case 0: - default: - return formatter.format(date); - } - } - - updateDate() { - const now = new Date(); - - this.element.innerHTML = this.formatDate(now); - } - - changeFormat(format, direction) { - this.options = format; - this.direction = direction; - - this.updateDate(); - } - - getTimeUntilNextMidnight() { - const now = new Date(); - const nextMidnight = new Date(now.getFullYear(), now.getMonth(), now.getDate() + 1); - - return nextMidnight - now; - } - - checkForDateChange() { - const timeUntilNextMidnight = this.getTimeUntilNextMidnight(); - - setTimeout(() => { - this.updateDate(); - this.checkForDateChange(); - }, timeUntilNextMidnight); - } -} - -// TODO: Kompatibilität für Zeiger -function checkButtonAndTarget(event, element, button = 0) { - return ( - event.button === button && - event.target === element - ); -} - -function getClosestEdgeToElement(element) { - 'use strict'; - - const bounding = element.getBoundingClientRect(); - const distances = { - top: bounding.top, - right: window.innerWidth - bounding.right, - bottom: window.innerHeight - bounding.bottom, - left: bounding.left - }; - - return Object.keys(distances).reduce((a, b) => distances[a] < distances[b] ? a : b); -} - -function getClosestEdgeToMouse(event) { - 'use strict'; - - const mouseX = event.clientX; - const mouseY = event.clientY; - const distances = { - left: mouseX, - right: window.innerWidth - mouseX, - top: mouseY, - bottom: window.innerHeight - mouseY - }; - - return Object.keys(distances).reduce((a, b) => - distances[a] < distances[b] ? a : b - ); -} - -function centerElementUnderCursor(event, element) { - 'use strict'; - - const offsetX = element.getBoundingClientRect().width / 2; - const offsetY = element.getBoundingClientRect().height / 2; - const x = event.clientX - offsetX; - const y = event.clientY - offsetY; - - element.style.left = `${x}px`; - element.style.top = `${y}px`; -} - -function setAttributesAccordingToPosition(element, position, attributes) { - 'use strict'; - - element.classList.remove(...Object.values(attributes).map(pos => pos.className)); - Object.keys(attributes[position].styles).forEach(key => { - element.style[key] = ''; - }); - - element.classList.add(attributes[position].className); - Object.entries(attributes[position].styles).forEach(([key, value]) => { - element.style[key] = value; - }); -} - -/** - * Gibt eine Zahl zwischen und aus. - * Die Werte und sind dabei mit eingeschlossen. - * Mit kann der Exponent für eine 10er-Teilung angegeben werden. - * - * @param {number} min - * @param {number} max - * @param {number} pos - * @returns {number} - */ -function randomIntFrom(min, max, pos = 0) { - pos = Math.pow(10, pos); - min = Math.ceil(min); - max = Math.floor(max); - - return Math.floor((Math.random() * (max - min + 1) + min) / pos) * pos; -} - -function randomFloatFrom(min, max, dec = 0) { - dec = Math.pow(10, dec); - - return Math.round((Math.random() * (max - min + 1) + min) * dec) / dec; -} - -/** - * Ersetzt \n durch
. - * - * @param {string} text - * @returns {string} - */ -function replaceLineBreaks(text) { - if (text === '' || !text.includes('\n')) { - return text; - } - - return text.split('\n').join('
'); -} - -/** - * Gibt eine zufällige Farbe als HEX-Wert aus. - * - * @returns {string} - */ -function getRandomColor() { - const letters = '0123456789ABCDEF'; - let color = '#'; - - for (let i = 0; i < 6; i++) { - color += letters[Math.floor(Math.random() * 16)]; - } - - return color; -} - -function getRandomFormattedString(chars = 2, digits = 6, separator = '-') { - const getRandomUppercase = () => String.fromCharCode(Math.floor(Math.random() * 26) + 65); - const getRandomDigit = () => Math.floor(Math.random() * 10); - let string = ''; - - for (let i = 0; i < chars; i++) { - string += getRandomUppercase(); - } - - string += separator; - - for (let i = 0; i < digits; i++) { - string += getRandomDigit(); - } - - return string; -} - -function toggleColumn(table, index) { - const rows = table.rows; - const isHidden = rows[0].cells[index].classList.contains('di_none'); - - for (let i = 0; i < rows.length; i++) { - const cell = rows[i].cells[index]; - - if (isHidden) { - cell.classList.remove('di_none'); - } else { - cell.classList.add('di_none'); - } - } -} - -function convertToRomanNumeral(num) { - const romanNumeralMap = [ - {value: 1000, numeral: 'M'}, - {value: 900, numeral: 'CM'}, - {value: 500, numeral: 'D'}, - {value: 400, numeral: 'CD'}, - {value: 100, numeral: 'C'}, - {value: 90, numeral: 'XC'}, - {value: 50, numeral: 'L'}, - {value: 40, numeral: 'XL'}, - {value: 10, numeral: 'X'}, - {value: 9, numeral: 'IX'}, - {value: 5, numeral: 'V'}, - {value: 4, numeral: 'IV'}, - {value: 1, numeral: 'I'} - ]; - - let result = ''; - for (let i = 0; i < romanNumeralMap.length; i++) { - while (num >= romanNumeralMap[i].value) { - result += romanNumeralMap[i].numeral; - num -= romanNumeralMap[i].value; - } - } - return result; -} - -function capitalizeFirstLetter(text) { - return text.charAt(0).toUpperCase() + text.slice(1); -} - -function mapRange(value, inMin, inMax, outMin, outMax, reverse = false, clamp = false) { - let min = outMin; - let max = outMax; - - if (reverse) { - [min, max] = [max, min]; - } - - const mapped = (value - inMin) * (max - min) / (inMax - inMin) + min; - - if (clamp) { - return Math.max(Math.min(min, max), Math.min(Math.max(min, max), mapped)); - } - return mapped; -} - -// Source - https://stackoverflow.com/a/47480429 -// Posted by Etienne Martin, modified by community. See post 'Timeline' for change history -// Retrieved 2026-03-08, License - CC BY-SA 4.0 -const delay = ms => new Promise(res => setTimeout(res, ms)); - -// CONCEPTS - -// NOTE: Benutzt private Zuweisungen -class elementBinder { - #element; - - constructor(element) { - this.#setElement(element); - } - - #setElement(value) { - if (!value) { - throw new Error('No element found'); - } - this.#element = value; - this.#element.style.background = "hotpink"; - } - - get element() { - return this.#element; - } - - set element(value) { - this.#setElement(value); - } -} - -//OLD - -function Clock(id) { - 'use strict'; - - this.id = id; - const that = this; - - setInterval(function () { - that.updateClock(); - }, 1000); - this.updateClock(); -} - -Clock.prototype.updateClock = function () { - 'use strict'; - - const date = new Date(); - const clock = document.getElementById(this.id); - //console.log(this); - clock.innerHTML = this.formatDigits(date.getHours()) + ':' + this.formatDigits(date.getMinutes()) + ":" + this.formatDigits(date.getSeconds()); -}; - -Clock.prototype.formatDigits = function (val) { - 'use strict'; - - if (val < 10) val = '0' + val; - - return val; -}; - -function ongoing() { - - var now = new Date(); - - var w = Math.floor(now.getDay()); - var D = ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag']; - var DNumb = Math.floor(now.getDate()); - var MNumb = Math.floor(now.getMonth()); - var M = ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'MaiOktober', 'November', 'Dezember']; - var y = Math.floor(now.getYear()); - if (y < 999) y += 1900; - - var ms = Math.floor(now.getMilliseconds()); - var s = Math.floor(now.getSeconds()); - var m = Math.floor(now.getMinutes() + s / 60); - var h = Math.floor(now.getHours() + m / 60); - - var j2000 = new Date(); // Bezugspunkt ist der 1.1.2000 0:00 UT (entspricht JD 2451544,5) - j2000.setUTCFullYear(2000, 0, 1); - j2000.setUTCHours(0, 0, 0, 0); - - var utc = new Date(); - utc.setUTCFullYear(y, MNumb, DNumb); // Monate müssen im Wertebereich 0...11 übergeben werden - utc.setUTCHours(h, m, s, ms); - - var utc0 = new Date(); - utc0.setUTCFullYear(y, MNumb, DNumb); - utc0.setUTCHours(0, 0, 0, 0); - - var jd = 2451544.5 + (utc - j2000) / 86400000; // Zählung erfolgt in Millisekunden, 1 Tag = 86.400.000 ms - var jdUTC0 = 2451544.5 + (utc0 - j2000) / 86400000; - - var N = jd - 2451545.0; - var L = 280.460 + 0.9856474 * N; // mittlere ekliptikale Länge der Sonne - var g = 357.528 + 0.9856003 * N; // mittlere Anomalie - var el = L + 1.915 * Math.sin(g) + 0.020 * Math.sin(2 * g); - var e = 23.439 - 0.0000004 * N; - var rektaszension = Math.atan((Math.cos(e) * Math.sin(el)) / Math.cos(el)); - - var T = (jdUTC0 - 2451545.0) / 36525; - var stGMT = (((6 * 3600) + (41 * 60) + 50.54841) + (8640184.812866 * T) + (0.093104 * Math.pow(T, 2)) - (0.0000062 * Math.pow(T, 3))) / 3600; - - var stGMT2 = 6.697376 + 2400.05134 * T + 1.002738 * T; - var hWGMT = stGMT2 * 15; - var hW = hWGMT + 11.9566185772; - - var st = (stGMT + (now.getUTCHours() * 1.00273790935)) + (11.9566185772 / 15); // Sommerzeit muss noch berücksichtigt werden - var st24 = Math.abs(st - (Math.round(st / 24) * 24)); - var stH = Math.floor(st24); - var stM = Math.floor((st24 % 1) * 60); - var stS = zeroFill(Math.floor((((st24 % 1) * 60) % 1) * 60), 2); - - var travelWidth = document.body.clientWidth; - var travelHeight = document.body.clientHeight; - var sunPosX = 0; - var sunPosY = 0; - var moonPosX = 0; - var moonPosY = 0; - - var sun = $('#sun').css({ - 'left': (s / 60) * travelWidth, - 'top': (m / 60) * travelHeight - }); - - $('#day').text(D[w]); - $('#dayNumb').text(DNumb); - $('#month').text(M[MNumb]); - $('#year').text(y); - $('#time').text('' + zeroFill(h, 2) + ':' + zeroFill(m, 2) + ':' + zeroFill(s, 2)); - - $('#julian').text(jd.toFixed(6)); - //$('#star').text(stH + ':' + stM + ':' + stS); - $('#star').text(stH + ':' + stM); - $('#star1').text(stGMT); - $('#star2').text(stGMT2); -} - -function zeroFill(number, width) { - width -= number.toString().length; - if (width > 0) { - return new Array(width + (/\./.test(number) ? 2 : 1)).join('0') + number; - } - return number + ''; // always return a string -} - -//Länge der Balken im Diagram berechnen -function barwidth(size, G, W) { - var s = size; - var g = G; - var w = W; - var p = (w / g) * 100; - var newW = s * (p / 100); - - return newW; -} - -//String Element erweitern -String.prototype.transform = function () { - return parseFloat(this.replace(',', '.')); -} -//Array Element erweitern -Array.prototype.arrayAdd = function () { - return eval(this.join('+')); -} - -//Speicherplatz in Prozent berechnen -function percentage(total, gigs, round) { - var totalSpace = total; - var singleSpace = gigs; - var z = round; - var p = singleSpace / (totalSpace / 100); - - return p; -} - -//Speicherplatz in GB berechnen -function gigabytes(percent, total, round) { - var occupiedPercent = percent; - var singleSpace = total; - var z = round; - var g = (singleSpace / 100) * occupiedPercent; - - return g; -} diff --git a/source/code/hippie/globals.js b/source/code/hippie/globals.js deleted file mode 100644 index 638c7ba..0000000 --- a/source/code/hippie/globals.js +++ /dev/null @@ -1,27 +0,0 @@ -let hippie = { - screen: { - w: Math.max(document.documentElement.offsetWidth, document.documentElement.clientWidth, window.innerWidth, 0), - vh: Math.max(document.documentElement.clientHeight, window.innerHeight, 0), - dh: Math.max(document.documentElement.offsetHeight, document.documentElement.clientHeight, 0), - y: document.documentElement.scrollTop - // hippie.screen.y: document.documentElement.scrollTop - }, - body: { - w: Math.max(document.body.offsetWidth, document.body.clientWidth, window.innerWidth, 0), - h: Math.max(document.body.offsetHeight, document.body.clientHeight, 0), - } -}; -let viewHover = true; -let basicEase = 600; - -const flagColors = [ - 'fad803', - 'f2af13', - 'd30a51', - '8e1f68', - '273f8b', - '3c579a', - 'b7e0f0', - '6bc7d9', - '52bed1' -]; \ No newline at end of file diff --git a/source/code/intro.js b/source/code/intro.js deleted file mode 100644 index 68dcda0..0000000 --- a/source/code/intro.js +++ /dev/null @@ -1,318 +0,0 @@ -class Intro { - constructor(name) { - this.name = name; - } - - init() { - return new Promise((resolve) => { - console.log('%s Init', this.name); - - resolve(); - }); - } -} - -class UI { - constructor() { - this.introDelay = 6; - this.hintDelay = 1; - this.isAgree = false; - this.steps = { - agreement: { - element: document.getElementById('agreement'), - msgIn: 'Agreement shown.', - msgOut: 'Agreement accepted.', - msgNo: 'No agreement today.' - } - }; - this.intro = document.getElementById('init'); - this.agreement = this.steps.agreement.element; - this.hint = { - element: document.getElementById('hint'), - delay: this.hintDelay * 1000 - }; - this.loader = document.getElementById('loader'); - } - - showIntro() { - const el = this.intro; - const dy = this.introDelay * 1000; - - document.addEventListener('click', hintHandler, false); - document.addEventListener('keydown', hintHandler, false); - - return new Promise((resolve, reject) => { - if (el) { - console.info("Intro begin."); - - el.classList.replace('op_hide', 'op_show'); - setTimeout( - () => { - el.classList.replace('op_show', 'op_hide'); - el.addEventListener('transitionend', () => { - console.info("Intro fin."); - - el.classList.add('di_none'); - resolve("Intro fin."); - }); - }, - dy - ); - } else { - reject('No intro available.'); - } - }); - } - - showHint() { - if (typeof this.hint.timeoutId === 'number') { - this.cancelHint(); - } - - this.hint.element.classList.remove('di_none'); - - this.hint.timeoutId = setTimeout( - () => { - this.dismissHint(); - }, - this.hint.delay - ); - } - - dismissHint() { - this.hint.element.classList.add('di_none'); - this.hint.timeoutId = undefined; - } - - cancelHint() { - clearTimeout(this.hint.timeoutId); - } - - showIdle() { - const el = document.getElementById('idle'); - - return new Promise((resolve, reject) => { - if (el) { - console.info('Idle.'); - - el.classList.replace('op_hide', 'op_show'); - resolve('Idle.'); - } else { - reject(); - } - }); - } - - init() { - return new Promise((resolve) => { - console.log('Init'); - - resolve(); - }); - } -} - -function init() { - return new Promise((resolve) => { - console.log('Init'); - - // Set all steps to not receive pointer events - document.querySelectorAll('.step').forEach(element => { - console.log(element); - - element.style.pointerEvents = 'none'; - }); - - resolve(); - }); -} - -function showIntro() { - const el = intro; - const dy = introDelay * 1000; - - document.addEventListener('click', hintHandler, false); - document.addEventListener('keydown', hintHandler, false); - - return new Promise((resolve, reject) => { - if (el) { - console.info("Intro begin."); - - el.classList.replace('op_hide', 'op_show'); - setTimeout( - () => { - el.classList.replace('op_show', 'op_hide'); - el.addEventListener('transitionend', () => { - console.info("Intro fin."); - - el.classList.add('di_none'); - - resolve("Intro fin."); - }); - }, - dy - ); - } else { - document.removeEventListener('click', hintHandler); - document.removeEventListener('keydown', hintHandler); - - reject('No intro available.'); - } - }); -} - -function showAgreement() { - document.removeEventListener('click', hintHandler); - document.removeEventListener('keydown', hintHandler); - const el = agreement; - const dy = introDelay * 1000; - - return new Promise((resolve, reject) => { - if (el) { - console.info(steps.agreement.msgIn); - - el.classList.replace('op_hide', 'op_show'); - el.style.pointerEvents = ''; - - el.addEventListener('click', agreeHandler); - document.addEventListener('keydown', agreeHandler); - } else { - reject(steps.agreement.msgNo); - } - - function agreeHandler() { - const el = agreement; - - isAgree = true; - - el.classList.replace('op_show', 'op_hide'); - el.addEventListener('transitionend', function endListener() { - console.info(steps.agreement.msgOut); - - el.removeEventListener('transitionend', endListener); - el.removeEventListener('click', agreeHandler); - document.removeEventListener('keydown', agreeHandler); - el.classList.add('di_none'); - - resolve(steps.agreement.msgOut); - }); - } - }); -} - -function showIdle() { - const el = document.getElementById('idle'); - - document.addEventListener('mouseleave', idleStart, false); - document.addEventListener('mouseenter', idleStop, false); - - return new Promise((resolve, reject) => { - if (el) { - console.info('Idle.'); - - el.classList.replace('op_hide', 'op_show'); - el.style.pointerEvents = ''; - el.addEventListener('contextmenu', (event) => { - event.preventDefault(); - }); - el.addEventListener('click', (event) => { - if (checkButtonAndTarget(event, event.target)) { - console.log('OK go', event.target); - resolve('Idle fin.'); - } else { - event.preventDefault(); - } - }, false); - } else { - document.removeEventListener('mouseleave', idleStart); - document.removeEventListener('mouseenter', idleStop); - - reject(); - } - }); -} - -function loadCore() { - const el = loader; - const bar = loader.querySelector('#progress'); - const status = loader.querySelector('#status'); - const spinner = loader.querySelector('#spinner'); - const sp = spinner.querySelector('span'); - - let progress = 0; - - return new Promise((resolve) => { - console.info("Core loading."); - - updateProgressBar(); - - function updateProgressBar() { - const maxChunk = 33; - const time = 400; - let increment = randomIntFrom(1, maxChunk); - - progress += increment; - - if (progress >= 100) progress = 100; - // console.log(progress); - - bar.style.width = progress + '%'; - status.textContent = progress + '%'; - - if (progress < 100) { - setTimeout(updateProgressBar, time); - } else { - bar.style.width = '100%'; - sp.style.animationPlayState = 'paused'; - spinner.style.color = 'white'; - spinner.style.backgroundColor = 'black'; - el.classList.replace('op_show', 'op_hide'); - el.addEventListener('transitionend', function endListener() { - console.info("Core loaded."); - - el.removeEventListener('transitionend', endListener); - el.classList.add('di_none'); - - resolve("Core loaded."); - }); - } - } - }); -} - -/** - * Erstellt Kontext für hint-Objekt und ermöglicht das Entfernen des Ereignis. - */ -function hintHandler() { - hint.show(); -} - -function idleStart() { - idle.cycle(); -} - -function idleStop() { - idle.cancel(); -} - -/** - * Blendet einen Schritt aus. - * - * @param {*} e - * @returns - */ -function stepHandler(e) { - const el = e.target; - const msg = steps[el.id].msgOut; - - return new Promise(function (resolve) { - el.classList.replace('op_show', 'op_hide'); - el.addEventListener('transitionend', function endListener() { - console.info(msg); - - el.removeEventListener('transitionend', endListener); - - resolve(msg); - }); - }); -} \ No newline at end of file diff --git a/source/code/windows.js b/source/code/windows.js deleted file mode 100644 index 01a3c7d..0000000 --- a/source/code/windows.js +++ /dev/null @@ -1,201 +0,0 @@ -class HippieTaskBar { - constructor(element, placeholder, options) { - this.element = element; - this.placeholder = placeholder; - this.date = null; - this.isDragging = false; - this.barSize = ''; - // TODO: Erweitern auf allgemeine Möglichkeiten und dann aus JSON-Datei laden - this.options = options || { - direction: 0, - position: 'bottom', - date: { - year: 'numeric', - month: '2-digit', - day: '2-digit' - } - }; - - this.init(); - } - - // TODO: Ereignisse besser delegieren - init() { - this.element.addEventListener('pointerdown', this.onDown.bind(this)); - document.addEventListener('pointermove', this.onMove.bind(this)); - document.addEventListener('pointerup', this.onUp.bind(this)); - - const dateElement = document.createElement('span'); - - dateElement.id = 'date'; - this.element.querySelector('.clock').appendChild(dateElement); - this.date = new DateDisplay(dateElement, this.options.date); - - this.setOptions(this.options.position); - } - - onDown(event) { - if (checkButtonAndTarget(event, this.element, 0)) { - console.debug('Drag mode enabled'); - - this.isDragging = true; - - this.showPlaceholder(); - - centerElementUnderCursor(event, this.placeholder); - } - - event.preventDefault(); - } - - onMove(event) { - if (this.isDragging) { - this.options.position = getClosestEdgeToMouse(event); - const borderRadius = '4px'; - const attributes = { - top: { - className: 'top', - styles: { - flexDirection: 'row', - borderStyle: '', - borderColor: '', - borderTopStyle: 'solid', - borderTopColor: 'white', - borderTopRightRadius: '', - borderBottomRightRadius: borderRadius, - borderBottomLeftRadius: borderRadius, - borderTopLeftRadius: '' - } - }, - right: { - className: 'right', - styles: { - flexDirection: 'column', - borderStyle: '', - borderColor: '', - borderRightStyle: 'solid', - borderRightColor: 'white', - borderTopRightRadius: '', - borderBottomRightRadius: '', - borderBottomLeftRadius: borderRadius, - borderTopLeftRadius: borderRadius - } - }, - bottom: { - className: 'bottom', - styles: { - flexDirection: 'row', - borderStyle: '', - borderColor: '', - borderBottomStyle: 'solid', - borderBottomColor: 'white', - borderTopRightRadius: borderRadius, - borderBottomRightRadius: '', - borderBottomLeftRadius: '', - borderTopLeftRadius: borderRadius - } - }, - left: { - className: 'left', - styles: { - flexDirection: 'column', - borderStyle: '', - borderColor: '', - borderLeftStyle: 'solid', - borderLeftColor: 'white', - borderTopRightRadius: borderRadius, - borderBottomRightRadius: borderRadius, - borderBottomLeftRadius: '', - borderTopLeftRadius: '' - } - } - }; - - setAttributesAccordingToPosition(this.placeholder, this.options.position, attributes); - centerElementUnderCursor(event, this.placeholder); - } - } - - onUp() { - if (event.target === this.placeholder) { - console.debug('Drag mode disabled'); - - this.isDragging = false; - - this.snapToEdges(); - this.hidePlaceholder(); - } - } - - showPlaceholder() { - this.element.style.display = 'none'; - this.placeholder.style.display = 'flex'; - } - - hidePlaceholder() { - this.placeholder.style.display = 'none'; - this.element.style.display = ''; - } - - snapToEdges() { - this.setOptions(this.options.position); - this.date.changeFormat(this.options.date, this.options.direction); - } - - setOptions(position) { - const attributes = { - top: { - className: 'top', - styles: { - top: '0', right: '0', bottom: '', left: '0', - width: '', height: this.barSize, - flexDirection: 'row' - } - }, - right: { - className: 'right', - styles: { - top: '0', right: '0', bottom: '0', left: '', - width: this.barSize, height: '', - flexDirection: 'column' - } - }, - bottom: { - className: 'bottom', - styles: { - top: '', right: '0', bottom: '0', left: '0', - width: '', height: this.barSize, - flexDirection: 'row' - } - }, - left: { - className: 'left', - styles: { - top: '0', - right: '', - bottom: '0', - left: '0', - width: this.barSize, - height: '', - flexDirection: 'column' - } - } - }; - - setAttributesAccordingToPosition(this.element, position, attributes); - - switch (position) { - case 'right': - case 'left': - this.options.date = {year: '2-digit', month: '2-digit', day: '2-digit'}; - this.options.direction = 1; - break; - case 'top': - case 'bottom': - default: - this.options.date = {year: 'numeric', month: '2-digit', day: '2-digit'}; - this.options.direction = 0; - break; - } - } -} diff --git a/source/data/start.json b/source/data/start.json deleted file mode 100644 index cc0da22..0000000 --- a/source/data/start.json +++ /dev/null @@ -1,14 +0,0 @@ -[ - { - "text": "Index", - "href": "/" - }, - { - "text": "Basics", - "href": "/demo/basics.html" - }, - { - "text": "Drag", - "href": "/demo/examples/ui/drag.html" - } -] \ No newline at end of file diff --git a/source/screens/demo/basics.liquid b/source/screens/demo/basics.liquid deleted file mode 100644 index d3c7a08..0000000 --- a/source/screens/demo/basics.liquid +++ /dev/null @@ -1,975 +0,0 @@ ---- -title: Basics -tags: -- demoIndex -order: 2 ---- -{% layout 'hippie/page.liquid' %} - -{% block title %}Grundlagen{% endblock %} - -{% block main %} -
- Dies ist einfach nur Text.
Weniger wäre nichts, denn dieser Text ist nicht durch ein spezifisches Element - umschlossen.
Das ist normalerweise nicht vorgesehen und wird hier nur zur Einführung und Anschauung - verwendet.

-
-

Es wirken nur die Eigenschaften des - <body> - Elements. Dieses Element umschließt den gesamten Inhalt des Dokumentes und kommt daher nur einmal vor. - Inhalte sind normalerweise durch Elemente definiert. Grundlegende Elemente teilen das Dokument zunächst in - Abschnitte.

-

Bereiche

-
-

Ein Abschnitt, welcher für sich alleine stehen kann, definiert sich durch - <article>. Solch ein Element wird oft detailliert gestaltet, kommt aber auch ohne - jegliche Gestaltung aus.

-

Noch allgemeiner ist das - <section> - Element. Es schafft Bereiche, um Inhalte zu strukturieren.

-

Bestimmte Bereiche haben einen vorgegebenen Zweck.
Folgende Bereiche sind vorgegeben:

-
- - -
-
-

Um einleitenden Inhalt festzuhalten, wird das - <header> - Element eingesetzt. Es beinhaltet häufig auch Navigationselemente. Dabei bezieht es sich auf den - nächsten, umgebenden Abschnitt.

- -
-
-

Auch abschließender Inhalt kann für einen Abschnitt definiert werden. Dazu wird - <footer> - eingesetzt.

-
-
- -

Zur feineren Strukturierung und Gliederung von Texten sind einige weitere Elemente verfügbar. Diese werden - nun der Reihe nach aufgeführt. Zu Beginn die Überschriften, da sie noch zu den Abschnitten gehören. Das - kommt vermutlich daher, da Abschnitte häufig eine kennzeichnende Überschrift beinhalten.

-

Überschrift 1

-

Eine Überschrift erster Ordnung - <h1> - ist sehr groß und steht daher oft außerhalb eines Textflusses. Sie schafft eine deutliche Trennung sowohl - inhaltlich wie auch optisch. Sie erzeugt einen Abstand gleich der horizontalen Linie über sich.

-

Überschrift 2

-

Die weiteren Überschriften - <h2> - bis - <h6> - gliedern Text und werden auch als Titel für andere Elemente eingesetzt.

-

Überschrift 3 ist in Großbuchstaben gesetzt

-

Überschrift 4 verwendet normale Buchstaben und gleicht ansonsten Überschrift 3

-
Überschrift 5 ist Überschrift 5
-
-
Überschrift 6
-

Überschriften können mit dem Element <hgroup> mit Absätzen gruppiert werden, um - beispielsweise Untertitel abzubilden.

-
-
-
-

Gruppierung

-

Ein Absatz - <p>. Zugegeben ein kurzer.

-

Aus mehreren Absätzen wird ein ganzer Text. Solche Texte haben gelegentlich großen informativen oder - unterhaltsamen Charakter.
Einfache Zeilenumbrüche werden darin mit - <br> - erreicht. Dies ist allerdings ein Element der Textebene und keine Gruppierung.

-

Die Unterteilung in Absätze ist eine von vielen Möglichkeiten Texte zu gruppieren und ihnen Struktur zu - verleihen. In diesem Dokument flattert Text normalerweise von Links daher. Er ist schwarz und in einer - serifenlosen Schrift gesetzt. Zu weiteren Formatierungen, die eher auf einer Ebene der Zeichen einzuordnen - ist, wird im Verlauf näher eingegangen. Zunächst die Struktur:

-

Text sitzt gerne auch mal zentriert.

-
- p.txt_center -
-

Rechtsbündig ist schon eher eine Ausnahme bzw. Besonderheit.

-
- p.txt_right -
-
Das Element - <address> - hat den Zweck, Kontaktinformationen bereitzustellen. Diese werden, je nach Position des Elements im - Kontext der gesamten Seite, anders gewertet. -
-

Texte können auf verschiedene Arten unterteilt werden. Dafür werden unterschiedlich formatierte - <hr> - Elemente verwendet. Die horizontale Linie ist die Ausgangsformatierung, daher auch der abgekürzte Name des - Elements. Eine Linie ist schwarz und durchgezogen.

-
-

Es ist auch eine unsichtbare Unterteilung möglich:

- -
- hr.hidden -
-

Die Linie darf auch gepunktet sein. Zudem sind verschiedene Längen möglich. Diese sind immer ein Prozentwert - der verfügbaren Breite. Hier in gleicher Reihenfolge 100%, 50% und 25%:

-
-
- hr.dotted -
-
-
- hr.space_even_half -
-
-
- hr.dotted.space_even_fourth -
-

Zur horizontalen Unterteilung kommt natürlich auch eine vertikale Trennung hinzu. - Text kann so zum Beispiel in mehrere Spalten unterteilt werden. Dies ist hilfreich, wenn ein Text durch eine - breite Fläche sehr lange Zeilen bekommen würde. Es ist dann schwer den neuen Zeilenanfang zu finden. Die - vertikale Trennung dient in erster Linie dazu, diesem Umstand zu begegnen. Auch hier kann die Unterteilung - viele Formen annehmen.

-
- p.column_2 -
-

Drei Spalten gilt es jetzt also zu füllen. Dann erst wird die Trennung - der Spalten durch eine Linie sichtbar.

-
- p.column_3.column_line -
-

Ist der Text nicht lang genug bleibt eventuell eine Spalte leer. Diesmal wird - dies aber nicht passieren, denn das Anschauungsbeispiel ist ja nun durch den vorherigen Absatz schon - gegeben.
Oft ist es sinnvoll, Absätze mit mehreren Spalten deutlich von nachfolgenden Absätzen zu - trennen. Da der Textfluss spaltenweise verläuft, liest man eventuell an der falschen Stelle weiter.
Auch - das zeigen diese beiden Absätze ganz gut.

-

Es gibt die Möglichkeit vorformatierten Text darzustellen - <pre>.

-
dadurch
bleiben
einrückungen
durch
tabulatoren
erhalten.
-

Wird Bezug auf fremde Inhalte genommen, kommt ein Zitat - <blockquote> - zur Anwendung. Es besteht aus der Aussage und der Quelle.

-
-

Ein Zitat (das, lateinisch citatum „Angeführtes, Aufgerufenes“ zu lat. citāre „in Bewegung setzen, - vorladen“, vgl. „jemanden vor Gericht zitieren“) ist eine wörtlich übernommene Stelle aus einem Text - oder ein Hinweis auf eine bestimmte Textstelle.

-

- Wikipedia -

-
-
- blockquote>p+p.quote_source -
-

Gerade bei wörtlichen Zitierungen kommt häufig das Anführungszeichen zum Einsatz. Es kann durch die - Formatierung automatisch ergänzt werden.

-
-

Das kannst du schon so machen aber dann isses halt Kacke.

-

o. V.

-
-
- blockquote.quote_mark>p+p.quote_source -
-

Listen

-

Text bekommt durch Listen besondere optische wie auch inhaltliche Struktur. Es gibt ungeordnete - <ul> - und geordnete Listen - <ol> - sowie Beschreibungslisten - <dl>. Die beiden ersten Varianten beinhalten das Listenelement - <li>. Beschreibungslisten beinhalten jeweils das Paar von Ausdruck - <dt> - und Beschreibung - <dd>. Im Folgenden eine Liste der Listen in ihrer Ausgangskonfiguration:

-
    -
  • Ungeordnete
  • -
  • Listen
  • -
-
    -
  • Verschiedener
  • -
  • Art
  • -
-
    -
  1. Geordnete
  2. -
  3. Liste
  4. -
-
-
Beschreibungsliste
-
Auch Definitionslisten genannt
-
Ausdruck
-
Beschreibung
-
-

Auch Inhalte, die nicht in Textform sind, können durch einen Bezug integriert werden. Wie diese Fahne werden - sie mit - <figure> - umschlossen und tragen eine Bezeichnung, welche mit - <figcaption> - ausgezeichnet wird.

-
-
Fahne
- {% comment %}// TODO: Durch Platzhalter ersetzten und Prozentangaben ermöglichen{% endcomment %} - - Flag - - - - - - - - - - -
-
- figure>figcaption+{element} -
- -

Eine sehr klar definierte Gruppierung stellt das Element - <main> - dar. Es umschließt den hauptsächlichen Inhalt des Dokumentes.

-

Eine von sich aus undefinierte Möglichkeit zur Gruppierung von Text besteht durch - <div>. Dieses Element hat, ohne weitere Klassifizierung keine Auswirkungen auf die - Erscheinung oder die inhaltliche Aussage. Daher der allgemeine Einsatz.

-
-

Es wird allerdings häufig eingesetzt und bekommt vielfältige Funktionen zugeordnet wie diese - hervorgehobene Information zeigt.

-
-
- div.div_info>p -
-
-
-

Textebene

-

Verweise

-

Ein wesentlicher Bestandteil von Hypertext sind Verweise - <a>. Sie dienen als Sprungmarken innerhalb des Netzwerks. Es kann grob zwischen internen - und externen Verweisen unterschieden werden. - Interne Verweise - - a.a_line - - können Verknüpfungen innerhalb des aktuellen Dokumentes sein oder auch Funktionen aktivieren. - Externe Verweise - verknüpfen Inhalte über das gesamte Netzwerk hinweg. Sie können zum Beispiel auch auf E-Mail-Adressen oder - Dateien zeigen. Theoretisch kann solch ein Verweis - alles - auslösen. Anweisungen werden im - URL-Standard - übergeben.

-

Nicht nur Text kann als Verweis verwendet werden. Auch andere Elemente wie Bilder können verknüpft werden. - Abhängig von ihrer Funktion und ihrem Zweck werden Verweise unterschiedlich formatiert. - Farbige - oder - unterstrichene Varianten - sind einfache Beispiele.

-

Wird der Verweis innerhalb eines - <nav> - Elementes notiert, bekommt er die spezielle Bedeutung eines Navigationsverweises innerhalb des Dokumentes - oder der Anwendung. Verweise werden dann durchaus auch wie Schaltflächen dargestellt.

- - -

Formatierungen

-

Texte, Wörter oder Zeichen können vielfältig formatiert werden.

-

Sie können - fett - <b> - oder - kursiv - <i> - geschrieben sein. - - Auch beides ist möglich!?! Sollen sie nicht nur anders - aussehen, sondern auch - eine besondere inhaltliche Bedeutung - bekommen, werden sie mit - <strong> - und - <em> - ausgezeichnet.

-

Das - <u> - Element stellt eine Spanne von Text mit einer unartikulierten, wenn auch explizit dargestellten, - nicht-textuellen Anmerkung dar, wie z.B. die Beschriftung des Textes als Eigenname wie - Interaktionsweise, oder die Beschriftung des Textes als - flasch - (falsch) geschrieben.

-

Ähnlich ist es mit dem Element - <small>. - Es steht für Randnotizen, wird aber häufig auch kleiner dargestellt. -

-

Ist ein Text nicht mehr korrekt oder relevant kann er mit - <s> - markiert werden:
- Die Erde ist eine Scheibe. -

-

Ein besonderer inhaltlicher Bezug ist der Titel eines Werkes. So was kann mit - <cite> - ausgezeichnet werden. - Pulp Fiction, ist ein super Film - zum Beispiel.

-

Um ein Zitat direkt im Text zu verwenden benutzt man das - <q> - Element. Es platziert Anführungszeichen um die Aussage:

-

Sie sagte: - Du wolltest staubsaugen!
Er sagte: - Mach' ich morgen. -

-

Mit dem - <dfn> - Element werden Begriffe definiert. Es wird häufig mit dem Element für Abkürzungen - <abbr> - gemeinsam verwendet. Die eigentliche Definition kann dabei auch im Attribut - title - stehen. Dies ist ein globales Attribut, das erklärende Informationen zu dem Element enthält. Diese wird - typischerweise beim darauf Zeigen eingeblendet.

-

- - HIPPIE - - is a recursive acronym for - Hippie interweaves preeminent personal interface elements.

-

Die besondere Auszeichnung - <ruby> - bezeichnet ein Anmerkungssystem, bei dem der Text - zusammen mit seiner Anmerkung in einer Zeile erscheint. - Das System verwendet die folgenden weiteren Elemente mit spezifischer Bedeutung:

-
-
- <rb> -
-
Basis Textkomponente
-
- <rt> -
-
Annotation
-
- <rtc> -
-
Einzelne Komponente einer Annotation
-
- <rp> -
-
Alternative bei fehlender Unterstützung
-
-
-
- - Basis - Auszeichnung - - - 今日 - きょう - - - ♥ - : - - Herz - , - - - Cœur - - . - ☘ - : - - Kleeblatt - , - - - Trèfle - - . - ✶ - : - - Stern - , - - - Étoile - - . - -
-
-

Wikipedia erklärt dies ausführlicher unter - Ruby Annotation.

-

Es gibt auch mehrere besondere Elemente um Maschinensprache oder Programmiersprache zu bezeichnen. Dabei wird - unterschieden, ob der Inhalt nur für Menschen ausgezeichnet wird oder auch maschinen-lesbar sein soll. Die - Elemente - <data> - und - <time> - enthalten eine maschinen-lesbare Repräsentation des Inhaltes:

-
-
- 0 - ≠ - NULL -
-
- <data>0</data> ≠ <data>NULL</data> -
-
Der Wert - NULL - mit Attribut -
-
- <data value="NULL">NULL</data> -
-
- -
-
- <time>2018-10-08</time> -
-
Die Zeitangabe - - - - mit Attribut -
-
- <time datetime="2018-10-08">Gestern</time> -
-
-

Die Auszeichnung - <code> - wurde bis hier hin schon verwendet. Sie markiert ebenfalls Maschinensprache. Allerdings dient sie dazu von - Menschen gelesen zu werden. In diesem Dokument werden alle Elemente, die erklärt werden wiederum mit diesem - Element markiert.

-

Für zusammenhängende Blöcke wird die Auszeichnung oft in Kombination mit dem Element - <pre> - verwendet:

-
<html>
<head>
<title>hyper text markup language</title>
</head>
<body id="root">
<!-- content goes here -->
<p class="example">just like this.</p>
</body>
</html>
-

Dabei bleiben vorhandene Textformatierungen wie Zeilenumbrüche und Einrückung erhalten.

-

- var def = "Definition einer Variablen"; -

-

In diesem Beispiel wird die Variable - def - definiert. Solch ein spezieller Typ Text kann mit dem dafür vorgesehenen Element - <var> - ausgezeichnet werden.

-

Soll beispielhaft auf Ausgaben von Computern verwiesen werden, wird das - <samp> - Element verwendet. Der Computer hat gesagt: - Ich kann das angegebene Objekt nicht finden.

-

Benutzereingaben haben ebenfalls ein eigenes Element - <kbd>. Damit werden Eingaben durch den Nutzer, wie zum Beispiel - Drücken Sie gleichzeitig Strg und A, gekennzeichnet.

-

Hoch- und Tiefgestellte Zeichen werden durch die Elemente - <sup> - und - <sub> - repräsentiert. Sie dienen nicht dazu rein optische Auszeichnungen zu erreichen, sondern werden für ihren - jeweiligen Zweck eingesetzt. In der Mathematik oder Chemie sind sie üblich:

-

Beispielsweise die Formel - E=m - c - 2 - oder das Element H2O

-

Die Zeichen in Absätzen bis hin zu ganzen Texten können, mit einem geeigneten Eingabegerät, markiert werden. - Dies stellt sich wie folgt dar:

-

Beispiel zum markieren 😉.

-

Eine Markierung kann, mittels - <mark>, auch durch den Autor geschehen. Diese stellt sich ein wenig anders dar: - Diese Worte sind markiert. -

-

Um Text, dessen schreibweise nicht vorhersehbar ist, zu markieren wie z.B. Benutzernamen - كائن بشري - , die auch rechtsbündig geschrieben sein können, wird das - <bdi> - Element eingesetzt.
Die Schreibweise kann auch vom Author vorgegeben und expliziert geändert werden. - Dies wird dem - <bdo> - Element umgesetzt. Die Richtung wird dann mit dem Attribut - dir - angegeben. -

-
    -
  • - كائن بشري -
  • -
  • - إنسان آلي -
  • -
-

Neben den vielen speziellen Elementen gibt es auch ein Element, das keine vordefinierte Bedeutung hat. Es ist - das - <span> - Element.
Es dient dazu ganz individuelle Auszeichnungen zu ermöglichen die eher optische Auswirkungen - haben und eben keine inhaltlichen. Mit den Attributen - id - oder - class - werden dazu eigene Typen des Elements definiert. Diese Möglichkeit der Definition von individuellen - Elementen ist ein Grundprinzip der Auszeichnungssprache - HTML.

-

Mit der Einführung von Absätzen wurde auch schon das - <br> - Element erwähnt und seitdem häufig benutzt. Es erzeugt einen Zeilenumbruch. Es wird dadurch kein neuer - Absatz erstellt. Es dient auch nicht dazu optischen Abstand zu erzeugen, sondern innerhalb eines Absatzes - den Text umzubrechen.

-

Eine besondere Form des Zeilenumbruchs kann mit - <wbr> - eingesetzt werden. Es stellt die Möglichkeit für einen Zeilenumbruch dar. Da das Format eines - HTML-Dokumentes häufig nicht vorhersehbar ist, kann solch ein Element einen Umbruch erzeugen, falls ein Wort - zu lang für eine Textzeile sein sollte.

-

Und der Löwe brüllte "RRRR - - rrrr - - oooooooo - - aaaa - - AAAAAAAA - - HHHH - - hhhh - - rrrrrrrrr"! -

-

Es kann auch innerhalb von vorformatierten Texten Zeilenumbrüche ermöglichen

-

Änderungen

-

Werden Texte geändert, können solche Änderungen sichtbar gemacht werden. Somit können sie besser - nachvollzogen werden.
Zum Beispiel eine Ergänzung von Inhalt.

- -

Der Inhalt wird dann mit - <ins> - ausgezeichnet. Wird Text entfernt, kommt - <del> - zum Einsatz.

-
Zu Tun
-
    -
  • Fahrrad reparieren
  • -
  • - Staubsaugen -
  • -
  • Tisch bauen
  • -
-
-
-

Eingebundene Inhalte

- {% render 'hippie/partials/placeholder-flag.liquid', type: 'img', width: '128', desc: 'Fahne von Interaktionsweise' %} -

Dies ist ein Bild. Es wird mit dem Element - <img> - eingebunden. Solch ein Bild hat üblicherweise die Attribute - width - und - height. Mit ihnen werden die Abmessungen (Breite und Höhe) festgelegt. Außerdem sollte immer - das Attribut - alt - für eine alternative Beschreibung in Textform verwendet werden.

-

Das Bild selbst liegt normalerweise als Datei vor. Die Quelle wird mit dem Attribut - src - angegeben. Es können einige Alternativen zur Angabe einer konkreten Datei eingesetzt werden. Zum Beispiel - können mehrere Dateien in Abhängigkeit zur Darstellung oder dem unterstützen Format angegeben werden. Dafür - können dann die Elemente - <source> - und - <picture> - in Kombination verwendet werden.

- {% render 'hippie/partials/placeholder-flag.liquid', type: 'img', src: 'file', width: '128', desc: 'Fahne von Interaktionsweise' %} -
-
-

Tabellen

-

Tabellen bieten besonders geordnete Struktur. Häufig werden in ihnen Text und Daten kombiniert dargestellt. - Dies erfordert individuelle Formatierungen. Einige grundlegende Eigenschaften werden im Folgenden - aufgezeigt. Tabellen sind in ihrer Größe entweder vordefiniert (fixiert) oder richten sich nach ihrem - Inhalt. Das bedeutet, die Spaltenbreite entspricht der breitesten ihrer Zellen.

- - - - - - - - -
Eineeinfache
Tabelle
-
- table.width_full>tr>td*2^tr>td[colspan=2] -
-
- - - - - - - - -
Einefreie (nicht fixierte)
Tabelle
-
- table>tr>td*2^tr>td[colspan=2] -
- - - - - - - - -
Mitohne
Linien
-
- table.blank>tr>td*2^tr>td[colspan=2] -
-
-

Die nächste Tabelle verwendet alle zur Auszeichnung verfügbaren Elemente und hat eine starre - Zellverteilung:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Beschreibung bzw. Zusammenhang der Tabelle
KopfzeileAB
Tabelle
mitTitel
Kopf-und
Fußzeile
FußzeileAB
-
- table.width_full.fix>caption+thead>tr>th[scope="col"]*3^^tbody>(tr>td*3)*3^^tfoot>tr>th[scope="row"]+td*2 -
-

Viele weitere Formate sind möglich.

-
-
-

Formulare

-

Spätestens hier werden Betrachter zu Benutzern. Texteingabefelder und verschiedene Bedienelemente geben - Möglichkeiten zur Interaktion. Diese Elemente sind in vielerlei Hinsicht besonders. Werden sie nicht - explizit gestaltet, ist ihre Erscheinung system- bzw. browserabhängig.
Üblicherweise stehen alle - Bedienelemente innerhalb eines - <form> - Elementes. Dieses ist notwendig um Angaben zur Kommunikation mit dem Server zu setzen. Es hat normalerweise - keine gestalterische Funktion.

-

Grundlegend ist das Element - <input>. Es hat viele Attribute um den Typ der Eingabe anzupassen. Ist es undefiniert, - nimmt es jegliche textbasierte Information auf und erhält eine Standardgröße.

-

-

Ein spezieller Typ des Eingabefeldes hat die Funktion einer Schaltfläche - <input[type="button"]>. Es gibt allerdings auch ein eigenes Element - <button> - dafür.

-

- -

-

- -

-

Interaktive Elemente können durch das Attribut - readonly - nur lesbar gemacht werden oder mittels - disabled - gänzlich deaktiviert werden.

- {% comment %}// TODO: Abstände, besonders margin generell überarbeiten{% endcomment %} -

- -

-

- -

-

Das Element - <label> - ergänzt interaktive Elemente um eine Beschriftung. Wichtig ist hier, dass die Beziehung beider Elemente - zueinander deutlich ist.

-

- -

-
-
- - - - - - - - - -
- -
- -
-
- - - - - - - - - - - - - - - - - - - -
- - - -
- - - -
- - - -
-
-

Zusätzlich zur Beschriftung einzelner Elemente gibt es auch die Möglichkeit Gruppierungen zu schaffen. Diese - werden mit - <fieldset> - realisiert.

-
-
- - -
-
-

Sie können mittels - <legend> - auch eine eigene Beschriftung erhalten.

-
- Einfache Eingabeelemente -
- -
- -
- -
- -
- -
- -
- - -
- - -
-
-
- Einfache Eingabeelemente mit Stil -
- -
- -
- -
-
- -
- -
- -
- -
- - -
-
-
- Weitere Eingabemöglichkeiten -

Innerhalb einer Gruppe können nicht nur Ein- und Ausgabefelder platziert werden. Andere Elemente ergänzen - Information oder lockern das Erscheinungsbild auf.

-

Hier nun eine Liste weiterer Arten von Eingabefeldern:

-
-
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
-
-
- -

Interaktive Elemente

-
-
-

Struktur

-
- -
- - - - -
- -
-
-
-

Medien

-
-
-

Druck

-
- -
-
-

Ende der Einführung

-

Dies war eine Übersicht der grundlegenden Elemente. Nun folgen Komponenten mit Kombinationen und - erweiterten Formatierungen.

-
-
-
-{% endblock %} diff --git a/source/screens/demo/components.liquid b/source/screens/demo/components.liquid deleted file mode 100644 index ca72d3f..0000000 --- a/source/screens/demo/components.liquid +++ /dev/null @@ -1,376 +0,0 @@ ---- -title: Components -tags: -- demoIndex -order: 3 ---- -{% layout 'hippie/page.liquid' %} - -{% block title %}Komponenten{% endblock %} - -{% block main %} -
-
-

Medienformat Abfragen

-
-
-
Umbruch bei 
-
-

Telefone und größer

-

Nur Telefone

-

Nur Schreibtafeln hochkant

-

Schreibtafeln und größer

-

Schreibtafeln im Querformat

-

Schreibtafeln quer und größer

-

Nur Arbeitsplatzrechner

-

Arbeitsplatzrechner und größer

-

Richtige Monitore und größer

-
-
-
- -
-
-

Übersicht aller Elemente

-

Es werden alle grundlegenden Elemente sowie ihre gestalteten Varianten angegeben. Die Elemente sind in - Gruppen eingeteilt, die auch das W3Consortium (html.spec.whatwg.org/multipage/#toc-semantics) - verwendet.

-

Zu jedem Element werden alle Attribute aufgelistet und die Umsetzung im HTML-Dokument als Emmet-Syntax - dargestellt.

-
-
article>h1+p{Elemente:}+pre+h2{<tag>}+h4{Varianten}
-
-

Bereiche

-

Elemente:

-
// body
// article
// section
// nav
// aside
// h1-h6
// header
// footer
-

<body>

-

Keine speziellen Attribute. Bekommt üblicherweise allgemeine Klassen zur Steuerung der Abmessungen - zugewiesen.

-

<article>

-
Ein Artikel.
-

<section>

-
Ein Bereich.
-

Varianten

-
section.sec_main_center
-
-

Ende.

-

Zentrierter Bereich.

-
-
section.sec_main_status
-
Status-Bereich
-

<nav>

- -

<aside>

-

Fließt um andere Inhalte. Klassen zur Positionierung und Kombination mit .bside.

-
aside.right+div.bside
-
- -
Hauptbereich
-
-

<h*>

-

Überschrift 1

-

Überschrift 2

-

Überschrift 3

-

Überschrift 4

-
Überschrift 5
-
-
Überschrift 6
-

Mit Absatz innerhalb von <hgroup>.

-
-
-

Überschrift 1 oder 2

-

Mit Absatz innerhalb von <hgroup>.

-
-

<header>

-
Kopfbereich
-
header.header_page
-
header.header_txt>h1
-
-

Überschrift 1

-

Innerhalb eines <header>.

-
-

<footer>

-

Bekommt üblicherweise Klassen zur Positionierung und der Abmessungen zugewiesen.

-
Fußbereich
-
- {% render 'hippie/partials/footer-pinned.liquid' %} -
-
-
-

Gruppierung

-

Elemente:

-
// p // address // hr // pre // blockquote // ol // ul // li // dl // dt // dd // figure // figcaption // main // div
-

<p>

-

Ein Absatz. Ein code Element innerhalb wird besonders behandelt.

-

Varianten

-
p.column_2
-

Spalten können angegeben werden.

-
p.column_3.column_line
-

Spalten können angegeben werden.

-

<address>

-
Anschrift, mit bestimmtem, ##### Format.
-

<hr>

-
-

Varianten

-
hr.hidden+hr.dotted+hr.double
- -
-
-
hr.vertical
-
-

<pre>

-
Vorformatierter Text.
-	erhält Umbrüche und Einrückung.
-			
-
pre.pre_code>code*2
-
let variable = true;
-()(){}
-

<blockquote>

-
Ein Zitat ist eingerückt.
-
blockquote.quote_mark>p+p.quote_source
-
-

Zitat mit automatischen Anführungszeichen

-

und Quellenangabe.

-
-

<dl>, <ol>, <ul>

-
-
Begriff
-
Definition
-
-
    -
  1. Eins
  2. -
  3. Zwei
  4. -
-
    -
  • Obst
  • -
  • Gemüse
  • -
-

Varianten

-
ul.list_basic.list_dash>li*2
-
    -
  • Mehr Abstand und
  • -
  • mit Unterstrichen.
  • -
-
ul.link>(li>a)*2
- -

<figure>

-
figure>figcaption+{element}
-
-
Bezeichnung
- Grafisches Element. -
-

<main>

-
Hauptbereich
-

<div>

-

Varianten

-
div.div_info>p
-
-

Absatz in einer Box mit dem Typ Information.

-
-
div.box_space>div.box_cube>span
-
-
Text
-
-
div.box_placeholder+hr+div.box_placeholder_bkg
-
-
-
-
-
-

Tabellen

-

Elemente:

-
// table // caption // colgroup // col // tbody // thead // tfoot // tr // td // th
-

<table>

-

Varianten

-
table.width_full.fix>(thead>tr>th.cell_pre[scope="col"]+th[scope="col"]*3)+tbody>tr>td.cell_pre+td*3
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
KopfzeileAB
VorspalteEine
1erweiterte
2Tabelle
-
table.width_full.stripe.fix.free>tr>td*3
- - - - - - - - - - - - - - - - - - - - - -
Tabelle
ohneRahmen
jedochmit
Streifen
-
table.width_full.fix>(thead>tr>th[scope="col"]*3)+(tbody>tr>td*2+td.txt_right)+tfoot>tr>th[colspan="2"]+td.txt_right
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Die Verteilung der Zellen ist hier von ihrem Inhalt abhängig.
BezeichnungMengeWert
Alpha18990
Bravo101
Charlie11
Summe9001
-
-
-

Formulare

-

Elemente:

-
// form // label // input // button // select // datalist // optgroup // option // textarea // output // progress // meter // fieldset // legend
-

<input>

-
- - - - - -
-

Varianten

-
input.button_io+button.button_io
-
- - -
-
- - - -
-
-
- - -
- - CapsLock is on. -
-
-

<select>

- -
-
-{% endblock %} - -{% block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/10print.liquid b/source/screens/demo/examples/10print.liquid deleted file mode 100644 index 9ee9246..0000000 --- a/source/screens/demo/examples/10print.liquid +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: 10print -tags: -- demoExample ---- -{% layout 'hippie/simple.liquid' %} - -{% block head %} -{{ block.super -}} - -{% endblock %} - -{% block body %} - -{% endblock %} - -{% block script %} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/blog.liquid b/source/screens/demo/examples/blog.liquid deleted file mode 100644 index 59b9752..0000000 --- a/source/screens/demo/examples/blog.liquid +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: Blog -tags: -- demoExample ---- -{% layout 'hippie/simple.liquid' %} - -{% block body %} -
-
-

Blog

-
- -
- {%- for post in collections.article -%} -
- {{ post.content }} -
- {%- endfor -%} -
-
{% text hippie.placeholders.name %}
-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/blog/article.md b/source/screens/demo/examples/blog/article.md deleted file mode 100644 index 99b92e2..0000000 --- a/source/screens/demo/examples/blog/article.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -tags: - - blog - - article -title: "Artikel" -publishDate: JJJJ -description: Text ---- -# Titel - -Inhalt diff --git a/source/screens/demo/examples/card.liquid b/source/screens/demo/examples/card.liquid deleted file mode 100644 index dbe560b..0000000 --- a/source/screens/demo/examples/card.liquid +++ /dev/null @@ -1,69 +0,0 @@ ---- -title: Card -tags: -- demoExample ---- -{% assign pageClass = "html_card" %} -{% layout 'hippie/simple.liquid' %} - -{% block body %} -
-
- {% render 'hippie/partials/placeholder-flag.liquid', type: '', id: 'flag' %} - {% comment %}Background flag dithered{% endcomment %} -
-
-
-

Titel
und Beschreibung

-

{% text hippie.placeholders.name %}

-

- {% link hippie.placeholders.mail, '', '', 'card_address' %}
- {% link hippie.placeholders.domain, 'site.tld', '', 'decent' %} - · - {% text hippie.placeholders.address, '', 'decent' %}

-
-
-{% endblock %} - -{% block script %} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/clock.liquid b/source/screens/demo/examples/clock.liquid deleted file mode 100644 index 3740eaa..0000000 --- a/source/screens/demo/examples/clock.liquid +++ /dev/null @@ -1,484 +0,0 @@ ---- -title: Clock -tags: -- demoExample ---- -{% assign bodyClass = 'body_clock' -%} -{% layout 'hippie/simple.liquid' %} - -{% block body %} -
- - -
-
-{% endblock %} - -{% block assets %} - - - -{% endblock %} - -{% block script %} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/game/index.liquid b/source/screens/demo/examples/game/index.liquid deleted file mode 100644 index d939850..0000000 --- a/source/screens/demo/examples/game/index.liquid +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: Game -tags: -- demoExample -- index ---- -{% layout 'hippie/simple.liquid' %} - -{% block title %}{{ title }}{% endblock %} - -{% block body %} -
- -
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/game/intro.liquid b/source/screens/demo/examples/game/intro.liquid deleted file mode 100644 index ac1de27..0000000 --- a/source/screens/demo/examples/game/intro.liquid +++ /dev/null @@ -1,141 +0,0 @@ ---- -title: Intro -tags: -- game ---- -{% assign bodyClass = 'body_intro' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -
-
-
- I -
-
-
-
-
0%
-
-
-
- - {% brand 'brand' %} -

Marke

- {% endbrand %} -

Powered by

-
    -
  • Vendor
  • -
  • IDE
  • -
  • Engine
  • -
-
-
-

Agreement

-

This needs to be seen and acknowledged.
So an interaction must be made to continue.

-
-
-
-
Hello World!
-

Only left mouse click or any key

-
-{% endblock %} - -{% block assets %} -{{ block.super -}} - -{% endblock %} - -{%- block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/game/menu.liquid b/source/screens/demo/examples/game/menu.liquid deleted file mode 100644 index 7852bdb..0000000 --- a/source/screens/demo/examples/game/menu.liquid +++ /dev/null @@ -1,29 +0,0 @@ ---- -title: Menu -tags: -- game ---- -{% assign bodyClass = 'body_game' -%} -{% layout 'hippie/simple.liquid' %} - -{% block body %} -
- -
-
- {% brand 'brand', 'last' %} -

Marke

- {% endbrand %} -
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/hello.md b/source/screens/demo/examples/hello.md deleted file mode 100644 index 9bd4c71..0000000 --- a/source/screens/demo/examples/hello.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Hello World" -layout: hippie/world.liquid -tags: -- demoExample ---- - -# {{ title }} - -This is a simple example for a *screen* written in Markdown, using Liquid *templates*. \ No newline at end of file diff --git a/source/screens/demo/examples/portal.liquid b/source/screens/demo/examples/portal.liquid deleted file mode 100644 index 545c0c9..0000000 --- a/source/screens/demo/examples/portal.liquid +++ /dev/null @@ -1,29 +0,0 @@ ---- -title: Portal -tags: -- demoExample -image: - src: '/art/flag_websafe_128x80.gif' - alt: 'Flag of Interaktionsweise' -links: -- name: '1' - href: 'http://domain.tld' - img: '/art/bullet.gif' -- name: 'Zwei' - href: 'http://domain.tld' - img: '/art/bullet.gif' ---- -{% assign bodyClass = "body_portal" %} -{% layout 'hippie/simple.liquid' %} - -{% block body %} -
- {% render 'hippie/partials/gate-list', - name: 'Tor mit Symbol und Liste', - url: '../demo', - image: image, - links: links - %} - {% render 'hippie/partials/gate-simple', name: 'Tor', url: '../demo' %} -
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/songbook.liquid b/source/screens/demo/examples/songbook.liquid deleted file mode 100644 index 5329c0a..0000000 --- a/source/screens/demo/examples/songbook.liquid +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: Songbook -tags: -- demoExample ---- -{% layout 'hippie/simple.liquid' %} - -{% block body %} -
-
-

Titel

-

Jahr

-
- -

Vorwort

-

Liederbuch für - Name.

-

Gibt es gebunden und hier - {% link hippie.placeholders.domain %}.
- Bestellungen bitte an - {% text hippie.placeholders.name %} - richten.

-
- {%- for piece in collections.song -%} - {% render 'hippie/partials/song.liquid', index: forloop.index0, data: piece.data, content: piece.content %} - {%- endfor -%} -
-
{% text hippie.placeholders.name %}
-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/songbook/0_artist-title.md b/source/screens/demo/examples/songbook/0_artist-title.md deleted file mode 100755 index ccf1b5c..0000000 --- a/source/screens/demo/examples/songbook/0_artist-title.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -tags: - - songbook - - song -title: "Interpret - Titel" -releaseDate: JJJJ -description: Text ---- -~~~ -[verse 1] -strophe 1 - -[chorus] -refrain - -[verse 2] -strophe 2 - -[chorus] -[bridge] -überleitung - -[interlude] -[chorus] -[outro] -~~~ diff --git a/source/screens/demo/examples/start.liquid b/source/screens/demo/examples/start.liquid deleted file mode 100644 index e11d3f8..0000000 --- a/source/screens/demo/examples/start.liquid +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: Start -tags: -- demoExample ---- -{% assign pageId = page.fileSlug -%} -{% assign bodyClass = 'body_start' -%} -{% layout 'hippie/simple.liquid' %} - -{% block body %} -
- -
- - -
-
-{% endblock %} - -{% block script %} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/cli.liquid b/source/screens/demo/examples/ui/cli.liquid deleted file mode 100644 index a87d4b8..0000000 --- a/source/screens/demo/examples/ui/cli.liquid +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: CLI -tags: -- ui ---- -{% assign bodyClass = 'body_cli' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -
-
-
Previous prompt
-
-
- - -
-
-{% endblock %} - -{%- block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/drag.liquid b/source/screens/demo/examples/ui/drag.liquid deleted file mode 100755 index 1c3770f..0000000 --- a/source/screens/demo/examples/ui/drag.liquid +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Drag -tags: -- ui ---- -{% layout 'hippie/app.liquid' %} - -{% block body %} -
- -
-
-
-
-
- {% render 'hippie/partials/frame-header.liquid' %} -
- {% render 'hippie/partials/frame-mode.liquid' %} -
-
-
-{% endblock %} - -{% block assets %} -{{ block.super -}} - -{% endblock %} - -{%- block script %} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/explorer.liquid b/source/screens/demo/examples/ui/explorer.liquid deleted file mode 100644 index bfdd28a..0000000 --- a/source/screens/demo/examples/ui/explorer.liquid +++ /dev/null @@ -1,145 +0,0 @@ ---- -title: Explorer -tags: -- ui ---- -{% assign bodyClass = 'body_frame' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -{% render 'hippie/partials/frame-header.liquid' %} -
- -
-
- - -
-
- -
- - -
-
- - - - - - - - - - - - - - - - - - - - - - - -
namedatetypesize
folderYYYY-MM-DDfolder4KB
fileYYYY-MM-DDfolder1B
-
- {% render 'hippie/partials/frame-status.liquid' %} -
-
-{% render 'hippie/partials/frame-mode.liquid' %} -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/form.liquid b/source/screens/demo/examples/ui/form.liquid deleted file mode 100644 index 3a7aceb..0000000 --- a/source/screens/demo/examples/ui/form.liquid +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Form -tags: -- ui ---- -{% assign bodyClass = 'body_frame' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -{% render 'hippie/partials/frame-header.liquid' %} -
-

Formulare

- - -
-
-
-
-
a
-
b
-
c
-
-
-{% endblock %} - -{%- block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/gallery.liquid b/source/screens/demo/examples/ui/gallery.liquid deleted file mode 100755 index 0d372d4..0000000 --- a/source/screens/demo/examples/ui/gallery.liquid +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: Gallery -tags: -- ui ---- -{% assign bodyClass = 'body_frame' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -{% render 'hippie/partials/frame-header.liquid' %} -
-
-
- - -
- - {% render 'hippie/partials/frame-status.liquid' %} -
-
-{% render 'hippie/partials/frame-mode.liquid' %} -{% endblock %} - -{%- block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/index.liquid b/source/screens/demo/examples/ui/index.liquid deleted file mode 100644 index 0e6dcc8..0000000 --- a/source/screens/demo/examples/ui/index.liquid +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: UI -tags: -- demoExample -- index ---- -{% layout 'hippie/simple.liquid' %} - -{% block title %}{{ title }}{% endblock %} - -{% block body %} -
- -
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/table.liquid b/source/screens/demo/examples/ui/table.liquid deleted file mode 100755 index 96e72ea..0000000 --- a/source/screens/demo/examples/ui/table.liquid +++ /dev/null @@ -1,399 +0,0 @@ ---- -title: Table -tags: -- ui ---- -{% assign bodyClass = 'body_frame' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -{% render 'hippie/partials/frame-header.liquid' %} -
-
-
- - -
- - - - - - - - - - - - - - - - - -
##NumberNameDescriptionAmountUnitPriceSum
- {% render 'hippie/partials/frame-status.liquid' %} -
-
- - - - - -{% render 'hippie/partials/frame-mode.liquid' %} -{% endblock %} - -{%- block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/tile.liquid b/source/screens/demo/examples/ui/tile.liquid deleted file mode 100644 index be51071..0000000 --- a/source/screens/demo/examples/ui/tile.liquid +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Tile -tags: -- ui ---- -{% assign bodyClass = 'body_new' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -{% render 'hippie/partials/header-status', hippie: hippie, links: start %} - -
-
1
-
2
-
3
-
4
-
-{% endblock %} - -{%- block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/tui.liquid b/source/screens/demo/examples/ui/tui.liquid deleted file mode 100644 index ac42d52..0000000 --- a/source/screens/demo/examples/ui/tui.liquid +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: TUI -tags: -- ui ---- -{% assign bodyClass = 'body_frame' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -{% render 'hippie/partials/frame-header.liquid' %} -
-{% render 'hippie/partials/frame-mode.liquid' %} -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/examples/ui/windows.liquid b/source/screens/demo/examples/ui/windows.liquid deleted file mode 100644 index 15d589b..0000000 --- a/source/screens/demo/examples/ui/windows.liquid +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: Windows -tags: -- ui ---- -{% assign bodyClass = 'body_frame' -%} -{% layout 'hippie/app.liquid' %} - -{% block body %} -
- - - -
- -
- ##:## -
-
- -
-
-
-
-
-
-
- task bar -
-
-
-{% endblock %} - -{% block assets %} -{{ block.super -}} - -{% endblock %} - -{%- block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/index.liquid b/source/screens/demo/index.liquid deleted file mode 100644 index a07c2d4..0000000 --- a/source/screens/demo/index.liquid +++ /dev/null @@ -1,70 +0,0 @@ ---- -permalink: "{{ hippie.demoPath }}" -title: Index ---- -{% assign pageId = page.fileSlug -%} -{% assign pageClass = 'h_full_view' -%} -{% layout 'hippie/full.liquid' %} - -{% block body %} -
-
-

This is {{ hippie.brand | upcase }}

-

You can start using it by replacing this file with your own index page.

-

To do this you need to create a file - /index.njk - inside the - source/screens - folder. You can also create a - data.json - file inside the - source/templates - folder as a data source for your nunjucks files.

-

For a very basic start you can make a copy of the demo page - blank.njk. You can find it at - /source/screens/demo.

-

The - source/demo - folder contains an overview of all HTML elements and also examples for CSS style combinations and even whole - page layouts.
Follow the white rabbit.

-
-
  ()()
(..)
c(")(")
-

Overview

-
- -
-
-

Page

- -
-
-

Example

- -
-
-
-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/introduction.liquid b/source/screens/demo/introduction.liquid deleted file mode 100644 index 21e2e52..0000000 --- a/source/screens/demo/introduction.liquid +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: Introduction -tags: -- demoIndex -order: 1 ---- -{% layout 'hippie/page.liquid' %} - -{% block title %}Einführung{% endblock %} - -{% block main %} -
-
-
-

Introduction to HIPPIE

-

Hippie interweaves preeminent personal interface elements.

-
-
-
-

-

Contact: -

-

More: , -

-
-
-{% endblock %} - -{% block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/layouts.liquid b/source/screens/demo/layouts.liquid deleted file mode 100644 index 958c545..0000000 --- a/source/screens/demo/layouts.liquid +++ /dev/null @@ -1,329 +0,0 @@ ---- -title: Layouts -tags: -- demoIndex -order: 4 ---- -{% layout 'hippie/page.liquid' %} - -{% block title %}Gestaltungen{% endblock %} - -{% block main %} -
-
-

Sammlung formatierter Elemente

-

Die Elemente werden fortlaufend komplexer

-
-
-

Bereiche (sections)

-

section

-
section.overflow>div.float_space_left>img^p+p>br+a.lineLink
-
-
- {% render 'hippie/partials/placeholder-flag.liquid', type: 'img', src: 'file', width: '256', desc: 'Avatar' %} -
-

{% text hippie.placeholders.name %}
{% text hippie.placeholders.address %}

-

{% text hippie.placeholders.phone %}
{% link hippie.placeholders.mail, '', '', 'a_line' %}

-
-

nav

-
div.overflow>(nav.float_space_left>ul>(li>a.a_button{punkt $})*4+nav>ul>(li>a.a_button_border{stufe $})*4)
-
- - -
-
nav.nav_horizontal>ul>(li>a.a_button{abschnitt $})*4
- -
div.overflow>nav.nav_center_old>ul>(li>a.a_button{typ $})*4
-
- -
-

header

-
header.header_page>h1+p+nav.nav_separate_right>ul>(li>a.a_button{nav $})*4^+nav.nav_right>ul>(li>a.a_button{nav $})*4
-
-

Aufmacher

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis nec consectetur diam. Sed nisl odio, - volutpat nec nisi sit amet, commodo faucibus est. Donec lacinia vestibulum sapien. Morbi porttitor nibh - quis imperdiet scelerisque. Praesent rutrum quam eu sodales luctus.

- - -
-
header.header_page>nav.nav_right>ul>(li>a.a_button{nav $})*4
-
-
- -
-
-
footer.pos_abs.pin_bottom>nav.nav_column>ul>(li>a.a_button_text)*4
- -
-
-
-
-

Gruppierung (grouping)

-

p

-
p.txt_right+p.txt_center+p.txt_left
-

Rechts

-

Mittig

-

Links

-

h*

-
h3.txt_color_dark+p.txt_tiny
-

Dunkle Überschrift

-

Mit winzigem Textabsatz

-
a>h4
- -

Überschrift als Block-Verweis

-
-

Überschrift 1

-

Kann mehrmals, ohne großen Abstand oberhalb, untereinander stehen.

-

Überschrift 2

-

kann das ebenso.

-

hr

-
hr.space_even_half
-
-
hr.dotted.space_even_fourth
-
-

ul

-
nav>ul.link>(li>a)+li>a>img+span
- -

div

-
div.space_left_fourth>(hr+p+hr)
-
-
-

Eingerückter Inhalt

-
-
-
-
-

Eingebettet

-
- {% render 'hippie/partials/placeholder-flag.liquid', type: '', width: '128', desc: 'Fahne von Interaktionsweise' %} -
-
-
-

Tabellen (tabular data)

-
table.link>thead>tr>th{&nbsp;}+th{ab / zy}+th{neu / alt}^^(tbody>tr>td.icon[rowspan="2"]>img[width=16 height=16]^+td.link>span{name}+a[target=_blank]{url}^+td[rowspan="2"]{yyy-mm-dd}^tr>td.text>div.shorten{beschreibung})*2
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-

Formulare (forms)

-

form

-
-

Show me a - - Sorted by - - - - Matching - - -

-
- -
-
-

Anmeldung

- - -
-
-

input

-
- - - - - -
-
-
-

Interaktiv (interactive)

-
-
-{% endblock %} - -{% block assets %} -{{ block.super -}} - -{% endblock %} -{% block script %} -{{ block.super -}} - -{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/blank.liquid b/source/screens/demo/pages/blank.liquid deleted file mode 100644 index 5cf5e7c..0000000 --- a/source/screens/demo/pages/blank.liquid +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Blank ---- -{% assign pageId = page.fileSlug -%} -{% layout 'hippie/simple.liquid' %} diff --git a/source/screens/demo/pages/default.liquid b/source/screens/demo/pages/default.liquid deleted file mode 100644 index 9b84b78..0000000 --- a/source/screens/demo/pages/default.liquid +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: Default ---- -{% assign pageId = page.fileSlug -%} -{% assign pageClass = 'default' -%} -{% assign bodyClass = 'default' -%} -{% layout 'hippie/default.liquid' %} - -{% block title %}{{ title }}{% endblock %} - -{% block body %} - -{% endblock %} diff --git a/source/screens/demo/pages/error/304.liquid b/source/screens/demo/pages/error/304.liquid deleted file mode 100644 index 75127a7..0000000 --- a/source/screens/demo/pages/error/304.liquid +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: 304 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Umleitung

-

Unverändert Not Modified

-
-

Der Inhalt der angeforderten Ressource hat sich seit der letzten Abfrage des Clients nicht verändert und wird - deshalb nicht übertragen. Zu den Einzelheiten siehe Browser-Cache-Versionsvergleich. -

-

Wikipedia

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/error/400.liquid b/source/screens/demo/pages/error/400.liquid deleted file mode 100644 index ffe7d9c..0000000 --- a/source/screens/demo/pages/error/400.liquid +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: 400 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Client-Fehler

-

Fehlerhafte Anfrage! Bad Request

-
-

Die Anfrage-Nachricht war fehlerhaft aufgebaut.

-

Wikipedia -

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/error/401.liquid b/source/screens/demo/pages/error/401.liquid deleted file mode 100644 index a2fbb39..0000000 --- a/source/screens/demo/pages/error/401.liquid +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: 401 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Client-Fehler

-

Nicht autorisiert! Unauthorized

-
-

Die Anfrage kann nicht ohne gültige Authentifizierung durchgeführt werden. Wie die Authentifizierung durchgeführt - werden soll, wird im „WWW-Authenticate“-Header-Feld der Antwort übermittelt.

-

Wikipedia -

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/error/403.liquid b/source/screens/demo/pages/error/403.liquid deleted file mode 100644 index cfa9eed..0000000 --- a/source/screens/demo/pages/error/403.liquid +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: 403 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Client-Fehler

-

Nicht erlaubt! Forbidden

-
-

Die Anfrage wurde mangels Berechtigung des Clients nicht durchgeführt, bspw. weil der authentifizierte Benutzer - nicht berechtigt ist, oder eine als HTTPS konfigurierte URL nur mit HTTP aufgerufen wurde.

-

Wikipedia -

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/error/404.liquid b/source/screens/demo/pages/error/404.liquid deleted file mode 100644 index 9a00731..0000000 --- a/source/screens/demo/pages/error/404.liquid +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: 404 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Client-Fehler

-

Hier ist nichts. Not Found

-
-

Die angeforderte Ressource wurde nicht gefunden. Dieser Statuscode kann ebenfalls verwendet werden, um eine - Anfrage ohne näheren Grund abzuweisen. Links, welche auf solche Fehlerseiten verweisen, werden auch als Tote - Links bezeichnet.

-

Wikipedia -

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/error/408.liquid b/source/screens/demo/pages/error/408.liquid deleted file mode 100644 index 1f0ef44..0000000 --- a/source/screens/demo/pages/error/408.liquid +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: 408 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Client-Fehler

-

Zeitüberschreitung der Anforderung. Request Timeout

-
-

Innerhalb der vom Server erlaubten Zeitspanne wurde keine vollständige Anfrage des Clients empfangen.

-

Wikipedia -

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/error/500.liquid b/source/screens/demo/pages/error/500.liquid deleted file mode 100644 index 5e6cb69..0000000 --- a/source/screens/demo/pages/error/500.liquid +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: 500 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Server-Fehler

-

Allgemeiner Server Fehler!!! Internal Server Error

-
-

Dies ist ein „Sammel-Statuscode“ für unerwartete Serverfehler.

-

Wikipedia -

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/error/503.liquid b/source/screens/demo/pages/error/503.liquid deleted file mode 100644 index 2a01f87..0000000 --- a/source/screens/demo/pages/error/503.liquid +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: 503 ---- -{% assign bodyClass = 'body_status' %} -{% layout 'hippie/status.liquid' %} - -{% block main %} -{{ block.super -}} -

Server-Fehler

-

Dienst nicht verfügbar. Service Unavailable

-
-

Der Server steht temporär nicht zur Verfügung, zum Beispiel wegen Überlastung oder Wartungsarbeiten. Ein - „Retry-After“-Header-Feld in der Antwort kann den Client auf einen Zeitpunkt hinweisen, zu dem die Anfrage - eventuell bearbeitet werden könnte.

-

Wikipedia -

-
-{% endblock %} \ No newline at end of file diff --git a/source/screens/demo/pages/maintenance.liquid b/source/screens/demo/pages/maintenance.liquid deleted file mode 100644 index fe36599..0000000 --- a/source/screens/demo/pages/maintenance.liquid +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: Maintenance ---- -{% assign pageClass = 'h_full_view' -%} -{% layout 'hippie/status.liquid' %} - -{% block body %} -
-

HIPPIE

-

Diese Seite wird gerade gewartet.

-
-{% endblock %} diff --git a/source/screens/demo/pages/pages.json b/source/screens/demo/pages/pages.json deleted file mode 100644 index 22cec81..0000000 --- a/source/screens/demo/pages/pages.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "tags": "demoPage" -} diff --git a/source/style/_demo_config.scss b/source/style/_demo_config.scss deleted file mode 100644 index 5632702..0000000 --- a/source/style/_demo_config.scss +++ /dev/null @@ -1,6 +0,0 @@ -// Override for configuration file -// All variables setup with !default in global/_config.scss can be used -// ------------------------------------------------------------------------------ - -// $color_back_basic: beige; -// $color_link_basic: crimson; diff --git a/source/style/demo.scss b/source/style/demo.scss deleted file mode 100644 index 85090ad..0000000 --- a/source/style/demo.scss +++ /dev/null @@ -1,20 +0,0 @@ -// Start a new project by creating YOUR-PROJECT.scss and _YOUR-CONFIG.scss -// Then import your config and hippie -// NOTE: No css rules allowed in here -// ------------------------------------------------------------------------------ -@use "demo_config"; -@use "hippie-style/hippie"; - -// Additional Modules and variables -// in dependency to other basic styles -// could be defined here -// ----------------------------------------------------------------------------- -@use "modules/card/card_module"; -@use "modules/portal/portal_module"; -@use "modules/songbook/songbook_module"; -@use "modules/demo/demo_module"; -@use "modules/start"; -@use "modules/clock"; -@use "modules/game"; -@use "modules/login"; -// @use "modules/YOUR-MODULE/YOUR-FILES"; diff --git a/source/style/demo_basic.scss b/source/style/demo_basic.scss deleted file mode 100644 index 0cb7771..0000000 --- a/source/style/demo_basic.scss +++ /dev/null @@ -1,13 +0,0 @@ -// Start a new project by creating YOUR-PROJECT.scss and _YOUR-CONFIG.scss -// Then import your config and hippie -// NOTE // No css rules allowed in here -// ------------------------------------------------------------------------------ -@use "demo_config"; -@use "hippie-style/basic"; - - -// Additional Modules and variables -// in dependency to other basic styles -// could be defined here -// ----------------------------------------------------------------------------- -// @use "modules/YOUR-MODULE/YOUR-FILES"; diff --git a/source/style/hippie-style b/source/style/hippie-style deleted file mode 160000 index b4c5632..0000000 --- a/source/style/hippie-style +++ /dev/null @@ -1 +0,0 @@ -Subproject commit b4c56320060548dacde62639876c6aee72b297ea diff --git a/source/style/modules/_clock.scss b/source/style/modules/_clock.scss deleted file mode 100644 index 0965587..0000000 --- a/source/style/modules/_clock.scss +++ /dev/null @@ -1,19 +0,0 @@ -@use "../hippie-style/hippie"; - -@use "sass:map"; - -.body_clock { - header { - z-index: map.get(hippie.$z-indexes, "content-top"); - } - - main { - display: flex; - flex-flow: column nowrap; - justify-content: center; - align-items: center; - height: 100vh; - width: 100%; - overflow: hidden; - } -} \ No newline at end of file diff --git a/source/style/modules/_game.scss b/source/style/modules/_game.scss deleted file mode 100644 index 6d49400..0000000 --- a/source/style/modules/_game.scss +++ /dev/null @@ -1,27 +0,0 @@ -@use "../hippie-style/hippie"; - -.body_game { - @extend .h_full_view; - background-color: hotpink; - - footer { - @extend .pos_abs; - @extend .pin_bottom; - @extend .width_full; - - .brand { - display: flex; - flex-flow: row nowrap; - align-items: center; - justify-content: flex-end; - gap: hippie.$space_half hippie.$space_basic; - - margin: hippie.$space_basic hippie.$space_double; - - & > svg { - height: 32px; - width: 32px; - } - } - } -} \ No newline at end of file diff --git a/source/style/modules/_login.scss b/source/style/modules/_login.scss deleted file mode 100644 index 3382d86..0000000 --- a/source/style/modules/_login.scss +++ /dev/null @@ -1,28 +0,0 @@ -@use "sass:color"; -@use "../hippie-style/hippie"; - -form[name="login"] { - display: flex; - align-items: center; - justify-content: center; - - & > div { - padding: hippie.$space_double; - background-color: color.adjust(hippie.basic_color(echo), $alpha: -0.4); - - p { - margin-top: 0; - color: hippie.$color_brightest; - } - - & > input { - display: block; - width: 100%; - margin-inline: 0; - } - - input:first-of-type { - margin-bottom: hippie.$space_basic; - } - } -} \ No newline at end of file diff --git a/source/style/modules/_start.scss b/source/style/modules/_start.scss deleted file mode 100644 index 031f7f7..0000000 --- a/source/style/modules/_start.scss +++ /dev/null @@ -1,15 +0,0 @@ -@use "../hippie-style/hippie"; - -.body_start { - main { - @extend .sec_main_center; - } - - #www-search { - input[type="text"] { - flex: 1; - padding: hippie.$padding_basic; - line-height: hippie.$line_text_basic; - } - } -} \ No newline at end of file diff --git a/source/style/modules/card/_card_module.scss b/source/style/modules/card/_card_module.scss deleted file mode 100644 index 86ab09c..0000000 --- a/source/style/modules/card/_card_module.scss +++ /dev/null @@ -1,83 +0,0 @@ -@use "../../hippie-style/hippie"; - -// Card module styles -// ------------------------------------------------------------------------------ - -.html_card { - height: 100%; - - body { - min-height: 100%; - - .card_bkg { - @extend %full_parent; - transition-duration: 800ms; - overflow: hidden; - vertical-align: top; - z-index: -1; - - & > svg { - position: relative; - } - } - - .card_box { - display: flex; - align-items: center; - justify-content: center; - height: 100vh; - - * { - font-family: hippie.$family_text_card; - // text-align: center; - } - - & > main { - position: relative; - padding: 64px 64px 24px 64px; - border: 1px solid #FFF; - background-color: #F5F5F5; - z-index: 40; - } - } - - h1 { - margin: 16px 0; - color: #1E1E1E; - font-size: 24px; - line-height: 1.4em; - font-weight: normal; - } - - p { - margin-top: 0; - margin-bottom: 16px; - font-size: 12px; - line-height: 1.4em; - } - - .marked { - // padding-left: 1em; - // text-indent: -1em; - - &::before { - content: "*\0000a0" - } - } - - .decent { - color: #666 - } - - a { - color: #000; - text-decoration: none; - - &:hover { - color: #F4F9FA; - background-color: #0C85FF; - text-decoration: none; - } - } - } -} diff --git a/source/style/modules/demo/_demo_module.scss b/source/style/modules/demo/_demo_module.scss deleted file mode 100644 index 247c61b..0000000 --- a/source/style/modules/demo/_demo_module.scss +++ /dev/null @@ -1,299 +0,0 @@ -@use "sass:color"; - -@use "../../hippie-style/hippie"; - -.demo__intro { - @extend .sec_main_center; - @extend .sec_main_status; -} - -.demo__status { - @extend .sec_main_status; - position: relative; - min-height: 50vh; - border-color: hippie.basic_color(foxtrot); - - h1:first-of-type { - margin-top: 0; - font-weight: bold; - } - - @media (max-height: 512px) { - .pos_abs { - position: static !important; - } - } -} - -.demo__header { - padding: hippie.$space_double; - - nav { - - ul { - margin: 0; - } - } -} - -.header_fancy { - background-color: color.adjust(hippie.basic_color(bravo), $alpha: -0.4); - - nav { - - a { - background-color: color.adjust(hippie.basic_color(alpha), $alpha: -0.4); - color: hippie.basic_color(alpha); - - &:active, - &:focus, - &:hover { - background-color: rgba(hippie.$color_brightest, 0.2); - color: hippie.$color_brightest; - } - } - } -} - -.header_fix { - position: relative; - top: 0; - left: 0; - width: 100%; - background-color: color.adjust(hippie.basic_color(charlie), $alpha: -0.4); - - nav { - - a { - - &:active, - &:focus, - &:hover { - background-color: rgba(hippie.$color_brightest, 0.2); - color: hippie.$color_brightest; - } - } - } -} - -.demo__footer { - width: 100%; - // height: 128px; - padding: hippie.$space_double 0; - background-color: hippie.$color_dark; - color: hippie.$color_bright; - - nav { - - a { - color: hippie.$color_brightest; - } - } -} - -.demo__sprite_down { - @include hippie.sprite(hippie.$down); - // width: 32px; - // height: 32px; - // background-image: url(../art/sprites.png); - // background-position: -32px 0; -} - -.demo__sprite_up { - @include hippie.sprite(hippie.$up); - // width: 32px; - // height: 64px; - // background-image: url(../art/sprites.png); - // background-position: 0 0; -} - -.demo__sprite_meta { - @include hippie.sprite(hippie.$meta); - // width: 32px; - // height: 32px; - // background-image: url(../art/sprites.png); - // background-position: -32px 32px; -} - -.demo__avatar { - - img { - opacity: 1; - width: 128px; - height: auto; - min-width: 128px; - min-height: 128px; - border-radius: 50%; - background-color: hippie.basic_color(delta); - } -} - -.demo__flag { - height: 40vh; -} - -.demo__credits { - margin: hippie.$space_small 0 hippie.$space_basic 0; -} - -.demo__queries > p { - padding: hippie.$padding_basic; -} - -.query_phoneUp { - @include hippie.forPhoneUp { - background-color: rgba(hippie.$color_text_basic, 0.2) - } -; -} - -.query_phoneOnly { - @include hippie.forPhoneOnly { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.query_tabletPortraitOnly { - @include hippie.forTabletPortraitOnly { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.query_tabletPortraitUp { - @include hippie.forTabletPortraitUp { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.query_tabletLandscapeOnly { - @include hippie.forTabletLandscapeOnly { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.query_tabletLandscapeUp { - @include hippie.forTabletLandscapeUp { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.query_desktopOnly { - @include hippie.forDesktopOnly { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.query_desktopUp { - @include hippie.forDesktopUp { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.query_bigDesktopUp { - @include hippie.forBigDesktopUp { - background-color: rgba(hippie.$color_text_basic, 0.2); - } -} - -.demo__query_example { - @include hippie.goingLarge(hippie.$screen_tiny) { - background-color: hippie.basic_color(alpha); - } - @include hippie.goingLarge(hippie.$screen_small) { - background-color: hippie.basic_color(bravo); - } - @include hippie.goingLarge(hippie.$screen_medium) { - background-color: hippie.basic_color(charlie); - } - @include hippie.goingLarge(hippie.$screen_large) { - background-color: hippie.basic_color(delta); - } - @include hippie.goingLarge(hippie.$screen_huge) { - background-color: hippie.basic_color(echo); - } - @include hippie.goingLarge(hippie.$screen_gigantic) { - background-color: hippie.basic_color(foxtrot); - } - margin-bottom: hippie.$space_small; - padding: hippie.$space_small; - text-align: center; - - &:after { - @extend code; - @include hippie.goingLarge(hippie.$screen_tiny) { - & { - content: '768px'; - } - } - @include hippie.goingLarge(hippie.$screen_small) { - & { - content: '1024px'; - } - } - @include hippie.goingLarge(hippie.$screen_medium) { - & { - content: '1280px'; - } - } - @include hippie.goingLarge(hippie.$screen_huge) { - & { - content: '1680px'; - } - } - @include hippie.goingLarge(hippie.$screen_gigantic) { - & { - content: '1920px'; - } - } - content: '< 768px'; - padding: hippie.$padding_basic; - border-radius: hippie.$radius_basic; - color: hippie.$color_brightest; - background-color: rgba(hippie.$color_front_basic, 0.2); - } -} - -// Tables -.demo__td_no_bl { - border-left: none; -} - -.demo__td_no_br { - border-right: none; -} - -.demo__td_pr { - padding-right: hippie.$space_double; -} - -.demo__td_pl { - padding-left: hippie.$space_double; -} - -#demo { - .wrap { - display: flex; - // height: 100%; - align-items: center; - justify-content: center; - } - - .hello { - flex: 0 1 auto; - width: 80%; - } - - .responsive { - @include hippie.forTabletPortraitUp { - display: flex; - flex-flow: row wrap; - align-items: stretch; - justify-content: space-between; - gap: hippie.$space_half hippie.$space_basic; - - & > * { - flex: auto; - } - } - } -} \ No newline at end of file diff --git a/source/style/modules/portal/_portal_module.scss b/source/style/modules/portal/_portal_module.scss deleted file mode 100644 index f4bd18e..0000000 --- a/source/style/modules/portal/_portal_module.scss +++ /dev/null @@ -1,155 +0,0 @@ -@use "sass:color"; - -@use "../../hippie-style/hippie"; - -$portal_highlight: hippie.$color_highlight_basic; -$portal_margin: hippie.$space_double; -$portal_link_size: 128px; -$portal_icon_size: 64px; - -.body_portal { - @extend .h_full_view; -} - -.portal { - display: flex; - overflow: hidden; - height: 100vh; -} - -.portal__entry { - display: flex; - flex: 1; - align-items: center; - padding-right: $portal_margin; - padding-left: $portal_margin; - overflow-x: hidden; - overflow-y: auto; - transition: hippie.$transition_best; - - &:hover { - flex: 3; - background-color: #999; - - // h2 { - // color: $portal_highlight; - // } - - .portal__list { - display: block; - } - } - - section { - width: 100%; - padding: 32px 0; - } - - h2 { - @extend h4; - - position: relative; - margin-top: 0; - overflow: hidden; - text-align: center; - text-overflow: ellipsis; - white-space: nowrap; - } -} - -.portal__link { - display: block; - position: relative; - max-width: $portal_link_size; - height: $portal_link_size; - margin: 0 auto; - border-width: 1px; - border-style: solid; - border-color: transparent; - background-repeat: no-repeat; - background-position: center; - - &:hover { - background-color: color.adjust($portal_highlight, $alpha: -0.2); - border-color: $portal_highlight; - } - - &:focus { - outline: 0; - } - - img { - position: absolute; - top: 50%; - left: 50%; - width: $portal_icon_size; - height: $portal_icon_size; - transform: translate(-50%, -50%); - object-fit: cover; - object-position: 0 0; - } -} - -.portal__link--bibo { - background-image: url(../../art/portal/bibo.png); -} - -.portal__link--portfolio { - background-image: url(../../art/portal/portfolio.png); -} - -.portal__link--found { - background-image: url(../../art/portal/gems.png); -} - -.portal__link--flux { - background-image: url(../../art/portal/flux.png); -} - -.portal__link--blog { - background-image: url(../../art/portal/notes.png); -} - -.portal__link--tools { - background-image: url(../../art/portal/tools.png); -} - -.portal__link--safe { - background-image: url(../../art/portal/safe.png); -} - -.portal__link--game { - &:hover { - background-image: url(../../art/portal/games.png); - - & > img { - display: none; - } - } -} - -.portal__list { - @extend .link; - - display: none; - position: relative; - width: 80%; - margin: 48px auto 0 auto; - padding-left: 0; - - li { - list-style: none; - - a { - overflow: hidden; - width: 100%; - text-overflow: ellipsis; - white-space: nowrap; - - img { - width: 16px; - height: auto; - } - } - } -} diff --git a/source/style/modules/songbook/_songbook_module.scss b/source/style/modules/songbook/_songbook_module.scss deleted file mode 100755 index 46d6bbe..0000000 --- a/source/style/modules/songbook/_songbook_module.scss +++ /dev/null @@ -1,22 +0,0 @@ -@use "../../hippie-style/hippie"; - -.songbook_song { - pre { - @extend .pre_code - } - - header { - h2 { - margin-bottom: hippie.$space_basic; - } - - h6 { - color: hippie.$color_brightest; - } - - h2+h6 { - margin-top: 0; - margin-bottom: hippie.$space_small; - } - } -} \ No newline at end of file diff --git a/source/style/modules/ui/_drag_module.scss b/source/style/modules/ui/_drag_module.scss deleted file mode 100644 index 83f1abb..0000000 --- a/source/style/modules/ui/_drag_module.scss +++ /dev/null @@ -1,8 +0,0 @@ -#space { - position: relative; - height: 100%; - - .body_frame { - background-color: white; - } -} \ No newline at end of file diff --git a/source/style/modules/ui/_form_module.scss b/source/style/modules/ui/_form_module.scss deleted file mode 100644 index a826693..0000000 --- a/source/style/modules/ui/_form_module.scss +++ /dev/null @@ -1,23 +0,0 @@ -@use "../../hippie-style/hippie"; - -#grid { - display: grid; - gap: 8px; - grid-template-columns: repeat(4, 1fr); - grid-auto-rows: minmax(64px, auto); - margin-inline: hippie.$space_small; -} - -#grid>div { - display: flex; - align-items: center; - justify-content: center; - width: 100%; - height: 100%; - background-color: aquamarine; -} - -#grid>div:first-child { - grid-column: 1 / 3; - background-color: violet; -} \ No newline at end of file diff --git a/source/style/modules/ui/_frame_module.scss b/source/style/modules/ui/_frame_module.scss deleted file mode 100755 index 91182ad..0000000 --- a/source/style/modules/ui/_frame_module.scss +++ /dev/null @@ -1,136 +0,0 @@ -@use "sass:color"; - -@use "../../hippie-style/hippie"; - -@mixin nav-spacer($name, $size, $orientation) { - .spacer.#{$name} { - width: $size; - } -} - -.body_frame { - @extend %flex-column; - - background-color: hippie.$color_back_basic; - - position: relative; - height: 100%; - - header, - aside, - footer { - border: 1px solid transparent; - } - - & > header { - background-color: rgba(0, 0, 0, .1); - } - - main { - @extend %flex-row; - - flex: 1; - - // aside { - // background-color: rgba(255, 255, 255, .1); - // } - - section { - - & > header, - & > footer { - background-color: color.adjust(hippie.$color_back_io, $alpha: -.5); - - &:hover { - background-color: hippie.$color_back_io; - } - } - } - - section, - section > div { - flex: 1; - } - - section { - @extend %flex-column; - gap: 0; - } - } -} - -.body_cli { - @extend .body_frame; - - background-color: black; -} - -#cli { - @extend %flex-column; - - background-color: black; - - #line { - @extend %flex-row; - } - - #prompt { - flex: 1; - } - - pre { - margin: .5em 0; - color: white; - } - - textarea { - resize: none; - max-height: 128px; - margin: hippie.$margin_io; - border: 0; - padding: hippie.$space_half; - // color: hippie.$color_text_io; - color: white; - // background-color: hippie.$color_back_io; - background-color: transparent; - line-height: 1.2; - } -} - - -#content { - background-color: hippie.$color_back_io; - - & > table { - width: 100%; - margin: 0; - border: 0; - - tr:hover td { - background-color: hippie.$color_highlight_basic; - } - - th { - border: 1px solid hippie.$color_border_io; - } - - td { - border-width: 0 1px; - border-style: solid; - border-color: hippie.$color_border_io; - } - } -} - - -.io { - .spacer { - margin: 0; - border: hippie.$border_dotted; - padding: 0; - opacity: .25; - } - - @include nav-spacer('a', hippie.$space_double, false); - @include nav-spacer('b', hippie.$space_small, false); -} \ No newline at end of file diff --git a/source/style/modules/ui/_gallery_module.scss b/source/style/modules/ui/_gallery_module.scss deleted file mode 100644 index 06803fb..0000000 --- a/source/style/modules/ui/_gallery_module.scss +++ /dev/null @@ -1,18 +0,0 @@ -@use "../../hippie-style/hippie"; - -main.io section > .gallery { - display: flex; - flex-wrap: wrap; - justify-content: left; - align-items: start; - gap: 10px; - background-color: hippie.$color_back_io; - - & > div { - background-color: hotpink; - aspect-ratio: 2 / 3; - width: 128px; - transition: width 0.3s ease; - } -} - diff --git a/source/style/modules/ui/_new_module.scss b/source/style/modules/ui/_new_module.scss deleted file mode 100755 index 4e36346..0000000 --- a/source/style/modules/ui/_new_module.scss +++ /dev/null @@ -1,99 +0,0 @@ -@use "sass:color"; - -@use "../../hippie-style/hippie"; - -$module_top_height: 32px; -$body_top_space: $module_top_height + hippie.$space_basic; - -.body_new { - @extend %flex-column; - padding: $body_top_space hippie.$space_basic hippie.$space_basic; -} - -.area { - transition: hippie.$transition_best; - - &:hover { - background-color: #999; - } -} - -.grid { - display: grid; - flex: 1; - // grid-template-rows: repeat(2, 1fr); - // grid-template-columns: repeat(2, 1fr); - grid-template-areas: "a a"; - grid-auto-rows: 1fr; - grid-auto-columns: 1fr; -} - -.item { - // height: unset; - border-color: color.scale(hippie.$color_back_basic, $lightness: -4%); - border-style: dotted; - border-width: hippie.$width_border_8; - border-radius: hippie.$width_border_8; - padding: hippie.$space_basic; - background-color: rgb(hippie.$color_back_basic, .5); - // background-color: lighten(hippie.$color_back_basic, hippie.$color_diff_tiny); - // background-color: gold; -} - -.float { - min-height: 50%; -} - -#top { - position: fixed; - top: 0; - left: 0; - display: flex; - width: 100%; - height: $module_top_height; - background-color: rgb(0, 0, 0, .8); - z-index: hippie.$z_top; - - div:last-child { - flex: 1; - } - - p, - li { - color: #fff; - } - - h1 a { - color: #000; - } - - p, - li { - margin-top: 8px; - margin-bottom: 7px; - padding: 0 4px; - font-size: 12px; - line-height: 17px; - } - - nav ul { - display: flex; - margin: 0 0 0 16px; - } - - .brand { - height: 36px; - background-color: #fff; - margin: 0 0 0 128px; - padding: 7px 24px; - font-size: 16px; - line-height: 22px; - font-weight: bold; - text-align: center; - } - - .state { - margin-right: 16px; - text-align: right; - } -} \ No newline at end of file diff --git a/source/style/modules/ui/_table_module.scss b/source/style/modules/ui/_table_module.scss deleted file mode 100644 index 51896f4..0000000 --- a/source/style/modules/ui/_table_module.scss +++ /dev/null @@ -1,17 +0,0 @@ -@use "../../hippie-style/hippie"; - -main.io section > table { - table-layout: auto; - width: 100%; - margin: 0; - background-color: hippie.$color_back_io; - - thead > tr > th:first-child { - width: 1%; - } - - tr > th:first-child { - text-align: center; - } -} - diff --git a/source/style/modules/ui/_windows_module.scss b/source/style/modules/ui/_windows_module.scss deleted file mode 100644 index 98475c4..0000000 --- a/source/style/modules/ui/_windows_module.scss +++ /dev/null @@ -1,164 +0,0 @@ -@use "sass:map"; - -@use "../../hippie-style/hippie"; - -$padding_half: calc(#{hippie.$space_half} - 3px) hippie.$space_half; - -%flex-bar { - display: flex; - flex-direction: row; - flex-wrap: wrap; - align-items: center; - justify-content: flex-start; - gap: hippie.$space_half hippie.$space_basic; -} - -#task-bar { - @extend %flex-bar; - z-index: map.get(hippie.$z-indexes, "content-top"); - position: fixed; - //right: 0; - //bottom: 0; - //left: 0; - border: 1px solid transparent; - padding: hippie.$space_basic; - background-color: rgba(0, 0, 0, .1); - - &.top, - &.bottom { - nav, - & > div { - &:last-child { - margin-top: unset; - margin-left: auto; - } - } - - .clock { - text-align: end; - } - } - - &.right, - &.left { - nav, - & > div { - &:last-child { - margin-top: auto; - margin-left: unset; - } - } - - .clock { - text-align: center; - - & > span { - display: inline-block; - word-wrap: anywhere; - } - } - } - - nav, - & > div { - @extend %flex-bar; - flex-direction: inherit; - } - - button { - @extend .button_io; - overflow: hidden; - - * { - pointer-events: none; - } - } - - nav.small { - //font-size: .8em; - - button { - border: none; - padding: $padding_half; - - &:hover { - background-color: transparent; - } - } - } - - nav.big { - font-size: 1.5em; - - button { - border: none; - padding: 0; - - &:hover { - background-color: transparent; - } - } - } - - .clock { - &, - & > * { - line-height: 1; - } - } -} - -#screen-space { - position: relative; - height: 100%; -} - -#placeholder { - @extend %flex-bar; - display: none; - z-index: map.get(hippie.$z-indexes, "toast"); - position: fixed; - border: 1px dashed black; - border-radius: 2px; - background-color: rgba(0, 0, 0, .4); - padding: 16px; - - &.top, - &.bottom { - span { - writing-mode: unset; - } - } - - &.right, - &.left { - span { - writing-mode: vertical-rl; - } - } - - * { - pointer-events: none; - } - - & > div { - @extend %flex-bar; - flex-direction: inherit; - flex-wrap: nowrap; - } - - .box, - .box_brd { - width: 16px; - height: 16px; - } - - .box { - background-color: black; - } - - .box_brd { - border: 2px solid black; - background-color: transparent; - } -} \ No newline at end of file diff --git a/source/style/ui.scss b/source/style/ui.scss deleted file mode 100644 index 1266a3a..0000000 --- a/source/style/ui.scss +++ /dev/null @@ -1,209 +0,0 @@ -@use "sass:map"; - -@use "demo_config"; -@use "hippie-style/hippie"; - -@use "modules/ui/frame_module"; -@use "modules/ui/new_module"; -@use "modules/ui/drag_module"; -@use "modules/ui/form_module"; -@use "modules/ui/gallery_module"; -@use "modules/ui/windows_module"; -@use "modules/ui/table_module"; - -$color_gui_back: hippie.$color_dark; -$space_gui_half: hippie.$space_half; - -.op_show { - transition: hippie.$transition_show; -} - -.op_hide { - transition: hippie.$transition_hide; -} - -.html_ui { - height: 100%; - - body { - position: relative; - min-height: 100%; - } -} - -.body_intro { - background-color: black; - - .step { - @extend %full_parent; - } - - #loader { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - background-color: white; - } - - #bar { - display: flex; - justify-content: space-between; - width: 50%; - } - - #wrap { - flex: 1; - background-color: hippie.$color_back_basic; - } - - #progress { - width: 0; - height: 100%; - background-color: black; - } - - #status, - #spinner { - @extend %basic; - - display: flex; - flex-grow: 0; - flex-shrink: 0; - justify-content: center; - align-items: center; - margin-inline: $space_gui_half; - padding-block: calc($space_gui_half - 1px) $space_gui_half; - line-height: hippie.$line_basic; - text-align: center; - } - - #status { - width: 4em; - background-color: black; - color: white; - } - - #spinner { - width: 2.5em; - background-color: hippie.$color_back_basic; - color: black; - - span { - animation: rotate 1s linear infinite; - } - } - - @keyframes rotate { - from { - transform: rotate(0deg); - } - - to { - transform: rotate(360deg); - } - } - - #init { - z-index: map.get(hippie.$z-indexes, "content-top"); - overflow: hidden; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - background-color: black; - - h1, - p, - li { - color: white; - } - } - - .brand { - text-align: center; - - svg { - height: 128px; - width: 128px; - - rect, circle, path { - stroke: white !important; - } - } - - img { - display: inline-block; - width: 128px; - height: 128px; - background-color: white; - } - - * + h1 { - margin-top: hippie.$space_small; - margin-bottom: hippie.$space_large; - } - } - - .tech-stack { - display: flex; - padding-left: 0; - - li { - list-style: none; - padding-inline: hippie.$space_double; - } - } - - #agreement, - #idle { - display: flex; - align-items: center; - justify-content: center; - height: 100vh; - } - - #agreement { - flex-direction: column; - background-color: map.get(hippie.$color_palette, bravo); - user-select: none; - - h1 { - margin-top: 0; - color: hippie.$color_brightest; - } - } - - #idle { - background-color: hippie.$color_back_basic; - transition: background-color 4s; - - &:hover > .mouse-overlay { - background-color: transparent !important; - transition: background-color hippie.$duration_basic hippie.$timing_basic 0s !important; - } - - .hello { - flex: 0 1 auto; - padding: 1em 2em; - background-color: rgba(hippie.$color_bright, .5); - font-family: hippie.$family_text_mono; - } - } -} - -.toast { - z-index: map.get(hippie.$z-indexes, "toast"); - position: fixed; - right: $space_gui_half; - bottom: hippie.$space_double; - - p { - color: white; - } - - kbd { - border-color: hippie.$color_brighter; - color: hippie.$color_back_io; - } -} diff --git a/source/templates/hippie/app.liquid b/source/templates/hippie/app.liquid deleted file mode 100644 index 87db0cb..0000000 --- a/source/templates/hippie/app.liquid +++ /dev/null @@ -1,41 +0,0 @@ -{% assign pageId = page.fileSlug -%} -{% assign pageClass = 'html_ui' -%} -{% layout 'hippie/default.liquid' %} - -{% block title %}{{ title }}{% endblock %} - -{% block links %} -{{ block.super -}} - - -{% endblock %} - -{% block assets %} - - - - -{% endblock %} - -{% block script %} - -{% endblock %} diff --git a/source/templates/hippie/default.liquid b/source/templates/hippie/default.liquid deleted file mode 100644 index 0d6c050..0000000 --- a/source/templates/hippie/default.liquid +++ /dev/null @@ -1,37 +0,0 @@ - -{% if pageId %} -{%- capture idAttr %} id="{{ pageId }}"{% endcapture -%} -{% endif -%} -{% if pageClass %} - {%- capture classAttr %} class="{{ pageClass }}"{% endcapture -%} -{% endif -%} -{% if bodyClass %} - {%- capture bodyClassAttr %} class="{{ bodyClass }}"{% endcapture -%} -{% endif -%} - - - - {% block head %} - - {{- hippie.titlePrefix -}} - {% block title %}{% endblock -%} - {{ hippie.titlePostfix -}} - - {% block meta -%} - {% render 'hippie/partials/meta.liquid' %} - {% endblock -%} - {% block links -%} - {% render 'hippie/partials/links.liquid' %} - {% endblock -%} - {% endblock -%} - - - -{%- block body %}{% endblock -%} -{%- block assets %}{% endblock -%} - -{%- block script %}{% endblock -%} - - \ No newline at end of file diff --git a/source/templates/hippie/full.liquid b/source/templates/hippie/full.liquid deleted file mode 100644 index dbbe4ae..0000000 --- a/source/templates/hippie/full.liquid +++ /dev/null @@ -1,49 +0,0 @@ - -{% if pageId %} -{%- capture idAttr %} id="{{ pageId }}"{% endcapture -%} -{% endif -%} -{% if pageClass %} - {%- capture classAttr %} class="{{ pageClass }}"{% endcapture -%} -{% endif -%} -{% if bodyClass %} - {%- capture bodyClassAttr %} class="{{ bodyClass }}"{% endcapture -%} -{% endif -%} - - - - {% block head %} - - {{- hippie.titlePrefix -}} - {% block title %}{{ title }}{% endblock -%} - {{ hippie.titlePostfix -}} - - {% block meta -%} - {% render 'hippie/partials/meta.liquid', author: 'Interaktionsweise', desc: 'Hippie interweaves preeminent personal interface elements' %} - {% comment %}{% endcomment %} - {% endblock -%} - {% render 'hippie/partials/script-log.liquid' %} - {% render 'hippie/partials/log-setup', hippie: hippie, state: true -%} - {% render 'hippie/partials/log-start' -%} - {% block links -%} - {% render 'hippie/partials/links.liquid' %} - - {% endblock -%} - {% render 'hippie/partials/log-log' with 'HEAD end :: Links parsed, starting to load.' as msg -%} - {% endblock -%} - - - -{% render 'hippie/partials/log-log' with 'BODY start' as msg -%} -{%- block body %}{% endblock -%} -{% render 'hippie/partials/log-log' with 'BODY :: Loading script assets...' as msg -%} -{%- block assets %}{% endblock -%} -{% render 'hippie/partials/log-assets', state: true -%} -{% render 'hippie/partials/log-log', msg: 'BODY :: Assets loaded, running page specific script...', arg: true -%} - -{%- block script %}{% endblock -%} -{% render 'hippie/partials/log-log' with 'BODY end :: Page script might still be loading.' as msg -%} -{% render 'hippie/partials/log-log' with 'Application ready... or is it?' as msg -%} - - \ No newline at end of file diff --git a/source/templates/hippie/page.liquid b/source/templates/hippie/page.liquid deleted file mode 100644 index 5c8881f..0000000 --- a/source/templates/hippie/page.liquid +++ /dev/null @@ -1,64 +0,0 @@ -{% assign pageId = page.fileSlug -%} -{% layout 'hippie/full.liquid' %} - -{% block meta %} -{{ block.super -}} -{% comment %}{% endcomment %} -{% comment %}{% endcomment %} -{% endblock %} - -{% block links %} -{{ block.super -}} -{% if hippie.legacyMode %} - - - {% comment %}{% endcomment %} - {% comment %}{% endcomment %} -{% endif %} - -{% comment %}{% endcomment %} -{% comment %}{% endcomment %} -{% endblock %} - -{% block body %} -{{ block.super -}} -{% render 'hippie/partials/nav-page.liquid' %} -
- {% render 'hippie/partials/header-page.liquid' %} - -
- {% block main %}{% endblock %} -
- - {% render 'hippie/partials/footer-page.liquid' %} -
-{% endblock %} - -{% block assets %} - - - - -{% endblock %} -{% block script %} - -{% endblock %} diff --git a/source/templates/hippie/partials/footer-page.liquid b/source/templates/hippie/partials/footer-page.liquid deleted file mode 100644 index 7aa500a..0000000 --- a/source/templates/hippie/partials/footer-page.liquid +++ /dev/null @@ -1,3 +0,0 @@ -
-
-
\ No newline at end of file diff --git a/source/templates/hippie/partials/footer-pinned.liquid b/source/templates/hippie/partials/footer-pinned.liquid deleted file mode 100644 index 5f4160a..0000000 --- a/source/templates/hippie/partials/footer-pinned.liquid +++ /dev/null @@ -1,3 +0,0 @@ -
-

Unten fixiert

-
diff --git a/source/templates/hippie/partials/footer-status.liquid b/source/templates/hippie/partials/footer-status.liquid deleted file mode 100644 index b46ecf2..0000000 --- a/source/templates/hippie/partials/footer-status.liquid +++ /dev/null @@ -1,9 +0,0 @@ -
-
Kontakt: - {{ email | default: 'admin@domain.tld' }} - · Server: - {{ app | default: 'Application' }}/{{ version | default: 'ver.s.ion' }} - ({{ system | default: 'System name' }}) · Domain: - {{ domain | default: 'domain.tld:port' }} -
-
\ No newline at end of file diff --git a/source/templates/hippie/partials/frame-header.liquid b/source/templates/hippie/partials/frame-header.liquid deleted file mode 100644 index 14d04bc..0000000 --- a/source/templates/hippie/partials/frame-header.liquid +++ /dev/null @@ -1,20 +0,0 @@ -
- - -
\ No newline at end of file diff --git a/source/templates/hippie/partials/frame-mode.liquid b/source/templates/hippie/partials/frame-mode.liquid deleted file mode 100644 index 4e87985..0000000 --- a/source/templates/hippie/partials/frame-mode.liquid +++ /dev/null @@ -1,10 +0,0 @@ -
- - -
\ No newline at end of file diff --git a/source/templates/hippie/partials/frame-status.liquid b/source/templates/hippie/partials/frame-status.liquid deleted file mode 100644 index 98c94f9..0000000 --- a/source/templates/hippie/partials/frame-status.liquid +++ /dev/null @@ -1,11 +0,0 @@ -
- - -
\ No newline at end of file diff --git a/source/templates/hippie/partials/gate-list.liquid b/source/templates/hippie/partials/gate-list.liquid deleted file mode 100644 index 8c5fdea..0000000 --- a/source/templates/hippie/partials/gate-list.liquid +++ /dev/null @@ -1,19 +0,0 @@ - diff --git a/source/templates/hippie/partials/gate-simple.liquid b/source/templates/hippie/partials/gate-simple.liquid deleted file mode 100644 index 9d0b54e..0000000 --- a/source/templates/hippie/partials/gate-simple.liquid +++ /dev/null @@ -1,7 +0,0 @@ - \ No newline at end of file diff --git a/source/templates/hippie/partials/header-page.liquid b/source/templates/hippie/partials/header-page.liquid deleted file mode 100644 index a37637a..0000000 --- a/source/templates/hippie/partials/header-page.liquid +++ /dev/null @@ -1,3 +0,0 @@ -
-
-
\ No newline at end of file diff --git a/source/templates/hippie/partials/header-status.liquid b/source/templates/hippie/partials/header-status.liquid deleted file mode 100644 index 725e305..0000000 --- a/source/templates/hippie/partials/header-status.liquid +++ /dev/null @@ -1,21 +0,0 @@ -
-

- {{ hippie.brand | upcase }} -

- -
-

{% render 'hippie/partials/status-coord', id: "log" %} - / - {% render 'hippie/partials/status-date', id: "date" %} - / - {% render 'hippie/partials/status-time', id: "time" %}

-
-
diff --git a/source/templates/hippie/partials/links.liquid b/source/templates/hippie/partials/links.liquid deleted file mode 100644 index 32d854d..0000000 --- a/source/templates/hippie/partials/links.liquid +++ /dev/null @@ -1,3 +0,0 @@ -{% comment %}{% endcomment %} - - diff --git a/source/templates/hippie/partials/log-assets.liquid b/source/templates/hippie/partials/log-assets.liquid deleted file mode 100644 index a34b417..0000000 --- a/source/templates/hippie/partials/log-assets.liquid +++ /dev/null @@ -1,3 +0,0 @@ - diff --git a/source/templates/hippie/partials/log-log.liquid b/source/templates/hippie/partials/log-log.liquid deleted file mode 100644 index ba21f2a..0000000 --- a/source/templates/hippie/partials/log-log.liquid +++ /dev/null @@ -1,3 +0,0 @@ - diff --git a/source/templates/hippie/partials/log-setup.liquid b/source/templates/hippie/partials/log-setup.liquid deleted file mode 100644 index 04fd9b2..0000000 --- a/source/templates/hippie/partials/log-setup.liquid +++ /dev/null @@ -1,6 +0,0 @@ -{% comment %}{% assign hippie.debugMode = state %}{% endcomment %} - diff --git a/source/templates/hippie/partials/log-start.liquid b/source/templates/hippie/partials/log-start.liquid deleted file mode 100644 index e137e33..0000000 --- a/source/templates/hippie/partials/log-start.liquid +++ /dev/null @@ -1,4 +0,0 @@ - diff --git a/source/templates/hippie/partials/meta.liquid b/source/templates/hippie/partials/meta.liquid deleted file mode 100644 index a4b3cc2..0000000 --- a/source/templates/hippie/partials/meta.liquid +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/source/templates/hippie/partials/nav-page.liquid b/source/templates/hippie/partials/nav-page.liquid deleted file mode 100644 index cf52d72..0000000 --- a/source/templates/hippie/partials/nav-page.liquid +++ /dev/null @@ -1,33 +0,0 @@ -
- -
-{% comment %}
- ? -
{% endcomment %} \ No newline at end of file diff --git a/source/templates/hippie/partials/placeholder-flag.liquid b/source/templates/hippie/partials/placeholder-flag.liquid deleted file mode 100644 index 6b6b048..0000000 --- a/source/templates/hippie/partials/placeholder-flag.liquid +++ /dev/null @@ -1,43 +0,0 @@ -{% assign height = width | divided_by: 1.6 %} - -{% if type == 'svg' or type == '' %} - - {% comment %} - - - - - - - - - - - {% endcomment %} - {% if desc %} - {{ desc }} - {% endif %} - - - - - - - - - - -{% elsif type == 'img' %} - {% if src == 'file' %} - - - {{ desc }} - - {% else %} - {{ desc }} - {% endif %} -{% endif %} diff --git a/source/templates/hippie/partials/script-log.liquid b/source/templates/hippie/partials/script-log.liquid deleted file mode 100644 index 7e270c7..0000000 --- a/source/templates/hippie/partials/script-log.liquid +++ /dev/null @@ -1,113 +0,0 @@ - \ No newline at end of file diff --git a/source/templates/hippie/partials/song.liquid b/source/templates/hippie/partials/song.liquid deleted file mode 100644 index 534da59..0000000 --- a/source/templates/hippie/partials/song.liquid +++ /dev/null @@ -1,10 +0,0 @@ -
-
-

{{ data.title }}

-
{{ data.releaseDate }}
-

{{ data.description }}

-
- {% comment %}
{{ content }}
{% endcomment %} - {{ content }} -
{{ index }}
-
\ No newline at end of file diff --git a/source/templates/hippie/partials/status-coord.liquid b/source/templates/hippie/partials/status-coord.liquid deleted file mode 100644 index 29e592f..0000000 --- a/source/templates/hippie/partials/status-coord.liquid +++ /dev/null @@ -1 +0,0 @@ -{{ text | default: 'X: #, Y: ##' }} diff --git a/source/templates/hippie/partials/status-date.liquid b/source/templates/hippie/partials/status-date.liquid deleted file mode 100644 index 296a866..0000000 --- a/source/templates/hippie/partials/status-date.liquid +++ /dev/null @@ -1,6 +0,0 @@ - - Wochentag, - ##. - Monat - #### - diff --git a/source/templates/hippie/partials/status-time.liquid b/source/templates/hippie/partials/status-time.liquid deleted file mode 100644 index f981e80..0000000 --- a/source/templates/hippie/partials/status-time.liquid +++ /dev/null @@ -1 +0,0 @@ -{{ text | default: '00:00:00' }}{{ postfix | default: ' Uhr' }} diff --git a/source/templates/hippie/simple.liquid b/source/templates/hippie/simple.liquid deleted file mode 100644 index b888886..0000000 --- a/source/templates/hippie/simple.liquid +++ /dev/null @@ -1,9 +0,0 @@ -{% assign pageId = page.fileSlug -%} -{% layout 'hippie/default.liquid' %} - -{% block title %}{{ title }}{% endblock %} - -{% block links %} -{{ block.super -}} - -{% endblock %} diff --git a/source/templates/hippie/status.liquid b/source/templates/hippie/status.liquid deleted file mode 100644 index 86499ed..0000000 --- a/source/templates/hippie/status.liquid +++ /dev/null @@ -1,37 +0,0 @@ - -{% if pageClass %} -{%- capture classAttr %} class="{{ pageClass }}"{% endcapture -%} -{% endif -%} -{% if bodyClass %} - {%- capture bodyClassAttr %} class="{{ bodyClass }}"{% endcapture -%} -{% endif -%} - - - - {% block head %} - - {{- hippie.titlePrefix -}} - {% block title %}{{ title }}{% endblock -%} - {{ hippie.titlePostfix -}} - - {% block meta -%} - {% render 'hippie/partials/meta.liquid' %} - {% endblock -%} - {% block links -%} - - - {% endblock -%} - {% endblock -%} - - - -{%- block body %} -
-

{{ title }}

- {% block main %}{% endblock -%} -
-{% render 'hippie/partials/footer-status' %} -{% endblock -%} - - \ No newline at end of file diff --git a/source/templates/hippie/world.liquid b/source/templates/hippie/world.liquid deleted file mode 100644 index ca935dc..0000000 --- a/source/templates/hippie/world.liquid +++ /dev/null @@ -1,11 +0,0 @@ - - - - - {{ title }} - - - -{{ content }} - - \ No newline at end of file diff --git a/vendor/jq-sticky-anything.min.js b/vendor/jq-sticky-anything.min.js deleted file mode 100644 index 4bed161..0000000 --- a/vendor/jq-sticky-anything.min.js +++ /dev/null @@ -1,5 +0,0 @@ -/** -* @preserve Sticky Anything 2.0.1 | @senff | GPL2 Licensed -*/ - -!function(a){function b(b,c,d,e,f,g,h){$listenerElement=a(".sticky-element-active");var i=$listenerElement.offset();if(orgElementTop=i.top,f){var j=a(f).offset();pushElementTop=j.top}var k=window,l="inner";if("innerWidth"in window||(l="client",k=document.documentElement||document.body),viewport=k[l+"Width"],a(window).scrollTop()>=orgElementTop-b&&viewport>=c&&viewport<=d){coordsOrgElement=$listenerElement.offset(),leftOrgElement=coordsOrgElement.left,widthPlaceholder=$listenerElement[0].getBoundingClientRect().width,widthPlaceholder||(widthPlaceholder=$listenerElement.css("width")),heightPlaceholder=$listenerElement[0].getBoundingClientRect().height,heightPlaceholder||(heightPlaceholder=$listenerElement.css("height")),widthSticky=a(".sticky-element-original").css("width"),"0px"==widthSticky&&(widthSticky=a(".sticky-element-original")[0].getBoundingClientRect().width),heightSticky=a(".sticky-element-original").height(),paddingOrgElement=[a(".sticky-element-original").css("padding-top"),a(".sticky-element-original").css("padding-right"),a(".sticky-element-original").css("padding-bottom"),a(".sticky-element-original").css("padding-left")],paddingSticky=paddingOrgElement[0]+" "+paddingOrgElement[1]+" "+paddingOrgElement[2]+" "+paddingOrgElement[3],marginOrgElement=[$listenerElement.css("margin-top"),$listenerElement.css("margin-right"),$listenerElement.css("margin-bottom"),$listenerElement.css("margin-left")],marginPlaceholder=marginOrgElement[0]+" "+marginOrgElement[1]+" "+marginOrgElement[2]+" "+marginOrgElement[3],assignedStyles="";for(var m in g)"inline"==g[m]?assignedStyles+=m+":inline-block; ":assignedStyles+=m+":"+g[m]+"; ";elementHeight=0,heightPlaceholder<1?elementHeight=a(".sticky-element-cloned").outerHeight():elementHeight=a(".sticky-element-original").outerHeight(),f&&a(window).scrollTop()>pushElementTop-b-elementHeight?stickyTopMargin=pushElementTop-b-elementHeight-a(window).scrollTop():stickyTopMargin=0,assignedStyles+="width:"+widthPlaceholder+"px; height:"+heightPlaceholder+"px; margin:"+marginPlaceholder+";",a(".sticky-element-original").removeClass("sticky-element-not-sticky").addClass("sticky-element-sticky").removeClass("sticky-element-active").css("position","fixed").css("left",leftOrgElement+"px").css("top",b+"px").css("width",widthSticky).css("margin-left",0).css("padding",paddingSticky).css("margin-top",stickyTopMargin).css("z-index",e),a(".sticky-element-placeholder").hasClass("sticky-element-active")||a(".sticky-element-placeholder").addClass("sticky-element-active").attr("style",assignedStyles)}else a(".sticky-element-original").addClass("sticky-element-not-sticky").removeClass("sticky-element-sticky").addClass("sticky-element-active").attr("style",h),a(".sticky-element-placeholder").hasClass("sticky-element-active")&&a(".sticky-element-placeholder").removeClass("sticky-element-active").removeAttr("style").css("width","0").css("height","0").css("margin","0").css("padding","0")}function c(){a(".sticky-element-original").addClass("sticky-element-active").before('')}function d(a){return o={},o.display=a.css("display"),o.float=a.css("float"),o.flex=a.css("flex"),o["box-sizing"]=a.css("box-sizing"),o.clear=a.css("clear"),o.overflow=a.css("overflow"),o.transform=a.css("transform"),o}a.fn.stickThis=function(e){var f=a.extend({top:0,minscreenwidth:0,maxscreenwidth:99999,zindex:1,debugmode:!1,pushup:""},e),g=a(this).length,h=a(f.pushup).length;return h<1?(1==f.debugmode&&f.pushup&&console.error('STICKY ANYTHING DEBUG: There are no elements with the selector/class/ID you selected for the Push-up element ("'+f.pushup+'").'),f.pushup=""):h>1&&(1==f.debugmode&&console.error("STICKY ANYTHING DEBUG: There are "+h+' elements on the page with the selector/class/ID you selected for the push-up element ("'+f.pushup+'"). You can select only ONE element to push the sticky element up.'),f.pushup=""),g<1?1==f.debugmode&&console.error('STICKY ANYTHING DEBUG: There are no elements with the selector/class/ID you selected for the sticky element ("'+this.selector+'").'):g>1?1==f.debugmode&&console.error("STICKY ANYTHING DEBUG: There There are "+h+' elements with the selector/class/ID you selected for the sticky element ("'+this.selector+'"). You can only make ONE element sticky.'):(a(this).addClass("sticky-element-original").addClass("sticky-element-not-sticky"),orgAssignedStyles=d(a(this)),orgInlineStyles=a(".sticky-element-original").attr("style"),null==orgInlineStyles&&(orgInlineStyles=""),c(),checkElement=setInterval(function(){b(f.top,f.minscreenwidth,f.maxscreenwidth,f.zindex,f.pushup,orgAssignedStyles,orgInlineStyles)},10)),this}}(jQuery);