@genesislcap/pbc-notify-ui 15.10.6 → 15.12.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.
@@ -4918,6 +4918,149 @@
4918
4918
  }
4919
4919
  ]
4920
4920
  },
4921
+ {
4922
+ "kind": "javascript-module",
4923
+ "path": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.styles.ts",
4924
+ "declarations": [
4925
+ {
4926
+ "kind": "variable",
4927
+ "name": "noItemsClass",
4928
+ "type": {
4929
+ "text": "string"
4930
+ },
4931
+ "default": "'no-items'",
4932
+ "description": "Class to use when there are no items"
4933
+ },
4934
+ {
4935
+ "kind": "variable",
4936
+ "name": "FoundationInboxCounterStyles",
4937
+ "default": "css`\n :host {\n display: inline-block;\n min-width: 16px;\n height: 16px;\n border-radius: 9px;\n text-align: center;\n color: #fff;\n line-height: 16px;\n font-size: 9px;\n font-weight: 700;\n background: ${BACKGROUND_COLOR};\n pointer-events: none;\n }\n\n .hidden {\n visibility: hidden;\n }\n\n :host(.${noItemsClass}) {\n display: none;\n }\n`"
4938
+ }
4939
+ ],
4940
+ "exports": [
4941
+ {
4942
+ "kind": "js",
4943
+ "name": "noItemsClass",
4944
+ "declaration": {
4945
+ "name": "noItemsClass",
4946
+ "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.styles.ts"
4947
+ }
4948
+ },
4949
+ {
4950
+ "kind": "js",
4951
+ "name": "FoundationInboxCounterStyles",
4952
+ "declaration": {
4953
+ "name": "FoundationInboxCounterStyles",
4954
+ "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.styles.ts"
4955
+ }
4956
+ }
4957
+ ]
4958
+ },
4959
+ {
4960
+ "kind": "javascript-module",
4961
+ "path": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.template.ts",
4962
+ "declarations": [
4963
+ {
4964
+ "kind": "variable",
4965
+ "name": "FoundationInboxCounterTemplate",
4966
+ "default": "html<FoundationInboxCounter>`\n <template class=\"${(x) => classNames([noItemsClass, x.value < 1])}\">\n ${when(\n (x) => x.value > 0,\n html`\n ${(x) => (x.value > MAX_NUMBER_TO_DISPLAY ? `${MAX_NUMBER_TO_DISPLAY}+` : x.value)}\n `,\n )}\n </template>\n`"
4967
+ }
4968
+ ],
4969
+ "exports": [
4970
+ {
4971
+ "kind": "js",
4972
+ "name": "FoundationInboxCounterTemplate",
4973
+ "declaration": {
4974
+ "name": "FoundationInboxCounterTemplate",
4975
+ "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.template.ts"
4976
+ }
4977
+ }
4978
+ ]
4979
+ },
4980
+ {
4981
+ "kind": "javascript-module",
4982
+ "path": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.ts",
4983
+ "declarations": [
4984
+ {
4985
+ "kind": "class",
4986
+ "description": "",
4987
+ "name": "FoundationInboxCounter",
4988
+ "members": [
4989
+ {
4990
+ "kind": "field",
4991
+ "name": "value",
4992
+ "type": {
4993
+ "text": "number"
4994
+ },
4995
+ "default": "0"
4996
+ },
4997
+ {
4998
+ "kind": "field",
4999
+ "name": "connect",
5000
+ "type": {
5001
+ "text": "Connect"
5002
+ }
5003
+ },
5004
+ {
5005
+ "kind": "field",
5006
+ "name": "inboxService",
5007
+ "type": {
5008
+ "text": "FoundationInboxService"
5009
+ }
5010
+ },
5011
+ {
5012
+ "kind": "field",
5013
+ "name": "connectionSub",
5014
+ "type": {
5015
+ "text": "Subscription"
5016
+ },
5017
+ "privacy": "private"
5018
+ },
5019
+ {
5020
+ "kind": "method",
5021
+ "name": "subscribeToAlerts",
5022
+ "privacy": "private",
5023
+ "return": {
5024
+ "type": {
5025
+ "text": "Promise<void>"
5026
+ }
5027
+ },
5028
+ "description": "Subscribes to alerts from the inbox service"
5029
+ },
5030
+ {
5031
+ "kind": "field",
5032
+ "name": "subscriptionHandler",
5033
+ "privacy": "private",
5034
+ "description": "Handles subscription updates from the inbox service"
5035
+ }
5036
+ ],
5037
+ "superclass": {
5038
+ "name": "GenesisElement",
5039
+ "package": "@genesislcap/web-core"
5040
+ },
5041
+ "tagName": "foundation-inbox-counter",
5042
+ "customElement": true
5043
+ }
5044
+ ],
5045
+ "exports": [
5046
+ {
5047
+ "kind": "js",
5048
+ "name": "FoundationInboxCounter",
5049
+ "declaration": {
5050
+ "name": "FoundationInboxCounter",
5051
+ "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.ts"
5052
+ }
5053
+ },
5054
+ {
5055
+ "kind": "custom-element-definition",
5056
+ "name": "foundation-inbox-counter",
5057
+ "declaration": {
5058
+ "name": "FoundationInboxCounter",
5059
+ "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.ts"
5060
+ }
5061
+ }
5062
+ ]
5063
+ },
4921
5064
  {
4922
5065
  "kind": "javascript-module",
4923
5066
  "path": "src/components/foundation-inbox/components/foundation-inbox-flyout/foundation-inbox-flyout.styles.ts",
@@ -6032,263 +6175,120 @@
6032
6175
  },
