@player-ui/reference-assets-plugin-react 0.10.0-next.0 → 0.10.0-next.10
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/dist/cjs/index.cjs +35 -28
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/index.css +125 -378
- package/dist/index.legacy-esm.js +35 -28
- package/dist/index.mjs +35 -28
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -6
- package/src/__tests__/integration.test.tsx +4 -2
- package/src/assets/choice/Choice.tsx +4 -4
- package/src/assets/collection/Collection.tsx +1 -1
- package/src/assets/image/Image.tsx +7 -3
- package/src/assets/info/Info.tsx +8 -8
- package/src/assets/input/Input.tsx +3 -3
- package/src/assets/text/Text.tsx +1 -1
- package/src/components/Button.tsx +11 -11
- package/src/components/ChoiceItem.tsx +2 -2
- package/src/components/Input.tsx +1 -1
- package/src/components/Label.tsx +1 -1
- package/src/components/Separator.tsx +4 -2
- package/src/global.css +41 -53
package/dist/index.legacy-esm.js
CHANGED
|
@@ -24,7 +24,7 @@ var Input = React.forwardRef(
|
|
|
24
24
|
{
|
|
25
25
|
type,
|
|
26
26
|
className: cn(
|
|
27
|
-
"flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
|
|
27
|
+
"player-flex player-h-9 player-w-full player-rounded-md player-border player-border-input player-bg-transparent player-px-3 player-py-1 player-text-sm player-shadow-sm player-transition-colors file:player-border-0 file:player-bg-transparent file:player-text-sm file:player-font-medium placeholder:player-text-muted-foreground focus-visible:player-outline-none focus-visible:player-ring-1 focus-visible:player-ring-ring player-disabled:player-cursor-not-allowed disabled:player-opacity-50",
|
|
28
28
|
className
|
|
29
29
|
),
|
|
30
30
|
ref,
|
|
@@ -40,7 +40,7 @@ import * as React2 from "react";
|
|
|
40
40
|
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
41
41
|
import { cva } from "class-variance-authority";
|
|
42
42
|
var labelVariants = cva(
|
|
43
|
-
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
43
|
+
"player-text-sm player-font-medium player-leading-none peer-disabled:player-cursor-not-allowed peer-disabled:player-opacity-70"
|
|
44
44
|
);
|
|
45
45
|
var Label = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React2.createElement(
|
|
46
46
|
LabelPrimitive.Root,
|
|
@@ -223,7 +223,7 @@ var useInputAsset = (props, config) => {
|
|
|
223
223
|
var Input2 = (props) => {
|
|
224
224
|
const { validation, label, id, note } = props;
|
|
225
225
|
const inputProps = useInputAsset(props);
|
|
226
|
-
return /* @__PURE__ */ React4.createElement("div", { className: "grid w-full max-w-sm items-center gap-1.5" }, label && /* @__PURE__ */ React4.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...label })), /* @__PURE__ */ React4.createElement(
|
|
226
|
+
return /* @__PURE__ */ React4.createElement("div", { className: "player-grid player-w-full player-max-w-sm player-items-center player-gap-1.5" }, label && /* @__PURE__ */ React4.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...label })), /* @__PURE__ */ React4.createElement(
|
|
227
227
|
Input,
|
|
228
228
|
{
|
|
229
229
|
id,
|
|
@@ -235,10 +235,10 @@ var Input2 = (props) => {
|
|
|
235
235
|
Label,
|
|
236
236
|
{
|
|
237
237
|
id: `${id}-validation`,
|
|
238
|
-
className: "text-[0.8rem] font-medium text-destructive"
|
|
238
|
+
className: "player-text-[0.8rem] player-font-medium player-text-destructive"
|
|
239
239
|
},
|
|
240
240
|
validation.message
|
|
241
|
-
), note && /* @__PURE__ */ React4.createElement(Label, { className: "text-[0.8rem] text-muted-foreground" }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...note })));
|
|
241
|
+
), note && /* @__PURE__ */ React4.createElement(Label, { className: "player-text-[0.8rem] player-text-muted-foreground" }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...note })));
|
|
242
242
|
};
|
|
243
243
|
|
|
244
244
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/text/Text.tsx
|
|
@@ -278,7 +278,7 @@ var Text = (props) => {
|
|
|
278
278
|
return /* @__PURE__ */ React6.createElement(
|
|
279
279
|
"a",
|
|
280
280
|
{
|
|
281
|
-
className: "underline text-blue-600 hover:text-blue-800 visited:text-purple-600",
|
|
281
|
+
className: "player-underline player-text-blue-600 hover:player-text-blue-800 visited:player-text-purple-600",
|
|
282
282
|
href: linkModifier.metaData.ref
|
|
283
283
|
},
|
|
284
284
|
value
|
|
@@ -291,7 +291,7 @@ var Text = (props) => {
|
|
|
291
291
|
import React7 from "react";
|
|
292
292
|
import { ReactAsset as ReactAsset2 } from "@player-ui/react";
|
|
293
293
|
var Collection = (props) => {
|
|
294
|
-
return /* @__PURE__ */ React7.createElement("div", { className: "flex flex-col gap-4" }, props.label && /* @__PURE__ */ React7.createElement("h3", null, /* @__PURE__ */ React7.createElement(ReactAsset2, { ...props.label })), props.values?.map((a) => /* @__PURE__ */ React7.createElement(ReactAsset2, { key: a.asset.id, ...a })));
|
|
294
|
+
return /* @__PURE__ */ React7.createElement("div", { className: "player-flex player-flex-col player-gap-4" }, props.label && /* @__PURE__ */ React7.createElement("h3", null, /* @__PURE__ */ React7.createElement(ReactAsset2, { ...props.label })), props.values?.map((a) => /* @__PURE__ */ React7.createElement(ReactAsset2, { key: a.asset.id, ...a })));
|
|
295
295
|
};
|
|
296
296
|
|
|
297
297
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/action/Action.tsx
|
|
@@ -326,22 +326,22 @@ import * as React9 from "react";
|
|
|
326
326
|
import { Slot } from "@radix-ui/react-slot";
|
|
327
327
|
import { cva as cva2 } from "class-variance-authority";
|
|
328
328
|
var buttonVariants = cva2(
|
|
329
|
-
"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",
|
|
329
|
+
"player-inline-flex player-items-center player-justify-center player-whitespace-nowrap player-rounded-md player-text-sm player-font-medium player-transition-colors focus-visible:player-outline-none focus-visible:player-ring-1 focus-visible:player-ring-ring disabled:player-pointer-events-none disabled:player-opacity-50",
|
|
330
330
|
{
|
|
331
331
|
variants: {
|
|
332
332
|
variant: {
|
|
333
|
-
default: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
|
|
334
|
-
destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
|
|
335
|
-
outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
|
|
336
|
-
secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
|
|
337
|
-
ghost: "hover:bg-accent hover:text-accent-foreground",
|
|
338
|
-
link: "text-primary underline-offset-4 hover:underline"
|
|
333
|
+
default: "player-bg-primary player-text-primary-foreground player-shadow hover:player-bg-primary/90",
|
|
334
|
+
destructive: "player-bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
|
|
335
|
+
outline: "player-border player-border-input player-bg-background player-shadow-sm hover:player-bg-accent hover:player-text-accent-foreground",
|
|
336
|
+
secondary: "player-bg-secondary player-text-secondary-foreground player-shadow-sm hover:player-bg-secondary/80",
|
|
337
|
+
ghost: "hover:player-bg-accent hover:player-text-accent-foreground",
|
|
338
|
+
link: "player-text-primary player-underline-offset-4 hover:player-underline"
|
|
339
339
|
},
|
|
340
340
|
size: {
|
|
341
|
-
default: "h-9 px-4 py-2",
|
|
342
|
-
sm: "h-8 rounded-md px-3 text-xs",
|
|
343
|
-
lg: "h-10 rounded-md px-8",
|
|
344
|
-
icon: "h-9 w-9"
|
|
341
|
+
default: "player-h-9 player-px-4 player-py-2",
|
|
342
|
+
sm: "player-h-8 player-rounded-md player-px-3 player-text-xs",
|
|
343
|
+
lg: "player-h-10 player-rounded-md player-px-8",
|
|
344
|
+
icon: "player-h-9 player-w-9"
|
|
345
345
|
}
|
|
346
346
|
},
|
|
347
347
|
defaultVariants: {
|
|
@@ -395,8 +395,8 @@ var Separator = React11.forwardRef(
|
|
|
395
395
|
decorative,
|
|
396
396
|
orientation,
|
|
397
397
|
className: cn(
|
|
398
|
-
"shrink-0 bg-border",
|
|
399
|
-
orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
|
|
398
|
+
"player-shrink-0 player-bg-border",
|
|
399
|
+
orientation === "horizontal" ? "player-h-[1px] player-w-full" : "player-h-full player-w-[1px]",
|
|
400
400
|
className
|
|
401
401
|
),
|
|
402
402
|
...props
|
|
@@ -407,7 +407,7 @@ Separator.displayName = SeparatorPrimitive.Root.displayName;
|
|
|
407
407
|
|
|
408
408
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/info/Info.tsx
|
|
409
409
|
var Info = (props) => {
|
|
410
|
-
return /* @__PURE__ */ React12.createElement("div", { className: "max-w-full" }, /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col gap-4" }, props.title && /* @__PURE__ */ React12.createElement("h1", { className: "scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.title })), props.subTitle && /* @__PURE__ */ React12.createElement("h3", { className: "scroll-m-20 text-2xl font-semibold tracking-tight" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.subTitle })), props.primaryInfo && /* @__PURE__ */ React12.createElement("div", null, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.primaryInfo })), /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col gap-4" }, props?.segmentedActions && /* @__PURE__ */ React12.createElement(Separator, null), /* @__PURE__ */ React12.createElement("div", { className: "flex justify-between sm:flex-row flex-col-reverse gap-4" }, /* @__PURE__ */ React12.createElement("div", { className: "flex gap-4" }, props?.segmentedActions?.prev?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a }))), /* @__PURE__ */ React12.createElement("div", { className: "flex gap-4" }, props?.segmentedActions?.next?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a })))))));
|
|
410
|
+
return /* @__PURE__ */ React12.createElement("div", { className: "player-max-w-full" }, /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-flex-col player-gap-4" }, props.title && /* @__PURE__ */ React12.createElement("h1", { className: "player-scroll-m-20 player-text-4xl player-font-extrabold player-tracking-tight lg:player-text-5xl" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.title })), props.subTitle && /* @__PURE__ */ React12.createElement("h3", { className: "player-scroll-m-20 player-text-2xl player-font-semibold player-tracking-tight" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.subTitle })), props.primaryInfo && /* @__PURE__ */ React12.createElement("div", null, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.primaryInfo })), /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-flex-col player-gap-4" }, props?.segmentedActions && /* @__PURE__ */ React12.createElement(Separator, null), /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-justify-between sm:player-flex-row player-flex-col-reverse player-gap-4" }, /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-gap-4" }, props?.segmentedActions?.prev?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a }))), /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-gap-4" }, props?.segmentedActions?.next?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a })))))));
|
|
411
411
|
};
|
|
412
412
|
|
|
413
413
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/image/Image.tsx
|
|
@@ -415,7 +415,14 @@ import React13 from "react";
|
|
|
415
415
|
import { ReactAsset as ReactAsset6 } from "@player-ui/react";
|
|
416
416
|
var Image = (props) => {
|
|
417
417
|
const { metaData, caption, altText } = props;
|
|
418
|
-
return /* @__PURE__ */ React13.createElement("figure", { className: "
|
|
418
|
+
return /* @__PURE__ */ React13.createElement("figure", { className: "player-figure" }, /* @__PURE__ */ React13.createElement(
|
|
419
|
+
"img",
|
|
420
|
+
{
|
|
421
|
+
className: "player-figure-img player-img-fluid",
|
|
422
|
+
src: metaData.ref,
|
|
423
|
+
alt: altText
|
|
424
|
+
}
|
|
425
|
+
), caption && /* @__PURE__ */ React13.createElement("figcaption", { className: "player-figure-caption", style: { marginTop: 15 } }, /* @__PURE__ */ React13.createElement(ReactAsset6, { ...caption })));
|
|
419
426
|
};
|
|
420
427
|
|
|
421
428
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/choice/Choice.tsx
|
|
@@ -427,11 +434,11 @@ import React14 from "react";
|
|
|
427
434
|
import { ReactAsset as ReactAsset7 } from "@player-ui/react";
|
|
428
435
|
var ChoiceItem = (props) => {
|
|
429
436
|
const { label, id, ...rest } = props;
|
|
430
|
-
return /* @__PURE__ */ React14.createElement("div", { className: "flex items-center gap-1.5" }, /* @__PURE__ */ React14.createElement(
|
|
437
|
+
return /* @__PURE__ */ React14.createElement("div", { className: "player-flex player-items-center player-gap-1.5" }, /* @__PURE__ */ React14.createElement(
|
|
431
438
|
Input,
|
|
432
439
|
{
|
|
433
440
|
type: "radio",
|
|
434
|
-
className: "h-fit w-fit shadow-none",
|
|
441
|
+
className: "player-h-fit player-w-fit player-shadow-none",
|
|
435
442
|
id,
|
|
436
443
|
...rest
|
|
437
444
|
}
|
|
@@ -467,11 +474,11 @@ var Choice = (props) => {
|
|
|
467
474
|
const { validation, title, id, note } = props;
|
|
468
475
|
const choiceItemProps = useChoiceItems(props);
|
|
469
476
|
const renderChoices = () => choiceItemProps.map((choiceItemProp) => /* @__PURE__ */ React15.createElement(ChoiceItem, { key: choiceItemProp.id, ...choiceItemProp }));
|
|
470
|
-
return /* @__PURE__ */ React15.createElement("div", { className: "grid w-full max-w-sm items-center gap-3" }, title && /* @__PURE__ */ React15.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...title })), /* @__PURE__ */ React15.createElement(
|
|
477
|
+
return /* @__PURE__ */ React15.createElement("div", { className: "player-grid player-w-full player-max-w-sm player-items-center player-gap-3" }, title && /* @__PURE__ */ React15.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...title })), /* @__PURE__ */ React15.createElement(
|
|
471
478
|
"div",
|
|
472
479
|
{
|
|
473
480
|
id: props.id,
|
|
474
|
-
className: "grid gap-2",
|
|
481
|
+
className: "player-grid player-gap-2",
|
|
475
482
|
"aria-invalid": Boolean(validation),
|
|
476
483
|
"aria-describedby": validation ? `${id}-validation` : void 0
|
|
477
484
|
},
|
|
@@ -480,10 +487,10 @@ var Choice = (props) => {
|
|
|
480
487
|
Label,
|
|
481
488
|
{
|
|
482
489
|
id: `${id}-validation`,
|
|
483
|
-
className: "text-[0.8rem] font-medium text-destructive"
|
|
490
|
+
className: "player-text-[0.8rem] player-font-medium player-text-destructive"
|
|
484
491
|
},
|
|
485
492
|
validation.message
|
|
486
|
-
), note && /* @__PURE__ */ React15.createElement(Label, { className: "text-[0.8rem] text-muted-foreground" }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...note })));
|
|
493
|
+
), note && /* @__PURE__ */ React15.createElement(Label, { className: "player-text-[0.8rem] player-text-muted-foreground" }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...note })));
|
|
487
494
|
};
|
|
488
495
|
|
|
489
496
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/plugin.tsx
|
package/dist/index.mjs
CHANGED
|
@@ -24,7 +24,7 @@ var Input = React.forwardRef(
|
|
|
24
24
|
{
|
|
25
25
|
type,
|
|
26
26
|
className: cn(
|
|
27
|
-
"flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
|
|
27
|
+
"player-flex player-h-9 player-w-full player-rounded-md player-border player-border-input player-bg-transparent player-px-3 player-py-1 player-text-sm player-shadow-sm player-transition-colors file:player-border-0 file:player-bg-transparent file:player-text-sm file:player-font-medium placeholder:player-text-muted-foreground focus-visible:player-outline-none focus-visible:player-ring-1 focus-visible:player-ring-ring player-disabled:player-cursor-not-allowed disabled:player-opacity-50",
|
|
28
28
|
className
|
|
29
29
|
),
|
|
30
30
|
ref,
|
|
@@ -40,7 +40,7 @@ import * as React2 from "react";
|
|
|
40
40
|
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
41
41
|
import { cva } from "class-variance-authority";
|
|
42
42
|
var labelVariants = cva(
|
|
43
|
-
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
43
|
+
"player-text-sm player-font-medium player-leading-none peer-disabled:player-cursor-not-allowed peer-disabled:player-opacity-70"
|
|
44
44
|
);
|
|
45
45
|
var Label = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React2.createElement(
|
|
46
46
|
LabelPrimitive.Root,
|
|
@@ -223,7 +223,7 @@ var useInputAsset = (props, config) => {
|
|
|
223
223
|
var Input2 = (props) => {
|
|
224
224
|
const { validation, label, id, note } = props;
|
|
225
225
|
const inputProps = useInputAsset(props);
|
|
226
|
-
return /* @__PURE__ */ React4.createElement("div", { className: "grid w-full max-w-sm items-center gap-1.5" }, label && /* @__PURE__ */ React4.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...label })), /* @__PURE__ */ React4.createElement(
|
|
226
|
+
return /* @__PURE__ */ React4.createElement("div", { className: "player-grid player-w-full player-max-w-sm player-items-center player-gap-1.5" }, label && /* @__PURE__ */ React4.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...label })), /* @__PURE__ */ React4.createElement(
|
|
227
227
|
Input,
|
|
228
228
|
{
|
|
229
229
|
id,
|
|
@@ -235,10 +235,10 @@ var Input2 = (props) => {
|
|
|
235
235
|
Label,
|
|
236
236
|
{
|
|
237
237
|
id: `${id}-validation`,
|
|
238
|
-
className: "text-[0.8rem] font-medium text-destructive"
|
|
238
|
+
className: "player-text-[0.8rem] player-font-medium player-text-destructive"
|
|
239
239
|
},
|
|
240
240
|
validation.message
|
|
241
|
-
), note && /* @__PURE__ */ React4.createElement(Label, { className: "text-[0.8rem] text-muted-foreground" }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...note })));
|
|
241
|
+
), note && /* @__PURE__ */ React4.createElement(Label, { className: "player-text-[0.8rem] player-text-muted-foreground" }, /* @__PURE__ */ React4.createElement(ReactAsset, { ...note })));
|
|
242
242
|
};
|
|
243
243
|
|
|
244
244
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/text/Text.tsx
|
|
@@ -278,7 +278,7 @@ var Text = (props) => {
|
|
|
278
278
|
return /* @__PURE__ */ React6.createElement(
|
|
279
279
|
"a",
|
|
280
280
|
{
|
|
281
|
-
className: "underline text-blue-600 hover:text-blue-800 visited:text-purple-600",
|
|
281
|
+
className: "player-underline player-text-blue-600 hover:player-text-blue-800 visited:player-text-purple-600",
|
|
282
282
|
href: linkModifier.metaData.ref
|
|
283
283
|
},
|
|
284
284
|
value
|
|
@@ -291,7 +291,7 @@ var Text = (props) => {
|
|
|
291
291
|
import React7 from "react";
|
|
292
292
|
import { ReactAsset as ReactAsset2 } from "@player-ui/react";
|
|
293
293
|
var Collection = (props) => {
|
|
294
|
-
return /* @__PURE__ */ React7.createElement("div", { className: "flex flex-col gap-4" }, props.label && /* @__PURE__ */ React7.createElement("h3", null, /* @__PURE__ */ React7.createElement(ReactAsset2, { ...props.label })), props.values?.map((a) => /* @__PURE__ */ React7.createElement(ReactAsset2, { key: a.asset.id, ...a })));
|
|
294
|
+
return /* @__PURE__ */ React7.createElement("div", { className: "player-flex player-flex-col player-gap-4" }, props.label && /* @__PURE__ */ React7.createElement("h3", null, /* @__PURE__ */ React7.createElement(ReactAsset2, { ...props.label })), props.values?.map((a) => /* @__PURE__ */ React7.createElement(ReactAsset2, { key: a.asset.id, ...a })));
|
|
295
295
|
};
|
|
296
296
|
|
|
297
297
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/action/Action.tsx
|
|
@@ -326,22 +326,22 @@ import * as React9 from "react";
|
|
|
326
326
|
import { Slot } from "@radix-ui/react-slot";
|
|
327
327
|
import { cva as cva2 } from "class-variance-authority";
|
|
328
328
|
var buttonVariants = cva2(
|
|
329
|
-
"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",
|
|
329
|
+
"player-inline-flex player-items-center player-justify-center player-whitespace-nowrap player-rounded-md player-text-sm player-font-medium player-transition-colors focus-visible:player-outline-none focus-visible:player-ring-1 focus-visible:player-ring-ring disabled:player-pointer-events-none disabled:player-opacity-50",
|
|
330
330
|
{
|
|
331
331
|
variants: {
|
|
332
332
|
variant: {
|
|
333
|
-
default: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
|
|
334
|
-
destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
|
|
335
|
-
outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
|
|
336
|
-
secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
|
|
337
|
-
ghost: "hover:bg-accent hover:text-accent-foreground",
|
|
338
|
-
link: "text-primary underline-offset-4 hover:underline"
|
|
333
|
+
default: "player-bg-primary player-text-primary-foreground player-shadow hover:player-bg-primary/90",
|
|
334
|
+
destructive: "player-bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
|
|
335
|
+
outline: "player-border player-border-input player-bg-background player-shadow-sm hover:player-bg-accent hover:player-text-accent-foreground",
|
|
336
|
+
secondary: "player-bg-secondary player-text-secondary-foreground player-shadow-sm hover:player-bg-secondary/80",
|
|
337
|
+
ghost: "hover:player-bg-accent hover:player-text-accent-foreground",
|
|
338
|
+
link: "player-text-primary player-underline-offset-4 hover:player-underline"
|
|
339
339
|
},
|
|
340
340
|
size: {
|
|
341
|
-
default: "h-9 px-4 py-2",
|
|
342
|
-
sm: "h-8 rounded-md px-3 text-xs",
|
|
343
|
-
lg: "h-10 rounded-md px-8",
|
|
344
|
-
icon: "h-9 w-9"
|
|
341
|
+
default: "player-h-9 player-px-4 player-py-2",
|
|
342
|
+
sm: "player-h-8 player-rounded-md player-px-3 player-text-xs",
|
|
343
|
+
lg: "player-h-10 player-rounded-md player-px-8",
|
|
344
|
+
icon: "player-h-9 player-w-9"
|
|
345
345
|
}
|
|
346
346
|
},
|
|
347
347
|
defaultVariants: {
|
|
@@ -395,8 +395,8 @@ var Separator = React11.forwardRef(
|
|
|
395
395
|
decorative,
|
|
396
396
|
orientation,
|
|
397
397
|
className: cn(
|
|
398
|
-
"shrink-0 bg-border",
|
|
399
|
-
orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
|
|
398
|
+
"player-shrink-0 player-bg-border",
|
|
399
|
+
orientation === "horizontal" ? "player-h-[1px] player-w-full" : "player-h-full player-w-[1px]",
|
|
400
400
|
className
|
|
401
401
|
),
|
|
402
402
|
...props
|
|
@@ -407,7 +407,7 @@ Separator.displayName = SeparatorPrimitive.Root.displayName;
|
|
|
407
407
|
|
|
408
408
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/info/Info.tsx
|
|
409
409
|
var Info = (props) => {
|
|
410
|
-
return /* @__PURE__ */ React12.createElement("div", { className: "max-w-full" }, /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col gap-4" }, props.title && /* @__PURE__ */ React12.createElement("h1", { className: "scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.title })), props.subTitle && /* @__PURE__ */ React12.createElement("h3", { className: "scroll-m-20 text-2xl font-semibold tracking-tight" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.subTitle })), props.primaryInfo && /* @__PURE__ */ React12.createElement("div", null, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.primaryInfo })), /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col gap-4" }, props?.segmentedActions && /* @__PURE__ */ React12.createElement(Separator, null), /* @__PURE__ */ React12.createElement("div", { className: "flex justify-between sm:flex-row flex-col-reverse gap-4" }, /* @__PURE__ */ React12.createElement("div", { className: "flex gap-4" }, props?.segmentedActions?.prev?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a }))), /* @__PURE__ */ React12.createElement("div", { className: "flex gap-4" }, props?.segmentedActions?.next?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a })))))));
|
|
410
|
+
return /* @__PURE__ */ React12.createElement("div", { className: "player-max-w-full" }, /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-flex-col player-gap-4" }, props.title && /* @__PURE__ */ React12.createElement("h1", { className: "player-scroll-m-20 player-text-4xl player-font-extrabold player-tracking-tight lg:player-text-5xl" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.title })), props.subTitle && /* @__PURE__ */ React12.createElement("h3", { className: "player-scroll-m-20 player-text-2xl player-font-semibold player-tracking-tight" }, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.subTitle })), props.primaryInfo && /* @__PURE__ */ React12.createElement("div", null, /* @__PURE__ */ React12.createElement(ReactAsset5, { ...props.primaryInfo })), /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-flex-col player-gap-4" }, props?.segmentedActions && /* @__PURE__ */ React12.createElement(Separator, null), /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-justify-between sm:player-flex-row player-flex-col-reverse player-gap-4" }, /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-gap-4" }, props?.segmentedActions?.prev?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a }))), /* @__PURE__ */ React12.createElement("div", { className: "player-flex player-gap-4" }, props?.segmentedActions?.next?.map((a) => /* @__PURE__ */ React12.createElement(ReactAsset5, { key: a.asset.id, ...a })))))));
|
|
411
411
|
};
|
|
412
412
|
|
|
413
413
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/image/Image.tsx
|
|
@@ -415,7 +415,14 @@ import React13 from "react";
|
|
|
415
415
|
import { ReactAsset as ReactAsset6 } from "@player-ui/react";
|
|
416
416
|
var Image = (props) => {
|
|
417
417
|
const { metaData, caption, altText } = props;
|
|
418
|
-
return /* @__PURE__ */ React13.createElement("figure", { className: "
|
|
418
|
+
return /* @__PURE__ */ React13.createElement("figure", { className: "player-figure" }, /* @__PURE__ */ React13.createElement(
|
|
419
|
+
"img",
|
|
420
|
+
{
|
|
421
|
+
className: "player-figure-img player-img-fluid",
|
|
422
|
+
src: metaData.ref,
|
|
423
|
+
alt: altText
|
|
424
|
+
}
|
|
425
|
+
), caption && /* @__PURE__ */ React13.createElement("figcaption", { className: "player-figure-caption", style: { marginTop: 15 } }, /* @__PURE__ */ React13.createElement(ReactAsset6, { ...caption })));
|
|
419
426
|
};
|
|
420
427
|
|
|
421
428
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/choice/Choice.tsx
|
|
@@ -427,11 +434,11 @@ import React14 from "react";
|
|
|
427
434
|
import { ReactAsset as ReactAsset7 } from "@player-ui/react";
|
|
428
435
|
var ChoiceItem = (props) => {
|
|
429
436
|
const { label, id, ...rest } = props;
|
|
430
|
-
return /* @__PURE__ */ React14.createElement("div", { className: "flex items-center gap-1.5" }, /* @__PURE__ */ React14.createElement(
|
|
437
|
+
return /* @__PURE__ */ React14.createElement("div", { className: "player-flex player-items-center player-gap-1.5" }, /* @__PURE__ */ React14.createElement(
|
|
431
438
|
Input,
|
|
432
439
|
{
|
|
433
440
|
type: "radio",
|
|
434
|
-
className: "h-fit w-fit shadow-none",
|
|
441
|
+
className: "player-h-fit player-w-fit player-shadow-none",
|
|
435
442
|
id,
|
|
436
443
|
...rest
|
|
437
444
|
}
|
|
@@ -467,11 +474,11 @@ var Choice = (props) => {
|
|
|
467
474
|
const { validation, title, id, note } = props;
|
|
468
475
|
const choiceItemProps = useChoiceItems(props);
|
|
469
476
|
const renderChoices = () => choiceItemProps.map((choiceItemProp) => /* @__PURE__ */ React15.createElement(ChoiceItem, { key: choiceItemProp.id, ...choiceItemProp }));
|
|
470
|
-
return /* @__PURE__ */ React15.createElement("div", { className: "grid w-full max-w-sm items-center gap-3" }, title && /* @__PURE__ */ React15.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...title })), /* @__PURE__ */ React15.createElement(
|
|
477
|
+
return /* @__PURE__ */ React15.createElement("div", { className: "player-grid player-w-full player-max-w-sm player-items-center player-gap-3" }, title && /* @__PURE__ */ React15.createElement(Label, { htmlFor: id }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...title })), /* @__PURE__ */ React15.createElement(
|
|
471
478
|
"div",
|
|
472
479
|
{
|
|
473
480
|
id: props.id,
|
|
474
|
-
className: "grid gap-2",
|
|
481
|
+
className: "player-grid player-gap-2",
|
|
475
482
|
"aria-invalid": Boolean(validation),
|
|
476
483
|
"aria-describedby": validation ? `${id}-validation` : void 0
|
|
477
484
|
},
|
|
@@ -480,10 +487,10 @@ var Choice = (props) => {
|
|
|
480
487
|
Label,
|
|
481
488
|
{
|
|
482
489
|
id: `${id}-validation`,
|
|
483
|
-
className: "text-[0.8rem] font-medium text-destructive"
|
|
490
|
+
className: "player-text-[0.8rem] player-font-medium player-text-destructive"
|
|
484
491
|
},
|
|
485
492
|
validation.message
|
|
486
|
-
), note && /* @__PURE__ */ React15.createElement(Label, { className: "text-[0.8rem] text-muted-foreground" }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...note })));
|
|
493
|
+
), note && /* @__PURE__ */ React15.createElement(Label, { className: "player-text-[0.8rem] player-text-muted-foreground" }, /* @__PURE__ */ React15.createElement(ReactAsset8, { ...note })));
|
|
487
494
|
};
|
|
488
495
|
|
|
489
496
|
// ../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/plugin.tsx
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/plugin.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/input/Input.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Input.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/utils.ts","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Label.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/input/hooks.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/text/Text.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/text/hooks.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/collection/Collection.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/action/Action.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/action/hooks.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Button.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/info/Info.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Separator.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/image/Image.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/choice/Choice.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/ChoiceItem.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/choice/hooks.tsx"],"sourcesContent":["import React from \"react\";\nimport type {\n ReactPlayer,\n ReactPlayerPlugin,\n Player,\n ExtendedPlayerPlugin,\n} from \"@player-ui/react\";\nimport { AssetProviderPlugin } from \"@player-ui/asset-provider-plugin-react\";\nimport type {\n InputAsset,\n TextAsset,\n CollectionAsset,\n ActionAsset,\n InfoAsset,\n ChoiceAsset,\n} from \"@player-ui/reference-assets-plugin\";\nimport { ReferenceAssetsPlugin as ReferenceAssetsCorePlugin } from \"@player-ui/reference-assets-plugin\";\nimport { Input, Text, Collection, Action, Info, Image, Choice } from \"./assets\";\n\n/**\n * A plugin to register the base reference assets\n */\nexport class ReferenceAssetsPlugin\n implements\n ReactPlayerPlugin,\n ExtendedPlayerPlugin<\n [InputAsset, TextAsset, ActionAsset, CollectionAsset, ChoiceAsset],\n [InfoAsset]\n >\n{\n name = \"reference-assets-web-plugin\";\n\n applyReact(reactPlayer: ReactPlayer) {\n reactPlayer.registerPlugin(\n new AssetProviderPlugin([\n [\"input\", Input],\n [\"text\", Text],\n [\"action\", Action],\n [\"info\", Info],\n [\"collection\", Collection],\n [\"image\", Image],\n [\"choice\", Choice],\n ]),\n );\n }\n\n apply(player: Player) {\n player.registerPlugin(new ReferenceAssetsCorePlugin());\n }\n}\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { TransformedInput } from \"@player-ui/reference-assets-plugin\";\nimport { Input as InputComp } from \"../../components/Input\";\nimport { Label } from \"../../components/Label\";\n\nimport { useInputAsset } from \"./hooks\";\n\n/** An Input */\nexport const Input = (props: TransformedInput) => {\n const { validation, label, id, note } = props;\n const inputProps = useInputAsset(props);\n\n return (\n <div className=\"grid w-full max-w-sm items-center gap-1.5\">\n {label && (\n <Label htmlFor={id}>\n <ReactAsset {...label} />\n </Label>\n )}\n <InputComp\n id={id}\n aria-invalid={Boolean(validation)}\n aria-describedby={validation ? `${id}-validation` : undefined}\n {...inputProps}\n />\n {validation && (\n <Label\n id={`${id}-validation`}\n className=\"text-[0.8rem] font-medium text-destructive\"\n >\n {validation.message}\n </Label>\n )}\n {note && (\n <Label className=\"text-[0.8rem] text-muted-foreground\">\n <ReactAsset {...note} />\n </Label>\n )}\n </div>\n );\n};\n\nexport default Input;\n","/* eslint-disable @typescript-eslint/no-empty-interface */\nimport * as React from \"react\";\n\nimport { cn } from \"../utils\";\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement> {}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, type, ...props }, ref) => {\n return (\n <input\n type={type}\n className={cn(\n \"flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n },\n);\nInput.displayName = \"Input\";\n\nexport { Input };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../utils\";\n\nconst labelVariants = cva(\n \"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n);\n\nconst Label = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <LabelPrimitive.Root\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label };\n","import React from \"react\";\nimport { useBeacon } from \"@player-ui/beacon-plugin-react\";\nimport type { TransformedInput } from \"@player-ui/reference-assets-plugin\";\nimport type { KeyDownHandler } from \"./types\";\n\nexport interface InputHookConfig {\n /** Format the input as the user keys down */\n liveFormat?: boolean;\n\n /** Skip sending beacon events for this input */\n suppressBeacons?: boolean;\n\n /** Time (ms) to wait before formatting the user input for normal keys */\n quickFormatDelay?: number;\n\n /** Time (ms) to wait before formatting the input after the user types a special _slow_ format key */\n slowFormatDelay?: number;\n\n /** Keys to use a slower formatter for. Usually reserved for backspace, arrows, tabs, etc */\n slowFormatKeys?: Array<number | string>;\n\n /** Symbol to be used for decimal point */\n decimalSymbol?: string;\n\n /** Affix to append to value - does not save to model and is only for display on input */\n prefix?: string;\n\n /** Affix to prepend to value - does not save to model and is only for display on input */\n suffix?: string;\n}\n\nconst defaultKeyStrings = [\n \"Delete\",\n \"Backspace\",\n \"Tab\",\n \"Home\",\n \"End\",\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"Escape\",\n];\n\n/** Create a valid config mixing in defaults and user overrides */\nexport const getConfig = (\n userConfig: InputHookConfig = {},\n): Required<InputHookConfig> => {\n return {\n liveFormat: true,\n suppressBeacons: false,\n quickFormatDelay: 200,\n slowFormatDelay: 1000,\n slowFormatKeys: defaultKeyStrings,\n decimalSymbol: \".\",\n prefix: \"\",\n suffix: \"\",\n ...userConfig,\n };\n};\n\n/** A hook to manage beacon changes for input assets */\nexport const useInputBeacon = (props: TransformedInput) => {\n const beaconHandler = useBeacon({ element: \"text_input\", asset: props });\n\n return (newValue: string) => {\n let action = \"modified\";\n\n if (newValue === props.value) {\n return;\n }\n\n if (newValue && !props.value) {\n action = \"added\";\n } else if (!newValue && props.value) {\n action = \"deleted\";\n }\n\n beaconHandler({ action });\n };\n};\n\n/**\n * A hook to manage an input html element as an asset.\n * The hook returns an object containing props that are expected to reside on any html input.\n * It will handle formatting, setting values, beaconing, aria-labels, etc.\n *\n * @param props - The output of the input transform\n * @param config - Local config to manage user interaction overrides\n */\nexport const useInputAsset = (\n props: TransformedInput,\n config?: InputHookConfig,\n) => {\n const [localValue, setLocalValue] = React.useState(props.value ?? \"\");\n const formatTimerRef = React.useRef<NodeJS.Timeout | undefined>(undefined);\n const inputBeacon = useInputBeacon(props);\n\n const {\n liveFormat,\n suppressBeacons,\n quickFormatDelay,\n slowFormatDelay,\n slowFormatKeys,\n decimalSymbol,\n prefix,\n suffix,\n } = getConfig(config);\n\n /** Reset and pending format timers */\n function clearPending() {\n if (formatTimerRef.current) {\n clearTimeout(formatTimerRef.current);\n formatTimerRef.current = undefined;\n }\n }\n\n /** Determines whether pressed key should trigger slow format or quick format delay */\n function getFormatDelaySpeed(e: React.KeyboardEvent<HTMLInputElement>) {\n const key = slowFormatKeys.every((k) => typeof k === \"number\")\n ? e.which\n : e.key;\n\n return slowFormatKeys.includes(key) ? slowFormatDelay : quickFormatDelay;\n }\n\n /** Affix handling logic on focus */\n function handleAffixOnFocus(target: HTMLInputElement) {\n let val = target.value;\n\n if (suffix) val = val.substring(0, val.indexOf(suffix));\n\n if (prefix && !val.includes(prefix)) {\n val = `${prefix}${val}`;\n }\n\n return val;\n }\n\n /** Edge cases handling for prefix */\n function handlePrefixEdgeCases(e: React.KeyboardEvent<HTMLInputElement>) {\n const target = e.target as HTMLInputElement;\n const start = target.selectionStart;\n const end = target.selectionEnd;\n const pl = prefix.length;\n const atStart = start === pl;\n const atEnd = end === pl;\n\n if (start && end && start < pl) {\n e.preventDefault();\n target.setSelectionRange(pl, end - start + pl);\n } else if (\n (e.key === \"ArrowLeft\" && atStart) ||\n (e.key === \"Backspace\" && atStart && atEnd) ||\n e.key === \"Home\"\n ) {\n e.preventDefault();\n target.setSelectionRange(prefix.length, prefix.length);\n }\n }\n\n /** Helper to add affixes to value where appropriate */\n function formatValueWithAffix(value: string | undefined) {\n if (!value) return \"\";\n\n return `${prefix}${value}${suffix}`;\n }\n\n /** Value handling logic on key down */\n const onKeyDownHandler: KeyDownHandler = (currentValue: string) => {\n const symbolPosition = currentValue.indexOf(decimalSymbol);\n const newValue = props.format(currentValue) ?? \"\";\n const newSymbolPosition = newValue.indexOf(decimalSymbol);\n\n if (\n (symbolPosition === -1 || symbolPosition === 0) &&\n newSymbolPosition > 0\n ) {\n // formatting added dot, so set cursor before dot\n return {\n newValue: newValue.includes(prefix)\n ? `${newValue}`\n : `${prefix}${newValue}`,\n newCursorPosition: newValue.includes(prefix)\n ? newSymbolPosition\n : newSymbolPosition + prefix.length,\n };\n }\n\n return {\n newValue: newValue.includes(prefix)\n ? `${newValue}`\n : `${prefix}${newValue}`,\n };\n };\n\n /** On blur, commit the value to the model */\n const onBlur: React.FocusEventHandler<HTMLInputElement> = (e) => {\n clearPending();\n\n const formatted =\n (prefix\n ? e.target.value.replace(prefix, \"\")\n : props.format(e.target.value)) ?? \"\";\n\n if (formatted) {\n props.set(formatted);\n setLocalValue(formatValueWithAffix(formatted));\n } else {\n props.set(\"\");\n setLocalValue(\"\");\n }\n\n if (!suppressBeacons) {\n inputBeacon(formatted);\n }\n };\n\n /** Keep track of any user changes */\n const onChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n setLocalValue(e.target.value);\n };\n\n /** Schedule a format of the current input in the future */\n const onKeyDown: React.KeyboardEventHandler<HTMLInputElement> = (e) => {\n clearPending();\n\n if (prefix) handlePrefixEdgeCases(e);\n\n const target = e.target as HTMLInputElement;\n\n if (liveFormat) {\n formatTimerRef.current = setTimeout(() => {\n const cursorPosition = target.selectionStart;\n const currentValue = target.value;\n\n /** Skip formatting if we're in the middle of the input */\n if (cursorPosition !== currentValue.length) {\n return;\n }\n\n const obj = onKeyDownHandler(currentValue);\n\n setLocalValue(obj.newValue);\n target.selectionStart = obj.newCursorPosition ?? target.selectionStart;\n target.selectionEnd = obj.newCursorPosition ?? target.selectionEnd;\n }, getFormatDelaySpeed(e));\n }\n };\n\n /** Format value onFocus if affixes exist */\n const onFocus: React.FocusEventHandler<HTMLInputElement> = (e) => {\n const target = e.target as HTMLInputElement;\n const inputEmpty = target.value === \"\";\n\n if ((!inputEmpty && suffix) || (inputEmpty && prefix)) {\n setLocalValue(handleAffixOnFocus(target));\n }\n };\n\n // Update the stored value if data changes\n const propsValue = props.value;\n React.useEffect(() => {\n setLocalValue(formatValueWithAffix(propsValue));\n }, [propsValue]);\n\n /** clear anything pending on unmount of input */\n React.useEffect(() => clearPending, []);\n\n return {\n onBlur,\n onChange,\n onKeyDown,\n onFocus,\n value: localValue,\n };\n};\n","import React from \"react\";\nimport type {\n TextAsset,\n LinkModifier,\n} from \"@player-ui/reference-assets-plugin\";\nimport { useText } from \"./hooks\";\n\n/** Find any link modifiers on the text */\nexport const getLinkModifier = (asset: TextAsset): LinkModifier | undefined => {\n return asset.modifiers?.find(\n (mod) =>\n mod.type === \"link\" &&\n (mod.metaData as LinkModifier[\"metaData\"])?.ref !== undefined,\n ) as LinkModifier;\n};\n\n/** A text asset */\nexport const Text = (props: TextAsset) => {\n const spanProps = useText(props);\n const linkModifier = getLinkModifier(props);\n const { value } = props;\n\n if (linkModifier) {\n return (\n <a\n className=\"underline text-blue-600 hover:text-blue-800 visited:text-purple-600\"\n href={linkModifier.metaData.ref}\n >\n {value}\n </a>\n );\n }\n\n return <span {...spanProps}>{value}</span>;\n};\n","import React, { useContext } from \"react\";\nimport makeClass from \"clsx\";\nimport { useAssetProps } from \"@player-ui/react\";\nimport type { TextAsset } from \"@player-ui/reference-assets-plugin\";\n\nexport interface TextModifierContextType {\n getClassForModifier?<T>(modifier: T): string | undefined;\n}\n\nexport const TextModifierContext = React.createContext<\n TextModifierContextType | undefined\n>(undefined);\n\n/** Get the props for a basic text element */\nexport const useText = (props: TextAsset): JSX.IntrinsicElements[\"span\"] => {\n let className: string | undefined;\n\n const modifierContext = useContext(TextModifierContext);\n\n if (props.modifiers && modifierContext?.getClassForModifier) {\n className = makeClass(\n ...props.modifiers.map(modifierContext.getClassForModifier),\n );\n }\n\n return {\n ...useAssetProps(props),\n className,\n children: props.value,\n };\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { CollectionAsset } from \"@player-ui/reference-assets-plugin\";\n\nexport const Collection = (props: CollectionAsset) => {\n return (\n <div className=\"flex flex-col gap-4\">\n {props.label && (\n <h3>\n <ReactAsset {...props.label} />\n </h3>\n )}\n {props.values?.map((a) => <ReactAsset key={a.asset.id} {...a} />)}\n </div>\n );\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { ChevronLeftIcon } from \"lucide-react\";\nimport type { TransformedAction } from \"@player-ui/reference-assets-plugin\";\nimport { isBackAction } from \"@player-ui/reference-assets-plugin\";\nimport { useAction } from \"./hooks\";\nimport { Button } from \"../../components/Button\";\n\n/**\n * An action that a user can take\n */\nexport const Action = (props: TransformedAction) => {\n const { label } = props;\n const buttonProps = useAction(props);\n\n return (\n <div>\n <Button\n variant={isBackAction(props) ? \"outline\" : undefined}\n {...buttonProps}\n >\n {props?.metaData?.role === \"back\" && <ChevronLeftIcon />}\n {label && <ReactAsset {...label} />}\n </Button>\n </div>\n );\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { useBeacon } from \"@player-ui/beacon-plugin-react\";\nimport type { TransformedAction } from \"@player-ui/reference-assets-plugin\";\n\n/** Hook to get all the props for a button */\nexport const useAction = (props: TransformedAction) => {\n const { label } = props;\n const beacon = useBeacon({\n asset: props,\n action: \"clicked\",\n element: \"button\",\n });\n\n return {\n id: props.id,\n onClick: () => {\n beacon();\n props.run();\n },\n children: label?.asset ? <ReactAsset {...label?.asset} /> : null,\n } as const;\n};\n","import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../utils\";\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary text-primary-foreground shadow hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90\",\n outline:\n \"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-9 px-4 py-2\",\n sm: \"h-8 rounded-md px-3 text-xs\",\n lg: \"h-10 rounded-md px-8\",\n icon: \"h-9 w-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n },\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import React from \"react\";\nimport type { InfoAssetTransform } from \"@player-ui/reference-assets-plugin\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { Separator } from \"../../components/Separator\";\n\n/** The info view type is used to show information to the user */\nexport const Info = (props: InfoAssetTransform) => {\n return (\n <div className=\"max-w-full\">\n <div className=\"flex flex-col gap-4\">\n {props.title && (\n <h1 className=\"scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl\">\n <ReactAsset {...props.title} />\n </h1>\n )}\n {props.subTitle && (\n <h3 className=\"scroll-m-20 text-2xl font-semibold tracking-tight\">\n <ReactAsset {...props.subTitle} />\n </h3>\n )}\n {props.primaryInfo && (\n <div>\n <ReactAsset {...props.primaryInfo} />\n </div>\n )}\n <div className=\"flex flex-col gap-4\">\n {props?.segmentedActions && <Separator />}\n <div className=\"flex justify-between sm:flex-row flex-col-reverse gap-4\">\n <div className=\"flex gap-4\">\n {props?.segmentedActions?.prev?.map((a) => (\n <ReactAsset key={a.asset.id} {...a} />\n ))}\n </div>\n <div className=\"flex gap-4\">\n {props?.segmentedActions?.next?.map((a) => (\n <ReactAsset key={a.asset.id} {...a} />\n ))}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as SeparatorPrimitive from \"@radix-ui/react-separator\";\nimport { cn } from \"../utils\";\n\nconst Separator = React.forwardRef<\n React.ElementRef<typeof SeparatorPrimitive.Root>,\n SeparatorPrimitive.SeparatorProps\n>(\n (\n { className, orientation = \"horizontal\", decorative = true, ...props },\n ref,\n ) => (\n <SeparatorPrimitive.Root\n ref={ref}\n decorative={decorative}\n orientation={orientation}\n className={cn(\n \"shrink-0 bg-border\",\n orientation === \"horizontal\" ? \"h-[1px] w-full\" : \"h-full w-[1px]\",\n className,\n )}\n {...props}\n />\n ),\n);\nSeparator.displayName = SeparatorPrimitive.Root.displayName;\n\nexport { Separator };\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { TransformedImage } from \"@player-ui/reference-assets-plugin\";\n\nexport const Image = (props: TransformedImage) => {\n const { metaData, caption, altText } = props;\n\n return (\n <figure className=\"figure\">\n <img className=\"figure-img img-fluid\" src={metaData.ref} alt={altText} />\n {caption && (\n <figcaption className=\"figure-caption\" style={{ marginTop: 15 }}>\n <ReactAsset {...caption} />\n </figcaption>\n )}\n </figure>\n );\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { TransformedChoice } from \"@player-ui/reference-assets-plugin\";\nimport { ChoiceItem } from \"../../components/ChoiceItem\";\nimport { Label } from \"../../components/Label\";\nimport type { ChoiceItemProps } from \"../../components/ChoiceItem\";\n\nimport { useChoiceItems } from \"./hooks\";\n\n/** A Choice */\nexport const Choice = (props: TransformedChoice) => {\n const { validation, title, id, note } = props;\n const choiceItemProps: Array<ChoiceItemProps> = useChoiceItems(props);\n\n const renderChoices = () =>\n choiceItemProps.map((choiceItemProp) => (\n <ChoiceItem key={choiceItemProp.id} {...choiceItemProp} />\n ));\n\n return (\n <div className=\"grid w-full max-w-sm items-center gap-3\">\n {title && (\n <Label htmlFor={id}>\n <ReactAsset {...title} />\n </Label>\n )}\n <div\n id={props.id}\n className=\"grid gap-2\"\n aria-invalid={Boolean(validation)}\n aria-describedby={validation ? `${id}-validation` : undefined}\n >\n {renderChoices()}\n </div>\n {validation && (\n <Label\n id={`${id}-validation`}\n className=\"text-[0.8rem] font-medium text-destructive\"\n >\n {validation.message}\n </Label>\n )}\n {note && (\n <Label className=\"text-[0.8rem] text-muted-foreground\">\n <ReactAsset {...note} />\n </Label>\n )}\n </div>\n );\n};\n\nexport default Choice;\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { Input as InputComp } from \"./Input\";\nimport { Label } from \"./Label\";\nimport type { ChoiceItem as ChoiceItemType } from \"@player-ui/reference-assets-plugin\";\n\nexport type ChoiceItemProps = React.InputHTMLAttributes<HTMLInputElement> &\n Pick<ChoiceItemType, \"label\">;\n\n/** A choice item */\nexport const ChoiceItem = (props: ChoiceItemProps) => {\n const { label, id, ...rest } = props;\n\n return (\n <div className=\"flex items-center gap-1.5\">\n <InputComp\n type=\"radio\"\n className=\"h-fit w-fit shadow-none\"\n id={id}\n {...rest}\n />\n {label && (\n <Label htmlFor={id}>\n <ReactAsset {...label} />\n </Label>\n )}\n </div>\n );\n};\n\nexport default ChoiceItem;\n","import { useBeacon } from \"@player-ui/beacon-plugin-react\";\nimport type {\n TransformedChoice,\n TransformedChoiceItem,\n} from \"@player-ui/reference-assets-plugin\";\nimport type { ChoiceItemProps } from \"../../components/ChoiceItem\";\n\n/** Hook to get the props for all choice asset items */\nexport const useChoiceItems = (\n props: TransformedChoice,\n): Array<ChoiceItemProps> => {\n const beacon = useBeacon({\n asset: props,\n action: \"clicked\",\n element: \"choice\",\n });\n\n return (\n props.items?.map((item: TransformedChoiceItem) => {\n const { id, value, label } = item;\n return {\n id,\n label,\n name: props.id,\n value: (value ?? \"\").toString(),\n checked: value === props.value,\n onChange: () => {\n beacon();\n item.select();\n },\n };\n }) ?? []\n );\n};\n"],"mappings":"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","names":["React","React","React","Input","React","React","React","React","React","ReactAsset","React","ReactAsset","React","ReactAsset","useBeacon","React","cva","cva","React","ReactAsset","React","ReactAsset","React","React","ReactAsset","React","ReactAsset","React","ReactAsset","React","ReactAsset","React","ReactAsset","useBeacon","React","ReactAsset","Input"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/plugin.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/input/Input.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Input.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/utils.ts","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Label.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/input/hooks.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/text/Text.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/text/hooks.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/collection/Collection.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/action/Action.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/action/hooks.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Button.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/info/Info.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/Separator.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/image/Image.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/choice/Choice.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/components/ChoiceItem.tsx","../../../../../../../../../../../../execroot/_main/bazel-out/k8-fastbuild/bin/plugins/reference-assets/react/src/assets/choice/hooks.tsx"],"sourcesContent":["import React from \"react\";\nimport type {\n ReactPlayer,\n ReactPlayerPlugin,\n Player,\n ExtendedPlayerPlugin,\n} from \"@player-ui/react\";\nimport { AssetProviderPlugin } from \"@player-ui/asset-provider-plugin-react\";\nimport type {\n InputAsset,\n TextAsset,\n CollectionAsset,\n ActionAsset,\n InfoAsset,\n ChoiceAsset,\n} from \"@player-ui/reference-assets-plugin\";\nimport { ReferenceAssetsPlugin as ReferenceAssetsCorePlugin } from \"@player-ui/reference-assets-plugin\";\nimport { Input, Text, Collection, Action, Info, Image, Choice } from \"./assets\";\n\n/**\n * A plugin to register the base reference assets\n */\nexport class ReferenceAssetsPlugin\n implements\n ReactPlayerPlugin,\n ExtendedPlayerPlugin<\n [InputAsset, TextAsset, ActionAsset, CollectionAsset, ChoiceAsset],\n [InfoAsset]\n >\n{\n name = \"reference-assets-web-plugin\";\n\n applyReact(reactPlayer: ReactPlayer) {\n reactPlayer.registerPlugin(\n new AssetProviderPlugin([\n [\"input\", Input],\n [\"text\", Text],\n [\"action\", Action],\n [\"info\", Info],\n [\"collection\", Collection],\n [\"image\", Image],\n [\"choice\", Choice],\n ]),\n );\n }\n\n apply(player: Player) {\n player.registerPlugin(new ReferenceAssetsCorePlugin());\n }\n}\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { TransformedInput } from \"@player-ui/reference-assets-plugin\";\nimport { Input as InputComp } from \"../../components/Input\";\nimport { Label } from \"../../components/Label\";\n\nimport { useInputAsset } from \"./hooks\";\n\n/** An Input */\nexport const Input = (props: TransformedInput) => {\n const { validation, label, id, note } = props;\n const inputProps = useInputAsset(props);\n\n return (\n <div className=\"player-grid player-w-full player-max-w-sm player-items-center player-gap-1.5\">\n {label && (\n <Label htmlFor={id}>\n <ReactAsset {...label} />\n </Label>\n )}\n <InputComp\n id={id}\n aria-invalid={Boolean(validation)}\n aria-describedby={validation ? `${id}-validation` : undefined}\n {...inputProps}\n />\n {validation && (\n <Label\n id={`${id}-validation`}\n className=\"player-text-[0.8rem] player-font-medium player-text-destructive\"\n >\n {validation.message}\n </Label>\n )}\n {note && (\n <Label className=\"player-text-[0.8rem] player-text-muted-foreground\">\n <ReactAsset {...note} />\n </Label>\n )}\n </div>\n );\n};\n\nexport default Input;\n","/* eslint-disable @typescript-eslint/no-empty-interface */\nimport * as React from \"react\";\n\nimport { cn } from \"../utils\";\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement> {}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, type, ...props }, ref) => {\n return (\n <input\n type={type}\n className={cn(\n \"player-flex player-h-9 player-w-full player-rounded-md player-border player-border-input player-bg-transparent player-px-3 player-py-1 player-text-sm player-shadow-sm player-transition-colors file:player-border-0 file:player-bg-transparent file:player-text-sm file:player-font-medium placeholder:player-text-muted-foreground focus-visible:player-outline-none focus-visible:player-ring-1 focus-visible:player-ring-ring player-disabled:player-cursor-not-allowed disabled:player-opacity-50\",\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n },\n);\nInput.displayName = \"Input\";\n\nexport { Input };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../utils\";\n\nconst labelVariants = cva(\n \"player-text-sm player-font-medium player-leading-none peer-disabled:player-cursor-not-allowed peer-disabled:player-opacity-70\",\n);\n\nconst Label = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <LabelPrimitive.Root\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label };\n","import React from \"react\";\nimport { useBeacon } from \"@player-ui/beacon-plugin-react\";\nimport type { TransformedInput } from \"@player-ui/reference-assets-plugin\";\nimport type { KeyDownHandler } from \"./types\";\n\nexport interface InputHookConfig {\n /** Format the input as the user keys down */\n liveFormat?: boolean;\n\n /** Skip sending beacon events for this input */\n suppressBeacons?: boolean;\n\n /** Time (ms) to wait before formatting the user input for normal keys */\n quickFormatDelay?: number;\n\n /** Time (ms) to wait before formatting the input after the user types a special _slow_ format key */\n slowFormatDelay?: number;\n\n /** Keys to use a slower formatter for. Usually reserved for backspace, arrows, tabs, etc */\n slowFormatKeys?: Array<number | string>;\n\n /** Symbol to be used for decimal point */\n decimalSymbol?: string;\n\n /** Affix to append to value - does not save to model and is only for display on input */\n prefix?: string;\n\n /** Affix to prepend to value - does not save to model and is only for display on input */\n suffix?: string;\n}\n\nconst defaultKeyStrings = [\n \"Delete\",\n \"Backspace\",\n \"Tab\",\n \"Home\",\n \"End\",\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"Escape\",\n];\n\n/** Create a valid config mixing in defaults and user overrides */\nexport const getConfig = (\n userConfig: InputHookConfig = {},\n): Required<InputHookConfig> => {\n return {\n liveFormat: true,\n suppressBeacons: false,\n quickFormatDelay: 200,\n slowFormatDelay: 1000,\n slowFormatKeys: defaultKeyStrings,\n decimalSymbol: \".\",\n prefix: \"\",\n suffix: \"\",\n ...userConfig,\n };\n};\n\n/** A hook to manage beacon changes for input assets */\nexport const useInputBeacon = (props: TransformedInput) => {\n const beaconHandler = useBeacon({ element: \"text_input\", asset: props });\n\n return (newValue: string) => {\n let action = \"modified\";\n\n if (newValue === props.value) {\n return;\n }\n\n if (newValue && !props.value) {\n action = \"added\";\n } else if (!newValue && props.value) {\n action = \"deleted\";\n }\n\n beaconHandler({ action });\n };\n};\n\n/**\n * A hook to manage an input html element as an asset.\n * The hook returns an object containing props that are expected to reside on any html input.\n * It will handle formatting, setting values, beaconing, aria-labels, etc.\n *\n * @param props - The output of the input transform\n * @param config - Local config to manage user interaction overrides\n */\nexport const useInputAsset = (\n props: TransformedInput,\n config?: InputHookConfig,\n) => {\n const [localValue, setLocalValue] = React.useState(props.value ?? \"\");\n const formatTimerRef = React.useRef<NodeJS.Timeout | undefined>(undefined);\n const inputBeacon = useInputBeacon(props);\n\n const {\n liveFormat,\n suppressBeacons,\n quickFormatDelay,\n slowFormatDelay,\n slowFormatKeys,\n decimalSymbol,\n prefix,\n suffix,\n } = getConfig(config);\n\n /** Reset and pending format timers */\n function clearPending() {\n if (formatTimerRef.current) {\n clearTimeout(formatTimerRef.current);\n formatTimerRef.current = undefined;\n }\n }\n\n /** Determines whether pressed key should trigger slow format or quick format delay */\n function getFormatDelaySpeed(e: React.KeyboardEvent<HTMLInputElement>) {\n const key = slowFormatKeys.every((k) => typeof k === \"number\")\n ? e.which\n : e.key;\n\n return slowFormatKeys.includes(key) ? slowFormatDelay : quickFormatDelay;\n }\n\n /** Affix handling logic on focus */\n function handleAffixOnFocus(target: HTMLInputElement) {\n let val = target.value;\n\n if (suffix) val = val.substring(0, val.indexOf(suffix));\n\n if (prefix && !val.includes(prefix)) {\n val = `${prefix}${val}`;\n }\n\n return val;\n }\n\n /** Edge cases handling for prefix */\n function handlePrefixEdgeCases(e: React.KeyboardEvent<HTMLInputElement>) {\n const target = e.target as HTMLInputElement;\n const start = target.selectionStart;\n const end = target.selectionEnd;\n const pl = prefix.length;\n const atStart = start === pl;\n const atEnd = end === pl;\n\n if (start && end && start < pl) {\n e.preventDefault();\n target.setSelectionRange(pl, end - start + pl);\n } else if (\n (e.key === \"ArrowLeft\" && atStart) ||\n (e.key === \"Backspace\" && atStart && atEnd) ||\n e.key === \"Home\"\n ) {\n e.preventDefault();\n target.setSelectionRange(prefix.length, prefix.length);\n }\n }\n\n /** Helper to add affixes to value where appropriate */\n function formatValueWithAffix(value: string | undefined) {\n if (!value) return \"\";\n\n return `${prefix}${value}${suffix}`;\n }\n\n /** Value handling logic on key down */\n const onKeyDownHandler: KeyDownHandler = (currentValue: string) => {\n const symbolPosition = currentValue.indexOf(decimalSymbol);\n const newValue = props.format(currentValue) ?? \"\";\n const newSymbolPosition = newValue.indexOf(decimalSymbol);\n\n if (\n (symbolPosition === -1 || symbolPosition === 0) &&\n newSymbolPosition > 0\n ) {\n // formatting added dot, so set cursor before dot\n return {\n newValue: newValue.includes(prefix)\n ? `${newValue}`\n : `${prefix}${newValue}`,\n newCursorPosition: newValue.includes(prefix)\n ? newSymbolPosition\n : newSymbolPosition + prefix.length,\n };\n }\n\n return {\n newValue: newValue.includes(prefix)\n ? `${newValue}`\n : `${prefix}${newValue}`,\n };\n };\n\n /** On blur, commit the value to the model */\n const onBlur: React.FocusEventHandler<HTMLInputElement> = (e) => {\n clearPending();\n\n const formatted =\n (prefix\n ? e.target.value.replace(prefix, \"\")\n : props.format(e.target.value)) ?? \"\";\n\n if (formatted) {\n props.set(formatted);\n setLocalValue(formatValueWithAffix(formatted));\n } else {\n props.set(\"\");\n setLocalValue(\"\");\n }\n\n if (!suppressBeacons) {\n inputBeacon(formatted);\n }\n };\n\n /** Keep track of any user changes */\n const onChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n setLocalValue(e.target.value);\n };\n\n /** Schedule a format of the current input in the future */\n const onKeyDown: React.KeyboardEventHandler<HTMLInputElement> = (e) => {\n clearPending();\n\n if (prefix) handlePrefixEdgeCases(e);\n\n const target = e.target as HTMLInputElement;\n\n if (liveFormat) {\n formatTimerRef.current = setTimeout(() => {\n const cursorPosition = target.selectionStart;\n const currentValue = target.value;\n\n /** Skip formatting if we're in the middle of the input */\n if (cursorPosition !== currentValue.length) {\n return;\n }\n\n const obj = onKeyDownHandler(currentValue);\n\n setLocalValue(obj.newValue);\n target.selectionStart = obj.newCursorPosition ?? target.selectionStart;\n target.selectionEnd = obj.newCursorPosition ?? target.selectionEnd;\n }, getFormatDelaySpeed(e));\n }\n };\n\n /** Format value onFocus if affixes exist */\n const onFocus: React.FocusEventHandler<HTMLInputElement> = (e) => {\n const target = e.target as HTMLInputElement;\n const inputEmpty = target.value === \"\";\n\n if ((!inputEmpty && suffix) || (inputEmpty && prefix)) {\n setLocalValue(handleAffixOnFocus(target));\n }\n };\n\n // Update the stored value if data changes\n const propsValue = props.value;\n React.useEffect(() => {\n setLocalValue(formatValueWithAffix(propsValue));\n }, [propsValue]);\n\n /** clear anything pending on unmount of input */\n React.useEffect(() => clearPending, []);\n\n return {\n onBlur,\n onChange,\n onKeyDown,\n onFocus,\n value: localValue,\n };\n};\n","import React from \"react\";\nimport type {\n TextAsset,\n LinkModifier,\n} from \"@player-ui/reference-assets-plugin\";\nimport { useText } from \"./hooks\";\n\n/** Find any link modifiers on the text */\nexport const getLinkModifier = (asset: TextAsset): LinkModifier | undefined => {\n return asset.modifiers?.find(\n (mod) =>\n mod.type === \"link\" &&\n (mod.metaData as LinkModifier[\"metaData\"])?.ref !== undefined,\n ) as LinkModifier;\n};\n\n/** A text asset */\nexport const Text = (props: TextAsset) => {\n const spanProps = useText(props);\n const linkModifier = getLinkModifier(props);\n const { value } = props;\n\n if (linkModifier) {\n return (\n <a\n className=\"player-underline player-text-blue-600 hover:player-text-blue-800 visited:player-text-purple-600\"\n href={linkModifier.metaData.ref}\n >\n {value}\n </a>\n );\n }\n\n return <span {...spanProps}>{value}</span>;\n};\n","import React, { useContext } from \"react\";\nimport makeClass from \"clsx\";\nimport { useAssetProps } from \"@player-ui/react\";\nimport type { TextAsset } from \"@player-ui/reference-assets-plugin\";\n\nexport interface TextModifierContextType {\n getClassForModifier?<T>(modifier: T): string | undefined;\n}\n\nexport const TextModifierContext = React.createContext<\n TextModifierContextType | undefined\n>(undefined);\n\n/** Get the props for a basic text element */\nexport const useText = (props: TextAsset): JSX.IntrinsicElements[\"span\"] => {\n let className: string | undefined;\n\n const modifierContext = useContext(TextModifierContext);\n\n if (props.modifiers && modifierContext?.getClassForModifier) {\n className = makeClass(\n ...props.modifiers.map(modifierContext.getClassForModifier),\n );\n }\n\n return {\n ...useAssetProps(props),\n className,\n children: props.value,\n };\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { CollectionAsset } from \"@player-ui/reference-assets-plugin\";\n\nexport const Collection = (props: CollectionAsset) => {\n return (\n <div className=\"player-flex player-flex-col player-gap-4\">\n {props.label && (\n <h3>\n <ReactAsset {...props.label} />\n </h3>\n )}\n {props.values?.map((a) => <ReactAsset key={a.asset.id} {...a} />)}\n </div>\n );\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { ChevronLeftIcon } from \"lucide-react\";\nimport type { TransformedAction } from \"@player-ui/reference-assets-plugin\";\nimport { isBackAction } from \"@player-ui/reference-assets-plugin\";\nimport { useAction } from \"./hooks\";\nimport { Button } from \"../../components/Button\";\n\n/**\n * An action that a user can take\n */\nexport const Action = (props: TransformedAction) => {\n const { label } = props;\n const buttonProps = useAction(props);\n\n return (\n <div>\n <Button\n variant={isBackAction(props) ? \"outline\" : undefined}\n {...buttonProps}\n >\n {props?.metaData?.role === \"back\" && <ChevronLeftIcon />}\n {label && <ReactAsset {...label} />}\n </Button>\n </div>\n );\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { useBeacon } from \"@player-ui/beacon-plugin-react\";\nimport type { TransformedAction } from \"@player-ui/reference-assets-plugin\";\n\n/** Hook to get all the props for a button */\nexport const useAction = (props: TransformedAction) => {\n const { label } = props;\n const beacon = useBeacon({\n asset: props,\n action: \"clicked\",\n element: \"button\",\n });\n\n return {\n id: props.id,\n onClick: () => {\n beacon();\n props.run();\n },\n children: label?.asset ? <ReactAsset {...label?.asset} /> : null,\n } as const;\n};\n","import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { cn } from \"../utils\";\n\nconst buttonVariants = cva(\n \"player-inline-flex player-items-center player-justify-center player-whitespace-nowrap player-rounded-md player-text-sm player-font-medium player-transition-colors focus-visible:player-outline-none focus-visible:player-ring-1 focus-visible:player-ring-ring disabled:player-pointer-events-none disabled:player-opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"player-bg-primary player-text-primary-foreground player-shadow hover:player-bg-primary/90\",\n destructive:\n \"player-bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90\",\n outline:\n \"player-border player-border-input player-bg-background player-shadow-sm hover:player-bg-accent hover:player-text-accent-foreground\",\n secondary:\n \"player-bg-secondary player-text-secondary-foreground player-shadow-sm hover:player-bg-secondary/80\",\n ghost: \"hover:player-bg-accent hover:player-text-accent-foreground\",\n link: \"player-text-primary player-underline-offset-4 hover:player-underline\",\n },\n size: {\n default: \"player-h-9 player-px-4 player-py-2\",\n sm: \"player-h-8 player-rounded-md player-px-3 player-text-xs\",\n lg: \"player-h-10 player-rounded-md player-px-8\",\n icon: \"player-h-9 player-w-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n },\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import React from \"react\";\nimport type { InfoAssetTransform } from \"@player-ui/reference-assets-plugin\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { Separator } from \"../../components/Separator\";\n\n/** The info view type is used to show information to the user */\nexport const Info = (props: InfoAssetTransform) => {\n return (\n <div className=\"player-max-w-full\">\n <div className=\"player-flex player-flex-col player-gap-4\">\n {props.title && (\n <h1 className=\"player-scroll-m-20 player-text-4xl player-font-extrabold player-tracking-tight lg:player-text-5xl\">\n <ReactAsset {...props.title} />\n </h1>\n )}\n {props.subTitle && (\n <h3 className=\"player-scroll-m-20 player-text-2xl player-font-semibold player-tracking-tight\">\n <ReactAsset {...props.subTitle} />\n </h3>\n )}\n {props.primaryInfo && (\n <div>\n <ReactAsset {...props.primaryInfo} />\n </div>\n )}\n <div className=\"player-flex player-flex-col player-gap-4\">\n {props?.segmentedActions && <Separator />}\n <div className=\"player-flex player-justify-between sm:player-flex-row player-flex-col-reverse player-gap-4\">\n <div className=\"player-flex player-gap-4\">\n {props?.segmentedActions?.prev?.map((a) => (\n <ReactAsset key={a.asset.id} {...a} />\n ))}\n </div>\n <div className=\"player-flex player-gap-4\">\n {props?.segmentedActions?.next?.map((a) => (\n <ReactAsset key={a.asset.id} {...a} />\n ))}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as SeparatorPrimitive from \"@radix-ui/react-separator\";\nimport { cn } from \"../utils\";\n\nconst Separator = React.forwardRef<\n React.ElementRef<typeof SeparatorPrimitive.Root>,\n SeparatorPrimitive.SeparatorProps\n>(\n (\n { className, orientation = \"horizontal\", decorative = true, ...props },\n ref,\n ) => (\n <SeparatorPrimitive.Root\n ref={ref}\n decorative={decorative}\n orientation={orientation}\n className={cn(\n \"player-shrink-0 player-bg-border\",\n orientation === \"horizontal\"\n ? \"player-h-[1px] player-w-full\"\n : \"player-h-full player-w-[1px]\",\n className,\n )}\n {...props}\n />\n ),\n);\nSeparator.displayName = SeparatorPrimitive.Root.displayName;\n\nexport { Separator };\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { TransformedImage } from \"@player-ui/reference-assets-plugin\";\n\nexport const Image = (props: TransformedImage) => {\n const { metaData, caption, altText } = props;\n\n return (\n <figure className=\"player-figure\">\n <img\n className=\"player-figure-img player-img-fluid\"\n src={metaData.ref}\n alt={altText}\n />\n {caption && (\n <figcaption className=\"player-figure-caption\" style={{ marginTop: 15 }}>\n <ReactAsset {...caption} />\n </figcaption>\n )}\n </figure>\n );\n};\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport type { TransformedChoice } from \"@player-ui/reference-assets-plugin\";\nimport { ChoiceItem } from \"../../components/ChoiceItem\";\nimport { Label } from \"../../components/Label\";\nimport type { ChoiceItemProps } from \"../../components/ChoiceItem\";\n\nimport { useChoiceItems } from \"./hooks\";\n\n/** A Choice */\nexport const Choice = (props: TransformedChoice) => {\n const { validation, title, id, note } = props;\n const choiceItemProps: Array<ChoiceItemProps> = useChoiceItems(props);\n\n const renderChoices = () =>\n choiceItemProps.map((choiceItemProp) => (\n <ChoiceItem key={choiceItemProp.id} {...choiceItemProp} />\n ));\n\n return (\n <div className=\"player-grid player-w-full player-max-w-sm player-items-center player-gap-3\">\n {title && (\n <Label htmlFor={id}>\n <ReactAsset {...title} />\n </Label>\n )}\n <div\n id={props.id}\n className=\"player-grid player-gap-2\"\n aria-invalid={Boolean(validation)}\n aria-describedby={validation ? `${id}-validation` : undefined}\n >\n {renderChoices()}\n </div>\n {validation && (\n <Label\n id={`${id}-validation`}\n className=\"player-text-[0.8rem] player-font-medium player-text-destructive\"\n >\n {validation.message}\n </Label>\n )}\n {note && (\n <Label className=\"player-text-[0.8rem] player-text-muted-foreground\">\n <ReactAsset {...note} />\n </Label>\n )}\n </div>\n );\n};\n\nexport default Choice;\n","import React from \"react\";\nimport { ReactAsset } from \"@player-ui/react\";\nimport { Input as InputComp } from \"./Input\";\nimport { Label } from \"./Label\";\nimport type { ChoiceItem as ChoiceItemType } from \"@player-ui/reference-assets-plugin\";\n\nexport type ChoiceItemProps = React.InputHTMLAttributes<HTMLInputElement> &\n Pick<ChoiceItemType, \"label\">;\n\n/** A choice item */\nexport const ChoiceItem = (props: ChoiceItemProps) => {\n const { label, id, ...rest } = props;\n\n return (\n <div className=\"player-flex player-items-center player-gap-1.5\">\n <InputComp\n type=\"radio\"\n className=\"player-h-fit player-w-fit player-shadow-none\"\n id={id}\n {...rest}\n />\n {label && (\n <Label htmlFor={id}>\n <ReactAsset {...label} />\n </Label>\n )}\n </div>\n );\n};\n\nexport default ChoiceItem;\n","import { useBeacon } from \"@player-ui/beacon-plugin-react\";\nimport type {\n TransformedChoice,\n TransformedChoiceItem,\n} from \"@player-ui/reference-assets-plugin\";\nimport type { ChoiceItemProps } from \"../../components/ChoiceItem\";\n\n/** Hook to get the props for all choice asset items */\nexport const useChoiceItems = (\n props: TransformedChoice,\n): Array<ChoiceItemProps> => {\n const beacon = useBeacon({\n asset: props,\n action: \"clicked\",\n element: \"choice\",\n });\n\n return (\n props.items?.map((item: TransformedChoiceItem) => {\n const { id, value, label } = item;\n return {\n id,\n label,\n name: props.id,\n value: (value ?? \"\").toString(),\n checked: value === props.value,\n onChange: () => {\n beacon();\n item.select();\n },\n };\n }) ?? []\n );\n};\n"],"mappings":"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","names":["React","React","React","Input","React","React","React","React","React","ReactAsset","React","ReactAsset","React","ReactAsset","useBeacon","React","cva","cva","React","ReactAsset","React","ReactAsset","React","React","ReactAsset","React","ReactAsset","React","ReactAsset","React","ReactAsset","React","ReactAsset","useBeacon","React","ReactAsset","Input"]}
|
package/package.json
CHANGED
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
"types"
|
|
7
7
|
],
|
|
8
8
|
"name": "@player-ui/reference-assets-plugin-react",
|
|
9
|
-
"version": "0.10.0-next.
|
|
9
|
+
"version": "0.10.0-next.10",
|
|
10
10
|
"main": "dist/cjs/index.cjs",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@player-ui/asset-provider-plugin-react": "0.10.0-next.
|
|
13
|
-
"@player-ui/beacon-plugin-react": "0.10.0-next.
|
|
14
|
-
"@player-ui/partial-match-registry": "0.10.0-next.
|
|
15
|
-
"@player-ui/reference-assets-plugin": "0.10.0-next.
|
|
12
|
+
"@player-ui/asset-provider-plugin-react": "0.10.0-next.10",
|
|
13
|
+
"@player-ui/beacon-plugin-react": "0.10.0-next.10",
|
|
14
|
+
"@player-ui/partial-match-registry": "0.10.0-next.10",
|
|
15
|
+
"@player-ui/reference-assets-plugin": "0.10.0-next.10",
|
|
16
16
|
"@radix-ui/react-label": "^2.0.2",
|
|
17
17
|
"@radix-ui/react-separator": "^1.0.3",
|
|
18
18
|
"@radix-ui/react-slot": "^1.0.2",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@player-ui/make-flow": "workspace:*"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
|
-
"@player-ui/react": "0.10.0-next.
|
|
29
|
+
"@player-ui/react": "0.10.0-next.10",
|
|
30
30
|
"react": "^18.2.0",
|
|
31
31
|
"@types/react": "^18.2.39"
|
|
32
32
|
},
|
|
@@ -149,8 +149,10 @@ describe("Integration tests", () => {
|
|
|
149
149
|
fireEvent.click(itemNode);
|
|
150
150
|
});
|
|
151
151
|
|
|
152
|
-
|
|
153
|
-
|
|
152
|
+
await waitFor(async () => {
|
|
153
|
+
itemNode = await screen.findByTestId(item.id);
|
|
154
|
+
expect(itemNode.checked).toEqual(true);
|
|
155
|
+
});
|
|
154
156
|
}
|
|
155
157
|
});
|
|
156
158
|
});
|