@genesislcap/pbc-notify-ui 15.3.5 → 15.4.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.
@@ -3300,95 +3300,6 @@
3300
3300
  }
3301
3301
  ]
3302
3302
  },
3303
- {
3304
- "kind": "javascript-module",
3305
- "path": "src/components/foundation-notification-dashboard/styles/condition-builder.styles.ts",
3306
- "declarations": [
3307
- {
3308
- "kind": "variable",
3309
- "name": "ConditionBuilderStyles",
3310
- "default": "css`\n .condition-builder {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n align-items: center;\n margin-bottom: calc(var(--design-unit) * 2px);\n }\n\n rapid-button {\n margin: 0;\n }\n\n /* The AND/OR toggle sits on its own row ABOVE the condition it joins,\n rendered as a pair of small text links rather than buttons - reads like\n a sentence connector (\"... and ...\") instead of a UI control competing\n with the row's fields for attention. */\n .join-toggle-row {\n display: flex;\n margin-bottom: calc(var(--design-unit) * 1px);\n }\n\n .join-toggle {\n display: flex;\n gap: calc(var(--design-unit) * 1.5px);\n }\n\n .join-text {\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 0.02em;\n color: var(--accent-fill-rest);\n cursor: pointer;\n text-decoration: underline dotted;\n text-underline-offset: 3px;\n opacity: 40%;\n }\n\n .join-text:hover {\n opacity: 70%;\n }\n\n .join-text.active {\n opacity: 100%;\n text-decoration: underline solid;\n }\n\n .join-text.active:hover {\n opacity: 100%;\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.left-value::part(control) {\n width: 250px;\n }\n\n rapid-select.logical-operator::part(control) {\n width: 160px;\n }\n\n .logical-operator-null-and-blank {\n width: 100%;\n }\n\n rapid-select.right-criteria::part(control) {\n width: 135px;\n }\n\n rapid-select.right-criteria-user-entry {\n width: 100%;\n }\n\n rapid-select.right-criteria-select {\n width: 100%;\n min-width: 0;\n }\n\n rapid-select::part(listbox) {\n max-height: 160px;\n }\n`"
3311
- },
3312
- {
3313
- "kind": "variable",
3314
- "name": "ConditionGroupStyles",
3315
- "default": "css`\n .condition-group-row {\n margin-bottom: calc(var(--design-unit) * 2px);\n }\n\n /* The AND/OR toggle sits on its own row ABOVE the group it joins - see\n ConditionBuilderStyles' .join-toggle-row/.join-text for why it's a pair\n of text links rather than buttons. */\n .join-toggle-row {\n display: flex;\n margin-bottom: calc(var(--design-unit) * 1px);\n }\n\n .join-toggle {\n display: flex;\n gap: calc(var(--design-unit) * 1.5px);\n }\n\n .join-text {\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 0.02em;\n color: var(--accent-fill-rest);\n cursor: pointer;\n text-decoration: underline dotted;\n text-underline-offset: 3px;\n opacity: 40%;\n }\n\n .join-text:hover {\n opacity: 70%;\n }\n\n .join-text.active {\n opacity: 100%;\n text-decoration: underline solid;\n }\n\n .join-text.active:hover {\n opacity: 100%;\n }\n\n /* A full bordered box reads as \"this is one parenthesized unit\" more\n literally than a left rail - it nests naturally too, a group inside a\n group just gets a second box drawn inside the first, like actual nested\n parens would look. */\n .condition-group-box {\n flex: 1;\n min-width: 0;\n border: calc(var(--design-unit) * 0.5px) solid\n color-mix(in srgb, var(--accent-fill-rest), transparent 25%);\n border-radius: calc(var(--design-unit) * 1px);\n padding: calc(var(--design-unit) * 2px);\n background-color: color-mix(in srgb, var(--accent-fill-rest), transparent 96%);\n }\n\n .condition-group-box > .content-row {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n align-items: center;\n margin-top: calc(var(--design-unit) * 1px);\n }\n\n .condition-group-box > .content-row rapid-button {\n font-size: 12px;\n }\n\n rule-condition-builder,\n rule-condition-group,\n template-condition-builder,\n template-condition-group {\n display: block;\n margin-bottom: calc(var(--design-unit) * 1px);\n }\n\n .delete-group {\n margin: 0;\n opacity: 60%;\n }\n\n .delete-group:hover {\n opacity: 100%;\n }\n`"
3316
- }
3317
- ],
3318
- "exports": [
3319
- {
3320
- "kind": "js",
3321
- "name": "ConditionBuilderStyles",
3322
- "declaration": {
3323
- "name": "ConditionBuilderStyles",
3324
- "module": "src/components/foundation-notification-dashboard/styles/condition-builder.styles.ts"
3325
- }
3326
- },
3327
- {
3328
- "kind": "js",
3329
- "name": "ConditionGroupStyles",
3330
- "declaration": {
3331
- "name": "ConditionGroupStyles",
3332
- "module": "src/components/foundation-notification-dashboard/styles/condition-builder.styles.ts"
3333
- }
3334
- }
3335
- ]
3336
- },
3337
- {
3338
- "kind": "javascript-module",
3339
- "path": "src/components/foundation-notification-dashboard/styles/dynamic-rule.styles.ts",
3340
- "declarations": [
3341
- {
3342
- "kind": "variable",
3343
- "name": "DynamicRuleManagementStyles",
3344
- "default": "css`\n .container {\n display: flex;\n height: 100%;\n flex-direction: column;\n }\n\n .header {\n display: flex;\n flex-direction: row-reverse;\n }\n\n .grid {\n height: 100%;\n }\n`"
3345
- },
3346
- {
3347
- "kind": "variable",
3348
- "name": "DynamicRuleDialogStyles",
3349
- "default": "css`\n ${scrollbarStyles}\n ${top}\n ${bottom}\n\n rapid-modal::part(dialog) {\n padding: 0;\n background: var(--neutral-layer-4);\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n }\n\n .dialog-content {\n display: flex;\n flex-direction: column;\n width: ${String(modalWidthPx)}px;\n max-height: 500px;\n overflow-y: scroll;\n gap: calc(var(--design-unit) * 3px);\n padding: calc(var(--design-unit) * 4px);\n }\n\n .content-row {\n display: flex;\n gap: calc(var(--design-unit) * 3px);\n }\n\n .control {\n display: flex;\n flex-direction: column;\n width: 100%;\n gap: calc(var(--design-unit) * 2px);\n }\n\n .items {\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n border-radius: calc(var(--control-corner-radius) * 1px);\n display: flex;\n padding: calc(var(--design-unit) * 2px);\n flex-direction: column;\n }\n\n .item {\n gap: 0;\n flex-direction: column;\n margin-bottom: 0;\n }\n\n ${textField}\n ${select}\n\n rapid-button {\n margin: 0;\n }\n\n rapid-select {\n min-width: 0;\n }\n\n rapid-select::part(listbox) {\n max-height: 160px;\n }\n\n .horizontal {\n flex-direction: row;\n }\n\n .destination {\n align-self: center;\n }\n\n .topic {\n min-width: revert-layer;\n }\n\n .expression-preview {\n width: 100%;\n margin-top: calc(var(--design-unit) * 2px);\n }\n\n .expression-preview::part(control) {\n font-family: var(--body-font, monospace);\n font-size: 12px;\n color: var(--neutral-foreground-hint);\n min-height: calc(var(--design-unit) * 12px);\n resize: vertical;\n }\n`"
3350
- }
3351
- ],
3352
- "exports": [
3353
- {
3354
- "kind": "js",
3355
- "name": "DynamicRuleManagementStyles",
3356
- "declaration": {
3357
- "name": "DynamicRuleManagementStyles",
3358
- "module": "src/components/foundation-notification-dashboard/styles/dynamic-rule.styles.ts"
3359
- }
3360
- },
3361
- {
3362
- "kind": "js",
3363
- "name": "DynamicRuleDialogStyles",
3364
- "declaration": {
3365
- "name": "DynamicRuleDialogStyles",
3366
- "module": "src/components/foundation-notification-dashboard/styles/dynamic-rule.styles.ts"
3367
- }
3368
- }
3369
- ]
3370
- },
3371
- {
3372
- "kind": "javascript-module",
3373
- "path": "src/components/foundation-notification-dashboard/styles/management.styles.ts",
3374
- "declarations": [
3375
- {
3376
- "kind": "variable",
3377
- "name": "managementGridStyles",
3378
- "default": "css`\n :host {\n height: 100%;\n }\n\n .container {\n display: flex;\n height: 100%;\n flex-direction: column;\n }\n\n .header {\n display: flex;\n }\n\n .grid {\n height: 100%;\n }\n`"
3379
- }
3380
- ],
3381
- "exports": [
3382
- {
3383
- "kind": "js",
3384
- "name": "managementGridStyles",
3385
- "declaration": {
3386
- "name": "managementGridStyles",
3387
- "module": "src/components/foundation-notification-dashboard/styles/management.styles.ts"
3388
- }
3389
- }
3390
- ]
3391
- },
3392
3303
  {
3393
3304
  "kind": "javascript-module",
3394
3305
  "path": "src/components/foundation-notification-dashboard/types/expression-type.ts",
@@ -3989,6 +3900,95 @@
3989
3900
  }
