@seniorsistemas/angular-components 14.9.14 → 14.10.1

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 (243) hide show
  1. package/angular-components.module.d.ts +2 -1
  2. package/bundles/seniorsistemas-angular-components.umd.js +1516 -23
  3. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  4. package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
  5. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  6. package/components/code-editor/core/facades/core-facade.d.ts +32 -0
  7. package/components/code-editor/core/facades/linter-facade.d.ts +4 -0
  8. package/components/code-editor/core/models/enums/marker-severity.d.ts +5 -0
  9. package/components/code-editor/core/models/index.d.ts +2 -0
  10. package/components/code-editor/core/models/interfaces/marker.d.ts +7 -0
  11. package/components/code-editor/core/use-cases/core-linters.d.ts +6 -0
  12. package/components/code-editor/index.d.ts +3 -0
  13. package/components/code-editor/infra/cores/codemirror-6/codemirror-6-core.d.ts +26 -0
  14. package/components/code-editor/infra/cores/codemirror-6/languages/editor-languages.d.ts +6 -0
  15. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-empty-state.d.ts +10 -0
  16. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-loading-state.d.ts +10 -0
  17. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper-style.d.ts +6 -0
  18. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper.d.ts +15 -0
  19. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/index.d.ts +3 -0
  20. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-style.d.ts +6 -0
  21. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.d.ts +6 -0
  22. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.service.d.ts +8 -0
  23. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/base-configs.d.ts +2 -0
  24. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/grammar.d.ts +2 -0
  25. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/completion-types.d.ts +8 -0
  26. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/enum-type-order.d.ts +4 -0
  27. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/keywords.d.ts +10 -0
  28. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/meta-type.d.ts +17 -0
  29. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/request-types.d.ts +6 -0
  30. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/index.d.ts +19 -0
  31. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/completion-Item.d.ts +6 -0
  32. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/facade-metadata-name.d.ts +5 -0
  33. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/fields-order-by.d.ts +5 -0
  34. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/get-facade-metadata-by-path.d.ts +9 -0
  35. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-context-metadata-by-id.d.ts +9 -0
  36. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-expression-metadata.d.ts +11 -0
  37. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-facade-metadata-names.d.ts +10 -0
  38. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-expression-metadata.d.ts +10 -0
  39. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-context-metadata.d.ts +4 -0
  40. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-facade-metadata.d.ts +8 -0
  41. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-field-metadata.d.ts +7 -0
  42. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-page-request.d.ts +6 -0
  43. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/safe-http-communication.d.ts +12 -0
  44. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/tax-calculation-configs.d.ts +4 -0
  45. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation-language-configs.d.ts +7 -0
  46. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation.language.d.ts +2 -0
  47. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-language-configs.d.ts +6 -0
  48. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-safe-response.d.ts +8 -0
  49. package/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/index.d.ts +2 -0
  50. package/components/code-editor/infra/cores/codemirror-6/models/index.d.ts +2 -0
  51. package/components/code-editor/infra/cores/codemirror-6/models/types/diagnostic-severity.d.ts +1 -0
  52. package/components/code-editor/infra/cores/codemirror-6/models/types/editor-theme.d.ts +3 -0
  53. package/components/code-editor/infra/cores/codemirror-6/themes/editor-themes.d.ts +6 -0
  54. package/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/autocomplete-tooltip.d.ts +6 -0
  55. package/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/font-style.d.ts +6 -0
  56. package/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/line-counter.d.ts +6 -0
  57. package/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/scrollbars.d.ts +6 -0
  58. package/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-highlight-style.d.ts +2 -0
  59. package/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-style.d.ts +6 -0
  60. package/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-theme.d.ts +2 -0
  61. package/components/code-editor/infra/cores/codemirror-6/utils/convert-markers-to-diagnostics.d.ts +3 -0
  62. package/components/code-editor/infra/cores/codemirror-6/utils/index.d.ts +2 -0
  63. package/components/code-editor/infra/cores/codemirror-6/utils/is-current-position-inside-string.d.ts +1 -0
  64. package/components/code-editor/infra/utils/custom-http-client/custom-http-client.d.ts +34 -0
  65. package/components/code-editor/infra/utils/custom-http-client/json-response-formatters/format-blob-response.d.ts +6 -0
  66. package/components/code-editor/infra/utils/custom-http-client/json-response-formatters/format-json-response.d.ts +6 -0
  67. package/components/code-editor/infra/utils/custom-http-client/json-response-formatters/index.d.ts +2 -0
  68. package/components/code-editor/infra/utils/custom-translations/custom-translations-service.d.ts +25 -0
  69. package/components/code-editor/infra/utils/custom-translations/custom-translations.module.d.ts +12 -0
  70. package/components/code-editor/infra/utils/custom-translations/index.d.ts +2 -0
  71. package/components/code-editor/infra/utils/custom-translations/models/index.d.ts +1 -0
  72. package/components/code-editor/infra/utils/custom-translations/models/interfaces/translations.d.ts +5 -0
  73. package/components/code-editor/infra/utils/index.d.ts +2 -0
  74. package/components/code-editor/models/enums/languages.d.ts +3 -0
  75. package/components/code-editor/models/enums/themes.d.ts +3 -0
  76. package/components/code-editor/models/index.d.ts +3 -0
  77. package/components/code-editor/models/interfaces/editor-options.d.ts +5 -0
  78. package/components/code-editor/presentation/code-editor-component.d.ts +21 -0
  79. package/components/code-editor/presentation/code-editor-module.d.ts +2 -0
  80. package/esm2015/angular-components.module.js +4 -3
  81. package/esm2015/components/code-editor/core/facades/core-facade.js +85 -0
  82. package/esm2015/components/code-editor/core/facades/linter-facade.js +1 -0
  83. package/esm2015/components/code-editor/core/models/enums/marker-severity.js +7 -0
  84. package/esm2015/components/code-editor/core/models/index.js +3 -0
  85. package/esm2015/components/code-editor/core/models/interfaces/marker.js +1 -0
  86. package/esm2015/components/code-editor/core/use-cases/core-linters.js +9 -0
  87. package/esm2015/components/code-editor/index.js +5 -0
  88. package/esm2015/components/code-editor/infra/cores/codemirror-6/codemirror-6-core.js +97 -0
  89. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/editor-languages.js +15 -0
  90. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-empty-state.js +29 -0
  91. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-loading-state.js +29 -0
  92. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper-style.js +17 -0
  93. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper.js +75 -0
  94. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/index.js +4 -0
  95. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-style.js +35 -0
  96. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.js +341 -0
  97. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.service.js +34 -0
  98. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/base-configs.js +18 -0
  99. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/grammar.js +37 -0
  100. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/completion-types.js +10 -0
  101. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/enum-type-order.js +8 -0
  102. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/keywords.js +12 -0
  103. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/meta-type.js +34 -0
  104. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/request-types.js +8 -0
  105. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/index.js +7 -0
  106. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/completion-Item.js +1 -0
  107. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/facade-metadata-name.js +1 -0
  108. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/fields-order-by.js +1 -0
  109. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/get-facade-metadata-by-path.js +1 -0
  110. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-context-metadata-by-id.js +1 -0
  111. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-expression-metadata.js +1 -0
  112. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-facade-metadata-names.js +1 -0
  113. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-expression-metadata.js +1 -0
  114. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-context-metadata.js +1 -0
  115. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-facade-metadata.js +1 -0
  116. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-field-metadata.js +1 -0
  117. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-page-request.js +1 -0
  118. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/safe-http-communication.js +1 -0
  119. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/tax-calculation-configs.js +1 -0
  120. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation-language-configs.js +10 -0
  121. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation.language.js +9 -0
  122. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-language-configs.js +15 -0
  123. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-safe-response.js +16 -0
  124. package/esm2015/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/index.js +3 -0
  125. package/esm2015/components/code-editor/infra/cores/codemirror-6/models/index.js +1 -0
  126. package/esm2015/components/code-editor/infra/cores/codemirror-6/models/types/diagnostic-severity.js +1 -0
  127. package/esm2015/components/code-editor/infra/cores/codemirror-6/models/types/editor-theme.js +1 -0
  128. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/editor-themes.js +15 -0
  129. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/autocomplete-tooltip.js +61 -0
  130. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/font-style.js +29 -0
  131. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/line-counter.js +25 -0
  132. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/scrollbars.js +18 -0
  133. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-highlight-style.js +16 -0
  134. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-style.js +13 -0
  135. package/esm2015/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-theme.js +22 -0
  136. package/esm2015/components/code-editor/infra/cores/codemirror-6/utils/convert-markers-to-diagnostics.js +18 -0
  137. package/esm2015/components/code-editor/infra/cores/codemirror-6/utils/index.js +3 -0
  138. package/esm2015/components/code-editor/infra/cores/codemirror-6/utils/is-current-position-inside-string.js +6 -0
  139. package/esm2015/components/code-editor/infra/utils/custom-http-client/custom-http-client.js +80 -0
  140. package/esm2015/components/code-editor/infra/utils/custom-http-client/json-response-formatters/format-blob-response.js +13 -0
  141. package/esm2015/components/code-editor/infra/utils/custom-http-client/json-response-formatters/format-json-response.js +12 -0
  142. package/esm2015/components/code-editor/infra/utils/custom-http-client/json-response-formatters/index.js +3 -0
  143. package/esm2015/components/code-editor/infra/utils/custom-translations/custom-translations-service.js +37 -0
  144. package/esm2015/components/code-editor/infra/utils/custom-translations/custom-translations.module.js +30 -0
  145. package/esm2015/components/code-editor/infra/utils/custom-translations/index.js +3 -0
  146. package/esm2015/components/code-editor/infra/utils/custom-translations/models/index.js +1 -0
  147. package/esm2015/components/code-editor/infra/utils/custom-translations/models/interfaces/translations.js +1 -0
  148. package/esm2015/components/code-editor/infra/utils/index.js +3 -0
  149. package/esm2015/components/code-editor/models/enums/languages.js +5 -0
  150. package/esm2015/components/code-editor/models/enums/themes.js +5 -0
  151. package/esm2015/components/code-editor/models/index.js +4 -0
  152. package/esm2015/components/code-editor/models/interfaces/editor-options.js +1 -0
  153. package/esm2015/components/code-editor/presentation/code-editor-component.js +91 -0
  154. package/esm2015/components/code-editor/presentation/code-editor-module.js +27 -0
  155. package/esm2015/components/table/table-column/table-columns.component.js +4 -3
  156. package/esm2015/public-api.js +2 -1
  157. package/esm2015/seniorsistemas-angular-components.js +5 -1
  158. package/esm5/angular-components.module.js +4 -3
  159. package/esm5/components/code-editor/core/facades/core-facade.js +96 -0
  160. package/esm5/components/code-editor/core/facades/linter-facade.js +1 -0
  161. package/esm5/components/code-editor/core/models/enums/marker-severity.js +7 -0
  162. package/esm5/components/code-editor/core/models/index.js +3 -0
  163. package/esm5/components/code-editor/core/models/interfaces/marker.js +1 -0
  164. package/esm5/components/code-editor/core/use-cases/core-linters.js +13 -0
  165. package/esm5/components/code-editor/index.js +5 -0
  166. package/esm5/components/code-editor/infra/cores/codemirror-6/codemirror-6-core.js +109 -0
  167. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/editor-languages.js +19 -0
  168. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-empty-state.js +29 -0
  169. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-loading-state.js +29 -0
  170. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper-style.js +17 -0
  171. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/autocomplete-state-wrapper/autocomplete-state-wrapper.js +68 -0
  172. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-states/index.js +4 -0
  173. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete-style.js +35 -0
  174. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.js +355 -0
  175. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/autocomplete/autocomplete.service.js +46 -0
  176. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/base-configs.js +19 -0
  177. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/extensions/base-configs/grammar.js +2 -0
  178. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/completion-types.js +10 -0
  179. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/enum-type-order.js +8 -0
  180. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/keywords.js +12 -0
  181. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/meta-type.js +34 -0
  182. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/enums/request-types.js +8 -0
  183. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/index.js +7 -0
  184. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/completion-Item.js +1 -0
  185. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/facade-metadata-name.js +1 -0
  186. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/fields-order-by.js +1 -0
  187. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/get-facade-metadata-by-path.js +1 -0
  188. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-context-metadata-by-id.js +1 -0
  189. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-expression-metadata.js +1 -0
  190. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/list-facade-metadata-names.js +1 -0
  191. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-expression-metadata.js +1 -0
  192. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-context-metadata.js +1 -0
  193. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-facade-metadata.js +1 -0
  194. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-front-field-metadata.js +1 -0
  195. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/rec-page-request.js +1 -0
  196. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/safe-http-communication.js +1 -0
  197. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/models/interfaces/tax-calculation-configs.js +1 -0
  198. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation-language-configs.js +14 -0
  199. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/tax-calculation.language.js +9 -0
  200. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-language-configs.js +15 -0
  201. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/get-safe-response.js +27 -0
  202. package/esm5/components/code-editor/infra/cores/codemirror-6/languages/tax-calculation/utils/index.js +3 -0
  203. package/esm5/components/code-editor/infra/cores/codemirror-6/models/index.js +1 -0
  204. package/esm5/components/code-editor/infra/cores/codemirror-6/models/types/diagnostic-severity.js +1 -0
  205. package/esm5/components/code-editor/infra/cores/codemirror-6/models/types/editor-theme.js +1 -0
  206. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/editor-themes.js +19 -0
  207. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/autocomplete-tooltip.js +61 -0
  208. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/font-style.js +30 -0
  209. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/line-counter.js +25 -0
  210. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/sds-light/extensions/scrollbars.js +18 -0
  211. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-highlight-style.js +16 -0
  212. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-style.js +13 -0
  213. package/esm5/components/code-editor/infra/cores/codemirror-6/themes/sds-light/sds-light-theme.js +22 -0
  214. package/esm5/components/code-editor/infra/cores/codemirror-6/utils/convert-markers-to-diagnostics.js +18 -0
  215. package/esm5/components/code-editor/infra/cores/codemirror-6/utils/index.js +3 -0
  216. package/esm5/components/code-editor/infra/cores/codemirror-6/utils/is-current-position-inside-string.js +6 -0
  217. package/esm5/components/code-editor/infra/utils/custom-http-client/custom-http-client.js +126 -0
  218. package/esm5/components/code-editor/infra/utils/custom-http-client/json-response-formatters/format-blob-response.js +21 -0
  219. package/esm5/components/code-editor/infra/utils/custom-http-client/json-response-formatters/format-json-response.js +14 -0
  220. package/esm5/components/code-editor/infra/utils/custom-http-client/json-response-formatters/index.js +3 -0
  221. package/esm5/components/code-editor/infra/utils/custom-translations/custom-translations-service.js +41 -0
  222. package/esm5/components/code-editor/infra/utils/custom-translations/custom-translations.module.js +31 -0
  223. package/esm5/components/code-editor/infra/utils/custom-translations/index.js +3 -0
  224. package/esm5/components/code-editor/infra/utils/custom-translations/models/index.js +1 -0
  225. package/esm5/components/code-editor/infra/utils/custom-translations/models/interfaces/translations.js +1 -0
  226. package/esm5/components/code-editor/infra/utils/index.js +3 -0
  227. package/esm5/components/code-editor/models/enums/languages.js +5 -0
  228. package/esm5/components/code-editor/models/enums/themes.js +5 -0
  229. package/esm5/components/code-editor/models/index.js +4 -0
  230. package/esm5/components/code-editor/models/interfaces/editor-options.js +1 -0
  231. package/esm5/components/code-editor/presentation/code-editor-component.js +101 -0
  232. package/esm5/components/code-editor/presentation/code-editor-module.js +30 -0
  233. package/esm5/components/table/table-column/table-columns.component.js +4 -3
  234. package/esm5/public-api.js +2 -1
  235. package/esm5/seniorsistemas-angular-components.js +5 -1
  236. package/fesm2015/seniorsistemas-angular-components.js +1437 -41
  237. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  238. package/fesm5/seniorsistemas-angular-components.js +1537 -42
  239. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  240. package/package.json +11 -2
  241. package/public-api.d.ts +1 -0
  242. package/seniorsistemas-angular-components.d.ts +4 -0
  243. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -1,15 +1,15 @@
