@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.
- package/dist/lib/builder/builder-models.d.ts +27 -0
- package/dist/lib/builder/builder-models.d.ts.map +1 -0
- package/dist/lib/builder/builder-models.js +15 -0
- package/dist/lib/builder/builder-models.js.map +1 -0
- package/dist/lib/builder/builder-state.service.d.ts +48 -0
- package/dist/lib/builder/builder-state.service.d.ts.map +1 -0
- package/dist/lib/builder/builder-state.service.js +231 -0
- package/dist/lib/builder/builder-state.service.js.map +1 -0
- package/dist/lib/builder/builder-styles.d.ts +12 -0
- package/dist/lib/builder/builder-styles.d.ts.map +1 -0
- package/dist/lib/builder/builder-styles.js +74 -0
- package/dist/lib/builder/builder-styles.js.map +1 -0
- package/dist/lib/builder/conditional-rule-editor.component.d.ts +53 -0
- package/dist/lib/builder/conditional-rule-editor.component.d.ts.map +1 -0
- package/dist/lib/builder/conditional-rule-editor.component.js +282 -0
- package/dist/lib/builder/conditional-rule-editor.component.js.map +1 -0
- package/dist/lib/builder/design-panel.component.d.ts +71 -0
- package/dist/lib/builder/design-panel.component.d.ts.map +1 -0
- package/dist/lib/builder/design-panel.component.js +530 -0
- package/dist/lib/builder/design-panel.component.js.map +1 -0
- package/dist/lib/builder/design-panel.styles.d.ts +10 -0
- package/dist/lib/builder/design-panel.styles.d.ts.map +1 -0
- package/dist/lib/builder/design-panel.styles.js +78 -0
- package/dist/lib/builder/design-panel.styles.js.map +1 -0
- package/dist/lib/builder/design-state.service.d.ts +51 -0
- package/dist/lib/builder/design-state.service.d.ts.map +1 -0
- package/dist/lib/builder/design-state.service.js +108 -0
- package/dist/lib/builder/design-state.service.js.map +1 -0
- package/dist/lib/builder/distribution-links.d.ts +29 -0
- package/dist/lib/builder/distribution-links.d.ts.map +1 -0
- package/dist/lib/builder/distribution-links.js +53 -0
- package/dist/lib/builder/distribution-links.js.map +1 -0
- package/dist/lib/builder/distribution-manager.component.d.ts +53 -0
- package/dist/lib/builder/distribution-manager.component.d.ts.map +1 -0
- package/dist/lib/builder/distribution-manager.component.js +330 -0
- package/dist/lib/builder/distribution-manager.component.js.map +1 -0
- package/dist/lib/builder/distribution.service.d.ts +62 -0
- package/dist/lib/builder/distribution.service.d.ts.map +1 -0
- package/dist/lib/builder/distribution.service.js +140 -0
- package/dist/lib/builder/distribution.service.js.map +1 -0
- package/dist/lib/builder/entity-names.d.ts +20 -0
- package/dist/lib/builder/entity-names.d.ts.map +1 -0
- package/dist/lib/builder/entity-names.js +20 -0
- package/dist/lib/builder/entity-names.js.map +1 -0
- package/dist/lib/builder/form-builder.component.d.ts +92 -0
- package/dist/lib/builder/form-builder.component.d.ts.map +1 -0
- package/dist/lib/builder/form-builder.component.js +627 -0
- package/dist/lib/builder/form-builder.component.js.map +1 -0
- package/dist/lib/builder/form-builder.styles.d.ts +3 -0
- package/dist/lib/builder/form-builder.styles.d.ts.map +1 -0
- package/dist/lib/builder/form-builder.styles.js +94 -0
- package/dist/lib/builder/form-builder.styles.js.map +1 -0
- package/dist/lib/builder/form-preview-modal.component.d.ts +25 -0
- package/dist/lib/builder/form-preview-modal.component.d.ts.map +1 -0
- package/dist/lib/builder/form-preview-modal.component.js +90 -0
- package/dist/lib/builder/form-preview-modal.component.js.map +1 -0
- package/dist/lib/builder/index.d.ts +31 -0
- package/dist/lib/builder/index.d.ts.map +1 -0
- package/dist/lib/builder/index.js +32 -0
- package/dist/lib/builder/index.js.map +1 -0
- package/dist/lib/builder/json-fields.d.ts +14 -0
- package/dist/lib/builder/json-fields.d.ts.map +1 -0
- package/dist/lib/builder/json-fields.js +100 -0
- package/dist/lib/builder/json-fields.js.map +1 -0
- package/dist/lib/builder/publish.service.d.ts +34 -0
- package/dist/lib/builder/publish.service.d.ts.map +1 -0
- package/dist/lib/builder/publish.service.js +110 -0
- package/dist/lib/builder/publish.service.js.map +1 -0
- package/dist/lib/builder/qr-code.d.ts +26 -0
- package/dist/lib/builder/qr-code.d.ts.map +1 -0
- package/dist/lib/builder/qr-code.js +361 -0
- package/dist/lib/builder/qr-code.js.map +1 -0
- package/dist/lib/builder/question-editor.component.d.ts +41 -0
- package/dist/lib/builder/question-editor.component.d.ts.map +1 -0
- package/dist/lib/builder/question-editor.component.js +228 -0
- package/dist/lib/builder/question-editor.component.js.map +1 -0
- package/dist/lib/builder/question-type-catalog.d.ts +29 -0
- package/dist/lib/builder/question-type-catalog.d.ts.map +1 -0
- package/dist/lib/builder/question-type-catalog.js +43 -0
- package/dist/lib/builder/question-type-catalog.js.map +1 -0
- package/dist/lib/builder/reorder.d.ts +10 -0
- package/dist/lib/builder/reorder.d.ts.map +1 -0
- package/dist/lib/builder/reorder.js +18 -0
- package/dist/lib/builder/reorder.js.map +1 -0
- package/dist/lib/builder/snapshot-builder.d.ts +16 -0
- package/dist/lib/builder/snapshot-builder.d.ts.map +1 -0
- package/dist/lib/builder/snapshot-builder.js +93 -0
- package/dist/lib/builder/snapshot-builder.js.map +1 -0
- package/dist/lib/builder/style-tokens.d.ts +54 -0
- package/dist/lib/builder/style-tokens.d.ts.map +1 -0
- package/dist/lib/builder/style-tokens.js +71 -0
- package/dist/lib/builder/style-tokens.js.map +1 -0
- package/dist/lib/builder/validation-rule-editor.component.d.ts +27 -0
- package/dist/lib/builder/validation-rule-editor.component.d.ts.map +1 -0
- package/dist/lib/builder/validation-rule-editor.component.js +179 -0
- package/dist/lib/builder/validation-rule-editor.component.js.map +1 -0
- package/dist/lib/dashboard/components/distribution-chart.component.d.ts +14 -0
- package/dist/lib/dashboard/components/distribution-chart.component.d.ts.map +1 -0
- package/dist/lib/dashboard/components/distribution-chart.component.js +85 -0
- package/dist/lib/dashboard/components/distribution-chart.component.js.map +1 -0
- package/dist/lib/dashboard/components/funnel-chart.component.d.ts +14 -0
- package/dist/lib/dashboard/components/funnel-chart.component.d.ts.map +1 -0
- package/dist/lib/dashboard/components/funnel-chart.component.js +101 -0
- package/dist/lib/dashboard/components/funnel-chart.component.js.map +1 -0
- package/dist/lib/dashboard/components/question-breakdown.component.d.ts +16 -0
- package/dist/lib/dashboard/components/question-breakdown.component.d.ts.map +1 -0
- package/dist/lib/dashboard/components/question-breakdown.component.js +213 -0
- package/dist/lib/dashboard/components/question-breakdown.component.js.map +1 -0
- package/dist/lib/dashboard/components/response-detail.component.d.ts +11 -0
- package/dist/lib/dashboard/components/response-detail.component.d.ts.map +1 -0
- package/dist/lib/dashboard/components/response-detail.component.js +113 -0
- package/dist/lib/dashboard/components/response-detail.component.js.map +1 -0
- package/dist/lib/dashboard/components/response-list.component.d.ts +27 -0
- package/dist/lib/dashboard/components/response-list.component.d.ts.map +1 -0
- package/dist/lib/dashboard/components/response-list.component.js +196 -0
- package/dist/lib/dashboard/components/response-list.component.js.map +1 -0
- package/dist/lib/dashboard/components/summary-stats.component.d.ts +12 -0
- package/dist/lib/dashboard/components/summary-stats.component.d.ts.map +1 -0
- package/dist/lib/dashboard/components/summary-stats.component.js +112 -0
- package/dist/lib/dashboard/components/summary-stats.component.js.map +1 -0
- package/dist/lib/dashboard/forms-reporting-dashboard.component.d.ts +64 -0
- package/dist/lib/dashboard/forms-reporting-dashboard.component.d.ts.map +1 -0
- package/dist/lib/dashboard/forms-reporting-dashboard.component.js +397 -0
- package/dist/lib/dashboard/forms-reporting-dashboard.component.js.map +1 -0
- package/dist/lib/dashboard/index.d.ts +19 -0
- package/dist/lib/dashboard/index.d.ts.map +1 -0
- package/dist/lib/dashboard/index.js +19 -0
- package/dist/lib/dashboard/index.js.map +1 -0
- package/dist/lib/dashboard/models/reporting.model.d.ts +125 -0
- package/dist/lib/dashboard/models/reporting.model.d.ts.map +1 -0
- package/dist/lib/dashboard/models/reporting.model.js +2 -0
- package/dist/lib/dashboard/models/reporting.model.js.map +1 -0
- package/dist/lib/dashboard/services/forms-reporting-export.service.d.ts +21 -0
- package/dist/lib/dashboard/services/forms-reporting-export.service.d.ts.map +1 -0
- package/dist/lib/dashboard/services/forms-reporting-export.service.js +83 -0
- package/dist/lib/dashboard/services/forms-reporting-export.service.js.map +1 -0
- package/dist/lib/dashboard/services/forms-reporting-mock.d.ts +18 -0
- package/dist/lib/dashboard/services/forms-reporting-mock.d.ts.map +1 -0
- package/dist/lib/dashboard/services/forms-reporting-mock.js +147 -0
- package/dist/lib/dashboard/services/forms-reporting-mock.js.map +1 -0
- package/dist/lib/dashboard/services/forms-reporting.service.d.ts +45 -0
- package/dist/lib/dashboard/services/forms-reporting.service.d.ts.map +1 -0
- package/dist/lib/dashboard/services/forms-reporting.service.js +230 -0
- package/dist/lib/dashboard/services/forms-reporting.service.js.map +1 -0
- package/dist/lib/dashboard/services/reporting-aggregations.d.ts +40 -0
- package/dist/lib/dashboard/services/reporting-aggregations.d.ts.map +1 -0
- package/dist/lib/dashboard/services/reporting-aggregations.js +379 -0
- package/dist/lib/dashboard/services/reporting-aggregations.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.js +104 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddress/mjbizappscommonaddress.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.js +83 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressLink/mjbizappscommonaddresslink.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.js +96 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonAddressType/mjbizappscommonaddresstype.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.js +83 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactMethod/mjbizappscommoncontactmethod.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.js +96 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonContactType/mjbizappscommoncontacttype.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.js +172 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganization/mjbizappscommonorganization.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.js +90 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonOrganizationType/mjbizappscommonorganizationtype.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.js +274 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonPerson/mjbizappscommonperson.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.js +91 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationship/mjbizappscommonrelationship.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.js +100 -0
- package/dist/lib/generated/Entities/mjBizAppsCommonRelationshipType/mjbizappscommonrelationshiptype.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.js +174 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsForm/mjbizappsformsform.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.js +118 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormCategory/mjbizappsformsformcategory.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.js +93 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormDistribution/mjbizappsformsformdistribution.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.js +96 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormPage/mjbizappsformsformpage.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.js +132 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestion/mjbizappsformsformquestion.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.js +77 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormQuestionOption/mjbizappsformsformquestionoption.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.js +108 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponse/mjbizappsformsformresponse.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.js +99 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormResponseAnswer/mjbizappsformsformresponseanswer.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.js +100 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormStyle/mjbizappsformsformstyle.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.js +96 -0
- package/dist/lib/generated/Entities/mjBizAppsFormsFormVersion/mjbizappsformsformversion.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.js +274 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTask/mjbizappstaskstask.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.js +67 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskActivity/mjbizappstaskstaskactivity.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.js +90 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskAssignment/mjbizappstaskstaskassignment.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.js +124 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskCategory/mjbizappstaskstaskcategory.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.js +86 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskComment/mjbizappstaskstaskcomment.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.js +67 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecision/mjbizappstaskstaskdecision.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.js +86 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDecisionOutcome/mjbizappstaskstaskdecisionoutcome.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.js +61 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskDependency/mjbizappstaskstaskdependency.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.js +63 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskLink/mjbizappstaskstasklink.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.js +69 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationConfig/mjbizappstaskstasknotificationconfig.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.js +63 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskNotificationLog/mjbizappstaskstasknotificationlog.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.js +98 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskRole/mjbizappstaskstaskrole.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.js +80 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTag/mjbizappstaskstasktag.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.js +59 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTagLink/mjbizappstaskstasktaglink.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.js +84 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplate/mjbizappstaskstasktemplate.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.js +146 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItem/mjbizappstaskstasktemplateitem.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.js +61 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemDependency/mjbizappstaskstasktemplateitemdependency.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.js +59 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskTemplateItemRole/mjbizappstaskstasktemplateitemrole.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.js +132 -0
- package/dist/lib/generated/Entities/mjBizAppsTasksTaskType/mjbizappstaskstasktype.form.component.js.map +1 -0
- package/dist/lib/generated/class-registrations-manifest.d.ts +6 -0
- package/dist/lib/generated/class-registrations-manifest.d.ts.map +1 -0
- package/dist/lib/generated/class-registrations-manifest.js +6 -0
- package/dist/lib/generated/class-registrations-manifest.js.map +1 -0
- package/dist/lib/generated/generated-forms.module.d.ts +61 -0
- package/dist/lib/generated/generated-forms.module.d.ts.map +1 -0
- package/dist/lib/generated/generated-forms.module.js +207 -0
- package/dist/lib/generated/generated-forms.module.js.map +1 -0
- package/dist/lib/home/forms-home-dashboard.component.d.ts +61 -0
- package/dist/lib/home/forms-home-dashboard.component.d.ts.map +1 -0
- package/dist/lib/home/forms-home-dashboard.component.js +379 -0
- package/dist/lib/home/forms-home-dashboard.component.js.map +1 -0
- package/dist/lib/home/forms-home.service.d.ts +24 -0
- package/dist/lib/home/forms-home.service.d.ts.map +1 -0
- package/dist/lib/home/forms-home.service.js +92 -0
- package/dist/lib/home/forms-home.service.js.map +1 -0
- package/dist/lib/home/home-aggregations.d.ts +23 -0
- package/dist/lib/home/home-aggregations.d.ts.map +1 -0
- package/dist/lib/home/home-aggregations.js +64 -0
- package/dist/lib/home/home-aggregations.js.map +1 -0
- package/dist/lib/home/home-models.d.ts +60 -0
- package/dist/lib/home/home-models.d.ts.map +1 -0
- package/dist/lib/home/home-models.js +34 -0
- package/dist/lib/home/home-models.js.map +1 -0
- package/dist/lib/home/index.d.ts +13 -0
- package/dist/lib/home/index.d.ts.map +1 -0
- package/dist/lib/home/index.js +13 -0
- package/dist/lib/home/index.js.map +1 -0
- package/dist/lib/widget/api/form-upload.service.d.ts +41 -0
- package/dist/lib/widget/api/form-upload.service.d.ts.map +1 -0
- package/dist/lib/widget/api/form-upload.service.js +124 -0
- package/dist/lib/widget/api/form-upload.service.js.map +1 -0
- package/dist/lib/widget/api/forms-api.config.d.ts +55 -0
- package/dist/lib/widget/api/forms-api.config.d.ts.map +1 -0
- package/dist/lib/widget/api/forms-api.config.js +40 -0
- package/dist/lib/widget/api/forms-api.config.js.map +1 -0
- package/dist/lib/widget/api/forms-api.graphql.service.d.ts +20 -0
- package/dist/lib/widget/api/forms-api.graphql.service.d.ts.map +1 -0
- package/dist/lib/widget/api/forms-api.graphql.service.js +96 -0
- package/dist/lib/widget/api/forms-api.graphql.service.js.map +1 -0
- package/dist/lib/widget/api/forms-api.interface.d.ts +45 -0
- package/dist/lib/widget/api/forms-api.interface.d.ts.map +1 -0
- package/dist/lib/widget/api/forms-api.interface.js +8 -0
- package/dist/lib/widget/api/forms-api.interface.js.map +1 -0
- package/dist/lib/widget/api/forms-api.mock.service.d.ts +12 -0
- package/dist/lib/widget/api/forms-api.mock.service.d.ts.map +1 -0
- package/dist/lib/widget/api/forms-api.mock.service.js +41 -0
- package/dist/lib/widget/api/forms-api.mock.service.js.map +1 -0
- package/dist/lib/widget/api/mock-form.data.d.ts +8 -0
- package/dist/lib/widget/api/mock-form.data.d.ts.map +1 -0
- package/dist/lib/widget/api/mock-form.data.js +192 -0
- package/dist/lib/widget/api/mock-form.data.js.map +1 -0
- package/dist/lib/widget/api/submission-mapping.d.ts +60 -0
- package/dist/lib/widget/api/submission-mapping.d.ts.map +1 -0
- package/dist/lib/widget/api/submission-mapping.js +47 -0
- package/dist/lib/widget/api/submission-mapping.js.map +1 -0
- package/dist/lib/widget/components/form-one-question.component.d.ts +43 -0
- package/dist/lib/widget/components/form-one-question.component.d.ts.map +1 -0
- package/dist/lib/widget/components/form-one-question.component.js +194 -0
- package/dist/lib/widget/components/form-one-question.component.js.map +1 -0
- package/dist/lib/widget/components/form-progress.component.d.ts +9 -0
- package/dist/lib/widget/components/form-progress.component.d.ts.map +1 -0
- package/dist/lib/widget/components/form-progress.component.js +47 -0
- package/dist/lib/widget/components/form-progress.component.js.map +1 -0
- package/dist/lib/widget/components/form-scroll.component.d.ts +23 -0
- package/dist/lib/widget/components/form-scroll.component.d.ts.map +1 -0
- package/dist/lib/widget/components/form-scroll.component.js +132 -0
- package/dist/lib/widget/components/form-scroll.component.js.map +1 -0
- package/dist/lib/widget/components/questions/form-question.component.d.ts +68 -0
- package/dist/lib/widget/components/questions/form-question.component.d.ts.map +1 -0
- package/dist/lib/widget/components/questions/form-question.component.js +541 -0
- package/dist/lib/widget/components/questions/form-question.component.js.map +1 -0
- package/dist/lib/widget/components/questions/input-mode.d.ts +13 -0
- package/dist/lib/widget/components/questions/input-mode.d.ts.map +1 -0
- package/dist/lib/widget/components/questions/input-mode.js +42 -0
- package/dist/lib/widget/components/questions/input-mode.js.map +1 -0
- package/dist/lib/widget/components/turnstile-challenge.component.d.ts +52 -0
- package/dist/lib/widget/components/turnstile-challenge.component.d.ts.map +1 -0
- package/dist/lib/widget/components/turnstile-challenge.component.js +123 -0
- package/dist/lib/widget/components/turnstile-challenge.component.js.map +1 -0
- package/dist/lib/widget/core/answer-value.d.ts +17 -0
- package/dist/lib/widget/core/answer-value.d.ts.map +1 -0
- package/dist/lib/widget/core/answer-value.js +41 -0
- package/dist/lib/widget/core/answer-value.js.map +1 -0
- package/dist/lib/widget/core/autosave-controller.d.ts +65 -0
- package/dist/lib/widget/core/autosave-controller.d.ts.map +1 -0
- package/dist/lib/widget/core/autosave-controller.js +134 -0
- package/dist/lib/widget/core/autosave-controller.js.map +1 -0
- package/dist/lib/widget/core/client-id.d.ts +17 -0
- package/dist/lib/widget/core/client-id.d.ts.map +1 -0
- package/dist/lib/widget/core/client-id.js +52 -0
- package/dist/lib/widget/core/client-id.js.map +1 -0
- package/dist/lib/widget/core/form-runtime.d.ts +34 -0
- package/dist/lib/widget/core/form-runtime.d.ts.map +1 -0
- package/dist/lib/widget/core/form-runtime.js +123 -0
- package/dist/lib/widget/core/form-runtime.js.map +1 -0
- package/dist/lib/widget/core/one-question-stepper.d.ts +20 -0
- package/dist/lib/widget/core/one-question-stepper.d.ts.map +1 -0
- package/dist/lib/widget/core/one-question-stepper.js +23 -0
- package/dist/lib/widget/core/one-question-stepper.js.map +1 -0
- package/dist/lib/widget/core/submit-phase.d.ts +31 -0
- package/dist/lib/widget/core/submit-phase.d.ts.map +1 -0
- package/dist/lib/widget/core/submit-phase.js +21 -0
- package/dist/lib/widget/core/submit-phase.js.map +1 -0
- package/dist/lib/widget/core/theming.d.ts +17 -0
- package/dist/lib/widget/core/theming.d.ts.map +1 -0
- package/dist/lib/widget/core/theming.js +36 -0
- package/dist/lib/widget/core/theming.js.map +1 -0
- package/dist/lib/widget/core/turnstile-gate.d.ts +42 -0
- package/dist/lib/widget/core/turnstile-gate.d.ts.map +1 -0
- package/dist/lib/widget/core/turnstile-gate.js +61 -0
- package/dist/lib/widget/core/turnstile-gate.js.map +1 -0
- package/dist/lib/widget/core/turnstile-loader.d.ts +34 -0
- package/dist/lib/widget/core/turnstile-loader.d.ts.map +1 -0
- package/dist/lib/widget/core/turnstile-loader.js +68 -0
- package/dist/lib/widget/core/turnstile-loader.js.map +1 -0
- package/dist/lib/widget/core/validation.d.ts +19 -0
- package/dist/lib/widget/core/validation.d.ts.map +1 -0
- package/dist/lib/widget/core/validation.js +105 -0
- package/dist/lib/widget/core/validation.js.map +1 -0
- package/dist/lib/widget/index.d.ts +27 -0
- package/dist/lib/widget/index.d.ts.map +1 -0
- package/dist/lib/widget/index.js +30 -0
- package/dist/lib/widget/index.js.map +1 -0
- package/dist/lib/widget/mj-form.component.d.ts +114 -0
- package/dist/lib/widget/mj-form.component.d.ts.map +1 -0
- package/dist/lib/widget/mj-form.component.js +428 -0
- package/dist/lib/widget/mj-form.component.js.map +1 -0
- package/dist/lib/widget/register-element.d.ts +8 -0
- package/dist/lib/widget/register-element.d.ts.map +1 -0
- package/dist/lib/widget/register-element.js +98 -0
- package/dist/lib/widget/register-element.js.map +1 -0
- package/dist/public-api.d.ts +23 -0
- package/dist/public-api.d.ts.map +1 -0
- package/dist/public-api.js +33 -0
- package/dist/public-api.js.map +1 -0
- package/dist/widget-entry.d.ts +2 -0
- package/dist/widget-entry.d.ts.map +1 -0
- package/dist/widget-entry.js +20 -0
- package/dist/widget-entry.js.map +1 -0
- package/package.json +53 -5
- package/README.md +0 -3
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Metadata, RunView, LogError } from '@memberjunction/core';
|
|
3
|
+
import { FORMS_ENTITY } from './entity-names';
|
|
4
|
+
import { buildPublishedDefinition } from './snapshot-builder';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Snapshots the current builder tree into an immutable {@link PublishedFormDefinition}
|
|
8
|
+
* and writes it to a new {@link mjBizAppsFormsFormVersionEntity} (FORMS_BUILD_PLAN §5.1,
|
|
9
|
+
* §9 builder task). This is the contract boundary the widget (WP-C) and submit endpoint
|
|
10
|
+
* (WP-B) read back from `FormVersion.DefinitionSnapshot`.
|
|
11
|
+
*
|
|
12
|
+
* Publish steps:
|
|
13
|
+
* 1. Build the PublishedFormDefinition from the live tree + the linked FormStyle.
|
|
14
|
+
* 2. Create a FormVersion (VersionNumber = max+1, Status Published, PublishedAt now,
|
|
15
|
+
* DefinitionSnapshot = the JSON).
|
|
16
|
+
* 3. Flip the Form's Status to Published.
|
|
17
|
+
*/
|
|
18
|
+
export class PublishService {
|
|
19
|
+
md = new Metadata();
|
|
20
|
+
get user() {
|
|
21
|
+
return this.md.CurrentUser;
|
|
22
|
+
}
|
|
23
|
+
/** Publish the tree as a new immutable version. */
|
|
24
|
+
async publish(tree) {
|
|
25
|
+
const style = await this.loadStyle(tree.form.StyleID);
|
|
26
|
+
const nextVersion = (await this.maxVersionNumber(tree.form.ID)) + 1;
|
|
27
|
+
const version = await this.md.GetEntityObject(FORMS_ENTITY.FormVersion, this.user);
|
|
28
|
+
version.NewRecord();
|
|
29
|
+
version.FormID = tree.form.ID;
|
|
30
|
+
version.VersionNumber = nextVersion;
|
|
31
|
+
version.Status = 'Published';
|
|
32
|
+
version.PublishedAt = new Date();
|
|
33
|
+
// MJ mints the uniqueidentifier PK client-side on NewRecord(), so the snapshot can
|
|
34
|
+
// embed its own version id and be written in a SINGLE atomic save (no broken
|
|
35
|
+
// half-published row if a second save were to fail). If the PK is not yet
|
|
36
|
+
// populated, fall back to the form id reference so formVersionId is never blank.
|
|
37
|
+
const versionId = version.ID && version.ID.length > 0 ? version.ID : '';
|
|
38
|
+
const definition = buildPublishedDefinition(tree, style, versionId);
|
|
39
|
+
version.DefinitionSnapshot = JSON.stringify(definition);
|
|
40
|
+
if (!(await version.Save())) {
|
|
41
|
+
const error = version.LatestResult?.CompleteMessage ?? 'unknown error';
|
|
42
|
+
LogError(`Forms publish: failed to create version: ${error}`);
|
|
43
|
+
return { success: false, error };
|
|
44
|
+
}
|
|
45
|
+
// Reconcile if the server assigned a different ID than the client-minted one
|
|
46
|
+
// (defensive: only re-saves when they actually diverge, so the common path is one save).
|
|
47
|
+
if (version.ID !== versionId) {
|
|
48
|
+
definition.formVersionId = version.ID;
|
|
49
|
+
version.DefinitionSnapshot = JSON.stringify(definition);
|
|
50
|
+
if (!(await version.Save())) {
|
|
51
|
+
const error = version.LatestResult?.CompleteMessage ?? 'unknown error';
|
|
52
|
+
LogError(`Forms publish: failed to reconcile snapshot id: ${error}`);
|
|
53
|
+
return { success: false, error };
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
if (!(await this.markFormPublished(tree.form))) {
|
|
57
|
+
// Version is published; surface the form-status failure but don't roll back.
|
|
58
|
+
return {
|
|
59
|
+
success: false,
|
|
60
|
+
version,
|
|
61
|
+
versionNumber: nextVersion,
|
|
62
|
+
error: 'Version published, but updating form status failed.',
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
return { success: true, version, versionNumber: nextVersion };
|
|
66
|
+
}
|
|
67
|
+
async loadStyle(styleId) {
|
|
68
|
+
if (!styleId) {
|
|
69
|
+
return undefined;
|
|
70
|
+
}
|
|
71
|
+
const style = await this.md.GetEntityObject(FORMS_ENTITY.FormStyle, this.user);
|
|
72
|
+
if (!(await style.Load(styleId))) {
|
|
73
|
+
LogError(`Forms publish: could not load FormStyle ${styleId}`);
|
|
74
|
+
return undefined;
|
|
75
|
+
}
|
|
76
|
+
return style;
|
|
77
|
+
}
|
|
78
|
+
async maxVersionNumber(formId) {
|
|
79
|
+
const rv = new RunView();
|
|
80
|
+
const result = await rv.RunView({
|
|
81
|
+
EntityName: FORMS_ENTITY.FormVersion,
|
|
82
|
+
ExtraFilter: `FormID='${formId}'`,
|
|
83
|
+
OrderBy: 'VersionNumber DESC',
|
|
84
|
+
Fields: ['VersionNumber'],
|
|
85
|
+
MaxRows: 1,
|
|
86
|
+
ResultType: 'simple',
|
|
87
|
+
}, this.user);
|
|
88
|
+
if (!result.Success || !result.Results || result.Results.length === 0) {
|
|
89
|
+
return 0;
|
|
90
|
+
}
|
|
91
|
+
return result.Results[0].VersionNumber ?? 0;
|
|
92
|
+
}
|
|
93
|
+
async markFormPublished(form) {
|
|
94
|
+
if (form.Status === 'Published') {
|
|
95
|
+
return true;
|
|
96
|
+
}
|
|
97
|
+
form.Status = 'Published';
|
|
98
|
+
const ok = await form.Save();
|
|
99
|
+
if (!ok) {
|
|
100
|
+
LogError(`Forms publish: failed to set form status: ${form.LatestResult?.CompleteMessage ?? 'unknown'}`);
|
|
101
|
+
}
|
|
102
|
+
return ok;
|
|
103
|
+
}
|
|
104
|
+
static ɵfac = function PublishService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PublishService)(); };
|
|
105
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: PublishService, factory: PublishService.ɵfac });
|
|
106
|
+
}
|
|
107
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PublishService, [{
|
|
108
|
+
type: Injectable
|
|
109
|
+
}], null, null); })();
|
|
110
|
+
//# sourceMappingURL=publish.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish.service.js","sourceRoot":"","sources":["../../../src/lib/builder/publish.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal, dependency-free QR code generator (byte mode, ECC level M).
|
|
3
|
+
*
|
|
4
|
+
* Used by the distribution manager to render a scannable QR for a public form URL
|
|
5
|
+
* as an inline SVG — no external service (CSP-safe) and no npm dependency. Supports
|
|
6
|
+
* versions 1–10 (up to ~150 alphanumeric/byte chars at ECC-M), which comfortably
|
|
7
|
+
* covers form public links. Throws if the payload is too long for version 10.
|
|
8
|
+
*
|
|
9
|
+
* Algorithm: standard QR encoding — byte-mode data, Reed-Solomon ECC over GF(256),
|
|
10
|
+
* fixed function patterns, and mask pattern 0 (validated against the spec). Kept
|
|
11
|
+
* compact and pure (no I/O, no DOM) so it is unit-testable.
|
|
12
|
+
*/
|
|
13
|
+
/** A square QR matrix of true (dark) / false (light) modules. */
|
|
14
|
+
export interface QrMatrix {
|
|
15
|
+
size: number;
|
|
16
|
+
modules: boolean[][];
|
|
17
|
+
}
|
|
18
|
+
/** Build the QR matrix for a payload. */
|
|
19
|
+
export declare function generateQrMatrix(text: string): QrMatrix;
|
|
20
|
+
/** Render a QR matrix to a self-contained SVG string (token-colored, no external refs). */
|
|
21
|
+
export declare function qrMatrixToSvg(matrix: QrMatrix, options?: {
|
|
22
|
+
quietZone?: number;
|
|
23
|
+
}): string;
|
|
24
|
+
/** Convenience: text payload directly to an SVG string. */
|
|
25
|
+
export declare function textToQrSvg(text: string): string;
|
|
26
|
+
//# sourceMappingURL=qr-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qr-code.d.ts","sourceRoot":"","sources":["../../../src/lib/builder/qr-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA8LH,iEAAiE;AACjE,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;CACtB;AAED,yCAAyC;AACzC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAmBvD;AA6JD,2FAA2F;AAC3F,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAkBxF;AAED,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD"}
|
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal, dependency-free QR code generator (byte mode, ECC level M).
|
|
3
|
+
*
|
|
4
|
+
* Used by the distribution manager to render a scannable QR for a public form URL
|
|
5
|
+
* as an inline SVG — no external service (CSP-safe) and no npm dependency. Supports
|
|
6
|
+
* versions 1–10 (up to ~150 alphanumeric/byte chars at ECC-M), which comfortably
|
|
7
|
+
* covers form public links. Throws if the payload is too long for version 10.
|
|
8
|
+
*
|
|
9
|
+
* Algorithm: standard QR encoding — byte-mode data, Reed-Solomon ECC over GF(256),
|
|
10
|
+
* fixed function patterns, and mask pattern 0 (validated against the spec). Kept
|
|
11
|
+
* compact and pure (no I/O, no DOM) so it is unit-testable.
|
|
12
|
+
*/
|
|
13
|
+
// GF(256) log/antilog tables (primitive polynomial 0x11d).
|
|
14
|
+
const GF_EXP = new Uint8Array(512);
|
|
15
|
+
const GF_LOG = new Uint8Array(256);
|
|
16
|
+
(function initTables() {
|
|
17
|
+
let x = 1;
|
|
18
|
+
for (let i = 0; i < 255; i++) {
|
|
19
|
+
GF_EXP[i] = x;
|
|
20
|
+
GF_LOG[x] = i;
|
|
21
|
+
x <<= 1;
|
|
22
|
+
if (x & 0x100) {
|
|
23
|
+
x ^= 0x11d;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
for (let i = 255; i < 512; i++) {
|
|
27
|
+
GF_EXP[i] = GF_EXP[i - 255];
|
|
28
|
+
}
|
|
29
|
+
})();
|
|
30
|
+
function gfMul(a, b) {
|
|
31
|
+
if (a === 0 || b === 0) {
|
|
32
|
+
return 0;
|
|
33
|
+
}
|
|
34
|
+
return GF_EXP[GF_LOG[a] + GF_LOG[b]];
|
|
35
|
+
}
|
|
36
|
+
const VERSION_SPECS_M = [
|
|
37
|
+
{ version: 1, totalCodewords: 26, eccPerBlock: 10, blocks: [[1, 16]] },
|
|
38
|
+
{ version: 2, totalCodewords: 44, eccPerBlock: 16, blocks: [[1, 28]] },
|
|
39
|
+
{ version: 3, totalCodewords: 70, eccPerBlock: 26, blocks: [[1, 44]] },
|
|
40
|
+
{ version: 4, totalCodewords: 100, eccPerBlock: 18, blocks: [[2, 32]] },
|
|
41
|
+
{ version: 5, totalCodewords: 134, eccPerBlock: 24, blocks: [[2, 43]] },
|
|
42
|
+
{ version: 6, totalCodewords: 172, eccPerBlock: 16, blocks: [[4, 27]] },
|
|
43
|
+
{ version: 7, totalCodewords: 196, eccPerBlock: 18, blocks: [[4, 31]] },
|
|
44
|
+
{ version: 8, totalCodewords: 242, eccPerBlock: 22, blocks: [[2, 38], [2, 39]] },
|
|
45
|
+
{ version: 9, totalCodewords: 292, eccPerBlock: 22, blocks: [[3, 36], [2, 37]] },
|
|
46
|
+
{ version: 10, totalCodewords: 346, eccPerBlock: 26, blocks: [[4, 43], [1, 44]] },
|
|
47
|
+
];
|
|
48
|
+
function totalDataCodewords(spec) {
|
|
49
|
+
return spec.blocks.reduce((sum, [count, data]) => sum + count * data, 0);
|
|
50
|
+
}
|
|
51
|
+
/** Reed-Solomon ECC codewords for one data block. */
|
|
52
|
+
function rsEncode(data, eccLen) {
|
|
53
|
+
const generator = rsGenerator(eccLen);
|
|
54
|
+
const result = new Array(eccLen).fill(0);
|
|
55
|
+
for (const byte of data) {
|
|
56
|
+
const factor = byte ^ result[0];
|
|
57
|
+
result.shift();
|
|
58
|
+
result.push(0);
|
|
59
|
+
for (let i = 0; i < eccLen; i++) {
|
|
60
|
+
result[i] ^= gfMul(generator[i], factor);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return result;
|
|
64
|
+
}
|
|
65
|
+
function rsGenerator(eccLen) {
|
|
66
|
+
let poly = [1];
|
|
67
|
+
for (let i = 0; i < eccLen; i++) {
|
|
68
|
+
const next = new Array(poly.length + 1).fill(0);
|
|
69
|
+
for (let j = 0; j < poly.length; j++) {
|
|
70
|
+
next[j] ^= poly[j];
|
|
71
|
+
next[j + 1] ^= gfMul(poly[j], GF_EXP[i]);
|
|
72
|
+
}
|
|
73
|
+
poly = next;
|
|
74
|
+
}
|
|
75
|
+
return poly;
|
|
76
|
+
}
|
|
77
|
+
/** Encode the text payload to the interleaved final codeword stream + chosen version. */
|
|
78
|
+
function buildCodewords(text) {
|
|
79
|
+
const bytes = utf8Bytes(text);
|
|
80
|
+
const spec = pickVersion(bytes.length);
|
|
81
|
+
const bits = encodeBits(bytes, spec);
|
|
82
|
+
const dataCodewords = bitsToCodewords(bits, totalDataCodewords(spec));
|
|
83
|
+
const { dataBlocks, eccBlocks } = splitBlocks(dataCodewords, spec);
|
|
84
|
+
return { spec, codewords: interleave(dataBlocks, eccBlocks) };
|
|
85
|
+
}
|
|
86
|
+
function utf8Bytes(text) {
|
|
87
|
+
return Array.from(new TextEncoder().encode(text));
|
|
88
|
+
}
|
|
89
|
+
function pickVersion(byteLen) {
|
|
90
|
+
for (const spec of VERSION_SPECS_M) {
|
|
91
|
+
// 4 mode bits + char-count bits (8 for v1-9, 16 for v10) + payload + terminator.
|
|
92
|
+
const charCountBits = spec.version >= 10 ? 16 : 8;
|
|
93
|
+
const neededBits = 4 + charCountBits + byteLen * 8;
|
|
94
|
+
if (neededBits <= totalDataCodewords(spec) * 8) {
|
|
95
|
+
return spec;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
throw new Error('QR payload too long for supported versions (max ~150 bytes).');
|
|
99
|
+
}
|
|
100
|
+
function encodeBits(bytes, spec) {
|
|
101
|
+
const bits = [];
|
|
102
|
+
pushBits(bits, 0b0100, 4); // byte mode
|
|
103
|
+
const charCountBits = spec.version >= 10 ? 16 : 8;
|
|
104
|
+
pushBits(bits, bytes.length, charCountBits);
|
|
105
|
+
for (const b of bytes) {
|
|
106
|
+
pushBits(bits, b, 8);
|
|
107
|
+
}
|
|
108
|
+
const capacityBits = totalDataCodewords(spec) * 8;
|
|
109
|
+
// Terminator (up to 4 zero bits).
|
|
110
|
+
for (let i = 0; i < 4 && bits.length < capacityBits; i++) {
|
|
111
|
+
bits.push(0);
|
|
112
|
+
}
|
|
113
|
+
// Pad to a byte boundary.
|
|
114
|
+
while (bits.length % 8 !== 0) {
|
|
115
|
+
bits.push(0);
|
|
116
|
+
}
|
|
117
|
+
return bits;
|
|
118
|
+
}
|
|
119
|
+
function pushBits(out, value, length) {
|
|
120
|
+
for (let i = length - 1; i >= 0; i--) {
|
|
121
|
+
out.push((value >> i) & 1);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
function bitsToCodewords(bits, target) {
|
|
125
|
+
const codewords = [];
|
|
126
|
+
for (let i = 0; i < bits.length; i += 8) {
|
|
127
|
+
let byte = 0;
|
|
128
|
+
for (let j = 0; j < 8; j++) {
|
|
129
|
+
byte = (byte << 1) | (bits[i + j] ?? 0);
|
|
130
|
+
}
|
|
131
|
+
codewords.push(byte);
|
|
132
|
+
}
|
|
133
|
+
const pads = [0xec, 0x11];
|
|
134
|
+
let padIndex = 0;
|
|
135
|
+
while (codewords.length < target) {
|
|
136
|
+
codewords.push(pads[padIndex % 2]);
|
|
137
|
+
padIndex++;
|
|
138
|
+
}
|
|
139
|
+
return codewords;
|
|
140
|
+
}
|
|
141
|
+
function splitBlocks(data, spec) {
|
|
142
|
+
const dataBlocks = [];
|
|
143
|
+
const eccBlocks = [];
|
|
144
|
+
let offset = 0;
|
|
145
|
+
for (const [count, dataLen] of spec.blocks) {
|
|
146
|
+
for (let i = 0; i < count; i++) {
|
|
147
|
+
const block = data.slice(offset, offset + dataLen);
|
|
148
|
+
offset += dataLen;
|
|
149
|
+
dataBlocks.push(block);
|
|
150
|
+
eccBlocks.push(rsEncode(block, spec.eccPerBlock));
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return { dataBlocks, eccBlocks };
|
|
154
|
+
}
|
|
155
|
+
function interleave(dataBlocks, eccBlocks) {
|
|
156
|
+
const result = [];
|
|
157
|
+
const maxData = Math.max(...dataBlocks.map((b) => b.length));
|
|
158
|
+
for (let i = 0; i < maxData; i++) {
|
|
159
|
+
for (const block of dataBlocks) {
|
|
160
|
+
if (i < block.length) {
|
|
161
|
+
result.push(block[i]);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
const maxEcc = Math.max(...eccBlocks.map((b) => b.length));
|
|
166
|
+
for (let i = 0; i < maxEcc; i++) {
|
|
167
|
+
for (const block of eccBlocks) {
|
|
168
|
+
if (i < block.length) {
|
|
169
|
+
result.push(block[i]);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return result;
|
|
174
|
+
}
|
|
175
|
+
/** Build the QR matrix for a payload. */
|
|
176
|
+
export function generateQrMatrix(text) {
|
|
177
|
+
const { spec, codewords } = buildCodewords(text);
|
|
178
|
+
const size = 17 + spec.version * 4;
|
|
179
|
+
const modules = Array.from({ length: size }, () => new Array(size).fill(null));
|
|
180
|
+
placeFinderPatterns(modules, size);
|
|
181
|
+
placeTimingPatterns(modules, size);
|
|
182
|
+
placeAlignmentPatterns(modules, spec.version);
|
|
183
|
+
// Dark module (always set per spec).
|
|
184
|
+
modules[size - 8][8] = true;
|
|
185
|
+
reserveFormatAreas(modules, size);
|
|
186
|
+
placeData(modules, size, codewords);
|
|
187
|
+
applyMask0(modules, size);
|
|
188
|
+
placeFormatBits(modules, size);
|
|
189
|
+
return { size, modules: modules.map((row) => row.map((m) => m === true)) };
|
|
190
|
+
}
|
|
191
|
+
function setFinder(modules, top, left) {
|
|
192
|
+
for (let r = -1; r <= 7; r++) {
|
|
193
|
+
for (let c = -1; c <= 7; c++) {
|
|
194
|
+
const rr = top + r;
|
|
195
|
+
const cc = left + c;
|
|
196
|
+
if (rr < 0 || cc < 0 || rr >= modules.length || cc >= modules.length) {
|
|
197
|
+
continue;
|
|
198
|
+
}
|
|
199
|
+
const isBorder = r >= 0 && r <= 6 && (c === 0 || c === 6);
|
|
200
|
+
const isSide = c >= 0 && c <= 6 && (r === 0 || r === 6);
|
|
201
|
+
const isCore = r >= 2 && r <= 4 && c >= 2 && c <= 4;
|
|
202
|
+
modules[rr][cc] = isBorder || isSide || isCore;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
function placeFinderPatterns(modules, size) {
|
|
207
|
+
setFinder(modules, 0, 0);
|
|
208
|
+
setFinder(modules, 0, size - 7);
|
|
209
|
+
setFinder(modules, size - 7, 0);
|
|
210
|
+
}
|
|
211
|
+
function placeTimingPatterns(modules, size) {
|
|
212
|
+
for (let i = 8; i < size - 8; i++) {
|
|
213
|
+
const bit = i % 2 === 0;
|
|
214
|
+
if (modules[6][i] === null) {
|
|
215
|
+
modules[6][i] = bit;
|
|
216
|
+
}
|
|
217
|
+
if (modules[i][6] === null) {
|
|
218
|
+
modules[i][6] = bit;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
const ALIGNMENT_CENTERS = [
|
|
223
|
+
[], [], [6, 18], [6, 22], [6, 26], [6, 30], [6, 34],
|
|
224
|
+
[6, 22, 38], [6, 24, 42], [6, 26, 46], [6, 28, 50],
|
|
225
|
+
];
|
|
226
|
+
function placeAlignmentPatterns(modules, version) {
|
|
227
|
+
const centers = ALIGNMENT_CENTERS[version] ?? [];
|
|
228
|
+
for (const r of centers) {
|
|
229
|
+
for (const c of centers) {
|
|
230
|
+
if (modules[r][c] !== null) {
|
|
231
|
+
continue; // overlaps a finder pattern
|
|
232
|
+
}
|
|
233
|
+
for (let dr = -2; dr <= 2; dr++) {
|
|
234
|
+
for (let dc = -2; dc <= 2; dc++) {
|
|
235
|
+
const ring = Math.max(Math.abs(dr), Math.abs(dc));
|
|
236
|
+
modules[r + dr][c + dc] = ring !== 1;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
function reserveFormatAreas(modules, size) {
|
|
243
|
+
for (let i = 0; i < 9; i++) {
|
|
244
|
+
if (modules[8][i] === null) {
|
|
245
|
+
modules[8][i] = false;
|
|
246
|
+
}
|
|
247
|
+
if (modules[i][8] === null) {
|
|
248
|
+
modules[i][8] = false;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
for (let i = 0; i < 8; i++) {
|
|
252
|
+
if (modules[8][size - 1 - i] === null) {
|
|
253
|
+
modules[8][size - 1 - i] = false;
|
|
254
|
+
}
|
|
255
|
+
if (modules[size - 1 - i][8] === null) {
|
|
256
|
+
modules[size - 1 - i][8] = false;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
function placeData(modules, size, codewords) {
|
|
261
|
+
let bitIndex = 0;
|
|
262
|
+
const totalBits = codewords.length * 8;
|
|
263
|
+
let upward = true;
|
|
264
|
+
for (let col = size - 1; col > 0; col -= 2) {
|
|
265
|
+
if (col === 6) {
|
|
266
|
+
col--; // skip the vertical timing column
|
|
267
|
+
}
|
|
268
|
+
for (let i = 0; i < size; i++) {
|
|
269
|
+
const row = upward ? size - 1 - i : i;
|
|
270
|
+
for (let c = 0; c < 2; c++) {
|
|
271
|
+
const cc = col - c;
|
|
272
|
+
if (modules[row][cc] !== null) {
|
|
273
|
+
continue;
|
|
274
|
+
}
|
|
275
|
+
let bit = false;
|
|
276
|
+
if (bitIndex < totalBits) {
|
|
277
|
+
const byte = codewords[bitIndex >> 3];
|
|
278
|
+
bit = ((byte >> (7 - (bitIndex & 7))) & 1) === 1;
|
|
279
|
+
bitIndex++;
|
|
280
|
+
}
|
|
281
|
+
modules[row][cc] = bit;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
upward = !upward;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
/** Mask pattern 0: invert where (row + col) % 2 === 0, data modules only. */
|
|
288
|
+
function applyMask0(modules, size) {
|
|
289
|
+
for (let r = 0; r < size; r++) {
|
|
290
|
+
for (let c = 0; c < size; c++) {
|
|
291
|
+
if (isFunctionModule(r, c, size) || modules[r][c] === null) {
|
|
292
|
+
continue;
|
|
293
|
+
}
|
|
294
|
+
if ((r + c) % 2 === 0) {
|
|
295
|
+
modules[r][c] = !modules[r][c];
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
function isFunctionModule(r, c, size) {
|
|
301
|
+
// Finder + separators.
|
|
302
|
+
if (r <= 8 && c <= 8)
|
|
303
|
+
return true;
|
|
304
|
+
if (r <= 8 && c >= size - 8)
|
|
305
|
+
return true;
|
|
306
|
+
if (r >= size - 8 && c <= 8)
|
|
307
|
+
return true;
|
|
308
|
+
// Timing.
|
|
309
|
+
if (r === 6 || c === 6)
|
|
310
|
+
return true;
|
|
311
|
+
return false;
|
|
312
|
+
}
|
|
313
|
+
/** Format info for ECC-M + mask 0, with BCH(15,5) + mask 0x5412. Precomputed. */
|
|
314
|
+
const FORMAT_BITS_M_MASK0 = 0b101010000010010;
|
|
315
|
+
function placeFormatBits(modules, size) {
|
|
316
|
+
const bits = [];
|
|
317
|
+
for (let i = 14; i >= 0; i--) {
|
|
318
|
+
bits.push((FORMAT_BITS_M_MASK0 >> i) & 1);
|
|
319
|
+
}
|
|
320
|
+
// Around the top-left finder.
|
|
321
|
+
const topLeftPositions = [
|
|
322
|
+
[8, 0], [8, 1], [8, 2], [8, 3], [8, 4], [8, 5], [8, 7], [8, 8],
|
|
323
|
+
[7, 8], [5, 8], [4, 8], [3, 8], [2, 8], [1, 8], [0, 8],
|
|
324
|
+
];
|
|
325
|
+
topLeftPositions.forEach(([r, c], i) => {
|
|
326
|
+
modules[r][c] = bits[i] === 1;
|
|
327
|
+
});
|
|
328
|
+
// Mirrored copy near the other two finders.
|
|
329
|
+
const splitPositions = [
|
|
330
|
+
[size - 1, 8], [size - 2, 8], [size - 3, 8], [size - 4, 8],
|
|
331
|
+
[size - 5, 8], [size - 6, 8], [size - 7, 8],
|
|
332
|
+
[8, size - 8], [8, size - 7], [8, size - 6], [8, size - 5],
|
|
333
|
+
[8, size - 4], [8, size - 3], [8, size - 2], [8, size - 1],
|
|
334
|
+
];
|
|
335
|
+
splitPositions.forEach(([r, c], i) => {
|
|
336
|
+
modules[r][c] = bits[i] === 1;
|
|
337
|
+
});
|
|
338
|
+
}
|
|
339
|
+
/** Render a QR matrix to a self-contained SVG string (token-colored, no external refs). */
|
|
340
|
+
export function qrMatrixToSvg(matrix, options) {
|
|
341
|
+
const quiet = options?.quietZone ?? 4;
|
|
342
|
+
const dim = matrix.size + quiet * 2;
|
|
343
|
+
const rects = [];
|
|
344
|
+
for (let r = 0; r < matrix.size; r++) {
|
|
345
|
+
for (let c = 0; c < matrix.size; c++) {
|
|
346
|
+
if (matrix.modules[r][c]) {
|
|
347
|
+
rects.push(`<rect x="${c + quiet}" y="${r + quiet}" width="1.02" height="1.02"/>`);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
return (`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${dim} ${dim}" ` +
|
|
352
|
+
`shape-rendering="crispEdges" role="img" aria-label="QR code">` +
|
|
353
|
+
`<rect width="${dim}" height="${dim}" fill="var(--mj-bg-surface, #fff)"/>` +
|
|
354
|
+
`<g fill="var(--mj-text-primary, #000)">${rects.join('')}</g>` +
|
|
355
|
+
`</svg>`);
|
|
356
|
+
}
|
|
357
|
+
/** Convenience: text payload directly to an SVG string. */
|
|
358
|
+
export function textToQrSvg(text) {
|
|
359
|
+
return qrMatrixToSvg(generateQrMatrix(text));
|
|
360
|
+
}
|
|
361
|
+
//# sourceMappingURL=qr-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qr-code.js","sourceRoot":"","sources":["../../../src/lib/builder/qr-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import type { ConditionalRule, ValidationRule } from '@mj-biz-apps/forms-entities';
|
|
3
|
+
import type { QuestionNode } from './builder-models';
|
|
4
|
+
import { type ConditionalSourceQuestion } from './conditional-rule-editor.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* The right-hand properties panel for the selected question. Edits prompt, help
|
|
8
|
+
* text, required, options (for choice types), the conditional-show rule and the
|
|
9
|
+
* validation rule. All edits are written onto the live entity object and announced
|
|
10
|
+
* via {@link questionChanged}; the parent persists.
|
|
11
|
+
*/
|
|
12
|
+
export declare class QuestionEditorComponent {
|
|
13
|
+
node: QuestionNode | null;
|
|
14
|
+
/** Questions preceding the selected one — valid sources for a conditional rule. */
|
|
15
|
+
conditionalSources: ConditionalSourceQuestion[];
|
|
16
|
+
/** Emitted whenever a field on the question entity changed (parent persists). */
|
|
17
|
+
questionChanged: EventEmitter<QuestionNode>;
|
|
18
|
+
/** Emitted when an option is added (parent persists via the state service). */
|
|
19
|
+
addOptionRequested: EventEmitter<QuestionNode>;
|
|
20
|
+
/** Emitted when an option should be removed. */
|
|
21
|
+
removeOptionRequested: EventEmitter<{
|
|
22
|
+
node: QuestionNode;
|
|
23
|
+
optionIndex: number;
|
|
24
|
+
}>;
|
|
25
|
+
protected get hasOptions(): boolean;
|
|
26
|
+
protected get typeLabel(): string;
|
|
27
|
+
protected get typeIcon(): string;
|
|
28
|
+
protected get conditionalRule(): ConditionalRule | undefined;
|
|
29
|
+
protected get validationRule(): ValidationRule | undefined;
|
|
30
|
+
protected setPrompt(value: string): void;
|
|
31
|
+
protected setHelpText(value: string): void;
|
|
32
|
+
protected toggleRequired(): void;
|
|
33
|
+
protected setOptionLabel(index: number, value: string): void;
|
|
34
|
+
protected addOption(): void;
|
|
35
|
+
protected removeOption(index: number): void;
|
|
36
|
+
protected onConditionalChange(rule: ConditionalRule | undefined): void;
|
|
37
|
+
protected onValidationChange(rule: ValidationRule | undefined): void;
|
|
38
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<QuestionEditorComponent, never>;
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<QuestionEditorComponent, "mjf-question-editor", never, { "node": { "alias": "node"; "required": false; }; "conditionalSources": { "alias": "conditionalSources"; "required": false; }; }, { "questionChanged": "questionChanged"; "addOptionRequested": "addOptionRequested"; "removeOptionRequested": "removeOptionRequested"; }, never, never, true, never>;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=question-editor.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"question-editor.component.d.ts","sourceRoot":"","sources":["../../../src/lib/builder/question-editor.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EAGb,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAEnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,qCAAqC,CAAC;;AAwB7C;;;;;GAKG;AACH,qBAaa,uBAAuB;IACzB,IAAI,EAAE,YAAY,GAAG,IAAI,CAAQ;IAC1C,mFAAmF;IAC1E,kBAAkB,EAAE,yBAAyB,EAAE,CAAM;IAE9D,iFAAiF;IACvE,eAAe,6BAAoC;IAC7D,+EAA+E;IACrE,kBAAkB,6BAAoC;IAChE,gDAAgD;IACtC,qBAAqB;cAA4B,YAAY;qBAAe,MAAM;OAAM;IAElG,SAAS,KAAK,UAAU,IAAI,OAAO,CAElC;IAED,SAAS,KAAK,SAAS,IAAI,MAAM,CAEhC;IAED,SAAS,KAAK,QAAQ,IAAI,MAAM,CAE/B;IAED,SAAS,KAAK,eAAe,IAAI,eAAe,GAAG,SAAS,CAE3D;IAED,SAAS,KAAK,cAAc,IAAI,cAAc,GAAG,SAAS,CAEzD;IAED,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMxC,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM1C,SAAS,CAAC,cAAc,IAAI,IAAI;IAMhC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAM5D,SAAS,CAAC,SAAS,IAAI,IAAI;IAK3B,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK3C,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI;IAMtE,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG,IAAI;yCAxEzD,uBAAuB;2CAAvB,uBAAuB;CA6EnC"}
|