@adobedjangir/commerce-admin-management 0.0.2

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 (48) hide show
  1. package/README.md +637 -0
  2. package/actions/commerce-creds.js +262 -0
  3. package/actions/configurations/commerce/index.js +41 -0
  4. package/actions/configurations/commerce-connection-save/index.js +53 -0
  5. package/actions/configurations/commerce-connection-status/index.js +27 -0
  6. package/actions/configurations/commerce-connection-test/index.js +47 -0
  7. package/actions/configurations/export-config/index.js +256 -0
  8. package/actions/configurations/ext.config.yaml +192 -0
  9. package/actions/configurations/import-config/index.js +541 -0
  10. package/actions/configurations/registration/index.js +37 -0
  11. package/actions/configurations/sync-store-mappings-from-commerce/index.js +190 -0
  12. package/actions/configurations/system-config-list/index.js +127 -0
  13. package/actions/configurations/system-config-save/index.js +160 -0
  14. package/actions/configurations/system-config-schema/index.js +327 -0
  15. package/actions/utils.js +73 -0
  16. package/package.json +80 -0
  17. package/scripts/build-web.js +58 -0
  18. package/scripts/setup.js +445 -0
  19. package/src/abdb-config.js +8 -0
  20. package/src/abdb-helper.js +8 -0
  21. package/src/index.js +22 -0
  22. package/src/oauth1a.js +8 -0
  23. package/src/system-config-crypto.js +8 -0
  24. package/src/system-config-shared.js +8 -0
  25. package/web/dist/index.css +305 -0
  26. package/web/dist/index.js +2986 -0
  27. package/web/index.js +7 -0
  28. package/web/src/components/App.js +54 -0
  29. package/web/src/components/AppSectionNav.js +49 -0
  30. package/web/src/components/CommerceSetupWizard.js +160 -0
  31. package/web/src/components/ExtensionRegistration.js +33 -0
  32. package/web/src/components/MainPage.js +147 -0
  33. package/web/src/components/SystemConfig.js +1464 -0
  34. package/web/src/components/SystemConfigSchemaEditor.js +459 -0
  35. package/web/src/hooks/useConfirm.js +355 -0
  36. package/web/src/hooks/useSystemConfig.js +238 -0
  37. package/web/src/hooks/useSystemConfigSchema.js +102 -0
  38. package/web/src/index.js +46 -0
  39. package/web/src/nav-icons.js +30 -0
  40. package/web/src/nav.json +10 -0
  41. package/web/src/pages/index.js +17 -0
  42. package/web/src/schema/systemConfigSchema.js +82 -0
  43. package/web/src/settings.js +101 -0
  44. package/web/src/styles/index.css +337 -0
  45. package/web/src/theme.js +104 -0
  46. package/web/src/utils/storeMappingsFromCommerceRest.js +73 -0
  47. package/web/src/utils.js +52 -0
  48. package/web/styles.css +337 -0