1
- import { __decorate, __param } from 'tslib';
2
- import { Input, Component, NgModule, EventEmitter, HostBinding, Output, ViewChild, Renderer2, HostListener, Directive, Injectable, Pipe, forwardRef, ViewEncapsulation, TemplateRef, ViewContainerRef, ComponentFactoryResolver, ChangeDetectorRef, Inject, ContentChild, ApplicationRef, Injector, ElementRef, ContentChildren } from '@angular/core';
1
+ import { __decorate, __param, __awaiter } from 'tslib';
2
+ import { Input, Component, NgModule, EventEmitter, HostBinding, Output, ViewChild, Renderer2, HostListener, Directive, Injectable, Pipe, forwardRef, ViewEncapsulation, TemplateRef, ViewContainerRef, ComponentFactoryResolver, ChangeDetectorRef, InjectionToken, Inject, ContentChild, ApplicationRef, Injector, ElementRef, ContentChildren } from '@angular/core';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { BreadcrumbModule as BreadcrumbModule$1 } from 'primeng/breadcrumb';
5
5
  import { NavigationEnd, PRIMARY_OUTLET, ActivatedRoute, Router, RouterModule } from '@angular/router';
6
- import { Subject, of, from, forkJoin, throwError } from 'rxjs';
7
- import { takeUntil, filter, tap, map, switchMap, catchError, delay, finalize, debounceTime, repeat } from 'rxjs/operators';
6
+ import { Subject, of, from, forkJoin, throwError, ReplaySubject } from 'rxjs';
7
+ import { takeUntil, filter, tap, map, switchMap, catchError, delay, finalize, debounceTime, repeat, take } from 'rxjs/operators';
8
8
  import { TieredMenu, TieredMenuModule } from 'primeng/tieredmenu';
9
9
  import { TooltipModule } from 'primeng/tooltip';
10
10
  import { DomHandler } from 'primeng/dom';
11
11
  import { Calendar, CalendarModule } from 'primeng/calendar';
12
- import { trigger, state, style, transition, animate, group, query, animateChild } from '@angular/animations';
12
+ import { trigger, state, style as style$7, transition, animate, group, query, animateChild } from '@angular/animations';
13
13
  import { FormsModule, ReactiveFormsModule, NG_VALUE_ACCESSOR, FormControl, FormGroup, NG_VALIDATORS, Validators, FormArray } from '@angular/forms';
14
14
  import { HttpClient, HttpEventType, HttpClientModule } from '@angular/common/http';
15
15
  import { Hotkey, HotkeysService, HotkeyModule } from 'angular2-hotkeys';
@@ -18,7 +18,7 @@ import { AutoComplete, AutoCompleteModule } from 'primeng/autocomplete';
18
18
  import { Dialog, DialogModule } from 'primeng/dialog';
19
19
  import { Table, TableService, RowToggler, TableModule as TableModule$1 } from 'primeng/table';
20
20
  import { applyMask, AlignmentOptions, CurrencyMaskDirective as CurrencyMaskDirective$1 } from '@seniorsistemas/ng2-currency-mask';
21
- import { user } from '@seniorsistemas/senior-platform-data';
21
+ import { user, service } from '@seniorsistemas/senior-platform-data';
22
22
  import * as moment_ from 'moment';
23
23
  import { CookieService } from 'ngx-cookie-service';
24
24
  import { CurrencyMaskDirective } from 'ng2-currency-mask';
@@ -42,6 +42,15 @@ import * as elementResizeDetectorMaker_ from 'element-resize-detector';
42
42
  import { FocusTrapFactory, A11yModule } from '@angular/cdk/a11y';
43
43
  import { ScrollPanelModule } from 'primeng/scrollpanel';
44
44
  import { Sidebar, SidebarModule as SidebarModule$1 } from 'primeng/sidebar';
45
+ import { EditorView } from '@codemirror/view';
46
+ import { StateField, StateEffect, EditorState } from '@codemirror/state';
47
+ import { setDiagnostics } from '@codemirror/lint';
48
+ import { LRLanguage, LanguageSupport } from '@codemirror/language';
49
+ import { buildParser } from '@lezer/generator';
50
+ import { styleTags, tags, HighlightStyle } from '@codemirror/highlight';
51
+ import { autocompletion, pickedCompletion, startCompletion } from '@codemirror/autocomplete';
52
+ import { showTooltip } from '@codemirror/tooltip';
53
+ import { lineNumbers } from '@codemirror/gutter';
45
54
 
