@genesislcap/pbc-notify-ui 15.34.1 → 15.35.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.
@@ -479,6 +479,27 @@
479
479
  }
480
480
  ]
481
481
  },
482
+ {
483
+ "kind": "javascript-module",
484
+ "path": "src/styles/scrollbar.styles.ts",
485
+ "declarations": [
486
+ {
487
+ "kind": "variable",
488
+ "name": "scrollbarStyles",
489
+ "default": "css`\n ::-webkit-scrollbar {\n width: calc((var(--base-height-multiplier) + var(--design-unit)) * 1px);\n }\n\n ::-webkit-scrollbar-track {\n background: var(--neutral-layer-1);\n }\n\n ::-webkit-scrollbar-thumb {\n background: var(--neutral-fill-rest);\n }\n`"
490
+ }
491
+ ],
492
+ "exports": [
493
+ {
494
+ "kind": "js",
495
+ "name": "scrollbarStyles",
496
+ "declaration": {
497
+ "name": "scrollbarStyles",
498
+ "module": "src/styles/scrollbar.styles.ts"
499
+ }
500
+ }
501
+ ]
502
+ },
482
503
  {
483
504
  "kind": "javascript-module",
484
505
  "path": "src/utils/eventDetail.ts",
@@ -800,27 +821,6 @@
800
821
  }
801
822
  ]
802
823
  },
803
- {
804
- "kind": "javascript-module",
805
- "path": "src/styles/scrollbar.styles.ts",
806
- "declarations": [
807
- {
808
- "kind": "variable",
809
- "name": "scrollbarStyles",
810
- "default": "css`\n ::-webkit-scrollbar {\n width: calc((var(--base-height-multiplier) + var(--design-unit)) * 1px);\n }\n\n ::-webkit-scrollbar-track {\n background: var(--neutral-layer-1);\n }\n\n ::-webkit-scrollbar-thumb {\n background: var(--neutral-fill-rest);\n }\n`"
811
- }
812
- ],
813
- "exports": [
814
- {
815
- "kind": "js",
816
- "name": "scrollbarStyles",
817
- "declaration": {
818
- "name": "scrollbarStyles",
819
- "module": "src/styles/scrollbar.styles.ts"
820
- }
821
- }
822
- ]
823
- },
824
824
  {
825
825
  "kind": "javascript-module",
826
826
  "path": "src/components/foundation-inbox/inbox.styles.ts",
@@ -8781,426 +8781,535 @@
8781
8781
  },
8782
8782
  {
8783
8783
  "kind": "javascript-module",
8784
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts",
8785
- "declarations": [
8786
- {
8787
- "kind": "variable",
8788
- "name": "ParameterBuilderStyles",
8789
- "default": "css`\n .parameter-builder {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n margin-bottom: calc(var(--design-unit) * 2px);\n }\n\n rapid-button {\n margin: 0;\n }\n\n .delete {\n margin: 0;\n display: flex;\n justify-content: center;\n height: calc(var(--design-unit) * 9px);\n }\n\n .delete:hover {\n background-color: color-mix(in srgb, var(--neutral-foreground-rest), transparent 89%);\n }\n\n rapid-text-field {\n width: 100%;\n margin-bottom: 0;\n }\n\n rapid-text-field::part(root) {\n height: calc(var(--design-unit) * 9px);\n }\n\n rapid-select {\n min-width: auto;\n }\n\n rapid-select.param-type::part(control) {\n width: 115px;\n }\n\n rapid-select.param-source-type::part(control) {\n width: 160px;\n }\n\n rapid-select.param-source::part(control) {\n width: ${PARAM_SOURCE_WIDTH}px;\n }\n\n rapid-text-field.param-source::part(root) {\n width: calc(${PARAM_SOURCE_WIDTH}px + 2px);\n }\n\n rapid-select::part(listbox) {\n max-height: 160px;\n }\n`"
8790
- }
8791
- ],
8792
- "exports": [
8793
- {
8794
- "kind": "js",
8795
- "name": "ParameterBuilderStyles",
8796
- "declaration": {
8797
- "name": "ParameterBuilderStyles",
8798
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts"
8799
- }
8800
- }
8801
- ]
8802
- },
8803
- {
8804
- "kind": "javascript-module",
8805
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts",
8784
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts",
8806
8785
  "declarations": [
8807
8786
  {
8808
8787
  "kind": "variable",
8809
- "name": "ParameterBuilderTemplate",
8810
- "default": "html<ParameterBuilder>`\n <div class=\"parameter-builder\">\n <rapid-text-field\n id=\"param-name\"\n placeholder=\"Name\"\n :value=${sync((x) => x.name)}\n ></rapid-text-field>\n\n <rapid-text-field\n id=\"param-label\"\n placeholder=\"Label\"\n :value=${sync((x) => x.label)}\n ></rapid-text-field>\n\n <rapid-select\n id=\"param-source-type\"\n :value=${sync((x) => x.sourceType)}\n class=\"param-source-type\"\n >\n ${repeat(\n (x) => ALL_PARAM_SOURCE_TYPES,\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n ${when(\n (x) => x.sourceType === PARAM_SOURCE_TYPE_USER_TEXT,\n html<ParameterBuilder>`\n <rapid-text-field class=\"param-source\" disabled></rapid-text-field>\n `,\n )}\n ${when(\n (x) => x.sourceType === PARAM_SOURCE_TYPE_REQ_REP,\n html<ParameterBuilder>`\n <rapid-select\n ${ref('sourceSelect')}\n id=\"param-source\"\n :value=${sync((x) => x.sourceSelected)}\n class=\"param-source\"\n ?disabled=${(x) => x.sourceType !== PARAM_SOURCE_TYPE_REQ_REP}\n >\n ${repeat(\n (x) => x.reqRepItems,\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n `,\n )}\n ${when(\n (x) => x.sourceType === PARAM_SOURCE_TYPE_DEFINED_GROUP,\n html<ParameterBuilder>`\n <rapid-text-field\n ${ref('sourceTextField')}\n class=\"param-source\"\n placeholder=\"item1,item2,item3\"\n :value=${sync((x) => x.sourceTyped)}\n ></rapid-text-field>\n `,\n )}\n\n <rapid-select id=\"param-type\" :value=${sync((x) => x.type)} class=\"param-type\">\n ${repeat(\n (x) => ALL_PARAM_TYPES,\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n <rapid-button appearance=\"icon\" class=\"delete\" @click=${(x) => x.deleteParameter()}>\n <rapid-icon\n style=\"opacity: 0.5\"\n variant=\"regular\"\n name=\"trash-alt\"\n size=\"lg\"\n part=\"icon\"\n ></rapid-icon>\n </rapid-button>\n </div>\n`"
8788
+ "name": "TemplateConditionBuilderTemplate",
8789
+ "default": "html<TemplateConditionBuilder>`\n ${when(\n (x) => !x.isFirst,\n html`\n <div class=\"join-toggle-row\">\n <div class=\"join-toggle\">\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'AND'])}\"\n @click=${(x) => (x.joinOperator = 'AND')}\n >\n AND\n </span>\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'OR'])}\"\n @click=${(x) => (x.joinOperator = 'OR')}\n >\n OR\n </span>\n </div>\n </div>\n `,\n )}\n <div class=\"condition-builder\">\n <rapid-select\n :value=${sync((x) => x.leftValue)}\n :initialValue=${sync((x) => x.leftValue)}\n class=\"left-value\"\n >\n ${repeat(\n (x) => x.leftValueItems,\n html<Field>`\n <rapid-option value=${(x) => JSON.stringify(x)}>${(x) => x.FIELD_NAME}</rapid-option>\n `,\n )}\n </rapid-select>\n\n <rapid-select\n class=\"logical-operator${(x) =>\n classNames([\n '-null-and-blank',\n nullAndBlankLogicalOperatorValues.includes(LogicalOperator[x.logicalOperator]),\n ])}\"\n :value=${sync((x) => x.logicalOperator)}\n >\n ${repeat(\n (_) => Object.values(LogicalOperator),\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n ${when(\n (x) => !nullAndBlankLogicalOperatorValues.includes(LogicalOperator[x.logicalOperator]),\n html`\n <rapid-select class=\"right-criteria\" :value=${sync((x) => x.rightCriteria)}>\n ${repeat(\n (_) => Object.values(RightCriteria),\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n ${when(\n (x) => x.rightCriteria === RightCriteria.VALUE,\n html<TemplateConditionBuilder>`\n ${whenElse(\n (x) => JSON.parse(x.leftValue ?? '{}').FIELD_TYPE === FieldTypeEnum.BOOLEAN,\n html`\n <rapid-select class=\"right-criteria-select\" :value=${sync((x) => x.rightValueText)}>\n <rapid-option value=\"true\">true</rapid-option>\n <rapid-option value=\"false\">false</rapid-option>\n </rapid-select>\n `,\n html`\n ${whenElse(\n (x) => JSON.parse(x.leftValue ?? '{}').FIELD_TYPE === 'ENUM',\n html`\n <rapid-multiselect\n class=\"right-criteria-select\"\n :selectedOptions=${(x) => x.rightValueMultiSelect}\n @selectionChange=${(x, c) => {\n x.rightValueMultiSelect = (c.event as CustomEvent).detail;\n }}\n search=\"true\"\n all=\"false\"\n >\n <multiselect-datasource\n value-field=\"value\"\n label-field=\"value\"\n :data=${(x) => x.getEnumValues().map((value) => ({ value }))}\n ></multiselect-datasource>\n </rapid-multiselect>\n `,\n html`\n <rapid-text-field\n class=\"right-criteria-text\"\n :value=${sync((x) => x.rightValueText)}\n placeholder=\"Value (comma-separate for multiple)\"\n autocomplete=\"off\"\n ></rapid-text-field>\n `,\n )}\n `,\n )}\n `,\n )}\n ${when(\n (x) => x.rightCriteria === RightCriteria.USER_ENTRY,\n html<TemplateConditionBuilder>`\n <rapid-select class=\"right-criteria-select\" :value=${sync((x) => x.rightValueSelect)}>\n ${(x) => rightValueItemsOptions(x.rightValueItems)}\n </rapid-select>\n `,\n )}\n `,\n )}\n\n <rapid-button appearance=\"icon\" class=\"delete\" @click=${(x) => x.deleteCondition()}>\n <rapid-icon\n style=\"opacity: 0.5\"\n variant=\"regular\"\n name=\"trash-alt\"\n size=\"lg\"\n part=\"icon\"\n ></rapid-icon>\n </rapid-button>\n </div>\n`"
8811
8790
  }
8812
8791
  ],
8813
8792
  "exports": [
8814
8793
  {
8815
8794
  "kind": "js",
8816
- "name": "ParameterBuilderTemplate",
8795
+ "name": "TemplateConditionBuilderTemplate",
8817
8796
  "declaration": {
8818
- "name": "ParameterBuilderTemplate",
8819
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts"
8797
+ "name": "TemplateConditionBuilderTemplate",
8798
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts"
8820
8799
  }
8821
8800
  }
8822
8801
  ]
8823
8802
  },
