diff --git a/.github/workflows/develop_release.yml b/.github/workflows/develop_release.yml new file mode 100644 index 0000000..91c7213 --- /dev/null +++ b/.github/workflows/develop_release.yml @@ -0,0 +1,43 @@ +name: Deploy in Develop + +on: + push: + branches: + - develop + +jobs: + release: + runs-on: ubuntu-latest + permissions: + actions: write + contents: read + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + registry-url: https://registry.npmjs.org/ + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Build Demo Website + run: npm run build:demo + + - name: Create robots.txt for development + run: 'echo -e "User-agent: *\nDisallow: /" > ./dist-demo/robots.txt' + + - name: Deploy TODOvue UI Develop + uses: SamKirkland/FTP-Deploy-Action@v4.3.4 + with: + server: ${{ secrets.FTP_SERVER }} + username: ${{ secrets.FTP_USERNAME }} + password: ${{ secrets.FTP_PASSWORD }} + local-dir: ./dist-demo/ + server-dir: ${{ secrets.FTP_DIR_DEVELOP }} + dangerous-clean-slate: true diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d57974..d952cc3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,16 @@ All notable changes to `@todovue/tv-ui` will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.0.0] - 2026-01-30 + +### Dependencies +- Updated `@todovue/tv-progress-bar` to version `1.1.2`. +- Updated `@todovue/tv-toc` to version `1.2.0`. +- Updated `@todovue/tv-footer` to version `1.1.2`. +- Updated `@todovue/tv-menu` to version `1.1.5`. +- Updated `@todovue/tv-article` to version `1.3.5`. +- Updated `@todovue/tv-scroll-top` to version `1.0.4`. + ## [0.1.3] - 2026-01-28 ### Changed @@ -33,6 +43,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of `@todovue/tv-ui`. +[1.0.0]: https://github.com/TODOvue/tv-ui/pull/5/changes [0.1.3]: https://github.com/TODOvue/tv-ui/pull/4/changes [0.1.2]: https://github.com/TODOvue/tv-ui/pull/3/changes [0.1.1]: https://github.com/TODOvue/tv-ui/pull/2/changes diff --git a/package-lock.json b/package-lock.json index 0bb397c..216fbce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,25 +10,25 @@ "license": "MIT", "dependencies": { "@todovue/tv-alert": "^1.2.1", - "@todovue/tv-article": "^1.3.4", + "@todovue/tv-article": "^1.3.5", "@todovue/tv-breadcrumbs": "^1.1.4", "@todovue/tv-button": "^1.2.6", "@todovue/tv-card": "^1.1.4", "@todovue/tv-demo": "^1.4.11", - "@todovue/tv-footer": "^1.1.1", + "@todovue/tv-footer": "^1.1.2", "@todovue/tv-hero": "^1.2.1", "@todovue/tv-label": "^1.2.4", - "@todovue/tv-menu": "^1.1.4", + "@todovue/tv-menu": "^1.1.5", "@todovue/tv-modal": "^1.2.1", "@todovue/tv-pagination": "^1.1.4", - "@todovue/tv-progress-bar": "^1.1.1", + "@todovue/tv-progress-bar": "^1.1.2", "@todovue/tv-relative-time": "^1.3.1", - "@todovue/tv-scroll-top": "^1.0.3", + "@todovue/tv-scroll-top": "^1.0.4", "@todovue/tv-search": "^1.2.1", "@todovue/tv-settings": "^1.0.4", "@todovue/tv-sidebar": "^2.2.2", "@todovue/tv-theme-button": "^1.2.1", - "@todovue/tv-toc": "^1.1.1", + "@todovue/tv-toc": "^1.2.0", "highlight.js": "^11.11.1", "markdown-it": "^13.0.2", "vue-router": "^4.6.4" @@ -1439,9 +1439,9 @@ } }, "node_modules/@todovue/tv-article": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@todovue/tv-article/-/tv-article-1.3.4.tgz", - "integrity": "sha512-oBCFbsazY0HetWrd1bP81TlLpdpbIkZ+Tak/Cfopu1MlKqQ9rH0eufuRmLKLsZHAP/kEn4d4KptkvfShcoWqaA==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@todovue/tv-article/-/tv-article-1.3.5.tgz", + "integrity": "sha512-RdoJoTrCk1aY/4mwM/OwgOGOq6FGLkNqnYIDUkhnVrBPa/ulsDGDu1J54m/efi1/aH/LbogiN3sEsMif8QwMgA==", "license": "MIT", "dependencies": { "@todovue/tv-alert": "^1.2.1", @@ -1516,9 +1516,9 @@ } }, "node_modules/@todovue/tv-footer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@todovue/tv-footer/-/tv-footer-1.1.1.tgz", - "integrity": "sha512-sEHwpci7ICeLg/+MzOEgRwlA5Y/HFWZNiUi26ESvU1jBMvnVFTZzgF4+R/bjjybYJk98dF/mpu/L+syaCwxjNw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@todovue/tv-footer/-/tv-footer-1.1.2.tgz", + "integrity": "sha512-romVNnAk2R3Zsu/xG+d/8gBfDU+UdOkmezfFkP/F0Vur/6IYOPGCNaR3yMkHuX315Rqv0UBC9GxmXxPblaxfzw==", "license": "MIT", "engines": { "node": ">=20.19.0" @@ -1555,9 +1555,9 @@ } }, "node_modules/@todovue/tv-menu": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@todovue/tv-menu/-/tv-menu-1.1.4.tgz", - "integrity": "sha512-mGUTZhQKX6YaWog2gkPr0+qJPR5XuE/FmJsTwOQL8+MxctoabyhmjzJzOUtZFWjh4tCnz725CNil6bPozYlIZQ==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@todovue/tv-menu/-/tv-menu-1.1.5.tgz", + "integrity": "sha512-7H9JW1dttA1KAXDo9KQKB+cmWmtRcJLaw6mYITIzFeIYJXX+uXBoXcqzU/o64sdpCnElzOm6m0+5bTCOYIxgHw==", "license": "MIT", "dependencies": { "@todovue/tv-search": "^1.2.1" @@ -1600,9 +1600,9 @@ } }, "node_modules/@todovue/tv-progress-bar": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@todovue/tv-progress-bar/-/tv-progress-bar-1.1.1.tgz", - "integrity": "sha512-HJOp9fJp4Pp1wpPzgK9VPx6IK8lfyHKXfvtbfQQRYh4nydBxARjPc0SuTPJ/jkEcv39ZyF49G4ODnFwcyz7m3Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@todovue/tv-progress-bar/-/tv-progress-bar-1.1.2.tgz", + "integrity": "sha512-PeAZpb0lMn1g2SVOoylBfckdiyO8QWZyF9MMgUhOJHL56gLJIMf2mRtYvWOr5GspL2lgSX6ohK/8Jif1sc9c6w==", "license": "MIT", "engines": { "node": ">=20.19.0" @@ -1624,9 +1624,9 @@ } }, "node_modules/@todovue/tv-scroll-top": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@todovue/tv-scroll-top/-/tv-scroll-top-1.0.3.tgz", - "integrity": "sha512-K1nMDsRTe/3ES8B2YJNyT38u49XX/IYuKAO0B6Ca0OM0Jf77qOGMOpdhMU2zNWLVCgVZHV6vb0K/FTbmCZnjRQ==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@todovue/tv-scroll-top/-/tv-scroll-top-1.0.4.tgz", + "integrity": "sha512-QOat7LvmZwtDAa4Lx0TfcC0KgDYLsPHUZ+ZvoxMdSEgTON1FcLhYKcuj0jgrzfijzSbzjisFJU8vEmfOlC0uJw==", "license": "MIT", "engines": { "node": ">=20.19.0" @@ -1690,9 +1690,9 @@ } }, "node_modules/@todovue/tv-toc": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@todovue/tv-toc/-/tv-toc-1.1.1.tgz", - "integrity": "sha512-4kXtzm3z1M9nBX57Yqn7Vfxm3s436vMmMH8rvX11XOcCQCPt+Rr+qBxIrEaMe+1Hw/n2mL5RcqKQXPgMLnHNdA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@todovue/tv-toc/-/tv-toc-1.2.0.tgz", + "integrity": "sha512-u61uONIa7Be/RkZ21+GrgbX6lPEobiApnEwD1FSG5Z0x8xVSDEVznnzxVUr96DzzmhThrIOlZpLN04+cEm50pg==", "license": "MIT", "engines": { "node": ">=20.19.0" diff --git a/package.json b/package.json index 2a8339c..a1feec7 100644 --- a/package.json +++ b/package.json @@ -68,25 +68,25 @@ }, "dependencies": { "@todovue/tv-alert": "^1.2.1", - "@todovue/tv-article": "^1.3.4", + "@todovue/tv-article": "^1.3.5", "@todovue/tv-breadcrumbs": "^1.1.4", "@todovue/tv-button": "^1.2.6", "@todovue/tv-card": "^1.1.4", "@todovue/tv-demo": "^1.4.11", - "@todovue/tv-footer": "^1.1.1", + "@todovue/tv-footer": "^1.1.2", "@todovue/tv-hero": "^1.2.1", "@todovue/tv-label": "^1.2.4", - "@todovue/tv-menu": "^1.1.4", + "@todovue/tv-menu": "^1.1.5", "@todovue/tv-modal": "^1.2.1", "@todovue/tv-pagination": "^1.1.4", - "@todovue/tv-progress-bar": "^1.1.1", + "@todovue/tv-progress-bar": "^1.1.2", "@todovue/tv-relative-time": "^1.3.1", - "@todovue/tv-scroll-top": "^1.0.3", + "@todovue/tv-scroll-top": "^1.0.4", "@todovue/tv-search": "^1.2.1", "@todovue/tv-settings": "^1.0.4", "@todovue/tv-sidebar": "^2.2.2", "@todovue/tv-theme-button": "^1.2.1", - "@todovue/tv-toc": "^1.1.1", + "@todovue/tv-toc": "^1.2.0", "highlight.js": "^11.11.1", "markdown-it": "^13.0.2", "vue-router": "^4.6.4" diff --git a/public/demos/tv-article/CHANGELOG.md b/public/demos/tv-article/CHANGELOG.md index dfe1200..cdf5b1f 100644 --- a/public/demos/tv-article/CHANGELOG.md +++ b/public/demos/tv-article/CHANGELOG.md @@ -5,6 +5,13 @@ All notable changes to `@todovue/tv-article` will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.3.5] - 2026-01-30 + +### Changed +- Adjusted the article container to use full-width and inline-block display properties. +- Removed the media query that adjusted button opacity on mobile devices. +- Reduced the padding for code blocks within articles to use smaller spacing. + ## [1.3.4] - 2026-01-27 ### Changed @@ -205,6 +212,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Build artifacts: ESM/CJS bundles and type definitions in `dist/`. - Integrations: `@todovue/tv-label` for tags and `@todovue/tv-relative-time` for dates. +[1.3.5]: https://github.com/TODOvue/tv-article/pull/15/files [1.3.4]: https://github.com/TODOvue/tv-article/pull/14/files [1.3.3]: https://github.com/TODOvue/tv-article/pull/14/files [1.3.2]: https://github.com/TODOvue/tv-article/pull/13/files diff --git a/public/demos/tv-article/README.md b/public/demos/tv-article/README.md index 6e8e2e3..176c2a6 100644 --- a/public/demos/tv-article/README.md +++ b/public/demos/tv-article/README.md @@ -104,7 +104,7 @@ Create a plugin file: `plugins/tv-article.client.ts` (or without suffix; SSR-saf // nuxt.config.ts export default defineNuxtConfig({ modules: [ - '@todovue/tv-card/nuxt' + '@todovue/tv-article/nuxt' ] }) ``` diff --git a/public/demos/tv-footer/CHANGELOG.md b/public/demos/tv-footer/CHANGELOG.md index 4b2e545..5e479fa 100644 --- a/public/demos/tv-footer/CHANGELOG.md +++ b/public/demos/tv-footer/CHANGELOG.md @@ -5,6 +5,14 @@ All notable changes to `@todovue/tv-footer` will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.1.2] - 2026-01-30 + +### Added +- Implemented event handling for link clicks within the footer component. + +### Changed +- Applied a maximum width constraint to the footer section to improve layout consistency and readability. + ## [1.1.1] - 2026-01-27 ### Changed @@ -62,6 +70,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Backdrop blur effect on social icons - Comprehensive documentation and examples +[1.1.2]: https://github.com/TODOvue/tv-footer/pull/4/files [1.1.1]: https://github.com/TODOvue/tv-footer/pull/3/files [1.1.0]: https://github.com/TODOvue/tv-footer/pull/2/files [1.0.0]: https://github.com/TODOvue/tv-footer/pull/1/files diff --git a/public/demos/tv-menu/CHANGELOG.md b/public/demos/tv-menu/CHANGELOG.md index cd62510..257e63d 100644 --- a/public/demos/tv-menu/CHANGELOG.md +++ b/public/demos/tv-menu/CHANGELOG.md @@ -5,6 +5,11 @@ All notable changes to `@todovue/tv-menu` will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.1.5] - 2026-01-30 + +### Changed +- Removed transform and padding adjustments for the button active state. + ## [1.1.4] - 2026-01-27 ### Changed @@ -134,6 +139,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Vite build configuration with CSS injection - Demo playground with example implementations +[1.1.5]: https://github.com/TODOvue/tv-menu/pull/10/files [1.1.4]: https://github.com/TODOvue/tv-menu/pull/9/files [1.1.3]: https://github.com/TODOvue/tv-menu/pull/8/files [1.1.2]: https://github.com/TODOvue/tv-menu/pull/7/files diff --git a/public/demos/tv-progress-bar/CHANGELOG.md b/public/demos/tv-progress-bar/CHANGELOG.md index 4e47387..24d7a65 100644 --- a/public/demos/tv-progress-bar/CHANGELOG.md +++ b/public/demos/tv-progress-bar/CHANGELOG.md @@ -5,6 +5,14 @@ All notable changes to `@todovue/tv-progress-bar` will be documented in this fil The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.1.2] - 2026-01-29 + +### Fixed +- Corrected floating label positioning calculations to ensure proper alignment within input fields. + +### Added +- Introduced a loader mode with a `modelValue` prop to allow for external control of progress state. + ## [1.1.1] - 2026-01-27 ### Changed @@ -79,6 +87,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Comprehensive documentation and usage examples - Demo playground with multiple configuration examples +[1.1.2]: https://github.com/TODOvue/tv-progress-bar/pull/4/files [1.1.1]: https://github.com/TODOvue/tv-progress-bar/pull/3/files [1.1.0]: https://github.com/TODOvue/tv-progress-bar/pull/2/files [1.0.0]: https://github.com/TODOvue/tv-progress-bar/pull/1/files diff --git a/public/demos/tv-progress-bar/README.md b/public/demos/tv-progress-bar/README.md index eb22975..e744cc2 100644 --- a/public/demos/tv-progress-bar/README.md +++ b/public/demos/tv-progress-bar/README.md @@ -212,6 +212,7 @@ import { TvProgressBar } from '@todovue/tv-progress-bar' | showLabel | Boolean | false | Whether to show the percentage label. | | labelPosition | String | 'inside' | Label position: 'inside' or 'floating'. | | checkpoints | Array | [] | Array of numbers (0-100) to show indicators on the bar. | +| modelValue | Number | null | Sets the progress manually (0-100). Overrides scroll tracking. | ### Prop Details @@ -722,6 +723,38 @@ const articleContainer = ref(null) + +### Loader Mode +Use the `modelValue` prop to manually control the progress, making it function like a loader. + +```vue + + + +``` ``` ### Conditional Rendering diff --git a/public/demos/tv-scroll-top/CHANGELOG.md b/public/demos/tv-scroll-top/CHANGELOG.md index 3234079..476d221 100644 --- a/public/demos/tv-scroll-top/CHANGELOG.md +++ b/public/demos/tv-scroll-top/CHANGELOG.md @@ -5,6 +5,11 @@ All notable changes to `@todovue/tv-scroll-top` will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.0.4] - 2026-01-30 + +### Changed +- Removed the unnecessary visibility toggle functionality during page scrolling. + ## [1.0.3] - 2026-01-27 ### Changed @@ -64,6 +69,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - CommonJS build for compatibility - Comprehensive documentation and examples +[1.0.4]: https://github.com/TODOvue/tv-scroll-top/pull/4/files [1.0.3]: https://github.com/TODOvue/tv-scroll-top/pull/3/files [1.0.2]: https://github.com/TODOvue/tv-scroll-top/pull/2/files [1.0.0]: https://github.com/TODOvue/tv-scroll-top/pull/1/files diff --git a/public/demos/tv-toc/CHANGELOG.md b/public/demos/tv-toc/CHANGELOG.md index c0cb26f..944a2b1 100644 --- a/public/demos/tv-toc/CHANGELOG.md +++ b/public/demos/tv-toc/CHANGELOG.md @@ -5,6 +5,14 @@ All notable changes to `@todovue/tv-toc` will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.2.0] - 2026-01-30 + +### Added +- Added a compact mode option to the Table of Contents component. + +### Changed +- Updated the visual styles for the Table of Contents component. + ## [1.1.1] - 2026-01-27 ### Changed @@ -73,6 +81,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Minimal default styles and BEM-like CSS classes for easy customization. - Vite demo with basic and blog-like TOC examples. +[1.2.0]: https://github.com/TODOvue/tv-toc/pull/6/files [1.1.1]: https://github.com/TODOvue/tv-toc/pull/5/files [1.1.0]: https://github.com/TODOvue/tv-toc/pull/4/files [1.0.2]: https://github.com/TODOvue/tv-toc/pull/3/files diff --git a/public/demos/tv-toc/README.md b/public/demos/tv-toc/README.md index 3d40fc6..028f1d8 100644 --- a/public/demos/tv-toc/README.md +++ b/public/demos/tv-toc/README.md @@ -177,6 +177,7 @@ import { TvToc } from '@todovue/tv-toc' | marker | Boolean | `false` | Whether to display a visual marker for the active item. | `false` | | collapsible | Boolean | `false` | Whether sublists can be collapsed/expanded. | `false` | | activeClass | String | `'active'` | Custom CSS class for the active item. | `false` | +| compact | Boolean | `false` | Applies a compact style similar to Nuxt Content's TOC. | `false` | | observerOptions | Object | `{}` | options to pass to the IntersectionObserver (rootMargin, threshold, etc). | `false` | ### `toc` shape diff --git a/src/views/Home.vue b/src/views/Home.vue index aeee70c..f8c5874 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -86,7 +86,7 @@ const searchQuery = (query) => {