Refactored repo file structure in preparation for jsdoc tutorials.
This commit is contained in:
parent
ba9e950556
commit
29b3b30586
39
Jenkinsfile
vendored
39
Jenkinsfile
vendored
@ -3,77 +3,38 @@ pipeline {
|
|||||||
stages {
|
stages {
|
||||||
stage("install") {
|
stage("install") {
|
||||||
steps {
|
steps {
|
||||||
dir('audioshowkit') {
|
|
||||||
nodejs('NodeJS (17.4.0)') {
|
nodejs('NodeJS (17.4.0)') {
|
||||||
sh "npm install"
|
sh "npm install"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
stage("build") {
|
stage("build") {
|
||||||
steps {
|
steps {
|
||||||
dir('audioshowkit') {
|
|
||||||
nodejs('NodeJS (17.4.0)') {
|
nodejs('NodeJS (17.4.0)') {
|
||||||
sh "npm run build:dev"
|
sh "npm run build:dev"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
stage("test") {
|
stage("test") {
|
||||||
steps {
|
steps {
|
||||||
dir('audioshowkit') {
|
|
||||||
nodejs('NodeJS (17.4.0)') {
|
nodejs('NodeJS (17.4.0)') {
|
||||||
sh "npm run test:junit"
|
sh "npm run test:junit"
|
||||||
}
|
}
|
||||||
junit 'junit/*.xml'
|
junit 'junit/*.xml'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
stage("archive product") {
|
stage("archive product") {
|
||||||
steps {
|
steps {
|
||||||
archiveArtifacts artifacts: 'audioshowkit/dist/audioshowkit.js', followSymlinks: false
|
archiveArtifacts artifacts: 'audioshowkit/dist/audioshowkit.js', followSymlinks: false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage("publish") {
|
|
||||||
parallel {
|
|
||||||
stage("setup showcase") {
|
|
||||||
stages {
|
|
||||||
stage("install showcase") {
|
|
||||||
steps {
|
|
||||||
dir('showcase') {
|
|
||||||
nodejs('NodeJS (17.4.0)') {
|
|
||||||
sh "npm i"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage("build showcase") {
|
|
||||||
steps {
|
|
||||||
dir('showcase') {
|
|
||||||
nodejs('NodeJS (17.4.0)') {
|
|
||||||
sh "npm run build"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage("deploy showcase") {
|
|
||||||
steps {
|
|
||||||
publishHTML([allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'showcase/dist', reportFiles: 'index.html', reportName: 'AudioShowKit Demo', reportTitles: ''])
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage("generate docs") {
|
stage("generate docs") {
|
||||||
steps {
|
steps {
|
||||||
dir('audioshowkit') {
|
|
||||||
nodejs('NodeJS (17.4.0)') {
|
nodejs('NodeJS (17.4.0)') {
|
||||||
sh "npm run docs"
|
sh "npm run docs"
|
||||||
}
|
}
|
||||||
}
|
|
||||||
publishHTML([allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'audioshowkit/docs', reportFiles: 'index.html', reportName: 'AudioShowKit JSDocs', reportTitles: ''])
|
publishHTML([allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'audioshowkit/docs', reportFiles: 'index.html', reportName: 'AudioShowKit JSDocs', reportTitles: ''])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -1,3 +0,0 @@
|
|||||||
webpack.*.js
|
|
||||||
webpack.*.cjs
|
|
||||||
**/prism.js
|
|
@ -1,36 +0,0 @@
|
|||||||
{
|
|
||||||
"env": {
|
|
||||||
"browser": true,
|
|
||||||
"es2021": true
|
|
||||||
},
|
|
||||||
"extends": [
|
|
||||||
"eslint:recommended",
|
|
||||||
"plugin:import/recommended"
|
|
||||||
],
|
|
||||||
"parserOptions": {
|
|
||||||
"ecmaVersion": "latest",
|
|
||||||
"sourceType": "module"
|
|
||||||
},
|
|
||||||
"rules": {
|
|
||||||
"indent": [
|
|
||||||
"error",
|
|
||||||
4
|
|
||||||
],
|
|
||||||
"linebreak-style": [
|
|
||||||
"error",
|
|
||||||
"unix"
|
|
||||||
],
|
|
||||||
"quotes": [
|
|
||||||
"error",
|
|
||||||
"double"
|
|
||||||
],
|
|
||||||
"semi": [
|
|
||||||
"error",
|
|
||||||
"always"
|
|
||||||
],
|
|
||||||
"import/extensions": [
|
|
||||||
"error",
|
|
||||||
"ignorePackages"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
8
showcase/.vscode/settings.json
vendored
8
showcase/.vscode/settings.json
vendored
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"cSpell.words": [
|
|
||||||
"audioshowkit",
|
|
||||||
"audioshowkitshowcase",
|
|
||||||
"Rosen"
|
|
||||||
],
|
|
||||||
"html.format.wrapLineLength": 0
|
|
||||||
}
|
|
Binary file not shown.
Binary file not shown.
@ -1,4 +0,0 @@
|
|||||||
{
|
|
||||||
"presets": [],
|
|
||||||
"plugins": []
|
|
||||||
}
|
|
13549
showcase/package-lock.json
generated
13549
showcase/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,35 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "showcase",
|
|
||||||
"type": "module",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"description": "",
|
|
||||||
"main": "webpack.common.js",
|
|
||||||
"scripts": {
|
|
||||||
"build": "webpack --config webpack.prod.cjs",
|
|
||||||
"watch": "webpack serve --config webpack.dev.cjs"
|
|
||||||
},
|
|
||||||
"keywords": [],
|
|
||||||
"author": "",
|
|
||||||
"license": "ISC",
|
|
||||||
"devDependencies": {
|
|
||||||
"@babel/core": "^7.17.9",
|
|
||||||
"@babel/eslint-parser": "^7.17.0",
|
|
||||||
"@babel/preset-env": "^7.16.11",
|
|
||||||
"babel-loader": "^8.2.4",
|
|
||||||
"copy-webpack-plugin": "^10.2.4",
|
|
||||||
"css-loader": "^6.7.1",
|
|
||||||
"eslint": "^8.13.0",
|
|
||||||
"eslint-plugin-import": "^2.26.0",
|
|
||||||
"eslint-webpack-plugin": "^3.1.1",
|
|
||||||
"html-loader": "^3.1.0",
|
|
||||||
"html-webpack-plugin": "^5.5.0",
|
|
||||||
"style-loader": "^3.3.1",
|
|
||||||
"webpack": "^5.72.0",
|
|
||||||
"webpack-cli": "^4.9.2",
|
|
||||||
"webpack-dev-server": "^4.8.1",
|
|
||||||
"webpack-merge": "^5.8.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"audioshowkit": "file:../audioshowkit"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,3 +0,0 @@
|
|||||||
/* PrismJS 1.28.0
|
|
||||||
https://prismjs.com/download.html#themes=prism&languages=markup+css */
|
|
||||||
code[class*=language-],pre[class*=language-]{color:#000;background:0 0;text-shadow:0 1px #fff;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
|
|
@ -1,45 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<link href="./css/prism.css" rel="stylesheet" />
|
|
||||||
<script src="./js/prism.js"></script>
|
|
||||||
<script src="../node_modules/audioshowkit/dist/audioshowkit.js" defer></script>
|
|
||||||
<title>AudioShowKit Showcase</title>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div>
|
|
||||||
<h1>Welcome to the AudioShowKit Showcase!</h1>
|
|
||||||
<div>
|
|
||||||
<h2>Song Player</h2>
|
|
||||||
<p>The song player acts as a easier way for developers to set up multiple audio sources to play while a user is browsing through their site.</p>
|
|
||||||
|
|
||||||
<h3>Example</h3>
|
|
||||||
<div id="player-showcase"></div>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<h2>Visualizer and Visualizer Update Manager</h2>
|
|
||||||
<p>The visualizer itself serves little purpose other than creating a central location for updating and obtaining amplitude over the frequency domain data. It comes with a simple update system in which can be used to listen to updates over the entire bin.</p>
|
|
||||||
<p>Instead, the visualizer update manager handles the detailed update sequences in terms of:</p>
|
|
||||||
<ul>
|
|
||||||
<li>
|
|
||||||
Individual bins, where the parameters are the elapsed time since last update, the amplitude of the updating bin, and the delta of the amplitude from the last update.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
Ranges of bins, where the parameters are the elapsed time since last updating, and an array of the amplitudes.
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<div id="visualizer-showcase"></div>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<h2>Mappings</h2>
|
|
||||||
<p>Mappings mainly provide functions for mapping commonly used CSS properties to a given range of frequency bins, or a single bin. The mappings portion of the library also contain helper functions for converting between CSS colors and interpolation functions.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
@ -1,15 +0,0 @@
|
|||||||
console.log("Beginning showcase..");
|
|
||||||
const ask = window.audioshowkit;
|
|
||||||
|
|
||||||
// Song Player
|
|
||||||
const playlist = ask.player.createSongPlaylist("Demo playlist");
|
|
||||||
playlist.add("/audio/moments.mp3", "moments", "Lost Identities x Robbie Rosen");
|
|
||||||
playlist.add("/audio/XXI.mp3", "XXI", "QR");
|
|
||||||
const player = ask.player.createSongPlayer(playlist);
|
|
||||||
const playerElem = document.getElementById("player-showcase");
|
|
||||||
playerElem.appendChild(player.generatePlayElement());
|
|
||||||
playerElem.appendChild(player.generateNextElement());
|
|
||||||
playerElem.appendChild(player.generatePreviousElement());
|
|
||||||
|
|
||||||
|
|
||||||
// Visualizer
|
|
File diff suppressed because one or more lines are too long
@ -1,47 +0,0 @@
|
|||||||
const path = require("path");
|
|
||||||
const HtmlWebpackPlugin = require("html-webpack-plugin");
|
|
||||||
const CopyPlugin = require("copy-webpack-plugin");
|
|
||||||
const ESLintPlugin = require("eslint-webpack-plugin");
|
|
||||||
|
|
||||||
module.exports = {
|
|
||||||
entry: {
|
|
||||||
audioshowkitshowcase: path.resolve("./src/js/main.js"),
|
|
||||||
},
|
|
||||||
module: {
|
|
||||||
rules: [
|
|
||||||
{
|
|
||||||
test: /\.m?js$/,
|
|
||||||
exclude: /(node_modules|bower_components)/,
|
|
||||||
use: {
|
|
||||||
loader: "babel-loader",
|
|
||||||
options: {
|
|
||||||
presets: ["@babel/preset-env"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
test: /\.css$/i,
|
|
||||||
use: ["style-loader", "css-loader"],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
test: /\.html$/i,
|
|
||||||
loader: "html-loader",
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
output: {
|
|
||||||
filename: "[name].js",
|
|
||||||
path: path.resolve("./dist")
|
|
||||||
},
|
|
||||||
plugins: [
|
|
||||||
new ESLintPlugin(),
|
|
||||||
new HtmlWebpackPlugin({
|
|
||||||
template: path.resolve("./src/index.html"),
|
|
||||||
}),
|
|
||||||
new CopyPlugin({
|
|
||||||
patterns: [
|
|
||||||
{ from: "audio/*.mp3", to: "./" }
|
|
||||||
]
|
|
||||||
})
|
|
||||||
]
|
|
||||||
};
|
|
@ -1,16 +0,0 @@
|
|||||||
const path = require("path");
|
|
||||||
const { merge } = require("webpack-merge");
|
|
||||||
const webpackCommon = require("./webpack.common.cjs");
|
|
||||||
|
|
||||||
|
|
||||||
const devConfig = {
|
|
||||||
mode: "development",
|
|
||||||
devtool: "inline-source-map",
|
|
||||||
devServer: {
|
|
||||||
static: path.resolve("./dist"),
|
|
||||||
open: true,
|
|
||||||
hot: true
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = merge(webpackCommon, devConfig);
|
|
@ -1,9 +0,0 @@
|
|||||||
const { merge } = require("webpack-merge");
|
|
||||||
const webpackCommon = require("./webpack.common.cjs");
|
|
||||||
|
|
||||||
|
|
||||||
const prodConfig = {
|
|
||||||
mode: "production",
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = merge(webpackCommon, prodConfig);
|
|
Loading…
Reference in New Issue
Block a user