Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| dbf156311e | |||
| cd5585afea | |||
| b3138b437e | |||
| c6259cfa62 | |||
| 8ea2b560a5 | |||
| 60aef4cc01 | |||
| 692752fb30 | |||
| a5e940b003 | |||
| e9ccd5ffb0 | |||
| c57978c228 | |||
| f0aa4b92c6 | |||
| 503efc10fc | |||
| 0b80dbf999 | |||
| ce2208f1b2 | |||
| 44dd2a659a | |||
| c2b3d7dc3c |
110
.github/workflows/build.yaml
vendored
110
.github/workflows/build.yaml
vendored
@@ -1,53 +1,57 @@
|
|||||||
name: Publish Library
|
name: Publish Library
|
||||||
run-name: Publish Library
|
run-name: Publish Library
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
name: Build NPM Project
|
name: Build NPM Project
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container: node:alpine
|
container: node:alpine
|
||||||
steps:
|
steps:
|
||||||
- name: Clone Repository
|
- name: Clone Repository
|
||||||
uses: ztimson/actions/clone@develop
|
uses: ztimson/actions/clone@develop
|
||||||
|
|
||||||
- name: Install & Build
|
- name: Install & Build
|
||||||
run: npm i && npm run build
|
run: npm i && npm run build
|
||||||
|
|
||||||
- name: Upload to Registry
|
- name: Publish Library
|
||||||
uses: ztimson/actions/npm/publish@develop
|
run: |
|
||||||
|
if [ "${{github.ref_name}}" = "master" ]; then
|
||||||
- name: Upload to NPM
|
REGISTRY="${{github.server_url}}/api/packages/${{github.repository_owner}}/npm/"
|
||||||
uses: ztimson/actions/npm/publish@develop
|
npm set registry "$REGISTRY"
|
||||||
with:
|
npm set $(echo $REGISTRY | sed s%http:%% | sed s%https:%% ):_authToken "${{secrets.DEPLOY_TOKEN}}"
|
||||||
owner: ztimson
|
npm publish || echo "Failed to publish"
|
||||||
registry: https://registry.npmjs.org/
|
|
||||||
token: ${{secrets.NPM_TOKEN}}
|
REGISTRY="https://registry.npmjs.org/"
|
||||||
tag:
|
npm set registry "$REGISTRY"
|
||||||
name: Tag Version
|
npm set $(echo $REGISTRY | sed s%http:%% | sed s%https:%% ):_authToken "${{secrets.NPM_TOKEN}}"
|
||||||
needs: build
|
npm publish || echo "Failed to publish"
|
||||||
if: ${{github.ref_name}} == 'release'
|
fi
|
||||||
runs-on: ubuntu-latest
|
tag:
|
||||||
container: node:alpine
|
name: Tag Version
|
||||||
steps:
|
needs: build
|
||||||
- name: Clone Repository
|
if: ${{github.ref_name}} == 'release'
|
||||||
uses: ztimson/actions/clone@develop
|
runs-on: ubuntu-latest
|
||||||
|
container: node:alpine
|
||||||
- name: Get Version Number
|
steps:
|
||||||
run: echo "VERSION=$(cat package.json | grep version | grep -Eo ':.+' | grep -Eo '[[:alnum:]\.\/\-]+')" >> $GITHUB_ENV
|
- name: Clone Repository
|
||||||
|
uses: ztimson/actions/clone@develop
|
||||||
- name: Tag Version
|
|
||||||
uses: ztimson/actions/tag@develop
|
- name: Get Version Number
|
||||||
with:
|
run: echo "VERSION=$(cat package.json | grep version | grep -Eo ':.+' | grep -Eo '[[:alnum:]\.\/\-]+')" >> $GITHUB_ENV
|
||||||
tag: ${{env.VERSION}}
|
|
||||||
|
- name: Tag Version
|
||||||
docs:
|
uses: ztimson/actions/tag@develop
|
||||||
name: Publish CDN & Docs
|
with:
|
||||||
needs: build
|
tag: ${{env.VERSION}}
|
||||||
uses: ztimson/actions/.github/workflows/docker.yaml@develop
|
|
||||||
with:
|
docs:
|
||||||
name: ztimson/css-utils
|
name: Publish CDN & Docs
|
||||||
repository: ${{github.server_url}}/${{github.repository}}.git
|
needs: build
|
||||||
pass: ${{secrets.DEPLOY_TOKEN}}
|
uses: ztimson/actions/.github/workflows/docker.yaml@develop
|
||||||
|
with:
|
||||||
|
name: ztimson/node-utils
|
||||||
|
repository: ${{github.server_url}}/${{github.repository}}.git
|
||||||
|
pass: ${{secrets.DEPLOY_TOKEN}}
|
||||||
|
|||||||
2114
package-lock.json
generated
2114
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
20
package.json
20
package.json
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@ztimson/node-utils",
|
"name": "@ztimson/node-utils",
|
||||||
"version": "1.0.1",
|
"version": "1.0.7",
|
||||||
"description": "CSS Utility Classes",
|
"description": "CSS Utility Classes",
|
||||||
"author": "ztimson",
|
"author": "ztimson",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
@@ -10,27 +10,25 @@
|
|||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git.zakscode.com:ztimson/node-utils"
|
"url": "git.zakscode.com:ztimson/node-utils"
|
||||||
},
|
},
|
||||||
"main": "./dist/index.cjs",
|
"type": "module",
|
||||||
"module": "./dist/index.mjs",
|
"main": "./dist/index.js",
|
||||||
"types": "./dist/index.d.ts",
|
"types": "./dist/index.d.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
".": {
|
".": {
|
||||||
"types": "./dist/index.d.ts",
|
"types": "./dist/index.d.ts",
|
||||||
"import": "./dist/index.mjs",
|
"default": "./dist/index.js"
|
||||||
"require": "./dist/index.cjs"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "npx tsc && npx vite build",
|
"build": "tsc",
|
||||||
"docs": "typedoc --cleanOutputDir false --out ./docs --entryPoints src/**/*.ts --readme none",
|
"docs": "typedoc --cleanOutputDir false --out ./docs --entryPoints src/**/*.ts --readme none",
|
||||||
"watch": "npx vite build --watch"
|
"watch": "tsc --watch"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/node": "^24.0.0",
|
"@types/node": "^24.10.4",
|
||||||
|
"tsx": "^4.21.0",
|
||||||
"typedoc": "^0.28.5",
|
"typedoc": "^0.28.5",
|
||||||
"typescript": "^5.8.3",
|
"typescript": "^5.9.3"
|
||||||
"vite": "^6.3.5",
|
|
||||||
"vite-plugin-dts": "^4.5.4"
|
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"dist"
|
"dist"
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import {exec, execSync} from 'child_process';
|
import {exec, execSync} from 'node:child_process';
|
||||||
|
|
||||||
export function $(str: TemplateStringsArray, ...args: string[]): Promise<string> {
|
export function $(str: TemplateStringsArray, ...args: string[]): Promise<string> {
|
||||||
let cmd = str.reduce((acc, part, i) => acc + part + (args[i] || ''), '');
|
let cmd = str.reduce((acc, part, i) => acc + part + (args[i] || ''), '');
|
||||||
return new Promise((res, rej) => exec(cmd, (err, stdout, stderr) => {
|
return new Promise((res, rej) => exec(cmd, (err, stdout, stderr) => {
|
||||||
if(err || stderr) return rej(err || stderr);
|
if(err) return rej(stderr || err);
|
||||||
return res(stdout);
|
return res(stdout?.trim() || stderr?.trim());
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
export * from './cli';
|
export * from './cli.js';
|
||||||
export * from './input';
|
export * from './input.js';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import readline from 'node:readline';
|
import readline from 'readline';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retrieve input from the CLI
|
* Retrieve input from the CLI
|
||||||
|
|||||||
@@ -1,20 +1,18 @@
|
|||||||
{
|
{
|
||||||
"include": ["src"],
|
"include": ["src"],
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"target": "ESNext",
|
"target": "ES2022",
|
||||||
"useDefineForClassFields": true,
|
|
||||||
"module": "NodeNext",
|
"module": "NodeNext",
|
||||||
"lib": ["ESNext"],
|
"lib": ["ES2022"],
|
||||||
"skipLibCheck": true,
|
"skipLibCheck": true,
|
||||||
|
|
||||||
/* Bundler mode */
|
|
||||||
"moduleResolution": "NodeNext",
|
"moduleResolution": "NodeNext",
|
||||||
"resolveJsonModule": true,
|
"resolveJsonModule": true,
|
||||||
"isolatedModules": true,
|
|
||||||
"declaration": true,
|
"declaration": true,
|
||||||
"noEmit": true,
|
"declarationMap": true,
|
||||||
|
"outDir": "./dist",
|
||||||
/* Linting */
|
"rootDir": "./src",
|
||||||
|
"esModuleInterop": true,
|
||||||
|
"forceConsistentCasingInFileNames": true,
|
||||||
"strict": true
|
"strict": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
import {resolve} from 'path';
|
|
||||||
import {defineConfig} from 'vite';
|
|
||||||
import dts from 'vite-plugin-dts';
|
|
||||||
|
|
||||||
export default defineConfig({
|
|
||||||
build: {
|
|
||||||
lib: {
|
|
||||||
entry: resolve(process.cwd(), 'src/index.ts'),
|
|
||||||
name: 'node-utils',
|
|
||||||
fileName: (format: string) => format === 'es' ? 'index.mjs' : 'index.cjs'
|
|
||||||
},
|
|
||||||
rollupOptions: {
|
|
||||||
external: [
|
|
||||||
'child_process',
|
|
||||||
'readline'
|
|
||||||
],
|
|
||||||
},
|
|
||||||
emptyOutDir: true,
|
|
||||||
minify: false,
|
|
||||||
sourcemap: true
|
|
||||||
},
|
|
||||||
plugins: [dts()],
|
|
||||||
});
|
|
||||||
Reference in New Issue
Block a user