@@ -0,0 +1,305 @@
1
+ /* web/src/styles/index.css */
2
+ :root {
3
+ --sm-color-bg: #f7f8fa;
4
+ --sm-color-surface: #ffffff;
5
+ --sm-color-surface-muted: #f3f4f6;
6
+ --sm-color-surface-subtle: #fafbfc;
7
+ --sm-color-border: #e5e7eb;
8
+ --sm-color-border-strong: #d1d5db;
9
+ --sm-color-text: #111827;
10
+ --sm-color-text-muted: #6b7280;
11
+ --sm-color-text-inverse: #ffffff;
12
+ --sm-color-accent: #1473e6;
13
+ --sm-color-accent-hover: #0f5fc4;
14
+ --sm-color-accent-soft: #e8f1fc;
15
+ --sm-color-success: #22863a;
16
+ --sm-color-success-hover: #1a6e2f;
17
+ --sm-color-success-soft: #ecfdf5;
18
+ --sm-color-warning: #b58105;
19
+ --sm-color-warning-hover: #946c04;
20
+ --sm-color-warning-soft: #fff7ed;
21
+ --sm-color-warning-border: #fde68a;
22
+ --sm-color-warning-text: #92400e;
23
+ --sm-color-warning-tint: #fef3c7;
24
+ --sm-color-danger: #c0392b;
25
+ --sm-color-danger-hover: #a32d20;
26
+ --sm-color-danger-soft: #fef2f2;
27
+ --sm-color-danger-tint: #fee2e2;
28
+ --sm-color-accent-tint: #dbeafe;
29
+ --sm-color-neutral-soft: #eef2f7;
30
+ --sm-color-neutral-text: #374151;
31
+ --sm-color-text-strong: #1f2937;
32
+ --sm-color-text-soft: #475569;
33
+ --sm-color-surface-panel: #f9fafb;
34
+ --sm-color-overlay: rgba(15, 23, 42, 0.45);
35
+ --sm-radius-sm: 4px;
36
+ --sm-radius-md: 8px;
37
+ --sm-radius-lg: 10px;
38
+ --sm-radius-xl: 12px;
39
+ --sm-radius-2xl: 14px;
40
+ --sm-radius-pill: 999px;
41
+ --sm-space-1: 4px;
42
+ --sm-space-2: 8px;
43
+ --sm-space-3: 12px;
44
+ --sm-space-4: 16px;
45
+ --sm-space-5: 20px;
46
+ --sm-space-6: 24px;
47
+ --sm-shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.03);
48
+ --sm-shadow-sm: 0 1px 4px rgba(15, 23, 42, 0.04);
49
+ --sm-shadow-md: 0 1px 3px rgba(15, 23, 42, 0.12), 0 1px 1px rgba(15, 23, 42, 0.06);
50
+ --sm-shadow-pill: 0 1px 3px rgba(15, 23, 42, 0.10), 0 1px 1px rgba(15, 23, 42, 0.06);
51
+ --sm-shadow-floating: 0 4px 14px rgba(15, 23, 42, 0.08);
52
+ --sm-shadow-dropdown: 0 12px 28px rgba(15, 23, 42, 0.16), 0 2px 4px rgba(15, 23, 42, 0.06);
53
+ --sm-shadow-modal: 0 24px 60px rgba(15, 23, 42, 0.25), 0 2px 8px rgba(15, 23, 42, 0.08);
54
+ --sm-shadow-inset: inset 0 1px 2px rgba(15, 23, 42, 0.04);
55
+ --sm-font-family:
56
+ adobe-clean,
57
+ "Source Sans Pro",
58
+ -apple-system,
59
+ BlinkMacSystemFont,
60
+ "Segoe UI",
61
+ Roboto,
62
+ sans-serif;
63
+ --sm-font-mono:
64
+ ui-monospace,
65
+ SFMono-Regular,
66
+ Menlo,
67
+ Consolas,
68
+ monospace;
69
+ --sm-font-size-xs: 11px;
70
+ --sm-font-size-sm: 12px;
71
+ --sm-font-size-md: 13px;
72
+ --sm-font-size-lg: 14px;
73
+ --sm-font-weight-regular: 400;
74
+ --sm-font-weight-medium: 500;
75
+ --sm-font-weight-semibold:600;
76
+ --sm-font-weight-bold: 700;
77
+ --sm-control-height-sm: 28px;
78
+ --sm-control-height-md: 32px;
79
+ --sm-control-height-lg: 40px;
80
+ --sm-control-padding-x: 16px;
81
+ --sm-z-nav: 30;
82
+ --sm-z-sticky: 20;
83
+ --sm-z-modal: 100;
84
+ --spectrum-accent-color-900: var(--sm-color-accent);
85
+ --spectrum-accent-color-1000: var(--sm-color-accent-hover);
86
+ color-scheme: light;
87
+ }
88
+ html,
89
+ body,
90
+ #root {
91
+ margin: 0;
92
+ min-height: 100%;
93
+ background: var(--sm-color-bg);
94
+ color: var(--sm-color-text);
95
+ font-family: var(--sm-font-family);
96
+ }
97
+ .sm-provider {
98
+ background: var(--sm-color-bg);
99
+ min-height: 100vh;
100
+ }
101
+ .sm-card {
102
+ background: var(--sm-color-surface);
103
+ border: 1px solid var(--sm-color-border);
104
+ border-radius: var(--sm-radius-lg);
105
+ box-shadow: var(--sm-shadow-xs);
106
+ padding: var(--sm-space-5);
107
+ }
108
+ .sm-card--flush {
109
+ padding: 0;
110
+ }
111
+ .sm-pill {
112
+ display: inline-flex;
113
+ align-items: center;
114
+ gap: var(--sm-space-1);
115
+ padding: 2px var(--sm-space-2);
116
+ border-radius: var(--sm-radius-pill);
117
+ background: var(--sm-color-neutral-soft);
118
+ color: var(--sm-color-neutral-text);
119
+ font-size: var(--sm-font-size-xs);
120
+ font-weight: var(--sm-font-weight-semibold);
121
+ line-height: 16px;
122
+ letter-spacing: 0.2px;
123
+ white-space: nowrap;
124
+ }
125
+ .sm-pill--accent {
126
+ background: var(--sm-color-accent-soft);
127
+ color: var(--sm-color-accent);
128
+ }
129
+ .sm-pill--success {
130
+ background: var(--sm-color-success-soft);
131
+ color: var(--sm-color-success);
132
+ }
133
+ .sm-pill--warning {
134
+ background: var(--sm-color-warning-soft);
135
+ color: var(--sm-color-warning);
136
+ }
137
+ .sm-pill--danger {
138
+ background: var(--sm-color-danger-soft);
139
+ color: var(--sm-color-danger);
140
+ }
141
+ .sm-tab-bar {
142
+ position: sticky;
143
+ top: 0;
144
+ z-index: var(--sm-z-nav);
145
+ background: var(--sm-color-surface);
146
+ border-bottom: 1px solid var(--sm-color-border);
147
+ padding: 10px var(--sm-space-4);
148
+ box-shadow: var(--sm-shadow-sm);
149
+ box-sizing: border-box;
150
+ max-width: 100%;
151
+ display: flex;
152
+ align-items: center;
153
+ justify-content: space-between;
154
+ flex-wrap: nowrap;
155
+ gap: var(--sm-space-3);
156
+ }
157
+ .sm-tab-bar__actions {
158
+ display: inline-flex;
159
+ align-items: center;
160
+ gap: var(--sm-space-2);
161
+ flex-shrink: 0;
162
+ }
163
+ .sm-tab-bar__track {
164
+ display: inline-flex;
165
+ padding: var(--sm-space-1);
166
+ background: var(--sm-color-surface-muted);
167
+ border: 1px solid var(--sm-color-border);
168
+ border-radius: var(--sm-radius-pill);
169
+ box-shadow: var(--sm-shadow-inset);
170
+ gap: 2px;
171
+ font-family: var(--sm-font-family);
172
+ }
173
+ .sm-tab {
174
+ display: inline-flex;
175
+ align-items: center;
176
+ gap: var(--sm-space-2);
177
+ padding: var(--sm-space-2) var(--sm-control-padding-x);
178
+ border: 0;
179
+ border-radius: var(--sm-radius-pill);
180
+ background: transparent;
181
+ color: var(--sm-color-neutral-text);
182
+ font-size: var(--sm-font-size-md);
183
+ font-weight: var(--sm-font-weight-semibold);
184
+ letter-spacing: 0.1px;
185
+ cursor: pointer;
186
+ transition:
187
+ background 140ms ease,
188
+ color 140ms ease,
189
+ box-shadow 140ms ease;
190
+ }
191
+ .sm-tab:hover {
192
+ background: var(--sm-color-surface);
193
+ color: var(--sm-color-text);
194
+ }
195
+ .sm-tab.is-active {
196
+ background: var(--sm-color-surface);
197
+ color: var(--sm-color-accent);
198
+ font-weight: var(--sm-font-weight-bold);
199
+ box-shadow: var(--sm-shadow-pill);
200
+ cursor: default;
201
+ }
202
+ .sm-tab__icon {
203
+ display: inline-flex;
204
+ opacity: 0.75;
205
+ }
206
+ .sm-tab.is-active .sm-tab__icon {
207
+ opacity: 1;
208
+ }
209
+ .sm-textarea textarea {
210
+ height: 160px !important;
211
+ max-height: 160px !important;
212
+ min-height: 160px !important;
213
+ overflow-y: auto !important;
214
+ resize: none !important;
215
+ font-family: var(--sm-font-mono);
216
+ font-size: var(--sm-font-size-sm);
217
+ }
218
+ .sm-note {
219
+ margin-top: var(--sm-space-3);
220
+ padding: var(--sm-space-3);
221
+ border-radius: var(--sm-radius-md);
222
+ background: var(--sm-color-surface-muted);
223
+ border: 1px solid var(--sm-color-border);
224
+ color: var(--sm-color-text);
225
+ font-size: var(--sm-font-size-md);
226
+ white-space: pre-line;
227
+ font-family: var(--sm-font-mono);
228
+ }
229
+ .sm-note--warning {
230
+ background: var(--sm-color-warning-soft);
231
+ border-color: var(--sm-color-warning-border);
232
+ color: var(--sm-color-warning-text);
233
+ font-family: var(--sm-font-family);
234
+ }
235
+ @keyframes sm-pulse {
236
+ 0%, 100% {
237
+ opacity: 1;
238
+ }
239
+ 50% {
240
+ opacity: 0.3;
241
+ }
242
+ }
243
+ @keyframes sm-indeterminate {
244
+ 0% {
245
+ left: -40%;
246
+ width: 40%;
247
+ }
248
+ 50% {
249
+ left: 30%;
250
+ width: 40%;
251
+ }
252
+ 100% {
253
+ left: 100%;
254
+ width: 40%;
255
+ }
256
+ }
257
+ @keyframes sm-fade-in {
258
+ from {
259
+ opacity: 0;
260
+ }
261
+ to {
262
+ opacity: 1;
263
+ }
264
+ }
265
+ @keyframes sm-pop-in {
266
+ from {
267
+ opacity: 0;
268
+ transform: translateY(8px) scale(0.98);
269
+ }
270
+ to {
271
+ opacity: 1;
272
+ transform: translateY(0) scale(1);
273
+ }
274
+ }
275
+ .SideNav {
276
+ list-style-type: none;
277
+ margin: 0;
278
+ padding: 0;
279
+ outline: none;
280
+ height: 100%;
281
+ }
282
+ .SideNav-item {
283
+ list-style-type: none;
284
+ margin: var(--spectrum-global-dimension-size-50) 0;
285
+ }
286
+ .SideNav-itemLink {
287
+ position: relative;
288
+ display: inline-flex;
289
+ align-items: center;
290
+ box-sizing: border-box;
291
+ width: 100%;
292
+ padding: var(--sm-space-2) var(--sm-space-3);
293
+ border-radius: var(--sm-radius-sm);
294
+ font-size: var(--sm-font-size-lg);
295
+ font-weight: var(--sm-font-weight-regular);
296
+ text-decoration: none;
297
+ word-break: break-word;
298
+ cursor: pointer;
299
+ background: transparent;
300
+ color: var(--sm-color-text);
301
+ }
302
+ .SideNav-itemLink.is-selected {
303
+ color: var(--sm-color-accent);
304
+ background: var(--sm-color-accent-soft);
305
+ }