Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
92a9220
Sync branch [skip ci]
pirate-bot Jun 24, 2026
795c113
Merge pull request #167 from Codeinwp/dependabot/composer/development…
dependabot[bot] Jun 24, 2026
5f6507c
chore(deps): bump codeinwp/themeisle-sdk from 3.3.51 to 3.3.54 (#166)
dependabot[bot] Jun 24, 2026
b2f1cf7
chore(deps-dev): bump @wordpress/scripts from 27.9.0 to 32.5.0 (#154)
dependabot[bot] Jun 24, 2026
fddc93f
chore(deps-dev): bump tailwindcss from 4.1.17 to 4.3.1 (#152)
dependabot[bot] Jun 24, 2026
b6f552d
chore(deps-dev): bump filenamify from 4.3.0 to 7.0.2 (#153)
dependabot[bot] Jun 24, 2026
932d501
chore(deps-dev): bump semantic-release from 19.0.5 to 25.0.5 (#151)
dependabot[bot] Jun 24, 2026
bc5a1de
chore(deps-dev): bump szepeviktor/phpstan-wordpress from 2.0.2 to 2.0…
dependabot[bot] Jun 24, 2026
1447cc0
chore(deps-dev): bump cssnano from 7.1.1 to 8.0.2 (#147)
dependabot[bot] Jun 24, 2026
74c3e14
chore(deps-dev): bump wp-coding-standards/wpcs from 3.2.0 to 3.3.0 (#…
dependabot[bot] Jun 24, 2026
974f24d
chore(deps-dev): bump grunt-version from 3.0.1 to 3.0.2 (#148)
dependabot[bot] Jun 24, 2026
7240420
chore(deps): bump chart.js from 4.5.0 to 4.5.1 (#146)
dependabot[bot] Jun 24, 2026
598792e
chore(deps-dev): bump replace-in-file from 7.2.0 to 8.4.0 (#150)
dependabot[bot] Jun 24, 2026
6fb02fc
chore(deps-dev): bump @wordpress/env from 10.32.0 to 11.9.0 (#145)
dependabot[bot] Jun 24, 2026
da29312
Improved chat button accessibility (#160)
girishpanchal30 Jun 24, 2026
f0160ef
fix: differentiate Chat Bubble editor placeholder text from Inline va…
Copilot Jun 25, 2026
9080da5
chore(deps-dev): bump phpstan/phpstan from 2.2.2 to 2.2.3
dependabot[bot] Jul 1, 2026
6d6ff44
chore(deps-dev): bump tailwindcss from 4.3.1 to 4.3.2
dependabot[bot] Jul 1, 2026
1628af7
chore(deps-dev): bump postcss from 8.5.15 to 8.5.16
dependabot[bot] Jul 1, 2026
74b5ef0
chore(deps-dev): bump grunt from 1.6.1 to 1.6.2
dependabot[bot] Jul 1, 2026
4e92770
chore(deps-dev): bump @wordpress/env from 11.9.0 to 11.10.0
dependabot[bot] Jul 1, 2026
53c5a04
chore(deps): bump @wordpress/icons from 10.32.0 to 15.1.0
dependabot[bot] Jul 1, 2026
5b0f74c
feat: support private and password-protected content in the Knowledge…
HardeepAsrani Jul 3, 2026
0be2e6f
feat: add OpenAI connection status indicator (#175)
HardeepAsrani Jul 3, 2026
a69e495
feat: register suggested privacy policy content (#190)
HardeepAsrani Jul 3, 2026
67e61d8
fix: decode HTML entities in page titles (#171)
HardeepAsrani Jul 3, 2026
d72ce95
feat: control chat visibility from the dashboard (#189)
HardeepAsrani Jul 3, 2026
4ab7f2c
chore(deps): bump @wordpress/icons from 10.32.0 to 15.1.0 (#188)
HardeepAsrani Jul 3, 2026
58d9347
chore(deps-dev): bump phpstan/phpstan from 2.2.2 to 2.2.3 (#181)
HardeepAsrani Jul 3, 2026
af0a5de
Merge pull request #187 from Codeinwp/dependabot/npm_and_yarn/develop…
HardeepAsrani Jul 3, 2026
46263eb
Merge pull request #183 from Codeinwp/dependabot/npm_and_yarn/develop…
HardeepAsrani Jul 3, 2026
936b31a
Merge pull request #182 from Codeinwp/dependabot/npm_and_yarn/develop…
HardeepAsrani Jul 3, 2026
7c73f6f
Merge pull request #185 from Codeinwp/dependabot/npm_and_yarn/develop…
HardeepAsrani Jul 3, 2026
ad7193d
chore(deps-dev): bump @tailwindcss/postcss from 4.1.17 to 4.3.2
dependabot[bot] Jul 3, 2026
9386380
Merge pull request #184 from Codeinwp/dependabot/npm_and_yarn/develop…
HardeepAsrani Jul 3, 2026
3652672
chore(deps-dev): bump @wordpress/scripts from 32.5.0 to 32.6.0
dependabot[bot] Jul 3, 2026
31de6a9
Merge pull request #186 from Codeinwp/dependabot/npm_and_yarn/develop…
HardeepAsrani Jul 3, 2026
0f3adba
feat: route ingestion sources through the shared pipeline
HardeepAsrani Jul 6, 2026
265c48c
feat: chat widget redesign, branding & sound/timestamp controls (#173)
HardeepAsrani Jul 6, 2026
8cbabd8
fix: index post title so title-only questions match in search (#177)
HardeepAsrani Jul 6, 2026
8ea9b7a
feat: remove moderation threshold settings (#196)
HardeepAsrani Jul 7, 2026
fc99e5f
feat: knowledge base document import base (#197)
HardeepAsrani Jul 7, 2026
693a8cf
feat: stream chat responses with automatic poll fallback (#176)
HardeepAsrani Jul 8, 2026
15ac4e8
Add reply-data filter and generic suggestion rendering (#198)
HardeepAsrani Jul 8, 2026
de49754
feat: include source page link in chat responses (#180)
HardeepAsrani Jul 8, 2026
ea08cca
feat: add privacy policy notice to chat interface (#192)
HardeepAsrani Jul 8, 2026
e7c4c60
fix: make knowledge base retrieval conversation-aware (#195)
HardeepAsrani Jul 9, 2026
65d24c8
fix: refresh selectable OpenAI models, drop incompatible GPT-3.5 (#174)
HardeepAsrani Jul 9, 2026
d8112cf
ci: add translations diff workflow for PRs (#201)
HardeepAsrani Jul 10, 2026
1e53f83
feat: role-based access to the Messages page (#194)
HardeepAsrani Jul 13, 2026
04014de
feat: add custom system prompt for the assistant (#193)
HardeepAsrani Jul 15, 2026
82a9205
Sync branch [skip ci]
pirate-bot Jul 15, 2026
2320282
feat: refresh the dashboard UI (#200)
HardeepAsrani Jul 21, 2026
697c0cd
chore: add about us page (#205)
HardeepAsrani Jul 21, 2026
c8e7417
feat: proactive chat teaser (#202)
HardeepAsrani Jul 21, 2026
65dba8d
Encrypt sensitive settings at rest (#203)
HardeepAsrani Jul 21, 2026
018a046
fix: add UTM params to copyright link
harshitarora-in Jul 22, 2026
47a1469
chore(deps): bump codeinwp/themeisle-sdk from 3.3.54 to 3.3.57 (#211)
dependabot[bot] Jul 24, 2026
8b35041
chore(deps-dev): bump wp-coding-standards/wpcs from 3.3.0 to 3.4.0 (#…
dependabot[bot] Jul 24, 2026
2201400
chore(deps-dev): bump phpstan/phpstan from 2.2.3 to 2.2.5 (#213)
dependabot[bot] Jul 24, 2026
5f4cf11
Merge pull request #210 from Codeinwp/fix/copyright-utm
harshitarora-in Jul 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .distignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ tailwind.config.js
/.wordpress-org
/.idea
/src
/patches
/bin
/tests
/phpunit.xml
Expand Down
49 changes: 0 additions & 49 deletions .eslintrc

This file was deleted.

6 changes: 6 additions & 0 deletions .github/workflows/create-buld-url.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ jobs:
run: composer install --no-dev --prefer-dist --no-progress --no-suggest
- name: Install npm deps
run: npm ci
- name: Bump the plugin version
run: |
CURRENT_VERSION=$(node -p -e "require('./package.json').version")
COMMIT_HASH=$(git rev-parse --short HEAD)
DEV_VERSION="${CURRENT_VERSION}-dev.${COMMIT_HASH}"
grunt version::${DEV_VERSION}
- name: Build files
run: npm run build
- name: Create zip
Expand Down
48 changes: 48 additions & 0 deletions .github/workflows/translations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Translations Diff

on:
pull_request_review:
pull_request:
types: [opened, edited, synchronize, ready_for_review]
branches:
- development
- main

jobs:
translation:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- name: Checkout Base Branch
uses: actions/checkout@v4
with:
ref: ${{ github.base_ref }}
path: hyve-lite-base
- name: Setup node 22
uses: actions/setup-node@v6
with:
node-version: 22.x
- name: Checkout PR Branch (Head)
uses: actions/checkout@v4
with:
path: hyve-lite-head
- name: Build POT for PR Branch
run: |
chmod +x ./hyve-lite-head/bin/make-pot.sh
./hyve-lite-head/bin/make-pot.sh ./hyve-lite-head ./hyve-lite-head/languages/hyve-lite.pot
ls ./hyve-lite-head/languages/
- name: Build POT for Base Branch
run: |
./hyve-lite-head/bin/make-pot.sh ./hyve-lite-base ./hyve-lite-base/languages/hyve-lite.pot
ls ./hyve-lite-base/languages/
- name: Compare POT files
uses: Codeinwp/action-i18n-string-reviewer@main
with:
fail-on-changes: "false"
openrouter-key: ${{ secrets.OPEN_ROUTER_API_KEY }}
openrouter-model: "google/gemini-2.5-flash"
base-pot-file: "hyve-lite-base/languages/hyve-lite.pot"
target-pot-file: "hyve-lite-head/languages/hyve-lite.pot"
github-token: ${{ secrets.BOT_TOKEN }}
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ Plugin constants are defined in `hyve-lite.php`: `HYVE_LITE_BASEFILE`, `HYVE_LIT

Four separate webpack entry points built with `@wordpress/scripts`:

1. **src/backend/** — Admin dashboard React app using `@wordpress/element` and `@wordpress/data` for state management. Components in `components/`, page sections in `parts/`.
1. **src/backend/** — Admin dashboard React app using `@wordpress/element` and `@wordpress/data` for state management. Four tab screens in `screens/` (Dashboard, KnowledgeBase, Messages, Settings), shared layout kit in `components/`, hooks in `data/`, URL routing in `router.js` (`?page=hyve&nav=<screen>&sub=<panel>&item=<id>`), shared store in `store.js`. Pro extends it through the `hyve.routes` / `hyve.slot` / `hyve.setup-steps` filters and the layout kit bridged at `window.hyveComponents.ui`.
2. **src/frontend/** — Client-facing chat widget. Vanilla JS class (`App`) — no React. Manages chat state, threads, audio, and localStorage persistence.
3. **src/block/** — Gutenberg block with two variations: inline and floating. Server-rendered via `render.php`.
4. **src/addons/** — Post list table row actions for quick knowledge base add/remove.
Expand Down
64 changes: 28 additions & 36 deletions Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,44 +2,36 @@
/* jshint node:true */
/* global require */

module.exports = function( grunt ) {
module.exports = function ( grunt ) {
grunt.loadNpmTasks( 'grunt-version' );
grunt.initConfig(
{
version: {
project: {
src: [
'package.json'
]
grunt.initConfig( {
version: {
project: {
src: [ 'package.json' ],
},
composer: {
src: [ 'composer.json' ],
},
metatag: {
options: {
prefix: 'Version:\\s*',
flags: '',
},
composer: {
src: [
'composer.json'
]
src: [ 'hyve-lite.php' ],
},
php: {
options: {
prefix: "HYVE_LITE_VERSION', '",
flags: '',
},
metatag: {
options: {
prefix: 'Version:\\s*',
flags: ''
},
src: [ 'hyve-lite.php' ]
src: [ 'hyve-lite.php' ],
},
readmetxt: {
options: {
prefix: 'Stable tag:\\s*',
},
php: {
options: {
prefix: 'HYVE_LITE_VERSION\', \'',
flags: ''
},
src: [ 'hyve-lite.php' ]
},
readmetxt: {
options: {
prefix: 'Stable tag:\\s*'
},
src: [
'readme.txt'
]
}
}
}
);
src: [ 'readme.txt' ],
},
},
} );
};
Binary file removed assets/audio/click.mp3
Binary file not shown.
Binary file added assets/images/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed assets/images/threads.png
Binary file not shown.
47 changes: 47 additions & 0 deletions bin/make-pot.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
#!/bin/bash

# Script to generate POT file via Docker
# Usage: ./bin/make-pot.sh [plugin-path] [destination-path]

# Set defaults
PLUGIN_PATH="${1:-.}"
DESTINATION="${2:-.}"

# Resolve absolute paths
PLUGIN_PATH="$(cd "$PLUGIN_PATH" 2>/dev/null && pwd)" || {
echo "Error: Plugin path '$1' does not exist"
exit 1
}

DESTINATION="$(cd "$(dirname "$DESTINATION")" 2>/dev/null && pwd)/$(basename "$DESTINATION")" || {
echo "Error: Unable to resolve destination path"
exit 1
}

# Extract destination filename and directory
DEST_DIR="$(dirname "$DESTINATION")"
DEST_FILE="$(basename "$DESTINATION")"

# Ensure destination directory exists
mkdir -p "$DEST_DIR"

echo "Generating POT file..."
echo "Plugin Path: $PLUGIN_PATH"
echo "Destination: $DESTINATION"
echo ""

# Run Docker container with wp-cli to generate POT
docker run --user root --rm \
--volume "$PLUGIN_PATH:/var/www/html/plugin" \
wordpress:cli \
bash -c 'php -d memory_limit=512M "$(which wp)" --version --allow-root && wp i18n make-pot plugin ./plugin/languages/'"$DEST_FILE"' --include=inc,build,src --allow-root --domain=hyve-lite'

# Check if the file was created inside the container
if [ $? -eq 0 ]; then
echo ""
echo "✓ POT file successfully generated at: $DESTINATION"
else
echo ""
echo "✗ Error generating POT file"
exit 1
fi
17 changes: 1 addition & 16 deletions bin/set-settings.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,7 @@
'chat_enabled' => false,
'welcome_message' => 'Hello! How can I help you today?',
'default_message' => 'Sorry, I\'m not able to help with that.',
'chat_model' => 'gpt-4o-mini',
'temperature' => 1,
'top_p' => 1,
'moderation_threshold' => [
'sexual' => 80,
'hate' => 70,
'harassment' => 70,
'self-harm' => 50,
'sexual/minors' => 50,
'hate/threatening' => 60,
'violence/graphic' => 80,
'self-harm/intent' => 50,
'self-harm/instructions' => 50,
'harassment/threatening' => 60,
'violence' => 70,
],
'chat_model' => 'gpt-5.4-nano',
];

update_option( 'hyve_settings', $settings );
11 changes: 10 additions & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,20 @@
},
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true,
"php-http/discovery": true
"php-http/discovery": true,
"cweagans/composer-patches": true
}
},
"extra": {
"patches": {
"your1/qdrant": {
"Add #[\\ReturnTypeWillChange] to Response::offsetGet() for PHP 8.1+ compatibility": "patches/qdrant-response-returntypewillchange.patch"
}
}
},
"require": {
"codeinwp/themeisle-sdk": "^3.3",
"cweagans/composer-patches": "^1.7",
"guttedgarden/tiktoken": "^1.2",
"your1/qdrant": "^0.5.3"
}
Expand Down
Loading
Loading