chore: settle product naming across app, widget and deployments
One word everywhere: ReplyPier in UI copy, package and image names, the replypier.site domains (app/api/docs/help), REPLYPIER_* settings and the --rp-* design tokens. - public widget API is window.ReplyPier with replypierId / replypierBaseUrl / replypierConfig / replypierToken, loader at webclient/replypier.min.js; both bundles rebuilt from source - NOTICE, llms.txt, CONTRIBUTING, HELP_CENTER_INFRA and the demo runtime config rewritten; the demo config ships no third-party keys - migration adds the ReplyPier managed model value to the AI model enum - local compose project, database, role, volume and Docker network carry the same name
This commit is contained in:
1 parent
ff0a09f0e5
commit
20fef2b9f3
1156 files changed
+7267
-7148
No files matched your search
@@ -1,5 +1,5 @@
|
||||
{#
|
||||
Copyright 2024-2026 ChatterMate
|
||||
Copyright 2024-2026 ReplyPier
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
@@ -250,8 +250,8 @@ org content safe. Colors: only `--brand`/`--brand-ink` come from the server
|
||||
.hc-footer-org .hc-name { font-size: 15px; }
|
||||
.hc-powered { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; padding: 7px 13px; border: 1px solid #ececf2; border-radius: 999px; font-size: 12.5px; color: #8a90a0; }
|
||||
.hc-powered strong { display: inline-flex; align-items: center; gap: 6px; color: #1a1b25; font-weight: 600; }
|
||||
.hc-cm-mark { width: 15px; height: 15px; border-radius: 5px 5px 5px 1px; background: #c9f24e; display: inline-flex; align-items: center; justify-content: center; gap: 1.5px; }
|
||||
.hc-cm-mark i { width: 2px; height: 2px; border-radius: 50%; background: #0b0c10; }
|
||||
.hc-rp-mark { width: 15px; height: 15px; border-radius: 5px 5px 5px 1px; background: #c9f24e; display: inline-flex; align-items: center; justify-content: center; gap: 1.5px; }
|
||||
.hc-rp-mark i { width: 2px; height: 2px; border-radius: 50%; background: #0b0c10; }
|
||||
|
||||
/* progressive enhancement: only hide things once JS takes over */
|
||||
.js .hc-tag { display: none; }
|
||||
@@ -366,9 +366,9 @@ org content safe. Colors: only `--brand`/`--brand-ink` come from the server
|
||||
{% endif %}
|
||||
<span class="hc-name">{{ row.organization.name }}</span>
|
||||
</div>
|
||||
<a class="hc-powered" href="https://chattermate.chat" target="_blank" rel="noopener">
|
||||
<a class="hc-powered" href="https://replypier.site" target="_blank" rel="noopener">
|
||||
<span>Powered by</span>
|
||||
<strong><span class="hc-cm-mark"><i></i><i></i><i></i></span> ChatterMate</strong>
|
||||
<strong><span class="hc-rp-mark"><i></i><i></i><i></i></span> ReplyPier</strong>
|
||||
</a>
|
||||
</div>
|
||||
</footer>
|
||||
@@ -377,19 +377,19 @@ org content safe. Colors: only `--brand`/`--brand-ink` come from the server
|
||||
<script type="application/ld+json">{{ json_ld | tojson }}</script>
|
||||
{% endif %}
|
||||
|
||||
<!-- open the real embedded ChatterMate widget -->
|
||||
<!-- open the real embedded ReplyPier widget -->
|
||||
<script>
|
||||
(function () {
|
||||
// The widget script is async and builds its launcher (#chattermate-button)
|
||||
// The widget script is async and builds its launcher (#replypier-button)
|
||||
// a moment after load, so a click can land before it exists — poll briefly
|
||||
// and click as soon as it appears instead of silently doing nothing.
|
||||
function openChat() {
|
||||
var tries = 0;
|
||||
(function attempt() {
|
||||
var btn = document.getElementById('chattermate-button');
|
||||
var btn = document.getElementById('replypier-button');
|
||||
if (btn) { btn.click(); return; }
|
||||
if (tries++ < 40) { setTimeout(attempt, 150); return; } // ~6s
|
||||
if (window.console) console.warn('[ChatterMate] chat widget is not available on this page.');
|
||||
if (window.console) console.warn('[ReplyPier] chat widget is not available on this page.');
|
||||
})();
|
||||
}
|
||||
[].slice.call(document.querySelectorAll('[data-chat]')).forEach(function (b) {
|
||||
@@ -402,12 +402,12 @@ org content safe. Colors: only `--brand`/`--brand-ink` come from the server
|
||||
|
||||
{% if widget_id %}
|
||||
<script>
|
||||
window.chattermateId = {{ widget_id | tojson }};
|
||||
window.replypierId = {{ widget_id | tojson }};
|
||||
// Must be set, exactly like the dashboard's install snippet does: the loader
|
||||
// otherwise falls back to the API URL baked in at build time (the vendor
|
||||
// cloud), so a self-hosted help center would ask the wrong backend for its
|
||||
// widget and the visitor would just see "Chat Unavailable".
|
||||
window.chattermateBaseUrl = {{ widget_api_url | tojson }};
|
||||
window.replypierBaseUrl = {{ widget_api_url | tojson }};
|
||||
(function () {
|
||||
var s = document.createElement('script');
|
||||
s.src = {{ widget_script_url | tojson }};
|
||||
|
||||
Reference in new issue
Block a user