3990
3901
  ]
3991
3902
  },
3903
+ {
3904
+ "kind": "javascript-module",
3905
+ "path": "src/components/foundation-notification-dashboard/styles/condition-builder.styles.ts",
3906
+ "declarations": [
3907
+ {
3908
+ "kind": "variable",
3909
+ "name": "ConditionBuilderStyles",
3910
+ "default": "css`\n .condition-builder {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n align-items: center;\n margin-bottom: calc(var(--design-unit) * 2px);\n }\n\n rapid-button {\n margin: 0;\n }\n\n /* The AND/OR toggle sits on its own row ABOVE the condition it joins,\n rendered as a pair of small text links rather than buttons - reads like\n a sentence connector (\"... and ...\") instead of a UI control competing\n with the row's fields for attention. */\n .join-toggle-row {\n display: flex;\n margin-bottom: calc(var(--design-unit) * 1px);\n }\n\n .join-toggle {\n display: flex;\n gap: calc(var(--design-unit) * 1.5px);\n }\n\n .join-text {\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 0.02em;\n color: var(--accent-fill-rest);\n cursor: pointer;\n text-decoration: underline dotted;\n text-underline-offset: 3px;\n opacity: 40%;\n }\n\n .join-text:hover {\n opacity: 70%;\n }\n\n .join-text.active {\n opacity: 100%;\n text-decoration: underline solid;\n }\n\n .join-text.active:hover {\n opacity: 100%;\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.left-value::part(control) {\n width: 250px;\n }\n\n rapid-select.logical-operator::part(control) {\n width: 160px;\n }\n\n .logical-operator-null-and-blank {\n width: 100%;\n }\n\n rapid-select.right-criteria::part(control) {\n width: 135px;\n }\n\n rapid-select.right-criteria-user-entry {\n width: 100%;\n }\n\n rapid-select.right-criteria-select {\n width: 100%;\n min-width: 0;\n }\n\n rapid-select::part(listbox) {\n max-height: 160px;\n }\n`"
3911
+ },
3912
+ {
3913
+ "kind": "variable",
3914
+ "name": "ConditionGroupStyles",
3915
+ "default": "css`\n .condition-group-row {\n margin-bottom: calc(var(--design-unit) * 2px);\n }\n\n /* The AND/OR toggle sits on its own row ABOVE the group it joins - see\n ConditionBuilderStyles' .join-toggle-row/.join-text for why it's a pair\n of text links rather than buttons. */\n .join-toggle-row {\n display: flex;\n margin-bottom: calc(var(--design-unit) * 1px);\n }\n\n .join-toggle {\n display: flex;\n gap: calc(var(--design-unit) * 1.5px);\n }\n\n .join-text {\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 0.02em;\n color: var(--accent-fill-rest);\n cursor: pointer;\n text-decoration: underline dotted;\n text-underline-offset: 3px;\n opacity: 40%;\n }\n\n .join-text:hover {\n opacity: 70%;\n }\n\n .join-text.active {\n opacity: 100%;\n text-decoration: underline solid;\n }\n\n .join-text.active:hover {\n opacity: 100%;\n }\n\n /* A full bordered box reads as \"this is one parenthesized unit\" more\n literally than a left rail - it nests naturally too, a group inside a\n group just gets a second box drawn inside the first, like actual nested\n parens would look. */\n .condition-group-box {\n flex: 1;\n min-width: 0;\n border: calc(var(--design-unit) * 0.5px) solid\n color-mix(in srgb, var(--accent-fill-rest), transparent 25%);\n border-radius: calc(var(--design-unit) * 1px);\n padding: calc(var(--design-unit) * 2px);\n background-color: color-mix(in srgb, var(--accent-fill-rest), transparent 96%);\n }\n\n .condition-group-box > .content-row {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n align-items: center;\n margin-top: calc(var(--design-unit) * 1px);\n }\n\n .condition-group-box > .content-row rapid-button {\n font-size: 12px;\n }\n\n rule-condition-builder,\n rule-condition-group,\n template-condition-builder,\n template-condition-group {\n display: block;\n margin-bottom: calc(var(--design-unit) * 1px);\n }\n\n .delete-group {\n margin: 0;\n opacity: 60%;\n }\n\n .delete-group:hover {\n opacity: 100%;\n }\n`"
3916
+ }
3917
+ ],
3918
+ "exports": [
3919
+ {
3920
+ "kind": "js",
3921
+ "name": "ConditionBuilderStyles",
3922
+ "declaration": {
3923
+ "name": "ConditionBuilderStyles",
3924
+ "module": "src/components/foundation-notification-dashboard/styles/condition-builder.styles.ts"
3925
+ }
3926
+ },
3927
+ {
3928
+ "kind": "js",
3929
+ "name": "ConditionGroupStyles",
3930
+ "declaration": {
3931
+ "name": "ConditionGroupStyles",
3932
+ "module": "src/components/foundation-notification-dashboard/styles/condition-builder.styles.ts"
3933
+ }
3934
+ }
3935
+ ]
3936
+ },
3937
+ {
3938
+ "kind": "javascript-module",
3939
+ "path": "src/components/foundation-notification-dashboard/styles/dynamic-rule.styles.ts",
3940
+ "declarations": [
3941
+ {
3942
+ "kind": "variable",
3943
+ "name": "DynamicRuleManagementStyles",
3944
+ "default": "css`\n .container {\n display: flex;\n height: 100%;\n flex-direction: column;\n }\n\n .header {\n display: flex;\n flex-direction: row-reverse;\n }\n\n .grid {\n height: 100%;\n }\n`"
3945
+ },
3946
+ {
3947
+ "kind": "variable",
3948
+ "name": "DynamicRuleDialogStyles",
3949
+ "default": "css`\n ${scrollbarStyles}\n ${top}\n ${bottom}\n\n rapid-modal::part(dialog) {\n padding: 0;\n background: var(--neutral-layer-4);\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n }\n\n .dialog-content {\n display: flex;\n flex-direction: column;\n width: ${String(modalWidthPx)}px;\n max-height: 500px;\n overflow-y: scroll;\n gap: calc(var(--design-unit) * 3px);\n padding: calc(var(--design-unit) * 4px);\n }\n\n .content-row {\n display: flex;\n gap: calc(var(--design-unit) * 3px);\n }\n\n .control {\n display: flex;\n flex-direction: column;\n width: 100%;\n gap: calc(var(--design-unit) * 2px);\n }\n\n .items {\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n border-radius: calc(var(--control-corner-radius) * 1px);\n display: flex;\n padding: calc(var(--design-unit) * 2px);\n flex-direction: column;\n }\n\n .item {\n gap: 0;\n flex-direction: column;\n margin-bottom: 0;\n }\n\n ${textField}\n ${select}\n\n rapid-button {\n margin: 0;\n }\n\n rapid-select {\n min-width: 0;\n }\n\n rapid-select::part(listbox) {\n max-height: 160px;\n }\n\n .horizontal {\n flex-direction: row;\n }\n\n .destination {\n align-self: center;\n }\n\n .topic {\n min-width: revert-layer;\n }\n\n .expression-preview {\n width: 100%;\n margin-top: calc(var(--design-unit) * 2px);\n }\n\n .expression-preview::part(control) {\n font-family: var(--body-font, monospace);\n font-size: 12px;\n color: var(--neutral-foreground-hint);\n min-height: calc(var(--design-unit) * 12px);\n resize: vertical;\n }\n`"
3950
+ }
3951
+ ],
3952
+ "exports": [
3953
+ {
3954
+ "kind": "js",
3955
+ "name": "DynamicRuleManagementStyles",
3956
+ "declaration": {
3957
+ "name": "DynamicRuleManagementStyles",
3958
+ "module": "src/components/foundation-notification-dashboard/styles/dynamic-rule.styles.ts"
3959
+ }
3960
+ },
3961
+ {
3962
+ "kind": "js",
3963
+ "name": "DynamicRuleDialogStyles",
3964
+ "declaration": {
3965
+ "name": "DynamicRuleDialogStyles",
3966
+ "module": "src/components/foundation-notification-dashboard/styles/dynamic-rule.styles.ts"
3967
+ }
3968
+ }
3969
+ ]
3970
+ },
3971
+ {
3972
+ "kind": "javascript-module",
3973
+ "path": "src/components/foundation-notification-dashboard/styles/management.styles.ts",
3974
+ "declarations": [
3975
+ {
3976
+ "kind": "variable",
3977
+ "name": "managementGridStyles",
3978
+ "default": "css`\n :host {\n height: 100%;\n }\n\n .container {\n display: flex;\n height: 100%;\n flex-direction: column;\n }\n\n .header {\n display: flex;\n }\n\n .grid {\n height: 100%;\n }\n`"
3979
+ }
3980
+ ],
3981
+ "exports": [
3982
+ {
3983
+ "kind": "js",
3984
+ "name": "managementGridStyles",
3985
+ "declaration": {
3986
+ "name": "managementGridStyles",
3987
+ "module": "src/components/foundation-notification-dashboard/styles/management.styles.ts"
3988
+ }
3989
+ }
3990
+ ]
3991
+ },
3992
3992
  {
3993
3993
  "kind": "javascript-module",
3994
3994
  "path": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.styles.ts",
@@ -7322,506 +7322,506 @@
7322
7322
  },
