frontpage-host 0.3.22 → 0.3.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/BOOKING.md
CHANGED
|
@@ -56,7 +56,7 @@ Calendar consent stays with the person connecting the account. Never put OAuth c
|
|
|
56
56
|
|
|
57
57
|
Google and Outlook import busy periods and can receive Frontpage-owned confirmed events when the owner grants write access. Private event details never reach visitors. iCal imports busy times for appointments or stays under either confirmation policy; it does not send bookings back or provide a real-time double-booking guarantee.
|
|
58
58
|
|
|
59
|
-
Website authors use the platform Booking runtime and `data-fp-booking` containers. The agent controls surrounding HTML and CSS; the service controls forms, availability, validation, email verification and reservation state. Read the Booking module docs and use their exact starter markup.
|
|
59
|
+
Website authors use the platform Booking runtime and `data-fp-booking` containers. The agent controls surrounding HTML and CSS; the service controls forms, availability, validation, email verification and reservation state. Read the Booking module docs and use their exact starter markup. The old `data-fp-form="booking"` collector is retired and rejects submissions. Its old confirmation links cannot confirm appointments or send invites. Historical requests remain in the Forms inbox and `frontpage inbox leads --site SITE`; this cleanup does not convert them into native reservations. Customers review the booking, verify their email and submit; verification creates no inventory hold. A customer management link opens a dedicated page. Viewing a link never accepts, declines or cancels a booking.
|
|
60
60
|
|
|
61
61
|
Private external event details are available only to the connecting human in the workspace Calendar. CLI/agent calendar output remains busy times only; there is no CLI command for private event content.
|
|
62
62
|
|
package/dist/modules/commands.js
CHANGED
|
@@ -280,11 +280,11 @@ export function formatModuleUsage(key) {
|
|
|
280
280
|
"",
|
|
281
281
|
"Actions (generic):",
|
|
282
282
|
" docs Markup / agent how-to",
|
|
283
|
-
key === "articles"
|
|
284
|
-
|
|
285
|
-
|
|
283
|
+
...(def.genericActions.includes("request-setup") ? [key === "articles"
|
|
284
|
+
? " request-setup No setup needed; makes no changes"
|
|
285
|
+
: " request-setup Amber bar in the editor (CLI cannot show it)"] : []),
|
|
286
286
|
...(def.genericActions.includes("enable") ? [" enable|disable|archive"] : []),
|
|
287
|
-
" config --config '{…}' Whitelisted JSON only",
|
|
287
|
+
...(def.genericActions.includes("config") ? [" config --config '{…}' Whitelisted JSON only"] : []),
|
|
288
288
|
];
|
|
289
289
|
if (def.extraActions.length) {
|
|
290
290
|
lines.push("", "Actions (this module):", ...def.extraActions.map((a) => ` ${a}`));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const TYPED_CONFIG_CLI_KEYS: readonly ["callbar", "forms", "
|
|
1
|
+
export declare const TYPED_CONFIG_CLI_KEYS: readonly ["callbar", "forms", "signups"];
|
|
2
2
|
export type TypedConfigCliKey = (typeof TYPED_CONFIG_CLI_KEYS)[number];
|
|
3
3
|
export declare function isTypedConfigCliKey(key: string): key is TypedConfigCliKey;
|
|
4
4
|
export declare function runTypedConfig(key: TypedConfigCliKey, slug: string, action: string, flags: string[]): Promise<number>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* §CLI-MOD-CFG — typed get/set for callbar, forms,
|
|
2
|
+
* §CLI-MOD-CFG — typed get/set for callbar, forms, signups.
|
|
3
3
|
*/
|
|
4
4
|
import { assertNoUnknownFlags, takeFlag } from "../argv.js";
|
|
5
5
|
import { EXIT_OK, v1Get, v1Post } from "../http/client.js";
|
|
6
6
|
import { emitOk, emitUsage, isJson } from "../runtime.js";
|
|
7
7
|
import { formatModuleUsage } from "./commands.js";
|
|
8
|
-
export const TYPED_CONFIG_CLI_KEYS = ["callbar", "forms", "
|
|
8
|
+
export const TYPED_CONFIG_CLI_KEYS = ["callbar", "forms", "signups"];
|
|
9
9
|
export function isTypedConfigCliKey(key) {
|
|
10
10
|
return TYPED_CONFIG_CLI_KEYS.includes(key);
|
|
11
11
|
}
|
|
@@ -33,10 +33,6 @@ function printCallbar(config) {
|
|
|
33
33
|
printLine("sms", yesNo(config.sms));
|
|
34
34
|
printLine("label", dash(config.label));
|
|
35
35
|
}
|
|
36
|
-
function printBooking(config) {
|
|
37
|
-
printLine("notify", dash(config.notifyEmail));
|
|
38
|
-
printLine("hours", dash(config.hours));
|
|
39
|
-
}
|
|
40
36
|
function printConfirmable(config, confirmations) {
|
|
41
37
|
printLine("notify", dash(config.notifyEmail));
|
|
42
38
|
const on = config.confirmEnabled === true;
|
|
@@ -102,8 +98,6 @@ export async function runTypedConfig(key, slug, action, flags) {
|
|
|
102
98
|
}
|
|
103
99
|
if (key === "callbar")
|
|
104
100
|
printCallbar(data.config ?? {});
|
|
105
|
-
else if (key === "booking")
|
|
106
|
-
printBooking(data.config ?? {});
|
|
107
101
|
else
|
|
108
102
|
printConfirmable(data.config ?? {}, data.confirmations);
|
|
109
103
|
return EXIT_OK;
|
|
@@ -115,7 +109,6 @@ export async function runTypedConfig(key, slug, action, flags) {
|
|
|
115
109
|
const call = takeFlag(work, "--call");
|
|
116
110
|
const label = takeFlag(work, "--label");
|
|
117
111
|
const notifyEmail = takeFlag(work, "--notify-email");
|
|
118
|
-
const hours = takeFlag(work, "--hours");
|
|
119
112
|
const confirmRaw = takeFlag(work, "--confirm");
|
|
120
113
|
const confirmTemplate = takeFlag(work, "--confirm-template");
|
|
121
114
|
assertNoUnknownFlags(work, "modules");
|
|
@@ -139,8 +132,6 @@ export async function runTypedConfig(key, slug, action, flags) {
|
|
|
139
132
|
body.label = label;
|
|
140
133
|
if (notifyEmail !== undefined)
|
|
141
134
|
body.notifyEmail = notifyEmail;
|
|
142
|
-
if (hours !== undefined)
|
|
143
|
-
body.hours = hours;
|
|
144
135
|
if (confirmEnabled !== undefined)
|
|
145
136
|
body.confirmEnabled = confirmEnabled;
|
|
146
137
|
if (confirmTemplate !== undefined) {
|
|
@@ -162,8 +153,6 @@ export async function runTypedConfig(key, slug, action, flags) {
|
|
|
162
153
|
const cfg = data.config ?? {};
|
|
163
154
|
if (key === "callbar")
|
|
164
155
|
printCallbar(cfg);
|
|
165
|
-
else if (key === "booking")
|
|
166
|
-
printBooking(cfg);
|
|
167
156
|
else
|
|
168
157
|
printConfirmable(cfg);
|
|
169
158
|
return EXIT_OK;
|