6033
6176
  {
6034
6177
  "kind": "javascript-module",
6035
- "path": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.styles.ts",
6178
+ "path": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.styles.ts",
6036
6179
  "declarations": [
6037
6180
  {
6038
6181
  "kind": "variable",
6039
- "name": "noItemsClass",
6040
- "type": {
6041
- "text": "string"
6042
- },
6043
- "default": "'no-items'",
6044
- "description": "Class to use when there are no items"
6045
- },
6046
- {
6047
- "kind": "variable",
6048
- "name": "FoundationInboxCounterStyles",
6049
- "default": "css`\n :host {\n display: inline-block;\n min-width: 16px;\n height: 16px;\n border-radius: 9px;\n text-align: center;\n color: #fff;\n line-height: 16px;\n font-size: 9px;\n font-weight: 700;\n background: ${BACKGROUND_COLOR};\n pointer-events: none;\n }\n\n .hidden {\n visibility: hidden;\n }\n\n :host(.${noItemsClass}) {\n display: none;\n }\n`"
6182
+ "name": "InboxSubscriptionStyles",
6183
+ "default": "css`\n .inbox-subscription {\n display: flex;\n flex-direction: column;\n }\n\n .inbox-subscription.inline {\n margin-top: calc(var(--design-unit) * 2px);\n padding-top: calc(var(--design-unit) * 2px);\n border-top: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n }\n\n .inbox-subscription-header {\n border-top: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n border-bottom: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n padding: calc(var(--design-unit) * 2px);\n }\n\n .inbox-subscription-empty {\n padding: 0 calc(var(--design-unit) * 2px);\n margin: calc(var(--design-unit) * 2px) 0 0;\n }\n\n .inbox-subscription-content {\n display: flex;\n flex-direction: column;\n gap: calc(var(--design-unit) * 3px);\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n margin: calc(var(--design-unit) * 2px);\n padding: calc(var(--design-unit) * 2px);\n border-radius: calc(var(--control-corner-radius) * 1px);\n }\n\n .inbox-subscription:not(.inline) .inbox-subscription-content {\n overflow: auto;\n max-height: calc(var(--design-unit) * 80px);\n }\n\n .inbox-subscription.inline .inbox-subscription-content {\n margin: calc(var(--design-unit) * 2px) 0 0;\n overflow: visible;\n max-height: none;\n padding-bottom: calc(var(--design-unit) * 4px);\n }\n\n .inbox-subscription.inline .control:focus-within {\n position: relative;\n z-index: 2;\n }\n\n .inbox-subscription-footer {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n padding: calc(var(--design-unit) * 2px) 0 0;\n border-top: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n margin-top: calc(var(--design-unit) * 2px);\n }\n\n .inbox-subscription:not(.inline) .inbox-subscription-footer {\n padding: calc(var(--design-unit) * 2px);\n margin-top: 0;\n }\n\n .inbox-subscription-footer.auto-submit {\n justify-content: flex-end;\n border-top: none;\n margin-top: 0;\n padding-top: 0;\n }\n\n rapid-button.subscribe,\n rapid-button.cancel {\n display: flex;\n margin: 0;\n flex: 1;\n }\n`"
6050
6184
  }
6051
6185
  ],
6052
6186
  "exports": [
6053
6187
  {
6054
6188
  "kind": "js",
6055
- "name": "noItemsClass",
6056
- "declaration": {
6057
- "name": "noItemsClass",
6058
- "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.styles.ts"
6059
- }
6060
- },
6061
- {
6062
- "kind": "js",
6063
- "name": "FoundationInboxCounterStyles",
6189
+ "name": "InboxSubscriptionStyles",
6064
6190
  "declaration": {
6065
- "name": "FoundationInboxCounterStyles",
6066
- "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.styles.ts"
6191
+ "name": "InboxSubscriptionStyles",
6192
+ "module": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.styles.ts"
6067
6193
  }
6068
6194
  }
6069
6195
  ]
6070
6196
  },
6071
6197
  {
6072
6198
  "kind": "javascript-module",
6073
- "path": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.template.ts",
6199
+ "path": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.template.ts",
6074
6200
  "declarations": [
6075
6201
  {
6076
6202
  "kind": "variable",
6077
- "name": "FoundationInboxCounterTemplate",
6078
- "default": "html<FoundationInboxCounter>`\n <template class=\"${(x) => classNames([noItemsClass, x.value < 1])}\">\n ${when(\n (x) => x.value > 0,\n html`\n ${(x) => (x.value > MAX_NUMBER_TO_DISPLAY ? `${MAX_NUMBER_TO_DISPLAY}+` : x.value)}\n `,\n )}\n </template>\n`"
6203
+ "name": "InboxSubscriptionTemplate",
6204
+ "default": "html<InboxSubscription>`\n <div class=\"inbox-subscription ${(x) => (x.inline ? 'inline' : '')}\">\n ${when(\n (x) => !x.inline,\n html`\n <div class=\"inbox-subscription-header\">\n Subscribe to\n <span style=\"font-weight: bold;\">${(x) => x.template.RULE_NAME}</span>\n </div>\n `,\n )}\n ${when(\n (x) => Object.values(x.template?.PARAMETERS ?? {}).length === 0,\n html`\n <p class=\"inbox-subscription-empty\">The selected template doesn't have parameters.</p>\n `,\n )}\n ${when(\n (x) => Object.values(x.template?.PARAMETERS ?? {}).length > 0,\n html`\n <div class=\"inbox-subscription-content\">\n ${repeat(\n // @ts-ignore\n (x) => Object.values(x.template?.PARAMETERS ?? {}),\n html<RuleParameterEntity>`\n <rule-parameter\n :parameter=${(x) => x}\n :isFirstElement=${(x, c) => c.parent.isFirstElement(x)}\n :operator=${(x, c) => c.parent.parametersOperators[x.PARAM_NAME]}\n :requireSelection=${(x, c) => c.parent.usesAutoSubmit()}\n @parameterEdited=${(x, c) => c.parent.parameterEdit(eventDetail(c))}\n ></rule-parameter>\n `,\n )}\n </div>\n `,\n )}\n ${when(\n (x) => !x.inline || x.requiresManualSubscribe(),\n html`\n <div class=\"inbox-subscription-footer\">\n ${when(\n (x) => x.inline,\n html`\n <rapid-button\n class=\"cancel\"\n appearance=\"neutral\"\n @click=${(x) => x.cancelSubscribe()}\n >\n Cancel\n </rapid-button>\n `,\n )}\n <rapid-button\n class=\"subscribe\"\n appearance=\"primary\"\n @click=${(x) => x.subscribeTemplate()}\n ?disabled=${(x) => x.subscribeDisabled}\n >\n Subscribe\n </rapid-button>\n </div>\n `,\n )}\n ${when(\n (x) => x.inline && x.usesAutoSubmit(),\n html`\n <div class=\"inbox-subscription-footer auto-submit\">\n <rapid-button class=\"cancel\" appearance=\"neutral\" @click=${(x) => x.cancelSubscribe()}>\n Cancel\n </rapid-button>\n </div>\n `,\n )}\n </div>\n`"
6079
6205
  }
6080
6206
  ],
6081
6207
  "exports": [
6082
6208
  {
6083
6209
  "kind": "js",
6084
- "name": "FoundationInboxCounterTemplate",
6210
+ "name": "InboxSubscriptionTemplate",
6085
6211
  "declaration": {
6086
- "name": "FoundationInboxCounterTemplate",
6087
- "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.template.ts"
6212
+ "name": "InboxSubscriptionTemplate",
6213
+ "module": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.template.ts"
6088
6214
  }
6089
6215
  }
6090
6216
  ]
6091
6217
  },