8824
8803
  {
8825
8804
  "kind": "javascript-module",
8826
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts",
8805
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts",
8827
8806
  "declarations": [
8828
8807
  {
8829
8808
  "kind": "class",
8830
- "description": "Parameter builder for notification templates.",
8831
- "name": "ParameterBuilder",
8809
+ "description": "Condition builder for template notification rules.",
8810
+ "name": "TemplateConditionBuilder",
8832
8811
  "members": [
8833
8812
  {
8834
8813
  "kind": "field",
8835
- "name": "parameter",
8814
+ "name": "condition",
8836
8815
  "type": {
8837
- "text": "ParameterBuilderEntity"
8816
+ "text": "ConditionBuilderEntity"
8838
8817
  }
8839
8818
  },
8840
8819
  {
8841
8820
  "kind": "field",
8842
- "name": "name",
8821
+ "name": "parameters",
8843
8822
  "type": {
8844
- "text": "string"
8845
- }
8823
+ "text": "Array<ParameterBuilderEntity>"
8824
+ },
8825
+ "default": "[]"
8846
8826
  },
8847
8827
  {
8848
8828
  "kind": "field",
8849
- "name": "label",
8829
+ "name": "fields",
8850
8830
  "type": {
8851
- "text": "string"
8852
- }
8831
+ "text": "Field[]"
8832
+ },
8833
+ "default": "[]"
8853
8834
  },
8854
8835
  {
8855
8836
  "kind": "field",
8856
- "name": "type",
8837
+ "name": "isFirst",
8838
+ "type": {
8839
+ "text": "boolean"
8840
+ },
8841
+ "default": "false"
8842
+ },
8843
+ {
8844
+ "kind": "field",
8845
+ "name": "joinOperator",
8857
8846
  "type": {
8858
8847
  "text": "string"
8859
8848
  }
8860
8849
  },
8861
8850
  {
8862
8851
  "kind": "field",
8863
- "name": "sourceType",
8852
+ "name": "leftValue",
8853
+ "type": {
8854
+ "text": "any"
8855
+ },
8856
+ "default": "null"
8857
+ },
8858
+ {
8859
+ "kind": "field",
8860
+ "name": "leftValueItems",
8861
+ "type": {
8862
+ "text": "Array<any>"
8863
+ },
8864
+ "default": "[]"
8865
+ },
8866
+ {
8867
+ "kind": "field",
8868
+ "name": "logicalOperator",
8864
8869
  "type": {
8865
8870
  "text": "string"
8866
- }
8871
+ },
8872
+ "default": "null"
8867
8873
  },
8868
8874
  {
8869
8875
  "kind": "field",
8870
- "name": "sourceSelected",
8876
+ "name": "rightCriteria",
8871
8877
  "type": {
8872
8878
  "text": "string"
8873
8879
  }
8874
8880
  },
8875
8881
  {
8876
8882
  "kind": "field",
8877
- "name": "sourceTyped",
8883
+ "name": "rightValueText",
8878
8884
  "type": {
8879
8885
  "text": "string"
8880
- }
8886
+ },
8887
+ "default": "null"
8881
8888
  },
8882
8889
  {
8883
8890
  "kind": "field",
8884
- "name": "sourceTextField",
8891
+ "name": "rightValueSelect",
8885
8892
  "type": {
8886
- "text": "TextField"
8887
- }
8893
+ "text": "string"
8894
+ },
8895
+ "default": "null"
8888
8896
  },
8889
8897
  {
8890
8898
  "kind": "field",
8891
- "name": "sourceSelect",
8899
+ "name": "rightValueItems",
8892
8900
  "type": {
8893
- "text": "Select"
8894
- }
8901
+ "text": "Array<any>"
8902
+ },
8903
+ "default": "[]"
8895
8904
  },
8896
8905
  {
8897
8906
  "kind": "field",
8898
- "name": "reqRepItems",
8907
+ "name": "rightValueMultiSelect",
8899
8908
  "type": {
8900
- "text": "array"
8909
+ "text": "string[]"
8901
8910
  },
8902
- "default": "['REQUEST_1', 'REQUEST_2', 'REQUEST_3']"
8911
+ "default": "[]"
8903
8912
  },