7323
7323
  {
7324
7324
  "kind": "javascript-module",
7325
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts",
7325
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts",
7326
7326
  "declarations": [
7327
7327
  {
7328
7328
  "kind": "variable",
7329
- "name": "TemplateConditionBuilderTemplate",
7330
- "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`"
7329
+ "name": "ParameterBuilderStyles",
7330
+ "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`"
7331
7331
  }
7332
7332
  ],
7333
7333
  "exports": [
7334
7334
  {
7335
7335
  "kind": "js",
7336
- "name": "TemplateConditionBuilderTemplate",
7336
+ "name": "ParameterBuilderStyles",
7337
7337
  "declaration": {
7338
- "name": "TemplateConditionBuilderTemplate",
7339
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts"
7338
+ "name": "ParameterBuilderStyles",
7339
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts"
7340
7340
  }
7341
7341
  }
7342
7342
  ]
7343
7343
  },
7344
7344
  {
7345
7345
  "kind": "javascript-module",
7346
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts",
7346
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts",
7347
+ "declarations": [
7348
+ {
7349
+ "kind": "variable",
7350
+ "name": "ParameterBuilderTemplate",
7351
+ "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`"
7352
+ }
7353
+ ],
7354
+ "exports": [
7355
+ {
7356
+ "kind": "js",
7357
+ "name": "ParameterBuilderTemplate",
7358
+ "declaration": {
7359
+ "name": "ParameterBuilderTemplate",
7360
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts"
7361
+ }
7362
+ }
7363
+ ]
7364
+ },
7365
+ {
7366
+ "kind": "javascript-module",
7367
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts",
7347
7368
  "declarations": [
7348
7369
  {
7349
7370
  "kind": "class",
7350
- "description": "Condition builder for template notification rules.",
7351
- "name": "TemplateConditionBuilder",
7371
+ "description": "Parameter builder for notification templates.",
7372
+ "name": "ParameterBuilder",
7352
7373
  "members": [
7353
7374
  {
7354
7375
  "kind": "field",
7355
- "name": "condition",
7376
+ "name": "parameter",
7356
7377
  "type": {
7357
- "text": "ConditionBuilderEntity"
7378
+ "text": "ParameterBuilderEntity"
7358
7379
  }
7359
7380
  },
7360
7381
  {
7361
7382
  "kind": "field",
7362
- "name": "parameters",
7383
+ "name": "name",
7363
7384
  "type": {
7364
- "text": "Array<ParameterBuilderEntity>"
7365
- },
7366
- "default": "[]"
7385
+ "text": "string"
7386
+ }
7367
7387
  },
7368
7388
  {
7369
7389
  "kind": "field",
7370
- "name": "fields",
7390
+ "name": "label",
7371
7391
  "type": {
7372
- "text": "Array<string>"
7373
- },
7374
- "default": "[]"
7392
+ "text": "string"
7393
+ }
7375
7394
  },
7376
7395
  {
7377
7396
  "kind": "field",
7378
- "name": "isFirst",
7397
+ "name": "type",
7379
7398
  "type": {
7380
- "text": "boolean"
7381
- },
7382
- "default": "false"
7399
+ "text": "string"
7400
+ }
7383
7401
  },
7384
7402
  {
7385
7403
  "kind": "field",
7386
- "name": "joinOperator",
7404
+ "name": "sourceType",
7387
7405
  "type": {
7388
7406
  "text": "string"
7389
7407
  }
7390
7408
  },
7391
7409
  {
7392
7410
  "kind": "field",
7393
- "name": "leftValue",
7411
+ "name": "sourceSelected",
7394
7412
  "type": {
7395
- "text": "any"
7396
- },
7397
- "default": "null"
7413
+ "text": "string"
7414
+ }
7398
7415
  },
