@newskit-render/standalone-components 2.3.0 → 2.4.0-alpha.0

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.
Files changed (32) hide show
  1. package/README.md +5 -0
  2. package/dist/cjs/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.d.ts +4 -0
  3. package/dist/cjs/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.js +26 -0
  4. package/dist/cjs/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.js.map +1 -0
  5. package/dist/cjs/help-hub/components/SearchBreadcrumb/index.d.ts +2 -0
  6. package/dist/cjs/help-hub/components/SearchBreadcrumb/index.js +8 -0
  7. package/dist/cjs/help-hub/components/SearchBreadcrumb/index.js.map +1 -0
  8. package/dist/cjs/help-hub/context/types.d.ts +12 -1
  9. package/dist/cjs/help-hub/pages/ArticlePage.js +36 -6
  10. package/dist/cjs/help-hub/pages/ArticlePage.js.map +1 -1
  11. package/dist/cjs/help-hub/pages/types.d.ts +1 -0
  12. package/dist/cjs/help-hub/provider/articleProvider.d.ts +1 -0
  13. package/dist/cjs/help-hub/provider/articleProvider.js +3 -3
  14. package/dist/cjs/help-hub/provider/articleProvider.js.map +1 -1
  15. package/dist/cjs/help-hub/provider/types.d.ts +5 -0
  16. package/dist/cjs/help-hub/provider/types.js.map +1 -1
  17. package/dist/esm/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.d.ts +4 -0
  18. package/dist/esm/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.js +21 -0
  19. package/dist/esm/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.js.map +1 -0
  20. package/dist/esm/help-hub/components/SearchBreadcrumb/index.d.ts +2 -0
  21. package/dist/esm/help-hub/components/SearchBreadcrumb/index.js +3 -0
  22. package/dist/esm/help-hub/components/SearchBreadcrumb/index.js.map +1 -0
  23. package/dist/esm/help-hub/context/types.d.ts +12 -1
  24. package/dist/esm/help-hub/pages/ArticlePage.js +36 -6
  25. package/dist/esm/help-hub/pages/ArticlePage.js.map +1 -1
  26. package/dist/esm/help-hub/pages/types.d.ts +1 -0
  27. package/dist/esm/help-hub/provider/articleProvider.d.ts +1 -0
  28. package/dist/esm/help-hub/provider/articleProvider.js +3 -3
  29. package/dist/esm/help-hub/provider/articleProvider.js.map +1 -1
  30. package/dist/esm/help-hub/provider/types.d.ts +5 -0
  31. package/dist/esm/help-hub/provider/types.js.map +1 -1
  32. package/package.json +1 -1
package/README.md CHANGED
@@ -558,6 +558,11 @@ Each page extend the above BaseContextOptions with their own properties:
558
558
 
559
559
  2. title: string
560
560
  3. content: string
561
+ 4. searchBreadcrumbContext?:
562
+ - searchBreadcrumbProps?: Omit<BreadcrumbsProps, 'children'> see Newskit
563
+ - notFoundBreadcrumbProps?: Omit<BreadcrumbsProps, 'children'>
564
+ - searchBreadcrumbItemOne?: string
565
+ - searchBreadcrumbItemTwo?: string
561
566
 
562
567
  Standalone-components package exports page components, page context, page context types (PageContextOptions) and a provider function for each page.
563
568
 
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { SearchBreadcrumbContext } from '../../context/types';
3
+ declare const SearchBreadcrumb: React.FC<SearchBreadcrumbContext>;
4
+ export default SearchBreadcrumb;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var react_1 = __importDefault(require("react"));
18
+ var newskit_1 = require("newskit");
19
+ var SearchBreadcrumb = function (_a) {
20
+ var baseUrl = _a.baseUrl, referer = _a.referer, searchBreadcrumbProps = _a.searchBreadcrumbProps, searchBreadcrumbItemOne = _a.searchBreadcrumbItemOne, searchBreadcrumbItemTwo = _a.searchBreadcrumbItemTwo, ariaLabel = _a.ariaLabel;
21
+ return (react_1.default.createElement(newskit_1.Breadcrumbs, __assign({}, searchBreadcrumbProps, { "aria-label": ariaLabel }),
22
+ react_1.default.createElement(newskit_1.BreadcrumbItem, { href: baseUrl }, searchBreadcrumbItemOne),
23
+ referer && referer.includes('/results?q=') && (react_1.default.createElement(newskit_1.BreadcrumbItem, { href: referer }, searchBreadcrumbItemTwo))));
24
+ };
25
+ exports.default = SearchBreadcrumb;
26
+ //# sourceMappingURL=SearchBreadcrumb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchBreadcrumb.js","sourceRoot":"","sources":["../../../../../src/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAAyB;AACzB,mCAAqD;AAGrD,IAAM,gBAAgB,GAAsC,UAAC,EAO5D;QANC,OAAO,aAAA,EACP,OAAO,aAAA,EACP,qBAAqB,2BAAA,EACrB,uBAAuB,6BAAA,EACvB,uBAAuB,6BAAA,EACvB,SAAS,eAAA;IAET,OAAO,CACL,8BAAC,qBAAW,eAAK,qBAAqB,kBAAc,SAAS;QAC3D,8BAAC,wBAAc,IAAC,IAAI,EAAE,OAAO,IAAG,uBAAuB,CAAkB;QACxE,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAC7C,8BAAC,wBAAc,IAAC,IAAI,EAAE,OAAO,IAC1B,uBAAuB,CACT,CAClB,CACW,CACf,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,gBAAgB,CAAA"}
@@ -0,0 +1,2 @@
1
+ import SearchBreadcrumb from './SearchBreadcrumb';
2
+ export default SearchBreadcrumb;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var SearchBreadcrumb_1 = __importDefault(require("./SearchBreadcrumb"));
7
+ exports.default = SearchBreadcrumb_1.default;
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/help-hub/components/SearchBreadcrumb/index.ts"],"names":[],"mappings":";;;;;AAAA,wEAAiD;AAEjD,kBAAe,0BAAgB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { FooterContext, FooterContextOverrides, HeaderProps, NavigationPrimaryProps, SEOProps } from '@newskit-render/shared-components';
2
2
  import { SearchBarOverrides } from '../components/SearchBar/types';
