@africanies/angular-web-sdk 0.1.5 → 0.1.6

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 (86) hide show
  1. package/.nx/cache/run.json +25 -25
  2. package/.nx/workspace-data/0091ABA9-5C90-580D-953C-8C94E763ADB5-v3.db +0 -0
  3. package/.nx/workspace-data/0091ABA9-5C90-580D-953C-8C94E763ADB5-v3.db-shm +0 -0
  4. package/.nx/workspace-data/0091ABA9-5C90-580D-953C-8C94E763ADB5-v3.db-wal +0 -0
  5. package/.nx/workspace-data/d/daemon.log +852 -0
  6. package/.nx/workspace-data/d/server-process.json +2 -2
  7. package/.nx/workspace-data/file-map.json +1355 -1355
  8. package/.nx/workspace-data/nx_files.nxt +0 -0
  9. package/.nx/workspace-data/project-graph.json +2 -2
  10. package/package.json +1 -1
  11. package/.nx/cache/1275815545780424169/dist/libs/africanies-theme/README.md +0 -46
  12. package/.nx/cache/1275815545780424169/dist/libs/africanies-theme/fesm2022/africanies-africanies-theme.mjs +0 -215
  13. package/.nx/cache/1275815545780424169/dist/libs/africanies-theme/fesm2022/africanies-africanies-theme.mjs.map +0 -1
  14. package/.nx/cache/1275815545780424169/dist/libs/africanies-theme/package.json +0 -36
  15. package/.nx/cache/1275815545780424169/dist/libs/africanies-theme/tailwind-preset.cjs +0 -245
  16. package/.nx/cache/1275815545780424169/dist/libs/africanies-theme/types/africanies-africanies-theme.d.ts +0 -157
  17. package/.nx/cache/13524438527920092277/dist/libs/africanies-core/README.md +0 -85
  18. package/.nx/cache/13524438527920092277/dist/libs/africanies-core/fesm2022/africanies-africanies-core.mjs +0 -4546
  19. package/.nx/cache/13524438527920092277/dist/libs/africanies-core/fesm2022/africanies-africanies-core.mjs.map +0 -1
  20. package/.nx/cache/13524438527920092277/dist/libs/africanies-core/package.json +0 -31
  21. package/.nx/cache/13524438527920092277/dist/libs/africanies-core/types/africanies-africanies-core.d.ts +0 -2740
  22. package/.nx/cache/14153928176747262656/dist/libs/africanies-theme/README.md +0 -46
  23. package/.nx/cache/14153928176747262656/dist/libs/africanies-theme/fesm2022/africanies-africanies-theme.mjs +0 -215
  24. package/.nx/cache/14153928176747262656/dist/libs/africanies-theme/fesm2022/africanies-africanies-theme.mjs.map +0 -1
  25. package/.nx/cache/14153928176747262656/dist/libs/africanies-theme/package.json +0 -35
  26. package/.nx/cache/14153928176747262656/dist/libs/africanies-theme/tailwind-preset.cjs +0 -245
  27. package/.nx/cache/14153928176747262656/dist/libs/africanies-theme/types/africanies-africanies-theme.d.ts +0 -157
  28. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/README.md +0 -68
  29. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/assets/brand/africanies-logo-mini.png +0 -0
  30. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/assets/brand/africanies-logo.png +0 -0
  31. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/assets/brand/africanies-logo.svg +0 -5
  32. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/assets/carriers/dhl.svg +0 -7
  33. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/fesm2022/africanies-africanies-ui.mjs +0 -19088
  34. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/fesm2022/africanies-africanies-ui.mjs.map +0 -1
  35. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/package.json +0 -35
  36. package/.nx/cache/18132311043100376919/dist/libs/africanies-ui/types/africanies-africanies-ui.d.ts +0 -5410
  37. package/.nx/cache/2782605790118376385/dist/libs/africanies-icons/README.md +0 -69
  38. package/.nx/cache/2782605790118376385/dist/libs/africanies-icons/assets/icons.sprite.svg +0 -1844
  39. package/.nx/cache/2782605790118376385/dist/libs/africanies-icons/fesm2022/africanies-africanies-icons.mjs +0 -832
  40. package/.nx/cache/2782605790118376385/dist/libs/africanies-icons/fesm2022/africanies-africanies-icons.mjs.map +0 -1
  41. package/.nx/cache/2782605790118376385/dist/libs/africanies-icons/package.json +0 -31
  42. package/.nx/cache/2782605790118376385/dist/libs/africanies-icons/types/africanies-africanies-icons.d.ts +0 -108
  43. package/.nx/cache/3064561615116090625/dist/libs/africanies-storage/README.md +0 -31
  44. package/.nx/cache/3064561615116090625/dist/libs/africanies-storage/fesm2022/africanies-africanies-storage.mjs +0 -243
  45. package/.nx/cache/3064561615116090625/dist/libs/africanies-storage/fesm2022/africanies-africanies-storage.mjs.map +0 -1
  46. package/.nx/cache/3064561615116090625/dist/libs/africanies-storage/package.json +0 -27
  47. package/.nx/cache/3064561615116090625/dist/libs/africanies-storage/types/africanies-africanies-storage.d.ts +0 -210
  48. package/.nx/cache/4011892767661954819/dist/libs/africanies-core/README.md +0 -85
  49. package/.nx/cache/4011892767661954819/dist/libs/africanies-core/fesm2022/africanies-africanies-core.mjs +0 -4546
  50. package/.nx/cache/4011892767661954819/dist/libs/africanies-core/fesm2022/africanies-africanies-core.mjs.map +0 -1
  51. package/.nx/cache/4011892767661954819/dist/libs/africanies-core/package.json +0 -32
  52. package/.nx/cache/4011892767661954819/dist/libs/africanies-core/types/africanies-africanies-core.d.ts +0 -2740
  53. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/README.md +0 -68
  54. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/assets/brand/africanies-logo-mini.png +0 -0
  55. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/assets/brand/africanies-logo.png +0 -0
  56. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/assets/brand/africanies-logo.svg +0 -5
  57. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/assets/carriers/dhl.svg +0 -7
  58. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/fesm2022/africanies-africanies-ui.mjs +0 -19088
  59. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/fesm2022/africanies-africanies-ui.mjs.map +0 -1
  60. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/package.json +0 -36
  61. package/.nx/cache/5741611231803799383/dist/libs/africanies-ui/types/africanies-africanies-ui.d.ts +0 -5410
  62. package/.nx/cache/6372470950255467653/dist/libs/africanies-models/README.md +0 -60
  63. package/.nx/cache/6372470950255467653/dist/libs/africanies-models/fesm2022/africanies-africanies-models.mjs +0 -599
  64. package/.nx/cache/6372470950255467653/dist/libs/africanies-models/fesm2022/africanies-africanies-models.mjs.map +0 -1
  65. package/.nx/cache/6372470950255467653/dist/libs/africanies-models/package.json +0 -24
  66. package/.nx/cache/6372470950255467653/dist/libs/africanies-models/types/africanies-africanies-models.d.ts +0 -1452
  67. package/.nx/cache/terminalOutputs/11768036696192889608 +0 -8
  68. package/.nx/cache/terminalOutputs/12148417737220755248 +0 -175
  69. package/.nx/cache/terminalOutputs/1227201614544602906 +0 -23
  70. package/.nx/cache/terminalOutputs/12538607787148205787 +0 -19
  71. package/.nx/cache/terminalOutputs/1275815545780424169 +0 -21
  72. package/.nx/cache/terminalOutputs/13524438527920092277 +0 -196
  73. package/.nx/cache/terminalOutputs/14153928176747262656 +0 -45
  74. package/.nx/cache/terminalOutputs/17404566492103808557 +0 -8
  75. package/.nx/cache/terminalOutputs/18132311043100376919 +0 -315
  76. package/.nx/cache/terminalOutputs/2436781291243085315 +0 -8
  77. package/.nx/cache/terminalOutputs/2782605790118376385 +0 -21
  78. package/.nx/cache/terminalOutputs/3064561615116090625 +0 -21
  79. package/.nx/cache/terminalOutputs/3681975492957101833 +0 -8
  80. package/.nx/cache/terminalOutputs/4011892767661954819 +0 -21
  81. package/.nx/cache/terminalOutputs/5741611231803799383 +0 -21
  82. package/.nx/cache/terminalOutputs/6037166070823946880 +0 -8
  83. package/.nx/cache/terminalOutputs/6372470950255467653 +0 -21
  84. package/.nx/cache/terminalOutputs/665190206482526466 +0 -175
  85. package/.nx/cache/terminalOutputs/7756595539965457927 +0 -23
  86. package/.nx/cache/terminalOutputs/9200013119269230075 +0 -8