8904
8913
  {
8905
8914
  "kind": "method",
8906
- "name": "deleteParameter"
8915
+ "name": "deleteCondition"
8907
8916
  },
8908
8917
  {
8909
8918
  "kind": "method",
8910
- "name": "parameterChanged"
8919
+ "name": "conditionChanged"
8911
8920
  },
8912
8921
  {
8913
8922
  "kind": "method",
8914
- "name": "nameChanged"
8923
+ "name": "joinOperatorChanged"
8915
8924
  },
8916
8925
  {
8917
8926
  "kind": "method",
8918
- "name": "labelChanged"
8927
+ "name": "parametersChanged"
8919
8928
  },
8920
8929
  {
8921
8930
  "kind": "method",
8922
- "name": "typeChanged"
8931
+ "name": "getMatchingParameter",
8932
+ "privacy": "private",
8933
+ "return": {
8934
+ "type": {
8935
+ "text": "ParameterBuilderEntity | undefined"
8936
+ }
8937
+ }
8923
8938
  },
8924
8939
  {
8925
8940
  "kind": "method",
8926
- "name": "sourceTypeChanged"
8941
+ "name": "syncParameterBinding",
8942
+ "privacy": "private",
8943
+ "return": {
8944
+ "type": {
8945
+ "text": "boolean"
8946
+ }
8947
+ }
8927
8948
  },
8928
8949
  {
8929
8950
  "kind": "method",
8930
- "name": "sourceSelectedChanged"
8951
+ "name": "resetToValueEditor",
8952
+ "privacy": "private"
8931
8953
  },
8932
8954
  {
8933
8955
  "kind": "method",
8934
- "name": "sourceTypedChanged"
8956
+ "name": "fieldsChanged"
8935
8957
  },
8936
8958
  {
8937
8959
  "kind": "method",
8938
- "name": "genericChanged",
8939
- "privacy": "private",
8940
- "parameters": [
8941
- {
8942
- "name": "parameterAttribute"
8943
- },
8944
- {
8945
- "name": "value"
8960
+ "name": "logicalOperatorChanged"
8961
+ },
8962
+ {
8963
+ "kind": "method",
8964
+ "name": "assignLeftValue",
8965
+ "privacy": "private"
8966
+ },
8967
+ {
8968
+ "kind": "method",
8969
+ "name": "leftValueChanged"
8970
+ },
8971
+ {
8972
+ "kind": "method",
8973
+ "name": "assignRightValue",
8974
+ "privacy": "private"
8975
+ },
8976
+ {
8977
+ "kind": "method",
8978
+ "name": "rightCriteriaChanged"
8979
+ },
8980
+ {
8981
+ "kind": "method",
8982
+ "name": "clearRightValueText",
8983
+ "privacy": "private"
8984
+ },
8985
+ {
8986
+ "kind": "method",
8987
+ "name": "clearRightValueSelect",
8988
+ "privacy": "private"
8989
+ },
8990
+ {
8991
+ "kind": "method",
8992
+ "name": "rightValueTextChanged"
8993
+ },
8994
+ {
8995
+ "kind": "method",
8996
+ "name": "rightValueSelectChanged"
8997
+ },
8998
+ {
8999
+ "kind": "method",
9000
+ "name": "rightValueMultiSelectChanged"
9001
+ },
9002
+ {
9003
+ "kind": "method",
9004
+ "name": "getEnumValues",
9005
+ "return": {
9006
+ "type": {
9007
+ "text": "string[]"
8946
9008
  }
8947
- ]
9009
+ }
8948
9010
  }
8949
9011
  ],
8950
9012
  "events": [
8951
9013
  {
8952
- "description": "Fired when a parameter is deleted. detail: `ParameterBuilderEntity`",
9014
+ "description": "Fired when a condition is deleted. detail: `ConditionBuilderEntity`",
8953
9015
  "name": "delete"
8954
9016
  },
8955
9017
  {
8956
- "description": "Fired when a parameter is edited. detail: `ParameterBuilderEntity`",
9018
+ "description": "Fired when a condition is edited. detail: `ConditionBuilderEntity`",
8957
9019
  "name": "edit"
8958
9020
  }
8959
9021
  ],
8960
- "attributes": [
8961
- {
8962
- "name": "parameter",
8963
- "type": {
8964
- "text": "ParameterBuilderEntity"
8965
- },
8966
- "fieldName": "parameter"
8967
- }
8968
- ],
8969
9022
  "superclass": {
8970
9023
  "name": "GenesisElement",
8971
9024
  "package": "@genesislcap/web-core"
8972
9025
  },
8973
- "tagName": "parameter-builder",
9026
+ "tagName": "template-condition-builder",
8974
9027
  "customElement": true
8975
9028
  }
8976
9029
  ],
8977
9030
  "exports": [
8978
9031
  {
8979
9032
  "kind": "js",
8980
- "name": "ParameterBuilder",
9033
+ "name": "TemplateConditionBuilder",
8981
9034
  "declaration": {
8982
- "name": "ParameterBuilder",
8983
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9035
+ "name": "TemplateConditionBuilder",
9036
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
8984
9037
  }
8985
9038
  },
8986
9039
  {
8987
9040
  "kind": "custom-element-definition",
8988
- "name": "parameter-builder",
9041
+ "name": "template-condition-builder",
8989
9042
  "declaration": {
8990
- "name": "ParameterBuilder",
8991
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9043
+ "name": "TemplateConditionBuilder",
9044
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
8992
9045
  }
8993
9046
  }
8994
9047
  ]
8995
9048
  },