3
- import { MQ } from 'newskit';
3
+ import { MQ, BreadcrumbsProps } from 'newskit';
4
4
  import { ReactNode } from 'react';
5
5
  import { Hit } from '../types';
6
6
  export interface ContextProviderProps {
@@ -46,10 +46,21 @@ export interface ResultsPageContextOptions extends BaseContextOptions {
46
46
  stylePreset: MQ<string>;
47
47
  showDividerByBreakpoint: boolean;
48
48
  }
49
+ export interface SearchBreadcrumbContext {
50
+ baseUrl: string;
51
+ referer?: string;
52
+ searchBreadcrumbProps?: Omit<BreadcrumbsProps, 'children'>;
53
+ notFoundBreadcrumbProps?: Omit<BreadcrumbsProps, 'children'>;
54
+ searchBreadcrumbItemOne?: string;
55
+ searchBreadcrumbItemTwo?: string;
56
+ ariaLabel?: string;
57
+ }
49
58
  export interface ArticlePageContextOptions extends BaseContextOptions {
50
59
  introductionProps: Pick<HeaderProps, 'titleOverrides'>;
51
60
  title: string;
52
61
  content: string;
62
+ referer?: string;
63
+ searchBreadcrumbContext?: Omit<SearchBreadcrumbContext, 'baseUrl' | 'referer'>;
53
64
  }
54
65
  export type ContextOptions = LandingPageContextOptions | ResultsPageContextOptions | ArticlePageContextOptions;
55
66
  export {};
@@ -22,6 +22,7 @@ var newskit_1 = require("newskit");
22
22
  var shared_components_1 = require("@newskit-render/shared-components");
23
23
  var Templates_1 = __importDefault(require("../components/Templates"));
24
24
  var SearchBar_1 = require("../components/SearchBar");
25
+ var SearchBreadcrumb_1 = __importDefault(require("../components/SearchBreadcrumb"));
25
26
  var types_1 = require("../context/types");
26
27
  var context_1 = require("../context");
27
28
  var context_2 = require("../context");
@@ -34,9 +35,36 @@ exports.articlePageContext = {
34
35
  as: 'h1',
35
36
  },
36
37
  },
38
+ searchBreadcrumbContext: {
39
+ searchBreadcrumbProps: {
40
+ size: 'medium',
41
+ overrides: {
42
+ marginBlockEnd: 'space045',
43
+ separator: {
44
+ size: 'iconSize030',
45
+ stylePreset: 'inkBrand010',
46
+ },
47
+ },
48
+ showTrailingSeparator: true,
49
+ },
50
+ notFoundBreadcrumbProps: {
51
+ size: 'medium',
52
+ overrides: {
53
+ marginBlockEnd: 'space000',
54
+ separator: {
55
+ size: 'iconSize030',
56
+ stylePreset: 'inkBrand010',
57
+ },
58
+ },
59
+ showTrailingSeparator: true,
60
+ },
61
+ searchBreadcrumbItemOne: 'Help Hub',
62
+ searchBreadcrumbItemTwo: 'Search results',
63
+ ariaLabel: 'article page breadcrumbs',
64
+ },
37
65
  };
