@burdenoff/microfe-tours 2026.510.112

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 (164) hide show
  1. package/README.md +342 -0
  2. package/dist/__tests__/setup.d.ts +2 -0
  3. package/dist/__tests__/setup.d.ts.map +1 -0
  4. package/dist/constants/featureFlags.d.ts +25 -0
  5. package/dist/constants/featureFlags.d.ts.map +1 -0
  6. package/dist/constants/featureFlags.js +9 -0
  7. package/dist/constants/featureFlags.js.map +1 -0
  8. package/dist/constants/permissions.d.ts +49 -0
  9. package/dist/constants/permissions.d.ts.map +1 -0
  10. package/dist/constants/permissions.js +38 -0
  11. package/dist/constants/permissions.js.map +1 -0
  12. package/dist/dev/main.d.ts +2 -0
  13. package/dist/dev/main.d.ts.map +1 -0
  14. package/dist/generated/global-operations.d.ts +1270 -0
  15. package/dist/generated/global-operations.d.ts.map +1 -0
  16. package/dist/generated/global-operations.js +650 -0
  17. package/dist/generated/global-operations.js.map +1 -0
  18. package/dist/generated/global-types.d.ts +20448 -0
  19. package/dist/generated/global-types.d.ts.map +1 -0
  20. package/dist/generated/wspace-operations.d.ts +2 -0
  21. package/dist/generated/wspace-operations.d.ts.map +1 -0
  22. package/dist/generated/wspace-types.d.ts +53398 -0
  23. package/dist/generated/wspace-types.d.ts.map +1 -0
  24. package/dist/index.d.ts +6 -0
  25. package/dist/index.d.ts.map +1 -0
  26. package/dist/index.js +6 -0
  27. package/dist/tours/ToursAdminRoot.d.ts +16 -0
  28. package/dist/tours/ToursAdminRoot.d.ts.map +1 -0
  29. package/dist/tours/ToursAdminRoot.js +42 -0
  30. package/dist/tours/ToursAdminRoot.js.map +1 -0
  31. package/dist/tours/ToursAdminRoutes.d.ts +12 -0
  32. package/dist/tours/ToursAdminRoutes.d.ts.map +1 -0
  33. package/dist/tours/ToursAdminRoutes.js +109 -0
  34. package/dist/tours/ToursAdminRoutes.js.map +1 -0
  35. package/dist/tours/ToursRoot.d.ts +10 -0
  36. package/dist/tours/ToursRoot.d.ts.map +1 -0
  37. package/dist/tours/ToursRoot.js +1 -0
  38. package/dist/tours/ToursRoutes.d.ts +8 -0
  39. package/dist/tours/ToursRoutes.d.ts.map +1 -0
  40. package/dist/tours/ToursUserRoot.d.ts +15 -0
  41. package/dist/tours/ToursUserRoot.d.ts.map +1 -0
  42. package/dist/tours/ToursUserRoot.js +48 -0
  43. package/dist/tours/ToursUserRoot.js.map +1 -0
  44. package/dist/tours/ToursUserRoutes.d.ts +15 -0
  45. package/dist/tours/ToursUserRoutes.d.ts.map +1 -0
  46. package/dist/tours/ToursUserRoutes.js +66 -0
  47. package/dist/tours/ToursUserRoutes.js.map +1 -0
  48. package/dist/tours/components/RouteHelpers.d.ts +33 -0
  49. package/dist/tours/components/RouteHelpers.d.ts.map +1 -0
  50. package/dist/tours/components/RouteHelpers.js +75 -0
  51. package/dist/tours/components/RouteHelpers.js.map +1 -0
  52. package/dist/tours/components/ToursAdminNavRegistrar.d.ts +25 -0
  53. package/dist/tours/components/ToursAdminNavRegistrar.d.ts.map +1 -0
  54. package/dist/tours/components/ToursAdminNavRegistrar.js +60 -0
  55. package/dist/tours/components/ToursAdminNavRegistrar.js.map +1 -0
  56. package/dist/tours/components/ui.d.ts +2 -0
  57. package/dist/tours/components/ui.d.ts.map +1 -0
  58. package/dist/tours/hooks/useMediaLibrary.d.ts +22 -0
  59. package/dist/tours/hooks/useMediaLibrary.d.ts.map +1 -0
  60. package/dist/tours/hooks/useMediaLibrary.js +82 -0
  61. package/dist/tours/hooks/useMediaLibrary.js.map +1 -0
  62. package/dist/tours/hooks/useStepSequencer.d.ts +20 -0
  63. package/dist/tours/hooks/useStepSequencer.d.ts.map +1 -0
  64. package/dist/tours/hooks/useStepSequencer.js +53 -0
  65. package/dist/tours/hooks/useStepSequencer.js.map +1 -0
  66. package/dist/tours/hooks/useTourAnalytics.d.ts +32 -0
  67. package/dist/tours/hooks/useTourAnalytics.d.ts.map +1 -0
  68. package/dist/tours/hooks/useTourAnalytics.js +70 -0
  69. package/dist/tours/hooks/useTourAnalytics.js.map +1 -0
  70. package/dist/tours/hooks/useTourBuilder.d.ts +61 -0
  71. package/dist/tours/hooks/useTourBuilder.d.ts.map +1 -0
  72. package/dist/tours/hooks/useTourBuilder.js +192 -0
  73. package/dist/tours/hooks/useTourBuilder.js.map +1 -0
  74. package/dist/tours/hooks/useTourLifecycle.d.ts +22 -0
  75. package/dist/tours/hooks/useTourLifecycle.d.ts.map +1 -0
  76. package/dist/tours/hooks/useTourLifecycle.js +28 -0
  77. package/dist/tours/hooks/useTourLifecycle.js.map +1 -0
  78. package/dist/tours/hooks/useTourPreview.d.ts +33 -0
  79. package/dist/tours/hooks/useTourPreview.d.ts.map +1 -0
  80. package/dist/tours/hooks/useTourPreview.js +70 -0
  81. package/dist/tours/hooks/useTourPreview.js.map +1 -0
  82. package/dist/tours/hooks/useToursList.d.ts +30 -0
  83. package/dist/tours/hooks/useToursList.d.ts.map +1 -0
  84. package/dist/tours/hooks/useToursList.js +49 -0
  85. package/dist/tours/hooks/useToursList.js.map +1 -0
  86. package/dist/tours/hooks/useToursPermissionAccess.d.ts +16 -0
  87. package/dist/tours/hooks/useToursPermissionAccess.d.ts.map +1 -0
  88. package/dist/tours/hooks/useToursPermissionAccess.js +9 -0
  89. package/dist/tours/hooks/useToursPermissionAccess.js.map +1 -0
  90. package/dist/tours/i18n.d.ts +172 -0
  91. package/dist/tours/i18n.d.ts.map +1 -0
  92. package/dist/tours/i18n.js +175 -0
  93. package/dist/tours/i18n.js.map +1 -0
  94. package/dist/tours/index.d.ts +21 -0
  95. package/dist/tours/index.d.ts.map +1 -0
  96. package/dist/tours/index.js +5 -0
  97. package/dist/tours/pages/AnalyticsDashboardPage.d.ts +6 -0
  98. package/dist/tours/pages/AnalyticsDashboardPage.d.ts.map +1 -0
  99. package/dist/tours/pages/AnalyticsDashboardPage.js +230 -0
  100. package/dist/tours/pages/AnalyticsDashboardPage.js.map +1 -0
  101. package/dist/tours/pages/MediaLibraryPage.d.ts +6 -0
  102. package/dist/tours/pages/MediaLibraryPage.d.ts.map +1 -0
  103. package/dist/tours/pages/MediaLibraryPage.js +195 -0
  104. package/dist/tours/pages/MediaLibraryPage.js.map +1 -0
  105. package/dist/tours/pages/MyToursPage.d.ts +11 -0
  106. package/dist/tours/pages/MyToursPage.d.ts.map +1 -0
  107. package/dist/tours/pages/MyToursPage.js +103 -0
  108. package/dist/tours/pages/MyToursPage.js.map +1 -0
  109. package/dist/tours/pages/MyToursProgressPage.d.ts +6 -0
  110. package/dist/tours/pages/MyToursProgressPage.d.ts.map +1 -0
  111. package/dist/tours/pages/MyToursProgressPage.js +142 -0
  112. package/dist/tours/pages/MyToursProgressPage.js.map +1 -0
  113. package/dist/tours/pages/SchedulerPage.d.ts +6 -0
  114. package/dist/tours/pages/SchedulerPage.d.ts.map +1 -0
  115. package/dist/tours/pages/SchedulerPage.js +231 -0
  116. package/dist/tours/pages/SchedulerPage.js.map +1 -0
  117. package/dist/tours/pages/StepEditorPage.d.ts +7 -0
  118. package/dist/tours/pages/StepEditorPage.d.ts.map +1 -0
  119. package/dist/tours/pages/StepEditorPage.js +586 -0
  120. package/dist/tours/pages/StepEditorPage.js.map +1 -0
  121. package/dist/tours/pages/SystemAnalyticsPage.d.ts +6 -0
  122. package/dist/tours/pages/SystemAnalyticsPage.d.ts.map +1 -0
  123. package/dist/tours/pages/SystemAnalyticsPage.js +155 -0
  124. package/dist/tours/pages/SystemAnalyticsPage.js.map +1 -0
  125. package/dist/tours/pages/TemplateLibraryPage.d.ts +6 -0
  126. package/dist/tours/pages/TemplateLibraryPage.d.ts.map +1 -0
  127. package/dist/tours/pages/TemplateLibraryPage.js +207 -0
  128. package/dist/tours/pages/TemplateLibraryPage.js.map +1 -0
  129. package/dist/tours/pages/TourBuilderPage.d.ts +6 -0
  130. package/dist/tours/pages/TourBuilderPage.d.ts.map +1 -0
  131. package/dist/tours/pages/TourBuilderPage.js +363 -0
  132. package/dist/tours/pages/TourBuilderPage.js.map +1 -0
  133. package/dist/tours/pages/TourPreviewPage.d.ts +6 -0
  134. package/dist/tours/pages/TourPreviewPage.d.ts.map +1 -0
  135. package/dist/tours/pages/TourPreviewPage.js +239 -0
  136. package/dist/tours/pages/TourPreviewPage.js.map +1 -0
  137. package/dist/tours/pages/ToursListPage.d.ts +6 -0
  138. package/dist/tours/pages/ToursListPage.d.ts.map +1 -0
  139. package/dist/tours/pages/ToursListPage.js +310 -0
  140. package/dist/tours/pages/ToursListPage.js.map +1 -0
  141. package/dist/tours/providers/ToursProvider.d.ts +27 -0
  142. package/dist/tours/providers/ToursProvider.d.ts.map +1 -0
  143. package/dist/tours/providers/ToursProvider.js +28 -0
  144. package/dist/tours/providers/ToursProvider.js.map +1 -0
  145. package/dist/tours/store/toursStore.d.ts +39 -0
  146. package/dist/tours/store/toursStore.d.ts.map +1 -0
  147. package/dist/tours/store/toursStore.js +143 -0
  148. package/dist/tours/store/toursStore.js.map +1 -0
  149. package/dist/tours/types/index.d.ts +350 -0
  150. package/dist/tours/types/index.d.ts.map +1 -0
  151. package/dist/tours/utils/cn.d.ts +8 -0
  152. package/dist/tours/utils/cn.d.ts.map +1 -0
  153. package/dist/tours/utils/index.d.ts +102 -0
  154. package/dist/tours/utils/index.d.ts.map +1 -0
  155. package/dist/tours/utils/index.js +28 -0
  156. package/dist/tours/utils/index.js.map +1 -0
  157. package/dist/tours/utils/joinPath.d.ts +9 -0
  158. package/dist/tours/utils/joinPath.d.ts.map +1 -0
  159. package/dist/tours/utils/joinPath.js +8 -0
  160. package/dist/tours/utils/joinPath.js.map +1 -0
  161. package/dist/utils/nativeBridge.d.ts +3 -0
  162. package/dist/utils/nativeBridge.d.ts.map +1 -0
  163. package/dist/utils/nativeBridge.js +2 -0
  164. package/package.json +114 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/tours/utils/index.ts"],"sourcesContent":["import type { TourStatus, TourTriggerType, DeviceType, StepPlacement } from '../types';\n\n/**\n * Format tour status for display\n */\nexport function formatTourStatus(status: TourStatus): string {\n const statusMap: Record<TourStatus, string> = {\n DRAFT: 'Draft',\n PUBLISHED: 'Published',\n ARCHIVED: 'Archived',\n SCHEDULED: 'Scheduled',\n };\n return statusMap[status] || status;\n}\n\n/**\n * Get status color variant\n */\nexport function getStatusColor(\n status: TourStatus\n): 'default' | 'success' | 'warning' | 'destructive' {\n const colorMap: Record<TourStatus, 'default' | 'success' | 'warning' | 'destructive'> = {\n DRAFT: 'default',\n PUBLISHED: 'success',\n ARCHIVED: 'warning',\n SCHEDULED: 'default',\n };\n return colorMap[status] || 'default';\n}\n\n/**\n * Format trigger type for display\n */\nexport function formatTriggerType(triggerType: TourTriggerType): string {\n const triggerMap: Record<TourTriggerType, string> = {\n MANUAL: 'Manual',\n AUTO_FIRST_VISIT: 'Auto (First Visit)',\n AUTO_ALWAYS: 'Auto (Always)',\n ON_EVENT: 'On Event',\n SCHEDULED: 'Scheduled',\n };\n return triggerMap[triggerType] || triggerType;\n}\n\n/**\n * Format device type for display\n */\nexport function formatDeviceType(device: DeviceType): string {\n const deviceMap: Record<DeviceType, string> = {\n mobile: 'Mobile',\n tablet: 'Tablet',\n desktop: 'Desktop',\n };\n return deviceMap[device] || device;\n}\n\n/**\n * Format step placement for display\n */\nexport function formatPlacement(placement: StepPlacement): string {\n const placementMap: Record<StepPlacement, string> = {\n AUTO: 'Auto',\n TOP: 'Top',\n BOTTOM: 'Bottom',\n LEFT: 'Left',\n RIGHT: 'Right',\n CENTER: 'Center',\n };\n return placementMap[placement] || placement;\n}\n\n/**\n * Format file size\n */\nexport function formatFileSize(bytes: number): string {\n if (bytes === 0) return '0 Bytes';\n\n const k = 1024;\n const sizes = ['Bytes', 'KB', 'MB', 'GB'];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n\n return Math.round((bytes / Math.pow(k, i)) * 100) / 100 + ' ' + sizes[i];\n}\n\n/**\n * Format duration (seconds to human readable)\n */\nexport function formatDuration(seconds: number): string {\n if (seconds < 60) {\n return `${Math.round(seconds)}s`;\n }\n\n const minutes = Math.floor(seconds / 60);\n const remainingSeconds = Math.round(seconds % 60);\n\n if (minutes < 60) {\n return remainingSeconds > 0 ? `${minutes}m ${remainingSeconds}s` : `${minutes}m`;\n }\n\n const hours = Math.floor(minutes / 60);\n const remainingMinutes = minutes % 60;\n\n return remainingMinutes > 0 ? `${hours}h ${remainingMinutes}m` : `${hours}h`;\n}\n\n/**\n * Format percentage\n */\nexport function formatPercentage(value: number, decimals: number = 1): string {\n return `${value.toFixed(decimals)}%`;\n}\n\n/**\n * Format number with commas\n */\nexport function formatNumber(num: number): string {\n return num.toLocaleString('en-US');\n}\n\n/**\n * Generate slug from string\n */\nexport function generateSlug(text: string): string {\n return text\n .toLowerCase()\n .trim()\n .replace(/[^\\w\\s-]/g, '')\n .replace(/[\\s_-]+/g, '-')\n .replace(/^-+|-+$/g, '');\n}\n\n/**\n * Validate CSS selector\n */\nexport function isValidSelector(selector: string): boolean {\n if (!selector || selector.trim() === '') return false;\n\n try {\n document.querySelector(selector);\n return true;\n } catch {\n return false;\n }\n}\n\n/**\n * Validate email\n */\nexport function isValidEmail(email: string): boolean {\n const emailRegex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n return emailRegex.test(email);\n}\n\n/**\n * Validate URL\n */\nexport function isValidUrl(url: string): boolean {\n try {\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n\n/**\n * Truncate text\n */\nexport function truncateText(text: string, maxLength: number): string {\n if (text.length <= maxLength) return text;\n return text.substring(0, maxLength - 3) + '...';\n}\n\n/**\n * Get relative time string\n */\nexport function getRelativeTime(date: string | Date): string {\n const now = new Date();\n const then = typeof date === 'string' ? new Date(date) : date;\n const diffInSeconds = Math.floor((now.getTime() - then.getTime()) / 1000);\n\n if (diffInSeconds < 60) return 'just now';\n if (diffInSeconds < 3600) return `${Math.floor(diffInSeconds / 60)}m ago`;\n if (diffInSeconds < 86400) return `${Math.floor(diffInSeconds / 3600)}h ago`;\n if (diffInSeconds < 604800) return `${Math.floor(diffInSeconds / 86400)}d ago`;\n if (diffInSeconds < 2592000) return `${Math.floor(diffInSeconds / 604800)}w ago`;\n if (diffInSeconds < 31536000) return `${Math.floor(diffInSeconds / 2592000)}mo ago`;\n return `${Math.floor(diffInSeconds / 31536000)}y ago`;\n}\n\n/**\n * Deep clone object\n */\nexport function deepClone<T>(obj: T): T {\n return JSON.parse(JSON.stringify(obj));\n}\n\n/**\n * Debounce function\n */\nexport function debounce<T extends (...args: unknown[]) => unknown>(\n func: T,\n wait: number\n): (...args: Parameters<T>) => void {\n let timeout: ReturnType<typeof setTimeout>;\n return (...args: Parameters<T>) => {\n clearTimeout(timeout);\n timeout = setTimeout(() => func(...args), wait);\n };\n}\n\n/**\n * Throttle function\n */\nexport function throttle<T extends (...args: unknown[]) => unknown>(\n func: T,\n limit: number\n): (...args: Parameters<T>) => void {\n let inThrottle: boolean;\n return (...args: Parameters<T>) => {\n if (!inThrottle) {\n func(...args);\n inThrottle = true;\n setTimeout(() => (inThrottle = false), limit);\n }\n };\n}\n\n/**\n * Generate unique ID\n */\nexport function generateId(prefix: string = 'id'): string {\n return `${prefix}_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;\n}\n\n/**\n * Check if object is empty\n */\nexport function isEmpty(obj: object): boolean {\n return Object.keys(obj).length === 0;\n}\n\n/**\n * Get device viewport dimensions\n */\nexport function getDeviceViewport(device: DeviceType): { width: number; height: number } {\n const viewports: Record<DeviceType, { width: number; height: number }> = {\n mobile: { width: 375, height: 667 }, // iPhone SE\n tablet: { width: 768, height: 1024 }, // iPad\n desktop: { width: 1920, height: 1080 }, // Full HD\n };\n return viewports[device];\n}\n\n/**\n * Sanitize HTML content\n */\nexport function sanitizeHtml(html: string): string {\n // This is a basic implementation. In production, use a library like DOMPurify\n const tempDiv = document.createElement('div');\n tempDiv.textContent = html;\n return tempDiv.innerHTML;\n}\n\n/**\n * Calculate completion rate\n */\nexport function calculateCompletionRate(completions: number, views: number): number {\n if (views === 0) return 0;\n return (completions / views) * 100;\n}\n\n/**\n * Calculate drop-off rate\n */\nexport function calculateDropOffRate(currentViews: number, previousViews: number): number {\n if (previousViews === 0) return 0;\n const dropOff = previousViews - currentViews;\n return (dropOff / previousViews) * 100;\n}\n"],"mappings":";AA0EA,SAAgB,EAAe,GAAuB;AACpD,KAAI,MAAU,EAAG,QAAO;CAExB,IAAM,IAAI,MACJ,IAAQ;EAAC;EAAS;EAAM;EAAM;EAAK,EACnC,IAAI,KAAK,MAAM,KAAK,IAAI,EAAM,GAAG,KAAK,IAAI,EAAE,CAAC;AAEnD,QAAO,KAAK,MAAO,IAAiB,MAAG,IAAM,IAAI,GAAG,MAAM,MAAM,EAAM;;AAMxE,SAAgB,EAAe,GAAyB;AACtD,KAAI,IAAU,GACZ,QAAO,GAAG,KAAK,MAAM,EAAQ,CAAC;CAGhC,IAAM,IAAU,KAAK,MAAM,IAAU,GAAG,EAClC,IAAmB,KAAK,MAAM,IAAU,GAAG;AAEjD,KAAI,IAAU,GACZ,QAAO,IAAmB,IAAI,GAAG,EAAQ,IAAI,EAAiB,KAAK,GAAG,EAAQ;CAGhF,IAAM,IAAQ,KAAK,MAAM,IAAU,GAAG,EAChC,IAAmB,IAAU;AAEnC,QAAO,IAAmB,IAAI,GAAG,EAAM,IAAI,EAAiB,KAAK,GAAG,EAAM;;AAM5E,SAAgB,EAAiB,GAAe,IAAmB,GAAW;AAC5E,QAAO,GAAG,EAAM,QAAQ,EAAS,CAAC;;AAMpC,SAAgB,EAAa,GAAqB;AAChD,QAAO,EAAI,eAAe,QAAQ"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Join a shell `basePath` (e.g. `/tours`) with a route fragment, collapsing
3
+ * duplicate slashes and handling leading/trailing-slash variants safely.
4
+ *
5
+ * Extracted so ToursAdminRoot and ToursUserRoot share one implementation
6
+ * instead of maintaining copy-pasted helpers.
7
+ */
8
+ export declare function joinPath(base: string, path: string): string;
9
+ //# sourceMappingURL=joinPath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"joinPath.d.ts","sourceRoot":"","sources":["../../../src/tours/utils/joinPath.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAI3D"}
@@ -0,0 +1,8 @@
1
+ //#region src/tours/utils/joinPath.ts
2
+ function e(e, t) {
3
+ return (e.endsWith("/") ? e.slice(0, -1) : e) + (t.startsWith("/") ? t : `/${t}`);
4
+ }
5
+ //#endregion
6
+ export { e as joinPath };
7
+
8
+ //# sourceMappingURL=joinPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"joinPath.js","names":[],"sources":["../../../src/tours/utils/joinPath.ts"],"sourcesContent":["/**\n * Join a shell `basePath` (e.g. `/tours`) with a route fragment, collapsing\n * duplicate slashes and handling leading/trailing-slash variants safely.\n *\n * Extracted so ToursAdminRoot and ToursUserRoot share one implementation\n * instead of maintaining copy-pasted helpers.\n */\nexport function joinPath(base: string, path: string): string {\n const cleanBase = base.endsWith('/') ? base.slice(0, -1) : base;\n const cleanPath = path.startsWith('/') ? path : `/${path}`;\n return cleanBase + cleanPath;\n}\n"],"mappings":";AAOA,SAAgB,EAAS,GAAc,GAAsB;AAG3D,SAFkB,EAAK,SAAS,IAAI,GAAG,EAAK,MAAM,GAAG,GAAG,GAAG,MACzC,EAAK,WAAW,IAAI,GAAG,IAAO,IAAI"}
@@ -0,0 +1,3 @@
1
+ export { getPlatform, isNative, isIOS, isAndroid, isWeb, nativeImpact, nativeNotify, nativeToast, nativeConfirm, nativeCopyText, nativeShare, nativeOpenUrl, useNativePlatform, useSafeArea, useNativeKeyboard, useAppState, useDeviceInfo, useHaptics, useStatusBar, } from '@burdenoff/fe-libs/shared/native';
2
+ export type { BurdenoffNativePlatform, BurdenoffNativeBridge, SafeAreaInsets, DeviceInfo, HapticImpactStyle, HapticNotificationType, ToastDuration, ConfirmOptions, ShareOptions, AppState, StatusBarTheme, } from '@burdenoff/fe-libs/shared/native';
3
+ //# sourceMappingURL=nativeBridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeBridge.d.ts","sourceRoot":"","sources":["../../src/utils/nativeBridge.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,QAAQ,EACR,KAAK,EACL,SAAS,EACT,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,aAAa,EACb,cAAc,EACd,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,UAAU,EACV,YAAY,GACb,MAAM,kCAAkC,CAAC;AAE1C,YAAY,EACV,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,cAAc,GACf,MAAM,kCAAkC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { isNative as e, nativeConfirm as t, nativeImpact as n, nativeNotify as r, nativeToast as i } from "@burdenoff/fe-libs/shared/native";
2
+ export { e as isNative, t as nativeConfirm, n as nativeImpact, r as nativeNotify, i as nativeToast };
package/package.json ADDED
@@ -0,0 +1,114 @@
1
+ {
2
+ "name": "@burdenoff/microfe-tours",
3
+ "version": "2026.510.112",
4
+ "description": "Burdenoff Tours Microfrontend - Complete product tours and onboarding interface",
5
+ "type": "module",
6
+ "files": [
7
+ "dist",
8
+ "package.json",
9
+ "README.md"
10
+ ],
11
+ "imports": {
12
+ "#src/*": "./src/*",
13
+ "#tours/*": "./src/tours/*"
14
+ },
15
+ "exports": {
16
+ ".": {
17
+ "types": "./dist/index.d.ts",
18
+ "import": "./dist/index.js"
19
+ }
20
+ },
21
+ "main": "./dist/index.js",
22
+ "types": "./dist/index.d.ts",
23
+ "scripts": {
24
+ "dev": "vite",
25
+ "build": "tsc && vite build",
26
+ "schema:pull": "graphql-codegen --project schema-wspace && graphql-codegen --project schema-global",
27
+ "codegen": "graphql-codegen --project wspace && graphql-codegen --project global",
28
+ "codegen:all": "bun run schema:pull && bun run codegen",
29
+ "lint": "eslint .",
30
+ "lint:sanity": "if [ \"${CI:-}\" = \"true\" ]; then bun run lint; else bun run lint -- --cache --cache-location .eslintcache; fi",
31
+ "format": "prettier --write \"src/**/*.{ts,tsx}\"",
32
+ "type:check": "tsc --noEmit",
33
+ "sanity": "bun run codegen && bun run lint:sanity && bun run format && bun run type:check && bun run build",
34
+ "switch:status": "bun scripts/deps-mode.ts status",
35
+ "switch:remote": "bun scripts/deps-mode.ts remote",
36
+ "switch:local": "bun scripts/deps-mode.ts local",
37
+ "switch:check": "bun scripts/deps-mode.ts check",
38
+ "prepare": "lefthook install || true",
39
+ "format:check": "prettier --check \"src/**/*.{ts,tsx}\"",
40
+ "test": "vitest run",
41
+ "test:watch": "vitest",
42
+ "test:coverage": "vitest run --coverage"
43
+ },
44
+ "dependencies": {
45
+ "@apollo/client": "^3.12.0",
46
+ "@burdenoff/fe-libs": "2026.507.125",
47
+ "@tanstack/react-query": "^5.90.16",
48
+ "clsx": "^2.1.1",
49
+ "graphql": "^16.10.0",
50
+ "lucide-react": "^0.468.0",
51
+ "react": "^19.0.0",
52
+ "react-dom": "^19.0.0",
53
+ "react-router-dom": "^7.1.3",
54
+ "tailwind-merge": "^3.4.0",
55
+ "zustand": "^5.0.3"
56
+ },
57
+ "devDependencies": {
58
+ "@eslint/js": "^10.0.1",
59
+ "@graphql-codegen/add": "^5.0.0",
60
+ "@graphql-codegen/cli": "^5.0.0",
61
+ "@graphql-codegen/import-types-preset": "^3.0.0",
62
+ "@graphql-codegen/schema-ast": "^4.0.0",
63
+ "@graphql-codegen/typescript": "^4.0.0",
64
+ "@graphql-codegen/typescript-operations": "^4.0.0",
65
+ "@graphql-codegen/typescript-react-apollo": "^4.0.0",
66
+ "@types/react": "^19.0.2",
67
+ "@types/react-dom": "^19.0.2",
68
+ "@vitejs/plugin-react": "^4.3.4",
69
+ "autoprefixer": "^10.4.20",
70
+ "eslint": "^9.18.0",
71
+ "eslint-plugin-react": "^7.37.5",
72
+ "eslint-plugin-react-hooks": "^7.0.1",
73
+ "@testing-library/jest-dom": "^6.9.1",
74
+ "@testing-library/react": "^16.3.2",
75
+ "@testing-library/user-event": "^14.6.1",
76
+ "@vitest/coverage-v8": "^4.1.2",
77
+ "jsdom": "^29.0.1",
78
+ "lefthook": "^2.1.1",
79
+ "vitest": "^4.1.2",
80
+ "postcss": "^8.4.49",
81
+ "prettier": "^3.4.2",
82
+ "tailwindcss": "^4.0.0",
83
+ "typescript": "^5.9.0",
84
+ "typescript-eslint": "^8.55.0",
85
+ "vite": "8.0.8",
86
+ "vite-plugin-dts": "3.9.1"
87
+ },
88
+ "peerDependencies": {
89
+ "@apollo/client": "^3.12.0",
90
+ "react": "^19.0.0",
91
+ "react-dom": "^19.0.0",
92
+ "zustand": "^5.0.0"
93
+ },
94
+ "publishConfig": {
95
+ "access": "restricted"
96
+ },
97
+ "overrides": {
98
+ "lodash": ">=4.17.21",
99
+ "lodash-es": ">=4.17.21",
100
+ "dompurify": ">=3.3.4",
101
+ "fast-xml-parser": ">=4.5.5",
102
+ "@xmldom/xmldom": ">=0.8.12",
103
+ "swiper": ">=12.1.2",
104
+ "brace-expansion": ">=1.1.13",
105
+ "follow-redirects": ">=1.15.12",
106
+ "smol-toml": ">=1.6.1",
107
+ "axios": ">=1.15.0",
108
+ "flatted": ">=3.4.1",
109
+ "yaml": ">=2.8.3",
110
+ "picomatch": ">=2.3.2",
111
+ "immutable": ">=3.8.3",
112
+ "minimatch": ">=3.1.3"
113
+ }
114
+ }