@taon-dev/seo 0.0.0-stage → 21.0.6

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 (789) hide show
  1. package/VERIFIED-BUILD-DATA.jsonc +5 -0
  2. package/assets/shared/shared_folder_info.txt +7 -0
  3. package/bin/seo +5 -0
  4. package/bin/seo-debug +5 -0
  5. package/bin/seo-debug-brk +4 -0
  6. package/browser/README.md +24 -0
  7. package/browser/fesm2022/seo-browser-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +15 -0
  8. package/browser/fesm2022/seo-browser-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +1 -0
  9. package/browser/fesm2022/seo-browser-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +16 -0
  10. package/browser/fesm2022/seo-browser-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +1 -0
  11. package/browser/fesm2022/seo-browser-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs +15 -0
  12. package/browser/fesm2022/seo-browser-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs.map +1 -0
  13. package/browser/fesm2022/seo-browser-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs +15 -0
  14. package/browser/fesm2022/seo-browser-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs.map +1 -0
  15. package/browser/fesm2022/seo-browser-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs +15 -0
  16. package/browser/fesm2022/seo-browser-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs.map +1 -0
  17. package/browser/fesm2022/seo-browser-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs +15 -0
  18. package/browser/fesm2022/seo-browser-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs.map +1 -0
  19. package/browser/fesm2022/seo-browser.mjs +2652 -0
  20. package/browser/fesm2022/seo-browser.mjs.map +1 -0
  21. package/browser/package.json +23 -0
  22. package/browser/types/seo-browser.d.ts +971 -0
  23. package/browser-prod/README.md +24 -0
  24. package/browser-prod/fesm2022/seo-browser-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +15 -0
  25. package/browser-prod/fesm2022/seo-browser-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +1 -0
  26. package/browser-prod/fesm2022/seo-browser-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +16 -0
  27. package/browser-prod/fesm2022/seo-browser-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +1 -0
  28. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs +15 -0
  29. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs.map +1 -0
  30. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs +15 -0
  31. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs.map +1 -0
  32. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs +15 -0
  33. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs.map +1 -0
  34. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs +15 -0
  35. package/browser-prod/fesm2022/seo-browser-prod-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs.map +1 -0
  36. package/browser-prod/fesm2022/seo-browser-prod.mjs +2653 -0
  37. package/browser-prod/fesm2022/seo-browser-prod.mjs.map +1 -0
  38. package/browser-prod/package.json +23 -0
  39. package/browser-prod/types/seo-browser-prod.d.ts +953 -0
  40. package/browser-prod.re-export.json +1 -0
  41. package/browser-prod.split-namespaces.json +30 -0
  42. package/cli.d.ts +1 -0
  43. package/cli.js +8 -0
  44. package/cli.js.map +1 -0
  45. package/full-dts/build-info._auto-generated_.d.ts +24 -0
  46. package/full-dts/env/env.angular-node-app.d.ts +71 -0
  47. package/full-dts/env/env.docs-webapp.d.ts +71 -0
  48. package/full-dts/env/env.electron-app.d.ts +71 -0
  49. package/full-dts/env/env.mobile-app.d.ts +71 -0
  50. package/full-dts/env/env.npm-lib-and-cli-tool.d.ts +71 -0
  51. package/full-dts/env/env.vscode-plugin.d.ts +71 -0
  52. package/full-dts/env/index.d.ts +6 -0
  53. package/full-dts/i18n/lib.translation.d.ts +4 -0
  54. package/full-dts/i18n/my-organization-proj.ts.en-US.i18n.data.d.ts +15 -0
  55. package/full-dts/i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts +16 -0
  56. package/full-dts/index._auto-generated_.d.ts +52 -0
  57. package/full-dts/index.d.ts +13 -0
  58. package/full-dts/migrations/1791132517216_initial.d.ts +7 -0
  59. package/full-dts/migrations/1791655200000_seo_configuration.d.ts +6 -0
  60. package/full-dts/migrations/index.d.ts +5 -0
  61. package/full-dts/migrations/migrations_index._auto-generated_.d.ts +6 -0
  62. package/full-dts/my-organization-proj.d.ts +1 -0
  63. package/full-dts/start-cli.d.ts +7 -0
  64. package/full-dts/taon-seo-backoffice/index.d.ts +1 -0
  65. package/full-dts/taon-seo-backoffice/taon-seo-backoffice.models.d.ts +1 -0
  66. package/full-dts/taon-seo-image.controller.d.ts +14 -0
  67. package/full-dts/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.d.ts +15 -0
  68. package/full-dts/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  69. package/full-dts/taon-seo-page/i18n/taon-seo-page.translation.d.ts +4 -0
  70. package/full-dts/taon-seo-page/index.d.ts +12 -0
  71. package/full-dts/taon-seo-page/taon-seo-page-backoffice/index.d.ts +1 -0
  72. package/full-dts/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.d.ts +1 -0
  73. package/full-dts/taon-seo-page/taon-seo-page.abstract.context.d.ts +16 -0
  74. package/full-dts/taon-seo-page/taon-seo-page.constants.d.ts +6 -0
  75. package/full-dts/taon-seo-page/taon-seo-page.controller.d.ts +13 -0
  76. package/full-dts/taon-seo-page/taon-seo-page.entity.d.ts +16 -0
  77. package/full-dts/taon-seo-page/taon-seo-page.kv.repository.d.ts +7 -0
  78. package/full-dts/taon-seo-page/taon-seo-page.middleware.d.ts +3 -0
  79. package/full-dts/taon-seo-page/taon-seo-page.models.d.ts +8 -0
  80. package/full-dts/taon-seo-page/taon-seo-page.provider.d.ts +12 -0
  81. package/full-dts/taon-seo-page/taon-seo-page.repository.d.ts +9 -0
  82. package/full-dts/taon-seo-page/taon-seo-page.subscriber.d.ts +6 -0
  83. package/full-dts/taon-seo-page/taon-seo-page.utils.d.ts +4 -0
  84. package/full-dts/taon-seo-page/taon-seo-page.validators.d.ts +7 -0
  85. package/full-dts/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.d.ts +15 -0
  86. package/full-dts/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  87. package/full-dts/taon-seo-settings/i18n/taon-seo-settings.translation.d.ts +4 -0
  88. package/full-dts/taon-seo-settings/index.d.ts +12 -0
  89. package/full-dts/taon-seo-settings/taon-seo-settings-backoffice/index.d.ts +1 -0
  90. package/full-dts/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.d.ts +1 -0
  91. package/full-dts/taon-seo-settings/taon-seo-settings.abstract.context.d.ts +16 -0
  92. package/full-dts/taon-seo-settings/taon-seo-settings.constants.d.ts +6 -0
  93. package/full-dts/taon-seo-settings/taon-seo-settings.controller.d.ts +11 -0
  94. package/full-dts/taon-seo-settings/taon-seo-settings.entity.d.ts +14 -0
  95. package/full-dts/taon-seo-settings/taon-seo-settings.kv.repository.d.ts +7 -0
  96. package/full-dts/taon-seo-settings/taon-seo-settings.middleware.d.ts +3 -0
  97. package/full-dts/taon-seo-settings/taon-seo-settings.models.d.ts +8 -0
  98. package/full-dts/taon-seo-settings/taon-seo-settings.provider.d.ts +12 -0
  99. package/full-dts/taon-seo-settings/taon-seo-settings.repository.d.ts +8 -0
  100. package/full-dts/taon-seo-settings/taon-seo-settings.subscriber.d.ts +6 -0
  101. package/full-dts/taon-seo-settings/taon-seo-settings.utils.d.ts +4 -0
  102. package/full-dts/taon-seo-settings/taon-seo-settings.validators.d.ts +7 -0
  103. package/full-dts/taon-seo.abstract.context.d.ts +16 -0
  104. package/full-dts/taon-seo.provider.d.ts +6 -0
  105. package/full-dts/taon-seo.utils.d.ts +15 -0
  106. package/full-dts/taon-seo.validation.d.ts +7 -0
  107. package/html/app/baseline-backoffice/taon-baseline-backoffice.component.html +23 -0
  108. package/html/app/seo-example/seo-example.component.html +2 -0
  109. package/html/assets/generated/pwa/html-pwa.html +60 -0
  110. package/html/imports.html +3 -0
  111. package/html/lib/taon-seo-backoffice/taon-seo-backoffice.component.html +1 -0
  112. package/html/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.component.html +12 -0
  113. package/html/lib/taon-seo-page/taon-seo-page-edit-dialog/taon-seo-page-edit-dialog.component.html +86 -0
  114. package/html/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.component.html +75 -0
  115. package/i18n/app.ts.en-US.i18n.data.d.ts +8 -0
  116. package/i18n/app.ts.en-US.i18n.data.js +2 -0
  117. package/i18n/app.ts.en-US.i18n.data.js.map +1 -0
  118. package/i18n/app.ts.pl-PL.i18n.data.d.ts +8 -0
  119. package/i18n/app.ts.pl-PL.i18n.data.js +2 -0
  120. package/i18n/app.ts.pl-PL.i18n.data.js.map +1 -0
  121. package/i18n/src.translation.d.ts +4 -0
  122. package/i18n/src.translation.js +2 -0
  123. package/i18n/src.translation.js.map +1 -0
  124. package/index.d.ts +3 -0
  125. package/index.js +20 -0
  126. package/index.js.map +1 -0
  127. package/lib/build-info._auto-generated_.d.ts +24 -0
  128. package/lib/build-info._auto-generated_.js +30 -0
  129. package/lib/build-info._auto-generated_.js.map +1 -0
  130. package/lib/env/env.angular-node-app.d.ts +71 -0
  131. package/lib/env/env.angular-node-app.js +153 -0
  132. package/lib/env/env.angular-node-app.js.map +1 -0
  133. package/lib/env/env.docs-webapp.d.ts +71 -0
  134. package/lib/env/env.docs-webapp.js +153 -0
  135. package/lib/env/env.docs-webapp.js.map +1 -0
  136. package/lib/env/env.electron-app.d.ts +71 -0
  137. package/lib/env/env.electron-app.js +153 -0
  138. package/lib/env/env.electron-app.js.map +1 -0
  139. package/lib/env/env.mobile-app.d.ts +71 -0
  140. package/lib/env/env.mobile-app.js +153 -0
  141. package/lib/env/env.mobile-app.js.map +1 -0
  142. package/lib/env/env.npm-lib-and-cli-tool.d.ts +71 -0
  143. package/lib/env/env.npm-lib-and-cli-tool.js +153 -0
  144. package/lib/env/env.npm-lib-and-cli-tool.js.map +1 -0
  145. package/lib/env/env.vscode-plugin.d.ts +71 -0
  146. package/lib/env/env.vscode-plugin.js +153 -0
  147. package/lib/env/env.vscode-plugin.js.map +1 -0
  148. package/lib/env/index.d.ts +6 -0
  149. package/lib/env/index.js +23 -0
  150. package/lib/env/index.js.map +1 -0
  151. package/lib/i18n/lib.translation.d.ts +4 -0
  152. package/lib/i18n/lib.translation.js +5 -0
  153. package/lib/i18n/lib.translation.js.map +1 -0
  154. package/lib/i18n/my-organization-proj.ts.en-US.i18n.data.d.ts +15 -0
  155. package/lib/i18n/my-organization-proj.ts.en-US.i18n.data.js +15 -0
  156. package/lib/i18n/my-organization-proj.ts.en-US.i18n.data.js.map +1 -0
  157. package/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts +16 -0
  158. package/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js +16 -0
  159. package/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js.map +1 -0
  160. package/lib/index._auto-generated_.d.ts +38 -0
  161. package/lib/index._auto-generated_.js +74 -0
  162. package/lib/index._auto-generated_.js.map +1 -0
  163. package/lib/index.d.ts +11 -0
  164. package/lib/index.js +29 -0
  165. package/lib/index.js.map +1 -0
  166. package/lib/migrations/1791132517216_initial.d.ts +7 -0
  167. package/lib/migrations/1791132517216_initial.js +74 -0
  168. package/lib/migrations/1791132517216_initial.js.map +1 -0
  169. package/lib/migrations/1791655200000_seo_configuration.d.ts +6 -0
  170. package/lib/migrations/1791655200000_seo_configuration.js +73 -0
  171. package/lib/migrations/1791655200000_seo_configuration.js.map +1 -0
  172. package/lib/migrations/index.d.ts +5 -0
  173. package/lib/migrations/index.js +10 -0
  174. package/lib/migrations/index.js.map +1 -0
  175. package/lib/migrations/migrations_index._auto-generated_.d.ts +6 -0
  176. package/lib/migrations/migrations_index._auto-generated_.js +13 -0
  177. package/lib/migrations/migrations_index._auto-generated_.js.map +1 -0
  178. package/lib/my-organization-proj.d.ts +1 -0
  179. package/lib/my-organization-proj.js +9 -0
  180. package/lib/my-organization-proj.js.map +1 -0
  181. package/lib/package.json +4 -0
  182. package/lib/start-cli.d.ts +7 -0
  183. package/lib/start-cli.js +94 -0
  184. package/lib/start-cli.js.map +1 -0
  185. package/lib/taon-seo-backoffice/index.d.ts +1 -0
  186. package/lib/taon-seo-backoffice/index.js +5 -0
  187. package/lib/taon-seo-backoffice/index.js.map +1 -0
  188. package/lib/taon-seo-backoffice/taon-seo-backoffice.models.d.ts +1 -0
  189. package/lib/taon-seo-backoffice/taon-seo-backoffice.models.js +3 -0
  190. package/lib/taon-seo-backoffice/taon-seo-backoffice.models.js.map +1 -0
  191. package/lib/taon-seo-image.controller.d.ts +14 -0
  192. package/lib/taon-seo-image.controller.js +79 -0
  193. package/lib/taon-seo-image.controller.js.map +1 -0
  194. package/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.d.ts +15 -0
  195. package/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.js +15 -0
  196. package/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.js.map +1 -0
  197. package/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  198. package/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.js +15 -0
  199. package/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.js.map +1 -0
  200. package/lib/taon-seo-page/i18n/taon-seo-page.translation.d.ts +4 -0
  201. package/lib/taon-seo-page/i18n/taon-seo-page.translation.js +5 -0
  202. package/lib/taon-seo-page/i18n/taon-seo-page.translation.js.map +1 -0
  203. package/lib/taon-seo-page/index.d.ts +10 -0
  204. package/lib/taon-seo-page/index.js +29 -0
  205. package/lib/taon-seo-page/index.js.map +1 -0
  206. package/lib/taon-seo-page/taon-seo-page-backoffice/index.d.ts +1 -0
  207. package/lib/taon-seo-page/taon-seo-page-backoffice/index.js +5 -0
  208. package/lib/taon-seo-page/taon-seo-page-backoffice/index.js.map +1 -0
  209. package/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.d.ts +1 -0
  210. package/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.js +3 -0
  211. package/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.js.map +1 -0
  212. package/lib/taon-seo-page/taon-seo-page.abstract.context.d.ts +16 -0
  213. package/lib/taon-seo-page/taon-seo-page.abstract.context.js +28 -0
  214. package/lib/taon-seo-page/taon-seo-page.abstract.context.js.map +1 -0
  215. package/lib/taon-seo-page/taon-seo-page.constants.d.ts +6 -0
  216. package/lib/taon-seo-page/taon-seo-page.constants.js +25 -0
  217. package/lib/taon-seo-page/taon-seo-page.constants.js.map +1 -0
  218. package/lib/taon-seo-page/taon-seo-page.controller.d.ts +13 -0
  219. package/lib/taon-seo-page/taon-seo-page.controller.js +96 -0
  220. package/lib/taon-seo-page/taon-seo-page.controller.js.map +1 -0
  221. package/lib/taon-seo-page/taon-seo-page.entity.d.ts +16 -0
  222. package/lib/taon-seo-page/taon-seo-page.entity.js +140 -0
  223. package/lib/taon-seo-page/taon-seo-page.entity.js.map +1 -0
  224. package/lib/taon-seo-page/taon-seo-page.kv.repository.d.ts +7 -0
  225. package/lib/taon-seo-page/taon-seo-page.kv.repository.js +24 -0
  226. package/lib/taon-seo-page/taon-seo-page.kv.repository.js.map +1 -0
  227. package/lib/taon-seo-page/taon-seo-page.middleware.d.ts +3 -0
  228. package/lib/taon-seo-page/taon-seo-page.middleware.js +21 -0
  229. package/lib/taon-seo-page/taon-seo-page.middleware.js.map +1 -0
  230. package/lib/taon-seo-page/taon-seo-page.models.d.ts +8 -0
  231. package/lib/taon-seo-page/taon-seo-page.models.js +12 -0
  232. package/lib/taon-seo-page/taon-seo-page.models.js.map +1 -0
  233. package/lib/taon-seo-page/taon-seo-page.provider.d.ts +12 -0
  234. package/lib/taon-seo-page/taon-seo-page.provider.js +32 -0
  235. package/lib/taon-seo-page/taon-seo-page.provider.js.map +1 -0
  236. package/lib/taon-seo-page/taon-seo-page.repository.d.ts +9 -0
  237. package/lib/taon-seo-page/taon-seo-page.repository.js +62 -0
  238. package/lib/taon-seo-page/taon-seo-page.repository.js.map +1 -0
  239. package/lib/taon-seo-page/taon-seo-page.subscriber.d.ts +6 -0
  240. package/lib/taon-seo-page/taon-seo-page.subscriber.js +28 -0
  241. package/lib/taon-seo-page/taon-seo-page.subscriber.js.map +1 -0
  242. package/lib/taon-seo-page/taon-seo-page.utils.d.ts +4 -0
  243. package/lib/taon-seo-page/taon-seo-page.utils.js +11 -0
  244. package/lib/taon-seo-page/taon-seo-page.utils.js.map +1 -0
  245. package/lib/taon-seo-page/taon-seo-page.validators.d.ts +2 -0
  246. package/lib/taon-seo-page/taon-seo-page.validators.js +3 -0
  247. package/lib/taon-seo-page/taon-seo-page.validators.js.map +1 -0
  248. package/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.d.ts +15 -0
  249. package/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.js +15 -0
  250. package/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.js.map +1 -0
  251. package/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  252. package/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.js +15 -0
  253. package/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.js.map +1 -0
  254. package/lib/taon-seo-settings/i18n/taon-seo-settings.translation.d.ts +4 -0
  255. package/lib/taon-seo-settings/i18n/taon-seo-settings.translation.js +5 -0
  256. package/lib/taon-seo-settings/i18n/taon-seo-settings.translation.js.map +1 -0
  257. package/lib/taon-seo-settings/index.d.ts +10 -0
  258. package/lib/taon-seo-settings/index.js +29 -0
  259. package/lib/taon-seo-settings/index.js.map +1 -0
  260. package/lib/taon-seo-settings/taon-seo-settings-backoffice/index.d.ts +1 -0
  261. package/lib/taon-seo-settings/taon-seo-settings-backoffice/index.js +5 -0
  262. package/lib/taon-seo-settings/taon-seo-settings-backoffice/index.js.map +1 -0
  263. package/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.d.ts +1 -0
  264. package/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.js +3 -0
  265. package/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.js.map +1 -0
  266. package/lib/taon-seo-settings/taon-seo-settings.abstract.context.d.ts +16 -0
  267. package/lib/taon-seo-settings/taon-seo-settings.abstract.context.js +28 -0
  268. package/lib/taon-seo-settings/taon-seo-settings.abstract.context.js.map +1 -0
  269. package/lib/taon-seo-settings/taon-seo-settings.constants.d.ts +6 -0
  270. package/lib/taon-seo-settings/taon-seo-settings.constants.js +24 -0
  271. package/lib/taon-seo-settings/taon-seo-settings.constants.js.map +1 -0
  272. package/lib/taon-seo-settings/taon-seo-settings.controller.d.ts +11 -0
  273. package/lib/taon-seo-settings/taon-seo-settings.controller.js +62 -0
  274. package/lib/taon-seo-settings/taon-seo-settings.controller.js.map +1 -0
  275. package/lib/taon-seo-settings/taon-seo-settings.entity.d.ts +14 -0
  276. package/lib/taon-seo-settings/taon-seo-settings.entity.js +122 -0
  277. package/lib/taon-seo-settings/taon-seo-settings.entity.js.map +1 -0
  278. package/lib/taon-seo-settings/taon-seo-settings.kv.repository.d.ts +7 -0
  279. package/lib/taon-seo-settings/taon-seo-settings.kv.repository.js +24 -0
  280. package/lib/taon-seo-settings/taon-seo-settings.kv.repository.js.map +1 -0
  281. package/lib/taon-seo-settings/taon-seo-settings.middleware.d.ts +3 -0
  282. package/lib/taon-seo-settings/taon-seo-settings.middleware.js +21 -0
  283. package/lib/taon-seo-settings/taon-seo-settings.middleware.js.map +1 -0
  284. package/lib/taon-seo-settings/taon-seo-settings.models.d.ts +8 -0
  285. package/lib/taon-seo-settings/taon-seo-settings.models.js +12 -0
  286. package/lib/taon-seo-settings/taon-seo-settings.models.js.map +1 -0
  287. package/lib/taon-seo-settings/taon-seo-settings.provider.d.ts +12 -0
  288. package/lib/taon-seo-settings/taon-seo-settings.provider.js +32 -0
  289. package/lib/taon-seo-settings/taon-seo-settings.provider.js.map +1 -0
  290. package/lib/taon-seo-settings/taon-seo-settings.repository.d.ts +8 -0
  291. package/lib/taon-seo-settings/taon-seo-settings.repository.js +48 -0
  292. package/lib/taon-seo-settings/taon-seo-settings.repository.js.map +1 -0
  293. package/lib/taon-seo-settings/taon-seo-settings.subscriber.d.ts +6 -0
  294. package/lib/taon-seo-settings/taon-seo-settings.subscriber.js +28 -0
  295. package/lib/taon-seo-settings/taon-seo-settings.subscriber.js.map +1 -0
  296. package/lib/taon-seo-settings/taon-seo-settings.utils.d.ts +4 -0
  297. package/lib/taon-seo-settings/taon-seo-settings.utils.js +11 -0
  298. package/lib/taon-seo-settings/taon-seo-settings.utils.js.map +1 -0
  299. package/lib/taon-seo-settings/taon-seo-settings.validators.d.ts +2 -0
  300. package/lib/taon-seo-settings/taon-seo-settings.validators.js +3 -0
  301. package/lib/taon-seo-settings/taon-seo-settings.validators.js.map +1 -0
  302. package/lib/taon-seo.abstract.context.d.ts +16 -0
  303. package/lib/taon-seo.abstract.context.js +22 -0
  304. package/lib/taon-seo.abstract.context.js.map +1 -0
  305. package/lib/taon-seo.provider.d.ts +6 -0
  306. package/lib/taon-seo.provider.js +31 -0
  307. package/lib/taon-seo.provider.js.map +1 -0
  308. package/lib/taon-seo.utils.d.ts +15 -0
  309. package/lib/taon-seo.utils.js +33 -0
  310. package/lib/taon-seo.utils.js.map +1 -0
  311. package/lib/taon-seo.validation.d.ts +7 -0
  312. package/lib/taon-seo.validation.js +127 -0
  313. package/lib/taon-seo.validation.js.map +1 -0
  314. package/lib-esm/app/baseline-backoffice/index.d.ts +0 -0
  315. package/lib-esm/app/baseline-backoffice/index.js +2 -0
  316. package/lib-esm/app/baseline-backoffice/index.js.map +1 -0
  317. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.component.d.ts +0 -0
  318. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.component.js +2 -0
  319. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.component.js.map +1 -0
  320. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.models.d.ts +0 -0
  321. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.models.js +2 -0
  322. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.models.js.map +1 -0
  323. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.routes.d.ts +0 -0
  324. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.routes.js +2 -0
  325. package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.routes.js.map +1 -0
  326. package/lib-esm/app/seo-example/index.d.ts +0 -0
  327. package/lib-esm/app/seo-example/index.js +2 -0
  328. package/lib-esm/app/seo-example/index.js.map +1 -0
  329. package/lib-esm/app/seo-example/seo-example.component.d.ts +0 -0
  330. package/lib-esm/app/seo-example/seo-example.component.js +2 -0
  331. package/lib-esm/app/seo-example/seo-example.component.js.map +1 -0
  332. package/lib-esm/app/seo-example/seo-example.models.d.ts +0 -0
  333. package/lib-esm/app/seo-example/seo-example.models.js +2 -0
  334. package/lib-esm/app/seo-example/seo-example.models.js.map +1 -0
  335. package/lib-esm/app/seo-example/seo-example.routes.d.ts +0 -0
  336. package/lib-esm/app/seo-example/seo-example.routes.js +2 -0
  337. package/lib-esm/app/seo-example/seo-example.routes.js.map +1 -0
  338. package/lib-esm/app.d.ts +0 -0
  339. package/lib-esm/app.electron.d.ts +0 -0
  340. package/lib-esm/app.electron.js +2 -0
  341. package/lib-esm/app.electron.js.map +1 -0
  342. package/lib-esm/app.hosts.d.ts +0 -0
  343. package/lib-esm/app.hosts.js +2 -0
  344. package/lib-esm/app.hosts.js.map +1 -0
  345. package/lib-esm/app.js +2 -0
  346. package/lib-esm/app.js.map +1 -0
  347. package/lib-esm/app.vscode.d.ts +0 -0
  348. package/lib-esm/app.vscode.js +2 -0
  349. package/lib-esm/app.vscode.js.map +1 -0
  350. package/lib-esm/cli.d.ts +1 -0
  351. package/lib-esm/cli.js +4 -0
  352. package/lib-esm/cli.js.map +1 -0
  353. package/lib-esm/i18n/app.ts.en-US.i18n.data.d.ts +0 -0
  354. package/lib-esm/i18n/app.ts.en-US.i18n.data.js +2 -0
  355. package/lib-esm/i18n/app.ts.en-US.i18n.data.js.map +1 -0
  356. package/lib-esm/i18n/app.ts.pl-PL.i18n.data.d.ts +0 -0
  357. package/lib-esm/i18n/app.ts.pl-PL.i18n.data.js +2 -0
  358. package/lib-esm/i18n/app.ts.pl-PL.i18n.data.js.map +1 -0
  359. package/lib-esm/i18n/src.translation.d.ts +0 -0
  360. package/lib-esm/i18n/src.translation.js +2 -0
  361. package/lib-esm/i18n/src.translation.js.map +1 -0
  362. package/lib-esm/index.d.ts +3 -0
  363. package/lib-esm/index.js +4 -0
  364. package/lib-esm/index.js.map +1 -0
  365. package/lib-esm/lib/build-info._auto-generated_.d.ts +24 -0
  366. package/lib-esm/lib/build-info._auto-generated_.js +27 -0
  367. package/lib-esm/lib/build-info._auto-generated_.js.map +1 -0
  368. package/lib-esm/lib/env/env.angular-node-app.d.ts +71 -0
  369. package/lib-esm/lib/env/env.angular-node-app.js +146 -0
  370. package/lib-esm/lib/env/env.angular-node-app.js.map +1 -0
  371. package/lib-esm/lib/env/env.docs-webapp.d.ts +71 -0
  372. package/lib-esm/lib/env/env.docs-webapp.js +146 -0
  373. package/lib-esm/lib/env/env.docs-webapp.js.map +1 -0
  374. package/lib-esm/lib/env/env.electron-app.d.ts +71 -0
  375. package/lib-esm/lib/env/env.electron-app.js +146 -0
  376. package/lib-esm/lib/env/env.electron-app.js.map +1 -0
  377. package/lib-esm/lib/env/env.mobile-app.d.ts +71 -0
  378. package/lib-esm/lib/env/env.mobile-app.js +146 -0
  379. package/lib-esm/lib/env/env.mobile-app.js.map +1 -0
  380. package/lib-esm/lib/env/env.npm-lib-and-cli-tool.d.ts +71 -0
  381. package/lib-esm/lib/env/env.npm-lib-and-cli-tool.js +146 -0
  382. package/lib-esm/lib/env/env.npm-lib-and-cli-tool.js.map +1 -0
  383. package/lib-esm/lib/env/env.vscode-plugin.d.ts +71 -0
  384. package/lib-esm/lib/env/env.vscode-plugin.js +146 -0
  385. package/lib-esm/lib/env/env.vscode-plugin.js.map +1 -0
  386. package/lib-esm/lib/env/index.d.ts +6 -0
  387. package/lib-esm/lib/env/index.js +7 -0
  388. package/lib-esm/lib/env/index.js.map +1 -0
  389. package/lib-esm/lib/i18n/lib.translation.d.ts +4 -0
  390. package/lib-esm/lib/i18n/lib.translation.js +4 -0
  391. package/lib-esm/lib/i18n/lib.translation.js.map +1 -0
  392. package/lib-esm/lib/i18n/my-organization-proj.ts.en-US.i18n.data.d.ts +15 -0
  393. package/lib-esm/lib/i18n/my-organization-proj.ts.en-US.i18n.data.js +13 -0
  394. package/lib-esm/lib/i18n/my-organization-proj.ts.en-US.i18n.data.js.map +1 -0
  395. package/lib-esm/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts +16 -0
  396. package/lib-esm/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js +14 -0
  397. package/lib-esm/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js.map +1 -0
  398. package/lib-esm/lib/index._auto-generated_.d.ts +38 -0
  399. package/lib-esm/lib/index._auto-generated_.js +58 -0
  400. package/lib-esm/lib/index._auto-generated_.js.map +1 -0
  401. package/lib-esm/lib/index.d.ts +11 -0
  402. package/lib-esm/lib/index.js +13 -0
  403. package/lib-esm/lib/index.js.map +1 -0
  404. package/lib-esm/lib/migrations/1791132517216_initial.d.ts +7 -0
  405. package/lib-esm/lib/migrations/1791132517216_initial.js +65 -0
  406. package/lib-esm/lib/migrations/1791132517216_initial.js.map +1 -0
  407. package/lib-esm/lib/migrations/1791655200000_seo_configuration.d.ts +6 -0
  408. package/lib-esm/lib/migrations/1791655200000_seo_configuration.js +64 -0
  409. package/lib-esm/lib/migrations/1791655200000_seo_configuration.js.map +1 -0
  410. package/lib-esm/lib/migrations/index.d.ts +5 -0
  411. package/lib-esm/lib/migrations/index.js +7 -0
  412. package/lib-esm/lib/migrations/index.js.map +1 -0
  413. package/lib-esm/lib/migrations/migrations_index._auto-generated_.d.ts +6 -0
  414. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js +10 -0
  415. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js.map +1 -0
  416. package/lib-esm/lib/my-organization-proj.d.ts +1 -0
  417. package/lib-esm/lib/my-organization-proj.js +6 -0
  418. package/lib-esm/lib/my-organization-proj.js.map +1 -0
  419. package/lib-esm/lib/start-cli.d.ts +7 -0
  420. package/lib-esm/lib/start-cli.js +91 -0
  421. package/lib-esm/lib/start-cli.js.map +1 -0
  422. package/lib-esm/lib/taon-seo-backoffice/index.d.ts +1 -0
  423. package/lib-esm/lib/taon-seo-backoffice/index.js +2 -0
  424. package/lib-esm/lib/taon-seo-backoffice/index.js.map +1 -0
  425. package/lib-esm/lib/taon-seo-backoffice/taon-seo-backoffice.models.d.ts +1 -0
  426. package/lib-esm/lib/taon-seo-backoffice/taon-seo-backoffice.models.js +2 -0
  427. package/lib-esm/lib/taon-seo-backoffice/taon-seo-backoffice.models.js.map +1 -0
  428. package/lib-esm/lib/taon-seo-image.controller.d.ts +14 -0
  429. package/lib-esm/lib/taon-seo-image.controller.js +70 -0
  430. package/lib-esm/lib/taon-seo-image.controller.js.map +1 -0
  431. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.d.ts +15 -0
  432. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.js +13 -0
  433. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.js.map +1 -0
  434. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  435. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.js +13 -0
  436. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.js.map +1 -0
  437. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.translation.d.ts +4 -0
  438. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.translation.js +4 -0
  439. package/lib-esm/lib/taon-seo-page/i18n/taon-seo-page.translation.js.map +1 -0
  440. package/lib-esm/lib/taon-seo-page/index.d.ts +10 -0
  441. package/lib-esm/lib/taon-seo-page/index.js +13 -0
  442. package/lib-esm/lib/taon-seo-page/index.js.map +1 -0
  443. package/lib-esm/lib/taon-seo-page/taon-seo-page-backoffice/index.d.ts +1 -0
  444. package/lib-esm/lib/taon-seo-page/taon-seo-page-backoffice/index.js +2 -0
  445. package/lib-esm/lib/taon-seo-page/taon-seo-page-backoffice/index.js.map +1 -0
  446. package/lib-esm/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.d.ts +1 -0
  447. package/lib-esm/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.js +2 -0
  448. package/lib-esm/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.js.map +1 -0
  449. package/lib-esm/lib/taon-seo-page/taon-seo-page.abstract.context.d.ts +16 -0
  450. package/lib-esm/lib/taon-seo-page/taon-seo-page.abstract.context.js +25 -0
  451. package/lib-esm/lib/taon-seo-page/taon-seo-page.abstract.context.js.map +1 -0
  452. package/lib-esm/lib/taon-seo-page/taon-seo-page.constants.d.ts +6 -0
  453. package/lib-esm/lib/taon-seo-page/taon-seo-page.constants.js +22 -0
  454. package/lib-esm/lib/taon-seo-page/taon-seo-page.constants.js.map +1 -0
  455. package/lib-esm/lib/taon-seo-page/taon-seo-page.controller.d.ts +13 -0
  456. package/lib-esm/lib/taon-seo-page/taon-seo-page.controller.js +81 -0
  457. package/lib-esm/lib/taon-seo-page/taon-seo-page.controller.js.map +1 -0
  458. package/lib-esm/lib/taon-seo-page/taon-seo-page.entity.d.ts +16 -0
  459. package/lib-esm/lib/taon-seo-page/taon-seo-page.entity.js +128 -0
  460. package/lib-esm/lib/taon-seo-page/taon-seo-page.entity.js.map +1 -0
  461. package/lib-esm/lib/taon-seo-page/taon-seo-page.kv.repository.d.ts +7 -0
  462. package/lib-esm/lib/taon-seo-page/taon-seo-page.kv.repository.js +15 -0
  463. package/lib-esm/lib/taon-seo-page/taon-seo-page.kv.repository.js.map +1 -0
  464. package/lib-esm/lib/taon-seo-page/taon-seo-page.middleware.d.ts +3 -0
  465. package/lib-esm/lib/taon-seo-page/taon-seo-page.middleware.js +12 -0
  466. package/lib-esm/lib/taon-seo-page/taon-seo-page.middleware.js.map +1 -0
  467. package/lib-esm/lib/taon-seo-page/taon-seo-page.models.d.ts +8 -0
  468. package/lib-esm/lib/taon-seo-page/taon-seo-page.models.js +9 -0
  469. package/lib-esm/lib/taon-seo-page/taon-seo-page.models.js.map +1 -0
  470. package/lib-esm/lib/taon-seo-page/taon-seo-page.provider.d.ts +12 -0
  471. package/lib-esm/lib/taon-seo-page/taon-seo-page.provider.js +22 -0
  472. package/lib-esm/lib/taon-seo-page/taon-seo-page.provider.js.map +1 -0
  473. package/lib-esm/lib/taon-seo-page/taon-seo-page.repository.d.ts +9 -0
  474. package/lib-esm/lib/taon-seo-page/taon-seo-page.repository.js +53 -0
  475. package/lib-esm/lib/taon-seo-page/taon-seo-page.repository.js.map +1 -0
  476. package/lib-esm/lib/taon-seo-page/taon-seo-page.subscriber.d.ts +6 -0
  477. package/lib-esm/lib/taon-seo-page/taon-seo-page.subscriber.js +19 -0
  478. package/lib-esm/lib/taon-seo-page/taon-seo-page.subscriber.js.map +1 -0
  479. package/lib-esm/lib/taon-seo-page/taon-seo-page.utils.d.ts +4 -0
  480. package/lib-esm/lib/taon-seo-page/taon-seo-page.utils.js +8 -0
  481. package/lib-esm/lib/taon-seo-page/taon-seo-page.utils.js.map +1 -0
  482. package/lib-esm/lib/taon-seo-page/taon-seo-page.validators.d.ts +2 -0
  483. package/lib-esm/lib/taon-seo-page/taon-seo-page.validators.js +2 -0
  484. package/lib-esm/lib/taon-seo-page/taon-seo-page.validators.js.map +1 -0
  485. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.d.ts +15 -0
  486. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.js +13 -0
  487. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.js.map +1 -0
  488. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  489. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.js +13 -0
  490. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.js.map +1 -0
  491. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.translation.d.ts +4 -0
  492. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.translation.js +4 -0
  493. package/lib-esm/lib/taon-seo-settings/i18n/taon-seo-settings.translation.js.map +1 -0
  494. package/lib-esm/lib/taon-seo-settings/index.d.ts +10 -0
  495. package/lib-esm/lib/taon-seo-settings/index.js +13 -0
  496. package/lib-esm/lib/taon-seo-settings/index.js.map +1 -0
  497. package/lib-esm/lib/taon-seo-settings/taon-seo-settings-backoffice/index.d.ts +1 -0
  498. package/lib-esm/lib/taon-seo-settings/taon-seo-settings-backoffice/index.js +2 -0
  499. package/lib-esm/lib/taon-seo-settings/taon-seo-settings-backoffice/index.js.map +1 -0
  500. package/lib-esm/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.d.ts +1 -0
  501. package/lib-esm/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.js +2 -0
  502. package/lib-esm/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.js.map +1 -0
  503. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.abstract.context.d.ts +16 -0
  504. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.abstract.context.js +25 -0
  505. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.abstract.context.js.map +1 -0
  506. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.constants.d.ts +6 -0
  507. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.constants.js +21 -0
  508. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.constants.js.map +1 -0
  509. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.controller.d.ts +11 -0
  510. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.controller.js +47 -0
  511. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.controller.js.map +1 -0
  512. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.entity.d.ts +14 -0
  513. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.entity.js +110 -0
  514. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.entity.js.map +1 -0
  515. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.kv.repository.d.ts +7 -0
  516. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.kv.repository.js +15 -0
  517. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.kv.repository.js.map +1 -0
  518. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.middleware.d.ts +3 -0
  519. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.middleware.js +12 -0
  520. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.middleware.js.map +1 -0
  521. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.models.d.ts +8 -0
  522. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.models.js +9 -0
  523. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.models.js.map +1 -0
  524. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.provider.d.ts +12 -0
  525. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.provider.js +22 -0
  526. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.provider.js.map +1 -0
  527. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.repository.d.ts +8 -0
  528. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.repository.js +39 -0
  529. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.repository.js.map +1 -0
  530. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.subscriber.d.ts +6 -0
  531. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.subscriber.js +19 -0
  532. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.subscriber.js.map +1 -0
  533. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.utils.d.ts +4 -0
  534. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.utils.js +8 -0
  535. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.utils.js.map +1 -0
  536. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.validators.d.ts +2 -0
  537. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.validators.js +2 -0
  538. package/lib-esm/lib/taon-seo-settings/taon-seo-settings.validators.js.map +1 -0
  539. package/lib-esm/lib/taon-seo.abstract.context.d.ts +16 -0
  540. package/lib-esm/lib/taon-seo.abstract.context.js +19 -0
  541. package/lib-esm/lib/taon-seo.abstract.context.js.map +1 -0
  542. package/lib-esm/lib/taon-seo.provider.d.ts +6 -0
  543. package/lib-esm/lib/taon-seo.provider.js +22 -0
  544. package/lib-esm/lib/taon-seo.provider.js.map +1 -0
  545. package/lib-esm/lib/taon-seo.utils.d.ts +15 -0
  546. package/lib-esm/lib/taon-seo.utils.js +28 -0
  547. package/lib-esm/lib/taon-seo.utils.js.map +1 -0
  548. package/lib-esm/lib/taon-seo.validation.d.ts +7 -0
  549. package/lib-esm/lib/taon-seo.validation.js +120 -0
  550. package/lib-esm/lib/taon-seo.validation.js.map +1 -0
  551. package/lib-prod/build-info._auto-generated_.d.ts +24 -0
  552. package/lib-prod/build-info._auto-generated_.js +27 -0
  553. package/lib-prod/build-info._auto-generated_.js.map +1 -0
  554. package/lib-prod/env/env.angular-node-app.d.ts +71 -0
  555. package/lib-prod/env/env.angular-node-app.js +146 -0
  556. package/lib-prod/env/env.angular-node-app.js.map +1 -0
  557. package/lib-prod/env/env.docs-webapp.d.ts +71 -0
  558. package/lib-prod/env/env.docs-webapp.js +146 -0
  559. package/lib-prod/env/env.docs-webapp.js.map +1 -0
  560. package/lib-prod/env/env.electron-app.d.ts +71 -0
  561. package/lib-prod/env/env.electron-app.js +146 -0
  562. package/lib-prod/env/env.electron-app.js.map +1 -0
  563. package/lib-prod/env/env.mobile-app.d.ts +71 -0
  564. package/lib-prod/env/env.mobile-app.js +146 -0
  565. package/lib-prod/env/env.mobile-app.js.map +1 -0
  566. package/lib-prod/env/env.npm-lib-and-cli-tool.d.ts +71 -0
  567. package/lib-prod/env/env.npm-lib-and-cli-tool.js +146 -0
  568. package/lib-prod/env/env.npm-lib-and-cli-tool.js.map +1 -0
  569. package/lib-prod/env/env.vscode-plugin.d.ts +71 -0
  570. package/lib-prod/env/env.vscode-plugin.js +146 -0
  571. package/lib-prod/env/env.vscode-plugin.js.map +1 -0
  572. package/lib-prod/env/index.d.ts +6 -0
  573. package/lib-prod/env/index.js +7 -0
  574. package/lib-prod/env/index.js.map +1 -0
  575. package/lib-prod/i18n/lib.translation.d.ts +4 -0
  576. package/lib-prod/i18n/lib.translation.js +4 -0
  577. package/lib-prod/i18n/lib.translation.js.map +1 -0
  578. package/lib-prod/i18n/my-organization-proj.ts.en-US.i18n.data.d.ts +15 -0
  579. package/lib-prod/i18n/my-organization-proj.ts.en-US.i18n.data.js +13 -0
  580. package/lib-prod/i18n/my-organization-proj.ts.en-US.i18n.data.js.map +1 -0
  581. package/lib-prod/i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts +16 -0
  582. package/lib-prod/i18n/my-organization-proj.ts.pl-PL.i18n.data.js +14 -0
  583. package/lib-prod/i18n/my-organization-proj.ts.pl-PL.i18n.data.js.map +1 -0
  584. package/lib-prod/index._auto-generated_.d.ts +38 -0
  585. package/lib-prod/index._auto-generated_.js +58 -0
  586. package/lib-prod/index._auto-generated_.js.map +1 -0
  587. package/lib-prod/index.d.ts +11 -0
  588. package/lib-prod/index.js +13 -0
  589. package/lib-prod/index.js.map +1 -0
  590. package/lib-prod/migrations/1791132517216_initial.d.ts +7 -0
  591. package/lib-prod/migrations/1791132517216_initial.js +65 -0
  592. package/lib-prod/migrations/1791132517216_initial.js.map +1 -0
  593. package/lib-prod/migrations/1791655200000_seo_configuration.d.ts +6 -0
  594. package/lib-prod/migrations/1791655200000_seo_configuration.js +64 -0
  595. package/lib-prod/migrations/1791655200000_seo_configuration.js.map +1 -0
  596. package/lib-prod/migrations/index.d.ts +5 -0
  597. package/lib-prod/migrations/index.js +7 -0
  598. package/lib-prod/migrations/index.js.map +1 -0
  599. package/lib-prod/migrations/migrations_index._auto-generated_.d.ts +6 -0
  600. package/lib-prod/migrations/migrations_index._auto-generated_.js +10 -0
  601. package/lib-prod/migrations/migrations_index._auto-generated_.js.map +1 -0
  602. package/lib-prod/my-organization-proj.d.ts +1 -0
  603. package/lib-prod/my-organization-proj.js +6 -0
  604. package/lib-prod/my-organization-proj.js.map +1 -0
  605. package/lib-prod/package.json +4 -0
  606. package/lib-prod/start-cli.d.ts +7 -0
  607. package/lib-prod/start-cli.js +91 -0
  608. package/lib-prod/start-cli.js.map +1 -0
  609. package/lib-prod/taon-seo-backoffice/index.d.ts +1 -0
  610. package/lib-prod/taon-seo-backoffice/index.js +2 -0
  611. package/lib-prod/taon-seo-backoffice/index.js.map +1 -0
  612. package/lib-prod/taon-seo-backoffice/taon-seo-backoffice.models.d.ts +0 -0
  613. package/lib-prod/taon-seo-backoffice/taon-seo-backoffice.models.js +3 -0
  614. package/lib-prod/taon-seo-backoffice/taon-seo-backoffice.models.js.map +1 -0
  615. package/lib-prod/taon-seo-image.controller.d.ts +14 -0
  616. package/lib-prod/taon-seo-image.controller.js +70 -0
  617. package/lib-prod/taon-seo-image.controller.js.map +1 -0
  618. package/lib-prod/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.d.ts +15 -0
  619. package/lib-prod/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.js +13 -0
  620. package/lib-prod/taon-seo-page/i18n/taon-seo-page.constants.ts.en-US.i18n.data.js.map +1 -0
  621. package/lib-prod/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  622. package/lib-prod/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.js +13 -0
  623. package/lib-prod/taon-seo-page/i18n/taon-seo-page.constants.ts.pl-PL.i18n.data.js.map +1 -0
  624. package/lib-prod/taon-seo-page/i18n/taon-seo-page.translation.d.ts +4 -0
  625. package/lib-prod/taon-seo-page/i18n/taon-seo-page.translation.js +4 -0
  626. package/lib-prod/taon-seo-page/i18n/taon-seo-page.translation.js.map +1 -0
  627. package/lib-prod/taon-seo-page/index.d.ts +10 -0
  628. package/lib-prod/taon-seo-page/index.js +13 -0
  629. package/lib-prod/taon-seo-page/index.js.map +1 -0
  630. package/lib-prod/taon-seo-page/taon-seo-page-backoffice/index.d.ts +1 -0
  631. package/lib-prod/taon-seo-page/taon-seo-page-backoffice/index.js +2 -0
  632. package/lib-prod/taon-seo-page/taon-seo-page-backoffice/index.js.map +1 -0
  633. package/lib-prod/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.d.ts +0 -0
  634. package/lib-prod/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.js +3 -0
  635. package/lib-prod/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.models.js.map +1 -0
  636. package/lib-prod/taon-seo-page/taon-seo-page.abstract.context.d.ts +16 -0
  637. package/lib-prod/taon-seo-page/taon-seo-page.abstract.context.js +25 -0
  638. package/lib-prod/taon-seo-page/taon-seo-page.abstract.context.js.map +1 -0
  639. package/lib-prod/taon-seo-page/taon-seo-page.constants.d.ts +6 -0
  640. package/lib-prod/taon-seo-page/taon-seo-page.constants.js +22 -0
  641. package/lib-prod/taon-seo-page/taon-seo-page.constants.js.map +1 -0
  642. package/lib-prod/taon-seo-page/taon-seo-page.controller.d.ts +13 -0
  643. package/lib-prod/taon-seo-page/taon-seo-page.controller.js +81 -0
  644. package/lib-prod/taon-seo-page/taon-seo-page.controller.js.map +1 -0
  645. package/lib-prod/taon-seo-page/taon-seo-page.entity.d.ts +16 -0
  646. package/lib-prod/taon-seo-page/taon-seo-page.entity.js +128 -0
  647. package/lib-prod/taon-seo-page/taon-seo-page.entity.js.map +1 -0
  648. package/lib-prod/taon-seo-page/taon-seo-page.kv.repository.d.ts +7 -0
  649. package/lib-prod/taon-seo-page/taon-seo-page.kv.repository.js +15 -0
  650. package/lib-prod/taon-seo-page/taon-seo-page.kv.repository.js.map +1 -0
  651. package/lib-prod/taon-seo-page/taon-seo-page.middleware.d.ts +3 -0
  652. package/lib-prod/taon-seo-page/taon-seo-page.middleware.js +12 -0
  653. package/lib-prod/taon-seo-page/taon-seo-page.middleware.js.map +1 -0
  654. package/lib-prod/taon-seo-page/taon-seo-page.models.d.ts +6 -0
  655. package/lib-prod/taon-seo-page/taon-seo-page.models.js +8 -0
  656. package/lib-prod/taon-seo-page/taon-seo-page.models.js.map +1 -0
  657. package/lib-prod/taon-seo-page/taon-seo-page.provider.d.ts +12 -0
  658. package/lib-prod/taon-seo-page/taon-seo-page.provider.js +22 -0
  659. package/lib-prod/taon-seo-page/taon-seo-page.provider.js.map +1 -0
  660. package/lib-prod/taon-seo-page/taon-seo-page.repository.d.ts +9 -0
  661. package/lib-prod/taon-seo-page/taon-seo-page.repository.js +53 -0
  662. package/lib-prod/taon-seo-page/taon-seo-page.repository.js.map +1 -0
  663. package/lib-prod/taon-seo-page/taon-seo-page.subscriber.d.ts +6 -0
  664. package/lib-prod/taon-seo-page/taon-seo-page.subscriber.js +19 -0
  665. package/lib-prod/taon-seo-page/taon-seo-page.subscriber.js.map +1 -0
  666. package/lib-prod/taon-seo-page/taon-seo-page.utils.d.ts +2 -0
  667. package/lib-prod/taon-seo-page/taon-seo-page.utils.js +6 -0
  668. package/lib-prod/taon-seo-page/taon-seo-page.utils.js.map +1 -0
  669. package/lib-prod/taon-seo-page/taon-seo-page.validators.d.ts +1 -0
  670. package/lib-prod/taon-seo-page/taon-seo-page.validators.js +22 -0
  671. package/lib-prod/taon-seo-page/taon-seo-page.validators.js.map +1 -0
  672. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.d.ts +15 -0
  673. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.js +13 -0
  674. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.constants.ts.en-US.i18n.data.js.map +1 -0
  675. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  676. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.js +13 -0
  677. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.constants.ts.pl-PL.i18n.data.js.map +1 -0
  678. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.translation.d.ts +4 -0
  679. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.translation.js +4 -0
  680. package/lib-prod/taon-seo-settings/i18n/taon-seo-settings.translation.js.map +1 -0
  681. package/lib-prod/taon-seo-settings/index.d.ts +10 -0
  682. package/lib-prod/taon-seo-settings/index.js +13 -0
  683. package/lib-prod/taon-seo-settings/index.js.map +1 -0
  684. package/lib-prod/taon-seo-settings/taon-seo-settings-backoffice/index.d.ts +1 -0
  685. package/lib-prod/taon-seo-settings/taon-seo-settings-backoffice/index.js +2 -0
  686. package/lib-prod/taon-seo-settings/taon-seo-settings-backoffice/index.js.map +1 -0
  687. package/lib-prod/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.d.ts +0 -0
  688. package/lib-prod/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.js +3 -0
  689. package/lib-prod/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.models.js.map +1 -0
  690. package/lib-prod/taon-seo-settings/taon-seo-settings.abstract.context.d.ts +16 -0
  691. package/lib-prod/taon-seo-settings/taon-seo-settings.abstract.context.js +25 -0
  692. package/lib-prod/taon-seo-settings/taon-seo-settings.abstract.context.js.map +1 -0
  693. package/lib-prod/taon-seo-settings/taon-seo-settings.constants.d.ts +6 -0
  694. package/lib-prod/taon-seo-settings/taon-seo-settings.constants.js +21 -0
  695. package/lib-prod/taon-seo-settings/taon-seo-settings.constants.js.map +1 -0
  696. package/lib-prod/taon-seo-settings/taon-seo-settings.controller.d.ts +11 -0
  697. package/lib-prod/taon-seo-settings/taon-seo-settings.controller.js +47 -0
  698. package/lib-prod/taon-seo-settings/taon-seo-settings.controller.js.map +1 -0
  699. package/lib-prod/taon-seo-settings/taon-seo-settings.entity.d.ts +14 -0
  700. package/lib-prod/taon-seo-settings/taon-seo-settings.entity.js +110 -0
  701. package/lib-prod/taon-seo-settings/taon-seo-settings.entity.js.map +1 -0
  702. package/lib-prod/taon-seo-settings/taon-seo-settings.kv.repository.d.ts +7 -0
  703. package/lib-prod/taon-seo-settings/taon-seo-settings.kv.repository.js +15 -0
  704. package/lib-prod/taon-seo-settings/taon-seo-settings.kv.repository.js.map +1 -0
  705. package/lib-prod/taon-seo-settings/taon-seo-settings.middleware.d.ts +3 -0
  706. package/lib-prod/taon-seo-settings/taon-seo-settings.middleware.js +12 -0
  707. package/lib-prod/taon-seo-settings/taon-seo-settings.middleware.js.map +1 -0
  708. package/lib-prod/taon-seo-settings/taon-seo-settings.models.d.ts +6 -0
  709. package/lib-prod/taon-seo-settings/taon-seo-settings.models.js +8 -0
  710. package/lib-prod/taon-seo-settings/taon-seo-settings.models.js.map +1 -0
  711. package/lib-prod/taon-seo-settings/taon-seo-settings.provider.d.ts +12 -0
  712. package/lib-prod/taon-seo-settings/taon-seo-settings.provider.js +22 -0
  713. package/lib-prod/taon-seo-settings/taon-seo-settings.provider.js.map +1 -0
  714. package/lib-prod/taon-seo-settings/taon-seo-settings.repository.d.ts +8 -0
  715. package/lib-prod/taon-seo-settings/taon-seo-settings.repository.js +39 -0
  716. package/lib-prod/taon-seo-settings/taon-seo-settings.repository.js.map +1 -0
  717. package/lib-prod/taon-seo-settings/taon-seo-settings.subscriber.d.ts +6 -0
  718. package/lib-prod/taon-seo-settings/taon-seo-settings.subscriber.js +19 -0
  719. package/lib-prod/taon-seo-settings/taon-seo-settings.subscriber.js.map +1 -0
  720. package/lib-prod/taon-seo-settings/taon-seo-settings.utils.d.ts +2 -0
  721. package/lib-prod/taon-seo-settings/taon-seo-settings.utils.js +6 -0
  722. package/lib-prod/taon-seo-settings/taon-seo-settings.utils.js.map +1 -0
  723. package/lib-prod/taon-seo-settings/taon-seo-settings.validators.d.ts +1 -0
  724. package/lib-prod/taon-seo-settings/taon-seo-settings.validators.js +22 -0
  725. package/lib-prod/taon-seo-settings/taon-seo-settings.validators.js.map +1 -0
  726. package/lib-prod/taon-seo.abstract.context.d.ts +16 -0
  727. package/lib-prod/taon-seo.abstract.context.js +19 -0
  728. package/lib-prod/taon-seo.abstract.context.js.map +1 -0
  729. package/lib-prod/taon-seo.provider.d.ts +6 -0
  730. package/lib-prod/taon-seo.provider.js +22 -0
  731. package/lib-prod/taon-seo.provider.js.map +1 -0
  732. package/lib-prod/taon-seo.utils.d.ts +15 -0
  733. package/lib-prod/taon-seo.utils.js +28 -0
  734. package/lib-prod/taon-seo.utils.js.map +1 -0
  735. package/lib-prod/taon-seo.validation.d.ts +7 -0
  736. package/lib-prod/taon-seo.validation.js +120 -0
  737. package/lib-prod/taon-seo.validation.js.map +1 -0
  738. package/lib-prod.re-export.json +1 -0
  739. package/lib-prod.split-namespaces.json +22 -0
  740. package/package.json +40 -4
  741. package/scss/app/baseline-backoffice/taon-baseline-backoffice.component.scss +3 -0
  742. package/scss/app/seo-example/seo-example.component.scss +3 -0
  743. package/scss/global.scss +94 -0
  744. package/scss/index.scss +2 -0
  745. package/scss/lib/index.scss +1 -0
  746. package/scss/lib/taon-seo-backoffice/taon-seo-backoffice.component.scss +3 -0
  747. package/scss/lib/taon-seo-page/taon-seo-page-backoffice/taon-seo-page-backoffice.component.scss +4 -0
  748. package/scss/lib/taon-seo-page/taon-seo-page-edit-dialog/taon-seo-page-edit-dialog.component.scss +7 -0
  749. package/scss/lib/taon-seo-settings/taon-seo-settings-backoffice/taon-seo-settings-backoffice.component.scss +13 -0
  750. package/scss/vars.scss +7 -0
  751. package/src.d.ts +6 -0
  752. package/src.js +4 -0
  753. package/websql/README.md +24 -0
  754. package/websql/fesm2022/seo-websql-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +15 -0
  755. package/websql/fesm2022/seo-websql-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +1 -0
  756. package/websql/fesm2022/seo-websql-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +16 -0
  757. package/websql/fesm2022/seo-websql-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +1 -0
  758. package/websql/fesm2022/seo-websql-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs +15 -0
  759. package/websql/fesm2022/seo-websql-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs.map +1 -0
  760. package/websql/fesm2022/seo-websql-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs +15 -0
  761. package/websql/fesm2022/seo-websql-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs.map +1 -0
  762. package/websql/fesm2022/seo-websql-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs +15 -0
  763. package/websql/fesm2022/seo-websql-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs.map +1 -0
  764. package/websql/fesm2022/seo-websql-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs +15 -0
  765. package/websql/fesm2022/seo-websql-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs.map +1 -0
  766. package/websql/fesm2022/seo-websql.mjs +2789 -0
  767. package/websql/fesm2022/seo-websql.mjs.map +1 -0
  768. package/websql/package.json +23 -0
  769. package/websql/types/seo-websql.d.ts +971 -0
  770. package/websql-prod/README.md +24 -0
  771. package/websql-prod/fesm2022/seo-websql-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +15 -0
  772. package/websql-prod/fesm2022/seo-websql-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +1 -0
  773. package/websql-prod/fesm2022/seo-websql-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +16 -0
  774. package/websql-prod/fesm2022/seo-websql-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +1 -0
  775. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs +15 -0
  776. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs.map +1 -0
  777. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs +15 -0
  778. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs.map +1 -0
  779. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs +15 -0
  780. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs.map +1 -0
  781. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs +15 -0
  782. package/websql-prod/fesm2022/seo-websql-prod-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs.map +1 -0
  783. package/websql-prod/fesm2022/seo-websql-prod.mjs +2790 -0
  784. package/websql-prod/fesm2022/seo-websql-prod.mjs.map +1 -0
  785. package/websql-prod/package.json +23 -0
  786. package/websql-prod/types/seo-websql-prod.d.ts +953 -0
  787. package/websql-prod.re-export.json +1 -0
  788. package/websql-prod.split-namespaces.json +30 -0
  789. package/README.md +0 -3