7399
7416
  {
7400
7417
  "kind": "field",
7401
- "name": "leftValueItems",
7402
- "type": {
7403
- "text": "Array<any>"
7404
- },
7405
- "default": "[]"
7406
- },
7407
- {
7408
- "kind": "field",
7409
- "name": "logicalOperator",
7410
- "type": {
7411
- "text": "string"
7412
- },
7413
- "default": "null"
7414
- },
7415
- {
7416
- "kind": "field",
7417
- "name": "rightCriteria",
7418
+ "name": "sourceTyped",
7418
7419
  "type": {
7419
7420
  "text": "string"
7420
7421
  }
7421
7422
  },
7422
7423
  {
7423
7424
  "kind": "field",
7424
- "name": "rightValueText",
7425
- "type": {
7426
- "text": "string"
7427
- },
7428
- "default": "null"
7429
- },
7430
- {
7431
- "kind": "field",
7432
- "name": "rightValueSelect",
7425
+ "name": "sourceTextField",
7433
7426
  "type": {
7434
- "text": "string"
7435
- },
7436
- "default": "null"
7427
+ "text": "TextField"
7428
+ }
7437
7429
  },
7438
7430
  {
7439
7431
  "kind": "field",
7440
- "name": "rightValueItems",
7432
+ "name": "sourceSelect",
7441
7433
  "type": {
7442
- "text": "Array<any>"
7443
- },
7444
- "default": "[]"
7434
+ "text": "Select"
7435
+ }
7445
7436
  },
7446
7437
  {
7447
7438
  "kind": "field",
7448
- "name": "rightValueMultiSelect",
7439
+ "name": "reqRepItems",
7449
7440
  "type": {
7450
- "text": "string[]"
7441
+ "text": "array"
7451
7442
  },
7452
- "default": "[]"
7453
- },
7454
- {
7455
- "kind": "method",
7456
- "name": "deleteCondition"
7457
- },
7458
- {
7459
- "kind": "method",
7460
- "name": "conditionChanged"
7461
- },
7462
- {
7463
- "kind": "method",
7464
- "name": "joinOperatorChanged"
7465
- },
7466
- {
7467
- "kind": "method",
7468
- "name": "parametersChanged"
7469
- },
7470
- {
7471
- "kind": "method",
7472
- "name": "getMatchingParameter",
7473
- "privacy": "private",
7474
- "return": {
7475
- "type": {
7476
- "text": "ParameterBuilderEntity | undefined"
7477
- }
7478
- }
7479
- },
7480
- {
7481
- "kind": "method",
7482
- "name": "syncParameterBinding",
7483
- "privacy": "private",
7484
- "return": {
7485
- "type": {
7486
- "text": "boolean"
7487
- }
7488
- }
7489
- },
7490
- {
7491
- "kind": "method",
7492
- "name": "resetToValueEditor",
7493
- "privacy": "private"
7494
- },
7495
- {
7496
- "kind": "method",
7497
- "name": "fieldsChanged"
7498
- },
7499
- {
7500
- "kind": "method",
7501
- "name": "logicalOperatorChanged"
7502
- },
7503
- {
7504
- "kind": "method",
7505
- "name": "assignLeftValue",
7506
- "privacy": "private"
7443
+ "default": "['REQUEST_1', 'REQUEST_2', 'REQUEST_3']"
7507
7444
  },
7508
7445
  {
7509
7446
  "kind": "method",
7510
- "name": "leftValueChanged"
7447
+ "name": "deleteParameter"
7511
7448
  },