6092
6218
  {
6093
6219
  "kind": "javascript-module",
6094
- "path": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.ts",
6220
+ "path": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.ts",
6095
6221
  "declarations": [
6096
6222
  {
6097
6223
  "kind": "class",
6098
- "description": "",
6099
- "name": "FoundationInboxCounter",
6224
+ "description": "Inbox subscription configuration UI.",
6225
+ "name": "InboxSubscription",
6100
6226
  "members": [
6101
6227
  {
6102
6228
  "kind": "field",
6103
- "name": "value",
6229
+ "name": "template"
6230
+ },
6231
+ {
6232
+ "kind": "field",
6233
+ "name": "inline",
6104
6234
  "type": {
6105
- "text": "number"
6235
+ "text": "boolean"
6106
6236
  },
6107
- "default": "0"
6237
+ "default": "false"
6108
6238
  },
6109
6239
  {
6110
6240
  "kind": "field",
6111
- "name": "connect",
6241
+ "name": "parametersDetails",
6112
6242
  "type": {
6113
- "text": "Connect"
6114
- }
6243
+ "text": "object"
6244
+ },
6245
+ "privacy": "private",
6246
+ "default": "{}"
6115
6247
  },
6116
6248
  {
6117
6249
  "kind": "field",
6118
- "name": "inboxService",
6250
+ "name": "isSubmitting",
6119
6251
  "type": {
6120
- "text": "FoundationInboxService"
6121
- }
6252
+ "text": "boolean"
6253
+ },
6254
+ "privacy": "private",
6255
+ "default": "false"
6122
6256
  },
6123
6257
  {
6124
6258
  "kind": "field",
6125
- "name": "connectionSub",
6259
+ "name": "parametersOperators",
6126
6260
  "type": {
6127
- "text": "Subscription"
6261
+ "text": "object"
6128
6262
  },
6129
- "privacy": "private"
6263
+ "default": "{}"
6264
+ },
6265
+ {
6266
+ "kind": "field",
6267
+ "name": "subscribeDisabled",
6268
+ "type": {
6269
+ "text": "boolean"
6270
+ },
6271
+ "default": "true"
6272
+ },
6273
+ {
6274
+ "kind": "field",
6275
+ "name": "ruleService",
6276
+ "type": {
6277
+ "text": "RuleService"
6278
+ }
6130
6279
  },
6131
6280
  {
6132
6281
  "kind": "method",
6133
- "name": "subscribeToAlerts",
6134
- "privacy": "private",
6282
+ "name": "templateChanged"
6283
+ },
6284
+ {
6285
+ "kind": "method",
6286
+ "name": "usesAutoSubmit",
6135
6287
  "return": {
6136
6288
  "type": {
6137
- "text": "Promise<void>"
6289
+ "text": "boolean"
6138
6290
  }
6139
- },
6140
- "description": "Subscribes to alerts from the inbox service"
6141
- },
6142
- {
6143
- "kind": "field",
6144
- "name": "subscriptionHandler",
6145
- "privacy": "private",
6146
- "description": "Handles subscription updates from the inbox service"
6147
- }
6148
- ],
6149
- "superclass": {
6150
- "name": "GenesisElement",
6151
- "package": "@genesislcap/web-core"
6152
- },
6153
- "tagName": "foundation-inbox-counter",
6154
- "customElement": true
6155
- }
6156
- ],
6157
- "exports": [
6158
- {
6159
- "kind": "js",
6160
- "name": "FoundationInboxCounter",
6161
- "declaration": {
6162
- "name": "FoundationInboxCounter",
6163
- "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.ts"
6164
- }
6165
- },
6166
- {
6167
- "kind": "custom-element-definition",
6168
- "name": "foundation-inbox-counter",
6169
- "declaration": {
6170
- "name": "FoundationInboxCounter",
6171
- "module": "src/components/foundation-inbox/components/foundation-inbox-counter/foundation-inbox-counter.ts"
6172
- }
6173
- }
6174
- ]
6175
- },
6176
- {
6177
- "kind": "javascript-module",
6178
- "path": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.styles.ts",
6179
- "declarations": [
6180
- {
6181
- "kind": "variable",
6182
- "name": "InboxSubscriptionStyles",
6183
- "default": "css`\n .inbox-subscription {\n display: flex;\n flex-direction: column;\n }\n\n .inbox-subscription.inline {\n margin-top: calc(var(--design-unit) * 2px);\n padding-top: calc(var(--design-unit) * 2px);\n border-top: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n }\n\n .inbox-subscription-header {\n border-top: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n border-bottom: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n padding: calc(var(--design-unit) * 2px);\n }\n\n .inbox-subscription-empty {\n padding: 0 calc(var(--design-unit) * 2px);\n margin: calc(var(--design-unit) * 2px) 0 0;\n }\n\n .inbox-subscription-content {\n display: flex;\n flex-direction: column;\n gap: calc(var(--design-unit) * 3px);\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n margin: calc(var(--design-unit) * 2px);\n padding: calc(var(--design-unit) * 2px);\n border-radius: calc(var(--control-corner-radius) * 1px);\n }\n\n .inbox-subscription:not(.inline) .inbox-subscription-content {\n overflow: auto;\n max-height: calc(var(--design-unit) * 80px);\n }\n\n .inbox-subscription.inline .inbox-subscription-content {\n margin: calc(var(--design-unit) * 2px) 0 0;\n overflow: visible;\n max-height: none;\n padding-bottom: calc(var(--design-unit) * 4px);\n }\n\n .inbox-subscription.inline .control:focus-within {\n position: relative;\n z-index: 2;\n }\n\n .inbox-subscription-footer {\n display: flex;\n gap: calc(var(--design-unit) * 2px);\n padding: calc(var(--design-unit) * 2px) 0 0;\n border-top: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-divider-rest);\n margin-top: calc(var(--design-unit) * 2px);\n }\n\n .inbox-subscription:not(.inline) .inbox-subscription-footer {\n padding: calc(var(--design-unit) * 2px);\n margin-top: 0;\n }\n\n .inbox-subscription-footer.auto-submit {\n justify-content: flex-end;\n border-top: none;\n margin-top: 0;\n padding-top: 0;\n }\n\n rapid-button.subscribe,\n rapid-button.cancel {\n display: flex;\n margin: 0;\n flex: 1;\n }\n`"
6184
- }
6185
- ],
6186
- "exports": [
6187
- {
6188
- "kind": "js",
6189
- "name": "InboxSubscriptionStyles",
6190
- "declaration": {
6191
- "name": "InboxSubscriptionStyles",
6192
- "module": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.styles.ts"
6193
- }
6194
- }
6195
- ]
6196
- },
6197
- {
6198
- "kind": "javascript-module",
6199
- "path": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.template.ts",
6200
- "declarations": [
6201
- {
6202
- "kind": "variable",
6203
- "name": "InboxSubscriptionTemplate",
6204
- "default": "html<InboxSubscription>`\n <div class=\"inbox-subscription ${(x) => (x.inline ? 'inline' : '')}\">\n ${when(\n (x) => !x.inline,\n html`\n <div class=\"inbox-subscription-header\">\n Subscribe to\n <span style=\"font-weight: bold;\">${(x) => x.template.RULE_NAME}</span>\n </div>\n `,\n )}\n ${when(\n (x) => Object.values(x.template?.PARAMETERS ?? {}).length === 0,\n html`\n <p class=\"inbox-subscription-empty\">The selected template doesn't have parameters.</p>\n `,\n )}\n ${when(\n (x) => Object.values(x.template?.PARAMETERS ?? {}).length > 0,\n html`\n <div class=\"inbox-subscription-content\">\n ${repeat(\n // @ts-ignore\n (x) => Object.values(x.template?.PARAMETERS ?? {}),\n html<RuleParameterEntity>`\n <rule-parameter\n :parameter=${(x) => x}\n :isFirstElement=${(x, c) => c.parent.isFirstElement(x)}\n :operator=${(x, c) => c.parent.parametersOperators[x.PARAM_NAME]}\n :requireSelection=${(x, c) => c.parent.usesAutoSubmit()}\n @parameterEdited=${(x, c) => c.parent.parameterEdit(eventDetail(c))}\n ></rule-parameter>\n `,\n )}\n </div>\n `,\n )}\n ${when(\n (x) => !x.inline || x.requiresManualSubscribe(),\n html`\n <div class=\"inbox-subscription-footer\">\n ${when(\n (x) => x.inline,\n html`\n <rapid-button\n class=\"cancel\"\n appearance=\"neutral\"\n @click=${(x) => x.cancelSubscribe()}\n >\n Cancel\n </rapid-button>\n `,\n )}\n <rapid-button\n class=\"subscribe\"\n appearance=\"primary\"\n @click=${(x) => x.subscribeTemplate()}\n ?disabled=${(x) => x.subscribeDisabled}\n >\n Subscribe\n </rapid-button>\n </div>\n `,\n )}\n ${when(\n (x) => x.inline && x.usesAutoSubmit(),\n html`\n <div class=\"inbox-subscription-footer auto-submit\">\n <rapid-button class=\"cancel\" appearance=\"neutral\" @click=${(x) => x.cancelSubscribe()}>\n Cancel\n </rapid-button>\n </div>\n `,\n )}\n </div>\n`"
6205
- }
6206
- ],
6207
- "exports": [
6208
- {
6209
- "kind": "js",
6210
- "name": "InboxSubscriptionTemplate",
6211
- "declaration": {
6212
- "name": "InboxSubscriptionTemplate",
6213
- "module": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.template.ts"
6214
- }
6215
- }
6216
- ]
6217
- },
6218
- {
6219
- "kind": "javascript-module",
6220
- "path": "src/components/foundation-inbox/components/inbox-subscription/inbox-subscription.ts",
6221
- "declarations": [
6222
- {
6223
- "kind": "class",
6224
- "description": "Inbox subscription configuration UI.",
6225
- "name": "InboxSubscription",
6226
- "members": [
6227
- {
6228
- "kind": "field",
6229
- "name": "template"
6230
- },
6231
- {
6232
- "kind": "field",
6233
- "name": "inline",
6234
- "type": {
6235
- "text": "boolean"
6236
- },
6237
- "default": "false"
6238
- },
6239
- {
6240
- "kind": "field",
6241
- "name": "parametersDetails",
6242
- "type": {
6243
- "text": "object"
6244
- },
6245
- "privacy": "private",
6246
- "default": "{}"
6247
- },
6248
- {
6249
- "kind": "field",
6250
- "name": "isSubmitting",
6251
- "type": {
6252
- "text": "boolean"
6253
- },
6254
- "privacy": "private",
6255
- "default": "false"
6256
- },
6257
- {
6258
- "kind": "field",
6259
- "name": "parametersOperators",
6260
- "type": {
6261
- "text": "object"
6262
- },
6263
- "default": "{}"
6264
- },
6265
- {
6266
- "kind": "field",
6267
- "name": "subscribeDisabled",
6268
- "type": {
6269
- "text": "boolean"
6270
- },
6271
- "default": "true"
6272
- },
6273
- {
6274
- "kind": "field",
6275
- "name": "ruleService",
6276
- "type": {
6277
- "text": "RuleService"
6278
- }
6279
- },
6280
- {
6281
- "kind": "method",
6282
- "name": "templateChanged"
6283
- },
6284
- {
6285
- "kind": "method",
6286
- "name": "usesAutoSubmit",
6287
- "return": {
6288
- "type": {
6289
- "text": "boolean"
6290
- }
6291
- }
6291
+ }
6292
6292
  },
6293
6293
  {
6294
6294
  "kind": "method",
@@ -8772,506 +8772,506 @@
8772
8772
  },
8773
8773
  {
8774
8774
  "kind": "javascript-module",
8775
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts",
8775
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts",
8776
8776
  "declarations": [
8777
8777
  {
8778
8778
  "kind": "variable",
8779
- "name": "TemplateConditionBuilderTemplate",
8780
- "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`"
8779
+ "name": "ParameterBuilderStyles",
8780
+ "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`"
8781
8781
  }
8782
8782
  ],
8783
8783
  "exports": [
8784
8784
  {
8785
8785
  "kind": "js",
8786
- "name": "TemplateConditionBuilderTemplate",
8786
+ "name": "ParameterBuilderStyles",
8787
8787
  "declaration": {
8788
- "name": "TemplateConditionBuilderTemplate",
8789
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts"
8788
+ "name": "ParameterBuilderStyles",
8789
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts"
8790
8790
  }
8791
8791
  }
8792
8792
  ]
8793
8793
  },
8794
8794
  {
8795
8795
  "kind": "javascript-module",
8796
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts",
8796
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts",
8797
+ "declarations": [
8798
+ {
8799
+ "kind": "variable",
8800
+ "name": "ParameterBuilderTemplate",
8801
+ "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`"
8802
+ }
8803
+ ],
8804
+ "exports": [
8805
+ {
8806
+ "kind": "js",
8807
+ "name": "ParameterBuilderTemplate",
8808
+ "declaration": {
8809
+ "name": "ParameterBuilderTemplate",
8810
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts"
8811
+ }
8812
+ }
8813
+ ]
8814
+ },
8815
+ {
8816
+ "kind": "javascript-module",
8817
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts",
8797
8818
  "declarations": [
8798
8819
  {
8799
8820
  "kind": "class",
8800
- "description": "Condition builder for template notification rules.",
8801
- "name": "TemplateConditionBuilder",
8821
+ "description": "Parameter builder for notification templates.",
8822
+ "name": "ParameterBuilder",
8802
8823
  "members": [
8803
8824
  {
8804
8825
  "kind": "field",
8805
- "name": "condition",
8826
+ "name": "parameter",
8806
8827
  "type": {
8807
- "text": "ConditionBuilderEntity"
8828
+ "text": "ParameterBuilderEntity"
8808
8829
  }
8809
8830
  },
8810
8831
  {
8811
8832
  "kind": "field",
8812
- "name": "parameters",
8813
- "type": {
8814
- "text": "Array<ParameterBuilderEntity>"
8815
- },
8816
- "default": "[]"
8817
- },
8818
- {
8819
- "kind": "field",
8820
- "name": "fields",
8833
+ "name": "name",
8821
8834
  "type": {
8822
- "text": "Array<string>"
8823
- },
8824
- "default": "[]"
8835
+ "text": "string"
8836
+ }
8825
8837
  },
8826
8838
  {
8827
8839
  "kind": "field",
8828
- "name": "isFirst",
8840
+ "name": "label",
8829
8841
  "type": {
8830
- "text": "boolean"
8831
- },
8832
- "default": "false"
8842
+ "text": "string"
8843
+ }
8833
8844
  },
8834
8845
  {
8835
8846
  "kind": "field",
8836
- "name": "joinOperator",
8847
+ "name": "type",
8837
8848
  "type": {
8838
8849
  "text": "string"
8839
8850
  }
8840
8851
  },
8841
8852
  {
8842
8853
  "kind": "field",
8843
- "name": "leftValue",
8854
+ "name": "sourceType",
8844
8855
  "type": {
8845
- "text": "any"
8846
- },
8847
- "default": "null"
8856
+ "text": "string"
8857
+ }
8848
8858
  },
8849
8859
  {
8850
8860
  "kind": "field",
8851
- "name": "leftValueItems",
8861
+ "name": "sourceSelected",
8852
8862
  "type": {
8853
- "text": "Array<any>"
8854
- },
8855
- "default": "[]"
8863
+ "text": "string"
8864
+ }
8856
8865
  },
8857
8866
  {
8858
8867
  "kind": "field",
8859
- "name": "logicalOperator",
8868
+ "name": "sourceTyped",
8860
8869
  "type": {
8861
8870
  "text": "string"
8862
- },
8863
- "default": "null"
8871
+ }
8864
8872
  },
8865
8873
  {
8866
8874
  "kind": "field",
8867
- "name": "rightCriteria",
8875
+ "name": "sourceTextField",
8868
8876
  "type": {
8869
- "text": "string"
8877
+ "text": "TextField"
8870
8878
  }
8871
8879
  },
8872
8880
  {
8873
8881
  "kind": "field",
8874
- "name": "rightValueText",
8882
+ "name": "sourceSelect",
8875
8883
  "type": {
8876
- "text": "string"
8877
- },
8878
- "default": "null"
8884
+ "text": "Select"
8885
+ }
8879
8886
  },
8880
8887
  {
8881
8888
  "kind": "field",
8882
- "name": "rightValueSelect",
8889
+ "name": "reqRepItems",
8883
8890
  "type": {
8884
- "text": "string"
8891
+ "text": "array"
8885
8892
  },
8886
- "default": "null"
8893
+ "default": "['REQUEST_1', 'REQUEST_2', 'REQUEST_3']"
8887
8894
  },
8888
8895
  {
8889
- "kind": "field",
8890
- "name": "rightValueItems",
8891
- "type": {
8892
- "text": "Array<any>"
8893
- },
8894
- "default": "[]"
8895
- },
8896
- {
8897
- "kind": "field",
8898
- "name": "rightValueMultiSelect",
8899
- "type": {
8900
- "text": "string[]"
8901
- },
8902
- "default": "[]"
8903
- },
8904
- {
8905
- "kind": "method",
8906
- "name": "deleteCondition"
8907
- },
8908
- {
8909
- "kind": "method",
8910
- "name": "conditionChanged"
8911
- },
8912
- {
8913
- "kind": "method",
8914
- "name": "joinOperatorChanged"
8915
- },
8916
- {
8917
- "kind": "method",
8918
- "name": "parametersChanged"
8919
- },
8920
- {
8921
- "kind": "method",
8922
- "name": "getMatchingParameter",
8923
- "privacy": "private",
8924
- "return": {
8925
- "type": {
8926
- "text": "ParameterBuilderEntity | undefined"
8927
- }
8928
- }
8929
- },
8930
- {
8931
- "kind": "method",
8932
- "name": "syncParameterBinding",
8933
- "privacy": "private",
8934
- "return": {
8935
- "type": {
8936
- "text": "boolean"
8937
- }
8938
- }
8939
- },
8940
- {
8941
- "kind": "method",
8942
- "name": "resetToValueEditor",
8943
- "privacy": "private"
8896
+ "kind": "method",
8897
+ "name": "deleteParameter"
8944
8898
  },
8945
8899
  {
8946
8900
  "kind": "method",
8947
- "name": "fieldsChanged"
8948
- },
8949
- {
8950
- "kind": "method",
8951
- "name": "logicalOperatorChanged"
8952
- },
8953
- {
8954
- "kind": "method",
8955
- "name": "assignLeftValue",
8956
- "privacy": "private"
8957
- },
8958
- {
8959
- "kind": "method",
8960
- "name": "leftValueChanged"
8961
- },
8962
- {
8963
- "kind": "method",
8964
- "name": "assignRightValue",
8965
- "privacy": "private"
8901
+ "name": "parameterChanged"
8966
8902
  },
8967
8903
  {
8968
8904
  "kind": "method",
8969
- "name": "rightCriteriaChanged"
8905
+ "name": "nameChanged"
8970
8906
  },
8971
8907
  {
8972
8908
  "kind": "method",
8973
- "name": "clearRightValueText",
8974
- "privacy": "private"
8909
+ "name": "labelChanged"
8975
8910
  },
8976
8911
  {
8977
8912
  "kind": "method",
8978
- "name": "clearRightValueSelect",
8979
- "privacy": "private"
8913
+ "name": "typeChanged"
8980
8914
  },
8981
8915
  {
8982
8916
  "kind": "method",
8983
- "name": "rightValueTextChanged"
8917
+ "name": "sourceTypeChanged"
8984
8918
  },
8985
8919
  {
8986
8920
  "kind": "method",
8987
- "name": "rightValueSelectChanged"
8921
+ "name": "sourceSelectedChanged"
8988
8922
  },
8989
8923
  {
8990
8924
  "kind": "method",
8991
- "name": "rightValueMultiSelectChanged"
8925
+ "name": "sourceTypedChanged"
8992
8926
  },
8993
8927
  {
8994
8928
  "kind": "method",
8995
- "name": "getEnumValues",
8996
- "return": {
8997
- "type": {
8998
- "text": "string[]"
8929
+ "name": "genericChanged",
8930
+ "privacy": "private",
8931
+ "parameters": [
8932
+ {
8933
+ "name": "parameterAttribute"
8934
+ },
8935
+ {
8936
+ "name": "value"
8999
8937
  }
9000
- }
8938
+ ]
9001
8939
  }
9002
8940
  ],
9003
8941
  "events": [
9004
8942
  {
9005
- "description": "Fired when a condition is deleted. detail: `ConditionBuilderEntity`",
8943
+ "description": "Fired when a parameter is deleted. detail: `ParameterBuilderEntity`",
9006
8944
  "name": "delete"
9007
8945
  },
9008
8946
  {
9009
- "description": "Fired when a condition is edited. detail: `ConditionBuilderEntity`",
8947
+ "description": "Fired when a parameter is edited. detail: `ParameterBuilderEntity`",
9010
8948
  "name": "edit"
9011
8949
  }
9012
8950
  ],
9013
8951
  "attributes": [
9014
8952
  {
9015
- "name": "condition",
9016
- "type": {
9017
- "text": "ConditionBuilderEntity"
9018
- },
9019
- "fieldName": "condition"
9020
- },
9021
- {
9022
- "name": "parameters",
9023
- "type": {
9024
- "text": "Array<ParameterBuilderEntity>"
9025
- },
9026
- "default": "[]",
9027
- "fieldName": "parameters"
9028
- },
9029
- {
9030
- "name": "fields",
8953
+ "name": "parameter",
9031
8954
  "type": {
9032
- "text": "Array<string>"
8955
+ "text": "ParameterBuilderEntity"
9033
8956
  },
9034
- "default": "[]",
9035
- "fieldName": "fields"
8957
+ "fieldName": "parameter"
9036
8958
  }
9037
8959
  ],
9038
8960
  "superclass": {
9039
8961
  "name": "GenesisElement",
9040
8962
  "package": "@genesislcap/web-core"
9041
8963
  },
9042
- "tagName": "template-condition-builder",
8964
+ "tagName": "parameter-builder",
9043
8965
  "customElement": true
9044
8966
  }
