@mj-biz-apps/forms-ng 0.0.0 → 0.2.0

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 (446) hide show
  1. package/dist/lib/builder/builder-models.d.ts +27 -0
  2. package/dist/lib/builder/builder-models.d.ts.map +1 -0
  3. package/dist/lib/builder/builder-models.js +15 -0
  4. package/dist/lib/builder/builder-models.js.map +1 -0
  5. package/dist/lib/builder/builder-state.service.d.ts +48 -0
  6. package/dist/lib/builder/builder-state.service.d.ts.map +1 -0
  7. package/dist/lib/builder/builder-state.service.js +231 -0
  8. package/dist/lib/builder/builder-state.service.js.map +1 -0
  9. package/dist/lib/builder/builder-styles.d.ts +12 -0
  10. package/dist/lib/builder/builder-styles.d.ts.map +1 -0
  11. package/dist/lib/builder/builder-styles.js +74 -0
  12. package/dist/lib/builder/builder-styles.js.map +1 -0
  13. package/dist/lib/builder/conditional-rule-editor.component.d.ts +53 -0
  14. package/dist/lib/builder/conditional-rule-editor.component.d.ts.map +1 -0
  15. package/dist/lib/builder/conditional-rule-editor.component.js +282 -0
  16. package/dist/lib/builder/conditional-rule-editor.component.js.map +1 -0
  17. package/dist/lib/builder/design-panel.component.d.ts +71 -0
  18. package/dist/lib/builder/design-panel.component.d.ts.map +1 -0
  19. package/dist/lib/builder/design-panel.component.js +530 -0
  20. package/dist/lib/builder/design-panel.component.js.map +1 -0
  21. package/dist/lib/builder/design-panel.styles.d.ts +10 -0
  22. package/dist/lib/builder/design-panel.styles.d.ts.map +1 -0
  23. package/dist/lib/builder/design-panel.styles.js +78 -0
  24. package/dist/lib/builder/design-panel.styles.js.map +1 -0
  25. package/dist/lib/builder/design-state.service.d.ts +51 -0
  26. package/dist/lib/builder/design-state.service.d.ts.map +1 -0
  27. package/dist/lib/builder/design-state.service.js +108 -0
  28. package/dist/lib/builder/design-state.service.js.map +1 -0
  29. package/dist/lib/builder/distribution-links.d.ts +29 -0
  30. package/dist/lib/builder/distribution-links.d.ts.map +1 -0
  31. package/dist/lib/builder/distribution-links.js +53 -0
  32. package/dist/lib/builder/distribution-links.js.map +1 -0
  33. package/dist/lib/builder/distribution-manager.component.d.ts +53 -0
  34. package/dist/lib/builder/distribution-manager.component.d.ts.map +1 -0
  35. package/dist/lib/builder/distribution-manager.component.js +330 -0
  36. package/dist/lib/builder/distribution-manager.component.js.map +1 -0
  37. package/dist/lib/builder/distribution.service.d.ts +62 -0
  38. package/dist/lib/builder/distribution.service.d.ts.map +1 -0
  39. package/dist/lib/builder/distribution.service.js +140 -0
  40. package/dist/lib/builder/distribution.service.js.map +1 -0
  41. package/dist/lib/builder/entity-names.d.ts +20 -0
  42. package/dist/lib/builder/entity-names.d.ts.map +1 -0
  43. package/dist/lib/builder/entity-names.js +20 -0
  44. package/dist/lib/builder/entity-names.js.map +1 -0
  45. package/dist/lib/builder/form-builder.component.d.ts +92 -0
  46. package/dist/lib/builder/form-builder.component.d.ts.map +1 -0
  47. package/dist/lib/builder/form-builder.component.js +627 -0
  48. package/dist/lib/builder/form-builder.component.js.map +1 -0
  49. package/dist/lib/builder/form-builder.styles.d.ts +3 -0
  50. package/dist/lib/builder/form-builder.styles.d.ts.map +1 -0
  51. package/dist/lib/builder/form-builder.styles.js +94 -0
  52. package/dist/lib/builder/form-builder.styles.js.map +1 -0
  53. package/dist/lib/builder/form-preview-modal.component.d.ts +25 -0
  54. package/dist/lib/builder/form-preview-modal.component.d.ts.map +1 -0
  55. package/dist/lib/builder/form-preview-modal.component.js +90 -0
  56. package/dist/lib/builder/form-preview-modal.component.js.map +1 -0
  57. package/dist/lib/builder/index.d.ts +31 -0
  58. package/dist/lib/builder/index.d.ts.map +1 -0
  59. package/dist/lib/builder/index.js +32 -0
  60. package/dist/lib/builder/index.js.map +1 -0
  61. package/dist/lib/builder/json-fields.d.ts +14 -0
  62. package/dist/lib/builder/json-fields.d.ts.map +1 -0
  63. package/dist/lib/builder/json-fields.js +100 -0
  64. package/dist/lib/builder/json-fields.js.map +1 -0
  65. package/dist/lib/builder/publish.service.d.ts +34 -0
  66. package/dist/lib/builder/publish.service.d.ts.map +1 -0
  67. package/dist/lib/builder/publish.service.js +110 -0
  68. package/dist/lib/builder/publish.service.js.map +1 -0
  69. package/dist/lib/builder/qr-code.d.ts +26 -0
  70. package/dist/lib/builder/qr-code.d.ts.map +1 -0
  71. package/dist/lib/builder/qr-code.js +361 -0
  72. package/dist/lib/builder/qr-code.js.map +1 -0
  73. package/dist/lib/builder/question-editor.component.d.ts +41 -0
  74. package/dist/lib/builder/question-editor.component.d.ts.map +1 -0
  75. package/dist/lib/builder/question-editor.component.js +228 -0
  76. package/dist/lib/builder/question-editor.component.js.map +1 -0
  77. package/dist/lib/builder/question-type-catalog.d.ts +29 -0
  78. package/dist/lib/builder/question-type-catalog.d.ts.map +1 -0
  79. package/dist/lib/builder/question-type-catalog.js +43 -0
  80. package/dist/lib/builder/question-type-catalog.js.map +1 -0
  81. package/dist/lib/builder/reorder.d.ts +10 -0
  82. package/dist/lib/builder/reorder.d.ts.map +1 -0
  83. package/dist/lib/builder/reorder.js +18 -0
  84. package/dist/lib/builder/reorder.js.map +1 -0
  85. package/dist/lib/builder/snapshot-builder.d.ts +16 -0
  86. package/dist/lib/builder/snapshot-builder.d.ts.map +1 -0
  87. package/dist/lib/builder/snapshot-builder.js +93 -0
  88. package/dist/lib/builder/snapshot-builder.js.map +1 -0
  89. package/dist/lib/builder/style-tokens.d.ts +54 -0
  90. package/dist/lib/builder/style-tokens.d.ts.map +1 -0
  91. package/dist/lib/builder/style-tokens.js +71 -0
  92. package/dist/lib/builder/style-tokens.js.map +1 -0
  93. package/dist/lib/builder/validation-rule-editor.component.d.ts +27 -0
  94. package/dist/lib/builder/validation-rule-editor.component.d.ts.map +1 -0
  95. package/dist/lib/builder/validation-rule-editor.component.js +179 -0
  96. package/dist/lib/builder/validation-rule-editor.component.js.map +1 -0
  97. package/dist/lib/dashboard/components/distribution-chart.component.d.ts +14 -0
  98. package/dist/lib/dashboard/components/distribution-chart.component.d.ts.map +1 -0
  99. package/dist/lib/dashboard/components/distribution-chart.component.js +85 -0
  100. package/dist/lib/dashboard/components/distribution-chart.component.js.map +1 -0
  101. package/dist/lib/dashboard/components/funnel-chart.component.d.ts +14 -0
  102. package/dist/lib/dashboard/components/funnel-chart.component.d.ts.map +1 -0
  103. package/dist/lib/dashboard/components/funnel-chart.component.js +101 -0
  104. package/dist/lib/dashboard/components/funnel-chart.component.js.map +1 -0
  105. package/dist/lib/dashboard/components/question-breakdown.component.d.ts +16 -0
  106. package/dist/lib/dashboard/components/question-breakdown.component.d.ts.map +1 -0
  107. package/dist/lib/dashboard/components/question-breakdown.component.js +213 -0
  108. package/dist/lib/dashboard/components/question-breakdown.component.js.map +1 -0
  109. package/dist/lib/dashboard/components/response-detail.component.d.ts +11 -0
  110. package/dist/lib/dashboard/components/response-detail.component.d.ts.map +1 -0
  111. package/dist/lib/dashboard/components/response-detail.component.js +113 -0
  112. package/dist/lib/dashboard/components/response-detail.component.js.map +1 -0
  113. package/dist/lib/dashboard/components/response-list.component.d.ts +27 -0
  114. package/dist/lib/dashboard/components/response-list.component.d.ts.map +1 -0
  115. package/dist/lib/dashboard/components/response-list.component.js +196 -0
  116. package/dist/lib/dashboard/components/response-list.component.js.map +1 -0
  117. package/dist/lib/dashboard/components/summary-stats.component.d.ts +12 -0
  118. package/dist/lib/dashboard/components/summary-stats.component.d.ts.map +1 -0
  119. package/dist/lib/dashboard/components/summary-stats.component.js +112 -0
  120. package/dist/lib/dashboard/components/summary-stats.component.js.map +1 -0
  121. package/dist/lib/dashboard/forms-reporting-dashboard.component.d.ts +64 -0
  122. package/dist/lib/dashboard/forms-reporting-dashboard.component.d.ts.map +1 -0
  123. package/dist/lib/dashboard/forms-reporting-dashboard.component.js +397 -0
  124. package/dist/lib/dashboard/forms-reporting-dashboard.component.js.map +1 -0
  125. package/dist/lib/dashboard/index.d.ts +19 -0
  126. package/dist/lib/dashboard/index.d.ts.map +1 -0
  127. package/dist/lib/dashboard/index.js +19 -0
  128. package/dist/lib/dashboard/index.js.map +1 -0
  129. package/dist/lib/dashboard/models/reporting.model.d.ts +125 -0
  130. package/dist/lib/dashboard/models/reporting.model.d.ts.map +1 -0
  131. package/dist/lib/dashboard/models/reporting.model.js +2 -0
  132. package/dist/lib/dashboard/models/reporting.model.js.map +1 -0
  133. package/dist/lib/dashboard/services/forms-reporting-export.service.d.ts +21 -0
  134. package/dist/lib/dashboard/services/forms-reporting-export.service.d.ts.map +1 -0
  135. package/dist/lib/dashboard/services/forms-reporting-export.service.js +83 -0
  136. package/dist/lib/dashboard/services/forms-reporting-export.service.js.map +1 -0
  137. package/dist/lib/dashboard/services/forms-reporting-mock.d.ts +18 -0
  138. package/dist/lib/dashboard/services/forms-reporting-mock.d.ts.map +1 -0
  139. package/dist/lib/dashboard/services/forms-reporting-mock.js +147 -0
  140. package/dist/lib/dashboard/services/forms-reporting-mock.js.map +1 -0
  141. package/dist/lib/dashboard/services/forms-reporting.service.d.ts +45 -0
  142. package/dist/lib/dashboard/services/forms-reporting.service.d.ts.map +1 -0
  143. package/dist/lib/dashboard/services/forms-reporting.service.js +230 -0
  144. package/dist/lib/dashboard/services/forms-reporting.service.js.map +1 -0
  145. package/dist/lib/dashboard/services/reporting-aggregations.d.ts +40 -0
  146. package/dist/lib/dashboard/services/reporting-aggregations.d.ts.map +1 -0
  147. package/dist/lib/dashboard/services/reporting-aggregations.js +379 -0
  148. package/dist/lib/dashboard/services/reporting-aggregations.js.map +1 -0
  149. package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.d.ts +10 -0
  150. package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.d.ts.map +1 -0
  151. package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.js +104 -0
  152. package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.js.map +1 -0
  153. package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.d.ts +10 -0
  154. package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.d.ts.map +1 -0
  155. package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.js +83 -0
  156. package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.js.map +1 -0
  157. package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.d.ts +10 -0
  158. package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.d.ts.map +1 -0
  159. package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.js +96 -0
  160. package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.js.map +1 -0
  161. package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.d.ts +10 -0
  162. package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.d.ts.map +1 -0
  163. package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.js +83 -0
  164. package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.js.map +1 -0
  165. package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.d.ts +10 -0
  166. package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.d.ts.map +1 -0
  167. package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.js +96 -0
  168. package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.js.map +1 -0
  169. package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.d.ts +10 -0
  170. package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.d.ts.map +1 -0
  171. package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.js +172 -0
  172. package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.js.map +1 -0
  173. package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.d.ts +10 -0
  174. package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.d.ts.map +1 -0
  175. package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.js +90 -0
  176. package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.js.map +1 -0
  177. package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.d.ts +10 -0
  178. package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.d.ts.map +1 -0
  179. package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.js +274 -0
  180. package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.js.map +1 -0
  181. package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.d.ts +10 -0
  182. package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.d.ts.map +1 -0
  183. package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.js +91 -0
  184. package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.js.map +1 -0
  185. package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.d.ts +10 -0
  186. package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.d.ts.map +1 -0
  187. package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.js +100 -0
  188. package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.js.map +1 -0
  189. package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.d.ts +10 -0
  190. package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.d.ts.map +1 -0
  191. package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.js +174 -0
  192. package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.js.map +1 -0
  193. package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.d.ts +10 -0
  194. package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.d.ts.map +1 -0
  195. package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.js +118 -0
  196. package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.js.map +1 -0
  197. package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.d.ts +10 -0
  198. package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.d.ts.map +1 -0
  199. package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.js +93 -0
  200. package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.js.map +1 -0
  201. package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.d.ts +10 -0
  202. package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.d.ts.map +1 -0
  203. package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.js +96 -0
  204. package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.js.map +1 -0
  205. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.d.ts +10 -0
  206. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.d.ts.map +1 -0
  207. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.js +132 -0
  208. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.js.map +1 -0
  209. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.d.ts +10 -0
  210. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.d.ts.map +1 -0
  211. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.js +77 -0
  212. package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.js.map +1 -0
  213. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.d.ts +10 -0
  214. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.d.ts.map +1 -0
  215. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.js +108 -0
  216. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.js.map +1 -0
  217. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.d.ts +10 -0
  218. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.d.ts.map +1 -0
  219. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.js +99 -0
  220. package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.js.map +1 -0
  221. package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.d.ts +10 -0
  222. package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.d.ts.map +1 -0
  223. package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.js +100 -0
  224. package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.js.map +1 -0
  225. package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.d.ts +10 -0
  226. package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.d.ts.map +1 -0
  227. package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.js +96 -0
  228. package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.js.map +1 -0
  229. package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.d.ts +10 -0
  230. package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.d.ts.map +1 -0
  231. package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.js +274 -0
  232. package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.js.map +1 -0
  233. package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.d.ts +10 -0
  234. package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.d.ts.map +1 -0
  235. package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.js +67 -0
  236. package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.js.map +1 -0
  237. package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.d.ts +10 -0
  238. package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.d.ts.map +1 -0
  239. package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.js +90 -0
  240. package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.js.map +1 -0
  241. package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.d.ts +10 -0
  242. package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.d.ts.map +1 -0
  243. package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.js +124 -0
  244. package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.js.map +1 -0
  245. package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.d.ts +10 -0
  246. package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.d.ts.map +1 -0
  247. package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.js +86 -0
  248. package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.js.map +1 -0
  249. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.d.ts +10 -0
  250. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.d.ts.map +1 -0
  251. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.js +67 -0
  252. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.js.map +1 -0
  253. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.d.ts +10 -0
  254. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.d.ts.map +1 -0
  255. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.js +86 -0
  256. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.js.map +1 -0
  257. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.d.ts +10 -0
  258. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.d.ts.map +1 -0
  259. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.js +61 -0
  260. package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.js.map +1 -0
  261. package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.d.ts +10 -0
  262. package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.d.ts.map +1 -0
  263. package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.js +63 -0
  264. package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.js.map +1 -0
  265. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.d.ts +10 -0
  266. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.d.ts.map +1 -0
  267. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.js +69 -0
  268. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.js.map +1 -0
  269. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.d.ts +10 -0
  270. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.d.ts.map +1 -0
  271. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.js +63 -0
  272. package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.js.map +1 -0
  273. package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.d.ts +10 -0
  274. package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.d.ts.map +1 -0
  275. package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.js +98 -0
  276. package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.js.map +1 -0
  277. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.d.ts +10 -0
  278. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.d.ts.map +1 -0
  279. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.js +80 -0
  280. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.js.map +1 -0
  281. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.d.ts +10 -0
  282. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.d.ts.map +1 -0
  283. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.js +59 -0
  284. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.js.map +1 -0
  285. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.d.ts +10 -0
  286. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.d.ts.map +1 -0
  287. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.js +84 -0
  288. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.js.map +1 -0
  289. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.d.ts +10 -0
  290. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.d.ts.map +1 -0
  291. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.js +146 -0
  292. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.js.map +1 -0
  293. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.d.ts +10 -0
  294. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.d.ts.map +1 -0
  295. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.js +61 -0
  296. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.js.map +1 -0
  297. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.d.ts +10 -0
  298. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.d.ts.map +1 -0
  299. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.js +59 -0
  300. package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.js.map +1 -0
  301. package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.d.ts +10 -0
  302. package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.d.ts.map +1 -0
  303. package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.js +132 -0
  304. package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.js.map +1 -0
  305. package/dist/lib/generated/class-registrations-manifest.d.ts +6 -0
  306. package/dist/lib/generated/class-registrations-manifest.d.ts.map +1 -0
  307. package/dist/lib/generated/class-registrations-manifest.js +6 -0
  308. package/dist/lib/generated/class-registrations-manifest.js.map +1 -0
  309. package/dist/lib/generated/generated-forms.module.d.ts +61 -0
  310. package/dist/lib/generated/generated-forms.module.d.ts.map +1 -0
  311. package/dist/lib/generated/generated-forms.module.js +207 -0
  312. package/dist/lib/generated/generated-forms.module.js.map +1 -0
  313. package/dist/lib/home/forms-home-dashboard.component.d.ts +61 -0
  314. package/dist/lib/home/forms-home-dashboard.component.d.ts.map +1 -0
  315. package/dist/lib/home/forms-home-dashboard.component.js +379 -0
  316. package/dist/lib/home/forms-home-dashboard.component.js.map +1 -0
  317. package/dist/lib/home/forms-home.service.d.ts +24 -0
  318. package/dist/lib/home/forms-home.service.d.ts.map +1 -0
  319. package/dist/lib/home/forms-home.service.js +92 -0
  320. package/dist/lib/home/forms-home.service.js.map +1 -0
  321. package/dist/lib/home/home-aggregations.d.ts +23 -0
  322. package/dist/lib/home/home-aggregations.d.ts.map +1 -0
  323. package/dist/lib/home/home-aggregations.js +64 -0
  324. package/dist/lib/home/home-aggregations.js.map +1 -0
  325. package/dist/lib/home/home-models.d.ts +60 -0
  326. package/dist/lib/home/home-models.d.ts.map +1 -0
  327. package/dist/lib/home/home-models.js +34 -0
  328. package/dist/lib/home/home-models.js.map +1 -0
  329. package/dist/lib/home/index.d.ts +13 -0
  330. package/dist/lib/home/index.d.ts.map +1 -0
  331. package/dist/lib/home/index.js +13 -0
  332. package/dist/lib/home/index.js.map +1 -0
  333. package/dist/lib/widget/api/form-upload.service.d.ts +41 -0
  334. package/dist/lib/widget/api/form-upload.service.d.ts.map +1 -0
  335. package/dist/lib/widget/api/form-upload.service.js +124 -0
  336. package/dist/lib/widget/api/form-upload.service.js.map +1 -0
  337. package/dist/lib/widget/api/forms-api.config.d.ts +55 -0
  338. package/dist/lib/widget/api/forms-api.config.d.ts.map +1 -0
  339. package/dist/lib/widget/api/forms-api.config.js +40 -0
  340. package/dist/lib/widget/api/forms-api.config.js.map +1 -0
  341. package/dist/lib/widget/api/forms-api.graphql.service.d.ts +20 -0
  342. package/dist/lib/widget/api/forms-api.graphql.service.d.ts.map +1 -0
  343. package/dist/lib/widget/api/forms-api.graphql.service.js +96 -0
  344. package/dist/lib/widget/api/forms-api.graphql.service.js.map +1 -0
  345. package/dist/lib/widget/api/forms-api.interface.d.ts +45 -0
  346. package/dist/lib/widget/api/forms-api.interface.d.ts.map +1 -0
  347. package/dist/lib/widget/api/forms-api.interface.js +8 -0
  348. package/dist/lib/widget/api/forms-api.interface.js.map +1 -0
  349. package/dist/lib/widget/api/forms-api.mock.service.d.ts +12 -0
  350. package/dist/lib/widget/api/forms-api.mock.service.d.ts.map +1 -0
  351. package/dist/lib/widget/api/forms-api.mock.service.js +41 -0
  352. package/dist/lib/widget/api/forms-api.mock.service.js.map +1 -0
  353. package/dist/lib/widget/api/mock-form.data.d.ts +8 -0
  354. package/dist/lib/widget/api/mock-form.data.d.ts.map +1 -0
  355. package/dist/lib/widget/api/mock-form.data.js +192 -0
  356. package/dist/lib/widget/api/mock-form.data.js.map +1 -0
  357. package/dist/lib/widget/api/submission-mapping.d.ts +60 -0
  358. package/dist/lib/widget/api/submission-mapping.d.ts.map +1 -0
  359. package/dist/lib/widget/api/submission-mapping.js +47 -0
  360. package/dist/lib/widget/api/submission-mapping.js.map +1 -0
  361. package/dist/lib/widget/components/form-one-question.component.d.ts +43 -0
  362. package/dist/lib/widget/components/form-one-question.component.d.ts.map +1 -0
  363. package/dist/lib/widget/components/form-one-question.component.js +194 -0
  364. package/dist/lib/widget/components/form-one-question.component.js.map +1 -0
  365. package/dist/lib/widget/components/form-progress.component.d.ts +9 -0
  366. package/dist/lib/widget/components/form-progress.component.d.ts.map +1 -0
  367. package/dist/lib/widget/components/form-progress.component.js +47 -0
  368. package/dist/lib/widget/components/form-progress.component.js.map +1 -0
  369. package/dist/lib/widget/components/form-scroll.component.d.ts +23 -0
  370. package/dist/lib/widget/components/form-scroll.component.d.ts.map +1 -0
  371. package/dist/lib/widget/components/form-scroll.component.js +132 -0
  372. package/dist/lib/widget/components/form-scroll.component.js.map +1 -0
  373. package/dist/lib/widget/components/questions/form-question.component.d.ts +68 -0
  374. package/dist/lib/widget/components/questions/form-question.component.d.ts.map +1 -0
  375. package/dist/lib/widget/components/questions/form-question.component.js +541 -0
  376. package/dist/lib/widget/components/questions/form-question.component.js.map +1 -0
  377. package/dist/lib/widget/components/questions/input-mode.d.ts +13 -0
  378. package/dist/lib/widget/components/questions/input-mode.d.ts.map +1 -0
  379. package/dist/lib/widget/components/questions/input-mode.js +42 -0
  380. package/dist/lib/widget/components/questions/input-mode.js.map +1 -0
  381. package/dist/lib/widget/components/turnstile-challenge.component.d.ts +52 -0
  382. package/dist/lib/widget/components/turnstile-challenge.component.d.ts.map +1 -0
  383. package/dist/lib/widget/components/turnstile-challenge.component.js +123 -0
  384. package/dist/lib/widget/components/turnstile-challenge.component.js.map +1 -0
  385. package/dist/lib/widget/core/answer-value.d.ts +17 -0
  386. package/dist/lib/widget/core/answer-value.d.ts.map +1 -0
  387. package/dist/lib/widget/core/answer-value.js +41 -0
  388. package/dist/lib/widget/core/answer-value.js.map +1 -0
  389. package/dist/lib/widget/core/autosave-controller.d.ts +65 -0
  390. package/dist/lib/widget/core/autosave-controller.d.ts.map +1 -0
  391. package/dist/lib/widget/core/autosave-controller.js +134 -0
  392. package/dist/lib/widget/core/autosave-controller.js.map +1 -0
  393. package/dist/lib/widget/core/client-id.d.ts +17 -0
  394. package/dist/lib/widget/core/client-id.d.ts.map +1 -0
  395. package/dist/lib/widget/core/client-id.js +52 -0
  396. package/dist/lib/widget/core/client-id.js.map +1 -0
  397. package/dist/lib/widget/core/form-runtime.d.ts +34 -0
  398. package/dist/lib/widget/core/form-runtime.d.ts.map +1 -0
  399. package/dist/lib/widget/core/form-runtime.js +123 -0
  400. package/dist/lib/widget/core/form-runtime.js.map +1 -0
  401. package/dist/lib/widget/core/one-question-stepper.d.ts +20 -0
  402. package/dist/lib/widget/core/one-question-stepper.d.ts.map +1 -0
  403. package/dist/lib/widget/core/one-question-stepper.js +23 -0
  404. package/dist/lib/widget/core/one-question-stepper.js.map +1 -0
  405. package/dist/lib/widget/core/submit-phase.d.ts +31 -0
  406. package/dist/lib/widget/core/submit-phase.d.ts.map +1 -0
  407. package/dist/lib/widget/core/submit-phase.js +21 -0
  408. package/dist/lib/widget/core/submit-phase.js.map +1 -0
  409. package/dist/lib/widget/core/theming.d.ts +17 -0
  410. package/dist/lib/widget/core/theming.d.ts.map +1 -0
  411. package/dist/lib/widget/core/theming.js +36 -0
  412. package/dist/lib/widget/core/theming.js.map +1 -0
  413. package/dist/lib/widget/core/turnstile-gate.d.ts +42 -0
  414. package/dist/lib/widget/core/turnstile-gate.d.ts.map +1 -0
  415. package/dist/lib/widget/core/turnstile-gate.js +61 -0
  416. package/dist/lib/widget/core/turnstile-gate.js.map +1 -0
  417. package/dist/lib/widget/core/turnstile-loader.d.ts +34 -0
  418. package/dist/lib/widget/core/turnstile-loader.d.ts.map +1 -0
  419. package/dist/lib/widget/core/turnstile-loader.js +68 -0
  420. package/dist/lib/widget/core/turnstile-loader.js.map +1 -0
  421. package/dist/lib/widget/core/validation.d.ts +19 -0
  422. package/dist/lib/widget/core/validation.d.ts.map +1 -0
  423. package/dist/lib/widget/core/validation.js +105 -0
  424. package/dist/lib/widget/core/validation.js.map +1 -0
  425. package/dist/lib/widget/index.d.ts +27 -0
  426. package/dist/lib/widget/index.d.ts.map +1 -0
  427. package/dist/lib/widget/index.js +30 -0
  428. package/dist/lib/widget/index.js.map +1 -0
  429. package/dist/lib/widget/mj-form.component.d.ts +114 -0
  430. package/dist/lib/widget/mj-form.component.d.ts.map +1 -0
  431. package/dist/lib/widget/mj-form.component.js +428 -0
  432. package/dist/lib/widget/mj-form.component.js.map +1 -0
  433. package/dist/lib/widget/register-element.d.ts +8 -0
  434. package/dist/lib/widget/register-element.d.ts.map +1 -0
  435. package/dist/lib/widget/register-element.js +98 -0
  436. package/dist/lib/widget/register-element.js.map +1 -0
  437. package/dist/public-api.d.ts +23 -0
  438. package/dist/public-api.d.ts.map +1 -0
  439. package/dist/public-api.js +33 -0
  440. package/dist/public-api.js.map +1 -0
  441. package/dist/widget-entry.d.ts +2 -0
  442. package/dist/widget-entry.d.ts.map +1 -0
  443. package/dist/widget-entry.js +20 -0
  444. package/dist/widget-entry.js.map +1 -0
  445. package/package.json +53 -5
  446. package/README.md +0 -3