7512
7449
  {
7513
7450
  "kind": "method",
7514
- "name": "assignRightValue",
7515
- "privacy": "private"
7451
+ "name": "parameterChanged"
7516
7452
  },
7517
7453
  {
7518
7454
  "kind": "method",
7519
- "name": "rightCriteriaChanged"
7455
+ "name": "nameChanged"
7520
7456
  },
7521
7457
  {
7522
7458
  "kind": "method",
7523
- "name": "clearRightValueText",
7524
- "privacy": "private"
7459
+ "name": "labelChanged"
7525
7460
  },
7526
7461
  {
7527
7462
  "kind": "method",
7528
- "name": "clearRightValueSelect",
7529
- "privacy": "private"
7463
+ "name": "typeChanged"
7530
7464
  },
7531
7465
  {
7532
7466
  "kind": "method",
7533
- "name": "rightValueTextChanged"
7467
+ "name": "sourceTypeChanged"
7534
7468
  },
7535
7469
  {
7536
7470
  "kind": "method",
7537
- "name": "rightValueSelectChanged"
7471
+ "name": "sourceSelectedChanged"
7538
7472
  },
7539
7473
  {
7540
7474
  "kind": "method",
7541
- "name": "rightValueMultiSelectChanged"
7475
+ "name": "sourceTypedChanged"
7542
7476
  },
7543
7477
  {
7544
7478
  "kind": "method",
7545
- "name": "getEnumValues",
7546
- "return": {
7547
- "type": {
7548
- "text": "string[]"
7479
+ "name": "genericChanged",
7480
+ "privacy": "private",
7481
+ "parameters": [
7482
+ {
7483
+ "name": "parameterAttribute"
7484
+ },
7485
+ {
7486
+ "name": "value"
7549
7487
  }
7550
- }
7488
+ ]
7551
7489
  }
7552
7490
  ],
7553
7491
  "events": [
7554
7492
  {
7555
- "description": "Fired when a condition is deleted. detail: `ConditionBuilderEntity`",
7493
+ "description": "Fired when a parameter is deleted. detail: `ParameterBuilderEntity`",
7556
7494
  "name": "delete"
7557
7495
  },
7558
7496
  {
7559
- "description": "Fired when a condition is edited. detail: `ConditionBuilderEntity`",
7497
+ "description": "Fired when a parameter is edited. detail: `ParameterBuilderEntity`",
7560
7498
  "name": "edit"
7561
7499
  }
7562
7500
  ],
7563
7501
  "attributes": [
7564
7502
  {
7565
- "name": "condition",
7566
- "type": {
7567
- "text": "ConditionBuilderEntity"
7568
- },
7569
- "fieldName": "condition"
7570
- },
7571
- {
7572
- "name": "parameters",
7573
- "type": {
7574
- "text": "Array<ParameterBuilderEntity>"
7575
- },
7576
- "default": "[]",
7577
- "fieldName": "parameters"
7578
- },
7579
- {
7580
- "name": "fields",
7503
+ "name": "parameter",
7581
7504
  "type": {
7582
- "text": "Array<string>"
7505
+ "text": "ParameterBuilderEntity"
7583
7506
  },
7584
- "default": "[]",
7585
- "fieldName": "fields"
7507
+ "fieldName": "parameter"
7586
7508
  }
7587
7509
  ],
7588
7510
  "superclass": {
7589
7511
  "name": "GenesisElement",
7590
7512
  "package": "@genesislcap/web-core"
7591
7513
  },
7592
- "tagName": "template-condition-builder",
7514
+ "tagName": "parameter-builder",
7593
7515
  "customElement": true
7594
7516
  }
7595
7517
  ],
7596
7518
  "exports": [
7597
7519
  {
7598
7520
  "kind": "js",
7599
- "name": "TemplateConditionBuilder",
7521
+ "name": "ParameterBuilder",
7600
7522
  "declaration": {
7601
- "name": "TemplateConditionBuilder",
7602
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
7523
+ "name": "ParameterBuilder",
7524
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
7603
7525
  }
7604
7526
  },
7605
7527
  {
7606
7528
  "kind": "custom-element-definition",
7607
- "name": "template-condition-builder",
7608
- "declaration": {
7609
- "name": "TemplateConditionBuilder",
7610
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
7611
- }
7612
- }
7613
- ]
7614
- },
7615
- {
7616
- "kind": "javascript-module",
7617
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts",
7618
- "declarations": [
7619
- {
7620
- "kind": "variable",
7621
- "name": "ParameterBuilderStyles",
7622
- "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`"
7623
- }
7624
- ],
7625
- "exports": [
7626
- {
7627
- "kind": "js",
7628
- "name": "ParameterBuilderStyles",
7529
+ "name": "parameter-builder",
7629
7530
  "declaration": {
7630
- "name": "ParameterBuilderStyles",
7631
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts"
7531
+ "name": "ParameterBuilder",
7532
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
7632
7533
  }
7633
7534
  }
7634
7535
  ]
7635
7536
  },
7636
7537
  {
7637
7538
  "kind": "javascript-module",
7638
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts",
7539
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts",
7639
7540
  "declarations": [
7640
7541
  {
7641
7542
  "kind": "variable",
7642
- "name": "ParameterBuilderTemplate",
7643
- "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`"
7543
+ "name": "TemplateConditionBuilderTemplate",
7544
+ "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`"
7644
7545
  }
7645
7546
  ],
7646
7547
  "exports": [
7647
7548
  {
7648
7549
  "kind": "js",
7649
- "name": "ParameterBuilderTemplate",
7550
+ "name": "TemplateConditionBuilderTemplate",
7650
7551
  "declaration": {
7651
- "name": "ParameterBuilderTemplate",
7652
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts"
7552
+ "name": "TemplateConditionBuilderTemplate",
7553
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts"
7653
7554
  }
7654
7555
  }
7655
7556
  ]
7656
7557
  },
