@integry/sdk 4.5.2 → 4.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/.vscode/launch.json +2 -2
  2. package/THIRD_PARTY_LICENSES +0 -37
  3. package/dist/esm/index.csm.d.ts +12 -2
  4. package/dist/esm/index.csm.js +7262 -1
  5. package/dist/umd/index.umd.d.ts +9 -1
  6. package/dist/umd/index.umd.js +7262 -1
  7. package/jest.config.cjs +10 -0
  8. package/package.json +10 -4
  9. package/src/components/AddTagButton/index.ts +23 -0
  10. package/src/components/BasicSelect/index.ts +114 -0
  11. package/src/components/BasicSelect/styles.module.scss +44 -0
  12. package/src/components/Button/index.ts +94 -0
  13. package/src/components/Button/styles.module.scss +152 -0
  14. package/src/components/CheckboxGroup/Checkbox.ts +104 -0
  15. package/src/components/CheckboxGroup/index.ts +190 -0
  16. package/src/components/CheckboxGroup/styles.module.scss +63 -0
  17. package/src/components/CollapsedMenu/index.ts +101 -0
  18. package/src/components/CollapsedMenu/styles.module.scss +46 -0
  19. package/src/components/ConfigureFieldWrapper/index.ts +85 -0
  20. package/src/components/ConfigureFieldWrapper/styles.module.scss +57 -0
  21. package/src/components/EditableText/index.ts +121 -0
  22. package/src/components/EditableText/styles.module.scss +38 -0
  23. package/src/components/EditableTextArea/index.ts +143 -0
  24. package/src/components/EditableTextArea/styles.module.scss +91 -0
  25. package/src/components/ErrorMessage/index.ts +16 -0
  26. package/src/components/ErrorMessage/styles.module.scss +19 -0
  27. package/src/components/ErrorPage/index.ts +42 -0
  28. package/src/components/ErrorPage/styles.module.scss +26 -0
  29. package/src/components/Footer/index.ts +41 -0
  30. package/src/components/Footer/styles.module.scss +40 -0
  31. package/src/components/HTMLContent/index.tsx +275 -0
  32. package/src/components/HTMLContent/styles.module.scss +3 -0
  33. package/src/components/InfoBox/index.ts +48 -0
  34. package/src/components/InfoBox/styles.module.scss +21 -0
  35. package/src/components/Input/BaseInput/index.ts +170 -0
  36. package/src/components/Input/BaseInput/styles.module.scss +94 -0
  37. package/src/components/Input/DateInput/index.ts +103 -0
  38. package/src/components/Input/DateInput/styles.module.scss +50 -0
  39. package/src/components/Input/Input/index.ts +206 -0
  40. package/src/components/Input/Input/styles.module.scss +14 -0
  41. package/src/components/Input/PasswordInput/index.ts +164 -0
  42. package/src/components/Input/PasswordInput/styles.module.scss +37 -0
  43. package/src/components/Input/index.ts +7 -0
  44. package/src/components/Label/index.ts +61 -0
  45. package/src/components/Label/styles.module.scss +41 -0
  46. package/src/components/LargeLoader/index.ts +25 -0
  47. package/src/components/LargeLoader/styles.module.scss +16 -0
  48. package/src/components/Listbox/ListBoxItem.ts +57 -0
  49. package/src/components/Listbox/index.ts +479 -0
  50. package/src/components/Listbox/styles.module.scss +197 -0
  51. package/src/components/Loader/index.ts +25 -0
  52. package/src/components/Loader/styles.module.scss +16 -0
  53. package/src/components/MediaGallery/MediaGalleryModal.ts +82 -0
  54. package/src/components/MediaGallery/MediaSlider.ts +76 -0
  55. package/src/components/MediaGallery/index.ts +92 -0
  56. package/src/components/MediaGallery/styles.module.scss +156 -0
  57. package/src/components/MediaUpload/index.ts +233 -0
  58. package/src/components/MediaUpload/styles.module.scss +118 -0
  59. package/src/components/Modal/index.ts +87 -0
  60. package/src/components/Modal/styles.module.scss +441 -0
  61. package/src/components/MultipurposeField/Dropdown/ListBoxItem.tsx +58 -0
  62. package/src/components/MultipurposeField/Dropdown/index.tsx +981 -0
  63. package/src/components/MultipurposeField/Dropdown/styles.module.scss +208 -0
  64. package/src/components/MultipurposeField/TagMenu/index.ts +384 -0
  65. package/src/components/MultipurposeField/TagMenu/styles.module.scss +136 -0
  66. package/src/components/MultipurposeField/TagOptions/index.tsx +83 -0
  67. package/src/components/MultipurposeField/TagOptions/styles.module.scss +95 -0
  68. package/src/components/MultipurposeField/index.tsx +687 -0
  69. package/src/components/MultipurposeField/styles.module.scss +56 -0
  70. package/src/components/NewModal/index.ts +69 -0
  71. package/src/components/NewModal/styles.module.scss +70 -0
  72. package/src/components/OverflowTooltip/index.tsx +59 -0
  73. package/src/components/PopUp/ConfirmationPopUp/index.ts +58 -0
  74. package/src/components/PopUp/ConfirmationPopUp/styles.module.scss +49 -0
  75. package/src/components/PopUp/SuccessPopUp/index.ts +62 -0
  76. package/src/components/PopUp/SuccessPopUp/styles.module.scss +38 -0
  77. package/src/components/RadioGroup/Radio.ts +129 -0
  78. package/src/components/RadioGroup/index.ts +169 -0
  79. package/src/components/RadioGroup/styles.module.scss +81 -0
  80. package/src/components/Search/index.ts +69 -0
  81. package/src/components/Search/styles.module.scss +149 -0
  82. package/src/components/TabBar/Tab.ts +33 -0
  83. package/src/components/TabBar/index.ts +64 -0
  84. package/src/components/TabBar/styles.module.scss +43 -0
  85. package/src/components/Tag/index.ts +29 -0
  86. package/src/components/Tag/styles.module.scss +57 -0
  87. package/src/components/TextArea/index.ts +172 -0
  88. package/src/components/TextArea/styles.module.scss +70 -0
  89. package/src/components/TextContent/index.tsx +128 -0
  90. package/src/components/TextContent/styles.module.scss +6 -0
  91. package/src/components/ThreeDotLoader/index.ts +39 -0
  92. package/src/components/ThreeDotLoader/styles.module.scss +41 -0
  93. package/src/components/TimeInput/index.ts +129 -0
  94. package/src/components/TimeInput/styles.module.scss +16 -0
  95. package/src/components/Toggle/index.ts +34 -0
  96. package/src/components/Toggle/styles.module.scss +56 -0
  97. package/src/components/Toggle-v2/index.ts +40 -0
  98. package/src/components/Toggle-v2/styles.module.scss +86 -0
  99. package/src/components/Tooltip/index.ts +271 -0
  100. package/src/components/Tooltip/styles.module.scss +105 -0
  101. package/src/components/form/ObjectField/index.ts +364 -0
  102. package/src/components/form/ObjectField/styles.module.scss +103 -0
  103. package/src/components/form/index.ts +3 -0
  104. package/src/contexts/AppContext.ts +12 -0
  105. package/src/declaration.d.ts +7 -0
  106. package/src/extensions/HMAC.ts +25 -0
  107. package/src/extensions/IntegryAPIError.ts +19 -0
  108. package/src/features/common/AccountDropdown/index.ts +291 -0
  109. package/src/features/common/AccountDropdown/styles.module.scss +19 -0
  110. package/src/features/common/ActionForm/index.ts +1818 -0
  111. package/src/features/common/ActionForm/styles.module.scss +23 -0
  112. package/src/features/common/AppCard/index.ts +207 -0
  113. package/src/features/common/AppCard/styles.module.scss +117 -0
  114. package/src/features/common/AppCardCompact/index.ts +189 -0
  115. package/src/features/common/AppCardCompact/styles.module.scss +141 -0
  116. package/src/features/common/AuthSelector/index.ts +537 -0
  117. package/src/features/common/AuthSelector/styles.module.scss +161 -0
  118. package/src/features/common/AuthSelectorCompact/index.ts +706 -0
  119. package/src/features/common/AuthSelectorCompact/styles.module.scss +219 -0
  120. package/src/features/common/AuthSelectorDropdown/index.ts +704 -0
  121. package/src/features/common/AuthSelectorDropdown/styles.module.scss +361 -0
  122. package/src/features/common/DynamicField/index.ts +229 -0
  123. package/src/features/common/DynamicField/styles.module.scss +67 -0
  124. package/src/features/common/DynamicTypedField/index.ts +217 -0
  125. package/src/features/common/DynamicTypedField/styles.module.scss +67 -0
  126. package/src/features/common/FunctionForm/index.ts +862 -0
  127. package/src/features/common/FunctionForm/styles.module.scss +163 -0
  128. package/src/features/common/MappingUI/index.ts +649 -0
  129. package/src/features/common/MappingUI/styles.module.scss +121 -0
  130. package/src/features/common/MarketplaceAppCard/index.ts +279 -0
  131. package/src/features/common/MarketplaceAppCard/styles.module.scss +231 -0
  132. package/src/features/common/MarketplaceAppCardCompact/index.ts +283 -0
  133. package/src/features/common/MarketplaceAppCardCompact/styles.module.scss +255 -0
  134. package/src/features/common/NewMappingUI/index.ts +515 -0
  135. package/src/features/common/NewMappingUI/styles.module.scss +113 -0
  136. package/src/features/common/RequestAppWidget/RequestAppModal/index.ts +67 -0
  137. package/src/features/common/RequestAppWidget/RequestAppModal/styles.module.scss +23 -0
  138. package/src/features/common/RequestAppWidget/index.ts +48 -0
  139. package/src/features/common/RequestAppWidget/request-app-form.ts +89 -0
  140. package/src/features/common/RequestAppWidget/styles.module.scss +43 -0
  141. package/src/features/common/SectionField/index.ts +272 -0
  142. package/src/features/common/SectionField/styles.module.scss +67 -0
  143. package/src/features/common/Step/index.ts +827 -0
  144. package/src/features/common/Step/styles.module.scss +12 -0
  145. package/src/features/common/StepNavigation/CollapsedSteps.ts +125 -0
  146. package/src/features/common/StepNavigation/NavItem.ts +111 -0
  147. package/src/features/common/StepNavigation/index.ts +257 -0
  148. package/src/features/common/StepNavigation/styles.module.scss +117 -0
  149. package/src/features/common/Steps/index.ts +1139 -0
  150. package/src/features/common/Steps/styles.module.scss +314 -0
  151. package/src/features/containers/AppFlowContainer/AppFlowListing/compactStyles.module.scss +383 -0
  152. package/src/features/containers/AppFlowContainer/AppFlowListing/flow-instance.tsx +367 -0
  153. package/src/features/containers/AppFlowContainer/AppFlowListing/flowCard.tsx +194 -0
  154. package/src/features/containers/AppFlowContainer/AppFlowListing/flowCardCompact.tsx +389 -0
  155. package/src/features/containers/AppFlowContainer/AppFlowListing/flowInstanceCompact.tsx +577 -0
  156. package/src/features/containers/AppFlowContainer/AppFlowListing/index.tsx +83 -0
  157. package/src/features/containers/AppFlowContainer/AppFlowListing/styles.module.scss +212 -0
  158. package/src/features/containers/AppFlowContainer/AppFlowWrap/app-page-loader.tsx +45 -0
  159. package/src/features/containers/AppFlowContainer/AppFlowWrap/index.tsx +1081 -0
  160. package/src/features/containers/AppFlowContainer/AppFlowWrap/styles.module.scss +452 -0
  161. package/src/features/containers/AppFlowContainer/Authentication/index.ts +610 -0
  162. package/src/features/containers/AppFlowContainer/Authentication/styles.module.scss +468 -0
  163. package/src/features/containers/AppFlowContainer/index.ts +114 -0
  164. package/src/features/containers/AppPageContainer/AppPage/index.tsx +262 -0
  165. package/src/features/containers/AppPageContainer/AppPage/styles.module.scss +120 -0
  166. package/src/features/containers/AppPageContainer/IntegrationCard/index.ts +165 -0
  167. package/src/features/containers/AppPageContainer/IntegrationCard/styles.module.scss +81 -0
  168. package/src/features/containers/AppPageContainer/index.tsx +93 -0
  169. package/src/features/containers/AppPageContainer/styles.module.scss +0 -0
  170. package/src/features/containers/AppsForFlows/index.ts +161 -0
  171. package/src/features/containers/AppsForFlows/styles.module.scss +280 -0
  172. package/src/features/containers/AppsForFlowsCompact/index.ts +161 -0
  173. package/src/features/containers/AppsForFlowsCompact/styles.module.scss +279 -0
  174. package/src/features/containers/AuthSetupContainer/AppSelection.ts +73 -0
  175. package/src/features/containers/AuthSetupContainer/AuthTypeSelection.ts +67 -0
  176. package/src/features/containers/AuthSetupContainer/Footer.ts +32 -0
  177. package/src/features/containers/AuthSetupContainer/Header.ts +39 -0
  178. package/src/features/containers/AuthSetupContainer/PostAdditionPopup.ts +27 -0
  179. package/src/features/containers/AuthSetupContainer/index.ts +349 -0
  180. package/src/features/containers/AuthSetupContainer/styles.module.scss +229 -0
  181. package/src/features/containers/FlowSetupContainer/index.ts +390 -0
  182. package/src/features/containers/FlowSetupContainer/styles.module.scss +18 -0
  183. package/src/features/containers/MarkeplaceApps/index.ts +574 -0
  184. package/src/features/containers/MarkeplaceApps/styles.module.scss +559 -0
  185. package/src/features/containers/MarketplaceAppsCompact/index.ts +576 -0
  186. package/src/features/containers/MarketplaceAppsCompact/styles.module.scss +546 -0
  187. package/src/features/containers/MarketplaceAppsContainer/index.ts +83 -0
  188. package/src/features/containers/MarketplaceContainer/AppCard/index.ts +91 -0
  189. package/src/features/containers/MarketplaceContainer/AppCard/styles.module.scss +66 -0
  190. package/src/features/containers/MarketplaceContainer/AppListing/index.ts +34 -0
  191. package/src/features/containers/MarketplaceContainer/AppListing/styles.module.scss +10 -0
  192. package/src/features/containers/MarketplaceContainer/MarketplaceContentWrap/index.ts +132 -0
  193. package/src/features/containers/MarketplaceContainer/MarketplaceContentWrap/styles.module.scss +117 -0
  194. package/src/features/containers/MarketplaceContainer/index.ts +242 -0
  195. package/src/features/containers/MarketplaceContainer/styles.module.scss +84 -0
  196. package/src/features/containers/SDKContainer/index.ts +817 -0
  197. package/src/features/containers/SDKContainer/styles.module.scss +266 -0
  198. package/src/features/containers/SDKDebugContainer/index.ts +137 -0
  199. package/src/features/containers/SDKDebugContainer/styles.module.scss +37 -0
  200. package/src/features/containers/SDKFailedContainer/index.ts +117 -0
  201. package/src/features/containers/SDKFailedContainer/styles.module.scss +57 -0
  202. package/src/features/integrations/IntegrationRow/Icons.ts +77 -0
  203. package/src/features/integrations/IntegrationRow/index.ts +129 -0
  204. package/src/features/integrations/IntegrationRow/styles.module.scss +62 -0
  205. package/src/features/integrations/IntegrationsHeader/index.ts +34 -0
  206. package/src/features/integrations/IntegrationsHeader/styles.module.scss +47 -0
  207. package/src/features/integrations/IntegrationsList/index.ts +252 -0
  208. package/src/features/integrations/IntegrationsList/styles.module.scss +67 -0
  209. package/src/features/templates/Template/index.ts +295 -0
  210. package/src/features/templates/Template/styles.module.scss +226 -0
  211. package/src/features/templates/TemplatesView/index.ts +368 -0
  212. package/src/features/templates/TemplatesView/styles.module.scss +71 -0
  213. package/src/features/templates/TemplatesViewCompact/index.ts +364 -0
  214. package/src/features/templates/TemplatesViewCompact/styles.module.scss +141 -0
  215. package/src/hooks/useAutosizeTextArea.ts +22 -0
  216. package/src/hooks/useCustomRef.ts +13 -0
  217. package/src/hooks/useDebounce.ts +17 -0
  218. package/src/hooks/useElementResize.ts +40 -0
  219. package/src/hooks/useEventListener.ts +44 -0
  220. package/src/hooks/useHover.ts +40 -0
  221. package/src/hooks/useOnClickOutside.ts +32 -0
  222. package/src/index.ts +2051 -0
  223. package/src/index.umd.ts +13 -0
  224. package/src/interfaces/index.ts +924 -0
  225. package/src/modules/api/index.ts +1315 -0
  226. package/src/modules/api/responseHandler.ts +38 -0
  227. package/src/modules/event-emitter/index.ts +72 -0
  228. package/src/modules/event-emitter/runners/abstract.ts +21 -0
  229. package/src/modules/event-emitter/runners/default.ts +11 -0
  230. package/src/modules/event-emitter/runners/ntimes.ts +28 -0
  231. package/src/modules/event-emitter/types.ts +34 -0
  232. package/src/store/actionFunctions.ts +1573 -0
  233. package/src/store/index.ts +17 -0
  234. package/src/store/initialState.ts +58 -0
  235. package/src/stories/Button.stories.tsx +83 -0
  236. package/src/stories/Checkbox/Checkbox.stories.tsx +41 -0
  237. package/src/stories/Checkbox/CheckboxGroup.stories.tsx +46 -0
  238. package/src/stories/EditableText.stories.tsx +35 -0
  239. package/src/stories/Input/BaseInput.stories.tsx +48 -0
  240. package/src/stories/Input/DateInput.stories.tsx +28 -0
  241. package/src/stories/Input/Input.stories.tsx +24 -0
  242. package/src/stories/Input/PasswordInput.stories.tsx +26 -0
  243. package/src/stories/Introduction.stories.mdx +211 -0
  244. package/src/stories/Label.stories.tsx +27 -0
  245. package/src/stories/Listbox.stories.tsx +122 -0
  246. package/src/stories/Radio/Radio.stories.tsx +39 -0
  247. package/src/stories/Radio/RadioGroup.stories.tsx +46 -0
  248. package/src/stories/StepNavigation/NavItem.stories.tsx +31 -0
  249. package/src/stories/StepNavigation/StepNavigation.stories.tsx +50 -0
  250. package/src/stories/TabBar.stories.tsx +31 -0
  251. package/src/stories/TextArea.stories.tsx +23 -0
  252. package/src/stories/TimeInput.stories.tsx +37 -0
  253. package/src/stories/Toggle.stories.tsx +33 -0
  254. package/src/stories/assets/code-brackets.svg +1 -0
  255. package/src/stories/assets/colors.svg +1 -0
  256. package/src/stories/assets/comments.svg +1 -0
  257. package/src/stories/assets/direction.svg +1 -0
  258. package/src/stories/assets/flow.svg +1 -0
  259. package/src/stories/assets/plugin.svg +1 -0
  260. package/src/stories/assets/repo.svg +1 -0
  261. package/src/stories/assets/stackalt.svg +1 -0
  262. package/src/types/index.ts +293 -0
  263. package/src/types/store.ts +366 -0
  264. package/src/types/utils.ts +19 -0
  265. package/src/utils/ActivityOutputUtils.ts +163 -0
  266. package/src/utils/common.ts +20 -0
  267. package/src/utils/copyToClipboard.ts +24 -0
  268. package/src/utils/datetime.ts +101 -0
  269. package/src/utils/getUrlParam.ts +11 -0
  270. package/src/utils/isAuthMessage.ts +16 -0
  271. package/src/utils/isBrowser.ts +1 -0
  272. package/src/utils/jsonEncodeDecode.ts +15 -0
  273. package/src/utils/objectUtils.ts +116 -0
  274. package/src/utils/popup.ts +30 -0
  275. package/src/utils/searchJson.ts +51 -0
  276. package/src/utils/stepUtils.ts +45 -0
  277. package/src/utils/truncate.ts +6 -0
  278. package/test/setup.ts +1 -0
  279. package/vitest.config.ts +10 -0
