@octaviaflow/core 3.1.0-beta.107 → 3.1.0-beta.109
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/components/Breadcrumb/Breadcrumb.d.ts +7 -0
- package/dist/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
- package/dist/components/ExpressionField/ExpressionField.d.ts.map +1 -1
- package/dist/index.cjs +262 -225
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +195 -158
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2420,14 +2420,32 @@ import { useBreadcrumbItem, useBreadcrumbs } from "react-aria";
|
|
|
2420
2420
|
import { Fragment as Fragment5, jsx as jsx8, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
2421
2421
|
function BreadcrumbItem({ item, isCurrent }) {
|
|
2422
2422
|
const ref = useRef3(null);
|
|
2423
|
+
const interactive = !isCurrent && (!!item.href || !!item.onClick);
|
|
2423
2424
|
const { itemProps } = useBreadcrumbItem(
|
|
2424
|
-
{
|
|
2425
|
+
{
|
|
2426
|
+
children: item.label,
|
|
2427
|
+
isCurrent,
|
|
2428
|
+
elementType: item.href ? "a" : item.onClick && !isCurrent ? "button" : "span"
|
|
2429
|
+
},
|
|
2425
2430
|
ref
|
|
2426
2431
|
);
|
|
2427
2432
|
const content = /* @__PURE__ */ jsxs8(Fragment5, { children: [
|
|
2428
2433
|
item.icon && /* @__PURE__ */ jsx8("span", { className: "ods-breadcrumb__icon", children: item.icon }),
|
|
2429
2434
|
/* @__PURE__ */ jsx8("span", { children: item.label })
|
|
2430
2435
|
] });
|
|
2436
|
+
if (item.onClick && !item.href && interactive) {
|
|
2437
|
+
return /* @__PURE__ */ jsx8(
|
|
2438
|
+
"button",
|
|
2439
|
+
{
|
|
2440
|
+
...itemProps,
|
|
2441
|
+
ref,
|
|
2442
|
+
type: "button",
|
|
2443
|
+
onClick: item.onClick,
|
|
2444
|
+
className: cn("ods-breadcrumb__link", "ods-breadcrumb__link--button"),
|
|
2445
|
+
children: content
|
|
2446
|
+
}
|
|
2447
|
+
);
|
|
2448
|
+
}
|
|
2431
2449
|
if (item.href && !isCurrent) {
|
|
2432
2450
|
return /* @__PURE__ */ jsx8(
|
|
2433
2451
|
"a",
|
|
@@ -34428,6 +34446,8 @@ import {
|
|
|
34428
34446
|
useRef as useRef50,
|
|
34429
34447
|
useState as useState71
|
|
34430
34448
|
} from "react";
|
|
34449
|
+
import { createPortal as createPortal19 } from "react-dom";
|
|
34450
|
+
import { AddIcon as AddIcon6, CloseIcon as CloseIcon20 } from "@octaviaflow/icons";
|
|
34431
34451
|
|
|
34432
34452
|
// src/components/ExpressionField/parseExpression.ts
|
|
34433
34453
|
var CALL_NAME_SOURCE = "(?:[A-Z_][A-Z0-9_]*|user\\.[A-Za-z_][A-Za-z0-9_]*)";
|
|
@@ -34647,6 +34667,16 @@ function insideCallArguments(textBeforeCaret) {
|
|
|
34647
34667
|
}
|
|
34648
34668
|
return depth > 0;
|
|
34649
34669
|
}
|
|
34670
|
+
function anchorRect(el) {
|
|
34671
|
+
const box = el.getBoundingClientRect();
|
|
34672
|
+
const width = Math.max(300, box.width);
|
|
34673
|
+
return {
|
|
34674
|
+
top: box.bottom + 4,
|
|
34675
|
+
// Keep it on screen when the chip sits near the right edge.
|
|
34676
|
+
left: Math.max(8, Math.min(box.left, window.innerWidth - width - 8)),
|
|
34677
|
+
width
|
|
34678
|
+
};
|
|
34679
|
+
}
|
|
34650
34680
|
function argSummary(arg, nameOf, depth = 2) {
|
|
34651
34681
|
const trimmed = arg.trim();
|
|
34652
34682
|
const call = parseCall(trimmed);
|
|
@@ -34835,17 +34865,7 @@ function ExpressionField({
|
|
|
34835
34865
|
const openEditor = useCallback50((chip) => {
|
|
34836
34866
|
const raw = chip.getAttribute("data-value") ?? "";
|
|
34837
34867
|
if (!parseCall(raw)) return;
|
|
34838
|
-
|
|
34839
|
-
const host = fieldRef.current?.getBoundingClientRect();
|
|
34840
|
-
setEditing({
|
|
34841
|
-
el: chip,
|
|
34842
|
-
raw,
|
|
34843
|
-
rect: {
|
|
34844
|
-
top: box.bottom - (host?.top ?? 0) + 4,
|
|
34845
|
-
left: Math.max(0, box.left - (host?.left ?? 0)),
|
|
34846
|
-
width: Math.max(300, box.width)
|
|
34847
|
-
}
|
|
34848
|
-
});
|
|
34868
|
+
setEditing({ el: chip, raw, rect: anchorRect(chip) });
|
|
34849
34869
|
}, []);
|
|
34850
34870
|
const applyEditor = useCallback50(
|
|
34851
34871
|
(raw) => {
|
|
@@ -35071,156 +35091,173 @@ function CallEditor({
|
|
|
35071
35091
|
setDraft((d) => replaceArgument(d, [...path, index], bare));
|
|
35072
35092
|
if (kind === "function" || parseCall(bare)) setPath((pth) => [...pth, index]);
|
|
35073
35093
|
};
|
|
35074
|
-
|
|
35075
|
-
|
|
35076
|
-
|
|
35077
|
-
|
|
35078
|
-
|
|
35079
|
-
|
|
35080
|
-
|
|
35081
|
-
"
|
|
35082
|
-
|
|
35083
|
-
|
|
35084
|
-
|
|
35085
|
-
|
|
35094
|
+
const [pos, setPos] = useState71(rect);
|
|
35095
|
+
useEffect56(() => {
|
|
35096
|
+
const follow = () => setPos(anchorRect(anchor));
|
|
35097
|
+
window.addEventListener("scroll", follow, true);
|
|
35098
|
+
window.addEventListener("resize", follow);
|
|
35099
|
+
return () => {
|
|
35100
|
+
window.removeEventListener("scroll", follow, true);
|
|
35101
|
+
window.removeEventListener("resize", follow);
|
|
35102
|
+
};
|
|
35103
|
+
}, [anchor]);
|
|
35104
|
+
if (typeof document === "undefined") return null;
|
|
35105
|
+
return createPortal19(
|
|
35106
|
+
/* @__PURE__ */ jsxs141(
|
|
35107
|
+
"div",
|
|
35108
|
+
{
|
|
35109
|
+
ref: panelRef,
|
|
35110
|
+
"data-ods-floating": "",
|
|
35111
|
+
className: "ods-expression-field__editor",
|
|
35112
|
+
style: { top: pos.top, left: pos.left, width: pos.width },
|
|
35113
|
+
role: "dialog",
|
|
35114
|
+
"aria-label": `Edit ${crumbs[0]?.label ?? "function"}`,
|
|
35115
|
+
children: [
|
|
35116
|
+
/* @__PURE__ */ jsxs141("div", { className: "ods-expression-field__editor-head", children: [
|
|
35086
35117
|
/* @__PURE__ */ jsx147(
|
|
35087
|
-
|
|
35118
|
+
Breadcrumb,
|
|
35088
35119
|
{
|
|
35089
|
-
|
|
35090
|
-
|
|
35091
|
-
|
|
35092
|
-
|
|
35120
|
+
className: "ods-expression-field__editor-crumbs",
|
|
35121
|
+
items: crumbs.map((crumb) => ({
|
|
35122
|
+
label: crumb.label,
|
|
35123
|
+
onClick: () => setPath(crumb.path)
|
|
35124
|
+
}))
|
|
35093
35125
|
}
|
|
35094
|
-
)
|
|
35095
|
-
|
|
35096
|
-
|
|
35097
|
-
|
|
35126
|
+
),
|
|
35127
|
+
/* @__PURE__ */ jsx147(Button, { variant: "ghost", size: "sm", onClick: () => setRawMode((r) => !r), children: rawMode ? "Back to fields" : "Edit as text" })
|
|
35128
|
+
] }),
|
|
35129
|
+
rawMode ? /* @__PURE__ */ jsx147(
|
|
35130
|
+
"textarea",
|
|
35098
35131
|
{
|
|
35099
|
-
|
|
35100
|
-
|
|
35101
|
-
|
|
35102
|
-
|
|
35132
|
+
className: "ods-expression-field__editor-raw",
|
|
35133
|
+
value: draft,
|
|
35134
|
+
rows: 3,
|
|
35135
|
+
"aria-label": "Expression",
|
|
35136
|
+
onChange: (e) => setDraft(e.target.value)
|
|
35103
35137
|
}
|
|
35104
|
-
)
|
|
35105
|
-
|
|
35106
|
-
|
|
35107
|
-
|
|
35108
|
-
|
|
35109
|
-
|
|
35110
|
-
|
|
35111
|
-
|
|
35112
|
-
|
|
35113
|
-
|
|
35114
|
-
|
|
35115
|
-
|
|
35116
|
-
|
|
35117
|
-
|
|
35118
|
-
|
|
35119
|
-
|
|
35120
|
-
|
|
35121
|
-
|
|
35122
|
-
|
|
35123
|
-
|
|
35124
|
-
|
|
35125
|
-
|
|
35126
|
-
|
|
35127
|
-
{
|
|
35128
|
-
type: "button",
|
|
35129
|
-
className: "ods-expression-field__editor-remove",
|
|
35130
|
-
"aria-label": `Remove ${rowLabel}`,
|
|
35131
|
-
title: "Remove this argument",
|
|
35132
|
-
onClick: () => removeArg(index),
|
|
35133
|
-
children: "\u2715"
|
|
35134
|
-
}
|
|
35135
|
-
)
|
|
35136
|
-
] }),
|
|
35137
|
-
nested ? /* @__PURE__ */ jsxs141(
|
|
35138
|
-
"div",
|
|
35139
|
-
{
|
|
35140
|
-
className: "ods-expression-field__editor-nested",
|
|
35141
|
-
onDragOver: (e) => {
|
|
35142
|
-
if (e.dataTransfer.types.includes("application/x-fx-insert")) e.preventDefault();
|
|
35143
|
-
},
|
|
35144
|
-
onDrop: dropInto(index),
|
|
35145
|
-
children: [
|
|
35146
|
-
/* @__PURE__ */ jsx147("code", { children: argSummary(arg, nameOf) }),
|
|
35147
|
-
/* @__PURE__ */ jsxs141("span", { children: [
|
|
35148
|
-
/* @__PURE__ */ jsx147("button", { type: "button", onClick: () => setPath([...path, index]), children: "Open" }),
|
|
35149
|
-
/* @__PURE__ */ jsx147("button", { type: "button", onClick: () => setArg(index, ""), "aria-label": `Clear ${rowLabel}`, children: "Clear" })
|
|
35150
|
-
] })
|
|
35151
|
-
]
|
|
35152
|
-
}
|
|
35153
|
-
) : kind === "reference" ? (
|
|
35154
|
-
// A reference is a value from somewhere else — named, never
|
|
35155
|
-
// its raw `ods://…` path, here as much as in the field.
|
|
35156
|
-
/* @__PURE__ */ jsxs141(
|
|
35138
|
+
) : /* @__PURE__ */ jsxs141("div", { className: "ods-expression-field__editor-rows", children: [
|
|
35139
|
+
args.map((arg, index) => {
|
|
35140
|
+
const kind = argumentKind(arg);
|
|
35141
|
+
const rowLabel = names[index] ?? `argument ${index + 1}`;
|
|
35142
|
+
const nested = kind === "call" ? parseCall(arg) : void 0;
|
|
35143
|
+
return (
|
|
35144
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
35145
|
+
/* @__PURE__ */ jsxs141("div", { className: "ods-expression-field__editor-row", children: [
|
|
35146
|
+
/* @__PURE__ */ jsxs141("span", { className: "ods-expression-field__editor-row-head", children: [
|
|
35147
|
+
/* @__PURE__ */ jsx147("span", { className: "ods-expression-field__editor-row-name", id: `arg-${index}-label`, children: rowLabel }),
|
|
35148
|
+
/* @__PURE__ */ jsx147(
|
|
35149
|
+
Button,
|
|
35150
|
+
{
|
|
35151
|
+
variant: "icon",
|
|
35152
|
+
size: "sm",
|
|
35153
|
+
"aria-label": `Remove ${rowLabel}`,
|
|
35154
|
+
title: "Remove this argument",
|
|
35155
|
+
onClick: () => removeArg(index),
|
|
35156
|
+
children: /* @__PURE__ */ jsx147(CloseIcon20, { size: "sm" })
|
|
35157
|
+
}
|
|
35158
|
+
)
|
|
35159
|
+
] }),
|
|
35160
|
+
nested ? /* @__PURE__ */ jsxs141(
|
|
35157
35161
|
"div",
|
|
35158
35162
|
{
|
|
35159
|
-
className: "ods-expression-field__editor-
|
|
35163
|
+
className: "ods-expression-field__editor-nested",
|
|
35160
35164
|
onDragOver: (e) => {
|
|
35161
35165
|
if (e.dataTransfer.types.includes("application/x-fx-insert")) e.preventDefault();
|
|
35162
35166
|
},
|
|
35163
35167
|
onDrop: dropInto(index),
|
|
35164
35168
|
children: [
|
|
35165
|
-
/* @__PURE__ */ jsx147(
|
|
35166
|
-
|
|
35167
|
-
{
|
|
35168
|
-
|
|
35169
|
-
|
|
35170
|
-
|
|
35171
|
-
|
|
35172
|
-
|
|
35173
|
-
|
|
35174
|
-
|
|
35169
|
+
/* @__PURE__ */ jsx147("code", { children: argSummary(arg, nameOf) }),
|
|
35170
|
+
/* @__PURE__ */ jsxs141("span", { children: [
|
|
35171
|
+
/* @__PURE__ */ jsx147(Button, { variant: "secondary", size: "sm", onClick: () => setPath([...path, index]), children: "Open" }),
|
|
35172
|
+
/* @__PURE__ */ jsx147(
|
|
35173
|
+
Button,
|
|
35174
|
+
{
|
|
35175
|
+
variant: "ghost",
|
|
35176
|
+
size: "sm",
|
|
35177
|
+
"aria-label": `Clear ${rowLabel}`,
|
|
35178
|
+
onClick: () => setArg(index, ""),
|
|
35179
|
+
children: "Clear"
|
|
35180
|
+
}
|
|
35181
|
+
)
|
|
35182
|
+
] })
|
|
35175
35183
|
]
|
|
35176
35184
|
}
|
|
35185
|
+
) : kind === "reference" ? (
|
|
35186
|
+
// A reference is a value from somewhere else — named, never
|
|
35187
|
+
// its raw `ods://…` path, here as much as in the field.
|
|
35188
|
+
/* @__PURE__ */ jsxs141(
|
|
35189
|
+
"div",
|
|
35190
|
+
{
|
|
35191
|
+
className: "ods-expression-field__editor-ref",
|
|
35192
|
+
onDragOver: (e) => {
|
|
35193
|
+
if (e.dataTransfer.types.includes("application/x-fx-insert")) e.preventDefault();
|
|
35194
|
+
},
|
|
35195
|
+
onDrop: dropInto(index),
|
|
35196
|
+
children: [
|
|
35197
|
+
/* @__PURE__ */ jsx147(
|
|
35198
|
+
"span",
|
|
35199
|
+
{
|
|
35200
|
+
className: "ods-expression-field__pill",
|
|
35201
|
+
title: arg,
|
|
35202
|
+
"aria-labelledby": `arg-${index}-label`,
|
|
35203
|
+
children: labelFor(arg.startsWith("ods://") ? `{{${arg}}}` : arg)
|
|
35204
|
+
}
|
|
35205
|
+
),
|
|
35206
|
+
/* @__PURE__ */ jsx147(
|
|
35207
|
+
Button,
|
|
35208
|
+
{
|
|
35209
|
+
variant: "ghost",
|
|
35210
|
+
size: "sm",
|
|
35211
|
+
"aria-label": `Clear ${rowLabel}`,
|
|
35212
|
+
onClick: () => setArg(index, ""),
|
|
35213
|
+
children: "Clear"
|
|
35214
|
+
}
|
|
35215
|
+
)
|
|
35216
|
+
]
|
|
35217
|
+
}
|
|
35218
|
+
)
|
|
35219
|
+
) : /* @__PURE__ */ jsx147(
|
|
35220
|
+
"input",
|
|
35221
|
+
{
|
|
35222
|
+
"aria-labelledby": `arg-${index}-label`,
|
|
35223
|
+
value: arg,
|
|
35224
|
+
placeholder: 'a value, "text", or drag one in',
|
|
35225
|
+
"data-kind": kind,
|
|
35226
|
+
onChange: (e) => setArg(index, e.target.value),
|
|
35227
|
+
onDragOver: (e) => {
|
|
35228
|
+
if (e.dataTransfer.types.includes("application/x-fx-insert")) e.preventDefault();
|
|
35229
|
+
},
|
|
35230
|
+
onDrop: dropInto(index)
|
|
35231
|
+
}
|
|
35177
35232
|
)
|
|
35178
|
-
|
|
35179
|
-
|
|
35180
|
-
|
|
35181
|
-
|
|
35182
|
-
|
|
35183
|
-
|
|
35184
|
-
|
|
35185
|
-
|
|
35186
|
-
|
|
35187
|
-
|
|
35188
|
-
|
|
35189
|
-
|
|
35190
|
-
|
|
35191
|
-
|
|
35192
|
-
|
|
35193
|
-
|
|
35194
|
-
|
|
35195
|
-
|
|
35196
|
-
|
|
35197
|
-
|
|
35198
|
-
|
|
35199
|
-
|
|
35200
|
-
|
|
35201
|
-
|
|
35202
|
-
|
|
35203
|
-
|
|
35204
|
-
|
|
35205
|
-
|
|
35206
|
-
children: "+ Add argument"
|
|
35207
|
-
}
|
|
35208
|
-
)
|
|
35209
|
-
] }),
|
|
35210
|
-
/* @__PURE__ */ jsxs141("div", { className: "ods-expression-field__editor-foot", children: [
|
|
35211
|
-
/* @__PURE__ */ jsx147("button", { type: "button", onClick: onCancel, children: "Cancel" }),
|
|
35212
|
-
/* @__PURE__ */ jsx147(
|
|
35213
|
-
"button",
|
|
35214
|
-
{
|
|
35215
|
-
type: "button",
|
|
35216
|
-
className: "ods-expression-field__editor-primary",
|
|
35217
|
-
onClick: () => onApply(draft),
|
|
35218
|
-
children: "Apply"
|
|
35219
|
-
}
|
|
35220
|
-
)
|
|
35221
|
-
] })
|
|
35222
|
-
]
|
|
35223
|
-
}
|
|
35233
|
+
] }, index)
|
|
35234
|
+
);
|
|
35235
|
+
}),
|
|
35236
|
+
/* @__PURE__ */ jsx147(
|
|
35237
|
+
Button,
|
|
35238
|
+
{
|
|
35239
|
+
variant: "ghost",
|
|
35240
|
+
size: "sm",
|
|
35241
|
+
fullWidth: true,
|
|
35242
|
+
leftIcon: /* @__PURE__ */ jsx147(AddIcon6, { size: "sm" }),
|
|
35243
|
+
onClick: () => setDraft((d) => {
|
|
35244
|
+
const at = callAt(d, path);
|
|
35245
|
+
if (!at) return d;
|
|
35246
|
+
const next = [...at.args, '""'];
|
|
35247
|
+
return path.length === 0 ? formatCall(at.name, next) : replaceArgument(d, path, `${at.name}(${next.join(", ")})`);
|
|
35248
|
+
}),
|
|
35249
|
+
children: "Add argument"
|
|
35250
|
+
}
|
|
35251
|
+
)
|
|
35252
|
+
] }),
|
|
35253
|
+
/* @__PURE__ */ jsxs141("div", { className: "ods-expression-field__editor-foot", children: [
|
|
35254
|
+
/* @__PURE__ */ jsx147(Button, { variant: "secondary", size: "sm", onClick: onCancel, children: "Cancel" }),
|
|
35255
|
+
/* @__PURE__ */ jsx147(Button, { variant: "primary", size: "sm", onClick: () => onApply(draft), children: "Apply" })
|
|
35256
|
+
] })
|
|
35257
|
+
]
|
|
35258
|
+
}
|
|
35259
|
+
),
|
|
35260
|
+
document.body
|
|
35224
35261
|
);
|
|
35225
35262
|
}
|
|
35226
35263
|
|
|
@@ -39613,7 +39650,7 @@ function draftFromChannel(channel, fallbackType = "slack") {
|
|
|
39613
39650
|
}
|
|
39614
39651
|
|
|
39615
39652
|
// src/notifications/components/NotificationChannelForm/NotificationChannelForm.tsx
|
|
39616
|
-
import { AddIcon as
|
|
39653
|
+
import { AddIcon as AddIcon7, CheckmarkFilledIcon as CheckmarkFilledIcon3, LaunchIcon as LaunchIcon2 } from "@octaviaflow/icons";
|
|
39617
39654
|
import { useId as useId68, useState as useState83 } from "react";
|
|
39618
39655
|
import { jsx as jsx164, jsxs as jsxs156 } from "react/jsx-runtime";
|
|
39619
39656
|
var DEFAULT_TYPES = [
|
|
@@ -39779,7 +39816,7 @@ function NotificationChannelForm({
|
|
|
39779
39816
|
{
|
|
39780
39817
|
size,
|
|
39781
39818
|
variant: "ghost",
|
|
39782
|
-
leftIcon: /* @__PURE__ */ jsx164(
|
|
39819
|
+
leftIcon: /* @__PURE__ */ jsx164(AddIcon7, { size: "sm", "aria-hidden": "true" }),
|
|
39783
39820
|
onClick: () => onConnectNew(value.type),
|
|
39784
39821
|
className: "ods-notif-channel-form__connect",
|
|
39785
39822
|
children: "Connect new"
|
|
@@ -40069,7 +40106,7 @@ function NotificationChannelDialog({
|
|
|
40069
40106
|
NotificationChannelDialog.displayName = "NotificationChannelDialog";
|
|
40070
40107
|
|
|
40071
40108
|
// src/notifications/components/NotificationChannelList/NotificationChannelList.tsx
|
|
40072
|
-
import { AddIcon as
|
|
40109
|
+
import { AddIcon as AddIcon8, ConnectIcon } from "@octaviaflow/icons";
|
|
40073
40110
|
import { jsx as jsx166, jsxs as jsxs158 } from "react/jsx-runtime";
|
|
40074
40111
|
function NotificationChannelList({
|
|
40075
40112
|
channels,
|
|
@@ -40098,7 +40135,7 @@ function NotificationChannelList({
|
|
|
40098
40135
|
{
|
|
40099
40136
|
size: "sm",
|
|
40100
40137
|
variant: "secondary",
|
|
40101
|
-
leftIcon: /* @__PURE__ */ jsx166(
|
|
40138
|
+
leftIcon: /* @__PURE__ */ jsx166(AddIcon8, { size: "sm", "aria-hidden": "true" }),
|
|
40102
40139
|
onClick: onAdd,
|
|
40103
40140
|
children: "Add channel"
|
|
40104
40141
|
}
|
|
@@ -40114,7 +40151,7 @@ function NotificationChannelList({
|
|
|
40114
40151
|
Button,
|
|
40115
40152
|
{
|
|
40116
40153
|
variant: "primary",
|
|
40117
|
-
leftIcon: /* @__PURE__ */ jsx166(
|
|
40154
|
+
leftIcon: /* @__PURE__ */ jsx166(AddIcon8, { size: "sm", "aria-hidden": "true" }),
|
|
40118
40155
|
onClick: onAdd,
|
|
40119
40156
|
children: "Add channel"
|
|
40120
40157
|
}
|
|
@@ -40138,7 +40175,7 @@ function NotificationChannelList({
|
|
|
40138
40175
|
channel.id
|
|
40139
40176
|
)),
|
|
40140
40177
|
canAdd && /* @__PURE__ */ jsxs158("button", { type: "button", className: "ods-notif-channels__add", onClick: onAdd, children: [
|
|
40141
|
-
/* @__PURE__ */ jsx166("span", { className: "ods-notif-channels__add-icon", "aria-hidden": "true", children: /* @__PURE__ */ jsx166(
|
|
40178
|
+
/* @__PURE__ */ jsx166("span", { className: "ods-notif-channels__add-icon", "aria-hidden": "true", children: /* @__PURE__ */ jsx166(AddIcon8, { size: "sm" }) }),
|
|
40142
40179
|
"Add channel"
|
|
40143
40180
|
] })
|
|
40144
40181
|
] })
|
|
@@ -40420,7 +40457,7 @@ function NotificationPreferenceMatrix({
|
|
|
40420
40457
|
NotificationPreferenceMatrix.displayName = "NotificationPreferenceMatrix";
|
|
40421
40458
|
|
|
40422
40459
|
// src/notifications/components/NotificationRuleEditor/NotificationRuleEditor.tsx
|
|
40423
|
-
import { AddIcon as
|
|
40460
|
+
import { AddIcon as AddIcon9, RuleIcon } from "@octaviaflow/icons";
|
|
40424
40461
|
import { useId as useId70, useMemo as useMemo45 } from "react";
|
|
40425
40462
|
import { Fragment as Fragment68, jsx as jsx168, jsxs as jsxs160 } from "react/jsx-runtime";
|
|
40426
40463
|
var COOLDOWN_OPTIONS = [
|
|
@@ -40571,7 +40608,7 @@ function NotificationRuleEditor({
|
|
|
40571
40608
|
{
|
|
40572
40609
|
size: "sm",
|
|
40573
40610
|
variant: "ghost",
|
|
40574
|
-
leftIcon: /* @__PURE__ */ jsx168(
|
|
40611
|
+
leftIcon: /* @__PURE__ */ jsx168(AddIcon9, { size: "sm", "aria-hidden": "true" }),
|
|
40575
40612
|
onClick: onAddChannel,
|
|
40576
40613
|
children: "Add channel"
|
|
40577
40614
|
}
|
|
@@ -40765,7 +40802,7 @@ function NotificationRuleEditor({
|
|
|
40765
40802
|
NotificationRuleEditor.displayName = "NotificationRuleEditor";
|
|
40766
40803
|
|
|
40767
40804
|
// src/notifications/components/NotificationRuleList/NotificationRuleList.tsx
|
|
40768
|
-
import { AddIcon as
|
|
40805
|
+
import { AddIcon as AddIcon10, CopyIcon as CopyIcon6, EditIcon as EditIcon2, RuleIcon as RuleIcon2, TrashCanIcon as TrashCanIcon4 } from "@octaviaflow/icons";
|
|
40769
40806
|
import { Fragment as Fragment69, jsx as jsx169, jsxs as jsxs161 } from "react/jsx-runtime";
|
|
40770
40807
|
function NotificationRuleList({
|
|
40771
40808
|
rules,
|
|
@@ -40795,7 +40832,7 @@ function NotificationRuleList({
|
|
|
40795
40832
|
{
|
|
40796
40833
|
size: "sm",
|
|
40797
40834
|
variant: "secondary",
|
|
40798
|
-
leftIcon: /* @__PURE__ */ jsx169(
|
|
40835
|
+
leftIcon: /* @__PURE__ */ jsx169(AddIcon10, { size: "sm", "aria-hidden": "true" }),
|
|
40799
40836
|
onClick: onCreate,
|
|
40800
40837
|
children: "New rule"
|
|
40801
40838
|
}
|
|
@@ -40812,7 +40849,7 @@ function NotificationRuleList({
|
|
|
40812
40849
|
Button,
|
|
40813
40850
|
{
|
|
40814
40851
|
variant: "primary",
|
|
40815
|
-
leftIcon: /* @__PURE__ */ jsx169(
|
|
40852
|
+
leftIcon: /* @__PURE__ */ jsx169(AddIcon10, { size: "sm", "aria-hidden": "true" }),
|
|
40816
40853
|
onClick: onCreate,
|
|
40817
40854
|
children: "New rule"
|
|
40818
40855
|
}
|