7657
7558
  {
7658
7559
  "kind": "javascript-module",
7659
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts",
7560
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts",
7660
7561
  "declarations": [
7661
7562
  {
7662
7563
  "kind": "class",
7663
- "description": "Parameter builder for notification templates.",
7664
- "name": "ParameterBuilder",
7564
+ "description": "Condition builder for template notification rules.",
7565
+ "name": "TemplateConditionBuilder",
7665
7566
  "members": [
7666
7567
  {
7667
7568
  "kind": "field",
7668
- "name": "parameter",
7569
+ "name": "condition",
7669
7570
  "type": {
7670
- "text": "ParameterBuilderEntity"
7571
+ "text": "ConditionBuilderEntity"
7671
7572
  }
7672
7573
  },
7673
7574
  {
7674
7575
  "kind": "field",
7675
- "name": "name",
7576
+ "name": "parameters",
7676
7577
  "type": {
7677
- "text": "string"
7678
- }
7578
+ "text": "Array<ParameterBuilderEntity>"
7579
+ },
7580
+ "default": "[]"
7679
7581
  },
7680
7582
  {
7681
7583
  "kind": "field",
7682
- "name": "label",
7584
+ "name": "fields",
7683
7585
  "type": {
7684
- "text": "string"
7685
- }
7586
+ "text": "Array<string>"
7587
+ },
7588
+ "default": "[]"
7686
7589
  },
7687
7590
  {
7688
7591
  "kind": "field",
7689
- "name": "type",
7592
+ "name": "isFirst",
7593
+ "type": {
7594
+ "text": "boolean"
7595
+ },
7596
+ "default": "false"
7597
+ },
7598
+ {
7599
+ "kind": "field",
7600
+ "name": "joinOperator",
7690
7601
  "type": {
7691
7602
  "text": "string"
7692
7603
  }
7693
7604
  },
7694
7605
  {
7695
7606
  "kind": "field",
7696
- "name": "sourceType",
7607
+ "name": "leftValue",
7608
+ "type": {
7609
+ "text": "any"
7610
+ },
7611
+ "default": "null"
7612
+ },
7613
+ {
7614
+ "kind": "field",
7615
+ "name": "leftValueItems",
7616
+ "type": {
7617
+ "text": "Array<any>"
7618
+ },
7619
+ "default": "[]"
7620
+ },
7621
+ {
7622
+ "kind": "field",
7623
+ "name": "logicalOperator",
7697
7624
  "type": {
7698
7625
  "text": "string"
7699
- }
7626
+ },
7627
+ "default": "null"
7700
7628
  },
7701
7629
  {
7702
7630
  "kind": "field",
7703
- "name": "sourceSelected",
7631
+ "name": "rightCriteria",
7704
7632
  "type": {
7705
7633
  "text": "string"
7706
7634
  }
7707
7635
  },
7708
7636
  {
7709
7637
  "kind": "field",
7710
- "name": "sourceTyped",
7638
+ "name": "rightValueText",
7711
7639
  "type": {
7712
7640
  "text": "string"
7713
- }
7641
+ },
7642
+ "default": "null"
7714
7643
  },
7715
7644
  {
7716
7645
  "kind": "field",
7717
- "name": "sourceTextField",
7646
+ "name": "rightValueSelect",
7718
7647
  "type": {
7719
- "text": "TextField"
7720
- }
7648
+ "text": "string"
7649
+ },
7650
+ "default": "null"
7721
7651
  },
7722
7652
  {
7723
7653
  "kind": "field",
7724
- "name": "sourceSelect",
7654
+ "name": "rightValueItems",
7725
7655
  "type": {
7726
- "text": "Select"
7727
- }
7656
+ "text": "Array<any>"
7657
+ },
7658
+ "default": "[]"
7728
7659
  },
7729
7660
  {
7730
7661
  "kind": "field",
7731
- "name": "reqRepItems",
7662
+ "name": "rightValueMultiSelect",
7732
7663
  "type": {
7733
- "text": "array"
7664
+ "text": "string[]"
7734
7665
  },
7735
- "default": "['REQUEST_1', 'REQUEST_2', 'REQUEST_3']"
7666
+ "default": "[]"
7736
7667
  },
7737
7668
  {
7738
7669
  "kind": "method",
7739
- "name": "deleteParameter"
7670
+ "name": "deleteCondition"
7740
7671
  },
7741
7672
  {
7742
7673
  "kind": "method",
7743
- "name": "parameterChanged"
7674
+ "name": "conditionChanged"
7744
7675
  },
7745
7676
  {
7746
7677
  "kind": "method",
7747
- "name": "nameChanged"
7678
+ "name": "joinOperatorChanged"
7748
7679
  },
7749
7680
  {
7750
7681
  "kind": "method",
7751
- "name": "labelChanged"
7682
+ "name": "parametersChanged"
7752
7683
  },
7753
7684
  {
7754
7685
  "kind": "method",
7755
- "name": "typeChanged"
7686
+ "name": "getMatchingParameter",
7687
+ "privacy": "private",
7688
+ "return": {
7689
+ "type": {
7690
+ "text": "ParameterBuilderEntity | undefined"
7691
+ }
7692
+ }
7756
7693
  },
7757
7694
  {
7758
7695
  "kind": "method",
7759
- "name": "sourceTypeChanged"
7696
+ "name": "syncParameterBinding",
7697
+ "privacy": "private",
7698
+ "return": {
7699
+ "type": {
7700
+ "text": "boolean"
7701
+ }
7702
+ }
7760
7703
  },
7761
7704
  {
7762
7705
  "kind": "method",
7763
- "name": "sourceSelectedChanged"
7706
+ "name": "resetToValueEditor",
7707
+ "privacy": "private"
7764
7708
  },
7765
7709
  {
7766
7710
  "kind": "method",
7767
- "name": "sourceTypedChanged"
7711
+ "name": "fieldsChanged"
7768
7712
  },
7769
7713
  {
7770
7714
  "kind": "method",
7771
- "name": "genericChanged",
7772
- "privacy": "private",
7773
- "parameters": [
7774
- {
7775
- "name": "parameterAttribute"
7776
- },
7777
- {
7778
- "name": "value"
7715
+ "name": "logicalOperatorChanged"
7716
+ },
7717
+ {
7718
+ "kind": "method",
7719
+ "name": "assignLeftValue",
7720
+ "privacy": "private"
7721
+ },
7722
+ {
7723
+ "kind": "method",
7724
+ "name": "leftValueChanged"
7725
+ },
7726
+ {
7727
+ "kind": "method",
7728
+ "name": "assignRightValue",
7729
+ "privacy": "private"
7730
+ },
7731
+ {
7732
+ "kind": "method",
7733
+ "name": "rightCriteriaChanged"
7734
+ },
7735
+ {
7736
+ "kind": "method",
7737
+ "name": "clearRightValueText",
7738
+ "privacy": "private"
7739
+ },
7740
+ {
7741
+ "kind": "method",
7742
+ "name": "clearRightValueSelect",
7743
+ "privacy": "private"
7744
+ },
7745
+ {
7746
+ "kind": "method",
7747
+ "name": "rightValueTextChanged"
7748
+ },
7749
+ {
7750
+ "kind": "method",
7751
+ "name": "rightValueSelectChanged"
7752
+ },
7753
+ {
7754
+ "kind": "method",
7755
+ "name": "rightValueMultiSelectChanged"
7756
+ },
7757
+ {
7758
+ "kind": "method",
7759
+ "name": "getEnumValues",
7760
+ "return": {
7761
+ "type": {
7762
+ "text": "string[]"
7779
7763
  }
7780
- ]
7764
+ }
7781
7765
  }
7782
7766
  ],
