@blaze-cms/nextjs-tools 0.146.0-alpha.4 → 0.146.0-alpha.40

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 (98) hide show
  1. package/CHANGELOG.md +162 -0
  2. package/README.md +3 -12
  3. package/lib/application/query/index.js.map +1 -1
  4. package/lib/blaze.config.js.map +1 -1
  5. package/lib/components/DebugSidebar/index.js +2 -2
  6. package/lib/components/DebugSidebar/index.js.map +1 -1
  7. package/lib/components/index.js.map +1 -1
  8. package/lib/constants.js +1 -1
  9. package/lib/constants.js.map +1 -1
  10. package/lib/containers/ContentContainer.js +6 -6
  11. package/lib/containers/ContentContainer.js.map +1 -1
  12. package/lib/containers/index.js.map +1 -1
  13. package/lib/helpers/build-admin-href.js +1 -1
  14. package/lib/helpers/build-admin-href.js.map +1 -1
  15. package/lib/helpers/check-for-gtm.js +1 -1
  16. package/lib/helpers/check-for-gtm.js.map +1 -1
  17. package/lib/helpers/check-parent.js.map +1 -1
  18. package/lib/helpers/check-preview-url.js.map +1 -1
  19. package/lib/helpers/check-url.js +35 -30
  20. package/lib/helpers/check-url.js.map +1 -1
  21. package/lib/helpers/get-entitys-actions.js.map +1 -1
  22. package/lib/helpers/get-error-message.js.map +1 -1
  23. package/lib/helpers/get-page-data.js +5 -5
  24. package/lib/helpers/get-page-data.js.map +1 -1
  25. package/lib/helpers/get-root-selector-classes.js +3 -3
  26. package/lib/helpers/get-root-selector-classes.js.map +1 -1
  27. package/lib/helpers/get-search-filter.js.map +1 -1
  28. package/lib/helpers/handle-static-routes.js +7 -7
  29. package/lib/helpers/handle-static-routes.js.map +1 -1
  30. package/lib/helpers/index.js.map +1 -1
  31. package/lib/helpers/render-apple-tags.js.map +1 -1
  32. package/lib/helpers/set-blaze-debug.js.map +1 -1
  33. package/lib/helpers/static-route-handlers/generic-file-handler.js +1 -1
  34. package/lib/helpers/static-route-handlers/generic-file-handler.js.map +1 -1
  35. package/lib/helpers/static-route-handlers/index.js +1 -1
  36. package/lib/helpers/static-route-handlers/index.js.map +1 -1
  37. package/lib/helpers/static-route-handlers/robots-txt.js.map +1 -1
  38. package/lib/helpers/static-route-handlers/sitemap-file.js.map +1 -1
  39. package/lib/helpers/static-route-handlers/sitemap.js.map +1 -1
  40. package/lib/hoc/withBlaze.js +20 -20
  41. package/lib/hoc/withBlaze.js.map +1 -1
  42. package/lib/hooks/use-get-page.js.map +1 -1
  43. package/lib/index.js +2 -2
  44. package/lib/index.js.map +1 -1
  45. package/lib/pages/Resolver.js +13 -6
  46. package/lib/pages/Resolver.js.map +1 -1
  47. package/lib/pages/document/DocumentBody.js.map +1 -1
  48. package/lib/pages/document/_document.js +2 -2
  49. package/lib/pages/document/_document.js.map +1 -1
  50. package/lib/server/index.js.map +1 -1
  51. package/lib/server/routes.js.map +1 -1
  52. package/lib-es/application/query/index.js.map +1 -1
  53. package/lib-es/blaze.config.js.map +1 -1
  54. package/lib-es/components/DebugSidebar/index.js.map +1 -1
  55. package/lib-es/components/index.js.map +1 -1
  56. package/lib-es/constants.js +1 -1
  57. package/lib-es/constants.js.map +1 -1
  58. package/lib-es/containers/ContentContainer.js.map +1 -1
  59. package/lib-es/containers/index.js.map +1 -1
  60. package/lib-es/helpers/build-admin-href.js.map +1 -1
  61. package/lib-es/helpers/check-for-gtm.js.map +1 -1
  62. package/lib-es/helpers/check-parent.js.map +1 -1
  63. package/lib-es/helpers/check-preview-url.js.map +1 -1
  64. package/lib-es/helpers/check-url.js +12 -11
  65. package/lib-es/helpers/check-url.js.map +1 -1
  66. package/lib-es/helpers/get-entitys-actions.js.map +1 -1
  67. package/lib-es/helpers/get-error-message.js.map +1 -1
  68. package/lib-es/helpers/get-page-data.js.map +1 -1
  69. package/lib-es/helpers/get-root-selector-classes.js.map +1 -1
  70. package/lib-es/helpers/get-search-filter.js.map +1 -1
  71. package/lib-es/helpers/handle-static-routes.js.map +1 -1
  72. package/lib-es/helpers/index.js.map +1 -1
  73. package/lib-es/helpers/render-apple-tags.js.map +1 -1
  74. package/lib-es/helpers/set-blaze-debug.js.map +1 -1
  75. package/lib-es/helpers/static-route-handlers/generic-file-handler.js.map +1 -1
  76. package/lib-es/helpers/static-route-handlers/index.js.map +1 -1
  77. package/lib-es/helpers/static-route-handlers/robots-txt.js.map +1 -1
  78. package/lib-es/helpers/static-route-handlers/sitemap-file.js.map +1 -1
  79. package/lib-es/helpers/static-route-handlers/sitemap.js.map +1 -1
  80. package/lib-es/hoc/withBlaze.js +5 -5
  81. package/lib-es/hoc/withBlaze.js.map +1 -1
  82. package/lib-es/hooks/use-get-page.js.map +1 -1
  83. package/lib-es/index.js.map +1 -1
  84. package/lib-es/pages/Resolver.js +11 -4
  85. package/lib-es/pages/Resolver.js.map +1 -1
  86. package/lib-es/pages/document/DocumentBody.js.map +1 -1
  87. package/lib-es/pages/document/_document.js.map +1 -1
  88. package/lib-es/server/index.js.map +1 -1
  89. package/lib-es/server/routes.js.map +1 -1
  90. package/package.json +14 -14
  91. package/src/constants.js +1 -1
  92. package/src/helpers/check-url.js +13 -13
  93. package/src/pages/Resolver.js +10 -2
  94. package/tests/unit/src/__snapshots__/constants.test.js.snap +1 -1
  95. package/tests/unit/src/constants.test.js +14 -3
  96. package/tests/unit/src/helpers/check-url.test.js +4 -2
  97. package/tests/unit/src/pages/__snapshots__/Resolver.test.js.snap +5 -1
  98. package/tests/unit/src/server/__snapshots__/routes.test.js.snap +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"generic-file-handler.js","names":["RESPONSE_404","STATIC_FILE_FORWARD_HEADERS","getHandler","fileQuery","getVariables","props","res","apolloClient","variables","data","files","query","mimetype","url","writeHead","write","end","fileResponse","fetch","setHeadersFromResponse","headers","text","forEach","headerKey","headerValue","get","setHeader"],"sources":["../../../src/helpers/static-route-handlers/generic-file-handler.js"],"sourcesContent":["import 'cross-fetch/polyfill';\nimport { RESPONSE_404, STATIC_FILE_FORWARD_HEADERS } from '../../constants';\n\nconst getHandler = (fileQuery, getVariables) => async props => {\n const { res, apolloClient } = props;\n const variables = getVariables ? getVariables(props) : {};\n const {\n data: { files = [] }\n } = await apolloClient.query({ query: fileQuery, variables });\n const [{ mimetype, url } = {}] = files;\n if (!url) {\n res.writeHead(404);\n res.write(RESPONSE_404);\n res.end();\n return;\n }\n\n const fileResponse = await fetch(url);\n\n setHeadersFromResponse(fileResponse.headers, res);\n res.writeHead(200, { 'Content-Type': mimetype });\n res.write(await fileResponse.text());\n res.end();\n};\n\nfunction setHeadersFromResponse(headers, res) {\n STATIC_FILE_FORWARD_HEADERS.forEach(headerKey => {\n const headerValue = headers.get(headerKey);\n if (!headerValue) return;\n\n res.setHeader(headerKey, headerValue);\n });\n}\n\nexport default getHandler;\n"],"mappings":"AAAA,OAAO,sBAAsB;AAC7B,SAASA,YAAY,EAAEC,2BAA2B,QAAQ,iBAAiB;AAE3E,MAAMC,UAAU,GAAGA,CAACC,SAAS,EAAEC,YAAY,KAAK,MAAMC,KAAK,IAAI;EAC7D,MAAM;IAAEC,GAAG;IAAEC;EAAa,CAAC,GAAGF,KAAK;EACnC,MAAMG,SAAS,GAAGJ,YAAY,GAAGA,YAAY,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC;EACzD,MAAM;IACJI,IAAI,EAAE;MAAEC,KAAK,GAAG;IAAG;EACrB,CAAC,GAAG,MAAMH,YAAY,CAACI,KAAK,CAAC;IAAEA,KAAK,EAAER,SAAS;IAAEK;EAAU,CAAC,CAAC;EAC7D,MAAM,CAAC;IAAEI,QAAQ;IAAEC;EAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAGH,KAAK;EACtC,IAAI,CAACG,GAAG,EAAE;IACRP,GAAG,CAACQ,SAAS,CAAC,GAAG,CAAC;IAClBR,GAAG,CAACS,KAAK,CAACf,YAAY,CAAC;IACvBM,GAAG,CAACU,GAAG,CAAC,CAAC;IACT;EACF;EAEA,MAAMC,YAAY,GAAG,MAAMC,KAAK,CAACL,GAAG,CAAC;EAErCM,sBAAsB,CAACF,YAAY,CAACG,OAAO,EAAEd,GAAG,CAAC;EACjDA,GAAG,CAACQ,SAAS,CAAC,GAAG,EAAE;IAAE,cAAc,EAAEF;EAAS,CAAC,CAAC;EAChDN,GAAG,CAACS,KAAK,CAAC,MAAME,YAAY,CAACI,IAAI,CAAC,CAAC,CAAC;EACpCf,GAAG,CAACU,GAAG,CAAC,CAAC;AACX,CAAC;AAED,SAASG,sBAAsBA,CAACC,OAAO,EAAEd,GAAG,EAAE;EAC5CL,2BAA2B,CAACqB,OAAO,CAACC,SAAS,IAAI;IAC/C,MAAMC,WAAW,GAAGJ,OAAO,CAACK,GAAG,CAACF,SAAS,CAAC;IAC1C,IAAI,CAACC,WAAW,EAAE;IAElBlB,GAAG,CAACoB,SAAS,CAACH,SAAS,EAAEC,WAAW,CAAC;EACvC,CAAC,CAAC;AACJ;AAEA,eAAetB,UAAU"}