@@ -0,0 +1,282 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { BUILDER_CONTROL_STYLES } from './builder-styles';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/forms";
7
+ const _forTrack0 = ($index, $item) => $item.id;
8
+ const _forTrack1 = ($index, $item) => $item.op;
9
+ function ConditionalRuleEditorComponent_Conditional_6_Conditional_0_Template(rf, ctx) { if (rf & 1) {
10
+ i0.ɵɵelementStart(0, "p", 7);
11
+ i0.ɵɵtext(1, "Add an earlier question first to base a rule on its answer.");
12
+ i0.ɵɵelementEnd();
13
+ } }
14
+ function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_For_4_Template(rf, ctx) { if (rf & 1) {
15
+ i0.ɵɵelementStart(0, "option", 14);
16
+ i0.ɵɵtext(1);
17
+ i0.ɵɵelementEnd();
18
+ } if (rf & 2) {
19
+ const src_r8 = ctx.$implicit;
20
+ i0.ɵɵproperty("value", src_r8.id);
21
+ i0.ɵɵadvance();
22
+ i0.ɵɵtextInterpolate(src_r8.prompt);
23
+ } }
24
+ function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_For_8_Template(rf, ctx) { if (rf & 1) {
25
+ i0.ɵɵelementStart(0, "option", 14);
26
+ i0.ɵɵtext(1);
27
+ i0.ɵɵelementEnd();
28
+ } if (rf & 2) {
29
+ const op_r10 = ctx.$implicit;
30
+ i0.ɵɵproperty("value", op_r10.op);
31
+ i0.ɵɵadvance();
32
+ i0.ɵɵtextInterpolate(op_r10.label);
33
+ } }
34
+ function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Conditional_9_Template(rf, ctx) { if (rf & 1) {
35
+ const _r11 = i0.ɵɵgetCurrentView();
36
+ i0.ɵɵelementStart(0, "input", 19, 3);
37
+ i0.ɵɵlistener("input", function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Conditional_9_Template_input_input_0_listener() { i0.ɵɵrestoreView(_r11); const valueInput_r12 = i0.ɵɵreference(1); const $index_r6 = i0.ɵɵnextContext().$index; const ctx_r3 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r3.setValue($index_r6, valueInput_r12.value)); });
38
+ i0.ɵɵelementEnd();
39
+ } if (rf & 2) {
40
+ const cond_r13 = i0.ɵɵnextContext().$implicit;
41
+ const ctx_r3 = i0.ɵɵnextContext(3);
42
+ i0.ɵɵproperty("value", ctx_r3.valueAsString(cond_r13));
43
+ i0.ɵɵattribute("placeholder", cond_r13.op === "in" || cond_r13.op === "notIn" ? "a, b, c" : "value");
44
+ } }
45
+ function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Template(rf, ctx) { if (rf & 1) {
46
+ const _r5 = i0.ɵɵgetCurrentView();
47
+ i0.ɵɵelementStart(0, "div", 10)(1, "select", 13, 1);
48
+ i0.ɵɵlistener("change", function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Template_select_change_1_listener() { const $index_r6 = i0.ɵɵrestoreView(_r5).$index; const questionSelect_r7 = i0.ɵɵreference(2); const ctx_r3 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r3.setQuestion($index_r6, questionSelect_r7.value)); });
49
+ i0.ɵɵrepeaterCreate(3, ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_For_4_Template, 2, 2, "option", 14, _forTrack0);
50
+ i0.ɵɵelementEnd();
51
+ i0.ɵɵelementStart(5, "select", 15, 2);
52
+ i0.ɵɵlistener("change", function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Template_select_change_5_listener() { const $index_r6 = i0.ɵɵrestoreView(_r5).$index; const operatorSelect_r9 = i0.ɵɵreference(6); const ctx_r3 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r3.setOperator($index_r6, operatorSelect_r9.value)); });
53
+ i0.ɵɵrepeaterCreate(7, ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_For_8_Template, 2, 2, "option", 14, _forTrack1);
54
+ i0.ɵɵelementEnd();
55
+ i0.ɵɵconditionalCreate(9, ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Conditional_9_Template, 2, 2, "input", 16);
56
+ i0.ɵɵelementStart(10, "button", 17);
57
+ i0.ɵɵlistener("click", function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Template_button_click_10_listener() { const $index_r6 = i0.ɵɵrestoreView(_r5).$index; const ctx_r3 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r3.removeCondition($index_r6)); });
58
+ i0.ɵɵelement(11, "i", 18);
59
+ i0.ɵɵelementEnd()();
60
+ } if (rf & 2) {
61
+ const cond_r13 = ctx.$implicit;
62
+ const ctx_r3 = i0.ɵɵnextContext(3);
63
+ i0.ɵɵadvance();
64
+ i0.ɵɵproperty("value", cond_r13.questionId);
65
+ i0.ɵɵadvance(2);
66
+ i0.ɵɵrepeater(ctx_r3.sources);
67
+ i0.ɵɵadvance(2);
68
+ i0.ɵɵproperty("value", cond_r13.op);
69
+ i0.ɵɵadvance(2);
70
+ i0.ɵɵrepeater(ctx_r3.operators);
71
+ i0.ɵɵadvance(2);
72
+ i0.ɵɵconditional(ctx_r3.operatorNeedsValue(cond_r13.op) ? 9 : -1);
73
+ } }
74
+ function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_Template(rf, ctx) { if (rf & 1) {
75
+ const _r3 = i0.ɵɵgetCurrentView();
76
+ i0.ɵɵelementStart(0, "div", 8)(1, "span");
77
+ i0.ɵɵtext(2, "Match");
78
+ i0.ɵɵelementEnd();
79
+ i0.ɵɵelementStart(3, "button", 9);
80
+ i0.ɵɵlistener("click", function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r3); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.setCombinator("all")); });
81
+ i0.ɵɵtext(4, "all");
82
+ i0.ɵɵelementEnd();
83
+ i0.ɵɵelementStart(5, "button", 9);
84
+ i0.ɵɵlistener("click", function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r3); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.setCombinator("any")); });
85
+ i0.ɵɵtext(6, "any");
86
+ i0.ɵɵelementEnd();
87
+ i0.ɵɵelementStart(7, "span");
88
+ i0.ɵɵtext(8, "of these:");
89
+ i0.ɵɵelementEnd()();
90
+ i0.ɵɵrepeaterCreate(9, ConditionalRuleEditorComponent_Conditional_6_Conditional_1_For_10_Template, 12, 3, "div", 10, i0.ɵɵrepeaterTrackByIndex);
91
+ i0.ɵɵelementStart(11, "button", 11);
92
+ i0.ɵɵlistener("click", function ConditionalRuleEditorComponent_Conditional_6_Conditional_1_Template_button_click_11_listener() { i0.ɵɵrestoreView(_r3); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.addCondition()); });
93
+ i0.ɵɵelement(12, "i", 12);
94
+ i0.ɵɵtext(13, " Add condition ");
95
+ i0.ɵɵelementEnd();
96
+ } if (rf & 2) {
97
+ const ctx_r3 = i0.ɵɵnextContext(2);
98
+ i0.ɵɵadvance(3);
99
+ i0.ɵɵclassProp("is-on", ctx_r3._combinator === "all");
100
+ i0.ɵɵattribute("aria-pressed", ctx_r3._combinator === "all");
101
+ i0.ɵɵadvance(2);
102
+ i0.ɵɵclassProp("is-on", ctx_r3._combinator === "any");
103
+ i0.ɵɵattribute("aria-pressed", ctx_r3._combinator === "any");
104
+ i0.ɵɵadvance(4);
105
+ i0.ɵɵrepeater(ctx_r3._conditions);
106
+ } }
107
+ function ConditionalRuleEditorComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
108
+ i0.ɵɵconditionalCreate(0, ConditionalRuleEditorComponent_Conditional_6_Conditional_0_Template, 2, 0, "p", 7)(1, ConditionalRuleEditorComponent_Conditional_6_Conditional_1_Template, 14, 6);
109
+ } if (rf & 2) {
110
+ const ctx_r3 = i0.ɵɵnextContext();
111
+ i0.ɵɵconditional(ctx_r3.sources.length === 0 ? 0 : 1);
112
+ } }
113
+ const CONDITIONAL_EDITOR_CSS = /* css */ `
114
+ .cre { display: flex; flex-direction: column; gap: 10px; }
115
+ .cre-toggle { display: inline-flex; align-items: center; gap: 8px; font-size: 0.8125rem; font-weight: 600; color: var(--mj-text-secondary); cursor: pointer; }
116
+ .cre-empty { font-size: 0.8125rem; color: var(--mj-text-muted); margin: 0; }
117
+ .cre-combinator { display: flex; align-items: center; gap: 6px; font-size: 0.8125rem; color: var(--mj-text-secondary); flex-wrap: wrap; }
118
+ .cre-seg { font: inherit; font-size: 0.8125rem; padding: 3px 10px; cursor: pointer; border-radius: var(--mj-radius-full, 999px); border: 1px solid var(--mj-border-default); background: var(--mj-bg-surface); color: var(--mj-text-secondary); }
119
+ .cre-seg.is-on { background: var(--mj-brand-primary); color: var(--mj-brand-on-primary, var(--mj-text-inverse)); border-color: var(--mj-brand-primary); }
120
+ .cre-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
121
+ .cre-input { flex: 1 1 120px; min-width: 0; }
122
+ .cre-value { flex: 1 1 120px; }
123
+ .cre-remove { flex: none; width: 32px; height: 32px; cursor: pointer; border-radius: var(--mj-radius-md, 8px); border: 1px solid var(--mj-border-default); background: var(--mj-bg-surface); color: var(--mj-text-muted); }
124
+ .cre-remove:hover { background: var(--mj-bg-surface-hover); color: var(--mj-status-error, var(--mj-color-error-600)); }
125
+ .cre-add { align-self: flex-start; font: inherit; font-size: 0.8125rem; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; cursor: pointer; border-radius: var(--mj-radius-md, 8px); border: 1px dashed var(--mj-border-default); background: transparent; color: var(--mj-brand-primary); }
126
+ .cre-add:hover { background: var(--mj-bg-surface-hover); }
127
+ `;
128
+ const OPERATORS = [
129
+ { op: 'equals', label: 'equals', needsValue: true },
130
+ { op: 'notEquals', label: 'does not equal', needsValue: true },
131
+ { op: 'contains', label: 'contains', needsValue: true },
132
+ { op: 'in', label: 'is one of', needsValue: true },
133
+ { op: 'notIn', label: 'is not one of', needsValue: true },
134
+ { op: 'greaterThan', label: 'is greater than', needsValue: true },
135
+ { op: 'lessThan', label: 'is less than', needsValue: true },
136
+ { op: 'isAnswered', label: 'is answered', needsValue: false },
137
+ ];
138
+ /**
139
+ * Friendly editor for a {@link ConditionalRule} `show` group (S2). Emits a new rule
140
+ * object on every change; the parent persists it. Phase-1 supports a single
141
+ * combinator (`all` / `any`) over a flat list of leaf conditions — no nesting, in
142
+ * line with FORMS_BUILD_PLAN §6.
143
+ *
144
+ * The editor never mutates the input; it rebuilds the rule and emits it, so change
145
+ * detection stays predictable.
146
+ */
147
+ export class ConditionalRuleEditorComponent {
148
+ /** Questions that may be referenced (typically those preceding the current one). */
149
+ sources = [];
150
+ set rule(value) {
151
+ this._enabled = !!value?.show;
152
+ this._combinator = value?.show?.any ? 'any' : 'all';
153
+ const group = value?.show?.any ?? value?.show?.all ?? [];
154
+ this._conditions = group.map((c) => ({ ...c }));
155
+ }
156
+ ruleChange = new EventEmitter();
157
+ operators = OPERATORS;
158
+ _enabled = false;
159
+ _combinator = 'all';
160
+ _conditions = [];
161
+ operatorNeedsValue(op) {
162
+ return OPERATORS.find((o) => o.op === op)?.needsValue ?? true;
163
+ }
164
+ toggleEnabled(enabled) {
165
+ this._enabled = enabled;
166
+ if (enabled && this._conditions.length === 0) {
167
+ this.addCondition();
168
+ }
169
+ this.emit();
170
+ }
171
+ setCombinator(combinator) {
172
+ this._combinator = combinator;
173
+ this.emit();
174
+ }
175
+ addCondition() {
176
+ const firstSource = this.sources[0];
177
+ this._conditions = [
178
+ ...this._conditions,
179
+ { questionId: firstSource?.id ?? '', op: 'equals', value: '' },
180
+ ];
181
+ this.emit();
182
+ }
183
+ removeCondition(index) {
184
+ this._conditions = this._conditions.filter((_, i) => i !== index);
185
+ if (this._conditions.length === 0) {
186
+ this._enabled = false;
187
+ }
188
+ this.emit();
189
+ }
190
+ setQuestion(index, questionId) {
191
+ this._conditions = this._conditions.map((c, i) => i === index ? { ...c, questionId } : c);
192
+ this.emit();
193
+ }
194
+ setOperator(index, raw) {
195
+ const op = this.toOperator(raw);
196
+ if (!op) {
197
+ return;
198
+ }
199
+ this._conditions = this._conditions.map((c, i) => i === index ? { ...c, op } : c);
200
+ this.emit();
201
+ }
202
+ /** Narrow a raw <select> value to a known operator (it always is, from our own list). */
203
+ toOperator(raw) {
204
+ return OPERATORS.find((o) => o.op === raw)?.op;
205
+ }
206
+ setValue(index, raw) {
207
+ this._conditions = this._conditions.map((c, i) => i === index ? { ...c, value: this.coerceValue(c.op, raw) } : c);
208
+ this.emit();
209
+ }
210
+ valueAsString(condition) {
211
+ if (condition.value === undefined) {
212
+ return '';
213
+ }
214
+ if (Array.isArray(condition.value)) {
215
+ return condition.value.join(', ');
216
+ }
217
+ return String(condition.value);
218
+ }
219
+ /** `in` / `notIn` take a comma-separated list; everything else a scalar string. */
220
+ coerceValue(op, raw) {
221
+ if (op === 'in' || op === 'notIn') {
222
+ return raw
223
+ .split(',')
224
+ .map((s) => s.trim())
225
+ .filter((s) => s.length > 0);
226
+ }
227
+ return raw;
228
+ }
229
+ emit() {
230
+ if (!this._enabled || this._conditions.length === 0) {
231
+ this.ruleChange.emit(undefined);
232
+ return;
233
+ }
234
+ const conditions = this._conditions
235
+ .filter((c) => c.questionId.length > 0)
236
+ .map((c) => this.normaliseCondition(c));
237
+ if (conditions.length === 0) {
238
+ this.ruleChange.emit(undefined);
239
+ return;
240
+ }
241
+ const rule = {
242
+ show: this._combinator === 'any' ? { any: conditions } : { all: conditions },
243
+ };
244
+ this.ruleChange.emit(rule);
245
+ }
246
+ /** Drop the value entirely for value-less operators (e.g. `isAnswered`). */
247
+ normaliseCondition(c) {
248
+ if (!this.operatorNeedsValue(c.op)) {
249
+ return { questionId: c.questionId, op: c.op };
250
+ }
251
+ return { questionId: c.questionId, op: c.op, value: c.value };
252
+ }
253
+ static ɵfac = function ConditionalRuleEditorComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ConditionalRuleEditorComponent)(); };
254
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ConditionalRuleEditorComponent, selectors: [["mjf-conditional-rule-editor"]], inputs: { sources: "sources", rule: "rule" }, outputs: { ruleChange: "ruleChange" }, decls: 7, vars: 2, consts: [["enabledToggle", ""], ["questionSelect", ""], ["operatorSelect", ""], ["valueInput", ""], [1, "cre"], [1, "cre-toggle"], ["type", "checkbox", "aria-label", "Only show this when conditions are met", 3, "change", "checked"], [1, "cre-empty"], ["role", "group", "aria-label", "Match mode", 1, "cre-combinator"], ["type", "button", 1, "cre-seg", 3, "click"], [1, "cre-row"], ["type", "button", 1, "cre-add", 3, "click"], ["aria-hidden", "true", 1, "fa-solid", "fa-plus"], ["aria-label", "Question", 1, "cre-input", 3, "change", "value"], [3, "value"], ["aria-label", "Operator", 1, "cre-input", 3, "change", "value"], ["type", "text", "aria-label", "Comparison value", 1, "cre-input", "cre-value", 3, "value"], ["type", "button", "aria-label", "Remove condition", 1, "cre-remove", 3, "click"], ["aria-hidden", "true", 1, "fa-solid", "fa-xmark"], ["type", "text", "aria-label", "Comparison value", 1, "cre-input", "cre-value", 3, "input", "value"]], template: function ConditionalRuleEditorComponent_Template(rf, ctx) { if (rf & 1) {
255
+ const _r1 = i0.ɵɵgetCurrentView();
256
+ i0.ɵɵelementStart(0, "div", 4)(1, "label", 5)(2, "input", 6, 0);
257
+ i0.ɵɵlistener("change", function ConditionalRuleEditorComponent_Template_input_change_2_listener() { i0.ɵɵrestoreView(_r1); const enabledToggle_r2 = i0.ɵɵreference(3); return i0.ɵɵresetView(ctx.toggleEnabled(enabledToggle_r2.checked)); });
258
+ i0.ɵɵelementEnd();
259
+ i0.ɵɵelementStart(4, "span");
260
+ i0.ɵɵtext(5, "Only show when\u2026");
261
+ i0.ɵɵelementEnd()();
262
+ i0.ɵɵconditionalCreate(6, ConditionalRuleEditorComponent_Conditional_6_Template, 2, 1);
263
+ i0.ɵɵelementEnd();
264
+ } if (rf & 2) {
265
+ i0.ɵɵadvance(2);
266
+ i0.ɵɵproperty("checked", ctx._enabled);
267
+ i0.ɵɵadvance(4);
268
+ i0.ɵɵconditional(ctx._enabled ? 6 : -1);
269
+ } }, dependencies: [CommonModule, FormsModule, i1.NgSelectOption, i1.ɵNgSelectMultipleOption], styles: ["[_nghost-%COMP%] {\n --mjf-builder-gap: 16px;\n --mjf-builder-radius: var(--mj-radius-md, 8px);\n}\n.mjf-input[_ngcontent-%COMP%] {\n width: 100%;\n box-sizing: border-box;\n padding: 8px 10px;\n font: inherit;\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface);\n border: 1px solid var(--mj-border-default);\n border-radius: var(--mjf-builder-radius);\n transition: border-color var(--mj-transition-base, 0.15s ease);\n}\n.mjf-input[_ngcontent-%COMP%]:focus {\n outline: 2px solid var(--mjf-focus-ring, var(--mj-brand-primary));\n outline-offset: 1px;\n border-color: var(--mj-brand-primary);\n}\ntextarea.mjf-input[_ngcontent-%COMP%] { min-height: 64px; resize: vertical; }\n.mjf-field[_ngcontent-%COMP%] { display: flex; flex-direction: column; gap: 4px; margin-bottom: var(--mjf-builder-gap); }\n.mjf-field-label[_ngcontent-%COMP%] { font-size: 0.8125rem; font-weight: 600; color: var(--mj-text-secondary); }\n.mjf-field-hint[_ngcontent-%COMP%] { font-size: 0.75rem; color: var(--mj-text-muted); }\n.mjf-row[_ngcontent-%COMP%] { display: flex; gap: 8px; align-items: center; }\n.mjf-btn[_ngcontent-%COMP%] {\n display: inline-flex; align-items: center; gap: 6px;\n padding: 8px 14px; font: inherit; font-weight: 600; cursor: pointer;\n border-radius: var(--mjf-btn-radius, var(--mjf-builder-radius));\n border: 1px solid transparent;\n transition: background var(--mj-transition-base, 0.15s ease), border-color var(--mj-transition-base, 0.15s ease);\n}\n.mjf-btn[_ngcontent-%COMP%]:focus-visible { outline: 2px solid var(--mjf-focus-ring, var(--mj-brand-primary)); outline-offset: 2px; }\n.mjf-btn[_ngcontent-%COMP%]:disabled { opacity: 0.5; cursor: not-allowed; }\n.mjf-btn--primary[_ngcontent-%COMP%] { color: var(--mj-brand-on-primary, var(--mj-text-inverse)); background: var(--mj-brand-primary); }\n.mjf-btn--primary[_ngcontent-%COMP%]:hover:not(:disabled) { background: var(--mj-brand-primary-hover, var(--mj-brand-primary)); }\n.mjf-btn--ghost[_ngcontent-%COMP%] { color: var(--mj-text-secondary); background: transparent; border-color: var(--mj-border-default); }\n.mjf-btn--ghost[_ngcontent-%COMP%]:hover:not(:disabled) { background: var(--mj-bg-surface-hover); }\n.mjf-btn--danger[_ngcontent-%COMP%] { color: var(--mj-status-error, var(--mj-color-error-600)); background: transparent; border-color: var(--mj-border-default); }\n.mjf-btn--danger[_ngcontent-%COMP%]:hover:not(:disabled) { background: var(--mj-bg-surface-hover); }\n.mjf-pill[_ngcontent-%COMP%] {\n display: inline-flex; align-items: center; gap: 5px;\n padding: 3px 9px; font-size: 0.75rem; font-weight: 600;\n border-radius: var(--mjf-pill-radius, var(--mj-radius-full, 999px));\n color: var(--mj-text-secondary); background: var(--mj-bg-surface-sunken);\n border: 1px solid var(--mj-border-subtle);\n}\n.mjf-switch[_ngcontent-%COMP%] {\n position: relative; display: inline-block; width: 38px; height: 22px; flex: none; cursor: pointer;\n border-radius: var(--mj-radius-full, 999px); background: var(--mj-border-strong);\n transition: background var(--mj-transition-base, 0.15s ease);\n border: none; padding: 0;\n}\n.mjf-switch[_ngcontent-%COMP%]::after {\n content: ''; position: absolute; top: 2px; left: 2px; width: 18px; height: 18px;\n border-radius: 50%; background: var(--mj-bg-surface);\n transition: transform var(--mj-transition-base, 0.15s ease);\n}\n.mjf-switch.is-on[_ngcontent-%COMP%] { background: var(--mj-brand-primary); }\n.mjf-switch.is-on[_ngcontent-%COMP%]::after { transform: translateX(16px); }\n.mjf-switch[_ngcontent-%COMP%]:focus-visible { outline: 2px solid var(--mjf-focus-ring, var(--mj-brand-primary)); outline-offset: 2px; }", ".cre[_ngcontent-%COMP%] { display: flex; flex-direction: column; gap: 10px; }\n.cre-toggle[_ngcontent-%COMP%] { display: inline-flex; align-items: center; gap: 8px; font-size: 0.8125rem; font-weight: 600; color: var(--mj-text-secondary); cursor: pointer; }\n.cre-empty[_ngcontent-%COMP%] { font-size: 0.8125rem; color: var(--mj-text-muted); margin: 0; }\n.cre-combinator[_ngcontent-%COMP%] { display: flex; align-items: center; gap: 6px; font-size: 0.8125rem; color: var(--mj-text-secondary); flex-wrap: wrap; }\n.cre-seg[_ngcontent-%COMP%] { font: inherit; font-size: 0.8125rem; padding: 3px 10px; cursor: pointer; border-radius: var(--mj-radius-full, 999px); border: 1px solid var(--mj-border-default); background: var(--mj-bg-surface); color: var(--mj-text-secondary); }\n.cre-seg.is-on[_ngcontent-%COMP%] { background: var(--mj-brand-primary); color: var(--mj-brand-on-primary, var(--mj-text-inverse)); border-color: var(--mj-brand-primary); }\n.cre-row[_ngcontent-%COMP%] { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }\n.cre-input[_ngcontent-%COMP%] { flex: 1 1 120px; min-width: 0; }\n.cre-value[_ngcontent-%COMP%] { flex: 1 1 120px; }\n.cre-remove[_ngcontent-%COMP%] { flex: none; width: 32px; height: 32px; cursor: pointer; border-radius: var(--mj-radius-md, 8px); border: 1px solid var(--mj-border-default); background: var(--mj-bg-surface); color: var(--mj-text-muted); }\n.cre-remove[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); color: var(--mj-status-error, var(--mj-color-error-600)); }\n.cre-add[_ngcontent-%COMP%] { align-self: flex-start; font: inherit; font-size: 0.8125rem; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; cursor: pointer; border-radius: var(--mj-radius-md, 8px); border: 1px dashed var(--mj-border-default); background: transparent; color: var(--mj-brand-primary); }\n.cre-add[_ngcontent-%COMP%]:hover { background: var(--mj-bg-surface-hover); }"], changeDetection: 0 });
270
+ }
271
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ConditionalRuleEditorComponent, [{
272
+ type: Component,
273
+ args: [{ selector: 'mjf-conditional-rule-editor', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule], template: "<div class=\"cre\">\n <label class=\"cre-toggle\">\n <input\n #enabledToggle\n type=\"checkbox\"\n [checked]=\"_enabled\"\n (change)=\"toggleEnabled(enabledToggle.checked)\"\n aria-label=\"Only show this when conditions are met\"\n />\n <span>Only show when&hellip;</span>\n </label>\n\n @if (_enabled) {\n @if (sources.length === 0) {\n <p class=\"cre-empty\">Add an earlier question first to base a rule on its answer.</p>\n } @else {\n <div class=\"cre-combinator\" role=\"group\" aria-label=\"Match mode\">\n <span>Match</span>\n <button\n type=\"button\"\n class=\"cre-seg\"\n [class.is-on]=\"_combinator === 'all'\"\n [attr.aria-pressed]=\"_combinator === 'all'\"\n (click)=\"setCombinator('all')\"\n >all</button>\n <button\n type=\"button\"\n class=\"cre-seg\"\n [class.is-on]=\"_combinator === 'any'\"\n [attr.aria-pressed]=\"_combinator === 'any'\"\n (click)=\"setCombinator('any')\"\n >any</button>\n <span>of these:</span>\n </div>\n\n @for (cond of _conditions; track $index) {\n <div class=\"cre-row\">\n <select\n #questionSelect\n class=\"cre-input\"\n [value]=\"cond.questionId\"\n (change)=\"setQuestion($index, questionSelect.value)\"\n aria-label=\"Question\"\n >\n @for (src of sources; track src.id) {\n <option [value]=\"src.id\">{{ src.prompt }}</option>\n }\n </select>\n\n <select\n #operatorSelect\n class=\"cre-input\"\n [value]=\"cond.op\"\n (change)=\"setOperator($index, operatorSelect.value)\"\n aria-label=\"Operator\"\n >\n @for (op of operators; track op.op) {\n <option [value]=\"op.op\">{{ op.label }}</option>\n }\n </select>\n\n @if (operatorNeedsValue(cond.op)) {\n <input\n #valueInput\n type=\"text\"\n class=\"cre-input cre-value\"\n [value]=\"valueAsString(cond)\"\n (input)=\"setValue($index, valueInput.value)\"\n [attr.placeholder]=\"cond.op === 'in' || cond.op === 'notIn' ? 'a, b, c' : 'value'\"\n aria-label=\"Comparison value\"\n />\n }\n\n <button\n type=\"button\"\n class=\"cre-remove\"\n (click)=\"removeCondition($index)\"\n aria-label=\"Remove condition\"\n >\n <i class=\"fa-solid fa-xmark\" aria-hidden=\"true\"></i>\n </button>\n </div>\n }\n\n <button type=\"button\" class=\"cre-add\" (click)=\"addCondition()\">\n <i class=\"fa-solid fa-plus\" aria-hidden=\"true\"></i> Add condition\n </button>\n }\n }\n</div>\n", styles: ["\n:host {\n --mjf-builder-gap: 16px;\n --mjf-builder-radius: var(--mj-radius-md, 8px);\n}\n.mjf-input {\n width: 100%;\n box-sizing: border-box;\n padding: 8px 10px;\n font: inherit;\n color: var(--mj-text-primary);\n background: var(--mj-bg-surface);\n border: 1px solid var(--mj-border-default);\n border-radius: var(--mjf-builder-radius);\n transition: border-color var(--mj-transition-base, 0.15s ease);\n}\n.mjf-input:focus {\n outline: 2px solid var(--mjf-focus-ring, var(--mj-brand-primary));\n outline-offset: 1px;\n border-color: var(--mj-brand-primary);\n}\ntextarea.mjf-input { min-height: 64px; resize: vertical; }\n.mjf-field { display: flex; flex-direction: column; gap: 4px; margin-bottom: var(--mjf-builder-gap); }\n.mjf-field-label { font-size: 0.8125rem; font-weight: 600; color: var(--mj-text-secondary); }\n.mjf-field-hint { font-size: 0.75rem; color: var(--mj-text-muted); }\n.mjf-row { display: flex; gap: 8px; align-items: center; }\n.mjf-btn {\n display: inline-flex; align-items: center; gap: 6px;\n padding: 8px 14px; font: inherit; font-weight: 600; cursor: pointer;\n border-radius: var(--mjf-btn-radius, var(--mjf-builder-radius));\n border: 1px solid transparent;\n transition: background var(--mj-transition-base, 0.15s ease), border-color var(--mj-transition-base, 0.15s ease);\n}\n.mjf-btn:focus-visible { outline: 2px solid var(--mjf-focus-ring, var(--mj-brand-primary)); outline-offset: 2px; }\n.mjf-btn:disabled { opacity: 0.5; cursor: not-allowed; }\n.mjf-btn--primary { color: var(--mj-brand-on-primary, var(--mj-text-inverse)); background: var(--mj-brand-primary); }\n.mjf-btn--primary:hover:not(:disabled) { background: var(--mj-brand-primary-hover, var(--mj-brand-primary)); }\n.mjf-btn--ghost { color: var(--mj-text-secondary); background: transparent; border-color: var(--mj-border-default); }\n.mjf-btn--ghost:hover:not(:disabled) { background: var(--mj-bg-surface-hover); }\n.mjf-btn--danger { color: var(--mj-status-error, var(--mj-color-error-600)); background: transparent; border-color: var(--mj-border-default); }\n.mjf-btn--danger:hover:not(:disabled) { background: var(--mj-bg-surface-hover); }\n.mjf-pill {\n display: inline-flex; align-items: center; gap: 5px;\n padding: 3px 9px; font-size: 0.75rem; font-weight: 600;\n border-radius: var(--mjf-pill-radius, var(--mj-radius-full, 999px));\n color: var(--mj-text-secondary); background: var(--mj-bg-surface-sunken);\n border: 1px solid var(--mj-border-subtle);\n}\n.mjf-switch {\n position: relative; display: inline-block; width: 38px; height: 22px; flex: none; cursor: pointer;\n border-radius: var(--mj-radius-full, 999px); background: var(--mj-border-strong);\n transition: background var(--mj-transition-base, 0.15s ease);\n border: none; padding: 0;\n}\n.mjf-switch::after {\n content: ''; position: absolute; top: 2px; left: 2px; width: 18px; height: 18px;\n border-radius: 50%; background: var(--mj-bg-surface);\n transition: transform var(--mj-transition-base, 0.15s ease);\n}\n.mjf-switch.is-on { background: var(--mj-brand-primary); }\n.mjf-switch.is-on::after { transform: translateX(16px); }\n.mjf-switch:focus-visible { outline: 2px solid var(--mjf-focus-ring, var(--mj-brand-primary)); outline-offset: 2px; }\n", "\n.cre { display: flex; flex-direction: column; gap: 10px; }\n.cre-toggle { display: inline-flex; align-items: center; gap: 8px; font-size: 0.8125rem; font-weight: 600; color: var(--mj-text-secondary); cursor: pointer; }\n.cre-empty { font-size: 0.8125rem; color: var(--mj-text-muted); margin: 0; }\n.cre-combinator { display: flex; align-items: center; gap: 6px; font-size: 0.8125rem; color: var(--mj-text-secondary); flex-wrap: wrap; }\n.cre-seg { font: inherit; font-size: 0.8125rem; padding: 3px 10px; cursor: pointer; border-radius: var(--mj-radius-full, 999px); border: 1px solid var(--mj-border-default); background: var(--mj-bg-surface); color: var(--mj-text-secondary); }\n.cre-seg.is-on { background: var(--mj-brand-primary); color: var(--mj-brand-on-primary, var(--mj-text-inverse)); border-color: var(--mj-brand-primary); }\n.cre-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }\n.cre-input { flex: 1 1 120px; min-width: 0; }\n.cre-value { flex: 1 1 120px; }\n.cre-remove { flex: none; width: 32px; height: 32px; cursor: pointer; border-radius: var(--mj-radius-md, 8px); border: 1px solid var(--mj-border-default); background: var(--mj-bg-surface); color: var(--mj-text-muted); }\n.cre-remove:hover { background: var(--mj-bg-surface-hover); color: var(--mj-status-error, var(--mj-color-error-600)); }\n.cre-add { align-self: flex-start; font: inherit; font-size: 0.8125rem; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; cursor: pointer; border-radius: var(--mj-radius-md, 8px); border: 1px dashed var(--mj-border-default); background: transparent; color: var(--mj-brand-primary); }\n.cre-add:hover { background: var(--mj-bg-surface-hover); }\n"] }]
274
+ }], null, { sources: [{
275
+ type: Input
276
+ }], rule: [{
277
+ type: Input
278
+ }], ruleChange: [{
279
+ type: Output
280
+ }] }); })();
281
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ConditionalRuleEditorComponent, { className: "ConditionalRuleEditorComponent", filePath: "lib/builder/conditional-rule-editor.component.ts", lineNumber: 69 }); })();
282
+ //# sourceMappingURL=conditional-rule-editor.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditional-rule-editor.component.js","sourceRoot":"","sources":["../../../src/lib/builder/conditional-rule-editor.component.ts","../../../src/lib/builder/conditional-rule-editor.component.html"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import type { FormStyleTokens, mjBizAppsFormsFormEntity, mjBizAppsFormsFormStyleEntity } from '@mj-biz-apps/forms-entities';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * The builder "Design" panel (FORMS_BUILD_PLAN §9 polish). Lets the author:
6
+ * 1. pick which existing {@link mjBizAppsFormsFormStyleEntity} applies to the form
7
+ * (sets `Form.StyleID`),
8
+ * 2. see a LIVE token preview and edit an expanded set of theme controls (colors,
9
+ * fonts, corner radius, logo) — all written into `FormStyle.CSSVariables`,
10
+ * 3. open a full, fillable **Preview** of the real form via `previewRequested` (the
11
+ * parent builder owns the tree + modal).
12
+ *
13
+ * v1 scope: select a FormStyle + create/edit FormStyle rows with existing columns only.
14
+ * Per-form (not per-style) overrides would need new `Form` columns — deferred.
15
+ */
16
+ export declare class DesignPanelComponent {
17
+ private readonly design;
18
+ private readonly cdr;
19
+ /** The form being styled (StyleID is written here). */
20
+ form: mjBizAppsFormsFormEntity;
21
+ /** Emitted after the form's StyleID changes so the parent can persist/refresh. */
22
+ readonly styleApplied: EventEmitter<string | null>;
23
+ /** Emitted with the current (edited) theme tokens so the parent opens the fill-it preview. */
24
+ readonly previewRequested: EventEmitter<FormStyleTokens>;
25
+ private previewHost?;
26
+ protected readonly fontOptions: readonly {
27
+ label: string;
28
+ stack: string;
29
+ }[];
30
+ protected styles: mjBizAppsFormsFormStyleEntity[];
31
+ protected selected: mjBizAppsFormsFormStyleEntity | null;
32
+ protected busy: boolean;
33
+ protected loadError: string;
34
+ protected status: string;
35
+ /** Theme-editor working values (bound to inputs; committed on save). */
36
+ protected brandName: string;
37
+ protected brandLogo: string;
38
+ protected brandPrimary: string;
39
+ protected brandAccent: string;
40
+ protected brandPageBg: string;
41
+ protected brandCardBg: string;
42
+ protected fontBody: string;
43
+ protected fontDisplay: string;
44
+ protected radiusPx: number;
45
+ ngOnInit(): Promise<void>;
46
+ /** (Re)load the theme presets + the form's assigned style; surfaces load failures. */
47
+ protected reload(): Promise<void>;
48
+ protected isSelected(style: mjBizAppsFormsFormStyleEntity): boolean;
49
+ protected isApplied(style: mjBizAppsFormsFormStyleEntity): boolean;
50
+ protected select(style: mjBizAppsFormsFormStyleEntity): void;
51
+ /** Persist the selected style onto the form (`Form.StyleID`). */
52
+ protected applyToForm(): Promise<void>;
53
+ /** Ask the parent builder to open the full, fillable preview with the current theme. */
54
+ protected requestPreview(): void;
55
+ private syncBrandFields;
56
+ /** Duplicate the selected preset so edits don't touch the shared original. */
57
+ protected duplicateSelected(): Promise<void>;
58
+ /** Live-preview the in-progress edits without saving. */
59
+ protected onBrandInput(): void;
60
+ /** Persist theme edits onto the (ideally duplicated) style. */
61
+ protected saveBranding(): Promise<void>;
62
+ /** The non-radius token edits, keyed by token name (blank values clear the token). */
63
+ private editedTokenMap;
64
+ /** Build the runtime tokens for the selected style with unsaved edits layered on. */
65
+ private buildPreviewTokens;
66
+ /** Apply the current theme (with unsaved edits) to the inline sample via the widget's applier. */
67
+ private applyPreview;
68
+ static ɵfac: i0.ɵɵFactoryDeclaration<DesignPanelComponent, never>;
69
+ static ɵcmp: i0.ɵɵComponentDeclaration<DesignPanelComponent, "mjf-design-panel", never, { "form": { "alias": "form"; "required": true; }; }, { "styleApplied": "styleApplied"; "previewRequested": "previewRequested"; }, never, never, true, never>;
70
+ }
71
+ //# sourceMappingURL=design-panel.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-panel.component.d.ts","sourceRoot":"","sources":["../../../src/lib/builder/design-panel.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,YAAY,EAKb,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,6BAA6B,CAAC;;AAQrC;;;;;;;;;;;GAWG;AACH,qBASa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8B;IAErD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA6B;IAEjD,uDAAuD;IAC5B,IAAI,EAAG,wBAAwB,CAAC;IAE3D,kFAAkF;IACxE,QAAQ,CAAC,YAAY,8BAAqC;IAEpE,8FAA8F;IACpF,QAAQ,CAAC,gBAAgB,gCAAuC;IAEhD,OAAO,CAAC,WAAW,CAAC,CAA0B;IAExE,SAAS,CAAC,QAAQ,CAAC,WAAW;;;QAAgB;IAE9C,SAAS,CAAC,MAAM,EAAE,6BAA6B,EAAE,CAAM;IACvD,SAAS,CAAC,QAAQ,EAAE,6BAA6B,GAAG,IAAI,CAAQ;IAChE,SAAS,CAAC,IAAI,UAAS;IACvB,SAAS,CAAC,SAAS,SAAM;IACzB,SAAS,CAAC,MAAM,SAAM;IAEtB,wEAAwE;IACxE,SAAS,CAAC,SAAS,SAAM;IACzB,SAAS,CAAC,SAAS,SAAM;IACzB,SAAS,CAAC,YAAY,SAAM;IAC5B,SAAS,CAAC,WAAW,SAAM;IAC3B,SAAS,CAAC,WAAW,SAAM;IAC3B,SAAS,CAAC,WAAW,SAAM;IAC3B,SAAS,CAAC,QAAQ,SAAM;IACxB,SAAS,CAAC,WAAW,SAAM;IAC3B,SAAS,CAAC,QAAQ,SAAM;IAEX,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC,sFAAsF;cACtE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBvC,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO;IAInE,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO;IAIlE,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,6BAA6B,GAAG,IAAI;IAM5D,iEAAiE;cACjD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5C,wFAAwF;IACxF,SAAS,CAAC,cAAc,IAAI,IAAI;IAMhC,OAAO,CAAC,eAAe;IAavB,8EAA8E;cAC9D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBlD,yDAAyD;IACzD,SAAS,CAAC,YAAY,IAAI,IAAI;IAI9B,+DAA+D;cAC/C,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB7C,sFAAsF;IACtF,OAAO,CAAC,cAAc;IAatB,qFAAqF;IACrF,OAAO,CAAC,kBAAkB;IAc1B,kGAAkG;IAClG,OAAO,CAAC,YAAY;yCAxLT,oBAAoB;2CAApB,oBAAoB;CA+LhC"}