9045
8967
  ],
9046
8968
  "exports": [
9047
8969
  {
9048
8970
  "kind": "js",
9049
- "name": "TemplateConditionBuilder",
8971
+ "name": "ParameterBuilder",
9050
8972
  "declaration": {
9051
- "name": "TemplateConditionBuilder",
9052
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
8973
+ "name": "ParameterBuilder",
8974
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9053
8975
  }
9054
8976
  },
9055
8977
  {
9056
8978
  "kind": "custom-element-definition",
9057
- "name": "template-condition-builder",
9058
- "declaration": {
9059
- "name": "TemplateConditionBuilder",
9060
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
9061
- }
9062
- }
9063
- ]
9064
- },
9065
- {
9066
- "kind": "javascript-module",
9067
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts",
9068
- "declarations": [
9069
- {
9070
- "kind": "variable",
9071
- "name": "ParameterBuilderStyles",
9072
- "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`"
9073
- }
9074
- ],
9075
- "exports": [
9076
- {
9077
- "kind": "js",
9078
- "name": "ParameterBuilderStyles",
8979
+ "name": "parameter-builder",
9079
8980
  "declaration": {
9080
- "name": "ParameterBuilderStyles",
9081
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.styles.ts"
8981
+ "name": "ParameterBuilder",
8982
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9082
8983
  }
9083
8984
  }
9084
8985
  ]
9085
8986
  },