8996
9049
  {
8997
9050
  "kind": "javascript-module",
8998
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.template.ts",
9051
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts",
8999
9052
  "declarations": [
9000
9053
  {
9001
9054
  "kind": "variable",
9002
- "name": "TemplateConditionGroupTemplate",
9003
- "default": "html<TemplateConditionGroup>`\n ${when(\n (x) => !x.isFirst,\n html`\n <div class=\"join-toggle-row\">\n <div class=\"join-toggle\">\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'AND'])}\"\n @click=${(x) => (x.joinOperator = 'AND')}\n >\n AND\n </span>\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'OR'])}\"\n @click=${(x) => (x.joinOperator = 'OR')}\n >\n OR\n </span>\n </div>\n </div>\n `,\n )}\n <div class=\"condition-group-row\">\n <div class=\"condition-group-box\">\n ${repeat(\n (x) => x.groupChildren,\n html<ConditionNode, TemplateConditionGroup>`\n ${when(\n (x) => isGroup(x),\n html<ConditionNode>`\n <template-condition-group\n :fields=${(x, c) => c.parent.fields}\n :parameters=${(x, c) => c.parent.parameters}\n :node=${(x) => x}\n :isFirst=${(x, c) => c.index === 0}\n @edit=${(x, c) => c.parent.editChild(eventDetail(c))}\n @delete=${(x, c) => c.parent.deleteChild(eventDetail(c))}\n ></template-condition-group>\n `,\n )}\n ${when(\n (x) => !isGroup(x),\n html<ConditionNode>`\n <template-condition-builder\n :fields=${(x, c) => c.parent.fields}\n :parameters=${(x, c) => c.parent.parameters}\n :condition=${(x) => x}\n :isFirst=${(x, c) => c.index === 0}\n @edit=${(x, c) => c.parent.editChild(eventDetail(c))}\n @delete=${(x, c) => c.parent.deleteChild(eventDetail(c))}\n ></template-condition-builder>\n `,\n )}\n `,\n { positioning: true },\n )}\n\n <div class=\"content-row\">\n <rapid-button appearance=\"lightweight\" @click=${(x) => x.newCondition()}>\n + Condition\n </rapid-button>\n <rapid-button appearance=\"lightweight\" @click=${(x) => x.newGroup()}>+ Group</rapid-button>\n <rapid-button appearance=\"icon\" class=\"delete-group\" @click=${(x) => x.deleteSelf()}>\n <rapid-icon variant=\"regular\" name=\"trash-alt\" size=\"lg\" part=\"icon\"></rapid-icon>\n </rapid-button>\n </div>\n </div>\n </div>\n`"
9055
+ "name": "ParameterBuilderStyles",
9056
+ "default": "css`\n .parameter-builder {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n margin-bottom: calc(var(--design-unit) * 2px);\n }\n\n rapid-button {\n margin: 0;\n }\n\n .delete {\n margin: 0;\n display: flex;\n justify-content: center;\n height: calc(var(--design-unit) * 9px);\n }\n\n .delete:hover {\n background-color: color-mix(in srgb, var(--neutral-foreground-rest), transparent 89%);\n }\n\n rapid-text-field {\n width: 100%;\n margin-bottom: 0;\n }\n\n rapid-text-field::part(root) {\n height: calc(var(--design-unit) * 9px);\n }\n\n rapid-select {\n min-width: auto;\n }\n\n rapid-select.param-type::part(control) {\n width: 115px;\n }\n\n rapid-select.param-source-type::part(control) {\n width: 160px;\n }\n\n rapid-select.param-source::part(control) {\n width: ${PARAM_SOURCE_WIDTH}px;\n }\n\n rapid-text-field.param-source::part(root) {\n width: calc(${PARAM_SOURCE_WIDTH}px + 2px);\n }\n\n rapid-select::part(listbox) {\n max-height: 160px;\n }\n`"
9004
9057
  }
9005
9058
  ],
9006
9059
  "exports": [
9007
9060
  {
9008
9061
  "kind": "js",
9009
- "name": "TemplateConditionGroupTemplate",
9062
+ "name": "ParameterBuilderStyles",
9010
9063
  "declaration": {
9011
- "name": "TemplateConditionGroupTemplate",
9012
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.template.ts"
9064
+ "name": "ParameterBuilderStyles",
9065
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts"
9013
9066
  }
9014
9067
  }
9015
9068
  ]
9016
9069
  },
9017
9070
  {
9018
9071
  "kind": "javascript-module",
9019
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.ts",
9072
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts",
9073
+ "declarations": [
9074
+ {
9075
+ "kind": "variable",
9076
+ "name": "ParameterBuilderTemplate",
9077
+ "default": "html<ParameterBuilder>`\n <div class=\"parameter-builder\">\n <rapid-text-field\n id=\"param-name\"\n placeholder=\"Name\"\n :value=${sync((x) => x.name)}\n ></rapid-text-field>\n\n <rapid-text-field\n id=\"param-label\"\n placeholder=\"Label\"\n :value=${sync((x) => x.label)}\n ></rapid-text-field>\n\n <rapid-select\n id=\"param-source-type\"\n :value=${sync((x) => x.sourceType)}\n class=\"param-source-type\"\n >\n ${repeat(\n (x) => ALL_PARAM_SOURCE_TYPES,\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n ${when(\n (x) => x.sourceType === PARAM_SOURCE_TYPE_USER_TEXT,\n html<ParameterBuilder>`\n <rapid-text-field class=\"param-source\" disabled></rapid-text-field>\n `,\n )}\n ${when(\n (x) => x.sourceType === PARAM_SOURCE_TYPE_REQ_REP,\n html<ParameterBuilder>`\n <rapid-select\n ${ref('sourceSelect')}\n id=\"param-source\"\n :value=${sync((x) => x.sourceSelected)}\n class=\"param-source\"\n ?disabled=${(x) => x.sourceType !== PARAM_SOURCE_TYPE_REQ_REP}\n >\n ${repeat(\n (x) => x.reqRepItems,\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n `,\n )}\n ${when(\n (x) => x.sourceType === PARAM_SOURCE_TYPE_DEFINED_GROUP,\n html<ParameterBuilder>`\n <rapid-text-field\n ${ref('sourceTextField')}\n class=\"param-source\"\n placeholder=\"item1,item2,item3\"\n :value=${sync((x) => x.sourceTyped)}\n ></rapid-text-field>\n `,\n )}\n\n <rapid-select id=\"param-type\" :value=${sync((x) => x.type)} class=\"param-type\">\n ${repeat(\n (x) => ALL_PARAM_TYPES,\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n <rapid-button appearance=\"icon\" class=\"delete\" @click=${(x) => x.deleteParameter()}>\n <rapid-icon\n style=\"opacity: 0.5\"\n variant=\"regular\"\n name=\"trash-alt\"\n size=\"lg\"\n part=\"icon\"\n ></rapid-icon>\n </rapid-button>\n </div>\n`"
9078
+ }
9079
+ ],
9080
+ "exports": [
9081
+ {
9082
+ "kind": "js",
9083
+ "name": "ParameterBuilderTemplate",
9084
+ "declaration": {
9085
+ "name": "ParameterBuilderTemplate",
9086
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts"
9087
+ }
9088
+ }
9089
+ ]
9090
+ },
9091
+ {
9092
+ "kind": "javascript-module",
9093
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts",
9020
9094
  "declarations": [
9021
9095
  {
9022
9096
  "kind": "class",
9023
- "description": "Parenthesized group of conditions/nested groups for notification template\ncriteria - see rule-condition-group for the rationale. Also forwards\n:parameters down to nested template-condition-builder rows so parameter\nbinding (USER_ENTRY) keeps working inside a group.",
9024
- "name": "TemplateConditionGroup",
9097
+ "description": "Parameter builder for notification templates.",
9098
+ "name": "ParameterBuilder",
9025
9099
  "members": [
9026
9100
  {
9027
9101
  "kind": "field",
9028
- "name": "node",
9102
+ "name": "parameter",
9029
9103
  "type": {
9030
- "text": "ConditionGroupEntity"
9104
+ "text": "ParameterBuilderEntity"
9031
9105
  }
9032
9106
  },
9033
9107
  {
9034
9108
  "kind": "field",
9035
- "name": "fields",
9109
+ "name": "name",
9036
9110
  "type": {
9037
- "text": "Field[]"
9038
- },
9039
- "default": "[]"
9111
+ "text": "string"
9112
+ }
9040
9113
  },
9041
9114
  {
9042
9115
  "kind": "field",
9043
- "name": "parameters",
9116
+ "name": "label",
9044
9117
  "type": {
9045
- "text": "Array<ParameterBuilderEntity>"
9046
- },
9047
- "default": "[]"
9118
+ "text": "string"
9119
+ }
9048
9120
  },
9049
9121
  {
9050
9122
  "kind": "field",
9051
- "name": "isFirst",
9123
+ "name": "type",
9052
9124
  "type": {
9053
- "text": "boolean"
9054
- },
9055
- "default": "false"
9125
+ "text": "string"
9126
+ }
9056
9127
  },
9057
9128
  {
9058
9129
  "kind": "field",
9059
- "name": "joinOperator",
9130
+ "name": "sourceType",
9060
9131
  "type": {
9061
9132
  "text": "string"
9062
9133
  }
9063
9134
  },
9064
9135
  {
9065
9136
  "kind": "field",
9066
- "name": "groupChildren",
9137
+ "name": "sourceSelected",
9067
9138
  "type": {
9068
- "text": "ConditionNode[]"
9139
+ "text": "string"
9140
+ }
9141
+ },
9142
+ {
9143
+ "kind": "field",
9144
+ "name": "sourceTyped",
9145
+ "type": {
9146
+ "text": "string"
9147
+ }
9148
+ },
9149
+ {
9150
+ "kind": "field",
9151
+ "name": "sourceTextField",
9152
+ "type": {
9153
+ "text": "TextField"
9154
+ }
9155
+ },
9156
+ {
9157
+ "kind": "field",
9158
+ "name": "sourceSelect",
9159
+ "type": {
9160
+ "text": "Select"
9161
+ }
9162
+ },
9163
+ {
9164
+ "kind": "field",
9165
+ "name": "reqRepItems",
9166
+ "type": {
9167
+ "text": "array"
9069
9168
  },
9070
- "default": "[]"
9169
+ "default": "['REQUEST_1', 'REQUEST_2', 'REQUEST_3']"
9071
9170
  },
9072
9171
  {
9073
9172
  "kind": "method",
9074
- "name": "nodeChanged"
9173
+ "name": "deleteParameter"
9075
9174
  },
9076
9175
  {
9077
9176
  "kind": "method",
9078
- "name": "joinOperatorChanged"
9177
+ "name": "parameterChanged"
9079
9178
  },
9080
9179
  {
9081
9180
  "kind": "method",
9082
- "name": "newCondition"
9181
+ "name": "nameChanged"
9083
9182
  },
9084
9183
  {
9085
9184
  "kind": "method",
9086
- "name": "newGroup"
9185
+ "name": "labelChanged"
9087
9186
  },
9088
9187
  {
9089
9188
  "kind": "method",
9090
- "name": "editChild",
9091
- "parameters": [
9092
- {
9093
- "name": "_editedChild",
9094
- "type": {
9095
- "text": "ConditionNode"
9096
- }
9097
- }
9098
- ]
9189
+ "name": "typeChanged"
9099
9190
  },
9100
9191
  {
9101
9192
  "kind": "method",
9102
- "name": "deleteChild",
9193
+ "name": "sourceTypeChanged"
9194
+ },
9195
+ {
9196
+ "kind": "method",
9197
+ "name": "sourceSelectedChanged"
9198
+ },
9199
+ {
9200
+ "kind": "method",
9201
+ "name": "sourceTypedChanged"
9202
+ },
9203
+ {
9204
+ "kind": "method",
9205
+ "name": "genericChanged",
9206
+ "privacy": "private",
9103
9207
  "parameters": [
9104
9208
  {
9105
- "name": "deletedChild",
9106
- "type": {
9107
- "text": "ConditionNode"
9108
- }
9209
+ "name": "parameterAttribute"
9210
+ },
9211
+ {
9212
+ "name": "value"
9109
9213
  }
9110
9214
  ]
9111
- },
9112
- {
9113
- "kind": "method",
9114
- "name": "deleteSelf"
9115
9215
  }
9116
9216
  ],