@@ -0,0 +1,546 @@
1
+ .appsContainer {
2
+ * {
3
+ user-select: none;
4
+ }
5
+ display: flex;
6
+ flex-direction: column;
7
+ align-items: flex-start;
8
+ justify-content: flex-start;
9
+ border-radius: 8px;
10
+ height: calc(100%);
11
+ padding-bottom: 0px;
12
+ min-height: 615px;
13
+ // min-height: 605px;
14
+ max-height: calc(100vh - 140px);
15
+ width: 100%;
16
+
17
+ .appsForFlowsCards {
18
+ height: calc(100vh - 272px);
19
+ max-height: 465px;
20
+ }
21
+
22
+ .appsHeader {
23
+ width: 100%;
24
+ }
25
+ .backLink {
26
+ display: flex;
27
+ align-items: center;
28
+ justify-content: flex-start;
29
+ cursor: pointer;
30
+ svg {
31
+ vertical-align: unset;
32
+ margin-right: 8px;
33
+ }
34
+ p {
35
+ margin: 0px;
36
+ }
37
+ .backLabel {
38
+ font-family: inherit;
39
+ font-style: normal;
40
+ font-weight: 400;
41
+ font-size: 16px;
42
+ line-height: 17px;
43
+ color: #000000;
44
+ }
45
+ }
46
+ .loader {
47
+ width: 100%;
48
+ margin: 100px auto;
49
+ text-align: center;
50
+ }
51
+ }
52
+
53
+ .appsForFlowsCardsNoAppFound {
54
+ display: flex;
55
+ flex-direction: column;
56
+ align-items: center;
57
+ justify-content: flex-start;
58
+ width: 100%;
59
+ margin-top: 24px;
60
+ flex: 1;
61
+
62
+ p {
63
+ font-weight: 400;
64
+ font-size: 14px;
65
+ line-height: 24px;
66
+ text-align: center;
67
+ color: #999999;
68
+ max-width: 318px;
69
+ margin: 0px;
70
+ }
71
+ }
72
+
73
+ .appsContainerInline {
74
+ * {
75
+ user-select: none;
76
+ }
77
+
78
+ display: block;
79
+ flex-direction: column;
80
+ align-items: flex-start;
81
+ justify-content: flex-start;
82
+ border-radius: 8px;
83
+ height: calc(100%);
84
+ margin: auto;
85
+ min-height: 100%;
86
+ display: flex;
87
+ flex-direction: column;
88
+ align-items: flex-start;
89
+ justify-content: flex-start;
90
+
91
+ .appsHeader {
92
+ width: 100%;
93
+ box-shadow: none;
94
+
95
+ .searchContainer {
96
+ width: calc(100% - 72px);
97
+ }
98
+ }
99
+
100
+ .appsForFlowsCards {
101
+ width: calc(100% - 40px);
102
+ // height: 100%;
103
+ display: grid;
104
+ --auto-grid-min-size: 268px;
105
+ grid-template-columns: repeat(
106
+ auto-fill,
107
+ minmax(var(--auto-grid-min-size), 1fr)
108
+ );
109
+ grid-gap: 8px;
110
+ grid-template-rows: repeat(auto-fill, minmax(105px, 1fr));
111
+ }
112
+ }
113
+
114
+ .appsHeader {
115
+ // box-shadow: 0px 1px 0px 0px #EFEFEF;
116
+ box-shadow: none;
117
+ width: 100%;
118
+
119
+ .appsHeaderTitle {
120
+ color: var(--black-and-grey-title-and-desc, #333);
121
+ font-family: Inter;
122
+ font-size: 16px;
123
+ font-style: normal;
124
+ font-weight: 500;
125
+ line-height: normal;
126
+ width: calc(100% - 24px);
127
+ margin-left: 24px;
128
+ display: flex;
129
+ flex-direction: row;
130
+ align-items: center;
131
+ justify-content: flex-start;
132
+ gap: 4px;
133
+ img {
134
+ height: 34px;
135
+ }
136
+ }
137
+
138
+ .searchContainer {
139
+ margin: auto;
140
+ margin-top: 17px;
141
+ margin-bottom: 8px;
142
+ border-radius: 8px;
143
+ border: 1px solid #f2f2f2;
144
+ background: #fff;
145
+ padding: 12px;
146
+ width: calc(100% - 72px);
147
+ display: flex;
148
+ flex-direction: row;
149
+ align-items: center;
150
+ justify-content: flex-start;
151
+ gap: 10px;
152
+
153
+ input {
154
+ width: 100%;
155
+ outline: none;
156
+ border: none;
157
+ font-family: Inter;
158
+ font-size: 12px;
159
+ font-style: normal;
160
+ font-weight: 400;
161
+ line-height: normal;
162
+ color: #333;
163
+
164
+ &:focus {
165
+ outline: none;
166
+ }
167
+
168
+ &::placeholder {
169
+ color: #999;
170
+ font-family: Inter;
171
+ font-size: 12px;
172
+ font-style: normal;
173
+ font-weight: 400;
174
+ line-height: normal;
175
+ }
176
+ }
177
+
178
+ .clearCta {
179
+ cursor: pointer;
180
+ }
181
+ }
182
+ }
183
+
184
+ .appsForFlowsCards {
185
+ gap: 8px;
186
+ overflow: auto;
187
+ padding-top: 12px;
188
+ padding-bottom: 12px;
189
+ padding-left: 10px;
190
+ padding-right: 10px;
191
+ margin-top: 4px;
192
+ width: calc(100% - 46px);
193
+ // padding-right: 6px;
194
+ margin-left: 14px;
195
+ scrollbar-gutter: stable;
196
+ display: grid;
197
+ --auto-grid-min-size: 262px;
198
+ grid-template-columns: repeat(
199
+ auto-fill,
200
+ minmax(var(--auto-grid-min-size), 1fr)
201
+ );
202
+ grid-template-rows: repeat(auto-fill, 105px);
203
+ grid-gap: 8px;
204
+ flex: 1;
205
+
206
+ &::-webkit-scrollbar {
207
+ width: 5px;
208
+ }
209
+ /* Track */
210
+ &::-webkit-scrollbar-track {
211
+ background: transparent;
212
+ border-radius: 10px;
213
+ }
214
+
215
+ /* Handle */
216
+ &::-webkit-scrollbar-thumb {
217
+ background: #ededed;
218
+ border: 1px solid #e7e7e7;
219
+ border-radius: 10px;
220
+ }
221
+
222
+ /* Handle on hover */
223
+ &::-webkit-scrollbar-thumb:hover {
224
+ background: rgb(116, 116, 116);
225
+ }
226
+ }
227
+
228
+ .appsForFlowsCardsCompact {
229
+ display: flex;
230
+ flex-direction: column;
231
+ gap: 0;
232
+ width: calc(100% + 15px);
233
+ overflow-y: auto;
234
+ scrollbar-gutter: stable;
235
+ padding-bottom: 24px;
236
+ flex: 1;
237
+ margin-top: 16px;
238
+
239
+ &::-webkit-scrollbar {
240
+ width: 5px;
241
+ }
242
+ /* Track */
243
+ &::-webkit-scrollbar-track {
244
+ background: transparent;
245
+ border-radius: 10px;
246
+ }
247
+
248
+ /* Handle */
249
+ &::-webkit-scrollbar-thumb {
250
+ background: #ededed;
251
+ border: 1px solid #e7e7e7;
252
+ border-radius: 10px;
253
+ }
254
+
255
+ /* Handle on hover */
256
+ &::-webkit-scrollbar-thumb:hover {
257
+ background: rgb(116, 116, 116);
258
+ }
259
+ }
260
+
261
+ .compact-view {
262
+ max-width: 342px;
263
+ margin: 0px;
264
+ padding: 0 24px;
265
+ display: flex;
266
+ flex-direction: column;
267
+ align-items: flex-start;
268
+ justify-content: flex-start;
269
+ margin: 0 auto;
270
+ border: 1px solid #eeeeee;
271
+
272
+ .appsHeader {
273
+ .appsHeaderTitle {
274
+ color: var(--black-and-grey-title-and-desc, #333);
275
+ font-family: Inter;
276
+ font-size: 16px;
277
+ font-style: normal;
278
+ font-weight: 500;
279
+ line-height: normal;
280
+ margin-left: 0;
281
+ margin-top: 24px;
282
+ }
283
+ }
284
+
285
+ .searchContainer {
286
+ margin: 0;
287
+ border-radius: 8px;
288
+ border: 1px solid var(--Gray-6, #f2f2f2);
289
+ background: #fff;
290
+ padding: 0 12px;
291
+ width: calc(100% - 24px) !important;
292
+ height: 40px;
293
+
294
+ .searchInput {
295
+ color: #333;
296
+ font-family: Inter;
297
+ font-size: 12px;
298
+ font-style: normal;
299
+ font-weight: 400;
300
+ line-height: normal;
301
+
302
+ &::placeholder {
303
+ color: var(--black-and-grey-draft-and-tooltip-desc, #999);
304
+ font-family: Inter;
305
+ font-size: 12px;
306
+ font-style: normal;
307
+ font-weight: 400;
308
+ line-height: normal;
309
+ }
310
+ }
311
+ }
312
+ }
313
+
314
+ .appsHeaderWithBorder {
315
+ border-bottom: 1px solid #e0e0e0;
316
+ padding-bottom: 14px;
317
+ }
318
+
319
+ .marketplaceAuthSelectorWrap {
320
+ font-family: 'Inter';
321
+ width: 100%;
322
+ height: 100vh;
323
+ margin-top: 20px;
324
+ overflow-y: scroll;
325
+ .heading {
326
+ font-size: 14px;
327
+ }
328
+ .label {
329
+ font-weight: 800;
330
+ font-size: 14px;
331
+ color: #333333;
332
+ line-height: 20px;
333
+ margin-bottom: 5px;
334
+
335
+ span {
336
+ color: #ff4d34;
337
+ margin-left: 2px;
338
+ font-size: 16px;
339
+ }
340
+ }
341
+
342
+ .confirmation {
343
+ display: flex;
344
+ align-items: center;
345
+ width: 90%;
346
+ height: 20px;
347
+ position: absolute;
348
+ /* right: 6px; */
349
+ background: #fff;
350
+ padding: 4px;
351
+ /* border: 1px solid #e2e2e2; */
352
+ border-radius: 4px;
353
+ button {
354
+ cursor: pointer;
355
+ -webkit-appearance: button;
356
+ font-weight: 500;
357
+ font-size: 12px;
358
+ line-height: 15px;
359
+ /* identical to box height */
360
+ padding: 4px 12px;
361
+ min-height: 22px;
362
+ text-align: center;
363
+ border-radius: 12px;
364
+ border: 0;
365
+ outline: none;
366
+
367
+ color: #ffffff;
368
+ background-color: #f05c42;
369
+
370
+ &:nth-child(2) {
371
+ margin-left: 10px;
372
+ margin-right: 10px;
373
+
374
+ color: #7e7a8f;
375
+ background-color: #f1f1f1;
376
+ }
377
+ }
378
+ }
379
+ .rows {
380
+ margin-top: 24px;
381
+ margin-bottom: 24px;
382
+ }
383
+
384
+ .error {
385
+ color: #f05c42;
386
+ button {
387
+ color: #f05c42;
388
+ border-color: #f05c42;
389
+ }
390
+ }
391
+
392
+ .errorMessage {
393
+ margin-top: 4px;
394
+ font-size: 12px;
395
+ line-height: 15px;
396
+ letter-spacing: -0.197647px;
397
+ color: #f05c42;
398
+ }
399
+
400
+ .description {
401
+ font-size: 14px;
402
+ line-height: 20px;
403
+ color: #8c8c8c;
404
+ margin-bottom: 10px;
405
+ }
406
+
407
+ .buttonShadow {
408
+ display: flex; /* For proper alignment of the "+" icon and text */
409
+ align-items: center; /* Vertically center content */
410
+ padding: 15px 16px; /* Adjust padding as needed */
411
+ background-color: white; /* Ensure white background */
412
+ border-radius: 8px; /* Rounded corners */
413
+ border: 1px solid #4250f0; /* Light border */
414
+ box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1); /* Shadow effect */
415
+ font-size: 14px; /* Adjust font size */
416
+ color: #333; /* Text color */
417
+ transition: box-shadow 0.2s ease, transform 0.2s ease; /* Smooth hover effects */
418
+ }
419
+
420
+ .buttonShadow:active {
421
+ box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2); /* Stronger shadow for click */
422
+ transform: translateY(1px); /* Pressed-down effect */
423
+ }
424
+
425
+ .buttonShadow .icon {
426
+ margin-right: 8px; /* Space between icon and text */
427
+ }
428
+
429
+ .checkboxRow {
430
+ display: flex;
431
+ align-items: center;
432
+ color: #333;
433
+ font-size: 13px;
434
+ margin-bottom: 16px;
435
+
436
+ .radio {
437
+ width: 45%;
438
+ overflow: hidden;
439
+ text-overflow: ellipsis;
440
+ white-space: nowrap;
441
+ &.readonly {
442
+ width: 70%;
443
+ }
444
+ }
445
+ .deleteIcon {
446
+ justify-content: end;
447
+ padding-left: 8px;
448
+ padding-right: 8px;
449
+ display: flex;
450
+ align-items: end;
451
+ cursor: pointer;
452
+ svg {
453
+ cursor: pointer;
454
+ user-select: none;
455
+ }
456
+ }
457
+ .statusWrap {
458
+ display: flex;
459
+ align-items: center;
460
+ font-size: 12px;
461
+ width: 12px;
462
+ &.readonly {
463
+ width: 30%;
464
+ }
465
+ .status {
466
+ position: relative;
467
+ width: 200px;
468
+ div {
469
+ display: flex;
470
+ align-items: center;
471
+ }
472
+ svg {
473
+ margin-left: 8px;
474
+ margin-top: 5px;
475
+ }
476
+ .statusRed,
477
+ .statusOrange,
478
+ .statusGreen {
479
+ width: 5px;
480
+ height: 5px;
481
+ border-radius: 9999px;
482
+ margin: 0 8px;
483
+ }
484
+ .statusRed {
485
+ background: #e26154;
486
+ }
487
+ .statusOrange {
488
+ background: #fcc700;
489
+ }
490
+
491
+ .statusGreen {
492
+ background: #2ecc71;
493
+ }
494
+
495
+ span {
496
+ margin-left: 10px;
497
+ }
498
+ .resend {
499
+ cursor: pointer;
500
+ }
501
+ }
502
+ }
503
+ &:hover {
504
+ .deleteIcon svg {
505
+ visibility: visible;
506
+ user-select: auto;
507
+ }
508
+ }
509
+ .statusWrapShortWidth {
510
+ width: 62%;
511
+ }
512
+ .readonlyHint {
513
+ position: absolute;
514
+ width: 40%;
515
+ height: -webkit-fill-available;
516
+ z-index: 99;
517
+ margin: 10px 0px;
518
+ }
519
+ }
520
+ .marketplaceAddAccountBtn {
521
+ cursor: pointer;
522
+ border: 1px solid #e0e0e0;
523
+ padding: 4px 16px;
524
+ span {
525
+ font-size: 20px;
526
+ line-height: 0;
527
+ position: relative;
528
+ }
529
+ p {
530
+ margin-left: 8px;
531
+ position: relative;
532
+ top: 1px;
533
+ }
534
+ }
535
+ .marketplaceAddAccountBtn.disabled {
536
+ color: #999999;
537
+ }
538
+ .connectedAccountRow {
539
+ display: flex;
540
+ width: 94%;
541
+ .connectedAccountValue {
542
+ position: relative;
543
+ top: 1px;
544
+ }
545
+ }
546
+ }
@@ -0,0 +1,83 @@
1
+ import { html } from 'htm/preact';
2
+ import { connect } from 'unistore/preact';
3
+ import { Modal } from '@/components/Modal';
4
+ import { MarketplaceRenderModes, ViewStyles } from '@/types';
5
+ import { StoreType } from '@/types/store';
6
+ import { actionFunctions } from '@/store';
7
+
8
+ import MarketplaceApps from '../MarkeplaceApps';
9
+ import MarketplaceAppsCompact from '../MarketplaceAppsCompact';
10
+
11
+ interface ContainerProps extends StoreType {
12
+ renderMode: MarketplaceRenderModes;
13
+ renderAppPageMode: MarketplaceRenderModes;
14
+ renderFlowSetupMode: MarketplaceRenderModes;
15
+ appName?: string;
16
+ }
17
+
18
+ const MarketplaceContainer = (props: ContainerProps) => {
19
+ const {
20
+ renderMode,
21
+ genericData,
22
+ renderAppPageMode,
23
+ renderFlowSetupMode,
24
+ appName = '',
25
+ } = props;
26
+ const { app_id } = genericData;
27
+
28
+ const handleCloseMarketplaceModal = () => {
29
+ props.resetTemplateFields();
30
+ if (genericData.showApps && genericData.app_id) {
31
+ props.setGenericData({
32
+ app_id: null,
33
+ });
34
+ } else if (!genericData.isPreviewMode) {
35
+ props.setStoreState({
36
+ showMarketplaceModal: false,
37
+ });
38
+ }
39
+ };
40
+ const renderAppList = () => {
41
+ if (!genericData.keepBackButtonForFlows) {
42
+ props.setGenericData({
43
+ keepBackButtonForFlows: true,
44
+ });
45
+ }
46
+ return html`
47
+ ${renderMode === MarketplaceRenderModes.INLINE &&
48
+ html`<${genericData.viewStyle === ViewStyles.COMPACT
49
+ ? MarketplaceAppsCompact
50
+ : MarketplaceApps}
51
+ renderMode=${renderMode}
52
+ appName=${appName}
53
+ />`}
54
+ ${renderMode === MarketplaceRenderModes.MODAL &&
55
+ html`
56
+ <${Modal}
57
+ isOpen=${props.showMarketplaceModal}
58
+ onClose=${handleCloseMarketplaceModal}
59
+ className="flowAppsModal"
60
+ isCompact=${genericData.viewStyle === ViewStyles.COMPACT}
61
+ >
62
+ ${html`<${genericData.viewStyle === ViewStyles.COMPACT
63
+ ? MarketplaceAppsCompact
64
+ : MarketplaceApps}
65
+ renderMode=${renderMode}
66
+ appName=${appName}
67
+ />`}
68
+ <//>
69
+ `}
70
+ `;
71
+ };
72
+ return html`
73
+ ${(!app_id ||
74
+ (renderAppPageMode === MarketplaceRenderModes.MODAL &&
75
+ renderMode === MarketplaceRenderModes.INLINE)) &&
76
+ renderAppList()}
77
+ `;
78
+ };
79
+
80
+ export default connect<ContainerProps, unknown, StoreType, unknown>(
81
+ ['showMarketplaceModal', 'genericData'],
82
+ actionFunctions,
83
+ )(MarketplaceContainer);
@@ -0,0 +1,91 @@
1
+ import { html } from 'htm/preact';
2
+ // import { useEffect, useContext, useState } from 'preact/hooks';
3
+ import { Tag } from '@/components/Tag';
4
+ import { AppConnectionStatus, MarketplaceAppBundle } from '@/interfaces';
5
+ // import AppContext from '@/contexts/AppContext';
6
+
7
+ import { Loader } from '@/components/Loader';
8
+ import styles from './styles.module.scss';
9
+
10
+ enum ConnectionTagType {
11
+ CONNECTED = 'success',
12
+ ERROR = 'fail',
13
+ VERIFYING = '',
14
+ '' = '',
15
+ }
16
+
17
+ interface AppCardProps {
18
+ marketplaceApp: MarketplaceAppBundle;
19
+ handleCardClick?: (marketplaceApp: MarketplaceAppBundle) => void;
20
+ }
21
+
22
+ const AppCard = (props: AppCardProps) => {
23
+ const {
24
+ marketplaceApp,
25
+ handleCardClick
26
+ } = props;
27
+ // const context = useContext(AppContext);
28
+ // const [connectionStatus, setConnectionStatus] = useState<AppConnectionStatus>(AppConnectionStatus.NONE);
29
+ const { app, connectionStatus = AppConnectionStatus.NONE } = marketplaceApp;
30
+
31
+ // useEffect(() => {
32
+ // const authorizationType = marketplaceApp.app.authorization_type;
33
+ // if (authorizationType.authorizations.length > 0 && authorizationType.default_authorization) {
34
+ // setConnectionStatus(AppConnectionStatus.VERIFYING);
35
+ // context?.apiHandler
36
+ // .verifyOAuth(authorizationType.default_authorization)
37
+ // .then((res) => {
38
+ // if (res) {;
39
+ // setConnectionStatus(AppConnectionStatus.CONNECTED);
40
+ // } else {
41
+ // setConnectionStatus(AppConnectionStatus.ERROR);
42
+ // }
43
+ // })
44
+ // }
45
+ // }, []);
46
+
47
+ const getConnectionStatus = () => {
48
+ if (connectionStatus === AppConnectionStatus.CONNECTED) {
49
+ return 'Connected';
50
+ }
51
+ if (connectionStatus === AppConnectionStatus.ERROR) {
52
+ return html`
53
+ <span class="${styles['app-card-tag__inner-span']}">Error <span style="height: 9px; top: 1px; position: relative; left: 1px;"><svg
54
+ style="width: 1em; height: 1em;"
55
+ width="9" height="9" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">
56
+ <path d="M4.99777 0.978142C5.06552 0.978142 5.23363 0.998713 5.32647 1.18386L8.80166 8.09071C8.88697 8.26043 8.82173 8.407 8.78912 8.461C8.7565 8.515 8.66115 8.64357 8.47296 8.64357H1.52258C1.33439 8.64357 1.23904 8.51757 1.20642 8.461C1.1738 8.407 1.10857 8.26043 1.19388 8.09071L4.66907 1.18386C4.76191 0.998713 4.93002 0.978142 4.99777 0.978142ZM4.99777 0.30957C4.63896 0.30957 4.28015 0.497285 4.08945 0.875285L0.614261 7.78214C0.262978 8.479 0.757283 9.30957 1.52258 9.30957H8.47547C9.24076 9.30957 9.73507 8.479 9.38379 7.78214L5.90609 0.875285C5.71539 0.497285 5.35658 0.30957 4.99777 0.30957Z" fill="#F05C42"/>
57
+ <path d="M4.99547 6.84888C4.87503 6.84888 4.77467 6.89259 4.69186 6.97745C4.60906 7.06231 4.56641 7.16516 4.56641 7.28602C4.56641 7.42488 4.60906 7.53288 4.69688 7.61002C4.7847 7.68716 4.88507 7.72573 5.00049 7.72573C5.11591 7.72573 5.21377 7.68716 5.30159 7.60745C5.3869 7.53031 5.42956 7.42231 5.42956 7.28602C5.42956 7.16516 5.3869 7.06231 5.30159 6.97745C5.21879 6.89002 5.11591 6.84888 4.99547 6.84888Z" fill="#F05C42"/>
58
+ <path d="M4.99795 3.28467C4.76209 3.28467 4.5714 3.48524 4.58143 3.72695L4.65671 5.99238C4.66173 6.18267 4.81479 6.33438 5.00046 6.33438C5.18614 6.33438 5.3392 6.18267 5.34422 5.99238L5.41698 3.72695C5.42451 3.48524 5.23382 3.28467 4.99795 3.28467Z" fill="#F05C42"/>
59
+ </svg></span>
60
+ </span>
61
+ `;
62
+ }
63
+ return '';
64
+ };
65
+
66
+ const onCardClick = (): void => {
67
+ if (handleCardClick) {
68
+ handleCardClick(marketplaceApp);
69
+ }
70
+ }
71
+
72
+ return html`
73
+ <div class="${styles.appCard} integry-container__app-card" onclick="${onCardClick || ''}">
74
+ <div class="${styles.leftSection}">
75
+ <img src="${app.icon_url}" class="${styles.appLogo}" alt="app-logo" />
76
+ </div>
77
+ <div class="${styles.rightSection}">
78
+ <div class="${styles.appTitleSection}">
79
+ <span class="${styles.appName}">${app.name}</span> ${connectionStatus === AppConnectionStatus.VERIFYING && html`<${Loader} />`}
80
+ ${app.authorization_type.authorizations.length > 0 && html`
81
+ <${Tag} label="${getConnectionStatus()}" type="${ConnectionTagType[connectionStatus]}" className="app-card-tag" />`}
82
+ </div>
83
+ <div class="${styles.appDescription}">
84
+ ${marketplaceApp.long_description || ''}
85
+ </div>
86
+ </div>
87
+ </div>
88
+ `;
89
+ };
90
+
91
+ export { AppCard };