7783
7767
  "events": [
7784
7768
  {
7785
- "description": "Fired when a parameter is deleted. detail: `ParameterBuilderEntity`",
7769
+ "description": "Fired when a condition is deleted. detail: `ConditionBuilderEntity`",
7786
7770
  "name": "delete"
7787
7771
  },
7788
7772
  {
7789
- "description": "Fired when a parameter is edited. detail: `ParameterBuilderEntity`",
7773
+ "description": "Fired when a condition is edited. detail: `ConditionBuilderEntity`",
7790
7774
  "name": "edit"
7791
7775
  }
7792
7776
  ],
7793
7777
  "attributes": [
7794
7778
  {
7795
- "name": "parameter",
7779
+ "name": "condition",
7796
7780
  "type": {
7797
- "text": "ParameterBuilderEntity"
7781
+ "text": "ConditionBuilderEntity"
7798
7782
  },
7799
- "fieldName": "parameter"
7783
+ "fieldName": "condition"
7784
+ },
7785
+ {
7786
+ "name": "parameters",
7787
+ "type": {
7788
+ "text": "Array<ParameterBuilderEntity>"
7789
+ },
7790
+ "default": "[]",
7791
+ "fieldName": "parameters"
7792
+ },
7793
+ {
7794
+ "name": "fields",
7795
+ "type": {
7796
+ "text": "Array<string>"
7797
+ },
7798
+ "default": "[]",
7799
+ "fieldName": "fields"
7800
7800
  }
7801
7801
  ],
7802
7802
  "superclass": {
7803
7803
  "name": "GenesisElement",
7804
7804
  "package": "@genesislcap/web-core"
7805
7805
  },
7806
- "tagName": "parameter-builder",
7806
+ "tagName": "template-condition-builder",
7807
7807
  "customElement": true
7808
7808
  }
7809
7809
  ],
7810
7810
  "exports": [
7811
7811
  {
7812
7812
  "kind": "js",
7813
- "name": "ParameterBuilder",
7813
+ "name": "TemplateConditionBuilder",
7814
7814
  "declaration": {
7815
- "name": "ParameterBuilder",
7816
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
7815
+ "name": "TemplateConditionBuilder",
7816
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
7817
7817
  }
7818
7818
  },
7819
7819
  {
7820
7820
  "kind": "custom-element-definition",
7821
- "name": "parameter-builder",
7821
+ "name": "template-condition-builder",
7822
7822
  "declaration": {
7823
- "name": "ParameterBuilder",
7824
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
7823
+ "name": "TemplateConditionBuilder",
7824
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
7825
7825
  }
7826
7826
  }
7827
7827
  ]
@@ -257,17 +257,6 @@ export declare const RuleConditionGroup: React.ForwardRefExoticComponent<
257
257
  >;
258
258
  export type RuleConditionGroupRef = RuleConditionGroupWC;
259
259
 
260
- export declare const TemplateConditionBuilder: React.ForwardRefExoticComponent<
261
- React.PropsWithChildren<
262
- Omit<PublicOf<TemplateConditionBuilderWC>, 'children' | 'style'> &
263
- HTMLWCProps & {
264
- onDelete?: (event: CustomEvent<ConditionBuilderEntity>) => void;
265
- onEdit?: (event: CustomEvent<ConditionBuilderEntity>) => void;
266
- }
267
- > & React.RefAttributes<TemplateConditionBuilderWC>
268
- >;
269
- export type TemplateConditionBuilderRef = TemplateConditionBuilderWC;
270
-
271
260
  export declare const ParameterBuilder: React.ForwardRefExoticComponent<
272
261
  React.PropsWithChildren<
273
262
  Omit<PublicOf<ParameterBuilderWC>, 'children' | 'style'> &
@@ -279,6 +268,17 @@ export declare const ParameterBuilder: React.ForwardRefExoticComponent<
279
268
  >;
280
269
  export type ParameterBuilderRef = ParameterBuilderWC;
281
270
 
271
+ export declare const TemplateConditionBuilder: React.ForwardRefExoticComponent<
272
+ React.PropsWithChildren<
273
+ Omit<PublicOf<TemplateConditionBuilderWC>, 'children' | 'style'> &
274
+ HTMLWCProps & {
275
+ onDelete?: (event: CustomEvent<ConditionBuilderEntity>) => void;
276
+ onEdit?: (event: CustomEvent<ConditionBuilderEntity>) => void;
277
+ }
278
+ > & React.RefAttributes<TemplateConditionBuilderWC>
279
+ >;
280
+ export type TemplateConditionBuilderRef = TemplateConditionBuilderWC;
281
+
282
282
  export declare const TemplateConditionGroup: React.ForwardRefExoticComponent<
283
283
  React.PropsWithChildren<
284
284
  Omit<PublicOf<TemplateConditionGroupWC>, 'children' | 'style'> &
package/dist/react.cjs CHANGED
@@ -232,7 +232,7 @@ const RuleConditionGroup = React.forwardRef(function RuleConditionGroup(props, r
232
232
  return React.createElement(customElements.getName(RuleConditionGroupWC) ?? 'rule-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
233
233
  });
234
234
 
235
- const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
235
+ const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
236
236
  const { onDelete, onEdit, children, ...rest } = props;
237
237
  const _innerRef = React.useRef(null);
238
238
  const _onDeleteRef = React.useRef(onDelete);
@@ -251,10 +251,10 @@ const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuil
251
251
  el.removeEventListener('edit', _onEditFn);
252
252
  };
253
253
  }, []);
254
- return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
254
+ return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
255
255
  });
256
256
 
257
- const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
257
+ const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
258
258
  const { onDelete, onEdit, children, ...rest } = props;
259
259
  const _innerRef = React.useRef(null);