9117
9217
  "events": [
9118
9218
  {
9119
- "description": "Fired when this whole group should be removed",
9219
+ "description": "Fired when a parameter is deleted. detail: `ParameterBuilderEntity`",
9120
9220
  "name": "delete"
9121
9221
  },
9122
9222
  {
9123
- "description": "Fired when anything inside this group changes",
9223
+ "description": "Fired when a parameter is edited. detail: `ParameterBuilderEntity`",
9124
9224
  "name": "edit"
9125
9225
  }
9126
9226
  ],
9227
+ "attributes": [
9228
+ {
9229
+ "name": "parameter",
9230
+ "type": {
9231
+ "text": "ParameterBuilderEntity"
9232
+ },
9233
+ "fieldName": "parameter"
9234
+ }
9235
+ ],
9127
9236
  "superclass": {
9128
9237
  "name": "GenesisElement",
9129
9238
  "package": "@genesislcap/web-core"
9130
9239
  },
9131
- "tagName": "template-condition-group",
9240
+ "tagName": "parameter-builder",
9132
9241
  "customElement": true
9133
9242
  }
9134
9243
  ],
9135
9244
  "exports": [
9136
9245
  {
9137
9246
  "kind": "js",
9138
- "name": "TemplateConditionGroup",
9247
+ "name": "ParameterBuilder",
9139
9248
  "declaration": {
9140
- "name": "TemplateConditionGroup",
9141
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.ts"
9249
+ "name": "ParameterBuilder",
9250
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9142
9251
  }
9143
9252
  },
9144
9253
  {
9145
9254
  "kind": "custom-element-definition",
9146
- "name": "template-condition-group",
9255
+ "name": "parameter-builder",
9147
9256
  "declaration": {
9148
- "name": "TemplateConditionGroup",
9149
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.ts"
9257
+ "name": "ParameterBuilder",
9258
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9150
9259
  }
9151
9260
  }
9152
9261
  ]
9153
9262
  },
