@fernir2/saas-kit 0.0.208 → 0.0.209

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 (2338) hide show
  1. package/cli/configs/tsconfig.cli.json +1 -1
  2. package/cli/constants/paths.js +61 -0
  3. package/cli/tsconfig.json +1 -0
  4. package/cli/tsconfig.server.json +1 -0
  5. package/dist/styles.css +2 -2
  6. package/generated/meta/crud-handler-map.js +4 -0
  7. package/generated/{meta.json → meta/meta.json} +17 -21
  8. package/index.d.ts +378 -36
  9. package/index.js +318 -25
  10. package/internal/index.d.ts +12 -11
  11. package/internal/index.js +11 -10
  12. package/package.json +1 -1
  13. package/packages/base-repo/app-constants/alias-symbols.d.ts +29 -30
  14. package/packages/base-repo/app-constants/aliases.d.ts +5 -2
  15. package/packages/base-repo/app-constants/aliases.js +1 -1
  16. package/packages/base-repo/app-constants/app-packages-names.d.ts +15 -12
  17. package/packages/base-repo/app-constants/app-packages-names.js +2 -2
  18. package/packages/base-repo/app-constants/command-names.d.ts +22 -9
  19. package/packages/base-repo/app-constants/command-names.js +2 -2
  20. package/packages/base-repo/app-constants/file-paths.d.ts +1 -0
  21. package/packages/base-repo/app-constants/{system-constants.d.ts → internal-system-constants.d.ts} +16 -8
  22. package/packages/base-repo/app-constants/internal-system-constants.js +9 -0
  23. package/packages/base-repo/app-constants/npm-package.d.ts +4 -2
  24. package/packages/base-repo/app-constants/project-paths.d.ts +288 -281
  25. package/packages/base-repo/app-constants/project-paths.js +3 -3
  26. package/packages/base-repo/constants/basic-types.d.ts +2 -0
  27. package/packages/base-repo/constants/ci-constants.d.ts +3 -0
  28. package/packages/base-repo/constants/ci-constants.js +2 -2
  29. package/packages/base-repo/constants/country-data.d.ts +1 -0
  30. package/packages/base-repo/constants/create-app-constants.d.ts +2 -0
  31. package/packages/base-repo/constants/display-labels.d.ts +1 -0
  32. package/packages/base-repo/constants/gitlab.d.ts +8 -5
  33. package/packages/base-repo/constants/html-element-names.d.ts +3 -0
  34. package/packages/base-repo/constants/html-element-names.js +2 -2
  35. package/packages/{fd-toolbox/http → base-repo/constants}/http-constants.d.ts +2 -0
  36. package/packages/base-repo/constants/http-methods.d.ts +1 -0
  37. package/packages/base-repo/constants/http-methods.js +1 -1
  38. package/packages/base-repo/constants/{common-strings.d.ts → internal-common-strings.d.ts} +97 -20
  39. package/packages/base-repo/constants/internal-common-strings.js +4 -0
  40. package/packages/base-repo/constants/{extensions.d.ts → internal-extensions.d.ts} +5 -2
  41. package/packages/base-repo/constants/internal-extensions.js +6 -0
  42. package/packages/base-repo/constants/internal-query-constants.d.ts +6 -0
  43. package/packages/base-repo/constants/internal-query-constants.js +6 -0
  44. package/packages/base-repo/constants/packages.d.ts +19 -17
  45. package/packages/base-repo/constants/packages.js +1 -1
  46. package/packages/base-repo/constants/playwright.d.ts +1 -0
  47. package/packages/base-repo/constants/playwright.js +1 -1
  48. package/packages/base-repo/constants/push-statuses.d.ts +2 -0
  49. package/packages/base-repo/constants/push-statuses.js +1 -1
  50. package/packages/base-repo/constants/react-hooks.d.ts +21 -0
  51. package/packages/base-repo/constants/react-hooks.js +4 -0
  52. package/packages/base-repo/constants/remote-blob-constants.d.ts +1 -0
  53. package/packages/base-repo/constants/resource-meta.d.ts +4 -0
  54. package/packages/base-repo/constants/resource-meta.js +4 -0
  55. package/packages/base-repo/constants/runtime-constants.d.ts +9 -0
  56. package/packages/base-repo/constants/runtime-constants.js +6 -0
  57. package/packages/base-repo/constants/string-duplication-constants.d.ts +4 -3
  58. package/packages/base-repo/constants/string-duplication-constants.js +1 -1
  59. package/packages/{fd-toolbox/strings → base-repo/constants}/strings-constants.d.ts +2 -0
  60. package/packages/base-repo/constants/strings-constants.js +4 -0
  61. package/packages/base-repo/constants/tools-constants.d.ts +37 -2
  62. package/packages/base-repo/constants/tools-constants.js +3 -3
  63. package/packages/base-repo/constants/ui-constants.d.ts +1 -0
  64. package/packages/base-repo/process.d.ts +2 -0
  65. package/packages/base-repo/process.js +4 -0
  66. package/packages/cluster/ci/gitlab-runner.js +3 -3
  67. package/packages/cluster/ci/pnpm-cache-pv-pvc.js +2 -2
  68. package/packages/cluster/constants/cluster-constants.d.ts +10 -0
  69. package/packages/cluster/constants/cluster-constants.js +2 -2
  70. package/packages/cluster/create-vm/config-dev-vm-passwords.d.ts +4 -0
  71. package/packages/cluster/create-vm/config-dev-vm-passwords.js +8 -0
  72. package/packages/cluster/create-vm/config-dev-vm.js +2 -3
  73. package/packages/cluster/create-vm/create-vm.js +16 -16
  74. package/packages/cluster/db/postgres.js +4 -4
  75. package/packages/cluster/kube/namespaces.d.ts +2 -1
  76. package/packages/cluster/kube/namespaces.js +2 -2
  77. package/packages/cluster/kube/networking.js +3 -3
  78. package/packages/cluster/kube/registry.js +4 -4
  79. package/packages/code-quality/config-aware-lint/constants.d.ts +3 -0
  80. package/packages/code-quality/config-aware-lint/constants.js +4 -0
  81. package/packages/code-quality/config-aware-lint/resolve-and-run-eslint.d.ts +25 -0
  82. package/packages/code-quality/config-aware-lint/resolve-and-run-eslint.js +11 -0
  83. package/packages/code-quality/significant-line-counter/agent-significant-line-guard.d.ts +7 -0
  84. package/packages/code-quality/significant-line-counter/agent-significant-line-guard.js +12 -0
  85. package/packages/code-quality/significant-line-counter/reviewable-commit-diff.d.ts +5 -1
  86. package/packages/code-quality/significant-line-counter/reviewable-commit-diff.js +7 -2
  87. package/packages/code-quality/significant-line-counter/significant-line-check-result.d.ts +0 -1
  88. package/packages/code-quality/significant-line-counter/significant-line-check-result.js +2 -1
  89. package/packages/code-quality/significant-line-counter/significant-line-check-statuses.js +2 -2
  90. package/packages/code-quality/significant-line-counter/significant-line-counter-constants.d.ts +7 -0
  91. package/packages/code-quality/significant-line-counter/significant-line-counter-constants.js +4 -0
  92. package/packages/code-quality/significant-line-counter/significant-line-counter.js +4 -1
  93. package/packages/code-quality/team-collaboration-configs.d.ts +72 -0
  94. package/packages/code-quality/team-collaboration-configs.js +4 -0
  95. package/packages/fd-toolbox/api/api-client.d.ts +6 -6
  96. package/packages/fd-toolbox/api/api-client.js +1 -1
  97. package/packages/fd-toolbox/api/api-path-names.js +2 -2
  98. package/packages/fd-toolbox/api/api-paths.js +1 -1
  99. package/packages/fd-toolbox/api/base-api.d.ts +12 -6
  100. package/packages/fd-toolbox/api/base-api.js +3 -3
  101. package/packages/fd-toolbox/api/cache-headers.d.ts +1 -0
  102. package/packages/fd-toolbox/api/cache-headers.js +1 -1
  103. package/packages/fd-toolbox/api/hooks/use-api.js +1 -1
  104. package/packages/fd-toolbox/auth/{login-states.js → internal-login-states.js} +2 -2
  105. package/packages/fd-toolbox/auth/jwt-token.d.ts +1 -0
  106. package/packages/fd-toolbox/auth/login-state.d.ts +3 -1
  107. package/packages/fd-toolbox/auth/{oauth-service-types.d.ts → oauth-provider-types.d.ts} +2 -0
  108. package/packages/fd-toolbox/auth/permissions/permission-notifiers.d.ts +1 -0
  109. package/packages/fd-toolbox/auth/permissions/permission-notifiers.js +1 -1
  110. package/packages/fd-toolbox/auth/register.d.ts +1 -0
  111. package/packages/fd-toolbox/auth/register.js +2 -2
  112. package/packages/fd-toolbox/auth/session-storage.d.ts +2 -0
  113. package/packages/fd-toolbox/auth/session-storage.js +1 -1
  114. package/packages/fd-toolbox/auth/token-response.d.ts +1 -0
  115. package/packages/fd-toolbox/auth/tokens.d.ts +3 -0
  116. package/packages/fd-toolbox/auth/tokens.js +1 -1
  117. package/packages/fd-toolbox/base-resource/base-resource.d.ts +1 -0
  118. package/packages/fd-toolbox/base-resource/base-resource.js +1 -1
  119. package/packages/fd-toolbox/base-resource/optional-user-id-base-resource.d.ts +1 -0
  120. package/packages/fd-toolbox/base-resource/optional-user-id-base-resource.js +1 -1
  121. package/packages/fd-toolbox/base-resource/props/with-optional-user-id-props.d.ts +1 -0
  122. package/packages/fd-toolbox/base-resource/user-id-base-resource.d.ts +1 -0
  123. package/packages/fd-toolbox/base-resource/user-id-base-resource.js +1 -1
  124. package/packages/fd-toolbox/base-resource/with-optional-user-id-and-id.d.ts +1 -0
  125. package/packages/fd-toolbox/cache/cache.d.ts +3 -1
  126. package/packages/fd-toolbox/cache/cache.js +2 -2
  127. package/packages/fd-toolbox/collections/internal-arrays.js +6 -0
  128. package/packages/fd-toolbox/collections/internal-enums.js +6 -0
  129. package/packages/fd-toolbox/constants/api-constants.d.ts +2 -0
  130. package/packages/fd-toolbox/constants/api-error-constants.d.ts +1 -0
  131. package/packages/fd-toolbox/constants/auth-display-labels.d.ts +1 -0
  132. package/packages/fd-toolbox/constants/auth-error-messages.d.ts +1 -0
  133. package/packages/fd-toolbox/constants/cache-keys.d.ts +1 -0
  134. package/packages/fd-toolbox/constants/card-list-configs.d.ts +2 -0
  135. package/packages/fd-toolbox/constants/child-process-events.js +2 -2
  136. package/packages/fd-toolbox/constants/common-user-fields.d.ts +3 -1
  137. package/packages/fd-toolbox/constants/common-user-fields.js +4 -4
  138. package/packages/fd-toolbox/constants/constants.d.ts +6 -0
  139. package/packages/fd-toolbox/constants/constants.js +1 -1
  140. package/packages/fd-toolbox/constants/currency-constants.d.ts +1 -0
  141. package/packages/fd-toolbox/constants/element-suffixes.d.ts +1 -0
  142. package/packages/fd-toolbox/constants/element-suffixes.js +1 -1
  143. package/packages/fd-toolbox/constants/elements.js +2 -2
  144. package/packages/fd-toolbox/constants/environment-constants.d.ts +1 -1
  145. package/packages/fd-toolbox/constants/events.d.ts +1 -0
  146. package/packages/fd-toolbox/constants/fd-resource-ids.d.ts +1 -0
  147. package/packages/fd-toolbox/constants/file-loader-data-types.d.ts +5 -0
  148. package/packages/fd-toolbox/constants/file-loader-data-types.js +2 -2
  149. package/packages/fd-toolbox/constants/html-constants.d.ts +5 -0
  150. package/packages/fd-toolbox/constants/html-constants.js +2 -2
  151. package/packages/fd-toolbox/constants/html-element-attributes.d.ts +1 -1
  152. package/packages/fd-toolbox/constants/html-element-attributes.js +2 -1
  153. package/packages/fd-toolbox/constants/{auth-constants.d.ts → internal-auth-constants.d.ts} +1 -1
  154. package/packages/fd-toolbox/constants/{auth-constants.js → internal-auth-constants.js} +3 -1
  155. package/packages/fd-toolbox/constants/internal-file-constants.js +7 -0
  156. package/packages/fd-toolbox/constants/keyboard-keys.d.ts +1 -0
  157. package/packages/fd-toolbox/constants/meta-query-params.d.ts +1 -0
  158. package/packages/fd-toolbox/constants/meta-query-params.js +2 -3
  159. package/packages/fd-toolbox/constants/{odata-helper-constants.d.ts → odata-constants.d.ts} +8 -0
  160. package/packages/fd-toolbox/constants/{odata-helper-constants.js → odata-constants.js} +1 -1
  161. package/packages/fd-toolbox/constants/odata-query-params.js +7 -0
  162. package/packages/fd-toolbox/constants/permission-names-constants.d.ts +1 -0
  163. package/packages/fd-toolbox/constants/public-files.d.ts +2 -0
  164. package/packages/fd-toolbox/constants/public-files.js +3 -3
  165. package/packages/fd-toolbox/constants/resource-folders.d.ts +1 -0
  166. package/packages/fd-toolbox/constants/resource-id-constants.d.ts +2 -1
  167. package/packages/fd-toolbox/constants/resource-id-constants.js +1 -1
  168. package/packages/fd-toolbox/constants/screen-width-constants.d.ts +1 -0
  169. package/packages/fd-toolbox/constants/scroll-position-constants.d.ts +1 -0
  170. package/packages/fd-toolbox/constants/search-result-constants.d.ts +1 -0
  171. package/packages/fd-toolbox/dates/date-formats.d.ts +1 -0
  172. package/packages/fd-toolbox/dates/date-time.d.ts +12 -0
  173. package/packages/fd-toolbox/dates/date-time.js +10 -10
  174. package/packages/fd-toolbox/dates/time.d.ts +1 -0
  175. package/packages/fd-toolbox/enums/enums.d.ts +12 -3
  176. package/packages/fd-toolbox/enums/enums.js +3 -3
  177. package/packages/fd-toolbox/errors/error-handler.d.ts +1 -0
  178. package/packages/fd-toolbox/errors/error-handler.js +1 -1
  179. package/packages/fd-toolbox/errors/errors.js +1 -1
  180. package/packages/fd-toolbox/errors/problem-details.d.ts +3 -0
  181. package/packages/fd-toolbox/errors/problem-details.js +4 -2
  182. package/packages/fd-toolbox/functions/condition-check-functions.d.ts +1 -0
  183. package/packages/fd-toolbox/functions/condition-check-functions.js +1 -1
  184. package/packages/fd-toolbox/functions/value-checking-functions.d.ts +3 -0
  185. package/packages/fd-toolbox/functions/value-checking-functions.js +1 -1
  186. package/packages/fd-toolbox/hooks/use-async-effect.js +1 -1
  187. package/packages/fd-toolbox/hooks/use-element-id.js +1 -1
  188. package/packages/fd-toolbox/hooks/use-empty-ref.d.ts +1 -0
  189. package/packages/fd-toolbox/hooks/use-empty-ref.js +1 -1
  190. package/packages/fd-toolbox/hooks/use-enter-key.d.ts +2 -1
  191. package/packages/fd-toolbox/hooks/use-enter-key.js +1 -1
  192. package/packages/fd-toolbox/hooks/use-is-client.d.ts +1 -0
  193. package/packages/fd-toolbox/hooks/use-is-client.js +1 -1
  194. package/packages/fd-toolbox/hooks/use-is-mobile.d.ts +1 -0
  195. package/packages/fd-toolbox/hooks/use-is-mobile.js +1 -1
  196. package/packages/fd-toolbox/hooks/use-keyboard-navigation.js +1 -1
  197. package/packages/fd-toolbox/hooks/use-media-query.d.ts +1 -0
  198. package/packages/fd-toolbox/hooks/use-media-query.js +1 -1
  199. package/packages/fd-toolbox/hooks/use-optional-promise.d.ts +1 -0
  200. package/packages/fd-toolbox/hooks/use-optional-promise.js +1 -1
  201. package/packages/fd-toolbox/html/document-body-cursor.d.ts +2 -0
  202. package/packages/fd-toolbox/html/document-body-cursor.js +7 -0
  203. package/packages/fd-toolbox/html/element-ids.js +1 -1
  204. package/packages/fd-toolbox/html/extract-emails-from-html.d.ts +1 -0
  205. package/packages/fd-toolbox/html/extract-emails-from-html.js +1 -1
  206. package/packages/fd-toolbox/html/markdown-renderer.d.ts +1 -0
  207. package/packages/fd-toolbox/html/markdown-renderer.js +1 -1
  208. package/packages/fd-toolbox/http/http.d.ts +1 -0
  209. package/packages/fd-toolbox/http/http.js +1 -1
  210. package/packages/fd-toolbox/http/router-link-query-param.d.ts +1 -0
  211. package/packages/fd-toolbox/http/url/url-builder.js +1 -1
  212. package/packages/fd-toolbox/http/url/urls.d.ts +1 -0
  213. package/packages/fd-toolbox/http/url/urls.js +2 -2
  214. package/packages/fd-toolbox/infra/env-config.js +2 -2
  215. package/packages/fd-toolbox/infra/env-functions.js +2 -1
  216. package/packages/fd-toolbox/infra/toolbox-env-setting-keys.d.ts +1 -0
  217. package/packages/fd-toolbox/infra/toolbox-env-setting-keys.js +1 -1
  218. package/packages/fd-toolbox/io/io.d.ts +2 -0
  219. package/packages/fd-toolbox/io/io.js +3 -3
  220. package/packages/fd-toolbox/lib/environments.d.ts +10 -1
  221. package/packages/fd-toolbox/lib/environments.js +2 -2
  222. package/packages/fd-toolbox/lib/utils.d.ts +9 -3
  223. package/packages/fd-toolbox/lib/utils.js +4 -2
  224. package/packages/fd-toolbox/local-storage/local-storage.d.ts +1 -0
  225. package/packages/fd-toolbox/local-storage/local-storage.js +1 -1
  226. package/packages/fd-toolbox/logging/cli-logger.d.ts +8 -5
  227. package/packages/fd-toolbox/logging/cli-logger.js +1 -1
  228. package/packages/fd-toolbox/logging/format-list.d.ts +3 -0
  229. package/packages/fd-toolbox/logging/format-list.js +1 -1
  230. package/packages/fd-toolbox/logging/loggers.d.ts +4 -0
  231. package/packages/fd-toolbox/logging/loggers.js +1 -1
  232. package/packages/fd-toolbox/markdown/html-dto.d.ts +1 -0
  233. package/packages/fd-toolbox/markdown/markdown-dto.d.ts +1 -0
  234. package/packages/fd-toolbox/name-value.d.ts +1 -0
  235. package/packages/fd-toolbox/notifications.js +2 -2
  236. package/packages/fd-toolbox/numbers/numbers.d.ts +2 -0
  237. package/packages/fd-toolbox/numbers/numbers.js +1 -1
  238. package/packages/fd-toolbox/objects/property-value-messages.d.ts +1 -0
  239. package/packages/fd-toolbox/objects/property-value.d.ts +5 -0
  240. package/packages/fd-toolbox/objects/property-value.js +1 -1
  241. package/packages/fd-toolbox/odata/filters/odata-operator-filter-type-option.d.ts +1 -0
  242. package/packages/fd-toolbox/odata/odata-builder-funcs.d.ts +1 -0
  243. package/packages/fd-toolbox/odata/odata-builder-funcs.js +1 -1
  244. package/packages/fd-toolbox/odata/odata-builders.d.ts +2 -2
  245. package/packages/fd-toolbox/odata/odata-builders.js +1 -1
  246. package/packages/fd-toolbox/odata/odata-constants.d.ts +3 -0
  247. package/packages/fd-toolbox/odata/odata-constants.js +1 -1
  248. package/packages/fd-toolbox/odata/odata-filter-constants.d.ts +5 -0
  249. package/packages/fd-toolbox/odata/odata-formatting/odata-filters.js +9 -0
  250. package/packages/fd-toolbox/odata/{services → odata-formatting}/odata-parsers.d.ts +1 -0
  251. package/packages/fd-toolbox/odata/odata-formatting/odata-parsers.js +12 -0
  252. package/packages/fd-toolbox/odata/odata-lambda-method.d.ts +1 -0
  253. package/packages/fd-toolbox/odata/odata.d.ts +1 -0
  254. package/packages/fd-toolbox/odata/odata.js +3 -3
  255. package/packages/fd-toolbox/odata/odataconfig.d.ts +1 -0
  256. package/packages/fd-toolbox/odata/odataconfig.js +1 -1
  257. package/packages/fd-toolbox/path.d.ts +1 -0
  258. package/packages/fd-toolbox/path.js +1 -1
  259. package/packages/fd-toolbox/paths/ensure.d.ts +3 -0
  260. package/packages/fd-toolbox/paths/ensure.js +1 -1
  261. package/packages/fd-toolbox/paths/paths-names.d.ts +1 -0
  262. package/packages/fd-toolbox/paths/paths-names.js +1 -1
  263. package/packages/fd-toolbox/permissions/constants/{crud-action-to-permission-prefix.d.ts → crud-action-to-permission-prefixes.d.ts} +1 -0
  264. package/packages/fd-toolbox/property/calculate-total-property-value.d.ts +1 -0
  265. package/packages/fd-toolbox/property/calculate-total-property-value.js +1 -1
  266. package/packages/fd-toolbox/providers/element-id-provider/element-id-provider.d.ts +1 -0
  267. package/packages/fd-toolbox/redirect/redirect-functions.d.ts +1 -0
  268. package/packages/fd-toolbox/redirect/redirect-functions.js +1 -1
  269. package/packages/fd-toolbox/resources/demo-resource-names.d.ts +1 -0
  270. package/packages/fd-toolbox/resources/resource-names.d.ts +1 -1
  271. package/packages/fd-toolbox/resources/resource-names.js +1 -1
  272. package/packages/fd-toolbox/routing/login-routers.d.ts +2 -0
  273. package/packages/fd-toolbox/routing/login-routers.js +1 -1
  274. package/packages/fd-toolbox/routing/paths.d.ts +1 -0
  275. package/packages/fd-toolbox/routing/paths.js +1 -1
  276. package/packages/fd-toolbox/routing/public-routes.js +1 -1
  277. package/packages/fd-toolbox/routing/routers.d.ts +6 -0
  278. package/packages/fd-toolbox/routing/routers.js +2 -2
  279. package/packages/fd-toolbox/routing/routes.d.ts +1 -1
  280. package/packages/fd-toolbox/routing/routes.js +2 -2
  281. package/packages/fd-toolbox/server/api/public-api-routes.d.ts +1 -1
  282. package/packages/fd-toolbox/server/api/public-api-routes.js +2 -2
  283. package/packages/fd-toolbox/server/api/query-params.js +1 -1
  284. package/packages/fd-toolbox/server/api-enums/pagination-type.d.ts +2 -0
  285. package/packages/fd-toolbox/server/auth/cookies.d.ts +3 -0
  286. package/packages/fd-toolbox/server/auth/cookies.js +1 -1
  287. package/packages/fd-toolbox/server/cachings/core-cache.d.ts +4 -0
  288. package/packages/fd-toolbox/server/cachings/core-cache.js +1 -1
  289. package/packages/fd-toolbox/server/cachings/fd-cache-options.d.ts +1 -0
  290. package/packages/fd-toolbox/server/cachings/fd-memory-cache.d.ts +5 -0
  291. package/packages/fd-toolbox/server/cachings/fd-memory-cache.js +1 -1
  292. package/packages/fd-toolbox/server/cachings/fd-remote-cache.d.ts +5 -0
  293. package/packages/fd-toolbox/server/cachings/fd-remote-cache.js +2 -2
  294. package/packages/fd-toolbox/server/collections/single-funcs.d.ts +9 -2
  295. package/packages/fd-toolbox/server/collections/single-funcs.js +1 -1
  296. package/packages/fd-toolbox/server/configs/configs.d.ts +1 -0
  297. package/packages/fd-toolbox/server/configs/configs.js +1 -1
  298. package/packages/fd-toolbox/server/constants/configs/fd-config-keys.d.ts +1 -0
  299. package/packages/fd-toolbox/server/constants/crud-actions-constants.d.ts +1 -0
  300. package/packages/fd-toolbox/server/constants/fd-server-cache-keys.d.ts +1 -0
  301. package/packages/fd-toolbox/server/constants/fd-server-cache-keys.js +1 -1
  302. package/packages/fd-toolbox/server/constants/operation-status-messages.d.ts +1 -0
  303. package/packages/fd-toolbox/server/constants/workspace-constants.d.ts +1 -0
  304. package/packages/fd-toolbox/server/{services → data}/dictionaries.d.ts +2 -0
  305. package/packages/fd-toolbox/server/data/dictionaries.js +4 -0
  306. package/packages/fd-toolbox/server/entities/base-objects.d.ts +2 -0
  307. package/packages/fd-toolbox/server/entities/base-objects.js +1 -1
  308. package/packages/fd-toolbox/server/errors/error-dtos.js +1 -1
  309. package/packages/fd-toolbox/server/framework/index.d.ts +4 -0
  310. package/packages/fd-toolbox/server/framework/index.js +1 -1
  311. package/packages/fd-toolbox/server/logging/latest-logs-store.d.ts +3 -0
  312. package/packages/fd-toolbox/server/logging/latest-logs-store.js +1 -1
  313. package/packages/fd-toolbox/server/logging/log-dtos.js +1 -1
  314. package/packages/fd-toolbox/server/logging/logger.d.ts +3 -0
  315. package/packages/fd-toolbox/server/logging/logger.js +1 -1
  316. package/packages/fd-toolbox/server/objects/keys-case-converters.js +1 -1
  317. package/packages/fd-toolbox/server/random.js +3 -1
  318. package/packages/fd-toolbox/server/strings/casing.d.ts +3 -0
  319. package/packages/fd-toolbox/server/strings/casing.js +2 -1
  320. package/packages/fd-toolbox/server/strings/strings.d.ts +3 -0
  321. package/packages/fd-toolbox/server/strings/strings.js +3 -2
  322. package/packages/fd-toolbox/server/time/execution-duration.js +6 -0
  323. package/packages/fd-toolbox/server/web/errors.js +1 -1
  324. package/packages/fd-toolbox/server/web/response-messages.d.ts +1 -0
  325. package/packages/fd-toolbox/state/component-states.d.ts +3 -1
  326. package/packages/fd-toolbox/state/component-states.js +1 -1
  327. package/packages/fd-toolbox/strings/case-converters.d.ts +1 -0
  328. package/packages/fd-toolbox/strings/case-converters.js +1 -1
  329. package/packages/fd-toolbox/strings/casing-converter.d.ts +5 -0
  330. package/packages/fd-toolbox/strings/casing-converter.js +1 -1
  331. package/packages/fd-toolbox/strings/plural-converters.d.ts +1 -0
  332. package/packages/fd-toolbox/strings/plural-converters.js +2 -2
  333. package/packages/fd-toolbox/strings/strings.d.ts +1 -0
  334. package/packages/fd-toolbox/strings/strings.js +2 -2
  335. package/packages/fd-toolbox/time/date-time.d.ts +6 -0
  336. package/packages/fd-toolbox/time/date-time.js +1 -1
  337. package/packages/fd-toolbox/types/crud/crud-results.d.ts +1 -0
  338. package/packages/fd-toolbox/types/crud/crud-results.js +1 -1
  339. package/packages/fd-toolbox/types/ensure-type.d.ts +7 -0
  340. package/packages/fd-toolbox/types/ensure-type.js +3 -2
  341. package/packages/fd-toolbox/types/react-types.d.ts +10 -0
  342. package/packages/fd-toolbox/types/ref-object.d.ts +3 -1
  343. package/packages/fd-toolbox/types/validations/user-invite-validation-result.d.ts +1 -0
  344. package/packages/fd-toolbox/types/with-user-id.d.ts +3 -0
  345. package/packages/fd-toolbox/url/query-param.d.ts +1 -0
  346. package/packages/fd-toolbox/url/urls.d.ts +1 -0
  347. package/packages/fd-toolbox/url/urls.js +1 -1
  348. package/packages/fd-toolbox/uuids.d.ts +3 -0
  349. package/packages/fd-toolbox/uuids.js +1 -1
  350. package/packages/fd-toolbox/value-checkers.d.ts +1 -0
  351. package/packages/fd-toolbox/value-checkers.js +1 -1
  352. package/packages/fd-toolbox-core/base-resource/created-by-date.d.ts +1 -0
  353. package/packages/fd-toolbox-core/constants/base-dev-url.d.ts +1 -0
  354. package/packages/fd-toolbox-core/constants/base-dev-url.js +3 -1
  355. package/packages/fd-toolbox-core/constants/emails.d.ts +1 -0
  356. package/packages/fd-toolbox-core/constants/messages-constants.d.ts +1 -0
  357. package/packages/fd-toolbox-core/constants/meta-constants.d.ts +1 -0
  358. package/packages/fd-toolbox-core/constants/meta-constants.js +2 -2
  359. package/packages/fd-toolbox-core/constants/password-messages.d.ts +1 -0
  360. package/packages/fd-toolbox-core/constants/promises.d.ts +1 -0
  361. package/packages/fd-toolbox-core/constants/subscription-messages.d.ts +1 -0
  362. package/packages/fd-toolbox-core/core/name-of.d.ts +1 -0
  363. package/packages/fd-toolbox-core/core/name-of.js +1 -1
  364. package/packages/fd-toolbox-core/enums/log-severities.d.ts +2 -0
  365. package/packages/fd-toolbox-core/multitenancy/with-workspace-id.d.ts +1 -0
  366. package/packages/fd-toolbox-core/server/base-resources/with-disabled-to-filter-out.d.ts +1 -0
  367. package/packages/fd-toolbox-core/server/errors/error-dto.d.ts +1 -0
  368. package/packages/fd-toolbox-core/server/logging/server-log-dto.d.ts +1 -0
  369. package/packages/fd-toolbox-core/types/resource-with-id.d.ts +5 -0
  370. package/packages/fd-toolbox-core/types/resource-with-id.js +1 -1
  371. package/packages/flint/infra/analysis/array-analysis.d.ts +4 -1
  372. package/packages/flint/infra/analysis/array-analysis.js +8 -3
  373. package/packages/flint/infra/analysis/callable-analysis.d.ts +12 -0
  374. package/packages/flint/infra/analysis/callable-analysis.js +3 -3
  375. package/packages/flint/infra/analysis/casing-analysis.js +1 -1
  376. package/packages/flint/infra/analysis/enum-analysis.d.ts +6 -5
  377. package/packages/flint/infra/analysis/enum-analysis.js +6 -7
  378. package/packages/flint/infra/analysis/eslint-analysis.d.ts +3 -10
  379. package/packages/flint/infra/analysis/eslint-analysis.js +4 -3
  380. package/packages/flint/infra/analysis/expression-analysis.js +7 -4
  381. package/packages/flint/infra/analysis/formatting-analysis.js +2 -1
  382. package/packages/flint/infra/analysis/function-analysis.d.ts +18 -8
  383. package/packages/flint/infra/analysis/function-analysis.js +6 -5
  384. package/packages/flint/infra/analysis/generic-analysis.d.ts +4 -1
  385. package/packages/flint/infra/analysis/generic-analysis.js +3 -2
  386. package/packages/flint/infra/analysis/internal-analysis.d.ts +2 -0
  387. package/packages/flint/infra/analysis/internal-analysis.js +6 -0
  388. package/packages/flint/infra/analysis/jsx-analysis.d.ts +0 -3
  389. package/packages/flint/infra/analysis/jsx-analysis.js +3 -3
  390. package/packages/flint/infra/analysis/module-analysis.d.ts +3 -2
  391. package/packages/flint/infra/analysis/module-analysis.js +4 -3
  392. package/packages/flint/infra/analysis/name-analysis.d.ts +5 -1
  393. package/packages/flint/infra/analysis/name-analysis.js +7 -4
  394. package/packages/flint/infra/analysis/node-type-type-guards.d.ts +73 -0
  395. package/packages/flint/infra/analysis/node-type-type-guards.js +7 -0
  396. package/packages/flint/infra/analysis/nullish-analysis.d.ts +1 -1
  397. package/packages/flint/infra/analysis/nullish-analysis.js +2 -2
  398. package/packages/flint/infra/analysis/number-analysis.js +1 -1
  399. package/packages/flint/infra/analysis/object-analysis.d.ts +1 -0
  400. package/packages/flint/infra/analysis/object-analysis.js +6 -3
  401. package/packages/flint/infra/analysis/path-analysis.d.ts +3 -0
  402. package/packages/flint/infra/analysis/path-analysis.js +5 -2
  403. package/packages/flint/infra/analysis/react-analysis.d.ts +4 -0
  404. package/packages/flint/infra/analysis/react-analysis.js +10 -0
  405. package/packages/flint/infra/analysis/return-analysis.d.ts +6 -3
  406. package/packages/flint/infra/analysis/return-analysis.js +4 -2
  407. package/packages/flint/infra/analysis/scope-analysis.js +7 -5
  408. package/packages/flint/infra/analysis/string-analysis.d.ts +4 -1
  409. package/packages/flint/infra/analysis/string-analysis.js +8 -4
  410. package/packages/flint/infra/analysis/test-analysis.d.ts +1 -0
  411. package/packages/flint/infra/analysis/test-analysis.js +2 -2
  412. package/packages/flint/infra/analysis/tree-analysis.d.ts +4 -1
  413. package/packages/flint/infra/analysis/tree-analysis.js +4 -3
  414. package/packages/flint/infra/analysis/type-analysis.d.ts +14 -11
  415. package/packages/flint/infra/analysis/type-analysis.js +8 -4
  416. package/packages/flint/infra/analysis/variable-analysis.d.ts +3 -1
  417. package/packages/flint/infra/analysis/variable-analysis.js +5 -5
  418. package/packages/flint/infra/analysis/visitors.js +1 -1
  419. package/packages/flint/infra/config-edited-checker.js +3 -3
  420. package/packages/flint/infra/constants/eslint-rule-syntax.d.ts +10 -0
  421. package/packages/flint/infra/constants/eslint-rule-syntax.js +6 -0
  422. package/packages/flint/infra/constants/eslint-syntax-names.d.ts +7 -0
  423. package/packages/flint/infra/constants/eslint-syntax-names.js +4 -0
  424. package/packages/flint/infra/constants/naming-constants.d.ts +4 -0
  425. package/packages/flint/infra/constants/naming-constants.js +4 -0
  426. package/packages/flint/infra/constants/rule-strings.d.ts +8 -0
  427. package/packages/flint/infra/constants/rule-strings.js +4 -0
  428. package/packages/flint/infra/constants/rules-meta.d.ts +44 -0
  429. package/packages/flint/infra/constants/rules-meta.js +4 -2
  430. package/packages/flint/infra/constants/runtime-constants.d.ts +10 -0
  431. package/packages/flint/infra/constants/runtime-constants.js +6 -0
  432. package/packages/flint/infra/constants/shared-string-identifiers.d.ts +36 -0
  433. package/packages/flint/infra/constants/shared-string-identifiers.js +6 -0
  434. package/packages/flint/infra/create-eslint-rule.d.ts +1 -1
  435. package/packages/flint/infra/create-eslint-rule.js +1 -1
  436. package/packages/flint/infra/git-readers.js +5 -5
  437. package/packages/flint/rules/code-duplication/must-avoid-code-duplication-in-functions.d.ts +1 -1
  438. package/packages/flint/rules/code-duplication/must-avoid-code-duplication-in-functions.js +3 -1
  439. package/packages/flint/rules/code-duplication/must-not-use-constants-for-single-usage.d.ts +3 -0
  440. package/packages/flint/rules/code-duplication/must-not-use-constants-for-single-usage.js +12 -0
  441. package/packages/flint/rules/code-duplication/no-duplicate-imports.js +1 -1
  442. package/packages/flint/rules/code-duplication/no-literal-duplication.js +10 -2
  443. package/packages/flint/rules/consistency/enum-type-immediate-definition.js +1 -1
  444. package/packages/flint/rules/{must-always-specify-types-for-api-responses.js → consistency/must-always-specify-types-for-api-responses.js} +2 -1
  445. package/packages/flint/rules/consistency/must-declare-module-members-in-consistent-order.js +10 -0
  446. package/packages/flint/rules/consistency/must-not-needlessly-copy-arrays.js +7 -2
  447. package/packages/flint/rules/consistency/must-not-use-anonymous-objects-only-with-explicit-typization.js +4 -1
  448. package/packages/flint/rules/consistency/must-not-use-process-env.js +4 -1
  449. package/packages/flint/rules/{must-specify-second-generic-parameter-in-apipost-and-apiput.js → consistency/must-specify-second-generic-parameter-in-apipost-and-apiput.js} +1 -1
  450. package/packages/flint/rules/consistency/must-use-nameof-for-props.js +2 -2
  451. package/packages/flint/rules/consistency/must-use-resource-provider-functions-to-get-resources-on-server.js +11 -0
  452. package/packages/flint/rules/consistency/must-use-typed-resources-for-crud-update.js +5 -2
  453. package/packages/flint/rules/consistency/must-use-typescript.js +6 -1
  454. package/packages/flint/rules/consistency/no-index-import-in-analysis.d.ts +3 -0
  455. package/packages/flint/rules/consistency/no-index-import-in-analysis.js +6 -0
  456. package/packages/flint/rules/consistency/no-inplace-array-mutation.d.ts +3 -0
  457. package/packages/flint/rules/consistency/no-inplace-array-mutation.js +8 -0
  458. package/packages/flint/rules/consistency/no-new-date.js +1 -1
  459. package/packages/flint/rules/consistency/no-redundant-type-alias.js +2 -1
  460. package/packages/flint/rules/consistency/no-use-type-undefined-for-optional.js +4 -2
  461. package/packages/flint/rules/css/must-not-use-important.js +1 -1
  462. package/packages/flint/rules/css/must-use-color-variables-instead-of-hardcoded-values.js +10 -0
  463. package/packages/flint/rules/css/no-array-destructuring-from-function-calls.js +4 -1
  464. package/packages/flint/rules/css/no-px-in-tailwind.js +4 -3
  465. package/packages/flint/rules/css/no-tailwind-colors.js +6 -3
  466. package/packages/flint/rules/flint/must-add-custom-rule-in-config.js +11 -4
  467. package/packages/flint/rules/flint/must-have-both-rule-and-tests.d.ts +1 -1
  468. package/packages/flint/rules/flint/must-have-both-rule-and-tests.js +7 -3
  469. package/packages/flint/rules/flint/must-match-rule-name-with-file-name.js +6 -2
  470. package/packages/flint/rules/flint/must-not-declare-fixer-without-calling-it.js +7 -2
  471. package/packages/flint/rules/flint/must-not-import-ast-node-types.js +1 -1
  472. package/packages/flint/rules/flint/must-not-use-placeholders-in-eslint-rule-titles.js +8 -0
  473. package/packages/flint/rules/flint/must-not-use-see-link-in-docs-if-type-available.js +9 -0
  474. package/packages/flint/rules/flint/must-not-use-the-single-error-property-in-test.js +2 -1
  475. package/packages/flint/rules/flint/must-use-better-error-message-for-custom-rules.d.ts +28 -14
  476. package/packages/flint/rules/flint/must-use-better-error-message-for-custom-rules.js +4 -2
  477. package/packages/flint/rules/flint/must-use-constants-for-message-ids.js +3 -2
  478. package/packages/flint/rules/flint/must-use-create-eslint-rule.js +4 -1
  479. package/packages/flint/rules/flint/must-use-generic-crud-update-config.js +4 -1
  480. package/packages/flint/rules/flint/must-use-isnamematch.d.ts +3 -0
  481. package/packages/flint/rules/flint/must-use-isnamematch.js +9 -0
  482. package/packages/flint/rules/flint/must-use-link-for-camel-or-pascal-case-names.d.ts +1 -1
  483. package/packages/flint/rules/flint/must-use-link-for-camel-or-pascal-case-names.js +6 -4
  484. package/packages/flint/rules/flint/must-use-nodetypes-structure-instead-of-string-node-type.js +2 -2
  485. package/packages/flint/rules/flint/must-use-rule-name-as-message-id-in-tests.js +2 -1
  486. package/packages/flint/rules/flint/must-use-unique-filenames-with-comment-in-tests.js +5 -3
  487. package/packages/flint/rules/general/group-consts-as-const.js +3 -1
  488. package/packages/flint/rules/general/must-add-space-for-comments.js +5 -2
  489. package/packages/flint/rules/general/must-create-resources-in-src-dir.js +1 -1
  490. package/packages/flint/rules/general/must-mark-external-imports-as-internal.d.ts +3 -0
  491. package/packages/flint/rules/general/must-mark-external-imports-as-internal.js +14 -0
  492. package/packages/flint/rules/general/must-not-define-functions-in-constants-files.js +1 -1
  493. package/packages/flint/rules/general/must-not-include-unnecessary-parameters.js +2 -1
  494. package/packages/flint/rules/general/must-not-modify-data-or-workspace-in-readonly-tests.js +10 -0
  495. package/packages/flint/rules/general/must-not-pass-full-objects-into-functions-needlessly.d.ts +1 -1
  496. package/packages/flint/rules/general/must-not-pass-full-objects-into-functions-needlessly.js +9 -4
  497. package/packages/flint/rules/general/must-not-use-fetch.js +8 -0
  498. package/packages/flint/rules/general/must-not-use-object-constructor-methods.d.ts +3 -0
  499. package/packages/flint/rules/general/must-not-use-object-constructor-methods.js +11 -0
  500. package/packages/flint/rules/{must-separate-unrelated-tests-into-different-files.js → general/must-separate-unrelated-tests-into-different-files.js} +2 -2
  501. package/packages/flint/rules/general/must-start-comments-with-uppercase.js +6 -2
  502. package/packages/flint/rules/general/must-use-native-private.js +2 -2
  503. package/packages/flint/rules/general/must-use-odata-builder.js +9 -0
  504. package/packages/flint/rules/general/must-use-only-crud-operations.js +9 -0
  505. package/packages/flint/rules/general/must-use-path-constants-for-paths.js +3 -2
  506. package/packages/flint/rules/general/must-use-strict-dependency-version.js +6 -2
  507. package/packages/flint/rules/general/no-empty-files.js +1 -1
  508. package/packages/flint/rules/general/no-eslint-disable-without-approved.js +2 -2
  509. package/packages/flint/rules/general/no-import-from-temp-dev.js +1 -1
  510. package/packages/flint/rules/general/no-manual-resource-instantiation.js +10 -0
  511. package/packages/flint/rules/general/no-specify-return-type.js +4 -3
  512. package/packages/flint/rules/general/no-todo.js +1 -1
  513. package/packages/flint/rules/general/no-unused-properties-in-constants.js +2 -2
  514. package/packages/flint/rules/general/use-of-only-english-in-repository.js +1 -1
  515. package/packages/flint/rules/index.js +156 -150
  516. package/packages/flint/rules/naming/filename-kebab-case.js +4 -1
  517. package/packages/flint/rules/naming/must-add-empty-line-before-assert-act-arrange.js +2 -1
  518. package/packages/flint/rules/naming/must-add-prefix-to-po-functions.js +1 -1
  519. package/packages/flint/rules/naming/must-avoid-non-null-assertions.js +1 -1
  520. package/packages/flint/rules/naming/must-create-assert-functions-in-asserts-files.js +1 -1
  521. package/packages/flint/rules/naming/must-get-elements-in-tests-only-by-id.js +6 -3
  522. package/packages/flint/rules/naming/must-name-ui-tests-component-condition-expected-result.js +3 -1
  523. package/packages/flint/rules/naming/must-not-create-funcs-files-for-non-components.js +4 -2
  524. package/packages/flint/rules/naming/must-not-declare-func-inside-another-func.js +4 -3
  525. package/packages/flint/rules/naming/must-not-import-react.js +6 -3
  526. package/packages/flint/rules/naming/must-not-use-all-caps-constants.js +9 -0
  527. package/packages/flint/rules/naming/must-not-use-common-constants-outside-constants-files.d.ts +3 -0
  528. package/packages/flint/rules/naming/must-not-use-common-constants-outside-constants-files.js +8 -0
  529. package/packages/flint/rules/naming/must-not-use-constants-for-getid-functions.d.ts +3 -0
  530. package/packages/flint/rules/naming/must-not-use-constants-for-getid-functions.js +9 -0
  531. package/packages/flint/rules/naming/must-not-use-emojis.js +3 -2
  532. package/packages/flint/rules/naming/must-not-use-indexed-access-type-in-function-params.js +2 -1
  533. package/packages/flint/rules/naming/must-not-use-location-href.js +3 -1
  534. package/packages/flint/rules/{must-not-use-multiple-get-id-functions-inline-in-test.js → naming/must-not-use-multiple-get-id-functions-inline-in-test.js} +1 -1
  535. package/packages/flint/rules/naming/must-not-use-negation-with-enums.js +1 -1
  536. package/packages/flint/rules/naming/must-not-use-null.js +4 -2
  537. package/packages/flint/rules/naming/must-not-use-page-directly.js +3 -1
  538. package/packages/flint/rules/naming/must-not-use-po-in-assert-functions.js +4 -3
  539. package/packages/flint/rules/naming/must-not-use-redundant-string.js +4 -2
  540. package/packages/flint/rules/naming/must-not-use-ternary-operator-for-complicated-conditions.js +3 -3
  541. package/packages/flint/rules/naming/must-put-empty-line.d.ts +1 -1
  542. package/packages/flint/rules/naming/must-put-empty-line.js +5 -2
  543. package/packages/flint/rules/naming/must-throw-full-error-objects.js +2 -1
  544. package/packages/flint/rules/naming/must-use-camelcase-for-html-items-id-attribute.js +2 -1
  545. package/packages/flint/rules/naming/must-use-descriptive-names-for-functions-and-parameters.js +5 -1
  546. package/packages/flint/rules/naming/must-use-env-keys-from-constant.js +4 -1
  547. package/packages/flint/rules/naming/must-use-example-domain.js +3 -1
  548. package/packages/flint/rules/naming/must-use-filename-in-assert-functions.js +5 -3
  549. package/packages/flint/rules/naming/must-use-func-declaration-for-named-func.js +2 -2
  550. package/packages/flint/rules/naming/must-use-funcs-only-for-same-named-component.js +2 -1
  551. package/packages/flint/rules/naming/must-use-function-for-component.js +1 -1
  552. package/packages/flint/rules/naming/must-use-functions-for-component-ids.js +9 -0
  553. package/packages/flint/rules/naming/must-use-interface-for-props.js +4 -3
  554. package/packages/flint/rules/naming/must-use-new-url-constructor.js +7 -2
  555. package/packages/flint/rules/naming/must-use-pascal-case-for-types-and-interfaces.js +1 -1
  556. package/packages/flint/rules/naming/must-use-plural-enum-const-and-singular-type.js +8 -3
  557. package/packages/flint/rules/naming/must-use-plural-in-function-names-if-returns-array.d.ts +1 -1
  558. package/packages/flint/rules/naming/must-use-plural-in-function-names-if-returns-array.js +11 -5
  559. package/packages/flint/rules/naming/must-use-plural-names-of-files-for-arrays.js +12 -4
  560. package/packages/flint/rules/naming/must-use-prefix-for-env-vars.d.ts +17 -0
  561. package/packages/flint/rules/naming/must-use-prefix-for-env-vars.js +12 -0
  562. package/packages/flint/rules/naming/must-use-resource-name-instead-of-resource.js +6 -1
  563. package/packages/flint/rules/naming/must-use-s-ending-for-natural-plurals.d.ts +4 -1
  564. package/packages/flint/rules/naming/must-use-s-ending-for-natural-plurals.js +9 -2
  565. package/packages/flint/rules/naming/must-use-suffix-config-instead-of-options.d.ts +3 -0
  566. package/packages/flint/rules/naming/must-use-suffix-config-instead-of-options.js +8 -0
  567. package/packages/flint/rules/naming/must-use-wrappers-to-access-first-element.js +2 -1
  568. package/packages/flint/rules/naming/no-conflicting-props.js +4 -3
  569. package/packages/flint/rules/naming/no-default-props.js +2 -1
  570. package/packages/flint/rules/naming/no-delays-in-ui-tests.js +9 -2
  571. package/packages/flint/rules/naming/no-fd-prefix-in-folders.js +4 -2
  572. package/packages/flint/rules/naming/no-get-in-function-names-without-return.d.ts +1 -1
  573. package/packages/flint/rules/naming/no-get-in-function-names-without-return.js +6 -2
  574. package/packages/flint/rules/naming/no-integers-instead-of-enums.js +3 -2
  575. package/packages/flint/rules/naming/no-nullable-check.js +3 -1
  576. package/packages/flint/rules/naming/no-untyped-objects-between-components.js +7 -2
  577. package/packages/flint/rules/naming/no-use-abstract-categories-in-naming.d.ts +3 -0
  578. package/packages/flint/rules/naming/no-use-abstract-categories-in-naming.js +9 -0
  579. package/packages/flint/rules/naming/no-use-conditional-logic-in-test-assertions.js +2 -1
  580. package/packages/flint/rules/naming/no-use-enum.js +1 -1
  581. package/packages/flint/rules/naming/no-use-id.js +3 -2
  582. package/packages/flint/rules/naming/use-on-prefix.js +3 -1
  583. package/packages/flint/rules/performance/must-clean-up-event-listeners.js +5 -2
  584. package/packages/flint/rules/readability/exported-func-above-regular.js +1 -1
  585. package/packages/flint/rules/readability/for-each-max-lines.d.ts +1 -1
  586. package/packages/flint/rules/readability/for-each-max-lines.js +4 -2
  587. package/packages/flint/rules/readability/max-lines-per-function.d.ts +2 -2
  588. package/packages/flint/rules/readability/max-lines-per-function.js +4 -3
  589. package/packages/flint/rules/readability/must-consolidate-conditional-expressions.js +5 -3
  590. package/packages/flint/rules/readability/must-do-await-data-in-one-line.js +3 -3
  591. package/packages/flint/rules/readability/must-limit-lines-without-comments.d.ts +2 -2
  592. package/packages/flint/rules/readability/must-limit-lines-without-comments.js +3 -2
  593. package/packages/flint/rules/readability/must-not-destructure-function-parameters.js +2 -2
  594. package/packages/flint/rules/{must-not-return-empty-strings.js → readability/must-not-return-empty-strings.js} +3 -3
  595. package/packages/flint/rules/readability/must-not-use-empty-lines-in-html.js +1 -1
  596. package/packages/flint/rules/readability/must-not-use-inline-await.js +4 -1
  597. package/packages/flint/rules/readability/must-not-use-inline-object-type-parameters.js +8 -0
  598. package/packages/flint/rules/{must-not-use-nullish-coalescing-empty-string.js → readability/must-not-use-nullish-coalescing-empty-string.js} +1 -1
  599. package/packages/flint/rules/readability/must-return-empty-array.js +3 -2
  600. package/packages/flint/rules/readability/must-use-alt-to-describe-images.js +5 -2
  601. package/packages/flint/rules/readability/must-use-create-error.js +3 -2
  602. package/packages/flint/rules/readability/must-use-funcs-files-for-components.d.ts +3 -0
  603. package/packages/flint/rules/readability/must-use-funcs-files-for-components.js +7 -0
  604. package/packages/flint/rules/readability/must-use-interfaces-for-complex-types.d.ts +1 -1
  605. package/packages/flint/rules/readability/must-use-interfaces-for-complex-types.js +2 -2
  606. package/packages/flint/rules/readability/must-use-single-return-in-function.js +5 -1
  607. package/packages/flint/rules/readability/must-use-test-comments.js +3 -2
  608. package/packages/flint/rules/readability/no-centralized-error-messages.js +2 -1
  609. package/packages/flint/rules/readability/no-constructor-name-for-resource.js +4 -2
  610. package/packages/flint/rules/readability/no-long-filter-map.d.ts +1 -1
  611. package/packages/flint/rules/readability/no-long-filter-map.js +3 -1
  612. package/packages/flint/rules/readability/no-naked-query-return.js +2 -1
  613. package/packages/flint/rules/readability/no-string-length-check.js +4 -2
  614. package/packages/flint/rules/readability/no-then.js +1 -1
  615. package/packages/flint/rules/readability/no-to-lower-case-with-resource-name.js +2 -1
  616. package/packages/flint/rules/readability/no-useless-destructing.js +2 -1
  617. package/packages/flint/rules/readability/use-function-without-parameter-shortcut.js +2 -1
  618. package/packages/flint/rules/readability/use-nullish-coalescing-for-default.js +4 -3
  619. package/packages/flint-infra/constants/flat-compat.d.ts +2 -0
  620. package/packages/flint-infra/constants/flat-compat.js +8 -0
  621. package/packages/{flint → flint-infra}/constants/messages.d.ts +1 -0
  622. package/packages/{flint → flint-infra}/constants/messages.js +1 -1
  623. package/packages/{flint → flint-infra}/dist/rules/index.d.ts +31 -19
  624. package/packages/flint-infra/dist/rules/index.js +28 -0
  625. package/packages/{flint → flint-infra}/eslint-base.config.d.ts +10 -9
  626. package/packages/flint-infra/eslint-base.config.js +23 -0
  627. package/packages/flint-infra/eslint-next-web-vitals-temp.config.d.ts +3 -0
  628. package/packages/flint-infra/eslint-next-web-vitals-temp.config.js +7 -0
  629. package/packages/flint-infra/non-level-two-eslint-config.d.ts +1 -0
  630. package/packages/flint-infra/non-level-two-eslint-config.js +7 -0
  631. package/packages/flint-infra/paths/resolve-lint-tsconfig-paths.d.ts +2 -0
  632. package/packages/flint-infra/paths/resolve-lint-tsconfig-paths.js +8 -0
  633. package/packages/flint-infra/project-specific-eslint-configs.d.ts +25 -0
  634. package/packages/flint-infra/project-specific-eslint-configs.js +20 -0
  635. package/packages/flint-infra/types/eslint-plugin-github.d.js +1 -0
  636. package/packages/flint-infra/types/typescript-eslint-plugin.d.js +1 -0
  637. package/packages/infra/ci/constants/ci-constants.d.ts +8 -3
  638. package/packages/infra/ci/constants/ci-constants.js +1 -1
  639. package/packages/infra/ci/constants/git-commands.d.ts +1 -2
  640. package/packages/infra/ci/constants/git-commands.js +2 -4
  641. package/packages/infra/ci/constants/npm-commands.d.ts +10 -4
  642. package/packages/infra/ci/constants/npm-commands.js +4 -2
  643. package/packages/infra/ci/constants/paths.d.ts +31 -25
  644. package/packages/infra/ci/constants/paths.js +3 -2
  645. package/packages/infra/ci/external-jobs/build-and-test.js +2 -2
  646. package/packages/infra/ci/external-jobs/lint.js +4 -4
  647. package/packages/infra/ci/external-jobs/prepare-environment.js +4 -4
  648. package/packages/infra/ci/jobs/build-and-test.js +2 -2
  649. package/packages/infra/ci/jobs/build-db-connection-string.js +1 -1
  650. package/packages/infra/ci/jobs/build-package.js +2 -2
  651. package/packages/infra/ci/jobs/ci-auto-merge.js +4 -4
  652. package/packages/infra/ci/jobs/clear-nx-cache.js +2 -2
  653. package/packages/infra/ci/jobs/cli-create-test.js +7 -6
  654. package/packages/infra/ci/jobs/deploy-to-vercel.js +4 -4
  655. package/packages/infra/ci/jobs/drop-all-db.js +2 -2
  656. package/packages/infra/ci/jobs/lint.js +7 -6
  657. package/packages/infra/ci/jobs/manual-cleanup.js +1 -1
  658. package/packages/infra/ci/jobs/pre-action-required-check.js +3 -3
  659. package/packages/infra/ci/jobs/publish-package.d.ts +1 -0
  660. package/packages/infra/ci/jobs/publish-package.js +4 -4
  661. package/packages/infra/ci/jobs/ranksters-build-and-test.js +2 -2
  662. package/packages/infra/ci/jobs/saas-kit-test-build-and-test.js +4 -4
  663. package/packages/infra/ci/jobs/sync-saas-kit-version-to-main.js +8 -7
  664. package/packages/infra/ci/jobs/unpublish-package.js +4 -4
  665. package/packages/infra/ci/jobs/update-submodules.js +5 -5
  666. package/packages/infra/ci/setup/checkout-and-sync-submodules.js +5 -5
  667. package/packages/infra/ci/setup/cleanup.js +4 -4
  668. package/packages/infra/ci/setup/clear-nx-cache-environment.js +2 -2
  669. package/packages/infra/ci/setup/copy-playwright-report.js +2 -2
  670. package/packages/infra/ci/setup/get-build-package-info.js +3 -4
  671. package/packages/infra/ci/setup/get-latest-npm-package-info.d.ts +5 -2
  672. package/packages/infra/ci/setup/get-latest-npm-package-info.js +4 -2
  673. package/packages/infra/ci/setup/init-db.js +2 -2
  674. package/packages/infra/ci/setup/install-local-saaskit.js +4 -5
  675. package/packages/infra/ci/setup/npm-auth.js +3 -3
  676. package/packages/infra/ci/setup/prepare-environment.js +5 -5
  677. package/packages/infra/ci/setup/prettier.js +4 -5
  678. package/packages/infra/ci/setup/resolve-and-checkout-submodule-branch.d.ts +1 -4
  679. package/packages/infra/ci/setup/resolve-and-checkout-submodule-branch.js +5 -5
  680. package/packages/infra/ci/setup/resolve-main-repo-branch.js +4 -4
  681. package/packages/infra/ci/setup/rollup-cache-cloud.js +3 -3
  682. package/packages/infra/ci/setup/setup-submodules.js +3 -3
  683. package/packages/infra/ci/setup/spawn-background-server.js +3 -3
  684. package/packages/infra/ci/setup/sync-build-artifacts.js +3 -3
  685. package/packages/infra/ci/setup/update-workspace-dependencies.d.ts +1 -1
  686. package/packages/infra/ci/setup/update-workspace-dependencies.js +5 -5
  687. package/packages/infra/ci/setup/verify-published-version.js +4 -4
  688. package/packages/infra/ci/tools/cloud-client.js +10 -0
  689. package/packages/infra/ci/tools/create-early-infra-error.js +4 -0
  690. package/packages/infra/ci/{utils → tools}/exec.d.ts +3 -2
  691. package/packages/infra/ci/tools/exec.js +9 -0
  692. package/packages/infra/ci/{utils → tools}/get-submodule-dir.js +1 -1
  693. package/packages/infra/ci/tools/git-command-funcs.js +6 -0
  694. package/packages/infra/ci/{utils → tools}/git.d.ts +6 -0
  695. package/packages/infra/ci/tools/git.js +18 -0
  696. package/packages/infra/ci/tools/npm-command-funcs.js +8 -0
  697. package/packages/infra/deploy/cluster/cluster-deploy-setup.js +2 -2
  698. package/packages/infra/deploy/cluster/deploy-constants.d.ts +7 -7
  699. package/packages/infra/git/gitlab/gitlab-constants.d.ts +3 -0
  700. package/packages/infra/git/gitlab/gitlab-constants.js +2 -2
  701. package/packages/infra/git/gitlab/gitlab.js +3 -3
  702. package/packages/infra/git/labels.d.ts +2 -1
  703. package/packages/infra/git/labels.js +2 -2
  704. package/packages/infra/git/milestones.d.ts +1 -0
  705. package/packages/infra/plugins/dirname-plugin.js +2 -2
  706. package/packages/infra/tools/git/commit-msg-script.d.ts +1 -1
  707. package/packages/infra/tools/git/commit-msg-script.js +2 -2
  708. package/packages/infra/tools/git/pre-commit-script.js +9 -7
  709. package/packages/level2/ai/server/ai-deepinfra.js +1 -1
  710. package/packages/level2/ai/server/ai-google.js +1 -1
  711. package/packages/level2/ai/server/ai-groq.js +1 -1
  712. package/packages/level2/ai/vercel-ai-sdk/ai.js +2 -2
  713. package/packages/level2/cli/constants.d.ts +3 -0
  714. package/packages/level2/cli/constants.js +6 -0
  715. package/packages/level2/cli/create/configs/drizzle-cli-config.js +1 -1
  716. package/packages/level2/cli/create/configs/next-cli-config.js +3 -2
  717. package/packages/level2/cli/create/configs/playwright-cli-config.js +2 -1
  718. package/packages/level2/client/component-configs/configure-default-config.js +1 -1
  719. package/packages/level2/client/component-configs/edit-resource-configs.d.ts +2 -2
  720. package/packages/level2/client/component-configs/edit-resource-configs.js +2 -2
  721. package/packages/level2/client/component-configs/multi-list-config.js +3 -3
  722. package/packages/level2/client/component-configs/resource-list-configs.d.ts +1 -1
  723. package/packages/level2/client/component-configs/resource-list-configs.js +1 -1
  724. package/packages/level2/client/component-configs/workspace-settings-config.d.ts +2 -1
  725. package/packages/level2/client/component-configs/workspace-settings-config.js +3 -3
  726. package/packages/level2/client/components/feed/Feed.funcs.d.ts +2 -2
  727. package/packages/level2/client/components/feed/Feed.js +2 -1
  728. package/packages/level2/client/components/feed/FeedActions.d.ts +1 -1
  729. package/packages/level2/client/components/feed/FeedHeader.js +2 -1
  730. package/packages/level2/client/components/subscription-plan/SubscriptionPlan.funcs.d.ts +7 -32
  731. package/packages/level2/client/components/subscription-plan/SubscriptionPlan.funcs.js +3 -3
  732. package/packages/level2/client/components/subscription-plan/SubscriptionPlan.js +3 -3
  733. package/packages/level2/client/components/subscription-plan/subscription-plan-config.js +1 -1
  734. package/packages/level2/client/components/subscription-plan/subscriptions.d.ts +1 -1
  735. package/packages/level2/client/components/subscription-plan/subscriptions.js +2 -1
  736. package/packages/level2/client/components/wizard/Wizard.d.ts +1 -1
  737. package/packages/level2/client/components/wizard/Wizard.funcs.js +1 -1
  738. package/packages/level2/client/components/wizard/WizardStepper.funcs.d.ts +1 -1
  739. package/packages/level2/client/components/wizard/WizardStepper.funcs.js +1 -1
  740. package/packages/level2/client/components/wizard/WizardStepper.js +2 -1
  741. package/packages/level2/client/components/wizard/config/wizard-edit-resource-config.d.ts +6 -6
  742. package/packages/level2/client/components/wizard/config/wizard-edit-resource-config.js +1 -1
  743. package/packages/level2/client/components/wizard/wizard-data.d.ts +1 -1
  744. package/packages/level2/client/pages/dashboard-page/DashboardPage.funcs.d.ts +2 -3
  745. package/packages/level2/client/pages/dashboard-page/DashboardPage.funcs.js +3 -2
  746. package/packages/level2/client/pages/dashboard-page/DashboardPage.js +47 -87
  747. package/packages/level2/client/pages/microsoft-page/MicrosoftPage.funcs.js +1 -1
  748. package/packages/level2/client/pages/microsoft-page/MicrosoftPage.js +3 -3
  749. package/packages/level2/client/pages/screenshot-page/TestScreenshotPage.funcs.js +1 -1
  750. package/packages/level2/client/pages/sign-in-page/SignInPage.js +28 -14
  751. package/packages/level2/client/pages/sign-up-page/SignUpPage.js +1 -1
  752. package/packages/level2/client/pages/test-pages/TestPage.js +2 -2
  753. package/packages/level2/client/pages/test-pages/test-page-mocks.d.ts +2 -0
  754. package/packages/level2/client/pages/test-pages/test-page-mocks.js +7 -0
  755. package/packages/level2/client/pages/view-page/ViewPage.funcs.d.ts +1 -1
  756. package/packages/level2/client/pages/view-page/ViewPage.funcs.js +2 -2
  757. package/packages/level2/client/payments/change-payment-method-field/ChangePaymentMethodField.funcs.d.ts +1 -1
  758. package/packages/level2/client/payments/change-payment-method-field/ChangePaymentMethodField.funcs.js +1 -1
  759. package/packages/level2/client/payments/checkout-form/CheckoutForm.funcs.d.ts +1 -29
  760. package/packages/level2/client/payments/checkout-form/CheckoutForm.funcs.js +3 -6
  761. package/packages/level2/client/payments/checkout-form/CheckoutForm.js +3 -2
  762. package/packages/level2/client/payments/checkout-form/CheckoutFormSubmit.funcs.d.ts +1 -0
  763. package/packages/level2/client/payments/checkout-form/CheckoutFormSubmit.funcs.js +7 -0
  764. package/packages/level2/client/payments/checkout-form/CheckoutFormSubmit.js +2 -1
  765. package/packages/level2/client/payments/checkout-form/checkout-form-constants.d.ts +220 -0
  766. package/packages/level2/client/payments/checkout-form/checkout-form-constants.js +6 -0
  767. package/packages/level2/client/payments/checkout-form/checkout-form-fields.js +8 -7
  768. package/packages/level2/client/payments/checkout-form/checkout-form-props.d.ts +1 -1
  769. package/packages/level2/client/payments/checkout-form/checkout-form-stripe.d.ts +21 -0
  770. package/packages/level2/client/payments/checkout-form/checkout-form-stripe.js +6 -0
  771. package/packages/level2/client/payments/checkout-form/checkout-form-validation.d.ts +1 -0
  772. package/packages/level2/client/payments/checkout-form/checkout-form-validation.js +4 -0
  773. package/packages/level2/client/payments/payments.js +1 -1
  774. package/packages/level2/client/products/reject-action-funcs.js +1 -1
  775. package/packages/level2/client/website-scan/website-scan-data.js +1 -1
  776. package/packages/level2/client/website-scan/website-scan-result-social-media.js +1 -1
  777. package/packages/level2/common/addresses/address-types.d.ts +2 -0
  778. package/packages/level2/common/addresses/address.resource.d.ts +2 -0
  779. package/packages/level2/common/addresses/address.resource.js +1 -1
  780. package/packages/level2/common/addresses/country.resource.d.ts +2 -0
  781. package/packages/level2/common/addresses/country.resource.js +1 -1
  782. package/packages/level2/common/auth/permissions/permission-constants.d.ts +2 -0
  783. package/packages/level2/common/auth/permissions/permission-constants.js +1 -1
  784. package/packages/level2/common/auth/roles/role-names.d.ts +1 -0
  785. package/packages/level2/common/customers/customer.resource.d.ts +1 -0
  786. package/packages/level2/common/customers/customer.resource.js +1 -1
  787. package/packages/level2/common/demo/company.resource.d.ts +1 -0
  788. package/packages/level2/common/demo/company.resource.js +1 -3
  789. package/packages/level2/common/demo/contact.resource.d.ts +1 -0
  790. package/packages/level2/common/demo/contact.resource.js +1 -5
  791. package/packages/level2/common/demo/deal.resource.d.ts +1 -0
  792. package/packages/level2/common/demo/deal.resource.js +1 -1
  793. package/packages/level2/common/demo/demo-resources-enums.d.ts +10 -0
  794. package/packages/level2/common/demo/props/deal-props.d.ts +1 -0
  795. package/packages/level2/common/demo/props/report-props.d.ts +1 -0
  796. package/packages/level2/common/demo/ticket.resource.d.ts +1 -0
  797. package/packages/level2/common/demo/ticket.resource.js +1 -1
  798. package/packages/level2/common/dev/ai-assistent/ai-assistant.resource.d.ts +1 -0
  799. package/packages/level2/common/dev/ai-assistent/ai-assistant.resource.js +1 -1
  800. package/packages/level2/common/dev/custom-permission-resource/custom-permission-resource.resource.js +1 -1
  801. package/packages/level2/common/dev/dev-enums.d.ts +5 -0
  802. package/packages/level2/common/dev/dev-report.resource.js +1 -1
  803. package/packages/level2/common/dev/friends/friend.resource.js +1 -1
  804. package/packages/level2/common/dev/jobs/job.resource.js +1 -1
  805. package/packages/level2/common/dev/no-permission.resource.js +1 -1
  806. package/packages/level2/common/dev/persons/dev-greeting.resource.d.ts +1 -0
  807. package/packages/level2/common/dev/persons/dev-greeting.resource.js +1 -1
  808. package/packages/level2/common/dev/persons/paper-plane.resource.js +1 -1
  809. package/packages/level2/common/dev/persons/person-to-job.resource.js +1 -1
  810. package/packages/level2/common/dev/persons/person-to-person.resource.js +1 -1
  811. package/packages/level2/common/dev/persons/person.resource-ext.js +1 -1
  812. package/packages/level2/common/dev/persons/person.resource.js +1 -2
  813. package/packages/level2/common/dev/persons/phone-brand.resource.js +1 -1
  814. package/packages/level2/common/dev/persons/ping.resource.js +1 -1
  815. package/packages/level2/common/dev/singleton-dev-sandbox.resource.js +1 -1
  816. package/packages/level2/common/fd/fd-component-toolbox/status-board/status-board-constants.d.ts +2 -0
  817. package/packages/level2/common/fd/fd-meta-toolbox/status-board/status-board.resource.d.ts +1 -0
  818. package/packages/level2/common/fd/fd-meta-toolbox/status-board/status-board.resource.js +1 -1
  819. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-bank.resource.js +1 -1
  820. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-category.resource.js +1 -1
  821. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-submission.resource.js +1 -1
  822. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-to-form-section.resource.js +1 -1
  823. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field.resource.js +1 -1
  824. package/packages/level2/common/fd/fd-toolbox-web/forms/form-section.resource.js +1 -1
  825. package/packages/level2/common/fd/fd-toolbox-web/forms/form-submission.resource.js +1 -1
  826. package/packages/level2/common/fd/fd-toolbox-web/forms/form.resource.js +1 -1
  827. package/packages/level2/common/fd/fd-toolbox-web/localization/language.resource.d.ts +1 -0
  828. package/packages/level2/common/fd/fd-toolbox-web/localization/language.resource.js +1 -1
  829. package/packages/level2/common/fd/fd-toolbox-web/localization/localization-string.resource.js +1 -1
  830. package/packages/level2/common/fd/media/screenshot-constants.d.ts +1 -0
  831. package/packages/level2/common/leads/google-place.resource.d.ts +1 -0
  832. package/packages/level2/common/leads/google-place.resource.js +1 -1
  833. package/packages/level2/common/leads/lead-category.resource.d.ts +1 -0
  834. package/packages/level2/common/leads/lead-category.resource.js +1 -1
  835. package/packages/level2/common/leads/lead-email.resource.d.ts +1 -0
  836. package/packages/level2/common/leads/lead-email.resource.js +1 -2
  837. package/packages/level2/common/leads/lead-group.resource.d.ts +1 -0
  838. package/packages/level2/common/leads/lead-group.resource.js +1 -1
  839. package/packages/level2/common/leads/lead-to-lead-category.resource.d.ts +1 -0
  840. package/packages/level2/common/leads/lead-to-lead-category.resource.js +1 -1
  841. package/packages/level2/common/leads/lead-to-lead-group.resource.d.ts +1 -0
  842. package/packages/level2/common/leads/lead-to-lead-group.resource.js +1 -1
  843. package/packages/level2/common/leads/lead.resource.d.ts +1 -0
  844. package/packages/level2/common/leads/lead.resource.js +1 -1
  845. package/packages/level2/common/leads/props/google-place-props.d.ts +1 -0
  846. package/packages/level2/common/leads/props/lead-to-lead-group-props.d.ts +1 -0
  847. package/packages/level2/common/models/create-user-input.d.ts +1 -0
  848. package/packages/level2/common/models/create-user-input.js +1 -1
  849. package/packages/level2/common/models/edit-other-user-dto.d.ts +1 -0
  850. package/packages/level2/common/models/edit-other-user-dto.js +1 -1
  851. package/packages/level2/common/models/edit-user-dto-password.d.ts +1 -0
  852. package/packages/level2/common/models/role-assigned.d.ts +1 -0
  853. package/packages/level2/common/models/user-created.d.ts +1 -0
  854. package/packages/level2/common/models/user-created.js +1 -1
  855. package/packages/level2/common/orders/order-enums.d.ts +2 -0
  856. package/packages/level2/common/orders/order-props.d.ts +1 -0
  857. package/packages/level2/common/payments/feature-to-payment-plan.resource.js +1 -1
  858. package/packages/level2/common/payments/payment-constants.d.ts +5 -0
  859. package/packages/level2/common/payments/payment.resource.d.ts +1 -0
  860. package/packages/level2/common/payments/payment.resource.js +1 -1
  861. package/packages/level2/common/payments/props/payment-props.d.ts +1 -0
  862. package/packages/level2/common/payments/stripe/stripe-constants.d.ts +5 -0
  863. package/packages/level2/common/payments/stripe/stripe-constants.js +1 -1
  864. package/packages/level2/common/payments/system-invoice/payment-system-invoice.resource.js +1 -1
  865. package/packages/level2/common/products/product-constants.d.ts +1 -0
  866. package/packages/level2/common/products/product-enums.d.ts +2 -0
  867. package/packages/level2/common/products/product-parameter.resource.d.ts +1 -0
  868. package/packages/level2/common/products/product-parameter.resource.js +1 -1
  869. package/packages/level2/common/resources/case.resource2.js +1 -1
  870. package/packages/level2/common/resources/dashboard-report.resource.d.ts +1 -0
  871. package/packages/level2/common/resources/dashboard-report.resource.js +1 -1
  872. package/packages/level2/common/resources/dashboard.resource.d.ts +1 -0
  873. package/packages/level2/common/resources/dashboard.resource.js +1 -1
  874. package/packages/level2/common/resources/feed-entry.resource.js +1 -1
  875. package/packages/level2/common/resources/integration-subscription.resource.js +1 -1
  876. package/packages/level2/common/resources/item.resource.d.ts +1 -0
  877. package/packages/level2/common/resources/item.resource.js +1 -1
  878. package/packages/level2/common/resources/oauth-service.resource.js +1 -1
  879. package/packages/level2/common/resources/order-line.resource.d.ts +1 -0
  880. package/packages/level2/common/resources/order-line.resource.js +1 -1
  881. package/packages/level2/common/resources/order-transaction.resource.d.ts +1 -0
  882. package/packages/level2/common/resources/order-transaction.resource.js +1 -1
  883. package/packages/level2/common/resources/order.resource.d.ts +1 -0
  884. package/packages/level2/common/resources/order.resource.js +1 -1
  885. package/packages/level2/common/resources/product-category.resource.d.ts +1 -0
  886. package/packages/level2/common/resources/product-category.resource.js +1 -1
  887. package/packages/level2/common/resources/product-media.resource.d.ts +1 -0
  888. package/packages/level2/common/resources/product-media.resource.js +1 -1
  889. package/packages/level2/common/resources/product.resource.d.ts +1 -0
  890. package/packages/level2/common/resources/product.resource.js +1 -1
  891. package/packages/level2/common/resources/props/feature-props.d.ts +1 -0
  892. package/packages/level2/common/resources/props/integration-subscription-props.d.ts +1 -0
  893. package/packages/level2/common/resources/props/oauth-service-props.d.ts +1 -0
  894. package/packages/level2/common/resources/props/website-scan-result-props.d.ts +1 -0
  895. package/packages/level2/common/resources/search.resource.d.ts +1 -0
  896. package/packages/level2/common/resources/search.resource.js +1 -1
  897. package/packages/level2/common/resources/searchable-resource.resource.js +1 -1
  898. package/packages/level2/common/resources/system-setting.resource.d.ts +1 -0
  899. package/packages/level2/common/resources/system-setting.resource.js +1 -1
  900. package/packages/level2/common/resources/website-scan-result.resource.d.ts +1 -0
  901. package/packages/level2/common/resources/website-scan-result.resource.js +1 -1
  902. package/packages/level2/common/resources/workspace-setting.resource.d.ts +1 -0
  903. package/packages/level2/common/resources/workspace-setting.resource.js +1 -1
  904. package/packages/level2/common/shipment/shipment-label-type.d.ts +2 -0
  905. package/packages/level2/common/shipment/shipment-provider-type.d.ts +2 -0
  906. package/packages/level2/common/shipment/shipment-provider.resource.d.ts +1 -0
  907. package/packages/level2/common/shipment/shipment-provider.resource.js +1 -1
  908. package/packages/level2/common/shipment/shipment-tracking-status.d.ts +2 -0
  909. package/packages/level2/common/shipment/shipment.resource.d.ts +1 -0
  910. package/packages/level2/common/shipment/shipment.resource.js +1 -2
  911. package/packages/level2/common/stores/store-enums.d.ts +2 -0
  912. package/packages/level2/common/stores/store-props.d.ts +1 -0
  913. package/packages/level2/common/stores/store.resource.d.ts +1 -0
  914. package/packages/level2/common/stores/store.resource.js +1 -1
  915. package/packages/level2/common/subscription-plan/subscription-plan-constants.d.ts +12 -0
  916. package/packages/level2/common/subscription-plan/subscription-plan-constants.js +2 -2
  917. package/packages/level2/common/tutorial/student.resource.js +1 -1
  918. package/packages/level2/common/tutorial/teacher.resource.js +1 -1
  919. package/packages/level2/common/users/user-token-purposes.d.ts +1 -0
  920. package/packages/level2/common/website-scan/analytics-scan.d.ts +1 -0
  921. package/packages/level2/common/website-scan/analytics-scan.js +1 -1
  922. package/packages/level2/common/website-scan/social-media-links.d.ts +1 -0
  923. package/packages/level2/common/website-scan/website-platform-checking.d.ts +1 -0
  924. package/packages/level2/common/website-scan/website-platform-checking.js +1 -1
  925. package/packages/level2/common/website-scan/website-scan-request-types.d.ts +1 -0
  926. package/packages/level2/common/website-scan/website-scan-result-analytics-type.d.ts +1 -0
  927. package/packages/level2/common/website-scan/website-scan-result-platform-type.d.ts +1 -0
  928. package/packages/level2/db/adapters/postgres-adapter.js +4 -3
  929. package/packages/level2/db/adapters/sqlite-adapter.js +2 -2
  930. package/packages/level2/db/constants/db-constants.d.ts +3 -0
  931. package/packages/level2/db/constants/db-constants.js +5 -3
  932. package/packages/level2/db/constants/schema-names.d.ts +2 -0
  933. package/packages/level2/db/constants/schema-names.js +4 -4
  934. package/packages/level2/db/db-config.d.ts +2 -0
  935. package/packages/level2/db/db-config.js +1 -1
  936. package/packages/level2/db/db-connection.d.ts +20 -0
  937. package/packages/level2/db/db-connection.js +2 -2
  938. package/packages/level2/db/db-schema.d.ts +1 -0
  939. package/packages/level2/db/db-schema.js +1 -1
  940. package/packages/level2/db/drizzle-queries.d.ts +7 -0
  941. package/packages/level2/db/drizzle-queries.js +1 -1
  942. package/packages/level2/db/guards/db-type-guards.d.ts +1 -0
  943. package/packages/level2/db/guards/db-type-guards.js +2 -2
  944. package/packages/level2/db/types/db-types.d.ts +15 -4
  945. package/packages/level2/db/utils/run-migration-command.d.ts +1 -0
  946. package/packages/level2/db/utils/run-migration-command.js +3 -3
  947. package/packages/level2/db/utils/schema-table-names.js +1 -1
  948. package/packages/level2/enricher/constants/enricher-error-message-constants.d.ts +1 -0
  949. package/packages/level2/enricher/integrations/google-spreadsheet.d.ts +4 -0
  950. package/packages/level2/enricher/integrations/google-spreadsheet.js +2 -2
  951. package/packages/level2/fd-app-toolbox/auth-forms/auth-register.d.ts +4 -0
  952. package/packages/level2/fd-app-toolbox/auth-forms/auth-register.js +10 -0
  953. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/LoginForm.funcs.d.ts +4 -7
  954. package/packages/level2/fd-app-toolbox/auth-forms/login-form/LoginForm.funcs.js +15 -0
  955. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/LoginForm.js +28 -27
  956. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/facebook-login.d.ts +2 -1
  957. package/packages/level2/fd-app-toolbox/auth-forms/login-form/facebook-login.js +18 -0
  958. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/google-login.d.ts +2 -1
  959. package/packages/level2/fd-app-toolbox/auth-forms/login-form/google-login.js +18 -0
  960. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/microsoft-login.d.ts +4 -2
  961. package/packages/level2/fd-app-toolbox/auth-forms/login-form/microsoft-login.js +20 -0
  962. package/packages/level2/fd-app-toolbox/auth-forms/login-form/normalize-email.d.ts +1 -0
  963. package/packages/level2/fd-app-toolbox/auth-forms/login-form/normalize-email.js +7 -0
  964. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/oauth-login-config.d.ts +3 -3
  965. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/standard-login.d.ts +5 -3
  966. package/packages/level2/fd-app-toolbox/auth-forms/login-form/standard-login.js +15 -0
  967. package/packages/level2/fd-app-toolbox/{register-form → auth-forms/register-form}/RegisterForm.d.ts +1 -1
  968. package/packages/level2/fd-app-toolbox/auth-forms/register-form/RegisterForm.funcs.d.ts +5 -0
  969. package/packages/level2/fd-app-toolbox/auth-forms/register-form/RegisterForm.funcs.js +9 -0
  970. package/packages/level2/fd-app-toolbox/{register-form → auth-forms/register-form}/RegisterForm.js +22 -21
  971. package/packages/level2/fd-app-toolbox/constants/form-constants.d.ts +1 -0
  972. package/packages/level2/fd-app-toolbox/constants/user-friendly-workspace-invite-messages.d.ts +1 -0
  973. package/packages/level2/fd-app-toolbox/constants/web-socket-methods.d.ts +1 -0
  974. package/packages/level2/fd-app-toolbox/edit-other-user/EditOtherUser.d.ts +1 -0
  975. package/packages/level2/fd-app-toolbox/edit-password-form/EditPasswordForm.funcs.js +1 -1
  976. package/packages/level2/fd-app-toolbox/edit-password-form/EditPasswordForm.js +5 -5
  977. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.d.ts +1 -1
  978. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.funcs.d.ts +4 -4
  979. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.funcs.js +2 -2
  980. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.js +7 -7
  981. package/packages/level2/fd-app-toolbox/edit-user-sheet/EditUserSheet.d.ts +1 -1
  982. package/packages/level2/fd-app-toolbox/edit-user-sheet/EditUserSheet.funcs.d.ts +1 -1
  983. package/packages/level2/fd-app-toolbox/edit-user-sheet/EditUserSheet.funcs.js +1 -1
  984. package/packages/level2/fd-app-toolbox/enums/sidebar-status.d.ts +6 -0
  985. package/packages/level2/fd-app-toolbox/enums/sidebar-status.js +4 -0
  986. package/packages/level2/fd-app-toolbox/forgot-password-form/ForgotPasswordForm.funcs.d.ts +1 -1
  987. package/packages/level2/fd-app-toolbox/forgot-password-form/ForgotPasswordForm.funcs.js +1 -1
  988. package/packages/level2/fd-app-toolbox/forgot-password-form/ForgotPasswordForm.js +5 -4
  989. package/packages/level2/fd-app-toolbox/layout/client-layout/client-layout-config.js +1 -1
  990. package/packages/level2/fd-app-toolbox/layout/client-root/ClientRoot.funcs.d.ts +1 -1
  991. package/packages/level2/fd-app-toolbox/layout/client-root/ClientRoot.funcs.js +2 -2
  992. package/packages/level2/fd-app-toolbox/layout/client-root/ClientRoot.js +1 -1
  993. package/packages/level2/fd-app-toolbox/layout/sidebar/Sidebar.funcs.d.ts +2 -7
  994. package/packages/level2/fd-app-toolbox/layout/sidebar/Sidebar.funcs.js +4 -2
  995. package/packages/level2/fd-app-toolbox/layout/sidebar/Sidebar.js +1 -1
  996. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/DropdownMenuItemTitle.d.ts +1 -1
  997. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/SidebarDropdownMenu.funcs.d.ts +1 -1
  998. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/SidebarDropdownMenu.funcs.js +1 -1
  999. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/SidebarDropdownMenu.js +2 -2
  1000. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-resource-names-cache.js +1 -1
  1001. package/packages/level2/fd-app-toolbox/layout/toolbar/Toolbar.funcs.d.ts +1 -2
  1002. package/packages/level2/fd-app-toolbox/layout/toolbar/Toolbar.funcs.js +3 -13
  1003. package/packages/level2/fd-app-toolbox/layout/toolbar/Toolbar.js +67 -57
  1004. package/packages/level2/fd-app-toolbox/layout/{hamburger-menu → toolbar/hamburger-menu}/HamburgerMenu.d.ts +2 -2
  1005. package/packages/level2/fd-app-toolbox/layout/{hamburger-menu → toolbar/hamburger-menu}/HamburgerMenu.js +9 -9
  1006. package/packages/level2/fd-app-toolbox/layout/toolbar/toolbar-menu-subgroups.d.ts +2 -0
  1007. package/packages/level2/fd-app-toolbox/layout/toolbar/toolbar-menu-subgroups.js +17 -0
  1008. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.d.ts +3 -0
  1009. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.funcs.d.ts +3 -3
  1010. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.funcs.js +3 -2
  1011. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.js +71 -48
  1012. package/packages/level2/fd-app-toolbox/menu/notifications-menu/notification-list/NotificationList.d.ts +3 -0
  1013. package/packages/level2/fd-app-toolbox/menu/notifications-menu/notification-list/NotificationList.funcs.js +2 -1
  1014. package/packages/level2/fd-app-toolbox/menu/notifications-menu/notification-list/NotificationList.js +67 -52
  1015. package/packages/level2/fd-app-toolbox/menu/themes.js +1 -1
  1016. package/packages/level2/fd-app-toolbox/menu/top-menu/top-menu-item/TopMenuItem.funcs.js +1 -1
  1017. package/packages/level2/fd-app-toolbox/menu/top-menu/top-menu-types.d.ts +1 -1
  1018. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/UserDropdownMenu.funcs.js +1 -1
  1019. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/UserDropdownMenu.js +1 -1
  1020. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/user-dropdown-menu-item/UserDropdownMenuItem.d.ts +1 -1
  1021. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/user-dropdown-menu-item/UserDropdownMenuItem.funcs.d.ts +1 -1
  1022. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/user-dropdown-menu-item/UserDropdownMenuItem.funcs.js +1 -1
  1023. package/packages/level2/fd-app-toolbox/menu/visible-workspace-picker/VisibleWorkspacePicker.funcs.d.ts +1 -1
  1024. package/packages/level2/fd-app-toolbox/menu/visible-workspace-picker/VisibleWorkspacePicker.funcs.js +1 -1
  1025. package/packages/level2/fd-app-toolbox/menu/workspace-picker/WorkspacePicker.funcs.d.ts +1 -1
  1026. package/packages/level2/fd-app-toolbox/menu/workspace-picker/WorkspacePicker.funcs.js +1 -1
  1027. package/packages/level2/fd-app-toolbox/models/result.d.ts +1 -0
  1028. package/packages/level2/fd-app-toolbox/models/screens-result.d.ts +1 -0
  1029. package/packages/level2/fd-app-toolbox/models/screens-result.js +1 -1
  1030. package/packages/level2/fd-app-toolbox/models/searchable-resource-result.d.ts +1 -0
  1031. package/packages/level2/fd-app-toolbox/models/searchable-resource-result.js +1 -1
  1032. package/packages/level2/fd-app-toolbox/passwords/edit-password-dto.d.ts +1 -0
  1033. package/packages/level2/fd-app-toolbox/passwords/edit-password-dto.js +2 -2
  1034. package/packages/level2/fd-app-toolbox/passwords/passwords-api.d.ts +3 -6
  1035. package/packages/level2/fd-app-toolbox/passwords/passwords-api.js +1 -1
  1036. package/packages/level2/fd-app-toolbox/providers/ThemeProvider/ThemeProvider.d.ts +1 -1
  1037. package/packages/level2/fd-app-toolbox/providers/ThemeProvider/theme.d.ts +1 -1
  1038. package/packages/level2/fd-app-toolbox/providers/ThemeProvider/theme.js +1 -1
  1039. package/packages/level2/fd-app-toolbox/providers/auth-provider/AuthProvider.js +2 -2
  1040. package/packages/level2/fd-app-toolbox/providers/sidebar-provider/SidebarContext.d.ts +2 -2
  1041. package/packages/level2/fd-app-toolbox/providers/sidebar-provider/SidebarContext.js +1 -1
  1042. package/packages/level2/fd-app-toolbox/report/ReportComponent.d.ts +1 -0
  1043. package/packages/level2/fd-app-toolbox/report/ReportComponent.js +2 -2
  1044. package/packages/level2/fd-app-toolbox/report/fetch-report-with-data.d.ts +1 -0
  1045. package/packages/level2/fd-app-toolbox/report/fetch-report-with-data.js +8 -0
  1046. package/packages/level2/fd-app-toolbox/report/{ReportCard.d.ts → report-card/ReportCard.d.ts} +1 -1
  1047. package/packages/level2/fd-app-toolbox/report/report-card/ReportCard.funcs.d.ts +4 -0
  1048. package/packages/level2/fd-app-toolbox/report/report-card/ReportCard.funcs.js +7 -0
  1049. package/packages/level2/fd-app-toolbox/report/{ReportCard.js → report-card/ReportCard.js} +4 -4
  1050. package/packages/level2/fd-app-toolbox/report/{ReportChart.d.ts → report-chart/ReportChart.d.ts} +1 -1
  1051. package/packages/level2/fd-app-toolbox/report/report-chart/ReportChart.funcs.d.ts +4 -0
  1052. package/packages/level2/fd-app-toolbox/report/report-chart/ReportChart.funcs.js +6 -0
  1053. package/packages/level2/fd-app-toolbox/report/{ReportChart.js → report-chart/ReportChart.js} +4 -4
  1054. package/packages/level2/fd-app-toolbox/reports/dashboard-report-data.resource.d.ts +1 -0
  1055. package/packages/level2/fd-app-toolbox/reports/dashboard-report-data.resource.js +1 -1
  1056. package/packages/level2/fd-app-toolbox/reports/report-chart-series.resource.js +1 -1
  1057. package/packages/level2/fd-app-toolbox/reports/report-enums.d.ts +3 -0
  1058. package/packages/level2/fd-app-toolbox/reports/report-with-data.resource.js +1 -1
  1059. package/packages/level2/fd-app-toolbox/reports/report.resource.d.ts +1 -0
  1060. package/packages/level2/fd-app-toolbox/reports/report.resource.js +1 -1
  1061. package/packages/level2/fd-app-toolbox/reset-password-form/ResetPasswordForm.funcs.d.ts +1 -1
  1062. package/packages/level2/fd-app-toolbox/reset-password-form/ResetPasswordForm.funcs.js +1 -1
  1063. package/packages/level2/fd-app-toolbox/reset-password-form/ResetPasswordForm.js +6 -6
  1064. package/packages/level2/fd-app-toolbox/resources/notification/notification.resource.js +1 -1
  1065. package/packages/level2/fd-app-toolbox/resources/search-result.resource.d.ts +1 -0
  1066. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-item.resource.d.ts +1 -0
  1067. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-item.resource.js +1 -1
  1068. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-status.resource.d.ts +1 -0
  1069. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-status.resource.js +1 -1
  1070. package/packages/level2/fd-app-toolbox/search/Search.funcs.d.ts +1 -1
  1071. package/packages/level2/fd-app-toolbox/search/Search.funcs.js +1 -1
  1072. package/packages/level2/fd-app-toolbox/search/resource-search-result.d.ts +11 -0
  1073. package/packages/level2/fd-app-toolbox/search/search-dialog/SearchDialog.d.ts +1 -1
  1074. package/packages/level2/fd-app-toolbox/search/search-dialog/SearchDialog.funcs.js +2 -2
  1075. package/packages/level2/fd-app-toolbox/search/search-dialog/SearchDialog.js +2 -1
  1076. package/packages/level2/fd-app-toolbox/search/search-dialog-provider.d.ts +1 -1
  1077. package/packages/level2/fd-app-toolbox/search/search-dialog-table-config.d.ts +4 -0
  1078. package/packages/level2/fd-app-toolbox/search/search-dialog-table-config.js +4 -0
  1079. package/packages/level2/fd-app-toolbox/search/search-input/SearchInput.d.ts +1 -1
  1080. package/packages/level2/fd-app-toolbox/search/search-resource-results/SearchResourcesResults.d.ts +2 -2
  1081. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.d.ts +1 -1
  1082. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.funcs.d.ts +1 -5
  1083. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.funcs.js +2 -2
  1084. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.js +2 -1
  1085. package/packages/level2/fd-app-toolbox/search/search-searchable-resource-results/SearchSearchableResourceResult.funcs.d.ts +1 -1
  1086. package/packages/level2/fd-app-toolbox/search/search-searchable-resource-results/SearchSearchableResourceResult.funcs.js +3 -3
  1087. package/packages/level2/fd-app-toolbox/server/base-resources/props/fill-base-resource-props.js +1 -1
  1088. package/packages/level2/fd-app-toolbox/server/base-resources/props/fill-workspace-resource-props.d.ts +1 -0
  1089. package/packages/level2/fd-app-toolbox/server/base-resources/props/fill-workspace-resource-props.js +1 -1
  1090. package/packages/level2/fd-app-toolbox/server/infra/workspaces/workspace-db.d.ts +8 -2
  1091. package/packages/level2/fd-app-toolbox/server/infra/workspaces/workspace-db.js +1 -1
  1092. package/packages/level2/fd-app-toolbox/server/layout/sidebar/sidebar-resources.js +1 -1
  1093. package/packages/level2/fd-app-toolbox/server/users/user-db.d.ts +1 -0
  1094. package/packages/level2/fd-app-toolbox/server/users/user-db.js +1 -1
  1095. package/packages/level2/fd-app-toolbox/server/workspace/visible-workspaces.d.ts +5 -0
  1096. package/packages/level2/fd-app-toolbox/server/workspace/visible-workspaces.js +1 -1
  1097. package/packages/level2/fd-app-toolbox/services/web-socket-client.d.ts +1 -1
  1098. package/packages/level2/fd-app-toolbox/services/web-socket-client.js +1 -1
  1099. package/packages/level2/fd-app-toolbox/status-board/StatusBoard.funcs.d.ts +2 -5
  1100. package/packages/level2/fd-app-toolbox/status-board/StatusBoard.funcs.js +1 -1
  1101. package/packages/level2/fd-app-toolbox/status-board/status-board-constants.d.ts +2 -0
  1102. package/packages/level2/fd-app-toolbox/user-dto.d.ts +2 -0
  1103. package/packages/level2/fd-app-toolbox/user-dto.js +2 -2
  1104. package/packages/level2/fd-app-toolbox/user-list/UserList.d.ts +2 -0
  1105. package/packages/level2/fd-app-toolbox/user-list/UserList.funcs.d.ts +1 -1
  1106. package/packages/level2/fd-app-toolbox/user-list/UserList.funcs.js +2 -2
  1107. package/packages/level2/fd-component-toolbox/avatar/Avatar.d.ts +1 -0
  1108. package/packages/level2/fd-component-toolbox/avatar/Avatar.js +2 -1
  1109. package/packages/level2/fd-component-toolbox/back-button/BackButton.d.ts +2 -1
  1110. package/packages/level2/fd-component-toolbox/badge-toggle-list/BadgeToggleList.d.ts +1 -1
  1111. package/packages/level2/fd-component-toolbox/badge-toggle-list/BadgeToggleList.funcs.d.ts +1 -1
  1112. package/packages/level2/fd-component-toolbox/badge-toggle-list/BadgeToggleList.funcs.js +1 -1
  1113. package/packages/level2/fd-component-toolbox/big-calendar/BigCalendar.d.ts +2 -0
  1114. package/packages/level2/fd-component-toolbox/big-calendar/BigCalendar.funcs.d.ts +0 -1
  1115. package/packages/level2/fd-component-toolbox/big-calendar/BigCalendar.funcs.js +2 -19
  1116. package/packages/level2/fd-component-toolbox/button/Button.d.ts +7 -6
  1117. package/packages/level2/fd-component-toolbox/button/Button.funcs.js +1 -1
  1118. package/packages/level2/fd-component-toolbox/button/Button.js +2 -2
  1119. package/packages/level2/fd-component-toolbox/calendar/Calendar.funcs.js +1 -1
  1120. package/packages/level2/fd-component-toolbox/calendar/calendar-constants.js +3 -3
  1121. package/packages/level2/fd-component-toolbox/checkbox/Checkbox.d.ts +1 -1
  1122. package/packages/level2/fd-component-toolbox/client/framework/index.d.ts +4 -26
  1123. package/packages/level2/fd-component-toolbox/client/framework/index.js +2 -6
  1124. package/packages/level2/fd-component-toolbox/constants/component-toolbox-constants.d.ts +4 -0
  1125. package/packages/level2/fd-component-toolbox/constants/component-toolbox-constants.js +6 -0
  1126. package/packages/level2/fd-component-toolbox/{table-element-suffixes.js → constants/table-element-suffixes.js} +2 -2
  1127. package/packages/level2/fd-component-toolbox/datepicker/DatePicker.d.ts +1 -1
  1128. package/packages/level2/fd-component-toolbox/datepicker/DatePicker.funcs.d.ts +1 -1
  1129. package/packages/level2/fd-component-toolbox/datepicker/DatePicker.funcs.js +1 -1
  1130. package/packages/level2/fd-component-toolbox/dialog/YesOrNoDialog.d.ts +1 -1
  1131. package/packages/level2/fd-component-toolbox/dialog/YesOrNoDialog.funcs.d.ts +1 -1
  1132. package/packages/level2/fd-component-toolbox/dialog/YesOrNoDialog.funcs.js +1 -1
  1133. package/packages/level2/fd-component-toolbox/dialog/dialog-constants.d.ts +1 -0
  1134. package/packages/level2/fd-component-toolbox/drag-and-drop/Draggable.js +2 -2
  1135. package/packages/level2/fd-component-toolbox/dynamic-layout/DynamicLayoutDragAndDrop.funcs.d.ts +1 -2
  1136. package/packages/level2/fd-component-toolbox/dynamic-layout/DynamicLayoutDragAndDrop.funcs.js +4 -2
  1137. package/packages/level2/fd-component-toolbox/fade-out-text/FadeOutText.d.ts +2 -1
  1138. package/packages/level2/fd-component-toolbox/fade-out-text/FadeOutText.funcs.d.ts +1 -1
  1139. package/packages/level2/fd-component-toolbox/fade-out-text/FadeOutText.funcs.js +1 -1
  1140. package/packages/level2/fd-component-toolbox/form/form-field-focus.d.ts +3 -0
  1141. package/packages/level2/fd-component-toolbox/form/form-field-focus.js +4 -0
  1142. package/packages/level2/fd-component-toolbox/icon/Icon.d.ts +1 -0
  1143. package/packages/level2/fd-component-toolbox/image/Image.js +2 -1
  1144. package/packages/level2/fd-component-toolbox/image-radio-group/ImageRadioGroup.d.ts +1 -1
  1145. package/packages/level2/fd-component-toolbox/image-radio-group/ImageRadioGroup.js +2 -2
  1146. package/packages/level2/fd-component-toolbox/input/Input.d.ts +2 -1
  1147. package/packages/level2/fd-component-toolbox/input/Input.funcs.d.ts +4 -2
  1148. package/packages/level2/fd-component-toolbox/input/Input.funcs.js +5 -2
  1149. package/packages/level2/fd-component-toolbox/input/Input.js +19 -10
  1150. package/packages/level2/fd-component-toolbox/link/Link.js +2 -1
  1151. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.d.ts +1 -1
  1152. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.funcs.d.ts +1 -1
  1153. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.funcs.js +1 -1
  1154. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.js +2 -2
  1155. package/packages/level2/fd-component-toolbox/markdown/Markdown.d.ts +1 -1
  1156. package/packages/level2/fd-component-toolbox/markdown/Markdown.funcs.d.ts +1 -1
  1157. package/packages/level2/fd-component-toolbox/markdown/Markdown.funcs.js +1 -1
  1158. package/packages/level2/fd-component-toolbox/markdown/Markdown.js +4 -4
  1159. package/packages/level2/fd-component-toolbox/markdown/markdown-parser.d.ts +3 -1
  1160. package/packages/level2/fd-component-toolbox/markdown/markdown-parser.js +1 -2
  1161. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.d.ts +1 -1
  1162. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.funcs.d.ts +1 -1
  1163. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.funcs.js +1 -1
  1164. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.js +7 -8
  1165. package/packages/level2/fd-component-toolbox/multiselect/hooks/use-multi-select.d.ts +3 -2
  1166. package/packages/level2/fd-component-toolbox/multiselect/hooks/use-multi-select.js +2 -2
  1167. package/packages/level2/fd-component-toolbox/navigation/navigation-item/NavigationItem.funcs.js +1 -1
  1168. package/packages/level2/fd-component-toolbox/rich-text/RichText.d.ts +1 -1
  1169. package/packages/level2/fd-component-toolbox/rich-text/RichText.funcs.js +3 -3
  1170. package/packages/level2/fd-component-toolbox/rich-text/rich-text-constants.js +1 -1
  1171. package/packages/level2/fd-component-toolbox/save-status/SaveStatus.js +3 -3
  1172. package/packages/level2/fd-component-toolbox/search/filter-names-constants.d.ts +1 -0
  1173. package/packages/level2/fd-component-toolbox/select/Select.d.ts +6 -0
  1174. package/packages/level2/fd-component-toolbox/select/Select.js +2 -2
  1175. package/packages/level2/fd-component-toolbox/sheet/Sheet.js +4 -4
  1176. package/packages/level2/fd-component-toolbox/sizing/sizing.d.ts +1 -0
  1177. package/packages/level2/fd-component-toolbox/sizing/sizing.js +2 -2
  1178. package/packages/level2/fd-component-toolbox/slide-toggle/SlideToggle.d.ts +1 -1
  1179. package/packages/level2/fd-component-toolbox/switch/Switch.d.ts +1 -1
  1180. package/packages/level2/fd-component-toolbox/switch/Switch.funcs.d.ts +1 -1
  1181. package/packages/level2/fd-component-toolbox/switch/Switch.funcs.js +1 -1
  1182. package/packages/level2/fd-component-toolbox/textarea/TextArea.d.ts +1 -1
  1183. package/packages/level2/fd-component-toolbox/textarea/TextArea.funcs.d.ts +2 -2
  1184. package/packages/level2/fd-component-toolbox/textarea/TextArea.funcs.js +3 -1
  1185. package/packages/level2/fd-component-toolbox/toaster/Toaster.funcs.js +1 -1
  1186. package/packages/level2/fd-component-toolbox/tooltip/Tooltip.d.ts +3 -2
  1187. package/packages/level2/fd-component-toolbox/tooltip/Tooltip.js +2 -2
  1188. package/packages/level2/meta/api/hooks/use-ui-resource-meta.js +1 -1
  1189. package/packages/level2/meta/api/meta-odata.d.ts +1 -1
  1190. package/packages/level2/meta/api/meta-odata.js +1 -1
  1191. package/packages/level2/meta/auth/auth-guards.d.ts +1 -0
  1192. package/packages/level2/meta/auth/auth-guards.js +2 -2
  1193. package/packages/level2/meta/auth/auth-handler.d.ts +2 -0
  1194. package/packages/level2/meta/auth/auth-handler.js +1 -1
  1195. package/packages/level2/meta/auth/login.d.ts +6 -0
  1196. package/packages/level2/meta/auth/logins.d.ts +3 -2
  1197. package/packages/level2/meta/auth/logins.js +4 -4
  1198. package/packages/level2/meta/auth/permissions/permission-checker.d.ts +5 -0
  1199. package/packages/level2/meta/auth/permissions/permission-checker.js +4 -4
  1200. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.d.ts +1 -1
  1201. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.funcs.d.ts +1 -8
  1202. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.funcs.js +3 -7
  1203. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.js +3 -3
  1204. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.d.ts +1 -1
  1205. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.funcs.d.ts +11 -1
  1206. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.funcs.js +6 -3
  1207. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.js +9 -10
  1208. package/packages/level2/meta/browsers/browser/Browser.d.ts +1 -1
  1209. package/packages/level2/meta/browsers/browser/Browser.funcs.d.ts +1 -2
  1210. package/packages/level2/meta/browsers/browser/Browser.funcs.js +3 -2
  1211. package/packages/level2/meta/browsers/browser/Browser.js +6 -5
  1212. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.d.ts +1 -1
  1213. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.funcs.d.ts +3 -5
  1214. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.funcs.js +4 -3
  1215. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.js +5 -6
  1216. package/packages/level2/meta/browsers/browser/short-resource-descriptor.d.ts +1 -0
  1217. package/packages/level2/meta/browsers/browser/short-resource-descriptor.js +4 -1
  1218. package/packages/level2/meta/browsers/browser-selection.d.ts +8 -0
  1219. package/packages/level2/meta/browsers/browser-selection.js +7 -0
  1220. package/packages/level2/meta/browsers/browser-type.d.ts +1 -0
  1221. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.d.ts +1 -1
  1222. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.funcs.d.ts +4 -6
  1223. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.funcs.js +6 -6
  1224. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.js +3 -4
  1225. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.d.ts +1 -1
  1226. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.funcs.d.ts +3 -2
  1227. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.funcs.js +3 -3
  1228. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.js +2 -2
  1229. package/packages/level2/meta/card-list/CardList.d.ts +2 -2
  1230. package/packages/level2/meta/card-list/CardList.funcs.d.ts +0 -3
  1231. package/packages/level2/meta/card-list/CardList.funcs.js +2 -4
  1232. package/packages/level2/meta/card-list/CardList.js +2 -1
  1233. package/packages/level2/meta/card-list/card-layout.d.ts +3 -0
  1234. package/packages/level2/meta/card-list/card-layout.js +6 -0
  1235. package/packages/level2/meta/card-list/config/card-config.d.ts +4 -1
  1236. package/packages/level2/meta/card-list/config/card-config.js +1 -1
  1237. package/packages/level2/meta/card-list/data-card/DataCard.d.ts +2 -2
  1238. package/packages/level2/meta/card-list/data-card/DataCard.funcs.d.ts +1 -1
  1239. package/packages/level2/meta/card-list/data-card/DataCard.funcs.js +1 -1
  1240. package/packages/level2/meta/card-list/data-card/DataCard.js +1 -1
  1241. package/packages/level2/meta/card-list/data-card/data-card-action/DataCardAction.d.ts +1 -1
  1242. package/packages/level2/meta/card-list/data-card/data-card-action/DataCardAction.js +0 -2
  1243. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.funcs.d.ts +2 -16
  1244. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.funcs.js +2 -12
  1245. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.js +7 -2
  1246. package/packages/level2/meta/card-list/data-card/data-card-image/DataCardImage.js +2 -1
  1247. package/packages/level2/meta/card-list/data-card/data-card-property-value/DataCardPropertyValue.d.ts +11 -0
  1248. package/packages/level2/meta/card-list/data-card/data-card-property-value/DataCardPropertyValue.funcs.d.ts +10 -0
  1249. package/packages/level2/meta/card-list/data-card/data-card-property-value/DataCardPropertyValue.funcs.js +15 -0
  1250. package/packages/level2/meta/card-list/data-card/{data-card-content/DataCardContent.render.funcs.js → data-card-property-value/DataCardPropertyValue.js} +11 -5
  1251. package/packages/level2/meta/card-list/data-card/data-card-types.d.ts +10 -0
  1252. package/packages/level2/meta/client/framework/hooks.d.ts +3 -0
  1253. package/packages/level2/meta/client/framework/hooks.js +2 -2
  1254. package/packages/level2/meta/client/framework/index.d.ts +1 -0
  1255. package/packages/level2/meta/client/framework/index.js +1 -1
  1256. package/packages/level2/meta/client/layout.js +1 -1
  1257. package/packages/level2/meta/comment/Comment.js +2 -1
  1258. package/packages/level2/meta/comment/CommentList.funcs.d.ts +1 -1
  1259. package/packages/level2/meta/comment/CommentList.funcs.js +2 -2
  1260. package/packages/level2/meta/comment/comment-service.d.ts +1 -0
  1261. package/packages/level2/meta/comment/comment-service.js +11 -0
  1262. package/packages/level2/meta/components/edit-image/EditImage.d.ts +1 -1
  1263. package/packages/level2/meta/components/edit-image/EditImage.funcs.d.ts +1 -1
  1264. package/packages/level2/meta/components/edit-image/EditImage.funcs.js +1 -1
  1265. package/packages/level2/meta/components/edit-image/EditImage.js +9 -3
  1266. package/packages/level2/meta/components/edit-image/EditImageActionMenu.d.ts +1 -1
  1267. package/packages/level2/meta/components/edit-image/EditImageDropdownMenu.d.ts +1 -1
  1268. package/packages/level2/meta/components/edit-image/EditImageDropdownMenu.js +4 -3
  1269. package/packages/level2/meta/components/file-upload/FileUpload.d.ts +1 -1
  1270. package/packages/level2/meta/components/file-upload/FileUpload.funcs.d.ts +1 -1
  1271. package/packages/level2/meta/components/file-upload/FileUpload.funcs.js +1 -1
  1272. package/packages/level2/meta/components/file-upload/FileUpload.js +2 -1
  1273. package/packages/level2/meta/components/file-upload/PreviewMedia.d.ts +1 -1
  1274. package/packages/level2/meta/components/file-upload/PreviewMedia.js +2 -1
  1275. package/packages/level2/meta/components/multi-list/MultiList.d.ts +1 -1
  1276. package/packages/level2/meta/components/multi-list/MultiList.funcs.d.ts +3 -8
  1277. package/packages/level2/meta/components/multi-list/MultiList.funcs.js +2 -2
  1278. package/packages/level2/meta/components/multi-list/MultiList.js +2 -1
  1279. package/packages/level2/meta/components/multi-list/MultiListEditResource.d.ts +1 -1
  1280. package/packages/level2/meta/components/multi-list/MultiListEditResource.js +6 -4
  1281. package/packages/level2/meta/components/multi-list/multi-list-config.d.ts +7 -0
  1282. package/packages/level2/meta/components/multi-list/multi-list-config.js +4 -0
  1283. package/packages/level2/meta/components/multi-list/multi-list-constants.d.ts +1 -0
  1284. package/packages/level2/meta/components/multi-list/multi-list-item-type.d.ts +2 -0
  1285. package/packages/level2/meta/components/multi-list/multi-list-item-type.js +7 -0
  1286. package/packages/level2/meta/components/multi-list/templates/ManyToOneTableHeaderCellTemplate.d.ts +1 -1
  1287. package/packages/level2/meta/components/multi-list/use-multi-list-edit-resource-config.js +2 -2
  1288. package/packages/level2/meta/components/related-resources/RelatedResources.d.ts +1 -1
  1289. package/packages/level2/meta/components/related-resources/RelatedResources.funcs.d.ts +1 -1
  1290. package/packages/level2/meta/components/related-resources/RelatedResources.funcs.js +1 -1
  1291. package/packages/level2/meta/components/related-resources/RelatedResources.js +2 -2
  1292. package/packages/level2/meta/components/related-resources/related-property.js +1 -1
  1293. package/packages/level2/meta/components/related-resources/related-resources-component.js +2 -3
  1294. package/packages/level2/meta/constants/element-prefixes.d.ts +1 -0
  1295. package/packages/level2/meta/constants/element-prefixes.js +1 -1
  1296. package/packages/level2/meta/constants/media-constants.d.ts +1 -0
  1297. package/packages/level2/meta/constants/meta-error-messages-constants.js +1 -1
  1298. package/packages/level2/meta/constants/property-type-formats.js +3 -3
  1299. package/packages/level2/meta/constants/search-constants.d.ts +1 -0
  1300. package/packages/level2/meta/constants/search-constants.js +3 -1
  1301. package/packages/level2/meta/constants/toolbox-users.js +3 -1
  1302. package/packages/level2/meta/constants/user-names.d.ts +1 -0
  1303. package/packages/level2/meta/core/auth-resource-meta.js +1 -1
  1304. package/packages/level2/meta/core/property-meta.js +1 -1
  1305. package/packages/level2/meta/core/property-types.d.ts +1 -1
  1306. package/packages/level2/meta/core/property-types.js +1 -1
  1307. package/packages/level2/meta/core/relation.js +1 -1
  1308. package/packages/level2/meta/core/resource-description/resource-description.d.ts +1 -1
  1309. package/packages/level2/meta/core/resource-description/resource-description.js +1 -1
  1310. package/packages/level2/meta/core/resource-description/resource-descriptions.js +1 -1
  1311. package/packages/level2/meta/core/resource-meta.js +1 -1
  1312. package/packages/level2/meta/core/resource-singletons.js +1 -1
  1313. package/packages/level2/meta/core/resources/blob/blob-props.d.ts +1 -0
  1314. package/packages/level2/meta/core/resources/blob/blob-urls.d.ts +1 -0
  1315. package/packages/level2/meta/core/resources/blob/blob-urls.js +1 -1
  1316. package/packages/level2/meta/core/resources/blob/blob.resource.d.ts +1 -0
  1317. package/packages/level2/meta/core/resources/blob/blob.resource.js +1 -1
  1318. package/packages/level2/meta/core/resources/comment.resource.d.ts +1 -0
  1319. package/packages/level2/meta/core/resources/comment.resource.js +1 -1
  1320. package/packages/level2/meta/core/resources/enums/feature-enums.d.ts +5 -0
  1321. package/packages/level2/meta/core/resources/enums/payment-enums.d.ts +5 -0
  1322. package/packages/level2/meta/core/resources/enums/permission-enums.d.ts +6 -0
  1323. package/packages/level2/meta/core/resources/enums/usage-limit-enums.d.ts +1 -0
  1324. package/packages/level2/meta/core/resources/features/feature-codes.d.ts +1 -0
  1325. package/packages/level2/meta/core/resources/features/feature-ids.d.ts +1 -0
  1326. package/packages/level2/meta/core/resources/features/feature.resource.d.ts +1 -0
  1327. package/packages/level2/meta/core/resources/features/feature.resource.js +1 -1
  1328. package/packages/level2/meta/core/resources/payment-plan-feature.resource.d.ts +1 -0
  1329. package/packages/level2/meta/core/resources/payment-plan-feature.resource.js +1 -1
  1330. package/packages/level2/meta/core/resources/payment-plan.resource.d.ts +1 -0
  1331. package/packages/level2/meta/core/resources/payment-plan.resource.js +1 -1
  1332. package/packages/level2/meta/core/resources/permissions/permission-package-to-permission.resource.d.ts +1 -0
  1333. package/packages/level2/meta/core/resources/permissions/permission-package-to-permission.resource.js +1 -1
  1334. package/packages/level2/meta/core/resources/permissions/permission-package.resource.d.ts +1 -0
  1335. package/packages/level2/meta/core/resources/permissions/permission-package.resource.js +1 -1
  1336. package/packages/level2/meta/core/resources/permissions/permission.resource.d.ts +1 -0
  1337. package/packages/level2/meta/core/resources/permissions/permission.resource.js +1 -0
  1338. package/packages/level2/meta/core/resources/pricing.resource.js +1 -1
  1339. package/packages/level2/meta/core/resources/props/payment-plan-price-props.d.ts +1 -0
  1340. package/packages/level2/meta/core/resources/props/payment-plan-props.d.ts +1 -0
  1341. package/packages/level2/meta/core/resources/props/usage-limit-props.d.ts +1 -0
  1342. package/packages/level2/meta/core/resources/resources/props/resource-property-props.d.ts +1 -0
  1343. package/packages/level2/meta/core/resources/resources/resource-property.resource.d.ts +1 -0
  1344. package/packages/level2/meta/core/resources/resources/resource-property.resource.js +1 -1
  1345. package/packages/level2/meta/core/resources/resources/resource.resource.d.ts +1 -0
  1346. package/packages/level2/meta/core/resources/resources/resource.resource.js +1 -1
  1347. package/packages/level2/meta/core/resources/roles/role-feature.resource.d.ts +1 -0
  1348. package/packages/level2/meta/core/resources/roles/role-feature.resource.js +1 -1
  1349. package/packages/level2/meta/core/resources/roles/role-to-permission-package.resource.js +1 -1
  1350. package/packages/level2/meta/core/resources/roles/role-to-permission.resource.d.ts +1 -0
  1351. package/packages/level2/meta/core/resources/roles/role-to-permission.resource.js +1 -1
  1352. package/packages/level2/meta/core/resources/roles/role.resource.d.ts +1 -0
  1353. package/packages/level2/meta/core/resources/roles/role.resource.js +1 -1
  1354. package/packages/level2/meta/core/resources/usage-limit/usage-limit.resource.d.ts +1 -0
  1355. package/packages/level2/meta/core/resources/usage-limit/usage-limit.resource.js +1 -1
  1356. package/packages/level2/meta/core/resources/users/props/user-feature-props.d.ts +1 -0
  1357. package/packages/level2/meta/core/resources/users/props/user-props.js +2 -2
  1358. package/packages/level2/meta/core/resources/users/props/user-role-props.d.ts +1 -0
  1359. package/packages/level2/meta/core/resources/users/props/user-visible-workspace-props.d.ts +1 -0
  1360. package/packages/level2/meta/core/resources/users/props/user-workspace-base-resource-props.d.ts +1 -0
  1361. package/packages/level2/meta/core/resources/users/user-activity-overview.resource.js +1 -1
  1362. package/packages/level2/meta/core/resources/users/user-feature.resource.d.ts +1 -0
  1363. package/packages/level2/meta/core/resources/users/user-feature.resource.js +1 -1
  1364. package/packages/level2/meta/core/resources/users/user-role.resource.d.ts +1 -0
  1365. package/packages/level2/meta/core/resources/users/user-role.resource.js +1 -1
  1366. package/packages/level2/meta/core/resources/users/user-setting.resource.js +1 -2
  1367. package/packages/level2/meta/core/resources/users/user-to-workspace.resource.js +1 -1
  1368. package/packages/level2/meta/core/resources/users/user-visible-workspace.resource.d.ts +1 -0
  1369. package/packages/level2/meta/core/resources/users/user-visible-workspace.resource.js +1 -1
  1370. package/packages/level2/meta/core/resources/users/user-workspace-invite.resource.d.ts +1 -0
  1371. package/packages/level2/meta/core/resources/users/user-workspace-invite.resource.js +1 -1
  1372. package/packages/level2/meta/core/resources/users/user.resource.d.ts +1 -0
  1373. package/packages/level2/meta/core/resources/users/user.resource.js +1 -3
  1374. package/packages/level2/meta/core/resources/workspace/workspace-resource.js +1 -1
  1375. package/packages/level2/meta/core/resources/workspace/workspace-to-workspace.resource.js +1 -1
  1376. package/packages/level2/meta/core/resources/workspace/workspace.resource.js +1 -1
  1377. package/packages/level2/meta/core/types/permission-dto.d.ts +1 -0
  1378. package/packages/level2/meta/core/types/user-permission.d.ts +1 -0
  1379. package/packages/level2/meta/core/ui-property-meta-old.js +1 -1
  1380. package/packages/level2/meta/core/ui-property-meta.d.ts +2 -2
  1381. package/packages/level2/meta/crud/edit-resource-request.d.ts +1 -0
  1382. package/packages/level2/meta/crud/permissions/crud-permission-checker.js +1 -1
  1383. package/packages/level2/meta/decorators/access-by-user-id.js +1 -1
  1384. package/packages/level2/meta/decorators/access-by-workspace-id.js +1 -1
  1385. package/packages/level2/meta/decorators/allowed-crud-actions.js +1 -1
  1386. package/packages/level2/meta/decorators/big-text.js +1 -1
  1387. package/packages/level2/meta/decorators/blob-image.js +1 -1
  1388. package/packages/level2/meta/decorators/concat-description.js +1 -1
  1389. package/packages/level2/meta/decorators/create-only-resource.js +1 -1
  1390. package/packages/level2/meta/decorators/currency.js +1 -1
  1391. package/packages/level2/meta/decorators/date-only.js +1 -1
  1392. package/packages/level2/meta/decorators/db-index.js +1 -1
  1393. package/packages/level2/meta/decorators/default-sort.js +1 -1
  1394. package/packages/level2/meta/decorators/description-based-on-property-value.js +1 -1
  1395. package/packages/level2/meta/decorators/description-property.js +1 -1
  1396. package/packages/level2/meta/decorators/display-name.js +1 -1
  1397. package/packages/level2/meta/decorators/dynamic.js +1 -1
  1398. package/packages/level2/meta/decorators/email.d.ts +6 -2
  1399. package/packages/level2/meta/decorators/email.js +1 -1
  1400. package/packages/level2/meta/decorators/expand-description-properties.js +1 -1
  1401. package/packages/level2/meta/decorators/file-upload.js +1 -1
  1402. package/packages/level2/meta/decorators/flags-enum.js +1 -1
  1403. package/packages/level2/meta/decorators/get-only-resource.js +1 -1
  1404. package/packages/level2/meta/decorators/icon.js +1 -1
  1405. package/packages/level2/meta/decorators/integer.js +1 -1
  1406. package/packages/level2/meta/decorators/label.js +1 -1
  1407. package/packages/level2/meta/decorators/markdown.js +1 -1
  1408. package/packages/level2/meta/decorators/not-a-resource.js +1 -1
  1409. package/packages/level2/meta/decorators/not-colorful.js +1 -1
  1410. package/packages/level2/meta/decorators/not-displayable.js +1 -1
  1411. package/packages/level2/meta/decorators/not-edit-displayable.js +1 -1
  1412. package/packages/level2/meta/decorators/not-editable-from-outside.js +1 -1
  1413. package/packages/level2/meta/decorators/not-filter-displayable.js +1 -1
  1414. package/packages/level2/meta/decorators/not-list-displayable.js +1 -1
  1415. package/packages/level2/meta/decorators/not-relation.js +1 -1
  1416. package/packages/level2/meta/decorators/outside-excluded.js +1 -1
  1417. package/packages/level2/meta/decorators/permission-checker-for.js +1 -1
  1418. package/packages/level2/meta/decorators/phone-number.d.ts +6 -2
  1419. package/packages/level2/meta/decorators/phone-number.js +1 -1
  1420. package/packages/level2/meta/decorators/plural-name.js +1 -1
  1421. package/packages/level2/meta/decorators/prefer-plural-name.js +1 -1
  1422. package/packages/level2/meta/decorators/prefer-singular-name.js +1 -1
  1423. package/packages/level2/meta/decorators/prevent-default.d.ts +18 -0
  1424. package/packages/level2/meta/decorators/prevent-default.js +6 -0
  1425. package/packages/level2/meta/decorators/priority.js +1 -1
  1426. package/packages/level2/meta/decorators/required-if-other-are-present.js +1 -1
  1427. package/packages/level2/meta/decorators/required-if-prop-has-value.js +1 -1
  1428. package/packages/level2/meta/decorators/required.js +1 -1
  1429. package/packages/level2/meta/decorators/resource-id.js +1 -1
  1430. package/packages/level2/meta/decorators/resource-property-id.js +1 -1
  1431. package/packages/level2/meta/decorators/rich-text.js +1 -1
  1432. package/packages/level2/meta/decorators/searchable.js +1 -1
  1433. package/packages/level2/meta/decorators/singleton.js +1 -1
  1434. package/packages/level2/meta/decorators/transient-resource.js +1 -1
  1435. package/packages/level2/meta/decorators/ui-priority.js +1 -1
  1436. package/packages/level2/meta/decorators/ui-relation-priority.js +1 -1
  1437. package/packages/level2/meta/decorators/unique.js +1 -1
  1438. package/packages/level2/meta/decorators/url.js +1 -1
  1439. package/packages/level2/meta/edit-resource/EditResource.d.ts +4 -9
  1440. package/packages/level2/meta/edit-resource/EditResource.funcs.d.ts +10 -8
  1441. package/packages/level2/meta/edit-resource/EditResource.funcs.js +16 -5
  1442. package/packages/level2/meta/edit-resource/EditResource.js +11 -12
  1443. package/packages/level2/meta/edit-resource/EditResourceFormBody.d.ts +1 -1
  1444. package/packages/level2/meta/edit-resource/EditResourceHeader.d.ts +3 -2
  1445. package/packages/level2/meta/edit-resource/EditResourceHeader.funcs.d.ts +4 -4
  1446. package/packages/level2/meta/edit-resource/EditResourceHeader.funcs.js +1 -1
  1447. package/packages/level2/meta/edit-resource/EditResourceHeader.js +19 -15
  1448. package/packages/level2/meta/edit-resource/EditResourceSheet.d.ts +1 -1
  1449. package/packages/level2/meta/edit-resource/EditResourceSheet.funcs.d.ts +3 -3
  1450. package/packages/level2/meta/edit-resource/EditResourceSheet.funcs.js +3 -6
  1451. package/packages/level2/meta/edit-resource/EditResourceSheet.js +5 -5
  1452. package/packages/level2/meta/edit-resource/EditResourceTabs.d.ts +2 -2
  1453. package/packages/level2/meta/edit-resource/EditResourceTabs.js +50 -29
  1454. package/packages/level2/meta/edit-resource/apply-value-changes.d.ts +1 -1
  1455. package/packages/level2/meta/edit-resource/apply-value-changes.js +1 -1
  1456. package/packages/level2/meta/edit-resource/config/custom-filter-config-provider.js +1 -1
  1457. package/packages/level2/meta/edit-resource/config/internal-edit-resource-configs.js +17 -0
  1458. package/packages/level2/meta/edit-resource/edit-link/EditLink.funcs.d.ts +1 -1
  1459. package/packages/level2/meta/edit-resource/edit-link/EditLink.funcs.js +1 -1
  1460. package/packages/level2/meta/edit-resource/edit-link/EditLinkResource.d.ts +1 -1
  1461. package/packages/level2/meta/edit-resource/edit-resource-dialog/EditResourceDialog.funcs.d.ts +1 -1
  1462. package/packages/level2/meta/edit-resource/edit-resource-dialog/EditResourceDialog.funcs.js +1 -1
  1463. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceBlobField.funcs.d.ts +1 -1
  1464. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceBlobField.funcs.js +1 -1
  1465. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.d.ts +1 -1
  1466. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.funcs.d.ts +1 -1
  1467. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.funcs.js +2 -2
  1468. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.js +8 -9
  1469. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceFlagsEnumField.d.ts +1 -1
  1470. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceFlagsEnumField.funcs.d.ts +1 -1
  1471. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceFlagsEnumField.funcs.js +1 -1
  1472. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceImageField.d.ts +1 -1
  1473. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceImageField.funcs.d.ts +1 -1
  1474. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceImageField.funcs.js +2 -1
  1475. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.d.ts +1 -1
  1476. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.funcs.d.ts +1 -16
  1477. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.funcs.js +4 -10
  1478. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.js +1 -1
  1479. package/packages/level2/meta/edit-resource/edit-resource-property-block/edit-resource-fields.d.ts +1 -1
  1480. package/packages/level2/meta/edit-resource/edit-resource-property-block/edit-resource-fields.js +4 -4
  1481. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.d.ts +1 -1
  1482. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.funcs.d.ts +1 -1
  1483. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.funcs.js +1 -1
  1484. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.js +1 -1
  1485. package/packages/level2/meta/edit-resource/edit-resource-validation.d.ts +1 -1
  1486. package/packages/level2/meta/edit-resource/edit-resource-validation.js +1 -1
  1487. package/packages/level2/meta/edit-resource/edit-resources-constants.js +1 -1
  1488. package/packages/level2/meta/edit-resource/hooks/use-edit-resource-ref.d.ts +1 -1
  1489. package/packages/level2/meta/edit-resource/hooks/use-edit-resource-ref.js +2 -2
  1490. package/packages/level2/meta/edit-resource/save-complete-context.d.ts +2 -1
  1491. package/packages/level2/meta/edit-resource/save-complete-context.js +1 -1
  1492. package/packages/level2/meta/edit-resource/services/blob-components.d.ts +1 -1
  1493. package/packages/level2/meta/edit-resource/services/blob-components.js +1 -1
  1494. package/packages/level2/meta/edit-resource/services/edit-resource-components.d.ts +1 -1
  1495. package/packages/level2/meta/edit-resource/services/edit-resource-components.js +3 -3
  1496. package/packages/level2/meta/edit-resource/services/edit-resource-relations.js +1 -1
  1497. package/packages/level2/meta/edit-resource/services/edit-resource-save.d.ts +9 -0
  1498. package/packages/level2/meta/edit-resource/services/edit-resource-save.js +8 -0
  1499. package/packages/level2/meta/edit-resource/services/edit-resources.d.ts +2 -2
  1500. package/packages/level2/meta/edit-resource/services/edit-resources.js +6 -5
  1501. package/packages/level2/meta/edit-resource/services/form-validations.d.ts +1 -1
  1502. package/packages/level2/meta/edit-resource/services/form-validations.js +1 -1
  1503. package/packages/level2/meta/edit-resource/services/property-metas.d.ts +1 -1
  1504. package/packages/level2/meta/edit-resource/services/property-metas.js +1 -1
  1505. package/packages/level2/meta/edit-resource/services/use-edit-resource-config.js +2 -2
  1506. package/packages/level2/meta/fd-meta-toolbox-service.js +1 -1
  1507. package/packages/level2/meta/filtering/filter/EnumFlagFilter.d.ts +1 -1
  1508. package/packages/level2/meta/filtering/filter/Filter.d.ts +1 -1
  1509. package/packages/level2/meta/filtering/filter/Filter.funcs.d.ts +1 -4
  1510. package/packages/level2/meta/filtering/filter/Filter.funcs.js +4 -4
  1511. package/packages/level2/meta/filtering/filter/Filter.js +2 -1
  1512. package/packages/level2/meta/filtering/filter/filter-display.d.ts +4 -0
  1513. package/packages/level2/meta/filtering/filter/filter-display.js +7 -0
  1514. package/packages/level2/meta/filtering/filter/filters/EnumFilter.d.ts +1 -1
  1515. package/packages/level2/meta/filtering/filter/filters/EnumFilter.js +2 -1
  1516. package/packages/level2/meta/filtering/filter/filters/GuidFilter.d.ts +1 -1
  1517. package/packages/level2/meta/filtering/filter/filters/GuidFilter.js +1 -1
  1518. package/packages/level2/meta/filtering/filter/filters/IntegerFilter.d.ts +1 -1
  1519. package/packages/level2/meta/filtering/filter/filters/IntegerFilter.js +1 -1
  1520. package/packages/level2/meta/filtering/filter/filters/TextFilter.d.ts +1 -1
  1521. package/packages/level2/meta/filtering/filter/filters/boolean-filter/BooleanFilter.funcs.js +3 -3
  1522. package/packages/level2/meta/filtering/resource-filter-list/ResourceFilterList.d.ts +1 -1
  1523. package/packages/level2/meta/filtering/resource-filter-list/ResourceFilterList.funcs.d.ts +1 -3
  1524. package/packages/level2/meta/filtering/resource-filter-list/ResourceFilterList.funcs.js +5 -9
  1525. package/packages/level2/meta/filtering/resource-filter-list/resource-filter-list-ids.js +2 -2
  1526. package/packages/level2/meta/filtering/resource-filter-list/resource-filter-lists.d.ts +1 -1
  1527. package/packages/level2/meta/filtering/resource-filter-list/resource-filter-lists.js +7 -2
  1528. package/packages/level2/meta/filtering/resource-filter-list/use-resource-filter-list-display.js +2 -2
  1529. package/packages/level2/meta/layout/events.js +1 -1
  1530. package/packages/level2/meta/layout/layout.js +2 -2
  1531. package/packages/level2/meta/meta-providers.d.ts +1 -1
  1532. package/packages/level2/meta/meta-providers.js +1 -1
  1533. package/packages/level2/meta/meta-sort.js +1 -1
  1534. package/packages/level2/meta/models/user-base-resource.d.ts +1 -0
  1535. package/packages/level2/meta/models/user-base-resource.js +1 -1
  1536. package/packages/level2/meta/models/user-workspace-base-resource.js +1 -1
  1537. package/packages/level2/meta/odata/expands.d.ts +1 -0
  1538. package/packages/level2/meta/odata/expands.js +2 -2
  1539. package/packages/level2/meta/odata/odata-selects.d.ts +2 -0
  1540. package/packages/level2/meta/odata/odata-selects.js +1 -1
  1541. package/packages/level2/meta/one-to-many-relations.d.ts +1 -2
  1542. package/packages/level2/meta/one-to-many-relations.js +1 -1
  1543. package/packages/level2/meta/page/title-context.d.ts +3 -1
  1544. package/packages/level2/meta/page/use-set-title.js +1 -1
  1545. package/packages/level2/meta/page/use-title.d.ts +2 -1
  1546. package/packages/level2/meta/page/use-title.js +1 -1
  1547. package/packages/level2/meta/properties/property-type.d.ts +1 -0
  1548. package/packages/level2/meta/providers/global-provider/GlobalContext.d.ts +3 -1
  1549. package/packages/level2/meta/providers/global-provider/default-config.d.ts +1 -0
  1550. package/packages/level2/meta/relations/many-to-many-info.js +1 -1
  1551. package/packages/level2/meta/relations/meta-relations.d.ts +2 -1
  1552. package/packages/level2/meta/relations/meta-relations.js +1 -1
  1553. package/packages/level2/meta/resource-list/ResourceList.d.ts +1 -1
  1554. package/packages/level2/meta/resource-list/ResourceList.funcs.d.ts +21 -0
  1555. package/packages/level2/meta/resource-list/ResourceList.funcs.js +4 -18
  1556. package/packages/level2/meta/resource-list/resource-add-button.js +1 -1
  1557. package/packages/level2/meta/resource-list/resource-list-cell-element-ids.d.ts +3 -1
  1558. package/packages/level2/meta/resource-list/resource-list-cell-element-ids.js +4 -4
  1559. package/packages/level2/meta/resource-list/resource-list-checkers.d.ts +1 -0
  1560. package/packages/level2/meta/resource-list/resource-list-checkers.js +1 -1
  1561. package/packages/level2/meta/resource-list/resource-list-configs.d.ts +1 -0
  1562. package/packages/level2/meta/resource-list/resource-list-configs.js +1 -1
  1563. package/packages/level2/meta/resource-list/resource-list-data.js +19 -0
  1564. package/packages/level2/meta/resource-list/resource-list-display.d.ts +3 -0
  1565. package/packages/level2/meta/resource-list/resource-list-display.js +6 -0
  1566. package/packages/level2/meta/resource-list/resource-list-dropdown-menu/ResourceListDropdownMenu.d.ts +1 -1
  1567. package/packages/level2/meta/resource-list/resource-list-header/ResourceListHeader.d.ts +1 -1
  1568. package/packages/level2/meta/resource-list/resource-list-header/ResourceListHeader.funcs.js +1 -1
  1569. package/packages/level2/meta/resource-list/resource-list-hooks.js +4 -2
  1570. package/packages/level2/meta/resource-list/resource-list-navigation.d.ts +2 -0
  1571. package/packages/level2/meta/resource-list/resource-list-navigation.js +6 -0
  1572. package/packages/level2/meta/resource-list/resource-list-persist-state.d.ts +2 -1
  1573. package/packages/level2/meta/resource-list/resource-list-persist-state.js +1 -1
  1574. package/packages/level2/meta/resource-list/resource-list-state.d.ts +2 -1
  1575. package/packages/level2/meta/resource-list/resource-lists.js +1 -1
  1576. package/packages/level2/meta/resource-list/use-resource-list-config.js +1 -1
  1577. package/packages/level2/meta/resource-providers.d.ts +1 -1
  1578. package/packages/level2/meta/resource-providers.js +1 -1
  1579. package/packages/level2/meta/resources/session/session.resource.js +1 -1
  1580. package/packages/level2/meta/server/api/odata/odata-expression-operators.js +1 -1
  1581. package/packages/level2/meta/server/api/odata/odata-expressions.d.ts +1 -1
  1582. package/packages/level2/meta/server/api/odata/odata-expressions.js +1 -1
  1583. package/packages/level2/meta/server/api/odata/odata-filters-helpers.js +3 -2
  1584. package/packages/level2/meta/server/api/odata/odata-filters.d.ts +1 -0
  1585. package/packages/level2/meta/server/api/odata/odata-filters.js +4 -3
  1586. package/packages/level2/meta/server/api/odata/odata-metas.js +1 -1
  1587. package/packages/level2/meta/server/api/odata/odata-parsers.js +4 -3
  1588. package/packages/level2/meta/server/api/odata/odata.d.ts +2 -2
  1589. package/packages/level2/meta/server/api/odata/odata.js +3 -3
  1590. package/packages/level2/meta/server/auth/auth-guard.d.ts +2 -1
  1591. package/packages/level2/meta/server/auth/auth-guard.js +1 -1
  1592. package/packages/level2/meta/server/auth/fd-sessions.d.ts +3 -1
  1593. package/packages/level2/meta/server/auth/fd-sessions.js +1 -1
  1594. package/packages/level2/meta/server/auth/permissions/resource-permission-checker-provider.d.ts +1 -0
  1595. package/packages/level2/meta/server/auth/permissions/resource-permission-checker-provider.js +1 -1
  1596. package/packages/level2/meta/server/auth/role-db/get-all-including-user-to-roles.js +1 -1
  1597. package/packages/level2/meta/server/auth/session-access.d.ts +2 -0
  1598. package/packages/level2/meta/server/auth/session-access.js +1 -1
  1599. package/packages/level2/meta/server/auth/session-validation.d.ts +1 -0
  1600. package/packages/level2/meta/server/auth/session-validation.js +1 -1
  1601. package/packages/level2/meta/server/auth/session.d.ts +2 -1
  1602. package/packages/level2/meta/server/auth/session.js +1 -1
  1603. package/packages/level2/meta/server/auth/users/current-user-id-provider.d.ts +1 -0
  1604. package/packages/level2/meta/server/auth/users/current-user-id-provider.js +1 -1
  1605. package/packages/level2/meta/server/basic-crud/crud-api.js +1 -1
  1606. package/packages/level2/meta/server/basic-crud/crud.d.ts +1 -1
  1607. package/packages/level2/meta/server/basic-crud/crud.js +2 -2
  1608. package/packages/level2/meta/server/basic-crud/cruds.js +1 -1
  1609. package/packages/level2/meta/server/basic-crud/helpers/crud-event-handler.js +1 -1
  1610. package/packages/level2/meta/server/basic-crud/helpers/cruds-permission-checker.js +1 -1
  1611. package/packages/level2/meta/server/basic-crud/helpers/prepare-many-to-many-resource.js +1 -1
  1612. package/packages/level2/meta/server/basic-crud/related-resource-db.d.ts +1 -1
  1613. package/packages/level2/meta/server/basic-crud/related-resource-db.js +1 -1
  1614. package/packages/level2/meta/server/basic-crud/relation-syncs.js +1 -1
  1615. package/packages/level2/meta/server/basic-crud/resource-crud-handlers.js +1 -1
  1616. package/packages/level2/meta/server/basic-crud/resource-meta-handlers.js +1 -1
  1617. package/packages/level2/meta/server/constants/crud-handler-types.js +3 -1
  1618. package/packages/level2/meta/server/constants/generated-paths.d.ts +6 -6
  1619. package/packages/level2/meta/server/constants/generated-paths.js +1 -1
  1620. package/packages/level2/meta/server/constants/meta-property-names.js +2 -2
  1621. package/packages/level2/meta/server/controllers/generic-controllers/crud-controller.d.ts +4 -0
  1622. package/packages/level2/meta/server/controllers/generic-controllers/crud-controller.js +1 -1
  1623. package/packages/level2/meta/server/db/db.d.ts +7 -1
  1624. package/packages/level2/meta/server/db/db.js +2 -2
  1625. package/packages/level2/meta/server/db/init-db.js +1 -1
  1626. package/packages/level2/meta/server/db/schema/schema-adapter.d.ts +1 -0
  1627. package/packages/level2/meta/server/db/schema/schema-adapter.js +2 -2
  1628. package/packages/level2/meta/server/entities/edit-base-resources.js +1 -1
  1629. package/packages/level2/meta/server/entities/edit-workspace.js +1 -1
  1630. package/packages/level2/meta/server/integration-platforms/fd-integration-cache.d.ts +3 -0
  1631. package/packages/level2/meta/server/integration-platforms/fd-integration-cache.js +1 -1
  1632. package/packages/level2/meta/server/integration-platforms/integration-db.js +1 -1
  1633. package/packages/level2/meta/server/integration-platforms/integration-events.d.ts +3 -0
  1634. package/packages/level2/meta/server/integration-platforms/integration-events.js +1 -1
  1635. package/packages/level2/meta/server/messaging/messages.d.ts +3 -0
  1636. package/packages/level2/meta/server/messaging/messages.js +1 -1
  1637. package/packages/level2/meta/server/meta-core/constants/db-schema-actions.d.ts +2 -0
  1638. package/packages/level2/meta/server/meta-core/constants/metas.d.ts +1 -0
  1639. package/packages/level2/meta/server/meta-core/constants/metas.js +1 -1
  1640. package/packages/level2/meta/server/meta-core/constants/resource-ids.d.ts +2 -0
  1641. package/packages/level2/meta/server/meta-core/constants/resource-ids.js +1 -1
  1642. package/packages/level2/meta/server/meta-core/crud/crud-update-config.js +1 -1
  1643. package/packages/level2/meta/server/meta-core/crud/search.d.ts +1 -0
  1644. package/packages/level2/meta/server/meta-core/crud/search.js +1 -1
  1645. package/packages/level2/meta/server/meta-core/display-name.js +1 -1
  1646. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-auth-resource-meta-config.d.ts +1 -0
  1647. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-property-meta-config.d.ts +1 -0
  1648. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-resource-meta-config.d.ts +1 -0
  1649. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-ui-meta-config.d.ts +1 -0
  1650. package/packages/level2/meta/server/meta-url-service.js +1 -1
  1651. package/packages/level2/meta/server/models/roles/role-to-permission-package-db.d.ts +3 -0
  1652. package/packages/level2/meta/server/models/roles/role-to-permission-package-db.js +1 -1
  1653. package/packages/level2/meta/server/modules/dynamic-imports.d.ts +4 -1
  1654. package/packages/level2/meta/server/modules/dynamic-imports.js +3 -3
  1655. package/packages/level2/meta/server/modules/handler-map.d.ts +1 -0
  1656. package/packages/level2/meta/server/permission/permission-checker.d.ts +2 -0
  1657. package/packages/level2/meta/server/permission/permission-checker.js +1 -1
  1658. package/packages/level2/meta/server/permission/permission-data-provider.js +2 -2
  1659. package/packages/level2/meta/server/permission/permission-package-to-permission-db.d.ts +1 -0
  1660. package/packages/level2/meta/server/permission/permission-package-to-permission-db.js +1 -1
  1661. package/packages/level2/meta/server/permission/permissions.d.ts +7 -5
  1662. package/packages/level2/meta/server/permission/permissions.js +1 -1
  1663. package/packages/level2/meta/server/permission/user-permissions-builder.d.ts +1 -0
  1664. package/packages/level2/meta/server/permission/user-permissions-builder.js +2 -2
  1665. package/packages/level2/meta/server/props/meta-property-filters.js +1 -1
  1666. package/packages/level2/meta/server/props/property-meta-config-provider.js +1 -1
  1667. package/packages/level2/meta/server/props/property-names.d.ts +1 -1
  1668. package/packages/level2/meta/server/props/property-names.js +1 -1
  1669. package/packages/level2/meta/server/props/required-properties.js +1 -1
  1670. package/packages/level2/meta/server/providers/current-workspace-id-provider.d.ts +1 -0
  1671. package/packages/level2/meta/server/providers/current-workspace-id-provider.js +1 -1
  1672. package/packages/level2/meta/server/relations/many-to-many-relations.d.ts +1 -1
  1673. package/packages/level2/meta/server/relations/many-to-many-relations.js +2 -1
  1674. package/packages/level2/meta/server/relations/relations.js +1 -1
  1675. package/packages/level2/meta/server/repositories/odata-db.d.ts +1 -0
  1676. package/packages/level2/meta/server/repositories/odata-db.js +1 -1
  1677. package/packages/level2/meta/server/resources/crud-resources.js +1 -1
  1678. package/packages/level2/meta/server/resources/dynamic-properties.d.ts +2 -0
  1679. package/packages/level2/meta/server/resources/dynamic-properties.js +1 -1
  1680. package/packages/level2/meta/server/resources/init-internal-resource-metas-from-json.d.ts +1 -0
  1681. package/packages/level2/meta/server/resources/init-internal-resource-metas-from-json.js +2 -2
  1682. package/packages/level2/meta/server/resources/internal-resource-meta.d.ts +1 -0
  1683. package/packages/level2/meta/server/resources/internal-resource-meta.js +1 -1
  1684. package/packages/level2/meta/server/resources/resource-checker.d.ts +1 -1
  1685. package/packages/level2/meta/server/resources/resource-checker.js +4 -4
  1686. package/packages/level2/meta/server/resources/resource-meta-plugin-constants.js +2 -1
  1687. package/packages/level2/meta/server/resources/resource-meta-plugin.d.ts +4 -0
  1688. package/packages/level2/meta/server/resources/resource-meta-plugin.js +2 -2
  1689. package/packages/level2/meta/server/resources/searchable-resources-api.js +1 -1
  1690. package/packages/level2/meta/server/resources/searchable-resources.js +1 -1
  1691. package/packages/level2/meta/server/services/crud-actions.d.ts +1 -0
  1692. package/packages/level2/meta/server/services/crud-actions.js +1 -1
  1693. package/packages/level2/meta/server/services/metas.js +1 -1
  1694. package/packages/level2/meta/server/services/permission-check-config-provider.js +1 -1
  1695. package/packages/level2/meta/server/services/property-meta.js +1 -1
  1696. package/packages/level2/meta/server/services/property-metas.js +2 -1
  1697. package/packages/level2/meta/server/services/resource-name-converter.d.ts +2 -1
  1698. package/packages/level2/meta/server/services/resource-name-converter.js +2 -1
  1699. package/packages/level2/meta/server/services/resource-provider-db.js +2 -1
  1700. package/packages/level2/meta/server/services/resource-provider-defaults.js +1 -1
  1701. package/packages/level2/meta/server/services/resource-provider-expands.js +1 -1
  1702. package/packages/level2/meta/server/services/resource-provider-permissions.js +1 -1
  1703. package/packages/level2/meta/server/services/resource-provider.js +1 -1
  1704. package/packages/level2/meta/server/ui/meta-api.js +1 -1
  1705. package/packages/level2/meta/server/ui/ui-metas-api.js +1 -1
  1706. package/packages/level2/meta/server/ui/ui-metas.d.ts +1 -0
  1707. package/packages/level2/meta/server/ui/ui-metas.js +1 -1
  1708. package/packages/level2/meta/server/validations/meta-validations.js +3 -2
  1709. package/packages/level2/meta/server/value-checker.js +2 -2
  1710. package/packages/level2/meta/server/web/current-url.d.ts +1 -0
  1711. package/packages/level2/meta/server/web/current-url.js +1 -1
  1712. package/packages/level2/meta/server/web/drizzle-guards.js +1 -1
  1713. package/packages/level2/meta/server/web/drizzle.d.ts +3 -0
  1714. package/packages/level2/meta/server/web/drizzle.js +1 -1
  1715. package/packages/level2/meta/server/web/http-api-wrapper.js +1 -1
  1716. package/packages/level2/meta/server/web/init-saas-kit-config.js +1 -1
  1717. package/packages/level2/meta/server/web/reduce-data.js +1 -1
  1718. package/packages/level2/meta/server/web/responses.js +1 -1
  1719. package/packages/level2/meta/server/workspace/get-visible-workspaces-cache-key.d.ts +1 -0
  1720. package/packages/level2/meta/server/workspace/get-visible-workspaces-cache-key.js +1 -1
  1721. package/packages/level2/meta/services/client-environment.d.ts +1 -0
  1722. package/packages/level2/meta/services/client-environment.js +1 -1
  1723. package/packages/level2/meta/services/filter-components.js +1 -1
  1724. package/packages/level2/meta/services/meta-navigations.js +1 -1
  1725. package/packages/level2/meta/services/multi-browser.d.ts +4 -0
  1726. package/packages/level2/meta/services/multi-browser.js +8 -0
  1727. package/packages/level2/meta/services/property-fields.d.ts +23 -0
  1728. package/packages/level2/meta/services/property-fields.js +15 -0
  1729. package/packages/level2/meta/services/property-values.js +2 -2
  1730. package/packages/level2/meta/services/resource-filters.js +2 -2
  1731. package/packages/level2/meta/services/resource-name-client-converter.d.ts +1 -1
  1732. package/packages/level2/meta/services/resource-name-client-converter.js +1 -1
  1733. package/packages/level2/meta/services/resource-sheet.d.ts +3 -0
  1734. package/packages/level2/meta/services/resource-sheet.js +9 -0
  1735. package/packages/level2/meta/services/window.js +1 -1
  1736. package/packages/level2/meta/state/base-state-functions.d.ts +2 -2
  1737. package/packages/level2/meta/state/base-state-functions.js +1 -1
  1738. package/packages/level2/meta/subscription-plan/fetch-active-or-trial-subscription.d.ts +1 -2
  1739. package/packages/level2/meta/subscription-plan/fetch-active-or-trial-subscription.js +2 -1
  1740. package/packages/level2/meta/subscription-plan/subscription-props.d.ts +1 -0
  1741. package/packages/level2/meta/subscription-plan/subscription.resource.js +1 -1
  1742. package/packages/level2/meta/table/Table.d.ts +1 -1
  1743. package/packages/level2/meta/table/Table.funcs.d.ts +1 -1
  1744. package/packages/level2/meta/table/Table.funcs.js +2 -2
  1745. package/packages/level2/meta/table/Table.js +1 -1
  1746. package/packages/level2/meta/table/body/TableBody.d.ts +1 -1
  1747. package/packages/level2/meta/table/body/TableBody.funcs.d.ts +2 -2
  1748. package/packages/level2/meta/table/body/TableBody.funcs.js +2 -2
  1749. package/packages/level2/meta/table/body-cell/ActionBodyCell.d.ts +1 -1
  1750. package/packages/level2/meta/table/body-cell/ActionBodyCell.funcs.js +1 -1
  1751. package/packages/level2/meta/table/body-cell/ActionBodyCell.js +8 -26
  1752. package/packages/level2/meta/table/body-cell/BlobBodyCell.funcs.d.ts +1 -1
  1753. package/packages/level2/meta/table/body-cell/BlobBodyCell.funcs.js +1 -1
  1754. package/packages/level2/meta/table/body-cell/BlobBodyCell.js +2 -1
  1755. package/packages/level2/meta/table/body-cell/BodyCell.d.ts +1 -1
  1756. package/packages/level2/meta/table/body-cell/BodyCell.funcs.d.ts +5 -10
  1757. package/packages/level2/meta/table/body-cell/BodyCell.funcs.js +6 -8
  1758. package/packages/level2/meta/table/body-cell/BodyCell.js +50 -50
  1759. package/packages/level2/meta/table/body-cell/BodyCellArrayTooltip.funcs.d.ts +1 -1
  1760. package/packages/level2/meta/table/body-cell/BodyCellArrayTooltip.funcs.js +1 -1
  1761. package/packages/level2/meta/table/body-cell/BodyCellValue.d.ts +1 -1
  1762. package/packages/level2/meta/table/body-cell/BodyCellValue.funcs.d.ts +4 -0
  1763. package/packages/level2/meta/table/body-cell/BodyCellValue.funcs.js +10 -0
  1764. package/packages/level2/meta/table/body-cell/BodyCellValue.js +4 -3
  1765. package/packages/level2/meta/table/body-cell/BodyExpandCell.d.ts +1 -1
  1766. package/packages/level2/meta/table/body-cell/BodyExpandPropertyCell.d.ts +1 -1
  1767. package/packages/level2/meta/table/body-cell/CustomActionLink.d.ts +1 -1
  1768. package/packages/level2/meta/table/body-cell/MultiselectCellTemplate.funcs.js +1 -1
  1769. package/packages/level2/meta/table/body-cell/MultiselectCellTemplate.js +16 -1
  1770. package/packages/level2/meta/table/body-cell/ViewCell.d.ts +1 -1
  1771. package/packages/level2/meta/table/body-cell/ViewCell.funcs.d.ts +1 -1
  1772. package/packages/level2/meta/table/body-cell/ViewCell.funcs.js +1 -1
  1773. package/packages/level2/meta/table/body-row/TableBodyRow.d.ts +1 -1
  1774. package/packages/level2/meta/table/body-row/TableBodyRow.funcs.d.ts +3 -2
  1775. package/packages/level2/meta/table/body-row/TableBodyRow.funcs.js +4 -1
  1776. package/packages/level2/meta/table/body-row/TableBodyRow.js +2 -2
  1777. package/packages/level2/meta/table/csv-converter.d.ts +1 -1
  1778. package/packages/level2/meta/table/csv-converter.js +4 -3
  1779. package/packages/level2/meta/table/header/TableHeader.d.ts +1 -1
  1780. package/packages/level2/meta/table/header/TableHeader.funcs.d.ts +1 -4
  1781. package/packages/level2/meta/table/header/TableHeader.funcs.js +4 -6
  1782. package/packages/level2/meta/table/header/TableHeader.js +2 -1
  1783. package/packages/level2/meta/table/header-cell/Resizable.d.ts +1 -1
  1784. package/packages/level2/meta/table/header-cell/TableHeaderActionCell.d.ts +1 -1
  1785. package/packages/level2/meta/table/header-cell/TableHeaderActionCell.funcs.d.ts +1 -1
  1786. package/packages/level2/meta/table/header-cell/TableHeaderActionCell.funcs.js +1 -1
  1787. package/packages/level2/meta/table/header-cell/TableHeaderCell.d.ts +1 -1
  1788. package/packages/level2/meta/table/header-cell/TableHeaderCell.funcs.d.ts +1 -1
  1789. package/packages/level2/meta/table/header-cell/TableHeaderCell.funcs.js +2 -2
  1790. package/packages/level2/meta/table/header-cell/TableHeaderCell.js +1 -1
  1791. package/packages/level2/meta/table/header-cell/TableHeaderCellActionButton.d.ts +1 -1
  1792. package/packages/level2/meta/table/header-cell/TableHeaderCellActionButton.js +1 -1
  1793. package/packages/level2/meta/table/pager/Pager.d.ts +1 -1
  1794. package/packages/level2/meta/table/pager/Pager.funcs.d.ts +1 -1
  1795. package/packages/level2/meta/table/pager/Pager.funcs.js +1 -1
  1796. package/packages/level2/meta/table/services/fd-private-paging.d.ts +1 -1
  1797. package/packages/level2/meta/table/services/fd-private-paging.js +1 -1
  1798. package/packages/level2/meta/table/services/fd-table-private-column-calculation.js +1 -1
  1799. package/packages/level2/meta/table/services/fd-table-private-columns.js +1 -1
  1800. package/packages/level2/meta/table/services/fd-table-private-create-columns.js +1 -1
  1801. package/packages/level2/meta/table/services/fd-table-private-properties.js +1 -1
  1802. package/packages/level2/meta/table/services/fd-table-private-resize-columns.js +1 -1
  1803. package/packages/level2/meta/table/services/fd-table-private-rows.d.ts +1 -1
  1804. package/packages/level2/meta/table/services/fd-table-private-rows.js +1 -1
  1805. package/packages/level2/meta/table/services/fd-table-private-sorting.d.ts +1 -1
  1806. package/packages/level2/meta/table/services/fd-table-private-sorting.js +1 -1
  1807. package/packages/level2/meta/table/services/table-column-alignment.d.ts +2 -0
  1808. package/packages/level2/meta/table/services/table-column-alignment.js +8 -0
  1809. package/packages/level2/meta/table/services/table-column-size.d.ts +3 -0
  1810. package/packages/level2/meta/table/services/table-column-size.js +9 -0
  1811. package/packages/level2/meta/table/services/table-private-cell.js +1 -1
  1812. package/packages/level2/meta/table/table-constants.d.ts +2 -0
  1813. package/packages/level2/meta/table/table-constants.js +2 -2
  1814. package/packages/level2/meta/table/table-custom-action/TableCustomAction.funcs.d.ts +1 -1
  1815. package/packages/level2/meta/table/table-custom-action/TableCustomAction.funcs.js +1 -1
  1816. package/packages/level2/meta/table/table-custom-attributes.js +1 -1
  1817. package/packages/level2/meta/table/table-models.d.ts +1 -1
  1818. package/packages/level2/meta/ui/ui-relation.js +1 -1
  1819. package/packages/level2/meta/ui-meta-providers.d.ts +2 -2
  1820. package/packages/level2/meta/ui-meta-providers.js +1 -1
  1821. package/packages/level2/meta/view/View.d.ts +2 -5
  1822. package/packages/level2/meta/view/View.js +26 -30
  1823. package/packages/level2/meta/view/ViewSheet.d.ts +2 -5
  1824. package/packages/level2/meta/view/ViewSheet.funcs.d.ts +4 -1
  1825. package/packages/level2/meta/view/ViewSheet.funcs.js +3 -3
  1826. package/packages/level2/meta/view/ViewSheet.js +1 -4
  1827. package/packages/level2/npm-commands/gen-dynamic-handlers-map/generate-dynamic-handlers-map.js +4 -4
  1828. package/packages/level2/npm-commands/gen-meta/generate-meta.js +2 -2
  1829. package/packages/level2/npm-commands/gen-meta/generate-tsconfig.js +3 -3
  1830. package/packages/level2/npm-commands/gen-schema/gen-schema.js +2 -2
  1831. package/packages/level2/npm-commands/gen-schema/transpile-schema.js +2 -2
  1832. package/packages/level2/npm-commands/migrate-db/migrate-db.js +1 -1
  1833. package/packages/level2/npm-commands/npm-comands-paths.d.ts +11 -6
  1834. package/packages/level2/npm-commands/npm-comands-paths.js +1 -1
  1835. package/packages/level2/npm-commands/run-command/index.js +3 -3
  1836. package/packages/level2/npm-commands/seed-db/seed-db.js +1 -1
  1837. package/packages/level2/npm-commands/server/db/fd-db-initializer.js +1 -1
  1838. package/packages/level2/other/scrapping/scrape-constants.d.ts +1 -0
  1839. package/packages/level2/other/scrapping/scrape-constants.js +2 -2
  1840. package/packages/level2/other/scrapping/scrape.command.d.ts +1 -0
  1841. package/packages/level2/other/scrapping/scrape.command.js +1 -1
  1842. package/packages/level2/other/scrapping/scrapper-config.js +1 -1
  1843. package/packages/level2/other/scrapping/scrappers.d.ts +2 -0
  1844. package/packages/level2/other/scrapping/scrappers.js +2 -2
  1845. package/packages/level2/server/addresses/address-db.d.ts +1 -1
  1846. package/packages/level2/server/addresses/address-db.js +1 -1
  1847. package/packages/level2/server/addresses/address-master-data.js +1 -1
  1848. package/packages/level2/server/addresses/country-db.d.ts +1 -1
  1849. package/packages/level2/server/addresses/country-db.js +1 -1
  1850. package/packages/level2/server/addresses/country-master-data.js +1 -1
  1851. package/packages/level2/server/ai/ai-generated-text.js +1 -1
  1852. package/packages/level2/server/auth/dev-demo-permissions.js +1 -1
  1853. package/packages/level2/server/auth/oauth-service-db.js +1 -1
  1854. package/packages/level2/server/auth/permission-master-data.js +1 -1
  1855. package/packages/level2/server/auth/permission-role-mapping.js +1 -1
  1856. package/packages/level2/server/auth/role-db.js +2 -1
  1857. package/packages/level2/server/auth/role-master-data.js +1 -1
  1858. package/packages/level2/server/auth/role-to-permission-master-data.js +1 -1
  1859. package/packages/level2/server/auth/role-to-permission-package.handlers.js +1 -1
  1860. package/packages/level2/server/auth/role-to-permission.handlers.js +1 -1
  1861. package/packages/level2/server/auth/role.handlers.js +1 -1
  1862. package/packages/level2/server/auth/sign-in-api.js +1 -1
  1863. package/packages/level2/server/auth/sign-out-api.js +1 -1
  1864. package/packages/level2/server/auth/sign-up-api.js +1 -1
  1865. package/packages/level2/server/blob/blob-db.d.ts +1 -1
  1866. package/packages/level2/server/blob/blob-db.js +1 -1
  1867. package/packages/level2/server/business-profile/business-profile-api.js +2 -2
  1868. package/packages/level2/server/comments/comment-db.js +1 -1
  1869. package/packages/level2/server/comments/comment-master-data.js +1 -1
  1870. package/packages/level2/server/constants/dev-test.d.ts +1 -0
  1871. package/packages/level2/server/constants/path.d.ts +1 -1
  1872. package/packages/level2/server/constants/query-param-names.d.ts +5 -0
  1873. package/packages/level2/server/constants/query-param-names.js +6 -0
  1874. package/packages/level2/server/customers/customer-db.js +1 -1
  1875. package/packages/level2/server/customers/customer-master-data.js +1 -1
  1876. package/packages/level2/server/dashboards/dashboard-db.js +1 -1
  1877. package/packages/level2/server/dashboards/dashboard-master-data.js +2 -2
  1878. package/packages/level2/server/dashboards/dashboard-report-db.js +1 -1
  1879. package/packages/level2/server/dashboards/dashboard-report-master-data.js +2 -2
  1880. package/packages/level2/server/db/db.d.ts +3 -0
  1881. package/packages/level2/server/db/db.js +2 -2
  1882. package/packages/level2/server/demo/companies/company-db.d.ts +1 -1
  1883. package/packages/level2/server/demo/companies/company-db.js +1 -1
  1884. package/packages/level2/server/demo/companies/company-master-data.js +2 -2
  1885. package/packages/level2/server/demo/contacts/contact-db.d.ts +1 -1
  1886. package/packages/level2/server/demo/contacts/contact-db.js +1 -1
  1887. package/packages/level2/server/demo/contacts/contact-master-data.js +2 -2
  1888. package/packages/level2/server/demo/deals/deal-db.d.ts +1 -1
  1889. package/packages/level2/server/demo/deals/deal-db.js +1 -1
  1890. package/packages/level2/server/demo/deals/deal-master-data.js +1 -1
  1891. package/packages/level2/server/demo/demo-seed-constants.d.ts +2 -0
  1892. package/packages/level2/server/demo/reset-data-api.js +1 -1
  1893. package/packages/level2/server/demo/tickets/ticket-db.d.ts +1 -1
  1894. package/packages/level2/server/demo/tickets/ticket-db.js +1 -1
  1895. package/packages/level2/server/demo/tickets/ticket-master-data.js +1 -1
  1896. package/packages/level2/server/dev/ai-assistant/ai-assistant-db.d.ts +1 -1
  1897. package/packages/level2/server/dev/ai-assistant/ai-assistant-db.js +1 -1
  1898. package/packages/level2/server/dev/ai-assistant/ai-assistant-master-data.js +1 -1
  1899. package/packages/level2/server/dev/ai-assistant/ai-assistant-mother.js +2 -2
  1900. package/packages/level2/server/dev/dev-greeting/dev-greeting-master-data.js +1 -1
  1901. package/packages/level2/server/dev/dev-greeting/dev-greeting-mother.js +1 -1
  1902. package/packages/level2/server/dev/friends/friend-db.d.ts +2 -2
  1903. package/packages/level2/server/dev/friends/friend-db.js +1 -1
  1904. package/packages/level2/server/dev/friends/friend-master-data.js +1 -1
  1905. package/packages/level2/server/dev/friends/friend-mother.js +1 -1
  1906. package/packages/level2/server/dev/friends/friend-utils.js +1 -1
  1907. package/packages/level2/server/dev/jobs/job-db.d.ts +2 -2
  1908. package/packages/level2/server/dev/jobs/job-db.js +1 -1
  1909. package/packages/level2/server/dev/jobs/job-master-data.js +1 -1
  1910. package/packages/level2/server/dev/jobs/job-mother.js +3 -3
  1911. package/packages/level2/server/dev/paper-planes/paper-plane-db.d.ts +1 -1
  1912. package/packages/level2/server/dev/paper-planes/paper-plane-db.js +1 -1
  1913. package/packages/level2/server/dev/paper-planes/paper-plane-master-data.js +1 -1
  1914. package/packages/level2/server/dev/paper-planes/paper-plane-mother.js +1 -1
  1915. package/packages/level2/server/dev/paper-planes/paper-plane.handlers.js +1 -1
  1916. package/packages/level2/server/dev/persons/person-db.d.ts +1 -1
  1917. package/packages/level2/server/dev/persons/person-db.js +1 -1
  1918. package/packages/level2/server/dev/persons/person-master-data.js +1 -1
  1919. package/packages/level2/server/dev/persons/person-mother.js +1 -1
  1920. package/packages/level2/server/dev/persons/person-to-job-db.d.ts +1 -1
  1921. package/packages/level2/server/dev/persons/person-to-job-db.js +1 -1
  1922. package/packages/level2/server/dev/persons/person-to-job-master-data.js +1 -1
  1923. package/packages/level2/server/dev/persons/person-to-job-mother.js +1 -1
  1924. package/packages/level2/server/dev/persons/person-to-person-db.d.ts +1 -1
  1925. package/packages/level2/server/dev/persons/person-to-person-db.js +1 -1
  1926. package/packages/level2/server/dev/persons/person-to-person-master-data.js +1 -1
  1927. package/packages/level2/server/dev/persons/person-to-person-mother.js +1 -1
  1928. package/packages/level2/server/dev/persons/person.handlers.js +2 -1
  1929. package/packages/level2/server/dev/phone-brands/phone-brand-db.d.ts +2 -2
  1930. package/packages/level2/server/dev/phone-brands/phone-brand-db.js +1 -1
  1931. package/packages/level2/server/dev/phone-brands/phone-brand-master-data.js +1 -1
  1932. package/packages/level2/server/dev/phone-brands/phone-brand-mother.js +1 -1
  1933. package/packages/level2/server/dev/pings/ping-db.d.ts +1 -1
  1934. package/packages/level2/server/dev/pings/ping-db.js +1 -1
  1935. package/packages/level2/server/dev/pings/ping-master-data.js +1 -1
  1936. package/packages/level2/server/dev/pings/ping-mother.js +1 -1
  1937. package/packages/level2/server/example/example-api.js +1 -1
  1938. package/packages/level2/server/export/csv-data-formatter.js +2 -1
  1939. package/packages/level2/server/export/export-api.js +1 -1
  1940. package/packages/level2/server/fd/fd-toolbox-asp-net/models/roles/role-to-permission-db.js +1 -1
  1941. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-db.js +1 -1
  1942. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package-db.js +1 -1
  1943. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package-to-db.js +1 -1
  1944. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package-to-permission.handlers.js +1 -1
  1945. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package.handlers.js +1 -1
  1946. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission.handlers.js +1 -1
  1947. package/packages/level2/server/fd/fd-toolbox-web/constants/db-initialization-messages.js +2 -2
  1948. package/packages/level2/server/fd/fd-toolbox-web/http/base-http-client.js +1 -1
  1949. package/packages/level2/server/fd/fd-toolbox-web/localization/language/language-db.js +1 -1
  1950. package/packages/level2/server/fd/fd-toolbox-web/localization/language/language-master-data.js +1 -1
  1951. package/packages/level2/server/fd/fd-toolbox-web/logging/log-api.js +1 -1
  1952. package/packages/level2/server/fd/fd-toolbox-web/mailing/fd-emails.js +2 -2
  1953. package/packages/level2/server/fd/fd-toolbox-web/models/reset-password-request.js +1 -1
  1954. package/packages/level2/server/fd/fd-toolbox-web/notifications/notification-db.js +1 -1
  1955. package/packages/level2/server/fd/fd-toolbox-web/permissions/fd-permission-master-data.js +2 -2
  1956. package/packages/level2/server/fd/fd-toolbox-web/permissions/permission-api.js +1 -1
  1957. package/packages/level2/server/fd/fd-toolbox-web/resources/resource-property-db.d.ts +1 -1
  1958. package/packages/level2/server/fd/fd-toolbox-web/resources/resource-property-db.js +1 -1
  1959. package/packages/level2/server/fd/fd-toolbox-web/seeding/notification-master-data.js +1 -1
  1960. package/packages/level2/server/fd/fd-toolbox-web/seeding/resource-master-data.js +1 -1
  1961. package/packages/level2/server/fd/fd-toolbox-web/seeding/resource-property-master-data.js +1 -1
  1962. package/packages/level2/server/fd/fd-toolbox-web/seeding/workspace-master-data.js +1 -1
  1963. package/packages/level2/server/fd/fd-toolbox-web/services/notifications.d.ts +1 -1
  1964. package/packages/level2/server/fd/fd-toolbox-web/services/notifications.js +1 -1
  1965. package/packages/level2/server/fd/fd-toolbox-web/services/socket/web-socket-server.js +1 -1
  1966. package/packages/level2/server/fd/fd-toolbox-web/services/socket/web-sockets.d.ts +1 -1
  1967. package/packages/level2/server/fd/fd-toolbox-web/services/socket/web-sockets.js +2 -2
  1968. package/packages/level2/server/features/feature-db.d.ts +2 -2
  1969. package/packages/level2/server/features/feature-db.js +2 -1
  1970. package/packages/level2/server/features/feature-master-data.js +1 -1
  1971. package/packages/level2/server/features/feature-mother.js +1 -1
  1972. package/packages/level2/server/features/features.js +1 -1
  1973. package/packages/level2/server/features/payment-plan-feature-data.js +1 -1
  1974. package/packages/level2/server/features/payment-plan-feature-db.d.ts +1 -1
  1975. package/packages/level2/server/features/payment-plan-feature-db.js +1 -1
  1976. package/packages/level2/server/features/status-board-master-data.js +2 -2
  1977. package/packages/level2/server/features/user-feature.handlers.js +1 -1
  1978. package/packages/level2/server/feeds/feed-entry-data.js +1 -1
  1979. package/packages/level2/server/html/email.js +2 -2
  1980. package/packages/level2/server/infra/background-jobs/background-jobs.js +2 -2
  1981. package/packages/level2/server/infra/background-jobs/init-jobs.js +1 -1
  1982. package/packages/level2/server/infra/workspaces/workspace-setting-db.js +1 -1
  1983. package/packages/level2/server/integration/data/deleted/integration-deleted-api.js +1 -1
  1984. package/packages/level2/server/integration/data/dynamicfields/integration-dynamicfields-api.js +1 -1
  1985. package/packages/level2/server/integration/integration-api.js +1 -1
  1986. package/packages/level2/server/integration-platforms/integration-resource.js +1 -1
  1987. package/packages/level2/server/integration-platforms/subscription-odata.js +1 -1
  1988. package/packages/level2/server/integrations/aio/blobs.js +3 -3
  1989. package/packages/level2/server/integrations/blob/blob-storage.js +1 -1
  1990. package/packages/level2/server/integrations/google-place/google-place-helpers.js +1 -1
  1991. package/packages/level2/server/integrations/google-place/google-place.handlers.d.ts +1 -1
  1992. package/packages/level2/server/integrations/google-place/google-place.handlers.js +1 -1
  1993. package/packages/level2/server/integrations/google-place/google-place.js +2 -2
  1994. package/packages/level2/server/integrations/remote-blob/remote-blob-storage.js +1 -1
  1995. package/packages/level2/server/integrations/screenshot/get-website-screenshots.js +1 -1
  1996. package/packages/level2/server/integrations/screenshot/screenshot-controller.js +1 -1
  1997. package/packages/level2/server/integrations/screenshot/screenshotone/screenshotone-client.js +2 -2
  1998. package/packages/level2/server/integrations/website-scan/scan-social-media-and-email-constants.js +3 -2
  1999. package/packages/level2/server/integrations/website-scan/scan-social-media-and-email.js +1 -1
  2000. package/packages/level2/server/integrations/website-scan/website-scan-initializer.js +1 -1
  2001. package/packages/level2/server/items/item-db.js +1 -1
  2002. package/packages/level2/server/leads/lead-category-db.js +1 -1
  2003. package/packages/level2/server/leads/lead-category-master-data.js +1 -1
  2004. package/packages/level2/server/leads/lead-db.js +1 -1
  2005. package/packages/level2/server/leads/lead-email-db.js +1 -1
  2006. package/packages/level2/server/leads/lead-email-master-data.js +1 -1
  2007. package/packages/level2/server/leads/lead-group-db.js +1 -1
  2008. package/packages/level2/server/leads/lead-group-master-data.d.ts +5 -1
  2009. package/packages/level2/server/leads/lead-group-master-data.js +3 -3
  2010. package/packages/level2/server/leads/lead-master-data.js +1 -1
  2011. package/packages/level2/server/leads/lead-to-lead-category-db.js +1 -1
  2012. package/packages/level2/server/leads/lead-to-lead-category-master-data.js +1 -1
  2013. package/packages/level2/server/leads/lead-to-lead-group-db.js +1 -1
  2014. package/packages/level2/server/leads/lead-to-lead-group-master-data.js +2 -2
  2015. package/packages/level2/server/leads/lead-to-lead-group.handlers.js +1 -1
  2016. package/packages/level2/server/leads/lead.handlers.js +1 -1
  2017. package/packages/level2/server/leads/services/ai-scan-result-delete.js +1 -1
  2018. package/packages/level2/server/markdown/markdown-api.js +1 -1
  2019. package/packages/level2/server/markdown/markdown.js +1 -1
  2020. package/packages/level2/server/media/media-api.js +2 -2
  2021. package/packages/level2/server/notifications/notification.handlers.js +1 -1
  2022. package/packages/level2/server/orders/order-db.js +1 -1
  2023. package/packages/level2/server/orders/order-master-data.js +1 -1
  2024. package/packages/level2/server/orders/order-utils.js +1 -1
  2025. package/packages/level2/server/orders/order.handlers.js +2 -1
  2026. package/packages/level2/server/otheruser/id/otheruser-id-api.js +1 -1
  2027. package/packages/level2/server/otheruser/otheruser-api.js +1 -1
  2028. package/packages/level2/server/password/editpassword/editpassword-api.js +2 -2
  2029. package/packages/level2/server/password/forgotpassword/forgotpassword-api.js +3 -3
  2030. package/packages/level2/server/password/resetpassword/resetpassword-api.js +1 -1
  2031. package/packages/level2/server/payment/method/payment-method-api.js +1 -1
  2032. package/packages/level2/server/payment/verify-fail/payment-verify-fail-api.js +1 -1
  2033. package/packages/level2/server/payment/verify-success/payment-verify-success.js +1 -1
  2034. package/packages/level2/server/payments/payment-plan.handlers.js +2 -2
  2035. package/packages/level2/server/payments/payments/payment-plan-db.d.ts +1 -1
  2036. package/packages/level2/server/payments/payments/payment-plan-db.js +2 -2
  2037. package/packages/level2/server/payments/payments/payment-plan-master-data.js +1 -1
  2038. package/packages/level2/server/payments/payments/payment-plans.js +1 -1
  2039. package/packages/level2/server/payments/payments/payments-api.js +1 -1
  2040. package/packages/level2/server/payments/payments/payments.js +1 -1
  2041. package/packages/level2/server/payments/payments/pricing-seeding.js +1 -1
  2042. package/packages/level2/server/payments/pricing.handlers.d.ts +1 -1
  2043. package/packages/level2/server/payments/pricing.handlers.js +1 -1
  2044. package/packages/level2/server/payments/stripe/stripe-sync.js +2 -2
  2045. package/packages/level2/server/payments/stripe/stripes.js +3 -2
  2046. package/packages/level2/server/payments/subscriptions/subscription-db.d.ts +4 -4
  2047. package/packages/level2/server/payments/subscriptions/subscription-db.js +2 -1
  2048. package/packages/level2/server/payments/subscriptions/subscriptions.d.ts +1 -1
  2049. package/packages/level2/server/payments/subscriptions/subscriptions.js +2 -1
  2050. package/packages/level2/server/payments/system-invoice/payment-system-invoice.handlers.js +1 -1
  2051. package/packages/level2/server/product-setup/website-analysiz.js +1 -1
  2052. package/packages/level2/server/products/product-db.js +1 -1
  2053. package/packages/level2/server/products/product-master-data.js +1 -1
  2054. package/packages/level2/server/products/product-media/product-media-db.js +1 -1
  2055. package/packages/level2/server/products/product-media/product-media-master-data.js +1 -1
  2056. package/packages/level2/server/products/product-parameters/product-parameter-mother.d.ts +1 -1
  2057. package/packages/level2/server/products/product-parameters/product-parameter-mother.js +2 -2
  2058. package/packages/level2/server/reports/report-chart-series-master-data.js +1 -1
  2059. package/packages/level2/server/reports/report-chart-series-mother.js +1 -1
  2060. package/packages/level2/server/reports/report-db.js +1 -1
  2061. package/packages/level2/server/reports/report-master-data.js +1 -1
  2062. package/packages/level2/server/reports/report-mother.js +1 -1
  2063. package/packages/level2/server/reports/report-string-constants.js +2 -2
  2064. package/packages/level2/server/reports/report-with-data.handlers.js +1 -1
  2065. package/packages/level2/server/search/search-result-api.js +1 -1
  2066. package/packages/level2/server/search/search-result.d.ts +1 -1
  2067. package/packages/level2/server/search/search-result.js +1 -1
  2068. package/packages/level2/server/search/search.handlers.d.ts +1 -1
  2069. package/packages/level2/server/search/search.handlers.js +1 -1
  2070. package/packages/level2/server/search/searchable-resource.handlers.js +1 -1
  2071. package/packages/level2/server/seeding/seed-master-data.js +1 -1
  2072. package/packages/level2/server/shipment/shipment-api.d.ts +1 -1
  2073. package/packages/level2/server/shipment/shipment-api.js +2 -2
  2074. package/packages/level2/server/shipment/shipment-db.js +1 -1
  2075. package/packages/level2/server/shipment/shipment-master-data.js +1 -1
  2076. package/packages/level2/server/shipment/shipment.handlers.js +2 -1
  2077. package/packages/level2/server/statusboard/statusboard-api.js +1 -1
  2078. package/packages/level2/server/store/store-db.js +2 -1
  2079. package/packages/level2/server/store/store-master-data.js +3 -3
  2080. package/packages/level2/server/subscription/cancel/subscription-cancel-api.js +1 -1
  2081. package/packages/level2/server/subscription/create/subscription-create-api.js +1 -1
  2082. package/packages/level2/server/subscription/update/subscription-update-api.js +1 -1
  2083. package/packages/level2/server/system-settings/system-master-data.js +1 -1
  2084. package/packages/level2/server/system-settings/system-setting-db.js +1 -1
  2085. package/packages/level2/server/test/data/test-constants.js +2 -2
  2086. package/packages/level2/server/test/data/test-data-api.js +1 -1
  2087. package/packages/level2/server/test/data/test-data.js +1 -1
  2088. package/packages/level2/server/upload/upload-api.js +1 -1
  2089. package/packages/level2/server/usage-limit/usage-limit.js +2 -2
  2090. package/packages/level2/server/user-settings/user-setting.handlers.js +1 -1
  2091. package/packages/level2/server/userfeature/isenabled/userfeature-isenabled-api.js +1 -1
  2092. package/packages/level2/server/users/admin-edit-admin.js +1 -1
  2093. package/packages/level2/server/users/auth.d.ts +4 -4
  2094. package/packages/level2/server/users/auth.js +3 -3
  2095. package/packages/level2/server/users/edit-other-users.js +1 -1
  2096. package/packages/level2/server/users/tokens.js +2 -2
  2097. package/packages/level2/server/users/user-creation-service.js +2 -2
  2098. package/packages/level2/server/users/user-db.js +1 -1
  2099. package/packages/level2/server/users/user-deletions.js +1 -1
  2100. package/packages/level2/server/users/user-feature-db.d.ts +3 -4
  2101. package/packages/level2/server/users/user-feature-db.js +2 -1
  2102. package/packages/level2/server/users/user-feature-predicates.js +1 -1
  2103. package/packages/level2/server/users/user-manager.d.ts +1 -0
  2104. package/packages/level2/server/users/user-manager.js +3 -3
  2105. package/packages/level2/server/users/user-master-data.js +3 -3
  2106. package/packages/level2/server/users/user-mother.js +2 -2
  2107. package/packages/level2/server/users/user-role.handlers.js +1 -1
  2108. package/packages/level2/server/users/user-role.js +1 -1
  2109. package/packages/level2/server/users/user-service.js +1 -1
  2110. package/packages/level2/server/users/user-settings/user-setting-db.js +1 -1
  2111. package/packages/level2/server/users/user.handlers.js +1 -1
  2112. package/packages/level2/server/utils/base-resource-properties.js +1 -1
  2113. package/packages/level2/server/utils/check-resource-access-permission.js +1 -1
  2114. package/packages/level2/server/utils/get-user-and-workspace-ids.js +1 -1
  2115. package/packages/level2/server/utils/map-subscription-status-to-db-format.js +1 -1
  2116. package/packages/level2/server/web/http-wrapper.js +1 -1
  2117. package/packages/level2/server/web/initialize.d.ts +1 -0
  2118. package/packages/level2/server/web/initialize.js +3 -3
  2119. package/packages/level2/server/web/responses/create-remote-blob-response.js +1 -1
  2120. package/packages/level2/server/workspace/change-current-workspace.js +1 -1
  2121. package/packages/level2/server/workspace/visible-workspace-api.js +1 -1
  2122. package/packages/level2/server/workspace/workspace-api.js +1 -1
  2123. package/packages/level2/server/workspace/workspace-invite/user-workspace-invite.handlers.d.ts +1 -1
  2124. package/packages/level2/server/workspace/workspace-invite/user-workspace-invite.handlers.js +2 -2
  2125. package/packages/level2/server/workspace/workspace-invite/workspace-user-invites.d.ts +1 -0
  2126. package/packages/level2/server/workspace/workspace-invite/workspace-user-invites.js +1 -1
  2127. package/packages/test-infra/asserters/edit-asserts.js +1 -1
  2128. package/packages/test-infra/asserters/forgot-password-asserts.js +1 -1
  2129. package/packages/test-infra/asserters/navigation-asserts.js +1 -1
  2130. package/packages/test-infra/asserters/notification-asserts.js +1 -1
  2131. package/packages/test-infra/asserters/search-asserts.js +2 -2
  2132. package/packages/test-infra/asserters/table-asserts.js +6 -3
  2133. package/packages/test-infra/asserters/ui-asserts.d.ts +0 -1
  2134. package/packages/test-infra/asserters/ui-asserts.js +4 -3
  2135. package/packages/test-infra/constants/test-data/table-headers.js +1 -1
  2136. package/packages/test-infra/constants/ui-tester/checkout-form-test-data.d.ts +4 -4
  2137. package/packages/test-infra/constants/ui-tester/checkout-form-test-data.js +1 -1
  2138. package/packages/test-infra/constants/ui-tester/html-contants.d.ts +3 -0
  2139. package/packages/test-infra/constants/ui-tester/html-contants.js +2 -2
  2140. package/packages/test-infra/constants/ui-tester/paths.d.ts +3 -0
  2141. package/packages/test-infra/constants/ui-tester/paths.js +4 -0
  2142. package/packages/test-infra/eslint.config.js +1 -1
  2143. package/packages/test-infra/fixtures/error-tracking-fixture.js +1 -1
  2144. package/packages/test-infra/page-objects/account-setup-po.js +1 -1
  2145. package/packages/test-infra/page-objects/browser-po.js +4 -3
  2146. package/packages/test-infra/page-objects/checkout-form-po.js +2 -2
  2147. package/packages/test-infra/page-objects/edit-po.d.ts +4 -4
  2148. package/packages/test-infra/page-objects/edit-po.js +4 -2
  2149. package/packages/test-infra/page-objects/filter-po.js +2 -2
  2150. package/packages/test-infra/page-objects/forgot-password-po.js +3 -3
  2151. package/packages/test-infra/page-objects/list-po.js +1 -1
  2152. package/packages/test-infra/page-objects/login-po.js +1 -1
  2153. package/packages/test-infra/page-objects/multi-browser-po.js +3 -2
  2154. package/packages/test-infra/page-objects/notification-po.js +2 -2
  2155. package/packages/test-infra/page-objects/payment-plan-po.js +3 -2
  2156. package/packages/test-infra/page-objects/reset-password-po.js +1 -1
  2157. package/packages/test-infra/page-objects/search-po.js +1 -1
  2158. package/packages/test-infra/page-objects/select-workspace-po.js +1 -1
  2159. package/packages/test-infra/page-objects/sidebar-po.js +1 -1
  2160. package/packages/test-infra/page-objects/table-asserts.js +3 -3
  2161. package/packages/test-infra/page-objects/toolbar-po.js +1 -1
  2162. package/packages/test-infra/page-objects/user-menu-po.js +1 -1
  2163. package/packages/test-infra/page-objects/user-setting-po.js +2 -2
  2164. package/packages/test-infra/page-objects/view-po.js +1 -1
  2165. package/packages/test-infra/playwright-setup/global-setup.js +1 -1
  2166. package/packages/test-infra/playwright-setup/global-teardown.js +1 -1
  2167. package/packages/test-infra/test-data/crud-tests/crud-test-data-factory.js +1 -1
  2168. package/packages/test-infra/test-data/crud-tests/crud-test-data.js +1 -1
  2169. package/packages/test-infra/test-data/crud-tests/crud-validation-results.d.ts +5 -0
  2170. package/packages/test-infra/test-data/crud-tests/crud-validation-results.js +12 -0
  2171. package/packages/test-infra/test-data/crud-tests/relation-sync-info-provider.js +1 -1
  2172. package/packages/test-infra/test-data/dev/friends/friends-mother.d.ts +3 -1
  2173. package/packages/test-infra/test-data/dev/friends/friends-mother.js +5 -2
  2174. package/packages/test-infra/test-data/dev/persons/person-mother.d.ts +2 -2
  2175. package/packages/test-infra/test-data/dev/persons/person-mother.js +1 -1
  2176. package/packages/test-infra/test-data/dev/persons/phone-brand-mother.d.ts +1 -1
  2177. package/packages/test-infra/test-data/dev/persons/phone-brand-mother.js +1 -1
  2178. package/packages/test-infra/test-data/integration-tests/base-http-client.js +2 -1
  2179. package/packages/test-infra/test-data/integration-tests/http-client.js +2 -1
  2180. package/packages/test-infra/test-data/integration-tests/result-comparer.js +1 -1
  2181. package/packages/test-infra/test-data/integration-tests/workspace.js +1 -1
  2182. package/packages/test-infra/test-data/meta/person-property-metas.js +1 -1
  2183. package/packages/test-infra/test-data/meta/resource-meta-mother.d.ts +4 -4
  2184. package/packages/test-infra/test-data/meta/resource-meta-mother.js +1 -1
  2185. package/packages/test-infra/test-data/meta/ui-meta-mother.d.ts +2 -2
  2186. package/packages/test-infra/test-data/meta/ui-meta-mother.js +1 -1
  2187. package/packages/test-infra/test-data/meta/ui-property-meta-mother.d.ts +13 -13
  2188. package/packages/test-infra/test-data/meta/ui-property-meta-mother.js +1 -1
  2189. package/packages/test-infra/test-data/seed-test-data.js +1 -1
  2190. package/packages/test-infra/ui-tester/global-ui-test.js +1 -1
  2191. package/packages/test-infra/ui-tester/ui-tester.js +4 -2
  2192. package/packages/tools/string-duplication/analyze-code-base.d.ts +2 -1
  2193. package/packages/tools/string-duplication/analyze-code-base.js +2 -2
  2194. package/packages/tools/string-duplication/directives.js +1 -1
  2195. package/packages/tools/string-duplication/handlers.d.ts +2 -0
  2196. package/packages/tools/string-duplication/handlers.js +1 -1
  2197. package/packages/tools/string-duplication/normalizer.js +1 -1
  2198. package/packages/tools/string-duplication/reporter.js +1 -1
  2199. package/packages/tools/string-duplication/resolver.js +1 -1
  2200. package/packages/tools/string-duplication/string-extractor.d.ts +3 -0
  2201. package/packages/tools/string-duplication/string-extractor.js +3 -3
  2202. package/server/index.d.ts +78 -6
  2203. package/server/index.js +67 -6
  2204. package/src/app/http-wrappers.js +1 -1
  2205. package/src/app/init-saas-kit.js +2 -2
  2206. package/src/app/loading.js +1 -1
  2207. package/test-infra/index.d.ts +5 -3
  2208. package/test-infra/index.js +5 -3
  2209. package/undocumented/index.d.ts +491 -755
  2210. package/undocumented/index.js +398 -611
  2211. package/flint/index.d.ts +0 -2
  2212. package/flint/index.js +0 -3
  2213. package/generated/crud-handler-map.js +0 -4
  2214. package/packages/base-repo/app-constants/system-constants.js +0 -8
  2215. package/packages/base-repo/constants/common-strings.js +0 -4
  2216. package/packages/base-repo/constants/extensions.js +0 -4
  2217. package/packages/fd-toolbox/collections/arrays.js +0 -6
  2218. package/packages/fd-toolbox/collections/enums.js +0 -4
  2219. package/packages/fd-toolbox/constants/file-constants.js +0 -7
  2220. package/packages/fd-toolbox/odata/services/odata-filters.js +0 -9
  2221. package/packages/fd-toolbox/odata/services/odata-parsers.js +0 -11
  2222. package/packages/fd-toolbox/server/api/odata/odata-query-params.js +0 -7
  2223. package/packages/fd-toolbox/server/services/dictionaries.js +0 -4
  2224. package/packages/fd-toolbox/server/time/duration-service.js +0 -6
  2225. package/packages/fd-toolbox/strings/strings-constants.js +0 -4
  2226. package/packages/flint/dist/rules/index.js +0 -17
  2227. package/packages/flint/eslint-base.config.js +0 -27
  2228. package/packages/flint/eslint-next-web-vitals-temp.config.d.ts +0 -3
  2229. package/packages/flint/eslint-next-web-vitals-temp.config.js +0 -6
  2230. package/packages/flint/infra/analysis/type-guards.d.ts +0 -58
  2231. package/packages/flint/infra/analysis/type-guards.js +0 -12
  2232. package/packages/flint/non-level-two-eslint-config.d.ts +0 -1
  2233. package/packages/flint/non-level-two-eslint-config.js +0 -8
  2234. package/packages/flint/project-specific-eslint-configs.d.ts +0 -21
  2235. package/packages/flint/project-specific-eslint-configs.js +0 -19
  2236. package/packages/flint/rules/consistency/no-index-import-in-ast-helpers.d.ts +0 -3
  2237. package/packages/flint/rules/consistency/no-index-import-in-ast-helpers.js +0 -6
  2238. package/packages/flint/rules/flint/must-not-use-eslint-deprecated-methods.d.ts +0 -5
  2239. package/packages/flint/rules/flint/must-not-use-eslint-deprecated-methods.js +0 -8
  2240. package/packages/flint/rules/must-declare-module-members-in-consistent-order.js +0 -9
  2241. package/packages/flint/rules/must-not-modify-data-or-workspace-in-readonly-tests.js +0 -9
  2242. package/packages/flint/rules/must-not-use-all-caps-constants.js +0 -8
  2243. package/packages/flint/rules/must-not-use-fetch.js +0 -7
  2244. package/packages/flint/rules/must-not-use-inline-object-type-parameters.js +0 -7
  2245. package/packages/flint/rules/must-not-use-placeholders-in-eslint-rule-titles.js +0 -7
  2246. package/packages/flint/rules/must-not-use-see-link-in-docs-if-type-available.js +0 -8
  2247. package/packages/flint/rules/must-use-color-variables-instead-of-hardcoded-values.js +0 -8
  2248. package/packages/flint/rules/must-use-functions-for-component-ids.js +0 -9
  2249. package/packages/flint/rules/must-use-odata-builder.js +0 -8
  2250. package/packages/flint/rules/must-use-only-crud-operations.js +0 -8
  2251. package/packages/flint/rules/must-use-resource-provider-functions-to-get-resources-on-server.js +0 -11
  2252. package/packages/flint/rules/naming/must-not-add-files-and-code-in-lib-folder.d.ts +0 -4
  2253. package/packages/flint/rules/naming/must-not-add-files-and-code-in-lib-folder.js +0 -8
  2254. package/packages/flint/rules/naming/must-use-the-fd-prefix-for-env-variables.d.ts +0 -5
  2255. package/packages/flint/rules/naming/must-use-the-fd-prefix-for-env-variables.js +0 -8
  2256. package/packages/flint/rules/naming/no-utils-helpers-naming.d.ts +0 -3
  2257. package/packages/flint/rules/naming/no-utils-helpers-naming.js +0 -7
  2258. package/packages/flint/rules/no-manual-resource-instantiation.js +0 -9
  2259. package/packages/flint/rules/readability/component-function-max-lines.d.ts +0 -3
  2260. package/packages/flint/rules/readability/component-function-max-lines.js +0 -7
  2261. package/packages/infra/ci/utils/cloud-client.js +0 -10
  2262. package/packages/infra/ci/utils/create-early-infra-error.js +0 -4
  2263. package/packages/infra/ci/utils/exec.js +0 -9
  2264. package/packages/infra/ci/utils/git-command-funcs.js +0 -6
  2265. package/packages/infra/ci/utils/git.js +0 -18
  2266. package/packages/infra/ci/utils/npm-command-funcs.js +0 -8
  2267. package/packages/level2/fd-app-toolbox/login-form/LoginForm.funcs.js +0 -19
  2268. package/packages/level2/fd-app-toolbox/login-form/facebook-login.js +0 -18
  2269. package/packages/level2/fd-app-toolbox/login-form/google-login.js +0 -18
  2270. package/packages/level2/fd-app-toolbox/login-form/microsoft-login.js +0 -20
  2271. package/packages/level2/fd-app-toolbox/login-form/standard-login.js +0 -14
  2272. package/packages/level2/fd-app-toolbox/register-form/RegisterForm.funcs.d.ts +0 -7
  2273. package/packages/level2/fd-app-toolbox/register-form/RegisterForm.funcs.js +0 -11
  2274. package/packages/level2/fd-app-toolbox/report/ReportCard.funcs.d.ts +0 -4
  2275. package/packages/level2/fd-app-toolbox/report/ReportCard.funcs.js +0 -6
  2276. package/packages/level2/fd-app-toolbox/report/ReportChart.funcs.d.ts +0 -4
  2277. package/packages/level2/fd-app-toolbox/report/ReportChart.funcs.js +0 -6
  2278. package/packages/level2/fd-app-toolbox/report/ReportComponent.funcs.d.ts +0 -2
  2279. package/packages/level2/fd-app-toolbox/report/ReportComponent.funcs.js +0 -8
  2280. package/packages/level2/meta/card-list/card-models.d.ts +0 -4
  2281. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.render.funcs.d.ts +0 -4
  2282. package/packages/level2/meta/decorators/colorful.d.ts +0 -8
  2283. package/packages/level2/meta/decorators/colorful.js +0 -6
  2284. package/packages/level2/meta/edit-resource/EditResourceTabs.funcs.d.ts +0 -12
  2285. package/packages/level2/meta/edit-resource/EditResourceTabs.funcs.js +0 -22
  2286. package/packages/level2/meta/edit-resource/config/edit-resource-configs.js +0 -17
  2287. package/packages/level2/meta/server/constants/resource-file-suffixes.d.ts +0 -4
  2288. package/packages/level2/meta/server/constants/resource-file-suffixes.js +0 -6
  2289. /package/generated/{crud-handler-map.d.ts → meta/crud-handler-map.d.ts} +0 -0
  2290. /package/packages/{fd-toolbox/http → base-repo/constants}/http-constants.js +0 -0
  2291. /package/packages/fd-toolbox/auth/{login-states.d.ts → internal-login-states.d.ts} +0 -0
  2292. /package/packages/fd-toolbox/auth/{oauth-service-types.js → oauth-provider-types.js} +0 -0
  2293. /package/packages/fd-toolbox/collections/{arrays.d.ts → internal-arrays.d.ts} +0 -0
  2294. /package/packages/fd-toolbox/collections/{enums.d.ts → internal-enums.d.ts} +0 -0
  2295. /package/packages/fd-toolbox/constants/{dashboard-ids.d.ts → internal-dashboard-ids.d.ts} +0 -0
  2296. /package/packages/fd-toolbox/constants/{dashboard-ids.js → internal-dashboard-ids.js} +0 -0
  2297. /package/packages/fd-toolbox/constants/{file-constants.d.ts → internal-file-constants.d.ts} +0 -0
  2298. /package/packages/fd-toolbox/{server/api/odata → constants}/odata-query-params.d.ts +0 -0
  2299. /package/packages/fd-toolbox/functions/{getter-setter-functions.d.ts → internal-getter-setter-functions.d.ts} +0 -0
  2300. /package/packages/fd-toolbox/functions/{getter-setter-functions.js → internal-getter-setter-functions.js} +0 -0
  2301. /package/packages/fd-toolbox/odata/{services → odata-formatting}/odata-filters.d.ts +0 -0
  2302. /package/packages/fd-toolbox/permissions/constants/{crud-action-to-permission-prefix.js → crud-action-to-permission-prefixes.js} +0 -0
  2303. /package/packages/fd-toolbox/server/time/{duration-service.d.ts → execution-duration.d.ts} +0 -0
  2304. /package/packages/flint/rules/{must-always-specify-types-for-api-responses.d.ts → consistency/must-always-specify-types-for-api-responses.d.ts} +0 -0
  2305. /package/packages/flint/rules/{must-declare-module-members-in-consistent-order.d.ts → consistency/must-declare-module-members-in-consistent-order.d.ts} +0 -0
  2306. /package/packages/flint/rules/{must-specify-second-generic-parameter-in-apipost-and-apiput.d.ts → consistency/must-specify-second-generic-parameter-in-apipost-and-apiput.d.ts} +0 -0
  2307. /package/packages/flint/rules/{must-use-resource-provider-functions-to-get-resources-on-server.d.ts → consistency/must-use-resource-provider-functions-to-get-resources-on-server.d.ts} +0 -0
  2308. /package/packages/flint/rules/{must-use-color-variables-instead-of-hardcoded-values.d.ts → css/must-use-color-variables-instead-of-hardcoded-values.d.ts} +0 -0
  2309. /package/packages/flint/rules/{must-not-use-placeholders-in-eslint-rule-titles.d.ts → flint/must-not-use-placeholders-in-eslint-rule-titles.d.ts} +0 -0
  2310. /package/packages/flint/rules/{must-not-use-see-link-in-docs-if-type-available.d.ts → flint/must-not-use-see-link-in-docs-if-type-available.d.ts} +0 -0
  2311. /package/packages/flint/rules/{must-not-modify-data-or-workspace-in-readonly-tests.d.ts → general/must-not-modify-data-or-workspace-in-readonly-tests.d.ts} +0 -0
  2312. /package/packages/flint/rules/{must-not-use-fetch.d.ts → general/must-not-use-fetch.d.ts} +0 -0
  2313. /package/packages/flint/rules/{must-separate-unrelated-tests-into-different-files.d.ts → general/must-separate-unrelated-tests-into-different-files.d.ts} +0 -0
  2314. /package/packages/flint/rules/{must-use-odata-builder.d.ts → general/must-use-odata-builder.d.ts} +0 -0
  2315. /package/packages/flint/rules/{must-use-only-crud-operations.d.ts → general/must-use-only-crud-operations.d.ts} +0 -0
  2316. /package/packages/flint/rules/{no-manual-resource-instantiation.d.ts → general/no-manual-resource-instantiation.d.ts} +0 -0
  2317. /package/packages/flint/rules/{must-not-use-all-caps-constants.d.ts → naming/must-not-use-all-caps-constants.d.ts} +0 -0
  2318. /package/packages/flint/rules/{must-not-use-multiple-get-id-functions-inline-in-test.d.ts → naming/must-not-use-multiple-get-id-functions-inline-in-test.d.ts} +0 -0
  2319. /package/packages/flint/rules/{must-use-functions-for-component-ids.d.ts → naming/must-use-functions-for-component-ids.d.ts} +0 -0
  2320. /package/packages/flint/rules/{must-not-return-empty-strings.d.ts → readability/must-not-return-empty-strings.d.ts} +0 -0
  2321. /package/packages/flint/rules/{must-not-use-inline-object-type-parameters.d.ts → readability/must-not-use-inline-object-type-parameters.d.ts} +0 -0
  2322. /package/packages/flint/rules/{must-not-use-nullish-coalescing-empty-string.d.ts → readability/must-not-use-nullish-coalescing-empty-string.d.ts} +0 -0
  2323. /package/packages/infra/ci/{utils → tools}/cloud-client.d.ts +0 -0
  2324. /package/packages/infra/ci/{utils → tools}/create-early-infra-error.d.ts +0 -0
  2325. /package/packages/infra/ci/{utils → tools}/get-submodule-dir.d.ts +0 -0
  2326. /package/packages/infra/ci/{utils → tools}/git-command-funcs.d.ts +0 -0
  2327. /package/packages/infra/ci/{utils → tools}/npm-command-funcs.d.ts +0 -0
  2328. /package/packages/level2/common/payments/types/{payment-types.d.ts → internal-payment-types.d.ts} +0 -0
  2329. /package/packages/level2/common/payments/types/{payment-types.js → internal-payment-types.js} +0 -0
  2330. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/LoginForm.d.ts +0 -0
  2331. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/login-error-constants.d.ts +0 -0
  2332. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/login-error-constants.js +0 -0
  2333. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/oauth-login-config.js +0 -0
  2334. /package/packages/level2/fd-component-toolbox/{table-element-suffixes.d.ts → constants/table-element-suffixes.d.ts} +0 -0
  2335. /package/packages/level2/meta/card-list/{card-models.js → data-card/data-card-types.js} +0 -0
  2336. /package/packages/level2/meta/edit-resource/config/{edit-resource-configs.d.ts → internal-edit-resource-configs.d.ts} +0 -0
  2337. /package/packages/level2/server/reports/{report-id-to-type.d.ts → report-id-to-types.d.ts} +0 -0
  2338. /package/packages/level2/server/reports/{report-id-to-type.js → report-id-to-types.js} +0 -0
@@ -1,8 +1,9 @@
1
1
  'use strict';
2
- import { ASTUtils, ESLintUtils } from '@typescript-eslint/utils';
3
- import { nodeTypes, isBinaryExpression, isStringLiteral } from '@flint/infra/analysis';
2
+ import { ESLintUtils, ASTUtils } from '@typescript-eslint/utils';
3
+ import { isStringLiteral, nodeTypes, isBinaryExpression } from '@flint/infra/analysis';
4
+ import { jsxAttributeNames } from '@flint/infra/constants/eslint-syntax-names';
4
5
  import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
5
6
 
6
- var __defProp=Object['defineProperty'],__name=(_0x2576ba,_0x2612c7)=>__defProp(_0x2576ba,'name',{'value':_0x2612c7,'configurable':!![]});const ruleName='no-px-in-tailwind';const ruleId='noPxInTailwind';const constants={'meta':{'type':ruleTypes['problem'],'docs':{'description':ruleName},'messages':{[ruleId]:ruleName+'\x0a{{message}}\x0a\x0a###\x20**Must**\x20avoid\x20using\x20`px`\x20values\x20and\x20excessive\x20numeric\x20precision\x20in\x20Tailwind\x20classes.\x0a\x0a####\x20Wrong\x0a\x0a<div\x20className=\x22[10px]\x20bg-red-500\x22\x20/>\x0a\x0a<div\x20className=\x22w-[10.545rem]\x22\x20/>\x0a\x0a####\x20Correct\x0a\x0a<div\x20className=\x22p-2\x20bg-red-500\x22\x20/>\x0a\x0a<div\x20className=\x22w-[10.55rem]\x22\x20/>\x0a\x0a####\x20Why\x0a\x0aTailwind\x20provides\x20a\x20design\x20system\x20of\x20spacing\x20and\x20sizing\x20utilities.\x20Using\x20values\x20with\x20excessive\x20numeric\x20precision\x20will\x20not\x20produce\x20visible\x20differences\x20on\x20the\x20screen.'},'schema':[]},'classNameProp':'className','pxRegex':/\[[^[]+px[^\]]*\]/,'highPrecisionRegex':/\[-?\d+\.\d{3,}[^\]]*\]/,'errorMessageTemplates':{'pxUsage':'Using\x20`{{classes}}`\x20is\x20not\x20allowed.\x20Prefer\x20predefined\x20spacing/size\x20utilities\x20like\x20`p-2`,\x20`w-4`.','tooHighPrecision':'Using\x20`{{classes}}`\x20is\x20not\x20allowed.\x20Prefer\x20values\x20with\x20no\x20more\x20than\x20two\x20decimal\x20places.'}};function getStringValue(_0x350346,_0x4c0a5b){let _0x180bbe='';const _0xabfbd1=ASTUtils['getStaticValue'](_0x350346,_0x4c0a5b['getScope'](_0x350346));return _0xabfbd1?.['value']&&typeof _0xabfbd1['value']==='string'&&(_0x180bbe=_0xabfbd1['value']),_0x180bbe;}__name(getStringValue,'getStringValue');function reportClasses(_0x4234ee,_0x19625d,_0x48724d,_0x58afe7){_0x58afe7['length']>-0x23*0x5b+-0x2106+0x2d77&&_0x19625d['report']({'node':_0x4234ee,'messageId':ruleId,'data':{'message':_0x48724d['replace']('{{classes}}',_0x58afe7['join'](',\x20'))}});}__name(reportClasses,'reportClasses');function checkClassStr(_0x4fd6df,_0x4a5267,_0x35e513){const _0x2e0fd5=[],_0x320dd3=[],_0x431142=_0x4fd6df['split'](/\s+/);for(const _0x46d43c of _0x431142){if(constants['pxRegex']['test'](_0x46d43c))_0x2e0fd5['push'](_0x46d43c);else constants['highPrecisionRegex']['test'](_0x46d43c)&&_0x320dd3['push'](_0x46d43c);}reportClasses(_0x4a5267,_0x35e513,constants['errorMessageTemplates']['pxUsage'],_0x2e0fd5),reportClasses(_0x4a5267,_0x35e513,constants['errorMessageTemplates']['tooHighPrecision'],_0x320dd3);}__name(checkClassStr,'checkClassStr');function processNode(_0x5cc364,_0x21d259){if(_0x5cc364['type']===nodeTypes['literal']||_0x5cc364['type']===nodeTypes['templateLiteral']||_0x5cc364['type']===nodeTypes['identifier']||_0x5cc364['type']===nodeTypes['memberExpression']){const _0x4d9021=getStringValue(_0x5cc364,_0x21d259['sourceCode']);if(_0x4d9021)checkClassStr(_0x4d9021,_0x5cc364,_0x21d259);}else {if(_0x5cc364['type']===nodeTypes['callExpression'])for(const _0x17fd2e of _0x5cc364['arguments']){processNode(_0x17fd2e,_0x21d259);}else (_0x5cc364['type']===nodeTypes['logicalExpression']||isBinaryExpression(_0x5cc364))&&(processNode(_0x5cc364['left'],_0x21d259),processNode(_0x5cc364['right'],_0x21d259));}}__name(processNode,'processNode');const createRule=ESLintUtils['RuleCreator'](_0x2de557=>''+url+_0x2de557),noPxInTailwind=createRule({'name':ruleName,'meta':constants['meta'],'create'(_0x25728b){return {'JSXAttribute'(_0x27cced){if(!_0x27cced['name']||_0x27cced['name']['name']!==constants['classNameProp']||!_0x27cced['value'])return;if(isStringLiteral(_0x27cced['value']))checkClassStr(_0x27cced['value']['value'],_0x27cced['value'],_0x25728b);else _0x27cced['value']['type']===nodeTypes['JSXExpressionContainer']&&_0x27cced['value']['expression']['type']!==nodeTypes['JSXEmptyExpression']&&processNode(_0x27cced['value']['expression'],_0x25728b);}};},'defaultOptions':[]});
7
+ var __defProp=Object['defineProperty'],__name=(_0x5aca75,_0x297aca)=>__defProp(_0x5aca75,'name',{'value':_0x297aca,'configurable':!![]});const ruleName='no-px-in-tailwind';const ruleId='noPxInTailwind';const constants={'meta':{'type':ruleTypes['problem'],'docs':{'description':ruleName},'messages':{[ruleId]:ruleName+'\x0a{{message}}\x0a\x0a###\x20**Must**\x20avoid\x20using\x20`px`\x20values\x20and\x20excessive\x20numeric\x20precision\x20in\x20Tailwind\x20classes.\x0a\x0a####\x20Wrong\x0a\x0a<div\x20className=\x22[10px]\x20bg-red-500\x22\x20/>\x0a\x0a<div\x20className=\x22w-[10.545rem]\x22\x20/>\x0a\x0a####\x20Correct\x0a\x0a<div\x20className=\x22p-2\x20bg-red-500\x22\x20/>\x0a\x0a<div\x20className=\x22w-[10.55rem]\x22\x20/>\x0a\x0a####\x20Why\x0a\x0aTailwind\x20provides\x20a\x20design\x20system\x20of\x20spacing\x20and\x20sizing\x20utilities.\x20Using\x20values\x20with\x20excessive\x20numeric\x20precision\x20will\x20not\x20produce\x20visible\x20differences\x20on\x20the\x20screen.'},'schema':[]},'classNameProp':jsxAttributeNames['stylingClass']},createRule=ESLintUtils['RuleCreator'](_0x2a1ffe=>''+url+_0x2a1ffe),noPxInTailwind=createRule({'name':ruleName,'meta':constants['meta'],'create'(_0x30ca7e){return {'JSXAttribute'(_0x35673b){if(!_0x35673b['name']||_0x35673b['name']['name']!==constants['classNameProp']||!_0x35673b['value'])return;if(isStringLiteral(_0x35673b['value']))checkClassStr(_0x35673b['value']['value'],_0x35673b['value'],_0x30ca7e);else _0x35673b['value']['type']===nodeTypes['JSXExpressionContainer']&&_0x35673b['value']['expression']['type']!==nodeTypes['JSXEmptyExpression']&&processNode(_0x35673b['value']['expression'],_0x30ca7e);}};},'defaultOptions':[]});function getStringValue(_0x5764e4,_0x31fe91){let _0x208759='';const _0x1e505d=ASTUtils['getStaticValue'](_0x5764e4,_0x31fe91['getScope'](_0x5764e4));return _0x1e505d?.['value']&&typeof _0x1e505d['value']==='string'&&(_0x208759=_0x1e505d['value']),_0x208759;}__name(getStringValue,'getStringValue');function reportClasses(_0x24a95f,_0x38210f,_0x54864f,_0x1130a2){_0x1130a2['length']>-0x270e+-0x1bdb+-0x1*-0x42e9&&_0x38210f['report']({'node':_0x24a95f,'messageId':ruleId,'data':{'message':_0x54864f['replace']('{{classes}}',_0x1130a2['join'](',\x20'))}});}__name(reportClasses,'reportClasses');function checkClassStr(_0x16915b,_0x3f3098,_0x50bdf8){const _0x5ef22f=[],_0x1f07cc=[],_0x1579f8=/\[-?\d+\.\d{3,}[^\]]*\]/,_0x1df22e=/\[[^[]+px[^\]]*\]/,_0x3f6335=_0x16915b['split'](/\s+/);for(const _0x5560f5 of _0x3f6335){if(_0x1df22e['test'](_0x5560f5))_0x5ef22f['push'](_0x5560f5);else _0x1579f8['test'](_0x5560f5)&&_0x1f07cc['push'](_0x5560f5);}reportClasses(_0x3f3098,_0x50bdf8,'Using\x20`{{classes}}`\x20is\x20not\x20allowed.\x20Prefer\x20predefined\x20spacing/size\x20utilities\x20like\x20`p-2`,\x20`w-4`.',_0x5ef22f),reportClasses(_0x3f3098,_0x50bdf8,'Using\x20`{{classes}}`\x20is\x20not\x20allowed.\x20Prefer\x20values\x20with\x20no\x20more\x20than\x20two\x20decimal\x20places.',_0x1f07cc);}__name(checkClassStr,'checkClassStr');function processNode(_0x26a576,_0x302e8a){if(_0x26a576['type']===nodeTypes['literal']||_0x26a576['type']===nodeTypes['templateLiteral']||_0x26a576['type']===nodeTypes['identifier']||_0x26a576['type']===nodeTypes['memberExpression']){const _0x2b4a50=getStringValue(_0x26a576,_0x302e8a['sourceCode']);if(_0x2b4a50)checkClassStr(_0x2b4a50,_0x26a576,_0x302e8a);}else {if(_0x26a576['type']===nodeTypes['callExpression'])for(const _0x3d4620 of _0x26a576['arguments']){processNode(_0x3d4620,_0x302e8a);}else (_0x26a576['type']===nodeTypes['logicalExpression']||isBinaryExpression(_0x26a576))&&(processNode(_0x26a576['left'],_0x302e8a),processNode(_0x26a576['right'],_0x302e8a));}}__name(processNode,'processNode');
7
8
 
8
9
  export { noPxInTailwind as default, ruleId, ruleName };
@@ -1,8 +1,11 @@
1
1
  'use strict';
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
- import { isStringLiteral, nodeTypes } from '@flint/infra/analysis';
4
- import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
3
+ import { nodeTypes, isStringLiteral } from '@flint/infra/analysis';
4
+ import { jsxAttributeNames, astNodeAccessors } from '@flint/infra/constants/eslint-syntax-names';
5
+ import { ruleTypes, url, eslintProperties } from '@flint/infra/constants/rules-meta';
6
+ import { cliOptionFlags, wellKnownPositions } from '../../../base-repo/constants/tools-constants.js';
7
+ import { first } from '../../../fd-toolbox/server/collections/single-funcs.js';
5
8
 
6
- var __defProp=Object['defineProperty'],__name=(_0x3353d7,_0x4cd0c2)=>__defProp(_0x3353d7,'name',{'value':_0x4cd0c2,'configurable':!![]});const ruleName='no-tailwind-colors';const constants={'messageIds':{'noTailwindColors':'noTailwindColors'},'meta':{'type':ruleTypes['problem'],'docs':{'description':'Disallow\x20the\x20direct\x20use\x20of\x20Tailwind\x20CSS\x20color\x20utility\x20classes.'},'messages':{'noTailwindColors':'no-tailwind-colors\x0aDo\x20not\x20use\x20Tailwind\x20color\x20class\x20\x27{{colorClass}}\x27.\x0a\x0a###\x20**Must**\x20use\x20color\x20constants\x20instead\x20of\x20tailwind\x20colors.\x0a\x0a####\x20Wrong\x0a\x0a<Foo\x20className=\x22text-red-300\x22/>\x0a\x0a####\x20Correct\x0a\x0a<Foo\x20className=\x22text-destructive\x22/>\x0a\x0a####\x20Why\x0a\x0aUsing\x20our\x20color\x20constants\x20ensures\x20consistency\x20across\x20the\x20entire\x20project.\x20It\x20makes\x20the\x20code\x20more\x20maintainable\x20and\x20allows\x20for\x20easy\x20theme\x20changes\x20without\x20hunting\x20down\x20individual\x20color\x20classes\x20throughout\x20the\x20codebase.'},'schema':[]},'nodeKeys':{'value':'value','name':'name','raw':'raw','quasis':'quasis','right':'right','callee':'callee','arguments':'arguments','expression':'expression'},'dataKeys':{'colorClass':'colorClass'},'separators':{'empty':'','dash':'-'},'functionNames':{'cn':'cn'},'flags':{'global':'g'},'attributeNames':['className','class'],'regexParts':{'prefixes':'(text|bg|border)','colors':'(red|blue|green|yellow|indigo|purple|pink|gray|stone|amber|lime|emerald|teal|cyan|sky|orange)','numbers':'(50|100|200|300|400|500|600|700|800|900|950)'}},tailwindColorRegex=new RegExp('\x5cb('+constants['regexParts']['prefixes']+'-'+constants['regexParts']['colors']+'-'+constants['regexParts']['numbers']+')\x5cb',constants['flags']['global']);function extractColorClasses(_0x58188e){const _0x349934=new Map();tailwindColorRegex['lastIndex']=-0x14e9+-0x19d2+-0x7*-0x6ad;let _0xbbea52;while((_0xbbea52=tailwindColorRegex['exec'](_0x58188e))!==null){!_0x349934['has'](_0xbbea52[-0x55*-0x52+-0x2374+0x83a])&&_0x349934['set'](_0xbbea52[-0x9c8+-0x208d+-0x1*-0x2a55],_0xbbea52['index']);}return _0x349934;}__name(extractColorClasses,'extractColorClasses');function reportColorClasses(_0x27757c,_0x42419b,_0xac41d){if(_0x27757c['size']===0x10b*-0x13+-0xd17+0x20e8)return;for(let [_0x2d4cea,_0x1f4c9d]of _0x27757c){const _0x594ad1=_0x42419b['loc']['start']['column']+_0x1f4c9d+(0x2483+0x19e7+-0x3e69),_0x44fd19=_0x594ad1+_0x2d4cea['length'];_0xac41d['report']({'messageId':constants['messageIds']['noTailwindColors'],'data':{[constants['dataKeys']['colorClass']]:_0x2d4cea},'loc':{'start':{'line':_0x42419b['loc']['start']['line'],'column':_0x594ad1},'end':{'line':_0x42419b['loc']['end']['line'],'column':_0x44fd19}}});}}__name(reportColorClasses,'reportColorClasses');function checkAndReport(_0x1dd489,_0x20a4ba,_0x2a965f){const _0x3f2829=extractColorClasses(_0x1dd489);reportColorClasses(_0x3f2829,_0x20a4ba,_0x2a965f);}__name(checkAndReport,'checkAndReport');function processTemplateLiteral(_0x68fd00,_0x3b6dcc){_0x68fd00[constants['nodeKeys']['quasis']]['forEach'](_0x365a75=>{const _0x24a583=_0x365a75[constants['nodeKeys']['value']][constants['nodeKeys']['raw']];if(!_0x24a583)return;checkAndReport(_0x24a583,_0x365a75,_0x3b6dcc);});}__name(processTemplateLiteral,'processTemplateLiteral');function processCnArgument(_0x50720c,_0xb2f800){if(isStringLiteral(_0x50720c))checkAndReport(_0x50720c[constants['nodeKeys']['value']],_0x50720c,_0xb2f800['context']);else {if(_0x50720c['type']===nodeTypes['templateLiteral'])processTemplateLiteral(_0x50720c,_0xb2f800['context']);else {if(_0x50720c['type']===nodeTypes['logicalExpression']){const _0x396b6c=_0x50720c[constants['nodeKeys']['right']];isStringLiteral(_0x396b6c)&&checkAndReport(_0x396b6c[constants['nodeKeys']['value']],_0x396b6c,_0xb2f800['context']);}}}}__name(processCnArgument,'processCnArgument');function processCnFunctionCall(_0x309924,_0x5e5650){let _0x52a03c=!![],_0x226425;_0x5e5650['processedCnCalls']['has'](_0x309924)&&(_0x52a03c=![]),_0x52a03c&&(_0x226425=_0x309924[constants['nodeKeys']['callee']],(!_0x226425||_0x226425['type']!==nodeTypes['identifier']||_0x226425[constants['nodeKeys']['name']]!==constants['functionNames']['cn'])&&(_0x52a03c=![])),_0x52a03c&&(_0x5e5650['processedCnCalls']['add'](_0x309924),_0x309924[constants['nodeKeys']['arguments']]['forEach'](_0xaa41c5=>{processCnArgument(_0xaa41c5,_0x5e5650);}));}__name(processCnFunctionCall,'processCnFunctionCall');function processAttributeValue(_0x16bec4,_0x3bd3b0){let _0x50a657=!![];!_0x16bec4&&(_0x50a657=![]);_0x50a657&&_0x16bec4&&(isStringLiteral(_0x16bec4)&&(checkAndReport(_0x16bec4[constants['nodeKeys']['value']],_0x16bec4,_0x3bd3b0['context']),_0x50a657=![]));if(_0x50a657&&_0x16bec4&&_0x16bec4['type']===nodeTypes['JSXExpressionContainer']){const _0x6de2d4=_0x16bec4[constants['nodeKeys']['expression']];if(isStringLiteral(_0x6de2d4))checkAndReport(_0x6de2d4[constants['nodeKeys']['value']],_0x6de2d4,_0x3bd3b0['context']);else {if(_0x6de2d4['type']===nodeTypes['templateLiteral'])processTemplateLiteral(_0x6de2d4,_0x3bd3b0['context']);else _0x6de2d4['type']===nodeTypes['callExpression']&&processCnFunctionCall(_0x6de2d4,_0x3bd3b0);}}}__name(processAttributeValue,'processAttributeValue');const createRule=ESLintUtils['RuleCreator'](_0x10b12d=>''+url+_0x10b12d),noTailwindColors=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x3f9164){const _0xaddbef={'context':_0x3f9164,'processedCnCalls':new Set()};return {'JSXAttribute'(_0xaa4fcb){const _0x3f1bc7=_0xaa4fcb[constants['nodeKeys']['name']];_0x3f1bc7['type']===nodeTypes['JSXIdentifier']&&constants['attributeNames']['some'](_0x56fef0=>_0x56fef0===_0x3f1bc7[constants['nodeKeys']['name']])&&processAttributeValue(_0xaa4fcb[constants['nodeKeys']['value']],_0xaddbef);},'CallExpression'(_0x379404){processCnFunctionCall(_0x379404,_0xaddbef);}};}});
9
+ var __defProp=Object['defineProperty'],__name=(_0x3ae71c,_0x2c7742)=>__defProp(_0x3ae71c,'name',{'value':_0x2c7742,'configurable':!![]});const ruleName='no-tailwind-colors';const constants={'messageIds':{'noTailwindColors':'noTailwindColors'},'meta':{'type':ruleTypes['problem'],'docs':{'description':'Disallow\x20the\x20direct\x20use\x20of\x20Tailwind\x20CSS\x20color\x20utility\x20classes.'},'messages':{'noTailwindColors':'no-tailwind-colors\x0aDo\x20not\x20use\x20Tailwind\x20color\x20class\x20\x27{{colorClass}}\x27.\x0a\x0a###\x20**Must**\x20use\x20color\x20constants\x20instead\x20of\x20tailwind\x20colors.\x0a\x0a####\x20Wrong\x0a\x0a<Foo\x20className=\x22text-red-300\x22/>\x0a\x0a####\x20Correct\x0a\x0a<Foo\x20className=\x22text-destructive\x22/>\x0a\x0a####\x20Why\x0a\x0aUsing\x20our\x20color\x20constants\x20ensures\x20consistency\x20across\x20the\x20entire\x20project.\x20It\x20makes\x20the\x20code\x20more\x20maintainable\x20and\x20allows\x20for\x20easy\x20theme\x20changes\x20without\x20hunting\x20down\x20individual\x20color\x20classes\x20throughout\x20the\x20codebase.'},'schema':[]},'separators':{'empty':'','dash':'-'},'attributeNames':[jsxAttributeNames['stylingClass'],'class'],'regexParts':{'prefixes':'(text|bg|border)','colors':'(red|blue|green|yellow|indigo|purple|pink|gray|stone|amber|lime|emerald|teal|cyan|sky|orange)','numbers':'(50|100|200|300|400|500|600|700|800|900|950)'}},tailwindColorRegex=new RegExp('\x5cb('+constants['regexParts']['prefixes']+'-'+constants['regexParts']['colors']+'-'+constants['regexParts']['numbers']+')\x5cb',cliOptionFlags['globalRegex']),createRule=ESLintUtils['RuleCreator'](_0x6727c4=>''+url+_0x6727c4),noTailwindColors=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x9aa314){const _0x1ebfd2={'context':_0x9aa314,'processedCnCalls':new Set()};return {'JSXAttribute'(_0x24d482){const _0x4d4640=_0x24d482[eslintProperties['name']];_0x4d4640['type']===nodeTypes['JSXIdentifier']&&constants['attributeNames']['some'](_0x16a032=>_0x16a032===_0x4d4640[eslintProperties['name']])&&processAttributeValue(_0x24d482[eslintProperties['value']],_0x1ebfd2);},'CallExpression'(_0xb3f33a){processCnFunctionCall(_0xb3f33a,_0x1ebfd2);}};}});function extractColorClasses(_0x37468a){const _0xa5d0cd=new Map();tailwindColorRegex['lastIndex']=-0x9*0x189+-0x25b4+-0x79*-0x6d;let _0x293592;while((_0x293592=tailwindColorRegex['exec'](_0x37468a))!==null){!_0xa5d0cd['has'](first(_0x293592))&&_0xa5d0cd['set'](first(_0x293592),_0x293592['index']);}return _0xa5d0cd;}__name(extractColorClasses,'extractColorClasses');function reportColorClasses(_0x1ae200,_0x417f95,_0x3ce42f){if(_0x1ae200['size']===0x15ec+0x1103+0x1*-0x26ef)return;for(let [_0x11df34,_0xddbdf9]of _0x1ae200){const _0x3142d1=_0x417f95['loc']['start']['column']+_0xddbdf9+(0x9eb+0x1a1b+-0x2405),_0x49f825=_0x3142d1+_0x11df34['length'];_0x3ce42f['report']({'messageId':constants['messageIds']['noTailwindColors'],'data':{['colorClass']:_0x11df34},'loc':{'start':{'line':_0x417f95['loc']['start']['line'],'column':_0x3142d1},'end':{'line':_0x417f95['loc']['end']['line'],'column':_0x49f825}}});}}__name(reportColorClasses,'reportColorClasses');function checkAndReport(_0x4e3fb2,_0x3de72c,_0x191f93){const _0x37e366=extractColorClasses(_0x4e3fb2);reportColorClasses(_0x37e366,_0x3de72c,_0x191f93);}__name(checkAndReport,'checkAndReport');function processTemplateLiteral(_0x21f4b5,_0x116c50){_0x21f4b5['quasis']['forEach'](_0x2ec75a=>{const _0x5ea733=_0x2ec75a[eslintProperties['value']][eslintProperties['raw']];if(!_0x5ea733)return;checkAndReport(_0x5ea733,_0x2ec75a,_0x116c50);});}__name(processTemplateLiteral,'processTemplateLiteral');function processCnArgument(_0x9c178c,_0x2bf724){if(isStringLiteral(_0x9c178c))checkAndReport(_0x9c178c[eslintProperties['value']],_0x9c178c,_0x2bf724['context']);else {if(_0x9c178c['type']===nodeTypes['templateLiteral'])processTemplateLiteral(_0x9c178c,_0x2bf724['context']);else {if(_0x9c178c['type']===nodeTypes['logicalExpression']){const _0x6f7921=_0x9c178c[wellKnownPositions['right']];isStringLiteral(_0x6f7921)&&checkAndReport(_0x6f7921[eslintProperties['value']],_0x6f7921,_0x2bf724['context']);}}}}__name(processCnArgument,'processCnArgument');function processCnFunctionCall(_0x4da506,_0x52f287){let _0x3c522f=!![],_0x8afd34;_0x52f287['processedCnCalls']['has'](_0x4da506)&&(_0x3c522f=![]),_0x3c522f&&(_0x8afd34=_0x4da506[astNodeAccessors['functionTarget']],(!_0x8afd34||_0x8afd34['type']!==nodeTypes['identifier']||_0x8afd34[eslintProperties['name']]!=='cn')&&(_0x3c522f=![])),_0x3c522f&&(_0x52f287['processedCnCalls']['add'](_0x4da506),_0x4da506['arguments']['forEach'](_0xd2daf0=>{processCnArgument(_0xd2daf0,_0x52f287);}));}__name(processCnFunctionCall,'processCnFunctionCall');function processAttributeValue(_0x4c0c3f,_0x51b283){let _0x56710d=!![];!_0x4c0c3f&&(_0x56710d=![]);_0x56710d&&_0x4c0c3f&&(isStringLiteral(_0x4c0c3f)&&(checkAndReport(_0x4c0c3f[eslintProperties['value']],_0x4c0c3f,_0x51b283['context']),_0x56710d=![]));if(_0x56710d&&_0x4c0c3f&&_0x4c0c3f['type']===nodeTypes['JSXExpressionContainer']){const _0xe61cba=_0x4c0c3f[astNodeAccessors['embeddedExpression']];if(isStringLiteral(_0xe61cba))checkAndReport(_0xe61cba[eslintProperties['value']],_0xe61cba,_0x51b283['context']);else {if(_0xe61cba['type']===nodeTypes['templateLiteral'])processTemplateLiteral(_0xe61cba,_0x51b283['context']);else _0xe61cba['type']===nodeTypes['callExpression']&&processCnFunctionCall(_0xe61cba,_0x51b283);}}}__name(processAttributeValue,'processAttributeValue');
7
10
 
8
11
  export { noTailwindColors as default, ruleName };
@@ -1,13 +1,20 @@
1
1
  'use strict';
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
- import _0x333991__default from 'path';
4
- import _0x7f87ea__default from 'fs';
3
+ import _0x1869d0__default from 'path';
4
+ import _0x3881d1__default from 'fs';
5
+ import { fileBaseNames } from '../../../base-repo/constants/internal-common-strings.js';
6
+ import { jsBasicTypes } from '../../../base-repo/constants/basic-types.js';
5
7
  import { getFileName } from '@flint/infra/analysis';
6
- import { eslintLoggerLogError } from '@flint/test-utils/logger';
8
+ import { customEslintRules } from '@flint/test-infra/test-constants';
9
+ import { eslintLoggerLogError } from '@flint/test-infra/logger';
7
10
  import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
8
11
  import { createConfigFilesKey } from '@flint/infra/config-edited-checker';
9
12
  import { readGitHead } from '@flint/infra/git-readers';
13
+ import { flintConfigFileNames } from '@flint/infra/constants/rule-strings';
14
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
15
+ import { nonRootProjectPaths, folders } from '../../../base-repo/app-constants/project-paths.js';
16
+ import { firstOrUndefined } from '../../../fd-toolbox/server/collections/single-funcs.js';
10
17
 
11
- var __defProp=Object['defineProperty'],__name=(_0x400dbf,_0x4bdc73)=>__defProp(_0x400dbf,'name',{'value':_0x4bdc73,'configurable':!![]});const ruleName='must-add-custom-rule-in-config';const constants={'messageId':{'mustAddCustomRuleInConfig':'mustAddCustomRuleInConfig'},'configFileNames':new Set(['project-specific-eslint-configs.js','eslint-base.config.js','non-level-two-eslint-config.js']),'pluginName':'custom-eslint-rules/','meta':{'type':ruleTypes['problem'],'docs':{'description':'checks\x20for\x20the\x20existence\x20of\x20the\x20rule\x20in\x20the\x20configs'},'messages':{'mustAddCustomRuleInConfig':'must-add-custom-rule-in-config\x0a###\x20**Must**\x20add\x20{{fullRuleName}}\x20custom\x20rule\x20in\x20at\x20least\x20one\x20config:\x20project-specific-eslint-configs.js,\x20eslint-base.config.js\x20or\x20non-level-two-eslint-config.js.\x0a\x0a####\x20Wrong\x0a\x0arules/filename-kebab-case.ts\x0a\x0aconst\x20flintSpecificConfig={\x0a\x20\x20\x20\x20rules:{\x0a\x20\x20\x20\x20\x22custom-eslint-rules/for-each-max-lines\x22:\x20\x22error\x22,\x0a\x20\x20\x20\x20}\x0a}\x0a\x0a####\x20Correct\x0a\x0arules/filename-kebab-case.ts\x0a\x0aconst\x20flintSpecificConfig={\x0a\x20\x20\x20\x20rules:{\x0a\x20\x20\x20\x20\x22custom-eslint-rules/filename-kebab-case.ts\x22:\x20\x22error\x22,\x0a\x20\x20\x20\x20}\x0a}\x0a\x0a####\x20Why\x0a\x0aAll\x20custom\x20rules\x20must\x20be\x20explicitly\x20documented\x20in\x20configs\x20to\x20ensure\x20intentional\x20decisions\x20about\x20their\x20usage.'},'schema':[{'type':'object','properties':{'configContents':{'type':'array','items':{'type':'string'}}},'additionalProperties':![]}]}},createRule=ESLintUtils['RuleCreator'](_0x54f259=>''+url+_0x54f259),configCache=new Map();let hasReadConfigs=![],lastWorkspaceKey='',lastGitHead='',lastConfigFilesKey='';function readConfigFile(_0x242fe4){try{if(_0x7f87ea__default['existsSync'](_0x242fe4))return _0x7f87ea__default['readFileSync'](_0x242fe4,'utf-8');}catch(_0x252603){eslintLoggerLogError('['+ruleName+']\x20Error\x20reading\x20file:\x20'+_0x242fe4+'\x20'+(_0x252603 instanceof Error?_0x252603['message']:String(_0x252603)));}return '';}__name(readConfigFile,'readConfigFile');function resetCacheIfWorkspaceChanged(_0x126289){const _0x70345a=readGitHead(_0x126289,ruleName),_0x537012=_0x126289,_0x133258=createConfigFilesKey(_0x126289,constants['configFileNames']);(_0x537012!==lastWorkspaceKey||_0x70345a!==lastGitHead||_0x133258!==lastConfigFilesKey)&&(configCache['clear'](),hasReadConfigs=![],lastWorkspaceKey=_0x537012,lastGitHead=_0x70345a,lastConfigFilesKey=_0x133258);}__name(resetCacheIfWorkspaceChanged,'resetCacheIfWorkspaceChanged');function isRuleMentionedInContent(_0x4ba53c,_0x46ad6b){const _0xf39014='\x22'+constants['pluginName']+_0x46ad6b+'\x22';return _0x4ba53c['includes'](_0xf39014);}__name(isRuleMentionedInContent,'isRuleMentionedInContent');const mustAddCustomRuleInConfig=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[{'configContents':[]}],'create'(_0x34a6fd,[_0x214d2c]){const _0x48dc72=_0x214d2c['configContents'],_0x5f618a=_0x34a6fd['filename'],_0x2d9de4=getFileName(_0x5f618a,_0x333991__default['extname'](_0x5f618a));if(_0x2d9de4==='index'||_0x2d9de4===ruleName)return {};return {'Program:exit'(_0x49ed6c){resetCacheIfWorkspaceChanged(_0x34a6fd['cwd']);if(Array['isArray'](_0x48dc72)&&_0x48dc72['length']>0xe*-0x45+0x9bb+-0x5f5)configCache['clear'](),_0x48dc72['forEach']((_0x3b9ca4,_0x9c7cb9)=>{configCache['set']('test-config-'+_0x9c7cb9+'.js',_0x3b9ca4);}),hasReadConfigs=!![];else {if(!hasReadConfigs){const _0x478b75=_0x34a6fd['cwd'],_0x1d66a9=Array['from'](constants['configFileNames'])['map'](_0x5931ec=>_0x333991__default['join'](_0x478b75,_0x5931ec));for(const _0x4f27ca of _0x1d66a9){const _0x156cfd=readConfigFile(_0x4f27ca);configCache['set'](_0x4f27ca,_0x156cfd);}hasReadConfigs=!![];}}let _0x418989=![];for(const _0x4acb07 of configCache['values']()){if(isRuleMentionedInContent(_0x4acb07,_0x2d9de4)){_0x418989=!![];break;}}!_0x418989&&_0x34a6fd['report']({'node':_0x49ed6c,'messageId':constants['messageId']['mustAddCustomRuleInConfig'],'data':{'fullRuleName':''+constants['pluginName']+_0x2d9de4}});}};}});
18
+ var __defProp=Object['defineProperty'],__name=(_0x3c7c84,_0x2aef14)=>__defProp(_0x3c7c84,'name',{'value':_0x2aef14,'configurable':!![]});const ruleName='must-add-custom-rule-in-config';const constants={'configFileNames':new Set([flintConfigFileNames['projectSpecific'],flintConfigFileNames['eslintBase'],flintConfigFileNames['nonLevelTwo']]),'pluginName':customEslintRules+'/','meta':{'type':ruleTypes['problem'],'docs':{'description':'checks\x20for\x20the\x20existence\x20of\x20the\x20rule\x20in\x20the\x20configs'},'messages':{'mustAddCustomRuleInConfig':'must-add-custom-rule-in-config\x0a###\x20**Must**\x20add\x20{{fullRuleName}}\x20custom\x20rule\x20in\x20at\x20least\x20one\x20config:\x20project-specific-eslint-configs.js,\x20eslint-base.config.js\x20or\x20non-level-two-eslint-config.js.\x0a\x0a####\x20Wrong\x0a\x0arules/filename-kebab-case.ts\x0a\x0aconst\x20flintSpecificConfig={\x0a\x20\x20\x20\x20rules:{\x0a\x20\x20\x20\x20\x22custom-eslint-rules/for-each-max-lines\x22:\x20\x22error\x22,\x0a\x20\x20\x20\x20}\x0a}\x0a\x0a####\x20Correct\x0a\x0arules/filename-kebab-case.ts\x0a\x0aconst\x20flintSpecificConfig={\x0a\x20\x20\x20\x20rules:{\x0a\x20\x20\x20\x20\x22custom-eslint-rules/filename-kebab-case.ts\x22:\x20\x22error\x22,\x0a\x20\x20\x20\x20}\x0a}\x0a\x0a####\x20Why\x0a\x0aAll\x20custom\x20rules\x20must\x20be\x20explicitly\x20documented\x20in\x20configs\x20to\x20ensure\x20intentional\x20decisions\x20about\x20their\x20usage.'},'schema':[{'type':'object','properties':{'configContents':{'type':jsBasicTypes['array'],'items':{'type':'string'}}},'additionalProperties':![]}]}},createRule=ESLintUtils['RuleCreator'](_0x17cb4f=>''+url+_0x17cb4f),configCache=new Map();let hasReadConfigs=![],lastWorkspaceKey='',lastGitHead='',lastConfigFilesKey='';const mustAddCustomRuleInConfig=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[{'configContents':[]}],'create'(_0xf2ad05){const _0x40b70e=firstOrUndefined(_0xf2ad05['options'])?.['configContents'],_0x217f01=_0xf2ad05['filename'],_0x2ab82b=getFileName(_0x217f01,_0x1869d0__default['extname'](_0x217f01));if(_0x2ab82b===fileBaseNames['index']||_0x2ab82b===ruleName)return {};return {[eslintRuleSyntax['programExitSelector']](_0x63c212){resetCacheIfWorkspaceChanged(_0xf2ad05['cwd']);if(Array['isArray'](_0x40b70e)&&_0x40b70e['length']>0x1*-0x47c+0xd*-0xbf+0xe2f)configCache['clear'](),_0x40b70e['forEach']((_0x5cd09e,_0x4980bb)=>{configCache['set']('test-config-'+_0x4980bb+'.js',_0x5cd09e);}),hasReadConfigs=!![];else {if(!hasReadConfigs){const _0x51c5b0=_0x1869d0__default['resolve'](nonRootProjectPaths['parentDirRef']+'/'+folders['flintInfra']),_0x55cd2d=Array['from'](constants['configFileNames'])['map'](_0x5a1f64=>_0x1869d0__default['join'](_0x51c5b0,_0x5a1f64));for(const _0x11639a of _0x55cd2d){const _0x1a291b=readConfigFile(_0x11639a);configCache['set'](_0x11639a,_0x1a291b);}hasReadConfigs=!![];}}let _0x2a947f=![];for(const _0x9f2d37 of configCache['values']()){if(isRuleMentionedInContent(_0x9f2d37,_0x2ab82b)){_0x2a947f=!![];break;}}!_0x2a947f&&_0xf2ad05['report']({'node':_0x63c212,'messageId':'mustAddCustomRuleInConfig','data':{'fullRuleName':''+constants['pluginName']+_0x2ab82b}});}};}});function readConfigFile(_0x221009){try{if(_0x3881d1__default['existsSync'](_0x221009))return _0x3881d1__default['readFileSync'](_0x221009,'utf-8');}catch(_0x4168ca){eslintLoggerLogError('['+ruleName+']\x20Error\x20reading\x20file:\x20'+_0x221009+'\x20'+(_0x4168ca instanceof Error?_0x4168ca['message']:String(_0x4168ca)));}return '';}__name(readConfigFile,'readConfigFile');function resetCacheIfWorkspaceChanged(_0xcb46a9){const _0x490e0d=readGitHead(_0xcb46a9,ruleName),_0x140653=_0xcb46a9,_0x54f951=createConfigFilesKey(_0xcb46a9,constants['configFileNames']);(_0x140653!==lastWorkspaceKey||_0x490e0d!==lastGitHead||_0x54f951!==lastConfigFilesKey)&&(configCache['clear'](),hasReadConfigs=![],lastWorkspaceKey=_0x140653,lastGitHead=_0x490e0d,lastConfigFilesKey=_0x54f951);}__name(resetCacheIfWorkspaceChanged,'resetCacheIfWorkspaceChanged');function isRuleMentionedInContent(_0x3135b3,_0x3dcf31){const _0x24fed4='\x22'+constants['pluginName']+_0x3dcf31+'\x22';return _0x3135b3['includes'](_0x24fed4);}__name(isRuleMentionedInContent,'isRuleMentionedInContent');
12
19
 
13
20
  export { mustAddCustomRuleInConfig as default, ruleName };
@@ -1,7 +1,7 @@
1
1
  import { ESLintUtils } from "@typescript-eslint/utils";
2
- export declare const ruleName = "must-have-both-rule-and-tests";
3
2
  type Options = [{
4
3
  mockFiles?: string[];
5
4
  }] | [];
5
+ export declare const ruleName = "must-have-both-rule-and-tests";
6
6
  declare const enforceRuleTestParity: ESLintUtils.RuleModule<"missingFile", Options, unknown, ESLintUtils.RuleListener>;
7
7
  export default enforceRuleTestParity;
@@ -1,9 +1,13 @@
1
1
  'use strict';
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
- import * as _0x333991 from 'path';
4
- import * as _0x7f87ea from 'fs';
3
+ import * as _0x1869d0 from 'path';
4
+ import * as _0x3881d1 from 'fs';
5
5
  import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
6
+ import { folders, files } from '../../../base-repo/app-constants/project-paths.js';
7
+ import { fileExtensions } from '../../../base-repo/app-constants/internal-system-constants.js';
8
+ import { jsBasicTypes } from '../../../base-repo/constants/basic-types.js';
9
+ import { firstOrUndefined } from '../../../fd-toolbox/server/collections/single-funcs.js';
6
10
 
7
- var __defProp=Object['defineProperty'],__name=(_0x3f9804,_0x23a0ef)=>__defProp(_0x3f9804,'name',{'value':_0x23a0ef,'configurable':!![]});const ruleName='must-have-both-rule-and-tests';const constants={'messageIds':{'missingFile':'missingFile'},'meta':{'type':ruleTypes['problem'],'docs':{'description':'Enforce\x201:1\x20mapping\x20between\x20rule\x20files\x20and\x20test\x20files.'},'messages':{'missingFile':'must-have-both-rule-and-tests\x0a###\x20**Must**\x20have\x20both\x20rule\x20and\x20test\x20files.\x0a\x0a{{errorMessage}}\x0a\x0a####\x20Wrong\x0a\x0aflint/rules/foo.ts\x0a(Missing\x20flint/tests/foo.spec.ts)\x0a\x0a####\x20Correct\x0a\x0aflint/rules/foo.ts\x0aflint/tests/foo.spec.ts\x0a\x0a####\x20Why\x0a\x0aEvery\x20rule\x20must\x20have\x20a\x20corresponding\x20test\x20to\x20ensure\x20reliability\x20and\x20prevent\x20regressions.\x20Test\x20files\x20should\x20not\x20exist\x20without\x20a\x20corresponding\x20rule\x20implementation.'},'schema':[{'type':'object','properties':{'mockFiles':{'type':'array','items':{'type':'string'}}},'additionalProperties':![]}]},'dirs':{'package':'flint','rules':'rules','tests':'tests'},'extensions':{'rule':'.ts','test':'.spec.ts','definition':'.d.ts'},'fileTypes':{'rule':'rule','test':'test'},'ignoredPaths':['rules/index.ts'],'errorTemplates':{'missingTest':'Rule\x20file\x20found\x20at\x20`{{rulePath}}`,\x20but\x20no\x20corresponding\x20test\x20file\x20exists.\x0aExpected\x20location:\x20`{{testPath}}`','missingRule':'Test\x20file\x20found\x20at\x20`{{testPath}}`,\x20but\x20no\x20corresponding\x20rule\x20file\x20exists.\x0aExpected\x20location:\x20`{{rulePath}}`'},'placeholders':{'rulePath':'{{rulePath}}','testPath':'{{testPath}}'}},createRule=ESLintUtils['RuleCreator'](_0x5cb03d=>''+url+_0x5cb03d);function getFileType(_0x428201){let _0x290f73;const _0x50d43c='/'+constants['dirs']['package']+'/'+constants['dirs']['rules']+'/',_0x505266='/'+constants['dirs']['package']+'/'+constants['dirs']['tests']+'/';if(_0x428201['includes'](_0x50d43c)&&_0x428201['endsWith'](constants['extensions']['rule'])&&!_0x428201['endsWith'](constants['extensions']['test'])&&!_0x428201['endsWith'](constants['extensions']['definition']))_0x290f73=constants['fileTypes']['rule'];else _0x428201['includes'](_0x505266)&&_0x428201['endsWith'](constants['extensions']['test'])&&(_0x290f73=constants['fileTypes']['test']);return _0x290f73;}__name(getFileType,'getFileType');function getPairedPath(_0xd11014,_0x56ec1c){const _0x15b6c3=_0x56ec1c===constants['fileTypes']['rule'],_0x584846=_0x15b6c3?constants['dirs']['rules']:constants['dirs']['tests'],_0x259183=_0x15b6c3?constants['dirs']['tests']:constants['dirs']['rules'],_0x5e1fd3=_0x15b6c3?constants['extensions']['rule']:constants['extensions']['test'],_0x56e783=_0x15b6c3?constants['extensions']['test']:constants['extensions']['rule'],_0x5e8ef7='/'+_0x584846+'/',_0x3aca23='/'+_0x259183+'/',_0x49e9d5=_0xd11014['lastIndexOf'](_0x5e8ef7);if(_0x49e9d5===-(0xe*-0x21+0x1b7+0x3*0x8))return _0xd11014;const _0x531891=_0xd11014['substring'](0x1*0xbbc+0x7cf+0x138b*-0x1,_0x49e9d5)+_0x3aca23+_0xd11014['substring'](_0x49e9d5+_0x5e8ef7['length']);if(_0x531891['endsWith'](_0x5e1fd3))return _0x531891['slice'](-0x163f+-0x807+0x1e46,-_0x5e1fd3['length'])+_0x56e783;return _0x531891;}__name(getPairedPath,'getPairedPath');function getDisplayPath(_0x27da0a){const _0x68b791='/'+constants['dirs']['package']+'/',_0x4bb71f=_0x27da0a['lastIndexOf'](_0x68b791);let _0x3b0e95=_0x333991['basename'](_0x27da0a);return _0x4bb71f!==-(-0x2689+-0x17d7*-0x1+-0x1*-0xeb3)&&(_0x3b0e95=_0x27da0a['substring'](_0x4bb71f+(0x620+-0xeb1+0x892))),_0x3b0e95['split']('/')['join']('/');}__name(getDisplayPath,'getDisplayPath');function isIgnoredFile(_0x386ece){const _0x9441f4=constants['ignoredPaths']['some'](_0x1b8165=>{const _0x3eb2c4=constants['dirs']['package']+'/'+_0x1b8165;return _0x386ece['endsWith'](_0x3eb2c4);});return _0x9441f4;}__name(isIgnoredFile,'isIgnoredFile');function checkFileExistence(_0x216ab0,_0x185374){let _0x2f3a1a=![];return _0x185374?.['mockFiles']?_0x2f3a1a=_0x185374['mockFiles']['some'](_0x5a0489=>_0x216ab0['endsWith'](_0x333991['posix']['normalize'](_0x5a0489))):_0x2f3a1a=_0x7f87ea['existsSync'](_0x216ab0),_0x2f3a1a;}__name(checkFileExistence,'checkFileExistence');function getErrorMessage(_0x41c1bf,_0x539d0d,_0xbe80c6){const _0x1b973c=_0x41c1bf?constants['errorTemplates']['missingTest']:constants['errorTemplates']['missingRule'],_0x292d8c=_0x1b973c['replace'](constants['placeholders']['rulePath'],_0x539d0d)['replace'](constants['placeholders']['testPath'],_0xbe80c6);return _0x292d8c;}__name(getErrorMessage,'getErrorMessage');const enforceRuleTestParity=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x1962ac){const _0x42f88c=_0x333991['posix']['normalize'](_0x1962ac['filename']),_0x53beed=isIgnoredFile(_0x42f88c),_0x427fa3=getFileType(_0x42f88c);if(!_0x53beed&&_0x427fa3){const _0x3007f5=getPairedPath(_0x42f88c,_0x427fa3),_0x4f5937=checkFileExistence(_0x3007f5,_0x1962ac['options'][0x3*-0xbaf+-0x2*-0x11a4+-0x3b]);if(!_0x4f5937){const _0x435aa8=_0x427fa3===constants['fileTypes']['rule'],_0x12f238=getDisplayPath(_0x435aa8?_0x42f88c:_0x3007f5),_0x2a1b51=getDisplayPath(_0x435aa8?_0x3007f5:_0x42f88c),_0x1bf325=getErrorMessage(_0x435aa8,_0x12f238,_0x2a1b51);_0x1962ac['report']({'loc':{'line':0x1,'column':0x0},'messageId':constants['messageIds']['missingFile'],'data':{'errorMessage':_0x1bf325}});}}return {};}});
11
+ var __defProp=Object['defineProperty'],__name=(_0x833c3a,_0x34c751)=>__defProp(_0x833c3a,'name',{'value':_0x34c751,'configurable':!![]});const ruleName='must-have-both-rule-and-tests';const constants={'messageIds':{'missingFile':'missingFile'},'meta':{'type':ruleTypes['problem'],'docs':{'description':'Enforce\x201:1\x20mapping\x20between\x20rule\x20files\x20and\x20test\x20files.'},'messages':{'missingFile':'must-have-both-rule-and-tests\x0a###\x20**Must**\x20have\x20both\x20rule\x20and\x20test\x20files.\x0a\x0a{{errorMessage}}\x0a\x0a####\x20Wrong\x0a\x0aflint/rules/foo.ts\x0a(Missing\x20flint/tests/foo.spec.ts)\x0a\x0a####\x20Correct\x0a\x0aflint/rules/foo.ts\x0aflint/tests/foo.spec.ts\x0a\x0a####\x20Why\x0a\x0aEvery\x20rule\x20must\x20have\x20a\x20corresponding\x20test\x20to\x20ensure\x20reliability\x20and\x20prevent\x20regressions.\x20Test\x20files\x20should\x20not\x20exist\x20without\x20a\x20corresponding\x20rule\x20implementation.'},'schema':[{'type':'object','properties':{'mockFiles':{'type':jsBasicTypes['array'],'items':{'type':'string'}}},'additionalProperties':![]}]},'dirs':{'package':folders['flint'],'rules':folders['rules'],'tests':folders['tests']},'extensions':{'rule':fileExtensions['ts'],'test':fileExtensions['spec'],'definition':fileExtensions['dts']},'fileTypes':{'rule':'rule','test':folders['test']},'ignoredPaths':[folders['rules']+'/'+files['indexTs']]},createRule=ESLintUtils['RuleCreator'](_0x4c1471=>''+url+_0x4c1471),enforceRuleTestParity=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x4649a7){const _0x45c22e=_0x1869d0['posix']['normalize'](_0x4649a7['filename']),_0x393cff=isIgnoredFile(_0x45c22e),_0x5b9a64=getFileType(_0x45c22e);if(!_0x393cff&&_0x5b9a64){const _0x1d801f=getPairedPath(_0x45c22e,_0x5b9a64),_0x261c7a=checkFileExistence(_0x1d801f,firstOrUndefined(_0x4649a7['options']));if(!_0x261c7a){const _0xe495b5=_0x5b9a64===constants['fileTypes']['rule'],_0x369714=getDisplayPath(_0xe495b5?_0x45c22e:_0x1d801f),_0x3ace84=getDisplayPath(_0xe495b5?_0x1d801f:_0x45c22e),_0x34c6d0=getErrorMessage(_0xe495b5,_0x369714,_0x3ace84);_0x4649a7['report']({'loc':{'line':0x1,'column':0x0},'messageId':constants['messageIds']['missingFile'],'data':{'errorMessage':_0x34c6d0}});}}return {};}});function getFileType(_0x366eaf){let _0x2e8213;const _0x2b857c='/'+constants['dirs']['package']+'/'+constants['dirs']['rules']+'/',_0x5ce9b8='/'+constants['dirs']['package']+'/'+constants['dirs']['tests']+'/';if(_0x366eaf['includes'](_0x2b857c)&&_0x366eaf['endsWith'](constants['extensions']['rule'])&&!_0x366eaf['endsWith'](constants['extensions']['test'])&&!_0x366eaf['endsWith'](constants['extensions']['definition']))_0x2e8213=constants['fileTypes']['rule'];else _0x366eaf['includes'](_0x5ce9b8)&&_0x366eaf['endsWith'](constants['extensions']['test'])&&(_0x2e8213=constants['fileTypes']['test']);return _0x2e8213;}__name(getFileType,'getFileType');function getPairedPath(_0xf4160e,_0x3eb000){const _0x5df817=_0x3eb000===constants['fileTypes']['rule'],_0x523a87=_0x5df817?constants['dirs']['rules']:constants['dirs']['tests'],_0x56e1d8=_0x5df817?constants['dirs']['tests']:constants['dirs']['rules'],_0x4dec0e=_0x5df817?constants['extensions']['rule']:constants['extensions']['test'],_0x3ffc17=_0x5df817?constants['extensions']['test']:constants['extensions']['rule'],_0x50a6d4='/'+_0x523a87+'/',_0x5c5bac='/'+_0x56e1d8+'/',_0x1af0fa=_0xf4160e['lastIndexOf'](_0x50a6d4);if(_0x1af0fa===-(-0x6b6*-0x2+-0x1ed2+-0xa5*-0x1b))return _0xf4160e;const _0x2b1935=_0xf4160e['substring'](0x22fa+0x19dc+0x257*-0x1a,_0x1af0fa)+_0x5c5bac+_0xf4160e['substring'](_0x1af0fa+_0x50a6d4['length']);if(_0x2b1935['endsWith'](_0x4dec0e))return _0x2b1935['slice'](0x2*-0x2fc+0x419*-0x9+0x2ad9,-_0x4dec0e['length'])+_0x3ffc17;return _0x2b1935;}__name(getPairedPath,'getPairedPath');function getDisplayPath(_0x404817){const _0x5a19ca='/'+constants['dirs']['package']+'/',_0x46f311=_0x404817['lastIndexOf'](_0x5a19ca);let _0x48bdc7=_0x1869d0['basename'](_0x404817);return _0x46f311!==-(-0x23d5+-0x1cde+0x40b4)&&(_0x48bdc7=_0x404817['substring'](_0x46f311+(0x1*-0x283+0x600+0x4*-0xdf))),_0x48bdc7['split']('/')['join']('/');}__name(getDisplayPath,'getDisplayPath');function isIgnoredFile(_0x54c18c){const _0x30e519=constants['ignoredPaths']['some'](_0x148588=>{const _0x499dc6=constants['dirs']['package']+'/'+_0x148588;return _0x54c18c['endsWith'](_0x499dc6);});return _0x30e519;}__name(isIgnoredFile,'isIgnoredFile');function checkFileExistence(_0x3bada0,_0x2e8578){let _0xe86580=![];return _0x2e8578?.['mockFiles']?_0xe86580=_0x2e8578['mockFiles']['some'](_0x5d33fe=>_0x3bada0['endsWith'](_0x1869d0['posix']['normalize'](_0x5d33fe))):_0xe86580=_0x3881d1['existsSync'](_0x3bada0),_0xe86580;}__name(checkFileExistence,'checkFileExistence');function getErrorMessage(_0x3d2ef1,_0x2f7c0d,_0x3067e9){let _0x52c6dc;_0x3d2ef1?_0x52c6dc='Rule\x20file\x20found\x20at\x20`{{rulePath}}`,\x20but\x20no\x20corresponding\x20test\x20file\x20exists.\x0aExpected\x20location:\x20`{{testPath}}`':_0x52c6dc='Test\x20file\x20found\x20at\x20`{{testPath}}`,\x20but\x20no\x20corresponding\x20rule\x20file\x20exists.\x0aExpected\x20location:\x20`{{rulePath}}`';const _0x9bd8b7=_0x52c6dc['replace']('{{rulePath}}',_0x2f7c0d)['replace']('{{testPath}}',_0x3067e9);return _0x9bd8b7;}__name(getErrorMessage,'getErrorMessage');
8
12
 
9
13
  export { enforceRuleTestParity as default, ruleName };
@@ -1,8 +1,12 @@
1
1
  'use strict';
2
2
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
3
  import { getFileName, nodeTypes, isStringLiteral, isTemplateLiteral } from '@flint/infra/analysis';
4
- import _0x333991__default from 'path';
4
+ import _0x1869d0__default from 'path';
5
+ import { fileBaseNames } from '../../../base-repo/constants/internal-common-strings.js';
6
+ import { variableDeclarationKinds } from '@flint/infra/analysis/module-analysis';
7
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
8
+ import { first } from '../../../fd-toolbox/server/collections/single-funcs.js';
5
9
 
6
- const ruleName='must-match-rule-name-with-file-name';const ruleContent='\x0a###\x20**Must**\x20match\x20rule\x20name\x20with\x20file\x20name.\x0a\x0a####\x20Wrong\x0a\x0a//\x20file:\x20\x22foo.ts\x22\x0aexport\x20const\x20ruleName\x20=\x20\x22baz\x22;\x0a\x0a####\x20Correct\x0a\x0a//\x20file:\x20\x22foo.ts\x22\x0aexport\x20const\x20ruleName\x20=\x20\x22foo\x22;\x0a\x0a####\x20Why\x0a\x0aEnforces\x20a\x20single\x20source\x20of\x20truth\x20for\x20ESLint\x20rule\x20names.';var mustMatchRuleNameWithFileName = createEslintRule(ruleName,ruleContent,_0x20c7e5=>{const _0xe6e93d=[];return {'ExportNamedDeclaration'(_0x3a3eeb){_0x3a3eeb['declaration']&&_0x3a3eeb['declaration']['type']===nodeTypes['variableDeclaration']&&_0xe6e93d['push'](_0x3a3eeb['declaration']);},'Program:exit'(_0x270e47){const _0x34d2c2=getFileName(_0x20c7e5['filename'],_0x333991__default['extname'](_0x20c7e5['filename']));if(_0x34d2c2==='index')return;const _0x51c7ea=[];for(const _0x5c96ff of _0xe6e93d){_0x5c96ff['kind']==='const'&&_0x51c7ea['push'](..._0x5c96ff['declarations']);}const _0x503b19=_0x51c7ea['find'](_0x235bb0=>{return _0x235bb0['id']['type']===nodeTypes['identifier']&&_0x235bb0['id']['name']==='ruleName';});let _0x1e9462;if(!_0x503b19?.['init'])_0x1e9462=_0x270e47;else {const _0x1e34ba=_0x503b19['init'];let _0x3b1fca;if(isStringLiteral(_0x1e34ba))_0x3b1fca=_0x1e34ba['value'];else isTemplateLiteral(_0x1e34ba)&&_0x1e34ba['expressions']['length']===0x365*0x9+0xe7b+-0x2d08&&(_0x3b1fca=_0x1e34ba['quasis'][0x10f3*0x1+0x650+0x1*-0x1743]?.['value']['cooked']);_0x3b1fca!==_0x34d2c2&&(_0x1e9462=_0x503b19);}_0x1e9462&&_0x20c7e5['report']({'node':_0x1e9462,'messageId':ruleName});}};});
10
+ const ruleName='must-match-rule-name-with-file-name';const ruleContent='\x0a###\x20**Must**\x20match\x20rule\x20name\x20with\x20file\x20name.\x0a\x0a####\x20Wrong\x0a\x0a//\x20file:\x20\x22foo.ts\x22\x0aexport\x20const\x20ruleName\x20=\x20\x22baz\x22;\x0a\x0a####\x20Correct\x0a\x0a//\x20file:\x20\x22foo.ts\x22\x0aexport\x20const\x20ruleName\x20=\x20\x22foo\x22;\x0a\x0a####\x20Why\x0a\x0aEnforces\x20a\x20single\x20source\x20of\x20truth\x20for\x20ESLint\x20rule\x20names.';var mustMatchRuleNameWithFileName = createEslintRule(ruleName,ruleContent,_0x46cb6c=>{const _0x592aab=[];return {'ExportNamedDeclaration'(_0xb13339){_0xb13339['declaration']&&_0xb13339['declaration']['type']===nodeTypes['variableDeclaration']&&_0x592aab['push'](_0xb13339['declaration']);},[eslintRuleSyntax['programExitSelector']](_0x3e3951){const _0xd8b550=getFileName(_0x46cb6c['filename'],_0x1869d0__default['extname'](_0x46cb6c['filename']));if(_0xd8b550===fileBaseNames['index'])return;const _0xc66873=[];for(const _0x5f5d0b of _0x592aab){_0x5f5d0b['kind']===variableDeclarationKinds['const']&&_0xc66873['push'](..._0x5f5d0b['declarations']);}const _0x3f8f4b=_0xc66873['find'](_0x5767d6=>{return _0x5767d6['id']['type']===nodeTypes['identifier']&&_0x5767d6['id']['name']===eslintRuleSyntax['ruleName'];});let _0x4dfd87;if(!_0x3f8f4b?.['init'])_0x4dfd87=_0x3e3951;else {const _0x58b5bd=_0x3f8f4b['init'];let _0x5c303f;if(isStringLiteral(_0x58b5bd))_0x5c303f=_0x58b5bd['value'];else isTemplateLiteral(_0x58b5bd)&&_0x58b5bd['expressions']['length']===0xb2*0x35+-0x1*-0x2367+-0x4841&&(_0x5c303f=first(_0x58b5bd['quasis'])?.['value']['cooked']);_0x5c303f!==_0xd8b550&&(_0x4dfd87=_0x3f8f4b);}_0x4dfd87&&_0x46cb6c['report']({'node':_0x4dfd87,'messageId':ruleName});}};});
7
11
 
8
12
  export { mustMatchRuleNameWithFileName as default, ruleName };
@@ -1,8 +1,13 @@
1
1
  'use strict';
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
3
  import { nodeTypes, isNameMatch, findPropertyInObject } from '@flint/infra/analysis';
4
- import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
4
+ import { ruleTypes, url, eslintProperties } from '@flint/infra/constants/rules-meta';
5
+ import { folders } from '../../../base-repo/app-constants/project-paths.js';
6
+ import { eslintFixTypeNames } from '../../../base-repo/constants/internal-common-strings.js';
7
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
8
+ import { flintRuleIdentifiers } from '@flint/infra/constants/shared-string-identifiers';
9
+ import { firstOrUndefined } from '../../../fd-toolbox/server/collections/single-funcs.js';
5
10
 
6
- var __defProp=Object['defineProperty'],__name=(_0x408601,_0x1d1dc0)=>__defProp(_0x408601,'name',{'value':_0x1d1dc0,'configurable':!![]});const ruleName='must-not-declare-fixer-without-calling-it';const ruleId='mustNotDeclareFixerWithoutCallingIt';const constants={'fixableValues':{'code':'code','whitespace':'whitespace'},'propertyNames':{'meta':'meta','create':'create','report':'report'},'meta':{'type':ruleTypes['problem'],'docs':{'description':ruleName},'messages':{[ruleId]:ruleName+'\x0a###\x20**Must\x20not**\x20declare\x20fixer\x20without\x20calling\x20it\x20and\x20call\x20without\x20declaring.\x0a\x0a####\x20Wrong\x0a\x0ameta:\x20{\x20fixable:\x20\x22code\x22\x20},\x0acreate(context)\x20{\x0a\x20\x20\x20\x20return\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20Identifier(node)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20context.report({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20node,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20messageId:\x20\x22error\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20};\x0a}\x0a\x0a####\x20Correct\x0a\x0ameta:\x20{\x0a\x20\x20\x20\x20type:\x20\x22problem\x22,\x0a\x20\x20\x20\x20fixable:\x20\x22code\x22\x0a},\x0acreate(context)\x20{\x0a\x20\x20\x20\x20return\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20Identifier(node)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20context.report({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20node,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20messageId:\x20\x22error\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20fix(fixer)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20fixer.replaceText(node,\x20\x22foo\x22);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20};\x0a}\x0a\x0a####\x20Why\x0a\x0aThe\x20fixer\x20declaration\x20and\x20its\x20actual\x20use\x20must\x20always\x20go\x20together,\x20otherwise\x20it\x20breaks\x20consistency.'},'schema':[]}},createRule=ESLintUtils['RuleCreator'](_0x30ee1a=>''+url+_0x30ee1a);function getContextParamName(_0x563dc5){const _0x9f050b=_0x563dc5['params'][0x821+-0x214f+0x192e];return _0x9f050b?.['type']===nodeTypes['identifier']?_0x9f050b['name']:void(0x354+-0x2f+0x17*-0x23);}__name(getContextParamName,'getContextParamName');function hasValidFixableValue(_0x5c0a5b){const _0x19b808=_0x5c0a5b['value']['type']===nodeTypes['literal']&&(_0x5c0a5b['value']['value']===constants['fixableValues']['code']||_0x5c0a5b['value']['value']===constants['fixableValues']['whitespace']),_0x168633=_0x5c0a5b['value']['type']===nodeTypes['identifier']||_0x5c0a5b['value']['type']===nodeTypes['memberExpression'];return _0x19b808||_0x168633;}__name(hasValidFixableValue,'hasValidFixableValue');function isFixableInMetaObject(_0x1b6522){let _0x15409a=![];const _0xdffdfe=isNameMatch(_0x1b6522['key'],'fixable'),_0x42d00a=hasValidFixableValue(_0x1b6522),_0x2d1d0a=findContainingRuleObject(_0x1b6522);if(_0xdffdfe&&_0x42d00a&&_0x2d1d0a){let _0x4ac262=_0x1b6522['parent'];while(_0x4ac262&&_0x4ac262!==_0x2d1d0a){if(_0x4ac262['type']===nodeTypes['objectExpression']&&_0x4ac262['parent']?.['type']===nodeTypes['property']){const _0x51dbd7=_0x4ac262['parent'];if(isNameMatch(_0x51dbd7['key'],constants['propertyNames']['meta'])){_0x15409a=!![];break;}}_0x4ac262=_0x4ac262['parent'];}}return _0x15409a;}__name(isFixableInMetaObject,'isFixableInMetaObject');function isFixPropertyWithFunction(_0x346b46){if(_0x346b46['type']!==nodeTypes['property']||!isNameMatch(_0x346b46['key'],'fix'))return ![];return _0x346b46['method']||_0x346b46['value']['type']===nodeTypes['functionExpression']||_0x346b46['value']['type']===nodeTypes['arrowFunctionExpression'];}__name(isFixPropertyWithFunction,'isFixPropertyWithFunction');function isRuleObject(_0x59c899){return !!findPropertyInObject(_0x59c899,constants['propertyNames']['create']);}__name(isRuleObject,'isRuleObject');function findContainingRuleObject(_0x18949a){let _0x121b7e=_0x18949a;while(_0x121b7e){if(_0x121b7e['type']===nodeTypes['objectExpression']){const _0x106258=_0x121b7e['parent']?.['type']===nodeTypes['callExpression']&&_0x121b7e['parent']['callee']['type']===nodeTypes['identifier']&&isNameMatch(_0x121b7e['parent']['callee'],'createRule'),_0x23b423=_0x121b7e['parent']?.['type']===nodeTypes['variableDeclarator']&&isRuleObject(_0x121b7e['properties']);if(_0x106258||_0x23b423)return _0x121b7e;}_0x121b7e=_0x121b7e['parent'];}return void(0x25*0x12+0xeb1+-0x114b);}__name(findContainingRuleObject,'findContainingRuleObject');function isReportCall(_0x413bc2,_0x1b3b51,_0x2f08ba){let _0x4c2414=![];if(_0x413bc2['callee']['type']===nodeTypes['memberExpression']){const _0x4aed21=!!_0x1b3b51&&isNameMatch(_0x413bc2['callee']['object'],_0x1b3b51)&&isNameMatch(_0x413bc2['callee']['property'],constants['propertyNames']['report']);_0x4c2414=_0x4aed21&&_0x413bc2['arguments']['length']>-0x25a5+0x10bf+0xd6*0x19;}else _0x413bc2['callee']['type']===nodeTypes['identifier']&&_0x2f08ba?.['has'](_0x413bc2['callee']['name'])&&(_0x4c2414=_0x413bc2['arguments']['length']>-0x1264+0x2*-0x128c+-0x43*-0xd4);return _0x4c2414;}__name(isReportCall,'isReportCall');function isFixerFunction(_0x23b4df){return _0x23b4df['type']===nodeTypes['functionExpression']||_0x23b4df['type']===nodeTypes['arrowFunctionExpression'];}__name(isFixerFunction,'isFixerFunction');function findFixInDescriptorObject(_0x2ec5a8){let _0x16d482;const _0x16573b=_0x2ec5a8[-0x25ed+0x3d*0x3f+0x16ea];if(_0x16573b?.['type']===nodeTypes['objectExpression'])for(const _0x3dcf91 of _0x16573b['properties']){if(_0x3dcf91['type']===nodeTypes['property']&&isFixPropertyWithFunction(_0x3dcf91)){_0x16d482=_0x3dcf91;break;}}return _0x16d482;}__name(findFixInDescriptorObject,'findFixInDescriptorObject');function findFixInPositionalArgs(_0x1e1a23){let _0xb8e2a6;if(_0x1e1a23['length']>=-0x1*0x46d+0x3*-0xce+0x6db&&isFixerFunction(_0x1e1a23[-0x1db7*0x1+0x20*-0x41+0x66*0x5f]))_0xb8e2a6=_0x1e1a23[0xbde+-0x2b*-0x8+-0x6d*0x1f];else _0x1e1a23['length']>=-0x21f8+0x1483+0xd78&&isFixerFunction(_0x1e1a23[0x10*-0x4a+0x1aaa+-0x14*0x11a])&&(_0xb8e2a6=_0x1e1a23[-0x563*0x7+0x1*-0x3d9+0x2990]);return _0xb8e2a6;}__name(findFixInPositionalArgs,'findFixInPositionalArgs');function findFixPropertyInReportCall(_0x319b38,_0x1248a1,_0xdcd54d){let _0x39231a;const _0x23bd7f=_0xdcd54d??new Set(),_0x4eebb2=isReportCall(_0x319b38,_0x1248a1,_0x23bd7f);if(_0x4eebb2){const _0x101527=findFixInDescriptorObject(_0x319b38['arguments']);_0x101527?_0x39231a=_0x101527:_0x39231a=findFixInPositionalArgs(_0x319b38['arguments']);}return _0x39231a;}__name(findFixPropertyInReportCall,'findFixPropertyInReportCall');function getOrCreateRuleDefinition(_0x3e2bf6,_0xa7876d){let _0x2a05e5=_0x3e2bf6['get'](_0xa7876d);return !_0x2a05e5&&(_0x2a05e5={'fixableNode':void(-0xb00+-0x3*-0x1e2+0x55a),'fixNodes':[],'contextName':void(0x2503+0x1*0x1c81+-0x257*0x1c),'ruleObject':_0xa7876d,'hasReferencedMeta':![]},_0x3e2bf6['set'](_0xa7876d,_0x2a05e5)),_0x2a05e5;}__name(getOrCreateRuleDefinition,'getOrCreateRuleDefinition');function ensureRuleObjectTracked(_0x3c3665,_0x566318){!_0x3c3665['includes'](_0x566318)&&_0x3c3665['push'](_0x566318);}__name(ensureRuleObjectTracked,'ensureRuleObjectTracked');function handleFixableProperty(_0x3cbcb3,_0x2dce05,_0x528c46){const _0x1060cd=findContainingRuleObject(_0x3cbcb3);if(_0x1060cd){const _0x42f5be=getOrCreateRuleDefinition(_0x2dce05,_0x1060cd);ensureRuleObjectTracked(_0x528c46,_0x1060cd),_0x42f5be['fixableNode']=_0x3cbcb3;}}__name(handleFixableProperty,'handleFixableProperty');function handleCreateProperty(_0x1fc2dd,_0x31e911,_0x32c4e2){const _0x322d10=_0x1fc2dd['value'];if(_0x322d10['type']===nodeTypes['functionExpression']||_0x322d10['type']===nodeTypes['arrowFunctionExpression']){const _0x4e8805=findContainingRuleObject(_0x1fc2dd);if(_0x4e8805){const _0x4d839b=getOrCreateRuleDefinition(_0x31e911,_0x4e8805);ensureRuleObjectTracked(_0x32c4e2,_0x4e8805),_0x4d839b['contextName']=getContextParamName(_0x322d10);}}}__name(handleCreateProperty,'handleCreateProperty');function getCallerObjectName(_0x47d481){if(_0x47d481['type']===nodeTypes['memberExpression']&&_0x47d481['object']['type']===nodeTypes['identifier'])return _0x47d481['object']['name'];return void(0x1639+0x17cc+0x3f*-0xbb);}__name(getCallerObjectName,'getCallerObjectName');function addFixToContextMap(_0x17df74,_0x3aec73,_0x397cfe){let _0x27725d=_0x17df74['get'](_0x3aec73);!_0x27725d&&(_0x27725d=[],_0x17df74['set'](_0x3aec73,_0x27725d)),_0x27725d['push'](_0x397cfe);}__name(addFixToContextMap,'addFixToContextMap');function isMetaDynamicOrReferenced(_0xd2c02e){const _0x3d26de=_0xd2c02e['type']===nodeTypes['identifier']||_0xd2c02e['type']===nodeTypes['memberExpression'],_0x186aee=_0xd2c02e['type']===nodeTypes['callExpression'],_0x2aaf38=_0xd2c02e['type']===nodeTypes['objectExpression']&&_0xd2c02e['properties']['some'](_0x10238d=>_0x10238d['type']===nodeTypes['spreadElement']);return _0x3d26de||_0x186aee||_0x2aaf38;}__name(isMetaDynamicOrReferenced,'isMetaDynamicOrReferenced');function handleMetaProperty(_0x47f8d1,_0xda7497,_0x4e78a2){const _0x4c7b24=findContainingRuleObject(_0x47f8d1);if(!_0x4c7b24)return;const _0xe0b276=getOrCreateRuleDefinition(_0xda7497,_0x4c7b24);ensureRuleObjectTracked(_0x4e78a2,_0x4c7b24),isMetaDynamicOrReferenced(_0x47f8d1['value'])&&(_0xe0b276['hasReferencedMeta']=!![]);}__name(handleMetaProperty,'handleMetaProperty');function checkRuleDefinitionConsistency(_0x3b6911,_0x50af76,_0xe01720){const _0x15e53b=!!_0x3b6911['fixableNode'];let _0xa755bd=_0x3b6911['fixNodes']['length']>0x142c+0x1*-0x593+0x25*-0x65;if(!_0xa755bd&&_0x3b6911['contextName']){const _0x333895=_0x50af76['get'](_0x3b6911['contextName']);_0xa755bd=!!_0x333895&&_0x333895['length']>-0x1*-0x2344+0x5*-0x166+-0x1c46;}_0x15e53b&&!_0xa755bd&&_0x3b6911['fixableNode']&&_0xe01720['report']({'node':_0x3b6911['fixableNode'],'messageId':ruleId});if(_0xa755bd&&!_0x15e53b&&!_0x3b6911['hasReferencedMeta'])for(const _0x65af1 of _0x3b6911['fixNodes']){_0xe01720['report']({'node':_0x65af1,'messageId':ruleId});}}__name(checkRuleDefinitionConsistency,'checkRuleDefinitionConsistency');const mustNotDeclareFixerWithoutCallingIt=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x3475ef){const _0xbb2e39=new WeakMap(),_0x1a6057=[],_0x15241b=new Set(),_0x85b79c=new Map();return {'Property'(_0x4a03b3){isFixableInMetaObject(_0x4a03b3)&&handleFixableProperty(_0x4a03b3,_0xbb2e39,_0x1a6057),isNameMatch(_0x4a03b3['key'],constants['propertyNames']['create'])&&handleCreateProperty(_0x4a03b3,_0xbb2e39,_0x1a6057),isNameMatch(_0x4a03b3['key'],constants['propertyNames']['meta'])&&handleMetaProperty(_0x4a03b3,_0xbb2e39,_0x1a6057);},'VariableDeclarator'(_0x54d535){if(_0x54d535['id']['type']!==nodeTypes['identifier']||!_0x54d535['init'])return;if(_0x54d535['init']['type']===nodeTypes['memberExpression']&&_0x54d535['init']['property']['type']===nodeTypes['identifier']&&isNameMatch(_0x54d535['init']['property'],constants['propertyNames']['report'])&&_0x54d535['init']['object']['type']===nodeTypes['identifier']){const _0x59a028=findContainingRuleObject(_0x54d535);if(_0x59a028){const _0x5f5ca1=_0xbb2e39['get'](_0x59a028);_0x5f5ca1?.['contextName']&&isNameMatch(_0x54d535['init']['object'],_0x5f5ca1['contextName'])&&_0x15241b['add'](_0x54d535['id']['name']);}}},'CallExpression'(_0x361e7f){const _0x85518a=findContainingRuleObject(_0x361e7f);if(_0x85518a){const _0x2fe63e=_0xbb2e39['get'](_0x85518a);if(_0x2fe63e){const _0x2e2a1f=findFixPropertyInReportCall(_0x361e7f,_0x2fe63e['contextName'],_0x15241b);_0x2e2a1f&&_0x2fe63e['fixNodes']['push'](_0x2e2a1f);}}else {if(_0x361e7f['callee']['type']===nodeTypes['memberExpression']){const _0x2e4538=getCallerObjectName(_0x361e7f['callee']);if(_0x2e4538&&isNameMatch(_0x361e7f['callee']['property'],constants['propertyNames']['report'])){const _0xc5c224=findFixPropertyInReportCall(_0x361e7f,_0x2e4538,_0x15241b);_0xc5c224&&addFixToContextMap(_0x85b79c,_0x2e4538,_0xc5c224);}}}},'Program:exit'(){for(const _0x510f02 of _0x1a6057){const _0x29d8cc=_0xbb2e39['get'](_0x510f02);_0x29d8cc&&checkRuleDefinitionConsistency(_0x29d8cc,_0x85b79c,_0x3475ef);}}};}});
11
+ var __defProp=Object['defineProperty'],__name=(_0x2cfe09,_0x288471)=>__defProp(_0x2cfe09,'name',{'value':_0x288471,'configurable':!![]});const ruleName='must-not-declare-fixer-without-calling-it';const ruleId='mustNotDeclareFixerWithoutCallingIt';const constants={'fixableValues':{'code':eslintFixTypeNames['code'],'whitespace':eslintFixTypeNames['whitespace']},'propertyNames':{'meta':folders['meta'],'create':folders['createSaasKitApp'],'report':eslintRuleSyntax['report']},'meta':{'type':ruleTypes['problem'],'docs':{'description':ruleName},'messages':{[ruleId]:ruleName+'\x0a###\x20**Must\x20not**\x20declare\x20fixer\x20without\x20calling\x20it\x20and\x20call\x20without\x20declaring.\x0a\x0a####\x20Wrong\x0a\x0ameta:\x20{\x20fixable:\x20\x22code\x22\x20},\x0acreate(context)\x20{\x0a\x20\x20\x20\x20return\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20Identifier(node)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20context.report({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20node,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20messageId:\x20\x22error\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20};\x0a}\x0a\x0a####\x20Correct\x0a\x0ameta:\x20{\x0a\x20\x20\x20\x20type:\x20\x22problem\x22,\x0a\x20\x20\x20\x20fixable:\x20\x22code\x22\x0a},\x0acreate(context)\x20{\x0a\x20\x20\x20\x20return\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20Identifier(node)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20context.report({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20node,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20messageId:\x20\x22error\x22,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20fix(fixer)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20fixer.replaceText(node,\x20\x22foo\x22);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20};\x0a}\x0a\x0a####\x20Why\x0a\x0aThe\x20fixer\x20declaration\x20and\x20its\x20actual\x20use\x20must\x20always\x20go\x20together,\x20otherwise\x20it\x20breaks\x20consistency.'},'schema':[]}},createRule=ESLintUtils['RuleCreator'](_0x1d3412=>''+url+_0x1d3412),mustNotDeclareFixerWithoutCallingIt=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x1d4898){const _0x1b747a=new WeakMap(),_0x473b2b=[],_0x4d13d3=new Set(),_0x2034f9=new Map();return {'Property'(_0x25d1e6){isFixableInMetaObject(_0x25d1e6)&&handleFixableProperty(_0x25d1e6,_0x1b747a,_0x473b2b),isNameMatch(_0x25d1e6['key'],constants['propertyNames']['create'])&&handleCreateProperty(_0x25d1e6,_0x1b747a,_0x473b2b),isNameMatch(_0x25d1e6['key'],constants['propertyNames']['meta'])&&handleMetaProperty(_0x25d1e6,_0x1b747a,_0x473b2b);},'VariableDeclarator'(_0xf28db3){if(_0xf28db3['id']['type']!==nodeTypes['identifier']||!_0xf28db3['init'])return;if(_0xf28db3['init']['type']===nodeTypes['memberExpression']&&_0xf28db3['init']['property']['type']===nodeTypes['identifier']&&isNameMatch(_0xf28db3['init']['property'],constants['propertyNames']['report'])&&_0xf28db3['init']['object']['type']===nodeTypes['identifier']){const _0x2b8b8e=findContainingRuleObject(_0xf28db3);if(_0x2b8b8e){const _0x3b3893=_0x1b747a['get'](_0x2b8b8e);_0x3b3893?.['contextName']&&isNameMatch(_0xf28db3['init']['object'],_0x3b3893['contextName'])&&_0x4d13d3['add'](_0xf28db3['id']['name']);}}},'CallExpression'(_0x1381ed){const _0x2389e4=findContainingRuleObject(_0x1381ed);if(_0x2389e4){const _0x51a457=_0x1b747a['get'](_0x2389e4);if(_0x51a457){const _0x508eb9=findFixPropertyInReportCall(_0x1381ed,_0x51a457['contextName'],_0x4d13d3);_0x508eb9&&_0x51a457['fixNodes']['push'](_0x508eb9);}}else {if(_0x1381ed['callee']['type']===nodeTypes['memberExpression']){const _0x2e1c9d=getCallerObjectName(_0x1381ed['callee']);if(_0x2e1c9d&&isNameMatch(_0x1381ed['callee']['property'],constants['propertyNames']['report'])){const _0x90a5d5=findFixPropertyInReportCall(_0x1381ed,_0x2e1c9d,_0x4d13d3);_0x90a5d5&&addFixToContextMap(_0x2034f9,_0x2e1c9d,_0x90a5d5);}}}},[eslintRuleSyntax['programExitSelector']](){for(const _0x1e3f50 of _0x473b2b){const _0x1b0bc7=_0x1b747a['get'](_0x1e3f50);_0x1b0bc7&&checkRuleDefinitionConsistency(_0x1b0bc7,_0x2034f9,_0x1d4898);}}};}});function getContextParamName(_0x236ff5){const _0x188a0f=firstOrUndefined(_0x236ff5['params']);return _0x188a0f&&_0x188a0f['type']===nodeTypes['identifier']?_0x188a0f['name']:void(-0xa7*-0x2f+0x125*-0x7+-0x16a6);}__name(getContextParamName,'getContextParamName');function hasValidFixableValue(_0x5efc92){const _0x135dbe=_0x5efc92['value']['type']===nodeTypes['literal']&&(_0x5efc92['value']['value']===constants['fixableValues']['code']||_0x5efc92['value']['value']===constants['fixableValues']['whitespace']),_0x3acda5=_0x5efc92['value']['type']===nodeTypes['identifier']||_0x5efc92['value']['type']===nodeTypes['memberExpression'];return _0x135dbe||_0x3acda5;}__name(hasValidFixableValue,'hasValidFixableValue');function isFixableInMetaObject(_0x5ef3b3){let _0x4597ec=![];const _0x4d567b=isNameMatch(_0x5ef3b3['key'],'fixable'),_0x45eed3=hasValidFixableValue(_0x5ef3b3),_0xb38f82=findContainingRuleObject(_0x5ef3b3);if(_0x4d567b&&_0x45eed3&&_0xb38f82){let _0x508d93=_0x5ef3b3['parent'];while(_0x508d93&&_0x508d93!==_0xb38f82){if(_0x508d93['type']===nodeTypes['objectExpression']&&_0x508d93['parent']?.['type']===nodeTypes['property']){const _0x393442=_0x508d93['parent'];if(isNameMatch(_0x393442['key'],constants['propertyNames']['meta'])){_0x4597ec=!![];break;}}_0x508d93=_0x508d93['parent'];}}return _0x4597ec;}__name(isFixableInMetaObject,'isFixableInMetaObject');function isFixPropertyWithFunction(_0x179aab){if(_0x179aab['type']!==nodeTypes['property']||!isNameMatch(_0x179aab['key'],eslintProperties['fix']))return ![];return _0x179aab['method']||_0x179aab['value']['type']===nodeTypes['functionExpression']||_0x179aab['value']['type']===nodeTypes['arrowFunctionExpression'];}__name(isFixPropertyWithFunction,'isFixPropertyWithFunction');function isRuleObject(_0x16fa7b){return !!findPropertyInObject(_0x16fa7b,constants['propertyNames']['create']);}__name(isRuleObject,'isRuleObject');function findContainingRuleObject(_0x184398){let _0x13f19f=_0x184398;while(_0x13f19f){if(_0x13f19f['type']===nodeTypes['objectExpression']){const _0x11b6b7=_0x13f19f['parent']?.['type']===nodeTypes['callExpression']&&_0x13f19f['parent']['callee']['type']===nodeTypes['identifier']&&isNameMatch(_0x13f19f['parent']['callee'],flintRuleIdentifiers['eslintRuleCreatorName']),_0x1a74e1=_0x13f19f['parent']?.['type']===nodeTypes['variableDeclarator']&&isRuleObject(_0x13f19f['properties']);if(_0x11b6b7||_0x1a74e1)return _0x13f19f;}_0x13f19f=_0x13f19f['parent'];}return void(-0x4*0x15a+-0x2039*-0x1+-0x1ad1);}__name(findContainingRuleObject,'findContainingRuleObject');function isReportCall(_0x476363,_0x4c053c,_0x56bcf9){let _0x492f95=![];if(_0x476363['callee']['type']===nodeTypes['memberExpression']){const _0x367e33=!!_0x4c053c&&isNameMatch(_0x476363['callee']['object'],_0x4c053c)&&isNameMatch(_0x476363['callee']['property'],constants['propertyNames']['report']);_0x492f95=_0x367e33&&_0x476363['arguments']['length']>-0x148*0x1+-0xe0d+0xf55;}else _0x476363['callee']['type']===nodeTypes['identifier']&&_0x56bcf9?.['has'](_0x476363['callee']['name'])&&(_0x492f95=_0x476363['arguments']['length']>-0x18a6*-0x1+-0xd*-0xaa+-0x2148);return _0x492f95;}__name(isReportCall,'isReportCall');function isFixerFunction(_0x32ad51){return _0x32ad51['type']===nodeTypes['functionExpression']||_0x32ad51['type']===nodeTypes['arrowFunctionExpression'];}__name(isFixerFunction,'isFixerFunction');function findFixInDescriptorObject(_0x239783){let _0xf99a2b;const _0x25f7e6=firstOrUndefined(_0x239783);if(_0x25f7e6&&_0x25f7e6['type']===nodeTypes['objectExpression'])for(const _0x49fd52 of _0x25f7e6['properties']){if(_0x49fd52['type']===nodeTypes['property']&&isFixPropertyWithFunction(_0x49fd52)){_0xf99a2b=_0x49fd52;break;}}return _0xf99a2b;}__name(findFixInDescriptorObject,'findFixInDescriptorObject');function findFixInPositionalArgs(_0x50ffdc){let _0x5b644e;if(_0x50ffdc['length']>=-0x2385*-0x1+-0x2*0x6d2+-0xc1*0x1d&&isFixerFunction(_0x50ffdc[0x1301+0x52+-0x1350]))_0x5b644e=_0x50ffdc[0x17a3+-0x1910+0x170];else _0x50ffdc['length']>=-0x1*0xe59+0x1860+-0xa04&&isFixerFunction(_0x50ffdc[0x23e0+0x23c0+-0x479e])&&(_0x5b644e=_0x50ffdc[0x33b*0x8+-0x1b08+0x132]);return _0x5b644e;}__name(findFixInPositionalArgs,'findFixInPositionalArgs');function findFixPropertyInReportCall(_0x144763,_0x10b48d,_0x5853b6){let _0x3d8050;const _0x387f55=_0x5853b6??new Set(),_0x4d3361=isReportCall(_0x144763,_0x10b48d,_0x387f55);if(_0x4d3361){const _0x45067d=findFixInDescriptorObject(_0x144763['arguments']);_0x45067d?_0x3d8050=_0x45067d:_0x3d8050=findFixInPositionalArgs(_0x144763['arguments']);}return _0x3d8050;}__name(findFixPropertyInReportCall,'findFixPropertyInReportCall');function getOrCreateRuleDefinition(_0x218def,_0x2a484d){let _0x5616f2=_0x218def['get'](_0x2a484d);return !_0x5616f2&&(_0x5616f2={'fixableNode':void(-0x248d+-0x24+0x24b1),'fixNodes':[],'contextName':void(-0x5f6+0x16fc+-0x1*0x1106),'ruleObject':_0x2a484d,'hasReferencedMeta':![]},_0x218def['set'](_0x2a484d,_0x5616f2)),_0x5616f2;}__name(getOrCreateRuleDefinition,'getOrCreateRuleDefinition');function ensureRuleObjectTracked(_0x882ea4,_0x1d4b15){!_0x882ea4['includes'](_0x1d4b15)&&_0x882ea4['push'](_0x1d4b15);}__name(ensureRuleObjectTracked,'ensureRuleObjectTracked');function handleFixableProperty(_0x155dcf,_0x2ebe21,_0xfbdd40){const _0x104b3f=findContainingRuleObject(_0x155dcf);if(_0x104b3f){const _0x525f10=getOrCreateRuleDefinition(_0x2ebe21,_0x104b3f);ensureRuleObjectTracked(_0xfbdd40,_0x104b3f),_0x525f10['fixableNode']=_0x155dcf;}}__name(handleFixableProperty,'handleFixableProperty');function handleCreateProperty(_0x5ae752,_0x3e1ffc,_0x37c4e2){const _0x1001e8=_0x5ae752['value'];if(_0x1001e8['type']===nodeTypes['functionExpression']||_0x1001e8['type']===nodeTypes['arrowFunctionExpression']){const _0x5642bf=findContainingRuleObject(_0x5ae752);if(_0x5642bf){const _0x3ccd47=getOrCreateRuleDefinition(_0x3e1ffc,_0x5642bf);ensureRuleObjectTracked(_0x37c4e2,_0x5642bf),_0x3ccd47['contextName']=getContextParamName(_0x1001e8);}}}__name(handleCreateProperty,'handleCreateProperty');function getCallerObjectName(_0x4f92b3){if(_0x4f92b3['type']===nodeTypes['memberExpression']&&_0x4f92b3['object']['type']===nodeTypes['identifier'])return _0x4f92b3['object']['name'];return void(-0x95*-0xb+-0x1*0x1cf9+-0x36*-0x6b);}__name(getCallerObjectName,'getCallerObjectName');function addFixToContextMap(_0x4d3ebe,_0x5ce6e7,_0x14c1cd){let _0x5c8ca9=_0x4d3ebe['get'](_0x5ce6e7);!_0x5c8ca9&&(_0x5c8ca9=[],_0x4d3ebe['set'](_0x5ce6e7,_0x5c8ca9)),_0x5c8ca9['push'](_0x14c1cd);}__name(addFixToContextMap,'addFixToContextMap');function isMetaDynamicOrReferenced(_0x326265){const _0x586917=_0x326265['type']===nodeTypes['identifier']||_0x326265['type']===nodeTypes['memberExpression'],_0x44aa82=_0x326265['type']===nodeTypes['callExpression'],_0x43dddc=_0x326265['type']===nodeTypes['objectExpression']&&_0x326265['properties']['some'](_0x140ae1=>_0x140ae1['type']===nodeTypes['spreadElement']);return _0x586917||_0x44aa82||_0x43dddc;}__name(isMetaDynamicOrReferenced,'isMetaDynamicOrReferenced');function handleMetaProperty(_0x438f7c,_0x314681,_0x1475c5){const _0x228ce6=findContainingRuleObject(_0x438f7c);if(!_0x228ce6)return;const _0x14581d=getOrCreateRuleDefinition(_0x314681,_0x228ce6);ensureRuleObjectTracked(_0x1475c5,_0x228ce6),isMetaDynamicOrReferenced(_0x438f7c['value'])&&(_0x14581d['hasReferencedMeta']=!![]);}__name(handleMetaProperty,'handleMetaProperty');function checkRuleDefinitionConsistency(_0x45fc6a,_0x23d368,_0x79d74a){const _0xe2452c=!!_0x45fc6a['fixableNode'];let _0x3dfce1=_0x45fc6a['fixNodes']['length']>0x1ce2+-0x394*-0x6+-0x325a;if(!_0x3dfce1&&_0x45fc6a['contextName']){const _0x60b582=_0x23d368['get'](_0x45fc6a['contextName']);_0x3dfce1=!!_0x60b582&&_0x60b582['length']>-0x11dd+0x8*-0x30d+0x2a45;}_0xe2452c&&!_0x3dfce1&&_0x45fc6a['fixableNode']&&_0x79d74a['report']({'node':_0x45fc6a['fixableNode'],'messageId':ruleId});if(_0x3dfce1&&!_0xe2452c&&!_0x45fc6a['hasReferencedMeta'])for(const _0x570012 of _0x45fc6a['fixNodes']){_0x79d74a['report']({'node':_0x570012,'messageId':ruleId});}}__name(checkRuleDefinitionConsistency,'checkRuleDefinitionConsistency');
7
12
 
8
13
  export { mustNotDeclareFixerWithoutCallingIt as default, ruleId, ruleName };
@@ -2,6 +2,6 @@
2
2
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
3
  import { nodeTypes } from '@flint/infra/analysis';
4
4
 
5
- var __defProp=Object['defineProperty'],__name=(_0x11a317,_0x140876)=>__defProp(_0x11a317,'name',{'value':_0x140876,'configurable':!![]});const ruleName='must-not-import-ast-node-types';const identifierName='AST_NODE_TYPES',ruleContent='\x0a###\x20**Must\x20not**\x20import\x20or\x20use\x20AST_NODE_TYPES\x20directly.\x0a\x0a####\x20Wrong\x0a\x0aimport\x20{\x20AST_NODE_TYPES\x20}\x20from\x20\x22@typescript-eslint/utils\x22;\x0a\x0aif\x20(node.type\x20===\x20AST_NODE_TYPES.CallExpression)\x20{\x0a\x20\x20\x20\x20...\x0a}\x0a\x0a####\x20Correct\x0a\x0aimport\x20{\x20nodeTypes\x20}\x20from\x20\x22../infra/analysis\x22;\x0a\x0aif\x20(node.type\x20===\x20nodeTypes.CallExpression)\x20{\x0a\x20\x20\x20\x20...\x0a}\x0a\x0a####\x20Why\x0a\x0aAll\x20node\x20type\x20constants\x20are\x20already\x20defined\x20in\x20analysis\x20to\x20keep\x20consistency\x20across\x20rules.';var mustNotImportAstNodeTypes = createEslintRule(ruleName,ruleContent,__name(function create(_0x28be9e){return {'ImportDeclaration'(_0x3a047b){isImportTypesEslintElement(_0x3a047b['source']['value']['toString']())&&(isImportingAstNodeTypes(_0x3a047b)&&_0x28be9e['report']({'node':_0x3a047b,'messageId':ruleName}));},'MemberExpression'(_0x5a2e39){isMemberExpressionUsingAstNodeTypes(_0x5a2e39)&&_0x28be9e['report']({'node':_0x5a2e39,'messageId':ruleName});}};},'create'));function isImportTypesEslintElement(_0x56ad01){return /^(@typescript-eslint\/)/['test'](_0x56ad01);}__name(isImportTypesEslintElement,'isImportTypesEslintElement');function isImportingAstNodeTypes({specifiers:_0x554a90}){return _0x554a90['some'](_0x28fc2b=>_0x28fc2b['type']===nodeTypes['importSpecifier']&&_0x28fc2b['imported']['type']===nodeTypes['identifier']&&_0x28fc2b['imported']['name']===identifierName);}__name(isImportingAstNodeTypes,'isImportingAstNodeTypes');function isMemberExpressionUsingAstNodeTypes(_0x2e6223){return _0x2e6223['object']['type']===nodeTypes['identifier']&&_0x2e6223['object']['name']===identifierName||_0x2e6223['object']['type']===nodeTypes['memberExpression']&&_0x2e6223['object']['type']===nodeTypes['memberExpression']&&_0x2e6223['object']['property']['type']===nodeTypes['identifier']&&_0x2e6223['object']['property']['name']===identifierName;}__name(isMemberExpressionUsingAstNodeTypes,'isMemberExpressionUsingAstNodeTypes');
5
+ var __defProp=Object['defineProperty'],__name=(_0x1ef807,_0x338164)=>__defProp(_0x1ef807,'name',{'value':_0x338164,'configurable':!![]});const ruleName='must-not-import-ast-node-types';const identifierName='AST_NODE_TYPES',ruleContent='\x0a###\x20**Must\x20not**\x20import\x20or\x20use\x20AST_NODE_TYPES\x20directly.\x0a\x0a####\x20Wrong\x0a\x0aimport\x20{\x20AST_NODE_TYPES\x20}\x20from\x20\x22@typescript-eslint/utils\x22;\x0a\x0aif\x20(node.type\x20===\x20AST_NODE_TYPES.CallExpression)\x20{\x0a\x20\x20\x20\x20...\x0a}\x0a\x0a####\x20Correct\x0a\x0aimport\x20{\x20nodeTypes\x20}\x20from\x20\x22../infra/analysis\x22;\x0a\x0aif\x20(node.type\x20===\x20nodeTypes.CallExpression)\x20{\x0a\x20\x20\x20\x20...\x0a}\x0a\x0a####\x20Why\x0a\x0aAll\x20node\x20type\x20constants\x20are\x20already\x20defined\x20in\x20analysis\x20to\x20keep\x20consistency\x20across\x20rules.';var mustNotImportAstNodeTypes = createEslintRule(ruleName,ruleContent,__name(function create(_0x42b296){return {'ImportDeclaration'(_0xff6619){isImportTypesEslintElement(_0xff6619['source']['value']['toString']())&&(isImportingAstNodeTypes(_0xff6619['specifiers'])&&_0x42b296['report']({'node':_0xff6619,'messageId':ruleName}));},'MemberExpression'(_0x5b0c08){isMemberExpressionUsingAstNodeTypes(_0x5b0c08)&&_0x42b296['report']({'node':_0x5b0c08,'messageId':ruleName});}};},'create'));function isImportTypesEslintElement(_0x3bf6c9){return /^(@typescript-eslint\/)/['test'](_0x3bf6c9);}__name(isImportTypesEslintElement,'isImportTypesEslintElement');function isImportingAstNodeTypes(_0x4cac05){return _0x4cac05['some'](_0x2bbe33=>_0x2bbe33['type']===nodeTypes['importSpecifier']&&_0x2bbe33['imported']['type']===nodeTypes['identifier']&&_0x2bbe33['imported']['name']===identifierName);}__name(isImportingAstNodeTypes,'isImportingAstNodeTypes');function isMemberExpressionUsingAstNodeTypes(_0x1d2e75){return _0x1d2e75['object']['type']===nodeTypes['identifier']&&_0x1d2e75['object']['name']===identifierName||_0x1d2e75['object']['type']===nodeTypes['memberExpression']&&_0x1d2e75['object']['type']===nodeTypes['memberExpression']&&_0x1d2e75['object']['property']['type']===nodeTypes['identifier']&&_0x1d2e75['object']['property']['name']===identifierName;}__name(isMemberExpressionUsingAstNodeTypes,'isMemberExpressionUsingAstNodeTypes');
6
6
 
7
7
  export { mustNotImportAstNodeTypes as default, ruleName };
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+ import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
+ import { nodeTypes } from '@flint/infra/analysis';
4
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
5
+
6
+ var __defProp=Object['defineProperty'],__name=(_0x5dc6e5,_0xebb075)=>__defProp(_0x5dc6e5,'name',{'value':_0xebb075,'configurable':!![]});const ruleName='must-not-use-placeholders-in-eslint-rule-titles';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20placeholders\x20in\x20eslint\x20rule\x20titles\x0a\x0a####\x20Wrong\x0a\x0a###\x20**Must**\x20use\x20{{name}}\x20in\x20rule\x20title.\x0a\x0a####\x20Correct\x0a\x0a###\x20**Must**\x20use\x20static\x20text\x20in\x20rule\x20title.\x0a\x0a####\x20Why\x0a\x0aRule\x20titles\x20must\x20be\x20static.\x20Dynamic\x20placeholders\x20make\x20messages\x20unclear,\x20inconsistent,\x20and\x20harder\x20to\x20search\x20or\x20reference.\x0a',rule=createEslintRule(ruleName,ruleContent,__name(function create(_0x152f51){return {'VariableDeclarator'(_0xfb1f49){let _0x192bef=![];if(_0xfb1f49['id']['type']===nodeTypes['identifier']&&_0xfb1f49['id']['name']===eslintRuleSyntax['ruleContent']&&_0xfb1f49['init']&&_0xfb1f49['init']['type']===nodeTypes['templateLiteral']){const _0x4aa8b9=_0xfb1f49['init']['quasis']['map'](_0x3ae79a=>_0x3ae79a['value']['cooked']??'')['join'](''),_0x57e414=_0x4aa8b9['split']('\x0a')['map'](_0x462145=>_0x462145['trim']())['find'](_0x91bdc8=>_0x91bdc8['startsWith']('###'));_0x57e414&&_0x57e414['includes']('{{')&&_0x57e414['includes']('}}')&&(_0x192bef=!![]);}_0x192bef&&_0x152f51['report']({'node':_0xfb1f49['id'],'messageId':ruleName});}};},'create'));
7
+
8
+ export { rule as default, ruleName };
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+ import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
+ import { nodeTypes, isIdentifier } from '@flint/infra/analysis';
4
+ import { navigationMethodNames, eslintFixTypeNames } from '../../../base-repo/constants/internal-common-strings.js';
5
+ import { first } from '../../../fd-toolbox/server/collections/single-funcs.js';
6
+
7
+ var __defProp=Object['defineProperty'],__name=(_0x3f6357,_0x52600a)=>__defProp(_0x3f6357,'name',{'value':_0x52600a,'configurable':!![]});const ruleName='must-not-use-see-link-in-docs-if-type-available';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20see\x20link\x20in\x20docs\x20if\x20type\x20available.\x0a\x0a####\x20Wrong\x0a\x0aexport\x20interface\x20FooProps\x20{\x0a\x20\x20\x20\x20/**\x20Meta\x20data\x20that\x20is\x20used\x20in\x20Foo\x20component,\x20@see\x20{@link\x20FooMetaData}*/\x0a\x20\x20\x20\x20fooMetaData:\x20FooMetaData;\x0a}\x0a\x0a####\x20Correct\x0a\x0aexport\x20interface\x20FooProps\x20{\x0a\x20\x20\x20\x20/**\x20Meta\x20data\x20that\x20is\x20used\x20in\x20Foo\x20component\x20*/\x0a\x20\x20\x20\x20fooMetaData:\x20FooMetaData;\x0a}\x0a\x0a####\x20Why\x0a\x0aLinks\x20to\x20imported\x20interfaces\x20and\x20types\x20of\x20properties\x20are\x20added\x20automatically,\x20there\x27s\x20no\x20need\x20to\x20duplicate\x20link\x20in\x20docs\x20comments',constants={'patterns':{'seeLink':/@see{@link[^}]+}/},'fixTypes':{'removeRange':'removeRange','replace':navigationMethodNames['replace']}};var mustNotUseSeeLinkInDocsIfTypeAvailable = createEslintRule(ruleName,ruleContent,__name(function create(_0x2e2a0a){const _0xf06880=_0x2e2a0a['sourceCode'],_0x4d9b5=/@see\s+{@link\s+([^}\s]+)\s*}/;return {'TSPropertySignature'(_0x470484){const _0x44b847=_0x470484['typeAnnotation']?.['typeAnnotation'],_0x161365=_0xf06880['getCommentsBefore'](_0x470484);if(!_0x44b847||_0x161365['length']===0x116f+0x6*0x359+-0x235*0x11||_0x44b847['type']!==nodeTypes['TSTypeReference']||!isIdentifier(_0x44b847['typeName']))return;const _0x21b6f5=_0x44b847['typeName']['name'];_0x161365['filter'](_0x551fb9=>_0x551fb9['type']===nodeTypes['Block']&&_0x551fb9['value']['startsWith']('*'))['forEach'](_0x2e35b6=>{const _0x4397ef=_0x4d9b5['exec'](_0x2e35b6['value']);_0x4397ef&&_0x4397ef[-0xa23+0x18d6+0x39*-0x42]===_0x21b6f5&&_0x2e2a0a['report']({'node':_0x2e35b6,'messageId':ruleName,'fix'(_0x5bf6ad){const _0x4813ee=getFixInstruction(_0x2e35b6,_0x4397ef,_0xf06880);let _0x489ca1=[];return _0x4813ee['type']===constants['fixTypes']['replace']&&(_0x489ca1=[_0x5bf6ad['replaceText'](_0x2e35b6,_0x4813ee['text'])]),_0x4813ee['type']===constants['fixTypes']['removeRange']&&(_0x489ca1=[_0x5bf6ad['removeRange']([first(_0x4813ee['range']),_0x4813ee['range'][0x2143+-0x2e0+-0x1e62]])]),_0x489ca1;}});});}};},'create'),{'fixable':eslintFixTypeNames['code']});function createRemoveRangeFix(_0x37c23e,_0x433dff){const _0x3db878=[_0x37c23e,_0x433dff];return {'type':constants['fixTypes']['removeRange'],'range':_0x3db878};}__name(createRemoveRangeFix,'createRemoveRangeFix');function createReplaceFix(_0x471232){return {'type':constants['fixTypes']['replace'],'text':_0x471232};}__name(createReplaceFix,'createReplaceFix');function getStandaloneFix(_0x46bb36,_0x15c6b0){const _0x506b20=_0x15c6b0['getIndexFromLoc']({'line':_0x46bb36['loc']['start']['line'],'column':0x0});let _0x308534=_0x46bb36['range'][0x16ea+-0x1750+0x67*0x1];return _0x15c6b0['text']['charAt'](_0x308534)==='\x0a'&&(_0x308534+=-0x4*0x4b7+0x26b6+-0x13d9),createRemoveRangeFix(_0x506b20,_0x308534);}__name(getStandaloneFix,'getStandaloneFix');function getMultilineFix(_0x3decd2,_0x25546f,_0xe9c3e){const _0x3ba692=_0x3decd2['split']('\x0a'),_0xc77c8d=_0x3ba692['findIndex'](_0x4857a9=>_0x4857a9['includes'](_0x25546f));let _0x143fcd;if(_0xc77c8d!==-(-0x1276+-0x1e55+0x30cc)){const _0x442128=_0x3ba692[_0xc77c8d],_0x326aeb=_0xe9c3e(_0x442128)['replace'](constants['patterns']['seeLink'],'');if(!_0x326aeb){_0x3ba692['splice'](_0xc77c8d,-0x4*0x70+0xdfd*0x1+-0xc*0x105);const _0xea688b=_0x3ba692['filter']((_0x262a6a,_0x11d474)=>{const _0x35a45f=_0x11d474===0x2692+-0x47a*0x1+-0x2218||_0x11d474===_0x3ba692['length']-(-0x346*-0x9+-0x19a1+-0x3d4);if(_0x35a45f)return !![];return _0x262a6a['trim']()!=='*';});_0x143fcd=createReplaceFix(_0xea688b['join']('\x0a'));}}return _0x143fcd;}__name(getMultilineFix,'getMultilineFix');function getInlineFix(_0x2bb9ea,_0x1ffdb8,_0x59b18a){const _0x3f07b3=_0x1ffdb8['indexOf'](_0x59b18a),_0x4f967e=first(_0x2bb9ea['range'])+_0x3f07b3,_0x3f2fb3=_0x4f967e+_0x59b18a['length'],_0x14cc53=createRemoveRangeFix(_0x4f967e,_0x3f2fb3);return _0x14cc53;}__name(getInlineFix,'getInlineFix');function getFixInstruction(_0x30aedb,_0x55014f,_0x1c8108){const _0x5952ea=_0x1c8108['getText'](_0x30aedb),_0x3e446d=first(_0x55014f),_0xbf61c6=__name(_0x27837b=>_0x27837b['replace'](/[/*\s]/g,''),'stripCommentDecorations'),_0x1a64c9=_0xbf61c6(_0x5952ea)['replace'](constants['patterns']['seeLink'],'');let _0x3d5d14=getInlineFix(_0x30aedb,_0x5952ea,_0x3e446d);!_0x1a64c9&&(_0x3d5d14=getStandaloneFix(_0x30aedb,_0x1c8108));if(_0x1a64c9&&_0x5952ea['includes']('\x0a')){const _0x1da87e=getMultilineFix(_0x5952ea,_0x3e446d,_0xbf61c6);_0x1da87e&&(_0x3d5d14=_0x1da87e);}return _0x3d5d14;}__name(getFixInstruction,'getFixInstruction');
8
+
9
+ export { mustNotUseSeeLinkInDocsIfTypeAvailable as default, ruleName };
@@ -1,7 +1,8 @@
1
1
  'use strict';
2
2
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
3
  import { isTestFile, isIdentifier, isStringLiteral, isNameMatch, isLiteral } from '@flint/infra/analysis';
4
+ import { eslintProperties } from '@flint/infra/constants/rules-meta';
4
5
 
5
- var __defProp=Object['defineProperty'],__name=(_0x4ffcc7,_0x23e008)=>__defProp(_0x4ffcc7,'name',{'value':_0x23e008,'configurable':!![]});const ruleName='must-not-use-the-single-error-property-in-test';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20the\x20single\x20`error`\x20property\x20in\x20test\x20files.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20invalidCases:\x20RuleInvalidCase[]\x20=\x20[\x0a\x20\x20\x20\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20`\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20foo\x20=\x20\x22bar\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20`,\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x20error:\x201\x20},\x0a\x20\x20\x20\x20],\x0a];\x0a\x0a####\x20Correct\x0a\x0aconst\x20invalidCases:\x20RuleInvalidCase[]\x20=\x20[\x0a\x20\x20\x20\x20`\x0a\x20\x20\x20\x20const\x20foo\x20=\x20\x22bar\x22;\x0a\x20\x20\x20\x20`,\x0a];\x0a\x0a####\x20Why\x0a\x0aThis\x20is\x20the\x20default\x20behavior.';var mustNotUseTheSingleErrorPropertyInTest = createEslintRule(ruleName,ruleContent,__name(function create(_0x48cf4b){return {'Property'(_0x282bbd){isTestFile(_0x48cf4b['filename'])&&(isIdentifier(_0x282bbd['key'])||isStringLiteral(_0x282bbd['key']))&&isNameMatch(_0x282bbd['key'],'error')&&isLiteral(_0x282bbd['value'])&&_0x282bbd['value']['value']===-0xf9d*-0x1+0xa9*0x39+-0x353d&&_0x48cf4b['report']({'node':_0x282bbd,'messageId':ruleName});}};},'create'));
6
+ var __defProp=Object['defineProperty'],__name=(_0x1cbc38,_0xb9cf86)=>__defProp(_0x1cbc38,'name',{'value':_0xb9cf86,'configurable':!![]});const ruleName='must-not-use-the-single-error-property-in-test';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20the\x20single\x20`error`\x20property\x20in\x20test\x20files.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20invalidCases:\x20RuleInvalidCase[]\x20=\x20[\x0a\x20\x20\x20\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20`\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20foo\x20=\x20\x22bar\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20`,\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x20error:\x201\x20},\x0a\x20\x20\x20\x20],\x0a];\x0a\x0a####\x20Correct\x0a\x0aconst\x20invalidCases:\x20RuleInvalidCase[]\x20=\x20[\x0a\x20\x20\x20\x20`\x0a\x20\x20\x20\x20const\x20foo\x20=\x20\x22bar\x22;\x0a\x20\x20\x20\x20`,\x0a];\x0a\x0a####\x20Why\x0a\x0aThis\x20is\x20the\x20default\x20behavior.';var mustNotUseTheSingleErrorPropertyInTest = createEslintRule(ruleName,ruleContent,__name(function create(_0x5597ef){return {'Property'(_0x24aacb){isTestFile(_0x5597ef['filename'])&&(isIdentifier(_0x24aacb['key'])||isStringLiteral(_0x24aacb['key']))&&isNameMatch(_0x24aacb['key'],eslintProperties['error'])&&isLiteral(_0x24aacb['value'])&&_0x24aacb['value']['value']===-0x1135+0x955+0x7e1&&_0x5597ef['report']({'node':_0x24aacb,'messageId':ruleName});}};},'create'));
6
7
 
7
8
  export { mustNotUseTheSingleErrorPropertyInTest as default, ruleName };
@@ -1,17 +1,31 @@
1
- export declare const ruleName = "must-use-better-error-message-for-custom-rules";
2
- export declare const errorMessages: {
3
- readonly mustStartWithNewline: "ruleContent must start with a newline character";
4
- readonly mustNotDuplicateRuleName: "ruleContent must not start with duplicated ruleName (createEslintRule adds it automatically)";
5
- readonly colonAfterHeader: "colon is not allowed after markdown header";
6
- readonly wrongMustHaveHeaderOnly: "'#### Wrong' must be header-only line";
7
- readonly wrongMustHaveEmptyLineAfterHeader: "'#### Wrong' must be followed by one empty line";
8
- readonly correctMustHaveHeaderOnly: "'#### Correct' must be header-only line";
9
- readonly correctMustHaveEmptyLineAfterHeader: "'#### Correct' must be followed by one empty line";
10
- readonly whyMustHaveHeaderOnly: "'#### Why' must be header-only line";
11
- readonly whyMustHaveEmptyLineAfterHeader: "'#### Why' must be followed by one empty line";
12
- readonly mustContainRequiredHeaders: "required headers are missing: '#### Wrong', '#### Correct', '#### Why'";
13
- readonly requiredHeadersMustBeUnique: "required headers must appear exactly once: '#### Wrong', '#### Correct', '#### Why'";
14
- readonly requiredHeadersMustBeInStrictOrder: "required headers must follow strict order: '#### Wrong' -> '#### Correct' -> '#### Why'";
1
+ export declare const constants: {
2
+ readonly errorMessages: {
3
+ readonly mustStartWithNewline: "ruleContent must start with a newline character";
4
+ readonly mustNotDuplicateRuleName: "ruleContent must not start with duplicated ruleName (createEslintRule adds it automatically)";
5
+ readonly colonAfterHeader: "colon is not allowed after markdown header";
6
+ readonly wrongMustHaveHeaderOnly: "'#### Wrong' must be header-only line";
7
+ readonly wrongMustHaveEmptyLineAfterHeader: "'#### Wrong' must be followed by one empty line";
8
+ readonly correctMustHaveHeaderOnly: "'#### Correct' must be header-only line";
9
+ readonly correctMustHaveEmptyLineAfterHeader: "'#### Correct' must be followed by one empty line";
10
+ readonly whyMustHaveHeaderOnly: "'#### Why' must be header-only line";
11
+ readonly whyMustHaveEmptyLineAfterHeader: "'#### Why' must be followed by one empty line";
12
+ readonly mustContainRequiredHeaders: "required headers are missing: '#### Wrong', '#### Correct', '#### Why'";
13
+ readonly requiredHeadersMustBeUnique: "required headers must appear exactly once: '#### Wrong', '#### Correct', '#### Why'";
14
+ readonly requiredHeadersMustBeInStrictOrder: "required headers must follow strict order: '#### Wrong' -> '#### Correct' -> '#### Why'";
15
+ };
16
+ readonly patterns: {
17
+ readonly ruleName: any;
18
+ readonly ruleContent: any;
19
+ readonly headerPrefix: "#";
20
+ readonly wrongHeader: "#### Wrong";
21
+ readonly correctHeader: "#### Correct";
22
+ readonly whyHeader: "#### Why";
23
+ readonly escapedFence: "\\`\\`\\`";
24
+ readonly fence: "```";
25
+ readonly newLine: "\n";
26
+ readonly emptyLine: "";
27
+ };
15
28
  };
29
+ export declare const ruleName = "must-use-better-error-message-for-custom-rules";
16
30
  declare const _default: any;
17
31
  export default _default;
@@ -1,7 +1,9 @@
1
1
  'use strict';
2
2
  import { isVariableDeclaration, isExportNamedVariableDeclaration, isIdentifier, isNameMatch, isStringLiteral, isTemplateLiteral } from '@flint/infra/analysis';
3
3
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
4
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
5
+ import { firstOrUndefined } from '../../../fd-toolbox/server/collections/single-funcs.js';
4
6
 
5
- var __defProp=Object['defineProperty'],__name=(_0x2d21f6,_0x5aaadd)=>__defProp(_0x2d21f6,'name',{'value':_0x5aaadd,'configurable':!![]});const ruleName='must-use-better-error-message-for-custom-rules';const dynamicMessage='Error\x20message\x20has\x20formatting\x20issues:\x20{{issues}}.',ruleContent='\x0a###\x20**Must**\x20use\x20proper\x20error\x20message\x20format\x20for\x20custom\x20rules.\x0a\x0a####\x20Wrong\x0a\x0aexport\x20const\x20ruleName\x20=\x20\x22name-of-rule\x22;\x0aconst\x20ruleContent\x20=\x20`name-of-rule\x0a####\x20**Must**\x20not\x20title\x0a\x0adescription\x0a\x0a###\x20Wrong\x0a\x0aExample\x20of\x20wrong\x20code\x0a\x0a###\x20Correct\x0a\x0aExample\x20of\x20correct\x20code\x0a`;\x0a\x0a####\x20Correct\x0a\x0aexport\x20const\x20ruleName\x20=\x20\x22name-of-rule\x22;\x0aconst\x20ruleContent\x20=\x20`\x0a###\x20**Must\x20(not)**\x20title.\x0a\x0adescription.(optional)\x0a\x0a####\x20Wrong\x0a\x0aExample\x20of\x20wrong\x20code\x0a\x0a####\x20Correct\x0a\x0aExample\x20of\x20correct\x20code\x0a\x0a####\x20Why\x0a\x0aWhy\x20we\x20need\x20this\x20rule`;\x0a\x0a####\x20Why\x0a\x0aError\x20messages\x20must\x20follow\x20a\x20consistent\x20format\x20to\x20improve\x20clarity\x20and\x20maintainability.',constants={'errorMessages':{'mustStartWithNewline':'ruleContent\x20must\x20start\x20with\x20a\x20newline\x20character','mustNotDuplicateRuleName':'ruleContent\x20must\x20not\x20start\x20with\x20duplicated\x20ruleName\x20(createEslintRule\x20adds\x20it\x20automatically)','colonAfterHeader':'colon\x20is\x20not\x20allowed\x20after\x20markdown\x20header','wrongMustHaveHeaderOnly':'\x27####\x20Wrong\x27\x20must\x20be\x20header-only\x20line','wrongMustHaveEmptyLineAfterHeader':'\x27####\x20Wrong\x27\x20must\x20be\x20followed\x20by\x20one\x20empty\x20line','correctMustHaveHeaderOnly':'\x27####\x20Correct\x27\x20must\x20be\x20header-only\x20line','correctMustHaveEmptyLineAfterHeader':'\x27####\x20Correct\x27\x20must\x20be\x20followed\x20by\x20one\x20empty\x20line','whyMustHaveHeaderOnly':'\x27####\x20Why\x27\x20must\x20be\x20header-only\x20line','whyMustHaveEmptyLineAfterHeader':'\x27####\x20Why\x27\x20must\x20be\x20followed\x20by\x20one\x20empty\x20line','mustContainRequiredHeaders':'required\x20headers\x20are\x20missing:\x20\x27####\x20Wrong\x27,\x20\x27####\x20Correct\x27,\x20\x27####\x20Why\x27','requiredHeadersMustBeUnique':'required\x20headers\x20must\x20appear\x20exactly\x20once:\x20\x27####\x20Wrong\x27,\x20\x27####\x20Correct\x27,\x20\x27####\x20Why\x27','requiredHeadersMustBeInStrictOrder':'required\x20headers\x20must\x20follow\x20strict\x20order:\x20\x27####\x20Wrong\x27\x20->\x20\x27####\x20Correct\x27\x20->\x20\x27####\x20Why\x27'},'patterns':{'ruleName':'ruleName','ruleContent':'ruleContent','headerPrefix':'#','wrongHeader':'####\x20Wrong','correctHeader':'####\x20Correct','whyHeader':'####\x20Why','escapedFence':'\x5c`\x5c`\x5c`','fence':'```','newLine':'\x0a','emptyLine':''}};const errorMessages=constants['errorMessages'];const patterns=constants['patterns'];var mustUseBetterErrorMessageForCustomRules = createEslintRule(ruleName,ruleContent,_0x126203=>{return {'Program'({body:_0x2cecc0}){if(_0x126203['filename']['includes'](ruleName))return;const {currentRuleName:_0x52d54d,currentRuleContentTemplate:_0x3393b7}=collectRuleConstants(_0x2cecc0);if(!_0x3393b7||_0x3393b7['quasis']['length']===-0x400+-0x1f8d+0x238d)return;const _0x34cc2a=reconstructTemplateText(_0x3393b7['quasis']),_0x3f2005=validateRuleContents(_0x34cc2a,_0x52d54d);if(_0x3f2005['length']===0x3ae*0x1+-0x1771+0x13c3)return;const _0x47646c=_0x3f2005['map'](_0x2c2922=>_0x2c2922['line']?_0x2c2922['type']+'\x20(line\x20'+_0x2c2922['line']+')':_0x2c2922['type'])['join'](',\x20');_0x126203['report']({'node':_0x3393b7,'messageId':ruleName,'data':{'issues':_0x47646c}});}};},{'dynamicMessage':dynamicMessage});function normalizeNewlines(_0x1e3585){return _0x1e3585['replace'](/\r\n?/g,patterns['newLine']);}__name(normalizeNewlines,'normalizeNewlines');function reconstructTemplateText(_0x1149e3){return _0x1149e3['map'](_0x2e23fd=>_0x2e23fd['tail']?_0x2e23fd['value']['raw']:_0x2e23fd['value']['raw']+'{{EXPRESSION}}')['join'](patterns['emptyLine']);}__name(reconstructTemplateText,'reconstructTemplateText');function extractVariableDeclaration(_0x426914){if(isVariableDeclaration(_0x426914))return _0x426914;if(isExportNamedVariableDeclaration(_0x426914))return _0x426914['declaration'];return void(0x4ef*0x7+0x11*0x10d+0x2c2*-0x13);}__name(extractVariableDeclaration,'extractVariableDeclaration');function assignRuleConstantFromDeclarator(_0xb60ec,_0x115e60){if(!isIdentifier(_0xb60ec['id'])||!_0xb60ec['init'])return;if(isNameMatch(_0xb60ec['id'],patterns['ruleName'])&&isStringLiteral(_0xb60ec['init'])){_0x115e60['currentRuleName']=_0xb60ec['init']['value'];return;}isNameMatch(_0xb60ec['id'],patterns['ruleContent'])&&isTemplateLiteral(_0xb60ec['init'])&&(_0x115e60['currentRuleContentTemplate']=_0xb60ec['init']);}__name(assignRuleConstantFromDeclarator,'assignRuleConstantFromDeclarator');function collectRuleConstants(_0x375bdf){const _0x14da77={};for(const _0x4d2062 of _0x375bdf){const _0x153c5d=extractVariableDeclaration(_0x4d2062);if(_0x153c5d)for(const _0x196220 of _0x153c5d['declarations']){assignRuleConstantFromDeclarator(_0x196220,_0x14da77);}}return _0x14da77;}__name(collectRuleConstants,'collectRuleConstants');function isFenceLine(_0x14f2f2){return _0x14f2f2['startsWith'](patterns['escapedFence'])||_0x14f2f2['startsWith'](patterns['fence']);}__name(isFenceLine,'isFenceLine');function getNextLine(_0x5c3669,_0x7dc798){return _0x5c3669[_0x7dc798+(0xee1+-0x1*-0x3d1+0x37*-0x57)];}__name(getNextLine,'getNextLine');function isMissingEmptyLineAfterHeader(_0x5c50cc,_0x46f125){const _0x3022c7=getNextLine(_0x5c50cc,_0x46f125);return _0x3022c7['trim']()!==patterns['emptyLine'];}__name(isMissingEmptyLineAfterHeader,'isMissingEmptyLineAfterHeader');function validateRequiredHeaderLine(_0x2531bb,_0x5e3b2e,_0x1b6230,_0x229202,_0x15d6cd,_0x6cbca8,_0x1eea8c){if(!_0x5e3b2e['startsWith'](_0x15d6cd))return;if(_0x5e3b2e!==_0x15d6cd){_0x229202['push']({'type':_0x6cbca8,'line':_0x1b6230+(-0x2*0x11ef+0x3*0xb73+0x186)});return;}isMissingEmptyLineAfterHeader(_0x2531bb,_0x1b6230)&&_0x229202['push']({'type':_0x1eea8c,'line':_0x1b6230+(0x3cf*0x3+-0x557+-0x615*0x1)});}__name(validateRequiredHeaderLine,'validateRequiredHeaderLine');function collectRequiredHeadersOccurrences(_0x29ebc6){const _0x818d58=[patterns['wrongHeader'],patterns['correctHeader'],patterns['whyHeader']],_0xae1280=new Map();for(const _0x18519a of _0x818d58){_0xae1280['set'](_0x18519a,[]);}let _0xebea07=![];for(let _0x11011c=-0x4bd*0x5+-0x1*0xe63+0x2614;_0x11011c<_0x29ebc6['length'];_0x11011c++){const _0x40b5ee=_0x29ebc6[_0x11011c]['trim'](),_0x56f343=isFenceLine(_0x40b5ee);if(_0x56f343)_0xebea07=!_0xebea07;else !_0xebea07&&_0xae1280['has'](_0x40b5ee)&&_0xae1280['get'](_0x40b5ee)?.['push'](_0x11011c+(0x1b53*-0x1+0x31*-0x75+-0x1093*-0x3));}return {'requiredHeaders':_0x818d58,'headersOccurrences':_0xae1280};}__name(collectRequiredHeadersOccurrences,'collectRequiredHeadersOccurrences');function getMissingHeaders(_0x2d06ce,_0x55138d){return _0x2d06ce['filter'](_0x49dd29=>(_0x55138d['get'](_0x49dd29)?.['length']??0xcf5*-0x3+-0x2*-0x1b8+0x236f)===0x1fa4+-0x1198+-0x1f*0x74);}__name(getMissingHeaders,'getMissingHeaders');function getDuplicatedHeaders(_0x190775,_0x2c34c5){return _0x190775['filter'](_0x161c44=>(_0x2c34c5['get'](_0x161c44)?.['length']??-0x17f3+-0x1*-0x1fcc+-0x7d9)>-0x213*0xb+-0x235b+-0x1*-0x3a2d);}__name(getDuplicatedHeaders,'getDuplicatedHeaders');function getFirstRequiredHeaderLines(_0x6bbad9){const _0x1a0768=_0x6bbad9['get'](patterns['wrongHeader'])?.[0x17*-0x107+0x1*0x229d+0x25*-0x4c],_0x3b454c=_0x6bbad9['get'](patterns['correctHeader'])?.[-0x7aa+0x45*0x9+0x53d],_0x4c5c4e=_0x6bbad9['get'](patterns['whyHeader'])?.[-0x89c+0x3*0xcc1+0x1da7*-0x1];return {'firstWrongLine':_0x1a0768,'firstCorrectLine':_0x3b454c,'firstWhyLine':_0x4c5c4e};}__name(getFirstRequiredHeaderLines,'getFirstRequiredHeaderLines');function getRequiredHeadersSequenceIssues(_0x5944fe){const _0x1e44ce=[],{requiredHeaders:_0x21664a,headersOccurrences:_0x9f5718}=collectRequiredHeadersOccurrences(_0x5944fe),_0x4d4bd1=getMissingHeaders(_0x21664a,_0x9f5718);_0x4d4bd1['length']>0x9*0x112+0x20c9+-0x2a6b&&_0x1e44ce['push']({'type':errorMessages['mustContainRequiredHeaders']+':\x20'+_0x4d4bd1['join'](',\x20')});const _0xc3d79d=getDuplicatedHeaders(_0x21664a,_0x9f5718);_0xc3d79d['length']>0x1*0x7b+-0x1d65+0x1cea&&_0x1e44ce['push']({'type':errorMessages['requiredHeadersMustBeUnique']+':\x20'+_0xc3d79d['join'](',\x20')});const {firstWrongLine:_0x210bb8,firstCorrectLine:_0x3cd017,firstWhyLine:_0x524e9e}=getFirstRequiredHeaderLines(_0x9f5718);return _0x210bb8&&_0x3cd017&&_0x524e9e&&!(_0x210bb8<_0x3cd017&&_0x3cd017<_0x524e9e)&&_0x1e44ce['push']({'type':errorMessages['requiredHeadersMustBeInStrictOrder'],'line':Math['min'](_0x210bb8,_0x3cd017,_0x524e9e)}),_0x1e44ce;}__name(getRequiredHeadersSequenceIssues,'getRequiredHeadersSequenceIssues');function getHeaderValidationIssues(_0x42794a){const _0x15b302=[];let _0x385ae7=![];const _0x5c6395=[{'requiredHeader':patterns['wrongHeader'],'headerOnlyError':errorMessages['wrongMustHaveHeaderOnly'],'emptyLineAfterHeaderError':errorMessages['wrongMustHaveEmptyLineAfterHeader']},{'requiredHeader':patterns['correctHeader'],'headerOnlyError':errorMessages['correctMustHaveHeaderOnly'],'emptyLineAfterHeaderError':errorMessages['correctMustHaveEmptyLineAfterHeader']},{'requiredHeader':patterns['whyHeader'],'headerOnlyError':errorMessages['whyMustHaveHeaderOnly'],'emptyLineAfterHeaderError':errorMessages['whyMustHaveEmptyLineAfterHeader']}];for(let _0x5819f6=0xaa*-0x1e+-0x1b1b+0x2f07;_0x5819f6<_0x42794a['length'];_0x5819f6++){const _0x264475=_0x42794a[_0x5819f6]['trim']();if(isFenceLine(_0x264475))_0x385ae7=!_0x385ae7;else !_0x385ae7&&(_0x264475['startsWith'](patterns['headerPrefix'])&&_0x264475['endsWith'](':')&&_0x15b302['push']({'type':errorMessages['colonAfterHeader'],'line':_0x5819f6+(-0x4f*0x3b+-0xd6a+0x1fa0)}),_0x5c6395['forEach'](({requiredHeader:_0x238812,headerOnlyError:_0x4be6fc,emptyLineAfterHeaderError:_0x5ebbbf})=>{validateRequiredHeaderLine(_0x42794a,_0x264475,_0x5819f6,_0x15b302,_0x238812,_0x4be6fc,_0x5ebbbf);}));}return _0x15b302['push'](...getRequiredHeadersSequenceIssues(_0x42794a)),_0x15b302;}__name(getHeaderValidationIssues,'getHeaderValidationIssues');function validateRuleContents(_0x5489fd,_0x2af8ec){const _0xb8252c=[],_0x2fe73c=normalizeNewlines(_0x5489fd);!_0x2fe73c['startsWith'](patterns['newLine'])&&_0xb8252c['push']({'type':errorMessages['mustStartWithNewline']});const _0x4de62c=_0x2fe73c['startsWith'](patterns['newLine'])?_0x2fe73c['slice'](-0xd4c*0x1+0x11ef+-0x4a2):_0x2fe73c;return _0x2af8ec&&_0x4de62c['startsWith'](_0x2af8ec)&&_0xb8252c['push']({'type':errorMessages['mustNotDuplicateRuleName'],'line':0x1}),_0xb8252c['push'](...getHeaderValidationIssues(_0x2fe73c['split'](patterns['newLine']))),_0xb8252c;}__name(validateRuleContents,'validateRuleContents');
7
+ var __defProp=Object['defineProperty'],__name=(_0x2c0799,_0x573889)=>__defProp(_0x2c0799,'name',{'value':_0x573889,'configurable':!![]});const constants={'errorMessages':{'mustStartWithNewline':'ruleContent\x20must\x20start\x20with\x20a\x20newline\x20character','mustNotDuplicateRuleName':'ruleContent\x20must\x20not\x20start\x20with\x20duplicated\x20ruleName\x20(createEslintRule\x20adds\x20it\x20automatically)','colonAfterHeader':'colon\x20is\x20not\x20allowed\x20after\x20markdown\x20header','wrongMustHaveHeaderOnly':'\x27####\x20Wrong\x27\x20must\x20be\x20header-only\x20line','wrongMustHaveEmptyLineAfterHeader':'\x27####\x20Wrong\x27\x20must\x20be\x20followed\x20by\x20one\x20empty\x20line','correctMustHaveHeaderOnly':'\x27####\x20Correct\x27\x20must\x20be\x20header-only\x20line','correctMustHaveEmptyLineAfterHeader':'\x27####\x20Correct\x27\x20must\x20be\x20followed\x20by\x20one\x20empty\x20line','whyMustHaveHeaderOnly':'\x27####\x20Why\x27\x20must\x20be\x20header-only\x20line','whyMustHaveEmptyLineAfterHeader':'\x27####\x20Why\x27\x20must\x20be\x20followed\x20by\x20one\x20empty\x20line','mustContainRequiredHeaders':'required\x20headers\x20are\x20missing:\x20\x27####\x20Wrong\x27,\x20\x27####\x20Correct\x27,\x20\x27####\x20Why\x27','requiredHeadersMustBeUnique':'required\x20headers\x20must\x20appear\x20exactly\x20once:\x20\x27####\x20Wrong\x27,\x20\x27####\x20Correct\x27,\x20\x27####\x20Why\x27','requiredHeadersMustBeInStrictOrder':'required\x20headers\x20must\x20follow\x20strict\x20order:\x20\x27####\x20Wrong\x27\x20->\x20\x27####\x20Correct\x27\x20->\x20\x27####\x20Why\x27'},'patterns':{'ruleName':eslintRuleSyntax['ruleName'],'ruleContent':eslintRuleSyntax['ruleContent'],'headerPrefix':'#','wrongHeader':'####\x20Wrong','correctHeader':'####\x20Correct','whyHeader':'####\x20Why','escapedFence':'\x5c`\x5c`\x5c`','fence':'```','newLine':'\x0a','emptyLine':''}};const ruleName='must-use-better-error-message-for-custom-rules';const ruleContent='\x0a###\x20**Must**\x20use\x20proper\x20error\x20message\x20format\x20for\x20custom\x20rules.\x0a\x0a####\x20Wrong\x0a\x0aexport\x20const\x20ruleName\x20=\x20\x22name-of-rule\x22;\x0aconst\x20ruleContent\x20=\x20`name-of-rule\x0a####\x20**Must**\x20not\x20title\x0a\x0adescription\x0a\x0a###\x20Wrong\x0a\x0aExample\x20of\x20wrong\x20code\x0a\x0a###\x20Correct\x0a\x0aExample\x20of\x20correct\x20code\x0a`;\x0a\x0a####\x20Correct\x0a\x0aexport\x20const\x20ruleName\x20=\x20\x22name-of-rule\x22;\x0aconst\x20ruleContent\x20=\x20`\x0a###\x20**Must\x20(not)**\x20title.\x0a\x0adescription.(optional)\x0a\x0a####\x20Wrong\x0a\x0aExample\x20of\x20wrong\x20code\x0a\x0a####\x20Correct\x0a\x0aExample\x20of\x20correct\x20code\x0a\x0a####\x20Why\x0a\x0aWhy\x20we\x20need\x20this\x20rule`;\x0a\x0a####\x20Why\x0a\x0aError\x20messages\x20must\x20follow\x20a\x20consistent\x20format\x20to\x20improve\x20clarity\x20and\x20maintainability.',patterns=constants['patterns'];var mustUseBetterErrorMessageForCustomRules = createEslintRule(ruleName,ruleContent,_0x188b7d=>{return {'Program'(_0x1c4d32){if(_0x188b7d['filename']['includes'](ruleName))return;const {currentRuleName:_0xbf667e,currentRuleContentTemplate:_0x4578fd}=collectRuleConstants(_0x1c4d32['body']);if(!_0x4578fd||_0x4578fd['quasis']['length']===-0x25f+-0x224*-0x6+0x17f*-0x7)return;const _0x52293a=reconstructTemplateText(_0x4578fd['quasis']),_0x42236c=validateRuleContents(_0x52293a,_0xbf667e);if(_0x42236c['length']===-0x1f43+-0x1c1*-0xa+0xdb9)return;const _0x2b5eeb=_0x42236c['map'](_0x4a0ee7=>_0x4a0ee7['line']?_0x4a0ee7['type']+'\x20(line\x20'+_0x4a0ee7['line']+')':_0x4a0ee7['type'])['join'](',\x20');_0x188b7d['report']({'node':_0x4578fd,'messageId':ruleName,'data':{'issues':_0x2b5eeb}});}};},{'dynamicMessage':'Error\x20message\x20has\x20formatting\x20issues:\x20{{issues}}.'});function normalizeNewlines(_0x3a9619){return _0x3a9619['replace'](/\r\n?/g,patterns['newLine']);}__name(normalizeNewlines,'normalizeNewlines');function reconstructTemplateText(_0x2539a5){return _0x2539a5['map'](_0x2fdc4f=>_0x2fdc4f['tail']?_0x2fdc4f['value']['raw']:_0x2fdc4f['value']['raw']+'{{EXPRESSION}}')['join'](patterns['emptyLine']);}__name(reconstructTemplateText,'reconstructTemplateText');function extractVariableDeclaration(_0x441b08){if(isVariableDeclaration(_0x441b08))return _0x441b08;if(isExportNamedVariableDeclaration(_0x441b08))return _0x441b08['declaration'];return void(0x3*-0xa66+-0x190c+0x2*0x1c1f);}__name(extractVariableDeclaration,'extractVariableDeclaration');function assignRuleConstantFromDeclarator(_0x46975a,_0x17bef4){if(!isIdentifier(_0x46975a['id'])||!_0x46975a['init'])return;if(isNameMatch(_0x46975a['id'],patterns['ruleName'])&&isStringLiteral(_0x46975a['init'])){_0x17bef4['currentRuleName']=_0x46975a['init']['value'];return;}isNameMatch(_0x46975a['id'],patterns['ruleContent'])&&isTemplateLiteral(_0x46975a['init'])&&(_0x17bef4['currentRuleContentTemplate']=_0x46975a['init']);}__name(assignRuleConstantFromDeclarator,'assignRuleConstantFromDeclarator');function collectRuleConstants(_0x39eb9f){const _0x5ec178={};for(const _0x1c8d52 of _0x39eb9f){const _0x1dcc2b=extractVariableDeclaration(_0x1c8d52);if(_0x1dcc2b)for(const _0x5b472b of _0x1dcc2b['declarations']){assignRuleConstantFromDeclarator(_0x5b472b,_0x5ec178);}}return _0x5ec178;}__name(collectRuleConstants,'collectRuleConstants');function isFenceLine(_0x5cc5c4){return _0x5cc5c4['startsWith'](patterns['escapedFence'])||_0x5cc5c4['startsWith'](patterns['fence']);}__name(isFenceLine,'isFenceLine');function getNextLine(_0x181152,_0x43c43c){return _0x181152[_0x43c43c+(-0x1761+0x1*-0x24a6+0x3c08)];}__name(getNextLine,'getNextLine');function isMissingEmptyLineAfterHeader(_0x14dff5,_0x3c781a){const _0x17129e=getNextLine(_0x14dff5,_0x3c781a);return _0x17129e['trim']()!==patterns['emptyLine'];}__name(isMissingEmptyLineAfterHeader,'isMissingEmptyLineAfterHeader');function validateRequiredHeaderLine(_0x3715bf,_0x54ea50,_0x46d678,_0x7b2232,_0x56c87d,_0x42a32d,_0xd3a08b){if(!_0x54ea50['startsWith'](_0x56c87d))return;if(_0x54ea50!==_0x56c87d){_0x7b2232['push']({'type':_0x42a32d,'line':_0x46d678+(-0x9*0x10f+-0x19d9+-0x3*-0xbcb)});return;}isMissingEmptyLineAfterHeader(_0x3715bf,_0x46d678)&&_0x7b2232['push']({'type':_0xd3a08b,'line':_0x46d678+(0xfa3+-0x299+0xd09*-0x1)});}__name(validateRequiredHeaderLine,'validateRequiredHeaderLine');function collectRequiredHeadersOccurrences(_0x30491e){const _0xea3277=[patterns['wrongHeader'],patterns['correctHeader'],patterns['whyHeader']],_0x3ab79d=new Map();for(const _0x8a8650 of _0xea3277){_0x3ab79d['set'](_0x8a8650,[]);}let _0x311028=![];for(let _0x511393=-0x4*-0x154+0xef9*-0x2+0x18a2;_0x511393<_0x30491e['length'];_0x511393++){const _0x42251e=_0x30491e[_0x511393]['trim'](),_0x4551fa=isFenceLine(_0x42251e);if(_0x4551fa)_0x311028=!_0x311028;else !_0x311028&&_0x3ab79d['has'](_0x42251e)&&_0x3ab79d['get'](_0x42251e)?.['push'](_0x511393+(-0x22f3+-0xd51+0x3045));}return {'requiredHeaders':_0xea3277,'headersOccurrences':_0x3ab79d};}__name(collectRequiredHeadersOccurrences,'collectRequiredHeadersOccurrences');function getMissingHeaders(_0x524d2f,_0x4b3594){return _0x524d2f['filter'](_0x47b5cf=>(_0x4b3594['get'](_0x47b5cf)?.['length']??-0x3c0+0x4f9*-0x1+0x8b9)===0x7d+-0xfa1+0xf24);}__name(getMissingHeaders,'getMissingHeaders');function getDuplicatedHeaders(_0x1d3fe8,_0x5851cc){return _0x1d3fe8['filter'](_0x29cb72=>(_0x5851cc['get'](_0x29cb72)?.['length']??0x5c6*-0x1+-0x144*0x1d+0x2a7a)>0x4*0x2b7+0xa32+0x11*-0x13d);}__name(getDuplicatedHeaders,'getDuplicatedHeaders');function getFirstRequiredHeaderLines(_0x9ad003){const _0x2db0eb=firstOrUndefined(_0x9ad003['get'](patterns['wrongHeader'])??[]),_0xc67d89=firstOrUndefined(_0x9ad003['get'](patterns['correctHeader'])??[]),_0x3922dd=firstOrUndefined(_0x9ad003['get'](patterns['whyHeader'])??[]);return {'firstWrongLine':_0x2db0eb,'firstCorrectLine':_0xc67d89,'firstWhyLine':_0x3922dd};}__name(getFirstRequiredHeaderLines,'getFirstRequiredHeaderLines');function getRequiredHeadersSequenceIssues(_0x377b91){const _0x1489f6=[],{requiredHeaders:_0x598a8e,headersOccurrences:_0x4b8afe}=collectRequiredHeadersOccurrences(_0x377b91),_0x5b454e=getMissingHeaders(_0x598a8e,_0x4b8afe);_0x5b454e['length']>-0x89a+-0x7db*-0x2+0x23*-0x34&&_0x1489f6['push']({'type':constants['errorMessages']['mustContainRequiredHeaders']+':\x20'+_0x5b454e['join'](',\x20')});const _0x3c267d=getDuplicatedHeaders(_0x598a8e,_0x4b8afe);_0x3c267d['length']>0xa5a+0x7a7*0x5+0x28f*-0x13&&_0x1489f6['push']({'type':constants['errorMessages']['requiredHeadersMustBeUnique']+':\x20'+_0x3c267d['join'](',\x20')});const {firstWrongLine:_0x50f17e,firstCorrectLine:_0x15799d,firstWhyLine:_0x351294}=getFirstRequiredHeaderLines(_0x4b8afe);return _0x50f17e&&_0x15799d&&_0x351294&&!(_0x50f17e<_0x15799d&&_0x15799d<_0x351294)&&_0x1489f6['push']({'type':constants['errorMessages']['requiredHeadersMustBeInStrictOrder'],'line':Math['min'](_0x50f17e,_0x15799d,_0x351294)}),_0x1489f6;}__name(getRequiredHeadersSequenceIssues,'getRequiredHeadersSequenceIssues');function getHeaderValidationIssues(_0x2b6d6e){const _0xb3f02e=[];let _0x183f2a=![];const _0xa20bf9=[{'requiredHeader':patterns['wrongHeader'],'headerOnlyError':constants['errorMessages']['wrongMustHaveHeaderOnly'],'emptyLineAfterHeaderError':constants['errorMessages']['wrongMustHaveEmptyLineAfterHeader']},{'requiredHeader':patterns['correctHeader'],'headerOnlyError':constants['errorMessages']['correctMustHaveHeaderOnly'],'emptyLineAfterHeaderError':constants['errorMessages']['correctMustHaveEmptyLineAfterHeader']},{'requiredHeader':patterns['whyHeader'],'headerOnlyError':constants['errorMessages']['whyMustHaveHeaderOnly'],'emptyLineAfterHeaderError':constants['errorMessages']['whyMustHaveEmptyLineAfterHeader']}];for(let _0x1e6937=0x297+0x1597+-0x182e;_0x1e6937<_0x2b6d6e['length'];_0x1e6937++){const _0x38a5ee=_0x2b6d6e[_0x1e6937]['trim']();if(isFenceLine(_0x38a5ee))_0x183f2a=!_0x183f2a;else !_0x183f2a&&(_0x38a5ee['startsWith'](patterns['headerPrefix'])&&_0x38a5ee['endsWith'](':')&&_0xb3f02e['push']({'type':constants['errorMessages']['colonAfterHeader'],'line':_0x1e6937+(-0x19*0x2d+-0x18e8+0x1d4e)}),_0xa20bf9['forEach'](_0x3ecfb9=>{validateRequiredHeaderLine(_0x2b6d6e,_0x38a5ee,_0x1e6937,_0xb3f02e,_0x3ecfb9['requiredHeader'],_0x3ecfb9['headerOnlyError'],_0x3ecfb9['emptyLineAfterHeaderError']);}));}return _0xb3f02e['push'](...getRequiredHeadersSequenceIssues(_0x2b6d6e)),_0xb3f02e;}__name(getHeaderValidationIssues,'getHeaderValidationIssues');function validateRuleContents(_0x576e3d,_0x3c6d44){const _0x386129=[],_0x1a5874=normalizeNewlines(_0x576e3d);!_0x1a5874['startsWith'](patterns['newLine'])&&_0x386129['push']({'type':constants['errorMessages']['mustStartWithNewline']});const _0x3542cc=_0x1a5874['startsWith'](patterns['newLine'])?_0x1a5874['slice'](0x24ac+0x186e+0x1*-0x3d19):_0x1a5874;return _0x3c6d44&&_0x3542cc['startsWith'](_0x3c6d44)&&_0x386129['push']({'type':constants['errorMessages']['mustNotDuplicateRuleName'],'line':0x1}),_0x386129['push'](...getHeaderValidationIssues(_0x1a5874['split'](patterns['newLine']))),_0x386129;}__name(validateRuleContents,'validateRuleContents');
6
8
 
7
- export { mustUseBetterErrorMessageForCustomRules as default, errorMessages, ruleName };
9
+ export { constants, mustUseBetterErrorMessageForCustomRules as default, ruleName };
@@ -1,7 +1,8 @@
1
1
  'use strict';
2
- import { findPropertyInObject, nodeTypes, getVariableInScope } from '@flint/infra/analysis';
2
+ import { nodeTypes, findPropertyInObject, getVariableInScope } from '@flint/infra/analysis';
3
3
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
4
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
4
5
 
5
- var __defProp=Object['defineProperty'],__name=(_0x6884c,_0x30e362)=>__defProp(_0x6884c,'name',{'value':_0x30e362,'configurable':!![]});const ruleName='must-use-constants-for-message-ids';const ruleContent='\x0a###\x20**Must**\x20use\x20ruleName\x20constant.\x0a\x0aYou\x20must\x20reference\x20the\x20messageId\x20directly\x20through\x20the\x20`ruleName`\x20constant.\x20Literals,\x20objects,\x20or\x20variables\x20are\x20not\x20allowed.\x0a\x0a####\x20Wrong\x0a\x0acontext.report({\x20messageId:\x20\x22foo\x22\x20});\x0acontext.report({\x20messageId:\x20bar\x20});\x0acontext.report({\x20messageId:\x20foo.bar\x20});\x0acontext.report({\x20messageId:\x20constants.messageIds.foo\x20});\x0a\x0a####\x20Correct\x0a\x0acontext.report({\x20messageId:\x20ruleName\x20});\x0a\x0a####\x20Why\x0a\x0aUsing\x20constants\x20ensures\x20type\x20safety,\x20prevents\x20typos,\x20and\x20makes\x20refactoring\x20easier.\x20It\x20also\x20enforces\x20a\x20single\x20source\x20of\x20truth\x20for\x20message\x20ID.',constants={'ruleNameIdentifier':'ruleName','contextIdentifier':'context','reportMethod':'report','messageIdProperty':'messageId','variableDefinitionType':'Variable'};var mustUseConstantsForMessageIds = createEslintRule(ruleName,ruleContent,_0x4e752d=>{return {'CallExpression'(_0xe83983){if(isContextReportCall(_0xe83983,_0x4e752d['sourceCode']))for(const _0x5554f6 of _0xe83983['arguments']){const _0x341cf6=getPropertiesFromArgument(_0x5554f6,_0x4e752d['sourceCode']);if(_0x341cf6){const _0x405e04=findPropertyInObject(_0x341cf6,constants['messageIdProperty']);if(_0x405e04){!isValidConstantsUsage(_0x405e04['value'])&&_0x4e752d['report']({'node':_0x405e04['value'],'messageId':ruleName});break;}}}}};});function isDirectContextReportCall(_0x398bc1){return _0x398bc1['type']===nodeTypes['memberExpression']&&_0x398bc1['object']['type']===nodeTypes['identifier']&&_0x398bc1['object']['name']===constants['contextIdentifier']&&_0x398bc1['property']['type']===nodeTypes['identifier']&&_0x398bc1['property']['name']===constants['reportMethod'];}__name(isDirectContextReportCall,'isDirectContextReportCall');function isAliasedReportCall(_0xa7336d,_0x86f569){if(_0xa7336d['callee']['type']!==nodeTypes['identifier']||_0xa7336d['callee']['name']!==constants['reportMethod'])return ![];const _0x42ab8d=getVariableInScope(_0x86f569,_0xa7336d,constants['reportMethod'])?.['defs']?.['at'](-0x2445+0x3e5*-0x4+0x33d9);return Boolean(_0x42ab8d&&_0x42ab8d['type']===constants['variableDefinitionType']&&_0x42ab8d['node']['type']===nodeTypes['variableDeclarator']&&_0x42ab8d['node']['init']&&_0x42ab8d['node']['init']['type']===nodeTypes['identifier']&&_0x42ab8d['node']['init']['name']===constants['contextIdentifier']);}__name(isAliasedReportCall,'isAliasedReportCall');function isContextReportCall(_0x57dbfb,_0x27c6c5){return isDirectContextReportCall(_0x57dbfb['callee'])||isAliasedReportCall(_0x57dbfb,_0x27c6c5);}__name(isContextReportCall,'isContextReportCall');function isValidConstantsUsage(_0x356fa9){return _0x356fa9['type']===nodeTypes['identifier']&&_0x356fa9['name']===constants['ruleNameIdentifier'];}__name(isValidConstantsUsage,'isValidConstantsUsage');function resolveObjectExpression(_0x3ed683,_0x2e0eaf){const _0x53766b=getVariableInScope(_0x2e0eaf,_0x3ed683,_0x3ed683['name'])?.['defs']?.['at'](-0x59*-0x39+0xb18+-0x1ee9);let _0x385332;return _0x53766b&&_0x53766b['type']===constants['variableDefinitionType']&&_0x53766b['node']['init']&&_0x53766b['node']['init']['type']===nodeTypes['objectExpression']&&(_0x385332=_0x53766b['node']['init']),_0x385332;}__name(resolveObjectExpression,'resolveObjectExpression');function getPropertiesFromArgument(_0x596734,_0x228f4c){let _0x17640f;if(_0x596734['type']===nodeTypes['objectExpression'])_0x17640f=_0x596734['properties'];else {if(_0x596734['type']===nodeTypes['identifier']){const _0xd485c8=resolveObjectExpression(_0x596734,_0x228f4c);_0xd485c8&&(_0x17640f=_0xd485c8['properties']);}}return _0x17640f;}__name(getPropertiesFromArgument,'getPropertiesFromArgument');
6
+ var __defProp=Object['defineProperty'],__name=(_0x5b0251,_0x5c6a43)=>__defProp(_0x5b0251,'name',{'value':_0x5c6a43,'configurable':!![]});const ruleName='must-use-constants-for-message-ids';const ruleContent='\x0a###\x20**Must**\x20use\x20ruleName\x20constant.\x0a\x0aYou\x20must\x20reference\x20the\x20messageId\x20directly\x20through\x20the\x20`ruleName`\x20constant.\x20Literals,\x20objects,\x20or\x20variables\x20are\x20not\x20allowed.\x0a\x0a####\x20Wrong\x0a\x0acontext.report({\x20messageId:\x20\x22foo\x22\x20});\x0acontext.report({\x20messageId:\x20bar\x20});\x0acontext.report({\x20messageId:\x20foo.bar\x20});\x0acontext.report({\x20messageId:\x20constants.messageIds.foo\x20});\x0a\x0a####\x20Correct\x0a\x0acontext.report({\x20messageId:\x20ruleName\x20});\x0a\x0a####\x20Why\x0a\x0aUsing\x20constants\x20ensures\x20type\x20safety,\x20prevents\x20typos,\x20and\x20makes\x20refactoring\x20easier.\x20It\x20also\x20enforces\x20a\x20single\x20source\x20of\x20truth\x20for\x20message\x20ID.',constants={'ruleNameIdentifier':eslintRuleSyntax['ruleName'],'contextIdentifier':'context','reportMethod':eslintRuleSyntax['report'],'messageIdProperty':eslintRuleSyntax['messageId'],'variableDefinitionType':nodeTypes['variable']};var mustUseConstantsForMessageIds = createEslintRule(ruleName,ruleContent,_0x59d747=>{return {'CallExpression'(_0x1a4bb5){if(isContextReportCall(_0x1a4bb5,_0x59d747['sourceCode']))for(const _0x481aca of _0x1a4bb5['arguments']){const _0x20fc60=getPropertiesFromArgument(_0x481aca,_0x59d747['sourceCode']);if(_0x20fc60){const _0x135f93=findPropertyInObject(_0x20fc60,constants['messageIdProperty']);if(_0x135f93){!isValidConstantsUsage(_0x135f93['value'])&&_0x59d747['report']({'node':_0x135f93['value'],'messageId':ruleName});break;}}}}};});function isDirectContextReportCall(_0x2f8cad){return _0x2f8cad['type']===nodeTypes['memberExpression']&&_0x2f8cad['object']['type']===nodeTypes['identifier']&&_0x2f8cad['object']['name']===constants['contextIdentifier']&&_0x2f8cad['property']['type']===nodeTypes['identifier']&&_0x2f8cad['property']['name']===constants['reportMethod'];}__name(isDirectContextReportCall,'isDirectContextReportCall');function isAliasedReportCall(_0x14acd3,_0x4ed7fc){if(_0x14acd3['callee']['type']!==nodeTypes['identifier']||_0x14acd3['callee']['name']!==constants['reportMethod'])return ![];const _0x2bcd5a=getVariableInScope(_0x4ed7fc,_0x14acd3,constants['reportMethod'])?.['defs']?.['at'](-0x1*-0x163c+0x27*-0x16+0x2*-0x971);return Boolean(_0x2bcd5a&&_0x2bcd5a['type']===constants['variableDefinitionType']&&_0x2bcd5a['node']['type']===nodeTypes['variableDeclarator']&&_0x2bcd5a['node']['init']&&_0x2bcd5a['node']['init']['type']===nodeTypes['identifier']&&_0x2bcd5a['node']['init']['name']===constants['contextIdentifier']);}__name(isAliasedReportCall,'isAliasedReportCall');function isContextReportCall(_0x12f259,_0x1d9cfd){return isDirectContextReportCall(_0x12f259['callee'])||isAliasedReportCall(_0x12f259,_0x1d9cfd);}__name(isContextReportCall,'isContextReportCall');function isValidConstantsUsage(_0x5c1bd0){return _0x5c1bd0['type']===nodeTypes['identifier']&&_0x5c1bd0['name']===constants['ruleNameIdentifier'];}__name(isValidConstantsUsage,'isValidConstantsUsage');function resolveObjectExpression(_0x1f50dc,_0x24cd3e){const _0x3d9168=getVariableInScope(_0x24cd3e,_0x1f50dc,_0x1f50dc['name'])?.['defs']?.['at'](0x16e5+-0x6ff+-0xb9*0x16);let _0x27b241;return _0x3d9168&&_0x3d9168['type']===constants['variableDefinitionType']&&_0x3d9168['node']['init']&&_0x3d9168['node']['init']['type']===nodeTypes['objectExpression']&&(_0x27b241=_0x3d9168['node']['init']),_0x27b241;}__name(resolveObjectExpression,'resolveObjectExpression');function getPropertiesFromArgument(_0x2e3cef,_0x2007b0){let _0x1b53e6;if(_0x2e3cef['type']===nodeTypes['objectExpression'])_0x1b53e6=_0x2e3cef['properties'];else {if(_0x2e3cef['type']===nodeTypes['identifier']){const _0x23011d=resolveObjectExpression(_0x2e3cef,_0x2007b0);_0x23011d&&(_0x1b53e6=_0x23011d['properties']);}}return _0x1b53e6;}__name(getPropertiesFromArgument,'getPropertiesFromArgument');
6
7
 
7
8
  export { mustUseConstantsForMessageIds as default, ruleName };