9086
8987
  {
9087
8988
  "kind": "javascript-module",
9088
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts",
8989
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts",
9089
8990
  "declarations": [
9090
8991
  {
9091
8992
  "kind": "variable",
9092
- "name": "ParameterBuilderTemplate",
9093
- "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`"
8993
+ "name": "TemplateConditionBuilderTemplate",
8994
+ "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`"
9094
8995
  }
9095
8996
  ],
9096
8997
  "exports": [
9097
8998
  {
9098
8999
  "kind": "js",
9099
- "name": "ParameterBuilderTemplate",
9000
+ "name": "TemplateConditionBuilderTemplate",
9100
9001
  "declaration": {
9101
- "name": "ParameterBuilderTemplate",
9102
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.template.ts"
9002
+ "name": "TemplateConditionBuilderTemplate",
9003
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.template.ts"
9103
9004
  }
9104
9005
  }
9105
9006
  ]
9106
9007
  },
9107
9008
  {
9108
9009
  "kind": "javascript-module",
9109
- "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts",
9010
+ "path": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts",
9110
9011
  "declarations": [
9111
9012
  {
9112
9013
  "kind": "class",
9113
- "description": "Parameter builder for notification templates.",
9114
- "name": "ParameterBuilder",
9014
+ "description": "Condition builder for template notification rules.",
9015
+ "name": "TemplateConditionBuilder",
9115
9016
  "members": [
9116
9017
  {
9117
9018
  "kind": "field",
9118
- "name": "parameter",
9019
+ "name": "condition",
9119
9020
  "type": {
9120
- "text": "ParameterBuilderEntity"
9021
+ "text": "ConditionBuilderEntity"
9121
9022
  }
9122
9023
  },
9123
9024
  {
9124
9025
  "kind": "field",
9125
- "name": "name",
9026
+ "name": "parameters",
9126
9027
  "type": {
9127
- "text": "string"
9128
- }
9028
+ "text": "Array<ParameterBuilderEntity>"
9029
+ },
9030
+ "default": "[]"
9129
9031
  },
9130
9032
  {
9131
9033
  "kind": "field",
9132
- "name": "label",
9034
+ "name": "fields",
9133
9035
  "type": {
9134
- "text": "string"
9135
- }
9036
+ "text": "Array<string>"
9037
+ },
9038
+ "default": "[]"
9136
9039
  },
9137
9040
  {
9138
9041
  "kind": "field",
9139
- "name": "type",
9042
+ "name": "isFirst",
9043
+ "type": {
9044
+ "text": "boolean"
9045
+ },
9046
+ "default": "false"
9047
+ },
9048
+ {
9049
+ "kind": "field",
9050
+ "name": "joinOperator",
9140
9051
  "type": {
9141
9052
  "text": "string"
9142
9053
  }
9143
9054
  },
9144
9055
  {
9145
9056
  "kind": "field",
9146
- "name": "sourceType",
9057
+ "name": "leftValue",
9058
+ "type": {
9059
+ "text": "any"
9060
+ },
9061
+ "default": "null"
9062
+ },
9063
+ {
9064
+ "kind": "field",
9065
+ "name": "leftValueItems",
9066
+ "type": {
9067
+ "text": "Array<any>"
9068
+ },
9069
+ "default": "[]"
9070
+ },
9071
+ {
9072
+ "kind": "field",
9073
+ "name": "logicalOperator",
9147
9074
  "type": {
9148
9075
  "text": "string"
9149
- }
9076
+ },
9077
+ "default": "null"
9150
9078
  },
9151
9079
  {
9152
9080
  "kind": "field",
9153
- "name": "sourceSelected",
9081
+ "name": "rightCriteria",
9154
9082
  "type": {
9155
9083
  "text": "string"
9156
9084
  }
9157
9085
  },
9158
9086
  {
9159
9087
  "kind": "field",
9160
- "name": "sourceTyped",
9088
+ "name": "rightValueText",
9161
9089
  "type": {
9162
9090
  "text": "string"
9163
- }
9091
+ },
9092
+ "default": "null"
9164
9093
  },