9154
9263
  {
9155
9264
  "kind": "javascript-module",
9156
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts",
9265
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.template.ts",
9157
9266
  "declarations": [
9158
9267
  {
9159
9268
  "kind": "variable",
9160
- "name": "TemplateConditionBuilderTemplate",
9161
- "default": "html<TemplateConditionBuilder>`\n ${when(\n (x) => !x.isFirst,\n html`\n <div class=\"join-toggle-row\">\n <div class=\"join-toggle\">\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'AND'])}\"\n @click=${(x) => (x.joinOperator = 'AND')}\n >\n AND\n </span>\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'OR'])}\"\n @click=${(x) => (x.joinOperator = 'OR')}\n >\n OR\n </span>\n </div>\n </div>\n `,\n )}\n <div class=\"condition-builder\">\n <rapid-select\n :value=${sync((x) => x.leftValue)}\n :initialValue=${sync((x) => x.leftValue)}\n class=\"left-value\"\n >\n ${repeat(\n (x) => x.leftValueItems,\n html<Field>`\n <rapid-option value=${(x) => JSON.stringify(x)}>${(x) => x.FIELD_NAME}</rapid-option>\n `,\n )}\n </rapid-select>\n\n <rapid-select\n class=\"logical-operator${(x) =>\n classNames([\n '-null-and-blank',\n nullAndBlankLogicalOperatorValues.includes(LogicalOperator[x.logicalOperator]),\n ])}\"\n :value=${sync((x) => x.logicalOperator)}\n >\n ${repeat(\n (_) => Object.values(LogicalOperator),\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n ${when(\n (x) => !nullAndBlankLogicalOperatorValues.includes(LogicalOperator[x.logicalOperator]),\n html`\n <rapid-select class=\"right-criteria\" :value=${sync((x) => x.rightCriteria)}>\n ${repeat(\n (_) => Object.values(RightCriteria),\n html`\n <rapid-option value=${(x) => x}>${(x) => x}</rapid-option>\n `,\n )}\n </rapid-select>\n\n ${when(\n (x) => x.rightCriteria === RightCriteria.VALUE,\n html<TemplateConditionBuilder>`\n ${whenElse(\n (x) => JSON.parse(x.leftValue ?? '{}').FIELD_TYPE === FieldTypeEnum.BOOLEAN,\n html`\n <rapid-select class=\"right-criteria-select\" :value=${sync((x) => x.rightValueText)}>\n <rapid-option value=\"true\">true</rapid-option>\n <rapid-option value=\"false\">false</rapid-option>\n </rapid-select>\n `,\n html`\n ${whenElse(\n (x) => JSON.parse(x.leftValue ?? '{}').FIELD_TYPE === 'ENUM',\n html`\n <rapid-multiselect\n class=\"right-criteria-select\"\n :selectedOptions=${(x) => x.rightValueMultiSelect}\n @selectionChange=${(x, c) => {\n x.rightValueMultiSelect = (c.event as CustomEvent).detail;\n }}\n search=\"true\"\n all=\"false\"\n >\n <multiselect-datasource\n value-field=\"value\"\n label-field=\"value\"\n :data=${(x) => x.getEnumValues().map((value) => ({ value }))}\n ></multiselect-datasource>\n </rapid-multiselect>\n `,\n html`\n <rapid-text-field\n class=\"right-criteria-text\"\n :value=${sync((x) => x.rightValueText)}\n placeholder=\"Value (comma-separate for multiple)\"\n autocomplete=\"off\"\n ></rapid-text-field>\n `,\n )}\n `,\n )}\n `,\n )}\n ${when(\n (x) => x.rightCriteria === RightCriteria.USER_ENTRY,\n html<TemplateConditionBuilder>`\n <rapid-select class=\"right-criteria-select\" :value=${sync((x) => x.rightValueSelect)}>\n ${(x) => rightValueItemsOptions(x.rightValueItems)}\n </rapid-select>\n `,\n )}\n `,\n )}\n\n <rapid-button appearance=\"icon\" class=\"delete\" @click=${(x) => x.deleteCondition()}>\n <rapid-icon\n style=\"opacity: 0.5\"\n variant=\"regular\"\n name=\"trash-alt\"\n size=\"lg\"\n part=\"icon\"\n ></rapid-icon>\n </rapid-button>\n </div>\n`"
9269
+ "name": "TemplateConditionGroupTemplate",
9270
+ "default": "html<TemplateConditionGroup>`\n ${when(\n (x) => !x.isFirst,\n html`\n <div class=\"join-toggle-row\">\n <div class=\"join-toggle\">\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'AND'])}\"\n @click=${(x) => (x.joinOperator = 'AND')}\n >\n AND\n </span>\n <span\n class=\"join-text${(x) => classNames(['active', x.joinOperator === 'OR'])}\"\n @click=${(x) => (x.joinOperator = 'OR')}\n >\n OR\n </span>\n </div>\n </div>\n `,\n )}\n <div class=\"condition-group-row\">\n <div class=\"condition-group-box\">\n ${repeat(\n (x) => x.groupChildren,\n html<ConditionNode, TemplateConditionGroup>`\n ${when(\n (x) => isGroup(x),\n html<ConditionNode>`\n <template-condition-group\n :fields=${(x, c) => c.parent.fields}\n :parameters=${(x, c) => c.parent.parameters}\n :node=${(x) => x}\n :isFirst=${(x, c) => c.index === 0}\n @edit=${(x, c) => c.parent.editChild(eventDetail(c))}\n @delete=${(x, c) => c.parent.deleteChild(eventDetail(c))}\n ></template-condition-group>\n `,\n )}\n ${when(\n (x) => !isGroup(x),\n html<ConditionNode>`\n <template-condition-builder\n :fields=${(x, c) => c.parent.fields}\n :parameters=${(x, c) => c.parent.parameters}\n :condition=${(x) => x}\n :isFirst=${(x, c) => c.index === 0}\n @edit=${(x, c) => c.parent.editChild(eventDetail(c))}\n @delete=${(x, c) => c.parent.deleteChild(eventDetail(c))}\n ></template-condition-builder>\n `,\n )}\n `,\n { positioning: true },\n )}\n\n <div class=\"content-row\">\n <rapid-button appearance=\"lightweight\" @click=${(x) => x.newCondition()}>\n + Condition\n </rapid-button>\n <rapid-button appearance=\"lightweight\" @click=${(x) => x.newGroup()}>+ Group</rapid-button>\n <rapid-button appearance=\"icon\" class=\"delete-group\" @click=${(x) => x.deleteSelf()}>\n <rapid-icon variant=\"regular\" name=\"trash-alt\" size=\"lg\" part=\"icon\"></rapid-icon>\n </rapid-button>\n </div>\n </div>\n </div>\n`"
9162
9271
  }
9163
9272
  ],
9164
9273
  "exports": [
9165
9274
  {
9166
9275
  "kind": "js",
9167
- "name": "TemplateConditionBuilderTemplate",
9276
+ "name": "TemplateConditionGroupTemplate",
9168
9277
  "declaration": {
9169
- "name": "TemplateConditionBuilderTemplate",
9170
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts"
9278
+ "name": "TemplateConditionGroupTemplate",
9279
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.template.ts"
9171
9280
  }
9172
9281
  }
9173
9282
  ]
9174
9283
  },
