fix: Get generators to work on Chrome; make wrl-only plugin also (#71)
Reviewed-on: #71 Co-authored-by: Glen Whitney <glen@studioinfinity.org> Co-committed-by: Glen Whitney <glen@studioinfinity.org>
This commit is contained in:
parent
c895f2d30f
commit
e742ef3460
7 changed files with 184 additions and 40 deletions
|
@ -1,43 +1,59 @@
|
|||
# Takes one parameter, the destination directory
|
||||
# Takes two parameters, the destination directory and what to include
|
||||
# in the plugin:
|
||||
# full - everything
|
||||
# wrl - just the wrl viewer
|
||||
modules="$2"
|
||||
mkdir -p $1/deps/x_ite/assets/images
|
||||
mkdir -p $1/deps/x_ite/assets/components
|
||||
versionLine=$(grep version package.json5)
|
||||
regex="'(.*)'"
|
||||
if [[ $versionLine =~ $regex ]]
|
||||
then
|
||||
version=${BASH_REMATCH[1]}
|
||||
fi
|
||||
version="${BASH_REMATCH[1]}"
|
||||
fi
|
||||
# Mark full versions with an extra version number field:
|
||||
if [ "$modules" = full ]
|
||||
then
|
||||
version="${version}.2"
|
||||
fi
|
||||
echo "Building plugin version $version"
|
||||
|
||||
sed "s/<<FROM_PACKAGE_JSON>>/$version/" etc/manifest.json > $1/manifest.json
|
||||
cp etc/options.html $1
|
||||
VERSION="$version" WHAT="$modules" bash etc/manifest.bash > $1/manifest.json
|
||||
WHAT="$modules" bash etc/options.bash > $1/options.html
|
||||
|
||||
cp etc/deps/x_ite/x_ite.css $1/deps/x_ite
|
||||
cp etc/deps/x_ite/assets/images/logo.128.png $1/deps/x_ite/assets/images
|
||||
cp etc/deps/x_ite/x_ite.mjs $1/deps/x_ite
|
||||
cp etc/deps/x_ite/assets/components/* $1/deps/x_ite/assets/components
|
||||
|
||||
geoFiles=($(grep deps/GeoGebra etc/manifest.json))
|
||||
for spec in "${geoFiles[@]}"
|
||||
do
|
||||
quotspec=${spec%,}
|
||||
trimRspec="${quotspec%\"}"
|
||||
trimspec="${trimRspec#\"}"
|
||||
dest=${trimspec%/*}
|
||||
mkdir -p $1/$dest
|
||||
cp -r etc/$trimspec $1/$dest
|
||||
done
|
||||
|
||||
npx rollup public/js/giveAwrl.js --dir $1
|
||||
npx rollup public/js/adapptlet.js --file $1/adapptlet.js
|
||||
npx rollup public/js/adapptext.js --file $1/adapptext.js
|
||||
cp public/js/options.js public/js/adapptypes.js public/js/conway.js $1
|
||||
cp public/js/prism.js $1
|
||||
cp public/js/options.js public/js/conway.js public/js/prism.js $1
|
||||
cp public/js/adapptypes.js $1
|
||||
|
||||
cp node_modules/webextension-polyfill/dist/browser-polyfill.js $1
|
||||
cp node_modules/@webcomponents/custom-elements/custom-elements.min.js $1
|
||||
# Images etc
|
||||
mkdir -p $1/assets
|
||||
cp public/assets/arch*.png $1/assets
|
||||
cp public/assets/*Example.png $1/assets
|
||||
cp public/assets/vrmlExample.png $1/assets
|
||||
|
||||
if [ "$modules" = full ]
|
||||
then
|
||||
geoFiles=($(grep deps/GeoGebra $1/manifest.json))
|
||||
for spec in "${geoFiles[@]}"
|
||||
do
|
||||
quotspec=${spec%,}
|
||||
trimRspec="${quotspec%\"}"
|
||||
trimspec="${trimRspec#\"}"
|
||||
dest=${trimspec%/*}
|
||||
mkdir -p $1/$dest
|
||||
cp -r etc/$trimspec $1/$dest
|
||||
done
|
||||
|
||||
npx rollup public/js/adapptlet.js --file $1/adapptlet.js
|
||||
npx rollup public/js/adapptext.js --file $1/adapptext.js
|
||||
|
||||
cp public/assets/joyceExample.png $1/assets
|
||||
fi
|
||||
|
||||
# Wrap it all up
|
||||
cd $1
|
||||
zip -r ../$1 *
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue