@blaze-cms/nextjs-tools 0.146.0-node18-core-styles-tooltips.25 → 0.146.0-node18-tooltips.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,7 +3,7 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- # [0.146.0-node18-core-styles-tooltips.25](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.24...v0.146.0-node18-core-styles-tooltips.25) (2025-11-07)
6
+ # [0.146.0-node18-tooltips.28](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.27...v0.146.0-node18-tooltips.28) (2025-11-10)
7
7
 
8
8
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
9
9
 
@@ -11,31 +11,31 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
11
11
 
12
12
 
13
13
 
14
- # [0.146.0-node18-core-styles-tooltips.24](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.23...v0.146.0-node18-core-styles-tooltips.24) (2025-11-03)
14
+ # [0.146.0-node18-tooltips.27](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.26...v0.146.0-node18-tooltips.27) (2025-11-06)
15
15
 
16
+ **Note:** Version bump only for package @blaze-cms/nextjs-tools
16
17
 
17
- ### Bug Fixes
18
18
 
19
- * enable parent redirects with custom 404 pages ([#4971](https://github.com/thebyte9/blaze/issues/4971)) ([bdac8d7](https://github.com/thebyte9/blaze/commit/bdac8d7ab48a003df199176c65df217089233fce))
20
19
 
21
20
 
22
- ### Features
23
21
 
24
- * handle llms.txt files ([#4972](https://github.com/thebyte9/blaze/issues/4972)) ([dc035f5](https://github.com/thebyte9/blaze/commit/dc035f5cfa1a7fa8d222fed45b3fc0f1bb6cd0c5))
22
+ # [0.146.0-node18-tooltips.26](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.25...v0.146.0-node18-tooltips.26) (2025-10-29)
25
23
 
26
24
 
25
+ ### Bug Fixes
27
26
 
27
+ * enable parent redirects with custom 404 pages ([#4971](https://github.com/thebyte9/blaze/issues/4971)) ([bdac8d7](https://github.com/thebyte9/blaze/commit/bdac8d7ab48a003df199176c65df217089233fce))
28
28
 
29
29
 
30
- # [0.146.0-node18-core-styles-tooltips.23](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.22...v0.146.0-node18-core-styles-tooltips.23) (2025-10-27)
30
+ ### Features
31
31
 
32
- **Note:** Version bump only for package @blaze-cms/nextjs-tools
32
+ * handle llms.txt files ([#4972](https://github.com/thebyte9/blaze/issues/4972)) ([dc035f5](https://github.com/thebyte9/blaze/commit/dc035f5cfa1a7fa8d222fed45b3fc0f1bb6cd0c5))
33
33
 
34
34
 
35
35
 
36
36
 
37
37
 
38
- # [0.146.0-node18-core-styles-tooltips.22](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.21...v0.146.0-node18-core-styles-tooltips.22) (2025-10-20)
38
+ # [0.146.0-node18-tooltips.25](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.24...v0.146.0-node18-tooltips.25) (2025-10-28)
39
39
 
40
40
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
41
41
 
@@ -43,7 +43,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
43
43
 
44
44
 
45
45
 
46
- # [0.146.0-node18-core-styles-tooltips.21](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.20...v0.146.0-node18-core-styles-tooltips.21) (2025-10-07)
46
+ # [0.146.0-node18-tooltips.24](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.23...v0.146.0-node18-tooltips.24) (2025-10-27)
47
47
 
48
48
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
49
49
 
@@ -51,7 +51,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
51
51
 
52
52
 
53
53
 
54
- # [0.146.0-node18-core-styles-tooltips.20](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.19...v0.146.0-node18-core-styles-tooltips.20) (2025-10-03)
54
+ # [0.146.0-node18-tooltips.23](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.22...v0.146.0-node18-tooltips.23) (2025-10-20)
55
55
 
56
56
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
57
57
 
@@ -59,7 +59,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
59
59
 
60
60
 
61
61
 
62
- # [0.146.0-node18-core-styles-tooltips.19](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.18...v0.146.0-node18-core-styles-tooltips.19) (2025-10-01)
62
+ # [0.146.0-node18-tooltips.22](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.21...v0.146.0-node18-tooltips.22) (2025-10-17)
63
63
 
64
64
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
65
65
 
@@ -67,7 +67,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
67
67
 
68
68
 
69
69
 
70
- # [0.146.0-node18-core-styles-tooltips.18](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.17...v0.146.0-node18-core-styles-tooltips.18) (2025-09-29)
70
+ # [0.146.0-node18-tooltips.21](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.20...v0.146.0-node18-tooltips.21) (2025-10-14)
71
71
 
72
72
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
73
73
 
@@ -75,7 +75,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
75
75
 
76
76
 
77
77
 
78
- # [0.146.0-node18-core-styles-tooltips.15](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.14...v0.146.0-node18-core-styles-tooltips.15) (2025-09-23)
78
+ # [0.146.0-node18-tooltips.19](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.18...v0.146.0-node18-tooltips.19) (2025-10-10)
79
79
 
80
80
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
81
81
 
@@ -83,18 +83,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
83
83
 
84
84
 
85
85
 
86
- # [0.146.0-node18-core-styles-tooltips.14](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.13...v0.146.0-node18-core-styles-tooltips.14) (2025-09-18)
87
-
88
-
89
- ### Bug Fixes
90
-
91
- * force debug link to open in new tab ([#4907](https://github.com/thebyte9/blaze/issues/4907)) ([59abc33](https://github.com/thebyte9/blaze/commit/59abc3356636f5f8eb6ff911101947c878dbd213))
92
-
93
-
94
-
95
-
96
-
97
- # [0.146.0-node18-core-styles-tooltips.13](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.12...v0.146.0-node18-core-styles-tooltips.13) (2025-09-15)
86
+ # [0.146.0-node18-tooltips.18](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.17...v0.146.0-node18-tooltips.18) (2025-10-07)
98
87
 
99
88
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
100
89
 
@@ -102,7 +91,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
102
91
 
103
92
 
104
93
 
105
- # [0.146.0-node18-core-styles-tooltips.12](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.11...v0.146.0-node18-core-styles-tooltips.12) (2025-08-27)
94
+ # [0.146.0-node18-tooltips.13](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.12...v0.146.0-node18-tooltips.13) (2025-10-02)
106
95
 
107
96
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
108
97
 
@@ -110,30 +99,23 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
110
99
 
111
100
 
112
101
 
113
- # [0.146.0-node18-core-styles-tooltips.11](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.10...v0.146.0-node18-core-styles-tooltips.11) (2025-08-27)
114
-
115
-
116
- ### Features
117
-
118
- * add support for custom 404 page using custom error 404 slug and fallback rendering ([#4839](https://github.com/thebyte9/blaze/issues/4839)) ([67554a3](https://github.com/thebyte9/blaze/commit/67554a3febc2871d73bd127753edf3b918a1a0b7))
119
- * chart component ([#4846](https://github.com/thebyte9/blaze/issues/4846)) ([f74bd5a](https://github.com/thebyte9/blaze/commit/f74bd5aecc6078e725f92c523d8da0916a612d88))
102
+ # [0.146.0-node18-tooltips.11](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.10...v0.146.0-node18-tooltips.11) (2025-10-01)
120
103
 
104
+ **Note:** Version bump only for package @blaze-cms/nextjs-tools
121
105
 
122
106
 
123
107
 
124
108
 
125
- # [0.146.0-node18-core-styles-tooltips.8](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.7...v0.146.0-node18-core-styles-tooltips.8) (2025-07-25)
126
109
 
110
+ # [0.146.0-node18-tooltips.8](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.7...v0.146.0-node18-tooltips.8) (2025-09-24)
127
111
 
128
- ### Bug Fixes
129
-
130
- * restore favion loading in the frontend ([#4851](https://github.com/thebyte9/blaze/issues/4851)) ([f1c31bb](https://github.com/thebyte9/blaze/commit/f1c31bb2213f79b1d4b6b1ae6e5d5bd2b150fdf8))
112
+ **Note:** Version bump only for package @blaze-cms/nextjs-tools
131
113
 
132
114
 
133
115
 
134
116
 
135
117
 
136
- # [0.146.0-node18-core-styles-tooltips.5](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.4...v0.146.0-node18-core-styles-tooltips.5) (2025-07-18)
118
+ # [0.146.0-node18-tooltips.4](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.3...v0.146.0-node18-tooltips.4) (2025-09-22)
137
119
 
138
120
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
139
121
 
@@ -141,18 +123,18 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
141
123
 
142
124
 
143
125
 
144
- # [0.146.0-node18-core-styles-tooltips.4](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.3...v0.146.0-node18-core-styles-tooltips.4) (2025-07-10)
126
+ # [0.146.0-node18-tooltips.3](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.2...v0.146.0-node18-tooltips.3) (2025-09-18)
145
127
 
146
128
 
147
129
  ### Bug Fixes
148
130
 
149
- * respond to live blog item size changes for laze loaded image, live blog title and global light box fix ([#4730](https://github.com/thebyte9/blaze/issues/4730)) ([5dd38d8](https://github.com/thebyte9/blaze/commit/5dd38d8d9e5983c55d3053d440eb7ab618688920))
131
+ * force debug link to open in new tab ([#4907](https://github.com/thebyte9/blaze/issues/4907)) ([59abc33](https://github.com/thebyte9/blaze/commit/59abc3356636f5f8eb6ff911101947c878dbd213))
150
132
 
151
133
 
152
134
 
153
135
 
154
136
 
155
- # [0.146.0-node18-core-styles-tooltips.2](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.1...v0.146.0-node18-core-styles-tooltips.2) (2025-06-20)
137
+ # [0.146.0-node18-tooltips.2](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.1...v0.146.0-node18-tooltips.2) (2025-09-17)
156
138
 
157
139
  **Note:** Version bump only for package @blaze-cms/nextjs-tools
158
140
 
@@ -160,34 +142,32 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
160
142
 
161
143
 
162
144
 
163
- # [0.146.0-node18-core-styles-tooltips.1](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-core-styles-tooltips.0...v0.146.0-node18-core-styles-tooltips.1) (2025-06-20)
145
+ # [0.146.0-node18-tooltips.1](https://github.com/thebyte9/blaze/compare/v0.146.0-node18-tooltips.0...v0.146.0-node18-tooltips.1) (2025-09-10)
164
146
 
165
-
166
- ### Features
167
-
168
- * added frontend links for editor mode ([#4801](https://github.com/thebyte9/blaze/issues/4801)) ([d5de370](https://github.com/thebyte9/blaze/commit/d5de370203abf467fcc3819d06c7375f4a6c1eb9))
147
+ **Note:** Version bump only for package @blaze-cms/nextjs-tools
169
148
 
170
149
 
171
150
 
172
151
 
173
152
 
174
- # [0.146.0-node18-core-styles-tooltips.0](https://github.com/thebyte9/blaze/compare/v0.145.0...v0.146.0-node18-core-styles-tooltips.0) (2025-06-18)
153
+ # [0.146.0-node18-tooltips.0](https://github.com/thebyte9/blaze/compare/v0.145.0...v0.146.0-node18-tooltips.0) (2025-09-09)
175
154
 
176
155
 
177
156
  ### Bug Fixes
178
157
 
179
- * adds default root selector to readme ([cfb5095](https://github.com/thebyte9/blaze/commit/cfb50956d95df485fe4486f632d32400b46806f7))
180
158
  * bumped apollo versions ([b371dc7](https://github.com/thebyte9/blaze/commit/b371dc7e7bbe814a0cc4d57af2b959ab5e1b1bfd))
181
159
  * fixed breaking tests, updated next to 14 ([fecb0e1](https://github.com/thebyte9/blaze/commit/fecb0e1d822bd69ebbaa084072a219f0fddd23f1))
182
160
  * fixed more tests ([46a2fb9](https://github.com/thebyte9/blaze/commit/46a2fb9467f9f3c9cf320c9caf36c66503cc1f49))
183
161
  * fixed remaining failing tests ([8a5963f](https://github.com/thebyte9/blaze/commit/8a5963ff8a0bf615a2ced9fb77b8986a9b05d80c))
184
- * fixes readme layout ([9dbdd8e](https://github.com/thebyte9/blaze/commit/9dbdd8ee96cb4a716e1e42c224939ac22ac6af0d))
185
162
  * lint errors for reegex ([daaf750](https://github.com/thebyte9/blaze/commit/daaf7506d22f9578072c71f5557d0b6bf6185018))
186
163
  * linting fix for reading return values from promise executor functions ([7edb563](https://github.com/thebyte9/blaze/commit/7edb563a4cbfa37188f26c1ae709ffe8ed837d69))
187
164
  * linting fixed automatically ([73135b9](https://github.com/thebyte9/blaze/commit/73135b9b8b0d5407e2e1dfba42ab2381f290607f))
188
165
  * only do parent redirect when there are graphql errors ([#4697](https://github.com/thebyte9/blaze/issues/4697)) ([1ec63ba](https://github.com/thebyte9/blaze/commit/1ec63ba95c21c11d41721f07346945742d7237ae))
189
166
  * prevent 404 error when no data is returned from and improve redi… ([#4688](https://github.com/thebyte9/blaze/issues/4688)) ([3a5af3d](https://github.com/thebyte9/blaze/commit/3a5af3ddf65d67456971d2d75525235c30965633))
167
+ * respond to live blog item size changes for laze loaded image, live blog title and global light box fix ([#4730](https://github.com/thebyte9/blaze/issues/4730)) ([5dd38d8](https://github.com/thebyte9/blaze/commit/5dd38d8d9e5983c55d3053d440eb7ab618688920))
168
+ * restore favion loading in the frontend ([#4851](https://github.com/thebyte9/blaze/issues/4851)) ([f1c31bb](https://github.com/thebyte9/blaze/commit/f1c31bb2213f79b1d4b6b1ae6e5d5bd2b150fdf8))
190
169
  * set blank cache-control header to override nextjs default of 0 ([#4783](https://github.com/thebyte9/blaze/issues/4783)) ([2f1653e](https://github.com/thebyte9/blaze/commit/2f1653ed3756a90575c48f8a2253776958c6c0ff))
170
+ * show pagebuilder tabs when no components added ([#4844](https://github.com/thebyte9/blaze/issues/4844)) ([2cbb24d](https://github.com/thebyte9/blaze/commit/2cbb24df95b38d4c8f4575814daadebd74ba04d4))
191
171
  * udpated yarn lock ([0cd4fa4](https://github.com/thebyte9/blaze/commit/0cd4fa4a185fca4b80b57e472badb771dd649ec2))
192
172
  * updated with dev ([90f545f](https://github.com/thebyte9/blaze/commit/90f545f1beabb35e26ba6fb2b45a7a0dfd072927))
193
173
  * updated with dev ([729bb6e](https://github.com/thebyte9/blaze/commit/729bb6ee7e87946081d51564a4ab45538f7be1e7))
@@ -198,7 +178,10 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
198
178
 
199
179
  ### Features
200
180
 
181
+ * add support for custom 404 page using custom error 404 slug and fallback rendering ([#4839](https://github.com/thebyte9/blaze/issues/4839)) ([67554a3](https://github.com/thebyte9/blaze/commit/67554a3febc2871d73bd127753edf3b918a1a0b7))
182
+ * added frontend links for editor mode ([#4801](https://github.com/thebyte9/blaze/issues/4801)) ([d5de370](https://github.com/thebyte9/blaze/commit/d5de370203abf467fcc3819d06c7375f4a6c1eb9))
201
183
  * allow . (dot) character in route regex ([#4552](https://github.com/thebyte9/blaze/issues/4552)) ([9be0fe0](https://github.com/thebyte9/blaze/commit/9be0fe0dd0dac2e0891c2d965a20c6b2e02165cc))
184
+ * chart component ([#4846](https://github.com/thebyte9/blaze/issues/4846)) ([f74bd5a](https://github.com/thebyte9/blaze/commit/f74bd5aecc6078e725f92c523d8da0916a612d88))
202
185
  * debug sidebar now shows on error if enabled ([#4667](https://github.com/thebyte9/blaze/issues/4667)) ([01d43e1](https://github.com/thebyte9/blaze/commit/01d43e19c160980cfc8259c1a951ab70ebe70eb0))
203
186
  * open frontend debug toolbar with a url param ([#4771](https://github.com/thebyte9/blaze/issues/4771)) ([37b8ea5](https://github.com/thebyte9/blaze/commit/37b8ea59a5ed4be0912465717adeb079fd6b3a89))
204
187
  * updated react to 18 ([9335f84](https://github.com/thebyte9/blaze/commit/9335f8432b376494501abb9c3deef1ddaa9b35a8))
package/README.md CHANGED
@@ -90,15 +90,16 @@ If is possible to create a custom error page by adding a page with the slug "cus
90
90
  ## Environment variables
91
91
 
92
92
  | Name | Description | Type | Default |
93
- |---|---|---|---|
93
+ |---|---|---|
94
94
  | BLAZE_FRONTEND_HOST | Frontend host (used to identify host) | String | |
95
- | BLAZE_ROUTE_REGEX | Override default route regex | Regex | /^\/[a-z0-9€_\/]+(?:[-\/\.]{1,2}[a-z0-9\/€_\/]+)*$|^\/$/ |
95
+ | BLAZE_ROUTE_REGEX | Override default route regex | /^\/[a-z0-9€*\/]+(?:[-\/\.]{1,2}[a-z0-9\/€*\/]+)*$|^\/$/ |
96
96
  | BLAZE_CACHE_CONTROL_HEADER | Cache-Control header to set on page requests | String | "" |
97
- | BLAZE_STATIC_ROUTE_STORE_KEY | Override store for static file routes | String | default |
98
- | BLAZE_ROUTE_PATTERN_SITEMAP | Override sitemap route | String | /sitemap.xml |
97
+ | BLAZE_STATIC_ROUTE_STORE_KEY | Override store for static file routes | default |
98
+ | BLAZE_ROUTE_PATTERN_SITEMAP | Override sitemap route | /sitemap.xml |
99
99
  | BLAZE_CONTENT_SITEMAP_URL_PREFIX | Prefix for sitemap URL, used in frontend static route e.g. /sitemap/sitemap-0.xml. This needs to match the value set in the API app. | String | |
100
- | BLAZE_ROOT_SELECTOR_CLASSES_LIMIT | The number of root-selector classes to display. If the variable is not set, it defaults to 1, displaying only the highest-level parent class. | String | 1 |
101
- | BLAZE_BUILD_ENV_PREFIX_REGEX | '\|' separated list of allowed environment variable prefixes. Any environment variable that matches this prefix pattern will be dynamically added to the next environment config and will be available in code for use. If the environment variable has a "BUILD_" prefix, then this prefix will be removed from the next environment variable name before assigning it. i.e. BUILD_THIRD_PARTY_ENV will become THIRD_PARTY_ENV in the build. Prefixes BLAZE\|GOOGLE\|JWPLAYER\|DFP are added for backward compatibility and will be deprecated. We recommend to use new and change existing environment variables with "BUILD_" prefix. | String | BLAZE\|GOOGLE\|JWPLAYER\|DFP\|BUILD |
100
+ | BLAZE_ROOT_SELECTOR_CLASSES_LIMIT | The number of root-selector classes to display. 0 or unset will show noe | String | |
101
+ | BLAZE_BUILD_ENV_PREFIX_REGEX | '\|' separated list of allowed environment variable prefixes. Any environment variable that matches this prefix pattern will be dynamically added to the next environment config and will be available in code for use. If the environment variable has a "BUILD_" prefix, then this prefix will be removed from the next environment variable name before assigning it. i.e. BUILD_THIRD_PARTY_ENV will become THIRD_PARTY_ENV in the build. Prefixes BLAZE\|GOOGLE\|JWPLAYER\|DFP are added for backward compatibility and will be deprecated. We recommend to use new and change existing environment variables with "BUILD_" prefix. | BLAZE\|GOOGLE\|JWPLAYER\|DFP\|BUILD |
102
+ | BLAZE_CONTENT_SITEMAP_URL_PREFIX | Prefix for sitemap URL, used in frontend static route e.g. /sitemap/sitemap-0.xml. This needs to match value set in API app. | String | |
102
103
  | BLAZE_DISABLE_REDIRECT_WITH_QUERY | Do not add query string to redirects | String | |
103
104
 
104
105
  ## Events emitted
@@ -205,7 +206,7 @@ When checking new code or build configs make sure to check the [following things
205
206
 
206
207
  ## Root selector classes
207
208
 
208
- To make styling of sections of a site simpler, it is possible to enable setting root selector classes at the top of the Resolver page structure that are generated based on the url hierarchy. If the variable is not set, it defaults to 1, displaying only the highest-level parent class.
209
+ To make styling of sections of a site simpler, it is possible to enable setting root selector classes at the top of the Resolver page structure that are generated based on the url hierarchy.
209
210
 
210
211
  For example the following url, `/parent/child/article-123` might be broken into the following classes
211
212
 
package/example.env CHANGED
@@ -3,6 +3,6 @@ BLAZE_FRONTEND_HOST=thisisblaze.com
3
3
  BLAZE_ROUTE_PATTERN_SITEMAP="/sitemap.xml"
4
4
  BLAZE_CONTENT_SITEMAP_URL_PREFIX="sitemap"
5
5
  #BLAZE_ROUTE_REGEX="^\/[a-z0-9€_\/]+(?:[-\/]{1,2}[a-z0-9\/€_\/]+)*$|^\/$"
6
- BLAZE_ROOT_SELECTOR_CLASSES_LIMIT="1"
6
+ BLAZE_ROOT_SELECTOR_CLASSES_LIMIT="2"
7
7
  BLAZE_CACHE_CONTROL_HEADER="max-age=0"
8
8
  BLAZE_DISABLE_REDIRECT_WITH_QUERY=""
@@ -34,7 +34,7 @@ var _getRootSelectorClasses = _interopRequireDefault(require("./get-root-selecto
34
34
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
35
35
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
36
36
  var getRootClassesLimit = function getRootClassesLimit() {
37
- return Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT || 1);
37
+ return Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT);
38
38
  };
39
39
  var checkUrl = /*#__PURE__*/function () {
40
40
  var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(props) {
@@ -1 +1 @@
1
- {"version":3,"file":"check-url.js","names":["_queryString","require","_reactPageBuilder","_coreAuthUi","_constants","_query","_checkParent","_interopRequireDefault","_checkPreviewUrl","_handleStaticRoutes","_getPageData","_getRootSelectorClasses","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","getRootClassesLimit","Number","process","env","BLAZE_ROOT_SELECTOR_CLASSES_LIMIT","checkUrl","_ref","_asyncToGenerator2","_regenerator","mark","_callee","props","asPath","apolloClient","res","req","query","blazeApp","disableSsr","fullUrl","_parseUrl","url","handler","previewData","urlCheckOptions","result","wrap","_callee$","_context","prev","next","getFullUrl","parseUrl","BLAZE_STATUS_URL","abrupt","isStatusPage","handleStaticRoutes","getHandler","setHeader","BLAZE_X_FRAME_OPTIONS","BLAZE_X_FRAME_OPTIONS_DEFAULT","getHeader","BLAZE_CACHE_CONTROL_HEADER","checkPreviewUrl","checkAccessToken","cache","extract","getPreviewData","doUrlCheck","handle404Error","sent","stop","_x","_ref2","_callee2","_result$pageData","_result$pageData2","rootSelectorClasses","_callee2$","_context2","getPageData","pageData","getRootSelectorClasses","isPreview","_x2","_x3","getHost","_ref3","_ref3$headers","headers","BLAZE_FRONTEND_HOST","host","concat","HTTPS","_window","window","_window$location","location","protocol","hostname","port","urlPort","COLON","DOUBLE_SLASH","_ref4","_callee3","args","_args$errorCheckCode","errorCheckCode","_yield$apolloClient$q","_yield$apolloClient$q2","_yield$apolloClient$q3","_yield$apolloClient$q4","_yield$apolloClient$q5","itemId","itemEntity","urlTo","_yield$apolloClient$q6","_callee3$","_context3","ROUTE_REGEX","test","Error","checkUrlQuery","variables","data","setCustomCacheControlHeaders","handleRedirect","events","emit","message","statusCode","getUnpublishedEntityName","t0","handleUrlError","_x4","handleError","err","error","networkError","writeHead","write","end","graphQLErrors","NOT_FOUND_STATUS_CODE","errorCode","_ref5","errorMessage","customError","redirectUrl","BLAZE_DISABLE_REDIRECT_WITH_QUERY","queryString","split","doRedirect","_ref6","_ref6$cacheControlMax","cacheControlMaxAge","Location","href","redirecting","_x5","_x6","_handleUrlError","_callee4","parentUrl","parentPATH","_callee4$","_context4","ERROR_URLS","custom404","checkParent","_default","exports"],"sources":["../../src/helpers/check-url.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { getUnpublishedEntityName } from '@blaze-cms/react-page-builder';\nimport { checkAccessToken } from '@blaze-cms/core-auth-ui';\nimport {\n HTTPS,\n DOUBLE_SLASH,\n COLON,\n NOT_FOUND_STATUS_CODE,\n BLAZE_X_FRAME_OPTIONS_DEFAULT,\n ROUTE_REGEX,\n ERROR_URLS\n} from '../constants';\nimport { checkUrlQuery } from '../application/query';\nimport checkParent from './check-parent';\nimport checkPreviewUrl from './check-preview-url';\nimport handleStaticRoutes from './handle-static-routes';\nimport getPageData from './get-page-data';\nimport getRootSelectorClasses from './get-root-selector-classes';\n\nconst getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT || 1);\n\nconst checkUrl = async props => {\n const { asPath, apolloClient, res, req, query, blazeApp, disableSsr } = props;\n const fullUrl = getFullUrl(req, asPath);\n const { url } = parseUrl(asPath);\n\n if (process.env.BLAZE_STATUS_URL && url === process.env.BLAZE_STATUS_URL) {\n return { isStatusPage: true };\n }\n\n if (res) {\n const handler = handleStaticRoutes.getHandler(asPath);\n\n res.setHeader(\n 'X-Frame-Options',\n process.env.BLAZE_X_FRAME_OPTIONS || BLAZE_X_FRAME_OPTIONS_DEFAULT\n );\n\n if (!res.getHeader('Cache-Control')) {\n res.setHeader('Cache-Control', process.env.BLAZE_CACHE_CONTROL_HEADER || ' ');\n }\n\n if (handler) {\n return handler(props);\n }\n }\n\n const previewData = checkPreviewUrl(url, query);\n\n if (!previewData && disableSsr) return { disableSsr: true };\n\n await checkAccessToken(apolloClient, {\n ...props,\n disableSsr: !Object.keys(apolloClient.cache.extract()).length // empty cache means SSR was disabled\n });\n\n if (previewData) return getPreviewData(previewData, apolloClient);\n const urlCheckOptions = { asPath, url, apolloClient, res };\n const result = await doUrlCheck({\n ...urlCheckOptions,\n handle404Error: true,\n blazeApp\n });\n return { ...result, fullUrl } || {};\n};\n\nconst getPreviewData = async (previewData, apolloClient) => {\n const result = await getPageData({ ...previewData, apolloClient });\n const { pageData: { url } = {} } = result;\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n return { ...previewData, rootSelectorClasses, ...result, isPreview: true };\n};\n\nconst getHost = ({ headers = {} }) =>\n process.env.BLAZE_FRONTEND_HOST ||\n headers['x-request-host'] ||\n headers['x-forwarded-host'] ||\n headers.host;\n\nconst getFullUrl = (req, asPath) => {\n if (req) {\n return `${HTTPS}${getHost(req)}${asPath}`;\n }\n const {\n location: { protocol, hostname, port }\n } = window;\n const urlPort = port ? `${COLON}${port}` : '';\n\n return `${protocol}${DOUBLE_SLASH}${hostname}${urlPort}${asPath}`;\n};\n\nconst doUrlCheck = async args => {\n const { asPath, url, apolloClient, res, blazeApp, errorCheckCode = false } = args;\n try {\n if (!ROUTE_REGEX.test(url)) {\n throw Error('Invalid URL');\n }\n const { data: { checkUrl: { itemId, itemEntity, urlTo, pageData = {} } = {} } = {} } =\n await apolloClient.query({\n query: checkUrlQuery,\n variables: { url }\n });\n\n setCustomCacheControlHeaders(pageData, res);\n\n if (urlTo && (urlTo !== url || errorCheckCode)) {\n return handleRedirect({ errorCheckCode, url, urlTo, asPath, res });\n }\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n\n if (errorCheckCode) {\n blazeApp.events.emit('monitor:log', { message: `Serving custom ${errorCheckCode} page` });\n if (res) res.statusCode = errorCheckCode;\n }\n\n return {\n pageData,\n rootSelectorClasses,\n itemId,\n itemEntity: getUnpublishedEntityName(itemEntity)\n };\n } catch (err) {\n return handleUrlError(err, args);\n }\n};\n\nconst handleError = (err, res, handle404Error, blazeApp) => {\n blazeApp.events.emit('monitor:log', { error: err });\n if (!res) return {};\n if (err.networkError) {\n res.writeHead(500, { 'Content-Type': 'text/plain' });\n res.write('500 Internal Server Error\\n');\n res.end();\n } else if (handle404Error && err.graphQLErrors && err.graphQLErrors.length) {\n res.statusCode = NOT_FOUND_STATUS_CODE;\n return { errorCode: NOT_FOUND_STATUS_CODE };\n }\n\n return {};\n};\n\nfunction handleRedirect({ errorCheckCode, url, urlTo, asPath, res }) {\n if (errorCheckCode) {\n const errorMessage = `Cannot redirect ${url}`;\n const customError = new Error(errorMessage);\n customError.graphQLErrors = [errorMessage];\n throw customError;\n }\n let redirectUrl = urlTo;\n if (process.env.BLAZE_DISABLE_REDIRECT_WITH_QUERY !== 'true') {\n const queryString = asPath.split('?')[1];\n redirectUrl = queryString ? `${urlTo}?${queryString}` : urlTo;\n }\n\n return doRedirect(res, redirectUrl);\n}\n\nfunction setCustomCacheControlHeaders(pageData, res) {\n const { cacheControlMaxAge = null } = pageData || {};\n\n if (res && cacheControlMaxAge !== null && cacheControlMaxAge >= 0) {\n res.setHeader('Cache-Control', `max-age=${cacheControlMaxAge}`);\n }\n}\n\nfunction doRedirect(res, redirectUrl) {\n if (res) {\n res.writeHead(301, { Location: redirectUrl });\n res.end();\n } else {\n window.location.href = redirectUrl;\n }\n\n return { redirecting: true };\n}\n\nasync function handleUrlError(err, args) {\n const { asPath, res, handle404Error, blazeApp, errorCheckCode } = args;\n if (!err.graphQLErrors || !err.graphQLErrors.length) {\n return handleError(err, res, handle404Error, blazeApp);\n }\n\n if (!errorCheckCode) {\n const result = await doUrlCheck({\n ...args,\n url: ERROR_URLS.custom404,\n errorCheckCode: NOT_FOUND_STATUS_CODE\n });\n\n if (handle404Error) {\n const parentUrl = checkParent(asPath);\n if (parentUrl) {\n return doRedirect(res, parentUrl);\n }\n }\n return result;\n }\n\n const parentPATH = checkParent(asPath);\n if (handle404Error && parentPATH) {\n return doRedirect(res, parentPATH);\n }\n\n return handleError(err, res, handle404Error, blazeApp);\n}\n\nexport default checkUrl;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"check-url.js","names":["_queryString","require","_reactPageBuilder","_coreAuthUi","_constants","_query","_checkParent","_interopRequireDefault","_checkPreviewUrl","_handleStaticRoutes","_getPageData","_getRootSelectorClasses","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","getRootClassesLimit","Number","process","env","BLAZE_ROOT_SELECTOR_CLASSES_LIMIT","checkUrl","_ref","_asyncToGenerator2","_regenerator","mark","_callee","props","asPath","apolloClient","res","req","query","blazeApp","disableSsr","fullUrl","_parseUrl","url","handler","previewData","urlCheckOptions","result","wrap","_callee$","_context","prev","next","getFullUrl","parseUrl","BLAZE_STATUS_URL","abrupt","isStatusPage","handleStaticRoutes","getHandler","setHeader","BLAZE_X_FRAME_OPTIONS","BLAZE_X_FRAME_OPTIONS_DEFAULT","getHeader","BLAZE_CACHE_CONTROL_HEADER","checkPreviewUrl","checkAccessToken","cache","extract","getPreviewData","doUrlCheck","handle404Error","sent","stop","_x","_ref2","_callee2","_result$pageData","_result$pageData2","rootSelectorClasses","_callee2$","_context2","getPageData","pageData","getRootSelectorClasses","isPreview","_x2","_x3","getHost","_ref3","_ref3$headers","headers","BLAZE_FRONTEND_HOST","host","concat","HTTPS","_window","window","_window$location","location","protocol","hostname","port","urlPort","COLON","DOUBLE_SLASH","_ref4","_callee3","args","_args$errorCheckCode","errorCheckCode","_yield$apolloClient$q","_yield$apolloClient$q2","_yield$apolloClient$q3","_yield$apolloClient$q4","_yield$apolloClient$q5","itemId","itemEntity","urlTo","_yield$apolloClient$q6","_callee3$","_context3","ROUTE_REGEX","test","Error","checkUrlQuery","variables","data","setCustomCacheControlHeaders","handleRedirect","events","emit","message","statusCode","getUnpublishedEntityName","t0","handleUrlError","_x4","handleError","err","error","networkError","writeHead","write","end","graphQLErrors","NOT_FOUND_STATUS_CODE","errorCode","_ref5","errorMessage","customError","redirectUrl","BLAZE_DISABLE_REDIRECT_WITH_QUERY","queryString","split","doRedirect","_ref6","_ref6$cacheControlMax","cacheControlMaxAge","Location","href","redirecting","_x5","_x6","_handleUrlError","_callee4","parentUrl","parentPATH","_callee4$","_context4","ERROR_URLS","custom404","checkParent","_default","exports"],"sources":["../../src/helpers/check-url.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { getUnpublishedEntityName } from '@blaze-cms/react-page-builder';\nimport { checkAccessToken } from '@blaze-cms/core-auth-ui';\nimport {\n HTTPS,\n DOUBLE_SLASH,\n COLON,\n NOT_FOUND_STATUS_CODE,\n BLAZE_X_FRAME_OPTIONS_DEFAULT,\n ROUTE_REGEX,\n ERROR_URLS\n} from '../constants';\nimport { checkUrlQuery } from '../application/query';\nimport checkParent from './check-parent';\nimport checkPreviewUrl from './check-preview-url';\nimport handleStaticRoutes from './handle-static-routes';\nimport getPageData from './get-page-data';\nimport getRootSelectorClasses from './get-root-selector-classes';\n\nconst getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT);\n\nconst checkUrl = async props => {\n const { asPath, apolloClient, res, req, query, blazeApp, disableSsr } = props;\n const fullUrl = getFullUrl(req, asPath);\n const { url } = parseUrl(asPath);\n\n if (process.env.BLAZE_STATUS_URL && url === process.env.BLAZE_STATUS_URL) {\n return { isStatusPage: true };\n }\n\n if (res) {\n const handler = handleStaticRoutes.getHandler(asPath);\n\n res.setHeader(\n 'X-Frame-Options',\n process.env.BLAZE_X_FRAME_OPTIONS || BLAZE_X_FRAME_OPTIONS_DEFAULT\n );\n\n if (!res.getHeader('Cache-Control')) {\n res.setHeader('Cache-Control', process.env.BLAZE_CACHE_CONTROL_HEADER || ' ');\n }\n\n if (handler) {\n return handler(props);\n }\n }\n\n const previewData = checkPreviewUrl(url, query);\n\n if (!previewData && disableSsr) return { disableSsr: true };\n\n await checkAccessToken(apolloClient, {\n ...props,\n disableSsr: !Object.keys(apolloClient.cache.extract()).length // empty cache means SSR was disabled\n });\n\n if (previewData) return getPreviewData(previewData, apolloClient);\n const urlCheckOptions = { asPath, url, apolloClient, res };\n const result = await doUrlCheck({\n ...urlCheckOptions,\n handle404Error: true,\n blazeApp\n });\n return { ...result, fullUrl } || {};\n};\n\nconst getPreviewData = async (previewData, apolloClient) => {\n const result = await getPageData({ ...previewData, apolloClient });\n const { pageData: { url } = {} } = result;\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n return { ...previewData, rootSelectorClasses, ...result, isPreview: true };\n};\n\nconst getHost = ({ headers = {} }) =>\n process.env.BLAZE_FRONTEND_HOST ||\n headers['x-request-host'] ||\n headers['x-forwarded-host'] ||\n headers.host;\n\nconst getFullUrl = (req, asPath) => {\n if (req) {\n return `${HTTPS}${getHost(req)}${asPath}`;\n }\n const {\n location: { protocol, hostname, port }\n } = window;\n const urlPort = port ? `${COLON}${port}` : '';\n\n return `${protocol}${DOUBLE_SLASH}${hostname}${urlPort}${asPath}`;\n};\n\nconst doUrlCheck = async args => {\n const { asPath, url, apolloClient, res, blazeApp, errorCheckCode = false } = args;\n try {\n if (!ROUTE_REGEX.test(url)) {\n throw Error('Invalid URL');\n }\n const { data: { checkUrl: { itemId, itemEntity, urlTo, pageData = {} } = {} } = {} } =\n await apolloClient.query({\n query: checkUrlQuery,\n variables: { url }\n });\n\n setCustomCacheControlHeaders(pageData, res);\n\n if (urlTo && (urlTo !== url || errorCheckCode)) {\n return handleRedirect({ errorCheckCode, url, urlTo, asPath, res });\n }\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n\n if (errorCheckCode) {\n blazeApp.events.emit('monitor:log', { message: `Serving custom ${errorCheckCode} page` });\n if (res) res.statusCode = errorCheckCode;\n }\n\n return {\n pageData,\n rootSelectorClasses,\n itemId,\n itemEntity: getUnpublishedEntityName(itemEntity)\n };\n } catch (err) {\n return handleUrlError(err, args);\n }\n};\n\nconst handleError = (err, res, handle404Error, blazeApp) => {\n blazeApp.events.emit('monitor:log', { error: err });\n if (!res) return {};\n if (err.networkError) {\n res.writeHead(500, { 'Content-Type': 'text/plain' });\n res.write('500 Internal Server Error\\n');\n res.end();\n } else if (handle404Error && err.graphQLErrors && err.graphQLErrors.length) {\n res.statusCode = NOT_FOUND_STATUS_CODE;\n return { errorCode: NOT_FOUND_STATUS_CODE };\n }\n\n return {};\n};\n\nfunction handleRedirect({ errorCheckCode, url, urlTo, asPath, res }) {\n if (errorCheckCode) {\n const errorMessage = `Cannot redirect ${url}`;\n const customError = new Error(errorMessage);\n customError.graphQLErrors = [errorMessage];\n throw customError;\n }\n let redirectUrl = urlTo;\n if (process.env.BLAZE_DISABLE_REDIRECT_WITH_QUERY !== 'true') {\n const queryString = asPath.split('?')[1];\n redirectUrl = queryString ? `${urlTo}?${queryString}` : urlTo;\n }\n\n return doRedirect(res, redirectUrl);\n}\n\nfunction setCustomCacheControlHeaders(pageData, res) {\n const { cacheControlMaxAge = null } = pageData || {};\n\n if (res && cacheControlMaxAge !== null && cacheControlMaxAge >= 0) {\n res.setHeader('Cache-Control', `max-age=${cacheControlMaxAge}`);\n }\n}\n\nfunction doRedirect(res, redirectUrl) {\n if (res) {\n res.writeHead(301, { Location: redirectUrl });\n res.end();\n } else {\n window.location.href = redirectUrl;\n }\n\n return { redirecting: true };\n}\n\nasync function handleUrlError(err, args) {\n const { asPath, res, handle404Error, blazeApp, errorCheckCode } = args;\n if (!err.graphQLErrors || !err.graphQLErrors.length) {\n return handleError(err, res, handle404Error, blazeApp);\n }\n\n if (!errorCheckCode) {\n const result = await doUrlCheck({\n ...args,\n url: ERROR_URLS.custom404,\n errorCheckCode: NOT_FOUND_STATUS_CODE\n });\n\n if (handle404Error) {\n const parentUrl = checkParent(asPath);\n if (parentUrl) {\n return doRedirect(res, parentUrl);\n }\n }\n return result;\n }\n\n const parentPATH = checkParent(asPath);\n if (handle404Error && parentPATH) {\n return doRedirect(res, parentPATH);\n }\n\n return handleError(err, res, handle404Error, blazeApp);\n}\n\nexport default checkUrl;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AASA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,YAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,gBAAA,GAAAD,sBAAA,CAAAN,OAAA;AACA,IAAAQ,mBAAA,GAAAF,sBAAA,CAAAN,OAAA;AACA,IAAAS,YAAA,GAAAH,sBAAA,CAAAN,OAAA;AACA,IAAAU,uBAAA,GAAAJ,sBAAA,CAAAN,OAAA;AAAiE,SAAAW,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAEjE,IAAMoB,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAA;EAAA,OAASC,MAAM,CAACC,OAAO,CAACC,GAAG,CAACC,iCAAiC,CAAC;AAAA;AAEvF,IAAMC,QAAQ;EAAA,IAAAC,IAAA,OAAAC,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAC,QAAMC,KAAK;IAAA,IAAAC,MAAA,EAAAC,YAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,EAAAC,QAAA,EAAAC,UAAA,EAAAC,OAAA,EAAAC,SAAA,EAAAC,GAAA,EAAAC,OAAA,EAAAC,WAAA,EAAAC,eAAA,EAAAC,MAAA;IAAA,OAAAjB,YAAA,YAAAkB,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAClBlB,MAAM,GAA0DD,KAAK,CAArEC,MAAM,EAAEC,YAAY,GAA4CF,KAAK,CAA7DE,YAAY,EAAEC,GAAG,GAAuCH,KAAK,CAA/CG,GAAG,EAAEC,GAAG,GAAkCJ,KAAK,CAA1CI,GAAG,EAAEC,KAAK,GAA2BL,KAAK,CAArCK,KAAK,EAAEC,QAAQ,GAAiBN,KAAK,CAA9BM,QAAQ,EAAEC,UAAU,GAAKP,KAAK,CAApBO,UAAU;UAC7DC,OAAO,GAAGY,UAAU,CAAChB,GAAG,EAAEH,MAAM,CAAC;UAAAQ,SAAA,GACvB,IAAAY,qBAAQ,EAACpB,MAAM,CAAC,EAAxBS,GAAG,GAAAD,SAAA,CAAHC,GAAG;UAAA,MAEPnB,OAAO,CAACC,GAAG,CAAC8B,gBAAgB,IAAIZ,GAAG,KAAKnB,OAAO,CAACC,GAAG,CAAC8B,gBAAgB;YAAAL,QAAA,CAAAE,IAAA;YAAA;UAAA;UAAA,OAAAF,QAAA,CAAAM,MAAA,WAC/D;YAAEC,YAAY,EAAE;UAAK,CAAC;QAAA;UAAA,KAG3BrB,GAAG;YAAAc,QAAA,CAAAE,IAAA;YAAA;UAAA;UACCR,OAAO,GAAGc,8BAAkB,CAACC,UAAU,CAACzB,MAAM,CAAC;UAErDE,GAAG,CAACwB,SAAS,CACX,iBAAiB,EACjBpC,OAAO,CAACC,GAAG,CAACoC,qBAAqB,IAAIC,wCACvC,CAAC;UAED,IAAI,CAAC1B,GAAG,CAAC2B,SAAS,CAAC,eAAe,CAAC,EAAE;YACnC3B,GAAG,CAACwB,SAAS,CAAC,eAAe,EAAEpC,OAAO,CAACC,GAAG,CAACuC,0BAA0B,IAAI,GAAG,CAAC;UAC/E;UAAC,KAEGpB,OAAO;YAAAM,QAAA,CAAAE,IAAA;YAAA;UAAA;UAAA,OAAAF,QAAA,CAAAM,MAAA,WACFZ,OAAO,CAACX,KAAK,CAAC;QAAA;UAInBY,WAAW,GAAG,IAAAoB,2BAAe,EAACtB,GAAG,EAAEL,KAAK,CAAC;UAAA,MAE3C,CAACO,WAAW,IAAIL,UAAU;YAAAU,QAAA,CAAAE,IAAA;YAAA;UAAA;UAAA,OAAAF,QAAA,CAAAM,MAAA,WAAS;YAAEhB,UAAU,EAAE;UAAK,CAAC;QAAA;UAAAU,QAAA,CAAAE,IAAA;UAAA,OAErD,IAAAc,4BAAgB,EAAC/B,YAAY,EAAArB,aAAA,CAAAA,aAAA,KAC9BmB,KAAK;YACRO,UAAU,EAAE,CAACnC,MAAM,CAACC,IAAI,CAAC6B,YAAY,CAACgC,KAAK,CAACC,OAAO,CAAC,CAAC,CAAC,CAACpD,MAAM,CAAC;UAAA,EAC/D,CAAC;QAAA;UAAA,KAEE6B,WAAW;YAAAK,QAAA,CAAAE,IAAA;YAAA;UAAA;UAAA,OAAAF,QAAA,CAAAM,MAAA,WAASa,cAAc,CAACxB,WAAW,EAAEV,YAAY,CAAC;QAAA;UAC3DW,eAAe,GAAG;YAAEZ,MAAM,EAANA,MAAM;YAAES,GAAG,EAAHA,GAAG;YAAER,YAAY,EAAZA,YAAY;YAAEC,GAAG,EAAHA;UAAI,CAAC;UAAAc,QAAA,CAAAE,IAAA;UAAA,OACrCkB,UAAU,CAAAxD,aAAA,CAAAA,aAAA,KAC1BgC,eAAe;YAClByB,cAAc,EAAE,IAAI;YACpBhC,QAAQ,EAARA;UAAQ,EACT,CAAC;QAAA;UAJIQ,MAAM,GAAAG,QAAA,CAAAsB,IAAA;UAAA,OAAAtB,QAAA,CAAAM,MAAA,WAKL1C,aAAA,CAAAA,aAAA,KAAKiC,MAAM;YAAEN,OAAO,EAAPA;UAAO,MAAM,CAAC,CAAC;QAAA;QAAA;UAAA,OAAAS,QAAA,CAAAuB,IAAA;MAAA;IAAA,GAAAzC,OAAA;EAAA,CACpC;EAAA,gBA3CKL,QAAQA,CAAA+C,EAAA;IAAA,OAAA9C,IAAA,CAAAf,KAAA,OAAAE,SAAA;EAAA;AAAA,GA2Cb;AAED,IAAMsD,cAAc;EAAA,IAAAM,KAAA,OAAA9C,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAA6C,SAAO/B,WAAW,EAAEV,YAAY;IAAA,IAAAY,MAAA,EAAA8B,gBAAA,EAAAC,iBAAA,EAAAnC,GAAA,EAAAoC,mBAAA;IAAA,OAAAjD,YAAA,YAAAkB,IAAA,UAAAgC,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA9B,IAAA,GAAA8B,SAAA,CAAA7B,IAAA;QAAA;UAAA6B,SAAA,CAAA7B,IAAA;UAAA,OAChC,IAAA8B,uBAAW,EAAApE,aAAA,CAAAA,aAAA,KAAM+B,WAAW;YAAEV,YAAY,EAAZA;UAAY,EAAE,CAAC;QAAA;UAA5DY,MAAM,GAAAkC,SAAA,CAAAT,IAAA;UAAAK,gBAAA,GACuB9B,MAAM,CAAjCoC,QAAQ,EAAAL,iBAAA,GAAAD,gBAAA,cAAY,CAAC,CAAC,GAAAA,gBAAA,EAAVlC,GAAG,GAAAmC,iBAAA,CAAHnC,GAAG;UACjBoC,mBAAmB,GAAG,IAAAK,kCAAsB,EAACzC,GAAG,EAAErB,mBAAmB,CAAC,CAAC,CAAC;UAAA,OAAA2D,SAAA,CAAAzB,MAAA,WAAA1C,aAAA,CAAAA,aAAA,CAAAA,aAAA,KAClE+B,WAAW;YAAEkC,mBAAmB,EAAnBA;UAAmB,GAAKhC,MAAM;YAAEsC,SAAS,EAAE;UAAI;QAAA;QAAA;UAAA,OAAAJ,SAAA,CAAAR,IAAA;MAAA;IAAA,GAAAG,QAAA;EAAA,CACzE;EAAA,gBALKP,cAAcA,CAAAiB,GAAA,EAAAC,GAAA;IAAA,OAAAZ,KAAA,CAAA9D,KAAA,OAAAE,SAAA;EAAA;AAAA,GAKnB;AAED,IAAMyE,OAAO,GAAG,SAAVA,OAAOA,CAAAC,KAAA;EAAA,IAAAC,aAAA,GAAAD,KAAA,CAAME,OAAO;IAAPA,OAAO,GAAAD,aAAA,cAAG,CAAC,CAAC,GAAAA,aAAA;EAAA,OAC7BlE,OAAO,CAACC,GAAG,CAACmE,mBAAmB,IAC/BD,OAAO,CAAC,gBAAgB,CAAC,IACzBA,OAAO,CAAC,kBAAkB,CAAC,IAC3BA,OAAO,CAACE,IAAI;AAAA;AAEd,IAAMxC,UAAU,GAAG,SAAbA,UAAUA,CAAIhB,GAAG,EAAEH,MAAM,EAAK;EAClC,IAAIG,GAAG,EAAE;IACP,UAAAyD,MAAA,CAAUC,gBAAK,EAAAD,MAAA,CAAGN,OAAO,CAACnD,GAAG,CAAC,EAAAyD,MAAA,CAAG5D,MAAM;EACzC;EACA,IAAA8D,OAAA,GAEIC,MAAM;IAAAC,gBAAA,GAAAF,OAAA,CADRG,QAAQ;IAAIC,QAAQ,GAAAF,gBAAA,CAARE,QAAQ;IAAEC,QAAQ,GAAAH,gBAAA,CAARG,QAAQ;IAAEC,IAAI,GAAAJ,gBAAA,CAAJI,IAAI;EAEtC,IAAMC,OAAO,GAAGD,IAAI,MAAAR,MAAA,CAAMU,gBAAK,EAAAV,MAAA,CAAGQ,IAAI,IAAK,EAAE;EAE7C,UAAAR,MAAA,CAAUM,QAAQ,EAAAN,MAAA,CAAGW,uBAAY,EAAAX,MAAA,CAAGO,QAAQ,EAAAP,MAAA,CAAGS,OAAO,EAAAT,MAAA,CAAG5D,MAAM;AACjE,CAAC;AAED,IAAMoC,UAAU;EAAA,IAAAoC,KAAA,OAAA7E,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAA4E,SAAMC,IAAI;IAAA,IAAA1E,MAAA,EAAAS,GAAA,EAAAR,YAAA,EAAAC,GAAA,EAAAG,QAAA,EAAAsE,oBAAA,EAAAC,cAAA,EAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,MAAA,EAAAC,UAAA,EAAAC,KAAA,EAAAC,sBAAA,EAAApC,QAAA,EAAAJ,mBAAA;IAAA,OAAAjD,YAAA,YAAAkB,IAAA,UAAAwE,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAtE,IAAA,GAAAsE,SAAA,CAAArE,IAAA;QAAA;UACnBlB,MAAM,GAA+D0E,IAAI,CAAzE1E,MAAM,EAAES,GAAG,GAA0DiE,IAAI,CAAjEjE,GAAG,EAAER,YAAY,GAA4CyE,IAAI,CAA5DzE,YAAY,EAAEC,GAAG,GAAuCwE,IAAI,CAA9CxE,GAAG,EAAEG,QAAQ,GAA6BqE,IAAI,CAAzCrE,QAAQ,EAAAsE,oBAAA,GAA6BD,IAAI,CAA/BE,cAAc,EAAdA,cAAc,GAAAD,oBAAA,cAAG,KAAK,GAAAA,oBAAA;UAAAY,SAAA,CAAAtE,IAAA;UAAA,IAEjEuE,sBAAW,CAACC,IAAI,CAAChF,GAAG,CAAC;YAAA8E,SAAA,CAAArE,IAAA;YAAA;UAAA;UAAA,MAClBwE,KAAK,CAAC,aAAa,CAAC;QAAA;UAAAH,SAAA,CAAArE,IAAA;UAAA,OAGpBjB,YAAY,CAACG,KAAK,CAAC;YACvBA,KAAK,EAAEuF,oBAAa;YACpBC,SAAS,EAAE;cAAEnF,GAAG,EAAHA;YAAI;UACnB,CAAC,CAAC;QAAA;UAAAoE,qBAAA,GAAAU,SAAA,CAAAjD,IAAA;UAAAwC,sBAAA,GAAAD,qBAAA,CAJIgB,IAAI;UAAAd,sBAAA,GAAAD,sBAAA,cAAoE,CAAC,CAAC,GAAAA,sBAAA;UAAAE,sBAAA,GAAAD,sBAAA,CAAlEtF,QAAQ;UAAAwF,sBAAA,GAAAD,sBAAA,cAAiD,CAAC,CAAC,GAAAA,sBAAA;UAA/CE,MAAM,GAAAD,sBAAA,CAANC,MAAM;UAAEC,UAAU,GAAAF,sBAAA,CAAVE,UAAU;UAAEC,KAAK,GAAAH,sBAAA,CAALG,KAAK;UAAAC,sBAAA,GAAAJ,sBAAA,CAAEhC,QAAQ;UAARA,QAAQ,GAAAoC,sBAAA,cAAG,CAAC,CAAC,GAAAA,sBAAA;UAMpES,4BAA4B,CAAC7C,QAAQ,EAAE/C,GAAG,CAAC;UAAC,MAExCkF,KAAK,KAAKA,KAAK,KAAK3E,GAAG,IAAImE,cAAc,CAAC;YAAAW,SAAA,CAAArE,IAAA;YAAA;UAAA;UAAA,OAAAqE,SAAA,CAAAjE,MAAA,WACrCyE,cAAc,CAAC;YAAEnB,cAAc,EAAdA,cAAc;YAAEnE,GAAG,EAAHA,GAAG;YAAE2E,KAAK,EAALA,KAAK;YAAEpF,MAAM,EAANA,MAAM;YAAEE,GAAG,EAAHA;UAAI,CAAC,CAAC;QAAA;UAE9D2C,mBAAmB,GAAG,IAAAK,kCAAsB,EAACzC,GAAG,EAAErB,mBAAmB,CAAC,CAAC,CAAC;UAE9E,IAAIwF,cAAc,EAAE;YAClBvE,QAAQ,CAAC2F,MAAM,CAACC,IAAI,CAAC,aAAa,EAAE;cAAEC,OAAO,oBAAAtC,MAAA,CAAoBgB,cAAc;YAAQ,CAAC,CAAC;YACzF,IAAI1E,GAAG,EAAEA,GAAG,CAACiG,UAAU,GAAGvB,cAAc;UAC1C;UAAC,OAAAW,SAAA,CAAAjE,MAAA,WAEM;YACL2B,QAAQ,EAARA,QAAQ;YACRJ,mBAAmB,EAAnBA,mBAAmB;YACnBqC,MAAM,EAANA,MAAM;YACNC,UAAU,EAAE,IAAAiB,0CAAwB,EAACjB,UAAU;UACjD,CAAC;QAAA;UAAAI,SAAA,CAAAtE,IAAA;UAAAsE,SAAA,CAAAc,EAAA,GAAAd,SAAA;UAAA,OAAAA,SAAA,CAAAjE,MAAA,WAEMgF,cAAc,CAAAf,SAAA,CAAAc,EAAA,EAAM3B,IAAI,CAAC;QAAA;QAAA;UAAA,OAAAa,SAAA,CAAAhD,IAAA;MAAA;IAAA,GAAAkC,QAAA;EAAA,CAEnC;EAAA,gBAjCKrC,UAAUA,CAAAmE,GAAA;IAAA,OAAA/B,KAAA,CAAA7F,KAAA,OAAAE,SAAA;EAAA;AAAA,GAiCf;AAED,IAAM2H,WAAW,GAAG,SAAdA,WAAWA,CAAIC,GAAG,EAAEvG,GAAG,EAAEmC,cAAc,EAAEhC,QAAQ,EAAK;EAC1DA,QAAQ,CAAC2F,MAAM,CAACC,IAAI,CAAC,aAAa,EAAE;IAAES,KAAK,EAAED;EAAI,CAAC,CAAC;EACnD,IAAI,CAACvG,GAAG,EAAE,OAAO,CAAC,CAAC;EACnB,IAAIuG,GAAG,CAACE,YAAY,EAAE;IACpBzG,GAAG,CAAC0G,SAAS,CAAC,GAAG,EAAE;MAAE,cAAc,EAAE;IAAa,CAAC,CAAC;IACpD1G,GAAG,CAAC2G,KAAK,CAAC,6BAA6B,CAAC;IACxC3G,GAAG,CAAC4G,GAAG,CAAC,CAAC;EACX,CAAC,MAAM,IAAIzE,cAAc,IAAIoE,GAAG,CAACM,aAAa,IAAIN,GAAG,CAACM,aAAa,CAACjI,MAAM,EAAE;IAC1EoB,GAAG,CAACiG,UAAU,GAAGa,gCAAqB;IACtC,OAAO;MAAEC,SAAS,EAAED;IAAsB,CAAC;EAC7C;EAEA,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAASjB,cAAcA,CAAAmB,KAAA,EAA8C;EAAA,IAA3CtC,cAAc,GAAAsC,KAAA,CAAdtC,cAAc;IAAEnE,GAAG,GAAAyG,KAAA,CAAHzG,GAAG;IAAE2E,KAAK,GAAA8B,KAAA,CAAL9B,KAAK;IAAEpF,MAAM,GAAAkH,KAAA,CAANlH,MAAM;IAAEE,GAAG,GAAAgH,KAAA,CAAHhH,GAAG;EAC/D,IAAI0E,cAAc,EAAE;IAClB,IAAMuC,YAAY,sBAAAvD,MAAA,CAAsBnD,GAAG,CAAE;IAC7C,IAAM2G,WAAW,GAAG,IAAI1B,KAAK,CAACyB,YAAY,CAAC;IAC3CC,WAAW,CAACL,aAAa,GAAG,CAACI,YAAY,CAAC;IAC1C,MAAMC,WAAW;EACnB;EACA,IAAIC,WAAW,GAAGjC,KAAK;EACvB,IAAI9F,OAAO,CAACC,GAAG,CAAC+H,iCAAiC,KAAK,MAAM,EAAE;IAC5D,IAAMC,WAAW,GAAGvH,MAAM,CAACwH,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxCH,WAAW,GAAGE,WAAW,MAAA3D,MAAA,CAAMwB,KAAK,OAAAxB,MAAA,CAAI2D,WAAW,IAAKnC,KAAK;EAC/D;EAEA,OAAOqC,UAAU,CAACvH,GAAG,EAAEmH,WAAW,CAAC;AACrC;AAEA,SAASvB,4BAA4BA,CAAC7C,QAAQ,EAAE/C,GAAG,EAAE;EACnD,IAAAwH,KAAA,GAAsCzE,QAAQ,IAAI,CAAC,CAAC;IAAA0E,qBAAA,GAAAD,KAAA,CAA5CE,kBAAkB;IAAlBA,kBAAkB,GAAAD,qBAAA,cAAG,IAAI,GAAAA,qBAAA;EAEjC,IAAIzH,GAAG,IAAI0H,kBAAkB,KAAK,IAAI,IAAIA,kBAAkB,IAAI,CAAC,EAAE;IACjE1H,GAAG,CAACwB,SAAS,CAAC,eAAe,aAAAkC,MAAA,CAAagE,kBAAkB,CAAE,CAAC;EACjE;AACF;AAEA,SAASH,UAAUA,CAACvH,GAAG,EAAEmH,WAAW,EAAE;EACpC,IAAInH,GAAG,EAAE;IACPA,GAAG,CAAC0G,SAAS,CAAC,GAAG,EAAE;MAAEiB,QAAQ,EAAER;IAAY,CAAC,CAAC;IAC7CnH,GAAG,CAAC4G,GAAG,CAAC,CAAC;EACX,CAAC,MAAM;IACL/C,MAAM,CAACE,QAAQ,CAAC6D,IAAI,GAAGT,WAAW;EACpC;EAEA,OAAO;IAAEU,WAAW,EAAE;EAAK,CAAC;AAC9B;AAAC,SAEczB,cAAcA,CAAA0B,GAAA,EAAAC,GAAA;EAAA,OAAAC,eAAA,CAAAvJ,KAAA,OAAAE,SAAA;AAAA;AAAA,SAAAqJ,gBAAA;EAAAA,eAAA,OAAAvI,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAA7B,SAAAsI,SAA8B1B,GAAG,EAAE/B,IAAI;IAAA,IAAA1E,MAAA,EAAAE,GAAA,EAAAmC,cAAA,EAAAhC,QAAA,EAAAuE,cAAA,EAAA/D,MAAA,EAAAuH,SAAA,EAAAC,UAAA;IAAA,OAAAzI,YAAA,YAAAkB,IAAA,UAAAwH,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAtH,IAAA,GAAAsH,SAAA,CAAArH,IAAA;QAAA;UAC7BlB,MAAM,GAAoD0E,IAAI,CAA9D1E,MAAM,EAAEE,GAAG,GAA+CwE,IAAI,CAAtDxE,GAAG,EAAEmC,cAAc,GAA+BqC,IAAI,CAAjDrC,cAAc,EAAEhC,QAAQ,GAAqBqE,IAAI,CAAjCrE,QAAQ,EAAEuE,cAAc,GAAKF,IAAI,CAAvBE,cAAc;UAAA,MACzD,CAAC6B,GAAG,CAACM,aAAa,IAAI,CAACN,GAAG,CAACM,aAAa,CAACjI,MAAM;YAAAyJ,SAAA,CAAArH,IAAA;YAAA;UAAA;UAAA,OAAAqH,SAAA,CAAAjH,MAAA,WAC1CkF,WAAW,CAACC,GAAG,EAAEvG,GAAG,EAAEmC,cAAc,EAAEhC,QAAQ,CAAC;QAAA;UAAA,IAGnDuE,cAAc;YAAA2D,SAAA,CAAArH,IAAA;YAAA;UAAA;UAAAqH,SAAA,CAAArH,IAAA;UAAA,OACIkB,UAAU,CAAAxD,aAAA,CAAAA,aAAA,KAC1B8F,IAAI;YACPjE,GAAG,EAAE+H,qBAAU,CAACC,SAAS;YACzB7D,cAAc,EAAEoC;UAAqB,EACtC,CAAC;QAAA;UAJInG,MAAM,GAAA0H,SAAA,CAAAjG,IAAA;UAAA,KAMRD,cAAc;YAAAkG,SAAA,CAAArH,IAAA;YAAA;UAAA;UACVkH,SAAS,GAAG,IAAAM,uBAAW,EAAC1I,MAAM,CAAC;UAAA,KACjCoI,SAAS;YAAAG,SAAA,CAAArH,IAAA;YAAA;UAAA;UAAA,OAAAqH,SAAA,CAAAjH,MAAA,WACJmG,UAAU,CAACvH,GAAG,EAAEkI,SAAS,CAAC;QAAA;UAAA,OAAAG,SAAA,CAAAjH,MAAA,WAG9BT,MAAM;QAAA;UAGTwH,UAAU,GAAG,IAAAK,uBAAW,EAAC1I,MAAM,CAAC;UAAA,MAClCqC,cAAc,IAAIgG,UAAU;YAAAE,SAAA,CAAArH,IAAA;YAAA;UAAA;UAAA,OAAAqH,SAAA,CAAAjH,MAAA,WACvBmG,UAAU,CAACvH,GAAG,EAAEmI,UAAU,CAAC;QAAA;UAAA,OAAAE,SAAA,CAAAjH,MAAA,WAG7BkF,WAAW,CAACC,GAAG,EAAEvG,GAAG,EAAEmC,cAAc,EAAEhC,QAAQ,CAAC;QAAA;QAAA;UAAA,OAAAkI,SAAA,CAAAhG,IAAA;MAAA;IAAA,GAAA4F,QAAA;EAAA,CACvD;EAAA,OAAAD,eAAA,CAAAvJ,KAAA,OAAAE,SAAA;AAAA;AAAA,IAAA8J,QAAA,GAAAC,OAAA,cAEcnJ,QAAQ","ignoreList":[]}
@@ -11,7 +11,7 @@ import checkPreviewUrl from './check-preview-url';
11
11
  import handleStaticRoutes from './handle-static-routes';
12
12
  import getPageData from './get-page-data';
13
13
  import getRootSelectorClasses from './get-root-selector-classes';
14
- const getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT || 1);
14
+ const getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT);
15
15
  const checkUrl = async props => {
16
16
  const {
17
17
  asPath,
@@ -1 +1 @@
1
- {"version":3,"file":"check-url.js","names":["parseUrl","getUnpublishedEntityName","checkAccessToken","HTTPS","DOUBLE_SLASH","COLON","NOT_FOUND_STATUS_CODE","BLAZE_X_FRAME_OPTIONS_DEFAULT","ROUTE_REGEX","ERROR_URLS","checkUrlQuery","checkParent","checkPreviewUrl","handleStaticRoutes","getPageData","getRootSelectorClasses","getRootClassesLimit","Number","process","env","BLAZE_ROOT_SELECTOR_CLASSES_LIMIT","checkUrl","props","asPath","apolloClient","res","req","query","blazeApp","disableSsr","fullUrl","getFullUrl","url","BLAZE_STATUS_URL","isStatusPage","handler","getHandler","setHeader","BLAZE_X_FRAME_OPTIONS","getHeader","BLAZE_CACHE_CONTROL_HEADER","previewData","_objectSpread","Object","keys","cache","extract","length","getPreviewData","urlCheckOptions","result","doUrlCheck","handle404Error","pageData","rootSelectorClasses","isPreview","getHost","headers","BLAZE_FRONTEND_HOST","host","location","protocol","hostname","port","window","urlPort","args","errorCheckCode","test","Error","data","itemId","itemEntity","urlTo","variables","setCustomCacheControlHeaders","handleRedirect","events","emit","message","statusCode","err","handleUrlError","handleError","error","networkError","writeHead","write","end","graphQLErrors","errorCode","errorMessage","customError","redirectUrl","BLAZE_DISABLE_REDIRECT_WITH_QUERY","queryString","split","doRedirect","cacheControlMaxAge","Location","href","redirecting","custom404","parentUrl","parentPATH"],"sources":["../../src/helpers/check-url.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { getUnpublishedEntityName } from '@blaze-cms/react-page-builder';\nimport { checkAccessToken } from '@blaze-cms/core-auth-ui';\nimport {\n HTTPS,\n DOUBLE_SLASH,\n COLON,\n NOT_FOUND_STATUS_CODE,\n BLAZE_X_FRAME_OPTIONS_DEFAULT,\n ROUTE_REGEX,\n ERROR_URLS\n} from '../constants';\nimport { checkUrlQuery } from '../application/query';\nimport checkParent from './check-parent';\nimport checkPreviewUrl from './check-preview-url';\nimport handleStaticRoutes from './handle-static-routes';\nimport getPageData from './get-page-data';\nimport getRootSelectorClasses from './get-root-selector-classes';\n\nconst getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT || 1);\n\nconst checkUrl = async props => {\n const { asPath, apolloClient, res, req, query, blazeApp, disableSsr } = props;\n const fullUrl = getFullUrl(req, asPath);\n const { url } = parseUrl(asPath);\n\n if (process.env.BLAZE_STATUS_URL && url === process.env.BLAZE_STATUS_URL) {\n return { isStatusPage: true };\n }\n\n if (res) {\n const handler = handleStaticRoutes.getHandler(asPath);\n\n res.setHeader(\n 'X-Frame-Options',\n process.env.BLAZE_X_FRAME_OPTIONS || BLAZE_X_FRAME_OPTIONS_DEFAULT\n );\n\n if (!res.getHeader('Cache-Control')) {\n res.setHeader('Cache-Control', process.env.BLAZE_CACHE_CONTROL_HEADER || ' ');\n }\n\n if (handler) {\n return handler(props);\n }\n }\n\n const previewData = checkPreviewUrl(url, query);\n\n if (!previewData && disableSsr) return { disableSsr: true };\n\n await checkAccessToken(apolloClient, {\n ...props,\n disableSsr: !Object.keys(apolloClient.cache.extract()).length // empty cache means SSR was disabled\n });\n\n if (previewData) return getPreviewData(previewData, apolloClient);\n const urlCheckOptions = { asPath, url, apolloClient, res };\n const result = await doUrlCheck({\n ...urlCheckOptions,\n handle404Error: true,\n blazeApp\n });\n return { ...result, fullUrl } || {};\n};\n\nconst getPreviewData = async (previewData, apolloClient) => {\n const result = await getPageData({ ...previewData, apolloClient });\n const { pageData: { url } = {} } = result;\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n return { ...previewData, rootSelectorClasses, ...result, isPreview: true };\n};\n\nconst getHost = ({ headers = {} }) =>\n process.env.BLAZE_FRONTEND_HOST ||\n headers['x-request-host'] ||\n headers['x-forwarded-host'] ||\n headers.host;\n\nconst getFullUrl = (req, asPath) => {\n if (req) {\n return `${HTTPS}${getHost(req)}${asPath}`;\n }\n const {\n location: { protocol, hostname, port }\n } = window;\n const urlPort = port ? `${COLON}${port}` : '';\n\n return `${protocol}${DOUBLE_SLASH}${hostname}${urlPort}${asPath}`;\n};\n\nconst doUrlCheck = async args => {\n const { asPath, url, apolloClient, res, blazeApp, errorCheckCode = false } = args;\n try {\n if (!ROUTE_REGEX.test(url)) {\n throw Error('Invalid URL');\n }\n const { data: { checkUrl: { itemId, itemEntity, urlTo, pageData = {} } = {} } = {} } =\n await apolloClient.query({\n query: checkUrlQuery,\n variables: { url }\n });\n\n setCustomCacheControlHeaders(pageData, res);\n\n if (urlTo && (urlTo !== url || errorCheckCode)) {\n return handleRedirect({ errorCheckCode, url, urlTo, asPath, res });\n }\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n\n if (errorCheckCode) {\n blazeApp.events.emit('monitor:log', { message: `Serving custom ${errorCheckCode} page` });\n if (res) res.statusCode = errorCheckCode;\n }\n\n return {\n pageData,\n rootSelectorClasses,\n itemId,\n itemEntity: getUnpublishedEntityName(itemEntity)\n };\n } catch (err) {\n return handleUrlError(err, args);\n }\n};\n\nconst handleError = (err, res, handle404Error, blazeApp) => {\n blazeApp.events.emit('monitor:log', { error: err });\n if (!res) return {};\n if (err.networkError) {\n res.writeHead(500, { 'Content-Type': 'text/plain' });\n res.write('500 Internal Server Error\\n');\n res.end();\n } else if (handle404Error && err.graphQLErrors && err.graphQLErrors.length) {\n res.statusCode = NOT_FOUND_STATUS_CODE;\n return { errorCode: NOT_FOUND_STATUS_CODE };\n }\n\n return {};\n};\n\nfunction handleRedirect({ errorCheckCode, url, urlTo, asPath, res }) {\n if (errorCheckCode) {\n const errorMessage = `Cannot redirect ${url}`;\n const customError = new Error(errorMessage);\n customError.graphQLErrors = [errorMessage];\n throw customError;\n }\n let redirectUrl = urlTo;\n if (process.env.BLAZE_DISABLE_REDIRECT_WITH_QUERY !== 'true') {\n const queryString = asPath.split('?')[1];\n redirectUrl = queryString ? `${urlTo}?${queryString}` : urlTo;\n }\n\n return doRedirect(res, redirectUrl);\n}\n\nfunction setCustomCacheControlHeaders(pageData, res) {\n const { cacheControlMaxAge = null } = pageData || {};\n\n if (res && cacheControlMaxAge !== null && cacheControlMaxAge >= 0) {\n res.setHeader('Cache-Control', `max-age=${cacheControlMaxAge}`);\n }\n}\n\nfunction doRedirect(res, redirectUrl) {\n if (res) {\n res.writeHead(301, { Location: redirectUrl });\n res.end();\n } else {\n window.location.href = redirectUrl;\n }\n\n return { redirecting: true };\n}\n\nasync function handleUrlError(err, args) {\n const { asPath, res, handle404Error, blazeApp, errorCheckCode } = args;\n if (!err.graphQLErrors || !err.graphQLErrors.length) {\n return handleError(err, res, handle404Error, blazeApp);\n }\n\n if (!errorCheckCode) {\n const result = await doUrlCheck({\n ...args,\n url: ERROR_URLS.custom404,\n errorCheckCode: NOT_FOUND_STATUS_CODE\n });\n\n if (handle404Error) {\n const parentUrl = checkParent(asPath);\n if (parentUrl) {\n return doRedirect(res, parentUrl);\n }\n }\n return result;\n }\n\n const parentPATH = checkParent(asPath);\n if (handle404Error && parentPATH) {\n return doRedirect(res, parentPATH);\n }\n\n return handleError(err, res, handle404Error, blazeApp);\n}\n\nexport default checkUrl;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"check-url.js","names":["parseUrl","getUnpublishedEntityName","checkAccessToken","HTTPS","DOUBLE_SLASH","COLON","NOT_FOUND_STATUS_CODE","BLAZE_X_FRAME_OPTIONS_DEFAULT","ROUTE_REGEX","ERROR_URLS","checkUrlQuery","checkParent","checkPreviewUrl","handleStaticRoutes","getPageData","getRootSelectorClasses","getRootClassesLimit","Number","process","env","BLAZE_ROOT_SELECTOR_CLASSES_LIMIT","checkUrl","props","asPath","apolloClient","res","req","query","blazeApp","disableSsr","fullUrl","getFullUrl","url","BLAZE_STATUS_URL","isStatusPage","handler","getHandler","setHeader","BLAZE_X_FRAME_OPTIONS","getHeader","BLAZE_CACHE_CONTROL_HEADER","previewData","_objectSpread","Object","keys","cache","extract","length","getPreviewData","urlCheckOptions","result","doUrlCheck","handle404Error","pageData","rootSelectorClasses","isPreview","getHost","headers","BLAZE_FRONTEND_HOST","host","location","protocol","hostname","port","window","urlPort","args","errorCheckCode","test","Error","data","itemId","itemEntity","urlTo","variables","setCustomCacheControlHeaders","handleRedirect","events","emit","message","statusCode","err","handleUrlError","handleError","error","networkError","writeHead","write","end","graphQLErrors","errorCode","errorMessage","customError","redirectUrl","BLAZE_DISABLE_REDIRECT_WITH_QUERY","queryString","split","doRedirect","cacheControlMaxAge","Location","href","redirecting","custom404","parentUrl","parentPATH"],"sources":["../../src/helpers/check-url.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { getUnpublishedEntityName } from '@blaze-cms/react-page-builder';\nimport { checkAccessToken } from '@blaze-cms/core-auth-ui';\nimport {\n HTTPS,\n DOUBLE_SLASH,\n COLON,\n NOT_FOUND_STATUS_CODE,\n BLAZE_X_FRAME_OPTIONS_DEFAULT,\n ROUTE_REGEX,\n ERROR_URLS\n} from '../constants';\nimport { checkUrlQuery } from '../application/query';\nimport checkParent from './check-parent';\nimport checkPreviewUrl from './check-preview-url';\nimport handleStaticRoutes from './handle-static-routes';\nimport getPageData from './get-page-data';\nimport getRootSelectorClasses from './get-root-selector-classes';\n\nconst getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT);\n\nconst checkUrl = async props => {\n const { asPath, apolloClient, res, req, query, blazeApp, disableSsr } = props;\n const fullUrl = getFullUrl(req, asPath);\n const { url } = parseUrl(asPath);\n\n if (process.env.BLAZE_STATUS_URL && url === process.env.BLAZE_STATUS_URL) {\n return { isStatusPage: true };\n }\n\n if (res) {\n const handler = handleStaticRoutes.getHandler(asPath);\n\n res.setHeader(\n 'X-Frame-Options',\n process.env.BLAZE_X_FRAME_OPTIONS || BLAZE_X_FRAME_OPTIONS_DEFAULT\n );\n\n if (!res.getHeader('Cache-Control')) {\n res.setHeader('Cache-Control', process.env.BLAZE_CACHE_CONTROL_HEADER || ' ');\n }\n\n if (handler) {\n return handler(props);\n }\n }\n\n const previewData = checkPreviewUrl(url, query);\n\n if (!previewData && disableSsr) return { disableSsr: true };\n\n await checkAccessToken(apolloClient, {\n ...props,\n disableSsr: !Object.keys(apolloClient.cache.extract()).length // empty cache means SSR was disabled\n });\n\n if (previewData) return getPreviewData(previewData, apolloClient);\n const urlCheckOptions = { asPath, url, apolloClient, res };\n const result = await doUrlCheck({\n ...urlCheckOptions,\n handle404Error: true,\n blazeApp\n });\n return { ...result, fullUrl } || {};\n};\n\nconst getPreviewData = async (previewData, apolloClient) => {\n const result = await getPageData({ ...previewData, apolloClient });\n const { pageData: { url } = {} } = result;\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n return { ...previewData, rootSelectorClasses, ...result, isPreview: true };\n};\n\nconst getHost = ({ headers = {} }) =>\n process.env.BLAZE_FRONTEND_HOST ||\n headers['x-request-host'] ||\n headers['x-forwarded-host'] ||\n headers.host;\n\nconst getFullUrl = (req, asPath) => {\n if (req) {\n return `${HTTPS}${getHost(req)}${asPath}`;\n }\n const {\n location: { protocol, hostname, port }\n } = window;\n const urlPort = port ? `${COLON}${port}` : '';\n\n return `${protocol}${DOUBLE_SLASH}${hostname}${urlPort}${asPath}`;\n};\n\nconst doUrlCheck = async args => {\n const { asPath, url, apolloClient, res, blazeApp, errorCheckCode = false } = args;\n try {\n if (!ROUTE_REGEX.test(url)) {\n throw Error('Invalid URL');\n }\n const { data: { checkUrl: { itemId, itemEntity, urlTo, pageData = {} } = {} } = {} } =\n await apolloClient.query({\n query: checkUrlQuery,\n variables: { url }\n });\n\n setCustomCacheControlHeaders(pageData, res);\n\n if (urlTo && (urlTo !== url || errorCheckCode)) {\n return handleRedirect({ errorCheckCode, url, urlTo, asPath, res });\n }\n const rootSelectorClasses = getRootSelectorClasses(url, getRootClassesLimit());\n\n if (errorCheckCode) {\n blazeApp.events.emit('monitor:log', { message: `Serving custom ${errorCheckCode} page` });\n if (res) res.statusCode = errorCheckCode;\n }\n\n return {\n pageData,\n rootSelectorClasses,\n itemId,\n itemEntity: getUnpublishedEntityName(itemEntity)\n };\n } catch (err) {\n return handleUrlError(err, args);\n }\n};\n\nconst handleError = (err, res, handle404Error, blazeApp) => {\n blazeApp.events.emit('monitor:log', { error: err });\n if (!res) return {};\n if (err.networkError) {\n res.writeHead(500, { 'Content-Type': 'text/plain' });\n res.write('500 Internal Server Error\\n');\n res.end();\n } else if (handle404Error && err.graphQLErrors && err.graphQLErrors.length) {\n res.statusCode = NOT_FOUND_STATUS_CODE;\n return { errorCode: NOT_FOUND_STATUS_CODE };\n }\n\n return {};\n};\n\nfunction handleRedirect({ errorCheckCode, url, urlTo, asPath, res }) {\n if (errorCheckCode) {\n const errorMessage = `Cannot redirect ${url}`;\n const customError = new Error(errorMessage);\n customError.graphQLErrors = [errorMessage];\n throw customError;\n }\n let redirectUrl = urlTo;\n if (process.env.BLAZE_DISABLE_REDIRECT_WITH_QUERY !== 'true') {\n const queryString = asPath.split('?')[1];\n redirectUrl = queryString ? `${urlTo}?${queryString}` : urlTo;\n }\n\n return doRedirect(res, redirectUrl);\n}\n\nfunction setCustomCacheControlHeaders(pageData, res) {\n const { cacheControlMaxAge = null } = pageData || {};\n\n if (res && cacheControlMaxAge !== null && cacheControlMaxAge >= 0) {\n res.setHeader('Cache-Control', `max-age=${cacheControlMaxAge}`);\n }\n}\n\nfunction doRedirect(res, redirectUrl) {\n if (res) {\n res.writeHead(301, { Location: redirectUrl });\n res.end();\n } else {\n window.location.href = redirectUrl;\n }\n\n return { redirecting: true };\n}\n\nasync function handleUrlError(err, args) {\n const { asPath, res, handle404Error, blazeApp, errorCheckCode } = args;\n if (!err.graphQLErrors || !err.graphQLErrors.length) {\n return handleError(err, res, handle404Error, blazeApp);\n }\n\n if (!errorCheckCode) {\n const result = await doUrlCheck({\n ...args,\n url: ERROR_URLS.custom404,\n errorCheckCode: NOT_FOUND_STATUS_CODE\n });\n\n if (handle404Error) {\n const parentUrl = checkParent(asPath);\n if (parentUrl) {\n return doRedirect(res, parentUrl);\n }\n }\n return result;\n }\n\n const parentPATH = checkParent(asPath);\n if (handle404Error && parentPATH) {\n return doRedirect(res, parentPATH);\n }\n\n return handleError(err, res, handle404Error, blazeApp);\n}\n\nexport default checkUrl;\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/nextjs-tools",
3
- "version": "0.146.0-node18-core-styles-tooltips.25",
3
+ "version": "0.146.0-node18-tooltips.28",
4
4
  "description": "Blaze nextjs tools",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -28,22 +28,22 @@
28
28
  "license": "GPL-3.0",
29
29
  "dependencies": {
30
30
  "@apollo/client": "^3.9.2",
31
- "@blaze-cms/core-auth-ui": "0.146.0-node18-core-styles-tooltips.24",
32
- "@blaze-cms/core-errors": "0.146.0-node18-core-styles-tooltips.3",
33
- "@blaze-cms/core-errors-ui": "0.146.0-node18-core-styles-tooltips.3",
34
- "@blaze-cms/core-ui": "0.146.0-node18-core-styles-tooltips.24",
35
- "@blaze-cms/nextjs-components": "0.146.0-node18-core-styles-tooltips.3",
36
- "@blaze-cms/plugin-auth-fe": "0.146.0-node18-core-styles-tooltips.24",
37
- "@blaze-cms/plugin-auth-local-fe": "0.146.0-node18-core-styles-tooltips.24",
38
- "@blaze-cms/plugin-chart": "0.146.0-node18-core-styles-tooltips.22",
39
- "@blaze-cms/plugin-google-maps-fe": "0.146.0-node18-core-styles-tooltips.25",
40
- "@blaze-cms/plugin-gtm-fe": "0.146.0-node18-core-styles-tooltips.25",
41
- "@blaze-cms/plugin-page-builder-fe": "0.146.0-node18-core-styles-tooltips.25",
42
- "@blaze-cms/plugin-preview-fe": "0.146.0-node18-core-styles-tooltips.24",
43
- "@blaze-cms/plugin-search-ui": "0.146.0-node18-core-styles-tooltips.25",
44
- "@blaze-cms/plugin-structured-data-fe": "0.146.0-node18-core-styles-tooltips.24",
45
- "@blaze-cms/react-page-builder": "0.146.0-node18-core-styles-tooltips.25",
46
- "@blaze-cms/setup-ui": "0.146.0-node18-core-styles-tooltips.3",
31
+ "@blaze-cms/core-auth-ui": "0.146.0-node18-tooltips.28",
32
+ "@blaze-cms/core-errors": "0.146.0-node18-tooltips.0",
33
+ "@blaze-cms/core-errors-ui": "0.146.0-node18-tooltips.0",
34
+ "@blaze-cms/core-ui": "0.146.0-node18-tooltips.28",
35
+ "@blaze-cms/nextjs-components": "0.146.0-node18-tooltips.0",
36
+ "@blaze-cms/plugin-auth-fe": "0.146.0-node18-tooltips.28",
37
+ "@blaze-cms/plugin-auth-local-fe": "0.146.0-node18-tooltips.28",
38
+ "@blaze-cms/plugin-chart": "0.146.0-node18-tooltips.19",
39
+ "@blaze-cms/plugin-google-maps-fe": "0.146.0-node18-tooltips.28",
40
+ "@blaze-cms/plugin-gtm-fe": "0.146.0-node18-tooltips.28",
41
+ "@blaze-cms/plugin-page-builder-fe": "0.146.0-node18-tooltips.28",
42
+ "@blaze-cms/plugin-preview-fe": "0.146.0-node18-tooltips.28",
43
+ "@blaze-cms/plugin-search-ui": "0.146.0-node18-tooltips.28",
44
+ "@blaze-cms/plugin-structured-data-fe": "0.146.0-node18-tooltips.25",
45
+ "@blaze-cms/react-page-builder": "0.146.0-node18-tooltips.28",
46
+ "@blaze-cms/setup-ui": "0.146.0-node18-tooltips.0",
47
47
  "@blaze-react/switches": "0.8.0-alpha.112",
48
48
  "autoprefixer": "^10.2.3",
49
49
  "core-js": "^3.2.1",
@@ -71,5 +71,5 @@
71
71
  "lib/*",
72
72
  "lib-es/*"
73
73
  ],
74
- "gitHead": "b6210c9d5dac07a069759f580eb0bc7df8439eca"
74
+ "gitHead": "abc56fcac26e264bce960c4a86503030d7350c60"
75
75
  }
@@ -17,7 +17,7 @@ import handleStaticRoutes from './handle-static-routes';
17
17
  import getPageData from './get-page-data';
18
18
  import getRootSelectorClasses from './get-root-selector-classes';
19
19
 
20
- const getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT || 1);
20
+ const getRootClassesLimit = () => Number(process.env.BLAZE_ROOT_SELECTOR_CLASSES_LIMIT);
21
21
 
22
22
  const checkUrl = async props => {
23
23
  const { asPath, apolloClient, res, req, query, blazeApp, disableSsr } = props;