9165
9094
  {
9166
9095
  "kind": "field",
9167
- "name": "sourceTextField",
9096
+ "name": "rightValueSelect",
9168
9097
  "type": {
9169
- "text": "TextField"
9170
- }
9098
+ "text": "string"
9099
+ },
9100
+ "default": "null"
9171
9101
  },
9172
9102
  {
9173
9103
  "kind": "field",
9174
- "name": "sourceSelect",
9104
+ "name": "rightValueItems",
9175
9105
  "type": {
9176
- "text": "Select"
9177
- }
9106
+ "text": "Array<any>"
9107
+ },
9108
+ "default": "[]"
9178
9109
  },
9179
9110
  {
9180
9111
  "kind": "field",
9181
- "name": "reqRepItems",
9112
+ "name": "rightValueMultiSelect",
9182
9113
  "type": {
9183
- "text": "array"
9114
+ "text": "string[]"
9184
9115
  },
9185
- "default": "['REQUEST_1', 'REQUEST_2', 'REQUEST_3']"
9116
+ "default": "[]"
9186
9117
  },
9187
9118
  {
9188
9119
  "kind": "method",
9189
- "name": "deleteParameter"
9120
+ "name": "deleteCondition"
9190
9121
  },
9191
9122
  {
9192
9123
  "kind": "method",
9193
- "name": "parameterChanged"
9124
+ "name": "conditionChanged"
9194
9125
  },