9175
9284
  {
9176
9285
  "kind": "javascript-module",
9177
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts",
9286
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.ts",
9178
9287
  "declarations": [
9179
9288
  {
9180
9289
  "kind": "class",
9181
- "description": "Condition builder for template notification rules.",
9182
- "name": "TemplateConditionBuilder",
9290
+ "description": "Parenthesized group of conditions/nested groups for notification template\ncriteria - see rule-condition-group for the rationale. Also forwards\n:parameters down to nested template-condition-builder rows so parameter\nbinding (USER_ENTRY) keeps working inside a group.",
9291
+ "name": "TemplateConditionGroup",
9183
9292
  "members": [
9184
9293
  {
9185
9294
  "kind": "field",
9186
- "name": "condition",
9295
+ "name": "node",
9187
9296
  "type": {
9188
- "text": "ConditionBuilderEntity"
9297
+ "text": "ConditionGroupEntity"
9189
9298
  }
9190
9299
  },
9191
9300
  {
9192
9301
  "kind": "field",
9193
- "name": "parameters",
9302
+ "name": "fields",
9194
9303
  "type": {
9195
- "text": "Array<ParameterBuilderEntity>"
9304
+ "text": "Field[]"
9196
9305
  },
9197
9306
  "default": "[]"
9198
9307
  },
9199
9308
  {
9200
9309
  "kind": "field",
9201
- "name": "fields",
9310
+ "name": "parameters",
9202
9311
  "type": {
9203
- "text": "Field[]"
9312
+ "text": "Array<ParameterBuilderEntity>"
9204
9313
  },
9205
9314
  "default": "[]"
9206
9315
  },
@@ -9221,74 +9330,15 @@
9221
9330
  },
9222
9331
  {
9223
9332
  "kind": "field",
9224
- "name": "leftValue",
9225
- "type": {
9226
- "text": "any"
9227
- },
9228
- "default": "null"
9229
- },
9230
- {
9231
- "kind": "field",
9232
- "name": "leftValueItems",
9233
- "type": {
9234
- "text": "Array<any>"
9235
- },
9236
- "default": "[]"
9237
- },
9238
- {
9239
- "kind": "field",
9240
- "name": "logicalOperator",
9241
- "type": {
9242
- "text": "string"
9243
- },
9244
- "default": "null"
9245
- },
9246
- {
9247
- "kind": "field",
9248
- "name": "rightCriteria",
9249
- "type": {
9250
- "text": "string"
9251
- }
9252
- },
9253
- {
9254
- "kind": "field",
9255
- "name": "rightValueText",
9256
- "type": {
9257
- "text": "string"
9258
- },
9259
- "default": "null"
9260
- },
9261
- {
9262
- "kind": "field",
9263
- "name": "rightValueSelect",
9264
- "type": {
9265
- "text": "string"
9266
- },
9267
- "default": "null"
9268
- },
9269
- {
9270
- "kind": "field",
9271
- "name": "rightValueItems",
9272
- "type": {
9273
- "text": "Array<any>"
9274
- },
9275
- "default": "[]"
9276
- },
9277
- {
9278
- "kind": "field",
9279
- "name": "rightValueMultiSelect",
9333
+ "name": "groupChildren",
9280
9334
  "type": {
9281
- "text": "string[]"
9335
+ "text": "ConditionNode[]"
9282
9336
  },
9283
9337
  "default": "[]"
9284
9338
  },
9285
9339
  {
9286
9340
  "kind": "method",
9287
- "name": "deleteCondition"
9288
- },
9289
- {
9290
- "kind": "method",
9291
- "name": "conditionChanged"
9341
+ "name": "nodeChanged"
9292
9342
  },
9293
9343
  {
9294
9344
  "kind": "method",
@@ -9296,98 +9346,48 @@
9296
9346
  },
9297
9347
  {
9298
9348
  "kind": "method",
9299
- "name": "parametersChanged"
9349
+ "name": "newCondition"
9300
9350
  },
9301
9351
  {
9302
9352
  "kind": "method",
9303
- "name": "getMatchingParameter",
9304
- "privacy": "private",
9305
- "return": {
9306
- "type": {
9307
- "text": "ParameterBuilderEntity | undefined"
9308
- }
9309
- }
9353
+ "name": "newGroup"
9310
9354
  },
9311
9355
  {
9312
9356
  "kind": "method",
9313
- "name": "syncParameterBinding",
9314
- "privacy": "private",
9315
- "return": {
9316
- "type": {
9317
- "text": "boolean"
9357
+ "name": "editChild",
9358
+ "parameters": [
9359
+ {
9360
+ "name": "_editedChild",
9361
+ "type": {
9362
+ "text": "ConditionNode"
9363
+ }
9318
9364
  }
9319
- }
9320
- },
9321
- {
9322
- "kind": "method",
9323
- "name": "resetToValueEditor",
9324
- "privacy": "private"
9325
- },
9326
- {
9327
- "kind": "method",
9328
- "name": "fieldsChanged"
9329
- },
9330
- {
9331
- "kind": "method",
9332
- "name": "logicalOperatorChanged"
9333
- },
9334
- {
9335
- "kind": "method",
9336
- "name": "assignLeftValue",
9337
- "privacy": "private"
9338
- },
9339
- {
9340
- "kind": "method",
9341
- "name": "leftValueChanged"
9342
- },
9343
- {
9344
- "kind": "method",
9345
- "name": "assignRightValue",
9346
- "privacy": "private"
9347
- },
9348
- {
9349
- "kind": "method",
9350
- "name": "rightCriteriaChanged"
9351
- },
9352
- {
9353
- "kind": "method",
9354
- "name": "clearRightValueText",
9355
- "privacy": "private"
9356
- },
9357
- {
9358
- "kind": "method",
9359
- "name": "clearRightValueSelect",
9360
- "privacy": "private"
9361
- },
9362
- {
9363
- "kind": "method",
9364
- "name": "rightValueTextChanged"
9365
- },
9366
- {
9367
- "kind": "method",
9368
- "name": "rightValueSelectChanged"
9365
+ ]
9369
9366
  },
9370
9367
  {
9371
9368
  "kind": "method",
9372
- "name": "rightValueMultiSelectChanged"
9369
+ "name": "deleteChild",
9370
+ "parameters": [
9371
+ {
9372
+ "name": "deletedChild",
9373
+ "type": {
9374
+ "text": "ConditionNode"
9375
+ }
9376
+ }
9377
+ ]
9373
9378
  },
9374
9379
  {
9375
9380
  "kind": "method",
9376
- "name": "getEnumValues",
9377
- "return": {
9378
- "type": {
9379
- "text": "string[]"
9380
- }
9381
- }
9381
+ "name": "deleteSelf"
9382
9382
  }
9383
9383
  ],
9384
9384
  "events": [
9385
9385
  {
9386
- "description": "Fired when a condition is deleted. detail: `ConditionBuilderEntity`",
9386
+ "description": "Fired when this whole group should be removed",
9387
9387
  "name": "delete"
9388
9388
  },
9389
9389
  {
9390
- "description": "Fired when a condition is edited. detail: `ConditionBuilderEntity`",
9390
+ "description": "Fired when anything inside this group changes",
9391
9391
  "name": "edit"
9392
9392
  }
9393
9393
  ],
@@ -9395,25 +9395,25 @@
9395
9395
  "name": "GenesisElement",
9396
9396
  "package": "@genesislcap/web-core"
9397
9397
  },
9398
- "tagName": "template-condition-builder",
9398
+ "tagName": "template-condition-group",
9399
9399
  "customElement": true
9400
9400
  }
9401
9401
  ],
9402
9402
  "exports": [
9403
9403
  {
9404
9404
  "kind": "js",
9405
- "name": "TemplateConditionBuilder",
9405
+ "name": "TemplateConditionGroup",
9406
9406
  "declaration": {
9407
- "name": "TemplateConditionBuilder",
9408
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
9407
+ "name": "TemplateConditionGroup",
9408
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.ts"
9409
9409
  }
9410
9410
  },
9411
9411
  {
9412
9412
  "kind": "custom-element-definition",
9413
- "name": "template-condition-builder",
9413
+ "name": "template-condition-group",
9414
9414
  "declaration": {
9415
- "name": "TemplateConditionBuilder",
9416
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
9415
+ "name": "TemplateConditionGroup",
9416
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-group/template-condition-group.ts"
9417
9417
  }
9418
9418
  }
9419
9419
  ]
@@ -277,6 +277,17 @@ export declare const RuleConditionGroup: React.ForwardRefExoticComponent<
277
277
  >;
278
278
  export type RuleConditionGroupRef = RuleConditionGroupWC;
279
279
 
280
+ export declare const TemplateConditionBuilder: React.ForwardRefExoticComponent<
281
+ React.PropsWithChildren<
282
+ Omit<PublicOf<TemplateConditionBuilderWC>, 'children' | 'style'> &
283
+ HTMLWCProps & {
284
+ onDelete?: (event: CustomEvent<ConditionBuilderEntity>) => void;
285
+ onEdit?: (event: CustomEvent<ConditionBuilderEntity>) => void;
286
+ }
287
+ > & React.RefAttributes<TemplateConditionBuilderWC>
288
+ >;
289
+ export type TemplateConditionBuilderRef = TemplateConditionBuilderWC;
290
+
280
291
  export declare const ParameterBuilder: React.ForwardRefExoticComponent<
281
292
  React.PropsWithChildren<
282
293
  Omit<PublicOf<ParameterBuilderWC>, 'children' | 'style'> &
@@ -299,15 +310,4 @@ export declare const TemplateConditionGroup: React.ForwardRefExoticComponent<
299
310
  >;
300
311
  export type TemplateConditionGroupRef = TemplateConditionGroupWC;
301
312
 
302
- export declare const TemplateConditionBuilder: React.ForwardRefExoticComponent<
303
- React.PropsWithChildren<
304
- Omit<PublicOf<TemplateConditionBuilderWC>, 'children' | 'style'> &
305
- HTMLWCProps & {
306
- onDelete?: (event: CustomEvent<ConditionBuilderEntity>) => void;
307
- onEdit?: (event: CustomEvent<ConditionBuilderEntity>) => void;
308
- }
309
- > & React.RefAttributes<TemplateConditionBuilderWC>
310
- >;
311
- export type TemplateConditionBuilderRef = TemplateConditionBuilderWC;
312
-
313
313
  export {};
package/dist/react.cjs CHANGED
@@ -244,7 +244,7 @@ const RuleConditionGroup = React.forwardRef(function RuleConditionGroup(props, r
244
244
  return React.createElement(customElements.getName(RuleConditionGroupWC) ?? 'rule-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
245
245
  });
246
246
 
247
- const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
247
+ const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
248
248
  const { onDelete, onEdit, children, ...rest } = props;
249
249
  const _innerRef = React.useRef(null);
250
250
  const _onDeleteRef = React.useRef(onDelete);
@@ -263,10 +263,10 @@ const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref)
263
263
  el.removeEventListener('edit', _onEditFn);