260
260
  const _onDeleteRef = React.useRef(onDelete);
@@ -273,7 +273,7 @@ const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref)
273
273
  el.removeEventListener('edit', _onEditFn);
274
274
  };
275
275
  }, []);
276
- return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
276
+ return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
277
277
  });
278
278
 
279
279
  const TemplateConditionGroup = React.forwardRef(function TemplateConditionGroup(props, ref) {
@@ -320,7 +320,7 @@ module.exports = {
320
320
  TemplateDialog,
321
321
  RuleConditionBuilder,
322
322
  RuleConditionGroup,
323
- TemplateConditionBuilder,
324
323
  ParameterBuilder,
324
+ TemplateConditionBuilder,
325
325
  TemplateConditionGroup,
326
326
  };
package/dist/react.mjs CHANGED
@@ -230,7 +230,7 @@ export const RuleConditionGroup = React.forwardRef(function RuleConditionGroup(p
230
230
  return React.createElement(customElements.getName(RuleConditionGroupWC) ?? 'rule-condition-group', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
231
231
  });
232
232
 
233
- export const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
233
+ export const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
234
234
  const { onDelete, onEdit, children, ...rest } = props;
235
235
  const _innerRef = React.useRef(null);
236
236
  const _onDeleteRef = React.useRef(onDelete);
@@ -249,10 +249,10 @@ export const TemplateConditionBuilder = React.forwardRef(function TemplateCondit
249
249
  el.removeEventListener('edit', _onEditFn);
250
250
  };
251
251
  }, []);
252
- return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
252
+ return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
253
253
  });
254
254
 
255
- export const ParameterBuilder = React.forwardRef(function ParameterBuilder(props, ref) {
255
+ export const TemplateConditionBuilder = React.forwardRef(function TemplateConditionBuilder(props, ref) {
256
256
  const { onDelete, onEdit, children, ...rest } = props;
257
257
  const _innerRef = React.useRef(null);
258
258
  const _onDeleteRef = React.useRef(onDelete);
@@ -271,7 +271,7 @@ export const ParameterBuilder = React.forwardRef(function ParameterBuilder(props
271
271
  el.removeEventListener('edit', _onEditFn);
272
272
  };
273
273
  }, []);
274
- return React.createElement(customElements.getName(ParameterBuilderWC) ?? 'parameter-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
274
+ return React.createElement(customElements.getName(TemplateConditionBuilderWC) ?? 'template-condition-builder', { ...rest, ref: _mergeRefs(_innerRef, ref) }, children);
275
275
  });
276
276
 
277
277
  export const TemplateConditionGroup = React.forwardRef(function TemplateConditionGroup(props, ref) {
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.3.5",
4
+ "version": "15.4.0",
5
5
  "license": "SEE LICENSE IN license.txt",
6
6
  "workspaces": [
7
7
  "client"
@@ -83,30 +83,30 @@
83
83
  "@commitlint/format": "^19.0.3",
84
84
  "@genesiscommunitysuccess/cep-fast-plugin": "5.0.3",
85
85
  "@genesiscommunitysuccess/custom-elements-lsp": "5.0.3",
86
- "@genesislcap/design-system-configurator": "15.3.5",
87
- "@genesislcap/eslint-config": "15.3.5",
88
- "@genesislcap/eslint-stylelint-builder": "15.3.5",
89
- "@genesislcap/foundation-testing": "15.3.5",
90
- "@genesislcap/genx": "15.3.5",
91
- "@genesislcap/prettier-config": "15.3.5",
92
- "@genesislcap/stylelint-config": "15.3.5",
93
- "@genesislcap/vite-builder": "15.3.5",
94
- "@genesislcap/webpack-builder": "15.3.5",
86
+ "@genesislcap/design-system-configurator": "15.4.0",
87
+ "@genesislcap/eslint-config": "15.4.0",
88
+ "@genesislcap/eslint-stylelint-builder": "15.4.0",
89
+ "@genesislcap/foundation-testing": "15.4.0",
90
+ "@genesislcap/genx": "15.4.0",
91
+ "@genesislcap/prettier-config": "15.4.0",
92
+ "@genesislcap/stylelint-config": "15.4.0",
93
+ "@genesislcap/vite-builder": "15.4.0",
94
+ "@genesislcap/webpack-builder": "15.4.0",
95
95
  "dayjs": "^1.11.7"
96
96
  },
97
97
  "dependencies": {
98
- "@genesislcap/foundation-comms": "15.3.5",
99
- "@genesislcap/foundation-criteria": "15.3.5",
100
- "@genesislcap/foundation-entity-management": "15.3.5",
101
- "@genesislcap/foundation-forms": "15.3.5",
102
- "@genesislcap/foundation-layout": "15.3.5",
103
- "@genesislcap/foundation-logger": "15.3.5",
104
- "@genesislcap/foundation-notifications": "15.3.5",
105
- "@genesislcap/foundation-ui": "15.3.5",
106
- "@genesislcap/foundation-utils": "15.3.5",
107
- "@genesislcap/rapid-design-system": "15.3.5",
108
- "@genesislcap/rapid-grid-pro": "15.3.5",
109
- "@genesislcap/web-core": "15.3.5",
98
+ "@genesislcap/foundation-comms": "15.4.0",
99
+ "@genesislcap/foundation-criteria": "15.4.0",
100
+ "@genesislcap/foundation-entity-management": "15.4.0",
101
+ "@genesislcap/foundation-forms": "15.4.0",
102
+ "@genesislcap/foundation-layout": "15.4.0",
103
+ "@genesislcap/foundation-logger": "15.4.0",
104
+ "@genesislcap/foundation-notifications": "15.4.0",
105
+ "@genesislcap/foundation-ui": "15.4.0",
106
+ "@genesislcap/foundation-utils": "15.4.0",
107
+ "@genesislcap/rapid-design-system": "15.4.0",
108
+ "@genesislcap/rapid-grid-pro": "15.4.0",
109
+ "@genesislcap/web-core": "15.4.0",
110
110
  "lodash.debounce": "^4.0.8",
111
111
  "rxjs": "^7.5.4"
112
112
  },
@@ -114,5 +114,5 @@
114
114
  "access": "public"
115
115
  },
116
116
  "customElements": "dist/custom-elements.json",
117
- "gitHead": "dc772a3a6f1b3d1c249f1ffae27a13d29878609c"
117
+ "gitHead": "2c61100a9805e799c8047a26ad6a147d1ac1af87"
118
118
  }