1
+ {"version":3,"file":"generic-file-handler.js","names":["RESPONSE_404","STATIC_FILE_FORWARD_HEADERS","getHandler","fileQuery","getVariables","props","res","apolloClient","variables","data","files","query","mimetype","url","writeHead","write","end","fileResponse","fetch","setHeadersFromResponse","headers","text","forEach","headerKey","headerValue","get","setHeader"],"sources":["../../../src/helpers/static-route-handlers/generic-file-handler.js"],"sourcesContent":["import 'cross-fetch/polyfill';\nimport { RESPONSE_404, STATIC_FILE_FORWARD_HEADERS } from '../../constants';\n\nconst getHandler = (fileQuery, getVariables) => async props => {\n const { res, apolloClient } = props;\n const variables = getVariables ? getVariables(props) : {};\n const {\n data: { files = [] }\n } = await apolloClient.query({ query: fileQuery, variables });\n const [{ mimetype, url } = {}] = files;\n if (!url) {\n res.writeHead(404);\n res.write(RESPONSE_404);\n res.end();\n return;\n }\n\n const fileResponse = await fetch(url);\n\n setHeadersFromResponse(fileResponse.headers, res);\n res.writeHead(200, { 'Content-Type': mimetype });\n res.write(await fileResponse.text());\n res.end();\n};\n\nfunction setHeadersFromResponse(headers, res) {\n STATIC_FILE_FORWARD_HEADERS.forEach(headerKey => {\n const headerValue = headers.get(headerKey);\n if (!headerValue) return;\n\n res.setHeader(headerKey, headerValue);\n });\n}\n\nexport default getHandler;\n"],"mappings":"AAAA,OAAO,sBAAsB;AAC7B,SAASA,YAAY,EAAEC,2BAA2B,QAAQ,iBAAiB;AAE3E,MAAMC,UAAU,GAAGA,CAACC,SAAS,EAAEC,YAAY,KAAK,MAAMC,KAAK,IAAI;EAC7D,MAAM;IAAEC,GAAG;IAAEC;EAAa,CAAC,GAAGF,KAAK;EACnC,MAAMG,SAAS,GAAGJ,YAAY,GAAGA,YAAY,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC;EACzD,MAAM;IACJI,IAAI,EAAE;MAAEC,KAAK,GAAG;IAAG;EACrB,CAAC,GAAG,MAAMH,YAAY,CAACI,KAAK,CAAC;IAAEA,KAAK,EAAER,SAAS;IAAEK;EAAU,CAAC,CAAC;EAC7D,MAAM,CAAC;IAAEI,QAAQ;IAAEC;EAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAGH,KAAK;EACtC,IAAI,CAACG,GAAG,EAAE;IACRP,GAAG,CAACQ,SAAS,CAAC,GAAG,CAAC;IAClBR,GAAG,CAACS,KAAK,CAACf,YAAY,CAAC;IACvBM,GAAG,CAACU,GAAG,CAAC,CAAC;IACT;EACF;EAEA,MAAMC,YAAY,GAAG,MAAMC,KAAK,CAACL,GAAG,CAAC;EAErCM,sBAAsB,CAACF,YAAY,CAACG,OAAO,EAAEd,GAAG,CAAC;EACjDA,GAAG,CAACQ,SAAS,CAAC,GAAG,EAAE;IAAE,cAAc,EAAEF;EAAS,CAAC,CAAC;EAChDN,GAAG,CAACS,KAAK,CAAC,MAAME,YAAY,CAACI,IAAI,CAAC,CAAC,CAAC;EACpCf,GAAG,CAACU,GAAG,CAAC,CAAC;AACX,CAAC;AAED,SAASG,sBAAsBA,CAACC,OAAO,EAAEd,GAAG,EAAE;EAC5CL,2BAA2B,CAACqB,OAAO,CAACC,SAAS,IAAI;IAC/C,MAAMC,WAAW,GAAGJ,OAAO,CAACK,GAAG,CAACF,SAAS,CAAC;IAC1C,IAAI,CAACC,WAAW,EAAE;IAElBlB,GAAG,CAACoB,SAAS,CAACH,SAAS,EAAEC,WAAW,CAAC;EACvC,CAAC,CAAC;AACJ;AAEA,eAAetB,UAAU","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["sitemap","sitemapFile","robots","pattern","sitemapPattern","handler","sitemapHandler","sitemapFilePattern","sitemapFileHandler","robotsTxtPattern","robotsTxtHandler","config","Map","set"],"sources":["../../../src/helpers/static-route-handlers/index.js"],"sourcesContent":["import * as sitemap from './sitemap';\nimport * as sitemapFile from './sitemap-file';\nimport * as robots from './robots-txt';\n\nconst { pattern: sitemapPattern, handler: sitemapHandler } = sitemap;\nconst { pattern: sitemapFilePattern, handler: sitemapFileHandler } = sitemapFile;\nconst { pattern: robotsTxtPattern, handler: robotsTxtHandler } = robots;\n\nconst config = new Map();\nconfig.set(sitemapPattern, sitemapHandler);\nconfig.set(sitemapFilePattern, sitemapFileHandler);\nconfig.set(robotsTxtPattern, robotsTxtHandler);\n\nexport default config;\n"],"mappings":"AAAA,OAAO,KAAKA,OAAO,MAAM,WAAW;AACpC,OAAO,KAAKC,WAAW,MAAM,gBAAgB;AAC7C,OAAO,KAAKC,MAAM,MAAM,cAAc;AAEtC,MAAM;EAAEC,OAAO,EAAEC,cAAc;EAAEC,OAAO,EAAEC;AAAe,CAAC,GAAGN,OAAO;AACpE,MAAM;EAAEG,OAAO,EAAEI,kBAAkB;EAAEF,OAAO,EAAEG;AAAmB,CAAC,GAAGP,WAAW;AAChF,MAAM;EAAEE,OAAO,EAAEM,gBAAgB;EAAEJ,OAAO,EAAEK;AAAiB,CAAC,GAAGR,MAAM;AAEvE,MAAMS,MAAM,GAAG,IAAIC,GAAG,CAAC,CAAC;AACxBD,MAAM,CAACE,GAAG,CAACT,cAAc,EAAEE,cAAc,CAAC;AAC1CK,MAAM,CAACE,GAAG,CAACN,kBAAkB,EAAEC,kBAAkB,CAAC;AAClDG,MAAM,CAACE,GAAG,CAACJ,gBAAgB,EAAEC,gBAAgB,CAAC;AAE9C,eAAeC,MAAM"}
1
+ {"version":3,"file":"index.js","names":["sitemap","sitemapFile","robots","pattern","sitemapPattern","handler","sitemapHandler","sitemapFilePattern","sitemapFileHandler","robotsTxtPattern","robotsTxtHandler","config","Map","set"],"sources":["../../../src/helpers/static-route-handlers/index.js"],"sourcesContent":["import * as sitemap from './sitemap';\nimport * as sitemapFile from './sitemap-file';\nimport * as robots from './robots-txt';\n\nconst { pattern: sitemapPattern, handler: sitemapHandler } = sitemap;\nconst { pattern: sitemapFilePattern, handler: sitemapFileHandler } = sitemapFile;\nconst { pattern: robotsTxtPattern, handler: robotsTxtHandler } = robots;\n\nconst config = new Map();\nconfig.set(sitemapPattern, sitemapHandler);\nconfig.set(sitemapFilePattern, sitemapFileHandler);\nconfig.set(robotsTxtPattern, robotsTxtHandler);\n\nexport default config;\n"],"mappings":"AAAA,OAAO,KAAKA,OAAO,MAAM,WAAW;AACpC,OAAO,KAAKC,WAAW,MAAM,gBAAgB;AAC7C,OAAO,KAAKC,MAAM,MAAM,cAAc;AAEtC,MAAM;EAAEC,OAAO,EAAEC,cAAc;EAAEC,OAAO,EAAEC;AAAe,CAAC,GAAGN,OAAO;AACpE,MAAM;EAAEG,OAAO,EAAEI,kBAAkB;EAAEF,OAAO,EAAEG;AAAmB,CAAC,GAAGP,WAAW;AAChF,MAAM;EAAEE,OAAO,EAAEM,gBAAgB;EAAEJ,OAAO,EAAEK;AAAiB,CAAC,GAAGR,MAAM;AAEvE,MAAMS,MAAM,GAAG,IAAIC,GAAG,CAAC,CAAC;AACxBD,MAAM,CAACE,GAAG,CAACT,cAAc,EAAEE,cAAc,CAAC;AAC1CK,MAAM,CAACE,GAAG,CAACN,kBAAkB,EAAEC,kBAAkB,CAAC;AAClDG,MAAM,CAACE,GAAG,CAACJ,gBAAgB,EAAEC,gBAAgB,CAAC;AAE9C,eAAeC,MAAM","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"robots-txt.js","names":["gql","ROUTE_PATTERN_ROBOTS_TXT","BLAZE_STATIC_ROUTE_STORE_KEY","getHandler","storeKey","process","env","fileQuery","pattern","RegExp","handler"],"sources":["../../../src/helpers/static-route-handlers/robots-txt.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport { ROUTE_PATTERN_ROBOTS_TXT, BLAZE_STATIC_ROUTE_STORE_KEY } from '../../constants';\nimport getHandler from './generic-file-handler';\n\nconst storeKey = process.env.BLAZE_STATIC_ROUTE_STORE_KEY || BLAZE_STATIC_ROUTE_STORE_KEY;\n\nexport const fileQuery = gql`\n query {\n files: getFiles(\n where: { storeKey: \"${storeKey}\", filename: \"robots.txt\" }\n limit: 1\n sort: [{ property: \"created\", direction: \"desc\" }]\n ) {\n mimetype\n url\n }\n }\n`;\n\nexport const pattern = new RegExp(ROUTE_PATTERN_ROBOTS_TXT);\n\nexport const handler = getHandler(fileQuery);\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,wBAAwB,EAAEC,4BAA4B,QAAQ,iBAAiB;AACxF,OAAOC,UAAU,MAAM,wBAAwB;AAE/C,MAAMC,QAAQ,GAAGC,OAAO,CAACC,GAAG,CAACJ,4BAA4B,IAAIA,4BAA4B;AAEzF,OAAO,MAAMK,SAAS,GAAGP,GAAI;AAC7B;AACA;AACA,4BAA4BI,QAAS;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMI,OAAO,GAAG,IAAIC,MAAM,CAACR,wBAAwB,CAAC;AAE3D,OAAO,MAAMS,OAAO,GAAGP,UAAU,CAACI,SAAS,CAAC"}
1
+ {"version":3,"file":"robots-txt.js","names":["gql","ROUTE_PATTERN_ROBOTS_TXT","BLAZE_STATIC_ROUTE_STORE_KEY","getHandler","storeKey","process","env","fileQuery","pattern","RegExp","handler"],"sources":["../../../src/helpers/static-route-handlers/robots-txt.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport { ROUTE_PATTERN_ROBOTS_TXT, BLAZE_STATIC_ROUTE_STORE_KEY } from '../../constants';\nimport getHandler from './generic-file-handler';\n\nconst storeKey = process.env.BLAZE_STATIC_ROUTE_STORE_KEY || BLAZE_STATIC_ROUTE_STORE_KEY;\n\nexport const fileQuery = gql`\n query {\n files: getFiles(\n where: { storeKey: \"${storeKey}\", filename: \"robots.txt\" }\n limit: 1\n sort: [{ property: \"created\", direction: \"desc\" }]\n ) {\n mimetype\n url\n }\n }\n`;\n\nexport const pattern = new RegExp(ROUTE_PATTERN_ROBOTS_TXT);\n\nexport const handler = getHandler(fileQuery);\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,SAASC,wBAAwB,EAAEC,4BAA4B,QAAQ,iBAAiB;AACxF,OAAOC,UAAU,MAAM,wBAAwB;AAE/C,MAAMC,QAAQ,GAAGC,OAAO,CAACC,GAAG,CAACJ,4BAA4B,IAAIA,4BAA4B;AAEzF,OAAO,MAAMK,SAAS,GAAGP,GAAI;AAC7B;AACA;AACA,4BAA4BI,QAAS;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMI,OAAO,GAAG,IAAIC,MAAM,CAACR,wBAAwB,CAAC;AAE3D,OAAO,MAAMS,OAAO,GAAGP,UAAU,CAACI,SAAS,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-file.js","names":["gql","ROUTE_PATTERN_SITEMAP_FILE_REGEX","SITEMAP_STORE_KEY","getHandler","fileQuery","getVariables","asPath","filename","split","slice","where","storeKey","pattern","handler"],"sources":["../../../src/helpers/static-route-handlers/sitemap-file.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport 'cross-fetch/polyfill';\nimport { ROUTE_PATTERN_SITEMAP_FILE_REGEX, SITEMAP_STORE_KEY } from '../../constants';\nimport getHandler from './generic-file-handler';\n\nexport const fileQuery = gql`\n query getFiles($where: JSON) {\n files: getFiles(where: $where, limit: 1, sort: [{ property: \"created\", direction: \"desc\" }]) {\n mimetype\n url\n }\n }\n`;\n\nfunction getVariables({ asPath }) {\n const filename = asPath.split('/').slice(-1)[0];\n const where = { storeKey: SITEMAP_STORE_KEY, filename };\n return { where };\n}\n\nexport const pattern = ROUTE_PATTERN_SITEMAP_FILE_REGEX;\n\nexport const handler = getHandler(fileQuery, getVariables);\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAO,sBAAsB;AAC7B,SAASC,gCAAgC,EAAEC,iBAAiB,QAAQ,iBAAiB;AACrF,OAAOC,UAAU,MAAM,wBAAwB;AAE/C,OAAO,MAAMC,SAAS,GAAGJ,GAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,SAASK,YAAYA,CAAC;EAAEC;AAAO,CAAC,EAAE;EAChC,MAAMC,QAAQ,GAAGD,MAAM,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;EAC/C,MAAMC,KAAK,GAAG;IAAEC,QAAQ,EAAET,iBAAiB;IAAEK;EAAS,CAAC;EACvD,OAAO;IAAEG;EAAM,CAAC;AAClB;AAEA,OAAO,MAAME,OAAO,GAAGX,gCAAgC;AAEvD,OAAO,MAAMY,OAAO,GAAGV,UAAU,CAACC,SAAS,EAAEC,YAAY,CAAC"}
1
+ {"version":3,"file":"sitemap-file.js","names":["gql","ROUTE_PATTERN_SITEMAP_FILE_REGEX","SITEMAP_STORE_KEY","getHandler","fileQuery","getVariables","asPath","filename","split","slice","where","storeKey","pattern","handler"],"sources":["../../../src/helpers/static-route-handlers/sitemap-file.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport 'cross-fetch/polyfill';\nimport { ROUTE_PATTERN_SITEMAP_FILE_REGEX, SITEMAP_STORE_KEY } from '../../constants';\nimport getHandler from './generic-file-handler';\n\nexport const fileQuery = gql`\n query getFiles($where: JSON) {\n files: getFiles(where: $where, limit: 1, sort: [{ property: \"created\", direction: \"desc\" }]) {\n mimetype\n url\n }\n }\n`;\n\nfunction getVariables({ asPath }) {\n const filename = asPath.split('/').slice(-1)[0];\n const where = { storeKey: SITEMAP_STORE_KEY, filename };\n return { where };\n}\n\nexport const pattern = ROUTE_PATTERN_SITEMAP_FILE_REGEX;\n\nexport const handler = getHandler(fileQuery, getVariables);\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAO,sBAAsB;AAC7B,SAASC,gCAAgC,EAAEC,iBAAiB,QAAQ,iBAAiB;AACrF,OAAOC,UAAU,MAAM,wBAAwB;AAE/C,OAAO,MAAMC,SAAS,GAAGJ,GAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,SAASK,YAAYA,CAAC;EAAEC;AAAO,CAAC,EAAE;EAChC,MAAMC,QAAQ,GAAGD,MAAM,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;EAC/C,MAAMC,KAAK,GAAG;IAAEC,QAAQ,EAAET,iBAAiB;IAAEK;EAAS,CAAC;EACvD,OAAO;IAAEG;EAAM,CAAC;AAClB;AAEA,OAAO,MAAME,OAAO,GAAGX,gCAAgC;AAEvD,OAAO,MAAMY,OAAO,GAAGV,UAAU,CAACC,SAAS,EAAEC,YAAY,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap.js","names":["gql","ROUTE_PATTERN_SITEMAP","getHandler","fileQuery","pattern","RegExp","handler"],"sources":["../../../src/helpers/static-route-handlers/sitemap.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport 'cross-fetch/polyfill';\nimport { ROUTE_PATTERN_SITEMAP } from '../../constants';\nimport getHandler from './generic-file-handler';\n\nexport const fileQuery = gql`\n query {\n files: getFiles(\n where: { storeKey: \"default_sitemap\", filename: \"sitemap-index.xml\" }\n limit: 1\n sort: [{ property: \"created\", direction: \"desc\" }]\n ) {\n mimetype\n url\n }\n }\n`;\n\nexport const pattern = new RegExp(ROUTE_PATTERN_SITEMAP);\n\nexport const handler = getHandler(fileQuery);\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAO,sBAAsB;AAC7B,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,OAAOC,UAAU,MAAM,wBAAwB;AAE/C,OAAO,MAAMC,SAAS,GAAGH,GAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMI,OAAO,GAAG,IAAIC,MAAM,CAACJ,qBAAqB,CAAC;AAExD,OAAO,MAAMK,OAAO,GAAGJ,UAAU,CAACC,SAAS,CAAC"}
1
+ {"version":3,"file":"sitemap.js","names":["gql","ROUTE_PATTERN_SITEMAP","getHandler","fileQuery","pattern","RegExp","handler"],"sources":["../../../src/helpers/static-route-handlers/sitemap.js"],"sourcesContent":["import { gql } from '@apollo/client';\nimport 'cross-fetch/polyfill';\nimport { ROUTE_PATTERN_SITEMAP } from '../../constants';\nimport getHandler from './generic-file-handler';\n\nexport const fileQuery = gql`\n query {\n files: getFiles(\n where: { storeKey: \"default_sitemap\", filename: \"sitemap-index.xml\" }\n limit: 1\n sort: [{ property: \"created\", direction: \"desc\" }]\n ) {\n mimetype\n url\n }\n }\n`;\n\nexport const pattern = new RegExp(ROUTE_PATTERN_SITEMAP);\n\nexport const handler = getHandler(fileQuery);\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,gBAAgB;AACpC,OAAO,sBAAsB;AAC7B,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,OAAOC,UAAU,MAAM,wBAAwB;AAE/C,OAAO,MAAMC,SAAS,GAAGH,GAAI;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,OAAO,MAAMI,OAAO,GAAG,IAAIC,MAAM,CAACJ,qBAAqB,CAAC;AAExD,OAAO,MAAMK,OAAO,GAAGJ,UAAU,CAACC,SAAS,CAAC","ignoreList":[]}
@@ -15,7 +15,7 @@ import { getErrorMessage } from '../helpers';
15
15
  const ErrorBoundary = dynamic(() => import('@blaze-cms/core-errors-ui'));
16
16
  const APP_LOG_NAMESPACE_MAIN = 'main';
17
17
  function getWrappedApp(isSsr, config, blazeApp, App) {
18
- var _class;
18
+ var _Class;
19
19
  function getApolloClient(ctx, requestApp) {
20
20
  return ctx.apolloClient || requestApp.getClient() || requestApp.createClient();
21
21
  }
@@ -24,7 +24,7 @@ function getWrappedApp(isSsr, config, blazeApp, App) {
24
24
  config
25
25
  }) : blazeApp;
26
26
  }
27
- return _class = class extends Component {
27
+ return _Class = class extends Component {
28
28
  static async getInitialProps(context) {
29
29
  const {
30
30
  Component: _Component,
@@ -126,15 +126,15 @@ function getWrappedApp(isSsr, config, blazeApp, App) {
126
126
  blazeApp: this.blazeApp
127
127
  }))));
128
128
  }
129
- }, _defineProperty(_class, "displayName", 'withBlaze(App)'), _defineProperty(_class, "propTypes", {
129
+ }, _defineProperty(_Class, "displayName", 'withBlaze(App)'), _defineProperty(_Class, "propTypes", {
130
130
  apolloState: PropTypes.object,
131
131
  apolloClient: PropTypes.object,
132
132
  processedBlazeEntities: PropTypes.object
133
- }), _defineProperty(_class, "defaultProps", {
133
+ }), _defineProperty(_Class, "defaultProps", {
134
134
  apolloState: {},
135
135
  apolloClient: null,
136
136
  processedBlazeEntities: undefined
137
- }), _class;
137
+ }), _Class;
138
138
  }
139
139
  const withBlaze = (App, buildConfig, {
140
140
  forceSsr = false
@@ -1 +1 @@
1
- {"version":3,"file":"withBlaze.js","names":["React","Component","getDataFromTree","getBlazeUi","setupCheckAccessToken","PropTypes","dynamic","AppContext","blazeConfig","getErrorMessage","ErrorBoundary","APP_LOG_NAMESPACE_MAIN","getWrappedApp","isSsr","config","blazeApp","App","_class","getApolloClient","ctx","requestApp","apolloClient","getClient","createClient","getRequestApp","getInitialProps","context","_Component","router","AppTree","appProps","errorProps","req","res","init","events","emit","pageProps","mainProps","_objectSpread","renderAndCheckPromises","createElement","_extends","openQueryChecker","checkOpenQueries","Promise","race","error","errorCode","statusCode","log","apolloState","cache","extract","sortedState","Object","keys","sort","reduce","acc","key","processedBlazeEntities","getProcessedEntities","constructor","props","state","appLoaded","initComplete","componentDidMount","setState","setApolloClient","render","app","Provider","value","_defineProperty","object","undefined","withBlaze","buildConfig","forceSsr","window","logNameSpace"],"sources":["../../src/hoc/withBlaze.js"],"sourcesContent":["// see: https://github.com/zeit/next.js/blob/canary/examples/with-apollo-auth/lib/withApollo.js\nimport React, { Component } from 'react';\nimport { getDataFromTree } from '@apollo/client/react/ssr';\nimport getBlazeUi from '@blaze-cms/core-ui';\nimport { setupCheckAccessToken } from '@blaze-cms/core-auth-ui';\nimport PropTypes from 'prop-types';\nimport dynamic from 'next/dynamic'; // Next.js dynamic\nimport { AppContext } from '@blaze-cms/nextjs-components';\nimport blazeConfig from '../blaze.config';\nimport { getErrorMessage } from '../helpers';\n\nconst ErrorBoundary = dynamic(() => import('@blaze-cms/core-errors-ui'));\n\nconst APP_LOG_NAMESPACE_MAIN = 'main';\n\nfunction getWrappedApp(isSsr, config, blazeApp, App) {\n function getApolloClient(ctx, requestApp) {\n return ctx.apolloClient || requestApp.getClient() || requestApp.createClient();\n }\n\n function getRequestApp(requestApp) {\n return !requestApp && isSsr ? getBlazeUi({ config }) : blazeApp;\n }\n return class extends Component {\n static displayName = 'withBlaze(App)';\n\n static propTypes = {\n apolloState: PropTypes.object,\n apolloClient: PropTypes.object,\n processedBlazeEntities: PropTypes.object\n };\n\n static defaultProps = {\n apolloState: {},\n apolloClient: null,\n processedBlazeEntities: undefined\n };\n\n static async getInitialProps(context) {\n const { Component: _Component, router, AppTree, ctx } = context;\n let appProps = {};\n let errorProps = {};\n\n let requestApp = ctx.blazeApp;\n requestApp = getRequestApp(requestApp);\n\n requestApp.ctx.router = router;\n requestApp.ctx.req = ctx.req;\n requestApp.ctx.res = ctx.res;\n\n await blazeApp.init();\n await requestApp.init();\n\n const apolloClient = getApolloClient(ctx, requestApp);\n\n ctx.apolloClient = apolloClient;\n ctx.blazeApp = requestApp;\n\n requestApp.events.emit('page-load:get-initial-props:before', { ctx });\n\n if (App.getInitialProps) {\n appProps = await App.getInitialProps(context);\n }\n\n const { pageProps = {} } = appProps;\n const mainProps = {\n ...appProps,\n pageProps: { ...pageProps, ...errorProps }\n };\n\n if (!isSsr) return mainProps;\n\n try {\n const renderAndCheckPromises = [\n getDataFromTree(\n <AppTree\n {...appProps}\n Component={_Component}\n router={router}\n apolloClient={apolloClient}\n />\n ),\n requestApp.openQueryChecker.checkOpenQueries()\n ];\n // race is so that if getDataFromTree gets stuck the checkOpenQueries will resolve when outstanding queries are done\n await Promise.race(renderAndCheckPromises);\n } catch (error) {\n errorProps = getErrorMessage(error);\n if (errorProps.errorCode) ctx.res.statusCode = errorProps.errorCode;\n ctx.blazeApp.events.emit('monitor:log', { error });\n requestApp.log.error('Error while running `getDataFromTree`', error);\n }\n\n const apolloState = apolloClient.cache.extract();\n const sortedState = Object.keys(apolloState)\n .sort()\n .reduce((acc, key) => {\n acc[key] = apolloState[key];\n return acc;\n }, {});\n\n return {\n ...mainProps,\n pageProps: { ...mainProps.pageProps, ...errorProps },\n apolloState: sortedState,\n processedBlazeEntities: blazeApp.getProcessedEntities()\n };\n }\n\n constructor(props) {\n super(props);\n this.apolloClient = props.apolloClient;\n this.state = {\n appLoaded: isSsr || blazeApp.initComplete()\n };\n this.blazeApp = blazeApp;\n }\n\n async componentDidMount() {\n if (blazeApp.initComplete()) return;\n\n await blazeApp.init();\n\n this.setState({\n appLoaded: blazeApp.initComplete()\n });\n }\n\n setApolloClient() {\n if (!this.apolloClient) {\n const { apolloState, processedBlazeEntities } = this.props;\n this.apolloClient = blazeApp.createClient(apolloState, processedBlazeEntities);\n setupCheckAccessToken(this.apolloClient);\n }\n }\n\n render() {\n const { appLoaded } = this.state;\n\n if (!appLoaded && !isSsr) return '...loading';\n\n this.setApolloClient();\n\n return (\n <ErrorBoundary app={this.blazeApp}>\n <AppContext.Provider value={{ blazeApp: this.blazeApp }}>\n <App {...this.props} apolloClient={this.apolloClient} blazeApp={this.blazeApp} />\n </AppContext.Provider>\n </ErrorBoundary>\n );\n }\n };\n}\n\nconst withBlaze = (App, buildConfig, { forceSsr = false } = {}) => {\n const isSsr = forceSsr || typeof window === 'undefined';\n const config = buildConfig ? buildConfig(blazeConfig) : blazeConfig;\n const blazeApp = getBlazeUi({ config, logNameSpace: APP_LOG_NAMESPACE_MAIN });\n blazeApp.init();\n\n return getWrappedApp(isSsr, config, blazeApp, App);\n};\n\nexport default withBlaze;\n"],"mappings":"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"}
1
+ {"version":3,"file":"withBlaze.js","names":["React","Component","getDataFromTree","getBlazeUi","setupCheckAccessToken","PropTypes","dynamic","AppContext","blazeConfig","getErrorMessage","ErrorBoundary","APP_LOG_NAMESPACE_MAIN","getWrappedApp","isSsr","config","blazeApp","App","_Class","getApolloClient","ctx","requestApp","apolloClient","getClient","createClient","getRequestApp","getInitialProps","context","_Component","router","AppTree","appProps","errorProps","req","res","init","events","emit","pageProps","mainProps","_objectSpread","renderAndCheckPromises","createElement","_extends","openQueryChecker","checkOpenQueries","Promise","race","error","errorCode","statusCode","log","apolloState","cache","extract","sortedState","Object","keys","sort","reduce","acc","key","processedBlazeEntities","getProcessedEntities","constructor","props","state","appLoaded","initComplete","componentDidMount","setState","setApolloClient","render","app","Provider","value","_defineProperty","object","undefined","withBlaze","buildConfig","forceSsr","window","logNameSpace"],"sources":["../../src/hoc/withBlaze.js"],"sourcesContent":["// see: https://github.com/zeit/next.js/blob/canary/examples/with-apollo-auth/lib/withApollo.js\nimport React, { Component } from 'react';\nimport { getDataFromTree } from '@apollo/client/react/ssr';\nimport getBlazeUi from '@blaze-cms/core-ui';\nimport { setupCheckAccessToken } from '@blaze-cms/core-auth-ui';\nimport PropTypes from 'prop-types';\nimport dynamic from 'next/dynamic'; // Next.js dynamic\nimport { AppContext } from '@blaze-cms/nextjs-components';\nimport blazeConfig from '../blaze.config';\nimport { getErrorMessage } from '../helpers';\n\nconst ErrorBoundary = dynamic(() => import('@blaze-cms/core-errors-ui'));\n\nconst APP_LOG_NAMESPACE_MAIN = 'main';\n\nfunction getWrappedApp(isSsr, config, blazeApp, App) {\n function getApolloClient(ctx, requestApp) {\n return ctx.apolloClient || requestApp.getClient() || requestApp.createClient();\n }\n\n function getRequestApp(requestApp) {\n return !requestApp && isSsr ? getBlazeUi({ config }) : blazeApp;\n }\n return class extends Component {\n static displayName = 'withBlaze(App)';\n\n static propTypes = {\n apolloState: PropTypes.object,\n apolloClient: PropTypes.object,\n processedBlazeEntities: PropTypes.object\n };\n\n static defaultProps = {\n apolloState: {},\n apolloClient: null,\n processedBlazeEntities: undefined\n };\n\n static async getInitialProps(context) {\n const { Component: _Component, router, AppTree, ctx } = context;\n let appProps = {};\n let errorProps = {};\n\n let requestApp = ctx.blazeApp;\n requestApp = getRequestApp(requestApp);\n\n requestApp.ctx.router = router;\n requestApp.ctx.req = ctx.req;\n requestApp.ctx.res = ctx.res;\n\n await blazeApp.init();\n await requestApp.init();\n\n const apolloClient = getApolloClient(ctx, requestApp);\n\n ctx.apolloClient = apolloClient;\n ctx.blazeApp = requestApp;\n\n requestApp.events.emit('page-load:get-initial-props:before', { ctx });\n\n if (App.getInitialProps) {\n appProps = await App.getInitialProps(context);\n }\n\n const { pageProps = {} } = appProps;\n const mainProps = {\n ...appProps,\n pageProps: { ...pageProps, ...errorProps }\n };\n\n if (!isSsr) return mainProps;\n\n try {\n const renderAndCheckPromises = [\n getDataFromTree(\n <AppTree\n {...appProps}\n Component={_Component}\n router={router}\n apolloClient={apolloClient}\n />\n ),\n requestApp.openQueryChecker.checkOpenQueries()\n ];\n // race is so that if getDataFromTree gets stuck the checkOpenQueries will resolve when outstanding queries are done\n await Promise.race(renderAndCheckPromises);\n } catch (error) {\n errorProps = getErrorMessage(error);\n if (errorProps.errorCode) ctx.res.statusCode = errorProps.errorCode;\n ctx.blazeApp.events.emit('monitor:log', { error });\n requestApp.log.error('Error while running `getDataFromTree`', error);\n }\n\n const apolloState = apolloClient.cache.extract();\n const sortedState = Object.keys(apolloState)\n .sort()\n .reduce((acc, key) => {\n acc[key] = apolloState[key];\n return acc;\n }, {});\n\n return {\n ...mainProps,\n pageProps: { ...mainProps.pageProps, ...errorProps },\n apolloState: sortedState,\n processedBlazeEntities: blazeApp.getProcessedEntities()\n };\n }\n\n constructor(props) {\n super(props);\n this.apolloClient = props.apolloClient;\n this.state = {\n appLoaded: isSsr || blazeApp.initComplete()\n };\n this.blazeApp = blazeApp;\n }\n\n async componentDidMount() {\n if (blazeApp.initComplete()) return;\n\n await blazeApp.init();\n\n this.setState({\n appLoaded: blazeApp.initComplete()\n });\n }\n\n setApolloClient() {\n if (!this.apolloClient) {\n const { apolloState, processedBlazeEntities } = this.props;\n this.apolloClient = blazeApp.createClient(apolloState, processedBlazeEntities);\n setupCheckAccessToken(this.apolloClient);\n }\n }\n\n render() {\n const { appLoaded } = this.state;\n\n if (!appLoaded && !isSsr) return '...loading';\n\n this.setApolloClient();\n\n return (\n <ErrorBoundary app={this.blazeApp}>\n <AppContext.Provider value={{ blazeApp: this.blazeApp }}>\n <App {...this.props} apolloClient={this.apolloClient} blazeApp={this.blazeApp} />\n </AppContext.Provider>\n </ErrorBoundary>\n );\n }\n };\n}\n\nconst withBlaze = (App, buildConfig, { forceSsr = false } = {}) => {\n const isSsr = forceSsr || typeof window === 'undefined';\n const config = buildConfig ? buildConfig(blazeConfig) : blazeConfig;\n const blazeApp = getBlazeUi({ config, logNameSpace: APP_LOG_NAMESPACE_MAIN });\n blazeApp.init();\n\n return getWrappedApp(isSsr, config, blazeApp, App);\n};\n\nexport default withBlaze;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"use-get-page.js","names":["useQuery","useGetPage","queryData","id","data","loading","error","variables"],"sources":["../../src/hooks/use-get-page.js"],"sourcesContent":["import { useQuery } from '@apollo/client';\n\nfunction useGetPage(queryData, id) {\n const { data = {}, loading, error } = useQuery(queryData, { variables: { id } });\n\n return { data, loading, error };\n}\n\nexport default useGetPage;\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,gBAAgB;AAEzC,SAASC,UAAUA,CAACC,SAAS,EAAEC,EAAE,EAAE;EACjC,MAAM;IAAEC,IAAI,GAAG,CAAC,CAAC;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGN,QAAQ,CAACE,SAAS,EAAE;IAAEK,SAAS,EAAE;MAAEJ;IAAG;EAAE,CAAC,CAAC;EAEhF,OAAO;IAAEC,IAAI;IAAEC,OAAO;IAAEC;EAAM,CAAC;AACjC;AAEA,eAAeL,UAAU"}
1
+ {"version":3,"file":"use-get-page.js","names":["useQuery","useGetPage","queryData","id","data","loading","error","variables"],"sources":["../../src/hooks/use-get-page.js"],"sourcesContent":["import { useQuery } from '@apollo/client';\n\nfunction useGetPage(queryData, id) {\n const { data = {}, loading, error } = useQuery(queryData, { variables: { id } });\n\n return { data, loading, error };\n}\n\nexport default useGetPage;\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,gBAAgB;AAEzC,SAASC,UAAUA,CAACC,SAAS,EAAEC,EAAE,EAAE;EACjC,MAAM;IAAEC,IAAI,GAAG,CAAC,CAAC;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGN,QAAQ,CAACE,SAAS,EAAE;IAAEK,SAAS,EAAE;MAAEJ;IAAG;EAAE,CAAC,CAAC;EAEhF,OAAO;IAAEC,IAAI;IAAEC,OAAO;IAAEC;EAAM,CAAC;AACjC;AAEA,eAAeL,UAAU","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["reactApollo","SearchPublishedContent","MainContext","MainContextProvider","default","withBlaze","Resolver","BlazeDocument","router"],"sources":["../src/index.js"],"sourcesContent":["import * as reactApollo from '@apollo/client';\n\nexport { reactApollo };\nexport { SearchPublishedContent } from '@blaze-cms/plugin-search-ui';\nexport { MainContext, MainContextProvider } from '@blaze-cms/nextjs-components';\nexport { default as withBlaze } from './hoc/withBlaze';\nexport { default as Resolver } from './pages/Resolver';\nexport { default as BlazeDocument } from './pages/document/_document';\nexport { default as router } from './server/routes';\n"],"mappings":"AAAA,OAAO,KAAKA,WAAW,MAAM,gBAAgB;AAE7C,SAASA,WAAW;AACpB,SAASC,sBAAsB,QAAQ,6BAA6B;AACpE,SAASC,WAAW,EAAEC,mBAAmB,QAAQ,8BAA8B;AAC/E,SAASC,OAAO,IAAIC,SAAS,QAAQ,iBAAiB;AACtD,SAASD,OAAO,IAAIE,QAAQ,QAAQ,kBAAkB;AACtD,SAASF,OAAO,IAAIG,aAAa,QAAQ,4BAA4B;AACrE,SAASH,OAAO,IAAII,MAAM,QAAQ,iBAAiB"}
1
+ {"version":3,"file":"index.js","names":["reactApollo","SearchPublishedContent","MainContext","MainContextProvider","default","withBlaze","Resolver","BlazeDocument","router"],"sources":["../src/index.js"],"sourcesContent":["import * as reactApollo from '@apollo/client';\n\nexport { reactApollo };\nexport { SearchPublishedContent } from '@blaze-cms/plugin-search-ui';\nexport { MainContext, MainContextProvider } from '@blaze-cms/nextjs-components';\nexport { default as withBlaze } from './hoc/withBlaze';\nexport { default as Resolver } from './pages/Resolver';\nexport { default as BlazeDocument } from './pages/document/_document';\nexport { default as router } from './server/routes';\n"],"mappings":"AAAA,OAAO,KAAKA,WAAW,MAAM,gBAAgB;AAE7C,SAASA,WAAW;AACpB,SAASC,sBAAsB,QAAQ,6BAA6B;AACpE,SAASC,WAAW,EAAEC,mBAAmB,QAAQ,8BAA8B;AAC/E,SAASC,OAAO,IAAIC,SAAS,QAAQ,iBAAiB;AACtD,SAASD,OAAO,IAAIE,QAAQ,QAAQ,kBAAkB;AACtD,SAASF,OAAO,IAAIG,aAAa,QAAQ,4BAA4B;AACrE,SAASH,OAAO,IAAII,MAAM,QAAQ,iBAAiB","ignoreList":[]}
@@ -40,10 +40,17 @@ const Resolver = props => {
40
40
  }
41
41
  if (redirecting) return null;
42
42
  if (isStatusPage) return 'OK';
43
- if (!pageData || !itemId || !itemEntity) return /*#__PURE__*/React.createElement(NextError, {
44
- statusCode: errorCode,
45
- title: errorMessage
46
- });
43
+ if (!pageData || !itemId || !itemEntity) {
44
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
45
+ className: "next_error"
46
+ }, /*#__PURE__*/React.createElement(NextError, {
47
+ statusCode: errorCode,
48
+ title: errorMessage
49
+ })), /*#__PURE__*/React.createElement(DebugSidebar, {
50
+ itemId: itemId,
51
+ itemEntity: itemEntity
52
+ }));
53
+ }
47
54
  return /*#__PURE__*/React.createElement("div", {
48
55
  className: rootSelectorClasses
49
56
  }, /*#__PURE__*/React.createElement(ContentContainer, {
@@ -1 +1 @@
1
- {"version":3,"file":"Resolver.js","names":["React","NextError","useRouter","PropTypes","DebugSidebar","checkUrl","ContentContainer","NOT_FOUND_STATUS_CODE","RESOLVER_CONTAINER_CLASS","Resolver","props","pageData","itemId","itemEntity","isStatusPage","fullUrl","disableSsr","rootSelectorClasses","isPreview","errorCode","errorMessage","redirecting","router","window","asPath","location","hash","url","URL","href","searchParams","set","Date","now","push","createElement","statusCode","title","className","getInitialProps","propTypes","string","object","bool","number","defaultProps"],"sources":["../../src/pages/Resolver.js"],"sourcesContent":["import React from 'react';\nimport NextError from 'next/error';\nimport { useRouter } from 'next/router';\nimport PropTypes from 'prop-types';\nimport { DebugSidebar } from '../components';\nimport { checkUrl } from '../helpers';\nimport { ContentContainer } from '../containers';\nimport { NOT_FOUND_STATUS_CODE, RESOLVER_CONTAINER_CLASS } from '../constants';\n\nconst Resolver = props => {\n const {\n pageData,\n itemId,\n itemEntity,\n isStatusPage,\n fullUrl,\n disableSsr,\n rootSelectorClasses = RESOLVER_CONTAINER_CLASS,\n isPreview = false,\n errorCode = NOT_FOUND_STATUS_CODE,\n errorMessage = null,\n redirecting = false\n } = props;\n\n const router = useRouter();\n\n if (disableSsr) {\n if (typeof window !== 'undefined') {\n let { asPath } = router;\n if (window.location.hash) {\n // handle nextjs issue not calling getInitialProps if pushing a url with a hash in it\n // we add a new query string param to force calling getInitialProps\n // this should only happen if disableSsr and window.location.hash\n const url = new URL(router.asPath, window.location.href);\n if (url.hash) url.searchParams.set('_h', Date.now());\n asPath = url;\n }\n router.push('/Resolver', asPath);\n }\n return '';\n }\n\n if (redirecting) return null;\n\n if (isStatusPage) return 'OK';\n\n if (!pageData || !itemId || !itemEntity)\n return <NextError statusCode={errorCode} title={errorMessage} />;\n\n return (\n <div className={rootSelectorClasses}>\n <ContentContainer\n pageData={pageData}\n itemId={itemId}\n itemEntity={itemEntity}\n isPreview={isPreview}\n fullUrl={fullUrl}\n />\n\n <DebugSidebar itemId={itemId} itemEntity={itemEntity} />\n </div>\n );\n};\n\nResolver.getInitialProps = async props => checkUrl(props);\n\nResolver.propTypes = {\n itemId: PropTypes.string,\n itemEntity: PropTypes.string,\n pageData: PropTypes.object,\n isStatusPage: PropTypes.bool,\n fullUrl: PropTypes.string,\n isPreview: PropTypes.bool,\n errorCode: PropTypes.number,\n disableSsr: PropTypes.bool,\n errorMessage: PropTypes.string,\n rootSelectorClasses: PropTypes.string,\n redirecting: PropTypes.bool\n};\n\nResolver.defaultProps = {\n itemId: null,\n itemEntity: null,\n pageData: null,\n isStatusPage: false,\n fullUrl: '',\n isPreview: false,\n errorCode: NOT_FOUND_STATUS_CODE,\n disableSsr: false,\n errorMessage: null,\n rootSelectorClasses: RESOLVER_CONTAINER_CLASS,\n redirecting: false\n};\n\nexport default Resolver;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Resolver.js","names":["React","NextError","useRouter","PropTypes","DebugSidebar","checkUrl","ContentContainer","NOT_FOUND_STATUS_CODE","RESOLVER_CONTAINER_CLASS","Resolver","props","pageData","itemId","itemEntity","isStatusPage","fullUrl","disableSsr","rootSelectorClasses","isPreview","errorCode","errorMessage","redirecting","router","window","asPath","location","hash","url","URL","href","searchParams","set","Date","now","push","createElement","Fragment","className","statusCode","title","getInitialProps","propTypes","string","object","bool","number","defaultProps"],"sources":["../../src/pages/Resolver.js"],"sourcesContent":["import React from 'react';\nimport NextError from 'next/error';\nimport { useRouter } from 'next/router';\nimport PropTypes from 'prop-types';\nimport { DebugSidebar } from '../components';\nimport { checkUrl } from '../helpers';\nimport { ContentContainer } from '../containers';\nimport { NOT_FOUND_STATUS_CODE, RESOLVER_CONTAINER_CLASS } from '../constants';\n\nconst Resolver = props => {\n const {\n pageData,\n itemId,\n itemEntity,\n isStatusPage,\n fullUrl,\n disableSsr,\n rootSelectorClasses = RESOLVER_CONTAINER_CLASS,\n isPreview = false,\n errorCode = NOT_FOUND_STATUS_CODE,\n errorMessage = null,\n redirecting = false\n } = props;\n\n const router = useRouter();\n\n if (disableSsr) {\n if (typeof window !== 'undefined') {\n let { asPath } = router;\n if (window.location.hash) {\n // handle nextjs issue not calling getInitialProps if pushing a url with a hash in it\n // we add a new query string param to force calling getInitialProps\n // this should only happen if disableSsr and window.location.hash\n const url = new URL(router.asPath, window.location.href);\n if (url.hash) url.searchParams.set('_h', Date.now());\n asPath = url;\n }\n router.push('/Resolver', asPath);\n }\n return '';\n }\n\n if (redirecting) return null;\n\n if (isStatusPage) return 'OK';\n\n if (!pageData || !itemId || !itemEntity) {\n return (\n <>\n <div className=\"next_error\">\n <NextError statusCode={errorCode} title={errorMessage} />\n </div>\n <DebugSidebar itemId={itemId} itemEntity={itemEntity} />\n </>\n );\n }\n\n return (\n <div className={rootSelectorClasses}>\n <ContentContainer\n pageData={pageData}\n itemId={itemId}\n itemEntity={itemEntity}\n isPreview={isPreview}\n fullUrl={fullUrl}\n />\n\n <DebugSidebar itemId={itemId} itemEntity={itemEntity} />\n </div>\n );\n};\n\nResolver.getInitialProps = async props => checkUrl(props);\n\nResolver.propTypes = {\n itemId: PropTypes.string,\n itemEntity: PropTypes.string,\n pageData: PropTypes.object,\n isStatusPage: PropTypes.bool,\n fullUrl: PropTypes.string,\n isPreview: PropTypes.bool,\n errorCode: PropTypes.number,\n disableSsr: PropTypes.bool,\n errorMessage: PropTypes.string,\n rootSelectorClasses: PropTypes.string,\n redirecting: PropTypes.bool\n};\n\nResolver.defaultProps = {\n itemId: null,\n itemEntity: null,\n pageData: null,\n isStatusPage: false,\n fullUrl: '',\n isPreview: false,\n errorCode: NOT_FOUND_STATUS_CODE,\n disableSsr: false,\n errorMessage: null,\n rootSelectorClasses: RESOLVER_CONTAINER_CLASS,\n redirecting: false\n};\n\nexport default Resolver;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentBody.js","names":["React","PropTypes","Main","NextScript","DocumentBody","children","createElement","propTypes","object","isRequired"],"sources":["../../../src/pages/document/DocumentBody.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Main, NextScript } from 'next/document';\n\nconst DocumentBody = ({ children }) => (\n <body>\n <Main />\n <NextScript />\n {children}\n </body>\n);\n\nDocumentBody.propTypes = {\n children: PropTypes.object.isRequired\n};\n\nexport default DocumentBody;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,IAAI,EAAEC,UAAU,QAAQ,eAAe;AAEhD,MAAMC,YAAY,GAAGA,CAAC;EAAEC;AAAS,CAAC,kBAChCL,KAAA,CAAAM,aAAA,4BACEN,KAAA,CAAAM,aAAA,CAACJ,IAAI,MAAE,CAAC,eACRF,KAAA,CAAAM,aAAA,CAACH,UAAU,MAAE,CAAC,EACbE,QACG,CACP;AAEDD,YAAY,CAACG,SAAS,GAAG;EACvBF,QAAQ,EAAEJ,SAAS,CAACO,MAAM,CAACC;AAC7B,CAAC;AAED,eAAeL,YAAY"}
1
+ {"version":3,"file":"DocumentBody.js","names":["React","PropTypes","Main","NextScript","DocumentBody","children","createElement","propTypes","object","isRequired"],"sources":["../../../src/pages/document/DocumentBody.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Main, NextScript } from 'next/document';\n\nconst DocumentBody = ({ children }) => (\n <body>\n <Main />\n <NextScript />\n {children}\n </body>\n);\n\nDocumentBody.propTypes = {\n children: PropTypes.object.isRequired\n};\n\nexport default DocumentBody;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,IAAI,EAAEC,UAAU,QAAQ,eAAe;AAEhD,MAAMC,YAAY,GAAGA,CAAC;EAAEC;AAAS,CAAC,kBAChCL,KAAA,CAAAM,aAAA,4BACEN,KAAA,CAAAM,aAAA,CAACJ,IAAI,MAAE,CAAC,eACRF,KAAA,CAAAM,aAAA,CAACH,UAAU,MAAE,CAAC,EACbE,QACG,CACP;AAEDD,YAAY,CAACG,SAAS,GAAG;EACvBF,QAAQ,EAAEJ,SAAS,CAACO,MAAM,CAACC;AAC7B,CAAC;AAED,eAAeL,YAAY","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"_document.js","names":["React","PropTypes","Document","Html","Head","DocumentBody","renderAppleTags","BlazeDocument","children","createElement","lang","rel","href","type","Body","propTypes","object","isRequired"],"sources":["../../../src/pages/document/_document.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Document, { Html, Head } from 'next/document';\nimport DocumentBody from './DocumentBody';\nimport { renderAppleTags } from '../../helpers';\n\nconst BlazeDocument = ({ children }) => (\n <Html lang=\"en\">\n <Head>\n <link rel=\"icon\" href=\"/static/img/favicon.png\" type=\"image/x-icon\" />\n {renderAppleTags()}\n </Head>\n {children}\n </Html>\n);\n\nBlazeDocument.Document = Document;\nBlazeDocument.Body = DocumentBody;\n\nBlazeDocument.propTypes = {\n children: PropTypes.object.isRequired\n};\n\nexport default BlazeDocument;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,QAAQ,IAAIC,IAAI,EAAEC,IAAI,QAAQ,eAAe;AACpD,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,eAAe,QAAQ,eAAe;AAE/C,MAAMC,aAAa,GAAGA,CAAC;EAAEC;AAAS,CAAC,kBACjCR,KAAA,CAAAS,aAAA,CAACN,IAAI;EAACO,IAAI,EAAC;AAAI,gBACbV,KAAA,CAAAS,aAAA,CAACL,IAAI,qBACHJ,KAAA,CAAAS,aAAA;EAAME,GAAG,EAAC,MAAM;EAACC,IAAI,EAAC,yBAAyB;EAACC,IAAI,EAAC;AAAc,CAAE,CAAC,EACrEP,eAAe,CAAC,CACb,CAAC,EACNE,QACG,CACP;AAEDD,aAAa,CAACL,QAAQ,GAAGA,QAAQ;AACjCK,aAAa,CAACO,IAAI,GAAGT,YAAY;AAEjCE,aAAa,CAACQ,SAAS,GAAG;EACxBP,QAAQ,EAAEP,SAAS,CAACe,MAAM,CAACC;AAC7B,CAAC;AAED,eAAeV,aAAa"}
1
+ {"version":3,"file":"_document.js","names":["React","PropTypes","Document","Html","Head","DocumentBody","renderAppleTags","BlazeDocument","children","createElement","lang","rel","href","type","Body","propTypes","object","isRequired"],"sources":["../../../src/pages/document/_document.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Document, { Html, Head } from 'next/document';\nimport DocumentBody from './DocumentBody';\nimport { renderAppleTags } from '../../helpers';\n\nconst BlazeDocument = ({ children }) => (\n <Html lang=\"en\">\n <Head>\n <link rel=\"icon\" href=\"/static/img/favicon.png\" type=\"image/x-icon\" />\n {renderAppleTags()}\n </Head>\n {children}\n </Html>\n);\n\nBlazeDocument.Document = Document;\nBlazeDocument.Body = DocumentBody;\n\nBlazeDocument.propTypes = {\n children: PropTypes.object.isRequired\n};\n\nexport default BlazeDocument;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,QAAQ,IAAIC,IAAI,EAAEC,IAAI,QAAQ,eAAe;AACpD,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,eAAe,QAAQ,eAAe;AAE/C,MAAMC,aAAa,GAAGA,CAAC;EAAEC;AAAS,CAAC,kBACjCR,KAAA,CAAAS,aAAA,CAACN,IAAI;EAACO,IAAI,EAAC;AAAI,gBACbV,KAAA,CAAAS,aAAA,CAACL,IAAI,qBACHJ,KAAA,CAAAS,aAAA;EAAME,GAAG,EAAC,MAAM;EAACC,IAAI,EAAC,yBAAyB;EAACC,IAAI,EAAC;AAAc,CAAE,CAAC,EACrEP,eAAe,CAAC,CACb,CAAC,EACNE,QACG,CACP;AAEDD,aAAa,CAACL,QAAQ,GAAGA,QAAQ;AACjCK,aAAa,CAACO,IAAI,GAAGT,YAAY;AAEjCE,aAAa,CAACQ,SAAS,GAAG;EACxBP,QAAQ,EAAEP,SAAS,CAACe,MAAM,CAACC;AAC7B,CAAC;AAED,eAAeV,aAAa","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["createServer","require","Router","port","parseInt","process","env","PORT","prepareServer","nextApp","handler","getRequestHandler","prepare","run","listen","module","exports"],"sources":["../../src/server/index.js"],"sourcesContent":["const { createServer } = require('http');\nconst Router = require('./routes');\n\nconst port = parseInt(process.env.PORT, 10) || 3000;\n\nasync function prepareServer(nextApp) {\n const handler = Router.getRequestHandler(nextApp);\n\n await nextApp.prepare();\n\n return { run: () => createServer(handler).listen(port), handler };\n}\n\nmodule.exports = prepareServer;\n"],"mappings":"AAAA,MAAM;EAAEA;AAAa,CAAC,GAAGC,OAAO,CAAC,MAAM,CAAC;AACxC,MAAMC,MAAM,GAAGD,OAAO,CAAC,UAAU,CAAC;AAElC,MAAME,IAAI,GAAGC,QAAQ,CAACC,OAAO,CAACC,GAAG,CAACC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI;AAEnD,eAAeC,aAAaA,CAACC,OAAO,EAAE;EACpC,MAAMC,OAAO,GAAGR,MAAM,CAACS,iBAAiB,CAACF,OAAO,CAAC;EAEjD,MAAMA,OAAO,CAACG,OAAO,CAAC,CAAC;EAEvB,OAAO;IAAEC,GAAG,EAAEA,CAAA,KAAMb,YAAY,CAACU,OAAO,CAAC,CAACI,MAAM,CAACX,IAAI,CAAC;IAAEO;EAAQ,CAAC;AACnE;AAEAK,MAAM,CAACC,OAAO,GAAGR,aAAa"}
1
+ {"version":3,"file":"index.js","names":["createServer","require","Router","port","parseInt","process","env","PORT","prepareServer","nextApp","handler","getRequestHandler","prepare","run","listen","module","exports"],"sources":["../../src/server/index.js"],"sourcesContent":["const { createServer } = require('http');\nconst Router = require('./routes');\n\nconst port = parseInt(process.env.PORT, 10) || 3000;\n\nasync function prepareServer(nextApp) {\n const handler = Router.getRequestHandler(nextApp);\n\n await nextApp.prepare();\n\n return { run: () => createServer(handler).listen(port), handler };\n}\n\nmodule.exports = prepareServer;\n"],"mappings":"AAAA,MAAM;EAAEA;AAAa,CAAC,GAAGC,OAAO,CAAC,MAAM,CAAC;AACxC,MAAMC,MAAM,GAAGD,OAAO,CAAC,UAAU,CAAC;AAElC,MAAME,IAAI,GAAGC,QAAQ,CAACC,OAAO,CAACC,GAAG,CAACC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI;AAEnD,eAAeC,aAAaA,CAACC,OAAO,EAAE;EACpC,MAAMC,OAAO,GAAGR,MAAM,CAACS,iBAAiB,CAACF,OAAO,CAAC;EAEjD,MAAMA,OAAO,CAACG,OAAO,CAAC,CAAC;EAEvB,OAAO;IAAEC,GAAG,EAAEA,CAAA,KAAMb,YAAY,CAACU,OAAO,CAAC,CAACI,MAAM,CAACX,IAAI,CAAC;IAAEO;EAAQ,CAAC;AACnE;AAEAK,MAAM,CAACC,OAAO,GAAGR,aAAa","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","names":["Router","require","ROUTE_REGEX","PREVIEW_REGEX","ROUTE_PATTERN_SITEMAP","ROUTE_PATTERN_SITEMAP_FILE_REGEX","ROUTE_PATTERN_ROBOTS_TXT","router","add","name","pattern","page","module","exports"],"sources":["../../src/server/routes.js"],"sourcesContent":["const Router = require('nextjs-dynamic-routes');\nconst {\n ROUTE_REGEX,\n PREVIEW_REGEX,\n ROUTE_PATTERN_SITEMAP,\n ROUTE_PATTERN_SITEMAP_FILE_REGEX,\n ROUTE_PATTERN_ROBOTS_TXT\n} = require('../constants');\n\nconst router = new Router();\n\nrouter.add({\n name: 'resolver',\n pattern: ROUTE_REGEX,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'preview',\n pattern: PREVIEW_REGEX,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'sitemap',\n pattern: ROUTE_PATTERN_SITEMAP,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'sitemap file',\n pattern: ROUTE_PATTERN_SITEMAP_FILE_REGEX,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'robots',\n pattern: ROUTE_PATTERN_ROBOTS_TXT,\n page: '/Resolver'\n});\n\nmodule.exports = router;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAGC,OAAO,CAAC,uBAAuB,CAAC;AAC/C,MAAM;EACJC,WAAW;EACXC,aAAa;EACbC,qBAAqB;EACrBC,gCAAgC;EAChCC;AACF,CAAC,GAAGL,OAAO,CAAC,cAAc,CAAC;AAE3B,MAAMM,MAAM,GAAG,IAAIP,MAAM,CAAC,CAAC;AAE3BO,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,UAAU;EAChBC,OAAO,EAAER,WAAW;EACpBS,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,SAAS;EACfC,OAAO,EAAEP,aAAa;EACtBQ,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,SAAS;EACfC,OAAO,EAAEN,qBAAqB;EAC9BO,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,cAAc;EACpBC,OAAO,EAAEL,gCAAgC;EACzCM,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,QAAQ;EACdC,OAAO,EAAEJ,wBAAwB;EACjCK,IAAI,EAAE;AACR,CAAC,CAAC;AAEFC,MAAM,CAACC,OAAO,GAAGN,MAAM"}
1
+ {"version":3,"file":"routes.js","names":["Router","require","ROUTE_REGEX","PREVIEW_REGEX","ROUTE_PATTERN_SITEMAP","ROUTE_PATTERN_SITEMAP_FILE_REGEX","ROUTE_PATTERN_ROBOTS_TXT","router","add","name","pattern","page","module","exports"],"sources":["../../src/server/routes.js"],"sourcesContent":["const Router = require('nextjs-dynamic-routes');\nconst {\n ROUTE_REGEX,\n PREVIEW_REGEX,\n ROUTE_PATTERN_SITEMAP,\n ROUTE_PATTERN_SITEMAP_FILE_REGEX,\n ROUTE_PATTERN_ROBOTS_TXT\n} = require('../constants');\n\nconst router = new Router();\n\nrouter.add({\n name: 'resolver',\n pattern: ROUTE_REGEX,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'preview',\n pattern: PREVIEW_REGEX,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'sitemap',\n pattern: ROUTE_PATTERN_SITEMAP,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'sitemap file',\n pattern: ROUTE_PATTERN_SITEMAP_FILE_REGEX,\n page: '/Resolver'\n});\n\nrouter.add({\n name: 'robots',\n pattern: ROUTE_PATTERN_ROBOTS_TXT,\n page: '/Resolver'\n});\n\nmodule.exports = router;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAGC,OAAO,CAAC,uBAAuB,CAAC;AAC/C,MAAM;EACJC,WAAW;EACXC,aAAa;EACbC,qBAAqB;EACrBC,gCAAgC;EAChCC;AACF,CAAC,GAAGL,OAAO,CAAC,cAAc,CAAC;AAE3B,MAAMM,MAAM,GAAG,IAAIP,MAAM,CAAC,CAAC;AAE3BO,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,UAAU;EAChBC,OAAO,EAAER,WAAW;EACpBS,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,SAAS;EACfC,OAAO,EAAEP,aAAa;EACtBQ,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,SAAS;EACfC,OAAO,EAAEN,qBAAqB;EAC9BO,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,cAAc;EACpBC,OAAO,EAAEL,gCAAgC;EACzCM,IAAI,EAAE;AACR,CAAC,CAAC;AAEFJ,MAAM,CAACC,GAAG,CAAC;EACTC,IAAI,EAAE,QAAQ;EACdC,OAAO,EAAEJ,wBAAwB;EACjCK,IAAI,EAAE;AACR,CAAC,CAAC;AAEFC,MAAM,CAACC,OAAO,GAAGN,MAAM","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/nextjs-tools",
3
- "version": "0.146.0-alpha.4",
3
+ "version": "0.146.0-alpha.40",
4
4
  "description": "Blaze nextjs tools",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -28,20 +28,20 @@
28
28
  "license": "GPL-3.0",
29
29
  "dependencies": {
30
30
  "@apollo/client": "3.5.x",
31
- "@blaze-cms/core-auth-ui": "^0.144.0",
32
- "@blaze-cms/core-errors": "^0.140.3",
31
+ "@blaze-cms/core-auth-ui": "0.146.0-alpha.26",
32
+ "@blaze-cms/core-errors": "0.146.0-alpha.26",
33
33
  "@blaze-cms/core-errors-ui": "^0.140.3",
34
- "@blaze-cms/core-ui": "^0.144.0",
35
- "@blaze-cms/nextjs-components": "^0.143.0",
36
- "@blaze-cms/plugin-auth-fe": "^0.144.0",
37
- "@blaze-cms/plugin-auth-local-fe": "^0.144.0",
38
- "@blaze-cms/plugin-google-maps-fe": "0.146.0-alpha.4",
39
- "@blaze-cms/plugin-gtm-fe": "0.146.0-alpha.4",
40
- "@blaze-cms/plugin-page-builder-fe": "0.146.0-alpha.4",
41
- "@blaze-cms/plugin-preview-fe": "^0.144.0",
42
- "@blaze-cms/plugin-search-ui": "^0.144.0",
34
+ "@blaze-cms/core-ui": "0.146.0-alpha.26",
35
+ "@blaze-cms/nextjs-components": "0.146.0-alpha.28",
36
+ "@blaze-cms/plugin-auth-fe": "0.146.0-alpha.36",
37
+ "@blaze-cms/plugin-auth-local-fe": "0.146.0-alpha.36",
38
+ "@blaze-cms/plugin-google-maps-fe": "0.146.0-alpha.40",
39
+ "@blaze-cms/plugin-gtm-fe": "0.146.0-alpha.40",
40
+ "@blaze-cms/plugin-page-builder-fe": "0.146.0-alpha.40",
41
+ "@blaze-cms/plugin-preview-fe": "0.146.0-alpha.26",
42
+ "@blaze-cms/plugin-search-ui": "0.146.0-alpha.30",
43
43
  "@blaze-cms/plugin-structured-data-fe": "^0.140.3",
44
- "@blaze-cms/react-page-builder": "0.146.0-alpha.4",
44
+ "@blaze-cms/react-page-builder": "0.146.0-alpha.40",
45
45
  "@blaze-cms/setup-ui": "^0.140.3",
46
46
  "autoprefixer": "^10.2.3",
47
47
  "core-js": "^3.2.1",
@@ -69,5 +69,5 @@
69
69
  "lib/*",
70
70
  "lib-es/*"
71
71
  ],
72
- "gitHead": "bfd9bab0c217f1f9a366a8d1caf3b22115235096"
72
+ "gitHead": "b49c77a952918c727305c0c5f7725716a4f26f00"
73
73
  }
package/src/constants.js CHANGED
@@ -24,7 +24,7 @@ const COLON = ':';
24
24
  const DOUBLE_SLASH = '//';
25
25
  const HTTPS = 'https://';
26
26
 
27
- const DEFAULT_ROUTE_REGEX = /^\/[a-z0-9€_\/]+(?:[-\/]{1,2}[a-z0-9\/€_\/]+)*$|^\/$/i;
27
+ const DEFAULT_ROUTE_REGEX = /^\/[a-z0-9€_\/]+(?:[-\/\.]{1,2}[a-z0-9\/€_\/]+)*$|^\/$/i;
28
28
  const ROUTE_REGEX = process.env.BLAZE_ROUTE_REGEX
29
29
  ? new RegExp(process.env.BLAZE_ROUTE_REGEX)
30
30
  : DEFAULT_ROUTE_REGEX;
@@ -90,17 +90,14 @@ const getFullUrl = (req, asPath) => {
90
90
  const doUrlCheck = async ({ asPath, url, apolloClient, res, handle404Error, blazeApp }) => {
91
91
  try {
92
92
  const {
93
- data: {
94
- checkUrl: { itemId, itemEntity, urlTo, pageData = {} }
95
- }
93
+ data: { checkUrl: { itemId, itemEntity, urlTo, pageData = {} } = {} } = {}
96
94
  } = await apolloClient.query({
97
95
  query: checkUrlQuery,
98
- variables: {
99
- url
100
- }
96
+ variables: { url }
101
97
  });
102
98
 
103
- const { cacheControlMaxAge = null } = pageData || {}; // pageData can be null when there is no page
99
+ const { cacheControlMaxAge = null } = pageData || {};
100
+
104
101
  if (res && cacheControlMaxAge !== null && cacheControlMaxAge >= 0) {
105
102
  res.setHeader('Cache-Control', `max-age=${cacheControlMaxAge}`);
106
103
  }
@@ -112,8 +109,7 @@ const doUrlCheck = async ({ asPath, url, apolloClient, res, handle404Error, blaz
112
109
  redirectUrl = queryString ? `${urlTo}?${queryString}` : urlTo;
113
110
  }
114
111
 
115
- doRedirect(res, redirectUrl);
116
- return { redirecting: true };
112
+ return doRedirect(res, redirectUrl);
117
113
  }
118
114
  const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());
119
115
  return {
@@ -123,14 +119,16 @@ const doUrlCheck = async ({ asPath, url, apolloClient, res, handle404Error, blaz
123
119
  itemEntity: getUnpublishedEntityName(itemEntity)
124
120
  };
125
121
  } catch (err) {
122
+ if (!err.graphQLErrors || !err.graphQLErrors.length) {
123
+ return handleError(err, res, handle404Error, blazeApp);
124
+ }
125
+
126
126
  const parentPATH = checkParent(url);
127
127
  if (handle404Error && parentPATH) {
128
- doRedirect(res, parentPATH);
129
- } else {
130
- return handleError(err, res, handle404Error, blazeApp);
128
+ return doRedirect(res, parentPATH);
131
129
  }
132
130
 
133
- return handle404Error ? {} : null;
131
+ return handleError(err, res, handle404Error, blazeApp);
134
132
  }
135
133
  };
136
134
 
@@ -157,6 +155,8 @@ function doRedirect(res, redirectUrl) {
157
155
  } else {
158
156
  window.location.href = redirectUrl;
159
157
  }
158
+
159
+ return { redirecting: true };
160
160
  }
161
161
 
162
162
  export default checkUrl;
@@ -44,8 +44,16 @@ const Resolver = props => {
44
44
 
45
45
  if (isStatusPage) return 'OK';
46
46
 
47
- if (!pageData || !itemId || !itemEntity)
48
- return <NextError statusCode={errorCode} title={errorMessage} />;
47
+ if (!pageData || !itemId || !itemEntity) {
48
+ return (
49
+ <>
50
+ <div className="next_error">
51
+ <NextError statusCode={errorCode} title={errorMessage} />
52
+ </div>
53
+ <DebugSidebar itemId={itemId} itemEntity={itemEntity} />
54
+ </>
55
+ );
56
+ }
49
57
 
50
58
  return (
51
59
  <div className={rootSelectorClasses}>
@@ -66,7 +66,7 @@ Object {
66
66
  "ROUTE_PATTERN_ROBOTS_TXT": "/robots.txt",
67
67
  "ROUTE_PATTERN_SITEMAP": "/sitemap.xml",
68
68
  "ROUTE_PATTERN_SITEMAP_FILE_REGEX": /\\\\/sitemap\\\\/\\.\\*\\.xml/,
69
- "ROUTE_REGEX": /\\^\\\\/\\[a-z0-9€_\\\\/\\]\\+\\(\\?:\\[-\\\\/\\]\\{1,2\\}\\[a-z0-9\\\\/€_\\\\/\\]\\+\\)\\*\\$\\|\\^\\\\/\\$/i,
69
+ "ROUTE_REGEX": /\\^\\\\/\\[a-z0-9€_\\\\/\\]\\+\\(\\?:\\[-\\\\/\\\\\\.\\]\\{1,2\\}\\[a-z0-9\\\\/€_\\\\/\\]\\+\\)\\*\\$\\|\\^\\\\/\\$/i,
70
70
  "SEARCH_FILTER": "searchfilter",
71
71
  "SITEMAP_STORE_KEY": "default_sitemap",
72
72
  "STATIC_FILE_FORWARD_HEADERS": Array [
@@ -7,10 +7,21 @@ describe('Constants', () => {
7
7
  expect(constants).toMatchSnapshot();
8
8
  });
9
9
 
10
- it('should handle trailing and no trailing route slashes', () => {
10
+ describe('Default route regex', () => {
11
11
  const { ROUTE_REGEX } = constants;
12
- expect(ROUTE_REGEX.test('/page')).toEqual(true);
13
- expect(ROUTE_REGEX.test('/page/')).toEqual(true);
12
+
13
+ it('should handle trailing and no trailing route slashes', () => {
14
+ expect(ROUTE_REGEX.test('/page')).toEqual(true);
15
+ expect(ROUTE_REGEX.test('/page/')).toEqual(true);
16
+ });
17
+
18
+ it('should allow specific characters in route regex', () => {
19
+ const validCharacters = 'abc0123€_';
20
+ expect(ROUTE_REGEX.test(`/${validCharacters}`)).toEqual(true);
21
+ expect(ROUTE_REGEX.test(`/${validCharacters}/${validCharacters}.pdf`)).toEqual(true);
22
+ expect(ROUTE_REGEX.test(`/${validCharacters}=`)).toEqual(false);
23
+ expect(ROUTE_REGEX.test(`/${validCharacters}/${validCharacters}=`)).toEqual(false);
24
+ });
14
25
  });
15
26
 
16
27
  it('should be able to override default ROUTE_REGEX', () => {
@@ -229,13 +229,15 @@ describe('Check url', () => {
229
229
 
230
230
  it('should handle redirect to parent on not found', async () => {
231
231
  apolloClient.query.mockImplementationOnce(async () => {
232
- throw new Error('Not found');
232
+ const error = new Error('Not found');
233
+ error.graphQLErrors = ['error'];
234
+ throw error;
233
235
  });
234
236
  const parentChildAsPath = '/parent/child';
235
237
  const result = await checkUrl({ ...props, asPath: parentChildAsPath });
236
238
  expect(res.writeHead).toHaveBeenCalledWith(301, { Location: '/parent' });
237
239
  expect(res.end).toHaveBeenCalled();
238
- redirectResultCheck(result, false);
240
+ redirectResultCheck(result, true);
239
241
  apolloQueryCheck(apolloClient, parentChildAsPath);
240
242
  });
241
243
 
@@ -14,7 +14,11 @@ exports[`Resolver page should disable SSR 1`] = `<DocumentFragment />`;
14
14
 
15
15
  exports[`Resolver page should render 404 error if pageData, itemId or itemEntity falsey 1`] = `
16
16
  <DocumentFragment>
17
- NextError
17
+ <div
18
+ class="next_error"
19
+ >
20
+ NextError
21
+ </div>
18
22
  </DocumentFragment>
19
23
  `;
20
24
 
@@ -5,7 +5,7 @@ Array [
5
5
  Object {
6
6
  "name": "resolver",
7
7
  "page": "/Resolver",
8
- "pattern": /\\^\\\\/\\[a-z0-9€_\\\\/\\]\\+\\(\\?:\\[-\\\\/\\]\\{1,2\\}\\[a-z0-9\\\\/€_\\\\/\\]\\+\\)\\*\\$\\|\\^\\\\/\\$/i,
8
+ "pattern": /\\^\\\\/\\[a-z0-9€_\\\\/\\]\\+\\(\\?:\\[-\\\\/\\\\\\.\\]\\{1,2\\}\\[a-z0-9\\\\/€_\\\\/\\]\\+\\)\\*\\$\\|\\^\\\\/\\$/i,
9
9
  },
10
10
  Object {
11
11
  "name": "preview",