mirror of
https://github.com/pezkuwichain/pezkuwi-apps.git
synced 2026-04-21 23:37:57 +00:00
311 lines
12 KiB
Bash
Executable File
311 lines
12 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# PezkuwiChain Apps Rebrand Script
|
|
# Converts polkadot-apps to pezkuwi-apps
|
|
|
|
set -e
|
|
|
|
APPS_DIR="/home/mamostehp/pezkuwi-apps"
|
|
|
|
echo "=== PezkuwiChain Apps Rebrand Script ==="
|
|
echo ""
|
|
|
|
# Step 1: Update package names in all package.json files
|
|
echo "[1/6] Updating package.json files..."
|
|
|
|
# Root package.json
|
|
sed -i 's/"name": "polkadot-apps"/"name": "pezkuwi-apps"/g' "$APPS_DIR/package.json"
|
|
sed -i 's|https://github.com/polkadot-js/apps|https://github.com/pezkuwichain/pezkuwi-apps|g' "$APPS_DIR/package.json"
|
|
sed -i 's|An Apps portal into the Polkadot network|An Apps portal into the Pezkuwi network|g' "$APPS_DIR/package.json"
|
|
|
|
# Update all @polkadot dependencies to @pezkuwi in package.json files
|
|
find "$APPS_DIR" -name "package.json" -type f ! -path "*/node_modules/*" | while read file; do
|
|
# Package names: @polkadot-apps/* -> @pezkuwi/*
|
|
sed -i 's/@polkadot-apps\//@pezkuwi\//g' "$file"
|
|
|
|
# Dependencies: @polkadot/* -> @pezkuwi/*
|
|
sed -i 's/"@polkadot\//"@pezkuwi\//g' "$file"
|
|
|
|
# URLs
|
|
sed -i 's|polkadot-js/apps|pezkuwichain/pezkuwi-apps|g' "$file"
|
|
sed -i 's|polkadot-js|pezkuwichain|g' "$file"
|
|
done
|
|
|
|
echo " Package.json files updated."
|
|
|
|
# Step 2: Update TypeScript/JavaScript imports
|
|
echo "[2/6] Updating TypeScript/JavaScript imports..."
|
|
|
|
find "$APPS_DIR/packages" -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.jsx" \) ! -path "*/node_modules/*" | while read file; do
|
|
# @polkadot/* imports -> @pezkuwi/*
|
|
sed -i "s|from '@polkadot/|from '@pezkuwi/|g" "$file"
|
|
sed -i "s|from \"@polkadot/|from \"@pezkuwi/|g" "$file"
|
|
|
|
# @polkadot-apps/* imports -> @pezkuwi/*
|
|
sed -i "s|from '@polkadot-apps/|from '@pezkuwi/|g" "$file"
|
|
sed -i "s|from \"@polkadot-apps/|from \"@pezkuwi/|g" "$file"
|
|
|
|
# require('@polkadot/*') -> require('@pezkuwi/*')
|
|
sed -i "s|require('@polkadot/|require('@pezkuwi/|g" "$file"
|
|
sed -i "s|require(\"@polkadot/|require(\"@pezkuwi/|g" "$file"
|
|
done
|
|
|
|
echo " TypeScript/JavaScript imports updated."
|
|
|
|
# Step 3: Terminology replacements
|
|
echo "[3/6] Applying terminology replacements..."
|
|
|
|
find "$APPS_DIR" -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.jsx" -o -name "*.json" -o -name "*.md" -o -name "*.html" -o -name "*.css" -o -name "*.scss" \) ! -path "*/node_modules/*" | while read file; do
|
|
# Case-sensitive replacements
|
|
sed -i 's/Polkadot/Pezkuwi/g' "$file"
|
|
sed -i 's/polkadot/pezkuwi/g' "$file"
|
|
sed -i 's/POLKADOT/PEZKUWI/g' "$file"
|
|
|
|
# Kusama -> Dicle
|
|
sed -i 's/Kusama/Dicle/g' "$file"
|
|
sed -i 's/kusama/dicle/g' "$file"
|
|
sed -i 's/KUSAMA/DICLE/g' "$file"
|
|
|
|
# Westend -> Zagros
|
|
sed -i 's/Westend/Zagros/g' "$file"
|
|
sed -i 's/westend/zagros/g' "$file"
|
|
sed -i 's/WESTEND/ZAGROS/g' "$file"
|
|
|
|
# Rococo -> PezkuwiChain (test network)
|
|
sed -i 's/Rococo/PezkuwiChain/g' "$file"
|
|
sed -i 's/rococo/pezkuwichain/g' "$file"
|
|
sed -i 's/ROCOCO/PEZKUWICHAIN/g' "$file"
|
|
|
|
# DOT -> HEZ
|
|
sed -i 's/\bDOT\b/HEZ/g' "$file"
|
|
|
|
# WND -> ZGR (Westend token)
|
|
sed -i 's/\bWND\b/ZGR/g' "$file"
|
|
|
|
# ROC -> TYR (Rococo token)
|
|
sed -i 's/\bROC\b/TYR/g' "$file"
|
|
|
|
# KSM -> DCL (Kusama token -> Dicle)
|
|
sed -i 's/\bKSM\b/DCL/g' "$file"
|
|
|
|
# Substrate -> Bizinikiwi
|
|
sed -i 's/Substrate/Bizinikiwi/g' "$file"
|
|
sed -i 's/substrate/bizinikiwi/g' "$file"
|
|
sed -i 's/SUBSTRATE/BIZINIKIWI/g' "$file"
|
|
|
|
# Parachain -> Teyrchain
|
|
sed -i 's/Parachain/Teyrchain/g' "$file"
|
|
sed -i 's/parachain/teyrchain/g' "$file"
|
|
sed -i 's/PARACHAIN/TEYRCHAIN/g' "$file"
|
|
|
|
# Paseo -> remove or comment (Parity test network)
|
|
# We'll keep Paseo references for now but they can be cleaned up later
|
|
done
|
|
|
|
echo " Terminology replacements applied."
|
|
|
|
# Step 4: Update URLs and domains
|
|
echo "[4/6] Updating URLs and domains..."
|
|
|
|
find "$APPS_DIR" -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.jsx" -o -name "*.json" -o -name "*.md" -o -name "*.html" -o -name "*.cjs" -o -name "*.mjs" \) ! -path "*/node_modules/*" | while read file; do
|
|
# polkadot.js.org -> pezkuwichain.app
|
|
sed -i 's|polkadot.js.org|pezkuwichain.app|g' "$file"
|
|
|
|
# apps.pezkuwichain.io -> pezkuwichain.app
|
|
sed -i 's|apps.pezkuwichain.io|pezkuwichain.app|g' "$file"
|
|
|
|
# pezkuwichain.io -> pezkuwichain.io
|
|
sed -i 's|pezkuwichain.io|pezkuwichain.io|g' "$file"
|
|
|
|
# kusama.network -> dicle.pezkuwichain.io
|
|
sed -i 's|kusama.network|dicle.pezkuwichain.io|g' "$file"
|
|
|
|
# GitHub URLs
|
|
sed -i 's|github.com/polkadot-js|github.com/pezkuwichain|g' "$file"
|
|
sed -i 's|github.com/paritytech|github.com/pezkuwichain|g' "$file"
|
|
done
|
|
|
|
echo " URLs and domains updated."
|
|
|
|
# Step 5: Rename files with polkadot/kusama in names
|
|
echo "[5/6] Renaming files..."
|
|
|
|
# Find and rename files
|
|
cd "$APPS_DIR"
|
|
find . -type f -name "*polkadot*" ! -path "*/node_modules/*" | while read file; do
|
|
newname=$(echo "$file" | sed 's/polkadot/pezkuwi/g')
|
|
if [ "$file" != "$newname" ]; then
|
|
mkdir -p "$(dirname "$newname")"
|
|
mv "$file" "$newname" 2>/dev/null || true
|
|
fi
|
|
done
|
|
|
|
find . -type f -name "*kusama*" ! -path "*/node_modules/*" | while read file; do
|
|
newname=$(echo "$file" | sed 's/kusama/dicle/g')
|
|
if [ "$file" != "$newname" ]; then
|
|
mkdir -p "$(dirname "$newname")"
|
|
mv "$file" "$newname" 2>/dev/null || true
|
|
fi
|
|
done
|
|
|
|
find . -type f -name "*westend*" ! -path "*/node_modules/*" | while read file; do
|
|
newname=$(echo "$file" | sed 's/westend/zagros/g')
|
|
if [ "$file" != "$newname" ]; then
|
|
mkdir -p "$(dirname "$newname")"
|
|
mv "$file" "$newname" 2>/dev/null || true
|
|
fi
|
|
done
|
|
|
|
find . -type f -name "*rococo*" ! -path "*/node_modules/*" | while read file; do
|
|
newname=$(echo "$file" | sed 's/rococo/pezkuwichain/g')
|
|
if [ "$file" != "$newname" ]; then
|
|
mkdir -p "$(dirname "$newname")"
|
|
mv "$file" "$newname" 2>/dev/null || true
|
|
fi
|
|
done
|
|
|
|
echo " Files renamed."
|
|
|
|
# Step 6: Update resolutions in root package.json with @pezkuwi versions
|
|
echo "[6/6] Updating package.json resolutions..."
|
|
|
|
cat > "$APPS_DIR/package.json" << 'PACKAGEJSON'
|
|
{
|
|
"author": "Dijital Kurdistan Tech Institute <info@pezkuwichain.io>",
|
|
"bugs": "https://github.com/pezkuwichain/pezkuwi-apps/issues",
|
|
"description": "An Apps portal into the Pezkuwi network",
|
|
"engines": {
|
|
"node": ">=18.14"
|
|
},
|
|
"homepage": "https://github.com/pezkuwichain/pezkuwi-apps#readme",
|
|
"license": "Apache-2.0",
|
|
"name": "pezkuwi-apps",
|
|
"packageManager": "yarn@4.6.0",
|
|
"private": true,
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/pezkuwichain/pezkuwi-apps.git"
|
|
},
|
|
"sideEffects": false,
|
|
"type": "module",
|
|
"version": "1.0.0",
|
|
"versions": {
|
|
"git": "1.0.0",
|
|
"npm": "1.0.0"
|
|
},
|
|
"workspaces": [
|
|
"packages/*"
|
|
],
|
|
"main": "packages/apps-electron/build/electron.js",
|
|
"scripts": {
|
|
"analyze": "yarn clean && BUILD_ANALYZE=1 yarn run build:code && yarn source-map-explorer packages/apps/build/app.*.js",
|
|
"build": "yarn run build:i18n && yarn run build:code",
|
|
"build:before": "yarn build:images && yarn build:typesBundle",
|
|
"build:code": "NODE_ENV=production yarn pezkuwi-dev-build-ts",
|
|
"build:devElectronMain": "cd packages/apps-electron && yarn pezkuwi-exec-webpack --config webpack.main.cjs",
|
|
"build:devElectronRenderer": "cd packages/apps-electron && yarn pezkuwi-exec-webpack --config webpack.renderer.cjs",
|
|
"build:electron": "yarn clean:electronBuild && yarn build:electronMain && yarn build:electronRenderer",
|
|
"build:electronMain": "cd packages/apps-electron && NODE_ENV=production yarn pezkuwi-exec-webpack --config webpack.main.cjs",
|
|
"build:electronRenderer": "cd packages/apps-electron && NODE_ENV=production yarn pezkuwi-exec-webpack --config webpack.renderer.cjs",
|
|
"build:i18n": "i18next-scanner --config i18next-scanner.config.cjs && node ./scripts/i18nSort.cjs",
|
|
"build:images": "node scripts/imgConvert.mjs",
|
|
"build:release:electron": "yarn build && yarn build:electron && yarn postinstall:electron",
|
|
"build:release:ghpages": "yarn pezkuwi-ci-ghact-docs",
|
|
"build:release:ipfs": "node scripts/ipfsUpload.mjs",
|
|
"build:release:www": "yarn pezkuwi-ci-ghact-build && yarn build:release:ghpages && yarn build:release:ipfs",
|
|
"build:robohash": "node scripts/robohash.cjs",
|
|
"build:typesBundle": "pezkuwi-dev-run-test --env node --loader extensionless typesBundle",
|
|
"build:www": "rm -rf packages/apps/build && mkdir -p packages/apps/build && yarn run build:i18n && cd packages/apps && yarn pezkuwi-exec-webpack --config webpack.config.cjs",
|
|
"ci:chainEndpoints": "pezkuwi-dev-run-test --env node --logfile .github/chain-endpoints.md packages/apps-config/src/ci/chainEndpoints",
|
|
"ci:chainTypes": "echo ok",
|
|
"clean": "pezkuwi-dev-clean-build",
|
|
"clean:electronBuild": "cd packages/apps-electron && pezkuwi-dev-clean-build",
|
|
"clean:electronRelease": "cd packages/apps-electron && rm -rf release",
|
|
"clean:i18n": "rm -rf packages/apps/public/locales/en && mkdir -p packages/apps/public/locales/en",
|
|
"docs": "echo \"skipping docs\"",
|
|
"lint": "pezkuwi-dev-run-lint",
|
|
"packElectron": "yarn build:release:electron && yarn clean:electronRelease && electron-builder build -mwl",
|
|
"packElectron:linux": "yarn build:release:electron && electron-builder build --linux --project packages/apps-electron",
|
|
"packElectron:mac": "yarn build:release:electron && electron-builder build --mac --project packages/apps-electron",
|
|
"packElectron:test": "yarn build:release:electron && electron-builder --dir --project packages/apps-electron",
|
|
"packElectron:win": "yarn build:release:electron && electron-builder build --win --project packages/apps-electron",
|
|
"postinstall": "pezkuwi-dev-yarn-only",
|
|
"postinstall:electron": "electron-builder install-app-deps",
|
|
"start": "yarn clean && cd packages/apps && yarn pezkuwi-exec-webpack serve --config webpack.serve.cjs --port 3000",
|
|
"start:electron": "yarn clean:electronBuild && concurrently 'yarn build:devElectronMain && cd packages/apps-electron && electron ./build/electron.js' 'yarn build:devElectronRenderer'",
|
|
"test": "pezkuwi-dev-run-test --env browser ^typesBundle ^chainEndpoints ^chainTypes ^page- ^react- ^apps-electron",
|
|
"test:all": "pezkuwi-dev-run-test --env browser ^chainEndpoints ^chainTypes",
|
|
"test:one": "pezkuwi-dev-run-test --env browser",
|
|
"test:skipped": "echo 'tests skipped'"
|
|
},
|
|
"devDependencies": {
|
|
"@crustio/crust-pin": "^1.0.0",
|
|
"@pinata/sdk": "^1.2.1",
|
|
"@pezkuwi/dev": "^0.85.2",
|
|
"@types/chart.js": "^2.9.41",
|
|
"@types/file-saver": "^2.0.7",
|
|
"@types/react-beautiful-dnd": "^13.1.7",
|
|
"@types/react-copy-to-clipboard": "^5.0.7",
|
|
"@types/react-dom": "^18.2.18",
|
|
"@types/react-router-dom": "^5.3.3",
|
|
"@types/store": "^2.0.5",
|
|
"concurrently": "^8.2.2",
|
|
"devtron": "^1.4.0",
|
|
"dnslink-cloudflare": "^3.0.0",
|
|
"electron": "28.0.0",
|
|
"electron-builder": "24.10.0",
|
|
"electron-builder-notarize": "^1.5.1",
|
|
"extensionless": "^1.9.6",
|
|
"i18next-scanner": "^4.4.0",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"react-is": "^18.2.0",
|
|
"source-map-explorer": "^2.5.3"
|
|
},
|
|
"resolutions": {
|
|
"@pezkuwi/api": "^16.5.6",
|
|
"@pezkuwi/api-augment": "^16.5.6",
|
|
"@pezkuwi/api-base": "^16.5.6",
|
|
"@pezkuwi/api-contract": "^16.5.6",
|
|
"@pezkuwi/api-derive": "^16.5.6",
|
|
"@pezkuwi/hw-ledger": "^14.0.7",
|
|
"@pezkuwi/keyring": "^14.0.7",
|
|
"@pezkuwi/networks": "^14.0.7",
|
|
"@pezkuwi/phishing": "^0.25.22",
|
|
"@pezkuwi/rpc-augment": "^16.5.6",
|
|
"@pezkuwi/rpc-core": "^16.5.6",
|
|
"@pezkuwi/rpc-provider": "^16.5.6",
|
|
"@pezkuwi/typegen": "^16.5.6",
|
|
"@pezkuwi/types": "^16.5.6",
|
|
"@pezkuwi/types-augment": "^16.5.6",
|
|
"@pezkuwi/types-codec": "^16.5.6",
|
|
"@pezkuwi/types-create": "^16.5.6",
|
|
"@pezkuwi/types-known": "^16.5.6",
|
|
"@pezkuwi/types-support": "^16.5.6",
|
|
"@pezkuwi/util": "^14.0.7",
|
|
"@pezkuwi/util-crypto": "^14.0.7",
|
|
"@pezkuwi/wasm-crypto": "^7.5.4",
|
|
"@pezkuwi/x-bigint": "^14.0.7",
|
|
"@pezkuwi/x-fetch": "^14.0.7",
|
|
"@pezkuwi/x-global": "^14.0.7",
|
|
"@pezkuwi/x-randomvalues": "^14.0.7",
|
|
"@pezkuwi/x-textdecoder": "^14.0.7",
|
|
"@pezkuwi/x-textencoder": "^14.0.7",
|
|
"@pezkuwi/x-ws": "^14.0.7",
|
|
"@zondax/ledger-substrate": "1.1.1",
|
|
"typescript": "^5.5.4"
|
|
}
|
|
}
|
|
PACKAGEJSON
|
|
|
|
echo " Resolutions updated."
|
|
|
|
echo ""
|
|
echo "=== Rebrand Phase 1 Complete ==="
|
|
echo ""
|
|
echo "Next steps:"
|
|
echo " 1. Review and fix any broken imports"
|
|
echo " 2. Update chain logos"
|
|
echo " 3. Update endpoint configurations"
|
|
echo " 4. Run yarn install and build"
|