264
264
  };
265
265
  }, []);
266
- return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
266
+ return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
267
267
  });
268
268
 
269
- const TemplateConditionGroup = React.forwardRef(function TemplateConditionGroup(props, ref) {
269
+ const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
270
270
  const { onDelete, onEdit, children, ...rest } = props;
271
271
  const _innerRef = React.useRef(null);
272
272
  const _onDeleteRef = React.useRef(onDelete);
@@ -285,10 +285,10 @@ const TemplateConditionGroup = React.forwardRef(function TemplateConditionGroup(
285
285
  el.removeEventListener('edit', _onEditFn);
286
286
  };
287
287
  }, []);
288
- return React.createElement(customElements.getName(TemplateConditionGroupWC) ?? 'template-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
288
+ return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
289
289
  });
290
290
 
291
- const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
291
+ const TemplateConditionGroup = React.forwardRef(function TemplateConditionGroup(props, ref) {
292
292
  const { onDelete, onEdit, children, ...rest } = props;
293
293
  const _innerRef = React.useRef(null);
294
294
  const _onDeleteRef = React.useRef(onDelete);
@@ -307,7 +307,7 @@ const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuil
307
307
  el.removeEventListener('edit', _onEditFn);
308
308
  };
309
309
  }, []);
310
- return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
310
+ return React.createElement(customElements.getName(TemplateConditionGroupWC) ?? 'template-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
311
311
  });
312
312
 
313
313
  module.exports = {
@@ -334,7 +334,7 @@ module.exports = {
334
334
  TemplateDialog,
335
335
  RuleConditionBuilder,
336
336
  RuleConditionGroup,
337
+ TemplateConditionBuilder,
337
338
  ParameterBuilder,
338
339
  TemplateConditionGroup,
339
- TemplateConditionBuilder,
340
340
  };
package/dist/react.mjs CHANGED
@@ -242,7 +242,7 @@ export const RuleConditionGroup = React.forwardRef(function RuleConditionGroup(p
242
242
  return React.createElement(customElements.getName(RuleConditionGroupWC) ?? 'rule-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
243
243
  });
244
244
 
245
- export const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
245
+ export const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
246
246
  const { onDelete, onEdit, children, ...rest } = props;
247
247
  const _innerRef = React.useRef(null);
248
248
  const _onDeleteRef = React.useRef(onDelete);
@@ -261,10 +261,10 @@ export const ParameterBuilder = React.forwardRef(function ParameterBuilder(props
261
261
  el.removeEventListener('edit', _onEditFn);
262
262
  };
263
263
  }, []);
264
- return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
264
+ return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
265
265
  });
266
266
 
267
- export const TemplateConditionGroup = React.forwardRef(function TemplateConditionGroup(props, ref) {
267
+ export const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
268
268
  const { onDelete, onEdit, children, ...rest } = props;
269
269
  const _innerRef = React.useRef(null);
270
270
  const _onDeleteRef = React.useRef(onDelete);
@@ -283,10 +283,10 @@ export const TemplateConditionGroup = React.forwardRef(function TemplateConditio
283
283
  el.removeEventListener('edit', _onEditFn);
284
284
  };
285
285
  }, []);
286
- return React.createElement(customElements.getName(TemplateConditionGroupWC) ?? 'template-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
286
+ return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
287
287
  });
288
288
 
289
- export const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
289
+ export const TemplateConditionGroup = React.forwardRef(function TemplateConditionGroup(props, ref) {
290
290
  const { onDelete, onEdit, children, ...rest } = props;
291
291
  const _innerRef = React.useRef(null);
292
292
  const _onDeleteRef = React.useRef(onDelete);
@@ -305,5 +305,5 @@ export const TemplateConditionBuilder = React.forwardRef(function TemplateCondit
305
305
  el.removeEventListener('edit', _onEditFn);
306
306
  };
307
307
  }, []);
308
- return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
308
+ return React.createElement(customElements.getName(TemplateConditionGroupWC) ?? 'template-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
309
309
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/pbc-notify-ui",
3
3
  "description": "Genesis PBC Notify UI",
4
- "version": "15.34.1",
4
+ "version": "15.35.0",
5
5
  "license": "SEE LICENSE IN license.txt",
6
6
  "workspaces": [
7
7
  "client"
@@ -81,30 +81,30 @@
81
81
  "@commitlint/cli": "^19.2.1",
82
82
  "@commitlint/config-conventional": "^19.1.0",
83
83
  "@commitlint/format": "^19.0.3",
84
- "@genesislcap/design-system-configurator": "15.34.1",
85
- "@genesislcap/eslint-config": "15.34.1",
86
- "@genesislcap/eslint-stylelint-builder": "15.34.1",
87
- "@genesislcap/foundation-testing": "15.34.1",
88
- "@genesislcap/genx": "15.34.1",
89
- "@genesislcap/prettier-config": "15.34.1",
90
- "@genesislcap/stylelint-config": "15.34.1",
91
- "@genesislcap/vite-builder": "15.34.1",
92
- "@genesislcap/webpack-builder": "15.34.1",
84
+ "@genesislcap/design-system-configurator": "15.35.0",
85
+ "@genesislcap/eslint-config": "15.35.0",
86
+ "@genesislcap/eslint-stylelint-builder": "15.35.0",
87
+ "@genesislcap/foundation-testing": "15.35.0",
88
+ "@genesislcap/genx": "15.35.0",
89
+ "@genesislcap/prettier-config": "15.35.0",
90
+ "@genesislcap/stylelint-config": "15.35.0",
91
+ "@genesislcap/vite-builder": "15.35.0",
92
+ "@genesislcap/webpack-builder": "15.35.0",
93
93
  "dayjs": "^1.11.7"
94
94
  },
95
95
  "dependencies": {
96
- "@genesislcap/foundation-comms": "15.34.1",
97
- "@genesislcap/foundation-criteria": "15.34.1",
98
- "@genesislcap/foundation-entity-management": "15.34.1",
99
- "@genesislcap/foundation-forms": "15.34.1",
100
- "@genesislcap/foundation-layout": "15.34.1",
101
- "@genesislcap/foundation-logger": "15.34.1",
102
- "@genesislcap/foundation-notifications": "15.34.1",
103
- "@genesislcap/foundation-ui": "15.34.1",
104
- "@genesislcap/foundation-utils": "15.34.1",
105
- "@genesislcap/rapid-design-system": "15.34.1",
106
- "@genesislcap/rapid-grid-pro": "15.34.1",
107
- "@genesislcap/web-core": "15.34.1",
96
+ "@genesislcap/foundation-comms": "15.35.0",
97
+ "@genesislcap/foundation-criteria": "15.35.0",
98
+ "@genesislcap/foundation-entity-management": "15.35.0",
99
+ "@genesislcap/foundation-forms": "15.35.0",
100
+ "@genesislcap/foundation-layout": "15.35.0",
101
+ "@genesislcap/foundation-logger": "15.35.0",
102
+ "@genesislcap/foundation-notifications": "15.35.0",
103
+ "@genesislcap/foundation-ui": "15.35.0",
104
+ "@genesislcap/foundation-utils": "15.35.0",
105
+ "@genesislcap/rapid-design-system": "15.35.0",
106
+ "@genesislcap/rapid-grid-pro": "15.35.0",
107
+ "@genesislcap/web-core": "15.35.0",
108
108
  "lodash.debounce": "^4.0.8",
109
109
  "rxjs": "^7.5.4"
110
110
  },