9195
9126
  {
9196
9127
  "kind": "method",
9197
- "name": "nameChanged"
9128
+ "name": "joinOperatorChanged"
9198
9129
  },
9199
9130
  {
9200
9131
  "kind": "method",
9201
- "name": "labelChanged"
9132
+ "name": "parametersChanged"
9202
9133
  },
9203
9134
  {
9204
9135
  "kind": "method",
9205
- "name": "typeChanged"
9136
+ "name": "getMatchingParameter",
9137
+ "privacy": "private",
9138
+ "return": {
9139
+ "type": {
9140
+ "text": "ParameterBuilderEntity | undefined"
9141
+ }
9142
+ }
9206
9143
  },
9207
9144
  {
9208
9145
  "kind": "method",
9209
- "name": "sourceTypeChanged"
9146
+ "name": "syncParameterBinding",
9147
+ "privacy": "private",
9148
+ "return": {
9149
+ "type": {
9150
+ "text": "boolean"
9151
+ }
9152
+ }
9210
9153
  },
9211
9154
  {
9212
9155
  "kind": "method",
9213
- "name": "sourceSelectedChanged"
9156
+ "name": "resetToValueEditor",
9157
+ "privacy": "private"
9214
9158
  },
9215
9159
  {
9216
9160
  "kind": "method",
9217
- "name": "sourceTypedChanged"
9161
+ "name": "fieldsChanged"
9218
9162
  },
