@bigbinary/neeto-message-templates-frontend 0.7.2 → 0.7.3
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/README.md +2 -0
- package/app/javascript/src/translations/en.json +1 -0
- package/dist/index.cjs.js +90 -33
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +89 -33
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
- package/types.d.ts +2 -0
package/README.md
CHANGED
|
@@ -128,6 +128,7 @@ along with filtering and search capabilities.
|
|
|
128
128
|
templates pane.
|
|
129
129
|
- `onMutationSuccess`: The callback function which is triggered on the success
|
|
130
130
|
of mutation functions(create, update & delete).
|
|
131
|
+
- `helpDocUrl`: Help article link.
|
|
131
132
|
|
|
132
133
|
##### Usage
|
|
133
134
|
|
|
@@ -270,6 +271,7 @@ filtering and search capabilities.
|
|
|
270
271
|
- `breadcrumbs`: An array of objects that specify breadcrumbs for navigation.
|
|
271
272
|
- `onMutationSuccess`: The callback function which is triggered on the success
|
|
272
273
|
of mutation functions(create, update & delete).
|
|
274
|
+
- `helpDocUrl`: Help article link.
|
|
273
275
|
|
|
274
276
|
##### Usage
|
|
275
277
|
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"subject": "Subject",
|
|
25
25
|
"title": "Template",
|
|
26
26
|
"active": "Active",
|
|
27
|
+
"linkToHelpArticle": "Here is how you can use <Link>{{entity}}</Link>.",
|
|
27
28
|
"templateDeleteConfirmation": "You are deleting the template <strong>{{name}}</strong>. This can't be undone.",
|
|
28
29
|
"deleteTemplate": "Delete {{label, anyCase}}?",
|
|
29
30
|
"emailTemplates": "Email templates",
|
package/dist/index.cjs.js
CHANGED
|
@@ -7,6 +7,7 @@ var neetoCist = require('@bigbinary/neeto-cist');
|
|
|
7
7
|
var neetoFiltersFrontend = require('@bigbinary/neeto-filters-frontend');
|
|
8
8
|
var Container = require('@bigbinary/neeto-molecules/Container');
|
|
9
9
|
var NeetoHeader = require('@bigbinary/neeto-molecules/Header');
|
|
10
|
+
var HelpPopover = require('@bigbinary/neeto-molecules/HelpPopover');
|
|
10
11
|
var SubHeader = require('@bigbinary/neeto-molecules/SubHeader');
|
|
11
12
|
var Button = require('@bigbinary/neetoui/Button');
|
|
12
13
|
var Typography = require('@bigbinary/neetoui/Typography');
|
|
@@ -63,6 +64,7 @@ function _interopNamespace(e) {
|
|
|
63
64
|
|
|
64
65
|
var Container__default = /*#__PURE__*/_interopDefaultLegacy(Container);
|
|
65
66
|
var NeetoHeader__default = /*#__PURE__*/_interopDefaultLegacy(NeetoHeader);
|
|
67
|
+
var HelpPopover__default = /*#__PURE__*/_interopDefaultLegacy(HelpPopover);
|
|
66
68
|
var SubHeader__default = /*#__PURE__*/_interopDefaultLegacy(SubHeader);
|
|
67
69
|
var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
|
|
68
70
|
var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
|
|
@@ -3339,7 +3341,8 @@ var List = function List(_ref) {
|
|
|
3339
3341
|
isFilterApplied = _ref.isFilterApplied,
|
|
3340
3342
|
ownerId = _ref.ownerId,
|
|
3341
3343
|
type = _ref.type,
|
|
3342
|
-
onMutationSuccess = _ref.onMutationSuccess
|
|
3344
|
+
onMutationSuccess = _ref.onMutationSuccess,
|
|
3345
|
+
helpDocUrl = _ref.helpDocUrl;
|
|
3343
3346
|
var _useTranslation = reactI18next.useTranslation(),
|
|
3344
3347
|
t = _useTranslation.t;
|
|
3345
3348
|
var _useDeleteTemplate = useDeleteTemplate(ownerId),
|
|
@@ -3354,6 +3357,34 @@ var List = function List(_ref) {
|
|
|
3354
3357
|
var isSms = type === "sms";
|
|
3355
3358
|
var typeLabelSingular = isSms ? labelSingular : labelSingular.toLowerCase();
|
|
3356
3359
|
var emptyStateLabel = isSms ? label : label.toLowerCase();
|
|
3360
|
+
var noDataProps = _objectSpread$7(_objectSpread$7({}, !isFilterApplied && {
|
|
3361
|
+
primaryButtonProps: {
|
|
3362
|
+
label: addText,
|
|
3363
|
+
onClick: function onClick() {
|
|
3364
|
+
return setManageTemplatePane(ramda.assoc("isOpen", true));
|
|
3365
|
+
}
|
|
3366
|
+
},
|
|
3367
|
+
helpText: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
|
|
3368
|
+
i18nKey: "neetoMessageTemplate.template.linkToHelpArticle",
|
|
3369
|
+
values: {
|
|
3370
|
+
entity: label
|
|
3371
|
+
},
|
|
3372
|
+
components: {
|
|
3373
|
+
Link: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
3374
|
+
className: "underline",
|
|
3375
|
+
href: helpDocUrl,
|
|
3376
|
+
style: "link",
|
|
3377
|
+
target: "_blank"
|
|
3378
|
+
})
|
|
3379
|
+
}
|
|
3380
|
+
})
|
|
3381
|
+
}), {}, {
|
|
3382
|
+
title: isFilterApplied ? t("neetoMessageTemplate.template.filtersEmptyState", {
|
|
3383
|
+
type: emptyStateLabel
|
|
3384
|
+
}) : t("neetoMessageTemplate.template.emptyState", {
|
|
3385
|
+
type: emptyStateLabel
|
|
3386
|
+
})
|
|
3387
|
+
});
|
|
3357
3388
|
var handleDelete = function handleDelete() {
|
|
3358
3389
|
deleteTemplate(template.id, {
|
|
3359
3390
|
onSuccess: onMutationSuccess,
|
|
@@ -3385,20 +3416,7 @@ var List = function List(_ref) {
|
|
|
3385
3416
|
})
|
|
3386
3417
|
}) : /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
3387
3418
|
className: "flex h-full w-full items-center justify-center",
|
|
3388
|
-
children: /*#__PURE__*/jsxRuntime.jsx(NoData__default["default"], _objectSpread$7(
|
|
3389
|
-
primaryButtonProps: {
|
|
3390
|
-
label: addText,
|
|
3391
|
-
onClick: function onClick() {
|
|
3392
|
-
return setManageTemplatePane(ramda.assoc("isOpen", true));
|
|
3393
|
-
}
|
|
3394
|
-
}
|
|
3395
|
-
}), {}, {
|
|
3396
|
-
title: isFilterApplied ? t("neetoMessageTemplate.template.filtersEmptyState", {
|
|
3397
|
-
type: emptyStateLabel
|
|
3398
|
-
}) : t("neetoMessageTemplate.template.emptyState", {
|
|
3399
|
-
type: emptyStateLabel
|
|
3400
|
-
})
|
|
3401
|
-
}))
|
|
3419
|
+
children: /*#__PURE__*/jsxRuntime.jsx(NoData__default["default"], _objectSpread$7({}, noDataProps))
|
|
3402
3420
|
}), /*#__PURE__*/jsxRuntime.jsx(Alert__default["default"], {
|
|
3403
3421
|
isOpen: isDelete,
|
|
3404
3422
|
isSubmitting: isDeleting,
|
|
@@ -3442,7 +3460,9 @@ var MessageTemplates = function MessageTemplates(_ref) {
|
|
|
3442
3460
|
_ref$manageTemplatesP = _ref.manageTemplatesPaneCustomFields,
|
|
3443
3461
|
manageTemplatesPaneCustomFields = _ref$manageTemplatesP === void 0 ? null : _ref$manageTemplatesP,
|
|
3444
3462
|
_ref$onMutationSucces = _ref.onMutationSuccess,
|
|
3445
|
-
onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces
|
|
3463
|
+
onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces,
|
|
3464
|
+
_ref$helpDocUrl = _ref.helpDocUrl,
|
|
3465
|
+
helpDocUrl = _ref$helpDocUrl === void 0 ? "" : _ref$helpDocUrl;
|
|
3446
3466
|
var _useState = react.useState(MESSAGE_TEMPLATE_INITIAL_STATE),
|
|
3447
3467
|
_useState2 = _slicedToArray(_useState, 2),
|
|
3448
3468
|
manageTemplatePane = _useState2[0],
|
|
@@ -3498,11 +3518,20 @@ var MessageTemplates = function MessageTemplates(_ref) {
|
|
|
3498
3518
|
breadcrumbs: breadcrumbs,
|
|
3499
3519
|
searchProps: renderSearchProps(label, value),
|
|
3500
3520
|
size: "small",
|
|
3501
|
-
title: label,
|
|
3502
3521
|
actionBlock: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
3503
3522
|
"data-cy": "add-".concat(neetoCist.hyphenate(value), "-button"),
|
|
3504
3523
|
label: addText,
|
|
3505
3524
|
onClick: handleActionClick
|
|
3525
|
+
}),
|
|
3526
|
+
title: /*#__PURE__*/jsxRuntime.jsxs("span", {
|
|
3527
|
+
className: "flex",
|
|
3528
|
+
children: [label, /*#__PURE__*/jsxRuntime.jsx(HelpPopover__default["default"], {
|
|
3529
|
+
className: "ml-2 self-center",
|
|
3530
|
+
helpLinkProps: {
|
|
3531
|
+
href: helpDocUrl
|
|
3532
|
+
},
|
|
3533
|
+
title: label
|
|
3534
|
+
})]
|
|
3506
3535
|
})
|
|
3507
3536
|
}), /*#__PURE__*/jsxRuntime.jsx(SubHeader__default["default"], {
|
|
3508
3537
|
leftActionBlock: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
|
|
@@ -3531,6 +3560,7 @@ var MessageTemplates = function MessageTemplates(_ref) {
|
|
|
3531
3560
|
onChange: handleChange
|
|
3532
3561
|
}), /*#__PURE__*/jsxRuntime.jsx(List, {
|
|
3533
3562
|
addText: addText,
|
|
3563
|
+
helpDocUrl: helpDocUrl,
|
|
3534
3564
|
isFilterApplied: isFilterApplied,
|
|
3535
3565
|
isLoading: isLoading,
|
|
3536
3566
|
label: label,
|
|
@@ -4228,6 +4258,8 @@ var ApiTemplates = function ApiTemplates(_ref) {
|
|
|
4228
4258
|
var ownerId = _ref.ownerId,
|
|
4229
4259
|
_ref$breadcrumbs = _ref.breadcrumbs,
|
|
4230
4260
|
breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
|
|
4261
|
+
_ref$helpDocUrl = _ref.helpDocUrl,
|
|
4262
|
+
helpDocUrl = _ref$helpDocUrl === void 0 ? "" : _ref$helpDocUrl,
|
|
4231
4263
|
_ref$onMutationSucces = _ref.onMutationSuccess,
|
|
4232
4264
|
onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces;
|
|
4233
4265
|
var _useTranslation = reactI18next.useTranslation(),
|
|
@@ -4279,6 +4311,7 @@ var ApiTemplates = function ApiTemplates(_ref) {
|
|
|
4279
4311
|
totalCount = _useFetchTemplates$da2.totalCount,
|
|
4280
4312
|
isLoading = _useFetchTemplates.isLoading,
|
|
4281
4313
|
isFetching = _useFetchTemplates.isFetching;
|
|
4314
|
+
var title = t("neetoMessageTemplate.template.apiTemplates");
|
|
4282
4315
|
var isFilterApplied = neetoCist.isNotEmpty(filters);
|
|
4283
4316
|
var handleFiltersChange = function handleFiltersChange(filters) {
|
|
4284
4317
|
setFilters(filters);
|
|
@@ -4324,11 +4357,38 @@ var ApiTemplates = function ApiTemplates(_ref) {
|
|
|
4324
4357
|
}
|
|
4325
4358
|
});
|
|
4326
4359
|
};
|
|
4360
|
+
var noDataProps = _objectSpread$1(_objectSpread$1({}, !isFilterApplied && {
|
|
4361
|
+
primaryButtonProps: {
|
|
4362
|
+
label: t("neetoMessageTemplate.api.addApiTemplate"),
|
|
4363
|
+
onClick: function onClick() {
|
|
4364
|
+
return setIsFormPaneOpen(true);
|
|
4365
|
+
}
|
|
4366
|
+
},
|
|
4367
|
+
helpText: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
|
|
4368
|
+
i18nKey: "neetoMessageTemplate.template.linkToHelpArticle",
|
|
4369
|
+
values: {
|
|
4370
|
+
entity: title
|
|
4371
|
+
},
|
|
4372
|
+
components: {
|
|
4373
|
+
Link: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
4374
|
+
className: "underline",
|
|
4375
|
+
href: helpDocUrl,
|
|
4376
|
+
style: "link",
|
|
4377
|
+
target: "_blank"
|
|
4378
|
+
})
|
|
4379
|
+
}
|
|
4380
|
+
})
|
|
4381
|
+
}), {}, {
|
|
4382
|
+
title: isFilterApplied ? t("neetoMessageTemplate.template.filtersEmptyState", {
|
|
4383
|
+
type: title
|
|
4384
|
+
}) : t("neetoMessageTemplate.template.emptyState", {
|
|
4385
|
+
type: title
|
|
4386
|
+
})
|
|
4387
|
+
});
|
|
4327
4388
|
return /*#__PURE__*/jsxRuntime.jsxs(Container__default["default"], {
|
|
4328
4389
|
children: [/*#__PURE__*/jsxRuntime.jsx(NeetoHeader__default["default"], {
|
|
4329
4390
|
breadcrumbs: breadcrumbs,
|
|
4330
4391
|
size: "small",
|
|
4331
|
-
title: t("neetoMessageTemplate.template.apiTemplates"),
|
|
4332
4392
|
actionBlock: /*#__PURE__*/jsxRuntime.jsx(Button__default["default"], {
|
|
4333
4393
|
label: t("neetoMessageTemplate.api.addApiTemplate"),
|
|
4334
4394
|
onClick: function onClick() {
|
|
@@ -4337,7 +4397,17 @@ var ApiTemplates = function ApiTemplates(_ref) {
|
|
|
4337
4397
|
}),
|
|
4338
4398
|
searchProps: {
|
|
4339
4399
|
placeholder: t("neetoMessageTemplate.template.searchApiTemplates")
|
|
4340
|
-
}
|
|
4400
|
+
},
|
|
4401
|
+
title: /*#__PURE__*/jsxRuntime.jsxs("span", {
|
|
4402
|
+
className: "flex",
|
|
4403
|
+
children: [title, /*#__PURE__*/jsxRuntime.jsx(HelpPopover__default["default"], {
|
|
4404
|
+
title: title,
|
|
4405
|
+
className: "ml-2 self-center",
|
|
4406
|
+
helpLinkProps: {
|
|
4407
|
+
href: helpDocUrl
|
|
4408
|
+
}
|
|
4409
|
+
})]
|
|
4410
|
+
})
|
|
4341
4411
|
}), /*#__PURE__*/jsxRuntime.jsx(SubHeader__default["default"], {
|
|
4342
4412
|
leftActionBlock: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
|
|
4343
4413
|
component: "h4",
|
|
@@ -4389,20 +4459,7 @@ var ApiTemplates = function ApiTemplates(_ref) {
|
|
|
4389
4459
|
})
|
|
4390
4460
|
}) : /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
4391
4461
|
className: "flex h-full w-full items-center justify-center",
|
|
4392
|
-
children: /*#__PURE__*/jsxRuntime.jsx(NoData__default["default"], _objectSpread$1(
|
|
4393
|
-
primaryButtonProps: {
|
|
4394
|
-
label: t("neetoMessageTemplate.api.addApiTemplate"),
|
|
4395
|
-
onClick: function onClick() {
|
|
4396
|
-
return setIsFormPaneOpen(true);
|
|
4397
|
-
}
|
|
4398
|
-
}
|
|
4399
|
-
}), {}, {
|
|
4400
|
-
title: isFilterApplied ? t("neetoMessageTemplate.template.filtersEmptyState", {
|
|
4401
|
-
type: t("neetoMessageTemplate.template.apiTemplates")
|
|
4402
|
-
}) : t("neetoMessageTemplate.template.emptyState", {
|
|
4403
|
-
type: t("neetoMessageTemplate.template.apiTemplates")
|
|
4404
|
-
})
|
|
4405
|
-
}))
|
|
4462
|
+
children: /*#__PURE__*/jsxRuntime.jsx(NoData__default["default"], _objectSpread$1({}, noDataProps))
|
|
4406
4463
|
}), /*#__PURE__*/jsxRuntime.jsx(Pane__default["default"], {
|
|
4407
4464
|
isOpen: isFormPaneOpen,
|
|
4408
4465
|
onClose: handleCloseDeleteAlertAndFormPane,
|