46
55
  let BreadcrumbComponent = class BreadcrumbComponent {
47
56
  constructor(activatedRoute, router) {
@@ -878,11 +887,11 @@ CollapseLinkComponent = CollapseLinkComponent_1 = __decorate([
878
887
  template: "<div *ngIf=\"!collapsed\" @collapseContent (@collapseContent.done)=\"onToggleDone()\">\n <ng-content></ng-content>\n</div>\n\n<button [id]=\"buttonId\" type=\"button\" class=\"s-collapse-button\" (click)=\"toggle()\" [disabled]=\"disabled\">\n <span class=\"s-button-icon fa\" [ngClass]=\"{'fa-caret-down': collapsed, 'fa-caret-up': !collapsed}\"\n aria-hidden=\"true\"></span>\n <span class=\"s-button-text\">{{ collapsed ? collapsedLabel : expandedLabel }}</span>\n</button>\n",
879
888
  animations: [
880
889
  trigger("collapseContent", [
881
- state("void", style({
890
+ state("void", style$7({
882
891
  height: 0,
883
892
  opacity: 0,
884
893
  })),
885
- state("*", style({
894
+ state("*", style$7({
886
895
  height: "*",
887
896
  opacity: 1,
888
897
  })),
@@ -2176,20 +2185,20 @@ LookupComponent = LookupComponent_1 = __decorate([
2176
2185
  encapsulation: ViewEncapsulation.None,
2177
2186
  animations: [
2178
2187
  trigger("collapseContent", [
2179
- state("hidden", style({
2188
+ state("hidden", style$7({
2180
2189
  width: "10px",
2181
2190
  padding: 0,
2182
2191
  })),
2183
- state("visible", style({
2192
+ state("visible", style$7({
2184
2193
  width: "*",
2185
2194
  })),
2186
2195
  transition("visible <=> hidden", [group([query("@childCollapseContent", animateChild()), animate("{{transitionParams}}")])]),
2187
2196
  ]),
2188
2197
  trigger("childCollapseContent", [
2189
- state(":leave", style({
2198
+ state(":leave", style$7({
2190
2199
  opacity: 0,
2191
2200
  })),
2192
- state(":enter", style({
2201
+ state(":enter", style$7({
2193
2202
  opacity: 1,
2194
2203
  })),
2195
2204
  transition("* <=> *", animate("{{transitionParams}}")),
@@ -3436,6 +3445,25 @@ var EnumBadgeColors;
3436
3445
  EnumBadgeColors["BLUE"] = "sds-semantic-blue";
3437
3446
  })(EnumBadgeColors || (EnumBadgeColors = {}));
3438
3447
 
3448
+ var AngularComponentsModule_1;
3449
+ const HostProjectConfigsInjectionToken = new InjectionToken("hostProjectConfigs");
3450
+ let AngularComponentsModule = AngularComponentsModule_1 = class AngularComponentsModule {
3451
+ static forRoot(config) {
3452
+ return {
3453
+ ngModule: AngularComponentsModule_1,
3454
+ providers: [
3455
+ {
3456
+ provide: HostProjectConfigsInjectionToken,
3457
+ useValue: config
3458
+ }
3459
+ ]
3460
+ };
3461
+ }
3462
+ };
3463
+ AngularComponentsModule = AngularComponentsModule_1 = __decorate([
3464
+ NgModule({})
3465
+ ], AngularComponentsModule);
3466
+
3439
3467
  let TableColumnsComponent = class TableColumnsComponent {
3440
3468
  constructor(viewContainerRef, translate, hostProjectConfigs) {
3441
3469
  this.viewContainerRef = viewContainerRef;
@@ -3626,7 +3654,7 @@ let TableColumnsComponent = class TableColumnsComponent {
3626
3654
  TableColumnsComponent.ctorParameters = () => [
3627
3655
  { type: ViewContainerRef },
3628
3656
  { type: TranslateService },
3629
- { type: undefined, decorators: [{ type: Inject, args: ["hostProjectConfigs",] }] }
3657
+ { type: undefined, decorators: [{ type: Inject, args: [HostProjectConfigsInjectionToken,] }] }
3630
3658
  ];
3631
3659
  __decorate([
3632
3660
  ViewChild("columnsTemplate", { static: true })
@@ -3646,7 +3674,7 @@ TableColumnsComponent = __decorate([
3646
3674
  selector: "s-table-columns",
3647
3675
  styles: [":host{display:none}"]
3648
3676
  }),
3649
- __param(2, Inject("hostProjectConfigs"))
3677
+ __param(2, Inject(HostProjectConfigsInjectionToken))
3650
3678
  ], TableColumnsComponent);
3651
3679
 
3652
3680
  var TokenListComponent_1;
@@ -5857,13 +5885,13 @@ ObjectCardComponent = ObjectCardComponent_1 = __decorate([
5857
5885
  template: "<div [id]=\"id\" class=\"container\">\n <div\n [id]=\"id + '-main-container'\"\n class=\"main-container\"\n [ngClass]=\"{\n 'with-hidden-fields': fields.length > maxVisibleFields,\n 'with-visible-fields': fields.length && maxVisibleFields\n }\"\n >\n <div class=\"object-content\">\n <div class=\"s-object-card-main\"><ng-content select=\"s-object-card-main\"></ng-content></div>\n\n <div class=\"divider\" *ngIf=\"maxVisibleFields && fields.length\"></div>\n\n <div *ngFor=\"let field of (fields.toArray() | slice: 0:maxVisibleFields)\" class=\"s-object-card-field\">\n <ng-container *ngTemplateOutlet=\"field.content\"></ng-container>\n </div>\n </div>\n\n <div\n [id]=\"id + '-expand-icon-container'\"\n class=\"expand-icon-container\"\n (click)=\"toggle()\"\n [pTooltip]=\"expanded ? collapseTooltip : expandTooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n >\n <span [id]=\"id + '-expand-icon'\" class=\"expand-icon fa\" [ngClass]=\"{ 'fa-minus': expanded, 'fa-plus': !expanded }\"></span>\n </div>\n </div>\n\n <div [id]=\"id + '-expandable-container'\" [@expandableContent]=\"expanded\" class=\"expandable-container\">\n <div class=\"ui-g ui-g-12\">\n <ng-container *ngFor=\"let field of (fields.toArray() | slice: maxVisibleFields:fields.length)\">\n <div class=\"ui-g-{{getExpandedFieldWidth()}}\">\n <div class=\"s-object-card-field\"><ng-container *ngTemplateOutlet=\"field.content\"></ng-container></div>\n </div>\n </ng-container>\n </div>\n </div>\n</div>\n",
5858
5886
  animations: [
5859
5887
  trigger("expandableContent", [
5860
- state("*", style({
5888
+ state("*", style$7({
5861
5889
  height: "0",
5862
5890
  })),
5863
- state("false", style({
5891
+ state("false", style$7({
5864
5892
  height: "0",
5865
5893
  })),
5866
- state("true", style({
5894
+ state("true", style$7({
5867
5895
  height: "*",
5868
5896
  })),
5869
5897
  transition("* => true", animate("200ms ease-out")),
@@ -6184,30 +6212,30 @@ StepsComponent = StepsComponent_1 = __decorate([
6184
6212
  },
6185
6213
  animations: [
6186
6214
  trigger("beforeActiveDesative", [
6187
- state("active", style({
6215
+ state("active", style$7({
6188
6216
  "background-position": "left bottom",
6189
6217
  })),
6190
- state("desactive", style({
6218
+ state("desactive", style$7({
6191
6219
  "background-position": "right bottom",
6192
6220
  })),
6193
6221
  transition("active => desactive", [animate("50ms 100ms linear")]),
6194
6222
  transition("desactive => active", [animate("50ms 250ms linear")]),
6195
6223
  ]),
6196
6224
  trigger("activeDesative", [
6197
- state("active", style({
6225
+ state("active", style$7({
6198
6226
  "background-position": "left bottom",
6199
6227
  })),
6200
- state("desactive", style({
6228
+ state("desactive", style$7({
6201
6229
  "background-position": "right bottom",
6202
6230
  })),
6203
6231
  transition("active => desactive", [animate("100ms 150ms linear")]),
6204
6232
  transition("desactive => active", [animate("100ms 150ms linear")]),
6205
6233
  ]),
6206
6234
  trigger("afterActiveDesative", [
6207
- state("active", style({
6235
+ state("active", style$7({
6208
6236
  "background-position": "left bottom",
6209
6237
  })),
6210
- state("desactive", style({
6238
+ state("desactive", style$7({
6211
6239
  "background-position": "right bottom",
6212
6240
  })),
6213
6241
  transition("active => desactive", [animate("50ms 250ms linear")]),
@@ -6491,13 +6519,13 @@ GlobalSearchComponent = __decorate([
6491
6519
  template: "<div class=\"ui-inputgroup\">\n <input #globalSearch class=\"global-search__input\" [(ngModel)]=\"search\" (ngModelChange)=\"onChange()\" pInputText\n [placeholder]=\"placeholder\" (focus)=\"focusIn()\" (blur)=\"focusOut()\">\n <span class=\"ui-inputgroup-addon global-search__span\"><em class=\"fas fa-search\"></em></span>\n <div class=\"global-search__modal\" *ngIf=\"wasSearched\">\n <div *sLoadingState=\"isLoading && !isModalLoading\" class=\"global-search__loader\">\n <div class=\"global-search__container\" *ngIf=\"dropdownItens && dropdownItens.length > 0 || isLoading\">\n <div *ngIf=\"dropdownItens && dropdownItens.length > 0\">\n <div class=\"global-search__modal--total-itens-title\">\n <span class=\"ui-g-11 no-space\">{{totalItensLabel}}</span>\n <span class=\"ui-g-1 no-space global-search__modal--total-itens-title-icon\" (click)=\"close()\"><em\n class=\"fas fa-times\"></em></span>\n </div>\n <div class=\"no-space global-search__dropdown--itens\"\n [@expandableContent]=\"expanded\">\n <ng-container *ngFor=\"let item of dropdownItens\">\n <div class=\"s-object-card-field no-space global-search__dropdown--itens-container\">\n <ng-container *ngTemplateOutlet=\"item.content\"></ng-container>\n </div>\n </ng-container>\n </div>\n <div *ngIf=\"showFooter\" class=\"ui-g-12 global-search__modal--footer\">\n <s-button class=\"global-search__show-more\" (click)=\"showMore()\" priority=\"link\">\n {{showMoreLabel}}\n </s-button>\n </div>\n </div>\n </div>\n <s-empty-state *ngIf=\"(!dropdownItens || dropdownItens.length==0) && !isLoading\" [title]=\"emptyTitle\"\n [description]=\"emptyDescription\" ngClass=\"global-search__empty-state--icon\"\n [iconClass]=\"(emptyIcon ? emptyIcon : 'fas fa-search')\">\n </s-empty-state>\n </div>\n </div>\n <div *ngIf=\"wasSearched\" class=\"global-search__background\" (click)=\"close()\"></div>\n</div>\n",
6492
6520
  animations: [
6493
6521
  trigger("expandableContent", [
6494
- state("*", style({
6522
+ state("*", style$7({
6495
6523
  height: "0",
6496
6524
  })),
6497
- state("false", style({
6525
+ state("false", style$7({
6498
6526
  height: "0",
6499
6527
  })),
6500
- state("true", style({
6528
+ state("true", style$7({
6501
6529
  height: "*",
6502
6530
  })),
6503
6531
  transition("* => true", animate("200ms ease-out")),
@@ -6586,27 +6614,1395 @@ GlobalSearchModule = __decorate([
6586
6614
  })
6587
6615
  ], GlobalSearchModule);
6588
6616
 
6589
- var AngularComponentsModule_1;
6590
- let AngularComponentsModule = AngularComponentsModule_1 = class AngularComponentsModule {
6591
- static forRoot(config) {
6592
- return {
6593
- ngModule: AngularComponentsModule_1,
6594
- providers: [
6595
- {
6596
- provide: "hostProjectConfigs",
6597
- useValue: config
6617
+ var Languages;
6618
+ (function (Languages) {
6619
+ Languages["TaxCalculation"] = "TaxCalculation";
6620
+ })(Languages || (Languages = {}));
6621
+
6622
+ var Themes;
6623
+ (function (Themes) {
6624
+ Themes["SDSLight"] = "SDSLight";
6625
+ })(Themes || (Themes = {}));
6626
+
6627
+ /* Enums */
6628
+
6629
+ class CoreLinters {
6630
+ static getLinter(language) {
6631
+ const languageLinterFactory = CoreLinters._LINTERS.get(language);
6632
+ if (languageLinterFactory)
6633
+ return languageLinterFactory();
6634
+ }
6635
+ }
6636
+ CoreLinters._LINTERS = new Map([]);
6637
+
6638
+ class CoreFacade {
6639
+ constructor() {
6640
+ this.$onCoreFinishLoad = new ReplaySubject(1);
6641
+ this.$onCodeChange = new Subject();
6642
+ this.$onCodeValidityChange = new Subject();
6643
+ this._completionItems = [];
6644
+ this._lastCodeEmitted = "";
6645
+ }
6646
+ changeEditorOptions(options) {
6647
+ if (options) {
6648
+ if (typeof options !== "object")
6649
+ throw new Error("Editor's options must be an EditorOptions object");
6650
+ this.validateLanguage(options.language);
6651
+ this.validateTheme(options.theme);
6652
+ this.setLinter(options.language);
6653
+ this.setCoreEditorOptions(options);
6654
+ }
6655
+ }
6656
+ changeCode(code) {
6657
+ const safeCode = this.getSafeCode(code);
6658
+ if (safeCode !== this._lastCodeEmitted) {
6659
+ this.setCode(safeCode);
6660
+ }
6661
+ }
6662
+ getOnCoreFinishLoadObservable() {
6663
+ return this.$onCoreFinishLoad.asObservable();
6664
+ }
6665
+ getOnCodeChangeObservable() {
6666
+ return this.$onCodeChange.asObservable();
6667
+ }
6668
+ getOnCodeValidityChangeObservable() {
6669
+ return this.$onCodeValidityChange.asObservable();
6670
+ }
6671
+ notifyCoreFinishLoad() {
6672
+ this.$onCoreFinishLoad.next();
6673
+ }
6674
+ notifyCodeChange(code) {
6675
+ const safeCode = this.getSafeCode(code);
6676
+ if (safeCode !== this._lastCodeEmitted) {
6677
+ this._lastCodeEmitted = safeCode;
6678
+ this.$onCodeChange.next(safeCode);
6679
+ this.validateCode(safeCode);
6680
+ }
6681
+ }
6682
+ updateCompletionItems(items) {
6683
+ this._completionItems = items || [];
6684
+ this.validateCode(this._lastCodeEmitted);
6685
+ }
6686
+ setLinter(language) {
6687
+ this._linter = CoreLinters.getLinter(language);
6688
+ }
6689
+ validateCode(code) {
6690
+ return __awaiter(this, void 0, void 0, function* () {
6691
+ if (this._linter) {
6692
+ const markers = yield this._linter.lint(code, this._completionItems);
6693
+ this.highlightCode(markers);
6694
+ this.notifyCodeValidityChange(!markers.length);
6695
+ }
6696
+ });
6697
+ }
6698
+ notifyCodeValidityChange(validity) {
6699
+ if (validity !== this._lastCodeValidityEmitted) {
6700
+ this._lastCodeValidityEmitted = validity;
6701
+ this.$onCodeValidityChange.next(validity);
6702
+ }
6703
+ }
6704
+ validateLanguage(language) {
6705
+ const languages = Object.values(Languages);
6706
+ if (language && !languages.includes(language))
6707
+ throw new Error(`The informed language "${language}" is not supported`);
6708
+ }
6709
+ validateTheme(theme) {
6710
+ const themes = Object.values(Themes);
6711
+ if (theme && !themes.includes(theme))
6712
+ throw new Error(`The informed theme "${theme}" is not supported`);
6713
+ }
6714
+ getSafeCode(code) {
6715
+ return typeof code === "string" ? code : "";
6716
+ }
6717
+ }
6718
+
6719
+ let CodeEditorComponent = class CodeEditorComponent {
6720
+ constructor(coreFacade) {
6721
+ this.coreFacade = coreFacade;
6722
+ this._ngUnsubscribe = new Subject();
6723
+ this.codeChange = new EventEmitter();
6724
+ this.isCodeValidChange = new EventEmitter();
6725
+ this.onCodeChange = new EventEmitter();
6726
+ this.onComponentFinishLoad = new EventEmitter();
6727
+ }
6728
+ set editorOptions(options) {
6729
+ this.coreFacade.changeEditorOptions(options);
6730
+ }
6731
+ set code(code) {
6732
+ this.coreFacade.changeCode(code);
6733
+ }
6734
+ ngOnInit() {
6735
+ this.coreFacade.initCore();
6736
+ this.setupCoreListeners();
6737
+ }
6738
+ ngAfterViewInit() {
6739
+ this.setCoreWrapperElement();
6740
+ }
6741
+ ngOnDestroy() {
6742
+ this.coreFacade.destroyCore();
6743
+ this._ngUnsubscribe.next();
6744
+ this._ngUnsubscribe.complete();
6745
+ }
6746
+ setCoreWrapperElement() {
6747
+ this.coreFacade.setCoreWrapperElement(this.coreWrapperElement.nativeElement);
6748
+ }
6749
+ setupCoreListeners() {
6750
+ this.coreFacade
6751
+ .getOnCoreFinishLoadObservable()
6752
+ .pipe(take(1))
6753
+ .subscribe(() => this.onComponentFinishLoad.emit());
6754
+ this.coreFacade
6755
+ .getOnCodeChangeObservable()
6756
+ .pipe(takeUntil(this._ngUnsubscribe))
6757
+ .subscribe(code => {
6758
+ this.codeChange.emit(code);
6759
+ this.onCodeChange.emit(code);
6760
+ });
6761
+ this.coreFacade
6762
+ .getOnCodeValidityChangeObservable()
6763
+ .pipe(takeUntil(this._ngUnsubscribe))
6764
+ .subscribe(validity => {
6765
+ this.isCodeValidChange.emit(validity);
6766
+ });
6767
+ }
6768
+ };
6769
+ CodeEditorComponent.ctorParameters = () => [
6770
+ { type: CoreFacade }
6771
+ ];
6772
+ __decorate([
6773
+ ViewChild("coreWrapper")
6774
+ ], CodeEditorComponent.prototype, "coreWrapperElement", void 0);
6775
+ __decorate([
6776
+ Input()
6777
+ ], CodeEditorComponent.prototype, "editorOptions", null);
6778
+ __decorate([
6779
+ Input()
6780
+ ], CodeEditorComponent.prototype, "code", null);
6781
+ __decorate([
6782
+ Output()
6783
+ ], CodeEditorComponent.prototype, "codeChange", void 0);
6784
+ __decorate([
6785
+ Input()
6786
+ ], CodeEditorComponent.prototype, "isCodeValid", void 0);
6787
+ __decorate([
6788
+ Output()
6789
+ ], CodeEditorComponent.prototype, "isCodeValidChange", void 0);
6790
+ __decorate([
6791
+ Output()
6792
+ ], CodeEditorComponent.prototype, "onCodeChange", void 0);
6793
+ __decorate([
6794
+ Output()
6795
+ ], CodeEditorComponent.prototype, "onComponentFinishLoad", void 0);
6796
+ CodeEditorComponent = __decorate([
6797
+ Component({
6798
+ selector: "s-code-editor",
6799
+ template: `<div #coreWrapper class="core-wrapper"></div>`,
6800
+ styles: [".core-wrapper{height:100%}"]
6801
+ })
6802
+ ], CodeEditorComponent);
6803
+
6804
+ var parserGrammar = `
6805
+ @top Script { statement+ }
6806
+
6807
+ statement[@isGroup=Statement] {
6808
+ Keyword |
6809
+ String |
6810
+ Number
6811
+ }
6812
+
6813
+ @tokens {
6814
+ String { '"' (![\\n"])* '"'? }
6815
+
6816
+ Number { std.digit+ }
6817
+
6818
+ identifierChar { std.asciiLetter | $[_$\u{a1}-\u{10ffff}] }
6819
+
6820
+ word { identifierChar (identifierChar | std.digit)* }
6821
+
6822
+ identifier { word }
6823
+ }
6824
+
6825
+ Keyword {
6826
+ kw<"SE">
6827
+ kw<"ENTAO">
6828
+ kw<"FIM_SE">
6829
+ kw<"SENAO">
6830
+ kw<"NAO">
6831
+ kw<"CONTENHA">
6832
+ kw<"OU">
6833
+ kw<"E">
6834
+ }
6835
+
6836
+ kw<term> { @specialize[@name={term}]<identifier, term> }
6837
+
6838
+ @detectDelim
6839
+ `;
6840
+
6841
+ var EnumTypeOrder;
6842
+ (function (EnumTypeOrder) {
6843
+ // Tipo de ordenação - Crescente
6844
+ EnumTypeOrder["ASC"] = "ASC";
6845
+ // Tipo de ordenação - Decrescente
6846
+ EnumTypeOrder["DESC"] = "DESC";
6847
+ })(EnumTypeOrder || (EnumTypeOrder = {}));
6848
+
6849
+ var MetaType;
6850
+ (function (MetaType) {
6851
+ // Entity
6852
+ MetaType["ENTITY"] = "ENTITY";
6853
+ // String
6854
+ MetaType["STRING"] = "STRING";
6855
+ // Integer
6856
+ MetaType["INTEGER"] = "INTEGER";
6857
+ // Double
6858
+ MetaType["DOUBLE"] = "DOUBLE";
6859
+ // Long
6860
+ MetaType["LONG"] = "LONG";
6861
+ // BigDecimal
6862
+ MetaType["BIGDECIMAL"] = "BIGDECIMAL";
6863
+ // UUID
6864
+ MetaType["UUID"] = "UUID";
6865
+ // Date
6866
+ MetaType["DATE"] = "DATE";
6867
+ // DateTime
6868
+ MetaType["DATETIME"] = "DATETIME";
6869
+ // Time
6870
+ MetaType["TIME"] = "TIME";
6871
+ // Boolean
6872
+ MetaType["BOOLEAN"] = "BOOLEAN";
6873
+ // List
6874
+ MetaType["LIST"] = "LIST";
6875
+ // Enum
6876
+ MetaType["ENUM"] = "ENUM";
6877
+ // CustomExpression
6878
+ MetaType["CUSTOM_EXPRESSION"] = "CUSTOM_EXPRESSION";
6879
+ // PublicExpression
6880
+ MetaType["PUBLIC_EXPRESSION"] = "PUBLIC_EXPRESSION";
6881
+ })(MetaType || (MetaType = {}));
6882
+
6883
+ var RequestTypes;
6884
+ (function (RequestTypes) {
6885
+ RequestTypes[RequestTypes["ListContextMetadataById"] = 0] = "ListContextMetadataById";
6886
+ RequestTypes[RequestTypes["ListExpressionMetadata"] = 1] = "ListExpressionMetadata";
6887
+ RequestTypes[RequestTypes["ListFacadeMetadataNames"] = 2] = "ListFacadeMetadataNames";
6888
+ RequestTypes[RequestTypes["GetFacadeMetadataByPath"] = 3] = "GetFacadeMetadataByPath";
6889
+ })(RequestTypes || (RequestTypes = {}));
6890
+
6891
+ var CompletionTypes;
6892
+ (function (CompletionTypes) {
6893
+ CompletionTypes["Keyword"] = "keyword";
6894
+ CompletionTypes["Context"] = "context";
6895
+ CompletionTypes["Expression"] = "expression";
6896
+ CompletionTypes["UserExpression"] = "userExpression";
6897
+ CompletionTypes["Entity"] = "entity";
6898
+ CompletionTypes["FinalValue"] = "finalValue";
6899
+ })(CompletionTypes || (CompletionTypes = {}));
6900
+
6901
+ var Keywords;
6902
+ (function (Keywords) {
6903
+ Keywords["SE"] = "SE";
6904
+ Keywords["SENAO"] = "SENAO";
6905
+ Keywords["CONTENHA"] = "CONTENHA";
6906
+ Keywords["ENTAO"] = "ENTAO";
6907
+ Keywords["FIM_SE"] = "FIM_SE";
6908
+ Keywords["NAO"] = "NAO";
6909
+ Keywords["E"] = "E";
6910
+ Keywords["OU"] = "OU";
6911
+ })(Keywords || (Keywords = {}));
6912
+
6913
+ /* Enums */
6914
+
6915
+ const baseConfigs = LRLanguage.define({
6916
+ parser: buildParser(parserGrammar)
6917
+ .configure({
6918
+ props: [
6919
+ styleTags({
6920
+ [Object.values(Keywords).join(" ")]: tags.keyword,
6921
+ "String": tags.string,
6922
+ "Number": tags.number,
6923
+ })
6924
+ ]
6925
+ })
6926
+ });
6927
+
6928
+ /**
6929
+ * Formats a JSON response to a JS object
6930
+ * @param response The response to format
6931
+ * @returns A JS object based on the response's body
6932
+ */
6933
+ function formatJsonResponse(response) {
6934
+ return __awaiter(this, void 0, void 0, function* () {
6935
+ return response.json();
6936
+ });
6937
+ }
6938
+
6939
+ /**
6940
+ * Formats a Blob response to a JS object
6941
+ * @param response The response to format
6942
+ * @returns A JS object based on the response's body
6943
+ */
6944
+ function formatBlobResponse(response) {
6945
+ return __awaiter(this, void 0, void 0, function* () {
6946
+ const textResponse = yield (yield response.blob()).text();
6947
+ return JSON.parse(textResponse);
6948
+ });
6949
+ }
6950
+
6951
+ /**
6952
+ * Custom HttpClient for cases when is not possible to use the Angular's HttpClient
6953
+ */
6954
+ class CustomHttpClient {
6955
+ /**
6956
+ * Executes a Http Get
6957
+ * @param url Url to execute the Get on
6958
+ * @param init Optional additional configs
6959
+ * @returns Whether a Promise<T> on request success or an error in request fail
6960
+ */
6961
+ static GET(url, init = {}) {
6962
+ return __awaiter(this, void 0, void 0, function* () {
6963
+ const response = yield this.interceptRequest(url, Object.assign(Object.assign({}, init), { method: "GET" }));
6964
+ return this.formatResponse(response);
6965
+ });
6966
+ }
6967
+ /**
6968
+ * Executes a Http Post
6969
+ * @param url Url to execute the Post on
6970
+ * @param body Info to send to server on Post
6971
+ * @param init Optional additional configs
6972
+ * @returns Whether a Promise<T> on request success or an error in request fail
6973
+ */
6974
+ static POST(url, body, init = {}) {
6975
+ return __awaiter(this, void 0, void 0, function* () {
6976
+ const headers = new Headers(init.headers);
6977
+ headers.append("Content-Type", "application/json");
6978
+ headers.append("Accept", "application/json");
6979
+ const response = yield this.interceptRequest(url, Object.assign(Object.assign({}, init), { method: "POST", body: JSON.stringify(body), headers }));
6980
+ return this.formatResponse(response);
6981
+ });
6982
+ }
6983
+ /**
6984
+ * Intercepts the original request to add a required header for Senior in case of a internal request
6985
+ * @param url Url from the original request
6986
+ * @param originalReq Configs from the original request
6987
+ * @returns Whether a Promise<Response> if the request was made successfully or an error
6988
+ */
6989
+ static interceptRequest(url, originalReq = {}) {
6990
+ return __awaiter(this, void 0, void 0, function* () {
6991
+ try {
6992
+ if (!url.includes("://")) {
6993
+ const restUrl = yield service.getRestUrl();
6994
+ const authHeader = yield user.getAuthHeader();
6995
+ const headers = new Headers(originalReq.headers);
6996
+ headers.append("Authorization", authHeader);
6997
+ const request = new Request(restUrl + url, Object.assign(Object.assign({}, originalReq), { headers }));
6998
+ return fetch(request);
6598
6999
  }
6599
- ]
6600
- };
7000
+ return fetch(url, originalReq);
7001
+ }
7002
+ catch (err) {
7003
+ throw new Error(`Error fetching requested URL: ${err}`);
7004
+ }
7005
+ });
7006
+ }
7007
+ /**
7008
+ * Formats the request response to an object<T> or {}
7009
+ * @param response The response to be formatted
7010
+ * @returns Whether a Promise<T> if the response status is in the range 200-299 an error
7011
+ */
7012
+ static formatResponse(response) {
7013
+ return __awaiter(this, void 0, void 0, function* () {
7014
+ const contentType = response.headers.get("content-type");
7015
+ const formatter = CustomHttpClient._responseFormatterMap.get(contentType);
7016
+ const formattedContentType = formatter ? yield formatter(response) : {};
7017
+ if (response.ok)
7018
+ return formattedContentType;
7019
+ throw new Error(JSON.stringify(formattedContentType));
7020
+ });
7021
+ }
7022
+ }
7023
+ CustomHttpClient._responseFormatterMap = new Map([
7024
+ ["application/json", formatJsonResponse],
7025
+ ["application/octet-stream", formatBlobResponse]
7026
+ ]);
7027
+
7028
+ /**
7029
+ * Custom translator for cases when is not possible to use the "TranslateService" from "@ngx-translate/core"
7030
+ */
7031
+ class CustomTranslationsService {
7032
+ /**
7033
+ * Method used to get the translation for an key based on the host project's translations. Always use the first available language
7034
+ * @param key Key used to search the translation
7035
+ * @returns The translation for the informed key or the key in case there is no translation
7036
+ */
7037
+ static translate(key) {
7038
+ var _a, _b;
7039
+ if (key === undefined || key === null)
7040
+ return "";
7041
+ const translationKey = `${CustomTranslationsService._TRANSLATION_PREFIX}${key}`;
7042
+ const firstLanguageTranslations = (_a = Object.values(CustomTranslationsService._translations)[0]) !== null && _a !== void 0 ? _a : {};
7043
+ return (_b = firstLanguageTranslations[translationKey]) !== null && _b !== void 0 ? _b : translationKey;
7044
+ }
7045
+ /**
7046
+ * Method used to set the translations that will be used as base when calling the "translate" method
7047
+ * @param translations Translations to use as base
7048
+ */
7049
+ static setTranslations(translations) {
7050
+ CustomTranslationsService._translations = translations !== null && translations !== void 0 ? translations : {};
7051
+ }
7052
+ /**
7053
+ * Method used to set the prefix that will be used when calling the "translate" method
7054
+ * @param hostProjectConfigs The host project's configs used to create the prefix
7055
+ */
7056
+ static setTranslationsPrefix(hostProjectConfigs) {
7057
+ const { domain, service } = hostProjectConfigs !== null && hostProjectConfigs !== void 0 ? hostProjectConfigs : {};
7058
+ const prefix = `${domain}.${service}.`;
7059
+ CustomTranslationsService._TRANSLATION_PREFIX = prefix;
7060
+ }
7061
+ }
7062
+ CustomTranslationsService._translations = {};
7063
+ CustomTranslationsService._TRANSLATION_PREFIX = "";
7064
+
7065
+ /**
7066
+ * Responsible for setting up the translations that will be used by the "CustomTranslationsService".
7067
+ * Uses the host project's translations set by using the "TranslationsModule" from "@seniorsistemas/platform-components"
7068
+ */
7069
+ let CustomTranslationsModule = class CustomTranslationsModule {
7070
+ constructor(translate, hostProjectConfigs) {
7071
+ this.translate = translate;
7072
+ this.hostProjectConfigs = hostProjectConfigs;
7073
+ this.factoryTranslations(this.translate, this.hostProjectConfigs);
7074
+ }
7075
+ factoryTranslations(translate, hostProjectConfigs) {
7076
+ CustomTranslationsService.setTranslations(translate.translations);
7077
+ CustomTranslationsService.setTranslationsPrefix(hostProjectConfigs);
6601
7078
  }
6602
7079
  };
6603
- AngularComponentsModule = AngularComponentsModule_1 = __decorate([
6604
- NgModule({})
6605
- ], AngularComponentsModule);
7080
+ CustomTranslationsModule.ctorParameters = () => [
7081
+ { type: TranslateService },
7082
+ { type: undefined, decorators: [{ type: Inject, args: [HostProjectConfigsInjectionToken,] }] }
7083
+ ];
7084
+ CustomTranslationsModule = __decorate([
7085
+ NgModule(),
7086
+ __param(1, Inject(HostProjectConfigsInjectionToken))
7087
+ ], CustomTranslationsModule);
7088
+
7089
+ var MarkerSeverity;
7090
+ (function (MarkerSeverity) {
7091
+ MarkerSeverity[MarkerSeverity["Error"] = 0] = "Error";
7092
+ MarkerSeverity[MarkerSeverity["Info"] = 1] = "Info";
7093
+ MarkerSeverity[MarkerSeverity["Warning"] = 2] = "Warning";
7094
+ })(MarkerSeverity || (MarkerSeverity = {}));
7095
+
7096
+ /* Enums */
7097
+
7098
+ const diagnosticSeverityInMarkerSeverityMap = new Map([
7099
+ [MarkerSeverity.Error, "error"],
7100
+ [MarkerSeverity.Info, "info"],
7101
+ [MarkerSeverity.Warning, "warning"]
7102
+ ]);
7103
+ function convertMarkersToDiagnostics(markers, textLength) {
7104
+ return markers.map(marker => {
7105
+ var _a, _b;
7106
+ return ({
7107
+ from: marker.start || 0,
7108
+ to: marker.end || textLength,
7109
+ message: (_a = marker.message) !== null && _a !== void 0 ? _a : "",
7110
+ severity: (_b = diagnosticSeverityInMarkerSeverityMap.get(marker.severity)) !== null && _b !== void 0 ? _b : "error"
7111
+ });
7112
+ });
7113
+ }
7114
+
7115
+ function isCurrentPositionInsideString(stringBeforeCurrentPosition) {
7116
+ var _a;
7117
+ const doubleQuotesQuantity = ((_a = stringBeforeCurrentPosition.match(/"/g)) === null || _a === void 0 ? void 0 : _a.length) || 0;
7118
+ return doubleQuotesQuantity % 2 !== 0;
7119
+ }
7120
+
7121
+ class AutocompleteService {
7122
+ static listContextMetadataById(request, abortSignal) {
7123
+ return __awaiter(this, void 0, void 0, function* () {
7124
+ return CustomHttpClient.POST(`${AutocompleteService.BASE_URL}/queries/listContextMetadataById`, request, {
7125
+ signal: abortSignal
7126
+ });
7127
+ });
7128
+ }
7129
+ static listExpressionMetadata(request, abortSignal) {
7130
+ return __awaiter(this, void 0, void 0, function* () {
7131
+ return CustomHttpClient.POST(`${AutocompleteService.BASE_URL}/queries/listExpressionMetadata`, request, {
7132
+ signal: abortSignal
7133
+ });
7134
+ });
7135
+ }
7136
+ static listFacadeMetadataNames(request, abortSignal) {
7137
+ return __awaiter(this, void 0, void 0, function* () {
7138
+ return CustomHttpClient.POST(`${AutocompleteService.BASE_URL}/queries/listFacadeMetadataNames`, request, {
7139
+ signal: abortSignal
7140
+ });
7141
+ });
7142
+ }
7143
+ static getFacadeMetadataByPath(request, abortSignal) {
7144
+ return __awaiter(this, void 0, void 0, function* () {
7145
+ return CustomHttpClient.POST(`${AutocompleteService.BASE_URL}/queries/getFacadeMetadataByPath`, request, {
7146
+ signal: abortSignal
7147
+ });
7148
+ });
7149
+ }
7150
+ }
7151
+ AutocompleteService.BASE_URL = "platform/rule_metadata";
7152
+
7153
+ /**
7154
+ * Adds style to autocomplete's state-wrapper
7155
+ * @returns An extension containing the style
7156
+ */
7157
+ function style() {
7158
+ return EditorView.theme({
7159
+ ".s-code-editor-taxCalculation-autocomplete-ul": {
7160
+ "padding": ".75rem !important",
7161
+ },
7162
+ ".s-code-editor-taxCalculation-autocomplete-li": {
7163
+ cursor: "default !important",
7164
+ "line-height": "1.375em !important",
7165
+ },
7166
+ });
7167
+ }
7168
+
7169
+ let htmlElementToBeWrapped = null;
7170
+ /**
7171
+ * Adds a view updates's listener that creates an state over the autocomplete
7172
+ * @returns An extension containing everything needed to listen the updates and create the autocomplete's state
7173
+ */
7174
+ function autocompleteStateWrapper() {
7175
+ return [
7176
+ autocompleteStateWrapperStateField(),
7177
+ style()
7178
+ ];
7179
+ }
7180
+ /**
7181
+ * Shows a state on a non-clickable autocomplete item's format with an HTMLElement inside
7182
+ * @param element The HTMLElement to show inside the state
7183
+ */
7184
+ function showAutocompleteStateWrapper(element) {
7185
+ htmlElementToBeWrapped = element;
7186
+ CodeMirror6Core.updateEditorView();
7187
+ }
7188
+ /**
7189
+ * Removes a possible showed autocomplete state
7190
+ */
7191
+ function hideAutocompleteStateWrapper() {
7192
+ htmlElementToBeWrapped = null;
7193
+ CodeMirror6Core.updateEditorView();
7194
+ }
7195
+ /*
7196
+ * Creates and returns a StateField responsible for listening the view's change and to add the autocomplete state's wrapper
7197
+ */
7198
+ function autocompleteStateWrapperStateField() {
7199
+ return StateField.define({
7200
+ create: getAutocompleteStateWrapper,
7201
+ update(_, transaction) {
7202
+ return getAutocompleteStateWrapper(transaction.state);
7203
+ },
7204
+ provide(field) {
7205
+ return showTooltip.compute([field], state => state.field(field));
7206
+ }
7207
+ });
7208
+ }
7209
+ /*
7210
+ * Function responsible for creating the state's wrapper and returning the same as a Tooltip from "@codemirror/tooltip";
7211
+ * Only creates the Tooltip if the theres is element on the "htmlElementToBeWrapped" variable;
7212
+ * The same will also be removed when any view update is emitted;
7213
+ */
7214
+ function getAutocompleteStateWrapper(state) {
7215
+ if (!htmlElementToBeWrapped)
7216
+ return;
7217
+ const htmlElementToBeWrappedString = htmlElementToBeWrapped.outerHTML;
7218
+ const stateWrapper = {
7219
+ pos: state.selection.ranges[0].head,
7220
+ create: () => ({ dom: getAutocompleteStateWrapperDomElement(htmlElementToBeWrappedString) })
7221
+ };
7222
+ htmlElementToBeWrapped = null;
7223
+ return stateWrapper;
7224
+ }
7225
+ function getAutocompleteStateWrapperDomElement(elementToBeWrappedString) {
7226
+ const wrapperDiv = document.createElement("div");
7227
+ wrapperDiv.className = "cm-tooltip-autocomplete cm-tooltip";
7228
+ wrapperDiv.innerHTML =
7229
+ `
7230
+ <ul class="s-code-editor-taxCalculation-autocomplete-ul">
7231
+ <li class="s-code-editor-taxCalculation-autocomplete-li">
7232
+ ${elementToBeWrappedString}
7233
+ </li>
7234
+ </ul>
7235
+
7236
+ `;
7237
+ return wrapperDiv;
7238
+ }
7239
+
7240
+ let autocompleteLoadingStateHTMLElement;
7241
+ /**
7242
+ * Adds a loading-state over the autocomplete
7243
+ * @returns An extension containing everything needed to add the loading-state
7244
+ */
7245
+ function autocompleteLoadingState() {
7246
+ return [autocompleteStateWrapper()];
7247
+ }
7248
+ /**
7249
+ * Activates the loading state on the autocomplete
7250
+ */
7251
+ /*
7252
+ * Must set the "autocompleteLoadingStateHTMLElement" here for when the document is loaded we do not have
7253
+ * yet the "CustomTranslationsService" ready
7254
+ */
7255
+ function showAutocompleteLoadingState() {
7256
+ if (!autocompleteLoadingStateHTMLElement) {
7257
+ autocompleteLoadingStateHTMLElement = getAutocompleteLoadingStateHTMLElement();
7258
+ }
7259
+ showAutocompleteStateWrapper(autocompleteLoadingStateHTMLElement);
7260
+ }
7261
+ function getAutocompleteLoadingStateHTMLElement() {
7262
+ const loadingStateSpanWrapper = document.createElement("span");
7263
+ loadingStateSpanWrapper.innerText = CustomTranslationsService.translate("core_language_tax_calculation_fetching_suggestions");
7264
+ return loadingStateSpanWrapper;
7265
+ }
7266
+
7267
+ let autocompleteEmptyStateHTMLElement;
7268
+ /**
7269
+ * Adds an empty-state over the autocomplete
7270
+ * @returns An extension containing everything needed to add the empty-state
7271
+ */
7272
+ function autocompleteEmptyState() {
7273
+ return [autocompleteStateWrapper()];
7274
+ }
7275
+ /**
7276
+ * Activates the empty-state on the autocomplete
7277
+ */
7278
+ /*
7279
+ * Must set the "autocompleteEmptyStateHTMLElement" here for when the document is loaded we do not have
7280
+ * yet the "CustomTranslationsService" ready
7281
+ */
7282
+ function showAutocompleteEmptyState() {
7283
+ if (!autocompleteEmptyStateHTMLElement) {
7284
+ autocompleteEmptyStateHTMLElement = getAutocompleteEmptyStateHTMLElement();
7285
+ }
7286
+ showAutocompleteStateWrapper(autocompleteEmptyStateHTMLElement);
7287
+ }
7288
+ function getAutocompleteEmptyStateHTMLElement() {
7289
+ const emptyStateSpanWrapper = document.createElement("span");
7290
+ emptyStateSpanWrapper.innerText = CustomTranslationsService.translate("core_language_tax_calculation_no_suggestions");
7291
+ return emptyStateSpanWrapper;
7292
+ }
7293
+
7294
+ class TaxCalculationLanguageConfigs {
7295
+ static setConfigs(configs) {
7296
+ TaxCalculationLanguageConfigs.CONFIGS = JSON.parse(JSON.stringify(configs));
7297
+ }
7298
+ static getConfigs() {
7299
+ return TaxCalculationLanguageConfigs.CONFIGS;
7300
+ }
7301
+ }
7302
+ TaxCalculationLanguageConfigs.CONFIGS = { contexts: [] };
7303
+
7304
+ /**
7305
+ * Gets the configs for the TaxCalculationLanguage
7306
+ * @returns The configs
7307
+ */
7308
+ function getLanguageConfigs() {
7309
+ var _a;
7310
+ const configs = TaxCalculationLanguageConfigs.getConfigs();
7311
+ if (!((_a = configs.contexts) === null || _a === void 0 ? void 0 : _a.length))
7312
+ throw new Error("In order to use the TaxCalculation Language's autocomplete, "
7313
+ + "one must inform at least one context by using the "
7314
+ + "'TaxCalculationLanguageConfigs.setConfigs()'");
7315
+ return configs;
7316
+ }
7317
+
7318
+ /**
7319
+ * Wraps the request to return the same with an identification or undefined in case of error, so the promise will
7320
+ * always trigger the "then"
7321
+ * @param request Request to wrap
7322
+ * @returns The typed request's response
7323
+ */
7324
+ function getSafeResponse(request) {
7325
+ return __awaiter(this, void 0, void 0, function* () {
7326
+ try {
7327
+ return Object.assign(Object.assign({}, request), { response: yield request.request });
7328
+ }
7329
+ catch (_) { }
7330
+ });
7331
+ }
7332
+
7333
+ /**
7334
+ * Adds style to the autocomplete
7335
+ * @returns An extension containing the style
7336
+ */
7337
+ function style$1() {
7338
+ return EditorView.theme({
7339
+ ".cm-completionIcon": {
7340
+ "font-family": "'Font Awesome 5 Pro'",
7341
+ "font-weight": "900",
7342
+ },
7343
+ ".cm-completionIcon-keyword::after": {
7344
+ "content": getIconBasedOnUnicode("f084"),
7345
+ },
7346
+ ".cm-completionIcon-context::after": {
7347
+ "content": getIconBasedOnUnicode("f466"),
7348
+ },
7349
+ ".cm-completionIcon-expression::after": {
7350
+ "content": getIconBasedOnUnicode("f505"),
7351
+ },
7352
+ ".cm-completionIcon-userExpression::after": {
7353
+ "content": getIconBasedOnUnicode("f4ff"),
7354
+ },
7355
+ ".cm-completionIcon-entity::after": {
7356
+ "content": getIconBasedOnUnicode("f126"),
7357
+ },
7358
+ ".cm-completionIcon-finalValue::after": {
7359
+ "content": getIconBasedOnUnicode("f192"),
7360
+ },
7361
+ });
7362
+ }
7363
+ function getIconBasedOnUnicode(unicode) {
7364
+ return `"\\${unicode}"`;
7365
+ }
7366
+
7367
+ /**
7368
+ * Adds an autocomplete to the editor
7369
+ * @returns An extension containing everything needed to create the autocomplete
7370
+ */
7371
+ function autocomplete() {
7372
+ return [
7373
+ autocompletion({ override: [getCompletionResults] }),
7374
+ autocompleteLoadingState(),
7375
+ autocompleteEmptyState(),
7376
+ style$1(),
7377
+ ];
7378
+ }
7379
+ const TRANSLATION_PREFIX = "core_language_tax_calculation";
7380
+ let completionResults;
7381
+ /*
7382
+ * A function to be called when a key is pressed, the ctrl+space is triggered or when the search for completionResults is done.
7383
+ * If there is a completionResult, returns it, otherwise starts a new async search.
7384
+ * Will only execute the autocompletion if the current cursor position is not inside a string
7385
+ */
7386
+ function getCompletionResults(context) {
7387
+ const isCursorInsideString = isCurrentPositionInsideString(context.state.doc.toString().substring(0, context.pos));
7388
+ if (isCursorInsideString)
7389
+ return;
7390
+ if (completionResults) {
7391
+ const finalCompletionResults = Object.assign({}, completionResults);
7392
+ const codeLength = context.state.doc.toString().length;
7393
+ finalCompletionResults.from = finalCompletionResults.from > codeLength
7394
+ ? codeLength
7395
+ : finalCompletionResults.from;
7396
+ completionResults = null;
7397
+ return finalCompletionResults;
7398
+ }
7399
+ startCompletionResultsSearch(context);
7400
+ }
7401
+ let cancelLastCompletionSearch = () => { };
7402
+ const ɵ0 = cancelLastCompletionSearch;
7403
+ let codeMirrorViewElement;
7404
+ /*
7405
+ * Starts a new completionResults's async search.
7406
+ * Avoids the last search to be finished by calling the "cancelLastCompletionSearch" callback function
7407
+ */
7408
+ function startCompletionResultsSearch(context) {
7409
+ const token = new AbortController();
7410
+ setTimeout(() => {
7411
+ if (!token.signal.aborted) {
7412
+ showAutocompleteLoadingState();
7413
+ searchCompletionResults(context, token);
7414
+ }
7415
+ }, 500);
7416
+ /*
7417
+ * IMPORTANT: The following lines MUST be the way they are!
7418
+ * Here is being add the listener to any keydown/click event so when any key is downed or mouse clicked, we cancel the last request.
7419
+ * We do this to not show to the user a completionItem in an incorrect place of text, that can be done by either pressing the
7420
+ * arrows, home, end, backspace and etc. The flow is:
7421
+ * 1. We add an eventListener to keydown/click when the autocompletion's request is triggered;
7422
+ * 2. When any key/click is pressed, we remove the listener and cancel the last request by changing the isSearchCanceled on token object
7423
+ * to true;
7424
+ * 3. If any key that requires autocompletion is triggered, the flow repeats;
7425
+ */
7426
+ codeMirrorViewElement = CodeMirror6Core.getEditorView().contentDOM;
7427
+ cancelLastCompletionSearch = () => {
7428
+ codeMirrorViewElement.removeEventListener("keydown", cancelLastCompletionSearch);
7429
+ codeMirrorViewElement.removeEventListener("click", cancelLastCompletionSearch);
7430
+ token.abort();
7431
+ };
7432
+ codeMirrorViewElement.addEventListener("keydown", cancelLastCompletionSearch);
7433
+ codeMirrorViewElement.addEventListener("click", cancelLastCompletionSearch);
7434
+ }
7435
+ /*
7436
+ * Requests the necessary items to fill the completionResults, although it only really opens the autocomplete
7437
+ * box (by calling the "startCompletion()", that calls the "getCompletionResults") if the current search was not cancelled
7438
+ * by a new one
7439
+ */
7440
+ function searchCompletionResults(context, token) {
7441
+ var _a, _b, _c, _d;
7442
+ return __awaiter(this, void 0, void 0, function* () {
7443
+ const codeBeforeCursor = (_d = (_b = (_a = context === null || context === void 0 ? void 0 : context.state) === null || _a === void 0 ? void 0 : _a.doc) === null || _b === void 0 ? void 0 : _b.toString().substring(0, (_c = context === null || context === void 0 ? void 0 : context.pos) !== null && _c !== void 0 ? _c : 0)) !== null && _d !== void 0 ? _d : "";
7444
+ const filter = getFilter(codeBeforeCursor);
7445
+ const path = getPath(codeBeforeCursor, filter.length);
7446
+ const requests = getRequestsBasedOnPath(path, filter, token.signal);
7447
+ Promise
7448
+ .all(requests)
7449
+ .then(responses => {
7450
+ if (!token.signal.aborted) {
7451
+ const completions = [].concat(getKeywordsCompletions(path), getContextsCompletions(responses), getExpressionsCompletions(responses), getEntitiesCompletions(responses));
7452
+ const filteredCompletions = getFilteredCompletions(completions, filter);
7453
+ if (filteredCompletions.length) {
7454
+ const formattedCompletions = getFormattedCompletions(filteredCompletions, filter);
7455
+ const sortedCompletions = getSortedCompletions(formattedCompletions);
7456
+ completionResults = {
7457
+ from: context.pos,
7458
+ filter: false,
7459
+ options: sortedCompletions
7460
+ };
7461
+ startCompletion(CodeMirror6Core.getEditorView());
7462
+ }
7463
+ else {
7464
+ showAutocompleteEmptyState();
7465
+ }
7466
+ }
7467
+ });
7468
+ });
7469
+ }
7470
+ /*
7471
+ * Returns the filter in the code written.
7472
+ * For example in the code "controladoria.empresa", "empresa" would be the filter
7473
+ * and in "controladoria", "controladoria" would be the filter.
7474
+ * Allows only alphanumerics, underscore and hashtag on filter's start.
7475
+ * Does not allow spaces
7476
+ */
7477
+ function getFilter(string) {
7478
+ var _a, _b;
7479
+ if (string === undefined || string === null)
7480
+ return "";
7481
+ const filter = (_b = (_a = string.match(/(#|\.|)\w*$/)) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : "";
7482
+ return filter.replace(".", "").trim();
7483
+ }
7484
+ /*
7485
+ * Returns the path in the code written based on filter.
7486
+ * For example in the code "controladoria.empresa", "controladoria" would be the path
7487
+ * and in "controladoria", "" would be the path.
7488
+ * Does not allow spaces
7489
+ */
7490
+ function getPath(string, filterLength) {
7491
+ var _a, _b;
7492
+ if (string === undefined || string === null)
7493
+ return "";
7494
+ const stringWithoutPath = string.substring(0, string.length - filterLength);
7495
+ const path = (_b = (_a = stringWithoutPath.match(/(\w*\.)*$/)) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : "";
7496
+ return path.replace(/\.$/, "");
7497
+ }
7498
+ function getRequestsBasedOnPath(path, filter, abortSignal) {
7499
+ var _a;
7500
+ const languageConfigs = getLanguageConfigs();
7501
+ const requests = [];
7502
+ if (path === "") {
7503
+ requests.push({
7504
+ requestType: RequestTypes.ListContextMetadataById,
7505
+ request: AutocompleteService.listContextMetadataById({
7506
+ id: languageConfigs.contexts,
7507
+ }, abortSignal)
7508
+ });
7509
+ requests.push({
7510
+ requestType: RequestTypes.ListExpressionMetadata,
7511
+ request: AutocompleteService.listExpressionMetadata({
7512
+ context: languageConfigs.contexts,
7513
+ subcontext: (_a = languageConfigs.subContexts) !== null && _a !== void 0 ? _a : [],
7514
+ name: filter,
7515
+ pageRequest: {
7516
+ offset: 0,
7517
+ size: 20
7518
+ }
7519
+ }, abortSignal)
7520
+ });
7521
+ }
7522
+ else if (path.includes(".")) {
7523
+ const splittedPath = path.split(".");
7524
+ requests.push({
7525
+ requestType: RequestTypes.GetFacadeMetadataByPath,
7526
+ request: AutocompleteService.getFacadeMetadataByPath({
7527
+ context: splittedPath[0],
7528
+ entityName: splittedPath[1],
7529
+ fields: splittedPath[2] === undefined ? undefined : splittedPath.slice(2)
7530
+ }, abortSignal)
7531
+ });
7532
+ }
7533
+ else {
7534
+ requests.push({
7535
+ requestType: RequestTypes.ListFacadeMetadataNames,
7536
+ request: AutocompleteService.listFacadeMetadataNames({
7537
+ context: [path],
7538
+ name: filter,
7539
+ pageRequest: {
7540
+ offset: 0,
7541
+ size: 30
7542
+ }
7543
+ }, abortSignal)
7544
+ });
7545
+ }
7546
+ return requests.map(request => getSafeResponse(request));
7547
+ }
7548
+ function getKeywordsCompletions(path) {
7549
+ if (path !== "")
7550
+ return [];
7551
+ const completions = [
7552
+ {
7553
+ label: Keywords.SE,
7554
+ apply: "SE ()\nENTAO\n\tacao\nFIM_SE",
7555
+ },
7556
+ {
7557
+ label: Keywords.SENAO,
7558
+ apply: "SENAO\n\tacao",
7559
+ },
7560
+ {
7561
+ label: Keywords.CONTENHA,
7562
+ apply: "CONTENHA(condicao)",
7563
+ },
7564
+ {
7565
+ label: Keywords.ENTAO,
7566
+ apply: "ENTAO\n\tacao",
7567
+ },
7568
+ {
7569
+ label: Keywords.FIM_SE,
7570
+ apply: "FIM_SE ",
7571
+ },
7572
+ {
7573
+ label: Keywords.NAO,
7574
+ apply: "NAO ",
7575
+ },
7576
+ {
7577
+ label: Keywords.E,
7578
+ apply: "E ",
7579
+ },
7580
+ {
7581
+ label: Keywords.OU,
7582
+ apply: "OU "
7583
+ },
7584
+ ];
7585
+ return completions.map(completionItem => (Object.assign(Object.assign({}, completionItem), { detail: CustomTranslationsService.translate(`${TRANSLATION_PREFIX}_keyword`), type: CompletionTypes.Keyword })));
7586
+ }
7587
+ function getContextsCompletions(responses) {
7588
+ var _a, _b;
7589
+ const contextsResponse = responses.find(response => (response === null || response === void 0 ? void 0 : response.requestType) === RequestTypes.ListContextMetadataById);
7590
+ if (contextsResponse) {
7591
+ return ((_b = (_a = contextsResponse.response) === null || _a === void 0 ? void 0 : _a.contextMetadata) !== null && _b !== void 0 ? _b : [])
7592
+ .map(contextMetadata => ({
7593
+ label: contextMetadata.name,
7594
+ detail: CustomTranslationsService.translate(`${TRANSLATION_PREFIX}_context`),
7595
+ apply: contextMetadata.name,
7596
+ type: CompletionTypes.Context
7597
+ }));
7598
+ }
7599
+ return [];
7600
+ }
7601
+ function getExpressionsCompletions(responses) {
7602
+ var _a, _b;
7603
+ const expressionsResponse = responses.find(response => (response === null || response === void 0 ? void 0 : response.requestType) === RequestTypes.ListExpressionMetadata);
7604
+ if (expressionsResponse) {
7605
+ return ((_b = (_a = expressionsResponse.response) === null || _a === void 0 ? void 0 : _a.expressionMetadata) !== null && _b !== void 0 ? _b : [])
7606
+ .map(expressionMetadata => ({
7607
+ label: expressionMetadata.name,
7608
+ detail: CustomTranslationsService.translate(`${TRANSLATION_PREFIX}_${expressionMetadata.type === MetaType.PUBLIC_EXPRESSION
7609
+ ? "senior_expression"
7610
+ : "user_expression"}`),
7611
+ apply: expressionMetadata.name,
7612
+ info: expressionMetadata.description,
7613
+ type: expressionMetadata.type === MetaType.PUBLIC_EXPRESSION ? CompletionTypes.Expression : CompletionTypes.UserExpression
7614
+ }));
7615
+ }
7616
+ return [];
7617
+ }
7618
+ function getEntitiesCompletions(responses) {
7619
+ var _a, _b, _c, _d, _e;
7620
+ const facadesResponseFromList = responses.find(response => (response === null || response === void 0 ? void 0 : response.requestType) === RequestTypes.ListFacadeMetadataNames);
7621
+ if (facadesResponseFromList) {
7622
+ return ((_b = (_a = facadesResponseFromList.response) === null || _a === void 0 ? void 0 : _a.facadeMetadataNames) !== null && _b !== void 0 ? _b : [])
7623
+ .map(facade => ({
7624
+ label: facade.name,
7625
+ detail: CustomTranslationsService.translate(`${TRANSLATION_PREFIX}_entity`),
7626
+ apply: facade.name,
7627
+ type: CompletionTypes.Entity
7628
+ }));
7629
+ }
7630
+ const facadesResponseFromGet = responses.find(response => (response === null || response === void 0 ? void 0 : response.requestType) === RequestTypes.GetFacadeMetadataByPath);
7631
+ if (facadesResponseFromGet) {
7632
+ return ((_e = (_d = (_c = facadesResponseFromGet.response) === null || _c === void 0 ? void 0 : _c.facadeMetadata) === null || _d === void 0 ? void 0 : _d.fields) !== null && _e !== void 0 ? _e : [])
7633
+ .map(facade => ({
7634
+ label: facade.name,
7635
+ detail: CustomTranslationsService.translate(`${TRANSLATION_PREFIX}_${facade.type === MetaType.ENTITY
7636
+ ? "entity"
7637
+ : "field"}`),
7638
+ apply: facade.name,
7639
+ type: facade.type === MetaType.ENTITY ? CompletionTypes.Entity : CompletionTypes.FinalValue
7640
+ }));
7641
+ }
7642
+ return [];
7643
+ }
7644
+ /*
7645
+ * Filtering the completions to only deal with the necessary items
7646
+ */
7647
+ function getFilteredCompletions(completions, filter) {
7648
+ return completions
7649
+ .filter(completionItem => completionItem
7650
+ .label
7651
+ .toLowerCase()
7652
+ .startsWith(filter.toLowerCase()));
7653
+ }
7654
+ /*
7655
+ * Overwriting the completions's apply to remove the entire current written value and apply the the entire completion's apply
7656
+ */
7657
+ function getFormattedCompletions(completions, filter) {
7658
+ return completions
7659
+ .map(completionItem => (Object.assign(Object.assign({}, completionItem), { apply: getCompletionApply(filter, `${completionItem.apply}`) })));
7660
+ }
7661
+ function getCompletionApply(filter, oldApplyText) {
7662
+ return (view, completion, from, to) => {
7663
+ const newFrom = from - filter.length;
7664
+ view.dispatch({
7665
+ changes: {
7666
+ from: newFrom,
7667
+ to,
7668
+ insert: oldApplyText
7669
+ },
7670
+ selection: {
7671
+ anchor: newFrom + oldApplyText.length
7672
+ },
7673
+ userEvent: "input.complete",
7674
+ annotations: pickedCompletion.of(completion)
7675
+ });
7676
+ };
7677
+ }
7678
+ const completionsSortOrder = [
7679
+ CompletionTypes.Keyword,
7680
+ CompletionTypes.Context,
7681
+ CompletionTypes.UserExpression,
7682
+ CompletionTypes.Expression,
7683
+ CompletionTypes.Entity,
7684
+ CompletionTypes.FinalValue
7685
+ ];
7686
+ /*
7687
+ * Sorts the completions following the "completionsSortOrder" priority order
7688
+ */
7689
+ function getSortedCompletions(completions) {
7690
+ return completions.sort((x, y) => {
7691
+ const xPriority = completionsSortOrder.indexOf(x.type);
7692
+ const yPriority = completionsSortOrder.indexOf(y.type);
7693
+ return xPriority - yPriority;
7694
+ });
7695
+ }
7696
+
7697
+ function TaxCalculation() {
7698
+ return new LanguageSupport(baseConfigs, [
7699
+ autocomplete(),
7700
+ ]);
7701
+ }
7702
+
7703
+ class EditorLanguages {
7704
+ static getLanguage(language) {
7705
+ const languageSupportFactory = EditorLanguages._LANGUAGES.get(language);
7706
+ if (languageSupportFactory)
7707
+ return languageSupportFactory();
7708
+ return [];
7709
+ }
7710
+ }
7711
+ EditorLanguages._LANGUAGES = new Map([
7712
+ [Languages.TaxCalculation, TaxCalculation]
7713
+ ]);
7714
+
7715
+ /**
7716
+ * Adds style to the editor in general
7717
+ * @returns An extension containing the style
7718
+ */
7719
+ function style$2() {
7720
+ return EditorView.theme({
7721
+ "&.cm-editor.cm-focused": {
7722
+ outline: "none",
7723
+ },
7724
+ });
7725
+ }
7726
+
7727
+ const SDSLightHighlightStyle = HighlightStyle.define([
7728
+ {
7729
+ tag: tags.keyword,
7730
+ color: "#008080",
7731
+ },
7732
+ {
7733
+ tag: tags.string,
7734
+ color: "#9C3A3A",
7735
+ },
7736
+ {
7737
+ tag: tags.number,
7738
+ color: "#400753",
7739
+ },
7740
+ ]);
7741
+
7742
+ /**
7743
+ * Adds a vertical scrollbar when the editor's height overflows the parent's height
7744
+ * @returns An extension containing everything needed to add the scrollbar
7745
+ */
7746
+ function scrollbars() {
7747
+ return [
7748
+ style$3()
7749
+ ];
7750
+ }
7751
+ function style$3() {
7752
+ return EditorView.baseTheme({
7753
+ "&.cm-editor": {
7754
+ "height": "100%"
7755
+ },
7756
+ });
7757
+ }
7758
+
7759
+ /**
7760
+ * Adds style to editor'font
7761
+ * @returns An extension containing everything needed to add the font style
7762
+ */
7763
+ function fontStyle() {
7764
+ return [style$4()];
7765
+ }
7766
+ const generalFontStyle = {
7767
+ "font-family": "'Noto Sans Mono', 'sans-serif'",
7768
+ "font-style": "normal",
7769
+ "font-size": "1rem",
7770
+ };
7771
+ function style$4() {
7772
+ return EditorView.theme({
7773
+ ".cm-scroller": Object.assign(Object.assign({}, generalFontStyle), { "letter-spacing": "0", "line-height": "1.5em", "font-variation-settings": "'wght' 400", "color": "#333333" }),
7774
+ ".cm-tooltip.cm-tooltip-autocomplete > ul": Object.assign(Object.assign({}, generalFontStyle), { "font-variation-settings": "'wght' 300", "color": "#697882" }),
7775
+ ".cm-tooltip.cm-tooltip-autocomplete > ul .cm-completionLabel": {
7776
+ "line-height": "1.5em",
7777
+ "font-variation-settings": "'wght' 500",
7778
+ },
7779
+ ".cm-tooltip.cm-tooltip-autocomplete > ul .cm-completionDetail": {
7780
+ "font-size": "0.875em",
7781
+ "font-style": "normal",
7782
+ "margin-left": "0.75rem",
7783
+ },
7784
+ });
7785
+ }
7786
+
7787
+ /**
7788
+ * Adds a line counter
7789
+ * @returns An extension containing everything needed to add the line counter
7790
+ */
7791
+ function lineCounter() {
7792
+ return [
7793
+ lineNumbers(),
7794
+ style$5()
7795
+ ];
7796
+ }
7797
+ function style$5() {
7798
+ return EditorView.theme({
7799
+ ".cm-gutters": {
7800
+ "background-color": "#fff",
7801
+ "color": "#428BCA",
7802
+ "border-right": "none"
7803
+ },
7804
+ ".cm-gutter": {
7805
+ "padding": "0 2rem 0 2rem"
7806
+ }
7807
+ });
7808
+ }
7809
+
7810
+ /**
7811
+ * Adds styles to the autocomplete's tooltip
7812
+ * @returns An extension containing everything needed to add the style
7813
+ */
7814
+ function autocompleteTooltip() {
7815
+ return [style$6()];
7816
+ }
7817
+ function style$6() {
7818
+ return EditorView.baseTheme({
7819
+ ".cm-tooltip": {
7820
+ "border": "none !important",
7821
+ "border-radius": "4px",
7822
+ "background-color": "#E5EAEA !important",
7823
+ },
7824
+ ".cm-tooltip.cm-tooltip-autocomplete > ul[role='listbox']": {
7825
+ "padding": "1rem",
7826
+ },
7827
+ ".cm-tooltip.cm-tooltip-autocomplete > ul .cm-completionDetail": {
7828
+ "margin-left": ".75rem",
7829
+ },
7830
+ ".cm-tooltip.cm-tooltip-autocomplete > ul .cm-completionDetail::before": {
7831
+ "content": "'[ '",
7832
+ },
7833
+ ".cm-tooltip.cm-tooltip-autocomplete > ul .cm-completionDetail::after": {
7834
+ "content": "' ]'",
7835
+ },
7836
+ ".cm-tooltip.cm-tooltip-autocomplete > ul .cm-completionIcon": {
7837
+ "padding-right": 0,
7838
+ "margin-right": ".475rem",
7839
+ "width": "1rem",
7840
+ },
7841
+ ".cm-tooltip-autocomplete ul li[aria-selected]": {
7842
+ "border-radius": "4px",
7843
+ "background-color": "#5D96A2 !important",
7844
+ "color": "#fff !important",
7845
+ },
7846
+ ".cm-tooltip.cm-completionInfo.cm-completionInfo-right": {
7847
+ "border-radius": "3px",
7848
+ "box-shadow": "0 2px 4px -1px rgb(0 0 0 / 20%), 0 4px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%)",
7849
+ "background": "#495057 !important",
7850
+ "color": "#fff",
7851
+ "padding": ".5rem",
7852
+ "left": "101.6%",
7853
+ },
7854
+ ".cm-tooltip.cm-completionInfo.cm-completionInfo-right::before": {
7855
+ "content": "''",
7856
+ "position": "absolute",
7857
+ "width": 0,
7858
+ "height": 0,
7859
+ "top": ".8125rem",
7860
+ "left": "-.25rem",
7861
+ "margin-top": "-.25rem",
7862
+ "border-color": "transparent",
7863
+ "border-style": "solid",
7864
+ "border-right-color": "#495057",
7865
+ "border-width": ".25rem .25rem .25rem 0",
7866
+ },
7867
+ });
7868
+ }
7869
+
7870
+ /* General Style */
7871
+ function SDSLight() {
7872
+ return [
7873
+ [
7874
+ style$2(),
7875
+ scrollbars(),
7876
+ fontStyle(),
7877
+ lineCounter(),
7878
+ autocompleteTooltip()
7879
+ ],
7880
+ SDSLightHighlightStyle
7881
+ ];
7882
+ }
7883
+
7884
+ class EditorThemes {
7885
+ static getTheme(theme) {
7886
+ const EditorThemeFactory = EditorThemes._THEMES.get(theme);
7887
+ if (EditorThemeFactory)
7888
+ return EditorThemeFactory();
7889
+ return [];
7890
+ }
7891
+ }
7892
+ EditorThemes._THEMES = new Map([
7893
+ [Themes.SDSLight, SDSLight]
7894
+ ]);
7895
+
7896
+ class CodeMirror6Core extends CoreFacade {
7897
+ constructor() {
7898
+ super();
7899
+ /* These are necessary for the setCode and setEditorOptions can be called before view has been created */
7900
+ this._codeReceivedBeforeViewCreation = "";
7901
+ this._editorOptionsReceivedBeforeViewCreation = [];
7902
+ }
7903
+ static getEditorView() {
7904
+ return CodeMirror6Core._editorView;
7905
+ }
7906
+ static updateEditorView(...transactionSpecs) {
7907
+ CodeMirror6Core._editorView.dispatch(...transactionSpecs);
7908
+ }
7909
+ setCoreWrapperElement(element) {
7910
+ this.createEditorView(element);
7911
+ }
7912
+ setCode(code) {
7913
+ this.changeEditorContent(code);
7914
+ }
7915
+ initCore() {
7916
+ this.setObservablesListeners();
7917
+ }
7918
+ destroyCore() {
7919
+ this._codeReceivedBeforeViewCreation = "";
7920
+ CodeMirror6Core._editorView = null;
7921
+ CodeMirror6Core._ngUnsubscribe.next();
7922
+ CodeMirror6Core._ngUnsubscribe.complete();
7923
+ }
7924
+ setCoreEditorOptions(options) {
7925
+ const language = EditorLanguages.getLanguage(options.language);
7926
+ const theme = EditorThemes.getTheme(options.theme);
7927
+ if (CodeMirror6Core._editorView) {
7928
+ CodeMirror6Core.updateEditorView({
7929
+ effects: StateEffect.reconfigure.of([
7930
+ language,
7931
+ theme,
7932
+ this.getCodeChangeListenerExtension()
7933
+ ])
7934
+ });
7935
+ }
7936
+ else {
7937
+ this._editorOptionsReceivedBeforeViewCreation = [language, theme];
7938
+ }
7939
+ }
7940
+ highlightCode(markers) {
7941
+ const diagnostics = convertMarkersToDiagnostics(markers, CodeMirror6Core._editorView.state.doc.length);
7942
+ CodeMirror6Core.updateEditorView(setDiagnostics(CodeMirror6Core._editorView.state, diagnostics));
7943
+ }
7944
+ setObservablesListeners() {
7945
+ CodeMirror6Core.$onCompletionItemsUpdate
7946
+ .pipe(takeUntil(CodeMirror6Core._ngUnsubscribe))
7947
+ .subscribe(items => this.updateCompletionItems(items));
7948
+ }
7949
+ createEditorView(parentElement) {
7950
+ CodeMirror6Core._editorView = new EditorView({
7951
+ parent: parentElement,
7952
+ state: EditorState.create({
7953
+ doc: this._codeReceivedBeforeViewCreation,
7954
+ extensions: [
7955
+ this._editorOptionsReceivedBeforeViewCreation,
7956
+ this.getCodeChangeListenerExtension()
7957
+ ]
7958
+ })
7959
+ });
7960
+ this.notifyCoreFinishLoad();
7961
+ }
7962
+ getCodeChangeListenerExtension() {
7963
+ return EditorView.updateListener.of(update => update.docChanged && this.notifyCodeChange(update.state.doc.toString()));
7964
+ }
7965
+ changeEditorContent(code) {
7966
+ if (CodeMirror6Core._editorView) {
7967
+ CodeMirror6Core.updateEditorView({
7968
+ changes: {
7969
+ from: 0,
7970
+ to: CodeMirror6Core._editorView.state.doc.length,
7971
+ insert: code
7972
+ }
7973
+ });
7974
+ }
7975
+ else {
7976
+ this._codeReceivedBeforeViewCreation = code;
7977
+ }
7978
+ }
7979
+ }
7980
+ CodeMirror6Core.$onCompletionItemsUpdate = new Subject();
7981
+ CodeMirror6Core._ngUnsubscribe = new Subject();
7982
+ CodeMirror6Core._editorView = null;
7983
+
7984
+ let CodeEditorModule = class CodeEditorModule {
7985
+ };
7986
+ CodeEditorModule = __decorate([
7987
+ NgModule({
7988
+ imports: [
7989
+ CommonModule,
7990
+ CustomTranslationsModule,
7991
+ ],
7992
+ declarations: [CodeEditorComponent],
7993
+ exports: [CodeEditorComponent],
7994
+ providers: [
7995
+ {
7996
+ provide: CoreFacade,
7997
+ useClass: CodeMirror6Core
7998
+ }
7999
+ ]
8000
+ })
8001
+ ], CodeEditorModule);
6606
8002
 
6607
8003
  /**
6608
8004
  * Generated bundle index. Do not edit.
6609
8005
  */
6610
8006
 
6611
- export { AngularComponentsModule, AutocompleteField, BignumberField, BignumberInputDirective, BignumberInputModule, BooleanField, BooleanOptionsLabel, BreadcrumbComponent, BreadcrumbModule, Breakpoints, ButtonComponent, ButtonModule, ButtonPriority, ButtonSize, CalendarField, CalendarLocaleOptions, CalendarMaskDirective, CalendarMaskModule, ChipsField, CollapseLinkComponent, CollapseLinkModule, ControlErrorsComponent, ControlErrorsModule, CurrencyField, CustomFieldsComponent, CustomFieldsModule, CustomFieldsService, DEFAULT_CALENDAR_LOCALE_OPTIONS, DEFAULT_LOCALE_OPTIONS, DEFAULT_NUMBER_LOCALE_OPTIONS, DynamicConfig, DynamicFormComponent, DynamicFormModule, DynamicType, EditableOverlayDirective, EditableOverlayModule, EmptyStateComponent, EmptyStateModule, EnumBadgeColors, EnumColumnFieldType, ExportUtils, Field, FieldType, Fieldset, FileUploadComponent, FileUploadModule, FormField, GlobalSearchComponent, GlobalSearchDropdownItemComponent, GlobalSearchModule, GlobalSearchSizeEnum, ImageCropperComponent, ImageCropperModule, ImageCropperService, InfoSignDirective, InfoSignModule, LoadingStateComponent, LoadingStateDirective, LoadingStateModule, LocaleModule, LocaleOptions, LocaleService, LocalizedCurrencyPipe, LocalizedCurrencyPipeOptions, LocalizedDateImpurePipe, LocalizedDatePipe, LocalizedNumberInputDirective, LocalizedNumberInputModule, LocalizedNumberPipe, LocalizedTimeImpurePipe, LocalizedTimePipe, LongPressDirective, LookupComponent, LookupField, MaskFormatterModule, MaskFormatterPipe, MouseEventsModule, NavigationDirective, NumberAlignmentOption, NumberField, NumberInputDirective, NumberInputModule, NumberLocaleOptions, ObjectCardComponent, ObjectCardFieldComponent, ObjectCardMainComponent, ObjectCardModule, Option, ProductHeaderComponent, ProductHeaderModule, RadioButtonField, RationButtonOption, RowTogllerDirective, Section, SelectField, SelectOption, SidebarComponent, SidebarModule, StatsCardComponent, StatsCardModule, StepState, StepsComponent, StepsModule, Structure, TableHeaderCheckboxComponent, TableHeaderCheckboxModule, TableModule, TextAreaField, TextField, ThumbnailComponent, ThumbnailModule, ThumbnailSize, TileComponent, TileModule, TokenListComponent, TokenListModule, ValidateErrors, LocalizedCurrencyImpurePipe as ɵa, LocalizedBignumberPipe as ɵb, DecimalField as ɵba, StructureModule as ɵbb, HeaderComponent as ɵbc, FooterComponent as ɵbd, InfoSignComponent as ɵbe, NumberLocaleOptions as ɵbf, ThumbnailService as ɵbg, InfiniteScrollModule as ɵbh, InfiniteScrollDirective as ɵbi, LocalizedBignumberImpurePipe as ɵc, TokenListModule as ɵd, TableColumnsComponent as ɵe, InfoSignModule as ɵf, AutocompleteFieldComponent as ɵg, BooleanFieldComponent as ɵh, CalendarFieldComponent as ɵi, ChipsFieldComponent as ɵj, CurrencyFieldComponent as ɵk, BaseFieldComponent as ɵl, DynamicFieldComponent as ɵm, DynamicFormDirective as ɵn, FieldsetComponent as ɵo, FileUploadComponent$1 as ɵp, LookupFieldComponent as ɵq, NumberFieldComponent as ɵr, BignumberFieldComponent as ɵs, RadioButtonComponent as ɵt, RowComponent as ɵu, SectionComponent as ɵv, SelectFieldComponent as ɵw, TextAreaFieldComponent as ɵx, TextFieldComponent as ɵy };
8007
+ export { AngularComponentsModule, AutocompleteField, BignumberField, BignumberInputDirective, BignumberInputModule, BooleanField, BooleanOptionsLabel, BreadcrumbComponent, BreadcrumbModule, Breakpoints, ButtonComponent, ButtonModule, ButtonPriority, ButtonSize, CalendarField, CalendarLocaleOptions, CalendarMaskDirective, CalendarMaskModule, ChipsField, CodeEditorModule, CollapseLinkComponent, CollapseLinkModule, ControlErrorsComponent, ControlErrorsModule, CurrencyField, CustomFieldsComponent, CustomFieldsModule, CustomFieldsService, DEFAULT_CALENDAR_LOCALE_OPTIONS, DEFAULT_LOCALE_OPTIONS, DEFAULT_NUMBER_LOCALE_OPTIONS, DynamicConfig, DynamicFormComponent, DynamicFormModule, DynamicType, EditableOverlayDirective, EditableOverlayModule, EmptyStateComponent, EmptyStateModule, EnumBadgeColors, EnumColumnFieldType, ExportUtils, Field, FieldType, Fieldset, FileUploadComponent, FileUploadModule, FormField, GlobalSearchComponent, GlobalSearchDropdownItemComponent, GlobalSearchModule, GlobalSearchSizeEnum, HostProjectConfigsInjectionToken, ImageCropperComponent, ImageCropperModule, ImageCropperService, InfoSignDirective, InfoSignModule, Languages, LoadingStateComponent, LoadingStateDirective, LoadingStateModule, LocaleModule, LocaleOptions, LocaleService, LocalizedCurrencyPipe, LocalizedCurrencyPipeOptions, LocalizedDateImpurePipe, LocalizedDatePipe, LocalizedNumberInputDirective, LocalizedNumberInputModule, LocalizedNumberPipe, LocalizedTimeImpurePipe, LocalizedTimePipe, LongPressDirective, LookupComponent, LookupField, MaskFormatterModule, MaskFormatterPipe, MouseEventsModule, NavigationDirective, NumberAlignmentOption, NumberField, NumberInputDirective, NumberInputModule, NumberLocaleOptions, ObjectCardComponent, ObjectCardFieldComponent, ObjectCardMainComponent, ObjectCardModule, Option, ProductHeaderComponent, ProductHeaderModule, RadioButtonField, RationButtonOption, RowTogllerDirective, Section, SelectField, SelectOption, SidebarComponent, SidebarModule, StatsCardComponent, StatsCardModule, StepState, StepsComponent, StepsModule, Structure, TableHeaderCheckboxComponent, TableHeaderCheckboxModule, TableModule, TaxCalculationLanguageConfigs, TextAreaField, TextField, Themes, ThumbnailComponent, ThumbnailModule, ThumbnailSize, TileComponent, TileModule, TokenListComponent, TokenListModule, ValidateErrors, LocalizedCurrencyImpurePipe as ɵa, LocalizedBignumberPipe as ɵb, DecimalField as ɵba, StructureModule as ɵbb, HeaderComponent as ɵbc, FooterComponent as ɵbd, InfoSignComponent as ɵbe, NumberLocaleOptions as ɵbf, ThumbnailService as ɵbg, InfiniteScrollModule as ɵbh, InfiniteScrollDirective as ɵbi, CustomTranslationsModule as ɵbj, CodeEditorComponent as ɵbk, CoreFacade as ɵbl, CodeMirror6Core as ɵbm, LocalizedBignumberImpurePipe as ɵc, TokenListModule as ɵd, TableColumnsComponent as ɵe, InfoSignModule as ɵf, AutocompleteFieldComponent as ɵg, BooleanFieldComponent as ɵh, CalendarFieldComponent as ɵi, ChipsFieldComponent as ɵj, CurrencyFieldComponent as ɵk, BaseFieldComponent as ɵl, DynamicFieldComponent as ɵm, DynamicFormDirective as ɵn, FieldsetComponent as ɵo, FileUploadComponent$1 as ɵp, LookupFieldComponent as ɵq, NumberFieldComponent as ɵr, BignumberFieldComponent as ɵs, RadioButtonComponent as ɵt, RowComponent as ɵu, SectionComponent as ɵv, SelectFieldComponent as ɵw, TextAreaFieldComponent as ɵx, TextFieldComponent as ɵy };
6612
8008
  //# sourceMappingURL=seniorsistemas-angular-components.js.map