9219
9163
  {
9220
9164
  "kind": "method",
9221
- "name": "genericChanged",
9222
- "privacy": "private",
9223
- "parameters": [
9224
- {
9225
- "name": "parameterAttribute"
9226
- },
9227
- {
9228
- "name": "value"
9165
+ "name": "logicalOperatorChanged"
9166
+ },
9167
+ {
9168
+ "kind": "method",
9169
+ "name": "assignLeftValue",
9170
+ "privacy": "private"
9171
+ },
9172
+ {
9173
+ "kind": "method",
9174
+ "name": "leftValueChanged"
9175
+ },
9176
+ {
9177
+ "kind": "method",
9178
+ "name": "assignRightValue",
9179
+ "privacy": "private"
9180
+ },
9181
+ {
9182
+ "kind": "method",
9183
+ "name": "rightCriteriaChanged"
9184
+ },
9185
+ {
9186
+ "kind": "method",
9187
+ "name": "clearRightValueText",
9188
+ "privacy": "private"
9189
+ },
9190
+ {
9191
+ "kind": "method",
9192
+ "name": "clearRightValueSelect",
9193
+ "privacy": "private"
9194
+ },
9195
+ {
9196
+ "kind": "method",
9197
+ "name": "rightValueTextChanged"
9198
+ },
9199
+ {
9200
+ "kind": "method",
9201
+ "name": "rightValueSelectChanged"
9202
+ },
9203
+ {
9204
+ "kind": "method",
9205
+ "name": "rightValueMultiSelectChanged"
9206
+ },
9207
+ {
9208
+ "kind": "method",
9209
+ "name": "getEnumValues",
9210
+ "return": {
9211
+ "type": {
9212
+ "text": "string[]"
9229
9213
  }
9230
- ]
9214
+ }
9231
9215
  }
9232
9216
  ],
9233
9217
  "events": [
9234
9218
  {
9235
- "description": "Fired when a parameter is deleted. detail: `ParameterBuilderEntity`",
9219
+ "description": "Fired when a condition is deleted. detail: `ConditionBuilderEntity`",
9236
9220
  "name": "delete"
9237
9221
  },
9238
9222
  {
9239
- "description": "Fired when a parameter is edited. detail: `ParameterBuilderEntity`",
9223
+ "description": "Fired when a condition is edited. detail: `ConditionBuilderEntity`",
9240
9224
  "name": "edit"
9241
9225
  }
9242
9226
  ],
9243
9227
  "attributes": [
9244
9228
  {
9245
- "name": "parameter",
9229
+ "name": "condition",
9246
9230
  "type": {
9247
- "text": "ParameterBuilderEntity"
9231
+ "text": "ConditionBuilderEntity"
9248
9232
  },
9249
- "fieldName": "parameter"
9233
+ "fieldName": "condition"
9234
+ },
9235
+ {
9236
+ "name": "parameters",
9237
+ "type": {
9238
+ "text": "Array<ParameterBuilderEntity>"
9239
+ },
9240
+ "default": "[]",
9241
+ "fieldName": "parameters"
9242
+ },
9243
+ {
9244
+ "name": "fields",
9245
+ "type": {
9246
+ "text": "Array<string>"
9247
+ },
9248
+ "default": "[]",
9249
+ "fieldName": "fields"
9250
9250
  }
9251
9251
  ],
9252
9252
  "superclass": {
9253
9253
  "name": "GenesisElement",
9254
9254
  "package": "@genesislcap/web-core"
9255
9255
  },
9256
- "tagName": "parameter-builder",
9256
+ "tagName": "template-condition-builder",
9257
9257
  "customElement": true
9258
9258
  }
9259
9259
  ],
9260
9260
  "exports": [
9261
9261
  {
9262
9262
  "kind": "js",
9263
- "name": "ParameterBuilder",
9263
+ "name": "TemplateConditionBuilder",
9264
9264
  "declaration": {
9265
- "name": "ParameterBuilder",
9266
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9265
+ "name": "TemplateConditionBuilder",
9266
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
9267
9267
  }
9268
9268
  },
9269
9269
  {
9270
9270
  "kind": "custom-element-definition",
9271
- "name": "parameter-builder",
9271
+ "name": "template-condition-builder",
9272
9272
  "declaration": {
9273
- "name": "ParameterBuilder",
9274
- "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/parameter-builder/parameter-builder.ts"
9273
+ "name": "TemplateConditionBuilder",
9274
+ "module": "src/components/foundation-notification-dashboard/components/templates/template-dialog/template-condition-builder/template-condition-builder.ts"
9275
9275
  }
9276
9276
  }
9277
9277
  ]