@@ -0,0 +1,2789 @@
1
+ import { __decorate, __metadata, __param } from 'tslib';
2
+ import { TaonBaseEntity, PrimaryGeneratedColumn, Column, TaonEntity, PrimaryColumn, TaonBaseMigration, TaonMigration, TaonBaseProvider, TaonProvider, TaonBaseStorageController, TaonController, TaonBaseAngularService, Taon, TaonBaseRepository, TaonRepository, TaonBaseCrudController, GET, Query, POST, Body, PUT, DELETE, TaonBaseClass, createContext, TaonBaseContext, TaonBaseKvRepository, TaonBaseMiddleware, TaonMiddleware, TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/websql';
3
+ import { Table } from 'taon-typeorm/websql';
4
+ import { Translation } from '@taon-dev/i18n/websql';
5
+ import { MyAppRole, MyAppPermission, MyAppGroup } from '@taon-dev/cms/websql';
6
+ import { TaonAuthContextRepository, TaonSessionRepository, TaonSessionAbstractContext } from '@taon-dev/session/websql';
7
+ import { decodeEnv, UtilsJson } from 'tnp-core/websql';
8
+ import { BaseCommandLineFeature } from 'tnp-helpers/websql';
9
+ import * as i0 from '@angular/core';
10
+ import { Injectable, signal, inject, DestroyRef, APP_BOOTSTRAP_LISTENER, ChangeDetectionStrategy, Component, model, ViewChild } from '@angular/core';
11
+ import { map, filter, startWith, distinctUntilChanged, switchMap, forkJoin, catchError, of, EMPTY, finalize } from 'rxjs';
12
+ import { DOCUMENT, AsyncPipe } from '@angular/common';
13
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
14
+ import { Meta, Title } from '@angular/platform-browser';
15
+ import { Router, NavigationEnd, PRIMARY_OUTLET, RouterOutlet } from '@angular/router';
16
+ import { adminLazyRoute, TaonConfirmDialogComponent, TaonDatatableComponent } from '@taon-dev/ui/websql';
17
+ import * as i2 from '@angular/material/button';
18
+ import { MatButtonModule } from '@angular/material/button';
19
+ import * as i4 from '@angular/material/dialog';
20
+ import { MAT_DIALOG_DATA, MatDialogRef, MatDialogModule, MatDialog } from '@angular/material/dialog';
21
+ import * as i1 from '@angular/forms';
22
+ import { FormGroup, FormControl, Validators, ReactiveFormsModule } from '@angular/forms';
23
+ import * as i3 from '@angular/material/checkbox';
24
+ import { MatCheckboxModule } from '@angular/material/checkbox';
25
+ import * as i5 from '@angular/material/form-field';
26
+ import { MatFormFieldModule } from '@angular/material/form-field';
27
+ import * as i6 from '@angular/material/input';
28
+ import { MatInputModule } from '@angular/material/input';
29
+
30
+ let TaonSeoPageEntity = class TaonSeoPageEntity extends TaonBaseEntity {
31
+ };
32
+ __decorate([
33
+ PrimaryGeneratedColumn()
34
+ //#endregion
35
+ ,
36
+ __metadata("design:type", Number)
37
+ ], TaonSeoPageEntity.prototype, "id", void 0);
38
+ __decorate([
39
+ Column({ type: 'varchar', unique: true })
40
+ //#endregion
41
+ ,
42
+ __metadata("design:type", String)
43
+ ], TaonSeoPageEntity.prototype, "path", void 0);
44
+ __decorate([
45
+ Column({ type: 'varchar', nullable: true })
46
+ //#endregion
47
+ ,
48
+ __metadata("design:type", String)
49
+ ], TaonSeoPageEntity.prototype, "title", void 0);
50
+ __decorate([
51
+ Column({ type: 'text', nullable: true })
52
+ //#endregion
53
+ ,
54
+ __metadata("design:type", String)
55
+ ], TaonSeoPageEntity.prototype, "description", void 0);
56
+ __decorate([
57
+ Column({ type: 'text', nullable: true })
58
+ //#endregion
59
+ ,
60
+ __metadata("design:type", String)
61
+ ], TaonSeoPageEntity.prototype, "keywords", void 0);
62
+ __decorate([
63
+ Column({ type: 'varchar', nullable: true })
64
+ //#endregion
65
+ ,
66
+ __metadata("design:type", String)
67
+ ], TaonSeoPageEntity.prototype, "canonicalUrl", void 0);
68
+ __decorate([
69
+ Column({ type: 'varchar', nullable: true })
70
+ //#endregion
71
+ ,
72
+ __metadata("design:type", String)
73
+ ], TaonSeoPageEntity.prototype, "ogTitle", void 0);
74
+ __decorate([
75
+ Column({ type: 'text', nullable: true })
76
+ //#endregion
77
+ ,
78
+ __metadata("design:type", String)
79
+ ], TaonSeoPageEntity.prototype, "ogDescription", void 0);
80
+ __decorate([
81
+ Column({ type: 'varchar', nullable: true })
82
+ //#endregion
83
+ ,
84
+ __metadata("design:type", String)
85
+ ], TaonSeoPageEntity.prototype, "ogImageKey", void 0);
86
+ __decorate([
87
+ Column({ type: 'boolean', default: false })
88
+ //#endregion
89
+ ,
90
+ __metadata("design:type", Boolean)
91
+ ], TaonSeoPageEntity.prototype, "noIndex", void 0);
92
+ __decorate([
93
+ Column({ type: 'boolean', default: false })
94
+ //#endregion
95
+ ,
96
+ __metadata("design:type", Boolean)
97
+ ], TaonSeoPageEntity.prototype, "noFollow", void 0);
98
+ __decorate([
99
+ Column({ type: 'datetime' })
100
+ //#endregion
101
+ ,
102
+ __metadata("design:type", Date)
103
+ ], TaonSeoPageEntity.prototype, "createdAt", void 0);
104
+ __decorate([
105
+ Column({ type: 'datetime' })
106
+ //#endregion
107
+ ,
108
+ __metadata("design:type", Date)
109
+ ], TaonSeoPageEntity.prototype, "updatedAt", void 0);
110
+ TaonSeoPageEntity = __decorate([
111
+ TaonEntity({
112
+ className: 'TaonSeoPageEntity',
113
+ createTable: true,
114
+ })
115
+ ], TaonSeoPageEntity);
116
+
117
+ const t$2 = Translation.for('src/lib/taon-seo-settings/taon-seo-settings.constants.ts', { "src/lib/taon-seo-settings/taon-seo-settings.constants.ts": { "en-US": async () => (await import('./seo-websql-taon-seo-settings.constants.ts.en-US.i18n.data-LWWjHZk9.mjs')).default, "pl-PL": async () => (await import('./seo-websql-taon-seo-settings.constants.ts.pl-PL.i18n.data-oTEAEZ_p.mjs')).default } });
118
+ const TaonSeoSettingsDefaultsValues = {
119
+ id: 1,
120
+ siteName: '',
121
+ defaultTitle: '',
122
+ defaultDescription: '',
123
+ defaultKeywords: null,
124
+ defaultImageKey: null,
125
+ canonicalBaseUrl: null,
126
+ robotsIndex: true,
127
+ robotsFollow: true,
128
+ };
129
+ var TaonSeoSettingsErrors;
130
+ (function (TaonSeoSettingsErrors) {
131
+ TaonSeoSettingsErrors["INVALID_PASSWORD_EXAMPLE_ERROR"] = "INVALID_PASSWORD_EXAMPLE_ERROR";
132
+ })(TaonSeoSettingsErrors || (TaonSeoSettingsErrors = {}));
133
+ const TaonSeoSettingsTranslationErorsMap = new Map([
134
+ [TaonSeoSettingsErrors.INVALID_PASSWORD_EXAMPLE_ERROR, t$2.gettext('Invalid Password')],
135
+ ]);
136
+
137
+ let TaonSeoSettingsEntity = class TaonSeoSettingsEntity extends TaonBaseEntity {
138
+ };
139
+ __decorate([
140
+ PrimaryColumn({ type: 'integer' })
141
+ //#endregion
142
+ ,
143
+ __metadata("design:type", Number)
144
+ ], TaonSeoSettingsEntity.prototype, "id", void 0);
145
+ __decorate([
146
+ Column({ type: 'varchar', default: '' })
147
+ //#endregion
148
+ ,
149
+ __metadata("design:type", String)
150
+ ], TaonSeoSettingsEntity.prototype, "siteName", void 0);
151
+ __decorate([
152
+ Column({ type: 'varchar', default: '' })
153
+ //#endregion
154
+ ,
155
+ __metadata("design:type", String)
156
+ ], TaonSeoSettingsEntity.prototype, "defaultTitle", void 0);
157
+ __decorate([
158
+ Column({ type: 'text', default: '' })
159
+ //#endregion
160
+ ,
161
+ __metadata("design:type", String)
162
+ ], TaonSeoSettingsEntity.prototype, "defaultDescription", void 0);
163
+ __decorate([
164
+ Column({ type: 'text', nullable: true })
165
+ //#endregion
166
+ ,
167
+ __metadata("design:type", String)
168
+ ], TaonSeoSettingsEntity.prototype, "defaultKeywords", void 0);
169
+ __decorate([
170
+ Column({ type: 'varchar', nullable: true })
171
+ //#endregion
172
+ ,
173
+ __metadata("design:type", String)
174
+ ], TaonSeoSettingsEntity.prototype, "defaultImageKey", void 0);
175
+ __decorate([
176
+ Column({ type: 'varchar', nullable: true })
177
+ //#endregion
178
+ ,
179
+ __metadata("design:type", String)
180
+ ], TaonSeoSettingsEntity.prototype, "canonicalBaseUrl", void 0);
181
+ __decorate([
182
+ Column({ type: 'boolean', default: true })
183
+ //#endregion
184
+ ,
185
+ __metadata("design:type", Boolean)
186
+ ], TaonSeoSettingsEntity.prototype, "robotsIndex", void 0);
187
+ __decorate([
188
+ Column({ type: 'boolean', default: true })
189
+ //#endregion
190
+ ,
191
+ __metadata("design:type", Boolean)
192
+ ], TaonSeoSettingsEntity.prototype, "robotsFollow", void 0);
193
+ __decorate([
194
+ Column({ type: 'datetime' })
195
+ //#endregion
196
+ ,
197
+ __metadata("design:type", Date)
198
+ ], TaonSeoSettingsEntity.prototype, "createdAt", void 0);
199
+ __decorate([
200
+ Column({ type: 'datetime' })
201
+ //#endregion
202
+ ,
203
+ __metadata("design:type", Date)
204
+ ], TaonSeoSettingsEntity.prototype, "updatedAt", void 0);
205
+ TaonSeoSettingsEntity = __decorate([
206
+ TaonEntity({
207
+ className: 'TaonSeoSettingsEntity',
208
+ createTable: true,
209
+ })
210
+ ], TaonSeoSettingsEntity);
211
+
212
+ let SeoContext_1791655200000_seo_configuration = class SeoContext_1791655200000_seo_configuration extends TaonBaseMigration {
213
+ async up(queryRunner) {
214
+ for (const entity of [TaonSeoSettingsEntity, TaonSeoPageEntity]) {
215
+ const metadata = queryRunner.connection.getMetadata(entity);
216
+ const expected = Table.create(metadata, queryRunner.connection.driver);
217
+ const current = await queryRunner.getTable(metadata.tablePath);
218
+ if (current) {
219
+ const expectedNames = expected.columns
220
+ .map(column => column.name)
221
+ .sort()
222
+ .join(',');
223
+ const currentNames = current.columns
224
+ .map(column => column.name)
225
+ .sort()
226
+ .join(',');
227
+ if (expectedNames === currentNames) {
228
+ continue;
229
+ }
230
+ // Demo rows contain no route identity; never invent application paths for them.
231
+ const count = await queryRunner.manager
232
+ .createQueryBuilder()
233
+ .from(metadata.tablePath, 'seo')
234
+ .getCount();
235
+ if (count > 0) {
236
+ throw new Error(`Cannot migrate populated legacy SEO table ${metadata.tablePath}. Map its demo records to the new SEO schema before retrying.`);
237
+ }
238
+ await queryRunner.dropTable(current);
239
+ }
240
+ await queryRunner.createTable(expected, true);
241
+ }
242
+ const settings = queryRunner.manager.getRepository(TaonSeoSettingsEntity);
243
+ const records = await settings.find();
244
+ if (records.some(record => record.id !== 1)) {
245
+ throw new Error('Global SEO settings must use the singleton ID 1. Consolidate existing settings before retrying.');
246
+ }
247
+ const now = new Date();
248
+ await settings
249
+ .createQueryBuilder()
250
+ .insert()
251
+ .values({
252
+ ...TaonSeoSettingsDefaultsValues,
253
+ createdAt: now,
254
+ updatedAt: now,
255
+ })
256
+ .orIgnore()
257
+ .execute();
258
+ }
259
+ async down(queryRunner) {
260
+ for (const entity of [TaonSeoPageEntity, TaonSeoSettingsEntity]) {
261
+ const metadata = queryRunner.connection.getMetadata(entity);
262
+ await queryRunner.dropTable(metadata.tablePath, true);
263
+ }
264
+ }
265
+ };
266
+ SeoContext_1791655200000_seo_configuration = __decorate([
267
+ TaonMigration({ className: 'SeoContext_1791655200000_seo_configuration' })
268
+ ], SeoContext_1791655200000_seo_configuration);
269
+
270
+ //#region Migration class for context "SeoContext"
271
+ let SeoContext_1791132517216_initial = class SeoContext_1791132517216_initial extends TaonBaseMigration {
272
+ constructor() {
273
+ super(...arguments);
274
+ this.taonAuthContextRepository = this.injectCustomRepo((TaonAuthContextRepository));
275
+ //#endregion
276
+ }
277
+ //#region up
278
+ async up(queryRunner) {
279
+ await queryRunner.startTransaction();
280
+ try {
281
+ await this.taonAuthContextRepository.persistTree({
282
+ enums: {
283
+ groups: MyAppGroup,
284
+ roles: MyAppRole,
285
+ permissions: MyAppPermission,
286
+ },
287
+ tree: {
288
+ groupAndRoles: {
289
+ [MyAppGroup.Administrator]: '*',
290
+ [MyAppGroup.Customers]: [MyAppRole.BlogReader],
291
+ },
292
+ rolesAndPermissions: {
293
+ [MyAppRole.Customer]: [
294
+ MyAppPermission.AccessCourseP2,
295
+ MyAppPermission.AccessCourseP2,
296
+ ],
297
+ [MyAppRole.CustomerPremium]: '*',
298
+ },
299
+ },
300
+ });
301
+ await queryRunner.commitTransaction();
302
+ }
303
+ catch (error) {
304
+ console.error('Error in migration:', error);
305
+ await queryRunner.rollbackTransaction();
306
+ }
307
+ finally {
308
+ await queryRunner.release();
309
+ }
310
+ }
311
+ //#endregion
312
+ //#region down
313
+ async down(queryRunner) {
314
+ await queryRunner.startTransaction();
315
+ try {
316
+ await this.taonAuthContextRepository.clearRolesGroupPermissions();
317
+ await queryRunner.commitTransaction();
318
+ }
319
+ catch (error) {
320
+ console.error('Error in migration:', error);
321
+ await queryRunner.rollbackTransaction();
322
+ }
323
+ finally {
324
+ await queryRunner.release();
325
+ }
326
+ }
327
+ };
328
+ SeoContext_1791132517216_initial = __decorate([
329
+ TaonMigration({
330
+ className: 'SeoContext_1791132517216_initial',
331
+ })
332
+ ], SeoContext_1791132517216_initial);
333
+ //#endregion
334
+
335
+ // THIS FILE IS GENERATED - DO NOT MODIFY
336
+ // THIS FILE IS GENERATED - DO NOT MODIFY
337
+ const MIGRATIONS_CLASSES_FOR_SeoContext$1 = {
338
+ /* 04-10-2026 18:48:37 */ SeoContext_1791132517216_initial,
339
+ /* 10-10-2026 20:00:00 */ SeoContext_1791655200000_seo_configuration,
340
+ };
341
+ // THIS FILE IS GENERATED - DO NOT MODIFY
342
+
343
+ const MIGRATIONS_CLASSES_FOR_SeoContext = {
344
+ ...MIGRATIONS_CLASSES_FOR_SeoContext$1,
345
+ SeoContext_1791655200000_seo_configuration,
346
+ };
347
+
348
+ // THIS FILE IS GENERATED - DO NOT MODIFY
349
+ // config.superUsers
350
+ const ENV_ANGULAR_NODE_APP_CONFIG_SUPER_USERS = () => decodeEnv("dariusz@taon.dev");
351
+ // config.googleSecret
352
+ const ENV_ANGULAR_NODE_APP_CONFIG_GOOGLE_SECRET = () => decodeEnv("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");
353
+ // config.googleClientId
354
+ const ENV_ANGULAR_NODE_APP_CONFIG_GOOGLE_CLIENT_ID = '289576612173-2mh31b67pmq2qdes5jedno9tr1m542es.apps.googleusercontent.com';
355
+ // loading.preAngularBootstrap.background
356
+ const ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND = '#fdebed';
357
+ // loading.preAngularBootstrap.loader.name
358
+ const ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME = 'lds-default';
359
+ // website.domain
360
+ const ENV_ANGULAR_NODE_APP_WEBSITE_DOMAIN = 'seo.example.domain.com';
361
+ // website.title
362
+ const ENV_ANGULAR_NODE_APP_WEBSITE_TITLE = 'Seo';
363
+ // website.useDomain
364
+ const ENV_ANGULAR_NODE_APP_WEBSITE_USE_DOMAIN = true;
365
+ // release.targetArtifact
366
+ const ENV_ANGULAR_NODE_APP_RELEASE_TARGET_ARTIFACT = 'angular-node-app';
367
+ // release.envName
368
+ const ENV_ANGULAR_NODE_APP_RELEASE_ENV_NAME = '__';
369
+ // finishCallback
370
+ const ENV_ANGULAR_NODE_APP_FINISH_CALLBACK = () => decodeEnv({});
371
+ // container.only
372
+ const ENV_ANGULAR_NODE_APP_CONTAINER_ONLY = undefined;
373
+ // container.end
374
+ const ENV_ANGULAR_NODE_APP_CONTAINER_END = undefined;
375
+ // container.start
376
+ const ENV_ANGULAR_NODE_APP_CONTAINER_START = undefined;
377
+ // container.skipReleased
378
+ const ENV_ANGULAR_NODE_APP_CONTAINER_SKIP_RELEASED = undefined;
379
+ // container.skip
380
+ const ENV_ANGULAR_NODE_APP_CONTAINER_SKIP = undefined;
381
+ // init.branding
382
+ const ENV_ANGULAR_NODE_APP_INIT_BRANDING = undefined;
383
+ // init.struct
384
+ const ENV_ANGULAR_NODE_APP_INIT_STRUCT = undefined;
385
+ // build.pwa.disableServiceWorker
386
+ const ENV_ANGULAR_NODE_APP_BUILD_PWA_DISABLE_SERVICE_WORKER = undefined;
387
+ // build.pwa.name
388
+ const ENV_ANGULAR_NODE_APP_BUILD_PWA_NAME = undefined;
389
+ // build.pwa.short_name
390
+ const ENV_ANGULAR_NODE_APP_BUILD_PWA_SHORT_NAME = undefined;
391
+ // build.pwa.start_url
392
+ const ENV_ANGULAR_NODE_APP_BUILD_PWA_START_URL = undefined;
393
+ // build.electron.showDevTools
394
+ const ENV_ANGULAR_NODE_APP_BUILD_ELECTRON_SHOW_DEV_TOOLS = undefined;
395
+ // build.ssr
396
+ const ENV_ANGULAR_NODE_APP_BUILD_SSR = undefined;
397
+ // build.websql
398
+ const ENV_ANGULAR_NODE_APP_BUILD_WEBSQL = undefined;
399
+ // build.prod
400
+ const ENV_ANGULAR_NODE_APP_BUILD_PROD = undefined;
401
+ // build.overrideOutputPath
402
+ const ENV_ANGULAR_NODE_APP_BUILD_OVERRIDE_OUTPUT_PATH = undefined;
403
+ // build.baseHref
404
+ const ENV_ANGULAR_NODE_APP_BUILD_BASE_HREF = undefined;
405
+ // build.watch
406
+ const ENV_ANGULAR_NODE_APP_BUILD_WATCH = undefined;
407
+ // build.genOnlyClientCode
408
+ const ENV_ANGULAR_NODE_APP_BUILD_GEN_ONLY_CLIENT_CODE = undefined;
409
+ // loading.preAngularBootstrap.loader
410
+ const ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER = undefined;
411
+ // release.cli.minify
412
+ const ENV_ANGULAR_NODE_APP_RELEASE_CLI_MINIFY = undefined;
413
+ // release.cli.includeNodeModules
414
+ const ENV_ANGULAR_NODE_APP_RELEASE_CLI_INCLUDE_NODE_MODULES = undefined;
415
+ // release.cli.uglify
416
+ const ENV_ANGULAR_NODE_APP_RELEASE_CLI_UGLIFY = undefined;
417
+ // release.cli.obscure
418
+ const ENV_ANGULAR_NODE_APP_RELEASE_CLI_OBSCURE = undefined;
419
+ // release.cli.compress
420
+ const ENV_ANGULAR_NODE_APP_RELEASE_CLI_COMPRESS = undefined;
421
+ // release.nodeBackendApp.minify
422
+ const ENV_ANGULAR_NODE_APP_RELEASE_NODE_BACKEND_APP_MINIFY = undefined;
423
+ // release.lib.removeDts
424
+ const ENV_ANGULAR_NODE_APP_RELEASE_LIB_REMOVE_DTS = undefined;
425
+ // release.lib.obscureFileByFile
426
+ const ENV_ANGULAR_NODE_APP_RELEASE_LIB_OBSCURE_FILE_BY_FILE = undefined;
427
+ // release.lib.uglifyFileByFile
428
+ const ENV_ANGULAR_NODE_APP_RELEASE_LIB_UGLIFY_FILE_BY_FILE = undefined;
429
+ // release.lib.includeSourceMaps
430
+ const ENV_ANGULAR_NODE_APP_RELEASE_LIB_INCLUDE_SOURCE_MAPS = undefined;
431
+ // release.lib.compress
432
+ const ENV_ANGULAR_NODE_APP_RELEASE_LIB_COMPRESS = undefined;
433
+ // release.lib.doNotIncludeLibFiles
434
+ const ENV_ANGULAR_NODE_APP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES = undefined;
435
+ // release.resolvedNewVersion
436
+ const ENV_ANGULAR_NODE_APP_RELEASE_RESOLVED_NEW_VERSION = undefined;
437
+ // release.releaseVersionBumpType
438
+ const ENV_ANGULAR_NODE_APP_RELEASE_RELEASE_VERSION_BUMP_TYPE = undefined;
439
+ // release.envNumber
440
+ const ENV_ANGULAR_NODE_APP_RELEASE_ENV_NUMBER = undefined;
441
+ // release.installLocally
442
+ const ENV_ANGULAR_NODE_APP_RELEASE_INSTALL_LOCALLY = undefined;
443
+ // release.removeReleaseOutputAfterLocalInstall
444
+ const ENV_ANGULAR_NODE_APP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL = undefined;
445
+ // release.releaseType
446
+ const ENV_ANGULAR_NODE_APP_RELEASE_RELEASE_TYPE = undefined;
447
+ // release.autoReleaseUsingConfig
448
+ const ENV_ANGULAR_NODE_APP_RELEASE_AUTO_RELEASE_USING_CONFIG = undefined;
449
+ // release.autoReleaseTaskName
450
+ const ENV_ANGULAR_NODE_APP_RELEASE_AUTO_RELEASE_TASK_NAME = undefined;
451
+ // release.taonInstanceIp
452
+ const ENV_ANGULAR_NODE_APP_RELEASE_TAON_INSTANCE_IP = undefined;
453
+ // release.skipNpmPublish
454
+ const ENV_ANGULAR_NODE_APP_RELEASE_SKIP_NPM_PUBLISH = undefined;
455
+ // release.skipDeploy
456
+ const ENV_ANGULAR_NODE_APP_RELEASE_SKIP_DEPLOY = undefined;
457
+ // release.skipTagGitPush
458
+ const ENV_ANGULAR_NODE_APP_RELEASE_SKIP_TAG_GIT_PUSH = undefined;
459
+ // release.skipReleaseQuestion
460
+ const ENV_ANGULAR_NODE_APP_RELEASE_SKIP_RELEASE_QUESTION = undefined;
461
+ // release.skipResolvingGitChanges
462
+ const ENV_ANGULAR_NODE_APP_RELEASE_SKIP_RESOLVING_GIT_CHANGES = undefined;
463
+ // release.skipCodeCutting
464
+ const ENV_ANGULAR_NODE_APP_RELEASE_SKIP_CODE_CUTTING = undefined;
465
+ // release.skipBuildingArtifacts
466
+ const ENV_ANGULAR_NODE_APP_RELEASE_SKIP_BUILDING_ARTIFACTS = undefined;
467
+ // release.pushToAllOriginsWhenLocalReleaseBranch
468
+ const ENV_ANGULAR_NODE_APP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH = undefined;
469
+ // release.useLocalReleaseBranch
470
+ const ENV_ANGULAR_NODE_APP_RELEASE_USE_LOCAL_RELEASE_BRANCH = undefined;
471
+ // copyToManager.beforeCopyHook
472
+ const ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_BEFORE_COPY_HOOK = undefined;
473
+ // copyToManager.copyToLocations
474
+ const ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_COPY_TO_LOCATIONS = undefined;
475
+ // copyToManager.copyToProjects
476
+ const ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_COPY_TO_PROJECTS = undefined;
477
+ // copyToManager.skip
478
+ const ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_SKIP = undefined;
479
+ // purpose
480
+ const ENV_ANGULAR_NODE_APP_PURPOSE = undefined;
481
+ // recursiveAction
482
+ const ENV_ANGULAR_NODE_APP_RECURSIVE_ACTION = undefined;
483
+ // isCiProcess
484
+ const ENV_ANGULAR_NODE_APP_IS_CI_PROCESS = undefined;
485
+ // docker.additionalContainer
486
+ const ENV_ANGULAR_NODE_APP_DOCKER_ADDITIONAL_CONTAINER = undefined;
487
+ // docker.skipStartInOrder
488
+ const ENV_ANGULAR_NODE_APP_DOCKER_SKIP_START_IN_ORDER = undefined;
489
+ // docker.skipUsingMysqlDb
490
+ const ENV_ANGULAR_NODE_APP_DOCKER_SKIP_USING_MYSQL_DB = undefined;
491
+ // THIS FILE IS GENERATED - DO NOT MODIFY
492
+
493
+ // THIS FILE IS GENERATED - DO NOT MODIFY
494
+ // config.superUsers
495
+ const ENV_DOCS_WEBAPP_CONFIG_SUPER_USERS = () => decodeEnv("dariusz@taon.dev");
496
+ // config.googleSecret
497
+ const ENV_DOCS_WEBAPP_CONFIG_GOOGLE_SECRET = () => decodeEnv("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");
498
+ // config.googleClientId
499
+ const ENV_DOCS_WEBAPP_CONFIG_GOOGLE_CLIENT_ID = '289576612173-2mh31b67pmq2qdes5jedno9tr1m542es.apps.googleusercontent.com';
500
+ // loading.preAngularBootstrap.background
501
+ const ENV_DOCS_WEBAPP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND = '#fdebed';
502
+ // loading.preAngularBootstrap.loader.name
503
+ const ENV_DOCS_WEBAPP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME = 'lds-default';
504
+ // website.domain
505
+ const ENV_DOCS_WEBAPP_WEBSITE_DOMAIN = 'seo.example.domain.com';
506
+ // website.title
507
+ const ENV_DOCS_WEBAPP_WEBSITE_TITLE = 'Seo';
508
+ // website.useDomain
509
+ const ENV_DOCS_WEBAPP_WEBSITE_USE_DOMAIN = true;
510
+ // release.targetArtifact
511
+ const ENV_DOCS_WEBAPP_RELEASE_TARGET_ARTIFACT = 'docs-webapp';
512
+ // release.envName
513
+ const ENV_DOCS_WEBAPP_RELEASE_ENV_NAME = '__';
514
+ // finishCallback
515
+ const ENV_DOCS_WEBAPP_FINISH_CALLBACK = () => decodeEnv({});
516
+ // container.only
517
+ const ENV_DOCS_WEBAPP_CONTAINER_ONLY = undefined;
518
+ // container.end
519
+ const ENV_DOCS_WEBAPP_CONTAINER_END = undefined;
520
+ // container.start
521
+ const ENV_DOCS_WEBAPP_CONTAINER_START = undefined;
522
+ // container.skipReleased
523
+ const ENV_DOCS_WEBAPP_CONTAINER_SKIP_RELEASED = undefined;
524
+ // container.skip
525
+ const ENV_DOCS_WEBAPP_CONTAINER_SKIP = undefined;
526
+ // init.branding
527
+ const ENV_DOCS_WEBAPP_INIT_BRANDING = undefined;
528
+ // init.struct
529
+ const ENV_DOCS_WEBAPP_INIT_STRUCT = undefined;
530
+ // build.pwa.disableServiceWorker
531
+ const ENV_DOCS_WEBAPP_BUILD_PWA_DISABLE_SERVICE_WORKER = undefined;
532
+ // build.pwa.name
533
+ const ENV_DOCS_WEBAPP_BUILD_PWA_NAME = undefined;
534
+ // build.pwa.short_name
535
+ const ENV_DOCS_WEBAPP_BUILD_PWA_SHORT_NAME = undefined;
536
+ // build.pwa.start_url
537
+ const ENV_DOCS_WEBAPP_BUILD_PWA_START_URL = undefined;
538
+ // build.electron.showDevTools
539
+ const ENV_DOCS_WEBAPP_BUILD_ELECTRON_SHOW_DEV_TOOLS = undefined;
540
+ // build.ssr
541
+ const ENV_DOCS_WEBAPP_BUILD_SSR = undefined;
542
+ // build.websql
543
+ const ENV_DOCS_WEBAPP_BUILD_WEBSQL = undefined;
544
+ // build.prod
545
+ const ENV_DOCS_WEBAPP_BUILD_PROD = undefined;
546
+ // build.overrideOutputPath
547
+ const ENV_DOCS_WEBAPP_BUILD_OVERRIDE_OUTPUT_PATH = undefined;
548
+ // build.baseHref
549
+ const ENV_DOCS_WEBAPP_BUILD_BASE_HREF = undefined;
550
+ // build.watch
551
+ const ENV_DOCS_WEBAPP_BUILD_WATCH = undefined;
552
+ // build.genOnlyClientCode
553
+ const ENV_DOCS_WEBAPP_BUILD_GEN_ONLY_CLIENT_CODE = undefined;
554
+ // loading.preAngularBootstrap.loader
555
+ const ENV_DOCS_WEBAPP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER = undefined;
556
+ // release.cli.minify
557
+ const ENV_DOCS_WEBAPP_RELEASE_CLI_MINIFY = undefined;
558
+ // release.cli.includeNodeModules
559
+ const ENV_DOCS_WEBAPP_RELEASE_CLI_INCLUDE_NODE_MODULES = undefined;
560
+ // release.cli.uglify
561
+ const ENV_DOCS_WEBAPP_RELEASE_CLI_UGLIFY = undefined;
562
+ // release.cli.obscure
563
+ const ENV_DOCS_WEBAPP_RELEASE_CLI_OBSCURE = undefined;
564
+ // release.cli.compress
565
+ const ENV_DOCS_WEBAPP_RELEASE_CLI_COMPRESS = undefined;
566
+ // release.nodeBackendApp.minify
567
+ const ENV_DOCS_WEBAPP_RELEASE_NODE_BACKEND_APP_MINIFY = undefined;
568
+ // release.lib.removeDts
569
+ const ENV_DOCS_WEBAPP_RELEASE_LIB_REMOVE_DTS = undefined;
570
+ // release.lib.obscureFileByFile
571
+ const ENV_DOCS_WEBAPP_RELEASE_LIB_OBSCURE_FILE_BY_FILE = undefined;
572
+ // release.lib.uglifyFileByFile
573
+ const ENV_DOCS_WEBAPP_RELEASE_LIB_UGLIFY_FILE_BY_FILE = undefined;
574
+ // release.lib.includeSourceMaps
575
+ const ENV_DOCS_WEBAPP_RELEASE_LIB_INCLUDE_SOURCE_MAPS = undefined;
576
+ // release.lib.compress
577
+ const ENV_DOCS_WEBAPP_RELEASE_LIB_COMPRESS = undefined;
578
+ // release.lib.doNotIncludeLibFiles
579
+ const ENV_DOCS_WEBAPP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES = undefined;
580
+ // release.resolvedNewVersion
581
+ const ENV_DOCS_WEBAPP_RELEASE_RESOLVED_NEW_VERSION = undefined;
582
+ // release.releaseVersionBumpType
583
+ const ENV_DOCS_WEBAPP_RELEASE_RELEASE_VERSION_BUMP_TYPE = undefined;
584
+ // release.envNumber
585
+ const ENV_DOCS_WEBAPP_RELEASE_ENV_NUMBER = undefined;
586
+ // release.installLocally
587
+ const ENV_DOCS_WEBAPP_RELEASE_INSTALL_LOCALLY = undefined;
588
+ // release.removeReleaseOutputAfterLocalInstall
589
+ const ENV_DOCS_WEBAPP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL = undefined;
590
+ // release.releaseType
591
+ const ENV_DOCS_WEBAPP_RELEASE_RELEASE_TYPE = undefined;
592
+ // release.autoReleaseUsingConfig
593
+ const ENV_DOCS_WEBAPP_RELEASE_AUTO_RELEASE_USING_CONFIG = undefined;
594
+ // release.autoReleaseTaskName
595
+ const ENV_DOCS_WEBAPP_RELEASE_AUTO_RELEASE_TASK_NAME = undefined;
596
+ // release.taonInstanceIp
597
+ const ENV_DOCS_WEBAPP_RELEASE_TAON_INSTANCE_IP = undefined;
598
+ // release.skipNpmPublish
599
+ const ENV_DOCS_WEBAPP_RELEASE_SKIP_NPM_PUBLISH = undefined;
600
+ // release.skipDeploy
601
+ const ENV_DOCS_WEBAPP_RELEASE_SKIP_DEPLOY = undefined;
602
+ // release.skipTagGitPush
603
+ const ENV_DOCS_WEBAPP_RELEASE_SKIP_TAG_GIT_PUSH = undefined;
604
+ // release.skipReleaseQuestion
605
+ const ENV_DOCS_WEBAPP_RELEASE_SKIP_RELEASE_QUESTION = undefined;
606
+ // release.skipResolvingGitChanges
607
+ const ENV_DOCS_WEBAPP_RELEASE_SKIP_RESOLVING_GIT_CHANGES = undefined;
608
+ // release.skipCodeCutting
609
+ const ENV_DOCS_WEBAPP_RELEASE_SKIP_CODE_CUTTING = undefined;
610
+ // release.skipBuildingArtifacts
611
+ const ENV_DOCS_WEBAPP_RELEASE_SKIP_BUILDING_ARTIFACTS = undefined;
612
+ // release.pushToAllOriginsWhenLocalReleaseBranch
613
+ const ENV_DOCS_WEBAPP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH = undefined;
614
+ // release.useLocalReleaseBranch
615
+ const ENV_DOCS_WEBAPP_RELEASE_USE_LOCAL_RELEASE_BRANCH = undefined;
616
+ // copyToManager.beforeCopyHook
617
+ const ENV_DOCS_WEBAPP_COPY_TO_MANAGER_BEFORE_COPY_HOOK = undefined;
618
+ // copyToManager.copyToLocations
619
+ const ENV_DOCS_WEBAPP_COPY_TO_MANAGER_COPY_TO_LOCATIONS = undefined;
620
+ // copyToManager.copyToProjects
621
+ const ENV_DOCS_WEBAPP_COPY_TO_MANAGER_COPY_TO_PROJECTS = undefined;
622
+ // copyToManager.skip
623
+ const ENV_DOCS_WEBAPP_COPY_TO_MANAGER_SKIP = undefined;
624
+ // purpose
625
+ const ENV_DOCS_WEBAPP_PURPOSE = undefined;
626
+ // recursiveAction
627
+ const ENV_DOCS_WEBAPP_RECURSIVE_ACTION = undefined;
628
+ // isCiProcess
629
+ const ENV_DOCS_WEBAPP_IS_CI_PROCESS = undefined;
630
+ // docker.additionalContainer
631
+ const ENV_DOCS_WEBAPP_DOCKER_ADDITIONAL_CONTAINER = undefined;
632
+ // docker.skipStartInOrder
633
+ const ENV_DOCS_WEBAPP_DOCKER_SKIP_START_IN_ORDER = undefined;
634
+ // docker.skipUsingMysqlDb
635
+ const ENV_DOCS_WEBAPP_DOCKER_SKIP_USING_MYSQL_DB = undefined;
636
+ // THIS FILE IS GENERATED - DO NOT MODIFY
637
+
638
+ // THIS FILE IS GENERATED - DO NOT MODIFY
639
+ // config.superUsers
640
+ const ENV_ELECTRON_APP_CONFIG_SUPER_USERS = () => decodeEnv("dariusz@taon.dev");
641
+ // config.googleSecret
642
+ const ENV_ELECTRON_APP_CONFIG_GOOGLE_SECRET = () => decodeEnv("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");
643
+ // config.googleClientId
644
+ const ENV_ELECTRON_APP_CONFIG_GOOGLE_CLIENT_ID = '289576612173-2mh31b67pmq2qdes5jedno9tr1m542es.apps.googleusercontent.com';
645
+ // build.ssr
646
+ const ENV_ELECTRON_APP_BUILD_SSR = false;
647
+ // loading.preAngularBootstrap.background
648
+ const ENV_ELECTRON_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND = '#fdebed';
649
+ // loading.preAngularBootstrap.loader.name
650
+ const ENV_ELECTRON_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME = 'lds-default';
651
+ // website.domain
652
+ const ENV_ELECTRON_APP_WEBSITE_DOMAIN = 'seo.example.domain.com';
653
+ // website.title
654
+ const ENV_ELECTRON_APP_WEBSITE_TITLE = 'Seo';
655
+ // website.useDomain
656
+ const ENV_ELECTRON_APP_WEBSITE_USE_DOMAIN = true;
657
+ // release.targetArtifact
658
+ const ENV_ELECTRON_APP_RELEASE_TARGET_ARTIFACT = 'electron-app';
659
+ // release.envName
660
+ const ENV_ELECTRON_APP_RELEASE_ENV_NAME = '__';
661
+ // finishCallback
662
+ const ENV_ELECTRON_APP_FINISH_CALLBACK = () => decodeEnv({});
663
+ // container.only
664
+ const ENV_ELECTRON_APP_CONTAINER_ONLY = undefined;
665
+ // container.end
666
+ const ENV_ELECTRON_APP_CONTAINER_END = undefined;
667
+ // container.start
668
+ const ENV_ELECTRON_APP_CONTAINER_START = undefined;
669
+ // container.skipReleased
670
+ const ENV_ELECTRON_APP_CONTAINER_SKIP_RELEASED = undefined;
671
+ // container.skip
672
+ const ENV_ELECTRON_APP_CONTAINER_SKIP = undefined;
673
+ // init.branding
674
+ const ENV_ELECTRON_APP_INIT_BRANDING = undefined;
675
+ // init.struct
676
+ const ENV_ELECTRON_APP_INIT_STRUCT = undefined;
677
+ // build.pwa.disableServiceWorker
678
+ const ENV_ELECTRON_APP_BUILD_PWA_DISABLE_SERVICE_WORKER = undefined;
679
+ // build.pwa.name
680
+ const ENV_ELECTRON_APP_BUILD_PWA_NAME = undefined;
681
+ // build.pwa.short_name
682
+ const ENV_ELECTRON_APP_BUILD_PWA_SHORT_NAME = undefined;
683
+ // build.pwa.start_url
684
+ const ENV_ELECTRON_APP_BUILD_PWA_START_URL = undefined;
685
+ // build.electron.showDevTools
686
+ const ENV_ELECTRON_APP_BUILD_ELECTRON_SHOW_DEV_TOOLS = undefined;
687
+ // build.websql
688
+ const ENV_ELECTRON_APP_BUILD_WEBSQL = undefined;
689
+ // build.prod
690
+ const ENV_ELECTRON_APP_BUILD_PROD = undefined;
691
+ // build.overrideOutputPath
692
+ const ENV_ELECTRON_APP_BUILD_OVERRIDE_OUTPUT_PATH = undefined;
693
+ // build.baseHref
694
+ const ENV_ELECTRON_APP_BUILD_BASE_HREF = undefined;
695
+ // build.watch
696
+ const ENV_ELECTRON_APP_BUILD_WATCH = undefined;
697
+ // build.genOnlyClientCode
698
+ const ENV_ELECTRON_APP_BUILD_GEN_ONLY_CLIENT_CODE = undefined;
699
+ // loading.preAngularBootstrap.loader
700
+ const ENV_ELECTRON_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER = undefined;
701
+ // release.cli.minify
702
+ const ENV_ELECTRON_APP_RELEASE_CLI_MINIFY = undefined;
703
+ // release.cli.includeNodeModules
704
+ const ENV_ELECTRON_APP_RELEASE_CLI_INCLUDE_NODE_MODULES = undefined;
705
+ // release.cli.uglify
706
+ const ENV_ELECTRON_APP_RELEASE_CLI_UGLIFY = undefined;
707
+ // release.cli.obscure
708
+ const ENV_ELECTRON_APP_RELEASE_CLI_OBSCURE = undefined;
709
+ // release.cli.compress
710
+ const ENV_ELECTRON_APP_RELEASE_CLI_COMPRESS = undefined;
711
+ // release.nodeBackendApp.minify
712
+ const ENV_ELECTRON_APP_RELEASE_NODE_BACKEND_APP_MINIFY = undefined;
713
+ // release.lib.removeDts
714
+ const ENV_ELECTRON_APP_RELEASE_LIB_REMOVE_DTS = undefined;
715
+ // release.lib.obscureFileByFile
716
+ const ENV_ELECTRON_APP_RELEASE_LIB_OBSCURE_FILE_BY_FILE = undefined;
717
+ // release.lib.uglifyFileByFile
718
+ const ENV_ELECTRON_APP_RELEASE_LIB_UGLIFY_FILE_BY_FILE = undefined;
719
+ // release.lib.includeSourceMaps
720
+ const ENV_ELECTRON_APP_RELEASE_LIB_INCLUDE_SOURCE_MAPS = undefined;
721
+ // release.lib.compress
722
+ const ENV_ELECTRON_APP_RELEASE_LIB_COMPRESS = undefined;
723
+ // release.lib.doNotIncludeLibFiles
724
+ const ENV_ELECTRON_APP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES = undefined;
725
+ // release.resolvedNewVersion
726
+ const ENV_ELECTRON_APP_RELEASE_RESOLVED_NEW_VERSION = undefined;
727
+ // release.releaseVersionBumpType
728
+ const ENV_ELECTRON_APP_RELEASE_RELEASE_VERSION_BUMP_TYPE = undefined;
729
+ // release.envNumber
730
+ const ENV_ELECTRON_APP_RELEASE_ENV_NUMBER = undefined;
731
+ // release.installLocally
732
+ const ENV_ELECTRON_APP_RELEASE_INSTALL_LOCALLY = undefined;
733
+ // release.removeReleaseOutputAfterLocalInstall
734
+ const ENV_ELECTRON_APP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL = undefined;
735
+ // release.releaseType
736
+ const ENV_ELECTRON_APP_RELEASE_RELEASE_TYPE = undefined;
737
+ // release.autoReleaseUsingConfig
738
+ const ENV_ELECTRON_APP_RELEASE_AUTO_RELEASE_USING_CONFIG = undefined;
739
+ // release.autoReleaseTaskName
740
+ const ENV_ELECTRON_APP_RELEASE_AUTO_RELEASE_TASK_NAME = undefined;
741
+ // release.taonInstanceIp
742
+ const ENV_ELECTRON_APP_RELEASE_TAON_INSTANCE_IP = undefined;
743
+ // release.skipNpmPublish
744
+ const ENV_ELECTRON_APP_RELEASE_SKIP_NPM_PUBLISH = undefined;
745
+ // release.skipDeploy
746
+ const ENV_ELECTRON_APP_RELEASE_SKIP_DEPLOY = undefined;
747
+ // release.skipTagGitPush
748
+ const ENV_ELECTRON_APP_RELEASE_SKIP_TAG_GIT_PUSH = undefined;
749
+ // release.skipReleaseQuestion
750
+ const ENV_ELECTRON_APP_RELEASE_SKIP_RELEASE_QUESTION = undefined;
751
+ // release.skipResolvingGitChanges
752
+ const ENV_ELECTRON_APP_RELEASE_SKIP_RESOLVING_GIT_CHANGES = undefined;
753
+ // release.skipCodeCutting
754
+ const ENV_ELECTRON_APP_RELEASE_SKIP_CODE_CUTTING = undefined;
755
+ // release.skipBuildingArtifacts
756
+ const ENV_ELECTRON_APP_RELEASE_SKIP_BUILDING_ARTIFACTS = undefined;
757
+ // release.pushToAllOriginsWhenLocalReleaseBranch
758
+ const ENV_ELECTRON_APP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH = undefined;
759
+ // release.useLocalReleaseBranch
760
+ const ENV_ELECTRON_APP_RELEASE_USE_LOCAL_RELEASE_BRANCH = undefined;
761
+ // copyToManager.beforeCopyHook
762
+ const ENV_ELECTRON_APP_COPY_TO_MANAGER_BEFORE_COPY_HOOK = undefined;
763
+ // copyToManager.copyToLocations
764
+ const ENV_ELECTRON_APP_COPY_TO_MANAGER_COPY_TO_LOCATIONS = undefined;
765
+ // copyToManager.copyToProjects
766
+ const ENV_ELECTRON_APP_COPY_TO_MANAGER_COPY_TO_PROJECTS = undefined;
767
+ // copyToManager.skip
768
+ const ENV_ELECTRON_APP_COPY_TO_MANAGER_SKIP = undefined;
769
+ // purpose
770
+ const ENV_ELECTRON_APP_PURPOSE = undefined;
771
+ // recursiveAction
772
+ const ENV_ELECTRON_APP_RECURSIVE_ACTION = undefined;
773
+ // isCiProcess
774
+ const ENV_ELECTRON_APP_IS_CI_PROCESS = undefined;
775
+ // docker.additionalContainer
776
+ const ENV_ELECTRON_APP_DOCKER_ADDITIONAL_CONTAINER = undefined;
777
+ // docker.skipStartInOrder
778
+ const ENV_ELECTRON_APP_DOCKER_SKIP_START_IN_ORDER = undefined;
779
+ // docker.skipUsingMysqlDb
780
+ const ENV_ELECTRON_APP_DOCKER_SKIP_USING_MYSQL_DB = undefined;
781
+ // THIS FILE IS GENERATED - DO NOT MODIFY
782
+
783
+ // THIS FILE IS GENERATED - DO NOT MODIFY
784
+ // config.superUsers
785
+ const ENV_MOBILE_APP_CONFIG_SUPER_USERS = () => decodeEnv("dariusz@taon.dev");
786
+ // config.googleSecret
787
+ const ENV_MOBILE_APP_CONFIG_GOOGLE_SECRET = () => decodeEnv("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");
788
+ // config.googleClientId
789
+ const ENV_MOBILE_APP_CONFIG_GOOGLE_CLIENT_ID = '289576612173-2mh31b67pmq2qdes5jedno9tr1m542es.apps.googleusercontent.com';
790
+ // loading.preAngularBootstrap.background
791
+ const ENV_MOBILE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND = '#fdebed';
792
+ // loading.preAngularBootstrap.loader.name
793
+ const ENV_MOBILE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME = 'lds-default';
794
+ // website.domain
795
+ const ENV_MOBILE_APP_WEBSITE_DOMAIN = 'seo.example.domain.com';
796
+ // website.title
797
+ const ENV_MOBILE_APP_WEBSITE_TITLE = 'Seo';
798
+ // website.useDomain
799
+ const ENV_MOBILE_APP_WEBSITE_USE_DOMAIN = true;
800
+ // release.targetArtifact
801
+ const ENV_MOBILE_APP_RELEASE_TARGET_ARTIFACT = 'mobile-app';
802
+ // release.envName
803
+ const ENV_MOBILE_APP_RELEASE_ENV_NAME = '__';
804
+ // finishCallback
805
+ const ENV_MOBILE_APP_FINISH_CALLBACK = () => decodeEnv({});
806
+ // container.only
807
+ const ENV_MOBILE_APP_CONTAINER_ONLY = undefined;
808
+ // container.end
809
+ const ENV_MOBILE_APP_CONTAINER_END = undefined;
810
+ // container.start
811
+ const ENV_MOBILE_APP_CONTAINER_START = undefined;
812
+ // container.skipReleased
813
+ const ENV_MOBILE_APP_CONTAINER_SKIP_RELEASED = undefined;
814
+ // container.skip
815
+ const ENV_MOBILE_APP_CONTAINER_SKIP = undefined;
816
+ // init.branding
817
+ const ENV_MOBILE_APP_INIT_BRANDING = undefined;
818
+ // init.struct
819
+ const ENV_MOBILE_APP_INIT_STRUCT = undefined;
820
+ // build.pwa.disableServiceWorker
821
+ const ENV_MOBILE_APP_BUILD_PWA_DISABLE_SERVICE_WORKER = undefined;
822
+ // build.pwa.name
823
+ const ENV_MOBILE_APP_BUILD_PWA_NAME = undefined;
824
+ // build.pwa.short_name
825
+ const ENV_MOBILE_APP_BUILD_PWA_SHORT_NAME = undefined;
826
+ // build.pwa.start_url
827
+ const ENV_MOBILE_APP_BUILD_PWA_START_URL = undefined;
828
+ // build.electron.showDevTools
829
+ const ENV_MOBILE_APP_BUILD_ELECTRON_SHOW_DEV_TOOLS = undefined;
830
+ // build.ssr
831
+ const ENV_MOBILE_APP_BUILD_SSR = undefined;
832
+ // build.websql
833
+ const ENV_MOBILE_APP_BUILD_WEBSQL = undefined;
834
+ // build.prod
835
+ const ENV_MOBILE_APP_BUILD_PROD = undefined;
836
+ // build.overrideOutputPath
837
+ const ENV_MOBILE_APP_BUILD_OVERRIDE_OUTPUT_PATH = undefined;
838
+ // build.baseHref
839
+ const ENV_MOBILE_APP_BUILD_BASE_HREF = undefined;
840
+ // build.watch
841
+ const ENV_MOBILE_APP_BUILD_WATCH = undefined;
842
+ // build.genOnlyClientCode
843
+ const ENV_MOBILE_APP_BUILD_GEN_ONLY_CLIENT_CODE = undefined;
844
+ // loading.preAngularBootstrap.loader
845
+ const ENV_MOBILE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER = undefined;
846
+ // release.cli.minify
847
+ const ENV_MOBILE_APP_RELEASE_CLI_MINIFY = undefined;
848
+ // release.cli.includeNodeModules
849
+ const ENV_MOBILE_APP_RELEASE_CLI_INCLUDE_NODE_MODULES = undefined;
850
+ // release.cli.uglify
851
+ const ENV_MOBILE_APP_RELEASE_CLI_UGLIFY = undefined;
852
+ // release.cli.obscure
853
+ const ENV_MOBILE_APP_RELEASE_CLI_OBSCURE = undefined;
854
+ // release.cli.compress
855
+ const ENV_MOBILE_APP_RELEASE_CLI_COMPRESS = undefined;
856
+ // release.nodeBackendApp.minify
857
+ const ENV_MOBILE_APP_RELEASE_NODE_BACKEND_APP_MINIFY = undefined;
858
+ // release.lib.removeDts
859
+ const ENV_MOBILE_APP_RELEASE_LIB_REMOVE_DTS = undefined;
860
+ // release.lib.obscureFileByFile
861
+ const ENV_MOBILE_APP_RELEASE_LIB_OBSCURE_FILE_BY_FILE = undefined;
862
+ // release.lib.uglifyFileByFile
863
+ const ENV_MOBILE_APP_RELEASE_LIB_UGLIFY_FILE_BY_FILE = undefined;
864
+ // release.lib.includeSourceMaps
865
+ const ENV_MOBILE_APP_RELEASE_LIB_INCLUDE_SOURCE_MAPS = undefined;
866
+ // release.lib.compress
867
+ const ENV_MOBILE_APP_RELEASE_LIB_COMPRESS = undefined;
868
+ // release.lib.doNotIncludeLibFiles
869
+ const ENV_MOBILE_APP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES = undefined;
870
+ // release.resolvedNewVersion
871
+ const ENV_MOBILE_APP_RELEASE_RESOLVED_NEW_VERSION = undefined;
872
+ // release.releaseVersionBumpType
873
+ const ENV_MOBILE_APP_RELEASE_RELEASE_VERSION_BUMP_TYPE = undefined;
874
+ // release.envNumber
875
+ const ENV_MOBILE_APP_RELEASE_ENV_NUMBER = undefined;
876
+ // release.installLocally
877
+ const ENV_MOBILE_APP_RELEASE_INSTALL_LOCALLY = undefined;
878
+ // release.removeReleaseOutputAfterLocalInstall
879
+ const ENV_MOBILE_APP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL = undefined;
880
+ // release.releaseType
881
+ const ENV_MOBILE_APP_RELEASE_RELEASE_TYPE = undefined;
882
+ // release.autoReleaseUsingConfig
883
+ const ENV_MOBILE_APP_RELEASE_AUTO_RELEASE_USING_CONFIG = undefined;
884
+ // release.autoReleaseTaskName
885
+ const ENV_MOBILE_APP_RELEASE_AUTO_RELEASE_TASK_NAME = undefined;
886
+ // release.taonInstanceIp
887
+ const ENV_MOBILE_APP_RELEASE_TAON_INSTANCE_IP = undefined;
888
+ // release.skipNpmPublish
889
+ const ENV_MOBILE_APP_RELEASE_SKIP_NPM_PUBLISH = undefined;
890
+ // release.skipDeploy
891
+ const ENV_MOBILE_APP_RELEASE_SKIP_DEPLOY = undefined;
892
+ // release.skipTagGitPush
893
+ const ENV_MOBILE_APP_RELEASE_SKIP_TAG_GIT_PUSH = undefined;
894
+ // release.skipReleaseQuestion
895
+ const ENV_MOBILE_APP_RELEASE_SKIP_RELEASE_QUESTION = undefined;
896
+ // release.skipResolvingGitChanges
897
+ const ENV_MOBILE_APP_RELEASE_SKIP_RESOLVING_GIT_CHANGES = undefined;
898
+ // release.skipCodeCutting
899
+ const ENV_MOBILE_APP_RELEASE_SKIP_CODE_CUTTING = undefined;
900
+ // release.skipBuildingArtifacts
901
+ const ENV_MOBILE_APP_RELEASE_SKIP_BUILDING_ARTIFACTS = undefined;
902
+ // release.pushToAllOriginsWhenLocalReleaseBranch
903
+ const ENV_MOBILE_APP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH = undefined;
904
+ // release.useLocalReleaseBranch
905
+ const ENV_MOBILE_APP_RELEASE_USE_LOCAL_RELEASE_BRANCH = undefined;
906
+ // copyToManager.beforeCopyHook
907
+ const ENV_MOBILE_APP_COPY_TO_MANAGER_BEFORE_COPY_HOOK = undefined;
908
+ // copyToManager.copyToLocations
909
+ const ENV_MOBILE_APP_COPY_TO_MANAGER_COPY_TO_LOCATIONS = undefined;
910
+ // copyToManager.copyToProjects
911
+ const ENV_MOBILE_APP_COPY_TO_MANAGER_COPY_TO_PROJECTS = undefined;
912
+ // copyToManager.skip
913
+ const ENV_MOBILE_APP_COPY_TO_MANAGER_SKIP = undefined;
914
+ // purpose
915
+ const ENV_MOBILE_APP_PURPOSE = undefined;
916
+ // recursiveAction
917
+ const ENV_MOBILE_APP_RECURSIVE_ACTION = undefined;
918
+ // isCiProcess
919
+ const ENV_MOBILE_APP_IS_CI_PROCESS = undefined;
920
+ // docker.additionalContainer
921
+ const ENV_MOBILE_APP_DOCKER_ADDITIONAL_CONTAINER = undefined;
922
+ // docker.skipStartInOrder
923
+ const ENV_MOBILE_APP_DOCKER_SKIP_START_IN_ORDER = undefined;
924
+ // docker.skipUsingMysqlDb
925
+ const ENV_MOBILE_APP_DOCKER_SKIP_USING_MYSQL_DB = undefined;
926
+ // THIS FILE IS GENERATED - DO NOT MODIFY
927
+
928
+ // THIS FILE IS GENERATED - DO NOT MODIFY
929
+ // config.superUsers
930
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONFIG_SUPER_USERS = () => decodeEnv("dariusz@taon.dev");
931
+ // config.googleSecret
932
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONFIG_GOOGLE_SECRET = () => decodeEnv("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");
933
+ // config.googleClientId
934
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONFIG_GOOGLE_CLIENT_ID = '289576612173-2mh31b67pmq2qdes5jedno9tr1m542es.apps.googleusercontent.com';
935
+ // loading.preAngularBootstrap.background
936
+ const ENV_NPM_LIB_AND_CLI_TOOL_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND = '#fdebed';
937
+ // loading.preAngularBootstrap.loader.name
938
+ const ENV_NPM_LIB_AND_CLI_TOOL_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME = 'lds-default';
939
+ // website.domain
940
+ const ENV_NPM_LIB_AND_CLI_TOOL_WEBSITE_DOMAIN = 'seo.example.domain.com';
941
+ // website.title
942
+ const ENV_NPM_LIB_AND_CLI_TOOL_WEBSITE_TITLE = 'Seo';
943
+ // website.useDomain
944
+ const ENV_NPM_LIB_AND_CLI_TOOL_WEBSITE_USE_DOMAIN = true;
945
+ // release.targetArtifact
946
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_TARGET_ARTIFACT = 'npm-lib-and-cli-tool';
947
+ // release.envName
948
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_ENV_NAME = '__';
949
+ // finishCallback
950
+ const ENV_NPM_LIB_AND_CLI_TOOL_FINISH_CALLBACK = () => decodeEnv({});
951
+ // container.only
952
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_ONLY = undefined;
953
+ // container.end
954
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_END = undefined;
955
+ // container.start
956
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_START = undefined;
957
+ // container.skipReleased
958
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_SKIP_RELEASED = undefined;
959
+ // container.skip
960
+ const ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_SKIP = undefined;
961
+ // init.branding
962
+ const ENV_NPM_LIB_AND_CLI_TOOL_INIT_BRANDING = undefined;
963
+ // init.struct
964
+ const ENV_NPM_LIB_AND_CLI_TOOL_INIT_STRUCT = undefined;
965
+ // build.pwa.disableServiceWorker
966
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_DISABLE_SERVICE_WORKER = undefined;
967
+ // build.pwa.name
968
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_NAME = undefined;
969
+ // build.pwa.short_name
970
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_SHORT_NAME = undefined;
971
+ // build.pwa.start_url
972
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_START_URL = undefined;
973
+ // build.electron.showDevTools
974
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_ELECTRON_SHOW_DEV_TOOLS = undefined;
975
+ // build.ssr
976
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_SSR = undefined;
977
+ // build.websql
978
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_WEBSQL = undefined;
979
+ // build.prod
980
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PROD = undefined;
981
+ // build.overrideOutputPath
982
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_OVERRIDE_OUTPUT_PATH = undefined;
983
+ // build.baseHref
984
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_BASE_HREF = undefined;
985
+ // build.watch
986
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_WATCH = undefined;
987
+ // build.genOnlyClientCode
988
+ const ENV_NPM_LIB_AND_CLI_TOOL_BUILD_GEN_ONLY_CLIENT_CODE = undefined;
989
+ // loading.preAngularBootstrap.loader
990
+ const ENV_NPM_LIB_AND_CLI_TOOL_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER = undefined;
991
+ // release.cli.minify
992
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_MINIFY = undefined;
993
+ // release.cli.includeNodeModules
994
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_INCLUDE_NODE_MODULES = undefined;
995
+ // release.cli.uglify
996
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_UGLIFY = undefined;
997
+ // release.cli.obscure
998
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_OBSCURE = undefined;
999
+ // release.cli.compress
1000
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_COMPRESS = undefined;
1001
+ // release.nodeBackendApp.minify
1002
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_NODE_BACKEND_APP_MINIFY = undefined;
1003
+ // release.lib.removeDts
1004
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_REMOVE_DTS = undefined;
1005
+ // release.lib.obscureFileByFile
1006
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_OBSCURE_FILE_BY_FILE = undefined;
1007
+ // release.lib.uglifyFileByFile
1008
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_UGLIFY_FILE_BY_FILE = undefined;
1009
+ // release.lib.includeSourceMaps
1010
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_INCLUDE_SOURCE_MAPS = undefined;
1011
+ // release.lib.compress
1012
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_COMPRESS = undefined;
1013
+ // release.lib.doNotIncludeLibFiles
1014
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES = undefined;
1015
+ // release.resolvedNewVersion
1016
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_RESOLVED_NEW_VERSION = undefined;
1017
+ // release.releaseVersionBumpType
1018
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_RELEASE_VERSION_BUMP_TYPE = undefined;
1019
+ // release.envNumber
1020
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_ENV_NUMBER = undefined;
1021
+ // release.installLocally
1022
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_INSTALL_LOCALLY = undefined;
1023
+ // release.removeReleaseOutputAfterLocalInstall
1024
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL = undefined;
1025
+ // release.releaseType
1026
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_RELEASE_TYPE = undefined;
1027
+ // release.autoReleaseUsingConfig
1028
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_AUTO_RELEASE_USING_CONFIG = undefined;
1029
+ // release.autoReleaseTaskName
1030
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_AUTO_RELEASE_TASK_NAME = undefined;
1031
+ // release.taonInstanceIp
1032
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_TAON_INSTANCE_IP = undefined;
1033
+ // release.skipNpmPublish
1034
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_NPM_PUBLISH = undefined;
1035
+ // release.skipDeploy
1036
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_DEPLOY = undefined;
1037
+ // release.skipTagGitPush
1038
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_TAG_GIT_PUSH = undefined;
1039
+ // release.skipReleaseQuestion
1040
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_RELEASE_QUESTION = undefined;
1041
+ // release.skipResolvingGitChanges
1042
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_RESOLVING_GIT_CHANGES = undefined;
1043
+ // release.skipCodeCutting
1044
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_CODE_CUTTING = undefined;
1045
+ // release.skipBuildingArtifacts
1046
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_BUILDING_ARTIFACTS = undefined;
1047
+ // release.pushToAllOriginsWhenLocalReleaseBranch
1048
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH = undefined;
1049
+ // release.useLocalReleaseBranch
1050
+ const ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_USE_LOCAL_RELEASE_BRANCH = undefined;
1051
+ // copyToManager.beforeCopyHook
1052
+ const ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_BEFORE_COPY_HOOK = undefined;
1053
+ // copyToManager.copyToLocations
1054
+ const ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_COPY_TO_LOCATIONS = undefined;
1055
+ // copyToManager.copyToProjects
1056
+ const ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_COPY_TO_PROJECTS = undefined;
1057
+ // copyToManager.skip
1058
+ const ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_SKIP = undefined;
1059
+ // purpose
1060
+ const ENV_NPM_LIB_AND_CLI_TOOL_PURPOSE = undefined;
1061
+ // recursiveAction
1062
+ const ENV_NPM_LIB_AND_CLI_TOOL_RECURSIVE_ACTION = undefined;
1063
+ // isCiProcess
1064
+ const ENV_NPM_LIB_AND_CLI_TOOL_IS_CI_PROCESS = undefined;
1065
+ // docker.additionalContainer
1066
+ const ENV_NPM_LIB_AND_CLI_TOOL_DOCKER_ADDITIONAL_CONTAINER = undefined;
1067
+ // docker.skipStartInOrder
1068
+ const ENV_NPM_LIB_AND_CLI_TOOL_DOCKER_SKIP_START_IN_ORDER = undefined;
1069
+ // docker.skipUsingMysqlDb
1070
+ const ENV_NPM_LIB_AND_CLI_TOOL_DOCKER_SKIP_USING_MYSQL_DB = undefined;
1071
+ // THIS FILE IS GENERATED - DO NOT MODIFY
1072
+
1073
+ // THIS FILE IS GENERATED - DO NOT MODIFY
1074
+ // config.superUsers
1075
+ const ENV_VSCODE_PLUGIN_CONFIG_SUPER_USERS = () => decodeEnv("dariusz@taon.dev");
1076
+ // config.googleSecret
1077
+ const ENV_VSCODE_PLUGIN_CONFIG_GOOGLE_SECRET = () => decodeEnv("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");
1078
+ // config.googleClientId
1079
+ const ENV_VSCODE_PLUGIN_CONFIG_GOOGLE_CLIENT_ID = '289576612173-2mh31b67pmq2qdes5jedno9tr1m542es.apps.googleusercontent.com';
1080
+ // loading.preAngularBootstrap.background
1081
+ const ENV_VSCODE_PLUGIN_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND = '#fdebed';
1082
+ // loading.preAngularBootstrap.loader.name
1083
+ const ENV_VSCODE_PLUGIN_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME = 'lds-default';
1084
+ // website.domain
1085
+ const ENV_VSCODE_PLUGIN_WEBSITE_DOMAIN = 'seo.example.domain.com';
1086
+ // website.title
1087
+ const ENV_VSCODE_PLUGIN_WEBSITE_TITLE = 'Seo';
1088
+ // website.useDomain
1089
+ const ENV_VSCODE_PLUGIN_WEBSITE_USE_DOMAIN = true;
1090
+ // release.targetArtifact
1091
+ const ENV_VSCODE_PLUGIN_RELEASE_TARGET_ARTIFACT = 'vscode-plugin';
1092
+ // release.envName
1093
+ const ENV_VSCODE_PLUGIN_RELEASE_ENV_NAME = '__';
1094
+ // finishCallback
1095
+ const ENV_VSCODE_PLUGIN_FINISH_CALLBACK = () => decodeEnv({});
1096
+ // container.only
1097
+ const ENV_VSCODE_PLUGIN_CONTAINER_ONLY = undefined;
1098
+ // container.end
1099
+ const ENV_VSCODE_PLUGIN_CONTAINER_END = undefined;
1100
+ // container.start
1101
+ const ENV_VSCODE_PLUGIN_CONTAINER_START = undefined;
1102
+ // container.skipReleased
1103
+ const ENV_VSCODE_PLUGIN_CONTAINER_SKIP_RELEASED = undefined;
1104
+ // container.skip
1105
+ const ENV_VSCODE_PLUGIN_CONTAINER_SKIP = undefined;
1106
+ // init.branding
1107
+ const ENV_VSCODE_PLUGIN_INIT_BRANDING = undefined;
1108
+ // init.struct
1109
+ const ENV_VSCODE_PLUGIN_INIT_STRUCT = undefined;
1110
+ // build.pwa.disableServiceWorker
1111
+ const ENV_VSCODE_PLUGIN_BUILD_PWA_DISABLE_SERVICE_WORKER = undefined;
1112
+ // build.pwa.name
1113
+ const ENV_VSCODE_PLUGIN_BUILD_PWA_NAME = undefined;
1114
+ // build.pwa.short_name
1115
+ const ENV_VSCODE_PLUGIN_BUILD_PWA_SHORT_NAME = undefined;
1116
+ // build.pwa.start_url
1117
+ const ENV_VSCODE_PLUGIN_BUILD_PWA_START_URL = undefined;
1118
+ // build.electron.showDevTools
1119
+ const ENV_VSCODE_PLUGIN_BUILD_ELECTRON_SHOW_DEV_TOOLS = undefined;
1120
+ // build.ssr
1121
+ const ENV_VSCODE_PLUGIN_BUILD_SSR = undefined;
1122
+ // build.websql
1123
+ const ENV_VSCODE_PLUGIN_BUILD_WEBSQL = undefined;
1124
+ // build.prod
1125
+ const ENV_VSCODE_PLUGIN_BUILD_PROD = undefined;
1126
+ // build.overrideOutputPath
1127
+ const ENV_VSCODE_PLUGIN_BUILD_OVERRIDE_OUTPUT_PATH = undefined;
1128
+ // build.baseHref
1129
+ const ENV_VSCODE_PLUGIN_BUILD_BASE_HREF = undefined;
1130
+ // build.watch
1131
+ const ENV_VSCODE_PLUGIN_BUILD_WATCH = undefined;
1132
+ // build.genOnlyClientCode
1133
+ const ENV_VSCODE_PLUGIN_BUILD_GEN_ONLY_CLIENT_CODE = undefined;
1134
+ // loading.preAngularBootstrap.loader
1135
+ const ENV_VSCODE_PLUGIN_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER = undefined;
1136
+ // release.cli.minify
1137
+ const ENV_VSCODE_PLUGIN_RELEASE_CLI_MINIFY = undefined;
1138
+ // release.cli.includeNodeModules
1139
+ const ENV_VSCODE_PLUGIN_RELEASE_CLI_INCLUDE_NODE_MODULES = undefined;
1140
+ // release.cli.uglify
1141
+ const ENV_VSCODE_PLUGIN_RELEASE_CLI_UGLIFY = undefined;
1142
+ // release.cli.obscure
1143
+ const ENV_VSCODE_PLUGIN_RELEASE_CLI_OBSCURE = undefined;
1144
+ // release.cli.compress
1145
+ const ENV_VSCODE_PLUGIN_RELEASE_CLI_COMPRESS = undefined;
1146
+ // release.nodeBackendApp.minify
1147
+ const ENV_VSCODE_PLUGIN_RELEASE_NODE_BACKEND_APP_MINIFY = undefined;
1148
+ // release.lib.removeDts
1149
+ const ENV_VSCODE_PLUGIN_RELEASE_LIB_REMOVE_DTS = undefined;
1150
+ // release.lib.obscureFileByFile
1151
+ const ENV_VSCODE_PLUGIN_RELEASE_LIB_OBSCURE_FILE_BY_FILE = undefined;
1152
+ // release.lib.uglifyFileByFile
1153
+ const ENV_VSCODE_PLUGIN_RELEASE_LIB_UGLIFY_FILE_BY_FILE = undefined;
1154
+ // release.lib.includeSourceMaps
1155
+ const ENV_VSCODE_PLUGIN_RELEASE_LIB_INCLUDE_SOURCE_MAPS = undefined;
1156
+ // release.lib.compress
1157
+ const ENV_VSCODE_PLUGIN_RELEASE_LIB_COMPRESS = undefined;
1158
+ // release.lib.doNotIncludeLibFiles
1159
+ const ENV_VSCODE_PLUGIN_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES = undefined;
1160
+ // release.resolvedNewVersion
1161
+ const ENV_VSCODE_PLUGIN_RELEASE_RESOLVED_NEW_VERSION = undefined;
1162
+ // release.releaseVersionBumpType
1163
+ const ENV_VSCODE_PLUGIN_RELEASE_RELEASE_VERSION_BUMP_TYPE = undefined;
1164
+ // release.envNumber
1165
+ const ENV_VSCODE_PLUGIN_RELEASE_ENV_NUMBER = undefined;
1166
+ // release.installLocally
1167
+ const ENV_VSCODE_PLUGIN_RELEASE_INSTALL_LOCALLY = undefined;
1168
+ // release.removeReleaseOutputAfterLocalInstall
1169
+ const ENV_VSCODE_PLUGIN_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL = undefined;
1170
+ // release.releaseType
1171
+ const ENV_VSCODE_PLUGIN_RELEASE_RELEASE_TYPE = undefined;
1172
+ // release.autoReleaseUsingConfig
1173
+ const ENV_VSCODE_PLUGIN_RELEASE_AUTO_RELEASE_USING_CONFIG = undefined;
1174
+ // release.autoReleaseTaskName
1175
+ const ENV_VSCODE_PLUGIN_RELEASE_AUTO_RELEASE_TASK_NAME = undefined;
1176
+ // release.taonInstanceIp
1177
+ const ENV_VSCODE_PLUGIN_RELEASE_TAON_INSTANCE_IP = undefined;
1178
+ // release.skipNpmPublish
1179
+ const ENV_VSCODE_PLUGIN_RELEASE_SKIP_NPM_PUBLISH = undefined;
1180
+ // release.skipDeploy
1181
+ const ENV_VSCODE_PLUGIN_RELEASE_SKIP_DEPLOY = undefined;
1182
+ // release.skipTagGitPush
1183
+ const ENV_VSCODE_PLUGIN_RELEASE_SKIP_TAG_GIT_PUSH = undefined;
1184
+ // release.skipReleaseQuestion
1185
+ const ENV_VSCODE_PLUGIN_RELEASE_SKIP_RELEASE_QUESTION = undefined;
1186
+ // release.skipResolvingGitChanges
1187
+ const ENV_VSCODE_PLUGIN_RELEASE_SKIP_RESOLVING_GIT_CHANGES = undefined;
1188
+ // release.skipCodeCutting
1189
+ const ENV_VSCODE_PLUGIN_RELEASE_SKIP_CODE_CUTTING = undefined;
1190
+ // release.skipBuildingArtifacts
1191
+ const ENV_VSCODE_PLUGIN_RELEASE_SKIP_BUILDING_ARTIFACTS = undefined;
1192
+ // release.pushToAllOriginsWhenLocalReleaseBranch
1193
+ const ENV_VSCODE_PLUGIN_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH = undefined;
1194
+ // release.useLocalReleaseBranch
1195
+ const ENV_VSCODE_PLUGIN_RELEASE_USE_LOCAL_RELEASE_BRANCH = undefined;
1196
+ // copyToManager.beforeCopyHook
1197
+ const ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_BEFORE_COPY_HOOK = undefined;
1198
+ // copyToManager.copyToLocations
1199
+ const ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_COPY_TO_LOCATIONS = undefined;
1200
+ // copyToManager.copyToProjects
1201
+ const ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_COPY_TO_PROJECTS = undefined;
1202
+ // copyToManager.skip
1203
+ const ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_SKIP = undefined;
1204
+ // purpose
1205
+ const ENV_VSCODE_PLUGIN_PURPOSE = undefined;
1206
+ // recursiveAction
1207
+ const ENV_VSCODE_PLUGIN_RECURSIVE_ACTION = undefined;
1208
+ // isCiProcess
1209
+ const ENV_VSCODE_PLUGIN_IS_CI_PROCESS = undefined;
1210
+ // docker.additionalContainer
1211
+ const ENV_VSCODE_PLUGIN_DOCKER_ADDITIONAL_CONTAINER = undefined;
1212
+ // docker.skipStartInOrder
1213
+ const ENV_VSCODE_PLUGIN_DOCKER_SKIP_START_IN_ORDER = undefined;
1214
+ // docker.skipUsingMysqlDb
1215
+ const ENV_VSCODE_PLUGIN_DOCKER_SKIP_USING_MYSQL_DB = undefined;
1216
+ // THIS FILE IS GENERATED - DO NOT MODIFY
1217
+
1218
+ // THIS FILE IS GENERATED - DO NOT MODIFY
1219
+ /**
1220
+ * Autogenerated by current cli tool
1221
+ */
1222
+ const BUILD_FRAMEWORK_CLI_NAME = 'tnp';
1223
+ /**
1224
+ * This value can be change in taon.jsonc (appId)
1225
+ */
1226
+ const APP_ID = 'com.domain.example.seo';
1227
+ /**
1228
+ * Autogenerated by current cli tool
1229
+ */
1230
+ const BUILD_BASE_HREF = '';
1231
+ /**
1232
+ * This value can be change in taon.jsonc (overrideNpmName)
1233
+ */
1234
+ const PROJECT_NPM_NAME = '@taon-dev/seo';
1235
+ /**
1236
+ * Taon version from you project taon.json
1237
+ */
1238
+ const CURRENT_PACKAGE_TAON_VERSION = 'v21';
1239
+ /**
1240
+ * Autogenerated by current cli tool. Use *tnp release* to bump version.
1241
+ */
1242
+ const CURRENT_PACKAGE_VERSION = '21.0.6';
1243
+ // THIS FILE IS GENERATED - DO NOT MODIFY
1244
+
1245
+ const t$1 = Translation.for('src/lib/my-organization-proj.ts', { "src/lib/my-organization-proj.ts": { "en-US": async () => (await import('./seo-websql-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs')).default, "pl-PL": async () => (await import('./seo-websql-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs')).default } });
1246
+ function myOrgProj() {
1247
+ t$1.gettext('My Translated Company Name!');
1248
+ }
1249
+
1250
+ //#region tnp-helpers cli template
1251
+ /* */
1252
+ //#endregion
1253
+ //#region CLI / global scope
1254
+ /**
1255
+ * This class is for handling global arguments. *
1256
+ * Cli engine will parse: hello:world:from:global:arg to helloWorldFromGlobalArg
1257
+ * (lower case, camel case) .. so you don't need to worry about misspelling
1258
+ * arguments
1259
+ */
1260
+ class $Global extends BaseCommandLineFeature {
1261
+ /**
1262
+ * When you execute cli without arguments:`$ cli`
1263
+ */
1264
+ _() {
1265
+ console.log(`Hello world from cli`);
1266
+ this._exit();
1267
+ }
1268
+ /**
1269
+ * When you execute: `$ cli hello:world:from:global:arg`
1270
+ * (or `$ cli helloWorldFromGlobalArg`)
1271
+ */
1272
+ helloWorldFromGlobalArg() {
1273
+ console.log('hello world from global argument!');
1274
+ this._exit(0);
1275
+ }
1276
+ }
1277
+ //#endregion
1278
+ //#region CLI / Version Scope
1279
+ /**
1280
+ *
1281
+ */
1282
+ class $Version extends BaseCommandLineFeature {
1283
+ /**
1284
+ * When you execute: `$ cli version`
1285
+ */
1286
+ _() {
1287
+ console.log(`Hello world from version argument`);
1288
+ this._exit();
1289
+ }
1290
+ /**
1291
+ * When you execute: `$ cli version:getFromPackageJson`
1292
+ */
1293
+ getFromPackageJson() {
1294
+ const ver = UtilsJson.getValue(this.project.pathFor('package.json'), 'version', {
1295
+ defaultValue: '<not defined>',
1296
+ });
1297
+ console.log(`Version from packageJson ${ver}`);
1298
+ this._exit(0);
1299
+ }
1300
+ }
1301
+ //#endregion
1302
+ /**
1303
+ *
1304
+ * @param argsv process.argsv
1305
+ * @param filename needed if you want ipc communicaiton
1306
+ */
1307
+ async function startCli(argsv, filename) {
1308
+ /* */
1309
+ /* */
1310
+ /* */
1311
+ /* */
1312
+ /* */
1313
+ /* */
1314
+ /* */
1315
+ /* */
1316
+ /* */
1317
+ /* */
1318
+ /* */
1319
+ /* */
1320
+ /* */
1321
+ /* */
1322
+ /* */
1323
+ /* */
1324
+ /* */
1325
+ /* */
1326
+ /* */
1327
+ /* */
1328
+ /* */
1329
+ /* */
1330
+ /* */
1331
+ /* */
1332
+ /* */
1333
+ /* */
1334
+ /* */
1335
+ /* */
1336
+ return (void 0);
1337
+ }
1338
+
1339
+ let TaonSeoProvider = class TaonSeoProvider extends TaonBaseProvider {
1340
+ constructor() {
1341
+ super(...arguments);
1342
+ this.sessions = this.injectCustomRepo(TaonSessionRepository);
1343
+ this.authorization = this.injectCustomRepo(TaonAuthContextRepository);
1344
+ }
1345
+ async requireAdministrator({ req, res, }) {
1346
+ /* */
1347
+ /* */
1348
+ /* */
1349
+ /* */
1350
+ /* */
1351
+ /* */
1352
+ /* */
1353
+ return (void 0);
1354
+ }
1355
+ };
1356
+ TaonSeoProvider = __decorate([
1357
+ TaonProvider({ className: 'TaonSeoProvider' })
1358
+ ], TaonSeoProvider);
1359
+
1360
+ const imageTypes = new Map([
1361
+ ['png', 'image/png'],
1362
+ ['jpg', 'image/jpeg'],
1363
+ ['jpeg', 'image/jpeg'],
1364
+ ['gif', 'image/gif'],
1365
+ ['webp', 'image/webp'],
1366
+ ]);
1367
+ let TaonSeoImageController = class TaonSeoImageController extends TaonBaseStorageController {
1368
+ constructor() {
1369
+ super(...arguments);
1370
+ this.seo = this.injectProvider(TaonSeoProvider);
1371
+ }
1372
+ async beforeEachRequest(params) {
1373
+ /* */
1374
+ /* */
1375
+ /* */
1376
+ /* */
1377
+ /* */
1378
+ /* */
1379
+ /* */
1380
+ /* */
1381
+ /* */
1382
+ /* */
1383
+ /* */
1384
+ /* */
1385
+ /* */
1386
+ /* */
1387
+ /* */
1388
+ /* */
1389
+ /* */
1390
+ return (void 0);
1391
+ }
1392
+ async handleUploadFiles(files, queryParams, req, res) {
1393
+ /* */
1394
+ /* */
1395
+ /* */
1396
+ /* */
1397
+ /* */
1398
+ /* */
1399
+ /* */
1400
+ /* */
1401
+ /* */
1402
+ /* */
1403
+ /* */
1404
+ return (void 0);
1405
+ }
1406
+ afterFileUploadHook() { }
1407
+ buildStorageDownloadUrl(options) {
1408
+ /* */
1409
+ /* */
1410
+ /* */
1411
+ /* */
1412
+ /* */
1413
+ /* */
1414
+ /* */
1415
+ /* */
1416
+ /* */
1417
+ return (void 0);
1418
+ }
1419
+ async createStorageDownloadToken() {
1420
+ throw new Error('SEO images are public; private download tokens are not supported.');
1421
+ }
1422
+ };
1423
+ TaonSeoImageController = __decorate([
1424
+ TaonController({
1425
+ className: 'TaonSeoImageController',
1426
+ allowedMethods: ['download', 'getPublicUrl', 'uploadFormDataToServer'],
1427
+ })
1428
+ ], TaonSeoImageController);
1429
+
1430
+ class TaonSeoImageApiService extends TaonBaseAngularService {
1431
+ constructor() {
1432
+ super(...arguments);
1433
+ this.images = this.injectController(TaonSeoImageController);
1434
+ }
1435
+ async upload(file) {
1436
+ const data = new FormData();
1437
+ data.append('file', file);
1438
+ const response = await this.images.uploadFormDataToServer(data).request();
1439
+ const objects = response.body.json;
1440
+ if (objects.length !== 1 || !objects[0].key) {
1441
+ throw new Error('The upload did not return an image key.');
1442
+ }
1443
+ return objects[0].key;
1444
+ }
1445
+ getPublicUrl(key) {
1446
+ return this.images.getPublicUrl(key).request().observable.pipe(map(response => {
1447
+ const url = response.responseText;
1448
+ if (!url || !/^https?:\/\//.test(url)) {
1449
+ throw new Error('The image endpoint did not return an absolute HTTP(S) URL.');
1450
+ }
1451
+ return url;
1452
+ }));
1453
+ }
1454
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoImageApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1455
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoImageApiService }); }
1456
+ }
1457
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoImageApiService, decorators: [{
1458
+ type: Injectable
1459
+ }] });
1460
+
1461
+ function normalizeSeoPath(path) {
1462
+ const pathname = path.split(/[?#]/, 1)[0];
1463
+ return pathname.replace(/\/+$/, '') || '/';
1464
+ }
1465
+ function seoText(value) {
1466
+ return value?.trim() || null;
1467
+ }
1468
+ function resolveSeoMetadata(settings, path, page) {
1469
+ const title = seoText(page?.title) ?? settings.defaultTitle;
1470
+ const description = seoText(page?.description) ?? settings.defaultDescription;
1471
+ const base = seoText(settings.canonicalBaseUrl);
1472
+ return {
1473
+ title,
1474
+ description,
1475
+ keywords: seoText(page?.keywords) ?? seoText(settings.defaultKeywords),
1476
+ canonicalUrl: seoText(page?.canonicalUrl) ??
1477
+ (base ? `${base.replace(/\/+$/, '')}${normalizeSeoPath(path)}` : null),
1478
+ robots: [
1479
+ !settings.robotsIndex || page?.noIndex ? 'noindex' : 'index',
1480
+ !settings.robotsFollow || page?.noFollow ? 'nofollow' : 'follow',
1481
+ ].join(', '),
1482
+ ogTitle: seoText(page?.ogTitle) ?? title,
1483
+ ogDescription: seoText(page?.ogDescription) ?? description,
1484
+ ogImageKey: seoText(page?.ogImageKey) ?? seoText(settings.defaultImageKey),
1485
+ siteName: settings.siteName,
1486
+ };
1487
+ }
1488
+
1489
+ function seoError(message, status = 400) {
1490
+ Taon.error({ message, status });
1491
+ throw new Error(message);
1492
+ }
1493
+ function requireSeoId(id) {
1494
+ if (!Number.isSafeInteger(id) || id <= 0) {
1495
+ seoError('The page ID must be a positive integer.');
1496
+ }
1497
+ }
1498
+ function requireObject(input) {
1499
+ if (!input || typeof input !== 'object' || Array.isArray(input)) {
1500
+ seoError('SEO settings must be an object.');
1501
+ }
1502
+ }
1503
+ function requireText(value, field, nullable = false) {
1504
+ if (nullable && value === null) {
1505
+ return;
1506
+ }
1507
+ if (typeof value !== 'string') {
1508
+ seoError(`${field} must be ${nullable ? 'a string or null' : 'a string'}.`);
1509
+ }
1510
+ }
1511
+ function requireBoolean(value, field) {
1512
+ if (typeof value !== 'boolean') {
1513
+ seoError(`${field} must be a boolean.`);
1514
+ }
1515
+ }
1516
+ function validateUrl(value, field) {
1517
+ const text = seoText(value);
1518
+ if (!text) {
1519
+ return null;
1520
+ }
1521
+ let url;
1522
+ try {
1523
+ url = new URL(text);
1524
+ }
1525
+ catch {
1526
+ seoError(`${field} must be an absolute HTTP(S) URL.`);
1527
+ }
1528
+ if (!['http:', 'https:'].includes(url.protocol) ||
1529
+ url.username ||
1530
+ url.password ||
1531
+ url.search ||
1532
+ url.hash) {
1533
+ seoError(`${field} must be an HTTP(S) URL without credentials, query or fragment.`);
1534
+ }
1535
+ return url.href;
1536
+ }
1537
+ function validateSeoPath(path) {
1538
+ requireText(path, 'path');
1539
+ const text = path.trim();
1540
+ if (!text.startsWith('/') ||
1541
+ text.startsWith('//') ||
1542
+ /[;?#\\\s()]/.test(text) ||
1543
+ /\/{2,}/.test(text) ||
1544
+ text.split('/').some(segment => segment === '.' || segment === '..')) {
1545
+ seoError('path must be an application path such as /pricing, without query, fragment or auxiliary outlets.');
1546
+ }
1547
+ return normalizeSeoPath(text);
1548
+ }
1549
+ function validateSeoSettings(input) {
1550
+ requireObject(input);
1551
+ for (const field of [
1552
+ 'siteName',
1553
+ 'defaultTitle',
1554
+ 'defaultDescription',
1555
+ ]) {
1556
+ requireText(input[field], field);
1557
+ }
1558
+ for (const field of [
1559
+ 'defaultKeywords',
1560
+ 'defaultImageKey',
1561
+ 'canonicalBaseUrl',
1562
+ ]) {
1563
+ requireText(input[field], field, true);
1564
+ }
1565
+ requireBoolean(input.robotsIndex, 'robotsIndex');
1566
+ requireBoolean(input.robotsFollow, 'robotsFollow');
1567
+ return {
1568
+ siteName: input.siteName.trim(),
1569
+ defaultTitle: input.defaultTitle.trim(),
1570
+ defaultDescription: input.defaultDescription.trim(),
1571
+ defaultKeywords: seoText(input.defaultKeywords),
1572
+ defaultImageKey: seoText(input.defaultImageKey),
1573
+ canonicalBaseUrl: validateUrl(input.canonicalBaseUrl, 'canonicalBaseUrl'),
1574
+ robotsIndex: input.robotsIndex,
1575
+ robotsFollow: input.robotsFollow,
1576
+ };
1577
+ }
1578
+ function validateSeoPage(input) {
1579
+ requireObject(input);
1580
+ for (const field of [
1581
+ 'title',
1582
+ 'description',
1583
+ 'keywords',
1584
+ 'canonicalUrl',
1585
+ 'ogTitle',
1586
+ 'ogDescription',
1587
+ 'ogImageKey',
1588
+ ]) {
1589
+ requireText(input[field], field, true);
1590
+ }
1591
+ requireBoolean(input.noIndex, 'noIndex');
1592
+ requireBoolean(input.noFollow, 'noFollow');
1593
+ return {
1594
+ path: validateSeoPath(input.path),
1595
+ title: seoText(input.title),
1596
+ description: seoText(input.description),
1597
+ keywords: seoText(input.keywords),
1598
+ canonicalUrl: validateUrl(input.canonicalUrl, 'canonicalUrl'),
1599
+ ogTitle: seoText(input.ogTitle),
1600
+ ogDescription: seoText(input.ogDescription),
1601
+ ogImageKey: seoText(input.ogImageKey),
1602
+ noIndex: input.noIndex,
1603
+ noFollow: input.noFollow,
1604
+ };
1605
+ }
1606
+
1607
+ let TaonSeoPageRepository = class TaonSeoPageRepository extends TaonBaseRepository {
1608
+ constructor() {
1609
+ super(...arguments);
1610
+ this.entityClassResolveFn = () => TaonSeoPageEntity;
1611
+ }
1612
+ async findByPath(path) {
1613
+ //#region @websqlFunc
1614
+ return this.findOne({ where: { path: validateSeoPath(path) } });
1615
+ //#endregion
1616
+ }
1617
+ async savePage(input, id) {
1618
+ //#region @websqlFunc
1619
+ const fields = validateSeoPage(input);
1620
+ if (id !== undefined) {
1621
+ requireSeoId(id);
1622
+ }
1623
+ return this.connection.transaction(async (manager) => {
1624
+ const repository = manager.getRepository(this.target);
1625
+ const existing = id === undefined ? null : await repository.findOneBy({ id });
1626
+ if (id !== undefined && !existing) {
1627
+ seoError('SEO page not found.', 404);
1628
+ }
1629
+ const duplicate = await repository.findOneBy({ path: fields.path });
1630
+ if (duplicate && duplicate.id !== id) {
1631
+ seoError('An SEO override already exists for this path.', 409);
1632
+ }
1633
+ const now = new Date();
1634
+ return repository.save(repository.create({
1635
+ ...existing,
1636
+ ...fields,
1637
+ createdAt: existing?.createdAt ?? now,
1638
+ updatedAt: now,
1639
+ }));
1640
+ });
1641
+ //#endregion
1642
+ }
1643
+ async deletePage(id) {
1644
+ //#region @websqlFunc
1645
+ requireSeoId(id);
1646
+ const existing = await this.findOne({ where: { id } });
1647
+ if (!existing) {
1648
+ seoError('SEO page not found.', 404);
1649
+ }
1650
+ await this.delete(id);
1651
+ return existing;
1652
+ //#endregion
1653
+ }
1654
+ };
1655
+ TaonSeoPageRepository = __decorate([
1656
+ TaonRepository({ className: 'TaonSeoPageRepository' })
1657
+ ], TaonSeoPageRepository);
1658
+
1659
+ let TaonSeoPageController = class TaonSeoPageController extends TaonBaseCrudController {
1660
+ constructor() {
1661
+ super(...arguments);
1662
+ this.entityClassResolveFn = () => TaonSeoPageEntity;
1663
+ this.pages = this.injectCustomRepo(TaonSeoPageRepository);
1664
+ this.seo = this.injectProvider(TaonSeoProvider);
1665
+ }
1666
+ async beforeEachRequest(params) {
1667
+ /* */
1668
+ /* */
1669
+ /* */
1670
+ /* */
1671
+ return (void 0);
1672
+ }
1673
+ findByPath(path) {
1674
+ //#region @websqlFunc
1675
+ return async () => this.pages.findByPath(path);
1676
+ //#endregion
1677
+ }
1678
+ createPage(input) {
1679
+ //#region @websqlFunc
1680
+ return async () => this.pages.savePage(input);
1681
+ //#endregion
1682
+ }
1683
+ updatePage(id, input) {
1684
+ //#region @websqlFunc
1685
+ return async () => this.pages.savePage(input, id);
1686
+ //#endregion
1687
+ }
1688
+ deletePage(id) {
1689
+ //#region @websqlFunc
1690
+ return async () => this.pages.deletePage(id);
1691
+ //#endregion
1692
+ }
1693
+ };
1694
+ __decorate([
1695
+ GET(),
1696
+ __param(0, Query('path')),
1697
+ __metadata("design:type", Function),
1698
+ __metadata("design:paramtypes", [String]),
1699
+ __metadata("design:returntype", Object)
1700
+ ], TaonSeoPageController.prototype, "findByPath", null);
1701
+ __decorate([
1702
+ POST(),
1703
+ __param(0, Body()),
1704
+ __metadata("design:type", Function),
1705
+ __metadata("design:paramtypes", [Object]),
1706
+ __metadata("design:returntype", Object)
1707
+ ], TaonSeoPageController.prototype, "createPage", null);
1708
+ __decorate([
1709
+ PUT(),
1710
+ __param(0, Query('id')),
1711
+ __param(1, Body()),
1712
+ __metadata("design:type", Function),
1713
+ __metadata("design:paramtypes", [Number, Object]),
1714
+ __metadata("design:returntype", Object)
1715
+ ], TaonSeoPageController.prototype, "updatePage", null);
1716
+ __decorate([
1717
+ DELETE(),
1718
+ __param(0, Query('id')),
1719
+ __metadata("design:type", Function),
1720
+ __metadata("design:paramtypes", [Number]),
1721
+ __metadata("design:returntype", Object)
1722
+ ], TaonSeoPageController.prototype, "deletePage", null);
1723
+ TaonSeoPageController = __decorate([
1724
+ TaonController({
1725
+ className: 'TaonSeoPageController',
1726
+ allowedMethods: [
1727
+ 'getAll',
1728
+ 'getBy',
1729
+ 'paginationQuery',
1730
+ 'findByPath',
1731
+ 'createPage',
1732
+ 'updatePage',
1733
+ 'deletePage',
1734
+ ],
1735
+ })
1736
+ ], TaonSeoPageController);
1737
+
1738
+ //#endregion
1739
+ class TaonTaonSeoPageConfig extends TaonBaseClass {
1740
+ }
1741
+ let TaonSeoPageProvider = class TaonSeoPageProvider extends TaonBaseProvider {
1742
+ constructor() {
1743
+ super(...arguments);
1744
+ this.enabledTaonSeoPageOption = true;
1745
+ this.config = new TaonTaonSeoPageConfig();
1746
+ }
1747
+ clone() {
1748
+ return {
1749
+ enabledTaonSeoPageOption: this.enabledTaonSeoPageOption,
1750
+ config: this.config.clone(),
1751
+ };
1752
+ }
1753
+ };
1754
+ TaonSeoPageProvider = __decorate([
1755
+ TaonProvider({
1756
+ className: 'TaonSeoPageProvider',
1757
+ })
1758
+ ], TaonSeoPageProvider);
1759
+
1760
+ //#region imports
1761
+ // import { TaonSeoPageMiddleware } from './taon-seo-page.middleware';
1762
+ // import { TaonSeoPageSubscriber } from './taon-seo-page.subscriber';
1763
+ //#endregion
1764
+ const TaonSeoPageAbstractContext = createContext(() => ({
1765
+ contextName: 'TaonSeoPageAbstractContext',
1766
+ abstract: true,
1767
+ contexts: { TaonBaseContext },
1768
+ entities: { TaonSeoPageEntity },
1769
+ controllers: { TaonSeoPageController },
1770
+ repositories: {
1771
+ // TaonSeoPageKvRepository
1772
+ TaonSeoPageRepository,
1773
+ },
1774
+ providers: { TaonSeoPageProvider },
1775
+ // middlewares: { TaonSeoPageMiddleware },
1776
+ // subscribers: { TaonSeoPageSubscriber },
1777
+ }));
1778
+
1779
+ let TaonSeoSettingsRepository = class TaonSeoSettingsRepository extends TaonBaseRepository {
1780
+ constructor() {
1781
+ super(...arguments);
1782
+ this.entityClassResolveFn = () => TaonSeoSettingsEntity;
1783
+ }
1784
+ async getGlobal() {
1785
+ //#region @websqlFunc
1786
+ const repository = this.connection.getRepository(this.target);
1787
+ const now = new Date();
1788
+ // A fixed primary key and conflict-safe insert also handle concurrent first reads.
1789
+ await repository
1790
+ .createQueryBuilder()
1791
+ .insert()
1792
+ .values({
1793
+ ...TaonSeoSettingsDefaultsValues,
1794
+ createdAt: now,
1795
+ updatedAt: now,
1796
+ })
1797
+ .orIgnore()
1798
+ .execute();
1799
+ return repository.findOneByOrFail({ id: 1 });
1800
+ //#endregion
1801
+ }
1802
+ async saveGlobal(input) {
1803
+ //#region @websqlFunc
1804
+ const fields = validateSeoSettings(input);
1805
+ await this.getGlobal();
1806
+ const repository = this.connection.getRepository(this.target);
1807
+ await repository.update({ id: 1 }, { ...fields, updatedAt: new Date() });
1808
+ return repository.findOneByOrFail({ id: 1 });
1809
+ //#endregion
1810
+ }
1811
+ };
1812
+ TaonSeoSettingsRepository = __decorate([
1813
+ TaonRepository({ className: 'TaonSeoSettingsRepository' })
1814
+ ], TaonSeoSettingsRepository);
1815
+
1816
+ let TaonSeoSettingsController = class TaonSeoSettingsController extends TaonBaseCrudController {
1817
+ constructor() {
1818
+ super(...arguments);
1819
+ this.entityClassResolveFn = () => TaonSeoSettingsEntity;
1820
+ this.settings = this.injectCustomRepo(TaonSeoSettingsRepository);
1821
+ this.seo = this.injectProvider(TaonSeoProvider);
1822
+ }
1823
+ async beforeEachRequest(params) {
1824
+ /* */
1825
+ /* */
1826
+ /* */
1827
+ /* */
1828
+ return (void 0);
1829
+ }
1830
+ getGlobal() {
1831
+ //#region @websqlFunc
1832
+ return async () => this.settings.getGlobal();
1833
+ //#endregion
1834
+ }
1835
+ saveGlobal(input) {
1836
+ //#region @websqlFunc
1837
+ return async () => this.settings.saveGlobal(input);
1838
+ //#endregion
1839
+ }
1840
+ };
1841
+ __decorate([
1842
+ GET(),
1843
+ __metadata("design:type", Function),
1844
+ __metadata("design:paramtypes", []),
1845
+ __metadata("design:returntype", Object)
1846
+ ], TaonSeoSettingsController.prototype, "getGlobal", null);
1847
+ __decorate([
1848
+ PUT(),
1849
+ __param(0, Body()),
1850
+ __metadata("design:type", Function),
1851
+ __metadata("design:paramtypes", [Object]),
1852
+ __metadata("design:returntype", Object)
1853
+ ], TaonSeoSettingsController.prototype, "saveGlobal", null);
1854
+ TaonSeoSettingsController = __decorate([
1855
+ TaonController({
1856
+ className: 'TaonSeoSettingsController',
1857
+ allowedMethods: ['getGlobal', 'saveGlobal'],
1858
+ })
1859
+ ], TaonSeoSettingsController);
1860
+
1861
+ //#endregion
1862
+ class TaonTaonSeoSettingsConfig extends TaonBaseClass {
1863
+ }
1864
+ let TaonSeoSettingsProvider = class TaonSeoSettingsProvider extends TaonBaseProvider {
1865
+ constructor() {
1866
+ super(...arguments);
1867
+ this.enabledTaonSeoSettingsOption = true;
1868
+ this.config = new TaonTaonSeoSettingsConfig();
1869
+ }
1870
+ clone() {
1871
+ return {
1872
+ enabledTaonSeoSettingsOption: this.enabledTaonSeoSettingsOption,
1873
+ config: this.config.clone(),
1874
+ };
1875
+ }
1876
+ };
1877
+ TaonSeoSettingsProvider = __decorate([
1878
+ TaonProvider({
1879
+ className: 'TaonSeoSettingsProvider',
1880
+ })
1881
+ ], TaonSeoSettingsProvider);
1882
+
1883
+ //#region imports
1884
+ // import { TaonSeoSettingsMiddleware } from './taon-seo-settings.middleware';
1885
+ // import { TaonSeoSettingsSubscriber } from './taon-seo-settings.subscriber';
1886
+ //#endregion
1887
+ const TaonSeoSettingsAbstractContext = createContext(() => ({
1888
+ contextName: 'TaonSeoSettingsAbstractContext',
1889
+ abstract: true,
1890
+ contexts: { TaonBaseContext },
1891
+ entities: { TaonSeoSettingsEntity },
1892
+ controllers: { TaonSeoSettingsController },
1893
+ repositories: {
1894
+ // TaonSeoSettingsKvRepository
1895
+ TaonSeoSettingsRepository,
1896
+ },
1897
+ providers: { TaonSeoSettingsProvider },
1898
+ // middlewares: { TaonSeoSettingsMiddleware },
1899
+ // subscribers: { TaonSeoSettingsSubscriber },
1900
+ }));
1901
+
1902
+ const TaonSeoAbstractContext = createContext(() => ({
1903
+ contextName: 'TaonSeoAbstractContext',
1904
+ abstract: true,
1905
+ contexts: {
1906
+ TaonSessionAbstractContext,
1907
+ // local
1908
+ TaonSeoPageAbstractContext,
1909
+ TaonSeoSettingsAbstractContext,
1910
+ },
1911
+ controllers: { TaonSeoImageController },
1912
+ providers: { TaonSeoProvider },
1913
+ }));
1914
+
1915
+ class TaonSeoPageApiService extends TaonBaseAngularService {
1916
+ constructor() {
1917
+ super(...arguments);
1918
+ this.taonSeoPageController = this.injectController(TaonSeoPageController);
1919
+ }
1920
+ findByPath(path) {
1921
+ return this.taonSeoPageController.findByPath(path)
1922
+ .request().observable.pipe(map(res => res.body.json));
1923
+ }
1924
+ createPage(input) {
1925
+ return this.taonSeoPageController.createPage(input)
1926
+ .request().observable.pipe(map(res => res.body.json));
1927
+ }
1928
+ updatePage(id, input) {
1929
+ return this.taonSeoPageController.updatePage(id, input)
1930
+ .request().observable.pipe(map(res => res.body.json));
1931
+ }
1932
+ deletePage(id) {
1933
+ return this.taonSeoPageController.deletePage(id).request().observable.pipe(map(res => res.body.json));
1934
+ }
1935
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1936
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageApiService }); }
1937
+ }
1938
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageApiService, decorators: [{
1939
+ type: Injectable
1940
+ }] });
1941
+
1942
+ class TaonSeoSettingsApiService extends TaonBaseAngularService {
1943
+ constructor() {
1944
+ super(...arguments);
1945
+ this.taonSeoSettingsController = this.injectController(TaonSeoSettingsController);
1946
+ }
1947
+ getGlobal() {
1948
+ return this.taonSeoSettingsController.getGlobal()
1949
+ .request().observable.pipe(map(res => res.body.json));
1950
+ }
1951
+ saveGlobal(input) {
1952
+ return this.taonSeoSettingsController.saveGlobal(input)
1953
+ .request().observable.pipe(map(res => res.body.json));
1954
+ }
1955
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1956
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsApiService }); }
1957
+ }
1958
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsApiService, decorators: [{
1959
+ type: Injectable
1960
+ }] });
1961
+
1962
+ class TaonSeoService {
1963
+ constructor() {
1964
+ this.error = signal('', ...(ngDevMode ? [{ debugName: "error" }] : []));
1965
+ this.router = inject(Router);
1966
+ this.settings = inject(TaonSeoSettingsApiService);
1967
+ this.pages = inject(TaonSeoPageApiService);
1968
+ this.images = inject(TaonSeoImageApiService);
1969
+ this.meta = inject(Meta);
1970
+ this.title = inject(Title);
1971
+ this.document = inject(DOCUMENT);
1972
+ this.destroyRef = inject(DestroyRef);
1973
+ this.originalTitle = this.title.getTitle();
1974
+ this.started = false;
1975
+ }
1976
+ start() {
1977
+ if (this.started) {
1978
+ return;
1979
+ }
1980
+ this.started = true;
1981
+ this.router.events
1982
+ .pipe(filter(event => event instanceof NavigationEnd), startWith(null), map(() => this.currentPath()), distinctUntilChanged(), switchMap(path => {
1983
+ this.error.set('');
1984
+ this.clear();
1985
+ return forkJoin({
1986
+ settings: this.settings.getGlobal(),
1987
+ page: this.pages.findByPath(path),
1988
+ }).pipe(map(({ settings, page }) => resolveSeoMetadata(settings, path, page)), switchMap(metadata => {
1989
+ // Clear the previous route's image while resolving a public storage URL.
1990
+ this.apply(metadata, null);
1991
+ return metadata.ogImageKey
1992
+ ? this.images.getPublicUrl(metadata.ogImageKey).pipe(map(imageUrl => ({ metadata, imageUrl })), catchError((error) => {
1993
+ console.error('[taon-seo] Unable to resolve social image', error);
1994
+ this.error.set('The social image could not be loaded for the current page.');
1995
+ return of({ metadata, imageUrl: null });
1996
+ }))
1997
+ : of({ metadata, imageUrl: null });
1998
+ }), catchError((error) => {
1999
+ console.error('[taon-seo] Unable to update route metadata', error);
2000
+ this.error.set('SEO metadata could not be loaded for the current page.');
2001
+ this.clear();
2002
+ return EMPTY;
2003
+ }));
2004
+ }), takeUntilDestroyed(this.destroyRef))
2005
+ .subscribe(({ metadata, imageUrl }) => this.apply(metadata, imageUrl));
2006
+ }
2007
+ currentPath() {
2008
+ const segments = [];
2009
+ let route = this.router.routerState.snapshot.root;
2010
+ while (route) {
2011
+ segments.push(...route.url.map(segment => segment.path));
2012
+ const child = route.children.find(candidate => candidate.outlet === PRIMARY_OUTLET);
2013
+ if (!child) {
2014
+ break;
2015
+ }
2016
+ route = child;
2017
+ }
2018
+ return normalizeSeoPath(`/${segments.join('/')}`);
2019
+ }
2020
+ apply(metadata, imageUrl) {
2021
+ this.title.setTitle(metadata.title);
2022
+ this.setMeta('name', 'description', metadata.description);
2023
+ this.setMeta('name', 'keywords', metadata.keywords);
2024
+ this.setMeta('name', 'robots', metadata.robots);
2025
+ this.setMeta('property', 'og:title', metadata.ogTitle);
2026
+ this.setMeta('property', 'og:description', metadata.ogDescription);
2027
+ this.setMeta('property', 'og:image', imageUrl);
2028
+ this.setMeta('property', 'og:site_name', metadata.siteName);
2029
+ this.setMeta('property', 'og:url', metadata.canonicalUrl);
2030
+ this.setCanonical(metadata.canonicalUrl);
2031
+ }
2032
+ setMeta(attribute, key, content) {
2033
+ const selector = `${attribute}="${key}"`;
2034
+ // Remove duplicates and stale values, including tags left by the previous route.
2035
+ this.meta.getTags(selector).forEach(tag => this.meta.removeTagElement(tag));
2036
+ if (content) {
2037
+ this.meta.addTag({ [attribute]: key, content });
2038
+ }
2039
+ }
2040
+ setCanonical(url) {
2041
+ this.document.head
2042
+ .querySelectorAll('link[rel="canonical"]')
2043
+ .forEach(link => link.remove());
2044
+ if (url) {
2045
+ const link = this.document.createElement('link');
2046
+ link.rel = 'canonical';
2047
+ link.href = url;
2048
+ this.document.head.appendChild(link);
2049
+ }
2050
+ }
2051
+ clear() {
2052
+ this.title.setTitle(this.originalTitle);
2053
+ for (const name of ['description', 'keywords', 'robots']) {
2054
+ this.setMeta('name', name, null);
2055
+ }
2056
+ for (const property of [
2057
+ 'og:title',
2058
+ 'og:description',
2059
+ 'og:image',
2060
+ 'og:site_name',
2061
+ 'og:url',
2062
+ ]) {
2063
+ this.setMeta('property', property, null);
2064
+ }
2065
+ this.setCanonical(null);
2066
+ }
2067
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2068
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoService }); }
2069
+ }
2070
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoService, decorators: [{
2071
+ type: Injectable
2072
+ }] });
2073
+ function provideTaonSeo() {
2074
+ return [
2075
+ TaonSeoService,
2076
+ TaonSeoPageApiService,
2077
+ TaonSeoSettingsApiService,
2078
+ TaonSeoImageApiService,
2079
+ {
2080
+ provide: APP_BOOTSTRAP_LISTENER,
2081
+ multi: true,
2082
+ deps: [TaonSeoService],
2083
+ useFactory: (seo) => () => seo.start(),
2084
+ },
2085
+ ];
2086
+ }
2087
+
2088
+ ;
2089
+ // THIS FILE IS GENERATED - DO NOT MODIFY
2090
+
2091
+ //#region imports
2092
+ //#endregion
2093
+ class TaonSeoBackofficeComponent {
2094
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoBackofficeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2095
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TaonSeoBackofficeComponent, isStandalone: true, selector: "app-taon-seo-backoffice", ngImport: i0, template: "<router-outlet></router-outlet>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2096
+ }
2097
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoBackofficeComponent, decorators: [{
2098
+ type: Component,
2099
+ args: [{ selector: 'app-taon-seo-backoffice', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AsyncPipe, RouterOutlet], template: "<router-outlet></router-outlet>\n", styles: [":host{display:block}\n"] }]
2100
+ }] });
2101
+
2102
+ var taonSeoBackoffice_component = /*#__PURE__*/Object.freeze({
2103
+ __proto__: null,
2104
+ TaonSeoBackofficeComponent: TaonSeoBackofficeComponent
2105
+ });
2106
+
2107
+ //#endregion
2108
+ const TaonSeoBackofficeRoutes = [
2109
+ {
2110
+ path: '',
2111
+ loadComponent: () => Promise.resolve().then(function () { return taonSeoBackoffice_component; }).then(m => m.TaonSeoBackofficeComponent),
2112
+ children: [
2113
+ { path: '', pathMatch: 'full', redirectTo: 'settings' },
2114
+ adminLazyRoute({
2115
+ path: 'settings',
2116
+ menuItem: 'General (Settings)',
2117
+ icon: 'settings',
2118
+ expandable: false,
2119
+ loader: () => Promise.resolve().then(function () { return taonSeoSettingsBackoffice_routes; }).then(m => m.TaonSeoSettingsBackofficeRoutes),
2120
+ }),
2121
+ adminLazyRoute({
2122
+ path: 'pages',
2123
+ menuItem: 'Pages',
2124
+ icon: 'extension',
2125
+ expandable: false,
2126
+ loader: () => Promise.resolve().then(function () { return taonSeoPageBackoffice_routes; }).then(m => m.TaonSeoPageBackofficeRoutes),
2127
+ }),
2128
+ ],
2129
+ },
2130
+ ];
2131
+ /**
2132
+ * By default exporting TaonSeoBackofficeRoutes,
2133
+ * the command `taon generate:app:routes`
2134
+ * will automatically add them to the root routes in ./src/app.ts.
2135
+ */
2136
+ // export default TaonSeoBackofficeRoutes;
2137
+
2138
+ class TaonSeoImageInputComponent {
2139
+ constructor() {
2140
+ this.key = model(null, ...(ngDevMode ? [{ debugName: "key" }] : []));
2141
+ this.disabled = model(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
2142
+ this.uploading = model(false, ...(ngDevMode ? [{ debugName: "uploading" }] : []));
2143
+ this.error = signal('', ...(ngDevMode ? [{ debugName: "error" }] : []));
2144
+ this.api = inject(TaonSeoImageApiService);
2145
+ }
2146
+ async upload(event) {
2147
+ const target = event.target;
2148
+ if (!(target instanceof HTMLInputElement)) {
2149
+ return;
2150
+ }
2151
+ const file = target.files?.[0];
2152
+ if (!file || this.disabled() || this.uploading()) {
2153
+ return;
2154
+ }
2155
+ this.error.set('');
2156
+ this.uploading.set(true);
2157
+ try {
2158
+ this.key.set(await this.api.upload(file));
2159
+ }
2160
+ catch (error) {
2161
+ console.error('[taon-seo-image-input] Unable to upload image', error);
2162
+ this.error.set('The image could not be uploaded. Please try again.');
2163
+ }
2164
+ finally {
2165
+ this.uploading.set(false);
2166
+ target.value = '';
2167
+ }
2168
+ }
2169
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoImageInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2170
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonSeoImageInputComponent, isStandalone: true, selector: "taon-seo-image-input", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, uploading: { classPropertyName: "uploading", publicName: "uploading", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { key: "keyChange", disabled: "disabledChange", uploading: "uploadingChange" }, providers: [TaonSeoImageApiService], ngImport: i0, template: `
2171
+ <p>Social / Open Graph image</p>
2172
+ <input
2173
+ type="file"
2174
+ aria-label="Upload social image"
2175
+ accept="image/png,image/jpeg,image/gif,image/webp"
2176
+ [disabled]="disabled() || uploading()"
2177
+ (change)="upload($event)" />
2178
+ @if (key()) {
2179
+ <p>Image key: {{ key() }}</p>
2180
+ <button
2181
+ mat-button
2182
+ type="button"
2183
+ [disabled]="disabled() || uploading()"
2184
+ (click)="key.set(null)">
2185
+ Clear image
2186
+ </button>
2187
+ }
2188
+ @if (uploading()) {
2189
+ <p role="status">Uploading image...</p>
2190
+ }
2191
+ @if (error()) {
2192
+ <p role="alert">{{ error() }}</p>
2193
+ }
2194
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2195
+ }
2196
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoImageInputComponent, decorators: [{
2197
+ type: Component,
2198
+ args: [{
2199
+ selector: 'taon-seo-image-input',
2200
+ changeDetection: ChangeDetectionStrategy.OnPush,
2201
+ imports: [MatButtonModule],
2202
+ providers: [TaonSeoImageApiService],
2203
+ template: `
2204
+ <p>Social / Open Graph image</p>
2205
+ <input
2206
+ type="file"
2207
+ aria-label="Upload social image"
2208
+ accept="image/png,image/jpeg,image/gif,image/webp"
2209
+ [disabled]="disabled() || uploading()"
2210
+ (change)="upload($event)" />
2211
+ @if (key()) {
2212
+ <p>Image key: {{ key() }}</p>
2213
+ <button
2214
+ mat-button
2215
+ type="button"
2216
+ [disabled]="disabled() || uploading()"
2217
+ (click)="key.set(null)">
2218
+ Clear image
2219
+ </button>
2220
+ }
2221
+ @if (uploading()) {
2222
+ <p role="status">Uploading image...</p>
2223
+ }
2224
+ @if (error()) {
2225
+ <p role="alert">{{ error() }}</p>
2226
+ }
2227
+ `,
2228
+ }]
2229
+ }], propDecorators: { key: [{ type: i0.Input, args: [{ isSignal: true, alias: "key", required: false }] }, { type: i0.Output, args: ["keyChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }, { type: i0.Output, args: ["disabledChange"] }], uploading: [{ type: i0.Input, args: [{ isSignal: true, alias: "uploading", required: false }] }, { type: i0.Output, args: ["uploadingChange"] }] } });
2230
+
2231
+ //#region imports
2232
+ //#endregion
2233
+ class TaonSeoPageConfigService extends TaonBaseAngularService {
2234
+ constructor() {
2235
+ super(...arguments);
2236
+ this.taonSeoPageProvider = this.injectProvider(TaonSeoPageProvider);
2237
+ }
2238
+ get isEnableOption() {
2239
+ return this.taonSeoPageProvider.enabledTaonSeoPageOption;
2240
+ }
2241
+ clone() {
2242
+ const cloned = this.taonSeoPageProvider.clone();
2243
+ return cloned;
2244
+ }
2245
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageConfigService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2246
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageConfigService }); }
2247
+ }
2248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageConfigService, decorators: [{
2249
+ type: Injectable
2250
+ }] });
2251
+
2252
+ const t = Translation.for('src/lib/taon-seo-page/taon-seo-page.constants.ts', { "src/lib/taon-seo-page/taon-seo-page.constants.ts": { "en-US": async () => (await import('./seo-websql-taon-seo-page.constants.ts.en-US.i18n.data-Dsakq_TX.mjs')).default, "pl-PL": async () => (await import('./seo-websql-taon-seo-page.constants.ts.pl-PL.i18n.data-BP9Mj15C.mjs')).default } });
2253
+ const TaonSeoPageDefaultsValues = {
2254
+ path: '/',
2255
+ title: null,
2256
+ description: null,
2257
+ keywords: null,
2258
+ canonicalUrl: null,
2259
+ ogTitle: null,
2260
+ ogDescription: null,
2261
+ ogImageKey: null,
2262
+ noIndex: false,
2263
+ noFollow: false,
2264
+ };
2265
+ var TaonSeoPageErrors;
2266
+ (function (TaonSeoPageErrors) {
2267
+ TaonSeoPageErrors["INVALID_PASSWORD_EXAMPLE_ERROR"] = "INVALID_PASSWORD_EXAMPLE_ERROR";
2268
+ })(TaonSeoPageErrors || (TaonSeoPageErrors = {}));
2269
+ const TaonSeoPageTranslationErorsMap = new Map([
2270
+ [TaonSeoPageErrors.INVALID_PASSWORD_EXAMPLE_ERROR, t.gettext('Invalid Password')],
2271
+ ]);
2272
+
2273
+ //#endregion
2274
+ let TaonSeoPageKvRepository = class TaonSeoPageKvRepository extends TaonBaseKvRepository {
2275
+ async notifyUsers(users) {
2276
+ this.set('usersToNotify', users);
2277
+ }
2278
+ };
2279
+ TaonSeoPageKvRepository = __decorate([
2280
+ TaonRepository({
2281
+ className: 'TaonSeoPageKvRepository',
2282
+ })
2283
+ ], TaonSeoPageKvRepository);
2284
+
2285
+ //#endregion
2286
+ let TaonSeoPageMiddleware = class TaonSeoPageMiddleware extends TaonBaseMiddleware {
2287
+ };
2288
+ TaonSeoPageMiddleware = __decorate([
2289
+ TaonMiddleware({
2290
+ className: 'TaonSeoPageMiddleware',
2291
+ })
2292
+ ], TaonSeoPageMiddleware);
2293
+
2294
+ var TaonSeoPageModels;
2295
+ (function (TaonSeoPageModels) {
2296
+ let TaonSeoPageState;
2297
+ (function (TaonSeoPageState) {
2298
+ TaonSeoPageState["Active"] = "active";
2299
+ TaonSeoPageState["Inactive"] = "inactive";
2300
+ })(TaonSeoPageState = TaonSeoPageModels.TaonSeoPageState || (TaonSeoPageModels.TaonSeoPageState = {}));
2301
+ })(TaonSeoPageModels || (TaonSeoPageModels = {}));
2302
+
2303
+ //#endregion
2304
+ let TaonSeoPageSubscriber = class TaonSeoPageSubscriber extends TaonBaseSubscriberForEntity {
2305
+ constructor() {
2306
+ super(...arguments);
2307
+ this.taonSeoPageProvider = this.injectProvider(TaonSeoPageProvider);
2308
+ }
2309
+ listenTo() {
2310
+ return TaonSeoPageEntity;
2311
+ }
2312
+ };
2313
+ TaonSeoPageSubscriber = __decorate([
2314
+ TaonSubscriber({
2315
+ className: 'TaonSeoPageSubscriber',
2316
+ // allowedEvents: ['afterUpdate'],
2317
+ })
2318
+ ], TaonSeoPageSubscriber);
2319
+
2320
+ var TaonSeoPageUtils;
2321
+ (function (TaonSeoPageUtils) {
2322
+ function isActive(state) {
2323
+ return state === 'active';
2324
+ }
2325
+ TaonSeoPageUtils.isActive = isActive;
2326
+ })(TaonSeoPageUtils || (TaonSeoPageUtils = {}));
2327
+
2328
+ var TaonSeoPageValidators;
2329
+ (function (TaonSeoPageValidators) {
2330
+ //#region @browser
2331
+ /**
2332
+ * TODO REMOVE THIS EXAMPLE.
2333
+ */
2334
+ TaonSeoPageValidators.passwordMatchValidator = (control) => {
2335
+ const password = control.get('password');
2336
+ const passwordRepeat = control.get('passwordRepeat');
2337
+ if (!password || !passwordRepeat) {
2338
+ return null;
2339
+ }
2340
+ return password.value === passwordRepeat.value
2341
+ ? null
2342
+ : { [TaonSeoPageErrors.INVALID_PASSWORD_EXAMPLE_ERROR]: true };
2343
+ };
2344
+ //#endregion
2345
+ })(TaonSeoPageValidators || (TaonSeoPageValidators = {}));
2346
+
2347
+ //#region imports
2348
+ //#endregion
2349
+ class TaonSeoSettingsConfigService extends TaonBaseAngularService {
2350
+ constructor() {
2351
+ super(...arguments);
2352
+ this.taonSeoSettingsProvider = this.injectProvider(TaonSeoSettingsProvider);
2353
+ }
2354
+ get isEnableOption() {
2355
+ return this.taonSeoSettingsProvider.enabledTaonSeoSettingsOption;
2356
+ }
2357
+ clone() {
2358
+ const cloned = this.taonSeoSettingsProvider.clone();
2359
+ return cloned;
2360
+ }
2361
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsConfigService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2362
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsConfigService }); }
2363
+ }
2364
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsConfigService, decorators: [{
2365
+ type: Injectable
2366
+ }] });
2367
+
2368
+ //#endregion
2369
+ let TaonSeoSettingsKvRepository = class TaonSeoSettingsKvRepository extends TaonBaseKvRepository {
2370
+ async notifyUsers(users) {
2371
+ this.set('usersToNotify', users);
2372
+ }
2373
+ };
2374
+ TaonSeoSettingsKvRepository = __decorate([
2375
+ TaonRepository({
2376
+ className: 'TaonSeoSettingsKvRepository',
2377
+ })
2378
+ ], TaonSeoSettingsKvRepository);
2379
+
2380
+ //#endregion
2381
+ let TaonSeoSettingsMiddleware = class TaonSeoSettingsMiddleware extends TaonBaseMiddleware {
2382
+ };
2383
+ TaonSeoSettingsMiddleware = __decorate([
2384
+ TaonMiddleware({
2385
+ className: 'TaonSeoSettingsMiddleware',
2386
+ })
2387
+ ], TaonSeoSettingsMiddleware);
2388
+
2389
+ var TaonSeoSettingsModels;
2390
+ (function (TaonSeoSettingsModels) {
2391
+ let TaonSeoSettingsState;
2392
+ (function (TaonSeoSettingsState) {
2393
+ TaonSeoSettingsState["Active"] = "active";
2394
+ TaonSeoSettingsState["Inactive"] = "inactive";
2395
+ })(TaonSeoSettingsState = TaonSeoSettingsModels.TaonSeoSettingsState || (TaonSeoSettingsModels.TaonSeoSettingsState = {}));
2396
+ })(TaonSeoSettingsModels || (TaonSeoSettingsModels = {}));
2397
+
2398
+ //#endregion
2399
+ let TaonSeoSettingsSubscriber = class TaonSeoSettingsSubscriber extends TaonBaseSubscriberForEntity {
2400
+ constructor() {
2401
+ super(...arguments);
2402
+ this.taonSeoSettingsProvider = this.injectProvider(TaonSeoSettingsProvider);
2403
+ }
2404
+ listenTo() {
2405
+ return TaonSeoSettingsEntity;
2406
+ }
2407
+ };
2408
+ TaonSeoSettingsSubscriber = __decorate([
2409
+ TaonSubscriber({
2410
+ className: 'TaonSeoSettingsSubscriber',
2411
+ // allowedEvents: ['afterUpdate'],
2412
+ })
2413
+ ], TaonSeoSettingsSubscriber);
2414
+
2415
+ var TaonSeoSettingsUtils;
2416
+ (function (TaonSeoSettingsUtils) {
2417
+ function isActive(state) {
2418
+ return state === 'active';
2419
+ }
2420
+ TaonSeoSettingsUtils.isActive = isActive;
2421
+ })(TaonSeoSettingsUtils || (TaonSeoSettingsUtils = {}));
2422
+
2423
+ var TaonSeoSettingsValidators;
2424
+ (function (TaonSeoSettingsValidators) {
2425
+ //#region @browser
2426
+ /**
2427
+ * TODO REMOVE THIS EXAMPLE.
2428
+ */
2429
+ TaonSeoSettingsValidators.passwordMatchValidator = (control) => {
2430
+ const password = control.get('password');
2431
+ const passwordRepeat = control.get('passwordRepeat');
2432
+ if (!password || !passwordRepeat) {
2433
+ return null;
2434
+ }
2435
+ return password.value === passwordRepeat.value
2436
+ ? null
2437
+ : { [TaonSeoSettingsErrors.INVALID_PASSWORD_EXAMPLE_ERROR]: true };
2438
+ };
2439
+ //#endregion
2440
+ })(TaonSeoSettingsValidators || (TaonSeoSettingsValidators = {}));
2441
+
2442
+ ;
2443
+ // THIS FILE IS GENERATED - DO NOT MODIFY
2444
+
2445
+ class TaonSeoPageEditDialogComponent {
2446
+ constructor() {
2447
+ this.data = inject(MAT_DIALOG_DATA);
2448
+ this.saving = signal(false, ...(ngDevMode ? [{ debugName: "saving" }] : []));
2449
+ this.uploading = signal(false, ...(ngDevMode ? [{ debugName: "uploading" }] : []));
2450
+ this.error = signal('', ...(ngDevMode ? [{ debugName: "error" }] : []));
2451
+ this.form = new FormGroup({
2452
+ path: new FormControl(this.data.page?.path ?? '/', {
2453
+ nonNullable: true,
2454
+ validators: [
2455
+ Validators.required,
2456
+ Validators.pattern(/^\/[^;?#\\\s()]*$/),
2457
+ ],
2458
+ }),
2459
+ title: new FormControl(this.data.page?.title ?? null),
2460
+ description: new FormControl(this.data.page?.description ?? null),
2461
+ keywords: new FormControl(this.data.page?.keywords ?? null),
2462
+ canonicalUrl: new FormControl(this.data.page?.canonicalUrl ?? null),
2463
+ ogTitle: new FormControl(this.data.page?.ogTitle ?? null),
2464
+ ogDescription: new FormControl(this.data.page?.ogDescription ?? null),
2465
+ ogImageKey: new FormControl(this.data.page?.ogImageKey ?? null),
2466
+ noIndex: new FormControl(this.data.page?.noIndex ?? false, {
2467
+ nonNullable: true,
2468
+ }),
2469
+ noFollow: new FormControl(this.data.page?.noFollow ?? false, {
2470
+ nonNullable: true,
2471
+ }),
2472
+ });
2473
+ this.api = inject(TaonSeoPageApiService);
2474
+ this.destroyRef = inject(DestroyRef);
2475
+ this.ref = inject((MatDialogRef));
2476
+ }
2477
+ close() {
2478
+ if (!this.saving() && !this.uploading()) {
2479
+ this.ref.close();
2480
+ }
2481
+ }
2482
+ save() {
2483
+ if (this.saving() || this.uploading()) {
2484
+ return;
2485
+ }
2486
+ this.form.markAllAsTouched();
2487
+ if (this.form.invalid) {
2488
+ this.error.set('Enter an application path such as /pricing.');
2489
+ return;
2490
+ }
2491
+ this.error.set('');
2492
+ this.saving.set(true);
2493
+ const input = this.form.getRawValue();
2494
+ const request = this.data.page
2495
+ ? this.api.updatePage(this.data.page.id, input)
2496
+ : this.api.createPage(input);
2497
+ request
2498
+ .pipe(takeUntilDestroyed(this.destroyRef), finalize(() => this.saving.set(false)))
2499
+ .subscribe({
2500
+ next: page => this.ref.close(page),
2501
+ error: (error) => {
2502
+ console.error('[taon-seo-page-editor] Unable to save page', error);
2503
+ this.error.set('The page could not be saved. Ensure the path is unique and the canonical URL is an absolute HTTP(S) URL.');
2504
+ },
2505
+ });
2506
+ }
2507
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageEditDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2508
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonSeoPageEditDialogComponent, isStandalone: true, selector: "taon-seo-page-edit-dialog", providers: [TaonSeoPageApiService], ngImport: i0, template: "<h2 mat-dialog-title>{{ data.page ? 'Edit SEO page' : 'Add SEO page' }}</h2>\n<form\n [formGroup]=\"form\"\n (ngSubmit)=\"save()\">\n <mat-dialog-content>\n <p>\n Static/application page overrides. Blank fields inherit global defaults.\n </p>\n @if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n }\n <fieldset [disabled]=\"saving()\">\n <mat-form-field>\n <mat-label>Path</mat-label>\n <input\n matInput\n formControlName=\"path\"\n placeholder=\"/pricing\" />\n <mat-error\n >Enter an application path without query or fragment.</mat-error\n >\n </mat-form-field>\n <mat-form-field>\n <mat-label>Title</mat-label>\n <input\n matInput\n formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Description</mat-label>\n <textarea\n matInput\n formControlName=\"description\"\n rows=\"3\"></textarea>\n </mat-form-field>\n <mat-form-field>\n <mat-label>Keywords</mat-label>\n <input\n matInput\n formControlName=\"keywords\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Canonical URL</mat-label>\n <input\n matInput\n formControlName=\"canonicalUrl\"\n placeholder=\"https://example.com/pricing\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Open Graph title</mat-label>\n <input\n matInput\n formControlName=\"ogTitle\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Open Graph description</mat-label>\n <textarea\n matInput\n formControlName=\"ogDescription\"\n rows=\"3\"></textarea>\n </mat-form-field>\n <taon-seo-image-input\n [key]=\"form.controls.ogImageKey.value\"\n (keyChange)=\"form.controls.ogImageKey.setValue($event)\"\n [disabled]=\"saving()\"\n [(uploading)]=\"uploading\" />\n <mat-checkbox formControlName=\"noIndex\">noIndex</mat-checkbox>\n <mat-checkbox formControlName=\"noFollow\">noFollow</mat-checkbox>\n </fieldset>\n </mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"saving() || uploading()\"\n (click)=\"close()\">\n Cancel\n </button>\n <button\n mat-flat-button\n type=\"submit\"\n [disabled]=\"saving() || uploading()\">\n {{ saving() ? 'Saving...' : 'Save page' }}\n </button>\n </mat-dialog-actions>\n</form>\n", styles: ["fieldset{border:0;display:flex;flex-direction:column;gap:1rem;padding:0}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: TaonSeoImageInputComponent, selector: "taon-seo-image-input", inputs: ["key", "disabled", "uploading"], outputs: ["keyChange", "disabledChange", "uploadingChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2509
+ }
2510
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageEditDialogComponent, decorators: [{
2511
+ type: Component,
2512
+ args: [{ selector: 'taon-seo-page-edit-dialog', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
2513
+ ReactiveFormsModule,
2514
+ MatButtonModule,
2515
+ MatCheckboxModule,
2516
+ MatDialogModule,
2517
+ MatFormFieldModule,
2518
+ MatInputModule,
2519
+ TaonSeoImageInputComponent,
2520
+ ], providers: [TaonSeoPageApiService], template: "<h2 mat-dialog-title>{{ data.page ? 'Edit SEO page' : 'Add SEO page' }}</h2>\n<form\n [formGroup]=\"form\"\n (ngSubmit)=\"save()\">\n <mat-dialog-content>\n <p>\n Static/application page overrides. Blank fields inherit global defaults.\n </p>\n @if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n }\n <fieldset [disabled]=\"saving()\">\n <mat-form-field>\n <mat-label>Path</mat-label>\n <input\n matInput\n formControlName=\"path\"\n placeholder=\"/pricing\" />\n <mat-error\n >Enter an application path without query or fragment.</mat-error\n >\n </mat-form-field>\n <mat-form-field>\n <mat-label>Title</mat-label>\n <input\n matInput\n formControlName=\"title\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Description</mat-label>\n <textarea\n matInput\n formControlName=\"description\"\n rows=\"3\"></textarea>\n </mat-form-field>\n <mat-form-field>\n <mat-label>Keywords</mat-label>\n <input\n matInput\n formControlName=\"keywords\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Canonical URL</mat-label>\n <input\n matInput\n formControlName=\"canonicalUrl\"\n placeholder=\"https://example.com/pricing\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Open Graph title</mat-label>\n <input\n matInput\n formControlName=\"ogTitle\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Open Graph description</mat-label>\n <textarea\n matInput\n formControlName=\"ogDescription\"\n rows=\"3\"></textarea>\n </mat-form-field>\n <taon-seo-image-input\n [key]=\"form.controls.ogImageKey.value\"\n (keyChange)=\"form.controls.ogImageKey.setValue($event)\"\n [disabled]=\"saving()\"\n [(uploading)]=\"uploading\" />\n <mat-checkbox formControlName=\"noIndex\">noIndex</mat-checkbox>\n <mat-checkbox formControlName=\"noFollow\">noFollow</mat-checkbox>\n </fieldset>\n </mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"saving() || uploading()\"\n (click)=\"close()\">\n Cancel\n </button>\n <button\n mat-flat-button\n type=\"submit\"\n [disabled]=\"saving() || uploading()\">\n {{ saving() ? 'Saving...' : 'Save page' }}\n </button>\n </mat-dialog-actions>\n</form>\n", styles: ["fieldset{border:0;display:flex;flex-direction:column;gap:1rem;padding:0}\n"] }]
2521
+ }] });
2522
+
2523
+ class TaonSeoPageBackofficeComponent {
2524
+ constructor() {
2525
+ this.api = inject(TaonSeoPageApiService);
2526
+ this.error = signal('', ...(ngDevMode ? [{ debugName: "error" }] : []));
2527
+ this.deleting = signal(null, ...(ngDevMode ? [{ debugName: "deleting" }] : []));
2528
+ this.dialog = inject(MatDialog);
2529
+ this.destroyRef = inject(DestroyRef);
2530
+ this.columns = [
2531
+ { header: 'ID', field: 'id', sortable: true },
2532
+ { header: 'Path', field: 'path', sortable: true },
2533
+ { header: 'Title', field: 'title', sortable: true },
2534
+ { header: 'noIndex', field: 'noIndex', type: 'boolean' },
2535
+ { header: 'noFollow', field: 'noFollow', type: 'boolean' },
2536
+ {
2537
+ header: 'Actions',
2538
+ field: 'actions',
2539
+ type: 'button',
2540
+ buttons: [
2541
+ {
2542
+ type: 'icon',
2543
+ icon: 'edit',
2544
+ tooltip: 'Edit SEO page',
2545
+ click: (page) => this.edit(page),
2546
+ },
2547
+ {
2548
+ type: 'icon',
2549
+ icon: 'delete',
2550
+ tooltip: 'Delete SEO page',
2551
+ disabled: () => this.deleting() !== null,
2552
+ click: (page) => this.delete(page),
2553
+ },
2554
+ ],
2555
+ },
2556
+ ];
2557
+ }
2558
+ get crud() {
2559
+ return this.api.taonSeoPageController;
2560
+ }
2561
+ add() {
2562
+ this.edit();
2563
+ }
2564
+ edit(page) {
2565
+ this.dialog
2566
+ .open(TaonSeoPageEditDialogComponent, {
2567
+ data: { page },
2568
+ width: '48rem',
2569
+ maxWidth: '95vw',
2570
+ disableClose: true,
2571
+ })
2572
+ .afterClosed()
2573
+ .pipe(takeUntilDestroyed(this.destroyRef))
2574
+ .subscribe(saved => {
2575
+ if (saved) {
2576
+ this.datatable.reload();
2577
+ }
2578
+ });
2579
+ }
2580
+ delete(page) {
2581
+ if (this.deleting() !== null) {
2582
+ return;
2583
+ }
2584
+ this.deleting.set(page.id);
2585
+ this.dialog
2586
+ .open(TaonConfirmDialogComponent, {
2587
+ data: {
2588
+ title: 'Delete SEO page?',
2589
+ message: `Delete the override for ${page.path}? This page will inherit global SEO defaults.`,
2590
+ confirmText: 'Delete',
2591
+ },
2592
+ })
2593
+ .afterClosed()
2594
+ .pipe(takeUntilDestroyed(this.destroyRef))
2595
+ .subscribe(confirmed => {
2596
+ if (!confirmed) {
2597
+ this.deleting.set(null);
2598
+ return;
2599
+ }
2600
+ this.error.set('');
2601
+ this.api
2602
+ .deletePage(page.id)
2603
+ .pipe(takeUntilDestroyed(this.destroyRef), finalize(() => this.deleting.set(null)))
2604
+ .subscribe({
2605
+ next: () => this.datatable.reload(),
2606
+ error: (error) => {
2607
+ console.error('[taon-seo-pages] Unable to delete page', error);
2608
+ this.error.set('The SEO page could not be deleted. Refresh and try again.');
2609
+ },
2610
+ });
2611
+ });
2612
+ }
2613
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageBackofficeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2614
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonSeoPageBackofficeComponent, isStandalone: true, selector: "app-taon-seo-page-backoffice", providers: [TaonSeoPageApiService], viewQueries: [{ propertyName: "datatable", first: true, predicate: TaonDatatableComponent, descendants: true }], ngImport: i0, template: "<h1>SEO pages</h1>\n<p>SEO overrides for application/static pages, not CMS content.</p>\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n<taon-datatable\n [entityCrudController]=\"crud\"\n [columns]=\"columns\"\n [allowedColumns]=\"['id', 'path', 'title', 'noIndex', 'noFollow']\"\n searchMode=\"advanced\"\n (addingItem)=\"add()\">\n</taon-datatable>\n", styles: [":host{display:block;padding:1rem}\n"], dependencies: [{ kind: "component", type: TaonDatatableComponent, selector: "taon-datatable", inputs: ["pageNumber", "pageSize", "pageSizeOptions", "allowedColumns", "expansionTemplate", "entityCrudController", "columns", "hideSearch", "hideAddButton", "safe", "searchMode", "callQueryMethod", "data", "showPaginator"], outputs: ["expansionChange", "addingItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2615
+ }
2616
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoPageBackofficeComponent, decorators: [{
2617
+ type: Component,
2618
+ args: [{ selector: 'app-taon-seo-page-backoffice', changeDetection: ChangeDetectionStrategy.OnPush, imports: [TaonDatatableComponent], providers: [TaonSeoPageApiService], template: "<h1>SEO pages</h1>\n<p>SEO overrides for application/static pages, not CMS content.</p>\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n<taon-datatable\n [entityCrudController]=\"crud\"\n [columns]=\"columns\"\n [allowedColumns]=\"['id', 'path', 'title', 'noIndex', 'noFollow']\"\n searchMode=\"advanced\"\n (addingItem)=\"add()\">\n</taon-datatable>\n", styles: [":host{display:block;padding:1rem}\n"] }]
2619
+ }], propDecorators: { datatable: [{
2620
+ type: ViewChild,
2621
+ args: [TaonDatatableComponent]
2622
+ }] } });
2623
+
2624
+ var taonSeoPageBackoffice_component = /*#__PURE__*/Object.freeze({
2625
+ __proto__: null,
2626
+ TaonSeoPageBackofficeComponent: TaonSeoPageBackofficeComponent
2627
+ });
2628
+
2629
+ //#endregion
2630
+ const TaonSeoPageBackofficeRoutes = [
2631
+ {
2632
+ path: '',
2633
+ loadComponent: () => Promise.resolve().then(function () { return taonSeoPageBackoffice_component; }).then(m => m.TaonSeoPageBackofficeComponent),
2634
+ children: [
2635
+ // adminLazyRoute({
2636
+ // path: 'dashboard',
2637
+ // menuItem: 'Dashboard',
2638
+ // icon: 'dashboard',
2639
+ // expandable: false,
2640
+ // loader: () =>
2641
+ // import('./anothermodule.routes').then(m => m.DashboardRoutes),
2642
+ // }),
2643
+ ],
2644
+ },
2645
+ ];
2646
+ /**
2647
+ * By default exporting TaonSeoPageBackofficeRoutes,
2648
+ * the command `taon generate:app:routes`
2649
+ * will automatically add them to the root routes in ./src/app.ts.
2650
+ */
2651
+ // export default TaonSeoPageBackofficeRoutes;
2652
+
2653
+ var taonSeoPageBackoffice_routes = /*#__PURE__*/Object.freeze({
2654
+ __proto__: null,
2655
+ TaonSeoPageBackofficeRoutes: TaonSeoPageBackofficeRoutes
2656
+ });
2657
+
2658
+ ;
2659
+ // THIS FILE IS GENERATED - DO NOT MODIFY
2660
+
2661
+ class TaonSeoSettingsBackofficeComponent {
2662
+ constructor() {
2663
+ this.form = new FormGroup({
2664
+ siteName: new FormControl('', { nonNullable: true }),
2665
+ defaultTitle: new FormControl('', { nonNullable: true }),
2666
+ defaultDescription: new FormControl('', { nonNullable: true }),
2667
+ defaultKeywords: new FormControl(null),
2668
+ defaultImageKey: new FormControl(null),
2669
+ canonicalBaseUrl: new FormControl(null),
2670
+ robotsIndex: new FormControl(true, { nonNullable: true }),
2671
+ robotsFollow: new FormControl(true, { nonNullable: true }),
2672
+ });
2673
+ this.loading = signal(true, ...(ngDevMode ? [{ debugName: "loading" }] : []));
2674
+ this.saving = signal(false, ...(ngDevMode ? [{ debugName: "saving" }] : []));
2675
+ this.uploading = signal(false, ...(ngDevMode ? [{ debugName: "uploading" }] : []));
2676
+ this.error = signal('', ...(ngDevMode ? [{ debugName: "error" }] : []));
2677
+ this.saved = signal(false, ...(ngDevMode ? [{ debugName: "saved" }] : []));
2678
+ this.api = inject(TaonSeoSettingsApiService);
2679
+ this.destroyRef = inject(DestroyRef);
2680
+ }
2681
+ ngOnInit() {
2682
+ this.load();
2683
+ }
2684
+ load() {
2685
+ this.loading.set(true);
2686
+ this.error.set('');
2687
+ this.api
2688
+ .getGlobal()
2689
+ .pipe(takeUntilDestroyed(this.destroyRef), finalize(() => this.loading.set(false)))
2690
+ .subscribe({
2691
+ next: settings => {
2692
+ this.form.enable();
2693
+ this.form.patchValue(settings);
2694
+ },
2695
+ error: (error) => {
2696
+ console.error('[taon-seo-settings] Unable to load settings', error);
2697
+ this.error.set('SEO settings could not be loaded. Retry before saving.');
2698
+ this.form.disable();
2699
+ },
2700
+ });
2701
+ }
2702
+ save() {
2703
+ if (this.loading() ||
2704
+ this.saving() ||
2705
+ this.uploading() ||
2706
+ this.form.disabled) {
2707
+ return;
2708
+ }
2709
+ this.saving.set(true);
2710
+ this.saved.set(false);
2711
+ this.error.set('');
2712
+ this.api
2713
+ .saveGlobal(this.form.getRawValue())
2714
+ .pipe(takeUntilDestroyed(this.destroyRef), finalize(() => this.saving.set(false)))
2715
+ .subscribe({
2716
+ next: settings => {
2717
+ this.form.patchValue(settings);
2718
+ this.form.markAsPristine();
2719
+ this.saved.set(true);
2720
+ },
2721
+ error: (error) => {
2722
+ console.error('[taon-seo-settings] Unable to save settings', error);
2723
+ this.error.set('SEO settings could not be saved. Check the canonical URL and try again.');
2724
+ },
2725
+ });
2726
+ }
2727
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsBackofficeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2728
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonSeoSettingsBackofficeComponent, isStandalone: true, selector: "app-taon-seo-settings-backoffice", providers: [TaonSeoSettingsApiService], ngImport: i0, template: "<h1>General SEO settings</h1>\n@if (loading()) {\n <p role=\"status\">Loading SEO settings...</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n @if (form.disabled) {\n <button\n mat-button\n type=\"button\"\n (click)=\"load()\">\n Retry\n </button>\n }\n}\n@if (saved()) {\n <p role=\"status\">SEO settings saved.</p>\n}\n<form\n [formGroup]=\"form\"\n (ngSubmit)=\"save()\">\n <fieldset [disabled]=\"loading() || saving() || form.disabled\">\n <mat-form-field>\n <mat-label>Site name</mat-label>\n <input\n matInput\n formControlName=\"siteName\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Default page title</mat-label>\n <input\n matInput\n formControlName=\"defaultTitle\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Default meta description</mat-label>\n <textarea\n matInput\n formControlName=\"defaultDescription\"\n rows=\"4\"></textarea>\n </mat-form-field>\n <mat-form-field>\n <mat-label>Default keywords</mat-label>\n <input\n matInput\n formControlName=\"defaultKeywords\" />\n </mat-form-field>\n <taon-seo-image-input\n [key]=\"form.controls.defaultImageKey.value\"\n (keyChange)=\"form.controls.defaultImageKey.setValue($event)\"\n [disabled]=\"loading() || saving() || form.disabled\"\n [(uploading)]=\"uploading\" />\n <mat-form-field>\n <mat-label>Canonical base URL</mat-label>\n <input\n matInput\n formControlName=\"canonicalBaseUrl\"\n placeholder=\"https://example.com\" />\n <mat-hint\n >Absolute website URL, optionally including its deployment\n subpath.</mat-hint\n >\n </mat-form-field>\n <mat-checkbox formControlName=\"robotsIndex\">Allow indexing</mat-checkbox>\n <mat-checkbox formControlName=\"robotsFollow\"\n >Allow following links</mat-checkbox\n >\n <button\n mat-flat-button\n type=\"submit\"\n [disabled]=\"loading() || saving() || uploading() || form.disabled\">\n {{ saving() ? 'Saving...' : 'Save settings' }}\n </button>\n </fieldset>\n</form>\n", styles: [":host{display:block;padding:1rem}fieldset{border:0;display:flex;flex-direction:column;gap:1rem;max-width:48rem;padding:0}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: TaonSeoImageInputComponent, selector: "taon-seo-image-input", inputs: ["key", "disabled", "uploading"], outputs: ["keyChange", "disabledChange", "uploadingChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2729
+ }
2730
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonSeoSettingsBackofficeComponent, decorators: [{
2731
+ type: Component,
2732
+ args: [{ selector: 'app-taon-seo-settings-backoffice', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
2733
+ ReactiveFormsModule,
2734
+ MatButtonModule,
2735
+ MatCheckboxModule,
2736
+ MatFormFieldModule,
2737
+ MatInputModule,
2738
+ TaonSeoImageInputComponent,
2739
+ ], providers: [TaonSeoSettingsApiService], template: "<h1>General SEO settings</h1>\n@if (loading()) {\n <p role=\"status\">Loading SEO settings...</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n @if (form.disabled) {\n <button\n mat-button\n type=\"button\"\n (click)=\"load()\">\n Retry\n </button>\n }\n}\n@if (saved()) {\n <p role=\"status\">SEO settings saved.</p>\n}\n<form\n [formGroup]=\"form\"\n (ngSubmit)=\"save()\">\n <fieldset [disabled]=\"loading() || saving() || form.disabled\">\n <mat-form-field>\n <mat-label>Site name</mat-label>\n <input\n matInput\n formControlName=\"siteName\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Default page title</mat-label>\n <input\n matInput\n formControlName=\"defaultTitle\" />\n </mat-form-field>\n <mat-form-field>\n <mat-label>Default meta description</mat-label>\n <textarea\n matInput\n formControlName=\"defaultDescription\"\n rows=\"4\"></textarea>\n </mat-form-field>\n <mat-form-field>\n <mat-label>Default keywords</mat-label>\n <input\n matInput\n formControlName=\"defaultKeywords\" />\n </mat-form-field>\n <taon-seo-image-input\n [key]=\"form.controls.defaultImageKey.value\"\n (keyChange)=\"form.controls.defaultImageKey.setValue($event)\"\n [disabled]=\"loading() || saving() || form.disabled\"\n [(uploading)]=\"uploading\" />\n <mat-form-field>\n <mat-label>Canonical base URL</mat-label>\n <input\n matInput\n formControlName=\"canonicalBaseUrl\"\n placeholder=\"https://example.com\" />\n <mat-hint\n >Absolute website URL, optionally including its deployment\n subpath.</mat-hint\n >\n </mat-form-field>\n <mat-checkbox formControlName=\"robotsIndex\">Allow indexing</mat-checkbox>\n <mat-checkbox formControlName=\"robotsFollow\"\n >Allow following links</mat-checkbox\n >\n <button\n mat-flat-button\n type=\"submit\"\n [disabled]=\"loading() || saving() || uploading() || form.disabled\">\n {{ saving() ? 'Saving...' : 'Save settings' }}\n </button>\n </fieldset>\n</form>\n", styles: [":host{display:block;padding:1rem}fieldset{border:0;display:flex;flex-direction:column;gap:1rem;max-width:48rem;padding:0}\n"] }]
2740
+ }] });
2741
+
2742
+ var taonSeoSettingsBackoffice_component = /*#__PURE__*/Object.freeze({
2743
+ __proto__: null,
2744
+ TaonSeoSettingsBackofficeComponent: TaonSeoSettingsBackofficeComponent
2745
+ });
2746
+
2747
+ //#endregion
2748
+ const TaonSeoSettingsBackofficeRoutes = [
2749
+ {
2750
+ path: '',
2751
+ loadComponent: () => Promise.resolve().then(function () { return taonSeoSettingsBackoffice_component; }).then(m => m.TaonSeoSettingsBackofficeComponent),
2752
+ children: [
2753
+ // adminLazyRoute({
2754
+ // path: 'dashboard',
2755
+ // menuItem: 'Dashboard',
2756
+ // icon: 'dashboard',
2757
+ // expandable: false,
2758
+ // loader: () =>
2759
+ // import('./anothermodule.routes').then(m => m.DashboardRoutes),
2760
+ // }),
2761
+ ],
2762
+ },
2763
+ ];
2764
+ /**
2765
+ * By default exporting TaonSeoSettingsBackofficeRoutes,
2766
+ * the command `taon generate:app:routes`
2767
+ * will automatically add them to the root routes in ./src/app.ts.
2768
+ */
2769
+ // export default TaonSeoSettingsBackofficeRoutes;
2770
+
2771
+ var taonSeoSettingsBackoffice_routes = /*#__PURE__*/Object.freeze({
2772
+ __proto__: null,
2773
+ TaonSeoSettingsBackofficeRoutes: TaonSeoSettingsBackofficeRoutes
2774
+ });
2775
+
2776
+ // @ts-nocheck
2777
+ // This file is auto-generated during init process. Do not modify.
2778
+ // This disable this auto generate file.
2779
+ // set property "shouldGenerateAutogenIndexFile: false"
2780
+ // in taon.jsonc of your project.
2781
+
2782
+ var index = {};
2783
+
2784
+ /**
2785
+ * Generated bundle index. Do not edit.
2786
+ */
2787
+
2788
+ export { APP_ID, BUILD_BASE_HREF, BUILD_FRAMEWORK_CLI_NAME, CURRENT_PACKAGE_TAON_VERSION, CURRENT_PACKAGE_VERSION, ENV_ANGULAR_NODE_APP_BUILD_BASE_HREF, ENV_ANGULAR_NODE_APP_BUILD_ELECTRON_SHOW_DEV_TOOLS, ENV_ANGULAR_NODE_APP_BUILD_GEN_ONLY_CLIENT_CODE, ENV_ANGULAR_NODE_APP_BUILD_OVERRIDE_OUTPUT_PATH, ENV_ANGULAR_NODE_APP_BUILD_PROD, ENV_ANGULAR_NODE_APP_BUILD_PWA_DISABLE_SERVICE_WORKER, ENV_ANGULAR_NODE_APP_BUILD_PWA_NAME, ENV_ANGULAR_NODE_APP_BUILD_PWA_SHORT_NAME, ENV_ANGULAR_NODE_APP_BUILD_PWA_START_URL, ENV_ANGULAR_NODE_APP_BUILD_SSR, ENV_ANGULAR_NODE_APP_BUILD_WATCH, ENV_ANGULAR_NODE_APP_BUILD_WEBSQL, ENV_ANGULAR_NODE_APP_CONFIG_GOOGLE_CLIENT_ID, ENV_ANGULAR_NODE_APP_CONFIG_GOOGLE_SECRET, ENV_ANGULAR_NODE_APP_CONFIG_SUPER_USERS, ENV_ANGULAR_NODE_APP_CONTAINER_END, ENV_ANGULAR_NODE_APP_CONTAINER_ONLY, ENV_ANGULAR_NODE_APP_CONTAINER_SKIP, ENV_ANGULAR_NODE_APP_CONTAINER_SKIP_RELEASED, ENV_ANGULAR_NODE_APP_CONTAINER_START, ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_BEFORE_COPY_HOOK, ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_COPY_TO_LOCATIONS, ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_COPY_TO_PROJECTS, ENV_ANGULAR_NODE_APP_COPY_TO_MANAGER_SKIP, ENV_ANGULAR_NODE_APP_DOCKER_ADDITIONAL_CONTAINER, ENV_ANGULAR_NODE_APP_DOCKER_SKIP_START_IN_ORDER, ENV_ANGULAR_NODE_APP_DOCKER_SKIP_USING_MYSQL_DB, ENV_ANGULAR_NODE_APP_FINISH_CALLBACK, ENV_ANGULAR_NODE_APP_INIT_BRANDING, ENV_ANGULAR_NODE_APP_INIT_STRUCT, ENV_ANGULAR_NODE_APP_IS_CI_PROCESS, ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND, ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER, ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME, ENV_ANGULAR_NODE_APP_PURPOSE, ENV_ANGULAR_NODE_APP_RECURSIVE_ACTION, ENV_ANGULAR_NODE_APP_RELEASE_AUTO_RELEASE_TASK_NAME, ENV_ANGULAR_NODE_APP_RELEASE_AUTO_RELEASE_USING_CONFIG, ENV_ANGULAR_NODE_APP_RELEASE_CLI_COMPRESS, ENV_ANGULAR_NODE_APP_RELEASE_CLI_INCLUDE_NODE_MODULES, ENV_ANGULAR_NODE_APP_RELEASE_CLI_MINIFY, ENV_ANGULAR_NODE_APP_RELEASE_CLI_OBSCURE, ENV_ANGULAR_NODE_APP_RELEASE_CLI_UGLIFY, ENV_ANGULAR_NODE_APP_RELEASE_ENV_NAME, ENV_ANGULAR_NODE_APP_RELEASE_ENV_NUMBER, ENV_ANGULAR_NODE_APP_RELEASE_INSTALL_LOCALLY, ENV_ANGULAR_NODE_APP_RELEASE_LIB_COMPRESS, ENV_ANGULAR_NODE_APP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES, ENV_ANGULAR_NODE_APP_RELEASE_LIB_INCLUDE_SOURCE_MAPS, ENV_ANGULAR_NODE_APP_RELEASE_LIB_OBSCURE_FILE_BY_FILE, ENV_ANGULAR_NODE_APP_RELEASE_LIB_REMOVE_DTS, ENV_ANGULAR_NODE_APP_RELEASE_LIB_UGLIFY_FILE_BY_FILE, ENV_ANGULAR_NODE_APP_RELEASE_NODE_BACKEND_APP_MINIFY, ENV_ANGULAR_NODE_APP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH, ENV_ANGULAR_NODE_APP_RELEASE_RELEASE_TYPE, ENV_ANGULAR_NODE_APP_RELEASE_RELEASE_VERSION_BUMP_TYPE, ENV_ANGULAR_NODE_APP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL, ENV_ANGULAR_NODE_APP_RELEASE_RESOLVED_NEW_VERSION, ENV_ANGULAR_NODE_APP_RELEASE_SKIP_BUILDING_ARTIFACTS, ENV_ANGULAR_NODE_APP_RELEASE_SKIP_CODE_CUTTING, ENV_ANGULAR_NODE_APP_RELEASE_SKIP_DEPLOY, ENV_ANGULAR_NODE_APP_RELEASE_SKIP_NPM_PUBLISH, ENV_ANGULAR_NODE_APP_RELEASE_SKIP_RELEASE_QUESTION, ENV_ANGULAR_NODE_APP_RELEASE_SKIP_RESOLVING_GIT_CHANGES, ENV_ANGULAR_NODE_APP_RELEASE_SKIP_TAG_GIT_PUSH, ENV_ANGULAR_NODE_APP_RELEASE_TAON_INSTANCE_IP, ENV_ANGULAR_NODE_APP_RELEASE_TARGET_ARTIFACT, ENV_ANGULAR_NODE_APP_RELEASE_USE_LOCAL_RELEASE_BRANCH, ENV_ANGULAR_NODE_APP_WEBSITE_DOMAIN, ENV_ANGULAR_NODE_APP_WEBSITE_TITLE, ENV_ANGULAR_NODE_APP_WEBSITE_USE_DOMAIN, ENV_DOCS_WEBAPP_BUILD_BASE_HREF, ENV_DOCS_WEBAPP_BUILD_ELECTRON_SHOW_DEV_TOOLS, ENV_DOCS_WEBAPP_BUILD_GEN_ONLY_CLIENT_CODE, ENV_DOCS_WEBAPP_BUILD_OVERRIDE_OUTPUT_PATH, ENV_DOCS_WEBAPP_BUILD_PROD, ENV_DOCS_WEBAPP_BUILD_PWA_DISABLE_SERVICE_WORKER, ENV_DOCS_WEBAPP_BUILD_PWA_NAME, ENV_DOCS_WEBAPP_BUILD_PWA_SHORT_NAME, ENV_DOCS_WEBAPP_BUILD_PWA_START_URL, ENV_DOCS_WEBAPP_BUILD_SSR, ENV_DOCS_WEBAPP_BUILD_WATCH, ENV_DOCS_WEBAPP_BUILD_WEBSQL, ENV_DOCS_WEBAPP_CONFIG_GOOGLE_CLIENT_ID, ENV_DOCS_WEBAPP_CONFIG_GOOGLE_SECRET, ENV_DOCS_WEBAPP_CONFIG_SUPER_USERS, ENV_DOCS_WEBAPP_CONTAINER_END, ENV_DOCS_WEBAPP_CONTAINER_ONLY, ENV_DOCS_WEBAPP_CONTAINER_SKIP, ENV_DOCS_WEBAPP_CONTAINER_SKIP_RELEASED, ENV_DOCS_WEBAPP_CONTAINER_START, ENV_DOCS_WEBAPP_COPY_TO_MANAGER_BEFORE_COPY_HOOK, ENV_DOCS_WEBAPP_COPY_TO_MANAGER_COPY_TO_LOCATIONS, ENV_DOCS_WEBAPP_COPY_TO_MANAGER_COPY_TO_PROJECTS, ENV_DOCS_WEBAPP_COPY_TO_MANAGER_SKIP, ENV_DOCS_WEBAPP_DOCKER_ADDITIONAL_CONTAINER, ENV_DOCS_WEBAPP_DOCKER_SKIP_START_IN_ORDER, ENV_DOCS_WEBAPP_DOCKER_SKIP_USING_MYSQL_DB, ENV_DOCS_WEBAPP_FINISH_CALLBACK, ENV_DOCS_WEBAPP_INIT_BRANDING, ENV_DOCS_WEBAPP_INIT_STRUCT, ENV_DOCS_WEBAPP_IS_CI_PROCESS, ENV_DOCS_WEBAPP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND, ENV_DOCS_WEBAPP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER, ENV_DOCS_WEBAPP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME, ENV_DOCS_WEBAPP_PURPOSE, ENV_DOCS_WEBAPP_RECURSIVE_ACTION, ENV_DOCS_WEBAPP_RELEASE_AUTO_RELEASE_TASK_NAME, ENV_DOCS_WEBAPP_RELEASE_AUTO_RELEASE_USING_CONFIG, ENV_DOCS_WEBAPP_RELEASE_CLI_COMPRESS, ENV_DOCS_WEBAPP_RELEASE_CLI_INCLUDE_NODE_MODULES, ENV_DOCS_WEBAPP_RELEASE_CLI_MINIFY, ENV_DOCS_WEBAPP_RELEASE_CLI_OBSCURE, ENV_DOCS_WEBAPP_RELEASE_CLI_UGLIFY, ENV_DOCS_WEBAPP_RELEASE_ENV_NAME, ENV_DOCS_WEBAPP_RELEASE_ENV_NUMBER, ENV_DOCS_WEBAPP_RELEASE_INSTALL_LOCALLY, ENV_DOCS_WEBAPP_RELEASE_LIB_COMPRESS, ENV_DOCS_WEBAPP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES, ENV_DOCS_WEBAPP_RELEASE_LIB_INCLUDE_SOURCE_MAPS, ENV_DOCS_WEBAPP_RELEASE_LIB_OBSCURE_FILE_BY_FILE, ENV_DOCS_WEBAPP_RELEASE_LIB_REMOVE_DTS, ENV_DOCS_WEBAPP_RELEASE_LIB_UGLIFY_FILE_BY_FILE, ENV_DOCS_WEBAPP_RELEASE_NODE_BACKEND_APP_MINIFY, ENV_DOCS_WEBAPP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH, ENV_DOCS_WEBAPP_RELEASE_RELEASE_TYPE, ENV_DOCS_WEBAPP_RELEASE_RELEASE_VERSION_BUMP_TYPE, ENV_DOCS_WEBAPP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL, ENV_DOCS_WEBAPP_RELEASE_RESOLVED_NEW_VERSION, ENV_DOCS_WEBAPP_RELEASE_SKIP_BUILDING_ARTIFACTS, ENV_DOCS_WEBAPP_RELEASE_SKIP_CODE_CUTTING, ENV_DOCS_WEBAPP_RELEASE_SKIP_DEPLOY, ENV_DOCS_WEBAPP_RELEASE_SKIP_NPM_PUBLISH, ENV_DOCS_WEBAPP_RELEASE_SKIP_RELEASE_QUESTION, ENV_DOCS_WEBAPP_RELEASE_SKIP_RESOLVING_GIT_CHANGES, ENV_DOCS_WEBAPP_RELEASE_SKIP_TAG_GIT_PUSH, ENV_DOCS_WEBAPP_RELEASE_TAON_INSTANCE_IP, ENV_DOCS_WEBAPP_RELEASE_TARGET_ARTIFACT, ENV_DOCS_WEBAPP_RELEASE_USE_LOCAL_RELEASE_BRANCH, ENV_DOCS_WEBAPP_WEBSITE_DOMAIN, ENV_DOCS_WEBAPP_WEBSITE_TITLE, ENV_DOCS_WEBAPP_WEBSITE_USE_DOMAIN, ENV_ELECTRON_APP_BUILD_BASE_HREF, ENV_ELECTRON_APP_BUILD_ELECTRON_SHOW_DEV_TOOLS, ENV_ELECTRON_APP_BUILD_GEN_ONLY_CLIENT_CODE, ENV_ELECTRON_APP_BUILD_OVERRIDE_OUTPUT_PATH, ENV_ELECTRON_APP_BUILD_PROD, ENV_ELECTRON_APP_BUILD_PWA_DISABLE_SERVICE_WORKER, ENV_ELECTRON_APP_BUILD_PWA_NAME, ENV_ELECTRON_APP_BUILD_PWA_SHORT_NAME, ENV_ELECTRON_APP_BUILD_PWA_START_URL, ENV_ELECTRON_APP_BUILD_SSR, ENV_ELECTRON_APP_BUILD_WATCH, ENV_ELECTRON_APP_BUILD_WEBSQL, ENV_ELECTRON_APP_CONFIG_GOOGLE_CLIENT_ID, ENV_ELECTRON_APP_CONFIG_GOOGLE_SECRET, ENV_ELECTRON_APP_CONFIG_SUPER_USERS, ENV_ELECTRON_APP_CONTAINER_END, ENV_ELECTRON_APP_CONTAINER_ONLY, ENV_ELECTRON_APP_CONTAINER_SKIP, ENV_ELECTRON_APP_CONTAINER_SKIP_RELEASED, ENV_ELECTRON_APP_CONTAINER_START, ENV_ELECTRON_APP_COPY_TO_MANAGER_BEFORE_COPY_HOOK, ENV_ELECTRON_APP_COPY_TO_MANAGER_COPY_TO_LOCATIONS, ENV_ELECTRON_APP_COPY_TO_MANAGER_COPY_TO_PROJECTS, ENV_ELECTRON_APP_COPY_TO_MANAGER_SKIP, ENV_ELECTRON_APP_DOCKER_ADDITIONAL_CONTAINER, ENV_ELECTRON_APP_DOCKER_SKIP_START_IN_ORDER, ENV_ELECTRON_APP_DOCKER_SKIP_USING_MYSQL_DB, ENV_ELECTRON_APP_FINISH_CALLBACK, ENV_ELECTRON_APP_INIT_BRANDING, ENV_ELECTRON_APP_INIT_STRUCT, ENV_ELECTRON_APP_IS_CI_PROCESS, ENV_ELECTRON_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND, ENV_ELECTRON_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER, ENV_ELECTRON_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME, ENV_ELECTRON_APP_PURPOSE, ENV_ELECTRON_APP_RECURSIVE_ACTION, ENV_ELECTRON_APP_RELEASE_AUTO_RELEASE_TASK_NAME, ENV_ELECTRON_APP_RELEASE_AUTO_RELEASE_USING_CONFIG, ENV_ELECTRON_APP_RELEASE_CLI_COMPRESS, ENV_ELECTRON_APP_RELEASE_CLI_INCLUDE_NODE_MODULES, ENV_ELECTRON_APP_RELEASE_CLI_MINIFY, ENV_ELECTRON_APP_RELEASE_CLI_OBSCURE, ENV_ELECTRON_APP_RELEASE_CLI_UGLIFY, ENV_ELECTRON_APP_RELEASE_ENV_NAME, ENV_ELECTRON_APP_RELEASE_ENV_NUMBER, ENV_ELECTRON_APP_RELEASE_INSTALL_LOCALLY, ENV_ELECTRON_APP_RELEASE_LIB_COMPRESS, ENV_ELECTRON_APP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES, ENV_ELECTRON_APP_RELEASE_LIB_INCLUDE_SOURCE_MAPS, ENV_ELECTRON_APP_RELEASE_LIB_OBSCURE_FILE_BY_FILE, ENV_ELECTRON_APP_RELEASE_LIB_REMOVE_DTS, ENV_ELECTRON_APP_RELEASE_LIB_UGLIFY_FILE_BY_FILE, ENV_ELECTRON_APP_RELEASE_NODE_BACKEND_APP_MINIFY, ENV_ELECTRON_APP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH, ENV_ELECTRON_APP_RELEASE_RELEASE_TYPE, ENV_ELECTRON_APP_RELEASE_RELEASE_VERSION_BUMP_TYPE, ENV_ELECTRON_APP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL, ENV_ELECTRON_APP_RELEASE_RESOLVED_NEW_VERSION, ENV_ELECTRON_APP_RELEASE_SKIP_BUILDING_ARTIFACTS, ENV_ELECTRON_APP_RELEASE_SKIP_CODE_CUTTING, ENV_ELECTRON_APP_RELEASE_SKIP_DEPLOY, ENV_ELECTRON_APP_RELEASE_SKIP_NPM_PUBLISH, ENV_ELECTRON_APP_RELEASE_SKIP_RELEASE_QUESTION, ENV_ELECTRON_APP_RELEASE_SKIP_RESOLVING_GIT_CHANGES, ENV_ELECTRON_APP_RELEASE_SKIP_TAG_GIT_PUSH, ENV_ELECTRON_APP_RELEASE_TAON_INSTANCE_IP, ENV_ELECTRON_APP_RELEASE_TARGET_ARTIFACT, ENV_ELECTRON_APP_RELEASE_USE_LOCAL_RELEASE_BRANCH, ENV_ELECTRON_APP_WEBSITE_DOMAIN, ENV_ELECTRON_APP_WEBSITE_TITLE, ENV_ELECTRON_APP_WEBSITE_USE_DOMAIN, ENV_MOBILE_APP_BUILD_BASE_HREF, ENV_MOBILE_APP_BUILD_ELECTRON_SHOW_DEV_TOOLS, ENV_MOBILE_APP_BUILD_GEN_ONLY_CLIENT_CODE, ENV_MOBILE_APP_BUILD_OVERRIDE_OUTPUT_PATH, ENV_MOBILE_APP_BUILD_PROD, ENV_MOBILE_APP_BUILD_PWA_DISABLE_SERVICE_WORKER, ENV_MOBILE_APP_BUILD_PWA_NAME, ENV_MOBILE_APP_BUILD_PWA_SHORT_NAME, ENV_MOBILE_APP_BUILD_PWA_START_URL, ENV_MOBILE_APP_BUILD_SSR, ENV_MOBILE_APP_BUILD_WATCH, ENV_MOBILE_APP_BUILD_WEBSQL, ENV_MOBILE_APP_CONFIG_GOOGLE_CLIENT_ID, ENV_MOBILE_APP_CONFIG_GOOGLE_SECRET, ENV_MOBILE_APP_CONFIG_SUPER_USERS, ENV_MOBILE_APP_CONTAINER_END, ENV_MOBILE_APP_CONTAINER_ONLY, ENV_MOBILE_APP_CONTAINER_SKIP, ENV_MOBILE_APP_CONTAINER_SKIP_RELEASED, ENV_MOBILE_APP_CONTAINER_START, ENV_MOBILE_APP_COPY_TO_MANAGER_BEFORE_COPY_HOOK, ENV_MOBILE_APP_COPY_TO_MANAGER_COPY_TO_LOCATIONS, ENV_MOBILE_APP_COPY_TO_MANAGER_COPY_TO_PROJECTS, ENV_MOBILE_APP_COPY_TO_MANAGER_SKIP, ENV_MOBILE_APP_DOCKER_ADDITIONAL_CONTAINER, ENV_MOBILE_APP_DOCKER_SKIP_START_IN_ORDER, ENV_MOBILE_APP_DOCKER_SKIP_USING_MYSQL_DB, ENV_MOBILE_APP_FINISH_CALLBACK, ENV_MOBILE_APP_INIT_BRANDING, ENV_MOBILE_APP_INIT_STRUCT, ENV_MOBILE_APP_IS_CI_PROCESS, ENV_MOBILE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND, ENV_MOBILE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER, ENV_MOBILE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME, ENV_MOBILE_APP_PURPOSE, ENV_MOBILE_APP_RECURSIVE_ACTION, ENV_MOBILE_APP_RELEASE_AUTO_RELEASE_TASK_NAME, ENV_MOBILE_APP_RELEASE_AUTO_RELEASE_USING_CONFIG, ENV_MOBILE_APP_RELEASE_CLI_COMPRESS, ENV_MOBILE_APP_RELEASE_CLI_INCLUDE_NODE_MODULES, ENV_MOBILE_APP_RELEASE_CLI_MINIFY, ENV_MOBILE_APP_RELEASE_CLI_OBSCURE, ENV_MOBILE_APP_RELEASE_CLI_UGLIFY, ENV_MOBILE_APP_RELEASE_ENV_NAME, ENV_MOBILE_APP_RELEASE_ENV_NUMBER, ENV_MOBILE_APP_RELEASE_INSTALL_LOCALLY, ENV_MOBILE_APP_RELEASE_LIB_COMPRESS, ENV_MOBILE_APP_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES, ENV_MOBILE_APP_RELEASE_LIB_INCLUDE_SOURCE_MAPS, ENV_MOBILE_APP_RELEASE_LIB_OBSCURE_FILE_BY_FILE, ENV_MOBILE_APP_RELEASE_LIB_REMOVE_DTS, ENV_MOBILE_APP_RELEASE_LIB_UGLIFY_FILE_BY_FILE, ENV_MOBILE_APP_RELEASE_NODE_BACKEND_APP_MINIFY, ENV_MOBILE_APP_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH, ENV_MOBILE_APP_RELEASE_RELEASE_TYPE, ENV_MOBILE_APP_RELEASE_RELEASE_VERSION_BUMP_TYPE, ENV_MOBILE_APP_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL, ENV_MOBILE_APP_RELEASE_RESOLVED_NEW_VERSION, ENV_MOBILE_APP_RELEASE_SKIP_BUILDING_ARTIFACTS, ENV_MOBILE_APP_RELEASE_SKIP_CODE_CUTTING, ENV_MOBILE_APP_RELEASE_SKIP_DEPLOY, ENV_MOBILE_APP_RELEASE_SKIP_NPM_PUBLISH, ENV_MOBILE_APP_RELEASE_SKIP_RELEASE_QUESTION, ENV_MOBILE_APP_RELEASE_SKIP_RESOLVING_GIT_CHANGES, ENV_MOBILE_APP_RELEASE_SKIP_TAG_GIT_PUSH, ENV_MOBILE_APP_RELEASE_TAON_INSTANCE_IP, ENV_MOBILE_APP_RELEASE_TARGET_ARTIFACT, ENV_MOBILE_APP_RELEASE_USE_LOCAL_RELEASE_BRANCH, ENV_MOBILE_APP_WEBSITE_DOMAIN, ENV_MOBILE_APP_WEBSITE_TITLE, ENV_MOBILE_APP_WEBSITE_USE_DOMAIN, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_BASE_HREF, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_ELECTRON_SHOW_DEV_TOOLS, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_GEN_ONLY_CLIENT_CODE, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_OVERRIDE_OUTPUT_PATH, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PROD, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_DISABLE_SERVICE_WORKER, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_NAME, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_SHORT_NAME, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_PWA_START_URL, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_SSR, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_WATCH, ENV_NPM_LIB_AND_CLI_TOOL_BUILD_WEBSQL, ENV_NPM_LIB_AND_CLI_TOOL_CONFIG_GOOGLE_CLIENT_ID, ENV_NPM_LIB_AND_CLI_TOOL_CONFIG_GOOGLE_SECRET, ENV_NPM_LIB_AND_CLI_TOOL_CONFIG_SUPER_USERS, ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_END, ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_ONLY, ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_SKIP, ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_SKIP_RELEASED, ENV_NPM_LIB_AND_CLI_TOOL_CONTAINER_START, ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_BEFORE_COPY_HOOK, ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_COPY_TO_LOCATIONS, ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_COPY_TO_PROJECTS, ENV_NPM_LIB_AND_CLI_TOOL_COPY_TO_MANAGER_SKIP, ENV_NPM_LIB_AND_CLI_TOOL_DOCKER_ADDITIONAL_CONTAINER, ENV_NPM_LIB_AND_CLI_TOOL_DOCKER_SKIP_START_IN_ORDER, ENV_NPM_LIB_AND_CLI_TOOL_DOCKER_SKIP_USING_MYSQL_DB, ENV_NPM_LIB_AND_CLI_TOOL_FINISH_CALLBACK, ENV_NPM_LIB_AND_CLI_TOOL_INIT_BRANDING, ENV_NPM_LIB_AND_CLI_TOOL_INIT_STRUCT, ENV_NPM_LIB_AND_CLI_TOOL_IS_CI_PROCESS, ENV_NPM_LIB_AND_CLI_TOOL_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND, ENV_NPM_LIB_AND_CLI_TOOL_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER, ENV_NPM_LIB_AND_CLI_TOOL_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME, ENV_NPM_LIB_AND_CLI_TOOL_PURPOSE, ENV_NPM_LIB_AND_CLI_TOOL_RECURSIVE_ACTION, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_AUTO_RELEASE_TASK_NAME, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_AUTO_RELEASE_USING_CONFIG, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_COMPRESS, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_INCLUDE_NODE_MODULES, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_MINIFY, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_OBSCURE, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_CLI_UGLIFY, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_ENV_NAME, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_ENV_NUMBER, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_INSTALL_LOCALLY, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_COMPRESS, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_INCLUDE_SOURCE_MAPS, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_OBSCURE_FILE_BY_FILE, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_REMOVE_DTS, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_LIB_UGLIFY_FILE_BY_FILE, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_NODE_BACKEND_APP_MINIFY, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_RELEASE_TYPE, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_RELEASE_VERSION_BUMP_TYPE, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_RESOLVED_NEW_VERSION, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_BUILDING_ARTIFACTS, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_CODE_CUTTING, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_DEPLOY, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_NPM_PUBLISH, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_RELEASE_QUESTION, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_RESOLVING_GIT_CHANGES, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_SKIP_TAG_GIT_PUSH, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_TAON_INSTANCE_IP, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_TARGET_ARTIFACT, ENV_NPM_LIB_AND_CLI_TOOL_RELEASE_USE_LOCAL_RELEASE_BRANCH, ENV_NPM_LIB_AND_CLI_TOOL_WEBSITE_DOMAIN, ENV_NPM_LIB_AND_CLI_TOOL_WEBSITE_TITLE, ENV_NPM_LIB_AND_CLI_TOOL_WEBSITE_USE_DOMAIN, ENV_VSCODE_PLUGIN_BUILD_BASE_HREF, ENV_VSCODE_PLUGIN_BUILD_ELECTRON_SHOW_DEV_TOOLS, ENV_VSCODE_PLUGIN_BUILD_GEN_ONLY_CLIENT_CODE, ENV_VSCODE_PLUGIN_BUILD_OVERRIDE_OUTPUT_PATH, ENV_VSCODE_PLUGIN_BUILD_PROD, ENV_VSCODE_PLUGIN_BUILD_PWA_DISABLE_SERVICE_WORKER, ENV_VSCODE_PLUGIN_BUILD_PWA_NAME, ENV_VSCODE_PLUGIN_BUILD_PWA_SHORT_NAME, ENV_VSCODE_PLUGIN_BUILD_PWA_START_URL, ENV_VSCODE_PLUGIN_BUILD_SSR, ENV_VSCODE_PLUGIN_BUILD_WATCH, ENV_VSCODE_PLUGIN_BUILD_WEBSQL, ENV_VSCODE_PLUGIN_CONFIG_GOOGLE_CLIENT_ID, ENV_VSCODE_PLUGIN_CONFIG_GOOGLE_SECRET, ENV_VSCODE_PLUGIN_CONFIG_SUPER_USERS, ENV_VSCODE_PLUGIN_CONTAINER_END, ENV_VSCODE_PLUGIN_CONTAINER_ONLY, ENV_VSCODE_PLUGIN_CONTAINER_SKIP, ENV_VSCODE_PLUGIN_CONTAINER_SKIP_RELEASED, ENV_VSCODE_PLUGIN_CONTAINER_START, ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_BEFORE_COPY_HOOK, ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_COPY_TO_LOCATIONS, ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_COPY_TO_PROJECTS, ENV_VSCODE_PLUGIN_COPY_TO_MANAGER_SKIP, ENV_VSCODE_PLUGIN_DOCKER_ADDITIONAL_CONTAINER, ENV_VSCODE_PLUGIN_DOCKER_SKIP_START_IN_ORDER, ENV_VSCODE_PLUGIN_DOCKER_SKIP_USING_MYSQL_DB, ENV_VSCODE_PLUGIN_FINISH_CALLBACK, ENV_VSCODE_PLUGIN_INIT_BRANDING, ENV_VSCODE_PLUGIN_INIT_STRUCT, ENV_VSCODE_PLUGIN_IS_CI_PROCESS, ENV_VSCODE_PLUGIN_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND, ENV_VSCODE_PLUGIN_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER, ENV_VSCODE_PLUGIN_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME, ENV_VSCODE_PLUGIN_PURPOSE, ENV_VSCODE_PLUGIN_RECURSIVE_ACTION, ENV_VSCODE_PLUGIN_RELEASE_AUTO_RELEASE_TASK_NAME, ENV_VSCODE_PLUGIN_RELEASE_AUTO_RELEASE_USING_CONFIG, ENV_VSCODE_PLUGIN_RELEASE_CLI_COMPRESS, ENV_VSCODE_PLUGIN_RELEASE_CLI_INCLUDE_NODE_MODULES, ENV_VSCODE_PLUGIN_RELEASE_CLI_MINIFY, ENV_VSCODE_PLUGIN_RELEASE_CLI_OBSCURE, ENV_VSCODE_PLUGIN_RELEASE_CLI_UGLIFY, ENV_VSCODE_PLUGIN_RELEASE_ENV_NAME, ENV_VSCODE_PLUGIN_RELEASE_ENV_NUMBER, ENV_VSCODE_PLUGIN_RELEASE_INSTALL_LOCALLY, ENV_VSCODE_PLUGIN_RELEASE_LIB_COMPRESS, ENV_VSCODE_PLUGIN_RELEASE_LIB_DO_NOT_INCLUDE_LIB_FILES, ENV_VSCODE_PLUGIN_RELEASE_LIB_INCLUDE_SOURCE_MAPS, ENV_VSCODE_PLUGIN_RELEASE_LIB_OBSCURE_FILE_BY_FILE, ENV_VSCODE_PLUGIN_RELEASE_LIB_REMOVE_DTS, ENV_VSCODE_PLUGIN_RELEASE_LIB_UGLIFY_FILE_BY_FILE, ENV_VSCODE_PLUGIN_RELEASE_NODE_BACKEND_APP_MINIFY, ENV_VSCODE_PLUGIN_RELEASE_PUSH_TO_ALL_ORIGINS_WHEN_LOCAL_RELEASE_BRANCH, ENV_VSCODE_PLUGIN_RELEASE_RELEASE_TYPE, ENV_VSCODE_PLUGIN_RELEASE_RELEASE_VERSION_BUMP_TYPE, ENV_VSCODE_PLUGIN_RELEASE_REMOVE_RELEASE_OUTPUT_AFTER_LOCAL_INSTALL, ENV_VSCODE_PLUGIN_RELEASE_RESOLVED_NEW_VERSION, ENV_VSCODE_PLUGIN_RELEASE_SKIP_BUILDING_ARTIFACTS, ENV_VSCODE_PLUGIN_RELEASE_SKIP_CODE_CUTTING, ENV_VSCODE_PLUGIN_RELEASE_SKIP_DEPLOY, ENV_VSCODE_PLUGIN_RELEASE_SKIP_NPM_PUBLISH, ENV_VSCODE_PLUGIN_RELEASE_SKIP_RELEASE_QUESTION, ENV_VSCODE_PLUGIN_RELEASE_SKIP_RESOLVING_GIT_CHANGES, ENV_VSCODE_PLUGIN_RELEASE_SKIP_TAG_GIT_PUSH, ENV_VSCODE_PLUGIN_RELEASE_TAON_INSTANCE_IP, ENV_VSCODE_PLUGIN_RELEASE_TARGET_ARTIFACT, ENV_VSCODE_PLUGIN_RELEASE_USE_LOCAL_RELEASE_BRANCH, ENV_VSCODE_PLUGIN_WEBSITE_DOMAIN, ENV_VSCODE_PLUGIN_WEBSITE_TITLE, ENV_VSCODE_PLUGIN_WEBSITE_USE_DOMAIN, MIGRATIONS_CLASSES_FOR_SeoContext, PROJECT_NPM_NAME, TaonSeoAbstractContext, TaonSeoBackofficeComponent, TaonSeoBackofficeRoutes, TaonSeoImageApiService, TaonSeoImageController, TaonSeoImageInputComponent, TaonSeoPageAbstractContext, TaonSeoPageApiService, TaonSeoPageBackofficeComponent, TaonSeoPageBackofficeRoutes, TaonSeoPageConfigService, TaonSeoPageController, TaonSeoPageDefaultsValues, TaonSeoPageEditDialogComponent, TaonSeoPageEntity, TaonSeoPageErrors, TaonSeoPageKvRepository, TaonSeoPageMiddleware, TaonSeoPageModels, TaonSeoPageProvider, TaonSeoPageRepository, TaonSeoPageSubscriber, TaonSeoPageTranslationErorsMap, TaonSeoPageUtils, TaonSeoPageValidators, TaonSeoProvider, TaonSeoService, TaonSeoSettingsAbstractContext, TaonSeoSettingsApiService, TaonSeoSettingsBackofficeComponent, TaonSeoSettingsBackofficeRoutes, TaonSeoSettingsConfigService, TaonSeoSettingsController, TaonSeoSettingsDefaultsValues, TaonSeoSettingsEntity, TaonSeoSettingsErrors, TaonSeoSettingsKvRepository, TaonSeoSettingsMiddleware, TaonSeoSettingsModels, TaonSeoSettingsProvider, TaonSeoSettingsRepository, TaonSeoSettingsSubscriber, TaonSeoSettingsTranslationErorsMap, TaonSeoSettingsUtils, TaonSeoSettingsValidators, TaonTaonSeoPageConfig, TaonTaonSeoSettingsConfig, myOrgProj, normalizeSeoPath, provideTaonSeo, requireSeoId, resolveSeoMetadata, seoError, seoText, startCli, validateSeoPage, validateSeoPath, validateSeoSettings };
2789
+ //# sourceMappingURL=seo-websql.mjs.map