@fernir2/saas-kit 0.0.208 → 0.0.210-1050

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 (2458) 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/{internal → customer-internal}/index.d.ts +12 -11
  6. package/{internal → customer-internal}/index.js +11 -10
  7. package/dist/styles.css +2 -2
  8. package/generated/meta/crud-handler-map.js +4 -0
  9. package/generated/{meta.json → meta/meta.json} +17 -21
  10. package/index.d.ts +378 -36
  11. package/index.js +318 -25
  12. package/package.json +6 -6
  13. package/packages/base-repo/app-constants/alias-symbols.d.ts +29 -30
  14. package/packages/base-repo/app-constants/alias-symbols.js +1 -1
  15. package/packages/base-repo/app-constants/aliases.d.ts +5 -2
  16. package/packages/base-repo/app-constants/aliases.js +1 -1
  17. package/packages/base-repo/app-constants/app-packages-names.d.ts +15 -12
  18. package/packages/base-repo/app-constants/app-packages-names.js +2 -2
  19. package/packages/base-repo/app-constants/command-names.d.ts +22 -9
  20. package/packages/base-repo/app-constants/command-names.js +2 -2
  21. package/packages/base-repo/app-constants/file-paths.d.ts +1 -0
  22. package/packages/base-repo/app-constants/{system-constants.d.ts → internal-system-constants.d.ts} +18 -10
  23. package/packages/base-repo/app-constants/internal-system-constants.js +9 -0
  24. package/packages/base-repo/app-constants/npm-package.d.ts +4 -2
  25. package/packages/base-repo/app-constants/project-paths.d.ts +289 -281
  26. package/packages/base-repo/app-constants/project-paths.js +3 -3
  27. package/packages/base-repo/constants/basic-types.d.ts +2 -0
  28. package/packages/base-repo/constants/ci-constants.d.ts +3 -0
  29. package/packages/base-repo/constants/ci-constants.js +2 -2
  30. package/packages/base-repo/constants/country-data.d.ts +1 -0
  31. package/packages/base-repo/constants/create-app-constants.d.ts +2 -0
  32. package/packages/base-repo/constants/display-labels.d.ts +1 -0
  33. package/packages/base-repo/constants/gitlab.d.ts +8 -5
  34. package/packages/base-repo/constants/html-element-names.d.ts +3 -0
  35. package/packages/base-repo/constants/html-element-names.js +2 -2
  36. package/packages/{fd-toolbox/http → base-repo/constants}/http-constants.d.ts +2 -0
  37. package/packages/base-repo/constants/http-methods.d.ts +1 -0
  38. package/packages/base-repo/constants/http-methods.js +1 -1
  39. package/packages/base-repo/constants/{common-strings.d.ts → internal-common-strings.d.ts} +97 -20
  40. package/packages/base-repo/constants/internal-common-strings.js +4 -0
  41. package/packages/base-repo/constants/{extensions.d.ts → internal-extensions.d.ts} +5 -2
  42. package/packages/base-repo/constants/internal-extensions.js +6 -0
  43. package/packages/base-repo/constants/internal-query-constants.d.ts +6 -0
  44. package/packages/base-repo/constants/internal-query-constants.js +6 -0
  45. package/packages/base-repo/constants/packages.d.ts +19 -17
  46. package/packages/base-repo/constants/packages.js +1 -1
  47. package/packages/base-repo/constants/playwright.d.ts +1 -0
  48. package/packages/base-repo/constants/playwright.js +1 -1
  49. package/packages/base-repo/constants/push-statuses.d.ts +2 -0
  50. package/packages/base-repo/constants/push-statuses.js +1 -1
  51. package/packages/base-repo/constants/react-hooks.d.ts +21 -0
  52. package/packages/base-repo/constants/react-hooks.js +4 -0
  53. package/packages/base-repo/constants/remote-blob-constants.d.ts +1 -0
  54. package/packages/base-repo/constants/resource-meta.d.ts +4 -0
  55. package/packages/base-repo/constants/resource-meta.js +4 -0
  56. package/packages/base-repo/constants/runtime-constants.d.ts +9 -0
  57. package/packages/base-repo/constants/runtime-constants.js +6 -0
  58. package/packages/base-repo/constants/string-duplication-constants.d.ts +4 -3
  59. package/packages/base-repo/constants/string-duplication-constants.js +1 -1
  60. package/packages/{fd-toolbox/strings → base-repo/constants}/strings-constants.d.ts +2 -0
  61. package/packages/base-repo/constants/strings-constants.js +4 -0
  62. package/packages/base-repo/constants/tools-constants.d.ts +37 -2
  63. package/packages/base-repo/constants/tools-constants.js +3 -3
  64. package/packages/base-repo/constants/type-string-values.d.ts +1 -1
  65. package/packages/base-repo/constants/ui-constants.d.ts +1 -0
  66. package/packages/base-repo/process.d.ts +2 -0
  67. package/packages/base-repo/process.js +4 -0
  68. package/packages/cluster/ci/gitlab-runner.js +3 -3
  69. package/packages/cluster/ci/pnpm-cache-pv-pvc.js +2 -2
  70. package/packages/cluster/constants/cluster-constants.d.ts +10 -0
  71. package/packages/cluster/constants/cluster-constants.js +2 -2
  72. package/packages/cluster/create-vm/config-dev-vm-passwords.d.ts +4 -0
  73. package/packages/cluster/create-vm/config-dev-vm-passwords.js +8 -0
  74. package/packages/cluster/create-vm/config-dev-vm.js +2 -3
  75. package/packages/cluster/create-vm/create-vm.js +16 -16
  76. package/packages/cluster/db/postgres.js +4 -4
  77. package/packages/cluster/kube/namespaces.d.ts +2 -1
  78. package/packages/cluster/kube/namespaces.js +2 -2
  79. package/packages/cluster/kube/networking.js +3 -3
  80. package/packages/cluster/kube/registry.js +4 -4
  81. package/packages/code-quality/config-aware-lint/constants.d.ts +3 -0
  82. package/packages/code-quality/config-aware-lint/constants.js +4 -0
  83. package/packages/code-quality/config-aware-lint/resolve-and-run-eslint.d.ts +25 -0
  84. package/packages/code-quality/config-aware-lint/resolve-and-run-eslint.js +11 -0
  85. package/packages/code-quality/significant-line-counter/agent-significant-line-guard.d.ts +7 -0
  86. package/packages/code-quality/significant-line-counter/agent-significant-line-guard.js +12 -0
  87. package/packages/code-quality/significant-line-counter/reviewable-commit-diff.d.ts +5 -1
  88. package/packages/code-quality/significant-line-counter/reviewable-commit-diff.js +7 -2
  89. package/packages/code-quality/significant-line-counter/significant-line-check-result.d.ts +0 -1
  90. package/packages/code-quality/significant-line-counter/significant-line-check-result.js +2 -1
  91. package/packages/code-quality/significant-line-counter/significant-line-check-statuses.js +2 -2
  92. package/packages/code-quality/significant-line-counter/significant-line-counter-constants.d.ts +7 -0
  93. package/packages/code-quality/significant-line-counter/significant-line-counter-constants.js +4 -0
  94. package/packages/code-quality/significant-line-counter/significant-line-counter.js +4 -1
  95. package/packages/code-quality/team-collaboration-configs.d.ts +72 -0
  96. package/packages/code-quality/team-collaboration-configs.js +4 -0
  97. package/packages/fd-toolbox/api/api-client.d.ts +6 -6
  98. package/packages/fd-toolbox/api/api-client.js +1 -1
  99. package/packages/fd-toolbox/api/api-path-names.d.ts +1 -1
  100. package/packages/fd-toolbox/api/api-path-names.js +2 -2
  101. package/packages/fd-toolbox/api/api-paths.js +1 -1
  102. package/packages/fd-toolbox/api/base-api.d.ts +12 -6
  103. package/packages/fd-toolbox/api/base-api.js +3 -3
  104. package/packages/fd-toolbox/api/cache-headers.d.ts +1 -0
  105. package/packages/fd-toolbox/api/cache-headers.js +1 -1
  106. package/packages/fd-toolbox/api/hooks/use-api.js +1 -1
  107. package/packages/fd-toolbox/auth/{login-states.js → internal-login-states.js} +2 -2
  108. package/packages/fd-toolbox/auth/jwt-token.d.ts +1 -0
  109. package/packages/fd-toolbox/auth/login-state.d.ts +3 -1
  110. package/packages/fd-toolbox/auth/{oauth-service-types.d.ts → oauth-provider-types.d.ts} +2 -0
  111. package/packages/fd-toolbox/auth/permissions/permission-notifiers.d.ts +1 -0
  112. package/packages/fd-toolbox/auth/permissions/permission-notifiers.js +1 -1
  113. package/packages/fd-toolbox/auth/register.d.ts +1 -0
  114. package/packages/fd-toolbox/auth/register.js +2 -2
  115. package/packages/fd-toolbox/auth/session-storage.d.ts +2 -0
  116. package/packages/fd-toolbox/auth/session-storage.js +1 -1
  117. package/packages/fd-toolbox/auth/token-response.d.ts +1 -0
  118. package/packages/fd-toolbox/auth/tokens.d.ts +3 -0
  119. package/packages/fd-toolbox/auth/tokens.js +1 -1
  120. package/packages/fd-toolbox/base-resource/base-resource.d.ts +1 -0
  121. package/packages/fd-toolbox/base-resource/base-resource.js +1 -1
  122. package/packages/fd-toolbox/base-resource/optional-user-id-base-resource.d.ts +1 -0
  123. package/packages/fd-toolbox/base-resource/optional-user-id-base-resource.js +1 -1
  124. package/packages/fd-toolbox/base-resource/props/base-resource-props.d.ts +1 -1
  125. package/packages/fd-toolbox/base-resource/props/created-by-date-props.d.ts +1 -1
  126. package/packages/fd-toolbox/base-resource/props/with-optional-user-id-props.d.ts +1 -0
  127. package/packages/fd-toolbox/base-resource/user-id-base-resource.d.ts +1 -0
  128. package/packages/fd-toolbox/base-resource/user-id-base-resource.js +1 -1
  129. package/packages/fd-toolbox/base-resource/with-optional-user-id-and-id.d.ts +1 -0
  130. package/packages/fd-toolbox/cache/cache.d.ts +3 -1
  131. package/packages/fd-toolbox/cache/cache.js +2 -2
  132. package/packages/fd-toolbox/collections/internal-arrays.js +6 -0
  133. package/packages/fd-toolbox/collections/internal-enums.js +6 -0
  134. package/packages/fd-toolbox/constants/api-constants.d.ts +3 -1
  135. package/packages/fd-toolbox/constants/api-error-constants.d.ts +1 -0
  136. package/packages/fd-toolbox/constants/auth-display-labels.d.ts +1 -0
  137. package/packages/fd-toolbox/constants/auth-error-messages.d.ts +1 -0
  138. package/packages/fd-toolbox/constants/cache-keys.d.ts +1 -0
  139. package/packages/fd-toolbox/constants/card-list-configs.d.ts +2 -0
  140. package/packages/fd-toolbox/constants/child-process-events.d.ts +1 -1
  141. package/packages/fd-toolbox/constants/child-process-events.js +2 -2
  142. package/packages/fd-toolbox/constants/common-user-fields.d.ts +4 -2
  143. package/packages/fd-toolbox/constants/common-user-fields.js +4 -4
  144. package/packages/fd-toolbox/constants/constants.d.ts +7 -1
  145. package/packages/fd-toolbox/constants/constants.js +1 -1
  146. package/packages/fd-toolbox/constants/currency-constants.d.ts +1 -0
  147. package/packages/fd-toolbox/constants/element-suffixes.d.ts +4 -3
  148. package/packages/fd-toolbox/constants/element-suffixes.js +1 -1
  149. package/packages/fd-toolbox/constants/elements.d.ts +1 -1
  150. package/packages/fd-toolbox/constants/elements.js +2 -2
  151. package/packages/fd-toolbox/constants/environment-constants.d.ts +2 -2
  152. package/packages/fd-toolbox/constants/events.d.ts +1 -0
  153. package/packages/fd-toolbox/constants/fd-resource-ids.d.ts +1 -0
  154. package/packages/fd-toolbox/constants/file-loader-data-types.d.ts +5 -0
  155. package/packages/fd-toolbox/constants/file-loader-data-types.js +2 -2
  156. package/packages/fd-toolbox/constants/html-constants.d.ts +5 -0
  157. package/packages/fd-toolbox/constants/html-constants.js +2 -2
  158. package/packages/fd-toolbox/constants/html-element-attributes.d.ts +2 -2
  159. package/packages/fd-toolbox/constants/html-element-attributes.js +2 -1
  160. package/packages/fd-toolbox/constants/http-status-codes.d.ts +1 -1
  161. package/packages/fd-toolbox/constants/{auth-constants.d.ts → internal-auth-constants.d.ts} +1 -1
  162. package/packages/fd-toolbox/constants/{auth-constants.js → internal-auth-constants.js} +3 -1
  163. package/packages/fd-toolbox/constants/internal-file-constants.js +7 -0
  164. package/packages/fd-toolbox/constants/keyboard-keys.d.ts +1 -0
  165. package/packages/fd-toolbox/constants/meta-query-params.d.ts +1 -0
  166. package/packages/fd-toolbox/constants/meta-query-params.js +2 -3
  167. package/packages/fd-toolbox/constants/{odata-helper-constants.d.ts → odata-constants.d.ts} +8 -0
  168. package/packages/fd-toolbox/constants/{odata-helper-constants.js → odata-constants.js} +1 -1
  169. package/packages/fd-toolbox/{server/api/odata → constants}/odata-query-params.d.ts +1 -1
  170. package/packages/fd-toolbox/constants/odata-query-params.js +7 -0
  171. package/packages/fd-toolbox/constants/permission-names-constants.d.ts +1 -0
  172. package/packages/fd-toolbox/constants/public-files.d.ts +3 -1
  173. package/packages/fd-toolbox/constants/public-files.js +3 -3
  174. package/packages/fd-toolbox/constants/resource-folders.d.ts +1 -0
  175. package/packages/fd-toolbox/constants/resource-id-constants.d.ts +2 -1
  176. package/packages/fd-toolbox/constants/resource-id-constants.js +1 -1
  177. package/packages/fd-toolbox/constants/screen-width-constants.d.ts +1 -0
  178. package/packages/fd-toolbox/constants/scroll-position-constants.d.ts +1 -0
  179. package/packages/fd-toolbox/constants/search-result-constants.d.ts +1 -0
  180. package/packages/fd-toolbox/constants/toolbox-error-messages-constants.d.ts +1 -1
  181. package/packages/fd-toolbox/constants/user-infos.d.ts +1 -1
  182. package/packages/fd-toolbox/dates/date-formats.d.ts +1 -0
  183. package/packages/fd-toolbox/dates/date-time.d.ts +14 -2
  184. package/packages/fd-toolbox/dates/date-time.js +10 -10
  185. package/packages/fd-toolbox/dates/time.d.ts +1 -0
  186. package/packages/fd-toolbox/enums/enums.d.ts +16 -7
  187. package/packages/fd-toolbox/enums/enums.js +3 -3
  188. package/packages/fd-toolbox/errors/error-handler.d.ts +1 -0
  189. package/packages/fd-toolbox/errors/error-handler.js +1 -1
  190. package/packages/fd-toolbox/errors/errors.d.ts +1 -1
  191. package/packages/fd-toolbox/errors/errors.js +1 -1
  192. package/packages/fd-toolbox/errors/problem-details.d.ts +3 -0
  193. package/packages/fd-toolbox/errors/problem-details.js +4 -2
  194. package/packages/fd-toolbox/functions/condition-check-functions.d.ts +1 -0
  195. package/packages/fd-toolbox/functions/condition-check-functions.js +1 -1
  196. package/packages/fd-toolbox/functions/{getter-setter-functions.d.ts → internal-getter-setter-functions.d.ts} +1 -1
  197. package/packages/fd-toolbox/functions/value-checking-functions.d.ts +4 -1
  198. package/packages/fd-toolbox/functions/value-checking-functions.js +1 -1
  199. package/packages/fd-toolbox/hooks/use-async-effect.d.ts +1 -1
  200. package/packages/fd-toolbox/hooks/use-async-effect.js +1 -1
  201. package/packages/fd-toolbox/hooks/use-element-id.js +1 -1
  202. package/packages/fd-toolbox/hooks/use-empty-ref.d.ts +1 -0
  203. package/packages/fd-toolbox/hooks/use-empty-ref.js +1 -1
  204. package/packages/fd-toolbox/hooks/use-enter-key.d.ts +2 -1
  205. package/packages/fd-toolbox/hooks/use-enter-key.js +1 -1
  206. package/packages/fd-toolbox/hooks/use-is-client.d.ts +1 -0
  207. package/packages/fd-toolbox/hooks/use-is-client.js +1 -1
  208. package/packages/fd-toolbox/hooks/use-is-mobile.d.ts +1 -0
  209. package/packages/fd-toolbox/hooks/use-is-mobile.js +1 -1
  210. package/packages/fd-toolbox/hooks/use-keyboard-navigation.js +1 -1
  211. package/packages/fd-toolbox/hooks/use-media-query.d.ts +1 -0
  212. package/packages/fd-toolbox/hooks/use-media-query.js +1 -1
  213. package/packages/fd-toolbox/hooks/use-optional-promise.d.ts +1 -0
  214. package/packages/fd-toolbox/hooks/use-optional-promise.js +1 -1
  215. package/packages/fd-toolbox/html/document-body-cursor.d.ts +2 -0
  216. package/packages/fd-toolbox/html/document-body-cursor.js +7 -0
  217. package/packages/fd-toolbox/html/element-ids.d.ts +1 -1
  218. package/packages/fd-toolbox/html/element-ids.js +1 -1
  219. package/packages/fd-toolbox/html/extract-emails-from-html.d.ts +1 -0
  220. package/packages/fd-toolbox/html/extract-emails-from-html.js +1 -1
  221. package/packages/fd-toolbox/html/markdown-renderer.d.ts +1 -0
  222. package/packages/fd-toolbox/html/markdown-renderer.js +1 -1
  223. package/packages/fd-toolbox/http/http.d.ts +1 -0
  224. package/packages/fd-toolbox/http/http.js +1 -1
  225. package/packages/fd-toolbox/http/router-link-query-param.d.ts +1 -0
  226. package/packages/fd-toolbox/http/url/url-builder.js +1 -1
  227. package/packages/fd-toolbox/http/url/urls.d.ts +3 -2
  228. package/packages/fd-toolbox/http/url/urls.js +2 -2
  229. package/packages/fd-toolbox/infra/env-config.d.ts +1 -1
  230. package/packages/fd-toolbox/infra/env-config.js +2 -2
  231. package/packages/fd-toolbox/infra/env-functions.d.ts +1 -1
  232. package/packages/fd-toolbox/infra/env-functions.js +2 -1
  233. package/packages/fd-toolbox/infra/toolbox-env-setting-keys.d.ts +1 -0
  234. package/packages/fd-toolbox/infra/toolbox-env-setting-keys.js +1 -1
  235. package/packages/fd-toolbox/io/io.d.ts +2 -0
  236. package/packages/fd-toolbox/io/io.js +3 -3
  237. package/packages/fd-toolbox/lib/environments.d.ts +11 -2
  238. package/packages/fd-toolbox/lib/environments.js +2 -2
  239. package/packages/fd-toolbox/lib/utils.d.ts +14 -8
  240. package/packages/fd-toolbox/lib/utils.js +4 -2
  241. package/packages/fd-toolbox/local-storage/local-storage.d.ts +1 -0
  242. package/packages/fd-toolbox/local-storage/local-storage.js +1 -1
  243. package/packages/fd-toolbox/logging/cli-logger.d.ts +5 -2
  244. package/packages/fd-toolbox/logging/cli-logger.js +1 -1
  245. package/packages/fd-toolbox/logging/format-list.d.ts +3 -0
  246. package/packages/fd-toolbox/logging/format-list.js +1 -1
  247. package/packages/fd-toolbox/logging/loggers.d.ts +4 -0
  248. package/packages/fd-toolbox/logging/loggers.js +1 -1
  249. package/packages/fd-toolbox/markdown/html-dto.d.ts +1 -0
  250. package/packages/fd-toolbox/markdown/markdown-dto.d.ts +1 -0
  251. package/packages/fd-toolbox/name-value.d.ts +1 -0
  252. package/packages/fd-toolbox/notifications.js +2 -2
  253. package/packages/fd-toolbox/numbers/numbers.d.ts +2 -0
  254. package/packages/fd-toolbox/numbers/numbers.js +1 -1
  255. package/packages/fd-toolbox/objects/property-value-messages.d.ts +1 -0
  256. package/packages/fd-toolbox/objects/property-value.d.ts +5 -0
  257. package/packages/fd-toolbox/objects/property-value.js +1 -1
  258. package/packages/fd-toolbox/odata/filters/odata-operator-filter-type-option.d.ts +1 -0
  259. package/packages/fd-toolbox/odata/odata-builder-funcs.d.ts +2 -1
  260. package/packages/fd-toolbox/odata/odata-builder-funcs.js +1 -1
  261. package/packages/fd-toolbox/odata/odata-builders.d.ts +2 -2
  262. package/packages/fd-toolbox/odata/odata-builders.js +1 -1
  263. package/packages/fd-toolbox/odata/odata-constants.d.ts +3 -0
  264. package/packages/fd-toolbox/odata/odata-constants.js +1 -1
  265. package/packages/fd-toolbox/odata/odata-filter-constants.d.ts +8 -3
  266. package/packages/fd-toolbox/odata/odata-formatting/odata-filters.js +9 -0
  267. package/packages/fd-toolbox/odata/{services → odata-formatting}/odata-parsers.d.ts +1 -0
  268. package/packages/fd-toolbox/odata/odata-formatting/odata-parsers.js +12 -0
  269. package/packages/fd-toolbox/odata/odata-lambda-method.d.ts +1 -0
  270. package/packages/fd-toolbox/odata/odata.d.ts +1 -0
  271. package/packages/fd-toolbox/odata/odata.js +3 -3
  272. package/packages/fd-toolbox/odata/odataconfig.d.ts +1 -0
  273. package/packages/fd-toolbox/odata/odataconfig.js +1 -1
  274. package/packages/fd-toolbox/path.d.ts +1 -0
  275. package/packages/fd-toolbox/path.js +1 -1
  276. package/packages/fd-toolbox/paths/ensure.d.ts +3 -0
  277. package/packages/fd-toolbox/paths/ensure.js +1 -1
  278. package/packages/fd-toolbox/paths/paths-names.d.ts +1 -0
  279. package/packages/fd-toolbox/paths/paths-names.js +1 -1
  280. package/packages/fd-toolbox/permissions/constants/{crud-action-to-permission-prefix.d.ts → crud-action-to-permission-prefixes.d.ts} +1 -0
  281. package/packages/fd-toolbox/property/calculate-total-property-value.d.ts +1 -0
  282. package/packages/fd-toolbox/property/calculate-total-property-value.js +1 -1
  283. package/packages/fd-toolbox/providers/element-id-provider/element-id-provider.d.ts +1 -0
  284. package/packages/fd-toolbox/redirect/redirect-functions.d.ts +2 -1
  285. package/packages/fd-toolbox/redirect/redirect-functions.js +1 -1
  286. package/packages/fd-toolbox/resources/demo-resource-names.d.ts +1 -0
  287. package/packages/fd-toolbox/resources/resource-names.d.ts +1 -1
  288. package/packages/fd-toolbox/resources/resource-names.js +1 -1
  289. package/packages/fd-toolbox/routing/login-routers.d.ts +2 -0
  290. package/packages/fd-toolbox/routing/login-routers.js +1 -1
  291. package/packages/fd-toolbox/routing/paths.d.ts +1 -0
  292. package/packages/fd-toolbox/routing/paths.js +1 -1
  293. package/packages/fd-toolbox/routing/public-routes.js +1 -1
  294. package/packages/fd-toolbox/routing/routers.d.ts +6 -0
  295. package/packages/fd-toolbox/routing/routers.js +2 -2
  296. package/packages/fd-toolbox/routing/routes.d.ts +1 -1
  297. package/packages/fd-toolbox/routing/routes.js +2 -2
  298. package/packages/fd-toolbox/server/api/public-api-routes.d.ts +1 -1
  299. package/packages/fd-toolbox/server/api/public-api-routes.js +2 -2
  300. package/packages/fd-toolbox/server/api/query-params.js +1 -1
  301. package/packages/fd-toolbox/server/api-enums/pagination-type.d.ts +2 -0
  302. package/packages/fd-toolbox/server/auth/cookies.d.ts +3 -0
  303. package/packages/fd-toolbox/server/auth/cookies.js +1 -1
  304. package/packages/fd-toolbox/server/cachings/core-cache.d.ts +4 -0
  305. package/packages/fd-toolbox/server/cachings/core-cache.js +1 -1
  306. package/packages/fd-toolbox/server/cachings/fd-cache-options.d.ts +1 -0
  307. package/packages/fd-toolbox/server/cachings/fd-memory-cache.d.ts +5 -0
  308. package/packages/fd-toolbox/server/cachings/fd-memory-cache.js +1 -1
  309. package/packages/fd-toolbox/server/cachings/fd-remote-cache.d.ts +5 -0
  310. package/packages/fd-toolbox/server/cachings/fd-remote-cache.js +2 -2
  311. package/packages/fd-toolbox/server/collections/single-funcs.d.ts +9 -2
  312. package/packages/fd-toolbox/server/collections/single-funcs.js +1 -1
  313. package/packages/fd-toolbox/server/configs/configs.d.ts +1 -0
  314. package/packages/fd-toolbox/server/configs/configs.js +1 -1
  315. package/packages/fd-toolbox/server/constants/configs/fd-config-keys.d.ts +1 -0
  316. package/packages/fd-toolbox/server/constants/crud-actions-constants.d.ts +1 -0
  317. package/packages/fd-toolbox/server/constants/fd-server-cache-keys.d.ts +1 -0
  318. package/packages/fd-toolbox/server/constants/fd-server-cache-keys.js +1 -1
  319. package/packages/fd-toolbox/server/constants/operation-status-messages.d.ts +1 -0
  320. package/packages/fd-toolbox/server/constants/workspace-constants.d.ts +3 -2
  321. package/packages/fd-toolbox/server/{services → data}/dictionaries.d.ts +2 -0
  322. package/packages/fd-toolbox/server/data/dictionaries.js +4 -0
  323. package/packages/fd-toolbox/server/entities/base-objects.d.ts +2 -0
  324. package/packages/fd-toolbox/server/entities/base-objects.js +1 -1
  325. package/packages/fd-toolbox/server/errors/error-dtos.js +1 -1
  326. package/packages/fd-toolbox/server/framework/index.d.ts +4 -0
  327. package/packages/fd-toolbox/server/framework/index.js +1 -1
  328. package/packages/fd-toolbox/server/logging/latest-logs-store.d.ts +3 -0
  329. package/packages/fd-toolbox/server/logging/latest-logs-store.js +1 -1
  330. package/packages/fd-toolbox/server/logging/log-dtos.js +1 -1
  331. package/packages/fd-toolbox/server/logging/logger.d.ts +3 -0
  332. package/packages/fd-toolbox/server/logging/logger.js +1 -1
  333. package/packages/fd-toolbox/server/objects/keys-case-converters.js +1 -1
  334. package/packages/fd-toolbox/server/random.js +3 -1
  335. package/packages/fd-toolbox/server/strings/casing.d.ts +3 -0
  336. package/packages/fd-toolbox/server/strings/casing.js +2 -1
  337. package/packages/fd-toolbox/server/strings/strings.d.ts +3 -0
  338. package/packages/fd-toolbox/server/strings/strings.js +3 -2
  339. package/packages/fd-toolbox/server/time/execution-duration.js +6 -0
  340. package/packages/fd-toolbox/server/web/errors.js +1 -1
  341. package/packages/fd-toolbox/server/web/response-messages.d.ts +1 -0
  342. package/packages/fd-toolbox/state/component-states.d.ts +3 -1
  343. package/packages/fd-toolbox/state/component-states.js +1 -1
  344. package/packages/fd-toolbox/strings/case-converters.d.ts +1 -0
  345. package/packages/fd-toolbox/strings/case-converters.js +1 -1
  346. package/packages/fd-toolbox/strings/casing-converter.d.ts +7 -2
  347. package/packages/fd-toolbox/strings/casing-converter.js +1 -1
  348. package/packages/fd-toolbox/strings/plural-converters.d.ts +1 -0
  349. package/packages/fd-toolbox/strings/plural-converters.js +2 -2
  350. package/packages/fd-toolbox/strings/strings.d.ts +1 -0
  351. package/packages/fd-toolbox/strings/strings.js +2 -2
  352. package/packages/fd-toolbox/time/date-time.d.ts +11 -5
  353. package/packages/fd-toolbox/time/date-time.js +1 -1
  354. package/packages/fd-toolbox/types/crud/crud-result-type.d.ts +1 -1
  355. package/packages/fd-toolbox/types/crud/crud-results.d.ts +2 -1
  356. package/packages/fd-toolbox/types/crud/crud-results.js +1 -1
  357. package/packages/fd-toolbox/types/ensure-type.d.ts +10 -3
  358. package/packages/fd-toolbox/types/ensure-type.js +3 -2
  359. package/packages/fd-toolbox/types/partial-with-id.d.ts +1 -1
  360. package/packages/fd-toolbox/types/react-types.d.ts +10 -0
  361. package/packages/fd-toolbox/types/ref-object.d.ts +3 -1
  362. package/packages/fd-toolbox/types/validations/user-invite-validation-result.d.ts +1 -0
  363. package/packages/fd-toolbox/types/validations/validation-detail-result.d.ts +1 -1
  364. package/packages/fd-toolbox/types/validations/validation-result.d.ts +1 -1
  365. package/packages/fd-toolbox/types/with-user-id.d.ts +3 -0
  366. package/packages/fd-toolbox/url/query-param.d.ts +1 -0
  367. package/packages/fd-toolbox/url/urls.d.ts +1 -0
  368. package/packages/fd-toolbox/url/urls.js +1 -1
  369. package/packages/fd-toolbox/uuids.d.ts +5 -2
  370. package/packages/fd-toolbox/uuids.js +1 -1
  371. package/packages/fd-toolbox/value-checkers.d.ts +1 -0
  372. package/packages/fd-toolbox/value-checkers.js +1 -1
  373. package/packages/fd-toolbox-core/base-resource/created-by-date.d.ts +1 -0
  374. package/packages/fd-toolbox-core/constants/base-dev-url.d.ts +4 -3
  375. package/packages/fd-toolbox-core/constants/base-dev-url.js +3 -1
  376. package/packages/fd-toolbox-core/constants/emails.d.ts +1 -0
  377. package/packages/fd-toolbox-core/constants/environment-variables-constants.d.ts +1 -1
  378. package/packages/fd-toolbox-core/constants/messages-constants.d.ts +1 -0
  379. package/packages/fd-toolbox-core/constants/meta-constants.d.ts +1 -0
  380. package/packages/fd-toolbox-core/constants/meta-constants.js +2 -2
  381. package/packages/fd-toolbox-core/constants/password-messages.d.ts +1 -0
  382. package/packages/fd-toolbox-core/constants/promises.d.ts +1 -0
  383. package/packages/fd-toolbox-core/constants/subscription-messages.d.ts +1 -0
  384. package/packages/fd-toolbox-core/core/name-of.d.ts +1 -0
  385. package/packages/fd-toolbox-core/core/name-of.js +1 -1
  386. package/packages/fd-toolbox-core/enums/log-severities.d.ts +2 -0
  387. package/packages/fd-toolbox-core/multitenancy/with-workspace-id.d.ts +1 -0
  388. package/packages/fd-toolbox-core/server/base-resources/props/with-workspace-id-props.d.ts +1 -1
  389. package/packages/fd-toolbox-core/server/base-resources/with-disabled-to-filter-out.d.ts +1 -0
  390. package/packages/fd-toolbox-core/server/constants/auth-constants.d.ts +1 -1
  391. package/packages/fd-toolbox-core/server/errors/error-dto.d.ts +1 -0
  392. package/packages/fd-toolbox-core/server/logging/server-log-dto.d.ts +1 -0
  393. package/packages/fd-toolbox-core/server/types/with-indexer.d.ts +1 -1
  394. package/packages/fd-toolbox-core/types/resource-with-id.d.ts +6 -1
  395. package/packages/fd-toolbox-core/types/resource-with-id.js +1 -1
  396. package/packages/flint/infra/analysis/array-analysis.d.ts +4 -1
  397. package/packages/flint/infra/analysis/array-analysis.js +8 -3
  398. package/packages/flint/infra/analysis/callable-analysis.d.ts +12 -0
  399. package/packages/flint/infra/analysis/callable-analysis.js +3 -3
  400. package/packages/flint/infra/analysis/casing-analysis.js +1 -1
  401. package/packages/flint/infra/analysis/enum-analysis.d.ts +6 -5
  402. package/packages/flint/infra/analysis/enum-analysis.js +6 -7
  403. package/packages/flint/infra/analysis/eslint-analysis.d.ts +3 -10
  404. package/packages/flint/infra/analysis/eslint-analysis.js +4 -3
  405. package/packages/flint/infra/analysis/expression-analysis.js +7 -4
  406. package/packages/flint/infra/analysis/formatting-analysis.js +2 -1
  407. package/packages/flint/infra/analysis/function-analysis.d.ts +18 -8
  408. package/packages/flint/infra/analysis/function-analysis.js +6 -5
  409. package/packages/flint/infra/analysis/generic-analysis.d.ts +4 -1
  410. package/packages/flint/infra/analysis/generic-analysis.js +3 -2
  411. package/packages/flint/infra/analysis/internal-analysis.d.ts +2 -0
  412. package/packages/flint/infra/analysis/internal-analysis.js +6 -0
  413. package/packages/flint/infra/analysis/jsx-analysis.d.ts +0 -3
  414. package/packages/flint/infra/analysis/jsx-analysis.js +3 -3
  415. package/packages/flint/infra/analysis/module-analysis.d.ts +3 -2
  416. package/packages/flint/infra/analysis/module-analysis.js +4 -3
  417. package/packages/flint/infra/analysis/name-analysis.d.ts +5 -1
  418. package/packages/flint/infra/analysis/name-analysis.js +7 -4
  419. package/packages/flint/infra/analysis/node-type-type-guards.d.ts +73 -0
  420. package/packages/flint/infra/analysis/node-type-type-guards.js +7 -0
  421. package/packages/flint/infra/analysis/nullish-analysis.d.ts +1 -1
  422. package/packages/flint/infra/analysis/nullish-analysis.js +2 -2
  423. package/packages/flint/infra/analysis/number-analysis.js +1 -1
  424. package/packages/flint/infra/analysis/object-analysis.d.ts +1 -0
  425. package/packages/flint/infra/analysis/object-analysis.js +6 -3
  426. package/packages/flint/infra/analysis/path-analysis.d.ts +3 -0
  427. package/packages/flint/infra/analysis/path-analysis.js +5 -2
  428. package/packages/flint/infra/analysis/react-analysis.d.ts +4 -0
  429. package/packages/flint/infra/analysis/react-analysis.js +10 -0
  430. package/packages/flint/infra/analysis/return-analysis.d.ts +6 -3
  431. package/packages/flint/infra/analysis/return-analysis.js +4 -2
  432. package/packages/flint/infra/analysis/scope-analysis.js +7 -5
  433. package/packages/flint/infra/analysis/string-analysis.d.ts +4 -1
  434. package/packages/flint/infra/analysis/string-analysis.js +8 -4
  435. package/packages/flint/infra/analysis/test-analysis.d.ts +1 -0
  436. package/packages/flint/infra/analysis/test-analysis.js +2 -2
  437. package/packages/flint/infra/analysis/tree-analysis.d.ts +4 -1
  438. package/packages/flint/infra/analysis/tree-analysis.js +4 -3
  439. package/packages/flint/infra/analysis/type-analysis.d.ts +14 -11
  440. package/packages/flint/infra/analysis/type-analysis.js +8 -4
  441. package/packages/flint/infra/analysis/variable-analysis.d.ts +3 -1
  442. package/packages/flint/infra/analysis/variable-analysis.js +5 -5
  443. package/packages/flint/infra/analysis/visitors.js +1 -1
  444. package/packages/flint/infra/config-edited-checker.js +3 -3
  445. package/packages/flint/infra/constants/eslint-rule-syntax.d.ts +10 -0
  446. package/packages/flint/infra/constants/eslint-rule-syntax.js +6 -0
  447. package/packages/flint/infra/constants/eslint-syntax-names.d.ts +7 -0
  448. package/packages/flint/infra/constants/eslint-syntax-names.js +4 -0
  449. package/packages/flint/infra/constants/naming-constants.d.ts +4 -0
  450. package/packages/flint/infra/constants/naming-constants.js +4 -0
  451. package/packages/flint/infra/constants/rule-strings.d.ts +8 -0
  452. package/packages/flint/infra/constants/rule-strings.js +4 -0
  453. package/packages/flint/infra/constants/rules-meta.d.ts +44 -0
  454. package/packages/flint/infra/constants/rules-meta.js +4 -2
  455. package/packages/flint/infra/constants/runtime-constants.d.ts +10 -0
  456. package/packages/flint/infra/constants/runtime-constants.js +6 -0
  457. package/packages/flint/infra/constants/shared-string-identifiers.d.ts +36 -0
  458. package/packages/flint/infra/constants/shared-string-identifiers.js +6 -0
  459. package/packages/flint/infra/create-eslint-rule.d.ts +1 -1
  460. package/packages/flint/infra/create-eslint-rule.js +1 -1
  461. package/packages/flint/infra/git-readers.js +5 -5
  462. package/packages/flint/rules/code-duplication/must-avoid-code-duplication-in-functions.d.ts +1 -1
  463. package/packages/flint/rules/code-duplication/must-avoid-code-duplication-in-functions.js +3 -1
  464. package/packages/flint/rules/code-duplication/must-not-use-constants-for-single-usage.d.ts +3 -0
  465. package/packages/flint/rules/code-duplication/must-not-use-constants-for-single-usage.js +12 -0
  466. package/packages/flint/rules/code-duplication/no-duplicate-imports.js +1 -1
  467. package/packages/flint/rules/code-duplication/no-literal-duplication.js +10 -2
  468. package/packages/flint/rules/consistency/enum-type-immediate-definition.js +1 -1
  469. package/packages/flint/rules/{must-always-specify-types-for-api-responses.js → consistency/must-always-specify-types-for-api-responses.js} +2 -1
  470. package/packages/flint/rules/consistency/must-declare-module-members-in-consistent-order.js +10 -0
  471. package/packages/flint/rules/consistency/must-not-needlessly-copy-arrays.js +7 -2
  472. package/packages/flint/rules/consistency/must-not-use-anonymous-objects-only-with-explicit-typization.js +4 -1
  473. package/packages/flint/rules/consistency/must-not-use-process-env.js +4 -1
  474. 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
  475. package/packages/flint/rules/consistency/must-use-nameof-for-props.js +2 -2
  476. package/packages/flint/rules/consistency/must-use-resource-provider-functions-to-get-resources-on-server.js +11 -0
  477. package/packages/flint/rules/consistency/must-use-typed-resources-for-crud-update.js +5 -2
  478. package/packages/flint/rules/consistency/must-use-typescript.js +6 -1
  479. package/packages/flint/rules/consistency/no-index-import-in-analysis.d.ts +3 -0
  480. package/packages/flint/rules/consistency/no-index-import-in-analysis.js +6 -0
  481. package/packages/flint/rules/consistency/no-inplace-array-mutation.d.ts +3 -0
  482. package/packages/flint/rules/consistency/no-inplace-array-mutation.js +8 -0
  483. package/packages/flint/rules/consistency/no-new-date.js +1 -1
  484. package/packages/flint/rules/consistency/no-redundant-type-alias.js +2 -1
  485. package/packages/flint/rules/consistency/no-use-type-undefined-for-optional.js +4 -2
  486. package/packages/flint/rules/css/must-not-use-important.js +1 -1
  487. package/packages/flint/rules/css/must-use-color-variables-instead-of-hardcoded-values.js +10 -0
  488. package/packages/flint/rules/css/no-array-destructuring-from-function-calls.js +4 -1
  489. package/packages/flint/rules/css/no-px-in-tailwind.js +4 -3
  490. package/packages/flint/rules/css/no-tailwind-colors.js +6 -3
  491. package/packages/flint/rules/flint/must-add-custom-rule-in-config.js +11 -4
  492. package/packages/flint/rules/flint/must-have-both-rule-and-tests.d.ts +1 -1
  493. package/packages/flint/rules/flint/must-have-both-rule-and-tests.js +7 -3
  494. package/packages/flint/rules/flint/must-match-rule-name-with-file-name.js +6 -2
  495. package/packages/flint/rules/flint/must-not-declare-fixer-without-calling-it.js +7 -2
  496. package/packages/flint/rules/flint/must-not-import-ast-node-types.js +1 -1
  497. package/packages/flint/rules/flint/must-not-use-placeholders-in-eslint-rule-titles.js +8 -0
  498. package/packages/flint/rules/flint/must-not-use-see-link-in-docs-if-type-available.js +9 -0
  499. package/packages/flint/rules/flint/must-not-use-the-single-error-property-in-test.js +2 -1
  500. package/packages/flint/rules/flint/must-use-better-error-message-for-custom-rules.d.ts +28 -14
  501. package/packages/flint/rules/flint/must-use-better-error-message-for-custom-rules.js +4 -2
  502. package/packages/flint/rules/flint/must-use-constants-for-message-ids.js +3 -2
  503. package/packages/flint/rules/flint/must-use-create-eslint-rule.js +4 -1
  504. package/packages/flint/rules/flint/must-use-generic-crud-update-config.js +4 -1
  505. package/packages/flint/rules/flint/must-use-isnamematch.d.ts +3 -0
  506. package/packages/flint/rules/flint/must-use-isnamematch.js +9 -0
  507. package/packages/flint/rules/flint/must-use-link-for-camel-or-pascal-case-names.d.ts +1 -1
  508. package/packages/flint/rules/flint/must-use-link-for-camel-or-pascal-case-names.js +6 -4
  509. package/packages/flint/rules/flint/must-use-nodetypes-structure-instead-of-string-node-type.js +2 -2
  510. package/packages/flint/rules/flint/must-use-rule-name-as-message-id-in-tests.js +2 -1
  511. package/packages/flint/rules/flint/must-use-unique-filenames-with-comment-in-tests.js +5 -3
  512. package/packages/flint/rules/general/group-consts-as-const.js +3 -1
  513. package/packages/flint/rules/general/must-add-space-for-comments.js +5 -2
  514. package/packages/flint/rules/general/must-create-resources-in-src-dir.js +1 -1
  515. package/packages/flint/rules/general/must-mark-external-imports-as-internal.d.ts +3 -0
  516. package/packages/flint/rules/general/must-mark-external-imports-as-internal.js +14 -0
  517. package/packages/flint/rules/general/must-not-define-functions-in-constants-files.js +1 -1
  518. package/packages/flint/rules/general/must-not-include-unnecessary-parameters.js +2 -1
  519. package/packages/flint/rules/general/must-not-modify-data-or-workspace-in-readonly-tests.js +10 -0
  520. package/packages/flint/rules/general/must-not-pass-full-objects-into-functions-needlessly.d.ts +1 -1
  521. package/packages/flint/rules/general/must-not-pass-full-objects-into-functions-needlessly.js +9 -4
  522. package/packages/flint/rules/general/must-not-use-fetch.js +8 -0
  523. package/packages/flint/rules/general/must-not-use-object-constructor-methods.d.ts +3 -0
  524. package/packages/flint/rules/general/must-not-use-object-constructor-methods.js +11 -0
  525. package/packages/flint/rules/{must-separate-unrelated-tests-into-different-files.js → general/must-separate-unrelated-tests-into-different-files.js} +2 -2
  526. package/packages/flint/rules/general/must-start-comments-with-uppercase.js +6 -2
  527. package/packages/flint/rules/general/must-use-native-private.js +2 -2
  528. package/packages/flint/rules/general/must-use-odata-builder.js +9 -0
  529. package/packages/flint/rules/general/must-use-only-crud-operations.js +9 -0
  530. package/packages/flint/rules/general/must-use-path-constants-for-paths.js +3 -2
  531. package/packages/flint/rules/general/must-use-strict-dependency-version.js +6 -2
  532. package/packages/flint/rules/general/no-empty-files.js +1 -1
  533. package/packages/flint/rules/general/no-eslint-disable-without-approved.js +2 -2
  534. package/packages/flint/rules/general/no-import-from-temp-dev.js +1 -1
  535. package/packages/flint/rules/general/no-manual-resource-instantiation.js +10 -0
  536. package/packages/flint/rules/general/no-specify-return-type.js +4 -3
  537. package/packages/flint/rules/general/no-todo.js +1 -1
  538. package/packages/flint/rules/general/no-unused-properties-in-constants.js +2 -2
  539. package/packages/flint/rules/general/use-of-only-english-in-repository.js +1 -1
  540. package/packages/flint/rules/index.js +156 -150
  541. package/packages/flint/rules/naming/filename-kebab-case.js +4 -1
  542. package/packages/flint/rules/naming/must-add-empty-line-before-assert-act-arrange.js +2 -1
  543. package/packages/flint/rules/naming/must-add-prefix-to-po-functions.js +1 -1
  544. package/packages/flint/rules/naming/must-avoid-non-null-assertions.js +1 -1
  545. package/packages/flint/rules/naming/must-create-assert-functions-in-asserts-files.js +1 -1
  546. package/packages/flint/rules/naming/must-get-elements-in-tests-only-by-id.js +6 -3
  547. package/packages/flint/rules/naming/must-name-ui-tests-component-condition-expected-result.js +3 -1
  548. package/packages/flint/rules/naming/must-not-create-funcs-files-for-non-components.js +4 -2
  549. package/packages/flint/rules/naming/must-not-declare-func-inside-another-func.js +4 -3
  550. package/packages/flint/rules/naming/must-not-import-react.js +6 -3
  551. package/packages/flint/rules/naming/must-not-use-all-caps-constants.js +9 -0
  552. package/packages/flint/rules/naming/must-not-use-common-constants-outside-constants-files.d.ts +3 -0
  553. package/packages/flint/rules/naming/must-not-use-common-constants-outside-constants-files.js +8 -0
  554. package/packages/flint/rules/naming/must-not-use-constants-for-getid-functions.d.ts +3 -0
  555. package/packages/flint/rules/naming/must-not-use-constants-for-getid-functions.js +9 -0
  556. package/packages/flint/rules/naming/must-not-use-emojis.js +3 -2
  557. package/packages/flint/rules/naming/must-not-use-indexed-access-type-in-function-params.js +2 -1
  558. package/packages/flint/rules/naming/must-not-use-location-href.js +3 -1
  559. 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
  560. package/packages/flint/rules/naming/must-not-use-negation-with-enums.js +1 -1
  561. package/packages/flint/rules/naming/must-not-use-null.js +4 -2
  562. package/packages/flint/rules/naming/must-not-use-page-directly.js +3 -1
  563. package/packages/flint/rules/naming/must-not-use-po-in-assert-functions.js +4 -3
  564. package/packages/flint/rules/naming/must-not-use-redundant-string.js +4 -2
  565. package/packages/flint/rules/naming/must-not-use-ternary-operator-for-complicated-conditions.js +3 -3
  566. package/packages/flint/rules/naming/must-put-empty-line.d.ts +1 -1
  567. package/packages/flint/rules/naming/must-put-empty-line.js +5 -2
  568. package/packages/flint/rules/naming/must-throw-full-error-objects.js +2 -1
  569. package/packages/flint/rules/naming/must-use-camelcase-for-html-items-id-attribute.js +2 -1
  570. package/packages/flint/rules/naming/must-use-descriptive-names-for-functions-and-parameters.js +5 -1
  571. package/packages/flint/rules/naming/must-use-env-keys-from-constant.js +4 -1
  572. package/packages/flint/rules/naming/must-use-example-domain.js +3 -1
  573. package/packages/flint/rules/naming/must-use-filename-in-assert-functions.js +5 -3
  574. package/packages/flint/rules/naming/must-use-func-declaration-for-named-func.js +2 -2
  575. package/packages/flint/rules/naming/must-use-funcs-only-for-same-named-component.js +2 -1
  576. package/packages/flint/rules/naming/must-use-function-for-component.js +1 -1
  577. package/packages/flint/rules/naming/must-use-functions-for-component-ids.js +9 -0
  578. package/packages/flint/rules/naming/must-use-interface-for-props.js +4 -3
  579. package/packages/flint/rules/naming/must-use-new-url-constructor.js +7 -2
  580. package/packages/flint/rules/naming/must-use-pascal-case-for-types-and-interfaces.js +1 -1
  581. package/packages/flint/rules/naming/must-use-plural-enum-const-and-singular-type.js +8 -3
  582. package/packages/flint/rules/naming/must-use-plural-in-function-names-if-returns-array.d.ts +1 -1
  583. package/packages/flint/rules/naming/must-use-plural-in-function-names-if-returns-array.js +11 -5
  584. package/packages/flint/rules/naming/must-use-plural-names-of-files-for-arrays.js +12 -4
  585. package/packages/flint/rules/naming/must-use-prefix-for-env-vars.d.ts +17 -0
  586. package/packages/flint/rules/naming/must-use-prefix-for-env-vars.js +12 -0
  587. package/packages/flint/rules/naming/must-use-resource-name-instead-of-resource.js +6 -1
  588. package/packages/flint/rules/naming/must-use-s-ending-for-natural-plurals.d.ts +4 -1
  589. package/packages/flint/rules/naming/must-use-s-ending-for-natural-plurals.js +9 -2
  590. package/packages/flint/rules/naming/must-use-suffix-config-instead-of-options.d.ts +3 -0
  591. package/packages/flint/rules/naming/must-use-suffix-config-instead-of-options.js +8 -0
  592. package/packages/flint/rules/naming/must-use-wrappers-to-access-first-element.js +2 -1
  593. package/packages/flint/rules/naming/no-conflicting-props.js +4 -3
  594. package/packages/flint/rules/naming/no-default-props.js +2 -1
  595. package/packages/flint/rules/naming/no-delays-in-ui-tests.js +9 -2
  596. package/packages/flint/rules/naming/no-fd-prefix-in-folders.js +4 -2
  597. package/packages/flint/rules/naming/no-get-in-function-names-without-return.d.ts +1 -1
  598. package/packages/flint/rules/naming/no-get-in-function-names-without-return.js +6 -2
  599. package/packages/flint/rules/naming/no-integers-instead-of-enums.js +3 -2
  600. package/packages/flint/rules/naming/no-nullable-check.js +3 -1
  601. package/packages/flint/rules/naming/no-untyped-objects-between-components.js +7 -2
  602. package/packages/flint/rules/naming/no-use-abstract-categories-in-naming.d.ts +3 -0
  603. package/packages/flint/rules/naming/no-use-abstract-categories-in-naming.js +9 -0
  604. package/packages/flint/rules/naming/no-use-conditional-logic-in-test-assertions.js +2 -1
  605. package/packages/flint/rules/naming/no-use-enum.js +1 -1
  606. package/packages/flint/rules/naming/no-use-id.js +3 -2
  607. package/packages/flint/rules/naming/use-on-prefix.js +3 -1
  608. package/packages/flint/rules/performance/must-clean-up-event-listeners.js +5 -2
  609. package/packages/flint/rules/readability/exported-func-above-regular.js +1 -1
  610. package/packages/flint/rules/readability/for-each-max-lines.d.ts +1 -1
  611. package/packages/flint/rules/readability/for-each-max-lines.js +4 -2
  612. package/packages/flint/rules/readability/max-lines-per-function.d.ts +2 -2
  613. package/packages/flint/rules/readability/max-lines-per-function.js +4 -3
  614. package/packages/flint/rules/readability/must-consolidate-conditional-expressions.js +5 -3
  615. package/packages/flint/rules/readability/must-do-await-data-in-one-line.js +3 -3
  616. package/packages/flint/rules/readability/must-limit-lines-without-comments.d.ts +2 -2
  617. package/packages/flint/rules/readability/must-limit-lines-without-comments.js +3 -2
  618. package/packages/flint/rules/readability/must-not-destructure-function-parameters.js +2 -2
  619. package/packages/flint/rules/{must-not-return-empty-strings.js → readability/must-not-return-empty-strings.js} +3 -3
  620. package/packages/flint/rules/readability/must-not-use-empty-lines-in-html.js +1 -1
  621. package/packages/flint/rules/readability/must-not-use-inline-await.js +4 -1
  622. package/packages/flint/rules/readability/must-not-use-inline-object-type-parameters.js +8 -0
  623. package/packages/flint/rules/{must-not-use-nullish-coalescing-empty-string.js → readability/must-not-use-nullish-coalescing-empty-string.js} +1 -1
  624. package/packages/flint/rules/readability/must-return-empty-array.js +3 -2
  625. package/packages/flint/rules/readability/must-use-alt-to-describe-images.js +5 -2
  626. package/packages/flint/rules/readability/must-use-create-error.js +3 -2
  627. package/packages/flint/rules/readability/must-use-funcs-files-for-components.d.ts +3 -0
  628. package/packages/flint/rules/readability/must-use-funcs-files-for-components.js +7 -0
  629. package/packages/flint/rules/readability/must-use-interfaces-for-complex-types.d.ts +1 -1
  630. package/packages/flint/rules/readability/must-use-interfaces-for-complex-types.js +2 -2
  631. package/packages/flint/rules/readability/must-use-single-return-in-function.js +5 -1
  632. package/packages/flint/rules/readability/must-use-test-comments.js +3 -2
  633. package/packages/flint/rules/readability/no-centralized-error-messages.js +2 -1
  634. package/packages/flint/rules/readability/no-constructor-name-for-resource.js +4 -2
  635. package/packages/flint/rules/readability/no-long-filter-map.d.ts +1 -1
  636. package/packages/flint/rules/readability/no-long-filter-map.js +3 -1
  637. package/packages/flint/rules/readability/no-naked-query-return.js +2 -1
  638. package/packages/flint/rules/readability/no-string-length-check.js +4 -2
  639. package/packages/flint/rules/readability/no-then.js +1 -1
  640. package/packages/flint/rules/readability/no-to-lower-case-with-resource-name.js +2 -1
  641. package/packages/flint/rules/readability/no-useless-destructing.js +2 -1
  642. package/packages/flint/rules/readability/use-function-without-parameter-shortcut.js +2 -1
  643. package/packages/flint/rules/readability/use-nullish-coalescing-for-default.js +4 -3
  644. package/packages/flint-infra/constants/flat-compat.d.ts +2 -0
  645. package/packages/flint-infra/constants/flat-compat.js +8 -0
  646. package/packages/{flint → flint-infra}/constants/messages.d.ts +1 -0
  647. package/packages/{flint → flint-infra}/constants/messages.js +1 -1
  648. package/packages/{flint → flint-infra}/dist/rules/index.d.ts +31 -19
  649. package/packages/flint-infra/dist/rules/index.js +28 -0
  650. package/packages/{flint → flint-infra}/eslint-base.config.d.ts +10 -9
  651. package/packages/flint-infra/eslint-base.config.js +23 -0
  652. package/packages/flint-infra/eslint-next-web-vitals-temp.config.d.ts +3 -0
  653. package/packages/flint-infra/eslint-next-web-vitals-temp.config.js +7 -0
  654. package/packages/flint-infra/non-level-two-eslint-config.d.ts +1 -0
  655. package/packages/flint-infra/non-level-two-eslint-config.js +7 -0
  656. package/packages/flint-infra/paths/resolve-lint-tsconfig-paths.d.ts +2 -0
  657. package/packages/flint-infra/paths/resolve-lint-tsconfig-paths.js +8 -0
  658. package/packages/flint-infra/project-specific-eslint-configs.d.ts +25 -0
  659. package/packages/flint-infra/project-specific-eslint-configs.js +20 -0
  660. package/packages/flint-infra/types/eslint-plugin-github.d.js +1 -0
  661. package/packages/flint-infra/types/typescript-eslint-plugin.d.js +1 -0
  662. package/packages/infra/ci/constants/ci-constants.d.ts +11 -6
  663. package/packages/infra/ci/constants/ci-constants.js +1 -1
  664. package/packages/infra/ci/constants/git-commands.d.ts +2 -3
  665. package/packages/infra/ci/constants/git-commands.js +2 -4
  666. package/packages/infra/ci/constants/npm-commands.d.ts +11 -5
  667. package/packages/infra/ci/constants/npm-commands.js +4 -2
  668. package/packages/infra/ci/constants/paths.d.ts +31 -25
  669. package/packages/infra/ci/constants/paths.js +3 -2
  670. package/packages/infra/ci/external-jobs/build-and-test.d.ts +1 -1
  671. package/packages/infra/ci/external-jobs/build-and-test.js +2 -2
  672. package/packages/infra/ci/external-jobs/lint.d.ts +1 -1
  673. package/packages/infra/ci/external-jobs/lint.js +4 -4
  674. package/packages/infra/ci/external-jobs/prepare-environment.d.ts +1 -1
  675. package/packages/infra/ci/external-jobs/prepare-environment.js +4 -4
  676. package/packages/infra/ci/jobs/build-and-test.js +2 -2
  677. package/packages/infra/ci/jobs/build-db-connection-string.js +1 -1
  678. package/packages/infra/ci/jobs/build-package.js +2 -2
  679. package/packages/infra/ci/jobs/ci-auto-merge.js +4 -4
  680. package/packages/infra/ci/jobs/clear-nx-cache.js +2 -2
  681. package/packages/infra/ci/jobs/cli-create-test.js +7 -6
  682. package/packages/infra/ci/jobs/deploy-to-vercel.js +4 -4
  683. package/packages/infra/ci/jobs/drop-all-db.js +2 -2
  684. package/packages/infra/ci/jobs/lint.js +7 -6
  685. package/packages/infra/ci/jobs/manual-cleanup.d.ts +1 -1
  686. package/packages/infra/ci/jobs/manual-cleanup.js +1 -1
  687. package/packages/infra/ci/jobs/pre-action-required-check.js +3 -3
  688. package/packages/infra/ci/jobs/publish-package.d.ts +1 -0
  689. package/packages/infra/ci/jobs/publish-package.js +4 -4
  690. package/packages/infra/ci/jobs/ranksters-build-and-test.js +2 -2
  691. package/packages/infra/ci/jobs/saas-kit-test-build-and-test.js +4 -4
  692. package/packages/infra/ci/jobs/sync-saas-kit-version-to-main.js +8 -7
  693. package/packages/infra/ci/jobs/unpublish-package.js +4 -4
  694. package/packages/infra/ci/jobs/update-submodules.js +5 -5
  695. package/packages/infra/ci/setup/checkout-and-sync-submodules.js +5 -5
  696. package/packages/infra/ci/setup/cleanup.d.ts +1 -1
  697. package/packages/infra/ci/setup/cleanup.js +4 -4
  698. package/packages/infra/ci/setup/clear-nx-cache-environment.js +2 -2
  699. package/packages/infra/ci/setup/copy-playwright-report.js +2 -2
  700. package/packages/infra/ci/setup/get-build-package-info.js +3 -4
  701. package/packages/infra/ci/setup/get-latest-npm-package-info.d.ts +5 -2
  702. package/packages/infra/ci/setup/get-latest-npm-package-info.js +4 -2
  703. package/packages/infra/ci/setup/init-db.js +2 -2
  704. package/packages/infra/ci/setup/install-local-saaskit.js +4 -5
  705. package/packages/infra/ci/setup/npm-auth.d.ts +1 -1
  706. package/packages/infra/ci/setup/npm-auth.js +3 -3
  707. package/packages/infra/ci/setup/prepare-environment.js +5 -5
  708. package/packages/infra/ci/setup/prettier.d.ts +1 -1
  709. package/packages/infra/ci/setup/prettier.js +4 -5
  710. package/packages/infra/ci/setup/resolve-and-checkout-submodule-branch.d.ts +1 -4
  711. package/packages/infra/ci/setup/resolve-and-checkout-submodule-branch.js +5 -5
  712. package/packages/infra/ci/setup/resolve-main-repo-branch.js +4 -4
  713. package/packages/infra/ci/setup/rollup-cache-cloud.js +3 -3
  714. package/packages/infra/ci/setup/setup-submodules.js +3 -3
  715. package/packages/infra/ci/setup/spawn-background-server.js +3 -3
  716. package/packages/infra/ci/setup/sync-build-artifacts.js +3 -3
  717. package/packages/infra/ci/setup/update-workspace-dependencies.d.ts +1 -1
  718. package/packages/infra/ci/setup/update-workspace-dependencies.js +5 -5
  719. package/packages/infra/ci/setup/verify-published-version.js +4 -4
  720. package/packages/infra/ci/tools/cloud-client.js +10 -0
  721. package/packages/infra/ci/tools/create-early-infra-error.js +4 -0
  722. package/packages/infra/ci/{utils → tools}/exec.d.ts +5 -4
  723. package/packages/infra/ci/tools/exec.js +9 -0
  724. package/packages/infra/ci/{utils → tools}/get-submodule-dir.js +1 -1
  725. package/packages/infra/ci/tools/git-command-funcs.js +6 -0
  726. package/packages/infra/ci/{utils → tools}/git.d.ts +10 -4
  727. package/packages/infra/ci/tools/git.js +18 -0
  728. package/packages/infra/ci/tools/npm-command-funcs.js +8 -0
  729. package/packages/infra/deploy/cluster/cluster-deploy-setup.js +2 -2
  730. package/packages/infra/deploy/cluster/deploy-constants.d.ts +7 -7
  731. package/packages/infra/git/gitlab/gitlab-constants.d.ts +3 -0
  732. package/packages/infra/git/gitlab/gitlab-constants.js +2 -2
  733. package/packages/infra/git/gitlab/gitlab.js +3 -3
  734. package/packages/infra/git/labels.d.ts +2 -1
  735. package/packages/infra/git/labels.js +2 -2
  736. package/packages/infra/git/milestones.d.ts +1 -0
  737. package/packages/infra/plugins/dirname-plugin.js +2 -2
  738. package/packages/infra/tools/git/commit-msg-script.d.ts +1 -1
  739. package/packages/infra/tools/git/commit-msg-script.js +2 -2
  740. package/packages/infra/tools/git/pre-commit-script.js +9 -7
  741. package/packages/level2/ai/server/ai-deepinfra.js +1 -1
  742. package/packages/level2/ai/server/ai-google.js +1 -1
  743. package/packages/level2/ai/server/ai-groq.js +1 -1
  744. package/packages/level2/ai/vercel-ai-sdk/ai.js +2 -2
  745. package/packages/level2/cli/constants.d.ts +3 -0
  746. package/packages/level2/cli/constants.js +6 -0
  747. package/packages/level2/cli/create/configs/drizzle-cli-config.js +1 -1
  748. package/packages/level2/cli/create/configs/next-cli-config.js +3 -2
  749. package/packages/level2/cli/create/configs/playwright-cli-config.js +2 -1
  750. package/packages/level2/client/component-configs/configure-default-config.js +1 -1
  751. package/packages/level2/client/component-configs/edit-resource-configs.d.ts +2 -2
  752. package/packages/level2/client/component-configs/edit-resource-configs.js +2 -2
  753. package/packages/level2/client/component-configs/multi-list-config.js +3 -3
  754. package/packages/level2/client/component-configs/resource-list-configs.d.ts +2 -2
  755. package/packages/level2/client/component-configs/resource-list-configs.js +1 -1
  756. package/packages/level2/client/component-configs/workspace-settings-config.d.ts +2 -1
  757. package/packages/level2/client/component-configs/workspace-settings-config.js +3 -3
  758. package/packages/level2/client/components/feed/Feed.funcs.d.ts +2 -2
  759. package/packages/level2/client/components/feed/Feed.js +2 -1
  760. package/packages/level2/client/components/feed/FeedActions.d.ts +1 -1
  761. package/packages/level2/client/components/feed/FeedHeader.js +2 -1
  762. package/packages/level2/client/components/subscription-plan/SubscriptionPlan.funcs.d.ts +8 -33
  763. package/packages/level2/client/components/subscription-plan/SubscriptionPlan.funcs.js +3 -3
  764. package/packages/level2/client/components/subscription-plan/SubscriptionPlan.js +3 -3
  765. package/packages/level2/client/components/subscription-plan/subscription-plan-config.js +1 -1
  766. package/packages/level2/client/components/subscription-plan/subscriptions.d.ts +2 -2
  767. package/packages/level2/client/components/subscription-plan/subscriptions.js +2 -1
  768. package/packages/level2/client/components/wizard/Wizard.d.ts +1 -1
  769. package/packages/level2/client/components/wizard/Wizard.funcs.js +1 -1
  770. package/packages/level2/client/components/wizard/WizardStepper.funcs.d.ts +1 -1
  771. package/packages/level2/client/components/wizard/WizardStepper.funcs.js +1 -1
  772. package/packages/level2/client/components/wizard/WizardStepper.js +2 -1
  773. package/packages/level2/client/components/wizard/config/wizard-edit-resource-config.d.ts +6 -6
  774. package/packages/level2/client/components/wizard/config/wizard-edit-resource-config.js +1 -1
  775. package/packages/level2/client/components/wizard/fd-wizard-constants.d.ts +1 -1
  776. package/packages/level2/client/components/wizard/wizard-data.d.ts +1 -1
  777. package/packages/level2/client/pages/dashboard-page/DashboardPage.funcs.d.ts +2 -3
  778. package/packages/level2/client/pages/dashboard-page/DashboardPage.funcs.js +3 -2
  779. package/packages/level2/client/pages/dashboard-page/DashboardPage.js +47 -87
  780. package/packages/level2/client/pages/microsoft-page/MicrosoftPage.funcs.js +1 -1
  781. package/packages/level2/client/pages/microsoft-page/MicrosoftPage.js +3 -3
  782. package/packages/level2/client/pages/screenshot-page/TestScreenshotPage.funcs.js +1 -1
  783. package/packages/level2/client/pages/sign-in-page/SignInPage.js +28 -14
  784. package/packages/level2/client/pages/sign-up-page/SignUpPage.js +1 -1
  785. package/packages/level2/client/pages/test-pages/TestPage.js +2 -2
  786. package/packages/level2/client/pages/test-pages/test-page-mocks.d.ts +2 -0
  787. package/packages/level2/client/pages/test-pages/test-page-mocks.js +7 -0
  788. package/packages/level2/client/pages/view-page/ViewPage.funcs.d.ts +1 -1
  789. package/packages/level2/client/pages/view-page/ViewPage.funcs.js +2 -2
  790. package/packages/level2/client/payments/change-payment-method-field/ChangePaymentMethodField.funcs.d.ts +1 -1
  791. package/packages/level2/client/payments/change-payment-method-field/ChangePaymentMethodField.funcs.js +1 -1
  792. package/packages/level2/client/payments/checkout-form/CheckoutForm.funcs.d.ts +1 -29
  793. package/packages/level2/client/payments/checkout-form/CheckoutForm.funcs.js +3 -6
  794. package/packages/level2/client/payments/checkout-form/CheckoutForm.js +3 -2
  795. package/packages/level2/client/payments/checkout-form/CheckoutFormSubmit.funcs.d.ts +1 -0
  796. package/packages/level2/client/payments/checkout-form/CheckoutFormSubmit.funcs.js +7 -0
  797. package/packages/level2/client/payments/checkout-form/CheckoutFormSubmit.js +2 -1
  798. package/packages/level2/client/payments/checkout-form/checkout-form-constants.d.ts +220 -0
  799. package/packages/level2/client/payments/checkout-form/checkout-form-constants.js +6 -0
  800. package/packages/level2/client/payments/checkout-form/checkout-form-fields.js +8 -7
  801. package/packages/level2/client/payments/checkout-form/checkout-form-props.d.ts +1 -1
  802. package/packages/level2/client/payments/checkout-form/checkout-form-stripe.d.ts +21 -0
  803. package/packages/level2/client/payments/checkout-form/checkout-form-stripe.js +6 -0
  804. package/packages/level2/client/payments/checkout-form/checkout-form-validation.d.ts +1 -0
  805. package/packages/level2/client/payments/checkout-form/checkout-form-validation.js +4 -0
  806. package/packages/level2/client/payments/payments.js +1 -1
  807. package/packages/level2/client/products/reject-action-funcs.js +1 -1
  808. package/packages/level2/client/website-scan/website-scan-data.js +1 -1
  809. package/packages/level2/client/website-scan/website-scan-result-social-media.js +1 -1
  810. package/packages/level2/common/addresses/address-types.d.ts +2 -0
  811. package/packages/level2/common/addresses/address.resource.d.ts +2 -0
  812. package/packages/level2/common/addresses/address.resource.js +1 -1
  813. package/packages/level2/common/addresses/country.resource.d.ts +2 -0
  814. package/packages/level2/common/addresses/country.resource.js +1 -1
  815. package/packages/level2/common/auth/permissions/permission-constants.d.ts +2 -0
  816. package/packages/level2/common/auth/permissions/permission-constants.js +1 -1
  817. package/packages/level2/common/auth/roles/role-ids.d.ts +1 -1
  818. package/packages/level2/common/auth/roles/role-names.d.ts +1 -0
  819. package/packages/level2/common/customers/customer.resource.d.ts +1 -0
  820. package/packages/level2/common/customers/customer.resource.js +1 -1
  821. package/packages/level2/common/demo/company.resource.d.ts +1 -0
  822. package/packages/level2/common/demo/company.resource.js +1 -3
  823. package/packages/level2/common/demo/contact.resource.d.ts +1 -0
  824. package/packages/level2/common/demo/contact.resource.js +1 -5
  825. package/packages/level2/common/demo/deal.resource.d.ts +1 -0
  826. package/packages/level2/common/demo/deal.resource.js +1 -1
  827. package/packages/level2/common/demo/demo-resources-enums.d.ts +11 -1
  828. package/packages/level2/common/demo/props/company-props.d.ts +1 -1
  829. package/packages/level2/common/demo/props/dashboard-props.d.ts +1 -1
  830. package/packages/level2/common/demo/props/deal-props.d.ts +1 -0
  831. package/packages/level2/common/demo/props/report-props.d.ts +1 -0
  832. package/packages/level2/common/demo/ticket.resource.d.ts +1 -0
  833. package/packages/level2/common/demo/ticket.resource.js +1 -1
  834. package/packages/level2/common/dev/ai-assistent/ai-assistant.resource.d.ts +1 -0
  835. package/packages/level2/common/dev/ai-assistent/ai-assistant.resource.js +1 -1
  836. package/packages/level2/common/dev/constants/user-ids.d.ts +1 -1
  837. package/packages/level2/common/dev/custom-permission-resource/custom-permission-resource.resource.d.ts +1 -1
  838. package/packages/level2/common/dev/custom-permission-resource/custom-permission-resource.resource.js +1 -1
  839. package/packages/level2/common/dev/dev-enums.d.ts +5 -0
  840. package/packages/level2/common/dev/dev-report.resource.d.ts +1 -1
  841. package/packages/level2/common/dev/dev-report.resource.js +1 -1
  842. package/packages/level2/common/dev/friends/friend.resource.d.ts +1 -1
  843. package/packages/level2/common/dev/friends/friend.resource.js +1 -1
  844. package/packages/level2/common/dev/jobs/job.resource.d.ts +1 -1
  845. package/packages/level2/common/dev/jobs/job.resource.js +1 -1
  846. package/packages/level2/common/dev/no-permission.resource.d.ts +1 -1
  847. package/packages/level2/common/dev/no-permission.resource.js +1 -1
  848. package/packages/level2/common/dev/persons/dev-greeting.resource.d.ts +1 -0
  849. package/packages/level2/common/dev/persons/dev-greeting.resource.js +1 -1
  850. package/packages/level2/common/dev/persons/paper-plane.resource.d.ts +1 -1
  851. package/packages/level2/common/dev/persons/paper-plane.resource.js +1 -1
  852. package/packages/level2/common/dev/persons/person-to-job.resource.d.ts +1 -1
  853. package/packages/level2/common/dev/persons/person-to-job.resource.js +1 -1
  854. package/packages/level2/common/dev/persons/person-to-person.resource.d.ts +1 -1
  855. package/packages/level2/common/dev/persons/person-to-person.resource.js +1 -1
  856. package/packages/level2/common/dev/persons/person.resource-ext.d.ts +1 -1
  857. package/packages/level2/common/dev/persons/person.resource-ext.js +1 -1
  858. package/packages/level2/common/dev/persons/person.resource.d.ts +1 -1
  859. package/packages/level2/common/dev/persons/person.resource.js +1 -2
  860. package/packages/level2/common/dev/persons/phone-brand.resource.d.ts +1 -1
  861. package/packages/level2/common/dev/persons/phone-brand.resource.js +1 -1
  862. package/packages/level2/common/dev/persons/ping.resource.d.ts +1 -1
  863. package/packages/level2/common/dev/persons/ping.resource.js +1 -1
  864. package/packages/level2/common/dev/props/friend-props.d.ts +1 -1
  865. package/packages/level2/common/dev/props/job-props.d.ts +1 -1
  866. package/packages/level2/common/dev/props/person-props.d.ts +1 -1
  867. package/packages/level2/common/dev/props/person-to-job-props.d.ts +1 -1
  868. package/packages/level2/common/dev/props/person-to-person-props.d.ts +1 -1
  869. package/packages/level2/common/dev/props/phone-brand-props.d.ts +1 -1
  870. package/packages/level2/common/dev/singleton-dev-sandbox.resource.js +1 -1
  871. package/packages/level2/common/fd/fd-component-toolbox/status-board/status-board-constants.d.ts +2 -0
  872. package/packages/level2/common/fd/fd-meta-toolbox/status-board/status-board.resource.d.ts +1 -0
  873. package/packages/level2/common/fd/fd-meta-toolbox/status-board/status-board.resource.js +1 -1
  874. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-bank.resource.js +1 -1
  875. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-category.resource.js +1 -1
  876. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-submission.resource.js +1 -1
  877. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field-to-form-section.resource.js +1 -1
  878. package/packages/level2/common/fd/fd-toolbox-web/forms/form-field.resource.js +1 -1
  879. package/packages/level2/common/fd/fd-toolbox-web/forms/form-section.resource.js +1 -1
  880. package/packages/level2/common/fd/fd-toolbox-web/forms/form-submission.resource.js +1 -1
  881. package/packages/level2/common/fd/fd-toolbox-web/forms/form.resource.js +1 -1
  882. package/packages/level2/common/fd/fd-toolbox-web/localization/language.resource.d.ts +1 -0
  883. package/packages/level2/common/fd/fd-toolbox-web/localization/language.resource.js +1 -1
  884. package/packages/level2/common/fd/fd-toolbox-web/localization/localization-string.resource.js +1 -1
  885. package/packages/level2/common/fd/media/screenshot-constants.d.ts +1 -0
  886. package/packages/level2/common/leads/google-place.resource.d.ts +1 -0
  887. package/packages/level2/common/leads/google-place.resource.js +1 -1
  888. package/packages/level2/common/leads/lead-category.resource.d.ts +1 -0
  889. package/packages/level2/common/leads/lead-category.resource.js +1 -1
  890. package/packages/level2/common/leads/lead-email.resource.d.ts +1 -0
  891. package/packages/level2/common/leads/lead-email.resource.js +1 -2
  892. package/packages/level2/common/leads/lead-group.resource.d.ts +1 -0
  893. package/packages/level2/common/leads/lead-group.resource.js +1 -1
  894. package/packages/level2/common/leads/lead-to-lead-category.resource.d.ts +1 -0
  895. package/packages/level2/common/leads/lead-to-lead-category.resource.js +1 -1
  896. package/packages/level2/common/leads/lead-to-lead-group.resource.d.ts +1 -0
  897. package/packages/level2/common/leads/lead-to-lead-group.resource.js +1 -1
  898. package/packages/level2/common/leads/lead.resource.d.ts +1 -0
  899. package/packages/level2/common/leads/lead.resource.js +1 -1
  900. package/packages/level2/common/leads/props/google-place-props.d.ts +1 -0
  901. package/packages/level2/common/leads/props/lead-to-lead-group-props.d.ts +1 -0
  902. package/packages/level2/common/models/create-user-input.d.ts +1 -0
  903. package/packages/level2/common/models/create-user-input.js +1 -1
  904. package/packages/level2/common/models/edit-other-user-dto.d.ts +1 -0
  905. package/packages/level2/common/models/edit-other-user-dto.js +1 -1
  906. package/packages/level2/common/models/edit-user-dto-password.d.ts +1 -0
  907. package/packages/level2/common/models/role-assigned.d.ts +1 -0
  908. package/packages/level2/common/models/user-created.d.ts +1 -0
  909. package/packages/level2/common/models/user-created.js +1 -1
  910. package/packages/level2/common/orders/order-enums.d.ts +2 -0
  911. package/packages/level2/common/orders/order-props.d.ts +1 -0
  912. package/packages/level2/common/payments/feature-to-payment-plan.resource.js +1 -1
  913. package/packages/level2/common/payments/payment-constants.d.ts +6 -1
  914. package/packages/level2/common/payments/payment.resource.d.ts +1 -0
  915. package/packages/level2/common/payments/payment.resource.js +1 -1
  916. package/packages/level2/common/payments/props/payment-props.d.ts +1 -0
  917. package/packages/level2/common/payments/stripe/stripe-constants.d.ts +5 -0
  918. package/packages/level2/common/payments/stripe/stripe-constants.js +1 -1
  919. package/packages/level2/common/payments/system-invoice/payment-system-invoice.resource.js +1 -1
  920. package/packages/level2/common/products/product-constants.d.ts +1 -0
  921. package/packages/level2/common/products/product-enums.d.ts +2 -0
  922. package/packages/level2/common/products/product-parameter.resource.d.ts +1 -0
  923. package/packages/level2/common/products/product-parameter.resource.js +1 -1
  924. package/packages/level2/common/resources/case.resource2.js +1 -1
  925. package/packages/level2/common/resources/dashboard-report.resource.d.ts +1 -0
  926. package/packages/level2/common/resources/dashboard-report.resource.js +1 -1
  927. package/packages/level2/common/resources/dashboard.resource.d.ts +1 -0
  928. package/packages/level2/common/resources/dashboard.resource.js +1 -1
  929. package/packages/level2/common/resources/feed-entry.resource.js +1 -1
  930. package/packages/level2/common/resources/integration-subscription.resource.js +1 -1
  931. package/packages/level2/common/resources/item.resource.d.ts +1 -0
  932. package/packages/level2/common/resources/item.resource.js +1 -1
  933. package/packages/level2/common/resources/oauth-service.resource.d.ts +1 -1
  934. package/packages/level2/common/resources/oauth-service.resource.js +1 -1
  935. package/packages/level2/common/resources/order-line.resource.d.ts +1 -0
  936. package/packages/level2/common/resources/order-line.resource.js +1 -1
  937. package/packages/level2/common/resources/order-transaction.resource.d.ts +1 -0
  938. package/packages/level2/common/resources/order-transaction.resource.js +1 -1
  939. package/packages/level2/common/resources/order.resource.d.ts +1 -0
  940. package/packages/level2/common/resources/order.resource.js +1 -1
  941. package/packages/level2/common/resources/product-category.resource.d.ts +1 -0
  942. package/packages/level2/common/resources/product-category.resource.js +1 -1
  943. package/packages/level2/common/resources/product-media.resource.d.ts +1 -0
  944. package/packages/level2/common/resources/product-media.resource.js +1 -1
  945. package/packages/level2/common/resources/product.resource.d.ts +1 -0
  946. package/packages/level2/common/resources/product.resource.js +1 -1
  947. package/packages/level2/common/resources/props/feature-props.d.ts +1 -0
  948. package/packages/level2/common/resources/props/integration-subscription-props.d.ts +1 -0
  949. package/packages/level2/common/resources/props/oauth-service-props.d.ts +1 -0
  950. package/packages/level2/common/resources/props/website-scan-result-props.d.ts +1 -0
  951. package/packages/level2/common/resources/search.resource.d.ts +1 -0
  952. package/packages/level2/common/resources/search.resource.js +1 -1
  953. package/packages/level2/common/resources/searchable-resource.resource.js +1 -1
  954. package/packages/level2/common/resources/system-setting.resource.d.ts +1 -0
  955. package/packages/level2/common/resources/system-setting.resource.js +1 -1
  956. package/packages/level2/common/resources/website-scan-result.resource.d.ts +1 -0
  957. package/packages/level2/common/resources/website-scan-result.resource.js +1 -1
  958. package/packages/level2/common/resources/workspace-setting.resource.d.ts +1 -0
  959. package/packages/level2/common/resources/workspace-setting.resource.js +1 -1
  960. package/packages/level2/common/shipment/shipment-label-type.d.ts +2 -0
  961. package/packages/level2/common/shipment/shipment-provider-type.d.ts +2 -0
  962. package/packages/level2/common/shipment/shipment-provider.resource.d.ts +1 -0
  963. package/packages/level2/common/shipment/shipment-provider.resource.js +1 -1
  964. package/packages/level2/common/shipment/shipment-tracking-status.d.ts +2 -0
  965. package/packages/level2/common/shipment/shipment.resource.d.ts +1 -0
  966. package/packages/level2/common/shipment/shipment.resource.js +1 -2
  967. package/packages/level2/common/stores/store-enums.d.ts +2 -0
  968. package/packages/level2/common/stores/store-props.d.ts +1 -0
  969. package/packages/level2/common/stores/store.resource.d.ts +1 -0
  970. package/packages/level2/common/stores/store.resource.js +1 -1
  971. package/packages/level2/common/subscription-plan/subscription-plan-constants.d.ts +14 -2
  972. package/packages/level2/common/subscription-plan/subscription-plan-constants.js +2 -2
  973. package/packages/level2/common/tutorial/student.resource.js +1 -1
  974. package/packages/level2/common/tutorial/teacher.resource.js +1 -1
  975. package/packages/level2/common/users/user-token-purposes.d.ts +1 -0
  976. package/packages/level2/common/website-scan/analytics-scan.d.ts +1 -0
  977. package/packages/level2/common/website-scan/analytics-scan.js +1 -1
  978. package/packages/level2/common/website-scan/social-media-links.d.ts +1 -0
  979. package/packages/level2/common/website-scan/website-platform-checking.d.ts +1 -0
  980. package/packages/level2/common/website-scan/website-platform-checking.js +1 -1
  981. package/packages/level2/common/website-scan/website-scan-request-types.d.ts +1 -0
  982. package/packages/level2/common/website-scan/website-scan-result-analytics-type.d.ts +1 -0
  983. package/packages/level2/common/website-scan/website-scan-result-platform-type.d.ts +1 -0
  984. package/packages/level2/db/adapters/postgres-adapter.js +4 -3
  985. package/packages/level2/db/adapters/sqlite-adapter.js +2 -2
  986. package/packages/level2/db/constants/db-constants.d.ts +3 -0
  987. package/packages/level2/db/constants/db-constants.js +5 -3
  988. package/packages/level2/db/constants/schema-names.d.ts +2 -0
  989. package/packages/level2/db/constants/schema-names.js +4 -4
  990. package/packages/level2/db/db-config.d.ts +2 -0
  991. package/packages/level2/db/db-config.js +1 -1
  992. package/packages/level2/db/db-connection.d.ts +22 -2
  993. package/packages/level2/db/db-connection.js +2 -2
  994. package/packages/level2/db/db-schema.d.ts +1 -0
  995. package/packages/level2/db/db-schema.js +1 -1
  996. package/packages/level2/db/drizzle-queries.d.ts +7 -0
  997. package/packages/level2/db/drizzle-queries.js +1 -1
  998. package/packages/level2/db/guards/db-type-guards.d.ts +1 -0
  999. package/packages/level2/db/guards/db-type-guards.js +2 -2
  1000. package/packages/level2/db/types/db-types.d.ts +15 -4
  1001. package/packages/level2/db/utils/run-migration-command.d.ts +1 -0
  1002. package/packages/level2/db/utils/run-migration-command.js +3 -3
  1003. package/packages/level2/db/utils/schema-table-names.js +1 -1
  1004. package/packages/level2/enricher/constants/enricher-error-message-constants.d.ts +1 -0
  1005. package/packages/level2/enricher/integrations/google-spreadsheet.d.ts +4 -0
  1006. package/packages/level2/enricher/integrations/google-spreadsheet.js +2 -2
  1007. package/packages/level2/fd-app-toolbox/auth-forms/auth-register.d.ts +4 -0
  1008. package/packages/level2/fd-app-toolbox/auth-forms/auth-register.js +10 -0
  1009. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/LoginForm.funcs.d.ts +4 -7
  1010. package/packages/level2/fd-app-toolbox/auth-forms/login-form/LoginForm.funcs.js +15 -0
  1011. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/LoginForm.js +28 -27
  1012. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/facebook-login.d.ts +2 -1
  1013. package/packages/level2/fd-app-toolbox/auth-forms/login-form/facebook-login.js +18 -0
  1014. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/google-login.d.ts +2 -1
  1015. package/packages/level2/fd-app-toolbox/auth-forms/login-form/google-login.js +18 -0
  1016. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/microsoft-login.d.ts +4 -2
  1017. package/packages/level2/fd-app-toolbox/auth-forms/login-form/microsoft-login.js +20 -0
  1018. package/packages/level2/fd-app-toolbox/auth-forms/login-form/normalize-email.d.ts +1 -0
  1019. package/packages/level2/fd-app-toolbox/auth-forms/login-form/normalize-email.js +7 -0
  1020. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/oauth-login-config.d.ts +3 -3
  1021. package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/standard-login.d.ts +5 -3
  1022. package/packages/level2/fd-app-toolbox/auth-forms/login-form/standard-login.js +15 -0
  1023. package/packages/level2/fd-app-toolbox/{register-form → auth-forms/register-form}/RegisterForm.d.ts +1 -1
  1024. package/packages/level2/fd-app-toolbox/auth-forms/register-form/RegisterForm.funcs.d.ts +5 -0
  1025. package/packages/level2/fd-app-toolbox/auth-forms/register-form/RegisterForm.funcs.js +9 -0
  1026. package/packages/level2/fd-app-toolbox/{register-form → auth-forms/register-form}/RegisterForm.js +22 -21
  1027. package/packages/level2/fd-app-toolbox/constants/form-constants.d.ts +1 -0
  1028. package/packages/level2/fd-app-toolbox/constants/user-friendly-workspace-invite-messages.d.ts +1 -0
  1029. package/packages/level2/fd-app-toolbox/constants/web-socket-methods.d.ts +1 -0
  1030. package/packages/level2/fd-app-toolbox/edit-other-user/EditOtherUser.d.ts +1 -0
  1031. package/packages/level2/fd-app-toolbox/edit-password-form/EditPasswordForm.funcs.d.ts +3 -3
  1032. package/packages/level2/fd-app-toolbox/edit-password-form/EditPasswordForm.funcs.js +1 -1
  1033. package/packages/level2/fd-app-toolbox/edit-password-form/EditPasswordForm.js +5 -5
  1034. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.d.ts +1 -1
  1035. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.funcs.d.ts +4 -4
  1036. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.funcs.js +2 -2
  1037. package/packages/level2/fd-app-toolbox/edit-user-form/EditUserForm.js +7 -7
  1038. package/packages/level2/fd-app-toolbox/edit-user-sheet/EditUserSheet.d.ts +1 -1
  1039. package/packages/level2/fd-app-toolbox/edit-user-sheet/EditUserSheet.funcs.d.ts +1 -1
  1040. package/packages/level2/fd-app-toolbox/edit-user-sheet/EditUserSheet.funcs.js +1 -1
  1041. package/packages/level2/fd-app-toolbox/enums/sidebar-status.d.ts +6 -0
  1042. package/packages/level2/fd-app-toolbox/enums/sidebar-status.js +4 -0
  1043. package/packages/level2/fd-app-toolbox/forgot-password-form/ForgotPasswordForm.funcs.d.ts +4 -4
  1044. package/packages/level2/fd-app-toolbox/forgot-password-form/ForgotPasswordForm.funcs.js +1 -1
  1045. package/packages/level2/fd-app-toolbox/forgot-password-form/ForgotPasswordForm.js +5 -4
  1046. package/packages/level2/fd-app-toolbox/forgot-password-form/forgot-password-messages-constants.d.ts +1 -1
  1047. package/packages/level2/fd-app-toolbox/layout/client-layout/client-layout-config.js +1 -1
  1048. package/packages/level2/fd-app-toolbox/layout/client-root/ClientRoot.funcs.d.ts +1 -1
  1049. package/packages/level2/fd-app-toolbox/layout/client-root/ClientRoot.funcs.js +2 -2
  1050. package/packages/level2/fd-app-toolbox/layout/client-root/ClientRoot.js +1 -1
  1051. package/packages/level2/fd-app-toolbox/layout/sidebar/Sidebar.d.ts +1 -1
  1052. package/packages/level2/fd-app-toolbox/layout/sidebar/Sidebar.funcs.d.ts +2 -7
  1053. package/packages/level2/fd-app-toolbox/layout/sidebar/Sidebar.funcs.js +4 -2
  1054. package/packages/level2/fd-app-toolbox/layout/sidebar/Sidebar.js +1 -1
  1055. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/DropdownMenuItemTitle.d.ts +1 -1
  1056. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/SidebarDropdownMenu.funcs.d.ts +1 -1
  1057. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/SidebarDropdownMenu.funcs.js +1 -1
  1058. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-dropdown-menu/SidebarDropdownMenu.js +2 -2
  1059. package/packages/level2/fd-app-toolbox/layout/sidebar/sidebar-resource-names-cache.js +1 -1
  1060. package/packages/level2/fd-app-toolbox/layout/toolbar/Toolbar.funcs.d.ts +1 -2
  1061. package/packages/level2/fd-app-toolbox/layout/toolbar/Toolbar.funcs.js +3 -13
  1062. package/packages/level2/fd-app-toolbox/layout/toolbar/Toolbar.js +67 -57
  1063. package/packages/level2/fd-app-toolbox/layout/{hamburger-menu → toolbar/hamburger-menu}/HamburgerMenu.d.ts +2 -2
  1064. package/packages/level2/fd-app-toolbox/layout/{hamburger-menu → toolbar/hamburger-menu}/HamburgerMenu.js +9 -9
  1065. package/packages/level2/fd-app-toolbox/layout/toolbar/toolbar-menu-subgroups.d.ts +2 -0
  1066. package/packages/level2/fd-app-toolbox/layout/toolbar/toolbar-menu-subgroups.js +17 -0
  1067. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.d.ts +3 -0
  1068. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.funcs.d.ts +6 -6
  1069. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.funcs.js +3 -2
  1070. package/packages/level2/fd-app-toolbox/menu/notifications-menu/NotificationMenu.js +71 -48
  1071. package/packages/level2/fd-app-toolbox/menu/notifications-menu/notification-list/NotificationList.d.ts +3 -0
  1072. package/packages/level2/fd-app-toolbox/menu/notifications-menu/notification-list/NotificationList.funcs.d.ts +3 -3
  1073. package/packages/level2/fd-app-toolbox/menu/notifications-menu/notification-list/NotificationList.funcs.js +2 -1
  1074. package/packages/level2/fd-app-toolbox/menu/notifications-menu/notification-list/NotificationList.js +67 -52
  1075. package/packages/level2/fd-app-toolbox/menu/themes.js +1 -1
  1076. package/packages/level2/fd-app-toolbox/menu/top-menu/top-menu-item/TopMenuItem.funcs.js +1 -1
  1077. package/packages/level2/fd-app-toolbox/menu/top-menu/top-menu-types.d.ts +1 -1
  1078. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/UserDropdownMenu.funcs.d.ts +1 -1
  1079. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/UserDropdownMenu.funcs.js +1 -1
  1080. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/UserDropdownMenu.js +1 -1
  1081. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/user-dropdown-menu-item/UserDropdownMenuItem.d.ts +1 -1
  1082. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/user-dropdown-menu-item/UserDropdownMenuItem.funcs.d.ts +2 -2
  1083. package/packages/level2/fd-app-toolbox/menu/user-dropdown-menu/user-dropdown-menu-item/UserDropdownMenuItem.funcs.js +1 -1
  1084. package/packages/level2/fd-app-toolbox/menu/visible-workspace-picker/VisibleWorkspacePicker.funcs.d.ts +1 -1
  1085. package/packages/level2/fd-app-toolbox/menu/visible-workspace-picker/VisibleWorkspacePicker.funcs.js +1 -1
  1086. package/packages/level2/fd-app-toolbox/menu/workspace-picker/WorkspacePicker.funcs.d.ts +3 -3
  1087. package/packages/level2/fd-app-toolbox/menu/workspace-picker/WorkspacePicker.funcs.js +1 -1
  1088. package/packages/level2/fd-app-toolbox/models/result.d.ts +1 -0
  1089. package/packages/level2/fd-app-toolbox/models/screens-result.d.ts +1 -0
  1090. package/packages/level2/fd-app-toolbox/models/screens-result.js +1 -1
  1091. package/packages/level2/fd-app-toolbox/models/searchable-resource-result.d.ts +1 -0
  1092. package/packages/level2/fd-app-toolbox/models/searchable-resource-result.js +1 -1
  1093. package/packages/level2/fd-app-toolbox/passwords/edit-password-dto.d.ts +1 -0
  1094. package/packages/level2/fd-app-toolbox/passwords/edit-password-dto.js +2 -2
  1095. package/packages/level2/fd-app-toolbox/passwords/passwords-api.d.ts +3 -6
  1096. package/packages/level2/fd-app-toolbox/passwords/passwords-api.js +1 -1
  1097. package/packages/level2/fd-app-toolbox/providers/ThemeProvider/ThemeProvider.d.ts +1 -1
  1098. package/packages/level2/fd-app-toolbox/providers/ThemeProvider/theme.d.ts +1 -1
  1099. package/packages/level2/fd-app-toolbox/providers/ThemeProvider/theme.js +1 -1
  1100. package/packages/level2/fd-app-toolbox/providers/auth-provider/AuthProvider.js +2 -2
  1101. package/packages/level2/fd-app-toolbox/providers/sidebar-provider/SidebarContext.d.ts +2 -2
  1102. package/packages/level2/fd-app-toolbox/providers/sidebar-provider/SidebarContext.js +1 -1
  1103. package/packages/level2/fd-app-toolbox/report/ReportComponent.d.ts +1 -0
  1104. package/packages/level2/fd-app-toolbox/report/ReportComponent.js +2 -2
  1105. package/packages/level2/fd-app-toolbox/report/fetch-report-with-data.d.ts +1 -0
  1106. package/packages/level2/fd-app-toolbox/report/fetch-report-with-data.js +8 -0
  1107. package/packages/level2/fd-app-toolbox/report/{ReportCard.d.ts → report-card/ReportCard.d.ts} +1 -1
  1108. package/packages/level2/fd-app-toolbox/report/report-card/ReportCard.funcs.d.ts +4 -0
  1109. package/packages/level2/fd-app-toolbox/report/report-card/ReportCard.funcs.js +7 -0
  1110. package/packages/level2/fd-app-toolbox/report/{ReportCard.js → report-card/ReportCard.js} +4 -4
  1111. package/packages/level2/fd-app-toolbox/report/{ReportChart.d.ts → report-chart/ReportChart.d.ts} +1 -1
  1112. package/packages/level2/fd-app-toolbox/report/report-chart/ReportChart.funcs.d.ts +4 -0
  1113. package/packages/level2/fd-app-toolbox/report/report-chart/ReportChart.funcs.js +6 -0
  1114. package/packages/level2/fd-app-toolbox/report/{ReportChart.js → report-chart/ReportChart.js} +4 -4
  1115. package/packages/level2/fd-app-toolbox/reports/dashboard-report-data.resource.d.ts +1 -0
  1116. package/packages/level2/fd-app-toolbox/reports/dashboard-report-data.resource.js +1 -1
  1117. package/packages/level2/fd-app-toolbox/reports/report-chart-series.resource.js +1 -1
  1118. package/packages/level2/fd-app-toolbox/reports/report-enums.d.ts +3 -0
  1119. package/packages/level2/fd-app-toolbox/reports/report-with-data.resource.js +1 -1
  1120. package/packages/level2/fd-app-toolbox/reports/report.resource.d.ts +1 -0
  1121. package/packages/level2/fd-app-toolbox/reports/report.resource.js +1 -1
  1122. package/packages/level2/fd-app-toolbox/reset-password-form/ResetPasswordForm.funcs.d.ts +4 -4
  1123. package/packages/level2/fd-app-toolbox/reset-password-form/ResetPasswordForm.funcs.js +1 -1
  1124. package/packages/level2/fd-app-toolbox/reset-password-form/ResetPasswordForm.js +6 -6
  1125. package/packages/level2/fd-app-toolbox/reset-password-form/reset-password-form-constants.d.ts +1 -1
  1126. package/packages/level2/fd-app-toolbox/resources/notification/notification.resource.js +1 -1
  1127. package/packages/level2/fd-app-toolbox/resources/search-result.resource.d.ts +1 -0
  1128. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-item.resource.d.ts +1 -0
  1129. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-item.resource.js +1 -1
  1130. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-status.resource.d.ts +1 -0
  1131. package/packages/level2/fd-app-toolbox/resources/status-board/status-board-status.resource.js +1 -1
  1132. package/packages/level2/fd-app-toolbox/search/Search.funcs.d.ts +3 -3
  1133. package/packages/level2/fd-app-toolbox/search/Search.funcs.js +1 -1
  1134. package/packages/level2/fd-app-toolbox/search/resource-search-result.d.ts +11 -0
  1135. package/packages/level2/fd-app-toolbox/search/search-dialog/SearchDialog.d.ts +1 -1
  1136. package/packages/level2/fd-app-toolbox/search/search-dialog/SearchDialog.funcs.js +2 -2
  1137. package/packages/level2/fd-app-toolbox/search/search-dialog/SearchDialog.js +2 -1
  1138. package/packages/level2/fd-app-toolbox/search/search-dialog-provider.d.ts +1 -1
  1139. package/packages/level2/fd-app-toolbox/search/search-dialog-table-config.d.ts +4 -0
  1140. package/packages/level2/fd-app-toolbox/search/search-dialog-table-config.js +4 -0
  1141. package/packages/level2/fd-app-toolbox/search/search-input/SearchInput.d.ts +1 -1
  1142. package/packages/level2/fd-app-toolbox/search/search-resource-results/SearchResourcesResults.d.ts +2 -2
  1143. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.d.ts +1 -1
  1144. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.funcs.d.ts +1 -5
  1145. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.funcs.js +2 -2
  1146. package/packages/level2/fd-app-toolbox/search/search-result/SearchResult.js +2 -1
  1147. package/packages/level2/fd-app-toolbox/search/search-searchable-resource-results/SearchSearchableResourceResult.funcs.d.ts +2 -2
  1148. package/packages/level2/fd-app-toolbox/search/search-searchable-resource-results/SearchSearchableResourceResult.funcs.js +3 -3
  1149. package/packages/level2/fd-app-toolbox/server/base-resources/props/fill-base-resource-props.js +1 -1
  1150. package/packages/level2/fd-app-toolbox/server/base-resources/props/fill-workspace-resource-props.d.ts +1 -0
  1151. package/packages/level2/fd-app-toolbox/server/base-resources/props/fill-workspace-resource-props.js +1 -1
  1152. package/packages/level2/fd-app-toolbox/server/infra/workspaces/workspace-db.d.ts +11 -5
  1153. package/packages/level2/fd-app-toolbox/server/infra/workspaces/workspace-db.js +1 -1
  1154. package/packages/level2/fd-app-toolbox/server/layout/sidebar/sidebar-resources.js +1 -1
  1155. package/packages/level2/fd-app-toolbox/server/users/user-db.d.ts +1 -0
  1156. package/packages/level2/fd-app-toolbox/server/users/user-db.js +1 -1
  1157. package/packages/level2/fd-app-toolbox/server/workspace/visible-workspaces.d.ts +5 -0
  1158. package/packages/level2/fd-app-toolbox/server/workspace/visible-workspaces.js +1 -1
  1159. package/packages/level2/fd-app-toolbox/services/web-socket-client.d.ts +1 -1
  1160. package/packages/level2/fd-app-toolbox/services/web-socket-client.js +1 -1
  1161. package/packages/level2/fd-app-toolbox/status-board/StatusBoard.funcs.d.ts +2 -5
  1162. package/packages/level2/fd-app-toolbox/status-board/StatusBoard.funcs.js +1 -1
  1163. package/packages/level2/fd-app-toolbox/status-board/status-board-constants.d.ts +2 -0
  1164. package/packages/level2/fd-app-toolbox/user-dto.d.ts +2 -0
  1165. package/packages/level2/fd-app-toolbox/user-dto.js +2 -2
  1166. package/packages/level2/fd-app-toolbox/user-list/UserList.d.ts +2 -0
  1167. package/packages/level2/fd-app-toolbox/user-list/UserList.funcs.d.ts +1 -1
  1168. package/packages/level2/fd-app-toolbox/user-list/UserList.funcs.js +2 -2
  1169. package/packages/level2/fd-component-toolbox/avatar/Avatar.d.ts +1 -0
  1170. package/packages/level2/fd-component-toolbox/avatar/Avatar.js +2 -1
  1171. package/packages/level2/fd-component-toolbox/back-button/BackButton.d.ts +2 -1
  1172. package/packages/level2/fd-component-toolbox/badge-toggle-list/BadgeToggleList.d.ts +1 -1
  1173. package/packages/level2/fd-component-toolbox/badge-toggle-list/BadgeToggleList.funcs.d.ts +1 -1
  1174. package/packages/level2/fd-component-toolbox/badge-toggle-list/BadgeToggleList.funcs.js +1 -1
  1175. package/packages/level2/fd-component-toolbox/big-calendar/BigCalendar.d.ts +2 -0
  1176. package/packages/level2/fd-component-toolbox/big-calendar/BigCalendar.funcs.d.ts +0 -1
  1177. package/packages/level2/fd-component-toolbox/big-calendar/BigCalendar.funcs.js +2 -19
  1178. package/packages/level2/fd-component-toolbox/button/Button.d.ts +7 -6
  1179. package/packages/level2/fd-component-toolbox/button/Button.funcs.js +1 -1
  1180. package/packages/level2/fd-component-toolbox/button/Button.js +2 -2
  1181. package/packages/level2/fd-component-toolbox/calendar/Calendar.funcs.js +1 -1
  1182. package/packages/level2/fd-component-toolbox/calendar/calendar-constants.js +3 -3
  1183. package/packages/level2/fd-component-toolbox/checkbox/Checkbox.d.ts +1 -1
  1184. package/packages/level2/fd-component-toolbox/client/framework/index.d.ts +4 -26
  1185. package/packages/level2/fd-component-toolbox/client/framework/index.js +2 -6
  1186. package/packages/level2/fd-component-toolbox/constants/component-toolbox-constants.d.ts +4 -0
  1187. package/packages/level2/fd-component-toolbox/constants/component-toolbox-constants.js +6 -0
  1188. package/packages/level2/fd-component-toolbox/{table-element-suffixes.d.ts → constants/table-element-suffixes.d.ts} +1 -1
  1189. package/packages/level2/fd-component-toolbox/{table-element-suffixes.js → constants/table-element-suffixes.js} +2 -2
  1190. package/packages/level2/fd-component-toolbox/datepicker/DatePicker.d.ts +1 -1
  1191. package/packages/level2/fd-component-toolbox/datepicker/DatePicker.funcs.d.ts +1 -1
  1192. package/packages/level2/fd-component-toolbox/datepicker/DatePicker.funcs.js +1 -1
  1193. package/packages/level2/fd-component-toolbox/dialog/YesOrNoDialog.d.ts +1 -1
  1194. package/packages/level2/fd-component-toolbox/dialog/YesOrNoDialog.funcs.d.ts +1 -1
  1195. package/packages/level2/fd-component-toolbox/dialog/YesOrNoDialog.funcs.js +1 -1
  1196. package/packages/level2/fd-component-toolbox/dialog/dialog-constants.d.ts +1 -0
  1197. package/packages/level2/fd-component-toolbox/drag-and-drop/Draggable.js +2 -2
  1198. package/packages/level2/fd-component-toolbox/dynamic-layout/DynamicLayoutDragAndDrop.funcs.d.ts +1 -2
  1199. package/packages/level2/fd-component-toolbox/dynamic-layout/DynamicLayoutDragAndDrop.funcs.js +4 -2
  1200. package/packages/level2/fd-component-toolbox/fade-out-text/FadeOutText.d.ts +2 -1
  1201. package/packages/level2/fd-component-toolbox/fade-out-text/FadeOutText.funcs.d.ts +1 -1
  1202. package/packages/level2/fd-component-toolbox/fade-out-text/FadeOutText.funcs.js +1 -1
  1203. package/packages/level2/fd-component-toolbox/form/form-field-focus.d.ts +3 -0
  1204. package/packages/level2/fd-component-toolbox/form/form-field-focus.js +4 -0
  1205. package/packages/level2/fd-component-toolbox/icon/Icon.d.ts +1 -0
  1206. package/packages/level2/fd-component-toolbox/image/Image.js +2 -1
  1207. package/packages/level2/fd-component-toolbox/image-radio-group/ImageRadioGroup.d.ts +1 -1
  1208. package/packages/level2/fd-component-toolbox/image-radio-group/ImageRadioGroup.js +2 -2
  1209. package/packages/level2/fd-component-toolbox/input/Input.d.ts +2 -1
  1210. package/packages/level2/fd-component-toolbox/input/Input.funcs.d.ts +4 -2
  1211. package/packages/level2/fd-component-toolbox/input/Input.funcs.js +5 -2
  1212. package/packages/level2/fd-component-toolbox/input/Input.js +19 -10
  1213. package/packages/level2/fd-component-toolbox/link/Link.js +2 -1
  1214. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.d.ts +1 -1
  1215. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.funcs.d.ts +1 -1
  1216. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.funcs.js +1 -1
  1217. package/packages/level2/fd-component-toolbox/list/list-item/ListItem.js +2 -2
  1218. package/packages/level2/fd-component-toolbox/markdown/Markdown.d.ts +1 -1
  1219. package/packages/level2/fd-component-toolbox/markdown/Markdown.funcs.d.ts +2 -2
  1220. package/packages/level2/fd-component-toolbox/markdown/Markdown.funcs.js +1 -1
  1221. package/packages/level2/fd-component-toolbox/markdown/Markdown.js +4 -4
  1222. package/packages/level2/fd-component-toolbox/markdown/markdown-parser.d.ts +3 -1
  1223. package/packages/level2/fd-component-toolbox/markdown/markdown-parser.js +1 -2
  1224. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.d.ts +1 -1
  1225. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.funcs.d.ts +1 -1
  1226. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.funcs.js +1 -1
  1227. package/packages/level2/fd-component-toolbox/multiselect/Multiselect.js +7 -8
  1228. package/packages/level2/fd-component-toolbox/multiselect/hooks/use-multi-select.d.ts +3 -2
  1229. package/packages/level2/fd-component-toolbox/multiselect/hooks/use-multi-select.js +2 -2
  1230. package/packages/level2/fd-component-toolbox/navigation/navigation-item/NavigationItem.funcs.js +1 -1
  1231. package/packages/level2/fd-component-toolbox/rich-text/RichText.d.ts +1 -1
  1232. package/packages/level2/fd-component-toolbox/rich-text/RichText.funcs.js +3 -3
  1233. package/packages/level2/fd-component-toolbox/rich-text/rich-text-constants.js +1 -1
  1234. package/packages/level2/fd-component-toolbox/save-status/SaveStatus.js +3 -3
  1235. package/packages/level2/fd-component-toolbox/search/filter-names-constants.d.ts +1 -0
  1236. package/packages/level2/fd-component-toolbox/select/Select.d.ts +6 -0
  1237. package/packages/level2/fd-component-toolbox/select/Select.js +2 -2
  1238. package/packages/level2/fd-component-toolbox/sheet/Sheet.js +4 -4
  1239. package/packages/level2/fd-component-toolbox/sizing/sizing.d.ts +1 -0
  1240. package/packages/level2/fd-component-toolbox/sizing/sizing.js +2 -2
  1241. package/packages/level2/fd-component-toolbox/slide-toggle/SlideToggle.d.ts +1 -1
  1242. package/packages/level2/fd-component-toolbox/switch/Switch.d.ts +1 -1
  1243. package/packages/level2/fd-component-toolbox/switch/Switch.funcs.d.ts +1 -1
  1244. package/packages/level2/fd-component-toolbox/switch/Switch.funcs.js +1 -1
  1245. package/packages/level2/fd-component-toolbox/textarea/TextArea.d.ts +1 -1
  1246. package/packages/level2/fd-component-toolbox/textarea/TextArea.funcs.d.ts +2 -2
  1247. package/packages/level2/fd-component-toolbox/textarea/TextArea.funcs.js +3 -1
  1248. package/packages/level2/fd-component-toolbox/toaster/Toaster.funcs.js +1 -1
  1249. package/packages/level2/fd-component-toolbox/tooltip/Tooltip.d.ts +3 -2
  1250. package/packages/level2/fd-component-toolbox/tooltip/Tooltip.js +2 -2
  1251. package/packages/level2/meta/api/hooks/use-ui-resource-meta.js +1 -1
  1252. package/packages/level2/meta/api/meta-odata.d.ts +1 -1
  1253. package/packages/level2/meta/api/meta-odata.js +1 -1
  1254. package/packages/level2/meta/auth/auth-guards.d.ts +1 -0
  1255. package/packages/level2/meta/auth/auth-guards.js +2 -2
  1256. package/packages/level2/meta/auth/auth-handler.d.ts +2 -0
  1257. package/packages/level2/meta/auth/auth-handler.js +1 -1
  1258. package/packages/level2/meta/auth/login.d.ts +7 -1
  1259. package/packages/level2/meta/auth/logins.d.ts +3 -2
  1260. package/packages/level2/meta/auth/logins.js +4 -4
  1261. package/packages/level2/meta/auth/permissions/permission-checker.d.ts +5 -0
  1262. package/packages/level2/meta/auth/permissions/permission-checker.js +4 -4
  1263. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.d.ts +1 -1
  1264. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.funcs.d.ts +1 -8
  1265. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.funcs.js +3 -7
  1266. package/packages/level2/meta/browsers/base-multi-browser/BaseMultiBrowser.js +3 -3
  1267. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.d.ts +1 -1
  1268. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.funcs.d.ts +11 -1
  1269. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.funcs.js +6 -3
  1270. package/packages/level2/meta/browsers/base-multi-browser/base-multi-browser-dialog/BaseMultiBrowserDialog.js +9 -10
  1271. package/packages/level2/meta/browsers/browser/Browser.d.ts +1 -1
  1272. package/packages/level2/meta/browsers/browser/Browser.funcs.d.ts +1 -2
  1273. package/packages/level2/meta/browsers/browser/Browser.funcs.js +3 -2
  1274. package/packages/level2/meta/browsers/browser/Browser.js +6 -5
  1275. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.d.ts +1 -1
  1276. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.funcs.d.ts +3 -5
  1277. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.funcs.js +4 -3
  1278. package/packages/level2/meta/browsers/browser/browser-dialog/BrowserDialog.js +5 -6
  1279. package/packages/level2/meta/browsers/browser/short-resource-descriptor.d.ts +1 -0
  1280. package/packages/level2/meta/browsers/browser/short-resource-descriptor.js +4 -1
  1281. package/packages/level2/meta/browsers/browser-selection.d.ts +8 -0
  1282. package/packages/level2/meta/browsers/browser-selection.js +7 -0
  1283. package/packages/level2/meta/browsers/browser-type.d.ts +2 -1
  1284. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.d.ts +1 -1
  1285. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.funcs.d.ts +4 -6
  1286. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.funcs.js +6 -6
  1287. package/packages/level2/meta/browsers/many-to-many-browser/ManyToManyBrowser.js +3 -4
  1288. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.d.ts +1 -1
  1289. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.funcs.d.ts +3 -2
  1290. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.funcs.js +3 -3
  1291. package/packages/level2/meta/browsers/multi-browser/MultiBrowser.js +2 -2
  1292. package/packages/level2/meta/card-list/CardList.d.ts +2 -2
  1293. package/packages/level2/meta/card-list/CardList.funcs.d.ts +0 -3
  1294. package/packages/level2/meta/card-list/CardList.funcs.js +2 -4
  1295. package/packages/level2/meta/card-list/CardList.js +2 -1
  1296. package/packages/level2/meta/card-list/card-layout.d.ts +3 -0
  1297. package/packages/level2/meta/card-list/card-layout.js +6 -0
  1298. package/packages/level2/meta/card-list/config/card-config.d.ts +4 -1
  1299. package/packages/level2/meta/card-list/config/card-config.js +1 -1
  1300. package/packages/level2/meta/card-list/data-card/DataCard.d.ts +2 -2
  1301. package/packages/level2/meta/card-list/data-card/DataCard.funcs.d.ts +1 -1
  1302. package/packages/level2/meta/card-list/data-card/DataCard.funcs.js +1 -1
  1303. package/packages/level2/meta/card-list/data-card/DataCard.js +1 -1
  1304. package/packages/level2/meta/card-list/data-card/data-card-action/DataCardAction.d.ts +1 -1
  1305. package/packages/level2/meta/card-list/data-card/data-card-action/DataCardAction.js +0 -2
  1306. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.funcs.d.ts +2 -16
  1307. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.funcs.js +2 -12
  1308. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.js +7 -2
  1309. package/packages/level2/meta/card-list/data-card/data-card-image/DataCardImage.js +2 -1
  1310. package/packages/level2/meta/card-list/data-card/data-card-property-value/DataCardPropertyValue.d.ts +11 -0
  1311. package/packages/level2/meta/card-list/data-card/data-card-property-value/DataCardPropertyValue.funcs.d.ts +10 -0
  1312. package/packages/level2/meta/card-list/data-card/data-card-property-value/DataCardPropertyValue.funcs.js +15 -0
  1313. package/packages/level2/meta/card-list/data-card/{data-card-content/DataCardContent.render.funcs.js → data-card-property-value/DataCardPropertyValue.js} +11 -5
  1314. package/packages/level2/meta/card-list/data-card/data-card-types.d.ts +10 -0
  1315. package/packages/level2/meta/client/framework/hooks.d.ts +3 -0
  1316. package/packages/level2/meta/client/framework/hooks.js +2 -2
  1317. package/packages/level2/meta/client/framework/index.d.ts +1 -0
  1318. package/packages/level2/meta/client/framework/index.js +1 -1
  1319. package/packages/level2/meta/client/layout.js +1 -1
  1320. package/packages/level2/meta/comment/Comment.js +2 -1
  1321. package/packages/level2/meta/comment/CommentList.funcs.d.ts +1 -1
  1322. package/packages/level2/meta/comment/CommentList.funcs.js +2 -2
  1323. package/packages/level2/meta/comment/comment-service.d.ts +1 -0
  1324. package/packages/level2/meta/comment/comment-service.js +11 -0
  1325. package/packages/level2/meta/components/edit-image/EditImage.d.ts +1 -1
  1326. package/packages/level2/meta/components/edit-image/EditImage.funcs.d.ts +2 -2
  1327. package/packages/level2/meta/components/edit-image/EditImage.funcs.js +1 -1
  1328. package/packages/level2/meta/components/edit-image/EditImage.js +9 -3
  1329. package/packages/level2/meta/components/edit-image/EditImageActionMenu.d.ts +1 -1
  1330. package/packages/level2/meta/components/edit-image/EditImageDropdownMenu.d.ts +1 -1
  1331. package/packages/level2/meta/components/edit-image/EditImageDropdownMenu.js +4 -3
  1332. package/packages/level2/meta/components/file-upload/FileUpload.d.ts +1 -1
  1333. package/packages/level2/meta/components/file-upload/FileUpload.funcs.d.ts +1 -1
  1334. package/packages/level2/meta/components/file-upload/FileUpload.funcs.js +1 -1
  1335. package/packages/level2/meta/components/file-upload/FileUpload.js +2 -1
  1336. package/packages/level2/meta/components/file-upload/PreviewMedia.d.ts +1 -1
  1337. package/packages/level2/meta/components/file-upload/PreviewMedia.js +2 -1
  1338. package/packages/level2/meta/components/multi-list/MultiList.d.ts +1 -1
  1339. package/packages/level2/meta/components/multi-list/MultiList.funcs.d.ts +3 -8
  1340. package/packages/level2/meta/components/multi-list/MultiList.funcs.js +2 -2
  1341. package/packages/level2/meta/components/multi-list/MultiList.js +2 -1
  1342. package/packages/level2/meta/components/multi-list/MultiListEditResource.d.ts +1 -1
  1343. package/packages/level2/meta/components/multi-list/MultiListEditResource.js +6 -4
  1344. package/packages/level2/meta/components/multi-list/multi-list-config.d.ts +7 -0
  1345. package/packages/level2/meta/components/multi-list/multi-list-config.js +4 -0
  1346. package/packages/level2/meta/components/multi-list/multi-list-constants.d.ts +1 -0
  1347. package/packages/level2/meta/components/multi-list/multi-list-item-type.d.ts +2 -0
  1348. package/packages/level2/meta/components/multi-list/multi-list-item-type.js +7 -0
  1349. package/packages/level2/meta/components/multi-list/templates/ManyToOneTableHeaderCellTemplate.d.ts +1 -1
  1350. package/packages/level2/meta/components/multi-list/use-multi-list-edit-resource-config.js +2 -2
  1351. package/packages/level2/meta/components/related-resources/RelatedResources.d.ts +1 -1
  1352. package/packages/level2/meta/components/related-resources/RelatedResources.funcs.d.ts +1 -1
  1353. package/packages/level2/meta/components/related-resources/RelatedResources.funcs.js +1 -1
  1354. package/packages/level2/meta/components/related-resources/RelatedResources.js +2 -2
  1355. package/packages/level2/meta/components/related-resources/related-property.js +1 -1
  1356. package/packages/level2/meta/components/related-resources/related-resources-component.js +2 -3
  1357. package/packages/level2/meta/constants/element-prefixes.d.ts +2 -1
  1358. package/packages/level2/meta/constants/element-prefixes.js +1 -1
  1359. package/packages/level2/meta/constants/media-constants.d.ts +1 -0
  1360. package/packages/level2/meta/constants/meta-error-messages-constants.d.ts +1 -1
  1361. package/packages/level2/meta/constants/meta-error-messages-constants.js +1 -1
  1362. package/packages/level2/meta/constants/property-type-formats.d.ts +1 -1
  1363. package/packages/level2/meta/constants/property-type-formats.js +3 -3
  1364. package/packages/level2/meta/constants/search-constants.d.ts +1 -0
  1365. package/packages/level2/meta/constants/search-constants.js +3 -1
  1366. package/packages/level2/meta/constants/toolbox-users.d.ts +1 -1
  1367. package/packages/level2/meta/constants/toolbox-users.js +3 -1
  1368. package/packages/level2/meta/constants/user-names.d.ts +1 -0
  1369. package/packages/level2/meta/core/auth-resource-meta.d.ts +1 -1
  1370. package/packages/level2/meta/core/auth-resource-meta.js +1 -1
  1371. package/packages/level2/meta/core/property-meta.d.ts +1 -1
  1372. package/packages/level2/meta/core/property-meta.js +1 -1
  1373. package/packages/level2/meta/core/property-types.d.ts +1 -1
  1374. package/packages/level2/meta/core/property-types.js +1 -1
  1375. package/packages/level2/meta/core/relation.d.ts +1 -1
  1376. package/packages/level2/meta/core/relation.js +1 -1
  1377. package/packages/level2/meta/core/resource-description/resource-description.d.ts +2 -2
  1378. package/packages/level2/meta/core/resource-description/resource-description.js +1 -1
  1379. package/packages/level2/meta/core/resource-description/resource-descriptions.js +1 -1
  1380. package/packages/level2/meta/core/resource-meta-props.d.ts +1 -1
  1381. package/packages/level2/meta/core/resource-meta.d.ts +1 -1
  1382. package/packages/level2/meta/core/resource-meta.js +1 -1
  1383. package/packages/level2/meta/core/resource-singletons.js +1 -1
  1384. package/packages/level2/meta/core/resources/blob/blob-props.d.ts +1 -0
  1385. package/packages/level2/meta/core/resources/blob/blob-urls.d.ts +1 -0
  1386. package/packages/level2/meta/core/resources/blob/blob-urls.js +1 -1
  1387. package/packages/level2/meta/core/resources/blob/blob.resource.d.ts +1 -0
  1388. package/packages/level2/meta/core/resources/blob/blob.resource.js +1 -1
  1389. package/packages/level2/meta/core/resources/comment.resource.d.ts +1 -0
  1390. package/packages/level2/meta/core/resources/comment.resource.js +1 -1
  1391. package/packages/level2/meta/core/resources/enums/feature-enums.d.ts +5 -0
  1392. package/packages/level2/meta/core/resources/enums/payment-enums.d.ts +5 -0
  1393. package/packages/level2/meta/core/resources/enums/permission-enums.d.ts +6 -0
  1394. package/packages/level2/meta/core/resources/enums/usage-limit-enums.d.ts +1 -0
  1395. package/packages/level2/meta/core/resources/features/feature-codes.d.ts +1 -0
  1396. package/packages/level2/meta/core/resources/features/feature-ids.d.ts +1 -0
  1397. package/packages/level2/meta/core/resources/features/feature.resource.d.ts +1 -0
  1398. package/packages/level2/meta/core/resources/features/feature.resource.js +1 -1
  1399. package/packages/level2/meta/core/resources/payment-plan-feature.resource.d.ts +1 -0
  1400. package/packages/level2/meta/core/resources/payment-plan-feature.resource.js +1 -1
  1401. package/packages/level2/meta/core/resources/payment-plan.resource.d.ts +1 -0
  1402. package/packages/level2/meta/core/resources/payment-plan.resource.js +1 -1
  1403. package/packages/level2/meta/core/resources/permissions/permission-package-to-permission.resource.d.ts +1 -0
  1404. package/packages/level2/meta/core/resources/permissions/permission-package-to-permission.resource.js +1 -1
  1405. package/packages/level2/meta/core/resources/permissions/permission-package.resource.d.ts +1 -0
  1406. package/packages/level2/meta/core/resources/permissions/permission-package.resource.js +1 -1
  1407. package/packages/level2/meta/core/resources/permissions/permission.resource.d.ts +1 -0
  1408. package/packages/level2/meta/core/resources/permissions/permission.resource.js +1 -0
  1409. package/packages/level2/meta/core/resources/permissions/props/role-to-permission-package-props.d.ts +1 -1
  1410. package/packages/level2/meta/core/resources/pricing.resource.js +1 -1
  1411. package/packages/level2/meta/core/resources/props/payment-plan-price-props.d.ts +1 -0
  1412. package/packages/level2/meta/core/resources/props/payment-plan-props.d.ts +1 -0
  1413. package/packages/level2/meta/core/resources/props/usage-limit-props.d.ts +1 -0
  1414. package/packages/level2/meta/core/resources/resources/props/resource-property-props.d.ts +1 -0
  1415. package/packages/level2/meta/core/resources/resources/resource-property.resource.d.ts +1 -0
  1416. package/packages/level2/meta/core/resources/resources/resource-property.resource.js +1 -1
  1417. package/packages/level2/meta/core/resources/resources/resource.resource.d.ts +1 -0
  1418. package/packages/level2/meta/core/resources/resources/resource.resource.js +1 -1
  1419. package/packages/level2/meta/core/resources/roles/role-feature.resource.d.ts +1 -0
  1420. package/packages/level2/meta/core/resources/roles/role-feature.resource.js +1 -1
  1421. package/packages/level2/meta/core/resources/roles/role-to-permission-package.resource.js +1 -1
  1422. package/packages/level2/meta/core/resources/roles/role-to-permission.resource.d.ts +1 -0
  1423. package/packages/level2/meta/core/resources/roles/role-to-permission.resource.js +1 -1
  1424. package/packages/level2/meta/core/resources/roles/role.resource.d.ts +1 -0
  1425. package/packages/level2/meta/core/resources/roles/role.resource.js +1 -1
  1426. package/packages/level2/meta/core/resources/usage-limit/usage-limit.resource.d.ts +1 -0
  1427. package/packages/level2/meta/core/resources/usage-limit/usage-limit.resource.js +1 -1
  1428. package/packages/level2/meta/core/resources/users/props/user-feature-props.d.ts +1 -0
  1429. package/packages/level2/meta/core/resources/users/props/user-props.d.ts +1 -1
  1430. package/packages/level2/meta/core/resources/users/props/user-props.js +2 -2
  1431. package/packages/level2/meta/core/resources/users/props/user-role-props.d.ts +1 -0
  1432. package/packages/level2/meta/core/resources/users/props/user-setting-props.d.ts +1 -1
  1433. package/packages/level2/meta/core/resources/users/props/user-visible-workspace-props.d.ts +1 -0
  1434. package/packages/level2/meta/core/resources/users/props/user-workspace-base-resource-props.d.ts +1 -0
  1435. package/packages/level2/meta/core/resources/users/user-activity-overview.resource.js +1 -1
  1436. package/packages/level2/meta/core/resources/users/user-feature.resource.d.ts +1 -0
  1437. package/packages/level2/meta/core/resources/users/user-feature.resource.js +1 -1
  1438. package/packages/level2/meta/core/resources/users/user-role.resource.d.ts +1 -0
  1439. package/packages/level2/meta/core/resources/users/user-role.resource.js +1 -1
  1440. package/packages/level2/meta/core/resources/users/user-setting.resource.d.ts +1 -1
  1441. package/packages/level2/meta/core/resources/users/user-setting.resource.js +1 -2
  1442. package/packages/level2/meta/core/resources/users/user-to-workspace.resource.js +1 -1
  1443. package/packages/level2/meta/core/resources/users/user-visible-workspace.resource.d.ts +1 -0
  1444. package/packages/level2/meta/core/resources/users/user-visible-workspace.resource.js +1 -1
  1445. package/packages/level2/meta/core/resources/users/user-workspace-invite.resource.d.ts +1 -0
  1446. package/packages/level2/meta/core/resources/users/user-workspace-invite.resource.js +1 -1
  1447. package/packages/level2/meta/core/resources/users/user.resource.d.ts +1 -0
  1448. package/packages/level2/meta/core/resources/users/user.resource.js +1 -3
  1449. package/packages/level2/meta/core/resources/workspace/workspace-resource.js +1 -1
  1450. package/packages/level2/meta/core/resources/workspace/workspace-to-workspace.resource.js +1 -1
  1451. package/packages/level2/meta/core/resources/workspace/workspace.resource.d.ts +1 -1
  1452. package/packages/level2/meta/core/resources/workspace/workspace.resource.js +1 -1
  1453. package/packages/level2/meta/core/types/permission-dto.d.ts +1 -0
  1454. package/packages/level2/meta/core/types/user-permission.d.ts +1 -0
  1455. package/packages/level2/meta/core/ui-property-meta-old.js +1 -1
  1456. package/packages/level2/meta/core/ui-property-meta.d.ts +2 -2
  1457. package/packages/level2/meta/crud/edit-resource-request.d.ts +1 -0
  1458. package/packages/level2/meta/crud/permissions/crud-permission-checker.js +1 -1
  1459. package/packages/level2/meta/decorators/access-by-user-id.js +1 -1
  1460. package/packages/level2/meta/decorators/access-by-workspace-id.js +1 -1
  1461. package/packages/level2/meta/decorators/allowed-crud-actions.js +1 -1
  1462. package/packages/level2/meta/decorators/big-text.js +1 -1
  1463. package/packages/level2/meta/decorators/blob-image.js +1 -1
  1464. package/packages/level2/meta/decorators/concat-description.js +1 -1
  1465. package/packages/level2/meta/decorators/create-only-resource.js +1 -1
  1466. package/packages/level2/meta/decorators/currency.js +1 -1
  1467. package/packages/level2/meta/decorators/date-only.js +1 -1
  1468. package/packages/level2/meta/decorators/db-index.js +1 -1
  1469. package/packages/level2/meta/decorators/default-sort.js +1 -1
  1470. package/packages/level2/meta/decorators/description-based-on-property-value.js +1 -1
  1471. package/packages/level2/meta/decorators/description-property.js +1 -1
  1472. package/packages/level2/meta/decorators/display-name.js +1 -1
  1473. package/packages/level2/meta/decorators/dynamic.js +1 -1
  1474. package/packages/level2/meta/decorators/email.d.ts +6 -2
  1475. package/packages/level2/meta/decorators/email.js +1 -1
  1476. package/packages/level2/meta/decorators/expand-description-properties.js +1 -1
  1477. package/packages/level2/meta/decorators/file-upload.js +1 -1
  1478. package/packages/level2/meta/decorators/flags-enum.js +1 -1
  1479. package/packages/level2/meta/decorators/get-only-resource.js +1 -1
  1480. package/packages/level2/meta/decorators/icon.js +1 -1
  1481. package/packages/level2/meta/decorators/integer.js +1 -1
  1482. package/packages/level2/meta/decorators/label.js +1 -1
  1483. package/packages/level2/meta/decorators/markdown.js +1 -1
  1484. package/packages/level2/meta/decorators/not-a-resource.js +1 -1
  1485. package/packages/level2/meta/decorators/not-colorful.js +1 -1
  1486. package/packages/level2/meta/decorators/not-displayable.js +1 -1
  1487. package/packages/level2/meta/decorators/not-edit-displayable.js +1 -1
  1488. package/packages/level2/meta/decorators/not-editable-from-outside.js +1 -1
  1489. package/packages/level2/meta/decorators/not-filter-displayable.js +1 -1
  1490. package/packages/level2/meta/decorators/not-list-displayable.js +1 -1
  1491. package/packages/level2/meta/decorators/not-relation.js +1 -1
  1492. package/packages/level2/meta/decorators/outside-excluded.js +1 -1
  1493. package/packages/level2/meta/decorators/permission-checker-for.js +1 -1
  1494. package/packages/level2/meta/decorators/phone-number.d.ts +6 -2
  1495. package/packages/level2/meta/decorators/phone-number.js +1 -1
  1496. package/packages/level2/meta/decorators/plural-name.js +1 -1
  1497. package/packages/level2/meta/decorators/prefer-plural-name.js +1 -1
  1498. package/packages/level2/meta/decorators/prefer-singular-name.js +1 -1
  1499. package/packages/level2/meta/decorators/prevent-default.d.ts +18 -0
  1500. package/packages/level2/meta/decorators/prevent-default.js +6 -0
  1501. package/packages/level2/meta/decorators/priority.js +1 -1
  1502. package/packages/level2/meta/decorators/required-if-other-are-present.js +1 -1
  1503. package/packages/level2/meta/decorators/required-if-prop-has-value.js +1 -1
  1504. package/packages/level2/meta/decorators/required.js +1 -1
  1505. package/packages/level2/meta/decorators/resource-id.js +1 -1
  1506. package/packages/level2/meta/decorators/resource-property-id.js +1 -1
  1507. package/packages/level2/meta/decorators/rich-text.js +1 -1
  1508. package/packages/level2/meta/decorators/searchable.js +1 -1
  1509. package/packages/level2/meta/decorators/singleton.js +1 -1
  1510. package/packages/level2/meta/decorators/transient-resource.js +1 -1
  1511. package/packages/level2/meta/decorators/ui-priority.js +1 -1
  1512. package/packages/level2/meta/decorators/ui-relation-priority.js +1 -1
  1513. package/packages/level2/meta/decorators/unique.js +1 -1
  1514. package/packages/level2/meta/decorators/url.js +1 -1
  1515. package/packages/level2/meta/edit-resource/EditResource.d.ts +4 -9
  1516. package/packages/level2/meta/edit-resource/EditResource.funcs.d.ts +18 -16
  1517. package/packages/level2/meta/edit-resource/EditResource.funcs.js +16 -5
  1518. package/packages/level2/meta/edit-resource/EditResource.js +11 -12
  1519. package/packages/level2/meta/edit-resource/EditResourceFormBody.d.ts +1 -1
  1520. package/packages/level2/meta/edit-resource/EditResourceHeader.d.ts +3 -2
  1521. package/packages/level2/meta/edit-resource/EditResourceHeader.funcs.d.ts +11 -11
  1522. package/packages/level2/meta/edit-resource/EditResourceHeader.funcs.js +1 -1
  1523. package/packages/level2/meta/edit-resource/EditResourceHeader.js +19 -15
  1524. package/packages/level2/meta/edit-resource/EditResourceSheet.d.ts +1 -1
  1525. package/packages/level2/meta/edit-resource/EditResourceSheet.funcs.d.ts +3 -3
  1526. package/packages/level2/meta/edit-resource/EditResourceSheet.funcs.js +3 -6
  1527. package/packages/level2/meta/edit-resource/EditResourceSheet.js +5 -5
  1528. package/packages/level2/meta/edit-resource/EditResourceTabs.d.ts +2 -2
  1529. package/packages/level2/meta/edit-resource/EditResourceTabs.js +50 -29
  1530. package/packages/level2/meta/edit-resource/apply-value-changes.d.ts +1 -1
  1531. package/packages/level2/meta/edit-resource/apply-value-changes.js +1 -1
  1532. package/packages/level2/meta/edit-resource/config/custom-filter-config-provider.js +1 -1
  1533. package/packages/level2/meta/edit-resource/config/internal-edit-resource-configs.js +17 -0
  1534. package/packages/level2/meta/edit-resource/edit-link/EditLink.funcs.d.ts +1 -1
  1535. package/packages/level2/meta/edit-resource/edit-link/EditLink.funcs.js +1 -1
  1536. package/packages/level2/meta/edit-resource/edit-link/EditLinkResource.d.ts +1 -1
  1537. package/packages/level2/meta/edit-resource/edit-resource-dialog/EditResourceDialog.funcs.d.ts +1 -1
  1538. package/packages/level2/meta/edit-resource/edit-resource-dialog/EditResourceDialog.funcs.js +1 -1
  1539. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceBlobField.funcs.d.ts +1 -1
  1540. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceBlobField.funcs.js +1 -1
  1541. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.d.ts +1 -1
  1542. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.funcs.d.ts +1 -1
  1543. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.funcs.js +2 -2
  1544. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceEnumField.js +8 -9
  1545. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceFlagsEnumField.d.ts +1 -1
  1546. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceFlagsEnumField.funcs.d.ts +1 -1
  1547. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceFlagsEnumField.funcs.js +1 -1
  1548. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceImageField.d.ts +1 -1
  1549. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceImageField.funcs.d.ts +1 -1
  1550. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourceImageField.funcs.js +2 -1
  1551. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.d.ts +1 -1
  1552. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.funcs.d.ts +3 -18
  1553. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.funcs.js +4 -10
  1554. package/packages/level2/meta/edit-resource/edit-resource-property-block/EditResourcePropertyBlock.js +1 -1
  1555. package/packages/level2/meta/edit-resource/edit-resource-property-block/edit-resource-fields.d.ts +1 -1
  1556. package/packages/level2/meta/edit-resource/edit-resource-property-block/edit-resource-fields.js +4 -4
  1557. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.d.ts +1 -1
  1558. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.funcs.d.ts +2 -2
  1559. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.funcs.js +1 -1
  1560. package/packages/level2/meta/edit-resource/edit-resource-property-field/EditResourcePropertyField.js +1 -1
  1561. package/packages/level2/meta/edit-resource/edit-resource-validation.d.ts +1 -1
  1562. package/packages/level2/meta/edit-resource/edit-resource-validation.js +1 -1
  1563. package/packages/level2/meta/edit-resource/edit-resources-constants.js +1 -1
  1564. package/packages/level2/meta/edit-resource/hooks/use-edit-resource-ref.d.ts +1 -1
  1565. package/packages/level2/meta/edit-resource/hooks/use-edit-resource-ref.js +2 -2
  1566. package/packages/level2/meta/edit-resource/save-complete-context.d.ts +2 -1
  1567. package/packages/level2/meta/edit-resource/save-complete-context.js +1 -1
  1568. package/packages/level2/meta/edit-resource/services/blob-components.d.ts +1 -1
  1569. package/packages/level2/meta/edit-resource/services/blob-components.js +1 -1
  1570. package/packages/level2/meta/edit-resource/services/edit-resource-components.d.ts +1 -1
  1571. package/packages/level2/meta/edit-resource/services/edit-resource-components.js +3 -3
  1572. package/packages/level2/meta/edit-resource/services/edit-resource-relations.js +1 -1
  1573. package/packages/level2/meta/edit-resource/services/edit-resource-save.d.ts +9 -0
  1574. package/packages/level2/meta/edit-resource/services/edit-resource-save.js +8 -0
  1575. package/packages/level2/meta/edit-resource/services/edit-resources.d.ts +2 -2
  1576. package/packages/level2/meta/edit-resource/services/edit-resources.js +6 -5
  1577. package/packages/level2/meta/edit-resource/services/form-validations.d.ts +1 -1
  1578. package/packages/level2/meta/edit-resource/services/form-validations.js +1 -1
  1579. package/packages/level2/meta/edit-resource/services/property-metas.d.ts +1 -1
  1580. package/packages/level2/meta/edit-resource/services/property-metas.js +1 -1
  1581. package/packages/level2/meta/edit-resource/services/use-edit-resource-config.js +2 -2
  1582. package/packages/level2/meta/fd-meta-toolbox-service.js +1 -1
  1583. package/packages/level2/meta/filtering/filter/EnumFlagFilter.d.ts +1 -1
  1584. package/packages/level2/meta/filtering/filter/Filter.d.ts +1 -1
  1585. package/packages/level2/meta/filtering/filter/Filter.funcs.d.ts +1 -4
  1586. package/packages/level2/meta/filtering/filter/Filter.funcs.js +4 -4
  1587. package/packages/level2/meta/filtering/filter/Filter.js +2 -1
  1588. package/packages/level2/meta/filtering/filter/filter-display.d.ts +4 -0
  1589. package/packages/level2/meta/filtering/filter/filter-display.js +7 -0
  1590. package/packages/level2/meta/filtering/filter/filters/EnumFilter.d.ts +1 -1
  1591. package/packages/level2/meta/filtering/filter/filters/EnumFilter.js +2 -1
  1592. package/packages/level2/meta/filtering/filter/filters/GuidFilter.d.ts +1 -1
  1593. package/packages/level2/meta/filtering/filter/filters/GuidFilter.js +1 -1
  1594. package/packages/level2/meta/filtering/filter/filters/IntegerFilter.d.ts +1 -1
  1595. package/packages/level2/meta/filtering/filter/filters/IntegerFilter.js +1 -1
  1596. package/packages/level2/meta/filtering/filter/filters/TextFilter.d.ts +1 -1
  1597. package/packages/level2/meta/filtering/filter/filters/boolean-filter/BooleanFilter.funcs.js +3 -3
  1598. package/packages/level2/meta/filtering/resource-filter-list/ResourceFilterList.d.ts +1 -1
  1599. package/packages/level2/meta/filtering/resource-filter-list/ResourceFilterList.funcs.d.ts +1 -3
  1600. package/packages/level2/meta/filtering/resource-filter-list/ResourceFilterList.funcs.js +5 -9
  1601. package/packages/level2/meta/filtering/resource-filter-list/resource-filter-list-ids.js +2 -2
  1602. package/packages/level2/meta/filtering/resource-filter-list/resource-filter-lists.d.ts +1 -1
  1603. package/packages/level2/meta/filtering/resource-filter-list/resource-filter-lists.js +7 -2
  1604. package/packages/level2/meta/filtering/resource-filter-list/use-resource-filter-list-display.js +2 -2
  1605. package/packages/level2/meta/layout/events.js +1 -1
  1606. package/packages/level2/meta/layout/layout.js +2 -2
  1607. package/packages/level2/meta/meta-providers.d.ts +1 -1
  1608. package/packages/level2/meta/meta-providers.js +1 -1
  1609. package/packages/level2/meta/meta-sort.js +1 -1
  1610. package/packages/level2/meta/models/user-base-resource.d.ts +1 -0
  1611. package/packages/level2/meta/models/user-base-resource.js +1 -1
  1612. package/packages/level2/meta/models/user-workspace-base-resource.js +1 -1
  1613. package/packages/level2/meta/odata/expands.d.ts +1 -0
  1614. package/packages/level2/meta/odata/expands.js +2 -2
  1615. package/packages/level2/meta/odata/odata-selects.d.ts +3 -1
  1616. package/packages/level2/meta/odata/odata-selects.js +1 -1
  1617. package/packages/level2/meta/one-to-many-relations.d.ts +1 -2
  1618. package/packages/level2/meta/one-to-many-relations.js +1 -1
  1619. package/packages/level2/meta/page/title-context.d.ts +3 -1
  1620. package/packages/level2/meta/page/use-set-title.d.ts +1 -1
  1621. package/packages/level2/meta/page/use-set-title.js +1 -1
  1622. package/packages/level2/meta/page/use-title.d.ts +2 -1
  1623. package/packages/level2/meta/page/use-title.js +1 -1
  1624. package/packages/level2/meta/properties/property-type.d.ts +1 -0
  1625. package/packages/level2/meta/providers/global-provider/GlobalContext.d.ts +3 -1
  1626. package/packages/level2/meta/providers/global-provider/default-config.d.ts +1 -0
  1627. package/packages/level2/meta/relations/many-to-many-info.d.ts +1 -1
  1628. package/packages/level2/meta/relations/many-to-many-info.js +1 -1
  1629. package/packages/level2/meta/relations/meta-relations.d.ts +2 -1
  1630. package/packages/level2/meta/relations/meta-relations.js +1 -1
  1631. package/packages/level2/meta/replies.d.ts +1 -1
  1632. package/packages/level2/meta/resource-list/ResourceList.d.ts +1 -1
  1633. package/packages/level2/meta/resource-list/ResourceList.funcs.d.ts +21 -0
  1634. package/packages/level2/meta/resource-list/ResourceList.funcs.js +4 -18
  1635. package/packages/level2/meta/resource-list/resource-add-button.js +1 -1
  1636. package/packages/level2/meta/resource-list/resource-list-cell-element-ids.d.ts +4 -2
  1637. package/packages/level2/meta/resource-list/resource-list-cell-element-ids.js +4 -4
  1638. package/packages/level2/meta/resource-list/resource-list-checkers.d.ts +1 -0
  1639. package/packages/level2/meta/resource-list/resource-list-checkers.js +1 -1
  1640. package/packages/level2/meta/resource-list/resource-list-configs.d.ts +2 -1
  1641. package/packages/level2/meta/resource-list/resource-list-configs.js +1 -1
  1642. package/packages/level2/meta/resource-list/resource-list-data.js +19 -0
  1643. package/packages/level2/meta/resource-list/resource-list-display.d.ts +3 -0
  1644. package/packages/level2/meta/resource-list/resource-list-display.js +6 -0
  1645. package/packages/level2/meta/resource-list/resource-list-dropdown-menu/ResourceListDropdownMenu.d.ts +1 -1
  1646. package/packages/level2/meta/resource-list/resource-list-header/ResourceListHeader.d.ts +1 -1
  1647. package/packages/level2/meta/resource-list/resource-list-header/ResourceListHeader.funcs.js +1 -1
  1648. package/packages/level2/meta/resource-list/resource-list-hooks.js +4 -2
  1649. package/packages/level2/meta/resource-list/resource-list-navigation.d.ts +2 -0
  1650. package/packages/level2/meta/resource-list/resource-list-navigation.js +6 -0
  1651. package/packages/level2/meta/resource-list/resource-list-persist-state.d.ts +2 -1
  1652. package/packages/level2/meta/resource-list/resource-list-persist-state.js +1 -1
  1653. package/packages/level2/meta/resource-list/resource-list-state.d.ts +2 -1
  1654. package/packages/level2/meta/resource-list/resource-lists.js +1 -1
  1655. package/packages/level2/meta/resource-list/use-resource-list-config.js +1 -1
  1656. package/packages/level2/meta/resource-providers.d.ts +1 -1
  1657. package/packages/level2/meta/resource-providers.js +1 -1
  1658. package/packages/level2/meta/resources/session/session.resource.js +1 -1
  1659. package/packages/level2/meta/server/api/odata/odata-expression-operators.js +1 -1
  1660. package/packages/level2/meta/server/api/odata/odata-expressions.d.ts +1 -1
  1661. package/packages/level2/meta/server/api/odata/odata-expressions.js +1 -1
  1662. package/packages/level2/meta/server/api/odata/odata-filters-helpers.js +3 -2
  1663. package/packages/level2/meta/server/api/odata/odata-filters.d.ts +1 -0
  1664. package/packages/level2/meta/server/api/odata/odata-filters.js +4 -3
  1665. package/packages/level2/meta/server/api/odata/odata-metas.js +1 -1
  1666. package/packages/level2/meta/server/api/odata/odata-parsers.d.ts +4 -4
  1667. package/packages/level2/meta/server/api/odata/odata-parsers.js +4 -3
  1668. package/packages/level2/meta/server/api/odata/odata.d.ts +4 -4
  1669. package/packages/level2/meta/server/api/odata/odata.js +3 -3
  1670. package/packages/level2/meta/server/auth/auth-guard.d.ts +2 -1
  1671. package/packages/level2/meta/server/auth/auth-guard.js +1 -1
  1672. package/packages/level2/meta/server/auth/fd-sessions.d.ts +3 -1
  1673. package/packages/level2/meta/server/auth/fd-sessions.js +1 -1
  1674. package/packages/level2/meta/server/auth/permissions/resource-permission-checker-provider.d.ts +1 -0
  1675. package/packages/level2/meta/server/auth/permissions/resource-permission-checker-provider.js +1 -1
  1676. package/packages/level2/meta/server/auth/role-db/get-all-including-user-to-roles.js +1 -1
  1677. package/packages/level2/meta/server/auth/session-access.d.ts +2 -0
  1678. package/packages/level2/meta/server/auth/session-access.js +1 -1
  1679. package/packages/level2/meta/server/auth/session-validation.d.ts +1 -0
  1680. package/packages/level2/meta/server/auth/session-validation.js +1 -1
  1681. package/packages/level2/meta/server/auth/session.d.ts +2 -1
  1682. package/packages/level2/meta/server/auth/session.js +1 -1
  1683. package/packages/level2/meta/server/auth/users/current-user-id-provider.d.ts +2 -1
  1684. package/packages/level2/meta/server/auth/users/current-user-id-provider.js +1 -1
  1685. package/packages/level2/meta/server/basic-crud/crud-api.js +1 -1
  1686. package/packages/level2/meta/server/basic-crud/crud.d.ts +1 -1
  1687. package/packages/level2/meta/server/basic-crud/crud.js +2 -2
  1688. package/packages/level2/meta/server/basic-crud/cruds.js +1 -1
  1689. package/packages/level2/meta/server/basic-crud/helpers/crud-event-handler.js +1 -1
  1690. package/packages/level2/meta/server/basic-crud/helpers/cruds-permission-checker.js +1 -1
  1691. package/packages/level2/meta/server/basic-crud/helpers/prepare-many-to-many-resource.js +1 -1
  1692. package/packages/level2/meta/server/basic-crud/related-resource-db.d.ts +1 -1
  1693. package/packages/level2/meta/server/basic-crud/related-resource-db.js +1 -1
  1694. package/packages/level2/meta/server/basic-crud/relation-syncs.d.ts +1 -1
  1695. package/packages/level2/meta/server/basic-crud/relation-syncs.js +1 -1
  1696. package/packages/level2/meta/server/basic-crud/resource-crud-handlers.js +1 -1
  1697. package/packages/level2/meta/server/basic-crud/resource-meta-handlers.js +1 -1
  1698. package/packages/level2/meta/server/constants/crud-handler-types.js +3 -1
  1699. package/packages/level2/meta/server/constants/generated-paths.d.ts +6 -6
  1700. package/packages/level2/meta/server/constants/generated-paths.js +1 -1
  1701. package/packages/level2/meta/server/constants/meta-property-names.d.ts +1 -1
  1702. package/packages/level2/meta/server/constants/meta-property-names.js +2 -2
  1703. package/packages/level2/meta/server/constants/meta-validation-messages.d.ts +1 -1
  1704. package/packages/level2/meta/server/controllers/generic-controllers/crud-controller.d.ts +4 -0
  1705. package/packages/level2/meta/server/controllers/generic-controllers/crud-controller.js +1 -1
  1706. package/packages/level2/meta/server/db/db.d.ts +8 -2
  1707. package/packages/level2/meta/server/db/db.js +2 -2
  1708. package/packages/level2/meta/server/db/init-db.js +1 -1
  1709. package/packages/level2/meta/server/db/schema/schema-adapter.d.ts +1 -0
  1710. package/packages/level2/meta/server/db/schema/schema-adapter.js +2 -2
  1711. package/packages/level2/meta/server/entities/edit-base-resources.js +1 -1
  1712. package/packages/level2/meta/server/entities/edit-workspace.js +1 -1
  1713. package/packages/level2/meta/server/integration-platforms/fd-integration-cache.d.ts +3 -0
  1714. package/packages/level2/meta/server/integration-platforms/fd-integration-cache.js +1 -1
  1715. package/packages/level2/meta/server/integration-platforms/integration-db.js +1 -1
  1716. package/packages/level2/meta/server/integration-platforms/integration-events.d.ts +3 -0
  1717. package/packages/level2/meta/server/integration-platforms/integration-events.js +1 -1
  1718. package/packages/level2/meta/server/messaging/messages.d.ts +3 -0
  1719. package/packages/level2/meta/server/messaging/messages.js +1 -1
  1720. package/packages/level2/meta/server/meta-core/constants/db-schema-actions.d.ts +2 -0
  1721. package/packages/level2/meta/server/meta-core/constants/metas.d.ts +1 -0
  1722. package/packages/level2/meta/server/meta-core/constants/metas.js +1 -1
  1723. package/packages/level2/meta/server/meta-core/constants/resource-ids.d.ts +2 -0
  1724. package/packages/level2/meta/server/meta-core/constants/resource-ids.js +1 -1
  1725. package/packages/level2/meta/server/meta-core/crud/crud-update-config.d.ts +2 -2
  1726. package/packages/level2/meta/server/meta-core/crud/crud-update-config.js +1 -1
  1727. package/packages/level2/meta/server/meta-core/crud/search.d.ts +1 -0
  1728. package/packages/level2/meta/server/meta-core/crud/search.js +1 -1
  1729. package/packages/level2/meta/server/meta-core/display-name.d.ts +1 -1
  1730. package/packages/level2/meta/server/meta-core/display-name.js +1 -1
  1731. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-auth-resource-meta-config.d.ts +1 -0
  1732. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-property-meta-config.d.ts +1 -0
  1733. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-resource-meta-config.d.ts +1 -0
  1734. package/packages/level2/meta/server/meta-core/meta-configs/dynamic-ui-meta-config.d.ts +1 -0
  1735. package/packages/level2/meta/server/meta-url-service.d.ts +2 -2
  1736. package/packages/level2/meta/server/meta-url-service.js +1 -1
  1737. package/packages/level2/meta/server/models/roles/role-to-permission-package-db.d.ts +3 -0
  1738. package/packages/level2/meta/server/models/roles/role-to-permission-package-db.js +1 -1
  1739. package/packages/level2/meta/server/modules/dynamic-imports.d.ts +4 -1
  1740. package/packages/level2/meta/server/modules/dynamic-imports.js +3 -3
  1741. package/packages/level2/meta/server/modules/handler-map.d.ts +1 -0
  1742. package/packages/level2/meta/server/permission/permission-checker.d.ts +2 -0
  1743. package/packages/level2/meta/server/permission/permission-checker.js +1 -1
  1744. package/packages/level2/meta/server/permission/permission-data-provider.js +2 -2
  1745. package/packages/level2/meta/server/permission/permission-package-to-permission-db.d.ts +1 -0
  1746. package/packages/level2/meta/server/permission/permission-package-to-permission-db.js +1 -1
  1747. package/packages/level2/meta/server/permission/permissions.d.ts +7 -5
  1748. package/packages/level2/meta/server/permission/permissions.js +1 -1
  1749. package/packages/level2/meta/server/permission/user-permissions-builder.d.ts +1 -0
  1750. package/packages/level2/meta/server/permission/user-permissions-builder.js +2 -2
  1751. package/packages/level2/meta/server/props/meta-property-filters.js +1 -1
  1752. package/packages/level2/meta/server/props/property-meta-config-provider.js +1 -1
  1753. package/packages/level2/meta/server/props/property-names.d.ts +2 -2
  1754. package/packages/level2/meta/server/props/property-names.js +1 -1
  1755. package/packages/level2/meta/server/props/required-properties.js +1 -1
  1756. package/packages/level2/meta/server/providers/current-workspace-id-provider.d.ts +3 -2
  1757. package/packages/level2/meta/server/providers/current-workspace-id-provider.js +1 -1
  1758. package/packages/level2/meta/server/relations/many-to-many-relations.d.ts +2 -2
  1759. package/packages/level2/meta/server/relations/many-to-many-relations.js +2 -1
  1760. package/packages/level2/meta/server/relations/relations.js +1 -1
  1761. package/packages/level2/meta/server/repositories/odata-db.d.ts +1 -0
  1762. package/packages/level2/meta/server/repositories/odata-db.js +1 -1
  1763. package/packages/level2/meta/server/resources/crud-resources.js +1 -1
  1764. package/packages/level2/meta/server/resources/dynamic-properties.d.ts +2 -0
  1765. package/packages/level2/meta/server/resources/dynamic-properties.js +1 -1
  1766. package/packages/level2/meta/server/resources/init-internal-resource-metas-from-json.d.ts +2 -1
  1767. package/packages/level2/meta/server/resources/init-internal-resource-metas-from-json.js +2 -2
  1768. package/packages/level2/meta/server/resources/internal-resource-meta.d.ts +3 -2
  1769. package/packages/level2/meta/server/resources/internal-resource-meta.js +1 -1
  1770. package/packages/level2/meta/server/resources/resource-checker.d.ts +1 -1
  1771. package/packages/level2/meta/server/resources/resource-checker.js +4 -4
  1772. package/packages/level2/meta/server/resources/resource-meta-plugin-constants.js +2 -1
  1773. package/packages/level2/meta/server/resources/resource-meta-plugin.d.ts +4 -0
  1774. package/packages/level2/meta/server/resources/resource-meta-plugin.js +2 -2
  1775. package/packages/level2/meta/server/resources/searchable-resources-api.js +1 -1
  1776. package/packages/level2/meta/server/resources/searchable-resources.d.ts +1 -1
  1777. package/packages/level2/meta/server/resources/searchable-resources.js +1 -1
  1778. package/packages/level2/meta/server/services/crud-actions.d.ts +1 -0
  1779. package/packages/level2/meta/server/services/crud-actions.js +1 -1
  1780. package/packages/level2/meta/server/services/metas.js +1 -1
  1781. package/packages/level2/meta/server/services/permission-check-config-provider.js +1 -1
  1782. package/packages/level2/meta/server/services/property-meta.js +1 -1
  1783. package/packages/level2/meta/server/services/property-metas.d.ts +1 -1
  1784. package/packages/level2/meta/server/services/property-metas.js +2 -1
  1785. package/packages/level2/meta/server/services/resource-name-converter.d.ts +2 -1
  1786. package/packages/level2/meta/server/services/resource-name-converter.js +2 -1
  1787. package/packages/level2/meta/server/services/resource-provider-db.js +2 -1
  1788. package/packages/level2/meta/server/services/resource-provider-defaults.js +1 -1
  1789. package/packages/level2/meta/server/services/resource-provider-expands.js +1 -1
  1790. package/packages/level2/meta/server/services/resource-provider-permissions.js +1 -1
  1791. package/packages/level2/meta/server/services/resource-provider.d.ts +3 -3
  1792. package/packages/level2/meta/server/services/resource-provider.js +1 -1
  1793. package/packages/level2/meta/server/ui/meta-api.d.ts +1 -1
  1794. package/packages/level2/meta/server/ui/meta-api.js +1 -1
  1795. package/packages/level2/meta/server/ui/ui-metas-api.js +1 -1
  1796. package/packages/level2/meta/server/ui/ui-metas.d.ts +3 -2
  1797. package/packages/level2/meta/server/ui/ui-metas.js +1 -1
  1798. package/packages/level2/meta/server/validations/meta-validations.d.ts +1 -1
  1799. package/packages/level2/meta/server/validations/meta-validations.js +3 -2
  1800. package/packages/level2/meta/server/value-checker.js +2 -2
  1801. package/packages/level2/meta/server/web/current-url.d.ts +1 -0
  1802. package/packages/level2/meta/server/web/current-url.js +1 -1
  1803. package/packages/level2/meta/server/web/drizzle-guards.js +1 -1
  1804. package/packages/level2/meta/server/web/drizzle.d.ts +3 -0
  1805. package/packages/level2/meta/server/web/drizzle.js +1 -1
  1806. package/packages/level2/meta/server/web/http-api-wrapper.js +1 -1
  1807. package/packages/level2/meta/server/web/init-saas-kit-config.js +1 -1
  1808. package/packages/level2/meta/server/web/reduce-data.d.ts +3 -3
  1809. package/packages/level2/meta/server/web/reduce-data.js +1 -1
  1810. package/packages/level2/meta/server/web/responses.js +1 -1
  1811. package/packages/level2/meta/server/workspace/get-visible-workspaces-cache-key.d.ts +1 -0
  1812. package/packages/level2/meta/server/workspace/get-visible-workspaces-cache-key.js +1 -1
  1813. package/packages/level2/meta/services/client-environment.d.ts +1 -0
  1814. package/packages/level2/meta/services/client-environment.js +1 -1
  1815. package/packages/level2/meta/services/filter-components.js +1 -1
  1816. package/packages/level2/meta/services/meta-navigations.d.ts +2 -2
  1817. package/packages/level2/meta/services/meta-navigations.js +1 -1
  1818. package/packages/level2/meta/services/multi-browser.d.ts +4 -0
  1819. package/packages/level2/meta/services/multi-browser.js +8 -0
  1820. package/packages/level2/meta/services/property-fields.d.ts +23 -0
  1821. package/packages/level2/meta/services/property-fields.js +15 -0
  1822. package/packages/level2/meta/services/property-values.js +2 -2
  1823. package/packages/level2/meta/services/resource-filters.js +2 -2
  1824. package/packages/level2/meta/services/resource-name-client-converter.d.ts +1 -1
  1825. package/packages/level2/meta/services/resource-name-client-converter.js +1 -1
  1826. package/packages/level2/meta/services/resource-sheet.d.ts +3 -0
  1827. package/packages/level2/meta/services/resource-sheet.js +9 -0
  1828. package/packages/level2/meta/services/window.js +1 -1
  1829. package/packages/level2/meta/state/base-state-functions.d.ts +2 -2
  1830. package/packages/level2/meta/state/base-state-functions.js +1 -1
  1831. package/packages/level2/meta/subscription-plan/fetch-active-or-trial-subscription.d.ts +2 -3
  1832. package/packages/level2/meta/subscription-plan/fetch-active-or-trial-subscription.js +2 -1
  1833. package/packages/level2/meta/subscription-plan/subscription-props.d.ts +1 -0
  1834. package/packages/level2/meta/subscription-plan/subscription.resource.js +1 -1
  1835. package/packages/level2/meta/table/Table.d.ts +1 -1
  1836. package/packages/level2/meta/table/Table.funcs.d.ts +1 -1
  1837. package/packages/level2/meta/table/Table.funcs.js +2 -2
  1838. package/packages/level2/meta/table/Table.js +1 -1
  1839. package/packages/level2/meta/table/body/TableBody.d.ts +1 -1
  1840. package/packages/level2/meta/table/body/TableBody.funcs.d.ts +2 -2
  1841. package/packages/level2/meta/table/body/TableBody.funcs.js +2 -2
  1842. package/packages/level2/meta/table/body-cell/ActionBodyCell.d.ts +1 -1
  1843. package/packages/level2/meta/table/body-cell/ActionBodyCell.funcs.js +1 -1
  1844. package/packages/level2/meta/table/body-cell/ActionBodyCell.js +8 -26
  1845. package/packages/level2/meta/table/body-cell/BlobBodyCell.funcs.d.ts +1 -1
  1846. package/packages/level2/meta/table/body-cell/BlobBodyCell.funcs.js +1 -1
  1847. package/packages/level2/meta/table/body-cell/BlobBodyCell.js +2 -1
  1848. package/packages/level2/meta/table/body-cell/BodyCell.d.ts +1 -1
  1849. package/packages/level2/meta/table/body-cell/BodyCell.funcs.d.ts +5 -10
  1850. package/packages/level2/meta/table/body-cell/BodyCell.funcs.js +6 -8
  1851. package/packages/level2/meta/table/body-cell/BodyCell.js +50 -50
  1852. package/packages/level2/meta/table/body-cell/BodyCellArrayTooltip.funcs.d.ts +1 -1
  1853. package/packages/level2/meta/table/body-cell/BodyCellArrayTooltip.funcs.js +1 -1
  1854. package/packages/level2/meta/table/body-cell/BodyCellValue.d.ts +1 -1
  1855. package/packages/level2/meta/table/body-cell/BodyCellValue.funcs.d.ts +4 -0
  1856. package/packages/level2/meta/table/body-cell/BodyCellValue.funcs.js +10 -0
  1857. package/packages/level2/meta/table/body-cell/BodyCellValue.js +4 -3
  1858. package/packages/level2/meta/table/body-cell/BodyExpandCell.d.ts +1 -1
  1859. package/packages/level2/meta/table/body-cell/BodyExpandPropertyCell.d.ts +1 -1
  1860. package/packages/level2/meta/table/body-cell/CustomActionLink.d.ts +1 -1
  1861. package/packages/level2/meta/table/body-cell/MultiselectCellTemplate.funcs.js +1 -1
  1862. package/packages/level2/meta/table/body-cell/MultiselectCellTemplate.js +16 -1
  1863. package/packages/level2/meta/table/body-cell/ViewCell.d.ts +1 -1
  1864. package/packages/level2/meta/table/body-cell/ViewCell.funcs.d.ts +1 -1
  1865. package/packages/level2/meta/table/body-cell/ViewCell.funcs.js +1 -1
  1866. package/packages/level2/meta/table/body-row/TableBodyRow.d.ts +1 -1
  1867. package/packages/level2/meta/table/body-row/TableBodyRow.funcs.d.ts +3 -2
  1868. package/packages/level2/meta/table/body-row/TableBodyRow.funcs.js +4 -1
  1869. package/packages/level2/meta/table/body-row/TableBodyRow.js +2 -2
  1870. package/packages/level2/meta/table/csv-converter.d.ts +1 -1
  1871. package/packages/level2/meta/table/csv-converter.js +4 -3
  1872. package/packages/level2/meta/table/header/TableHeader.d.ts +1 -1
  1873. package/packages/level2/meta/table/header/TableHeader.funcs.d.ts +1 -4
  1874. package/packages/level2/meta/table/header/TableHeader.funcs.js +4 -6
  1875. package/packages/level2/meta/table/header/TableHeader.js +2 -1
  1876. package/packages/level2/meta/table/header-cell/Resizable.d.ts +1 -1
  1877. package/packages/level2/meta/table/header-cell/TableHeaderActionCell.d.ts +1 -1
  1878. package/packages/level2/meta/table/header-cell/TableHeaderActionCell.funcs.d.ts +1 -1
  1879. package/packages/level2/meta/table/header-cell/TableHeaderActionCell.funcs.js +1 -1
  1880. package/packages/level2/meta/table/header-cell/TableHeaderCell.d.ts +1 -1
  1881. package/packages/level2/meta/table/header-cell/TableHeaderCell.funcs.d.ts +1 -1
  1882. package/packages/level2/meta/table/header-cell/TableHeaderCell.funcs.js +2 -2
  1883. package/packages/level2/meta/table/header-cell/TableHeaderCell.js +1 -1
  1884. package/packages/level2/meta/table/header-cell/TableHeaderCellActionButton.d.ts +1 -1
  1885. package/packages/level2/meta/table/header-cell/TableHeaderCellActionButton.js +1 -1
  1886. package/packages/level2/meta/table/pager/Pager.d.ts +2 -2
  1887. package/packages/level2/meta/table/pager/Pager.funcs.d.ts +1 -1
  1888. package/packages/level2/meta/table/pager/Pager.funcs.js +1 -1
  1889. package/packages/level2/meta/table/services/fd-private-paging.d.ts +1 -1
  1890. package/packages/level2/meta/table/services/fd-private-paging.js +1 -1
  1891. package/packages/level2/meta/table/services/fd-table-private-column-calculation.js +1 -1
  1892. package/packages/level2/meta/table/services/fd-table-private-columns.js +1 -1
  1893. package/packages/level2/meta/table/services/fd-table-private-create-columns.js +1 -1
  1894. package/packages/level2/meta/table/services/fd-table-private-properties.js +1 -1
  1895. package/packages/level2/meta/table/services/fd-table-private-resize-columns.js +1 -1
  1896. package/packages/level2/meta/table/services/fd-table-private-rows.d.ts +1 -1
  1897. package/packages/level2/meta/table/services/fd-table-private-rows.js +1 -1
  1898. package/packages/level2/meta/table/services/fd-table-private-sorting.d.ts +1 -1
  1899. package/packages/level2/meta/table/services/fd-table-private-sorting.js +1 -1
  1900. package/packages/level2/meta/table/services/table-column-alignment.d.ts +2 -0
  1901. package/packages/level2/meta/table/services/table-column-alignment.js +8 -0
  1902. package/packages/level2/meta/table/services/table-column-size.d.ts +3 -0
  1903. package/packages/level2/meta/table/services/table-column-size.js +9 -0
  1904. package/packages/level2/meta/table/services/table-private-cell.js +1 -1
  1905. package/packages/level2/meta/table/table-constants.d.ts +2 -0
  1906. package/packages/level2/meta/table/table-constants.js +2 -2
  1907. package/packages/level2/meta/table/table-custom-action/TableCustomAction.funcs.d.ts +1 -1
  1908. package/packages/level2/meta/table/table-custom-action/TableCustomAction.funcs.js +1 -1
  1909. package/packages/level2/meta/table/table-custom-attributes.js +1 -1
  1910. package/packages/level2/meta/table/table-models.d.ts +1 -1
  1911. package/packages/level2/meta/ui/ui-relation.js +1 -1
  1912. package/packages/level2/meta/ui-meta-providers.d.ts +3 -3
  1913. package/packages/level2/meta/ui-meta-providers.js +1 -1
  1914. package/packages/level2/meta/view/View.d.ts +2 -5
  1915. package/packages/level2/meta/view/View.js +26 -30
  1916. package/packages/level2/meta/view/ViewSheet.d.ts +2 -5
  1917. package/packages/level2/meta/view/ViewSheet.funcs.d.ts +4 -1
  1918. package/packages/level2/meta/view/ViewSheet.funcs.js +3 -3
  1919. package/packages/level2/meta/view/ViewSheet.js +1 -4
  1920. package/packages/level2/npm-commands/gen-dynamic-handlers-map/generate-dynamic-handlers-map.js +4 -4
  1921. package/packages/level2/npm-commands/gen-meta/generate-meta.js +2 -2
  1922. package/packages/level2/npm-commands/gen-meta/generate-tsconfig.js +3 -3
  1923. package/packages/level2/npm-commands/gen-schema/gen-schema.js +2 -2
  1924. package/packages/level2/npm-commands/gen-schema/transpile-schema.js +2 -2
  1925. package/packages/level2/npm-commands/migrate-db/migrate-db.js +1 -1
  1926. package/packages/level2/npm-commands/npm-comands-paths.d.ts +11 -6
  1927. package/packages/level2/npm-commands/npm-comands-paths.js +1 -1
  1928. package/packages/level2/npm-commands/run-command/index.js +3 -3
  1929. package/packages/level2/npm-commands/seed-db/seed-db.js +1 -1
  1930. package/packages/level2/npm-commands/server/db/fd-db-initializer.js +1 -1
  1931. package/packages/level2/other/scrapping/scrape-constants.d.ts +1 -0
  1932. package/packages/level2/other/scrapping/scrape-constants.js +2 -2
  1933. package/packages/level2/other/scrapping/scrape.command.d.ts +1 -0
  1934. package/packages/level2/other/scrapping/scrape.command.js +1 -1
  1935. package/packages/level2/other/scrapping/scrapper-config.js +1 -1
  1936. package/packages/level2/other/scrapping/scrappers.d.ts +2 -0
  1937. package/packages/level2/other/scrapping/scrappers.js +2 -2
  1938. package/packages/level2/server/addresses/address-db.d.ts +1 -1
  1939. package/packages/level2/server/addresses/address-db.js +1 -1
  1940. package/packages/level2/server/addresses/address-master-data.js +1 -1
  1941. package/packages/level2/server/addresses/country-db.d.ts +1 -1
  1942. package/packages/level2/server/addresses/country-db.js +1 -1
  1943. package/packages/level2/server/addresses/country-master-data.js +1 -1
  1944. package/packages/level2/server/ai/ai-generated-text.js +1 -1
  1945. package/packages/level2/server/auth/dev-demo-permissions.js +1 -1
  1946. package/packages/level2/server/auth/oauth-service-db.d.ts +2 -2
  1947. package/packages/level2/server/auth/oauth-service-db.js +1 -1
  1948. package/packages/level2/server/auth/permission-master-data.js +1 -1
  1949. package/packages/level2/server/auth/permission-role-mapping.js +1 -1
  1950. package/packages/level2/server/auth/role-db.js +2 -1
  1951. package/packages/level2/server/auth/role-master-data.js +1 -1
  1952. package/packages/level2/server/auth/role-to-permission-master-data.js +1 -1
  1953. package/packages/level2/server/auth/role-to-permission-package.handlers.js +1 -1
  1954. package/packages/level2/server/auth/role-to-permission.handlers.js +1 -1
  1955. package/packages/level2/server/auth/role.handlers.js +1 -1
  1956. package/packages/level2/server/auth/sign-in-api.js +1 -1
  1957. package/packages/level2/server/auth/sign-out-api.js +1 -1
  1958. package/packages/level2/server/auth/sign-up-api.js +1 -1
  1959. package/packages/level2/server/blob/blob-db.d.ts +1 -1
  1960. package/packages/level2/server/blob/blob-db.js +1 -1
  1961. package/packages/level2/server/business-profile/business-profile-api.d.ts +1 -1
  1962. package/packages/level2/server/business-profile/business-profile-api.js +2 -2
  1963. package/packages/level2/server/comments/comment-db.js +1 -1
  1964. package/packages/level2/server/comments/comment-master-data.js +1 -1
  1965. package/packages/level2/server/constants/dev-test.d.ts +1 -0
  1966. package/packages/level2/server/constants/path.d.ts +1 -1
  1967. package/packages/level2/server/constants/query-param-names.d.ts +5 -0
  1968. package/packages/level2/server/constants/query-param-names.js +6 -0
  1969. package/packages/level2/server/customers/customer-db.js +1 -1
  1970. package/packages/level2/server/customers/customer-master-data.js +1 -1
  1971. package/packages/level2/server/dashboards/dashboard-db.js +1 -1
  1972. package/packages/level2/server/dashboards/dashboard-master-data.js +2 -2
  1973. package/packages/level2/server/dashboards/dashboard-report-db.js +1 -1
  1974. package/packages/level2/server/dashboards/dashboard-report-master-data.js +2 -2
  1975. package/packages/level2/server/db/db.d.ts +3 -0
  1976. package/packages/level2/server/db/db.js +2 -2
  1977. package/packages/level2/server/demo/companies/company-db.d.ts +1 -1
  1978. package/packages/level2/server/demo/companies/company-db.js +1 -1
  1979. package/packages/level2/server/demo/companies/company-master-data.js +2 -2
  1980. package/packages/level2/server/demo/contacts/contact-db.d.ts +1 -1
  1981. package/packages/level2/server/demo/contacts/contact-db.js +1 -1
  1982. package/packages/level2/server/demo/contacts/contact-master-data.js +2 -2
  1983. package/packages/level2/server/demo/deals/deal-db.d.ts +1 -1
  1984. package/packages/level2/server/demo/deals/deal-db.js +1 -1
  1985. package/packages/level2/server/demo/deals/deal-master-data.js +1 -1
  1986. package/packages/level2/server/demo/demo-seed-constants.d.ts +2 -0
  1987. package/packages/level2/server/demo/reset-data-api.d.ts +1 -1
  1988. package/packages/level2/server/demo/reset-data-api.js +1 -1
  1989. package/packages/level2/server/demo/tickets/ticket-db.d.ts +1 -1
  1990. package/packages/level2/server/demo/tickets/ticket-db.js +1 -1
  1991. package/packages/level2/server/demo/tickets/ticket-master-data.js +1 -1
  1992. package/packages/level2/server/dev/ai-assistant/ai-assistant-db.d.ts +1 -1
  1993. package/packages/level2/server/dev/ai-assistant/ai-assistant-db.js +1 -1
  1994. package/packages/level2/server/dev/ai-assistant/ai-assistant-master-data.js +1 -1
  1995. package/packages/level2/server/dev/ai-assistant/ai-assistant-mother.d.ts +1 -1
  1996. package/packages/level2/server/dev/ai-assistant/ai-assistant-mother.js +2 -2
  1997. package/packages/level2/server/dev/constants/person-ids.d.ts +1 -1
  1998. package/packages/level2/server/dev/constants/person-to-job-ids.d.ts +1 -1
  1999. package/packages/level2/server/dev/constants/phone-brand-ids.d.ts +1 -1
  2000. package/packages/level2/server/dev/constants/platform-ids.d.ts +1 -1
  2001. package/packages/level2/server/dev/dev-greeting/dev-greeting-master-data.js +1 -1
  2002. package/packages/level2/server/dev/dev-greeting/dev-greeting-mother.d.ts +1 -1
  2003. package/packages/level2/server/dev/dev-greeting/dev-greeting-mother.js +1 -1
  2004. package/packages/level2/server/dev/friends/friend-db.d.ts +3 -3
  2005. package/packages/level2/server/dev/friends/friend-db.js +1 -1
  2006. package/packages/level2/server/dev/friends/friend-master-data.js +1 -1
  2007. package/packages/level2/server/dev/friends/friend-mother.d.ts +4 -4
  2008. package/packages/level2/server/dev/friends/friend-mother.js +1 -1
  2009. package/packages/level2/server/dev/friends/friend-utils.d.ts +1 -1
  2010. package/packages/level2/server/dev/friends/friend-utils.js +1 -1
  2011. package/packages/level2/server/dev/jobs/job-db.d.ts +3 -3
  2012. package/packages/level2/server/dev/jobs/job-db.js +1 -1
  2013. package/packages/level2/server/dev/jobs/job-master-data.js +1 -1
  2014. package/packages/level2/server/dev/jobs/job-mother.d.ts +3 -3
  2015. package/packages/level2/server/dev/jobs/job-mother.js +3 -3
  2016. package/packages/level2/server/dev/paper-planes/paper-plane-db.d.ts +1 -1
  2017. package/packages/level2/server/dev/paper-planes/paper-plane-db.js +1 -1
  2018. package/packages/level2/server/dev/paper-planes/paper-plane-master-data.js +1 -1
  2019. package/packages/level2/server/dev/paper-planes/paper-plane-mother.js +1 -1
  2020. package/packages/level2/server/dev/paper-planes/paper-plane.handlers.js +1 -1
  2021. package/packages/level2/server/dev/persons/person-constants.d.ts +2 -2
  2022. package/packages/level2/server/dev/persons/person-db.d.ts +4 -4
  2023. package/packages/level2/server/dev/persons/person-db.js +1 -1
  2024. package/packages/level2/server/dev/persons/person-master-data.js +1 -1
  2025. package/packages/level2/server/dev/persons/person-mother.d.ts +5 -5
  2026. package/packages/level2/server/dev/persons/person-mother.js +1 -1
  2027. package/packages/level2/server/dev/persons/person-to-job-db.d.ts +3 -3
  2028. package/packages/level2/server/dev/persons/person-to-job-db.js +1 -1
  2029. package/packages/level2/server/dev/persons/person-to-job-master-data.js +1 -1
  2030. package/packages/level2/server/dev/persons/person-to-job-mother.d.ts +1 -1
  2031. package/packages/level2/server/dev/persons/person-to-job-mother.js +1 -1
  2032. package/packages/level2/server/dev/persons/person-to-person-db.d.ts +1 -1
  2033. package/packages/level2/server/dev/persons/person-to-person-db.js +1 -1
  2034. package/packages/level2/server/dev/persons/person-to-person-master-data.js +1 -1
  2035. package/packages/level2/server/dev/persons/person-to-person-mother.js +1 -1
  2036. package/packages/level2/server/dev/persons/person.handlers.js +2 -1
  2037. package/packages/level2/server/dev/phone-brands/phone-brand-db.d.ts +3 -3
  2038. package/packages/level2/server/dev/phone-brands/phone-brand-db.js +1 -1
  2039. package/packages/level2/server/dev/phone-brands/phone-brand-master-data.js +1 -1
  2040. package/packages/level2/server/dev/phone-brands/phone-brand-mother.d.ts +3 -3
  2041. package/packages/level2/server/dev/phone-brands/phone-brand-mother.js +1 -1
  2042. package/packages/level2/server/dev/pings/ping-db.d.ts +1 -1
  2043. package/packages/level2/server/dev/pings/ping-db.js +1 -1
  2044. package/packages/level2/server/dev/pings/ping-master-data.js +1 -1
  2045. package/packages/level2/server/dev/pings/ping-mother.d.ts +1 -1
  2046. package/packages/level2/server/dev/pings/ping-mother.js +1 -1
  2047. package/packages/level2/server/example/example-api.js +1 -1
  2048. package/packages/level2/server/export/csv-data-formatter.js +2 -1
  2049. package/packages/level2/server/export/export-api.d.ts +1 -1
  2050. package/packages/level2/server/export/export-api.js +1 -1
  2051. package/packages/level2/server/fd/fd-toolbox-asp-net/models/roles/role-to-permission-db.js +1 -1
  2052. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-db.js +1 -1
  2053. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package-db.js +1 -1
  2054. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package-to-db.js +1 -1
  2055. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package-to-permission.handlers.js +1 -1
  2056. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission-package.handlers.js +1 -1
  2057. package/packages/level2/server/fd/fd-toolbox-web/auth/permissions/permission.handlers.js +1 -1
  2058. package/packages/level2/server/fd/fd-toolbox-web/constants/db-initialization-messages.js +2 -2
  2059. package/packages/level2/server/fd/fd-toolbox-web/http/base-http-client.js +1 -1
  2060. package/packages/level2/server/fd/fd-toolbox-web/localization/language/language-db.js +1 -1
  2061. package/packages/level2/server/fd/fd-toolbox-web/localization/language/language-master-data.js +1 -1
  2062. package/packages/level2/server/fd/fd-toolbox-web/logging/log-api.js +1 -1
  2063. package/packages/level2/server/fd/fd-toolbox-web/mailing/fd-emails.js +2 -2
  2064. package/packages/level2/server/fd/fd-toolbox-web/models/reset-password-request.js +1 -1
  2065. package/packages/level2/server/fd/fd-toolbox-web/notifications/notification-db.js +1 -1
  2066. package/packages/level2/server/fd/fd-toolbox-web/permissions/fd-permission-master-data.js +2 -2
  2067. package/packages/level2/server/fd/fd-toolbox-web/permissions/permission-api.js +1 -1
  2068. package/packages/level2/server/fd/fd-toolbox-web/resources/resource-property-db.d.ts +1 -1
  2069. package/packages/level2/server/fd/fd-toolbox-web/resources/resource-property-db.js +1 -1
  2070. package/packages/level2/server/fd/fd-toolbox-web/seeding/notification-master-data.js +1 -1
  2071. package/packages/level2/server/fd/fd-toolbox-web/seeding/resource-master-data.js +1 -1
  2072. package/packages/level2/server/fd/fd-toolbox-web/seeding/resource-property-master-data.js +1 -1
  2073. package/packages/level2/server/fd/fd-toolbox-web/seeding/workspace-master-data.js +1 -1
  2074. package/packages/level2/server/fd/fd-toolbox-web/services/notifications.d.ts +1 -1
  2075. package/packages/level2/server/fd/fd-toolbox-web/services/notifications.js +1 -1
  2076. package/packages/level2/server/fd/fd-toolbox-web/services/socket/web-socket-server.js +1 -1
  2077. package/packages/level2/server/fd/fd-toolbox-web/services/socket/web-sockets.d.ts +1 -1
  2078. package/packages/level2/server/fd/fd-toolbox-web/services/socket/web-sockets.js +2 -2
  2079. package/packages/level2/server/features/feature-db.d.ts +2 -2
  2080. package/packages/level2/server/features/feature-db.js +2 -1
  2081. package/packages/level2/server/features/feature-master-data.js +1 -1
  2082. package/packages/level2/server/features/feature-mother.js +1 -1
  2083. package/packages/level2/server/features/features.js +1 -1
  2084. package/packages/level2/server/features/payment-plan-feature-data.js +1 -1
  2085. package/packages/level2/server/features/payment-plan-feature-db.d.ts +1 -1
  2086. package/packages/level2/server/features/payment-plan-feature-db.js +1 -1
  2087. package/packages/level2/server/features/status-board-master-data.js +2 -2
  2088. package/packages/level2/server/features/user-feature.handlers.js +1 -1
  2089. package/packages/level2/server/feeds/feed-entry-data.js +1 -1
  2090. package/packages/level2/server/html/email.js +2 -2
  2091. package/packages/level2/server/infra/background-jobs/background-jobs.js +2 -2
  2092. package/packages/level2/server/infra/background-jobs/init-jobs.js +1 -1
  2093. package/packages/level2/server/infra/workspaces/workspace-setting-db.js +1 -1
  2094. package/packages/level2/server/integration/data/deleted/integration-deleted-api.d.ts +1 -1
  2095. package/packages/level2/server/integration/data/deleted/integration-deleted-api.js +1 -1
  2096. package/packages/level2/server/integration/data/dynamicfields/integration-dynamicfields-api.d.ts +1 -1
  2097. package/packages/level2/server/integration/data/dynamicfields/integration-dynamicfields-api.js +1 -1
  2098. package/packages/level2/server/integration/integration-api.d.ts +3 -3
  2099. package/packages/level2/server/integration/integration-api.js +1 -1
  2100. package/packages/level2/server/integration-platforms/integration-resource.js +1 -1
  2101. package/packages/level2/server/integration-platforms/subscription-odata.js +1 -1
  2102. package/packages/level2/server/integrations/aio/blobs.js +3 -3
  2103. package/packages/level2/server/integrations/blob/blob-storage.js +1 -1
  2104. package/packages/level2/server/integrations/google-place/google-place-helpers.js +1 -1
  2105. package/packages/level2/server/integrations/google-place/google-place.handlers.d.ts +1 -1
  2106. package/packages/level2/server/integrations/google-place/google-place.handlers.js +1 -1
  2107. package/packages/level2/server/integrations/google-place/google-place.js +2 -2
  2108. package/packages/level2/server/integrations/remote-blob/remote-blob-storage.js +1 -1
  2109. package/packages/level2/server/integrations/screenshot/get-website-screenshots.js +1 -1
  2110. package/packages/level2/server/integrations/screenshot/screenshot-controller.d.ts +1 -1
  2111. package/packages/level2/server/integrations/screenshot/screenshot-controller.js +1 -1
  2112. package/packages/level2/server/integrations/screenshot/screenshotone/screenshotone-client.js +2 -2
  2113. package/packages/level2/server/integrations/website-scan/scan-social-media-and-email-constants.js +3 -2
  2114. package/packages/level2/server/integrations/website-scan/scan-social-media-and-email.js +1 -1
  2115. package/packages/level2/server/integrations/website-scan/website-scan-initializer.js +1 -1
  2116. package/packages/level2/server/items/item-db.js +1 -1
  2117. package/packages/level2/server/leads/lead-category-db.js +1 -1
  2118. package/packages/level2/server/leads/lead-category-master-data.js +1 -1
  2119. package/packages/level2/server/leads/lead-db.js +1 -1
  2120. package/packages/level2/server/leads/lead-email-db.js +1 -1
  2121. package/packages/level2/server/leads/lead-email-master-data.js +1 -1
  2122. package/packages/level2/server/leads/lead-group-db.js +1 -1
  2123. package/packages/level2/server/leads/lead-group-master-data.d.ts +5 -1
  2124. package/packages/level2/server/leads/lead-group-master-data.js +3 -3
  2125. package/packages/level2/server/leads/lead-master-data.js +1 -1
  2126. package/packages/level2/server/leads/lead-to-lead-category-db.js +1 -1
  2127. package/packages/level2/server/leads/lead-to-lead-category-master-data.js +1 -1
  2128. package/packages/level2/server/leads/lead-to-lead-group-db.js +1 -1
  2129. package/packages/level2/server/leads/lead-to-lead-group-master-data.js +2 -2
  2130. package/packages/level2/server/leads/lead-to-lead-group.handlers.js +1 -1
  2131. package/packages/level2/server/leads/lead.handlers.js +1 -1
  2132. package/packages/level2/server/leads/services/ai-scan-result-delete.js +1 -1
  2133. package/packages/level2/server/markdown/markdown-api.js +1 -1
  2134. package/packages/level2/server/markdown/markdown.js +1 -1
  2135. package/packages/level2/server/media/media-api.js +2 -2
  2136. package/packages/level2/server/notifications/notification.handlers.js +1 -1
  2137. package/packages/level2/server/orders/order-db.js +1 -1
  2138. package/packages/level2/server/orders/order-master-data.js +1 -1
  2139. package/packages/level2/server/orders/order-utils.js +1 -1
  2140. package/packages/level2/server/orders/order.handlers.js +2 -1
  2141. package/packages/level2/server/otheruser/id/otheruser-id-api.js +1 -1
  2142. package/packages/level2/server/otheruser/otheruser-api.js +1 -1
  2143. package/packages/level2/server/password/editpassword/editpassword-api.d.ts +1 -1
  2144. package/packages/level2/server/password/editpassword/editpassword-api.js +2 -2
  2145. package/packages/level2/server/password/forgotpassword/forgotpassword-api.js +3 -3
  2146. package/packages/level2/server/password/resetpassword/resetpassword-api.js +1 -1
  2147. package/packages/level2/server/payment/method/payment-method-api.js +1 -1
  2148. package/packages/level2/server/payment/verify-fail/payment-verify-fail-api.js +1 -1
  2149. package/packages/level2/server/payment/verify-success/payment-verify-success.js +1 -1
  2150. package/packages/level2/server/payments/payment-plan.handlers.js +2 -2
  2151. package/packages/level2/server/payments/payments/payment-plan-db.d.ts +1 -1
  2152. package/packages/level2/server/payments/payments/payment-plan-db.js +2 -2
  2153. package/packages/level2/server/payments/payments/payment-plan-master-data.js +1 -1
  2154. package/packages/level2/server/payments/payments/payment-plans.js +1 -1
  2155. package/packages/level2/server/payments/payments/payments-api.js +1 -1
  2156. package/packages/level2/server/payments/payments/payments.js +1 -1
  2157. package/packages/level2/server/payments/payments/pricing-seeding.js +1 -1
  2158. package/packages/level2/server/payments/pricing.handlers.d.ts +1 -1
  2159. package/packages/level2/server/payments/pricing.handlers.js +1 -1
  2160. package/packages/level2/server/payments/stripe/stripe-sync.js +2 -2
  2161. package/packages/level2/server/payments/stripe/stripes.d.ts +1 -1
  2162. package/packages/level2/server/payments/stripe/stripes.js +3 -2
  2163. package/packages/level2/server/payments/subscriptions/subscription-db.d.ts +6 -6
  2164. package/packages/level2/server/payments/subscriptions/subscription-db.js +2 -1
  2165. package/packages/level2/server/payments/subscriptions/subscriptions.d.ts +2 -2
  2166. package/packages/level2/server/payments/subscriptions/subscriptions.js +2 -1
  2167. package/packages/level2/server/payments/system-invoice/payment-system-invoice.handlers.js +1 -1
  2168. package/packages/level2/server/product-setup/website-analysiz.js +1 -1
  2169. package/packages/level2/server/products/product-db.js +1 -1
  2170. package/packages/level2/server/products/product-master-data.js +1 -1
  2171. package/packages/level2/server/products/product-media/product-media-db.js +1 -1
  2172. package/packages/level2/server/products/product-media/product-media-master-data.js +1 -1
  2173. package/packages/level2/server/products/product-parameters/product-parameter-mother.d.ts +1 -1
  2174. package/packages/level2/server/products/product-parameters/product-parameter-mother.js +2 -2
  2175. package/packages/level2/server/reports/report-chart-series-master-data.js +1 -1
  2176. package/packages/level2/server/reports/report-chart-series-mother.js +1 -1
  2177. package/packages/level2/server/reports/report-db.js +1 -1
  2178. package/packages/level2/server/reports/report-master-data.js +1 -1
  2179. package/packages/level2/server/reports/report-mother.js +1 -1
  2180. package/packages/level2/server/reports/report-string-constants.js +2 -2
  2181. package/packages/level2/server/reports/report-with-data.handlers.js +1 -1
  2182. package/packages/level2/server/search/search-result-api.js +1 -1
  2183. package/packages/level2/server/search/search-result.d.ts +1 -1
  2184. package/packages/level2/server/search/search-result.js +1 -1
  2185. package/packages/level2/server/search/search.handlers.d.ts +1 -1
  2186. package/packages/level2/server/search/search.handlers.js +1 -1
  2187. package/packages/level2/server/search/searchable-resource.handlers.js +1 -1
  2188. package/packages/level2/server/seeding/seed-master-data.js +1 -1
  2189. package/packages/level2/server/shipment/shipment-api.d.ts +1 -1
  2190. package/packages/level2/server/shipment/shipment-api.js +2 -2
  2191. package/packages/level2/server/shipment/shipment-db.js +1 -1
  2192. package/packages/level2/server/shipment/shipment-master-data.js +1 -1
  2193. package/packages/level2/server/shipment/shipment.handlers.js +2 -1
  2194. package/packages/level2/server/statusboard/statusboard-api.d.ts +3 -3
  2195. package/packages/level2/server/statusboard/statusboard-api.js +1 -1
  2196. package/packages/level2/server/store/store-db.js +2 -1
  2197. package/packages/level2/server/store/store-master-data.js +3 -3
  2198. package/packages/level2/server/subscription/cancel/subscription-cancel-api.js +1 -1
  2199. package/packages/level2/server/subscription/create/subscription-create-api.js +1 -1
  2200. package/packages/level2/server/subscription/update/subscription-update-api.js +1 -1
  2201. package/packages/level2/server/system-settings/system-master-data.js +1 -1
  2202. package/packages/level2/server/system-settings/system-setting-db.js +1 -1
  2203. package/packages/level2/server/test/data/test-constants.d.ts +2 -2
  2204. package/packages/level2/server/test/data/test-constants.js +2 -2
  2205. package/packages/level2/server/test/data/test-data-api.d.ts +1 -1
  2206. package/packages/level2/server/test/data/test-data-api.js +1 -1
  2207. package/packages/level2/server/test/data/test-data.js +1 -1
  2208. package/packages/level2/server/upload/upload-api.d.ts +2 -2
  2209. package/packages/level2/server/upload/upload-api.js +1 -1
  2210. package/packages/level2/server/usage-limit/usage-limit.js +2 -2
  2211. package/packages/level2/server/user-settings/user-setting.handlers.js +1 -1
  2212. package/packages/level2/server/userfeature/isenabled/userfeature-isenabled-api.js +1 -1
  2213. package/packages/level2/server/users/admin-edit-admin.js +1 -1
  2214. package/packages/level2/server/users/auth.d.ts +5 -5
  2215. package/packages/level2/server/users/auth.js +3 -3
  2216. package/packages/level2/server/users/edit-other-users.js +1 -1
  2217. package/packages/level2/server/users/tokens.js +2 -2
  2218. package/packages/level2/server/users/user-creation-service.js +2 -2
  2219. package/packages/level2/server/users/user-db.d.ts +1 -1
  2220. package/packages/level2/server/users/user-db.js +1 -1
  2221. package/packages/level2/server/users/user-deletions.js +1 -1
  2222. package/packages/level2/server/users/user-feature-db.d.ts +3 -4
  2223. package/packages/level2/server/users/user-feature-db.js +2 -1
  2224. package/packages/level2/server/users/user-feature-predicates.js +1 -1
  2225. package/packages/level2/server/users/user-manager.d.ts +1 -0
  2226. package/packages/level2/server/users/user-manager.js +3 -3
  2227. package/packages/level2/server/users/user-master-data.js +3 -3
  2228. package/packages/level2/server/users/user-mother.js +2 -2
  2229. package/packages/level2/server/users/user-role.handlers.js +1 -1
  2230. package/packages/level2/server/users/user-role.js +1 -1
  2231. package/packages/level2/server/users/user-service.js +1 -1
  2232. package/packages/level2/server/users/user-settings/user-setting-db.d.ts +2 -2
  2233. package/packages/level2/server/users/user-settings/user-setting-db.js +1 -1
  2234. package/packages/level2/server/users/user.handlers.js +1 -1
  2235. package/packages/level2/server/utils/base-resource-properties.js +1 -1
  2236. package/packages/level2/server/utils/check-resource-access-permission.js +1 -1
  2237. package/packages/level2/server/utils/get-user-and-workspace-ids.js +1 -1
  2238. package/packages/level2/server/utils/map-subscription-status-to-db-format.js +1 -1
  2239. package/packages/level2/server/web/http-wrapper.js +1 -1
  2240. package/packages/level2/server/web/initialize.d.ts +1 -0
  2241. package/packages/level2/server/web/initialize.js +3 -3
  2242. package/packages/level2/server/web/responses/create-remote-blob-response.js +1 -1
  2243. package/packages/level2/server/workspace/change-current-workspace.js +1 -1
  2244. package/packages/level2/server/workspace/visible-workspace-api.js +1 -1
  2245. package/packages/level2/server/workspace/workspace-api.js +1 -1
  2246. package/packages/level2/server/workspace/workspace-invite/user-workspace-invite.handlers.d.ts +1 -1
  2247. package/packages/level2/server/workspace/workspace-invite/user-workspace-invite.handlers.js +2 -2
  2248. package/packages/level2/server/workspace/workspace-invite/workspace-user-invites.d.ts +1 -0
  2249. package/packages/level2/server/workspace/workspace-invite/workspace-user-invites.js +1 -1
  2250. package/packages/test-infra/asserters/edit-asserts.js +1 -1
  2251. package/packages/test-infra/asserters/forgot-password-asserts.js +1 -1
  2252. package/packages/test-infra/asserters/navigation-asserts.js +1 -1
  2253. package/packages/test-infra/asserters/notification-asserts.js +1 -1
  2254. package/packages/test-infra/asserters/search-asserts.js +2 -2
  2255. package/packages/test-infra/asserters/table-asserts.js +6 -3
  2256. package/packages/test-infra/asserters/ui-asserts.d.ts +0 -1
  2257. package/packages/test-infra/asserters/ui-asserts.js +4 -3
  2258. package/packages/test-infra/constants/test-data/table-headers.js +1 -1
  2259. package/packages/test-infra/constants/ui-tester/checkout-form-test-data.d.ts +4 -4
  2260. package/packages/test-infra/constants/ui-tester/checkout-form-test-data.js +1 -1
  2261. package/packages/test-infra/constants/ui-tester/html-contants.d.ts +3 -0
  2262. package/packages/test-infra/constants/ui-tester/html-contants.js +2 -2
  2263. package/packages/test-infra/constants/ui-tester/paths.d.ts +3 -0
  2264. package/packages/test-infra/constants/ui-tester/paths.js +4 -0
  2265. package/packages/test-infra/eslint.config.js +1 -1
  2266. package/packages/test-infra/fixtures/error-tracking-fixture.js +1 -1
  2267. package/packages/test-infra/page-objects/account-setup-po.js +1 -1
  2268. package/packages/test-infra/page-objects/browser-po.js +4 -3
  2269. package/packages/test-infra/page-objects/checkout-form-po.js +2 -2
  2270. package/packages/test-infra/page-objects/edit-po.d.ts +4 -4
  2271. package/packages/test-infra/page-objects/edit-po.js +4 -2
  2272. package/packages/test-infra/page-objects/filter-po.js +2 -2
  2273. package/packages/test-infra/page-objects/forgot-password-po.js +3 -3
  2274. package/packages/test-infra/page-objects/list-po.js +1 -1
  2275. package/packages/test-infra/page-objects/login-po.js +1 -1
  2276. package/packages/test-infra/page-objects/multi-browser-po.js +3 -2
  2277. package/packages/test-infra/page-objects/notification-po.js +2 -2
  2278. package/packages/test-infra/page-objects/payment-plan-po.js +3 -2
  2279. package/packages/test-infra/page-objects/reset-password-po.js +1 -1
  2280. package/packages/test-infra/page-objects/search-po.js +1 -1
  2281. package/packages/test-infra/page-objects/select-workspace-po.js +1 -1
  2282. package/packages/test-infra/page-objects/sidebar-po.js +1 -1
  2283. package/packages/test-infra/page-objects/table-asserts.js +3 -3
  2284. package/packages/test-infra/page-objects/toolbar-po.js +1 -1
  2285. package/packages/test-infra/page-objects/user-menu-po.js +1 -1
  2286. package/packages/test-infra/page-objects/user-setting-po.js +2 -2
  2287. package/packages/test-infra/page-objects/view-po.js +1 -1
  2288. package/packages/test-infra/playwright-setup/global-setup.js +1 -1
  2289. package/packages/test-infra/playwright-setup/global-teardown.js +1 -1
  2290. package/packages/test-infra/test-data/crud-tests/crud-test-data-factory.js +1 -1
  2291. package/packages/test-infra/test-data/crud-tests/crud-test-data.js +1 -1
  2292. package/packages/test-infra/test-data/crud-tests/crud-validation-results.d.ts +5 -0
  2293. package/packages/test-infra/test-data/crud-tests/crud-validation-results.js +12 -0
  2294. package/packages/test-infra/test-data/crud-tests/relation-sync-info-provider.js +1 -1
  2295. package/packages/test-infra/test-data/dev/friends/friends-mother.d.ts +3 -1
  2296. package/packages/test-infra/test-data/dev/friends/friends-mother.js +5 -2
  2297. package/packages/test-infra/test-data/dev/persons/person-mother.d.ts +2 -2
  2298. package/packages/test-infra/test-data/dev/persons/person-mother.js +1 -1
  2299. package/packages/test-infra/test-data/dev/persons/phone-brand-mother.d.ts +1 -1
  2300. package/packages/test-infra/test-data/dev/persons/phone-brand-mother.js +1 -1
  2301. package/packages/test-infra/test-data/integration-tests/base-http-client.js +2 -1
  2302. package/packages/test-infra/test-data/integration-tests/http-client.js +2 -1
  2303. package/packages/test-infra/test-data/integration-tests/result-comparer.js +1 -1
  2304. package/packages/test-infra/test-data/integration-tests/workspace.js +1 -1
  2305. package/packages/test-infra/test-data/meta/person-property-metas.js +1 -1
  2306. package/packages/test-infra/test-data/meta/resource-meta-mother.d.ts +4 -4
  2307. package/packages/test-infra/test-data/meta/resource-meta-mother.js +1 -1
  2308. package/packages/test-infra/test-data/meta/ui-meta-mother.d.ts +2 -2
  2309. package/packages/test-infra/test-data/meta/ui-meta-mother.js +1 -1
  2310. package/packages/test-infra/test-data/meta/ui-property-meta-mother.d.ts +13 -13
  2311. package/packages/test-infra/test-data/meta/ui-property-meta-mother.js +1 -1
  2312. package/packages/test-infra/test-data/seed-test-data.js +1 -1
  2313. package/packages/test-infra/ui-tester/global-ui-test.js +1 -1
  2314. package/packages/test-infra/ui-tester/ui-tester.js +4 -2
  2315. package/packages/tools/string-duplication/analyze-code-base.d.ts +2 -1
  2316. package/packages/tools/string-duplication/analyze-code-base.js +2 -2
  2317. package/packages/tools/string-duplication/directives.js +1 -1
  2318. package/packages/tools/string-duplication/handlers.d.ts +2 -0
  2319. package/packages/tools/string-duplication/handlers.js +1 -1
  2320. package/packages/tools/string-duplication/normalizer.js +1 -1
  2321. package/packages/tools/string-duplication/reporter.js +1 -1
  2322. package/packages/tools/string-duplication/resolver.js +1 -1
  2323. package/packages/tools/string-duplication/string-extractor.d.ts +3 -0
  2324. package/packages/tools/string-duplication/string-extractor.js +3 -3
  2325. package/server/index.d.ts +78 -6
  2326. package/server/index.js +67 -6
  2327. package/src/app/http-wrappers.js +1 -1
  2328. package/src/app/init-saas-kit.js +2 -2
  2329. package/src/app/loading.js +1 -1
  2330. package/test-infra/index.d.ts +5 -3
  2331. package/test-infra/index.js +5 -3
  2332. package/undocumented/index.d.ts +491 -755
  2333. package/undocumented/index.js +398 -611
  2334. package/flint/index.d.ts +0 -2
  2335. package/flint/index.js +0 -3
  2336. package/generated/crud-handler-map.js +0 -4
  2337. package/packages/base-repo/app-constants/system-constants.js +0 -8
  2338. package/packages/base-repo/constants/common-strings.js +0 -4
  2339. package/packages/base-repo/constants/extensions.js +0 -4
  2340. package/packages/fd-toolbox/collections/arrays.js +0 -6
  2341. package/packages/fd-toolbox/collections/enums.js +0 -4
  2342. package/packages/fd-toolbox/constants/file-constants.js +0 -7
  2343. package/packages/fd-toolbox/odata/services/odata-filters.js +0 -9
  2344. package/packages/fd-toolbox/odata/services/odata-parsers.js +0 -11
  2345. package/packages/fd-toolbox/server/api/odata/odata-query-params.js +0 -7
  2346. package/packages/fd-toolbox/server/services/dictionaries.js +0 -4
  2347. package/packages/fd-toolbox/server/time/duration-service.js +0 -6
  2348. package/packages/fd-toolbox/strings/strings-constants.js +0 -4
  2349. package/packages/flint/dist/rules/index.js +0 -17
  2350. package/packages/flint/eslint-base.config.js +0 -27
  2351. package/packages/flint/eslint-next-web-vitals-temp.config.d.ts +0 -3
  2352. package/packages/flint/eslint-next-web-vitals-temp.config.js +0 -6
  2353. package/packages/flint/infra/analysis/type-guards.d.ts +0 -58
  2354. package/packages/flint/infra/analysis/type-guards.js +0 -12
  2355. package/packages/flint/non-level-two-eslint-config.d.ts +0 -1
  2356. package/packages/flint/non-level-two-eslint-config.js +0 -8
  2357. package/packages/flint/project-specific-eslint-configs.d.ts +0 -21
  2358. package/packages/flint/project-specific-eslint-configs.js +0 -19
  2359. package/packages/flint/rules/consistency/no-index-import-in-ast-helpers.d.ts +0 -3
  2360. package/packages/flint/rules/consistency/no-index-import-in-ast-helpers.js +0 -6
  2361. package/packages/flint/rules/flint/must-not-use-eslint-deprecated-methods.d.ts +0 -5
  2362. package/packages/flint/rules/flint/must-not-use-eslint-deprecated-methods.js +0 -8
  2363. package/packages/flint/rules/must-declare-module-members-in-consistent-order.js +0 -9
  2364. package/packages/flint/rules/must-not-modify-data-or-workspace-in-readonly-tests.js +0 -9
  2365. package/packages/flint/rules/must-not-use-all-caps-constants.js +0 -8
  2366. package/packages/flint/rules/must-not-use-fetch.js +0 -7
  2367. package/packages/flint/rules/must-not-use-inline-object-type-parameters.js +0 -7
  2368. package/packages/flint/rules/must-not-use-placeholders-in-eslint-rule-titles.js +0 -7
  2369. package/packages/flint/rules/must-not-use-see-link-in-docs-if-type-available.js +0 -8
  2370. package/packages/flint/rules/must-use-color-variables-instead-of-hardcoded-values.js +0 -8
  2371. package/packages/flint/rules/must-use-functions-for-component-ids.js +0 -9
  2372. package/packages/flint/rules/must-use-odata-builder.js +0 -8
  2373. package/packages/flint/rules/must-use-only-crud-operations.js +0 -8
  2374. package/packages/flint/rules/must-use-resource-provider-functions-to-get-resources-on-server.js +0 -11
  2375. package/packages/flint/rules/naming/must-not-add-files-and-code-in-lib-folder.d.ts +0 -4
  2376. package/packages/flint/rules/naming/must-not-add-files-and-code-in-lib-folder.js +0 -8
  2377. package/packages/flint/rules/naming/must-use-the-fd-prefix-for-env-variables.d.ts +0 -5
  2378. package/packages/flint/rules/naming/must-use-the-fd-prefix-for-env-variables.js +0 -8
  2379. package/packages/flint/rules/naming/no-utils-helpers-naming.d.ts +0 -3
  2380. package/packages/flint/rules/naming/no-utils-helpers-naming.js +0 -7
  2381. package/packages/flint/rules/no-manual-resource-instantiation.js +0 -9
  2382. package/packages/flint/rules/readability/component-function-max-lines.d.ts +0 -3
  2383. package/packages/flint/rules/readability/component-function-max-lines.js +0 -7
  2384. package/packages/infra/ci/utils/cloud-client.js +0 -10
  2385. package/packages/infra/ci/utils/create-early-infra-error.js +0 -4
  2386. package/packages/infra/ci/utils/exec.js +0 -9
  2387. package/packages/infra/ci/utils/git-command-funcs.js +0 -6
  2388. package/packages/infra/ci/utils/git.js +0 -18
  2389. package/packages/infra/ci/utils/npm-command-funcs.js +0 -8
  2390. package/packages/level2/fd-app-toolbox/login-form/LoginForm.funcs.js +0 -19
  2391. package/packages/level2/fd-app-toolbox/login-form/facebook-login.js +0 -18
  2392. package/packages/level2/fd-app-toolbox/login-form/google-login.js +0 -18
  2393. package/packages/level2/fd-app-toolbox/login-form/microsoft-login.js +0 -20
  2394. package/packages/level2/fd-app-toolbox/login-form/standard-login.js +0 -14
  2395. package/packages/level2/fd-app-toolbox/register-form/RegisterForm.funcs.d.ts +0 -7
  2396. package/packages/level2/fd-app-toolbox/register-form/RegisterForm.funcs.js +0 -11
  2397. package/packages/level2/fd-app-toolbox/report/ReportCard.funcs.d.ts +0 -4
  2398. package/packages/level2/fd-app-toolbox/report/ReportCard.funcs.js +0 -6
  2399. package/packages/level2/fd-app-toolbox/report/ReportChart.funcs.d.ts +0 -4
  2400. package/packages/level2/fd-app-toolbox/report/ReportChart.funcs.js +0 -6
  2401. package/packages/level2/fd-app-toolbox/report/ReportComponent.funcs.d.ts +0 -2
  2402. package/packages/level2/fd-app-toolbox/report/ReportComponent.funcs.js +0 -8
  2403. package/packages/level2/meta/card-list/card-models.d.ts +0 -4
  2404. package/packages/level2/meta/card-list/data-card/data-card-content/DataCardContent.render.funcs.d.ts +0 -4
  2405. package/packages/level2/meta/decorators/colorful.d.ts +0 -8
  2406. package/packages/level2/meta/decorators/colorful.js +0 -6
  2407. package/packages/level2/meta/edit-resource/EditResourceTabs.funcs.d.ts +0 -12
  2408. package/packages/level2/meta/edit-resource/EditResourceTabs.funcs.js +0 -22
  2409. package/packages/level2/meta/edit-resource/config/edit-resource-configs.js +0 -17
  2410. package/packages/level2/meta/server/constants/resource-file-suffixes.d.ts +0 -4
  2411. package/packages/level2/meta/server/constants/resource-file-suffixes.js +0 -6
  2412. /package/generated/{crud-handler-map.d.ts → meta/crud-handler-map.d.ts} +0 -0
  2413. /package/packages/{fd-toolbox/http → base-repo/constants}/http-constants.js +0 -0
  2414. /package/packages/fd-toolbox/auth/{login-states.d.ts → internal-login-states.d.ts} +0 -0
  2415. /package/packages/fd-toolbox/auth/{oauth-service-types.js → oauth-provider-types.js} +0 -0
  2416. /package/packages/fd-toolbox/collections/{arrays.d.ts → internal-arrays.d.ts} +0 -0
  2417. /package/packages/fd-toolbox/collections/{enums.d.ts → internal-enums.d.ts} +0 -0
  2418. /package/packages/fd-toolbox/constants/{dashboard-ids.d.ts → internal-dashboard-ids.d.ts} +0 -0
  2419. /package/packages/fd-toolbox/constants/{dashboard-ids.js → internal-dashboard-ids.js} +0 -0
  2420. /package/packages/fd-toolbox/constants/{file-constants.d.ts → internal-file-constants.d.ts} +0 -0
  2421. /package/packages/fd-toolbox/functions/{getter-setter-functions.js → internal-getter-setter-functions.js} +0 -0
  2422. /package/packages/fd-toolbox/odata/{services → odata-formatting}/odata-filters.d.ts +0 -0
  2423. /package/packages/fd-toolbox/permissions/constants/{crud-action-to-permission-prefix.js → crud-action-to-permission-prefixes.js} +0 -0
  2424. /package/packages/fd-toolbox/server/time/{duration-service.d.ts → execution-duration.d.ts} +0 -0
  2425. /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
  2426. /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
  2427. /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
  2428. /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
  2429. /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
  2430. /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
  2431. /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
  2432. /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
  2433. /package/packages/flint/rules/{must-not-use-fetch.d.ts → general/must-not-use-fetch.d.ts} +0 -0
  2434. /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
  2435. /package/packages/flint/rules/{must-use-odata-builder.d.ts → general/must-use-odata-builder.d.ts} +0 -0
  2436. /package/packages/flint/rules/{must-use-only-crud-operations.d.ts → general/must-use-only-crud-operations.d.ts} +0 -0
  2437. /package/packages/flint/rules/{no-manual-resource-instantiation.d.ts → general/no-manual-resource-instantiation.d.ts} +0 -0
  2438. /package/packages/flint/rules/{must-not-use-all-caps-constants.d.ts → naming/must-not-use-all-caps-constants.d.ts} +0 -0
  2439. /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
  2440. /package/packages/flint/rules/{must-use-functions-for-component-ids.d.ts → naming/must-use-functions-for-component-ids.d.ts} +0 -0
  2441. /package/packages/flint/rules/{must-not-return-empty-strings.d.ts → readability/must-not-return-empty-strings.d.ts} +0 -0
  2442. /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
  2443. /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
  2444. /package/packages/infra/ci/{utils → tools}/cloud-client.d.ts +0 -0
  2445. /package/packages/infra/ci/{utils → tools}/create-early-infra-error.d.ts +0 -0
  2446. /package/packages/infra/ci/{utils → tools}/get-submodule-dir.d.ts +0 -0
  2447. /package/packages/infra/ci/{utils → tools}/git-command-funcs.d.ts +0 -0
  2448. /package/packages/infra/ci/{utils → tools}/npm-command-funcs.d.ts +0 -0
  2449. /package/packages/level2/common/payments/types/{payment-types.d.ts → internal-payment-types.d.ts} +0 -0
  2450. /package/packages/level2/common/payments/types/{payment-types.js → internal-payment-types.js} +0 -0
  2451. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/LoginForm.d.ts +0 -0
  2452. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/login-error-constants.d.ts +0 -0
  2453. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/login-error-constants.js +0 -0
  2454. /package/packages/level2/fd-app-toolbox/{login-form → auth-forms/login-form}/oauth-login-config.js +0 -0
  2455. /package/packages/level2/meta/card-list/{card-models.js → data-card/data-card-types.js} +0 -0
  2456. /package/packages/level2/meta/edit-resource/config/{edit-resource-configs.d.ts → internal-edit-resource-configs.d.ts} +0 -0
  2457. /package/packages/level2/server/reports/{report-id-to-type.d.ts → report-id-to-types.d.ts} +0 -0
  2458. /package/packages/level2/server/reports/{report-id-to-type.js → report-id-to-types.js} +0 -0
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+ import { commonLowerCaseWords, collectionMethodNames } from '../../../base-repo/constants/internal-common-strings.js';
3
+
4
+ const runtimeStaticMethods={'from':collectionMethodNames['from'],'reject':'reject','resolve':commonLowerCaseWords['resolve'],'of':'of'};const arrayTypeSyntax={'generic':'Array<','typedArray':'typed_array'};
5
+
6
+ export { arrayTypeSyntax, runtimeStaticMethods };
@@ -0,0 +1,36 @@
1
+ export declare const flintRuleIdentifiers: {
2
+ readonly argument: "argument";
3
+ readonly assert: "assert";
4
+ readonly declaration: "declaration";
5
+ readonly esTreeNodeToTSNodeMap: "esTreeNodeToTSNodeMap";
6
+ readonly fetch: "fetch";
7
+ readonly funcs: ".funcs";
8
+ readonly funcsTs: ".funcs.ts";
9
+ readonly global: "global";
10
+ readonly inputFile: "input-file";
11
+ readonly keys: "keys";
12
+ readonly load: "load";
13
+ readonly log: "log";
14
+ readonly location: "location";
15
+ readonly module: "module";
16
+ readonly on: "on";
17
+ readonly page: "page";
18
+ readonly parent: "parent";
19
+ readonly process: "process";
20
+ readonly progress: "progress";
21
+ readonly readonlyUiTest: "readonlyUiTest";
22
+ readonly ruleCreator: "RuleCreator";
23
+ readonly search: "search";
24
+ readonly searchParams: "searchParams";
25
+ readonly setDefaultTimeout: "setDefaultTimeout";
26
+ readonly sourceCode: "sourceCode";
27
+ readonly typeArguments: "typeArguments";
28
+ readonly typeAnnotation: "typeAnnotation";
29
+ readonly uiTest: "uiTest";
30
+ readonly waitForSelector: "waitForSelector";
31
+ readonly window: "window";
32
+ readonly find: "find";
33
+ readonly auth: "auth";
34
+ readonly eslintRuleCreatorName: "createRule";
35
+ readonly object: "Object";
36
+ };
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+ import { commonLowerCaseWords } from '../../../base-repo/constants/internal-common-strings.js';
3
+
4
+ const flintRuleIdentifiers={'argument':commonLowerCaseWords['argument'],'assert':'assert','declaration':'declaration','esTreeNodeToTSNodeMap':'esTreeNodeToTSNodeMap','fetch':'fetch','funcs':'.funcs','funcsTs':'.funcs.ts','global':commonLowerCaseWords['global'],'inputFile':'input-file','keys':'keys','load':commonLowerCaseWords['load'],'log':commonLowerCaseWords['log'],'location':'location','module':commonLowerCaseWords['module'],'on':commonLowerCaseWords['on'],'page':'page','parent':commonLowerCaseWords['parent'],'process':'process','progress':commonLowerCaseWords['progress'],'readonlyUiTest':'readonlyUiTest','ruleCreator':'RuleCreator','search':commonLowerCaseWords['search'],'searchParams':'searchParams','setDefaultTimeout':'setDefaultTimeout','sourceCode':'sourceCode','typeArguments':'typeArguments','typeAnnotation':'typeAnnotation','uiTest':'uiTest','waitForSelector':'waitForSelector','window':'window','find':commonLowerCaseWords['find'],'auth':commonLowerCaseWords['auth'],'eslintRuleCreatorName':'createRule','object':'Object'};
5
+
6
+ export { flintRuleIdentifiers };
@@ -1,7 +1,7 @@
1
1
  import { ESLintUtils } from "@typescript-eslint/utils";
2
2
  import { type RuleContext, type RuleListener } from "@typescript-eslint/utils/ts-eslint";
3
3
  import type { JSONSchema4 } from "@typescript-eslint/utils/json-schema";
4
- import { type eslintFixTypeNames } from "@base-repo/constants/common-strings";
4
+ import { type eslintFixTypeNames } from "@base-repo/constants/internal-common-strings";
5
5
  interface EslintRuleConfig<T> {
6
6
  fixable?: typeof eslintFixTypeNames.code | typeof eslintFixTypeNames.whitespace;
7
7
  defaultOptions?: T;
@@ -2,6 +2,6 @@
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
3
  import { ruleTypes } from '@flint/infra/constants/rules-meta';
4
4
 
5
- var __defProp=Object['defineProperty'],__name=(_0x5a9c37,_0x4a7f21)=>__defProp(_0x5a9c37,'name',{'value':_0x4a7f21,'configurable':!![]});function createEslintRule(_0x1e76a4,_0x403157,_0x8b5f0e,_0x4e51df){const _0x3258d3={'schema':[],'defaultOptions':[]};let _0x162e79='';return _0x4e51df?.['dynamicMessage']&&(_0x162e79='\x0a'+_0x4e51df['dynamicMessage']+'\x0a'),ESLintUtils['RuleCreator']['withoutDocs']({'meta':{'type':ruleTypes['problem'],'messages':{[_0x1e76a4]:''+_0x1e76a4+_0x162e79+_0x403157},'schema':_0x4e51df?.['schema']??_0x3258d3['schema'],..._0x4e51df?.['fixable']&&{'fixable':_0x4e51df['fixable']}},'defaultOptions':_0x4e51df?.['defaultOptions']??_0x3258d3['defaultOptions'],'create':_0x8b5f0e});}__name(createEslintRule,'createEslintRule');
5
+ var __defProp=Object['defineProperty'],__name=(_0x2d6363,_0x174e46)=>__defProp(_0x2d6363,'name',{'value':_0x174e46,'configurable':!![]});function createEslintRule(_0x43f0e0,_0x5e48a0,_0x575d3a,_0x30f72a){const _0xd8b2b7={'schema':[],'defaultOptions':[]};let _0x11511a='';return _0x30f72a?.['dynamicMessage']&&(_0x11511a='\x0a'+_0x30f72a['dynamicMessage']+'\x0a'),ESLintUtils['RuleCreator']['withoutDocs']({'meta':{'type':ruleTypes['problem'],'messages':{[_0x43f0e0]:''+_0x43f0e0+_0x11511a+_0x5e48a0},'schema':_0x30f72a?.['schema']??_0xd8b2b7['schema'],..._0x30f72a?.['fixable']&&{'fixable':_0x30f72a['fixable']}},'defaultOptions':_0x30f72a?.['defaultOptions']??_0xd8b2b7['defaultOptions'],'create':_0x575d3a});}__name(createEslintRule,'createEslintRule');
6
6
 
7
7
  export { createEslintRule };
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
- import _0x333991__default from 'path';
3
- import _0x7f87ea__default from 'fs';
2
+ import _0x1a4b39__default from 'path';
3
+ import _0x25435e__default from 'fs';
4
4
  import { folders } from '../../base-repo/app-constants/project-paths.js';
5
- import { head } from '../../base-repo/app-constants/system-constants.js';
6
- import { eslintLoggerLogError } from '@flint/test-utils/logger';
5
+ import { head } from '../../base-repo/app-constants/internal-system-constants.js';
6
+ import { eslintLoggerLogError } from '@flint/test-infra/logger';
7
7
 
8
- var __defProp=Object['defineProperty'],__name=(_0x1fa4dd,_0x246242)=>__defProp(_0x1fa4dd,'name',{'value':_0x246242,'configurable':!![]});const constants={'dotGit':folders['dotGit'],'head':head,'packedRefs':'packed-refs','refPrefix':'ref:','gitdirPrefix':'gitdir:','utf8':'utf-8'};function readGitHead(_0x251ec9,_0xce476c){let _0x5f0958='';try{const _0x3936ef=findGitDir(_0x251ec9);if(_0x3936ef){const _0x504273=readHeadContent(_0x3936ef);if(_0x504273){_0x5f0958=_0x504273;if(isRefHead(_0x504273)){const _0x4ce3b4=resolveHeadRef(_0x3936ef,_0x504273);_0x4ce3b4&&(_0x5f0958=_0x4ce3b4);}}}}catch(_0x7592ae){eslintLoggerLogError('['+_0xce476c+']\x20Error\x20reading\x20git\x20HEAD',_0x7592ae instanceof Error?_0x7592ae['message']:String(_0x7592ae));}return _0x5f0958;}__name(readGitHead,'readGitHead');function findGitDir(_0x4561f9){let _0x587666=_0x333991__default['resolve'](_0x4561f9),_0x56ac28,_0x5b5aef=!![];while(_0x5b5aef){const _0x49c357=_0x333991__default['join'](_0x587666,constants['dotGit']),_0x129b3f=_0x7f87ea__default['existsSync'](_0x49c357);if(_0x129b3f)_0x56ac28=resolveGitDirFromDotGitPath(_0x587666,_0x49c357),_0x5b5aef=![];else {const _0x5319be=_0x333991__default['dirname'](_0x587666);_0x5319be===_0x587666?_0x5b5aef=![]:_0x587666=_0x5319be;}}return _0x56ac28;}__name(findGitDir,'findGitDir');function resolveGitDirFromDotGitPath(_0x535251,_0x2fa1bd){let _0xe3654c;const _0x29c087=_0x7f87ea__default['statSync'](_0x2fa1bd);if(_0x29c087['isDirectory']())_0xe3654c=_0x2fa1bd;else {const _0x4c6508=_0x7f87ea__default['readFileSync'](_0x2fa1bd,constants['utf8'])['trim']();if(_0x4c6508['startsWith'](constants['gitdirPrefix'])){const _0x6551d0=_0x4c6508['replace'](constants['gitdirPrefix'],'')['trim']();_0xe3654c=_0x333991__default['resolve'](_0x535251,_0x6551d0);}}return _0xe3654c;}__name(resolveGitDirFromDotGitPath,'resolveGitDirFromDotGitPath');function readHeadContent(_0x5bec6b){const _0x1cc5a8=_0x333991__default['join'](_0x5bec6b,constants['head']);let _0x24f67e='';return _0x7f87ea__default['existsSync'](_0x1cc5a8)&&(_0x24f67e=_0x7f87ea__default['readFileSync'](_0x1cc5a8,constants['utf8'])['trim']()),_0x24f67e;}__name(readHeadContent,'readHeadContent');function isRefHead(_0x5bfd7f){return _0x5bfd7f['startsWith'](constants['refPrefix']);}__name(isRefHead,'isRefHead');function resolveHeadRef(_0x588395,_0x47406e){let _0x59ef45='';const _0x266717=_0x47406e['replace'](constants['refPrefix'],'')['trim'](),_0x30a5b7=readRefSha(_0x588395,_0x266717);return _0x30a5b7&&(_0x59ef45=_0x47406e+':'+_0x30a5b7),_0x59ef45;}__name(resolveHeadRef,'resolveHeadRef');function readRefSha(_0x382801,_0x1ee2f2){const _0x3fc5c7=_0x333991__default['join'](_0x382801,_0x1ee2f2);let _0x333e90='';return _0x7f87ea__default['existsSync'](_0x3fc5c7)?_0x333e90=_0x7f87ea__default['readFileSync'](_0x3fc5c7,constants['utf8'])['trim']():_0x333e90=readPackedRefSha(_0x382801,_0x1ee2f2),_0x333e90;}__name(readRefSha,'readRefSha');function readPackedRefSha(_0x57dfa7,_0x216de8){const _0x31b2d3=_0x333991__default['join'](_0x57dfa7,constants['packedRefs']);let _0x211cfe='';if(_0x7f87ea__default['existsSync'](_0x31b2d3)){const _0x3e027f=_0x7f87ea__default['readFileSync'](_0x31b2d3,constants['utf8']),_0x1770d7=_0x3e027f['split'](/\r?\n/);for(const _0x3022a3 of _0x1770d7){const _0x3ecb9b=!_0x3022a3||_0x3022a3['startsWith']('#')||_0x3022a3['startsWith']('^');if(!_0x3ecb9b){const [_0x48fa9f,_0x2798d4]=_0x3022a3['trim']()['split']('\x20');if(_0x2798d4===_0x216de8&&_0x48fa9f){_0x211cfe=_0x48fa9f;break;}}}}return _0x211cfe;}__name(readPackedRefSha,'readPackedRefSha');
8
+ var __defProp=Object['defineProperty'],__name=(_0x499293,_0x11172c)=>__defProp(_0x499293,'name',{'value':_0x11172c,'configurable':!![]});const constants={'dotGit':folders['dotGit'],'head':head,'refPrefix':'ref:','gitdirPrefix':'gitdir:','utf8':'utf-8'};function readGitHead(_0x2a0e98,_0xd4674b){let _0x418f4d='';try{const _0x4cde36=findGitDir(_0x2a0e98);if(_0x4cde36){const _0x6d8b2a=readHeadContent(_0x4cde36);if(_0x6d8b2a){_0x418f4d=_0x6d8b2a;if(isRefHead(_0x6d8b2a)){const _0x4c285b=resolveHeadRef(_0x4cde36,_0x6d8b2a);_0x4c285b&&(_0x418f4d=_0x4c285b);}}}}catch(_0x44e184){eslintLoggerLogError('['+_0xd4674b+']\x20Error\x20reading\x20git\x20HEAD',_0x44e184 instanceof Error?_0x44e184['message']:String(_0x44e184));}return _0x418f4d;}__name(readGitHead,'readGitHead');function findGitDir(_0x2cf989){let _0x1afe9a=_0x1a4b39__default['resolve'](_0x2cf989),_0x15ea34,_0xe4836b=!![];while(_0xe4836b){const _0x311815=_0x1a4b39__default['join'](_0x1afe9a,constants['dotGit']),_0x55eb99=_0x25435e__default['existsSync'](_0x311815);if(_0x55eb99)_0x15ea34=resolveGitDirFromDotGitPath(_0x1afe9a,_0x311815),_0xe4836b=![];else {const _0x365075=_0x1a4b39__default['dirname'](_0x1afe9a);_0x365075===_0x1afe9a?_0xe4836b=![]:_0x1afe9a=_0x365075;}}return _0x15ea34;}__name(findGitDir,'findGitDir');function resolveGitDirFromDotGitPath(_0xcd06ce,_0x44696a){let _0x25a890;const _0x364eab=_0x25435e__default['statSync'](_0x44696a);if(_0x364eab['isDirectory']())_0x25a890=_0x44696a;else {const _0x4a39c1=_0x25435e__default['readFileSync'](_0x44696a,constants['utf8'])['trim']();if(_0x4a39c1['startsWith'](constants['gitdirPrefix'])){const _0x1a691d=_0x4a39c1['replace'](constants['gitdirPrefix'],'')['trim']();_0x25a890=_0x1a4b39__default['resolve'](_0xcd06ce,_0x1a691d);}}return _0x25a890;}__name(resolveGitDirFromDotGitPath,'resolveGitDirFromDotGitPath');function readHeadContent(_0x5bb6b5){const _0x3d6253=_0x1a4b39__default['join'](_0x5bb6b5,constants['head']);let _0x148717='';return _0x25435e__default['existsSync'](_0x3d6253)&&(_0x148717=_0x25435e__default['readFileSync'](_0x3d6253,constants['utf8'])['trim']()),_0x148717;}__name(readHeadContent,'readHeadContent');function isRefHead(_0x333db8){return _0x333db8['startsWith'](constants['refPrefix']);}__name(isRefHead,'isRefHead');function resolveHeadRef(_0x1752bf,_0x58aa7e){let _0x264986='';const _0x1be383=_0x58aa7e['replace'](constants['refPrefix'],'')['trim'](),_0x4098e9=readRefSha(_0x1752bf,_0x1be383);return _0x4098e9&&(_0x264986=_0x58aa7e+':'+_0x4098e9),_0x264986;}__name(resolveHeadRef,'resolveHeadRef');function readRefSha(_0x275795,_0x26df01){const _0x326def=_0x1a4b39__default['join'](_0x275795,_0x26df01);let _0xdc5768='';return _0x25435e__default['existsSync'](_0x326def)?_0xdc5768=_0x25435e__default['readFileSync'](_0x326def,constants['utf8'])['trim']():_0xdc5768=readPackedRefSha(_0x275795,_0x26df01),_0xdc5768;}__name(readRefSha,'readRefSha');function readPackedRefSha(_0x546b09,_0x3e24f9){const _0x44bd91=_0x1a4b39__default['join'](_0x546b09,'packed-refs');let _0xfbd65c='';if(_0x25435e__default['existsSync'](_0x44bd91)){const _0x4d7741=_0x25435e__default['readFileSync'](_0x44bd91,constants['utf8']),_0x1e87e2=_0x4d7741['split'](/\r?\n/);for(const _0x1bec7f of _0x1e87e2){const _0x531dcd=!_0x1bec7f||_0x1bec7f['startsWith']('#')||_0x1bec7f['startsWith']('^');if(!_0x531dcd){const [_0x42fc93,_0x78625f]=_0x1bec7f['trim']()['split']('\x20');if(_0x78625f===_0x3e24f9&&_0x42fc93){_0xfbd65c=_0x42fc93;break;}}}}return _0xfbd65c;}__name(readPackedRefSha,'readPackedRefSha');
9
9
 
10
10
  export { readGitHead };
@@ -1,7 +1,7 @@
1
1
  import { ESLintUtils } from "@typescript-eslint/utils";
2
- export declare const ruleName = "must-avoid-code-duplication-in-functions";
3
2
  type Options = {
4
3
  minLines: number;
5
4
  }[];
5
+ export declare const ruleName = "must-avoid-code-duplication-in-functions";
6
6
  declare const mustAvoidCodeDuplicationInFunctions: ESLintUtils.RuleModule<"mustAvoidCodeDuplicationInFunctions", Options, unknown, ESLintUtils.RuleListener>;
7
7
  export default mustAvoidCodeDuplicationInFunctions;
@@ -1,8 +1,10 @@
1
1
  'use strict';
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
3
  import { nodeTypes, getLineRange } from '@flint/infra/analysis';
4
+ import { eslintSchemaBasicTypes, eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
4
5
  import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
6
+ import { firstOrUndefined, first } from '../../../fd-toolbox/server/collections/single-funcs.js';
5
7
 
6
- var __defProp=Object['defineProperty'],__name=(_0x4ccee4,_0x47eaf5)=>__defProp(_0x4ccee4,'name',{'value':_0x47eaf5,'configurable':!![]});const ruleName='must-avoid-code-duplication-in-functions';const defaultMinLines=0x1377+-0x47f*0x6+0x786,constants={'messageIds':{'mustAvoidCodeDuplicationInFunctions':'mustAvoidCodeDuplicationInFunctions'},'meta':{'type':ruleTypes['problem'],'docs':{'description':'Avoid\x20duplicate\x20code\x20blocks\x20in\x20different\x20functions.'},'messages':{'mustAvoidCodeDuplicationInFunctions':'must-avoid-code-duplication-in-functions\x0aThis\x20function\x20is\x20identical\x20to\x20the\x20function\x20on\x20line\x20{{line}}.\x0a\x0a###\x20**Must**\x20avoid\x20code\x20duplication\x20in\x20functions.\x0a\x0a####\x20Wrong\x0a\x0afunction\x20foo()\x20{\x0a\x20\x20\x20\x20const\x20baz\x20=\x201;\x0a\x20\x20\x20\x20const\x20qux\x20=\x202;\x0a\x20\x20\x20\x20return\x20baz\x20+\x20qux;\x0a}\x0a\x0afunction\x20bar()\x20{\x0a\x20\x20\x20\x20const\x20baz\x20=\x201;\x0a\x20\x20\x20\x20const\x20qux\x20=\x202;\x0a\x20\x20\x20\x20return\x20baz\x20+\x20qux;\x0a}\x0a\x0a####\x20Correct\x0a\x0afunction\x20sum()\x20{\x0a\x20\x20\x20\x20const\x20baz\x20=\x201;\x0a\x20\x20\x20\x20const\x20qux\x20=\x202;\x0a\x20\x20\x20\x20return\x20baz\x20+\x20qux;\x0a}\x0a\x0afunction\x20foo()\x20{\x0a\x20\x20\x20\x20return\x20sum();\x0a}\x0a\x0afunction\x20bar()\x20{\x0a\x20\x20\x20\x20return\x20sum();\x0a}\x0a\x0a####\x20Why\x0a\x0aEliminating\x20duplicate\x20code\x20improves\x20maintainability,\x20makes\x20refactoring\x20easier,\x20and\x20reduces\x20the\x20chances\x20of\x20introducing\x20errors.'},'schema':[{'type':'object','properties':{'minLines':{'type':'integer','minimum':0x1}},'additionalProperties':![]}]}},tokens={'functionToken':'function','arrowToken':'=>','openBrace':'{','closeBrace':'}'};function areEquivalent(_0x25eecc,_0x2fcdac,_0x410a66){if(Array['isArray'](_0x25eecc)&&Array['isArray'](_0x2fcdac))return _0x25eecc['length']===_0x2fcdac['length']&&_0x25eecc['every']((_0x345fb8,_0x1960fe)=>{const _0x225688=_0x2fcdac[_0x1960fe];if(!_0x225688)return ![];return areEquivalent(_0x345fb8,_0x225688,_0x410a66);});else {if(!Array['isArray'](_0x25eecc)&&!Array['isArray'](_0x2fcdac))return _0x25eecc['type']===_0x2fcdac['type']&&compareTokens(_0x410a66['getTokens'](_0x25eecc),_0x410a66['getTokens'](_0x2fcdac));}return ![];}__name(areEquivalent,'areEquivalent');function compareTokens(_0x6d7a4a,_0x4dd40c){return _0x6d7a4a['length']===_0x4dd40c['length']&&_0x6d7a4a['every']((_0x49de7d,_0x5c2da8)=>_0x49de7d['value']===_0x4dd40c[_0x5c2da8]?.['value']);}__name(compareTokens,'compareTokens');function getMainFunctionTokenLocation(_0x3a8c9b,_0x5e781f,_0x273778){let _0x5a440b;if(_0x5e781f['type']===nodeTypes['functionDeclaration']){if(_0x5e781f['id'])_0x5a440b=_0x5e781f['id']['loc'];else {const _0x42b856=getTokenByValue(_0x5e781f,tokens['functionToken'],_0x3a8c9b);_0x5a440b=_0x42b856?.['loc'];}}else {if(_0x5e781f['type']===nodeTypes['functionExpression']){if(_0x273778&&(_0x273778['type']===nodeTypes['methodDefinition']||_0x273778['type']===nodeTypes['property']))_0x5a440b=_0x273778['key']['loc'];else {const _0x2ff713=getTokenByValue(_0x5e781f,tokens['functionToken'],_0x3a8c9b);_0x5a440b=_0x2ff713?.['loc'];}}else {if(_0x5e781f['type']===nodeTypes['arrowFunctionExpression']){const _0x4f7da3=_0x3a8c9b['getTokensBefore'](_0x5e781f['body'])['reverse']()['find'](_0x539cf9=>_0x539cf9['value']===tokens['arrowToken']);_0x5a440b=_0x4f7da3?.['loc'];}}}return _0x5a440b;}__name(getMainFunctionTokenLocation,'getMainFunctionTokenLocation');function getTokenByValue(_0x91193a,_0xf81a62,_0x520771){return _0x520771['getTokens'](_0x91193a)['find'](_0x328fcd=>_0x328fcd['value']===_0xf81a62);}__name(getTokenByValue,'getTokenByValue');function reportDuplicatesInGroup(_0x495a5d,_0x455e86,_0xf479a6){for(let _0x27868d=0x1ee+0x2*-0xb6f+-0x3*-0x6fb;_0x27868d<_0x455e86['length'];_0x27868d++){const _0x3f56c7=_0x455e86[_0x27868d];if(_0x3f56c7&&areEquivalent(_0x3f56c7['function']['body'],_0xf479a6['function']['body'],_0x495a5d['sourceCode'])){const _0x1c1d26=getMainFunctionTokenLocation(_0x495a5d['sourceCode'],_0x3f56c7['function'],_0x3f56c7['parent']);_0x495a5d['report']({'messageId':constants['messageIds']['mustAvoidCodeDuplicationInFunctions'],'data':{'line':_0xf479a6['function']['loc']['start']['line']},'loc':_0x1c1d26??_0x3f56c7['function']['loc']});}}}__name(reportDuplicatesInGroup,'reportDuplicatesInGroup');function reportDuplicatesInGroups(_0x2468a4,_0x13c6fb){const _0x28f3fa=Array['from'](_0x13c6fb['values']());for(const _0x23edc7 of _0x28f3fa){if(_0x23edc7['length']>=0x5cc+-0x142+-0x488){_0x23edc7['sort']((_0x4ea05f,_0xaa1357)=>_0x4ea05f['line']-_0xaa1357['line']);const _0x2e7787=_0x23edc7[0xb*0x323+0x12d+-0x23ae];_0x2e7787?.['function']['loc']&&reportDuplicatesInGroup(_0x2468a4,_0x23edc7,_0x2e7787);}}}__name(reportDuplicatesInGroups,'reportDuplicatesInGroups');function groupFunctionsByTokens(_0x3b610f,_0x1124e1){const _0xa11429=new Map();for(const _0xeecb28 of _0x1124e1){if(_0xeecb28['function']['body']){const _0x339a35=_0x3b610f['getTokens'](_0xeecb28['function']['body']),_0x52bff2=_0x339a35['map'](_0x3bb741=>_0x3bb741['value'])['join'](''),_0x163db0={'function':_0xeecb28['function'],'parent':_0xeecb28['parent'],'line':_0xeecb28['function']['loc']?.['start']['line']??-0x31*-0x7b+0x20d2+-0x2f*0x133},_0x3a8a0e=_0xa11429['get'](_0x52bff2);_0x3a8a0e?_0x3a8a0e['push'](_0x163db0):_0xa11429['set'](_0x52bff2,[_0x163db0]);}}return _0xa11429;}__name(groupFunctionsByTokens,'groupFunctionsByTokens');function processFunctions(_0x43f7f3,_0x372127){const _0x491467=groupFunctionsByTokens(_0x43f7f3['sourceCode'],_0x372127);reportDuplicatesInGroups(_0x43f7f3,_0x491467);}__name(processFunctions,'processFunctions');function visitFunction(_0xd9a846,_0x3dd3ee,_0x4dddce,_0x14add9){let _0x5c14de=![];const _0x4c6374=_0xd9a846['getTokens'](_0x3dd3ee['body']);_0x4c6374['length']>-0x1*-0x1818+0x117*-0x15+-0x135&&_0x4c6374[-0x1c23+-0x4*0x60c+0x3453]?.['value']===tokens['openBrace']&&_0x4c6374['shift']();_0x4c6374['length']>-0x15b4+-0x1*0xd62+-0x2*-0x118b&&_0x4c6374[_0x4c6374['length']-(0x557+-0x4d3*0x3+-0x1*-0x923)]?.['value']===tokens['closeBrace']&&_0x4c6374['pop']();if(_0x4c6374['length']>0x177d+0x9a4*-0x2+-0x435){const _0x2b2c01=getLineRange(_0x4c6374[0x266*-0xf+0x1*-0x1cb5+0x40af])['start'],_0x3735dc=getLineRange(_0x4c6374[_0x4c6374['length']-(-0x5*0x28+-0xf27+0xff0)])['end'];_0x5c14de=_0x3735dc-_0x2b2c01+(-0x135f*-0x2+0x1d*-0x91+-0x1650)>=_0x14add9;}_0x5c14de&&_0x4dddce['push']({'function':_0x3dd3ee,'parent':_0x3dd3ee['parent']});}__name(visitFunction,'visitFunction');const createRule=ESLintUtils['RuleCreator'](_0x384b15=>''+url+_0x384b15),mustAvoidCodeDuplicationInFunctions=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[{'minLines':defaultMinLines}],'create'(_0x5eb8e0){const _0x2658a4=[],_0x4be1fc=_0x5eb8e0['options'][0x4*-0x67+0x2*0xb65+-0x152e]?.['minLines']??defaultMinLines;return {'FunctionDeclaration'(_0xb7afc2){visitFunction(_0x5eb8e0['sourceCode'],_0xb7afc2,_0x2658a4,_0x4be1fc);},'VariableDeclarator\x20>\x20FunctionExpression,\x20MethodDefinition\x20>\x20FunctionExpression':__name(_0x1ed25c=>{visitFunction(_0x5eb8e0['sourceCode'],_0x1ed25c,_0x2658a4,_0x4be1fc);},'VariableDeclarator\x20>\x20FunctionExpression,\x20MethodDefinition\x20>\x20FunctionExpression'),'VariableDeclarator\x20>\x20ArrowFunctionExpression,\x20MethodDefinition\x20>\x20ArrowFunctionExpression':__name(_0x3b9dc0=>{visitFunction(_0x5eb8e0['sourceCode'],_0x3b9dc0,_0x2658a4,_0x4be1fc);},'VariableDeclarator\x20>\x20ArrowFunctionExpression,\x20MethodDefinition\x20>\x20ArrowFunctionExpression'),'Property\x20>\x20FunctionExpression,\x20Property\x20>\x20ArrowFunctionExpression':__name(_0x4e92dd=>{visitFunction(_0x5eb8e0['sourceCode'],_0x4e92dd,_0x2658a4,_0x4be1fc);},'Property\x20>\x20FunctionExpression,\x20Property\x20>\x20ArrowFunctionExpression'),'Program:exit'(){processFunctions(_0x5eb8e0,_0x2658a4);}};}});
8
+ var __defProp=Object['defineProperty'],__name=(_0x1c5c37,_0x2f2e37)=>__defProp(_0x1c5c37,'name',{'value':_0x2f2e37,'configurable':!![]});const ruleName='must-avoid-code-duplication-in-functions';const defaultMinLines=-0xe7b+0x263f+-0x17c1,constants={'messageIds':{'mustAvoidCodeDuplicationInFunctions':'mustAvoidCodeDuplicationInFunctions'},'meta':{'type':ruleTypes['problem'],'docs':{'description':'Avoid\x20duplicate\x20code\x20blocks\x20in\x20different\x20functions.'},'messages':{'mustAvoidCodeDuplicationInFunctions':'must-avoid-code-duplication-in-functions\x0aThis\x20function\x20is\x20identical\x20to\x20the\x20function\x20on\x20line\x20{{line}}.\x0a\x0a###\x20**Must**\x20avoid\x20code\x20duplication\x20in\x20functions.\x0a\x0a####\x20Wrong\x0a\x0afunction\x20foo()\x20{\x0a\x20\x20\x20\x20const\x20baz\x20=\x201;\x0a\x20\x20\x20\x20const\x20qux\x20=\x202;\x0a\x20\x20\x20\x20return\x20baz\x20+\x20qux;\x0a}\x0a\x0afunction\x20bar()\x20{\x0a\x20\x20\x20\x20const\x20baz\x20=\x201;\x0a\x20\x20\x20\x20const\x20qux\x20=\x202;\x0a\x20\x20\x20\x20return\x20baz\x20+\x20qux;\x0a}\x0a\x0a####\x20Correct\x0a\x0afunction\x20sum()\x20{\x0a\x20\x20\x20\x20const\x20baz\x20=\x201;\x0a\x20\x20\x20\x20const\x20qux\x20=\x202;\x0a\x20\x20\x20\x20return\x20baz\x20+\x20qux;\x0a}\x0a\x0afunction\x20foo()\x20{\x0a\x20\x20\x20\x20return\x20sum();\x0a}\x0a\x0afunction\x20bar()\x20{\x0a\x20\x20\x20\x20return\x20sum();\x0a}\x0a\x0a####\x20Why\x0a\x0aEliminating\x20duplicate\x20code\x20improves\x20maintainability,\x20makes\x20refactoring\x20easier,\x20and\x20reduces\x20the\x20chances\x20of\x20introducing\x20errors.'},'schema':[{'type':'object','properties':{'minLines':{'type':eslintSchemaBasicTypes['integer'],'minimum':0x1}},'additionalProperties':![]}]}},tokens={'functionToken':'function'},createRule=ESLintUtils['RuleCreator'](_0x43f620=>''+url+_0x43f620),mustAvoidCodeDuplicationInFunctions=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[{'minLines':defaultMinLines}],'create'(_0x2a6a73){const _0x2633bb=[],_0x5b54fa=firstOrUndefined(_0x2a6a73['options'])?.['minLines']??defaultMinLines;return {'FunctionDeclaration'(_0x5b795f){visitFunction(_0x2a6a73['sourceCode'],_0x5b795f,_0x2633bb,_0x5b54fa);},'VariableDeclarator\x20>\x20FunctionExpression,\x20MethodDefinition\x20>\x20FunctionExpression':__name(_0x41fb05=>{visitFunction(_0x2a6a73['sourceCode'],_0x41fb05,_0x2633bb,_0x5b54fa);},'VariableDeclarator\x20>\x20FunctionExpression,\x20MethodDefinition\x20>\x20FunctionExpression'),'VariableDeclarator\x20>\x20ArrowFunctionExpression,\x20MethodDefinition\x20>\x20ArrowFunctionExpression':__name(_0x192ef8=>{visitFunction(_0x2a6a73['sourceCode'],_0x192ef8,_0x2633bb,_0x5b54fa);},'VariableDeclarator\x20>\x20ArrowFunctionExpression,\x20MethodDefinition\x20>\x20ArrowFunctionExpression'),'Property\x20>\x20FunctionExpression,\x20Property\x20>\x20ArrowFunctionExpression':__name(_0x5809bd=>{visitFunction(_0x2a6a73['sourceCode'],_0x5809bd,_0x2633bb,_0x5b54fa);},'Property\x20>\x20FunctionExpression,\x20Property\x20>\x20ArrowFunctionExpression'),[eslintRuleSyntax['programExitSelector']](){processFunctions(_0x2a6a73,_0x2633bb);}};}});function areEquivalent(_0x1cd8b2,_0x3d3401,_0x55515d){if(Array['isArray'](_0x1cd8b2)&&Array['isArray'](_0x3d3401))return _0x1cd8b2['length']===_0x3d3401['length']&&_0x1cd8b2['every']((_0x5bf4c5,_0x262f9c)=>{const _0x254621=_0x3d3401[_0x262f9c];if(!_0x254621)return ![];return areEquivalent(_0x5bf4c5,_0x254621,_0x55515d);});else {if(!Array['isArray'](_0x1cd8b2)&&!Array['isArray'](_0x3d3401))return _0x1cd8b2['type']===_0x3d3401['type']&&compareTokens(_0x55515d['getTokens'](_0x1cd8b2),_0x55515d['getTokens'](_0x3d3401));}return ![];}__name(areEquivalent,'areEquivalent');function compareTokens(_0x28e5a6,_0x3eb21d){return _0x28e5a6['length']===_0x3eb21d['length']&&_0x28e5a6['every']((_0x26efec,_0x5da0d4)=>_0x26efec['value']===_0x3eb21d[_0x5da0d4]?.['value']);}__name(compareTokens,'compareTokens');function getMainFunctionTokenLocation(_0x20f13b,_0x16cf83,_0x13e36e){let _0x16192b;if(_0x16cf83['type']===nodeTypes['functionDeclaration']){if(_0x16cf83['id'])_0x16192b=_0x16cf83['id']['loc'];else {const _0x5d56f6=getTokenByValue(_0x16cf83,tokens['functionToken'],_0x20f13b);_0x16192b=_0x5d56f6?.['loc'];}}else {if(_0x16cf83['type']===nodeTypes['functionExpression']){if(_0x13e36e&&(_0x13e36e['type']===nodeTypes['methodDefinition']||_0x13e36e['type']===nodeTypes['property']))_0x16192b=_0x13e36e['key']['loc'];else {const _0x3209ea=getTokenByValue(_0x16cf83,tokens['functionToken'],_0x20f13b);_0x16192b=_0x3209ea?.['loc'];}}else {if(_0x16cf83['type']===nodeTypes['arrowFunctionExpression']){const _0xe6808a=_0x20f13b['getTokensBefore'](_0x16cf83['body'])['reverse']()['find'](_0x41de4f=>_0x41de4f['value']==='=>');_0x16192b=_0xe6808a?.['loc'];}}}return _0x16192b;}__name(getMainFunctionTokenLocation,'getMainFunctionTokenLocation');function getTokenByValue(_0x598c23,_0x3989c1,_0x149734){return _0x149734['getTokens'](_0x598c23)['find'](_0x528739=>_0x528739['value']===_0x3989c1);}__name(getTokenByValue,'getTokenByValue');function reportDuplicatesInGroup(_0x550ead,_0x2aaa46,_0x1dd0c3){for(let _0x2b5f05=0x16b0+0x1f93+-0x3642;_0x2b5f05<_0x2aaa46['length'];_0x2b5f05++){const _0x530433=_0x2aaa46[_0x2b5f05];if(_0x530433&&areEquivalent(_0x530433['function']['body'],_0x1dd0c3['function']['body'],_0x550ead['sourceCode'])){const _0x4a571d=getMainFunctionTokenLocation(_0x550ead['sourceCode'],_0x530433['function'],_0x530433['parent']);_0x550ead['report']({'messageId':constants['messageIds']['mustAvoidCodeDuplicationInFunctions'],'data':{'line':_0x1dd0c3['function']['loc']['start']['line']},'loc':_0x4a571d??_0x530433['function']['loc']});}}}__name(reportDuplicatesInGroup,'reportDuplicatesInGroup');function reportDuplicatesInGroups(_0x41e5b7,_0x58efea){const _0x46f362=Array['from'](_0x58efea['values']());for(const _0x3f1ada of _0x46f362){if(_0x3f1ada['length']>=-0x322*0x6+-0x20d9+-0x33a7*-0x1){_0x3f1ada['sort']((_0x3a933d,_0x5014e0)=>_0x3a933d['line']-_0x5014e0['line']);const _0x3bdfbd=first(_0x3f1ada);_0x3bdfbd?.['function']['loc']&&reportDuplicatesInGroup(_0x41e5b7,_0x3f1ada,_0x3bdfbd);}}}__name(reportDuplicatesInGroups,'reportDuplicatesInGroups');function groupFunctionsByTokens(_0x4893d0,_0x4c4adf){const _0x174e1b=new Map();for(const _0x3c254c of _0x4c4adf){if(_0x3c254c['function']['body']){const _0x5eaea7=_0x4893d0['getTokens'](_0x3c254c['function']['body']),_0x1f6c9c=_0x5eaea7['map'](_0x4c8422=>_0x4c8422['value'])['join'](''),_0x24a496={'function':_0x3c254c['function'],'parent':_0x3c254c['parent'],'line':_0x3c254c['function']['loc']?.['start']['line']??0xad*0x7+-0x1201*0x1+-0xd46*-0x1},_0x316c4a=_0x174e1b['get'](_0x1f6c9c);_0x316c4a?_0x316c4a['push'](_0x24a496):_0x174e1b['set'](_0x1f6c9c,[_0x24a496]);}}return _0x174e1b;}__name(groupFunctionsByTokens,'groupFunctionsByTokens');function processFunctions(_0x7f96db,_0x427254){const _0x58d27b=groupFunctionsByTokens(_0x7f96db['sourceCode'],_0x427254);reportDuplicatesInGroups(_0x7f96db,_0x58d27b);}__name(processFunctions,'processFunctions');function visitFunction(_0x32d43c,_0x22d85d,_0x781523,_0x56d91f){let _0x7b0ad5=![];const _0x4110dd=_0x32d43c['getTokens'](_0x22d85d['body']);_0x4110dd['length']>0x6ca*0x4+0x183*0xc+-0x2d4c&&first(_0x4110dd)?.['value']==='{'&&_0x4110dd['shift']();_0x4110dd['length']>0xc29+0x1*-0x2432+0x125*0x15&&_0x4110dd[_0x4110dd['length']-(-0x11*-0xc9+0xabd+-0x1815)]?.['value']==='}'&&_0x4110dd['pop']();if(_0x4110dd['length']>0x2453+-0x93+-0x23c0){const _0x1ed28e=getLineRange(first(_0x4110dd))['start'],_0x8faa72=getLineRange(_0x4110dd[_0x4110dd['length']-(0x46*-0x10+-0x24*-0xbb+-0x15eb)])['end'];_0x7b0ad5=_0x8faa72-_0x1ed28e+(-0x1*0x581+-0x209+0x78b)>=_0x56d91f;}_0x7b0ad5&&_0x781523['push']({'function':_0x22d85d,'parent':_0x22d85d['parent']});}__name(visitFunction,'visitFunction');
7
9
 
8
10
  export { mustAvoidCodeDuplicationInFunctions as default, ruleName };
@@ -0,0 +1,3 @@
1
+ export declare const ruleName = "must-not-use-constants-for-single-usage";
2
+ declare const _default: any;
3
+ export default _default;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+ import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
+ import { isExportDeclaration, variableDeclarationKinds, isIdentifier, isTopLevelVariable, isAsConstVariable, nodeTypes, isTemplateLiteral, getObjectPropsUsagesCount, getPropertyName, isCommonNamedIdentifier } from '@flint/infra/analysis';
4
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
5
+ import { flintRuleIdentifiers } from '@flint/infra/constants/shared-string-identifiers';
6
+ import { eslintProperties } from '@flint/infra/constants/rules-meta';
7
+ import { firstOrUndefined } from '../../../fd-toolbox/server/collections/single-funcs.js';
8
+ import { folders } from '../../../base-repo/app-constants/project-paths.js';
9
+
10
+ var __defProp=Object['defineProperty'],__name=(_0x228301,_0xfe8147)=>__defProp(_0x228301,'name',{'value':_0xfe8147,'configurable':!![]});const ruleName='must-not-use-constants-for-single-usage';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20constants\x20for\x20single\x20usage.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20\x22bar\x22;\x0a\x0afunction\x20fooFunc()\x20{\x0a\x20\x20\x20\x20return\x20foo;\x0a}\x0a\x0a####\x20Correct\x0a\x0afunction\x20fooFunc()\x20{\x0a\x20\x20\x20\x20return\x20\x22bar\x22;\x0a}\x0a\x0a####\x20Why\x0a\x0aSingle-use\x20constants\x20add\x20indirection\x20without\x20improving\x20reuse,\x20making\x20code\x20harder\x20to\x20read.',excludedVariableNames=new Set([eslintRuleSyntax['ruleContent'],eslintRuleSyntax['ruleName']]);var mustNotUseConstantsForSingleUsage = createEslintRule(ruleName,ruleContent,_0x10eba1=>{return {'VariableDeclaration'(_0x5d1c7f){if(isExportDeclaration(_0x5d1c7f['parent'])||_0x5d1c7f['kind']!==variableDeclarationKinds['const'])return;const _0x1650c1=_0x10eba1['sourceCode']['getScope'](_0x5d1c7f);for(const _0x3b5822 of _0x5d1c7f['declarations']){if(isIdentifier(_0x3b5822['id'])&&!excludedVariableNames['has'](_0x3b5822['id']['name'])){const _0x5d3118=_0x1650c1['set']['get'](_0x3b5822['id']['name']);_0x5d3118&&isTopLevelVariable(_0x5d3118)&&handleDeclaration(_0x3b5822,_0x5d3118,_0x10eba1);}}}};},{'dynamicMessage':'\x27{{name}}\x27\x20is\x20only\x20used\x20once.\x20Inline\x20it\x20instead.'});function handleDeclaration(_0x2e8df0,_0x339060,_0x3e9abd){if(!_0x2e8df0['init'])return;if(isAsConstVariable(_0x2e8df0)&&_0x2e8df0['init']['type']===nodeTypes['TSAsExpression']&&_0x2e8df0['init']['expression']['type']===nodeTypes['objectExpression']){handleAsConstObjectVariable(_0x2e8df0['init']['expression']['properties'],_0x339060,_0x3e9abd);return;}(_0x2e8df0['init']['type']===nodeTypes['literal']||isTemplateLiteral(_0x2e8df0['init']))&&handleLiteralVariable(_0x2e8df0,_0x339060,_0x3e9abd);}__name(handleDeclaration,'handleDeclaration');function handleAsConstObjectVariable(_0x27ba94,_0x802058,_0x524928){const _0xf5ff53=mergePropertyUsageCounts(getObjectPropsUsagesCount(_0x802058,_0x27ba94),getTypeQueryObjectPropsUsagesCount(_0x802058,_0x27ba94,_0x524928['sourceCode']['ast']));for(const [_0x57d2c7,_0x2f7eda]of _0xf5ff53){const _0x33ef16=getPropertyName(_0x57d2c7);_0x33ef16&&(_0x57d2c7['value']['type']===nodeTypes['literal']||isTemplateLiteral(_0x57d2c7['value']))&&_0x2f7eda===-0x1967+0x5df*0x1+0x683*0x3&&!containsCommonConstMemberExpression(_0x57d2c7['value'])&&reportSingleUsageConst(_0x57d2c7,_0x33ef16,_0x524928);}}__name(handleAsConstObjectVariable,'handleAsConstObjectVariable');function handleLiteralVariable(_0x27ecf1,_0x34aa2e,_0xdaffd){const _0x425da5=_0x34aa2e['references']['filter'](_0x533c16=>!_0x533c16['init']);if(_0x425da5['length']!==0x25a7+0x2099+-0x463f)return;const [_0x1c4ed8]=_0x425da5;_0x1c4ed8&&_0x1c4ed8['identifier']['parent']['type']!==nodeTypes['exportDefaultDeclaration']&&reportSingleUsageConst(_0x27ecf1,_0x34aa2e['name'],_0xdaffd);}__name(handleLiteralVariable,'handleLiteralVariable');function reportSingleUsageConst(_0x146c33,_0x19c3b1,_0x5b861a){_0x5b861a['report']({'node':_0x146c33,'messageId':ruleName,'data':{'name':_0x19c3b1}});}__name(reportSingleUsageConst,'reportSingleUsageConst');function getTypeQueryObjectPropsUsagesCount(_0x5d822a,_0x12d4a3,_0x3c6a66){const _0x1b6ad4=new Map();return traverseNodes(_0x3c6a66,_0x2fd9ed=>{if(_0x2fd9ed['type']!==nodeTypes['TSTypeQuery'])return;const _0x159008=getTypeQueryPropertyPaths(_0x2fd9ed['exprName'],_0x5d822a['name']);if(_0x159008['length']===-0x153f+-0xb9c+-0x287*-0xd)return;const _0x26b49b=getObjectPropertyByPath(_0x12d4a3,_0x159008);_0x26b49b&&_0x1b6ad4['set'](_0x26b49b,(_0x1b6ad4['get'](_0x26b49b)??-0xf9*-0x15+-0x20ed*0x1+0x640*0x2)+(0x1e9a+0x1677+-0x3510));}),_0x1b6ad4;}__name(getTypeQueryObjectPropsUsagesCount,'getTypeQueryObjectPropsUsagesCount');function traverseNodes(_0x52eb46,_0x5d92bb){_0x5d92bb(_0x52eb46);for(const [_0x109100,_0x2d7c09]of Object['entries'](_0x52eb46)){_0x109100!==flintRuleIdentifiers['parent']&&traverseNodeValue(_0x2d7c09,_0x5d92bb);}}__name(traverseNodes,'traverseNodes');function traverseNodeValue(_0xad130c,_0x482608){if(Array['isArray'](_0xad130c)){for(const _0x1bdac8 of _0xad130c){isAstNode(_0x1bdac8)&&traverseNodes(_0x1bdac8,_0x482608);}return;}isAstNode(_0xad130c)&&traverseNodes(_0xad130c,_0x482608);}__name(traverseNodeValue,'traverseNodeValue');function isAstNode(_0x319b86){return !!_0x319b86&&typeof _0x319b86==='object'&&eslintProperties['type']in _0x319b86&&typeof _0x319b86['type']==='string';}__name(isAstNode,'isAstNode');function getTypeQueryPropertyPaths(_0xf97137,_0x3c22e9){const _0x4a4226=getQualifiedNameParts(_0xf97137);if(!_0x4a4226||firstOrUndefined(_0x4a4226)!==_0x3c22e9)return [];return _0x4a4226['slice'](0x19d8+-0xfa8+0x21*-0x4f);}__name(getTypeQueryPropertyPaths,'getTypeQueryPropertyPaths');function getQualifiedNameParts(_0x3ab4a1){let _0x47d736;_0x3ab4a1['type']===nodeTypes['identifier']&&(_0x47d736=[_0x3ab4a1['name']]);if(_0x3ab4a1['type']===nodeTypes['TSQualifiedName']){const _0x40e67d=getQualifiedNameParts(_0x3ab4a1['left']);if(!_0x40e67d)return void(0x1bf8+-0xa63+-0x7*0x283);_0x47d736=[..._0x40e67d,_0x3ab4a1['right']['name']];}return _0x47d736;}__name(getQualifiedNameParts,'getQualifiedNameParts');function getObjectPropertyByPath(_0x5169df,_0x4c1ee3){let _0x47d118,_0x27a94c=_0x5169df;for(const _0x52143a of _0x4c1ee3){const _0x229eb6=_0x27a94c['find'](_0x52007e=>_0x52007e['type']===nodeTypes['property']&&getPropertyName(_0x52007e)===_0x52143a);if(!_0x229eb6||_0x229eb6['type']!==nodeTypes['property'])break;_0x47d118=_0x229eb6;if(_0x229eb6['value']['type']===nodeTypes['objectExpression'])_0x27a94c=_0x229eb6['value']['properties'];else return _0x229eb6;}return _0x47d118;}__name(getObjectPropertyByPath,'getObjectPropertyByPath');function mergePropertyUsageCounts(..._0x86e253){const _0x32e28d=new Map();for(const _0xfd6f8a of _0x86e253){for(const [_0x5393f4,_0x1c4004]of _0xfd6f8a){_0x32e28d['set'](_0x5393f4,(_0x32e28d['get'](_0x5393f4)??-0xd67+0x31d+-0x3*-0x36e)+_0x1c4004);}}return _0x32e28d;}__name(mergePropertyUsageCounts,'mergePropertyUsageCounts');function containsCommonConstMemberExpression(_0x350fc3){let _0x5ce110=![];return traverseNodes(_0x350fc3,_0x45d356=>{_0x45d356['type']===nodeTypes['memberExpression']&&isIdentifier(_0x45d356['object'])&&isCommonNamedIdentifier(_0x45d356['object']['name'],[folders['common']])&&(_0x5ce110=!![]);}),_0x5ce110;}__name(containsCommonConstMemberExpression,'containsCommonConstMemberExpression');
11
+
12
+ export { mustNotUseConstantsForSingleUsage as default, ruleName };
@@ -3,6 +3,6 @@ import { ESLintUtils } from '@typescript-eslint/utils';
3
3
  import { nodeTypes, isStringLiteral } from '@flint/infra/analysis';
4
4
  import { url, ruleTypes } from '@flint/infra/constants/rules-meta';
5
5
 
6
- var __defProp=Object['defineProperty'],__name=(_0x2b9eab,_0x4094b9)=>__defProp(_0x2b9eab,'name',{'value':_0x4094b9,'configurable':!![]});const ruleName='no-duplicate-imports';const createRule=ESLintUtils['RuleCreator'](_0x2b4215=>''+url+_0x2b4215);function checkSource(_0xd13dad,_0x44ddc4,_0x2ba871,_0x479115){_0x2ba871['has'](_0xd13dad)?_0x479115['report']({'node':_0x44ddc4,'messageId':'noDuplicateImports','data':{'source':_0xd13dad}}):_0x2ba871['set'](_0xd13dad,_0x44ddc4);}__name(checkSource,'checkSource');function checkExportAllSource(_0x2a15ef,_0x1dd291,_0x2cbc7b){if(!_0x2a15ef['source']||_0x2a15ef['source']['type']!==nodeTypes['literal']||typeof _0x2a15ef['source']['value']!=='string')return;const _0x2d63cc=_0x2a15ef['source']['value'];checkSource(_0x2d63cc,_0x2a15ef,_0x1dd291,_0x2cbc7b);}__name(checkExportAllSource,'checkExportAllSource');const noDuplicateImports=createRule({'name':ruleName,'meta':{'type':ruleTypes['problem'],'docs':{'description':'Disallow\x20duplicate\x20imports\x20from\x20the\x20same\x20module'},'messages':{'noDuplicateImports':'no-duplicate-imports\x0aDuplicate\x20import\x20from\x20\x27{{source}}\x27\x0a\x0a###\x20**Must**\x20Don\x27t\x20duplicate\x20imports\x20from\x20the\x20same\x20module.\x0a\x0a####\x20Wrong\x0a\x0aimport\x20{\x20foo\x20}\x20from\x20\x27module-a\x27;\x0aimport\x20{\x20bar\x20}\x20from\x20\x27module-a\x27;\x0a\x0a####\x20Correct\x0a\x0aimport\x20{\x20foo,\x20bar\x20}\x20from\x20\x27module-a\x27;\x0a\x0a####\x20Why\x0a\x0aDuplicate\x20imports\x20clutter\x20code\x20and\x20reduce\x20readability.'},'schema':[]},'defaultOptions':[],'create'(_0x618b18){const _0x2f90f2=new Map();return {[nodeTypes['importDeclaration']](_0x45e6c3){if(!isStringLiteral(_0x45e6c3['source']))return;const _0x5b6018=_0x45e6c3['source']['value'];checkSource(_0x5b6018,_0x45e6c3,_0x2f90f2,_0x618b18);},[nodeTypes['exportNamedDeclaration']](_0x2c125d){checkExportAllSource(_0x2c125d,_0x2f90f2,_0x618b18);},[nodeTypes['exportAllDeclaration']](_0x918d34){checkExportAllSource(_0x918d34,_0x2f90f2,_0x618b18);}};}});
6
+ var __defProp=Object['defineProperty'],__name=(_0x11592a,_0x348d7b)=>__defProp(_0x11592a,'name',{'value':_0x348d7b,'configurable':!![]});const ruleName='no-duplicate-imports';const duplicateImportsMessageId='noDuplicateImports',createRule=ESLintUtils['RuleCreator'](_0x443bd5=>''+url+_0x443bd5),noDuplicateImports=createRule({'name':ruleName,'meta':{'type':ruleTypes['problem'],'docs':{'description':'Disallow\x20duplicate\x20imports\x20from\x20the\x20same\x20module'},'messages':{[duplicateImportsMessageId]:'no-duplicate-imports\x0aDuplicate\x20import\x20from\x20\x27{{source}}\x27\x0a\x0a###\x20**Must**\x20Don\x27t\x20duplicate\x20imports\x20from\x20the\x20same\x20module.\x0a\x0a####\x20Wrong\x0a\x0aimport\x20{\x20foo\x20}\x20from\x20\x27module-a\x27;\x0aimport\x20{\x20bar\x20}\x20from\x20\x27module-a\x27;\x0a\x0a####\x20Correct\x0a\x0aimport\x20{\x20foo,\x20bar\x20}\x20from\x20\x27module-a\x27;\x0a\x0a####\x20Why\x0a\x0aDuplicate\x20imports\x20clutter\x20code\x20and\x20reduce\x20readability.'},'schema':[]},'defaultOptions':[],'create'(_0x1e3722){const _0x2c6929=new Map();return {[nodeTypes['importDeclaration']](_0x156386){if(!isStringLiteral(_0x156386['source']))return;const _0x15e1aa=_0x156386['source']['value'];checkSource(_0x15e1aa,_0x156386,_0x2c6929,_0x1e3722);},[nodeTypes['exportNamedDeclaration']](_0x1cc350){checkExportAllSource(_0x1cc350,_0x2c6929,_0x1e3722);},[nodeTypes['exportAllDeclaration']](_0x6c4be9){checkExportAllSource(_0x6c4be9,_0x2c6929,_0x1e3722);}};}});function checkSource(_0x273825,_0x3a492e,_0x1c8805,_0x2f2cf6){_0x1c8805['has'](_0x273825)?_0x2f2cf6['report']({'node':_0x3a492e,'messageId':duplicateImportsMessageId,'data':{'source':_0x273825}}):_0x1c8805['set'](_0x273825,_0x3a492e);}__name(checkSource,'checkSource');function checkExportAllSource(_0x3bcdab,_0x2a4ce5,_0x503be2){if(!_0x3bcdab['source']||_0x3bcdab['source']['type']!==nodeTypes['literal']||typeof _0x3bcdab['source']['value']!=='string')return;const _0x5b8be9=_0x3bcdab['source']['value'];checkSource(_0x5b8be9,_0x3bcdab,_0x2a4ce5,_0x503be2);}__name(checkExportAllSource,'checkExportAllSource');
7
7
 
8
8
  export { noDuplicateImports as default, ruleName };
@@ -1,8 +1,16 @@
1
1
  'use strict';
2
+ import _0x1a4b39__default from 'path';
3
+ import { fileURLToPath } from 'url';
2
4
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
- import { nodeTypes, isStringType, isExportDeclaration, variableDeclarationKinds, isIdentifier, isTopLevelVariable, isAsConstVariable, isTemplateLiteral, getObjectPropsUsagesCount, getPropertyName } from '@flint/infra/analysis';
5
+ import { jsBasicTypes } from '../../../base-repo/constants/basic-types.js';
4
6
  import { stringDuplicationConstants } from '../../../base-repo/constants/string-duplication-constants.js';
7
+ import { extractStringsFromSource } from '@tools/string-duplication/string-extractor';
8
+ import { buildDuplicatesMap } from '@tools/string-duplication/analyze-code-base';
9
+ import { normalizeString } from '@tools/string-duplication/normalizer';
10
+ import { sourceDir } from '../../../base-repo/app-constants/internal-system-constants.js';
11
+ import { eslintRuleSyntax } from '@flint/infra/constants/eslint-rule-syntax';
12
+ import { firstOrUndefined } from '../../../fd-toolbox/server/collections/single-funcs.js';
5
13
 
6
- var __defProp=Object['defineProperty'],__name=(_0x583fda,_0x24349b)=>__defProp(_0x583fda,'name',{'value':_0x24349b,'configurable':!![]});const ruleName='no-literal-duplication';const ruleContent='\x0a{{message}}\x0a\x0a###\x20**Must\x20not**\x20duplicate\x20strings\x20in\x20a\x20file.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20\x22bar/baz/qux\x22;\x0aconst\x20bar\x20=\x20\x22bar/baz/qux\x22;\x0aconst\x20baz\x20=\x20\x22quux\x22;\x0a\x0afunction\x20fooFunc()\x20{\x0a\x20\x20\x20\x20return\x20baz;\x0a}\x0a\x0a####\x20Correct\x0a\x0aconst\x20qux\x20=\x20\x22bar/baz\x22;\x0aconst\x20bar\x20=\x20{qux}/foo;\x0aconst\x20baz\x20=\x20{qux}/quux;\x0a\x0afunction\x20fooFunc()\x20{\x0a\x20\x20\x20\x20return\x20\x22quux\x22;\x0a}\x0a\x0a####\x20Why\x0a\x0aDuplicated\x20literals\x20are\x20fragile.\x20Extract\x20shared\x20strings\x20into\x20constants\x20to\x20ensure\x20a\x20single\x20source\x20of\x20truth.',excludedVariableNames=new Set(['ruleContent','ruleName']);var noLiteralDuplication = createEslintRule(ruleName,ruleContent,__name(function create(_0x44c4e4){const _0x25d484=_0x44c4e4['options'][0x1489+0x1782+-0x2c0b]??{},_0x4cd673=new Set(_0x25d484['excludedStrings']??[]),_0x1e281c=new Map();return {'VariableDeclaration'(_0x3f0b67){if(isExportDeclaration(_0x3f0b67['parent'])||_0x3f0b67['kind']!==variableDeclarationKinds['const'])return;for(const _0x10c4e2 of _0x3f0b67['declarations']){if(isIdentifier(_0x10c4e2['id'])&&!excludedVariableNames['has'](_0x10c4e2['id']['name'])){const _0x1efbba=_0x44c4e4['sourceCode']['getScope'](_0x3f0b67),_0x1c1e4e=_0x1efbba['set']['get'](_0x10c4e2['id']['name']);_0x1c1e4e&&isTopLevelVariable(_0x1c1e4e)&&handleDeclaration(_0x10c4e2,_0x1c1e4e,_0x44c4e4);}}},'Literal'(_0x410e12){const _0x586e05=_0x410e12['parent']?.['type']===nodeTypes['property']&&_0x410e12['parent']['key']===_0x410e12&&!_0x410e12['parent']['computed'],_0x3ec096=_0x410e12['parent']?.['type']===nodeTypes['importDeclaration']&&_0x410e12['parent']['source']===_0x410e12;if(!_0x3ec096&&!_0x586e05&&isStringType(_0x410e12['value'])&&!_0x4cd673['has'](_0x410e12['value'])&&_0x410e12['value']['length']>=-0x1fc5*0x1+0x2*0x9b+0x45e*0x7){const _0x2bfba6=_0x1e281c['get'](_0x410e12['value'])??new Set();_0x2bfba6['add'](_0x410e12),_0x1e281c['set'](_0x410e12['value'],_0x2bfba6);}},'Program:exit'(){_0x1e281c['forEach']((_0x48f368,_0x11a63d)=>{_0x48f368['size']>-0x49b+-0xa16*-0x3+-0x19a6&&_0x48f368['forEach'](_0x1db87e=>{_0x44c4e4['report']({'node':_0x1db87e,'messageId':ruleName,'data':{'message':'Literal:\x20\x27'+_0x11a63d+'\x27\x20is\x20duplicated.\x20Extract\x20it\x20into\x20a\x20constant.'}});});});}};},'create'),{'schema':[{'type':'object','properties':{'excludedStrings':{'type':'array','items':{'type':'string'},'uniqueItems':!![]}},'additionalProperties':![]}],'defaultOptions':[{'excludedStrings':[...stringDuplicationConstants['excludedStrings']]}]});function handleDeclaration(_0x42ee0f,_0x4af671,_0x2d2dec){if(_0x42ee0f['init']){if(isAsConstVariable(_0x42ee0f)&&_0x42ee0f['init']['type']===nodeTypes['TSAsExpression']&&_0x42ee0f['init']['expression']['type']===nodeTypes['objectExpression'])handleAsConstObjectVariable(_0x42ee0f['init']['expression']['properties'],_0x4af671,_0x2d2dec);else (_0x42ee0f['init']['type']===nodeTypes['literal']||isTemplateLiteral(_0x42ee0f['init']))&&handleLiteralVariable(_0x42ee0f,_0x4af671,_0x2d2dec);}}__name(handleDeclaration,'handleDeclaration');function handleAsConstObjectVariable(_0xa5da13,_0x2ec18c,_0x28c643){const _0x4e3d4a=getObjectPropsUsagesCount(_0x2ec18c,_0xa5da13);for(const _0x110d40 of _0x4e3d4a){const _0x37de16=getPropertyName(_0x110d40[-0x2593+0x1f97+0x5fc*0x1]);_0x37de16&&(_0x110d40[0xe9b+-0x382*0x2+-0x797]['value']['type']===nodeTypes['literal']||isTemplateLiteral(_0x110d40[0xf87+0x2f5*-0x3+-0x6a8]['value']))&&_0x110d40[-0x3a*-0x2b+0xd52+-0x170f]===0x1*-0x2010+-0x1*0x1589+0x359a&&reportRedundantConst(_0x110d40[0x1*0x7a2+0x23e2+-0x2b84],_0x37de16,_0x28c643);}}__name(handleAsConstObjectVariable,'handleAsConstObjectVariable');function handleLiteralVariable(_0x8317be,_0x327b32,_0x16903c){const _0x48e228=_0x327b32['references']['filter'](_0x1b1344=>!_0x1b1344['init'])['length'];if(_0x48e228===-0x21c9*0x1+-0xbde+-0x3ce*-0xc){const _0x5276e3=_0x327b32['references'][0x183b+-0x4*-0x6c5+-0x334f],_0x2629cb=_0x5276e3['identifier'];_0x2629cb['parent']['type']!==nodeTypes['exportDefaultDeclaration']&&reportRedundantConst(_0x8317be,_0x327b32['name'],_0x16903c);}}__name(handleLiteralVariable,'handleLiteralVariable');function reportRedundantConst(_0x58378b,_0x4a8c07,_0x52234e){_0x52234e['report']({'node':_0x58378b,'messageId':ruleName,'data':{'message':'\x27'+_0x4a8c07+'\x27\x20is\x20only\x20used\x20once.\x20Inline\x20it\x20instead.'}});}__name(reportRedundantConst,'reportRedundantConst');
14
+ var __defProp=Object['defineProperty'],__name=(_0x23291f,_0x2f569c)=>__defProp(_0x23291f,'name',{'value':_0x2f569c,'configurable':!![]});const ruleName='no-literal-duplication';const ruleContent='\x0a###\x20**Must\x20not**\x20duplicate\x20literals\x20in\x20a\x20file.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20\x22bar/baz/qux\x22;\x0aconst\x20bar\x20=\x20\x22bar/baz/qux\x22;\x0a\x0afoo(\x22quux\x22);\x0abar(\x22quux\x22);\x0a\x0a####\x20Correct\x0a\x0aconst\x20duplicatedPath\x20=\x20\x22bar/baz/qux\x22;\x0a\x0aconst\x20foo\x20=\x20duplicatedPath;\x0aconst\x20bar\x20=\x20duplicatedPath;\x0a\x0afoo(\x22quux\x22);\x0abar(\x22corge\x22);\x0a\x0a####\x20Why\x0a\x0aDuplicated\x20literals\x20are\x20fragile.\x20Extract\x20shared\x20strings\x20into\x20constants\x20to\x20ensure\x20a\x20single\x20source\x20of\x20truth.',monorepoRootDir=_0x1a4b39__default['resolve'](_0x1a4b39__default['dirname'](fileURLToPath(import.meta.url)),sourceDir);var noLiteralDuplication = createEslintRule(ruleName,ruleContent,_0xf86ed=>{const _0x42e2a7=firstOrUndefined(_0xf86ed['options'])??{},_0x437dc3=new Set([...stringDuplicationConstants['excludedStrings'],..._0x42e2a7['excludedStrings']??[]]);return {[eslintRuleSyntax['programExitSelector']](){if(isExcludedFile(_0xf86ed['filename']))return;const _0x9d3cb4=extractStringsFromSource(_0xf86ed['filename'],_0xf86ed['sourceCode']['text'],[..._0x437dc3]),_0x238a1e=buildDuplicatesMap(_0x9d3cb4,normalizeString);_0x238a1e['forEach'](_0x12ce25=>{if(_0x12ce25['length']<=0x2597+-0x5*0x4b2+-0xe1c)return;_0x12ce25['forEach'](_0x10d1b6=>{_0xf86ed['report']({'loc':{'start':_0xf86ed['sourceCode']['getLocFromIndex'](_0x10d1b6['start']),'end':_0xf86ed['sourceCode']['getLocFromIndex'](_0x10d1b6['end'])},'messageId':ruleName,'data':{'literal':_0x10d1b6['original']}});});});}};},{'dynamicMessage':'Literal:\x20\x27{{literal}}\x27\x20is\x20duplicated.\x20Extract\x20it\x20into\x20a\x20constant.','schema':[{'type':'object','properties':{'excludedStrings':{'type':jsBasicTypes['array'],'items':{'type':'string'},'uniqueItems':!![]}},'additionalProperties':![]}],'defaultOptions':[{'excludedStrings':[...stringDuplicationConstants['excludedStrings']]}]});function isExcludedFile(_0x2e1aa9){const _0x58d3e3=_0x1a4b39__default['isAbsolute'](_0x2e1aa9)?_0x1a4b39__default['relative'](monorepoRootDir,_0x2e1aa9):_0x2e1aa9,_0x2c5f02=_0x58d3e3['replace'](/\\/g,'/');return stringDuplicationConstants['excludePatterns']['some'](_0x4a5932=>matchesExcludePattern(_0x2c5f02,_0x4a5932));}__name(isExcludedFile,'isExcludedFile');function matchesExcludePattern(_0x3ef0b0,_0x24c3c3){const _0x4e1a25=_0x24c3c3['replace'](/\\/g,'/')['replace'](/\/{2,}/g,'/'),_0x43d0a3=/[*?[\]{}()!+@]/['test'](_0x4e1a25);if(_0x1a4b39__default['matchesGlob'](_0x3ef0b0,_0x4e1a25))return !![];if(!_0x43d0a3){const _0x26f867=_0x4e1a25['replace'](/\/$/,'');return _0x3ef0b0===_0x26f867||_0x3ef0b0['startsWith'](_0x26f867+'/');}return ![];}__name(matchesExcludePattern,'matchesExcludePattern');
7
15
 
8
16
  export { noLiteralDuplication as default, ruleName };
@@ -2,6 +2,6 @@
2
2
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
3
  import { nodeTypes, isEnumTypeDefinition, enumTypeDefinitionStatuses } from '@flint/infra/analysis';
4
4
 
5
- var __defProp=Object['defineProperty'],__name=(_0x26f13e,_0x1ccdfa)=>__defProp(_0x26f13e,'name',{'value':_0x1ccdfa,'configurable':!![]});const ruleName='enum-type-immediate-definition';const dynamicMessage='Object\x20\x27{{name}}\x27\x20is\x20not\x20defined\x20immediately\x20after\x20its\x20constant\x20declaration.',ruleContent='\x0a###\x20**Must**\x20define\x20enum\x20type\x20immediately\x20after\x20its\x20constant\x20declaration.\x0a\x0a####\x20Wrong\x0a\x0aexport\x20const\x20foo\x20=\x20{\x20bar:\x20\x22Bar\x22\x20};\x0aconst\x20someConfig\x20=\x20true;\x0aexport\x20type\x20Foo\x20=\x20(typeof\x20foo)[keyof\x20typeof\x20foo];\x0a\x0a####\x20Correct\x0a\x0aexport\x20const\x20foo\x20=\x20{\x20bar:\x20\x22Bar\x22\x20};\x0aexport\x20type\x20Foo\x20=\x20(typeof\x20foo)[keyof\x20typeof\x20foo];\x0a\x0a####\x20Why\x0a\x0aSeparating\x20the\x20constant\x20object\x20from\x20its\x20type\x20definition\x20makes\x20code\x20harder\x20to\x20read\x20and\x20maintain.';var enumTypeImmediateDefinition = createEslintRule(ruleName,ruleContent,__name(function create(_0x3b3bad){return {[nodeTypes['TSTypeAliasDeclaration']](_0x5520c6){isEnumTypeDefinition(_0x5520c6)===enumTypeDefinitionStatuses['invalid']&&_0x3b3bad['report']({'node':_0x5520c6,'messageId':ruleName,'data':{'name':_0x5520c6['id']['name']}});}};},'create'),{'dynamicMessage':dynamicMessage});
5
+ var __defProp=Object['defineProperty'],__name=(_0x2a0461,_0x26c6c6)=>__defProp(_0x2a0461,'name',{'value':_0x26c6c6,'configurable':!![]});const ruleName='enum-type-immediate-definition';const ruleContent='\x0a###\x20**Must**\x20define\x20enum\x20type\x20immediately\x20after\x20its\x20constant\x20declaration.\x0a\x0a####\x20Wrong\x0a\x0aexport\x20const\x20foo\x20=\x20{\x20bar:\x20\x22Bar\x22\x20};\x0aconst\x20someConfig\x20=\x20true;\x0aexport\x20type\x20Foo\x20=\x20(typeof\x20foo)[keyof\x20typeof\x20foo];\x0a\x0a####\x20Correct\x0a\x0aexport\x20const\x20foo\x20=\x20{\x20bar:\x20\x22Bar\x22\x20};\x0aexport\x20type\x20Foo\x20=\x20(typeof\x20foo)[keyof\x20typeof\x20foo];\x0a\x0a####\x20Why\x0a\x0aSeparating\x20the\x20constant\x20object\x20from\x20its\x20type\x20definition\x20makes\x20code\x20harder\x20to\x20read\x20and\x20maintain.';var enumTypeImmediateDefinition = createEslintRule(ruleName,ruleContent,__name(function create(_0x3ee0e8){return {[nodeTypes['TSTypeAliasDeclaration']](_0x1a36f6){isEnumTypeDefinition(_0x1a36f6)===enumTypeDefinitionStatuses['invalid']&&_0x3ee0e8['report']({'node':_0x1a36f6,'messageId':ruleName,'data':{'name':_0x1a36f6['id']['name']}});}};},'create'),{'dynamicMessage':'Object\x20\x27{{name}}\x27\x20is\x20not\x20defined\x20immediately\x20after\x20its\x20constant\x20declaration.'});
6
6
 
7
7
  export { enumTypeImmediateDefinition as default, ruleName };
@@ -1,7 +1,8 @@
1
1
  'use strict';
2
2
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
3
  import { isIdentifier, isExplicitlyTypedVariable, getDefinition } from '@flint/infra/analysis';
4
+ import { firstOrUndefined } from '../../../fd-toolbox/server/collections/single-funcs.js';
4
5
 
5
- var __defProp=Object['defineProperty'],__name=(_0x48d903,_0x1cd450)=>__defProp(_0x48d903,'name',{'value':_0x1cd450,'configurable':!![]});const ruleName='must-always-specify-types-for-api-responses';const ruleContent='\x0a###\x20**Must**\x20always\x20specify\x20types\x20for\x20api\x20responses\x0a\x0a####\x20Wrong\x0a\x0aexport\x20function\x20GET()\x20{\x0a\x20\x20\x20\x20const\x20context\x20=\x20getContext();\x0a\x20\x20\x20\x20const\x20result\x20=\x20getResult();\x0a\x0a\x20\x20\x20\x20return\x20apiOkResponse({\x20context,\x20result\x20});\x0a}\x0a\x0a####\x20Correct\x0a\x0aexport\x20function\x20GET()\x20{\x0a\x20\x20\x20\x20const\x20context\x20=\x20getContext();\x0a\x20\x20\x20\x20const\x20result\x20=\x20getResult();\x0a\x0a\x20\x20\x20\x20const\x20response:\x20FooType\x20=\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20context:\x20context,\x0a\x20\x20\x20\x20\x20\x20\x20\x20result:\x20result,\x0a\x20\x20\x20\x20};\x0a\x0a\x20\x20\x20\x20return\x20apiOkResponse(response);\x0a}\x0a\x0a####\x20Why\x0a\x0aAdds\x20an\x20additional\x20level\x20of\x20type\x20checking\x20to\x20prevent\x20further\x20errors\x20and\x20type\x20inconsistencies.\x20It\x20also\x20helps\x20with\x20refactoring\x20code,\x20as\x20you\x20can\x20search\x20by\x20the\x20type\x20name\x20directly.\x0a';var mustAlwaysSpecifyTypesForApiResponses = createEslintRule(ruleName,ruleContent,_0x379072=>{return {'CallExpression'(_0x282e73){if(!isApiResponseCall(_0x282e73))return;const _0x45d55e=_0x282e73['arguments'][-0x119*0x1+0x4ed+-0x3d4];_0x45d55e&&(!isIdentifier(_0x45d55e)||!isExplicitlyTypedVariable(getDefinition(_0x45d55e,_0x379072)))&&_0x379072['report']({'node':_0x45d55e,'messageId':ruleName});}};});function isApiResponseCall(_0x46c71f){const _0x629573=/^((api(.*)Response)|getJsonResponse)$/;return isIdentifier(_0x46c71f['callee'])&&_0x629573['test'](_0x46c71f['callee']['name']);}__name(isApiResponseCall,'isApiResponseCall');
6
+ var __defProp=Object['defineProperty'],__name=(_0xe44755,_0x47fdc5)=>__defProp(_0xe44755,'name',{'value':_0x47fdc5,'configurable':!![]});const ruleName='must-always-specify-types-for-api-responses';const ruleContent='\x0a###\x20**Must**\x20always\x20specify\x20types\x20for\x20api\x20responses\x0a\x0a####\x20Wrong\x0a\x0aexport\x20function\x20GET()\x20{\x0a\x20\x20\x20\x20const\x20context\x20=\x20getContext();\x0a\x20\x20\x20\x20const\x20result\x20=\x20getResult();\x0a\x0a\x20\x20\x20\x20return\x20apiOkResponse({\x20context,\x20result\x20});\x0a}\x0a\x0a####\x20Correct\x0a\x0aexport\x20function\x20GET()\x20{\x0a\x20\x20\x20\x20const\x20context\x20=\x20getContext();\x0a\x20\x20\x20\x20const\x20result\x20=\x20getResult();\x0a\x0a\x20\x20\x20\x20const\x20response:\x20FooType\x20=\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20context:\x20context,\x0a\x20\x20\x20\x20\x20\x20\x20\x20result:\x20result,\x0a\x20\x20\x20\x20};\x0a\x0a\x20\x20\x20\x20return\x20apiOkResponse(response);\x0a}\x0a\x0a####\x20Why\x0a\x0aAdds\x20an\x20additional\x20level\x20of\x20type\x20checking\x20to\x20prevent\x20further\x20errors\x20and\x20type\x20inconsistencies.\x20It\x20also\x20helps\x20with\x20refactoring\x20code,\x20as\x20you\x20can\x20search\x20by\x20the\x20type\x20name\x20directly.\x0a';var mustAlwaysSpecifyTypesForApiResponses = createEslintRule(ruleName,ruleContent,_0x16150e=>{return {'CallExpression'(_0x3fc0a4){if(!isApiResponseCall(_0x3fc0a4))return;const _0x2766c6=firstOrUndefined(_0x3fc0a4['arguments']);_0x2766c6&&(!isIdentifier(_0x2766c6)||!isExplicitlyTypedVariable(getDefinition(_0x2766c6,_0x16150e['sourceCode'])))&&_0x16150e['report']({'node':_0x2766c6,'messageId':ruleName});}};});function isApiResponseCall(_0x2f1949){const _0x10ccf3=/^((api(.*)Response)|getJsonResponse)$/;return isIdentifier(_0x2f1949['callee'])&&_0x10ccf3['test'](_0x2f1949['callee']['name']);}__name(isApiResponseCall,'isApiResponseCall');
6
7
 
7
8
  export { mustAlwaysSpecifyTypesForApiResponses as default, ruleName };
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+ import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
+ import { memberKinds, getMemberKindByNodeType, nodeTypes, isExportDeclaration, isEnumTypeDefinition, enumTypeDefinitionStatuses, variableDeclarationKinds, isObjectExpression, isAsConstVariable } from '@flint/infra/analysis';
4
+ import { jsBasicTypes } from '../../../base-repo/constants/basic-types.js';
5
+ import { eslintFixTypeNames } from '../../../base-repo/constants/internal-common-strings.js';
6
+ import { first } from '../../../fd-toolbox/server/collections/single-funcs.js';
7
+
8
+ var __defProp=Object['defineProperty'],__name=(_0xaecb5e,_0x356ffe)=>__defProp(_0xaecb5e,'name',{'value':_0x356ffe,'configurable':!![]});const ruleName='must-declare-module-members-in-consistent-order';const ruleContent='\x0a###\x20**Must**\x20declare\x20module\x20members\x20in\x20a\x20consistent\x20order\x20and\x20use\x20spacing\x20for\x20separation.\x0a\x0a####\x20Wrong\x0a\x0afunction\x20foo()\x20{}\x0aexport\x20function\x20bar()\x20{}\x0a\x0aexport\x20const\x20lambda\x20=\x20()\x20=>\x20{};\x0a\x0aconst\x20baz\x20=\x20{\x0a\x20\x20\x20\x20qux:\x200,\x0a\x20\x20\x20\x20quux:\x201,\x0a}\x20as\x20const;\x0aexport\x20const\x20corge\x20=\x200,\x0a\x20\x20\x20\x20grault\x20=\x20\x22grault\x22;\x0a\x0aclass\x20Garply\x20{}\x0aexport\x20class\x20Waldo\x20{}\x0a\x0atype\x20Fred\x20=\x20{};\x0aexport\x20type\x20Plugh\x20=\x20{};\x0a\x0ainterface\x20Xyzzy\x20{}\x0aexport\x20interface\x20Thud\x20{}\x0a\x0a####\x20Correct\x0a\x0aexport\x20interface\x20Foo\x20{}\x0ainterface\x20Bar\x20{}\x0a\x0aexport\x20type\x20Baz\x20=\x20{};\x0atype\x20Qux\x20=\x20{};\x0a\x0aexport\x20class\x20Quux\x20{}\x0aclass\x20Corge\x20{}\x0a\x0aexport\x20const\x20grault\x20=\x200,\x0a\x20\x20\x20\x20garply\x20=\x20\x22garply\x22;\x0aconst\x20waldo\x20=\x20{\x0a\x20\x20\x20\x20fred:\x200,\x0a\x20\x20\x20\x20plugh:\x201,\x0a}\x20as\x20const;\x0a\x0aexport\x20const\x20lambda\x20=\x20()\x20=>\x20{};\x0a\x0aexport\x20function\x20xyzzy()\x20{}\x0a\x0aexport\x20function\x20bar()\x20{}\x0a\x0atest(\x22foo\x22,\x20()\x20=>\x20{\x0a})\x0a\x0aconst\x20nonExportedLambda\x20=\x20()\x20=>\x20{};\x0a\x0afunction\x20thud()\x20{\x0a}\x0a\x0a####\x20Why\x0a\x0aAn\x20orderly\x20arrangement\x20of\x20module\x20elements\x20improves\x20both\x20the\x20readability\x20and\x20maintainability\x20of\x20the\x20code.',memberDeclarationOrder=[memberKinds['exportInterface'],memberKinds['interface'],memberKinds['exportType'],memberKinds['type'],memberKinds['exportClass'],memberKinds['class'],memberKinds['exportVariable'],memberKinds['variable'],memberKinds['exportLambdaVariable'],memberKinds['exportFunction'],memberKinds['test'],memberKinds['lambdaVariable'],memberKinds['function']];var mustDeclareModuleMembersInConsistentOrder = createEslintRule(ruleName,ruleContent,__name(function create(_0x4653c5){let _0x25112b;const _0x564fb3=__name(_0x3a39b1=>{const _0x530a1d=getMemberKindByNodeType(_0x3a39b1,_0x4653c5['sourceCode']),_0x47f813=typeof _0x530a1d===jsBasicTypes['number']?memberDeclarationOrder['indexOf'](_0x530a1d):-(-0x1ae3+0x1002+0xae2);if(_0x47f813===-(0xe0e+-0x1065*-0x1+-0x1e72)||isEnumTypeDefinitionAndIsValid(_0x3a39b1))return;_0x47f813<_0x25112b?_0x4653c5['report']({'node':_0x3a39b1,'messageId':ruleName}):_0x25112b=_0x47f813;},'checkPriority');return {'Program'(_0x3a5bbe){const _0x347c84=_0x3a5bbe['body'];_0x25112b=-(0x1aae*-0x1+-0x3*0x413+0x14c*0x1e);let _0x5947d2;for(let _0x3a0fa5=_0x347c84['length']-(0x4*-0xb8+0x59f+-0x2be);_0x3a0fa5>=0x5e0+0x13a6+0x16b*-0x12;_0x3a0fa5--){if(_0x347c84[_0x3a0fa5]['type']===nodeTypes['importDeclaration']){_0x5947d2=_0x347c84[_0x3a0fa5];break;}}const _0x52e80a=_0x5947d2?_0x347c84[_0x347c84['indexOf'](_0x5947d2)+(-0x1fc*-0x9+0x1b8*-0x10+-0x1*-0x9a5)]:void(-0x17a2+-0xed4+0x2676);_0x5947d2&&_0x52e80a&&ensureEmptyLine(_0x4653c5,_0x5947d2,_0x52e80a),_0x347c84['forEach']((_0x13b2ee,_0x213860)=>{const _0x560592=_0x347c84[_0x213860+(-0x23f7+-0x11f7+-0x35ef*-0x1)];_0x560592&&shouldHaveEmptyLineAfter(_0x13b2ee)&&ensureEmptyLine(_0x4653c5,_0x13b2ee,_0x560592),_0x564fb3(_0x13b2ee);});}};},'create'),{'fixable':eslintFixTypeNames['whitespace']});function tryToExtractTypeDefinitionNode(_0x56d8a3){const _0x102284=isExportDeclaration(_0x56d8a3)?_0x56d8a3['declaration']:_0x56d8a3;return _0x102284&&_0x102284['type']===nodeTypes['TSTypeAliasDeclaration']?_0x102284:void(0xbb*-0x2d+-0x2*0x344+-0x2767*-0x1);}__name(tryToExtractTypeDefinitionNode,'tryToExtractTypeDefinitionNode');function isEnumTypeDefinitionAndIsValid(_0x226e78){const _0x230a35=tryToExtractTypeDefinitionNode(_0x226e78),_0x19994c=!!_0x230a35&&isEnumTypeDefinition(_0x230a35)===enumTypeDefinitionStatuses['valid'];return _0x19994c;}__name(isEnumTypeDefinitionAndIsValid,'isEnumTypeDefinitionAndIsValid');function shouldHaveEmptyLineAfter(_0x18da43){return isEnumTypeDefinitionAndIsValid(_0x18da43)||isConstObjectWithAsConst(_0x18da43);}__name(shouldHaveEmptyLineAfter,'shouldHaveEmptyLineAfter');function ensureEmptyLine(_0x47e31a,_0x25afbd,_0x5ceb44){const _0x1f9f39=_0x5ceb44['loc']['start']['line']-_0x25afbd['loc']['end']['line'];if(_0x1f9f39>=0x1e41+0xeab+-0x2cea)return;_0x47e31a['report']({'node':_0x25afbd,'messageId':ruleName,'fix':__name(_0x291e00=>{const _0x20531d=_0x47e31a['sourceCode'],_0x2f5d02=_0x25afbd['range'][-0x396+0x185c+-0x14c5*0x1],_0x443ae7=first(_0x5ceb44['range']),_0x3657b0=_0x20531d['text']['slice'](_0x2f5d02,_0x443ae7),_0x575474=/^(\r?\n)/['exec'](_0x3657b0)?.[-0x1a4e+-0xc88+0xa3*0x3d]??'\x0a';return _0x291e00['insertTextAfter'](_0x25afbd,_0x575474);},'fix')});}__name(ensureEmptyLine,'ensureEmptyLine');function isConstObjectWithAsConst(_0x2ff8be){const _0x2b82a8=isExportDeclaration(_0x2ff8be)?_0x2ff8be['declaration']:_0x2ff8be;if(!_0x2b82a8||_0x2b82a8['type']!==nodeTypes['variableDeclaration']||_0x2b82a8['kind']!==variableDeclarationKinds['const']||_0x2b82a8['declarations']['length']!==0xb79+0x1*-0x1bc7+0x104f)return ![];const _0x465cd3=first(_0x2b82a8['declarations']);return _0x465cd3['init']&&_0x465cd3['init']['type']===nodeTypes['TSAsExpression']&&isObjectExpression(_0x465cd3['init']['expression'])&&isAsConstVariable(_0x465cd3);}__name(isConstObjectWithAsConst,'isConstObjectWithAsConst');
9
+
10
+ export { mustDeclareModuleMembersInConsistentOrder as default, ruleName };
@@ -1,9 +1,14 @@
1
1
  'use strict';
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
+ import { jsBasicTypes } from '../../../base-repo/constants/basic-types.js';
4
+ import { commonLowerCaseWords, collectionMethodNames } from '../../../base-repo/constants/internal-common-strings.js';
3
5
  import { isArrayType, isTupleType, nodeTypes, isNameMatch, isMatchesNamedMember, isSameBaseMember } from '@flint/infra/analysis';
4
6
  import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
5
- import * as _0x5b8bdd from 'typescript';
7
+ import * as _0x56ccb4 from 'typescript';
8
+ import { runtimeConstructors } from '../../../base-repo/constants/runtime-constants.js';
9
+ import { runtimeStaticMethods } from '@flint/infra/constants/runtime-constants';
10
+ import { first } from '../../../fd-toolbox/server/collections/single-funcs.js';
6
11
 
7
- var __defProp=Object['defineProperty'],__name=(_0x5e296e,_0x5bd16c)=>__defProp(_0x5e296e,'name',{'value':_0x5bd16c,'configurable':!![]});const ruleName='must-not-needlessly-copy-arrays';const ruleId='mustNotNeedlesslyCopyArrays';const constants={'meta':{'type':ruleTypes['problem'],'docs':{'description':ruleName},'messages':{[ruleId]:ruleName+'\x0a###\x20**Must\x20not**\x20needlessly\x20copy\x20arrays.\x0a\x0a####\x20Wrong\x0a\x0afunction\x20foo(bar:\x20object[])\x20{\x0a\x20\x20\x20\x20return\x20[...bar].filter(...);\x0a}\x0a\x0a####\x20Correct\x0a\x0afunction\x20foo(bar:\x20object[])\x20\x20{\x0a\x20\x20\x20\x20return\x20bar.filter(...);\x0a}\x0a\x0a####\x20Why\x0a\x0aCreating\x20a\x20copy\x20of\x20an\x20array\x20without\x20modifying\x20it\x20is\x20unnecessary\x20and\x20can\x20affect\x20performance.'},'schema':[]},'mutatingMethods':new Set(['copyWithin','fill','pop','push','reverse','shift','sort','splice','unshift'])};function isArrayLikeInUnionType(_0x5cfbc3){return (_0x5cfbc3['flags']&_0x5b8bdd['TypeFlags']['Union'])!==-0x115*-0x12+0xd*-0x2bd+0x101f&&'types'in _0x5cfbc3&&Array['isArray'](_0x5cfbc3['types'])&&_0x5cfbc3['types']['every'](_0x329ae6=>{return isArrayType(_0x329ae6)||isTupleType(_0x329ae6);});}__name(isArrayLikeInUnionType,'isArrayLikeInUnionType');function isArrayLikeType(_0x63ff05,_0x5b880c){const _0x55c1b6=_0x5b880c['program']['getTypeChecker'](),_0x496553=_0x5b880c['esTreeNodeToTSNodeMap']['get'](_0x63ff05),_0xbc7223=_0x55c1b6['getTypeAtLocation'](_0x496553);return isArrayType(_0xbc7223)||isArrayLikeInUnionType(_0xbc7223)||isTupleType(_0xbc7223);}__name(isArrayLikeType,'isArrayLikeType');function isSpreadCopy(_0x55f28f,_0x206239){return _0x55f28f['type']===nodeTypes['arrayExpression']&&_0x55f28f['elements']['length']===-0x1f44+0xa*0x126+0x1*0x13c9&&!!_0x55f28f['elements'][0x43*0x21+0x193b*0x1+-0x5a5*0x6]&&_0x55f28f['elements'][-0x3ba+0x3*-0x40b+-0x1*-0xfdb]['type']===nodeTypes['spreadElement']&&isArrayLikeType(_0x55f28f['elements'][0x688+0xa09+-0x1091]['argument'],_0x206239);}__name(isSpreadCopy,'isSpreadCopy');function isZeroOrUndefined(_0x1a186f){return !!_0x1a186f&&(_0x1a186f['type']===nodeTypes['literal']&&_0x1a186f['value']===-0x656*-0x5+0x625+-0x25d3||_0x1a186f['type']===nodeTypes['identifier']&&isNameMatch(_0x1a186f,'undefined'));}__name(isZeroOrUndefined,'isZeroOrUndefined');function isUsedLengthMethod(_0x54ee30,_0xce02de){return _0xce02de['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0xce02de,void(0x1*-0xc59+-0x5*-0x4e1+0x6*-0x202),'length')&&isSameBaseMember(_0x54ee30,_0xce02de);}__name(isUsedLengthMethod,'isUsedLengthMethod');function isIdentitySlice(_0x1d3ad0,_0x21189f,_0x516aee){return isZeroOrUndefined(_0x21189f)&&(!_0x516aee||_0x516aee['type']===nodeTypes['identifier']&&isNameMatch(_0x516aee,'undefined')||isUsedLengthMethod(_0x1d3ad0['object'],_0x516aee));}__name(isIdentitySlice,'isIdentitySlice');function isSliceCopy(_0x423024,_0x4dbe60){let _0x2e0497=![];if(_0x423024['type']===nodeTypes['callExpression']&&_0x423024['callee']['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0x423024['callee'],void(0x162e+-0x28*-0xa1+-0x2f56*0x1),'slice')&&isArrayLikeType(_0x423024['callee']['object'],_0x4dbe60)){const [_0x3b1fd6,_0x266b0c]=_0x423024['arguments'];_0x2e0497=_0x423024['arguments']['length']===-0x1182+-0xaef*0x2+0xb4*0x38||isIdentitySlice(_0x423024['callee'],_0x3b1fd6,_0x266b0c);}return _0x2e0497;}__name(isSliceCopy,'isSliceCopy');function isSingleArgumentAnArray(_0xa135b2,_0x21f789){let _0x518251=![];if(_0xa135b2['length']===-0xf95*0x1+0xbf*-0x18+0x217e&&_0xa135b2[-0x1aa9+0x10f8+-0x1*-0x9b1]){const _0x24689e=_0xa135b2[-0x7*-0x58c+-0x816+0x626*-0x5]['type']===nodeTypes['spreadElement']?_0xa135b2[0x1*-0xaa6+-0x978*0x3+0x270e]['argument']:_0xa135b2[0x1e5e+0x269f*-0x1+0x841];_0x518251=isArrayLikeType(_0x24689e,_0x21f789);}return _0x518251;}__name(isSingleArgumentAnArray,'isSingleArgumentAnArray');function isEmptyArrayConcat(_0x201dd7,_0x2f9a00,_0x199d09){return _0x201dd7['object']['type']===nodeTypes['arrayExpression']&&_0x201dd7['object']['elements']['length']===0x1*0x254f+-0x2*0x427+0x19*-0x129&&isSingleArgumentAnArray(_0x2f9a00,_0x199d09);}__name(isEmptyArrayConcat,'isEmptyArrayConcat');function isArrayLikeConcat(_0x34c7ba,_0x312605,_0x214976){return isArrayLikeType(_0x34c7ba['object'],_0x214976)&&(_0x312605['length']===-0x10e*0x11+-0x7d2+-0x67*-0x40||_0x312605['length']===-0x208+0x1e0b+-0x1c02&&_0x312605[-0xdaa*-0x2+-0x2d*0x17+0x1*-0x1749]['type']===nodeTypes['arrayExpression']&&_0x312605[-0x338+0xc43+-0x90b]['elements']['length']===-0x27a+-0x1610+0x188a);}__name(isArrayLikeConcat,'isArrayLikeConcat');function isConcatCopy(_0x52730b,_0x10243e){return _0x52730b['type']===nodeTypes['callExpression']&&_0x52730b['callee']['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0x52730b['callee'],void(0x2*-0xb4b+-0x27a*-0x4+-0x2*-0x657),'concat')&&(isEmptyArrayConcat(_0x52730b['callee'],_0x52730b['arguments'],_0x10243e)||isArrayLikeConcat(_0x52730b['callee'],_0x52730b['arguments'],_0x10243e));}__name(isConcatCopy,'isConcatCopy');function isArrayFromCopy(_0x330e2d,_0x16143a){return _0x330e2d['type']===nodeTypes['callExpression']&&_0x330e2d['callee']['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0x330e2d['callee'],'Array','from')&&isSingleArgumentAnArray(_0x330e2d['arguments'],_0x16143a);}__name(isArrayFromCopy,'isArrayFromCopy');function isNonMutatingMethod(_0x5f234a){return _0x5f234a['property']['type']===nodeTypes['identifier']&&!constants['mutatingMethods']['has'](_0x5f234a['property']['name'])||_0x5f234a['property']['type']===nodeTypes['literal']&&typeof _0x5f234a['property']['value']==='string'&&!constants['mutatingMethods']['has'](_0x5f234a['property']['value']);}__name(isNonMutatingMethod,'isNonMutatingMethod');function isArrayCopySyntax(_0x2eff5c,_0x226154){return isSpreadCopy(_0x2eff5c,_0x226154)||isSliceCopy(_0x2eff5c,_0x226154)||isConcatCopy(_0x2eff5c,_0x226154)||isArrayFromCopy(_0x2eff5c,_0x226154);}__name(isArrayCopySyntax,'isArrayCopySyntax');function isUselessCopy(_0x52f575,_0x27ef13){return _0x52f575['callee']['type']===nodeTypes['memberExpression']&&isArrayCopySyntax(_0x52f575['callee']['object'],_0x27ef13)&&isNonMutatingMethod(_0x52f575['callee']);}__name(isUselessCopy,'isUselessCopy');const createRule=ESLintUtils['RuleCreator'](_0x33c898=>''+url+_0x33c898),mustNotNeedlesslyCopyArrays=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x469dac){const _0x57ad7a=ESLintUtils['getParserServices'](_0x469dac);if(!_0x57ad7a['program'])return {};return {'CallExpression'(_0x380f29){isUselessCopy(_0x380f29,_0x57ad7a)&&_0x469dac['report']({'messageId':ruleId,'node':_0x380f29});}};}});
12
+ var __defProp=Object['defineProperty'],__name=(_0x3413dd,_0x2cd066)=>__defProp(_0x3413dd,'name',{'value':_0x2cd066,'configurable':!![]});const ruleName='must-not-needlessly-copy-arrays';const ruleId='mustNotNeedlesslyCopyArrays';const constants={'meta':{'type':ruleTypes['problem'],'docs':{'description':ruleName},'messages':{[ruleId]:ruleName+'\x0a###\x20**Must\x20not**\x20needlessly\x20copy\x20arrays.\x0a\x0a####\x20Wrong\x0a\x0afunction\x20foo(bar:\x20object[])\x20{\x0a\x20\x20\x20\x20return\x20[...bar].filter(...);\x0a}\x0a\x0a####\x20Correct\x0a\x0afunction\x20foo(bar:\x20object[])\x20\x20{\x0a\x20\x20\x20\x20return\x20bar.filter(...);\x0a}\x0a\x0a####\x20Why\x0a\x0aCreating\x20a\x20copy\x20of\x20an\x20array\x20without\x20modifying\x20it\x20is\x20unnecessary\x20and\x20can\x20affect\x20performance.'},'schema':[]},'mutatingMethods':new Set([collectionMethodNames['copyWithin'],collectionMethodNames['fill'],collectionMethodNames['pop'],collectionMethodNames['push'],collectionMethodNames['reverse'],collectionMethodNames['shift'],collectionMethodNames['sort'],collectionMethodNames['splice'],collectionMethodNames['unshift']]),'unionMemberParams':{'fieldName':commonLowerCaseWords['types']}},createRule=ESLintUtils['RuleCreator'](_0x17f9fd=>''+url+_0x17f9fd),mustNotNeedlesslyCopyArrays=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x4f7bb7){const _0x4c0762=ESLintUtils['getParserServices'](_0x4f7bb7);if(!_0x4c0762['program'])return {};return {'CallExpression'(_0xe258d6){isUselessCopy(_0xe258d6,_0x4c0762)&&_0x4f7bb7['report']({'messageId':ruleId,'node':_0xe258d6});}};}});function hasUnionMemberCollection(_0x58d5ac){const _0xf507c5=constants['unionMemberParams']['fieldName'];return _0xf507c5 in _0x58d5ac&&Array['isArray'](_0x58d5ac[_0xf507c5]);}__name(hasUnionMemberCollection,'hasUnionMemberCollection');function isArrayLikeInUnionType(_0x4dc48b){return (_0x4dc48b['flags']&_0x56ccb4['TypeFlags']['Union'])!==0x4*-0x62c+-0x970+0x2220&&hasUnionMemberCollection(_0x4dc48b)&&_0x4dc48b['types']['every'](_0x4c4f03=>{return isArrayType(_0x4c4f03)||isTupleType(_0x4c4f03);});}__name(isArrayLikeInUnionType,'isArrayLikeInUnionType');function isArrayLikeType(_0x12eb26,_0x1e5499){const _0x573a79=_0x1e5499['program']['getTypeChecker'](),_0x20ba6a=_0x1e5499['esTreeNodeToTSNodeMap']['get'](_0x12eb26),_0x4de2d8=_0x573a79['getTypeAtLocation'](_0x20ba6a);return isArrayType(_0x4de2d8)||isArrayLikeInUnionType(_0x4de2d8)||isTupleType(_0x4de2d8);}__name(isArrayLikeType,'isArrayLikeType');function isSpreadCopy(_0x46f0dd,_0x2601cd){let _0x246921=![];if(_0x46f0dd['type']===nodeTypes['arrayExpression']&&_0x46f0dd['elements']['length']===0x15*-0x1a9+-0x42*-0x36+-0x17f*-0xe){const _0x5347be=first(_0x46f0dd['elements']);_0x5347be&&_0x5347be['type']===nodeTypes['spreadElement']&&isArrayLikeType(_0x5347be['argument'],_0x2601cd)&&(_0x246921=!![]);}return _0x246921;}__name(isSpreadCopy,'isSpreadCopy');function isZeroOrUndefined(_0x41fd3d){return !!_0x41fd3d&&(_0x41fd3d['type']===nodeTypes['literal']&&_0x41fd3d['value']===0xa*0xe4+-0x1d*-0x9a+0xd2d*-0x2||_0x41fd3d['type']===nodeTypes['identifier']&&isNameMatch(_0x41fd3d,jsBasicTypes['undefined']));}__name(isZeroOrUndefined,'isZeroOrUndefined');function isUsedLengthMethod(_0x3b4281,_0x2007bf){return _0x2007bf['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0x2007bf,void(-0xb*-0x269+-0x1e49+-0x1e3*-0x2),collectionMethodNames['length'])&&isSameBaseMember(_0x3b4281,_0x2007bf);}__name(isUsedLengthMethod,'isUsedLengthMethod');function isIdentitySlice(_0x6fbc84,_0x516e9a,_0x4b28fa){return isZeroOrUndefined(_0x516e9a)&&(!_0x4b28fa||_0x4b28fa['type']===nodeTypes['identifier']&&isNameMatch(_0x4b28fa,jsBasicTypes['undefined'])||isUsedLengthMethod(_0x6fbc84['object'],_0x4b28fa));}__name(isIdentitySlice,'isIdentitySlice');function isSliceCopy(_0x116675,_0x534830){let _0x248015=![];if(_0x116675['type']===nodeTypes['callExpression']&&_0x116675['callee']['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0x116675['callee'],void(0xca2*-0x3+-0xc7d*0x3+-0x6d*-0xb1),collectionMethodNames['slice'])&&isArrayLikeType(_0x116675['callee']['object'],_0x534830)){const [_0x5c6781,_0x47eb74]=_0x116675['arguments'];_0x248015=_0x116675['arguments']['length']===0x1142+-0x2425+0x12e3||isIdentitySlice(_0x116675['callee'],_0x5c6781,_0x47eb74);}return _0x248015;}__name(isSliceCopy,'isSliceCopy');function isSingleArgumentAnArray(_0x3258fa,_0x45d3a3){let _0x2c61bb=![];if(_0x3258fa['length']===-0x1cb5*-0x1+0x5*0x147+0x2b3*-0xd){const _0x31f056=first(_0x3258fa),_0x507f02=_0x31f056['type']===nodeTypes['spreadElement']?_0x31f056['argument']:_0x31f056;_0x2c61bb=isArrayLikeType(_0x507f02,_0x45d3a3);}return _0x2c61bb;}__name(isSingleArgumentAnArray,'isSingleArgumentAnArray');function isEmptyArrayConcat(_0x15d49c,_0x4b3b85,_0x463f25){return _0x15d49c['object']['type']===nodeTypes['arrayExpression']&&_0x15d49c['object']['elements']['length']===0xfa5+-0x92b+0x67a*-0x1&&isSingleArgumentAnArray(_0x4b3b85,_0x463f25);}__name(isEmptyArrayConcat,'isEmptyArrayConcat');function isArrayLikeConcat(_0xb26dc,_0x11b8fc,_0x47e20a){let _0x5761d8=![];if(isArrayLikeType(_0xb26dc['object'],_0x47e20a)){if(_0x11b8fc['length']===0xef9+-0x2*-0x8ba+0x1*-0x206d)_0x5761d8=!![];else {if(_0x11b8fc['length']===-0x106*-0x1+0x7a0+0x8a5*-0x1){const _0x1441cc=first(_0x11b8fc);_0x1441cc['type']===nodeTypes['arrayExpression']&&_0x1441cc['elements']['length']===0x7d*-0xa+-0x4b*0x22+-0x76c*-0x2&&(_0x5761d8=!![]);}}}return _0x5761d8;}__name(isArrayLikeConcat,'isArrayLikeConcat');function isConcatCopy(_0x161780,_0x56bb61){return _0x161780['type']===nodeTypes['callExpression']&&_0x161780['callee']['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0x161780['callee'],void(-0x1835+-0x11ce+-0x2cd*-0xf),collectionMethodNames['concat'])&&(isEmptyArrayConcat(_0x161780['callee'],_0x161780['arguments'],_0x56bb61)||isArrayLikeConcat(_0x161780['callee'],_0x161780['arguments'],_0x56bb61));}__name(isConcatCopy,'isConcatCopy');function isArrayFromCopy(_0x559fa1,_0x1e9c0c){return _0x559fa1['type']===nodeTypes['callExpression']&&_0x559fa1['callee']['type']===nodeTypes['memberExpression']&&isMatchesNamedMember(_0x559fa1['callee'],runtimeConstructors['array'],runtimeStaticMethods['from'])&&isSingleArgumentAnArray(_0x559fa1['arguments'],_0x1e9c0c);}__name(isArrayFromCopy,'isArrayFromCopy');function isNonMutatingMethod(_0x5aaf6c){return _0x5aaf6c['property']['type']===nodeTypes['identifier']&&!constants['mutatingMethods']['has'](_0x5aaf6c['property']['name'])||_0x5aaf6c['property']['type']===nodeTypes['literal']&&typeof _0x5aaf6c['property']['value']==='string'&&!constants['mutatingMethods']['has'](_0x5aaf6c['property']['value']);}__name(isNonMutatingMethod,'isNonMutatingMethod');function isArrayCopySyntax(_0x20212b,_0x389b6b){return isSpreadCopy(_0x20212b,_0x389b6b)||isSliceCopy(_0x20212b,_0x389b6b)||isConcatCopy(_0x20212b,_0x389b6b)||isArrayFromCopy(_0x20212b,_0x389b6b);}__name(isArrayCopySyntax,'isArrayCopySyntax');function isUselessCopy(_0x1edcbe,_0x5ee2e2){return _0x1edcbe['callee']['type']===nodeTypes['memberExpression']&&isArrayCopySyntax(_0x1edcbe['callee']['object'],_0x5ee2e2)&&isNonMutatingMethod(_0x1edcbe['callee']);}__name(isUselessCopy,'isUselessCopy');
8
13
 
9
14
  export { mustNotNeedlesslyCopyArrays as default, ruleId, ruleName };
@@ -1,7 +1,10 @@
1
1
  'use strict';
2
+ import { jsBasicTypes } from '../../../base-repo/constants/basic-types.js';
2
3
  import { nodeTypes, isStringType, isNumberType, isVariableDeclaration, getVariableName } from '@flint/infra/analysis';
4
+ import { variableDeclarationKinds } from '@flint/infra/analysis/module-analysis';
3
5
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
6
+ import { eslintProperties } from '@flint/infra/constants/rules-meta';
4
7
 
5
- var __defProp=Object['defineProperty'],__name=(_0x382631,_0x1e0bda)=>__defProp(_0x382631,'name',{'value':_0x1e0bda,'configurable':!![]});const ruleName='must-not-use-anonymous-objects-only-with-explicit-typization';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20anonymous\x20object\x20only\x20with\x20explicit\x20typization.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20{\x20bar:\x203\x20};\x0a\x0a####\x20Correct\x0a\x0ainterface\x20Foo\x20{\x0a\x20\x20\x20\x20bar:\x20number;\x0a}\x0aconst\x20foo:\x20Foo\x20=\x20{\x20bar:\x203\x20};\x0a\x0a####\x20Why\x0a\x0aHelps\x20with\x20typization,\x20prevents\x20bugs.';var mustNotUseAnonymousObjectsOnlyWithExplicitTypization = createEslintRule(ruleName,ruleContent,__name(function create(_0x3e150a){return {'VariableDeclarator'(_0x37b141){const _0x459e1d=_0x37b141['init'];if(!_0x459e1d)return;if(_0x459e1d['type']===nodeTypes['objectExpression']){if(isEnumLikeObject(_0x459e1d,_0x37b141))return;reportAnonymousObject(_0x459e1d,_0x3e150a);}}};},'create'));function isPrimitive(_0x240ba5){let _0x3bc061=![];return _0x240ba5['type']===nodeTypes['literal']&&(_0x3bc061=isStringType(_0x240ba5['value'])||isNumberType(_0x240ba5['value'])||typeof _0x240ba5['value']==='boolean'),_0x240ba5['type']===nodeTypes['unaryExpression']&&(_0x3bc061=_0x240ba5['operator']==='-'&&_0x240ba5['argument']['type']===nodeTypes['literal']&&isNumberType(_0x240ba5['argument']['value'])),_0x3bc061;}__name(isPrimitive,'isPrimitive');function hasOnlyStaticProperties({properties:_0x3e3a0b}){let _0x512ac1=!![];for(let _0x257e54 of _0x3e3a0b){_0x257e54['type']!==nodeTypes['property']&&(_0x512ac1=![]),'computed'in _0x257e54&&(_0x257e54['computed']||_0x257e54['kind']!=='init')&&(_0x512ac1=![]),'value'in _0x257e54&&!isPrimitive(_0x257e54['value'])&&(_0x512ac1=![]);}return _0x512ac1;}__name(hasOnlyStaticProperties,'hasOnlyStaticProperties');function isEnumLikeObject(_0x41fd0d,_0x1dab04){let _0x1346f2=!![];const _0x50aff9=_0x1dab04['parent'],_0xcb5cdc=isVariableDeclaration(_0x50aff9)&&_0x50aff9['kind']==='const';return (!_0xcb5cdc||!hasOnlyStaticProperties(_0x41fd0d))&&(_0x1346f2=![]),_0x1346f2;}__name(isEnumLikeObject,'isEnumLikeObject');function reportAnonymousObject(_0x126c39,_0x1e41fd){const _0x1664ba=_0x126c39['parent'];if(_0x1664ba?.['type']===nodeTypes['variableDeclarator']&&_0x1664ba['id']['type']===nodeTypes['objectPattern'])return;const _0x30cf05=_0x1664ba?.['type']===nodeTypes['variableDeclarator']&&_0x1664ba['id']['type']===nodeTypes['identifier']&&!_0x1664ba['id']['typeAnnotation'];if(_0x30cf05){const _0x58284f=getVariableName(_0x126c39),_0x2038af=_0x58284f?'\x27'+_0x58284f+'\x27':'';_0x1e41fd['report']({'node':_0x126c39,'messageId':ruleName,'data':{'variableNameText':_0x2038af}});}}__name(reportAnonymousObject,'reportAnonymousObject');
8
+ var __defProp=Object['defineProperty'],__name=(_0x12b9d0,_0x14a39c)=>__defProp(_0x12b9d0,'name',{'value':_0x14a39c,'configurable':!![]});const ruleName='must-not-use-anonymous-objects-only-with-explicit-typization';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20anonymous\x20object\x20only\x20with\x20explicit\x20typization.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20{\x20bar:\x203\x20};\x0a\x0a####\x20Correct\x0a\x0ainterface\x20Foo\x20{\x0a\x20\x20\x20\x20bar:\x20number;\x0a}\x0aconst\x20foo:\x20Foo\x20=\x20{\x20bar:\x203\x20};\x0a\x0a####\x20Why\x0a\x0aHelps\x20with\x20typization,\x20prevents\x20bugs.';var mustNotUseAnonymousObjectsOnlyWithExplicitTypization = createEslintRule(ruleName,ruleContent,__name(function create(_0x2511ef){return {'VariableDeclarator'(_0x57d952){const _0x1dd7b8=_0x57d952['init'];if(!_0x1dd7b8)return;if(_0x1dd7b8['type']===nodeTypes['objectExpression']){if(isEnumLikeObject(_0x1dd7b8['properties'],_0x57d952))return;reportAnonymousObject(_0x1dd7b8,_0x2511ef);}}};},'create'));function isPrimitive(_0x5ae703){let _0x2234c6=![];return _0x5ae703['type']===nodeTypes['literal']&&(_0x2234c6=isStringType(_0x5ae703['value'])||isNumberType(_0x5ae703['value'])||typeof _0x5ae703['value']===jsBasicTypes['boolean']),_0x5ae703['type']===nodeTypes['unaryExpression']&&(_0x2234c6=_0x5ae703['operator']==='-'&&_0x5ae703['argument']['type']===nodeTypes['literal']&&isNumberType(_0x5ae703['argument']['value'])),_0x2234c6;}__name(isPrimitive,'isPrimitive');function hasOnlyStaticProperties(_0x1e646d){let _0x7921c9=!![];for(let _0x4bad5a of _0x1e646d){_0x4bad5a['type']!==nodeTypes['property']&&(_0x7921c9=![]),'computed'in _0x4bad5a&&(_0x4bad5a['computed']||_0x4bad5a['kind']!==eslintProperties['init'])&&(_0x7921c9=![]),eslintProperties['value']in _0x4bad5a&&!isPrimitive(_0x4bad5a['value'])&&(_0x7921c9=![]);}return _0x7921c9;}__name(hasOnlyStaticProperties,'hasOnlyStaticProperties');function isEnumLikeObject(_0x1a208f,_0x33b38f){let _0x345258=!![];const _0x27e69e=_0x33b38f['parent'],_0x1f0ca1=isVariableDeclaration(_0x27e69e)&&_0x27e69e['kind']===variableDeclarationKinds['const'];return (!_0x1f0ca1||!hasOnlyStaticProperties(_0x1a208f))&&(_0x345258=![]),_0x345258;}__name(isEnumLikeObject,'isEnumLikeObject');function reportAnonymousObject(_0x3fa476,_0x40f04c){const _0x1be6ab=_0x3fa476['parent'];if(_0x1be6ab?.['type']===nodeTypes['variableDeclarator']&&_0x1be6ab['id']['type']===nodeTypes['objectPattern'])return;const _0x1b1080=_0x1be6ab?.['type']===nodeTypes['variableDeclarator']&&_0x1be6ab['id']['type']===nodeTypes['identifier']&&!_0x1be6ab['id']['typeAnnotation'];if(_0x1b1080){const _0xc80a6e=getVariableName(_0x3fa476),_0xbafbbb=_0xc80a6e?'\x27'+_0xc80a6e+'\x27':'';_0x40f04c['report']({'node':_0x3fa476,'messageId':ruleName,'data':{'variableNameText':_0xbafbbb}});}}__name(reportAnonymousObject,'reportAnonymousObject');
6
9
 
7
10
  export { mustNotUseAnonymousObjectsOnlyWithExplicitTypization as default, ruleName };
@@ -1,7 +1,10 @@
1
1
  'use strict';
2
2
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
3
  import { isNameMatch, isMemberExpression, nodeTypes } from '@flint/infra/analysis';
4
+ import { mutationActionNames } from '../../../base-repo/constants/internal-common-strings.js';
5
+ import { files } from '../../../base-repo/app-constants/project-paths.js';
6
+ import { flintRuleIdentifiers } from '@flint/infra/constants/shared-string-identifiers';
4
7
 
5
- var __defProp=Object['defineProperty'],__name=(_0x59e801,_0x5217ab)=>__defProp(_0x59e801,'name',{'value':_0x5217ab,'configurable':!![]});const ruleName='must-not-use-process-env';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20\x27process.env[...]\x27\x20to\x20read\x20environment\x20variables.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20process.env[bar];\x0a\x0a####\x20Correct\x0a\x0aimport\x20{\x20getStringEnvSetting\x20}\x20from\x20\x22@fd-toolbox/infra/env-functions\x22;\x0a\x0aconst\x20foo\x20=\x20getStringEnvSetting(bar);\x0a\x0a####\x20Why\x0a\x0aDirectly\x20reading\x20from\x20\x27process.env\x27\x20can\x20lead\x20to\x20missing\x20variables\x20or\x20values\x20of\x20the\x20wrong\x20type.';var mustNotUseProcessEnv = createEslintRule(ruleName,ruleContent,__name(function create(_0x5923c4){return {'MemberExpression'(_0x304ac6){isNameMatch(_0x304ac6['object'],'process')&&isNameMatch(_0x304ac6['property'],'env')&&isMemberExpression(_0x304ac6['parent'])&&!isWriteContext(_0x304ac6['parent'])&&_0x5923c4['report']({'node':_0x304ac6,'messageId':ruleName});}};},'create'));function isWriteContext(_0x811024){const _0x5708c4=_0x811024['parent'];if(_0x5708c4['type']===nodeTypes['unaryExpression']&&_0x5708c4['operator']==='delete')return !![];if(_0x5708c4['type']===nodeTypes['assignmentExpression']&&_0x5708c4['left']===_0x811024)return !![];return ![];}__name(isWriteContext,'isWriteContext');
8
+ var __defProp=Object['defineProperty'],__name=(_0x5780c4,_0x4cabd8)=>__defProp(_0x5780c4,'name',{'value':_0x4cabd8,'configurable':!![]});const ruleName='must-not-use-process-env';const ruleContent='\x0a###\x20**Must\x20not**\x20use\x20\x27process.env[...]\x27\x20to\x20read\x20environment\x20variables.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20process.env[bar];\x0a\x0a####\x20Correct\x0a\x0aimport\x20{\x0a\x20\x20\x20\x20getStringEnvSetting,\x0a\x20\x20\x20\x20getRequiredStringEnvSetting,\x0a\x20\x20\x20\x20getNumberEnvSetting,\x0a\x20\x20\x20\x20getBooleanEnvSetting,\x0a}\x20from\x20\x22@fd-toolbox/infra/env-functions\x22;\x0a\x0aconst\x20foo\x20=\x20getStringEnvSetting(bar);\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20if\x20(string\x20|\x20undefined)\x0aor\x0aconst\x20foo\x20=\x20getRequiredStringEnvSetting(bar);\x20//\x20if\x20(string)\x20-\x20throws\x20if\x20missing\x0aor\x0aconst\x20foo\x20=\x20getNumberEnvSetting(bar);\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20if\x20(number\x20|\x20undefined)\x0aor\x0aconst\x20foo\x20=\x20getBooleanEnvSetting(bar);\x20\x20\x20\x20\x20\x20\x20\x20//\x20if\x20(boolean)\x20-\x20defaults\x20to\x20false\x0a\x0a####\x20Why\x0a\x0aDirectly\x20reading\x20from\x20\x27process.env\x27\x20can\x20lead\x20to\x20missing\x20variables\x20or\x20values\x20of\x20the\x20wrong\x20type.\x0aUse\x20the\x20typed\x20helpers\x20above\x20to\x20get\x20proper\x20type\x20validation\x20and\x20error\x20handling\x20out\x20of\x20the\x20box.';var mustNotUseProcessEnv = createEslintRule(ruleName,ruleContent,__name(function create(_0x8ff28){return {'MemberExpression'(_0x33bcf3){isNameMatch(_0x33bcf3['object'],flintRuleIdentifiers['process'])&&isNameMatch(_0x33bcf3['property'],files['env'])&&isMemberExpression(_0x33bcf3['parent'])&&!isWriteContext(_0x33bcf3['parent'])&&_0x8ff28['report']({'node':_0x33bcf3,'messageId':ruleName});}};},'create'));function isWriteContext(_0x395449){const _0xa53955=_0x395449['parent'];if(_0xa53955['type']===nodeTypes['unaryExpression']&&_0xa53955['operator']===mutationActionNames['delete'])return !![];if(_0xa53955['type']===nodeTypes['assignmentExpression']&&_0xa53955['left']===_0x395449)return !![];return ![];}__name(isWriteContext,'isWriteContext');
6
9
 
7
10
  export { mustNotUseProcessEnv as default, ruleName };
@@ -2,6 +2,6 @@
2
2
  import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
3
  import { isNameMatch, hasCorrectCountOfGenericParameters, isIdentifier } from '@flint/infra/analysis';
4
4
 
5
- var __defProp=Object['defineProperty'],__name=(_0x4a922f,_0xacfb57)=>__defProp(_0x4a922f,'name',{'value':_0xacfb57,'configurable':!![]});const ruleName='must-specify-second-generic-parameter-in-apipost-and-apiput';const ruleContent='\x0a###\x20**Must**\x20specify\x20second\x20generic\x20parameter\x20in\x20apiPost\x20and\x20apiPut\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20apiPost<bar>(baz,\x20qux)\x20{}\x0a\x0a####\x20Correct\x0a\x0aconst\x20foo\x20=\x20apiPost<bar,\x20baz>(baz,\x20qux)\x20{}\x0a\x0a####\x20Why\x0a\x0aAdds\x20an\x20additional\x20level\x20of\x20type\x20checking\x20to\x20prevent\x20further\x20errors\x20and\x20type\x20inconsistencies.';var mustSpecifySecondGenericParameterInApipostAndApiput = createEslintRule(ruleName,ruleContent,__name(function create(_0x16d899){return {'CallExpression'(_0x593d67){const _0x4f30f4=isNameMatch(_0x593d67['callee'],'apiPost')&&!hasCorrectCountOfGenericParameters(_0x593d67),_0x3eacb5=isNameMatch(_0x593d67['callee'],'apiPut')&&!hasCorrectCountOfGenericParameters(_0x593d67);isIdentifier(_0x593d67['callee'])&&(_0x4f30f4||_0x3eacb5)&&_0x16d899['report']({'node':_0x593d67,'messageId':ruleName});}};},'create'));
5
+ var __defProp=Object['defineProperty'],__name=(_0x5c46f1,_0x19323d)=>__defProp(_0x5c46f1,'name',{'value':_0x19323d,'configurable':!![]});const ruleName='must-specify-second-generic-parameter-in-apipost-and-apiput';const ruleContent='\x0a###\x20**Must**\x20specify\x20second\x20generic\x20parameter\x20in\x20apiPost\x20and\x20apiPut\x0a\x0a####\x20Wrong\x0a\x0aconst\x20foo\x20=\x20apiPost<bar>(baz,\x20qux)\x20{}\x0a\x0a####\x20Correct\x0a\x0aconst\x20foo\x20=\x20apiPost<bar,\x20baz>(baz,\x20qux)\x20{}\x0a\x0a####\x20Why\x0a\x0aAdds\x20an\x20additional\x20level\x20of\x20type\x20checking\x20to\x20prevent\x20further\x20errors\x20and\x20type\x20inconsistencies.';var mustSpecifySecondGenericParameterInApipostAndApiput = createEslintRule(ruleName,ruleContent,__name(function create(_0x4d5515){return {'CallExpression'(_0x3626df){const _0x19bc6f=isNameMatch(_0x3626df['callee'],'apiPost')&&!hasCorrectCountOfGenericParameters(_0x3626df),_0x115caa=isNameMatch(_0x3626df['callee'],'apiPut')&&!hasCorrectCountOfGenericParameters(_0x3626df);isIdentifier(_0x3626df['callee'])&&(_0x19bc6f||_0x115caa)&&_0x4d5515['report']({'node':_0x3626df,'messageId':ruleName});}};},'create'));
6
6
 
7
7
  export { mustSpecifySecondGenericParameterInApipostAndApiput as default, ruleContent, ruleName };
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
+ import { ruleTypes, url } from '@flint/infra/constants/rules-meta';
2
3
  import { ESLintUtils } from '@typescript-eslint/utils';
3
4
  import { nodeTypes, isStringLiteral } from '@flint/infra/analysis';
4
- import { url } from '@flint/infra/constants/rules-meta';
5
5
 
6
- var __defProp=Object['defineProperty'],__name=(_0xfe9f18,_0x58b75e)=>__defProp(_0xfe9f18,'name',{'value':_0x58b75e,'configurable':!![]});const ruleName='must-use-nameof-for-props';const constants={'messageIds':{'mustUseNameOf':'mustUseNameOf'},'meta':{'type':'suggestion','docs':{'description':'Enforce\x20the\x20use\x20of\x20nameOf\x20function\x20for\x20Props\x20objects'},'messages':{'mustUseNameOf':'must-use-nameof-for-props\x0aMust\x20use\x20nameOf\x20function\x20for\x20Props\x20object\x20property\x20{{propertyName}}.\x0a\x0a###\x20**Must**\x20use\x20`nameOf()`\x20for\x20Props\x20object\x20property.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20fooProps\x20=\x20{\x0a\x20\x20title:\x20\x22title\x22\x0a}\x0a\x0a####\x20Correct\x0a\x0aconst\x20bazProps\x20=\x20{\x0a\x20\x20title:\x20nameOf(()\x20=>\x20someObject.title)\x0a}\x0a\x0a####\x20Why\x0a\x0aHardcoding\x20property\x20names\x20in\x20Props\x20objects\x20is\x20error-prone\x20and\x20not\x20type-safe.\x20Using\x20`nameOf`\x20ensures\x20consistency\x20with\x20the\x20actual\x20property\x20name,\x20helping\x20avoid\x20bugs\x20during\x20refactors.'},'schema':[]},'suffixes':{'props':'Props'},'functions':{'nameOf':'nameOf','nameOfWithType':'nameOfWithType'}},createRule=ESLintUtils['RuleCreator'](_0x306a14=>''+url+_0x306a14);function getVariableNameFromDeclarator(_0x195699){return _0x195699['id']['type']===nodeTypes['identifier']?_0x195699['id']['name']:'';}__name(getVariableNameFromDeclarator,'getVariableNameFromDeclarator');function checkVariableDeclarator(_0x269232){const _0xb3ca9=getVariableNameFromDeclarator(_0x269232);return _0xb3ca9['endsWith'](constants['suffixes']['props']);}__name(checkVariableDeclarator,'checkVariableDeclarator');function isPropsObjectDeclaration(_0x177666){let _0x54962f=![];const _0x5dde5a=_0x177666&&_0x177666['type']===nodeTypes['variableDeclarator'],_0x109ee1=_0x177666&&_0x177666['type']===nodeTypes['TSAsExpression'];if(_0x5dde5a)_0x54962f=checkVariableDeclarator(_0x177666);else {if(_0x109ee1){const _0x5ca063=_0x177666['parent'],_0x170a0f=_0x5ca063?.['type']===nodeTypes['variableDeclarator'];_0x170a0f&&(_0x54962f=checkVariableDeclarator(_0x5ca063));}}return _0x54962f;}__name(isPropsObjectDeclaration,'isPropsObjectDeclaration');function isNameOfCall(_0x18c59b){return _0x18c59b['type']===nodeTypes['callExpression']&&_0x18c59b['callee']['type']===nodeTypes['identifier']&&(_0x18c59b['callee']['name']===constants['functions']['nameOf']||_0x18c59b['callee']['name']===constants['functions']['nameOfWithType']);}__name(isNameOfCall,'isNameOfCall');function checkPropsObject(_0x519a0c,_0x3df247){for(const _0xe436c of _0x519a0c){if(_0xe436c['type']===nodeTypes['property']){const _0x34c041=_0xe436c['value'],_0x49cfa4=_0xe436c['key'];if(_0x49cfa4['type']===nodeTypes['identifier']||isStringLiteral(_0x49cfa4)){let _0x37f3e5;_0x49cfa4['type']===nodeTypes['identifier']?_0x37f3e5=_0x49cfa4['name']:_0x37f3e5=_0x49cfa4['value'],!isNameOfCall(_0x34c041)&&_0x3df247['report']({'node':_0xe436c,'messageId':constants['messageIds']['mustUseNameOf'],'data':{'propertyName':_0x37f3e5}});}}}}__name(checkPropsObject,'checkPropsObject');const mustUseNameOfForProps=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0xb01673){return {[nodeTypes['objectExpression']](_0xaade28){const _0x127bcc=isPropsObjectDeclaration(_0xaade28['parent']);if(!_0x127bcc)return;checkPropsObject(_0xaade28['properties'],_0xb01673);}};}});
6
+ var __defProp=Object['defineProperty'],__name=(_0x478502,_0x3ca863)=>__defProp(_0x478502,'name',{'value':_0x3ca863,'configurable':!![]});const ruleName='must-use-nameof-for-props';const constants={'messageIds':{'mustUseNameOf':'mustUseNameOf'},'meta':{'type':ruleTypes['suggestion'],'docs':{'description':'Enforce\x20the\x20use\x20of\x20nameOf\x20function\x20for\x20Props\x20objects'},'messages':{'mustUseNameOf':'must-use-nameof-for-props\x0aMust\x20use\x20nameOf\x20function\x20for\x20Props\x20object\x20property\x20{{propertyName}}.\x0a\x0a###\x20**Must**\x20use\x20`nameOf()`\x20for\x20Props\x20object\x20property.\x0a\x0a####\x20Wrong\x0a\x0aconst\x20fooProps\x20=\x20{\x0a\x20\x20title:\x20\x22title\x22\x0a}\x0a\x0a####\x20Correct\x0a\x0aconst\x20bazProps\x20=\x20{\x0a\x20\x20title:\x20nameOf(()\x20=>\x20someObject.title)\x0a}\x0a\x0a####\x20Why\x0a\x0aHardcoding\x20property\x20names\x20in\x20Props\x20objects\x20is\x20error-prone\x20and\x20not\x20type-safe.\x20Using\x20`nameOf`\x20ensures\x20consistency\x20with\x20the\x20actual\x20property\x20name,\x20helping\x20avoid\x20bugs\x20during\x20refactors.'},'schema':[]}},createRule=ESLintUtils['RuleCreator'](_0x341b45=>''+url+_0x341b45),mustUseNameOfForProps=createRule({'name':ruleName,'meta':constants['meta'],'defaultOptions':[],'create'(_0x14772e){return {[nodeTypes['objectExpression']](_0x284c17){const _0x1cd10a=isPropsObjectDeclaration(_0x284c17['parent']);if(!_0x1cd10a)return;checkPropsObject(_0x284c17['properties'],_0x14772e);}};}});function getVariableNameFromDeclarator(_0x40ff2c){return _0x40ff2c['id']['type']===nodeTypes['identifier']?_0x40ff2c['id']['name']:'';}__name(getVariableNameFromDeclarator,'getVariableNameFromDeclarator');function checkVariableDeclarator(_0x1cae1d){const _0x59eef8=getVariableNameFromDeclarator(_0x1cae1d);return _0x59eef8['endsWith']('Props');}__name(checkVariableDeclarator,'checkVariableDeclarator');function isPropsObjectDeclaration(_0x477614){let _0x443f13=![];const _0x1fa3d7=_0x477614&&_0x477614['type']===nodeTypes['variableDeclarator'],_0x15a9d8=_0x477614&&_0x477614['type']===nodeTypes['TSAsExpression'];if(_0x1fa3d7)_0x443f13=checkVariableDeclarator(_0x477614);else {if(_0x15a9d8){const _0x1905ad=_0x477614['parent'],_0x3b2679=_0x1905ad?.['type']===nodeTypes['variableDeclarator'];_0x3b2679&&(_0x443f13=checkVariableDeclarator(_0x1905ad));}}return _0x443f13;}__name(isPropsObjectDeclaration,'isPropsObjectDeclaration');function isNameOfCall(_0x3fadaf){return _0x3fadaf['type']===nodeTypes['callExpression']&&_0x3fadaf['callee']['type']===nodeTypes['identifier']&&(_0x3fadaf['callee']['name']==='nameOf'||_0x3fadaf['callee']['name']==='nameOfWithType');}__name(isNameOfCall,'isNameOfCall');function checkPropsObject(_0x535841,_0x596ac8){for(const _0xef6516 of _0x535841){if(_0xef6516['type']===nodeTypes['property']){const _0x16e3ee=_0xef6516['value'],_0x50fe4f=_0xef6516['key'];if(_0x50fe4f['type']===nodeTypes['identifier']||isStringLiteral(_0x50fe4f)){let _0x4ca9ba;_0x50fe4f['type']===nodeTypes['identifier']?_0x4ca9ba=_0x50fe4f['name']:_0x4ca9ba=_0x50fe4f['value'],!isNameOfCall(_0x16e3ee)&&_0x596ac8['report']({'node':_0xef6516,'messageId':constants['messageIds']['mustUseNameOf'],'data':{'propertyName':_0x4ca9ba}});}}}}__name(checkPropsObject,'checkPropsObject');
7
7
 
8
8
  export { mustUseNameOfForProps as default, ruleName };
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+ import { createEslintRule } from '@flint/infra/create-eslint-rule';
3
+ import { isStringType } from '@flint/infra/analysis/string-analysis';
4
+ import { nodeTypes, getSpecifierName } from '@flint/infra/analysis';
5
+ import { folders, packagesPath } from '../../../base-repo/app-constants/project-paths.js';
6
+ import { fileSuffixes } from '../../../base-repo/constants/internal-extensions.js';
7
+ import { importKindNames } from '../../../base-repo/constants/internal-common-strings.js';
8
+
9
+ var __defProp=Object['defineProperty'],__name=(_0x2362c9,_0x50bcb8)=>__defProp(_0x2362c9,'name',{'value':_0x50bcb8,'configurable':!![]});const ruleName='must-use-resource-provider-functions-to-get-resources-on-server';const ruleContent='\x0a###\x20**Must**\x20use\x20resource-provider\x20functions\x20to\x20get\x20resources\x20on\x20server\x0a\x0aFunctions\x20from\x20db\x20can\x20be\x20used\x20only\x20in\x20resource\x20provider\x0a\x0a####\x20Wrong\x0a\x0aimport\x20{\x20getResourcesByName\x20}\x20from\x20\x22@server/fd/fd-toolbox/db/db\x22;\x0a\x0aconst\x20resources\x20=\x20getResourcesByName(\x22Foo\x22);\x0a\x0a####\x20Correct\x0a\x0aimport\x20{\x20getResources\x20}\x20from\x20\x22@meta/server/services/resource-provider\x22;\x0a\x0aconst\x20resources\x20=\x20getResources(\x22Foo\x22,\x20getUuid());\x0a\x0a####\x20Why\x0a\x0aHelps\x20with\x20standardizing\x20getting\x20resources\x20and\x20preventing\x20bugs.',forbiddenImportSources=['@server/fd/fd-toolbox/db/db','@meta/server/db/db'],lowLevelDbFunctions=new Set(['getResourcesByName','getResourcesWithOData','findResourceById']),exemptionPatterns=[''+packagesPath['packagesMeta']+folders['server']+'/','resource-provider',fileSuffixes['dotSpecDot'],folders['testInfra'],'seeding','migrations'];function isExemptFile(_0x1e6d10){if(!_0x1e6d10)return ![];return _0x1e6d10['endsWith']('-db.ts')||exemptionPatterns['some'](_0x3abe46=>_0x1e6d10['includes'](_0x3abe46));}__name(isExemptFile,'isExemptFile');var mustUseResourceProviderFunctionsToGetResourcesOnServer = createEslintRule(ruleName,ruleContent,_0x46c27b=>{if(isExemptFile(_0x46c27b['filename']))return {};return {'ImportDeclaration'(_0x27abb1){const _0x4ffe55=_0x27abb1['source']['value'],_0x81226=!isStringType(_0x4ffe55)||_0x27abb1['importKind']===importKindNames['type']||!forbiddenImportSources['includes'](_0x4ffe55);if(_0x81226)return;const _0x3861fe=(_0x27abb1['specifiers']||[])['filter'](_0x422e8a=>_0x422e8a['type']===nodeTypes['importSpecifier']);for(const _0x2ee34b of _0x3861fe){const _0xd1534b=getSpecifierName(_0x2ee34b['imported']);_0xd1534b&&lowLevelDbFunctions['has'](_0xd1534b)&&_0x46c27b['report']({'node':_0x2ee34b,'messageId':ruleName});}}};});
10
+
11
+ export { mustUseResourceProviderFunctionsToGetResourcesOnServer as default, ruleName };