38
66
  var PageContent = function () {
39
- var _a = (0, context_1.useHelpHubContext)(types_1.PagesNameMap.articlePage), title = _a.title, introductionProps = _a.introductionProps, content = _a.content, inputPlaceholder = _a.inputPlaceholder, articleNotFound = _a.articleNotFound, baseUrl = _a.baseUrl, searchBar = _a.searchBar;
67
+ var _a = (0, context_1.useHelpHubContext)(types_1.PagesNameMap.articlePage), title = _a.title, introductionProps = _a.introductionProps, content = _a.content, inputPlaceholder = _a.inputPlaceholder, articleNotFound = _a.articleNotFound, baseUrl = _a.baseUrl, searchBar = _a.searchBar, referer = _a.referer, searchBreadcrumbContext = _a.searchBreadcrumbContext;
40
68
  var xssOptions = {
41
69
  whiteList: { p: [], a: ['href'], br: [], img: [], b: [], strong: [] },
42
70
  stripIgnoreTag: true,
@@ -46,19 +74,21 @@ var PageContent = function () {
46
74
  var hasContent = sanitizedArticleContent.replace(/\s/g, '').length;
47
75
  return hasContent ? (react_1.default.createElement(react_1.default.Fragment, null,
48
76
  react_1.default.createElement(SearchBar_1.SearchBar, { placeholder: inputPlaceholder, baseUrl: baseUrl, overrides: searchBar }),
49
- react_1.default.createElement(newskit_1.Block, { spaceStack: { xs: 'space070' } }),
77
+ react_1.default.createElement(newskit_1.Block, { marginBlockEnd: { xs: 'space060' } }),
78
+ react_1.default.createElement(SearchBreadcrumb_1.default, __assign({ baseUrl: baseUrl, referer: referer }, searchBreadcrumbContext)),
50
79
  react_1.default.createElement(shared_components_1.Introduction, __assign({ title: title }, introductionProps, { innerHTML: sanitizedArticleContent })),
51
- react_1.default.createElement(newskit_1.Block, { spaceStack: { xs: 'space070' } }))) : (react_1.default.createElement(newskit_1.GridLayout, { rowGap: 'space060', alignContent: "center", overrides: {
52
- marginBlockStart: 'space070',
80
+ react_1.default.createElement(newskit_1.Block, { marginBlockEnd: { xs: 'space070' } }))) : (react_1.default.createElement(newskit_1.GridLayout, { rowGap: 'space060', alignContent: "center", overrides: {
81
+ marginBlockStart: 'space060',
53
82
  marginBlockEnd: 'space070',
54
83
  } },
84
+ react_1.default.createElement(SearchBreadcrumb_1.default, __assign({ baseUrl: baseUrl, referer: referer }, searchBreadcrumbContext, { searchBreadcrumbProps: searchBreadcrumbContext === null || searchBreadcrumbContext === void 0 ? void 0 : searchBreadcrumbContext.notFoundBreadcrumbProps })),
55
85
  react_1.default.createElement(shared_components_1.Introduction, { title: articleNotFound, titleOverrides: introductionProps.titleOverrides }),
56
86
  react_1.default.createElement(SearchBar_1.SearchBar, { placeholder: inputPlaceholder, overrides: searchBar })));
57
87
  };
58
88
  exports.PageContent = PageContent;
59
89
  var ArticlePage = function (_a) {
60
- var context = _a.context, customTheme = _a.customTheme, themeDropdownObject = _a.themeDropdownObject, credentials = _a.credentials, title = _a.title, content = _a.content;
61
- var enhancedContext = __assign({}, (0, lodash_assign_1.default)({}, __assign({ content: content, title: title }, exports.articlePageContext), context));
90
+ var context = _a.context, customTheme = _a.customTheme, themeDropdownObject = _a.themeDropdownObject, credentials = _a.credentials, title = _a.title, content = _a.content, referer = _a.referer;
91
+ var enhancedContext = __assign({}, (0, lodash_assign_1.default)({}, __assign({ content: content, title: title, referer: referer }, exports.articlePageContext), context));
62
92
  return (react_1.default.createElement(context_2.CredentialsContextProvider, { credentials: credentials },
63
93
  react_1.default.createElement(Templates_1.default, { context: enhancedContext, contextName: types_1.PagesNameMap.articlePage, customTheme: customTheme, themeDropdownObject: themeDropdownObject, topSpaceStack: { xs: 'space045', md: 'space070' } },
64
94
  react_1.default.createElement(exports.PageContent, null))));
@@ -1 +1 @@
1
- {"version":3,"file":"ArticlePage.js","sourceRoot":"","sources":["../../../../src/help-hub/pages/ArticlePage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArticlePage.js","sourceRoot":"","sources":["../../../../src/help-hub/pages/ArticlePage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,gDAAyB;AACzB,gEAAkC;AAClC,4CAAqB;AACrB,mCAA2C;AAC3C,uEAAgE;AAChE,sEAA4C;AAC5C,qDAAmD;AACnD,oFAA6D;AAE7D,0CAA0E;AAC1E,sCAA8C;AAC9C,sCAAuD;AAE1C,QAAA,kBAAkB,GAAuC;IACpE,iBAAiB,EAAE;QACjB,cAAc,EAAE;YACd,gBAAgB,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,mBAAmB,EAAE;YACtE,WAAW,EAAE,aAAa;YAC1B,UAAU,EAAE,UAAU;YACtB,EAAE,EAAE,IAAI;SACT;KACF;IACD,uBAAuB,EAAE;QACvB,qBAAqB,EAAE;YACrB,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE;gBACT,cAAc,EAAE,UAAU;gBAC1B,SAAS,EAAE;oBACT,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,aAAa;iBAC3B;aACF;YACD,qBAAqB,EAAE,IAAI;SAC5B;QACD,uBAAuB,EAAE;YACvB,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE;gBACT,cAAc,EAAE,UAAU;gBAC1B,SAAS,EAAE;oBACT,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,aAAa;iBAC3B;aACF;YACD,qBAAqB,EAAE,IAAI;SAC5B;QACD,uBAAuB,EAAE,UAAU;QACnC,uBAAuB,EAAE,gBAAgB;QACzC,SAAS,EAAE,0BAA0B;KACtC;CACF,CAAA;AAEM,IAAM,WAAW,GAAa;IAC7B,IAAA,KAUF,IAAA,2BAAiB,EAAC,oBAAY,CAAC,WAAW,CAA8B,EAT1E,KAAK,WAAA,EACL,iBAAiB,uBAAA,EACjB,OAAO,aAAA,EACP,gBAAgB,sBAAA,EAChB,eAAe,qBAAA,EACf,OAAO,aAAA,EACP,SAAS,eAAA,EACT,OAAO,aAAA,EACP,uBAAuB,6BACmD,CAAA;IAE5E,IAAM,UAAU,GAAG;QACjB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;QACrE,cAAc,EAAE,IAAI;QACpB,kBAAkB,EAAE,CAAC,QAAQ,CAAC;KAC/B,CAAA;IACD,IAAM,uBAAuB,GAAG,IAAA,aAAG,EAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACxD,IAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAA;IACpE,OAAO,UAAU,CAAC,CAAC,CAAC,CAClB;QACE,8BAAC,qBAAS,IACR,WAAW,EAAE,gBAAgB,EAC7B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACpB;QACF,8BAAC,eAAK,IAAC,cAAc,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,GAAI;QAC7C,8BAAC,0BAAgB,aACf,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,IACZ,uBAAuB,EAC3B;QACF,8BAAC,gCAAY,aACX,KAAK,EAAE,KAAK,IACR,iBAAiB,IACrB,SAAS,EAAE,uBAAuB,IAClC;QACF,8BAAC,eAAK,IAAC,cAAc,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,GAAI,CAC5C,CACJ,CAAC,CAAC,CAAC,CACF,8BAAC,oBAAU,IACT,MAAM,EAAE,UAAU,EAClB,YAAY,EAAC,QAAQ,EACrB,SAAS,EAAE;YACT,gBAAgB,EAAE,UAAU;YAC5B,cAAc,EAAE,UAAU;SAC3B;QAED,8BAAC,0BAAgB,aACf,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,IACZ,uBAAuB,IAC3B,qBAAqB,EAAE,uBAAuB,aAAvB,uBAAuB,uBAAvB,uBAAuB,CAAE,uBAAuB,IACvE;QACF,8BAAC,gCAAY,IACX,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,iBAAiB,CAAC,cAAc,GAChD;QACF,8BAAC,qBAAS,IAAC,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,GAAI,CACvD,CACd,CAAA;AACH,CAAC,CAAA;AA9DY,QAAA,WAAW,eA8DvB;AAEM,IAAM,WAAW,GAA+B,UAAC,EAQvD;QAPC,OAAO,aAAA,EACP,WAAW,iBAAA,EACX,mBAAmB,yBAAA,EACnB,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,OAAO,aAAA,EACP,OAAO,aAAA;IAEP,IAAM,eAAe,gBAChB,IAAA,uBAAM,EAAC,EAAE,aAAI,OAAO,SAAA,EAAE,KAAK,OAAA,EAAE,OAAO,SAAA,IAAK,0BAAkB,GAAI,OAAO,CAAC,CAC3E,CAAA;IACD,OAAO,CACL,8BAAC,oCAA0B,IAAC,WAAW,EAAE,WAAW;QAClD,8BAAC,mBAAM,IACL,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,oBAAY,CAAC,WAAW,EACrC,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,mBAAmB,EACxC,aAAa,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE;YAEjD,8BAAC,mBAAW,OAAG,CACR,CACkB,CAC9B,CAAA;AACH,CAAC,CAAA;AAzBY,QAAA,WAAW,eAyBvB;AAED,kBAAe,mBAAW,CAAA"}
@@ -15,4 +15,5 @@ export interface ResultsPageProps extends BasePageProps {
15
15
  export interface ArticlePageProps extends BasePageProps {
16
16
  title: string;
17
17
  content: string;
18
+ referer?: string;
18
19
  }
@@ -14,6 +14,7 @@ declare const articleProvider: (context: ArticleServerContext) => Promise<{
14
14
  apiKey: string;
15
15
  indexName: string;
16
16
  };
17
+ referer: string | undefined;
17
18
  title: string;
18
19
  content: string;
19
20
  };
@@ -55,11 +55,11 @@ var config_1 = require("../../config");
55
55
  var types_1 = require("./types");
56
56
  var getHelpHubConfig_1 = require("./getHelpHubConfig");
57
57
  var articleProvider = function (context) { return __awaiter(void 0, void 0, void 0, function () {
58
- var title, credentials, promiseResult, providerProps;
58
+ var title, headers, credentials, promiseResult, providerProps;
59
59
  return __generator(this, function (_a) {
60
60
  switch (_a.label) {
61
61
  case 0:
62
- title = context.params.title;
62
+ title = context.params.title, headers = context.req.headers;
63
63
  credentials = {
64
64
  appId: config_1.algoliaAppId,
65
65
  apiKey: config_1.algoliaApiKey,
@@ -80,7 +80,7 @@ var articleProvider = function (context) { return __awaiter(void 0, void 0, void
80
80
  case 2:
81
81
  providerProps = (_a.sent());
82
82
  return [2 /*return*/, {
83
- props: __assign(__assign({}, providerProps), { credentials: credentials }),
83
+ props: __assign(__assign({}, providerProps), { credentials: credentials, referer: headers === null || headers === void 0 ? void 0 : headers.referer }),
84
84
  }];
85
85
  }
86
86
  });
@@ -1 +1 @@
1
- {"version":3,"file":"articleProvider.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/articleProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA+B;AAC/B,uCAKqB;AAErB,iCAA+E;AAC/E,uDAAqD;AAErD,IAAM,eAAe,GAAG,UAAO,OAA6B;;;;;gBAE9C,KAAK,GACb,OAAO,aADM,CACN;gBACL,WAAW,GAAG;oBAClB,KAAK,EAAE,qBAAY;oBACnB,MAAM,EAAE,sBAAa;oBACrB,SAAS,EAAE,qBAAY;iBACxB,CAAA;gBACqB,qBAAM,IAAA,qBAAK,EAC/B,UAAG,mBAAU,cAAI,KAAK,CAAE,EACxB,IAAA,mCAAgB,EAAC,iBAAS,CAAC,GAAG,CAAC,CAChC,EAAA;;gBAHK,aAAa,GAAG,SAGrB;gBAED,IAAI,aAAa,CAAC,MAAM,IAAI,GAAG,EAAE;oBAC/B,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;oBACxD,sBAAO;4BACL,KAAK,EAAE;gCACL,WAAW,aAAA;6BACZ;yBACF,EAAA;iBACF;gBACsB,qBAAM,aAAa,CAAC,IAAI,EAAE,EAAA;;gBAA3C,aAAa,GAAG,CAAC,SAA0B,CAAyB;gBAC1E,sBAAO;wBACL,KAAK,wBACA,aAAa,KAChB,WAAW,aAAA,GACZ;qBACF,EAAA;;;KACF,CAAA;AAED,kBAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"articleProvider.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/articleProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA+B;AAC/B,uCAKqB;AAErB,iCAA+E;AAC/E,uDAAqD;AAErD,IAAM,eAAe,GAAG,UAAO,OAA6B;;;;;gBAE9C,KAAK,GAEb,OAAO,aAFM,EACR,OAAO,GACZ,OAAO,YADK,CACL;gBAEL,WAAW,GAAG;oBAClB,KAAK,EAAE,qBAAY;oBACnB,MAAM,EAAE,sBAAa;oBACrB,SAAS,EAAE,qBAAY;iBACxB,CAAA;gBACqB,qBAAM,IAAA,qBAAK,EAC/B,UAAG,mBAAU,cAAI,KAAK,CAAE,EACxB,IAAA,mCAAgB,EAAC,iBAAS,CAAC,GAAG,CAAC,CAChC,EAAA;;gBAHK,aAAa,GAAG,SAGrB;gBAED,IAAI,aAAa,CAAC,MAAM,IAAI,GAAG,EAAE;oBAC/B,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;oBACxD,sBAAO;4BACL,KAAK,EAAE;gCACL,WAAW,aAAA;6BACZ;yBACF,EAAA;iBACF;gBACsB,qBAAM,aAAa,CAAC,IAAI,EAAE,EAAA;;gBAA3C,aAAa,GAAG,CAAC,SAA0B,CAAyB;gBAC1E,sBAAO;wBACL,KAAK,wBACA,aAAa,KAChB,WAAW,aAAA,EACX,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,GAC1B;qBACF,EAAA;;;KACF,CAAA;AAED,kBAAe,eAAe,CAAA"}
@@ -17,6 +17,11 @@ export interface ReqParams {
17
17
  }
18
18
  export interface ArticleServerContext {
19
19
  params: Record<string, string>;
20
+ req: {
21
+ headers: {
22
+ referer?: string;
23
+ };
24
+ };
20
25
  }
21
26
  export interface ResultsServerContext {
22
27
  query: Record<string, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,0BAAa,CAAA;AACf,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAyBD,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,kEAA2C,CAAA;AAC7C,CAAC,EAFW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAE9B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,0BAAa,CAAA;AACf,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AA8BD,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,kEAA2C,CAAA;AAC7C,CAAC,EAFW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAE9B"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { SearchBreadcrumbContext } from '../../context/types';
3
+ declare const SearchBreadcrumb: React.FC<SearchBreadcrumbContext>;
4
+ export default SearchBreadcrumb;
@@ -0,0 +1,21 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import React from 'react';
13
+ import { Breadcrumbs, BreadcrumbItem } from 'newskit';
14
+ var SearchBreadcrumb = function (_a) {
15
+ var baseUrl = _a.baseUrl, referer = _a.referer, searchBreadcrumbProps = _a.searchBreadcrumbProps, searchBreadcrumbItemOne = _a.searchBreadcrumbItemOne, searchBreadcrumbItemTwo = _a.searchBreadcrumbItemTwo, ariaLabel = _a.ariaLabel;
16
+ return (React.createElement(Breadcrumbs, __assign({}, searchBreadcrumbProps, { "aria-label": ariaLabel }),
17
+ React.createElement(BreadcrumbItem, { href: baseUrl }, searchBreadcrumbItemOne),
18
+ referer && referer.includes('/results?q=') && (React.createElement(BreadcrumbItem, { href: referer }, searchBreadcrumbItemTwo))));
19
+ };
20
+ export default SearchBreadcrumb;
21
+ //# sourceMappingURL=SearchBreadcrumb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchBreadcrumb.js","sourceRoot":"","sources":["../../../../../src/help-hub/components/SearchBreadcrumb/SearchBreadcrumb.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAGrD,IAAM,gBAAgB,GAAsC,UAAC,EAO5D;QANC,OAAO,aAAA,EACP,OAAO,aAAA,EACP,qBAAqB,2BAAA,EACrB,uBAAuB,6BAAA,EACvB,uBAAuB,6BAAA,EACvB,SAAS,eAAA;IAET,OAAO,CACL,oBAAC,WAAW,eAAK,qBAAqB,kBAAc,SAAS;QAC3D,oBAAC,cAAc,IAAC,IAAI,EAAE,OAAO,IAAG,uBAAuB,CAAkB;QACxE,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAC7C,oBAAC,cAAc,IAAC,IAAI,EAAE,OAAO,IAC1B,uBAAuB,CACT,CAClB,CACW,CACf,CAAA;AACH,CAAC,CAAA;AAED,eAAe,gBAAgB,CAAA"}
@@ -0,0 +1,2 @@
1
+ import SearchBreadcrumb from './SearchBreadcrumb';
2
+ export default SearchBreadcrumb;
@@ -0,0 +1,3 @@
1
+ import SearchBreadcrumb from './SearchBreadcrumb';
2
+ export default SearchBreadcrumb;
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/help-hub/components/SearchBreadcrumb/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,oBAAoB,CAAA;AAEjD,eAAe,gBAAgB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { FooterContext, FooterContextOverrides, HeaderProps, NavigationPrimaryProps, SEOProps } from '@newskit-render/shared-components';
2
2
  import { SearchBarOverrides } from '../components/SearchBar/types';
3
- import { MQ } from 'newskit';
3
+ import { MQ, BreadcrumbsProps } from 'newskit';
4
4
  import { ReactNode } from 'react';
5
5
  import { Hit } from '../types';
6
6
  export interface ContextProviderProps {
@@ -46,10 +46,21 @@ export interface ResultsPageContextOptions extends BaseContextOptions {
46
46
  stylePreset: MQ<string>;
47
47
  showDividerByBreakpoint: boolean;
48
48
  }
49
+ export interface SearchBreadcrumbContext {
50
+ baseUrl: string;
51
+ referer?: string;
52
+ searchBreadcrumbProps?: Omit<BreadcrumbsProps, 'children'>;
53
+ notFoundBreadcrumbProps?: Omit<BreadcrumbsProps, 'children'>;
54
+ searchBreadcrumbItemOne?: string;
55
+ searchBreadcrumbItemTwo?: string;
56
+ ariaLabel?: string;
57
+ }
49
58
  export interface ArticlePageContextOptions extends BaseContextOptions {
50
59
  introductionProps: Pick<HeaderProps, 'titleOverrides'>;
51
60
  title: string;
52
61
  content: string;
62
+ referer?: string;
63
+ searchBreadcrumbContext?: Omit<SearchBreadcrumbContext, 'baseUrl' | 'referer'>;
53
64
  }
54
65
  export type ContextOptions = LandingPageContextOptions | ResultsPageContextOptions | ArticlePageContextOptions;
55
66
  export {};
@@ -16,6 +16,7 @@ import { Block, GridLayout } from 'newskit';
16
16
  import { Introduction } from '@newskit-render/shared-components';
17
17
  import Layout from '../components/Templates';
18
18
  import { SearchBar } from '../components/SearchBar';
19
+ import SearchBreadcrumb from '../components/SearchBreadcrumb';
19
20
  import { PagesNameMap } from '../context/types';
20
21
  import { useHelpHubContext } from '../context';
21
22
  import { CredentialsContextProvider } from '../context';
@@ -28,9 +29,36 @@ export var articlePageContext = {
28
29
  as: 'h1',
29
30
  },
30
31
  },
32
+ searchBreadcrumbContext: {
33
+ searchBreadcrumbProps: {
34
+ size: 'medium',
35
+ overrides: {
36
+ marginBlockEnd: 'space045',
37
+ separator: {
38
+ size: 'iconSize030',
39
+ stylePreset: 'inkBrand010',
40
+ },
41
+ },
42
+ showTrailingSeparator: true,
43
+ },
44
+ notFoundBreadcrumbProps: {
45
+ size: 'medium',
46
+ overrides: {
47
+ marginBlockEnd: 'space000',
48
+ separator: {
49
+ size: 'iconSize030',
50
+ stylePreset: 'inkBrand010',
51
+ },
52
+ },
53
+ showTrailingSeparator: true,
54
+ },
55
+ searchBreadcrumbItemOne: 'Help Hub',
56
+ searchBreadcrumbItemTwo: 'Search results',
57
+ ariaLabel: 'article page breadcrumbs',
58
+ },
31
59
  };
32
60
  export var PageContent = function () {
33
- var _a = useHelpHubContext(PagesNameMap.articlePage), title = _a.title, introductionProps = _a.introductionProps, content = _a.content, inputPlaceholder = _a.inputPlaceholder, articleNotFound = _a.articleNotFound, baseUrl = _a.baseUrl, searchBar = _a.searchBar;
61
+ var _a = useHelpHubContext(PagesNameMap.articlePage), title = _a.title, introductionProps = _a.introductionProps, content = _a.content, inputPlaceholder = _a.inputPlaceholder, articleNotFound = _a.articleNotFound, baseUrl = _a.baseUrl, searchBar = _a.searchBar, referer = _a.referer, searchBreadcrumbContext = _a.searchBreadcrumbContext;
34
62
  var xssOptions = {
35
63
  whiteList: { p: [], a: ['href'], br: [], img: [], b: [], strong: [] },
36
64
  stripIgnoreTag: true,
@@ -40,18 +68,20 @@ export var PageContent = function () {
40
68
  var hasContent = sanitizedArticleContent.replace(/\s/g, '').length;
41
69
  return hasContent ? (React.createElement(React.Fragment, null,
42
70
  React.createElement(SearchBar, { placeholder: inputPlaceholder, baseUrl: baseUrl, overrides: searchBar }),
43
- React.createElement(Block, { spaceStack: { xs: 'space070' } }),
71
+ React.createElement(Block, { marginBlockEnd: { xs: 'space060' } }),
72
+ React.createElement(SearchBreadcrumb, __assign({ baseUrl: baseUrl, referer: referer }, searchBreadcrumbContext)),
44
73
  React.createElement(Introduction, __assign({ title: title }, introductionProps, { innerHTML: sanitizedArticleContent })),
45
- React.createElement(Block, { spaceStack: { xs: 'space070' } }))) : (React.createElement(GridLayout, { rowGap: 'space060', alignContent: "center", overrides: {
46
- marginBlockStart: 'space070',
74
+ React.createElement(Block, { marginBlockEnd: { xs: 'space070' } }))) : (React.createElement(GridLayout, { rowGap: 'space060', alignContent: "center", overrides: {
75
+ marginBlockStart: 'space060',
47
76
  marginBlockEnd: 'space070',
48
77
  } },
78
+ React.createElement(SearchBreadcrumb, __assign({ baseUrl: baseUrl, referer: referer }, searchBreadcrumbContext, { searchBreadcrumbProps: searchBreadcrumbContext === null || searchBreadcrumbContext === void 0 ? void 0 : searchBreadcrumbContext.notFoundBreadcrumbProps })),
49
79
  React.createElement(Introduction, { title: articleNotFound, titleOverrides: introductionProps.titleOverrides }),
50
80
  React.createElement(SearchBar, { placeholder: inputPlaceholder, overrides: searchBar })));
51
81
  };
52
82
  export var ArticlePage = function (_a) {
53
- var context = _a.context, customTheme = _a.customTheme, themeDropdownObject = _a.themeDropdownObject, credentials = _a.credentials, title = _a.title, content = _a.content;
54
- var enhancedContext = __assign({}, assign({}, __assign({ content: content, title: title }, articlePageContext), context));
83
+ var context = _a.context, customTheme = _a.customTheme, themeDropdownObject = _a.themeDropdownObject, credentials = _a.credentials, title = _a.title, content = _a.content, referer = _a.referer;
84
+ var enhancedContext = __assign({}, assign({}, __assign({ content: content, title: title, referer: referer }, articlePageContext), context));
55
85
  return (React.createElement(CredentialsContextProvider, { credentials: credentials },
56
86
  React.createElement(Layout, { context: enhancedContext, contextName: PagesNameMap.articlePage, customTheme: customTheme, themeDropdownObject: themeDropdownObject, topSpaceStack: { xs: 'space045', md: 'space070' } },
57
87
  React.createElement(PageContent, null))));
@@ -1 +1 @@
1
- {"version":3,"file":"ArticlePage.js","sourceRoot":"","sources":["../../../../src/help-hub/pages/ArticlePage.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,MAAM,MAAM,eAAe,CAAA;AAClC,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,MAAM,MAAM,yBAAyB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,OAAO,EAA6B,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAEvD,MAAM,CAAC,IAAM,kBAAkB,GAAuC;IACpE,iBAAiB,EAAE;QACjB,cAAc,EAAE;YACd,gBAAgB,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,mBAAmB,EAAE;YACtE,WAAW,EAAE,aAAa;YAC1B,UAAU,EAAE,UAAU;YACtB,EAAE,EAAE,IAAI;SACT;KACF;CACF,CAAA;AACD,MAAM,CAAC,IAAM,WAAW,GAAa;IAC7B,IAAA,KAQF,iBAAiB,CAAC,YAAY,CAAC,WAAW,CAA8B,EAP1E,KAAK,WAAA,EACL,iBAAiB,uBAAA,EACjB,OAAO,aAAA,EACP,gBAAgB,sBAAA,EAChB,eAAe,qBAAA,EACf,OAAO,aAAA,EACP,SAAS,eACiE,CAAA;IAE5E,IAAM,UAAU,GAAG;QACjB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;QACrE,cAAc,EAAE,IAAI;QACpB,kBAAkB,EAAE,CAAC,QAAQ,CAAC;KAC/B,CAAA;IACD,IAAM,uBAAuB,GAAG,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACxD,IAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAA;IACpE,OAAO,UAAU,CAAC,CAAC,CAAC,CAClB;QACE,oBAAC,SAAS,IACR,WAAW,EAAE,gBAAgB,EAC7B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACpB;QACF,oBAAC,KAAK,IAAC,UAAU,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,GAAI;QACzC,oBAAC,YAAY,aACX,KAAK,EAAE,KAAK,IACR,iBAAiB,IACrB,SAAS,EAAE,uBAAuB,IAClC;QACF,oBAAC,KAAK,IAAC,UAAU,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,GAAI,CACxC,CACJ,CAAC,CAAC,CAAC,CACF,oBAAC,UAAU,IACT,MAAM,EAAE,UAAU,EAClB,YAAY,EAAC,QAAQ,EACrB,SAAS,EAAE;YACT,gBAAgB,EAAE,UAAU;YAC5B,cAAc,EAAE,UAAU;SAC3B;QAED,oBAAC,YAAY,IACX,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,iBAAiB,CAAC,cAAc,GAChD;QACF,oBAAC,SAAS,IAAC,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,GAAI,CACvD,CACd,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,IAAM,WAAW,GAA+B,UAAC,EAOvD;QANC,OAAO,aAAA,EACP,WAAW,iBAAA,EACX,mBAAmB,yBAAA,EACnB,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,OAAO,aAAA;IAEP,IAAM,eAAe,gBAChB,MAAM,CAAC,EAAE,aAAI,OAAO,SAAA,EAAE,KAAK,OAAA,IAAK,kBAAkB,GAAI,OAAO,CAAC,CAClE,CAAA;IACD,OAAO,CACL,oBAAC,0BAA0B,IAAC,WAAW,EAAE,WAAW;QAClD,oBAAC,MAAM,IACL,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,YAAY,CAAC,WAAW,EACrC,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,mBAAmB,EACxC,aAAa,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE;YAEjD,oBAAC,WAAW,OAAG,CACR,CACkB,CAC9B,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"ArticlePage.js","sourceRoot":"","sources":["../../../../src/help-hub/pages/ArticlePage.tsx"],"names":[],"mappings":"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"}
@@ -15,4 +15,5 @@ export interface ResultsPageProps extends BasePageProps {
15
15
  export interface ArticlePageProps extends BasePageProps {
16
16
  title: string;
17
17
  content: string;
18
+ referer?: string;
18
19
  }
@@ -14,6 +14,7 @@ declare const articleProvider: (context: ArticleServerContext) => Promise<{
14
14
  apiKey: string;
15
15
  indexName: string;
16
16
  };
17
+ referer: string | undefined;
17
18
  title: string;
18
19
  content: string;
19
20
  };
@@ -50,11 +50,11 @@ import { algoliaAppId, algoliaApiKey, algoliaIndex, algoliaUrl, } from '../../co
50
50
  import { ReqMethod } from './types';
51
51
  import { getHelpHubConfig } from './getHelpHubConfig';
52
52
  var articleProvider = function (context) { return __awaiter(void 0, void 0, void 0, function () {
53
- var title, credentials, promiseResult, providerProps;
53
+ var title, headers, credentials, promiseResult, providerProps;
54
54
  return __generator(this, function (_a) {
55
55
  switch (_a.label) {
56
56
  case 0:
57
- title = context.params.title;
57
+ title = context.params.title, headers = context.req.headers;
58
58
  credentials = {
59
59
  appId: algoliaAppId,
60
60
  apiKey: algoliaApiKey,
@@ -75,7 +75,7 @@ var articleProvider = function (context) { return __awaiter(void 0, void 0, void
75
75
  case 2:
76
76
  providerProps = (_a.sent());
77
77
  return [2 /*return*/, {
78
- props: __assign(__assign({}, providerProps), { credentials: credentials }),
78
+ props: __assign(__assign({}, providerProps), { credentials: credentials, referer: headers === null || headers === void 0 ? void 0 : headers.referer }),
79
79
  }];
80
80
  }
81
81
  });
@@ -1 +1 @@
1
- {"version":3,"file":"articleProvider.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/articleProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,aAAa,CAAA;AAC/B,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,UAAU,GACX,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAA8C,MAAM,SAAS,CAAA;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,IAAM,eAAe,GAAG,UAAO,OAA6B;;;;;gBAE9C,KAAK,GACb,OAAO,aADM,CACN;gBACL,WAAW,GAAG;oBAClB,KAAK,EAAE,YAAY;oBACnB,MAAM,EAAE,aAAa;oBACrB,SAAS,EAAE,YAAY;iBACxB,CAAA;gBACqB,qBAAM,KAAK,CAC/B,UAAG,UAAU,cAAI,KAAK,CAAE,EACxB,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,CAChC,EAAA;;gBAHK,aAAa,GAAG,SAGrB;gBAED,IAAI,aAAa,CAAC,MAAM,IAAI,GAAG,EAAE;oBAC/B,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;oBACxD,sBAAO;4BACL,KAAK,EAAE;gCACL,WAAW,aAAA;6BACZ;yBACF,EAAA;iBACF;gBACsB,qBAAM,aAAa,CAAC,IAAI,EAAE,EAAA;;gBAA3C,aAAa,GAAG,CAAC,SAA0B,CAAyB;gBAC1E,sBAAO;wBACL,KAAK,wBACA,aAAa,KAChB,WAAW,aAAA,GACZ;qBACF,EAAA;;;KACF,CAAA;AAED,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"articleProvider.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/articleProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,aAAa,CAAA;AAC/B,OAAO,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,UAAU,GACX,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAA8C,MAAM,SAAS,CAAA;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,IAAM,eAAe,GAAG,UAAO,OAA6B;;;;;gBAE9C,KAAK,GAEb,OAAO,aAFM,EACR,OAAO,GACZ,OAAO,YADK,CACL;gBAEL,WAAW,GAAG;oBAClB,KAAK,EAAE,YAAY;oBACnB,MAAM,EAAE,aAAa;oBACrB,SAAS,EAAE,YAAY;iBACxB,CAAA;gBACqB,qBAAM,KAAK,CAC/B,UAAG,UAAU,cAAI,KAAK,CAAE,EACxB,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,CAChC,EAAA;;gBAHK,aAAa,GAAG,SAGrB;gBAED,IAAI,aAAa,CAAC,MAAM,IAAI,GAAG,EAAE;oBAC/B,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;oBACxD,sBAAO;4BACL,KAAK,EAAE;gCACL,WAAW,aAAA;6BACZ;yBACF,EAAA;iBACF;gBACsB,qBAAM,aAAa,CAAC,IAAI,EAAE,EAAA;;gBAA3C,aAAa,GAAG,CAAC,SAA0B,CAAyB;gBAC1E,sBAAO;wBACL,KAAK,wBACA,aAAa,KAChB,WAAW,aAAA,EACX,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,GAC1B;qBACF,EAAA;;;KACF,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -17,6 +17,11 @@ export interface ReqParams {
17
17
  }
18
18
  export interface ArticleServerContext {
19
19
  params: Record<string, string>;
20
+ req: {
21
+ headers: {
22
+ referer?: string;
23
+ };
24
+ };
20
25
  }
21
26
  export interface ResultsServerContext {
22
27
  query: Record<string, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,0BAAa,CAAA;AACf,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAyBD,MAAM,CAAN,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,kEAA2C,CAAA;AAC7C,CAAC,EAFW,mBAAmB,KAAnB,mBAAmB,QAE9B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/help-hub/provider/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,0BAAa,CAAA;AACf,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AA8BD,MAAM,CAAN,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,kEAA2C,CAAA;AAC7C,CAAC,EAFW,mBAAmB,KAAnB,mBAAmB,QAE9B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@newskit-render/standalone-components",
3
- "version": "2.3.0",
3
+ "version": "2.4.0-alpha.0",
4
4
  "description": "Newskit Render Standalone Components",
5
5
  "author": "",
6
6
  "license": "UNLICENSED",