@@ -1,157 +0,0 @@
1
- import * as i0 from '@angular/core';
2
-
3
- /**
4
- * Tailwind safelist side-effect for shipping-mode color utilities.
5
- *
6
- * WHY this file exists: JIT/content scanning only keeps class names that appear
7
- * as *literal strings* in scanned sources. {@link ModeColorService} already
8
- * returns these literals, but keeping a dedicated comment list makes the
9
- * contract obvious for consumers who configure `safelist` or purge plugins.
10
- *
11
- * Do not rename these strings without updating ModeColorService and THEME.md.
12
- *
13
- * SFN (export / green):
14
- * text-export bg-export bg-export-subtle bg-export-light border-export
15
- * hover:bg-export-light hover:bg-export-subtle dark:bg-export/15 dark:hover:bg-export/15
16
- *
17
- * STN (import / orange):
18
- * text-import bg-import bg-import-subtle bg-import-light border-import
19
- * hover:bg-import-light hover:bg-import-subtle dark:bg-import/15 dark:hover:bg-import/15
20
- */
21
- declare const MODE_COLOR_SAFELIST: readonly ["text-export", "bg-export", "bg-export-subtle", "bg-export-light", "border-export", "hover:bg-export-light", "hover:bg-export-subtle", "dark:bg-export/15", "dark:hover:bg-export/15", "text-import", "bg-import", "bg-import-subtle", "bg-import-light", "border-import", "hover:bg-import-light", "hover:bg-import-subtle", "dark:bg-import/15", "dark:hover:bg-import/15"];
22
-
23
- /**
24
- * Tailwind class bundle for the active shipping mode (SFN export / STN import).
25
- *
26
- * Use these for **primary** product chrome: CTAs, selected controls, progress,
27
- * and accent text. Semantic colors (danger / warning) stay mode-independent.
28
- */
29
- interface ModeColorClasses {
30
- /** Text color utility, e.g. `text-export`. */
31
- text: string;
32
- /** Solid background utility, e.g. `bg-export`. */
33
- bg: string;
34
- /** Soft background utility, e.g. `bg-export-subtle`. */
35
- bgSubtle: string;
36
- /** Border matching the mode accent, e.g. `border-export`. */
37
- border: string;
38
- /**
39
- * Filled primary CTA — `variant="primary"` on buttons.
40
- * Includes hover utility as a literal so Tailwind keeps it.
41
- */
42
- primary: string;
43
- /**
44
- * Transparent / text-only CTA — `variant="ghost-primary"` on buttons.
45
- * Mode accent text + soft hover fill.
46
- */
47
- ghostPrimary: string;
48
- /**
49
- * Soft highlight for selected / active rows (works in dark mode).
50
- */
51
- soft: string;
52
- /**
53
- * Soft hover highlight for menus and lists.
54
- */
55
- softHover: string;
56
- }
57
- /**
58
- * Maps {@link ShippingModeService} to mode-accent Tailwind classes.
59
- *
60
- * - **SFN** → export green is primary
61
- * - **STN** → import orange is primary
62
- *
63
- * WHY literal class strings: Tailwind's scanner cannot see dynamically built
64
- * names like `` `text-${token}` ``. Returning full literals (`text-export`, …)
65
- * keeps utilities in the compiled CSS. See {@link MODE_COLOR_SAFELIST}.
66
- *
67
- * @example
68
- * ```html
69
- * @let colors = modeColor.classes();
70
- * <button type="button" [class]="colors.primary">Save</button>
71
- * <span [class]="colors.text">Mode accent</span>
72
- * ```
73
- */
74
- declare class ModeColorService {
75
- private readonly shippingMode;
76
- /**
77
- * Mode-dependent utility classes. Recomputes when shipping mode changes.
78
- */
79
- readonly classes: i0.Signal<ModeColorClasses>;
80
- static ɵfac: i0.ɵɵFactoryDeclaration<ModeColorService, never>;
81
- static ɵprov: i0.ɵɵInjectableDeclaration<ModeColorService>;
82
- }
83
-
84
- /**
85
- * Supported UI color schemes for {@link ThemeService}.
86
- *
87
- * Kept as a closed string union so storage values and DOM class toggles stay
88
- * aligned — unknown persisted strings are ignored and fall back to system
89
- * preference / light.
90
- */
91
- type Theme = 'light' | 'dark';
92
-
93
- /**
94
- * Application light/dark theme preference.
95
- *
96
- * WHY signals (not BehaviorSubject): theme is synchronous UI state read from
97
- * templates and other services; a signal avoids RxJS subscription boilerplate
98
- * and matches Angular 22 change detection. Persistence goes through
99
- * {@link STORAGE_TOKEN} so tests can swap storage without touching `localStorage`.
100
- *
101
- * Applies the Tailwind `darkMode: 'class'` contract by toggling `dark` on
102
- * `document.documentElement`, and sets `color-scheme` so native UI (date
103
- * pickers, scrollbars, form controls) matches the app theme — class-based
104
- * dark mode alone does not restyle browser chrome.
105
- *
106
- * @example
107
- * ```ts
108
- * // app.config.ts
109
- * import { inject, provideAppInitializer } from '@angular/core';
110
- * import { ThemeService } from '@africanies/africanies-theme';
111
- *
112
- * export const appConfig = {
113
- * providers: [
114
- * provideAppInitializer(() => {
115
- * inject(ThemeService); // applies stored / system theme once
116
- * }),
117
- * ],
118
- * };
119
- *
120
- * // In a component
121
- * const theme = inject(ThemeService);
122
- * theme.toggle();
123
- * theme.setTheme('dark');
124
- * const current = theme.theme(); // 'light' | 'dark'
125
- * ```
126
- */
127
- declare class ThemeService {
128
- private readonly storage;
129
- private readonly document;
130
- /**
131
- * Current theme. Prefer reading via `theme()` in templates / computed values
132
- * rather than caching the string, so dark-class consumers stay in sync.
133
- */
134
- readonly theme: i0.WritableSignal<Theme>;
135
- constructor();
136
- /**
137
- * Sets and persists the theme, updating the `dark` class and `color-scheme`
138
- * on `<html>`.
139
- *
140
- * @param theme - Absolute preference to store.
141
- */
142
- setTheme(theme: Theme): void;
143
- /**
144
- * Flips between light and dark.
145
- *
146
- * @returns The theme after the toggle.
147
- */
148
- toggle(): Theme;
149
- private resolveInitialTheme;
150
- private prefersDark;
151
- private applyToDocument;
152
- static ɵfac: i0.ɵɵFactoryDeclaration<ThemeService, never>;
153
- static ɵprov: i0.ɵɵInjectableDeclaration<ThemeService>;
154
- }
155
-
156
- export { MODE_COLOR_SAFELIST, ModeColorService, ThemeService };
157
- export type { ModeColorClasses, Theme };
@@ -1,85 +0,0 @@
1
- # @africanies/africanies-core
2
-
3
- API and app-wiring layer for the AFRICANIES Web SDK: SDK config, HTTP client,
4
- shipping mode, mode-region metadata, TanStack Query default helpers, and
5
- route-driven overlay registration.
6
-
7
- ## Install peers
8
-
9
- ```bash
10
- # Published on npm (@africanies scope)
11
- npm install @africanies/africanies-core @africanies/africanies-models @africanies/africanies-storage
12
- ```
13
-
14
- Peer dependencies: `@angular/common`, `@angular/core`, `@angular/router`,
15
- `rxjs`, `@africanies/africanies-models`, `@africanies/africanies-storage`.
16
-
17
- ## Quick start
18
-
19
- ```ts
20
- import { ApplicationConfig } from '@angular/core';
21
- import {
22
- provideAfricaniesSdk,
23
- provideAfricaniesHttpClient,
24
- provideOverlayRoutes,
25
- createAfricaniesQueryClientDefaults,
26
- } from '@africanies/africanies-core';
27
-
28
- export const appConfig: ApplicationConfig = {
29
- providers: [
30
- provideAfricaniesSdk({ baseUrl: 'https://api.example.com', timeout: 30_000 }),
31
- provideAfricaniesHttpClient(),
32
- // optional extras:
33
- // provideAfricaniesHttpClient({ interceptors: [correlationInterceptor] }),
34
- // optional: provideOverlayRoutes([{ paramKey: 'modal', routes: { ... } }]),
35
- ],
36
- };
37
-
38
- // TanStack Query (app dependency — pin exact experimental version):
39
- // new QueryClient({ defaultOptions: createAfricaniesQueryClientDefaults() })
40
- ```
41
-
42
- ## Modules
43
-
44
- | Area | Exports |
45
- |------|---------|
46
- | Config | `provideAfricaniesSdk`, `AFRICANIES_SDK_CONFIG`, `httpToasts` (`'off'` \| `'errors'` \| `'all'`) |
47
- | Auth | `AuthService` (`forgot`), `isValidEmail`, `AuthTokenService` (`set` / `clear` / `get`) |
48
- | Shipping | `ShippingModeService` (tab-scoped via `sessionStorage`), `shipmentModeInterceptor`, per-request `ApiRequestOptions.shippingMode` / `withShippingMode` |
49
- | HTTP | `provideAfricaniesHttpClient`, `ApiClient` (auto-tags `withToast` from config / `ApiRequestOptions.toast`; optional `shippingMode` per call; HTTP failures → `Error` with formatted `.message`), `withToast`, `withShippingMode`, `httpToastInterceptor`, `normalize` (lifts Laravel validation bags into `errors` + joined `message`), `formatApiErrorMessage` (used internally; rare for hosts), `fieldErrorsMap`, `authInterceptor` |
50
- | Query | `createAfricaniesQueryClientDefaults`, `provideAfricaniesQueryDefaults`, `listFetchKind` (body loader on first load / STN↔SFN; keep rows on focus / Refresh / pager) |
51
- | Mode | `ModeConfigService`, `provideModeConfig`, `MODE_CONFIG_PATH` |
52
- | Country | `CountryService`, `countryFlagUrl` / `mapCountrySelectOptions` (flagcdn.com), `COUNTRY_READ_PATH`, mappers |
53
- | Service | `ServiceService` (`readPage` / `readAll` / `readById`), `SERVICE_READ_PATH` (`/public/service/read`), mappers |
54
- | Document | `DocumentService` (`readPage` / `readAll` / `readById`), `DOCUMENT_READ_PATH` (`/public/document/read`) — preview via `file_ref` on by-id |
55
- | Plan | `PlanService` (`readPage` / `readAll` / `readById`), `PLAN_READ_PATH` (`/public/plan/read`), mappers |
56
- | Currency | `CurrencyService` (`readPage` / `readAll` / `readById`, `create` / `update` / `remove`), `CURRENCY_*_PATH`, mappers |
57
- | Payment method | `PaymentMethodService` (`readPage` / `readAll` / `readById`, `update`), `PAYMENT_METHOD_READ_PATH` / `PAYMENT_METHOD_UPDATE_PATH`, mappers |
58
- | Shipment method | `ShipmentMethodService` (`readPage` / `readAll` / `readById`), `SHIPMENT_METHOD_READ_PATH`, mappers |
59
- | Warehouse | `WarehouseService` (`readPage` / `readAll` / `readById`), `WAREHOUSE_READ_PATH`, mappers |
60
- | Zone | `ZoneService` (`readPage` / `readAll` / `readById`), `ZONE_READ_PATH`, mappers |
61
- | Product | `ProductService` (`readPage` / `readAll` / `readById`), `PRODUCT_READ_PATH`, mappers |
62
- | User | `UserService` (`me`, `changePassword`, `logoutFromAllSessions`), `USER_PATH`, `mapUser` (bare `/user` body; needs `AuthTokenService.set`) |
63
- | Notification | `NotificationService` (`readPage` / `readAll` / `readOne`), `NOTIFICATION_READ_PATH`, `mapNotification` / `mapNotificationInboxItem` |
64
- | File | `FileService` (`read` / `readMultiple` → `POST /file/read`), `FILE_READ_PATH`, `mapFileRead` / `mapFileReadList` |
65
- | Overlay | `provideOverlayRoutes`, `RouteOverlayService`, `MODAL_SERVICE`, `DRAWER_SERVICE` |
66
- | Filters | `FilterOptionsResolver` (`resolveField` lazy in drawer), `mergeFilterOptionLists`, warehouse/method mappers |
67
- | Browser | `copyToClipboard`, `downloadCsv` / `csvCell` (UTF-8 CSV download) |
68
-
69
- List-style GETs follow `ResourceId`: `null` (paginated), `'all'` (full dump), `number` (single).
70
-
71
- | Filter `optionsSource` | SDK resolver |
72
- |------------------------|--------------|
73
- | `warehouses` | Lazy `FilterOptionsResolver.resolveField` → `WarehouseService.readAll()` |
74
- | `shipmentMethods` | Lazy `FilterOptionsResolver.resolveField` → `ShipmentMethodService.readAll()` |
75
- | `shipmentManifests` | Host `optionLists` (no built-in service yet) |
76
-
77
- `MODAL_SERVICE` / `DRAWER_SERVICE` are tokens only — implementations ship in
78
- `@africanies/africanies-ui` to avoid circular dependencies.
79
-
80
- ## Build / test
81
-
82
- ```bash
83
- npx nx build africanies-core
84
- npx nx test africanies-core
85
- ```